@charset "UTF-8";


/* =============================================
　　root
============================================= */

:root {

	--color-primary:#84021a;
	--color-secondary:#bc882e;
	--color-accent:#273f1b;
	--color-base:#ffe7c5;

	--color-show-events:#ffe7c5;
	--color-show-events-secondary:#273f1b;

	--color-fireworks:#84021a;
	--color-fireworks-secondary:#d4145a;

	--color-illumination:#1a0638;
	--color-illumination-secondary:#4f2f7c;
		
	--color-gourmet:#fbb03b;
	--color-gourmet-secondary:#f7931e;
	
	--section-category-font-size: clamp(1.6rem, 1.114rem + 1.43vw, 2.4rem);
	
	--highlights-color:#b6232a;
	--highlights-color-secondary:#bc882e;
	
	--highlights-font-size-title: clamp(1.8rem, 1.114rem + 1.43vw, 2.8rem);
	--highlights-font-size-name:clamp(2.4rem, 1.457rem + 2.38vw, 3.6rem);
 	--highlights-font-size-text:clamp(1.4rem, 1.171rem + 0.48vw, 1.6rem);


	--spot-font-size-title: clamp(2.1rem, 1.114rem + 1.43vw, 2.8rem);
	--spot-font-size-name:clamp(3rem, 1.457rem + 2.38vw, 3.6rem);
 	--spot-font-size-text:clamp(1.4rem, 1.171rem + 0.48vw, 1.6rem);

	--countdown-font-size-logo:clamp(3.6rem, 0.857rem + 5.71vw, 6rem);
}

/* =============================================
　　nav
============================================= */

main nav a.logo{
  text-decoration: none;
}

@media screen and (max-width: 768px) {
	  .h-header__cta {
	    display:none;
	}
}

/* =============================================
　　text-
============================================= */

.font-sans-serif{
	font-family:var(--font-family-Zen-Go);
}
.font-serif{
	font-family:var(--font-family-Zen-Mi);
	font-weight: 300!important;
}
.text-heading{
  font-size: var(--xmas-font-size-headding);
  text-align: center;
  font-weight: 300;
}
.text-read{
  font-size: var(--font-size-read);
  font-weight: 500;
}

.text-base{
  font-size: var(--font-size-base);
  font-weight: 500;
}
.text-2xl{
  font-size: var(--font-size-2xl);
  font-weight: 500;
}
.text-xl{
  font-size: var(--font-size-xl);
  font-weight: 500;
}
.text-lg{
  font-size: var(--font-size-lg);
  font-weight: 500;
}
.text-md{
  font-size: var(--font-size-md);
}
.text-sm{
  font-size: var(--font-size-sm);
}
.text-xs{
  font-size: var(--font-size-xs);
}
.text-xxs{
  font-size: var(--font-size-xxs);
}

.text-logo{
  font-size: var(--countdown-font-size-logo);
  text-align: center;
  line-height: 120%;
}

.text-date{
  font-size: var(--font-size-2xl);
  text-align: center;
  line-height: 120%;
}
.text-time{
  font-size: var(--font-size-md);
  text-align: center;
  line-height: 120%;
}

[class^="text-"] small {
  font-size:70%;
}

/* =============================================
　　.align-
============================================= */

.align-c{
text-align: var(--align-center);
}
.align-c-sp{
text-align: var(--align-center-sp);
}
.align-l{
text-align: var(--align-left);
}
.align-l-sp{
text-align: var(--align-left-sp);
}
.align-r{
text-align: var(--align-right);
}
.align-r-sp{
text-align: var(--align-right-sp);
}


