@charset "utf-8";

/* font
================================================== */
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Sans:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

/* root
================================================== */
:root{
	/* lang */
	--lang-jp:'Noto Serif JP';
	--lang-en:'Jost';
	--lang-jp-sans:'Noto Sans JP';
	--lang-en-sans:'Noto Sans';
	
	/* text */
	--default-font-size:18px;
	--main-text-color:#1B1B1B;
	--text-line-height:1.6;
	--title-line-height:1.5;
	--icon-text-color:#FFF;
	--empty-text-color:#BBB;
	
	/* border */
	--default-border:#1B1B1B;
	--footer-border:#1B1B1B;
	--sub-border:rgba(0,0,0,0.15);
	
	/* background */
	--main-background:#FFF;
	--header-background:#FFF;
	--footer-background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,1));
	--sub-background:#808080;
	--hover-background:#1B1B1B;
	--partition-background:#1B1B1B;
	--table-background:#1B1B1B;
	--border-background:#1B1B1B;
	--icon-background:#1B1B1B;
	--empty-background:rgba(255,255,255,0.5);
	--introduction-background:linear-gradient(to bottom right,#E8E8E8,#F9F9F9);
	--news-background:rgba(255,255,255,0.5);
	
	/* button */
	--button-font:'Noto Sans JP';
	--button-text-color:#FFF;
	--button-border:#1B1B1B;
	--button-background:#1B1B1B;
	
}
@media screen and (max-width:768px){
	:root{
		--default-font-size:14px;
	}
}

/* reset
================================================== */
*:where(:not(iframe,img,svg):not(svg *)){all:unset;display:revert;}
*,*::before,*::after{box-sizing:border-box;}
body{position:relative;width:100%;font-size:var(--default-font-size);line-height:var(--text-line-height);color:var(--main-text-color);font-family:var(--lang-jp),serif;font-weight:600;font-optical-sizing:auto;font-feature-settings:'palt';background:var(--main-background);-webkit-text-size-adjust:100%;}
footer,header,main,section,picture{display:block;}
table{border-collapse:collapse;border-spacing:0;}
ol,ul{list-style:none;}
img{width:100%;height:auto;vertical-align:top;}
a{margin:0;padding:0;color:#0693E3;vertical-align:bottom;background:transparent;cursor:pointer;}
a:link,a:visited,a:active{text-decoration:none;}
a:hover{text-decoration:underline;}

/* IDOLISH7
================================================== */
/* body
-------------------------------------------------- */
#wrapper{
	position:relative;
}
#wrapper::before{
	position:fixed;
	top:0;
	left:0;
	display:block;
	width:100%;
	height:100vh;
	background-repeat:no-repeat;
	background-image:url(../svg/background.svg);
	background-position:center;
	background-size:56vw auto;
	z-index:-1;
	content:'';
}
@media screen and (max-width:768px){
	#wrapper::before{
		background-size:94vw auto;
	}
}

/* header
-------------------------------------------------- */
header{
	position:fixed;
	width:100%;
	margin:0 auto;
	background:var(--header-background);
	z-index:10000;
}
header h1{
	position:relative;
	width:fit-content;
	margin:0 auto;
	padding:min(2.4vw,24px) 0 min(2.2vw,22px);
	z-index:12000;
}
header h1 img{
	width:auto;
	height:min(5.4vw,54px);
}
@media screen and (max-width:768px){
	header h1{
		padding:15px 0;
	}
	header h1 img{
		height:35px;
	}
}

/* nav */
#navigation{
	width:100%;
}
#navigation ul{
	width:83.0949%;
	max-width:1480px;
	margin:0 auto;
}
#navigation ul{
	display:grid;
	grid-template-columns:repeat(5,1fr);
	column-gap:1px;
}
#navigation a{
	display:block;
	padding:min(1.6vw,16px) 0;
	font-size:min(2.6vw,26px);
	line-height:1;
	color:#000;
	font-family:var(--lang-en);
	font-weight:500;
	text-align:center;
	letter-spacing:0.05em;
	text-indent:0.05em;
	transition:0.3s;
}
#navigation a:hover{
	text-decoration:none;
}
#navigation a[href="/"]{
	pointer-events:none;
}
/*
#navigation a[href="goods.html"]{
	color:#BBB;
}
*/
@media screen and (min-width:769px){
	#navigation a[href="/"],
	#navigation a:hover{
		color:#FFF;
		background:var(--hover-background);
	}
}
@media screen and (max-width:999px){
	#navigation ul{
		width:100%;
	}
}
@media screen and (max-width:768px){
	#navigation{
		position:fixed;
		top:0;
		right:-100%;
		width:100%;
		height:100dvh;
		padding:96px 18px 0;
		background:rgba(255,255,255,0.88);
		z-index:11000;
		transition:0.3s;
	}
	#navigation ul{
		display:block;
		width:auto;
		margin:4px 14px;
	}
	#navigation li{
	}
	#navigation a{
		padding:22px 0 20px;
		font-size:28px;
	}
	#navigation.active{
		right:0;
		transform:translateZ(0);
	}
}

/* #menu */
#menu{
	position:absolute;
	display:none;
	justify-content:center;
	align-items:center;
	top:11px;
	right:10px;
	width:43px;
	height:43px;
	z-index:12000;
}
#menu .base{
	position:relative;
	width:27px;
	height:19px;
	transition:0.3s;
}
#menu.active .base{
	transform:rotate(135deg);
}
#menu span{
	position:absolute;
	left:0;
	display:block;
	width:27px;
	height:1px;
	background:var(--border-background);
	transition:0.3s;
}
#menu span:nth-of-type(1){
	top:50%;
	margin-top:-1px;
}
#menu span:nth-of-type(1)::before{
	position:absolute;
	top:-13px;
	left:13px;
	display:none;
	width:1px;
	height:27px;
	background:var(--border-background);
	opacity:0;
	transition:0.3s;
	content:'';
}
#menu span:nth-of-type(2){
	top:0;
}
#menu span:nth-of-type(3){
	bottom:0;
}
#menu.active span:nth-of-type(1)::before{
	display:block;
	opacity:1;
}
#menu.active span:nth-of-type(2),
#menu.active span:nth-of-type(3){
	display:none;
}
@media screen and (max-width:768px){
	#menu{
		display:flex;
	}
}

/*footer */
footer{
	position:relative;
	padding:min(3vw,30px) 0 min(2.7vw,27px);
	border-top:3px solid var(--footer-border);
	background:var(--footer-background);
}
footer a:hover{
	text-decoration:none;
}
footer .sns{
	display:grid;
	grid-template-columns:repeat(2,auto);
	column-gap:min(1.4vw,14px);
	width:fit-content;
	margin:0 auto;
}
footer .sns a{
	display:flex;
	justify-content:center;
	align-items:center;
	column-gap:min(0.8vw,8px);
	height:min(4.4vw,44px);
	font-size:min(1.6vw,16px);
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:400;
	border-radius:22px;
	background:var(--button-background);
	transition:0.3s;
}
footer .sns a.x{
	aspect-ratio:1;
}
footer .sns a.inquiry{
	padding:0 min(3.5vw,35px);
}
footer .sns a.x img{
	width:min(1.8vw,18px);
}
footer .sns a.inquiry img{
	width:min(1.9vw,19px);
}
footer .sns a.inquiry span{
	padding-bottom:1px;
}
footer .officail{
	width:fit-content;
	margin:min(2vw,20px) auto 0;
}
footer .officail a{
	display:flex;
	justify-content:center;
	align-items:center;
	width:fit-content;
	height:min(4.4vw,44px);
	padding:0 min(3.5vw,35px);
	column-gap:min(0.6vw,6px);
	font-size:min(1.6vw,16px);
	line-height:1;
	color:var(--main-text-color);
	font-family:var(--button-font);
	font-weight:600;
	border:1px solid var(--button-border);
	border-radius:22px;
	background:#FFF;
}
footer .officail img{
	width:min(1.2vw,12px);
}
footer .copyright{
	margin-top:min(2.6vw,26px);
	font-size:min(1.4vw,14px);
	line-height:1.5;
	text-align:center;
}
@media screen and (min-width:769px){
	footer a:hover{
		opacity:0.7;
	}
}
@media screen and (max-width:768px){
	footer{
		padding:32px 18px 12px;
	}
	footer .sns{
		column-gap:10px;
	}
	footer .sns a{
		column-gap:6px;
		height:36px;
		font-size:12px;
	}
	footer .sns a.inquiry{
		padding:0 28px;
	}
	footer .sns a.x img{
		width:12px;
	}
	footer .sns a.inquiry img{
		width:15px;
	}
	footer .sns a.inquiry span{
		padding-bottom:3px;
	}
	footer .officail{
		margin-top:20px;
	}
	footer .officail a{
		height:36px;
		padding:0 22px;
		column-gap:5px;
		font-size:12px;
	}
	footer .officail img{
		width:12px;
		height:auto;
	}
	footer .copyright{
		margin-top:31px;
		font-size:12px;
	}
}

