@charset "UTF-8";
/* CSS Document */


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

	Common

//////////////////////////////////////////////////////////////////////////////// */
html {
	scroll-behavior: smooth;
	background: linear-gradient(160deg, #b9b6f5, #c9b3f7 45%, #e2b6f2 75%, #a9a3ee) fixed;
}
.holoCanvas {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	height: 110lvh;
	z-index: -1;
	pointer-events: none;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
ul { list-style: none;}

.anim {
	opacity: 0;
	transform: translateY(40px);
	transition: all .6s ease-out;
}
.anim.on {
	opacity: 1;
	transform: translateY(0);
}


body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
	font-size: min(3.4vw, 16px);
	line-height: 1.8;
	letter-spacing: .05em;
	-webkit-text-size-adjust: 100%;
	color: #181818;
	margin-top: min(calc(30px + 10vw), 92px);
}
section {
	padding: min(8vw, 80px) 0;
}
section:first-child {
	padding-top: min(20vw, 180px);
}
section:last-child {
	padding-bottom: min(18vw, 160px);
}
.innerWrap {
	max-width: 1160px;
	margin: auto;
	padding: 0 min(5vw, 48px);
}
h2 {
	font-family: "Lato", sans-serif;
	font-size: min(7.4vw, 64px);
	font-weight: 900;
	color: #fff;
	line-height: 1.5;
	margin-bottom: min(4vw, 40px);
}
h2 span:first-child {
	text-shadow: 0.06rem 0 0.06rem #ea36af, -0.125rem 0 0.06rem #75fa69;
	letter-spacing: 0.04em;
	animation-duration: 0.01s;
	animation-name: textflicker;
	animation-iteration-count: infinite;
	animation-direction: alternate;
}
@keyframes textflicker {
  from { text-shadow: 1px 0 0 #ea36af, -2px 0 0 #75fa69;}
  to { text-shadow: 2px 0.5px 2px #ea36af, -1px -0.5px 2px #75fa69;}
}

.listDisc,
.listAsterisk {
	list-style: none;
	padding-left: 1.2em;
	font-size: min(3vw, 14px);
}
.listDisc > li,
.listAsterisk > li {
	text-indent: -1.2em;
	font-weight: normal;
	line-height: 1.4;
}
.listDisc > li + li,
.listAsterisk > li + li {
	margin-top: 0.3em;
}
.listDisc > li:before,
.listAsterisk > li:before {
	margin-right: 0.2em;
}
.listDisc > li:before {
	content: "・";
}
.listAsterisk > li:before {
	content: "※";
}
.textRed,
.listDisc > li.caution,
.listAsterisk > li.caution {
	color: #ff3e3e;
}
.listDisc > li a,
.listAsterisk > li a {
	color: #fff;
}

.comingSoonArea {
	border: #181818 solid 1px;
	padding: min(14vw, 140px) min(6vw, 32px);
	border-radius: min(5vw, 30px);
}
.comingSoonArea p {
	font-family: "Lato", sans-serif;
	font-size: min(5.6vw, 28px);
	font-weight: 700;
	text-align: center;
}


@keyframes fadeIn {
	0% { opacity: 0;}
	100% { opacity: 1;}
}

@media screen and (min-width: 821px) {
	.sp {
		display: none !important;
	}
}
@media screen and (max-width: 820px) {
	.pc {
		display: none !important;
	}
}

@media (hover: hover) {

	a {
		transition: all 0.3s ease-out;
	}

	.scheduleList li:not(.scheduleHead) .info a:hover,
	.scheduleList.black li:not(.scheduleHead) .info a:hover,
	.navWrap .mainNav a:hover {
		color: #E56CD1;
	}
	.listDisc > li a, .listAsterisk > li a:hover {
		color: #181818;
	}
	.ticketType dd .btnWrap a:hover,
	.ticketType.black dd .btnWrap a:hover,
	.contactBtnList a:hover {
		background-color: #E56CD1;
	}
}

/* ----------- HEADER ----------- */

header {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	padding: min(5vw, 30px) min(4vw, 40px);
	transition: all 0.6s ease-out;
	z-index: 1;

	opacity: 0;
	animation: fadeIn 1s ease-out 1s forwards;
}
header.on {
	background-color: rgba(24, 24, 24, 0.2);
	padding: min(2vw, 20px);
}

header .hdrLogo {
	width: min(28vw, 140px);
}
header .menuWrap {
	display: flex;
	align-items: center;
	gap: min(2vw, 12px);
	transition: all 0.4s;
}
header .menuWrap p {
	font-family: "Lato", sans-serif;
	font-weight: 700;
	font-size: min(3.4vw, 16px);
	color: #fff;
	letter-spacing: 0.08em;
}

.menuButton {
	position: relative;
	display: block;
	width: 60px;
	height:30px;
}
.menuButton span {
	display: block;
	background: #fff;
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	transition: all 0.4s;
}
.menuButton span:first-child { top: 10px;}
.menuButton span:last-child { bottom: 10px;}

header > .menuWrap.active {
	opacity: 0;
}
header .menuWrap.active p {
	color: #181818;
}
.menuWrap.active .menuButton span:first-child {
	transform: translateY(4.5px) rotate(45deg);
	background: #181818;
}
.menuWrap.active .menuButton span:nth-child(2) {
	transform: translateY(-4.5px) rotate(-45deg);
	background: #181818;
}

#globalNav {
	display: none;
	position: fixed;
	top: min(3.5vw, 20px);
	right: min(3.5vw, 20px);
	z-index: 10;
}
.navWrap {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: #fff;
	padding: min(20vw, 88px) min(6vw, 36px) min(5vw, 32px);
	width: min(93vw, 380px);
	min-height: min(80vw, 400px);
	/* width: min(93vw, 360px);
	min-height: min(80vw, 380px); */
}
.navWrap .menuTitle {
	position: absolute;
	top: min(10vw, 48px);
	left: min(6vw, 36px);
	transform: translateY(-50%);
	font-family: "Lato", sans-serif;
	font-weight: 700;
	font-size: min(3vw, 12px);
	line-height: 1.4;
}
.navWrap .menuLogo {
	position: absolute;
	/* right: min(4vw, 24px);
	bottom: min(5vw, 32px);
	width: 28%; */
	position: absolute;
	right: min(5vw, 24px);
	bottom: min(11vw, 62px);
	width: 33%;
}
.navWrap .menuWrap {
	position: absolute;
	top: min(10vw, 48px);
	right: min(3vw, 24px);
	transform: translateY(-50%);
	z-index: 10;
}
.navWrap .mainNav {
	display: flex;
	list-style: none;
	flex-direction: column;
}
.navWrap .mainNav a {
	color: #181818;
	font-size: min(7vw, 32px);
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.04em;
	text-decoration: none;
}
.navWrap .copy {
	font-size: min(2.6vw, 10px);
	margin-top: min(17vw, 72px);
}

@media screen and (max-width: 820px) {

	.navWrap {
		padding-bottom: min(5vw, 32px);
	}
	.navWrap .mainNav a {
		line-height: 1.8;
	}
}

/* ----------- Glitch ----------- */

.glitch {
	background: url(../images/main_title.png) no-repeat center;
  background-size: 0;
  isolation: isolate;
	width: min(56.25%, 90svh);
	aspect-ratio: 4096/2807;
  position: relative;
	margin-left: 6%;
	margin-bottom: 4%;
}
.glitch::before, .glitch::after,
.glitch .channel {
  background: inherit;
  background-size: cover;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
@keyframes glitch-before {
  0% {
    clip-path: polygon(0% 47.8262630651%, 100% 47.8262630651%, 100% 51.7442339829%, 0% 51.7442339829%);
    transform: translate(-2.1053%, 0.0710%);
  }
  1.2% {
    clip-path: polygon(0% 88.5170317698%, 100% 88.5170317698%, 100% 97.4816182875%, 0% 97.4816182875%);
    transform: translate(-0.7484%, -0.0554%);
  }
  2.4% {
    clip-path: polygon(0% 32.1045540434%, 100% 32.1045540434%, 100% 34.1461127489%, 0% 34.1461127489%);
    transform: translate(1.4579%, -0.1290%);
  }
  3.6% {
    clip-path: polygon(0% 9.2831657792%, 100% 9.2831657792%, 100% 15.8395437102%, 0% 15.8395437102%);
    transform: translate(-0.4999%, 0.1650%);
  }
  4.8% {
    clip-path: polygon(0% 24.2600207843%, 100% 24.2600207843%, 100% 32.2076936801%, 0% 32.2076936801%);
    transform: translate(2.5125%, 0.0331%);
  }
  6% {
    clip-path: polygon(0% 14.56296033%, 100% 14.56296033%, 100% 20.3541004071%, 0% 20.3541004071%);
    transform: translate(-2.0617%, 0.0841%);
  }
  7.2% {
    clip-path: polygon(0% 89.1804899362%, 100% 89.1804899362%, 100% 98.7992383668%, 0% 98.7992383668%);
    transform: translate(-1.4606%, -0.0632%);
  }
  8.4% {
    clip-path: polygon(0% 69.9380066437%, 100% 69.9380066437%, 100% 73.2478647318%, 0% 73.2478647318%);
    transform: translate(-1.8570%, -0.0464%);
  }
  9.6% {
    clip-path: polygon(0% 20.8355955117%, 100% 20.8355955117%, 100% 24.2686199416%, 0% 24.2686199416%);
    transform: translate(-0.6670%, -0.0545%);
  }
  10.8% {
    clip-path: polygon(0% 30.8488623119%, 100% 30.8488623119%, 100% 34.5102319466%, 0% 34.5102319466%);
    transform: translate(2.3722%, 0.1546%);
  }
  12%, 100% {
    clip-path: none;
    transform: none;
  }
}
.glitch::before {
  animation: glitch-before 5s linear infinite alternate both;
  content: "";
}
@keyframes glitch-after {
  0% {
    clip-path: polygon(0% 43.5463631602%, 100% 43.5463631602%, 100% 51.5002326251%, 0% 51.5002326251%);
    transform: translate(1.7800%, 0.0728%);
  }
  1.2% {
    clip-path: polygon(0% 37.6805524122%, 100% 37.6805524122%, 100% 41.538637684%, 0% 41.538637684%);
    transform: translate(0.3005%, 0.0667%);
  }
  2.4% {
    clip-path: polygon(0% 23.4766512933%, 100% 23.4766512933%, 100% 26.9159988406%, 0% 26.9159988406%);
    transform: translate(-1.4730%, 0.1582%);
  }
  3.6% {
    clip-path: polygon(0% 89.458410984%, 100% 89.458410984%, 100% 91.1176701539%, 0% 91.1176701539%);
    transform: translate(-0.3577%, 0.0245%);
  }
  4.8% {
    clip-path: polygon(0% 3.8812526288%, 100% 3.8812526288%, 100% 5.0806744519%, 0% 5.0806744519%);
    transform: translate(-0.1807%, 0.0777%);
  }
  6% {
    clip-path: polygon(0% 22.0096487059%, 100% 22.0096487059%, 100% 27.8294431733%, 0% 27.8294431733%);
    transform: translate(0.4429%, -0.0186%);
  }
  7.2% {
    clip-path: polygon(0% 33.2987744198%, 100% 33.2987744198%, 100% 35.5726617435%, 0% 35.5726617435%);
    transform: translate(1.7552%, 0.1491%);
  }
  8.4% {
    clip-path: polygon(0% 72.5473584866%, 100% 72.5473584866%, 100% 77.831369067%, 0% 77.831369067%);
    transform: translate(-0.7460%, 0.0965%);
  }
  9.6% {
    clip-path: polygon(0% 9.4381844402%, 100% 9.4381844402%, 100% 16.1027550106%, 0% 16.1027550106%);
    transform: translate(-2.1497%, 0.1000%);
  }
  10.8% {
    clip-path: polygon(0% 56.3318980748%, 100% 56.3318980748%, 100% 63.0231355496%, 0% 63.0231355496%);
    transform: translate(-0.5242%, 0.0535%);
  }
  12%, 100% {
    clip-path: none;
    transform: none;
  }
}
.glitch::after {
  animation: glitch-after 5s linear infinite alternate both;
  content: "";
}
.glitch .channel {
  mix-blend-mode: screen;
	-webkit-mask: url(../images/main_title.png) no-repeat center / cover;
					mask: url(../images/main_title.png) no-repeat center / cover;
}
.glitch .channel::before {
  bottom: 0;
  content: "";
  display: block;
  mix-blend-mode: multiply;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
@keyframes rgb-shift-r {
  0% {
    transform: translate(0.3865%, 0.0407%);
  }
  1.2% {
    transform: translate(0.4784%, 0.0600%);
  }
  2.4% {
    transform: translate(-0.5133%, 0.1058%);
  }
  3.6% {
    transform: translate(-0.0264%, -0.1307%);
  }
  4.8% {
    transform: translate(-0.1649%, 0.1189%);
  }
  6% {
    transform: translate(-0.2282%, -0.1368%);
  }
  7.2% {
    transform: translate(-0.0629%, -0.1339%);
  }
  8.4% {
    transform: translate(0.6220%, -0.0357%);
  }
  9.6% {
    transform: translate(-0.6087%, -0.0205%);
  }
  10.8% {
    transform: translate(-0.3709%, -0.0566%);
  }
  12%, 100% {
    transform: none;
  }
}
.glitch .r {
  animation: rgb-shift-r 5s steps(1, jump-end) infinite alternate both;
}
.glitch .r::before {
  background: #f00;
}
@keyframes rgb-shift-g {
  0% {
    transform: translate(0.2639%, 0.1127%);
  }
  1.2% {
    transform: translate(-0.4063%, 0.1280%);
  }
  2.4% {
    transform: translate(0.3699%, -0.0865%);
  }
  3.6% {
    transform: translate(-0.2091%, -0.1064%);
  }
  4.8% {
    transform: translate(0.5690%, 0.1229%);
  }
  6% {
    transform: translate(-0.2572%, 0.0692%);
  }
  7.2% {
    transform: translate(0.4858%, 0.1579%);
  }
  8.4% {
    transform: translate(-0.2604%, 0.1377%);
  }
  9.6% {
    transform: translate(-0.4307%, 0.0103%);
  }
  10.8% {
    transform: translate(-0.1605%, 0.0480%);
  }
  12%, 100% {
    transform: none;
  }
}
.glitch .g {
  animation: rgb-shift-g 5s steps(1, jump-end) infinite alternate both;
}
.glitch .g::before {
  background: #0f0;
}
@keyframes rgb-shift-b {
  0% {
    transform: translate(-0.3675%, -0.1656%);
  }
  1.2% {
    transform: translate(0.5018%, -0.0818%);
  }
  2.4% {
    transform: translate(0.4197%, -0.1226%);
  }
  3.6% {
    transform: translate(-0.3798%, -0.1191%);
  }
  4.8% {
    transform: translate(0.1395%, 0.0969%);
  }
  6% {
    transform: translate(0.5459%, 0.0273%);
  }
  7.2% {
    transform: translate(0.2673%, -0.0853%);
  }
  8.4% {
    transform: translate(-0.0844%, 0.0619%);
  }
  9.6% {
    transform: translate(0.6571%, -0.1439%);
  }
  10.8% {
    transform: translate(0.3966%, -0.0553%);
  }
  12%, 100% {
    transform: none;
  }
}
.glitch .b {
  animation: rgb-shift-b 5s steps(1, jump-end) infinite alternate both;
}
.glitch .b::before {
  background: #00f;
}

@media screen and (max-width: 820px) {
	.glitch {
		width: min(82.6vw, 480px);
		margin-left: min(2vw, 20px);
	}
}

/* ----------- MAIN VISUAL ----------- */

.mainVisual {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100vw;
	height: calc(90vh - min(calc(30px + 10vw), 92px));
	height: calc(100svh - min(calc(30px + 10vw), 92px));
	padding-bottom: 9vh;
	padding-bottom: 10svh;
}

.mainVisual .scroll {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translateX(-50%);
	font-family: "Lato", sans-serif;
	font-size: min(3vw, 14px);
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1.2;
	text-decoration: none;
	color: #fff;

	opacity: 0;
	animation: fadeIn 1s ease-out 1s forwards;
}

@media screen and (max-width: 820px) {

	.mainVisual p {
		font-size: 12.2vw;
		line-height: 1.3;
	}
	.mainVisual .scroll {
		bottom: min(4vw, 30px);
	}
}


.mainVisual.v2 p {
	font-size: 8.4vw;
	font-weight: 800;
}
@media screen and (max-width: 820px) {
	.mainVisual.v2 p {
		font-size: 10.2vw;
	}
}

/* ----------- SCHEDULE ----------- */


#schedule h2 {
	position: relative;
}
#schedule h2:has(+ .note) {
	margin-bottom: 0;
}
#schedule h2 .badge {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	width: min(22vw, 160px);
	aspect-ratio: 1/1;
	font-size: min(4.2vw, 28px);
	color: #fff;
	mix-blend-mode: overlay;
	z-index: -1;
}
#schedule h2 .badge::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../images/badge.svg);
	background-size: contain;
	background-position: center;
	mix-blend-mode: overlay;
	animation: rotate 16s linear infinite;
}
@keyframes rotate {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}
#schedule h2 + .note {
	font-size: min(3vw, 14px);
	color: #fff;
	margin-bottom: min(4vw, 40px);
}
#schedule h3 {
	font-size: min(4.2vw, 22px);
	color: #fff;
	margin-bottom: min(4vw, 32px);
}
#schedule h3 span {
	font-size: min(3.4vw, 16px);
}
.scheduleList + h3 {
	margin-top: min(8vw, 56px);
}
.scheduleList {
	font-family: "Lato", sans-serif;
	font-weight: 700;
	background-color: #FCFCFC;
	/* border: #181818 solid 1px; */
	border-radius: min(5vw, 30px);
	padding: min(4vw, 24px) min(6vw, 48px) min(5vw, 44px);
}
.scheduleList > li {
	display: flex;
	border-bottom: #181818 solid 1px;
	padding: min(3vw, 15px) 0;
}
.scheduleList > li.scheduleHead {
	text-align: center;
	font-size: min(2.8vw, 13px);
}
.scheduleList > li.scheduleHead .time {
	margin-right: min(3vw, 15px);
}