/*************************************************************

.ul__mark

**************************************************************/
.ul__mark {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.ul__mark > li {
	position: relative;
	display: flex;
  align-items: baseline;
	column-gap: 10px;
	margin-bottom: 0rem;
}
.ul__mark > li:last-child {
  margin-bottom:0;
}
.ul__mark > li:before {
  content: "●";
  display: block;
  line-height: 1;
}
.ul__mark > li.asterisk:before {
	content:  "※";
	display: block;
}

/***************************************************************

.grid

****************************************************************/


.grid {
  display: grid;
  align-items: center;
}

.grid.half-single {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 35px;
  row-gap: 35px;
}

.grid.half {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 35px;
  row-gap: 35px;
}
.grid.half3x2 {
grid-template-columns: 1.3fr 1fr;
  column-gap: 35px;
  row-gap: 35px;
}

.grid.third {
  grid-template-columns: repeat(3, 1fr);
  column-gap: 35px;
  row-gap: 35px;
}

.grid.four {
  grid-template-columns: repeat(4, 1fr);
  column-gap: 24px;
  row-gap: 24px;
}

.grid.five {
  grid-template-columns: repeat(5, 1fr);
  column-gap: 24px;
  row-gap: 24px;
}

.grid.half-100 {
  column-gap: 100px;
  row-gap:80px;
}

.grid.half-140 {
  column-gap: 140px;
  row-gap: 120px;
}

.grid.align-start {
	align-items: start;
}
.grid.align-stretch {
  align-items: stretch;
}

.grid.grid_border_b div {
  border-bottom: 1px #e2e6f0 solid;
  padding-bottom: 20px;
  margin-bottom: 0 !important;
  height: 100%;
}


@media screen and (max-width: 736px) {
	.grid.half,
	.grid.half3x2,
	.grid.third {
		grid-template-columns: repeat(1, 1fr);
		column-gap: 20px;
		row-gap: 20px;
	}
	.grid.half-sp {
	  grid-template-columns: repeat(2, 1fr);
	  column-gap: 20px;
	  row-gap: 20px;
	}
	.grid.half43 {
	  grid-template-columns: auto;
	  column-gap: 15px;
	  row-gap: 15px;
	}

}


/*****************************************

custom

*****************************************/

#countdown {
  background: #000;
  color:#fff;
}

#countdown main{
	font-family: var(--font-family-Zen-Go);
}

#countdown main a, #countdown  main a:visited, #countdown  main a:link {
  color: #fff;
}

/* アニメーションさせたい要素の基本スタイル */
.fade-in-up {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fade-in-up.active {
opacity: 1;
transform: translateY(0);
}



/* アニメーションの定義 */
@keyframes riseUp {
	/* 開始時（下から、透明な状態） */
	from {
	  opacity: 0;
	  transform: translateY(30px);
	}
	/* 終了時（定位置で、不透明な状態） */
	to {
	  opacity: 1;
	  transform: translateY(0);
	}
}

.pege__header {
  overflow: hidden;
  position: relative;
  padding:var(--layout-space-base-horizontal) 0;
}

.pege__header:before {
	content: "";
	background-image: url(../img/index/kv/01_pc.jpg);
	background-position: center center;
	position: absolute;
	width: 100%;
	height: 120%;
	opacity: 0.4;
	top: 0;
	left: 0;
}
.pege__header:after {
  content: "";
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, #000 100%);
  width: 100%;
  height: 120%;
  position: absolute;
  top: 0;
  left: 0;
}

.pege__body {
	position: relative;
	z-index: 1;
}
.pege__body__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding:var(--layout-space-base-horizontal-small);
}

.btn{
  font-size: calc(var(--font-size-md) * 0.9);
}

.txt-gap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap:var(--layout-space-gap);
	width: 100%;
}

.txt-shadow {
  text-shadow: 1px 1px 1px #000;
}
.line-gold {
	display: inline-block;
	padding: 0 10px;
}