/* common */
main{
	position:relative;
	padding:min(15.8vw,158px) min(4.5vw,45px) 0;
}
.contents{
	max-width:960px;
	margin:0 auto;
	padding-top:min(9.3vw,93px);
}
.title{
	margin-bottom:min(6.6vw,66px);
	padding:0 0 min(1.3vw,13px);
	font-size:min(4.6vw,46px);
	line-height:1;
	font-family:var(--lang-en);
	font-weight:500;
	text-align:center;
	letter-spacing:0.05em;
	text-indent:0.05em;
	border-bottom:3px solid var(--default-border);
}
.heading{
	font-size:min(3vw,30px);
	line-height:var(--title-line-height);
	text-align:center;
	letter-spacing:0.08em;
	text-indent:0.08em;
}
.subheading{
	font-size:22px;
	line-height:var(--title-line-height);
}
.table{
	display:grid;
	align-items:flex-start;
	grid-template-columns:min(22.7vw,227px) 1fr;
	gap:min(2.2vw,22px) min(2.5vw,25px);
	margin-top:min(3.8vw,38px);
	font-size:min(1.8vw,18px);
}
.table dt{
	padding:min(0.5vw,5px) 0 min(0.7vw,7px);
	color:#FFF;
	text-align:center;
	border-radius:min(0.4vw,4px);
	background:var(--table-background);
}
.table dt span{
	font-size:min(1.3vw,13px);
}
.table dd{
	padding-top:min(0.5vw,5px);
}
.list{
	padding-left:1em;
	font-size:min(1.6vw,16px);
	text-indent:-1em;
}
.list li::before{
	display:inline-block;
	width:1em;
	padding-left:0;
	text-align:center;
	text-indent:0;
	content:'\30FB';
}
.list li+li{
	margin-top:min(1.2vw,12px);
}
.list ul{
	margin-top:min(0.6vw,6px);
	padding-left:1em;
}
.list ul li::before{
	content:'\3007';
}
.list ul li+li{
	margin-top:min(0.5vw,5px);
}
.map{
	width:100%;
	margin:min(3.8vw,38px) auto 0;
}
.map iframe{
	width:100%;
	height:auto;
	aspect-ratio:479/395;
}
.image{
	margin-top:min(3.8vw,38px);
}
.image:empty{
	position:relative;
	aspect-ratio:16/9;
	border:1px solid var(--sub-border);
	background:var(--empty-background);
}
.image:empty::before{
	position:absolute;
	top:50%;
	left:50%;
	font-size:min(3.2vw,32px);
	color:var(--empty-text-color);
	font-family:var(--lang-en);
	font-weight:500;
	transform:translate(-50%,-50%);
	content:'Coming Soon';
}
.button{
	width:fit-content;
	margin:0 auto;
}
.button a{
	display:flex;
	justify-content:center;
	align-items:center;
	column-gap:min(1vw,10px);
	width:min(38vw,380px);
	height:min(6.4vw,64px);
	font-size:min(2vw,20px);
	line-height:1;
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:500;
	border-radius:32px;
	background:var(--button-background);
	transition:0.3s;
}
.button a:hover{
	text-decoration:none;
}
.button a span{
	padding-bottom:3px;
}
.button a img{
	width:auto;
	height:min(1.9vw,19px);
}
@media screen and (min-width:769px){
	.button a:hover{
		opacity:0.7;
	}
}
@media screen and (max-width:768px){
	main{
		padding:65px 18px 0;
	}
	.contents{
		padding-top:56px;
	}
	.title{
		margin-bottom:49px;
		padding-bottom:6px;
		font-size:26px;
	}
	.heading{
		font-size:20px;
	}
	.subheading{
		font-size:16px;
	}
	.table{
		display:block;
		margin-top:25px;
		font-size:14px;
	}
	.table dt{
		width:100%;
		padding:7px 0 9px;
		border-radius:3px;
	}
	.table dt span{
		font-size:11px;
	}
	.table dd+dt{
		margin-top:24px;
	}
	.table dd{
		padding-top:13px;
	}
	.list{
		font-size:14px;
	}
	.list li+li{
		margin-top:12px;
	}
	.list ul{
		margin-top:6px;
	}
	.list ul li+li{
		margin-top:7px;
	}
	.map{
		margin-top:25px;
	}
/*
	.map iframe{
		aspect-ratio:1;
	}
*/
	.image{
		margin-top:25px;
	}
	.image:empty{
		aspect-ratio:1;
	}
	.image:empty::before{
		font-size:24px;
	}
	.button a{
		column-gap:8px;
		width:100%;	
		height:54px;
		font-size:18px;
	}
	.button a span{
		padding-bottom:3px;
	}
	.button a img{
		height:17px;
	}
}