.scheduleList li .day {
	width: 120px;
}
.scheduleList li .time {
  width: 120px;
}
.scheduleList li .area {
	width: 120px;
}

.scheduleList li:not(.scheduleHead) .day {
	justify-content: center;
	gap: min(1vw, 8px);
	line-height: 1;
}
.scheduleList li:not(.scheduleHead) .day span:first-child {
	font-size: min(6vw, 28px);
	font-weight: 800;
}
.scheduleList li:not(.scheduleHead) .day span:last-child {
	font-size: min(3vw, 14px);
	padding-top: 0.1em;
}
.scheduleList li:not(.scheduleHead) .time {
	justify-content: center;
	font-size: min(3vw, 14px);
	padding-left: min(3vw, 15px);
}
.scheduleList li:not(.scheduleHead) .area {
	justify-content: center;
	font-family: "Noto Sans JP", sans-serif;
	font-size: min(3.8vw, 18px);
}
.scheduleList li:not(.scheduleHead) .venue {
	font-family: "Noto Sans JP", sans-serif;
	font-size: min(3.8vw, 18px);
	padding-left: min(4vw, 20px);
}
.scheduleList li:not(.scheduleHead) .info {
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	font-family: "Noto Sans JP", sans-serif;
	font-size: min(2.8vw, 11px);
	font-weight: 400;
	padding-left: min(4vw, 20px);
}
.scheduleList li:not(.scheduleHead) .info a {
	color: #181818;
  word-break: break-all;
}

