@charset "UTF-8";


#container {
  overflow: hidden;
}
figure {
  margin: 0;
  padding: 0;
}


/*************************************
.js-cms-common__pickup-slider
*************************************/


.js-cms-common__pickup-slider {
    opacity: 0;
    transition: .3s;
    margin-bottom: 0px;
}
.js-cms-common__pickup-slider.slick-initialized {
    opacity: 1;
}
.js-cms-common__pickup-slider.slick-dotted {
  margin-bottom: 0px;
}

.js-cms-common__pickup-slider .slick-dots {
  position: relative;
  bottom: 0;
  margin: 20px auto 0;
}

.js-cms-common__pickup-slider .slick-dots li button,
.js-cms-common__pickup-slider .slick-dots li button:before {
  display:none;
}
.js-cms-common__pickup-slider .slick-dots li {
  width: 32px;
  height: 4px;
  background: #d8d8d8;
}
.js-cms-common__pickup-slider .slick-dots li.slick-active {
  background: #ff5611;
}
ul.slick-dots.d-none {
    display: none;
}

.js-cms-common__pickup-slider .slick-track {
  display: flex;
}
.js-cms-common__pickup-slider .slick-slide {
  height: auto !important;
}


@media screen and (min-width: 767px) {
	.js-cms-common__pickup-slider{
	}
	.js-cms-common__pickup-slider .slick-list {
	  overflow: visible;
	}
  .js-cms-common__pickup-slider .slick-dots {
    margin: 40px auto 0;
        text-align: left;
	}
	.js-cms-common__pickup-slider .slick-next, .js-cms-common__pickup-slider .slick-prev {
		top: 100%;
		display: block;
		height: auto;
		transform: translate(0, -50%);
		padding-top: 0;
		width: 18px;
		height: auto;
	    padding: 10px 0 ;
	}
	.js-cms-common__pickup-slider .slick-next {
	    right: 0px;
	    border-left: 1px #d8d8d8 solid;
	    padding: 10px 0 10px 25px;
	    width: 48px;
	}
	.js-cms-common__pickup-slider .slick-prev {
		right: 70px;
		left: auto;
	}
	.js-cms-common__pickup-slider .slick-next:before, .js-cms-common__pickup-slider .slick-prev:before {
		content: "";
		background-image: url(../img/top/body__slider_sign.svg);
		background-position: center;
		width: 18px;
		height: 14px;
		margin-bottom: 0px;
		display: block !important;
		background-repeat: no-repeat;
		transition: all 0.4s;
	}
	.js-cms-common__pickup-slider .slick-prev:before {
		transform: scale(-1, 1);
	}
}



.cms-common__pickup {
  position: relative;
  background: #000;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 8px 12px -3px #00000033;
  display: block;
  color: #fff;
  text-decoration: none;
  width: auto;
  margin: 0 10px 0 15px;
  height: 100%;
}

.cms-common__pickup .cms__component__blocks_img {
  position: relative;
}

.cms-common__pickup .cms__component__blocks_img  figcaption,
.cms__component__blocks_txt.caption {
  border: 1px solid #DDD490;
  background: rgba(0, 0, 0, 0.5);
  width: auto;
  height: 33;
  padding-top: 4px;
  padding-bottom: 7px;
  border-width: 1px;
  text-align: center;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: absolute;
  bottom: 10px;
  left: 20px;
  right: 20px;
  font-family: 'Zen Old Mincho', serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 4%;
  color: #DDD490;
}
.cms__component__blocks_txt.caption p strong {
  font-size: 22px;
  line-height: 100%;
  letter-spacing: 4%;
}

.cms-common__pickup .cms__component__blocks_img img {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 143 / 135;
  object-fit: cover;
  transition: 0.6s all;
}

.cms-common__pickup .cms__common__pickup-txt{
  padding: 20px 44px 24px 20px;
  flex-direction: column;
  display: flex;
  gap: 0px;
  font-weight: 400;
  font-size: 12px;
  line-height: 140%;
  letter-spacing: 0%;
  color: #fff;
  position: relative;
}