/* #index
-------------------------------------------------- */
#index #navigation a[href="/"]{
	color:var(--main-text-color);
	background:transparent;
}
#index main{
	padding:min(15.8vw,158px) 0 min(12vw,120px);
}
#index .contents{
	max-width:1060px;
	padding:0 min(5vw,50px);
}
#index #visual{
	width:100%;
	cursor:pointer;
}
#index #introduction{
	padding:min(5.3vw,53px) min(2vw,20px) min(2vw,20px);
	text-align:center;
	background:var(--introduction-background);
}
#index #introduction .text{
	font-size:min(2.2vw,22px);
	line-height:2;
	text-shadow:2px 2px 1px rgba(255,255,255,0.8);
}
#index #introduction .text span{
	display:inline-block;
}
#index #introduction .text .pc{
	display:inline;
}
#index #introduction .box{
	margin-top:min(5.1vw,51px);
	padding:min(2.1vw,21px) min(3vw,30px) min(2.9vw,29px);
	line-height:1.2;
	background:rgba(0,0,0,0.08);
}
#index #introduction .period{
	font-size:min(4.2vw,42px);
}
#index #introduction .period span{
	display:inline-block;
	padding:0 0.15em;
	font-size:min(2.4vw,24px);
}
#index #introduction .venue{
	margin-top:min(1.4vw,14px);
	font-size:min(2.6vw,26px);
}
#index #news{
	padding-top:min(11.3vw,113px);
}
#index #news .content{
	padding:12px 5px;
	border-bottom:3px solid var(--default-border);
	background:var(--news-background);
}
#index #news .title{
	margin:0;
}
#index #news .archive{
	max-height:480px;
	padding:0 15px;
	overflow-y:auto;
}
#index #news .archive li:not(:last-of-type){
	border-bottom:1px solid var(--sub-border);
}
#index #news .archive dl{
	display:grid;
	grid-template-columns:auto 1fr;
	column-gap:min(2.5vw,25px);
	padding:min(3.7vw,37px) 0;
}
#index #news .archive dt span{
	display:block;
	width:min(13.6vw,136px);
	padding:min(0.8vw,8px) 0 min(0.7vw,7px);
	font-size:min(1.8vw,18px);
	line-height:1;
	color:#FFF;
	font-family:var(--lang-en);
	font-weight:500;
	text-align:center;
	border-radius:min(0.4vw,4px);
	background:var(--table-background);
}
#index #news .archive dd{
	font-size:min(1.8vw,18px);
}
#index #sns{
	margin-top:min(9.1vw,91px);
}
#sns .button{
	margin-top:min(3.8vw,38px);
}
#sns .button a{
	font-size:min(2.4vw,24px);
	font-family:var(--lang-en);
}
#sns .button a:hover{
	text-decoration:none;
}
#sns .button span{
	padding:1px 0 0;
}
#sns .hashtag{
	display:grid;
	grid-template-columns:repeat(3,auto);
	width:fit-content;
	margin:min(1.9vw,19px) auto 0;
	font-size:min(1.8vw,18px);
}
#sns .hashtag dt::after{
	display:inline-block;
	padding:0 0.25em;
	content:'\FF1A';
}
#sns .hashtag dd{
	font-size:min(1.8vw,18px);
}
#sns .hashtag dd+dd{
	margin-left:1em;
}
#banner{
	margin:min(5vw,50px) auto 0;
}
#banner .banner{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:0px min(2vw,20px);
}
#banner .banner a{
	display:block;
	border:1px solid var(--default-border);
}
@media screen and (min-width:769px){
	#sns .button a:hover{
		opacity:0.7;
	}
}
@media screen and (max-width:768px){
	#index main{
		padding:64px 0 85px;
	}
	#index .contents{
		padding:0 18px;
	}
	#index #introduction{
		padding:37px 18px 18px;
	}
	#index #introduction .text{
		font-size:min(4.2667vw,16px);
	}
	#index #introduction .text .pc{
		display:inline-block;
	}
	#index #introduction .text .mobile{
		display:none;
	}
	#index #introduction .box{
		margin-top:27px;
		padding:14px 18px 17px;
	}
	#index #introduction .period{
		font-size:min(6.1333vw,23px);
	}
	#index #introduction .period span{
		padding:0 0.06em;
		font-size:min(3.466vw,13px);
	}
	#index #introduction .venue{
		margin-top:5px;
		font-size:min(4.5333vw,17px);
	}
	#index #news{
		padding-top:51px;
	}
	#index #news .content{
		padding:8px 3px;
	}
	#index #news .archive{
		max-height:520px;
		padding:0 7px;
	}
	#index #news .archive dl{
		grid-template-columns:1fr;
		padding:25px 0 22px;
	}
	#index #news .archive dt span{
		width:106px;
		padding:3px 0;
		font-size:14px;
		border-radius:3px;
	}
	#index #news .archive dd{
		margin-top:12px;
		font-size:14px;
	}
	#index #sns{
		margin-top:49px;
	}
	#sns .button{
		width:100%;
		margin-top:25px;
	}
	#sns .button a{
		font-size:20px;
	}
	#sns .hashtag{
		grid-template-columns:repeat(2,auto);
		margin-top:15px;
		font-size:14px;
	}
	#sns .hashtag dt{
		grid-column:1/3;
		text-align:center;
	}
	#sns .hashtag dt::after{
		content:none;
	}
	#sns .hashtag dd{
		font-size:14px;
	}
	#banner{
		margin-top:51px;
	}
	#banner .banner{
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
		gap:20px 20px;
	}
	#banner .banner li,
	#banner .banner a{
		width:100%;
	}
}

/* #about
-------------------------------------------------- */
#about main{
	padding-bottom:min(20vw,200px);
}
#about #date .notes{
	display:inline-block;
	padding-left:1em;
	text-indent:-1em;
}
#about #venue{
	margin-top:min(13.6vw,136px);
}
#about #venue .list{
	font-size:min(1.8vw,18px);
}
#about #venue .list li+li{
	margin-top:min(1.1vw,11px);
}
#about #map{
	margin-top:min(13.6vw,136px);
}
#about #floor{
	margin-top:min(13.4vw,134px);
}
#about #floor .image{
	border:1px solid var(--sub-border);
}
#about #inquiry{
	margin-top:min(14.1vw,141px);
}
#about .button{
	margin-top:min(3.8vw,38px);
}
@media screen and (max-width:768px){
	#about main{
		padding-bottom:120px;
	}
	#about #venue{
		margin-top:75px;
	}
	#about #venue .list{
		font-size:14px;
	}
	#about #venue .list li+li{
		margin-top:10px;
	}
	#about #map{
		margin-top:75px;
	}
	#about #floor{
		margin-top:72px;
	}
	#about #inquiry{
		margin-top:79px;
	}
	#about .button{
		width:100%;
		margin-top:25px;
	}
}

/* #ticket
-------------------------------------------------- */
#ticket main{
	padding-bottom:min(19.6vw,196px);
}
#ticket .image:empty{
	aspect-ratio:2/1;
}
#ticket .list.notice li::before{
	content:'\203B';
}
#ticket .list.notice li+li{
	margin-top:min(0.5vw,5px);
}

/* #price */
#ticket #price p.notes{
	margin-top:min(3.3vw,33px);
	font-size:min(1.6vw,16px);
	text-align:center;
}
#ticket #price p.notes span{
	display:inline-block;
}
#ticket #price .table{
	margin-top:min(2.5vw,25px);
}
#ticket #price ul.notes{
	padding-left:1em;
	text-indent:-1em;
}
#ticket #price ul.notes li::before{
	display:inline-block;
	width:1em;
	padding:0;
	text-indent:0;
	content:'\203B';
}
#ticket #price .subheading{
	margin-top:min(3.5vw,35px);
	font-size:min(2vw,20px);
}
#ticket #price .list.notice{
	margin-top:min(1.5vw,15px);
}

/* #release */
#ticket #release{
	margin-top:min(7vw,70px);
}
#ticket #release .detailed{
	display:none;
	padding-top:min(6.6vw,66px);
}
#ticket #release .announcement{
	margin-top:min(3vw,30px);
	font-size:min(2.2vw,22px);
	text-align:center;
}
#ticket #release .announcement span{
	display:inline-block;
}
#ticket #release .subheading{
	margin-top:min(7.2vw,72px);
	text-align:center;
}
#ticket #release .table+.subheading{
	margin-top:min(7.8vw,78px);
}
#ticket #release .table{
	margin-top:min(4vw,40px);
}
#ticket #release .table .subheading{
	margin-top:min(4.6vw,46px);
	font-size:min(2vw,20px);
	text-align:left;
}
#ticket #release .table .list{
	margin-top:min(1.5vw,15px);
}
#ticket #release .table li+li{
	margin-top:min(0.5vw,5px);
}
#ticket #release .table .image{
	margin-top:min(1.9vw,19px);
	border:1px solid var(--sub-border);
}
#ticket #release .table .item{
	margin-top:min(1.6vw,16px);
	font-size:min(1.4vw,14px);
	line-height:var(--title-line-height);
}
#ticket #release .table .item+.item{
	margin-top:min(1.3vw,13px);
}
#ticket #release .table .item p{
	padding-left:1em;
	text-indent:-1em;
}
#ticket #release .table .item p::before{
	display:inline-block;
	width:1em;
	padding-left:0;
	text-align:center;
	text-indent:0;
	content:'\30FB';
}
#ticket #release .table .size{
	display:grid;
	grid-template-columns:repeat(2,auto);
	column-gap:1em;
	width:fit-content;
	margin-top:min(0.5vw,5px);
	padding-left:1em;
}
#ticket #release .table .size dt{
	width:auto;
	padding:0;
	color:var(--main-text-color);
	text-align:left;
	border-radius:unset;
	background:transparent;
}
#ticket #release .table .size dd{
	padding:0;
}
#ticket #release .button .open{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	width:min(44vw,440px);
	height:min(6.3vw,63px);
	margin-top:min(3.8vw,38px);
	font-size:min(2vw,20px);
	line-height:1;
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:500;
	border-radius:32px;
	background:var(--button-background);
	cursor:pointer;
	transition:0.3s;
}
#ticket #release .button .open::before,
#ticket #release .button .open::after{
	position:absolute;
	display:block;
	background:var(--main-background);
	content:'';
}
#ticket #release .button .open::before{
	top:min(3.1vw,31px);
	right:min(2.3vw,23px);
	width:min(1.7vw,17px);
	height:min(0.1vw,1px);
}
#ticket #release .button .open::after{
	top:min(2.3vw,23px);
	right:min(3.1vw,31px);
	width:min(0.1vw,1px);
	height:min(1.7vw,17px);
	opacity:1;
	transition:0.3s;
}
#ticket #release .button .open span{
	padding-bottom:1px;
}
#ticket #release .button .open.active::after{
	opacity:0;
}
#ticket #release .button .close{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	column-gap:min(0.8vw,8px);
	height:min(4.4vw,44px);
	margin-top:min(5.5vw,55px);
	padding:0 min(5vw,50px);
	font-size:min(1.6vw,16px);
	line-height:1;
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:400;
	border-radius:22px;
	background:var(--button-background);
	cursor:pointer;
	transition:0.3s;
}
#ticket #release .button .close span{
	padding-bottom:1px;
}
#ticket #release .button .close img{
	width:min(1.4vw,14px);
}