.line-gold:before,
.line-gold:after {
	content: "";
	background: linear-gradient(45deg, #DAAF08 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #DAAF08 90% 100%);
	background-size: 600% 200%;
	animation: gradient 5s infinite cubic-bezier(.62, .28, .23, .99) both;
	width: 100%;
	display: block;
	height: 1px;
}

.t-line-txt {
	position: relative;
	display: inline-block;
	padding: 0 1em;
}
.t-line-txt:after, .t-line-txt:before {
  display: block;
  content: " ";
  font-size: 0;
  clear: both;
  width: 10vw;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -1px;
}
.t-line-txt:before{
  right: 100%;
}
.t-line-txt:after {
  left: 100%;
}



.news-box{
	font-size: var(--font-size-sm);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fff;
	border-radius: 1rem;
	color: #000;
	overflow: hidden;
	align-items: stretch;
}
.news-box dt{
	padding: 1rem;
	background: #E91E63;
	color: #fff;
	width: 100%;
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
}
.news-box dd{
	padding: 1rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.news-box dd a {
  color: #000 !important;
    text-align: left;
}

@media screen and (min-width: 736px) {
	.news-box {
	  flex-direction: row;
	}
	.news-box dt {
	  width: auto;
	}
}

/* =============================================
　　#fv
============================================= */

section.pege__kv {
  position: relative;
}
.pege__kv__txt {
  position: absolute;
  top: 10%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
.pege__kv__txt img {
  margin: 0 auto;
  max-width: 800px;
  width: 100%;
}

.pege__kv__batch {
  position: absolute;
  bottom: 20px;
  right: 20px;
}


.ph__img__16x8 img {
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 8;
  object-fit: cover;
}

@media screen and (max-width: 736px) {
	.pege__kv__txt {
	  top: 25%;
	}
  .ph__img__3x4-sp img {
    aspect-ratio: 3 / 3.5;
  }
	.pege__kv__txt img {
	  object-position: 90%!important;
	}

	.pege__kv__batch {
	  position: absolute;
	  bottom: 10px;
	  right: 10px;
	  	  max-width:20%;
	}
	.pege__kv__batch img{
	}

}

.pege__term {
  position: relative;
}

.pege__term h2 img{
  position: relative;
}


/* =============================================
　　.main-spot
============================================= */

.main-spot{
	padding:var(--layout-space-section) 0 calc(var(--layout-space-section));
}

.main-spot:before{
	content: "";
}

.main-spot .main-spot-ttl {
	font-size: 8rem;
	line-height: 1;
	position: absolute;
	top: -2rem;
	right: 5%;
	z-index: 2;
	text-align: left;
	font-family: 'Playfair Display', serif;
	text-shadow: 0px 0px 20px #ed1e79;
}


.main-spot .mask-img {
  display: block;
  position: relative;
  overflow: hidden;
}


.main-spot .mv_container {
  position: relative;
  width: 100%;
}


.main-spot .mv_body {
	display: block;
	position: absolute;
	bottom: -10%;
	right: 0;
	max-width: 500px;
	z-index: 3;
}

.main-spot .mv_inbody {
	padding: 20px;
	z-index: 2;
	position: relative;
	background: #fff;
	border-radius: 0 0 0 100px;
	border-left: 3px #ff5611 solid;
	border-bottom: 3px #ff5611 solid;
}


.main-spot .mv_txt {
  padding: 0 30px 20px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: #000;
  align-items: flex-start;
}

h3.ttl-copy{
	position: relative;
	padding: 0.5rem 0 1rem;
	font-size: var(--font-size-2xl);
	line-height: 140%;
}
h3.ttl-copy:before{
	content: "";
	border-bottom: 2px #ff5611 solid;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 80px;
}
h3.ttl-copy:after{
	content: "";
	border-bottom: 2px #000 solid;
	display: block;
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
}

.main-spot > div{
	overflow: visible;
	overflow: visible;
	position: relative;
	margin-bottom:10rem;
}

.main-spot > div:nth-child(even) {
}

.main-spot > div:nth-child(even)  .mv_body {
  left: 0;
  right:auto;
}
.main-spot > div:nth-child(even)  .mv_inbody {
  border-radius: 0 0 120px 0;
  border-right: 5px #ff5611 solid;
  border-left: 0;
}

.main-spot  .mask-img  img{
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 8;
  object-fit: cover;
}

.main-spot > div:nth-child(even) .main-spot-ttl {
  right: auto;
  left:5%;
}


.main-spot .item{
}
.main-spot > div:nth-child(even) .item{
}

.main-spot .item .fade-sliders {
  width: 85%;
  border-radius: 0 150px 0 0;
  overflow: hidden;
}

.main-spot > div:nth-child(even)  .fade-sliders {
  border-radius: 150px 0 0 0;
  margin: 0 0 0 auto;
}

.fade-sliders.hikari:before {
  content: "";
  background: url(../img/index/highlights/illumination_logo.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position:right;
  position: absolute;
  top: 0px;
  right: 20px;
  width: 100%;
  height: 150px;
  display: block;
  z-index: 2;
}

.main-spot  div.extra .fade-sliders {
  border-radius: 0;
  margin: 0 0 0 auto;
  margin: 0 auto;
}

.main-spot  div.extra .mv_body{
	position: relative;
	margin: 0 auto;
	bottom: 0;
	max-width: 800px;
	width: 94%;
}
.main-spot  div.extra .mv_inbody {
  background: #fff;
  border-radius: 0 0 100px 100px;
   border-right: 3px #ff5611 solid;
}

@media screen and (max-width: 736px) {
	.main-spot > div {
	  margin-bottom:5rem;
	}
	.main-spot  .main-spot-ttl {
	  font-size:3.5rem;
	}
	.main-spot  h3.ttl-copy {
	  font-size: 6.4vw;
	}
	.main-spot .mv_body {
	  position: relative;
	  bottom: auto;
	  top: auto;
	  max-width: 85%;
	  margin: -10% 0 0 auto;
	}
	.main-spot > div:nth-child(even) .mv_body {
	  margin: -10% auto 0 0;
	}

	.main-spot  .mask-img  img{
	  aspect-ratio: 3 / 3.5;
	}

	.main-spot .mv_inbody {
		padding: 10px 10px 20px 10px;
		border-radius: 0 0 0 100px;
		border-width: 3px;
	}
	.main-spot > div:nth-child(even) .mv_inbody {
	  padding: 10px 20px 20px 10px;
	}
	.main-spot .mv_txt {
	  padding: 0 0 20px 30px
	}
	.main-spot > div:nth-child(even)  .mv_txt {
	  padding: 0 0px 20px 0 ;
	}

	.main-spot .mask-img.object-position img {
	      object-position: 10% !important;
	}
	.main-spot .item .fade-sliders {
	  width: 95%;
	  border-radius: 0 100px 0 0;
	  overflow: hidden;
	}

	.main-spot > div:nth-child(even)  .fade-sliders {
	  border-radius: 100px 0 0 0;
	  margin: 0 0 0 auto;
	}

	.fade-sliders.hikari:before {
	  width: 100%;
	  height: 100px;
	}

	.fade-sliders.hikari img{
	  object-position: left;
	  animation: pan-image 25s infinite alternate;
	}
	@keyframes pan-image {
	  0% {
	    object-position: left;
	  }
	  100% {
	    object-position: right;
	  }
	}
}



#speciallive .mv_inbody{
	border-color: #93278f!important;
}
#speciallive .main-spot-ttl {
  text-shadow: 0px 0px 20px #93278f!important;
}
#illumination .mv_inbody {
	border-color:#0071bc!important;
}
#illumination .main-spot-ttl {
  text-shadow: 0px 0px 20px #0071bc!important;
}
#attraction .mv_inbody {
  border-color:  #fbb03b!important;
}
#attraction .main-spot-ttl {
text-shadow: 0px 0px 10px #FF9800, 0px 0px 20px #FF9800;
}