.scheduleList li .verticalArea > div {
	display: flex;
}
.scheduleList li:not(.scheduleHead) p {
	border-right: #181818 solid 1px;
	display: flex;
	align-items: center;
	min-height: 2.6em;
}
.scheduleList li:not(.scheduleHead) p:last-child {
	border-right: none !important;
}

.scheduleList.black {
	background-color: #181818;
	color: #ffffff;
}
.scheduleList.black > li {
	border-bottom: #fff solid 1px;
}
.scheduleList.black li:not(.scheduleHead) p {
	border-right: #fff solid 1px;
}
.scheduleList.black li:not(.scheduleHead) .info a {
	color: #fff;
  word-break: break-all;
}


.scheduleList li.comingSoon {
	justify-content: center;
	font-family: "Lato", sans-serif;
	font-size: min(5.6vw, 28px);
	font-weight: 700;
	padding: min(12vw, 120px) 0;
}

/* ----------- time なし ----------- */

.scheduleList > li.scheduleHead .day {
	margin-right: min(3vw, 15px);
}
.scheduleList li .venue {
	width: calc((100% - 240px - min(3vw, 15px)) * 0.65);
}
.scheduleList li .info {
	width: calc((100% - 240px - min(3vw, 15px)) * 0.35);
}

@media screen and (min-width: 821px) {


	.scheduleList.v2 > li.scheduleHead .day {
		margin-right: 0;
	}
	.scheduleList.v2 > li.scheduleHead .time {
		padding-left: min(3vw, 15px);
	}
	.scheduleList.v2 li .venue {
		width: calc((100% - 360px - min(3vw, 15px))*0.65);
	}
	.scheduleList.v2 li .info {
		width: calc((100% - 360px - min(3vw, 15px))*0.35);
	}


	.scheduleList > li:nth-child(2) {
		padding-top: min(6vw, 32px);
	}
	.scheduleList li .verticalArea {
		border-right: #181818 solid 1px;
		padding-right: min(3vw, 15px);
	}
	.scheduleList li .verticalArea > div:last-child {
		margin-top: min(2vw, 10px);
		border-top: #181818 solid 1px;
		padding-top: min(2vw, 10px);
	}


	.scheduleList.black li .verticalArea {
		border-right: #fff solid 1px;
	}
	.scheduleList.black li .verticalArea > div:last-child {
		border-top: #fff solid 1px;
	}

	.scheduleList li.comingSoon {
		border-bottom: none;
	}
}
@media screen and (max-width: 820px) {

	#schedule h2:has(+ .note) {
		margin-bottom: min(8vw, 40px);
	}
	#schedule h2 .badge {
		top: 50%;
		transform: translateY(-50%);
	}

	.scheduleList {
		background-color: transparent;
		padding: 0;
		border: none;
		border-radius: 0;
	}
	.scheduleList > li {
		background-color: #FCFCFC;
		flex-wrap: wrap;
		border: #181818 solid 1px;
		border-radius: min(5vw, 30px);
		padding: min(4vw, 32px) min(4vw, 48px) min(6vw, 56px);
	}
	.scheduleList > li + li {
			margin-top: min(4vw, 32px);
	}
	.scheduleList > li.scheduleHead {
		display: none;
	}
	.scheduleList li .verticalArea {
		display: flex;
    padding-bottom: 2vw;
		border-bottom: #181818 solid 1px;
    margin-bottom: 2vw;
    width: 100%;
	}
	.scheduleList li .verticalArea > div {
		width: 100%;
		gap: 1em;
	}
	.scheduleList li:not(.scheduleHead) .day {
		justify-content: flex-start;
		width: 100%;
	}
	.scheduleList li:not(.scheduleHead) .day:has(+ .time) {
		width: fit-content;
	}
	.scheduleList li:not(.scheduleHead) .time {
		width: fit-content;
		padding-left: 0;
	}
	.scheduleList li:not(.scheduleHead) .area {
		width: 20%;
		border-right: #181818 solid 1px;
	}
	.scheduleList li:not(.scheduleHead) .venue {
		width: 80%;
	}
	.scheduleList li:not(.scheduleHead) .info {
		width: 100%;
    border-top: #181818 solid 1px;
    margin-top: 3vw;
    padding-top: 3vw;
		padding-left: 0;
	}

	.scheduleList li p:not(.area) {
		border-right: none !important;
	}

	.scheduleList.black {
		background-color: transparent;
	}
	.scheduleList.black > li {
		background-color: #181818;
		border-bottom: #181818 solid 1px;
	}
	.scheduleList.black li .verticalArea {
		border-bottom: #fff solid 1px;
	}
	.scheduleList.black li:not(.scheduleHead) .area {
		border-right: #fff solid 1px;
	}
	.scheduleList.black li:not(.scheduleHead) .info {
    border-top: #fff solid 1px;
	}

	.scheduleList li.comingSoon {
		padding: min(14vw, 140px) 0 min(20vw, 200px);
		border: none;
		background-color: transparent;
	}
}