/* #benefit */
#ticket #benefit{
	margin-top:min(14.1vw,141px);
}
#ticket #benefit .text{
	margin-top:min(3.2vw,32px);
	font-size:min(1.8vw,18px);
	font-weight:700;
	text-align:center;
}
#ticket #benefit .text span{
	display:inline-block;
}
#ticket #benefit .notes{
	margin-top:min(2vw,20px);
	font-size:min(1.6vw,16px);
	text-align:center;
}
#ticket #benefit .notes span{
	display:inline-block;
}
#ticket #benefit .image{
	margin-top:min(2.5vw,25px);
	border:1px solid var(--sub-border);
}
#ticket #benefit .size{
	display:grid;
	grid-template-columns:auto 1fr;
	column-gap:1em;
	margin-top:min(1.6vw,16px);
	font-size:min(1.4vw,14px);
	line-height:var(--title-line-height);
}
#ticket #benefit .subheading{
	margin-top:min(4.6vw,46px);
	font-size:min(2vw,20px);
}
#ticket #benefit .calendar{
	margin-top:min(2vw,20px);
}
#ticket #benefit .star{
	margin-top:min(0.7vw,7px);
	font-size:min(1.4vw,14px);
	color:#BB282B;
	font-family:var(--lang-jp-sans);
	font-weight:700;
}
#ticket #benefit .list{
	margin-top:min(3.7vw,37px);
}

/* #notes */
#ticket #notes{
	margin-top:min(13.7vw,137px);
}
#ticket #notes .list{
	margin-top:min(3.3vw,33px);
}
@media screen and (max-width:768px){
	#ticket main{
		padding-bottom:116px;
	}
	#ticket .list.notice li+li{
		margin-top:4px;
	}
	#ticket #price p.notes{
		margin-top:21px;
		font-size:12px;
	}
	#ticket #price .table{
		margin-top:17px;
	}
	#ticket #price .subheading{
		margin-top:23px;
		font-size:15px;
	}
	#ticket #price .list.notice{
		margin-top:11px;
	}
	#ticket #release{
		margin-top:41px;
	}
	#ticket #release .detailed{
		padding-top:39px;
	}
	#ticket #release .announcement{
		margin-top:20px;
		font-size:16px;
	}
	#ticket #release .subheading{
		margin-top:41px;
	}
	#ticket #release .table+.subheading{
		margin-top:48px;
	}
	#ticket #release .table{
		margin-top:26px;
	}
	#ticket #release .table .subheading{
		margin-top:28px;
		font-size:15px;
	}
	#ticket #release .table .list.items{
		margin-top:11px;
	}
	#ticket #release .table .list.items li+li{
		margin-top:4px;
	}
	#ticket #release .table .image{
		margin-top:16px;
	}
	#ticket #release .table .item{
		margin-top:17px;
		font-size:12px;
	}
	#ticket #release .table .item+.item{
		margin-top:13px;
	}
	#ticket #release .table .size{
		grid-template-columns:100%;
		margin-top:5px;
	}
	#ticket #release .table .size dd{
		margin-top:1px;
	}
	#ticket #release .button:has(.open){
		width:100%;
	}
	#ticket #release .button .open{
		width:100%;
		height:53px;
		margin-top:25px;
		font-size:18px;
	}
	#ticket #release .button .open::before{
		top:26px;
		right:19px;
		width:15px;
		height:1px;
	}
	#ticket #release .button .open::after{
		top:19px;
		right:26px;
		width:1px;
		height:15px;
	}
	#ticket #release .button .close{
		column-gap:6px;
		height:36px;
		margin-top:41px;
		padding:0 45px;
		font-size:12px;
	}
	#ticket #release .button .close img{
		width:12px;
	}
	#ticket #benefit{
		margin-top:79px;
	}
	#ticket #benefit .text{
		margin-top:20px;
		font-size:14px;
	}
	#ticket #benefit .notes{
		margin-top:12px;
		font-size:12px;
	}
	#ticket #benefit .image{
		margin-top:17px;
	}
	#ticket #benefit .size{
		margin-top:12px;
		font-size:12px;
	}
	#ticket #benefit .subheading{
		margin-top:28px;
		font-size:15px;
	}
	#ticket #benefit .calendar{
		margin-top:17px;
	}
	#ticket #benefit .star{
		margin-top:11px;
		font-size:13px;
	}
	#ticket #benefit .list{
		margin-top:26px;
	}
	#ticket #notes{
		margin-top:75px;
	}
	#ticket #notes .list{
		margin-top:20px;
	}
}
@media screen and (max-width:359px){
	#ticket #release .button .open{
		padding-right:18px;
	}
}

/* #goods
-------------------------------------------------- */
#goods main{
	padding-bottom:min(20vw,200px);
}
#goods .text{
	margin-top:min(3vw,30px);
	font-size:min(2.2vw,22px);
	font-weight:700;
	text-align:center;
}
#goods .notes{
	font-size:min(1.6vw,16px);
	text-align:center;
}
#goods .notes span{
	display:inline-block;
}
#goods .image{
	border:1px solid var(--sub-border);
}
#goods .size{
	display:grid;
	grid-template-columns:auto 1fr;
	column-gap:1em;
	margin-top:min(1.6vw,16px);
	font-size:min(1.4vw,14px);
	line-height:var(--title-line-height);
}
#goods .list.notice{
	margin-top:min(3.7vw,37px);
}
#goods .list.notice li::before{
	content:'\203B';
}
#goods .list.notice li+li{
	margin-top:min(0.5vw,5px);
}