#hotelplan .main-spot-ttl {
  text-shadow: 0px 0px 20px #000!important;
}


/* =============================================
　　#coundownticket
============================================= */
#coundownticket {
  max-width: 1440px;
  margin: 0 auto;
}

#coundownticket  .ticket-list{
	background: #70758d;
	padding: 2.4rem;
	border-radius: 4rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap:2.4rem;
}
#coundownticket  .ticket-list .ticket-txt{}
#coundownticket  .ticket-list .ticket-price{}

#coundownticket .ticket-notice {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6rem;
}
#coundownticket .ticket-notice p span{
  color: #fffc00 !important;
}


.ticket-area .ticlet-item {
	padding: 15px 5px;
	text-align: center;
	font-size: 16px;
	font-weight: 500 !important;
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	justify-content: center;
	background-color: #fff !important;
	color: #000;
	text-align: center;
}
.ticket-area .ticlet-item p{
  display: block;
  width: 100%;
  text-align: center !important;
}
#coundownticket .grid.five {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	column-gap: 24px;
	row-gap: 24px;
	align-items: stretch;
}

@media screen and (max-width: 736px) {
	#coundownticket a{
		min-width: auto;
	}
	#coundownticket .grid.five {
	  grid-template-columns: 1fr 1fr;
	  column-gap: 14px;
	  row-gap: 14px;
	  align-items: stretch;
	}
}






/*************************************************************

.component__tab

**************************************************************/

.component__tab{
  margin: 0 auto 115px;
}


.component__tab:after {
  content: "";
  height: 1px;
  background: #000;
  margin: 0 calc(50% - 50vw);
}


.component__tab > ul.component__tab__menu {
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 10px;
}

.component__tab > ul.component__tab__menu li {
	width: 100%;
	display: flex;
	align-items: stretch;
	cursor: pointer;
}
.component__tab > ul.component__tab__menu li:last-child {
	  margin: 0 0px 0 0;
}
.component__tab > ul.component__tab__menu li a {
	font-size: 22px;
	font-size: 17px;
	  line-height: 1.2;
	font-weight: 600;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0.6em 0.6em 0 0;
	border: 1px #000 solid;
	border-bottom: 0!important;
	padding: 10px;
	transition: .2s;
	color: #fff;
	background: #000;
	text-align: center;
	width: 100%;
}