/* ----------- TICKET ----------- */

.ticketFee {
	color: #fff;
	background-color: #E56CD1;
	border-radius: min(5vw, 30px);
	padding: min(5vw, 40px) min(6vw, 48px) min(7vw, 56px);
  margin-bottom: min(4vw, 32px);
}
.ticketFee > p {
	font-size: min(3.8vw, 18px);
	font-weight: 700;
}
.ticketFee > p span {
	font-size: min(5vw, 24px);
}
.ticketFee .listAsterisk {
	margin-top: min(2vw, 24px);
}
.ticketFee p a {
  color: #181818;
}

.ticketTrade {
	margin: min(4vw, 40px) 0;
	overflow: hidden;
}
.ticketTrade > dt {
	position: relative;
	width: min(90%, 480px);
	margin: auto;
	padding: min(4vw, 24px) min(6vw, 48px);
	border-radius: 100vw;
	background-color: #181818;
	color: #fff;
	text-align: center;
	transition: all 0.4s ease-in-out;
}
.ticketTrade.open dt {
	border-top-left-radius: min(5vw, 30px);
	border-top-right-radius: min(5vw, 30px);
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	width: 100%;
}
.ticketTrade > dt img {
	position: absolute;
	top: 50%;
	right: min(5vw, 56px);
	width: min(2vw, 10px);
	transform: rotate(90deg) translateX(-80%);
	transition: all 0.4s ease-in-out;
}
.ticketTrade.open > dt img {
	transform: rotate(-90deg) translateX(80%);
}
.ticketTrade dd {
	padding: min(5vw, 40px) min(6vw, 48px) min(7vw, 56px);
	border: #181818 solid 1px;
}
.ticketTrade dd .txt + .txt {
	margin-top: 1em;
}
.ticketTrade dd .innerDetail {
	border: #181818 solid 1px;
	padding: min(4vw, 32px) min(4vw, 40px);
	margin-top: min(4vw, 24px);
}
.ticketTrade dd .innerDetail li {
	border-left: 5px solid;
	padding-left: min(2vw, 10px);
}
.ticketTrade dd .innerDetail li + li {
	margin-top: min(3vw, 20px);
}
.ticketTrade dd .innerDetail li .ttl {
	font-weight: 600;
	margin-bottom: min(1vw, 5px);
}
.ticketTrade dd .innerDetail li a {
	color: #181818;
	word-break: break-all;
}