/* mailorder */
#goods #mailorder{
	margin-top:min(16.7vw,167px);
}
#goods #mailorder .heading span{
	display:inline-block;
}
#goods #mailorder .announcement{
	font-size:min(2.2vw,22px);
	text-align:center;
}
#goods #mailorder .announcement span{
	display:inline-block;
}
#goods #mailorder .button .open{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	width:min(38vw,380px);
	height:min(6.3vw,63px);
	margin-top:min(3.9vw,39px);
	font-size:min(2vw,20px);
	line-height:1;
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:500;
	border-radius:32px;
	background:var(--button-background);
	cursor:pointer;
	transition:0.3s;
}
#goods #mailorder .button .open::before,
#goods #mailorder .button .open::after{
	position:absolute;
	display:block;
	background:var(--main-background);
	content:'';
}
#goods #mailorder .button .open::before{
	top:min(3.1vw,31px);
	right:min(2.3vw,23px);
	width:min(1.7vw,17px);
	height:min(0.1vw,1px);
}
#goods #mailorder .button .open::after{
	top:min(2.3vw,23px);
	right:min(3.1vw,31px);
	width:min(0.1vw,1px);
	height:min(1.7vw,17px);
	opacity:1;
	transition:0.3s;
}
#goods #mailorder .button .open span{
	padding-bottom:1px;
}
#goods #mailorder .button .open.active::after{
	opacity:0;
}
#goods #mailorder .button .close{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	column-gap:min(0.8vw,8px);
	height:min(4.4vw,44px);
	margin-top:min(6vw,60px);
	padding:0 min(5vw,50px);
	font-size:min(1.6vw,16px);
	line-height:1;
	color:var(--button-text-color);
	font-family:var(--button-font);
	font-weight:400;
	border-radius:22px;
	background:var(--button-background);
	cursor:pointer;
	transition:0.3s;
}
#goods #mailorder .button .close span{
	padding-bottom:1px;
}
#goods #mailorder .button .close img{
	width:min(1.4vw,14px);
}
#goods #mailorder .detailed{
	display:none;
	padding-top:min(4.6vw,46px);
}
#goods #mailorder .table a[href=""]{
	color:#1B1B1B;
	pointer-events:none;
}
#goods #mailorder .list{
	margin-top:min(4vw,40px);
}

/* #mail-order */
#goods #mail-order .table{
	margin-top:38px;
}

/* #pre-purchase */
#goods #pre-purchase{
	margin-top:min(13.6vw,136px);
}
#goods #mail-order+#pre-purchase{
	margin-top:min(14.1vw,141px);
}
#goods #pre-purchase .notes{
	margin-top:min(1.9vw,19px);
}
#goods #pre-purchase .image{
	margin-top:min(2.5vw,25px);
}

/* #special */
#goods #special{
	margin-top:min(14.1vw,141px);
}
#goods #mailorder+#special{
	margin-top:min(14.1vw,141px);
}
#goods #special .image{
	margin-top:min(2.4vw,24px);
}

/* #limits */
#goods #limits{
	margin-top:min(13.6vw,136px);
}
#goods #limits .notes{
	margin-top:min(3.4vw,34px);
}

/* #lineup */
#goods #lineup{
	margin-top:min(13.8vw,138px);
}
#goods #lineup .notice{
	margin-top:min(3.2vw,32px);
	font-size:min(1.6vw,16px);
	text-align:center;
}
#goods #lineup .notice span{
	display:inline-block;
}
#goods #lineup .subheading{
	margin-top:min(3.5vw,35px);
	font-size:min(2vw,20px);
	text-align:center;
}
#goods #lineup .subheading::before{
	content:'\FF1C';
}
#goods #lineup .subheading::after{
	content:'\FF1E';
}
#goods #lineup .text{
	margin-top:min(1.5vw,15px);
	font-size:min(1.6vw,16px);
	font-weight:600;
}
#goods #lineup .note{
	margin-top:min(0.5vw,5px);
	font-size:min(1.4vw,14px);
	text-align:center;
}
#goods #lineup .note span{
	display:inline-block;
}
#goods #lineup .layout{
	display:flex;
	flex-wrap:wrap;
	column-gap:min(2vw,20px);
	margin-top:min(4.2vw,42px);
	line-height:var(--title-line-height);
	font-family:var(--lang-jp-sans);
	font-weight:400;
}
#goods #lineup .layout+.layout{
	margin-top:min(5.5vw,55px);
}
#goods #lineup .order01{order:1;}
#goods #lineup .order02{order:4;}
#goods #lineup .order03{order:7;}
#goods #lineup .order04{order:2;}
#goods #lineup .order05{order:5;}
#goods #lineup .order06{order:8;}
#goods #lineup .order07{order:3;}
#goods #lineup .order08{order:6;}
#goods #lineup .order09{order:9;}
#goods #lineup .thumbnails{
	width:calc((100% - 40px) / 3);
	padding-bottom:min(1.7vw,17px);
}
#goods #lineup .slide{
	padding:min(2vw,20px);
	border:1px solid var(--sub-border);
	background:var(--main-background);
	aspect-ratio:1;
}
#goods #lineup .details{
	width:calc((100% - 40px) / 3);
	padding:min(1.3vw,13px) 0 min(3.2vw,32px);
}
#goods #lineup .details:has(.icon){
	padding-top:min(1.8vw,18px);
}
#goods #lineup .icon{
	width:fit-content;
	margin-bottom:min(0.7vw,7px);
	padding:min(0.4vw,4px) min(1.2vw,12px) min(0.5vw,5px);
	font-size:min(1.2vw,12px);
	color:#FFF;
	border-radius:min(0.4vw,4px);
	background:var(--table-background);
}
#goods #lineup .name{
	font-size:min(1.6vw,16px);
	font-weight:700;
}
#goods #lineup .name.lines{
	display:flex;
	align-items:center;
	height:min(4.8vw,48px);
}
#goods #lineup .name span{
	font-family:var(--lang-en-sans);
}
#goods #lineup .price{
	display:grid;
	grid-template-columns:repeat(2,auto);
	width:fit-content;
	margin-top:min(2.2vw,22px);
	font-size:min(1.6vw,16px);
}
#goods #lineup .price dt::after{
	display:inline-block;
	width:1em;
	text-align:center;
	content:'\FF1A';
}
#goods #lineup .price dd span{
	display:inline-block;
	padding:0 0.25em;
	font-size:min(1.3vw,13px);
}
#goods #lineup .postscript{
	margin-top:min(1.2vw,12px);
	font-size:min(1.6vw,16px);
}
#goods #lineup .notes{
	margin-top:min(0.5vw,5px);
	padding-left:1em;
	font-size:min(1.3vw,13px);
	text-align:left;
	text-indent:-1em;
}
#goods #lineup .information{
	/*display:grid;
	align-content:center;*/
	width:calc((100% - 40px) / 3);
	padding:min(1.6vw,16px) min(2vw,20px) min(1.7vw,17px);
	font-size:min(1.3vw,13px);
	border:1px solid var(--sub-border);
	background:#F9F9F9;
}
#goods #lineup .information dl+dl{
	margin-top:min(1.3vw,13px);
}
#goods #lineup .information dt{
	margin-bottom:min(0.3vw,3px);
	font-weight:700;
}
#goods #lineup .thumbnails:empty,
#goods #lineup .details:empty,
#goods #lineup .information:empty{
	padding:0;
	border:none;
	background:transparent;
}

/* #products */
#goods #products{
	margin-top:min(14.1vw,141px);
}
#goods #products .list.notice{
	margin-top:min(3.3vw,33px);
}

/* #canvas */
#goods #canvas{
	margin-top:min(13.5vw,135px);
}
#goods #canvas .table{
	margin-top:min(4.5vw,45px);
}
#goods #canvas .list.notice{
	margin-top:min(3.3vw,33px);
}

/* #merchandising */
#goods #merchandising{
	margin-top:min(13.6vw,136px);
}
#goods #merchandising .list.notice{
	margin-top:min(3.3vw,33px);
}
#goods #merchandising .text{
	margin-top:min(3.6vw,36px);
	padding-left:1em;
	font-size:min(1.6vw,16px);
	font-weight:600;
	text-align:left;
	text-indent:-1em;
}

/* #venue */
#goods #venue{
	margin-top:min(13.8vw,138px);
}
#goods #venue .notes{
	margin-top:min(4.9vw,49px);
	font-size:var(--default-font-size);
	text-align:center;
}

/* #soldout */
#soldout{
	margin:min(7.5vw,75px) 0 min(13.6vw,136px);
}
#soldout .notes{
	margin-top:min(1.5vw,15px);
}
#soldout .notes+.notes{
	margin-top:min(0.5vw,5px);
}
#soldout .notes span{
	display:inline-block;
}