.component__tab > ul.component__tab__menu li.select a,
.component__tab > ul.component__tab__menu li:hover a{
	color: #231815;
	background: #fff;
}

.component__tab > .component__tab__menu li.select:after {
  content: "";
  height: 1px;
  background: #231815;
  width: 150%;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.content_area.hide {
  display: none;
}
@media screen and (max-width: 736px) {
	.component__tab {
	  margin: 0 auto 55px;
	}
	.component__tab > ul.component__tab__menu {
	  margin: 0 10px;
	}
	.component__tab > ul.component__tab__menu li {
	  margin: 0 10px 0 0;
	}
	.component__tab > ul.component__tab__menu li a {
	  font-size: 2.6vw;
	  padding: 6px 3px;
	}
}





/*****************************************
.component__toggle
*****************************************/
.component__toggle{
	border: 1px #281815 solid;
	text-align: center;
	padding:0px;
	background: #000;
	width: 100%;
}

.component__toggle dt {
	line-height: 1.2;
	text-align: center;
	display: inline-block;
	padding: 20px;
	position: relative;
	width: 100%;
	display: flex;
	background: #242424;
	color: #fff;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	color:red;
}
.component__toggle dd > div {
  padding:2rem;
  text-align: left;
}

.component__toggle dt .toggle__arrow{
	position: relative;
	width: 20px;
	height: 20px;
	transform: rotate(90deg);
	transition: .5s;
	margin-left: 15px;
}
.component__toggle dt .toggle__arrow span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.component__toggle dt .toggle__arrow span:before {
	content: "";
	display: block;
	-webkit-transform: translateX(-25%) rotate(45deg);
	transform: translateX(-25%) rotate(45deg);
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	-webkit-transition-property: border-color;
	transition-property: border-color;
	-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	border-width: 2px;
	width: 12px;
	height: 12px;
}
.component__toggle > dt.active .toggle__arrow {
  transform: rotate(-90deg);
}


/* トグル(アコーディオン)のアニメーション用 */
dl.component__toggle dd {
  box-sizing: border-box; /* paddingを含めて高さを計算 */
  overflow: hidden;
  height: 0; /* ★重要：デフォルトの状態を高さ0で非表示にする */
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
  transition: all 0.35s ease; /* アニメーションを常に有効化 */
}

/* JavaScriptで付与されるクラス */
dl.component__toggle dt.active {
}




/* =============================================
　　#seat
============================================= */




#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li a{
  padding: 20px 0;
  color:#fff;
  background: transparent;
  border-width: 2px;
}

#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li.select a {
	background-color: #000;
}
#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li a#component__tab-mf {
	border-color: #57b4fd;
	color:#57b4fd;
}
#seat .pege__seat-ticket .component__tab > .component__tab__menu li.select:has(a#component__tab-mf):after {
  background: #57b4fd;
}

#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li a#component__tab-wg {
	border-color: #6edcd5;
	color:#6edcd5;
}
#seat .pege__seat-ticket .component__tab > .component__tab__menu li.select:has(a#component__tab-wg):after {
  background: #6edcd5;
}

#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li a#component__tab-cr {
	border-color: #aecaff;
	color:#aecaff;
}
#seat .pege__seat-ticket .component__tab > .component__tab__menu li.select:has(a#component__tab-cr):after {
  background: #aecaff;
}

#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li a#component__tab-ot {
	border-color: #8BC34A;
	color:#8BC34A;
}
#seat .pege__seat-ticket .component__tab > .component__tab__menu li.select:has(a#component__tab-ot):after {
  background: #8BC34A;
}

#seat .pege__seat-ticket .component__tab > ul.component__tab__menu li:hover a{
	background: #000;
}

#seat .pege__seat-ticket {
  overflow: hidden;
}
.c_mf{
  color: #57b4fd!important;
}
.component__tab-mf .t-line-txt{
  color: #57b4fd!important;
}
.component__tab-mf .t-line-txt:after,
.component__tab-mf .t-line-txt:before {
  background-color: #57b4fd!important;
}

.c_wg{
  color:#6edcd5!important;
}