.ticketType {
	background-color: #fff;
	border-radius: min(5vw, 30px);
	padding-bottom: min(1vw,16px);
}
.ticketType + .ticketType {
	margin-top: min(4vw, 32px);
}
.ticketType dt {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: min(3.8vw, 18px);
	font-weight: 700;
	padding: min(5vw, 40px) min(6vw, 48px) min(4vw, 24px);
}
.ticketType dt img {
	width: min(2vw, 10px);
	transform: rotate(90deg) translateY(30%);
	transition: all 0.4s ease-in-out;
}
.ticketType dt.open img {
	transform: rotate(-90deg) translateY(-30%);
}
.ticketType dd {
	padding-top: min(4vw, 20px);
	border-top: #181818 solid 1px;
	padding-top: min(4vw, 20px);
	margin: 0 min(6vw, 48px) min(4vw, 24px);
}
.ticketType dd p {
	font-size: min(3.8vw, 18px);
	font-weight: 600;
}
.ticketType dd .tag {
	font-size: min(3vw, 14px);
	font-weight: 600;
	line-height: 1.4;
	background-color: #FFC2F5;
	display: inline-block;
	padding: 0.4em 1em;
	margin-bottom: 0.6em;
}
.ticketType dd p.note {
	font-size: min(3.4vw, 13px);
}
.ticketType dd > div {
	display: flex;
	justify-content: center;
	gap: min(2vw, 8px);
}
.ticketType dd > div + div {
	margin-top: min(4vw, 24px);
	border-top: #181818 solid 1px;
	padding-top: min(4vw, 24px);
}
.ticketType dd > div:nth-child(1) {
	align-items: flex-start;
	flex-direction: column;
	flex-grow: 1;
}
.ticketType dd > div:nth-child(2) {
	justify-content: space-between;
	align-items: center;
}
.ticketType dd .btnWrap a,
.ticketType dd .btnWrap span {
	display: flex;
	align-items: center;
	gap: 0.8em;
	width: fit-content;
	background-color: #181818;
	color: #fff;
	font-size: min(3.4vw, 14px);
	white-space: nowrap;
	text-decoration: none;
	border-radius: 100vw;
	padding: 1em 2em;
	margin: auto;
}
.ticketType dd .btnWrap span {
	background-color: #a1a1a1;
	color: #fff;
}
.ticketType dd .btnWrap a img,
.ticketType dd .btnWrap span img {
	width: 0.6em;
}