@media screen and (min-width:769px){
	#goods #mailorder .button .open:hover,
	#goods #mailorder .button .close:hover{
		opacity:0.7;
	}
}
@media screen and (max-width:1000px){
	#goods #lineup .item{
		width:calc((100% - 4vw) / 3);
	}
}
@media screen and (max-width:768px){
	#goods main{
		padding-bottom:120px;
	}
	#goods .text{
		margin-top:20px;
		font-size:16px;
	}
	#goods .notes{
		font-size:14px;
	}
	#goods .image:empty{
		aspect-ratio:2/1;
	}
	#goods .size{
		margin-top:12px;
		font-size:12px;
	}
	#goods .list.notice{
		margin-top:27px;
	}
	#goods .list.notice li+li{
		margin-top:4px;
	}
	#goods #mailorder{
		margin-top:112px;
	}
	#goods #mailorder .announcement{
		font-size:16px;
	}
	#goods #mailorder .button:has(.open){
		width:100%;
	}
	#goods #mailorder .button .open{
		width:100%;
		height:53px;
		margin-top:25px;
		font-size:18px;
	}
	#goods #mailorder .button .open::before{
		top:26px;
		right:19px;
		width:15px;
		height:1px;
	}
	#goods #mailorder .button .open::after{
		top:19px;
		right:26px;
		width:1px;
		height:15px;
	}
	#goods #mailorder .button .close{
		column-gap:6px;
		height:36px;
		margin-top:32px;
		padding:0 45px;
		font-size:12px;
	}
	#goods #mailorder .button .close img{
		width:12px;
	}
	#goods #mailorder .detailed{
		padding-top:29px;
	}
	#goods #mailorder .size dt{
		width:fit-content;
	}
	#goods #mailorder .list{
		margin-top:27px;
	}
	#goods #mail-order .table{
		margin-top:25px;
	}
	#goods #pre-purchase{
		margin-top:75px;
	}
	#goods #mail-order+#pre-purchase{
		margin-top:75px;
	}
	#goods #pre-purchase .notes{
		margin-top:11px;
	}
	#goods #pre-purchase .image{
		margin-top:17px;
	}
	#goods #special{
		margin-top:76px;
	}
	#goods #mailorder+#special{
		margin-top:79px;
	}
	#goods #special .image{
		margin-top:15px;
	}
	#goods #limits{
		margin-top:76px;
	}
	#goods #limits .notes{
		margin-top:21px;
	}
	#goods #lineup{
		margin-top:76px;
	}
	#goods #lineup .notice{
		margin-top:19px;
		font-size:14px;
	}
	#goods #lineup .subheading{
		margin-top:22px;
		font-size:15px;
	}
	#goods #lineup .text{
		margin-top:12px;
		font-size:14px;
	}
	#goods #lineup .note{
		margin-top:8px;
		font-size:13px;
	}
	#goods #lineup .layout{
		display:block;
		column-gap:0;
		margin-top:25px;
	}
	#goods #lineup .layout+.layout{
		margin-top:55px;
	}
	#goods #lineup .layout.column{
		flex-direction:unset;
	}
	#goods #lineup .order01,
	#goods #lineup .order02,
	#goods #lineup .order03,
	#goods #lineup .order04,
	#goods #lineup .order05,
	#goods #lineup .order06,
	#goods #lineup .order07,
	#goods #lineup .order08,
	#goods #lineup .order09{order:unset;}
	#goods #lineup .thumbnails{
		width:100%;
		padding-bottom:17px;
	}
	#goods #lineup .information+.thumbnails{
		margin-top:55px;
	}
	#goods #lineup .slide{
		padding:20px;
	}
	#goods #lineup .details{
		width:100%;
		padding:13px 0 32px;
	}
	#goods #lineup .details:has(.icon){
		padding-top:18px;
	}
	#goods #lineup .icon{
		margin-bottom:7px;
		padding:4px 12px 5px;
		font-size:12px;
		border-radius:4px;
	}
	#goods #lineup .name{
		font-size:16px;
	}
	#goods #lineup .name.lines{
		display:block;
		height:auto;
	}
	#goods #lineup .price{
		margin-top:22px;
		font-size:16px;
	}
	#goods #lineup .price dd span{
		font-size:13px;
	}
	#goods #lineup .postscript{
		margin-top:12px;
		font-size:16px;
	}
	#goods #lineup .notes{
		margin-top:5px;
		font-size:13px;
	}	
	#goods #lineup .information{
		width:100%;
		padding:16px 20px 17px;
		font-size:14px;
	}
	#goods #lineup .information dl+dl{
		margin-top:8px;
	}
	#goods #lineup .thumbnails:empty,
	#goods #lineup .details:empty,
	#goods #lineup .information:empty{
		display:none;;
	}
	#goods #products{
		margin-top:79px;
	}
	#goods #products .list.notice{
		margin-top:20px;
	}
	#goods #canvas{
		margin-top:76px;
	}
	#goods #canvas .table{
		margin-top:30px;
	}
	#goods #canvas .list.notice{
		margin-top:19px;
	}
	#goods #merchandising{
		margin-top:76px;
	}
	#goods #merchandising .list.notice{
		margin-top:20px;
	}
	#goods #merchandising .text{
		margin-top:21px;
		font-size:14px;
	}
#goods #venue{
	margin-top:76px;
}
	#goods #venue .notes{
		margin-top:26px;
	}	
	#soldout{
		margin:55px 0 75px;
	}
	#soldout .button{
		width:100%;
	}
	#soldout .notes{
		margin-top:10px;
	}
	#soldout .notes+.notes{
		margin-top:4px;
	}
}
@media screen and (max-width:539px){
	#goods .text br{
		display:none;
	}
}

/* #goodslist
-------------------------------------------------- */
#goodslist main{
	padding-bottom:min(19.6vw,196px);
}