.component__tab-wg .t-line-txt{
  color: #6edcd5!important;
}
.component__tab-wg .t-line-txt:after,
.component__tab-wg .t-line-txt:before {
  background-color:#6edcd5!important;
}

.c_cr{
  color:#aecaff!important;
}

.component__tab-cr .t-line-txt{
  color: #aecaff!important;
}
.component__tab-cr .t-line-txt:after,
.component__tab-cr .t-line-txt:before {
  background-color:#aecaff!important;
}

.c_ot{
  color:#8BC34A!important;
}
.component__tab-ot .t-line-txt:after,
.component__tab-ot .t-line-txt:before {
  background-color:#8BC34A!important;
}


.component__tab .pege__body__inner {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  text-align: center;
  width: 100%;
  max-width: 1200px;
  text-align: center;
}
.component__tab .pege__body__inner:first-child {
  margin-top:2.4rem;
}

.component__tab .t-line-txt {
	font-size: var(--font-size-xl);
}

.component__tab .grid.half3x2 {
  grid-template-columns: 1.3fr 1fr;
  column-gap: 35px;
  row-gap: 35px;
}
.component__tab .ticket-notice {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}

.component__tab .todays-ticket {
  background: #70758d;
  width: 100%;
  padding: 2.4rem;
  display: grid;
  gap: 2.6rem;
}
.component__tab .todays-ticket {
}
.component__tab .todays-ticket p{
  text-align: left;
}

.c_yellow {
  color: #fffc00 !important;
}


.ticket__price {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-content: center;
	align-items: center;
	gap: 2rem;
	margin-top: 4rem;
}

.ticket__body {
  align-items: stretch;
  width: 100%;
}
.ticket__box{
	outline: #ffffff 2px solid;
	outline-offset: -2px;
	border-radius: 10px;
	overflow: hidden;
	font-size: 14px;
	padding-bottom:20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.ticket__box__name {
  padding: 10px 10px;
  background: #fff;
}
.ticket__box__name p{
	font-size: 18px !important;
	text-align: center !important;
	color: #000;
	font-weight: bold;
	display: inline-block;
	border-bottom: 4px #000 solid;
}
.ticket__box__name.vip p{
	border-color: #EA535D ;
}
.ticket__box__name.ex p{
	border-color:#A67C52; 
}
.ticket__box__name.ss p{
	border-color:#DB6AA5 ; 
}
.ticket__box__name.xs p{
	border-color:#04AA72 ; 
}
.ticket__box__name.ar p{
	border-color:#29ABE2; 
}
.ticket__box__name.xa p{
	border-color:#FFEA3C; 
}
.ticket__box__name.ca p{
	border-color:#FB8B00; 
}

.ticket__box__img{
  margin: 0 2px;
}
.ticket__box__price{
  padding: 5px 10px;
      flex: 1;
  	font-size: 18px !important;
}
.ticket__box__price .price_today:before{
content: "当日券";
  font-size: 12px;
  background: #eeeeee;
  color: #000;
  padding: 5px 10px;
  line-height: 1 !important;
  border-radius: 9999px;
  margin: 0 10px;
}

.ticket__box__price span{
  	font-size:180%!important;
  	font-weight: bold;
}

.ticket__box__txt{
  padding: 0 10px;;
}

.ticket__box__seat{
  padding: 5px 10px;
}
.ticket__box__btn{
  padding: 10px 20px;
}

.ticket__box__btn .btn__basic{
  min-width: 100%;
}


.btn_txt{
	border: 0;
	text-decoration: underline;
	font-size: var(--font-size-sm);
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	gap:0.5rem;
}
.icon_blank:after {
  content: "";
  width: max(12px, 12px);
  height: max(12px, 12px);
  border: 0;
  transition: all .3s;
  display: block;
  color: #fff;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentColor;
    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%20%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%20version%3D%221.1%22%20viewBox%3D%220%200%2025.5%2025.7%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23fff%3B%20stroke-miterlimit%3A%2010%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%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%20%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201-2%22%3E%20%3Cg%3E%20%3Crect%20class%3D%22cls-1%22%20x%3D%22.5%22%20y%3D%227.4%22%20width%3D%2217.8%22%20height%3D%2217.8%22%2F%3E%20%3Cpolyline%20class%3D%22cls-1%22%20points%3D%227.2%20.5%2025%20.5%2025%2018.3%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E);
}