.ticketType + .note {
	text-align: center;
	margin-top: min(4vw, 40px);
	font-size: min(3.4vw, 16px);
}

.ticketType.black {
	color: #fff;
	background-color: #181818;
}
.ticketType.black dd .tag {
	color: #181818;
}
.ticketType.black dd,
.ticketType.black dd > div + div {
	border-top: #fff solid 1px;
}
.ticketType.black dd .btnWrap a {
	background-color: #fff;
	color: #181818;
}

@media screen and (max-width: 820px) {
	.ticketType dd > div + div {
		margin-left: 0;
		border-left: none;
		padding-left: 0;
		margin-top: min(4vw, 24px);
		border-top: #ccc solid 1px;
		padding-top: min(4vw, 24px);
	}
	.ticketType dd .btnWrap {
		align-items: center;
		margin-top: min(2vw, 24px);
	}
	.ticketType dd > div:nth-child(2) {
		flex-direction: column;
	}
}


/* ----------- CONTACT ----------- */

.contactBtnList {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: min(4vw, 32px) min(6vw, 48px);
}
.contactBtnList a {
	width: min(80vw, 460px);
	background-color: #fff;
	color: #181818;
	font-size: min(3.4vw, 14px);
	text-align: center;
	text-decoration: none;
	border-radius: 100vw;
	padding: 1.2em 2em;
	line-height: 1.6;
}

/* ----------- FOOTER ----------- */

footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: min(5vw, 40px) min(5vw, 40px) min(6vw, 56px);
}
footer .ftrLogo {
	width: min(28vw, 140px);
}
footer .copy {
	font-size: min(2.6vw, 10px);
	color: #fff;
}