/* #information */
#goodslist #information .timestamp{
	display:grid;
	grid-template-columns:repeat(2,auto);
	width:fit-content;
	margin:min(3.3vw,33px) auto 0;
	font-size:min(1.6vw,16px);
	line-height:var(--title-line-height);
	font-family:var(--lang-jp-sans);
	font-weight:500;
}
#goodslist #information .timestamp dt::after{
	display:inline-block;
	width:1em;
	text-align:center;
	content:'\FF1A';
}
#goodslist #information .list{
	width:fit-content;
	margin:min(1.7vw,17px) auto 0;
	font-size:min(1.4vw,14px);
	color:#BB282B;
}
#goodslist #information .list li::before{
	content:'\203B';
}
#goodslist #information .list li+li{
	margin-top:min(0.4vw,4px);
}
#goodslist #information .goodslist{
	margin-top:min(4.1vw,41px);
}
#goodslist #information .goodslist .button{
	position:relative;
	width:100%;
	padding:min(1.7vw,17px) 0 min(1.8vw,18px);
	font-size:min(2vw,20px);
	line-height:var(--title-line-height);
	color:var(--button-text-color);
	font-family:var(--lang-jp-sans);
	text-align:center;
	border-radius:min(0.6vw,6px);
	background:var(--button-background);
	cursor:pointer;
}
#goodslist #information .goodslist .button:not(:first-of-type){
	margin-top:1px;
}
#goodslist #information .goodslist .button br{
	display:none;
}
#goodslist #information .goodslist .button span{
	display:inline-block;
}
#goodslist #information .goodslist .button .cross{
	position:absolute;
	top:min(2.4vw,24px);
	right:min(2.4vw,24px);
	display:block;
	width:min(1.7vw,17px);
	height:min(1.7vw,17px);
}
#goodslist #information .goodslist .button .cross::before,
#goodslist #information .goodslist .button .cross::after{
	position:absolute;
	display:block;
	background:var(--button-text-color);
	transition:0.3s;
	content:'';
}
#goodslist #information .goodslist .button .cross::before{
	top:min(0.8vw,8px);
	left:0;
	width:100%;
	height:min(0.1vw,1px);
}
#goodslist #information .goodslist .button .cross::after{
	top:0;
	left:min(0.8vw,8px);
	width:min(0.1vw,1px);
	height:100%;
}
#goodslist #information .goodslist .button.active .cross::after{
	opacity:0;
}
#goodslist #information .goodslist dd{
	display:none;
}
#goodslist #information .goodstable{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:min(2.5vw,25px) min(3vw,30px);
	padding:min(3.5vw,35px) 0 min(5.4vw,54px);
}
#goodslist #information .item{
	display:grid;
	grid-template-columns:min(18vw,180px) 1fr;
	align-items:center;
	column-gap:min(2vw,20px);
}
#goodslist #information .soldout{
	position:relative;
}
#goodslist #information .soldout::before,
#goodslist #information .soldout::after{
	position:absolute;
	top:0;
	left:0;
}
#goodslist #information .soldout::before{
	width:100%;
	height:100%;
	border:2px solid #BB282B;
	background:rgba(255,255,255,0.55);
	content:''
}
#goodslist #information .soldout::after{
	padding:min(0.6vw,6px) min(1.8vw,18px);
	font-size:min(1.5vw,15px);
	line-height:var(--title-line-height);
	color:var(--icon-text-color);
	font-family:var(--lang-jp-sans);
	font-weight:700;
	background:#BB282B;
	content:'本日分販売終了';
}
#goodslist #information .thumbnail{
	width:min(18vw,180px);
	border:1px solid var(--sub-border);
	aspect-ratio:1;
}
#goodslist #information .details{
	font-family:var(--lang-jp-sans);
}
#goodslist #information .icon{
	width:fit-content;
	margin-bottom:min(0.7vw,7px);
	padding:min(0.5vw,5px) min(1.2vw,12px) min(0.6vw,6px) min(1.3vw,13px);
	font-size:min(1.1vw,11px);
	line-height:var(--title-line-height);
	color:var(--icon-text-color);
	font-weight:500;
	border-radius:min(0.4vw,4px);
	background:var(--icon-background);
}
#goodslist #information .name{
	font-size:min(1.6vw,16px);
	font-weight:700;
}
#goodslist #information .name span{
	display:block;
	margin-right:4px;
}
#goodslist #information .name span:lang(en){
	display:inline;
	margin:0;
	font-family:var(--lang-en-sans);
}
#goodslist #information .name br{
	display:none;
}
#goodslist #information .price{
	margin-top:min(1.5vw,15px);
	font-size:min(1.6vw,16px);
	font-weight:700;
}
#goodslist #information .price span{
	font-size:min(1.3vw,13px);
}
#goodslist #information .notes{
	font-size:min(1.2vw,12px);
	font-weight:400;
}

/* #precaution */
#goodslist #precaution{
	margin-top:min(14.1vw,141px);
}
#goodslist #precaution .list{
	margin-top:min(3.3vw,33px);
}
#goodslist #precaution .list li::before{
	content:'\203B';
}
#goodslist #precaution .text{
	margin-top:min(3.5vw,35px);
	padding-left:1em;
	font-size:min(1.6vw,16px);
	text-indent:-1em;
}
@media screen and (max-width:768px){
	#goodslist main{
		padding-bottom:117px;
	}
	#goodslist #information .timestamp{
		margin-top:21px;
		font-size:14px;
	}
	#goodslist #information .list{
		margin-top:12px;
		font-size:12px;
	}
	#goodslist #information .list li+li{
		margin-top:4px;
	}
	#goodslist #information .goodslist{
		margin-top:26px;
	}
	#goodslist #information .goodslist .button{
		padding:13px 40px 14px;
		font-size:15px;
		line-height:var(--text-line-height);
		border-radius:5px;
	}
	#goodslist #information .goodslist .button .cross{
		top:50%;
		right:12px;
		width:13px;
		height:13px;
		margin-top:-7px;
	}
	#goodslist #information .goodslist .button .cross::before{
		top:6px;
		height:1px;
	}
	#goodslist #information .goodslist .button .cross::after{
		left:6px;
		width:1px;
	}
	#goodslist #information .goodstable{
		grid-template-columns:100%;
		row-gap:25px;
		padding:25px 0 34px;
	}
	#goodslist #information .item{
		grid-template-columns:150px 1fr;
		column-gap:15px;
	}
	#goodslist #information .soldout::after{
		padding:5px 10px 6px;
		font-size:12px;
	}
	#goodslist #information .thumbnail{
		width:150px;
	}
	#goodslist #information .icon{
		margin-bottom:5px;
		padding:3px 8px 4px;
		font-size:10px;
		border-radius:3px;
	}
	#goodslist #information .name{
		font-size:14px;
	}
	#goodslist #information .name span{
		display:inline-block;
	}
	#goodslist #information .name br{
		display:inline;
	}
	#goodslist #information .price{
		margin-top:9px;
		font-size:14px;
	}
	#goodslist #information .price span{
		font-size:10px;
	}
	#goodslist #information .notes{
		font-size:11px;
	}
	#goodslist #precaution{
		margin-top:45px;
	}
	#goodslist #precaution .list{
		margin-top:20px;
	}
	#goodslist #precaution .text{
		margin-top:21px;
		font-size:14px;
	}
}
@media screen and (max-width:619px){
	#goodslist #information .goodslist .button br{
		display:inline;
	}
}
@media screen and (max-width:599px){
	#goodslist #information .item{
		grid-template-columns:100px 1fr;
		/*align-items:start;*/
		column-gap:10px;
	}
	#goodslist #information .thumbnail{
		width:100px;
	}
	#goodslist #information .name span{
		display:block;
		margin:0;
	}
	#goodslist #information .name br{
		display:none;
	}
}

/* #management
-------------------------------------------------- */
#management header{
	position:static;
}
#management header h1{
	padding:15px 0;
}
#management header h1 img{
	height:35px;
}
#management main{
	padding:24px 18px 96px;
}
#management .contents{
	padding-top:0;
}
#management .title{
	margin-bottom:49px;
	padding-bottom:6px;
	font-size:26px;
}
#management .heading{
	font-size:20px;
	font-family:var(--lang-jp-sans);
}
#management .goodslist{
	margin-top:13px;
}
#management .goodslist dt{
	padding:7px 15px 8px;
	font-size:15px;
	color:var(--button-text-color);
	font-family:var(--lang-jp-sans);
	text-align:center;
	border-radius:5px;
	background:var(--button-background);
	cursor:auto;
}
#management .goodstable{
	display:grid;
	grid-template-columns:100%;
	row-gap:18px;
	padding:18px 0 25px;
}
#management .item{
	display:grid;
	grid-template-columns:88px 1fr;
	column-gap:12px;
	align-items:center;
}
#management .thumbnail{
	position:relative;
	width:88px;
	border:1px solid var(--sub-border);
	aspect-ratio:1;
	overflow:hidden;
}
#management .item:has(input[type=checkbox]:checked) .thumbnail::before{
	position:absolute;
	top:-1px;
	left:-1px;
	display:block;
	width:88px;
	height:88px;
	background:rgba(0,0,0,0.35);
	content:'';
}
#management .item:has(input[type=checkbox]:checked) .thumbnail::after{
	position:absolute;
	top:9px;
	left:-32px;
	display:block;
	width:100px;
	padding-top:2px;
	font-size:10px;
	line-height:var(--title-line-height);
	color:var(--icon-text-color);
	font-family:var(--lang-en-sans);
	text-align:center;
	background:#BB282B;
	transform:rotate(-45deg);
	content:'Sold out';
}
#management .details{
	font-family:var(--lang-jp-sans);
}
#management .name{
	font-size:13px;
	font-weight:700;
}
#management .name span:lang(en){
	font-family:var(--lang-en-sans);
}
#management .switch{
	width:fit-content;
	margin:4px 0 0 auto;
}
#management .switch input[type=checkbox]{
	display:none;
}
#management .switch input[type=checkbox]+label{
	position:relative;
	display:block;
	width:48px;
	height:26px;
	border-radius:30px;
	background:#0693E3;
	cursor:pointer;
}
#management .switch input[type=checkbox]+label::before{
	position:absolute;
	top:2px;
	right:2px;
	left:unset;
	display:block;
	width:22px;
	height:22px;
	border-radius:50%;
	background:#FFF;
	content:'';
}
#management .switch input[type=checkbox]:checked+label{
	background:#C1C1C1;
}
#management .switch input[type=checkbox]:checked+label::before{
	right:unset;
	left:2px;
}
#management .buttons{
	position:fixed;
	bottom:0;
	left:0;
	width:100%;
	background:rgba(0,0,0,0.8);
	z-index:1000;
}
#management .buttons ul{
	display:grid;
	grid-template-columns:2.8fr 1fr;
	column-gap:9px;
	direction:rtl;
	padding:15px 18px;
}
#management .buttons button,
#management .buttons input[type=reset]{
	width:100%;
	padding:7px 0 6px;
	font-size:14px;
	line-height:var(--title-line-height);
	color:var(--button-text-color);
	font-family:var(--lang-en);
	text-align:center;
	border-radius:16px;
}
#management .buttons button{
	background:#0693E3;
}
#management .buttons input[type=reset]{
	background:#C1C1C1;
}