.cms-common__pickup .cms__common__pickup-txt h3{
  font-family: Zen Old Mincho;
  color: #F0ECCD;
  font-weight: 500;
  font-size: 12px;
  line-height: 135%;
    margin-bottom: 6px;
}

.cms-common__pickup .cms__common__pickup-txt h2 {
  color: #F0ECCD;
  font-family: Zen Old Mincho;
  font-weight: 700;
  font-size: 16px;
  line-height: 140%;
    margin-bottom: 12px;
}
.cms-common__pickup .cms__common__pickup-txt .ruby p {
  font-weight: 400;
  font-size: 9px;
  line-height: 140%;
  letter-spacing: 0%;
  display: block;
    color: #F0ECCD;
}

.cms-common__pickup .cms__common__pickup-txt .date p {
	font-weight: 500;
	font-size: 12px;
	line-height: 130%;
	margin-bottom: 12px;
}

.cms-common__pickup .cms__common__pickup-txt p {
	font-weight: 400;
	font-size: 12px;
	line-height: 140%;
}

.cms-common__pickup:after {
  content: "";
  mask-image: url(data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20123.93%20123.93%22%3E%20%3Cg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1-2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%3E%20%3Cpath%20d%3D%22M61.97%2C0C27.74%2C0%2C0%2C27.74%2C0%2C61.97s27.74%2C61.97%2C61.97%2C61.97%2C61.97-27.74%2C61.97-61.97S96.19%2C0%2C61.97%2C0ZM81.11%2C65.62l-23.24%2C23.24c-1.01%2C1.01-2.33%2C1.51-3.65%2C1.51s-2.64-.5-3.65-1.51c-2.02-2.02-2.02-5.29%2C0-7.3l19.59-19.59-19.59-19.59c-2.02-2.02-2.02-5.29%2C0-7.3s5.29-2.02%2C7.3%2C0l23.24%2C23.24c2.02%2C2.02%2C2.02%2C5.29%2C0%2C7.3Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentColor;
  background-repeat: no-repeat;
  background-position: center;
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  right: 20px;
  bottom: 24px;
}




@media screen and (min-width: 767px) {
  .cms-common__pickup {
    width: 720px;
    min-width: 720px;
    display: grid;
    grid-template-columns: 358px 1fr;
    align-items: center;
    gap: 24px;
    border-radius: 8px;
    margin: 0 20px 0 0px;
  }
	.cms-common__pickup .cms__common__pickup-txt{
	  padding: 20px 44px 24px 6px;
	}
	.cms-common__pickup .cms__common__pickup-txt h3 {
	font-size: 15px;
	}
	.cms-common__pickup .cms__common__pickup-txt .ruby p {
	font-size: 12px;
	}
	.cms-common__pickup .cms__common__pickup-txt h2 {
	  margin-bottom:24px;
	  font-size: 24px;
	}
	.cms-common__pickup .cms__common__pickup-txt p {
	  font-size: 16px;
	}
	.cms-common__pickup .cms__common__pickup-txt .date p {
	  font-size: 14px;
	  margin-bottom: 24px;
	}

}




a.cms-event__item.no-link{
  pointer-events: none;
}
a.cms-event__item.no-link:after {
	display:none!important;
}


body.fireworks .h-common__header {
  background: #0c041e;
  color: #fff;
}
.cms-event__body{
	background: #0c041e;
}

.cms-event__item {
  position: relative;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  width: auto;
  margin: 0 auto;
  border-bottom: 1px solid #fff;
  padding-bottom: 30px;
  display: grid;
  font-weight: 400;
  font-size: 14px;
  line-height: 140%;

}
.cms-event__item.preview {
  display:none;
}

.cms-event__item:after {
  content: "";
  mask-image: url(data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20123.93%20123.93%22%3E%20%3Cg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1-2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%3E%20%3Cpath%20d%3D%22M61.97%2C0C27.74%2C0%2C0%2C27.74%2C0%2C61.97s27.74%2C61.97%2C61.97%2C61.97%2C61.97-27.74%2C61.97-61.97S96.19%2C0%2C61.97%2C0ZM81.11%2C65.62l-23.24%2C23.24c-1.01%2C1.01-2.33%2C1.51-3.65%2C1.51s-2.64-.5-3.65-1.51c-2.02-2.02-2.02-5.29%2C0-7.3l19.59-19.59-19.59-19.59c-2.02-2.02-2.02-5.29%2C0-7.3s5.29-2.02%2C7.3%2C0l23.24%2C23.24c2.02%2C2.02%2C2.02%2C5.29%2C0%2C7.3Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentColor;
  background-repeat: no-repeat;
  background-position: center;
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  right: 0px;
  bottom: 30px;
}


.cms-event__item .cms__component__blocks_img  {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}

.cms-event__item .cms__component__blocks_img img {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 179 / 125;
  object-fit: cover;
  transition: 0.6s all;
}

.cms-event__item .cms__common__event-txt {
  padding: 12px 24px 0px 16px;
  flex-direction: column;
  display: flex;
  font-weight: 400;
  font-size: 14px;
  line-height: 140%;
  position: relative;
  letter-spacing:0;
}


.cms-event__item .cms__element_headling h3{
  font-weight: 400;
  font-size: 9px;
  line-height: 140%;
  letter-spacing: 0%;
  display: block;
  letter-spacing:0;
}
.cms-event__item .cms__element_headling h2 {
	font-weight: 700;
	font-size: 26px;
	line-height: 140%;
	letter-spacing:0;
	margin-bottom: 12px;
	font-family: Zen Old Mincho;
	color: #fcfac9;
}

.cms-event__item .cms__element_txt p {
  font-size: 14px;
  margin-bottom: 16px;
}

.cms-event__item .cms__element_txt.date{
  display: flex;
  gap: 10px;
  padding-top: 8px;
  font-size: 14px;
  align-items: center;
    align-items: baseline;
}
.cms-event__item .cms__element_txt.date p {
  margin-bottom:0px;
}

.cms-event__item .cms__element_txt.date:before {
  content: "開催日";
  color: #fff;
  font-weight: 500;
  font-size: 14px;
  line-height: 100%;
  border-radius: 4px;
  border-width: 1px;
  gap: 8px;
  padding: 2px 8px;
  border: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.cms-event__item .cms__element_txt.date.month7:before {
  content: "7月開催日";
}
.cms-event__item .cms__element_txt.date.month8:before {
  content: "8月開催日";
}
.cms-event__item .cms__element_txt.date.month9:before {
  content: "9月開催日";
}

.cms-event__item .cms__element_txt.time{
  display: flex;
  gap: 10px;
  padding-top: 8px;
  font-size: 12px;
    align-items: center;
      align-items: baseline;
}
.cms-event__item .cms__element_txt.time p {
  margin-bottom:0px;
}

.cms-event__item .cms__element_txt.time:before {
  content: "時間";
  color: #fff;
  font-weight: 500;
  font-size: 9px;
  line-height: 100%;
  border-radius: 4px;
  border-width: 1px;
  gap: 8px;
  padding: 2px 8px;
  border: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  
}



.cms-event__item.half {
  display: grid;
  grid-template-columns: 130px auto;
  align-items: center;
  width: 100%;
}

.cms-event__item.half .cms__component__blocks_img {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}
.cms-event__item.half .cms__component__blocks_img  img {
  aspect-ratio: 65 / 54;
}

.cms-event__item.half .cms__common__event-txt {
  font-size: 12px;
  gap: 0px;
  padding: 0px 24px 00px 16px;
}

.cms-event__item.half .cms__element_headling h3 {
  font-size: 9px;
}

.cms-event__item.half .cms__element_headling h2 {
  font-size: 16px;
  margin-bottom: 6px;
}

.cms-event__item.half .cms__element_txt p {
  font-size: 12px;
  margin-bottom: 6px;
}


.cms-event__item.event .cms__element_img:before,
.cms-event__item.show .cms__element_img:before{
content:"イベント";
  width: auto;
  gap: 8px;
  padding: 6px 10px;
  border-bottom-right-radius: 16px;
  font-weight: 700;
  font-size: 14px;
  line-height: 100%;
  background: #01A6C3;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
    z-index: 1;
}
.cms-event__item.show .cms__element_img:before{
content:"ショー";
background: #F24C7B;
}


.cms-event__item.event-next .cms__element_txt.date:before {
  content: "開催予定";
  color: #000;
  border: 1px solid #000;
}





@media screen and (min-width: 767px) {
	.cms-event__item {
		width: 100%;
		display: grid;
		grid-template-columns: 725px 1fr;
		align-items: center;
		gap: 24px;
		margin: 0 auto;
	}
	.cms-event__item.event .cms__element_img:before,
	.cms-event__item.show .cms__element_img:before {
	  font-size: 16px;
	  padding: 8px 12px;
	  border-bottom-right-radius: 16px;
	}
	.cms-event__item.event.half .cms__element_img:before,
	.cms-event__item.show.half .cms__element_img:before {
    font-size: 16px;
  }


	.cms-event__item .cms__element_headling h2 {
		font-size: 28px;
		margin-bottom: 24px;
		text-align: left;
	}
	.cms-event__item .cms__common__event-txt {
	  font-size: 20px;
	    margin-bottom: 24px;
	}
	.cms-event__item .cms__element_txt p {
	   font-size: 20px;
	}
	.cms-event__item .cms__element_txt.date p {
    font-size: 17x;
	}
	.cms-event__item .cms__element_txt.time p {
    font-size: 17px;
	}
	.cms-event__item .cms__element_txt.notice p {
    font-size: 12px;
	}
	.cms-event__item .cms-event__item:after {
		width: 40px;
		height: 40px;
		display: block;
		position: absolute;
	}
  	.cms-event__item.half:after {
    width: 32px;
    height: 32px;
  }
	.cms-event__item:hover .cms__component__blocks_img img{
	  transform:scale(1.1,1.1);
	}


	.cms-event__item.half {
		grid-template-columns: 1fr;
		align-items: center;
		width: calc(100% / 2 - 15px);
		gap: 12px;
		align-content: space-between;
		display: flex;
		flex-wrap: nowrap;
		flex-direction: column;
		margin: 0 auto 0 0;
	}
	  .cms-event__item.half.third {
	    width: calc(100% / 3 - 20px);
	  }
	  .cms-event__body.now .cms-event__item.half.third,
	  .cms-event__body.next .cms-event__item.half.third {
	   width: calc(100% / 2 - 15px);
	  }

	.cms-event__item.half .cms__component__blocks_img img {
	  aspect-ratio: 534 / 373;
	}
	.cms-event__item.half .cms__common__event-txt {
	  padding: 0px 24px 00px 16px;
	  font-size: 16px;
	  width: 100%;
	}
	.cms-event__item.half .cms__element_headling h2 {
	  margin-bottom: 8px;
	  font-size: 24px;
	}
	.cms-event__item.half .cms__element_txt p {
	  font-size: 16px;
	  margin-bottom: 8px;
	}
	.cms-event__item .cms__element_txt.date:before {
	  font-size:14px;
	}
	.cms-event__item .cms__element_txt.time:before {
	  font-size:14px;
	}


	.cms-event__item.c-miffy .cms__element_img:after{
		width: 80px;
		height:30px;
		bottom: 3px;
		right: 5px;
	}
	.cms-event__item.c-miffy_w .cms__element_img:after{
		width: 80px;
		height:30px;
		bottom: 3px;
		right: 5px;
	}
}


.c-miffy .cms__element_img:after{
	content: "";
	background-image: url(../img/copyright/mercisbv.png);
	background-color: transparent;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 70px;
	height: 15px;
	display: block;
	position: absolute;
	bottom: 3px;
	right: 3px;
	 z-index: 1;
}
.c-miffy_w .cms__element_img:after{
	content: "";
	background-image: url(../img/copyright/mercisbv_w.png);
	background-color: transparent;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 70px;
	height: 15px;
	display: block;
	position: absolute;
	bottom: 3px;
	right: 3px;
	 z-index: 1;
}