/* #notice
-------------------------------------------------- */
#notice main{
	padding-bottom:min(19.6vw,196px);
}
#notice .subheading{
	margin-top:min(3.2vw,32px);
	font-size:min(2vw,20px);
	line-height:var(--title-line-height);
}
#notice .text{
	margin-top:min(2.5vw,25px);
	font-size:min(1.6vw,16px);
}
#notice .text span{
	font-weight:900;
}
#notice .list{
	margin-top:min(4.6vw,46px);
}
@media screen and (max-width:768px){
	#notice main{
		padding-bottom:117px;
	}
	#notice .subheading{
		margin-top:19px;
		font-size:18px;
	}
	#notice .text{
		margin-top:11px;
		font-size:14px;
	}
	#notice .list{
		margin-top:26px;
	}
}

/* #modal
-------------------------------------------------- */
#modal{
	position:fixed;
	top:0;
	left:0;
	display:none;
	justify-content:center;
	align-items:center;
	width:100%;
	height:100dvh;
	background:rgba(0,0,0,0.8);
	overflow:hidden;
	z-index:200000;
}
#modal.active{
	display:grid;
}
#modal .modal_wrapper{
	width:100%;
}
#modal .modal_inner{
	position:relative;
	width:100%;
	padding:0 50px;
}
#modal .close{
	position:absolute;
	top:20px;
	right:20px;
	width:38px;
	height:38px;
	cursor:pointer;
}
#modal .close::before,
#modal .close::after{
	position:absolute;
	top:18px;
	left:-6px;
	display:block;
	width:50px;
	height:2px;
	background:#FFF;
	content:'';
}
#modal .close::before{
	transform:rotate(45deg);
}
#modal .close::after{
	transform:rotate(-45deg);
}
@media screen and (max-width:768px){
	#modal{
		overscroll-behavior:contain;
		overflow-y:scroll;
		scrollbar-width:none;
		touch-action:none;
	}
	#modal .modal_inner{
		padding:0 25px;
	}
	#modal .close{
		right:10px;
		width:30px;
		height:30px;
	}
	#modal .close::before,
	#modal .close::after{
		top:14px;
		left:-4px;
		width:38px;
	}
}

/* slick
-------------------------------------------------- */
.slick-slider{
	position:relative;
	display:block;
	box-sizing:border-box;
	-webkit-user-select:none;
	user-select:none;
	-webkit-touch-callout:none;
	-khtml-user-select:none;
	-ms-touch-action:pan-y;
	touch-action:pan-y;
	-webkit-tap-highlight-color:transparent;
}
.slick-list{
	position:relative;
	display:block;
	margin:0;
	padding:0;
	overflow:hidden;
}
.slick-list:focus{
	outline:none;
}
.slick-list.dragging{
	cursor:pointer;
	cursor:hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list{
	transform:translate3d(0,0,0);
}
.slick-track{
	position:relative;
	top:0;
	left:0;
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.slick-track:before,
.slick-track:after{
	display:table;
	content:'';
}
.slick-track:after{
	clear:both;
}
.slick-loading .slick-track{
	visibility:hidden;
}
.slick-slide{
	display:none;
	float:left;
	height:100%;
	min-height:1px;
}
.slick-slide img{
	display:block;
}
.slick-slide.slick-loading img{
	display:none;
}
.slick-slide.dragging img{
	pointer-events:none;
}
.slick-initialized .slick-slide{
	display:block;
}
.slick-loading .slick-slide{
	visibility:hidden;
}
.slick-vertical .slick-slide{
	display:block;
	height:auto;
	border:1px solid transparent;
}
.slick-arrow.slick-hidden{
	display:none;
}
.slick-prev,
.slick-next{
	position:absolute;
	top:50%;
	display:block;
	width:min(2.4vw,24px);
	height:min(2.4vw,24px);
	padding:0;
	font-size:0;
	line-height:0;
	color:transparent;
	border:none;
	border-radius:50%;
	background:#FFF;
	box-shadow:0 0 10px 0 rgba(0,0,0,0.15);
	transform:translate(0,-50%);
	outline:none;
	cursor:pointer;
	z-index:1000;
}
.slick-prev{
	left:min(0.8vw,8px);
}
.slick-next{
	right:min(0.8vw,8px);
}
.slick-prev:before,
.slick-next:before{
	position:absolute;
	top:min(0.9vw,9px);
	display:block;
	width:min(0.6vw,6px);
	height:min(0.6vw,6px);
	transform-origin:center;
	transform:rotate(-45deg);
	content:'';
}
.slick-prev:before{
	left:min(1vw,10px);
	border-top:1px solid #000;
	border-left:1px solid #000;
}
.slick-next:before{
	right:min(1vw,10px);
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}
.slick-dots{
	position:absolute;
	bottom:max(-1.8vw,-18px);
	left:0;
	display:block;
	width:100%;
	margin:0;
	padding:min(0.5vw,5px) 0 0;
	font-size:0;
	line-height:0;
	text-align:center;
	list-style:none;
}
.slick-dots li{
	position:relative;
	display:inline-block;
	width:min(1.2vw,12px);
	height:min(1.2vw,12px);
	margin:0 min(0.1vw,1px);
	padding:0;
	cursor:pointer;
}
.slick-dots li button{
	display:block;
	width:min(1.2vw,12px);
	height:min(1.2vw,12px);
	padding:0;
	font-size:0;
	line-height:0;
	color:transparent;
	border:0;
	background:transparent;
	outline:none;
	cursor:pointer;
}
.slick-dots li button:before{
	position:absolute;
	top:50%;
	left:50%;
	width:min(0.6vw,6px);
	height:min(0.6vw,6px);
	border-radius:50%;
	background:#000;
	transform:translate(-50%,-50%);
	opacity:0.3;
	content:'';
}
.slick-dots li.slick-active button:before{
	opacity:1;
}
@media screen and (max-width:768px){
	.slick-prev,
	.slick-next{
		width:24px;
		height:24px;
	}
	.slick-prev{
		left:8px;
	}
	.slick-next{
		right:8px;
	}
	.slick-prev:before,
	.slick-next:before{
		top:9px;
		width:6px;
		height:6px;
	}
	.slick-prev:before{
		left:10px;
	}
	.slick-next:before{
		right:10px;
	}
	.slick-dots{
		bottom:-18px;
		padding-top:5px;
	}
	.slick-dots li{
		width:12px;
		height:12px;
		margin:0 1px;
	}
	.slick-dots li button{
		width:12px;
		height:12px;
	}
	.slick-dots li button:before{
		width:6px;
		height:6px;
	}
}