@charset "utf-8";

/* font
================================================== */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;400&family=Noto+Sans+JP:wght@100..900&family=Noto+Sans:wght@100..900&display=swap');

/* root
================================================== */
:root{
	/* default */
	--default-font-size:15px;
	--default-line-height:1.6;
	--default-font-color:#FFF;
	--default-font-weight:400;
	--default-font-bold:700;
	--default-border:#FFF;
	--default-background:#000;
	
	/* link */
	--text-link-color:#FFF;
	--text-link-decoration:none;
	--text-hover-decoration:underline;
	--image-link-opacity:0.6;
	--image-link-trasition:0.5s;
	
	/* logo */
	--logo-color:#FFF;
	
	/* background */
	--header-background:#000;
	--footer-background:#000;

	/* color */
	--notes-color:62%;
	/*
	--notice-color:#FF2E00;
	--breadcrumb-color:#727171;
	--breadcrumb-active:#FBFAF5;
	*/

	/* button */
	--button-font-size:15px;
	--button-line-height:1.25;
	--button-font-color:#000;
	/* --button-font-color:#FFF; */
	--button-font-weight:500;
	--button-background:#FFF;
	/* --button-background:linear-gradient(#2A1D2E,#C30426); */

	/* border */
	--partition-line:36%;
	--table-line:24%;

	/* list */
	--list-font-size:15px;
	--list-line-height:1.6;
	--list-mark-color:#FFF;
	--list-mark-wrapper:1.25;
	--list-mark-disc:15%;
	--list-mark-square:32%;
	--list-mark-round:8%;
	--list-mark-triangle:0.65;

	/* slick */
	--slick-button:#FFF;
	--slick-arrow:#000;
	--slick-button-hover:#FFF;
	--slick-arrow-hover:#000;
	--slick-dots:#FFF;
}
@media screen and (max-width:800px){
	:root{
		--default-font-size:14px;
		--button-font-size:14px;
		--list-font-size:14px;
	}
}


/* reset
================================================== */
*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert;}
*,*::before,*::after{box-sizing:border-box;}
html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;}
a,button{cursor:revert;}
ol,ul,menu,summary{list-style:none;}
ol{counter-reset:revert;}
img{max-inline-size:100%;max-block-size:100%;}
table{border-collapse:collapse;}
input,textarea{-webkit-user-select:auto;}
textarea{white-space:revert;}
meter{-webkit-appearance:revert;appearance:revert;}
:where(pre){all:revert;box-sizing:border-box;}
::placeholder{color:unset;}
:where([hidden]){display:none;}
:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto;}
:where([draggable="true"]){-webkit-user-drag:element;}
:where(dialog:modal){all:revert;box-sizing:border-box;}
::-webkit-details-marker{display:none;}

/* addition
-------------------------------------------------- */
body{position:relative;width:100%;font-size:var(--default-font-size);line-height:var(--default-line-height);color:var(--default-font-color);font-family:'Noto Sans','Noto Sans JP',sans-serif;font-weight:var(--default-font-weight);background:var(--default-background);}
footer,header,main,picture{display:block;}
img{vertical-align:top;}
a{color:var(--text-link-color);vertical-align:bottom;background:transparent;}


/* BE:FIRST
================================================== */
html,body{
	height:100%;
}

/* header, footer
================================================== */
@scope(header,footer){
	.logo{
		display:block;
		width:fit-content;
		height:24px;
		margin-inline:auto;
		transition:opacity var(--image-link-trasition);
	}
	.logo svg{
		width:auto;
		height:100%;
		fill:var(--logo-color);
	}
}
@media screen and (max-width:800px){
	@scope(header,footer){
		.logo{
			height:19px;
		}
	}
}
@media (any-hover:hover){
	a.logo:hover{
		opacity:var(--image-link-opacity);
	}
}

/* header
-------------------------------------------------- */
@scope(header){
	:scope{
		position:relative;
		padding:75px min(4vw,30px) 32px;
		text-align:center;
		background:color-mix(in srgb,var(--header-background) 100%,transparent);
	}
	.logo{
		height:27px;
	}
}
@scope(#form){
	header{
		padding-block:22px 35px;
	}
	#header{
		padding-block-start:33px;
		font-feature-settings:'palt';
	}
	#header .products{
		font-size:16px;
		line-height:1.35;
	}
	#header .products br{
		display:none;
	}
	#header .campaign{
		margin-block-start:14px;
		font-size:32px;
		line-height:1.15;
		font-weight:300;
	}
}
@media screen and (max-width:800px){
	@scope(header){
		:scope{
			padding-block-end:30px;
		}
		.logo{
			height:21px;
		}
	}
	@scope(#form){
		header{
			padding-block:18px 28px;
		}
		#header{
			padding-block-start:25px;
		}
		#header .products{
			font-size:min(3.4667vw,13px);
		}
		#header .products br{
			display:block;
		}
		#header .campaign{
			margin-block-start:13px;
			font-size:min(6.1334vw,23px);
		}
	}
}

/* footer
-------------------------------------------------- */
@scope(footer){
	:scope{
		position:sticky;
		top:100vh;
		padding:0 min(4vw,30px) 20px;
		background:color-mix(in srgb,var(--footer-background) 100%,transparent);
	}
	.official{
		display:block;
		width:fit-content;
		margin:20px auto;
		padding:12px 55px;
		font:var(--default-font-weight) 13px/1 'noto sans';
		color:var(--default-font-color);
		border-radius:20px;
		border:1px solid color-mix(in srgb,var(--default-font-color) 70%,transparent);
		background:color-mix(in srgb,var(--footer-background) 100%,transparent);
		filter:invert(0%);
		transition:all var(--image-link-trasition);
	}
	.official[href^="http"]::after{
		display:inline-block;
		width:10px;
		margin-inline-start:0.8ex;
		aspect-ratio:1;
		background:color-mix(in srgb,var(--default-font-color) 100%,transparent);
		mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0iIOODrOOCpOODpOODvCAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMCAxMCI+IDxkZWZzPiA8c3R5bGU+IC5jbHMtMSB7IGZpbGw6ICNmZmY7IH0gPC9zdHlsZT4gPC9kZWZzPiA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMCw3SDNWMGg3djdaTTQsNmg1VjFoLTV2NVoiLz4gPHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjcgMTAgMCAxMCAwIDMgMiAzIDIgNCAxIDQgMSA5IDYgOSA2IDggNyA4IDcgMTAiLz48L3N2Zz4=');
		mask-position:center;
		mask-repeat:no-repeat;
		mask-size:10px;
		content:'';
	}
	.sns{
		display:grid;
		grid-auto-flow:column;
		place-items:center;
		column-gap:22px;
		width:fit-content;
		margin-inline:auto;
		line-height:1;
	}
	.sns a{
		display:block;
	}
	.sns a svg{
		width:auto;
		fill:var(--default-font-color);
		transition:transform var(--image-link-trasition);
	}
	.sns :where(a,a svg){
		height:22px;
	}
	.sns :where(a[href*="youtube"],a[href*="youtube"] svg){
		height:16px;
	}
}
@media screen and (max-width:800px){
	@scope(footer){
		:scope{
			padding-block-end:18px;
		}
		.official{
			margin-block:18px;
			padding:12px 50px 11px;
			font-size:12px;
		}
		.sns{
			column-gap:18px;
		}
		.sns :where(a,a svg){
			height:20px;
		}
		.sns :where(a[href*="youtube"],a[href*="youtube"] svg){
			height:15px;
		}
	}
}
@media (any-hover:hover){
	.official:hover{
		border-color:color-mix(in srgb,var(--default-font-color) 100%,transparent);
		filter:invert(100%);
	}
	.sns a:hover svg{
		transform:scale(1.25);
	}
}


/* common
================================================== */
.contents{
	max-width:960px;
	margin-inline:auto;
	padding-inline:min(4vw,30px);
	text-align:center;
}
.heading{
	margin-block-end:63px;
	font-size:38px;
	line-height:1.25;
	font-weight:200;
	text-align:center;
}
@media screen and (max-width:800px){
	.contents{
		max-width:700px;
	}
	.heading{
		margin-block-end:45px;
		font-size:32px;
		font-weight:300;
	}
}

/* .list
-------------------------------------------------- */
.list{
	display:grid;
	row-gap:6px;
}
.list li{
	position:relative;
	padding-inline-start:calc(1em * var(--list-mark-wrapper));
	font-size:var(--list-font-size);
	line-height:var(--list-line-height);
}
.list li::before{
	position:absolute;
	top:calc(((1em * var(--list-line-height)) - (1em * var(--list-mark-wrapper))) / 2);
	left:0;
	display:block;
	width:calc(1em * var(--list-mark-wrapper));
	height:calc(1em * var(--list-mark-wrapper));
	background:var(--list-mark-color);
	content:'';
}
.disc li::before{
	clip-path:circle(var(--list-mark-disc));
}
.square li::before{
	clip-path:inset(var(--list-mark-square));
}
.round li::before{
	clip-path:inset(var(--list-mark-square) round var(--list-mark-round));
}
.triangle li::before{
	top:calc(((1em * var(--list-line-height)) - (1em * var(--list-mark-triangle))) / 2);
	left:calc(((1em * var(--list-line-height)) - (1em * cos(30deg))) / 2);
	width:auto;
	height:calc(1em * (var(--list-mark-triangle)));
	aspect-ratio:cos(30deg);
	clip-path:polygon(0 0,100% 50%,0 100%);
}
.reference li{
	position:relative;
	padding-inline-start:calc(1em * var(--list-mark-wrapper));
	font-size:var(--list-font-size);
	line-height:var(--list-line-height);
}
.reference li::before{
	top:0;
	left:0;
	display:block;
	width:calc(1em * var(--list-mark-wrapper));
	height:var(--list-line-height);
	text-align:center;
	background:none;
	content:'\203B';
}

/* .button
-------------------------------------------------- */
.button{
	display:block;
	width:100%;
	font-size:var(--button-font-size);
	line-height:var(--button-line-height);
	color:var(--button-font-color);
	font-weight:var(--button-font-weight);
	border-radius:30px;
	background:var(--button-background);
	transition:opacity var(--image-link-trasition);
	cursor:pointer;
}
.button.nolink{
	pointer-events:none;
	filter:invert(62%);
}
.shop,
.digital{
	display:flex;
	justify-content:center;
	align-items:center;
	padding-block:12px;
	font-size:14px;
}
.shop::before,
.digital::before{
	display:inline-block;
	height:20px;
	margin-inline-end:0.8ex;
	vertical-align:top;
	background:color-mix(in srgb,var(--button-font-color) 100%,transparent);
	mask-position:center;
	mask-repeat:no-repeat;
	content:'';
}
.shop::before{
	aspect-ratio:1;
	mask-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0iIOODrOOCpOODpOODvCAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+IDxwYXRoIGQ9Ik0xMCwxMS41NzljLS44NDIsMC0xLjU3OS0uNzM3LTEuNTc5LTEuNTc5cy43MzctMS41NzksMS41NzktMS41NzksMS41NzkuNzM3LDEuNTc5LDEuNTc5LS43MzcsMS41NzktMS41NzksMS41NzlaTTEwLDkuNDc0Yy0uMzE2LDAtLjUyNi4yMTEtLjUyNi41MjZzLjIxMS41MjYuNTI2LjUyNi41MjYtLjIxMS41MjYtLjUyNi0uMjExLS41MjYtLjUyNi0uNTI2Wk0xMCwxMy42ODRjLTIsMC0zLjY4NC0xLjY4NC0zLjY4NC0zLjY4NHMxLjY4NC0zLjY4NCwzLjY4NC0zLjY4NCwzLjY4NCwxLjY4NCwzLjY4NCwzLjY4NC0xLjY4NCwzLjY4NC0zLjY4NCwzLjY4NFpNMTAsNy4zNjhjLTEuNDc0LDAtMi42MzEsMS4xNTgtMi42MzEsMi42MzFzMS4xNTgsMi42MzEsMi42MzEsMi42MzEsMi42MzEtMS4xNTgsMi42MzEtMi42MzEtMS4xNTgtMi42MzEtMi42MzEtMi42MzFaTTEwLDBDNC41MjYsMCwwLDQuNTI2LDAsMTBzNC41MjYsMTAsMTAsMTAsMTAtNC41MjYsMTAtMTBTMTUuNDczLDAsMTAsMFpNMS4wNTMsMTBDMS4wNTMsNS4wNTIsNS4wNTIsMS4wNTMsMTAsMS4wNTNzOC45NDcsNCw4Ljk0Nyw4Ljk0NywwLC4zMTYsMCwuNTI2bC04LjQyMSw4LjQyMWgtLjUyNmMtNC45NDcsMC04Ljk0Ny00LTguOTQ3LTguOTQ3Wk0xMi4zMTYsMTguNjMxbDYuMzE1LTYuMzE1Yy0uODQyLDMuMDUyLTMuMjYzLDUuNDczLTYuMzE1LDYuMzE1WiIvPjwvc3ZnPg==");
	mask-size:20px;
}
.digital::before{
	width:17px;
	aspect-ratio:160/169;
	mask-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0iIOODrOOCpOODpOODvCAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNi45Ij4gPHBhdGggZD0iTTQsMi4zdjEwLjFjLS40LS4zLS45LS41LTEuNS0uNS0xLjQsMC0yLjUsMS4xLTIuNSwyLjVzMS4xLDIuNSwyLjUsMi41LDIuNS0xLjEsMi41LTIuNVY2LjNsMTAtMS42djUuN2MtLjQtLjMtLjktLjUtMS41LS41LTEuNCwwLTIuNSwxLjEtMi41LDIuNXMxLjEsMi41LDIuNSwyLjUsMi41LTEuMSwyLjUtMi41VjBMNCwyLjNaTTIuNSwxNS45Yy0uOCwwLTEuNS0uNy0xLjUtMS41cy43LTEuNSwxLjUtMS41LDEuNS43LDEuNSwxLjUtLjcsMS41LTEuNSwxLjVaTTEzLjQ5OSwxMy45Yy0uOCwwLTEuNS0uNy0xLjUtMS41cy43LTEuNSwxLjUtMS41LDEuNS43LDEuNSwxLjUtLjcsMS41LTEuNSwxLjVaTTE0Ljk5OSwzLjdsLTEwLDEuNnYtMi4ybDEwLTEuOXYyLjRoMHYuMVoiLz48L3N2Zz4=");
	mask-size:17px;
}
@media screen and (max-width:800px){
	.shop,
	.digital{
		padding-block:11px;
		font-size:13px;
	}
}
@media (any-hover:hover){
	.button:hover{
		opacity:var(--image-link-opacity);
	}
	.nolink.button:hover,
	.nolink.button:hover::after{
		opacity:1;
	}
}

/* #visual
-------------------------------------------------- */
@scope(#visual){
	:scope{
		max-width:930px;
		padding-inline:40px;
	}
}
@media screen and (max-width:800px){
	@scope(#visual){
		:scope{
			width:91.1458vw;
			max-width:initial;
			padding-inline:min(4vw,30px);
		}
	}
}
@media screen and (max-width:600px){
	@scope(#visual){
		:scope{
			width:100%;
		}
	}
}

/* #introduction
-------------------------------------------------- */
@scope(#introduction){
	:scope{
		width:fit-content;
		max-width:initial;
		padding-block-start:53px;
	}
	p{
		line-height:1;
		letter-spacing:0.01em;
		text-indent:0.01em;
		font-feature-settings:'palt';
	}
	.release{
		font-size:17px;
	}
	.number{
		margin-block:38px 23px;
		font-size:15px;
	}
	.title{
		width:460px;
		margin-inline:auto;
	}
	.purchase{
		display:grid;
		grid-template-columns:repeat(2,138px);
		column-gap:12px;
		width:fit-content;
		margin:45px auto 39px;
	}
	.description{
		max-width:720px;
		line-height:1.8;
		text-align:left;
		letter-spacing:0.03em;
		text-indent:0;
	}
}
@media screen and (max-width:800px){
	@scope(#introduction){
		:scope{
			max-width:700px;
			padding-block-start:47px;
		}
		.release{
			font-size:15px;
		}
		.number{
			margin-block:34px 18px;
			font-size:13px;
		}
		.title{
			width:min(75vw,380px);
		}
		.purchase{
			grid-template-columns:repeat(2,128px);
			column-gap:10px;
			margin-block:35px 32px;
		}
	}
}

/* #disc
-------------------------------------------------- */
@scope(#disc){
	:scope{
		max-width:1040px;
		padding-inline:0;
	}
	.inner{
		margin-block:188px 166px;
	}
	.heading{
		margin-block-end:52px;
	}
	.products{
		container-type:inline-size;
		position:relative;
		text-align:left;
	}
	
	/* .navigation */
	.slide{
		padding-inline:30px;
		border-block-end:1px solid color-mix(in srgb,var(--default-border) var(--partition-line),transparent);
	}
	.slick-prev,
	.slick-next{
		top:43px;
	}
	.slick-prev{
		left:max(-0.625vw,-16px);
	}
	.slick-next{
		right:max(-0.625vw,-16px);
	}
	.slick-dots{
		display:flex;
		column-gap:8px;
		width:fit-content;
		margin-inline:auto;
		padding-block:4px 16px;
	}
	.slick-dots li{
		display:block;
		width:25px;
		height:11px;
	}
	.slick-dots button{
		position:relative;
		display:block;
		width:100%;
		height:100%;
		margin:0;
		padding:0;
		font-size:0;
		line-height:0;
		color:transparent;
		border:0;
		outline:0;
		cursor:pointer;
	}
	.slick-dots button::before{
		position:absolute;
		top:50%;
		left:0;
		display:block;
		width:100%;
		height:3px;
		margin-block-start:-2px;
		border-radius:2px;
		background:var(--slick-dots);
		transition:var(--image-link-trasition);
		filter:invert(62%);
		content:'';
	}
	.slick-dots .slick-active button::before{
		filter:invert(0%);
	}
	.thumbnail{
		display:grid;
		place-items:center;
		width:118px;
		padding:12px;
		aspect-ratio:1;
	}
	.thumbnail .image{
		width:94px;
	}
	.thumbnail img{
		width:94px;
		opacity:0.62;
		transition:var(--image-link-trasition);
		cursor:pointer;
	}
	.slick-current .thumbnail img{
		opacity:1;
	}

	/* .product */
	.product{
		position:relative;
		display:grid;
	}

	/* .cover */
	.cover ul{
		display:grid;
		grid-auto-flow:row;
		row-gap:10px;
		padding-block-start:12px;
	}
	.cover img{
		width:100%;
	}
	.cover .button{
		max-width:158px;
		margin-block-start:10px;
		margin-inline:auto;
	}

	/* .details */
	.details .type{
		font-size:17px;
	}
	.details .notice{
		margin-block-start:1px;
		font-size:11px;
		color:color-mix(in srgb,var(--default-font-color) var(--notes-color),transparent);
		font-feature-settings:'palt';
	}
	.details .item{
		display:flex;
		column-gap:4px;
		width:fit-content;
		margin-block-start:29px;
	}
	.details .notice+.item{
		margin-block-start:31px;
	}
	.details .icon{
		padding:3px 8px 2px;
		font-size:12px;
		line-height:1;
		border:1px solid color-mix(in srgb,var(--default-border) 100%,transparent);
	}
	.details .metadata{
		display:flex;
		margin-block:13px 17px;
	}
	.details .metadata li:not(:first-of-type)::before{
		display:inline-block;
		padding-inline:0.5em;
		font-weight:300;
		content:'/';
	}
	.details .package:not(:first-of-type){
		border-block-start:1px solid color-mix(in srgb,var(--default-border) var(--table-line),transparent);
		transition:background var(--image-link-trasition);
	}
	.details .format{
		position:relative;
		display:flex;
		justify-content:space-between;
		align-items:center;
		width:100%;
		height:79px;
		padding-block-end:1px;
		font-size:15px;
		z-index:100;
		cursor:pointer;
	}
	.details .format span{
		position:relative;
		display:block;
		width:31px;
		height:31px;
		background:var(--button-background);
		border-radius:50%;
		transition:opacity var(--image-link-trasition);
	}
	.details .format span::before,
	.details .format span::after{
		position:absolute;
		display:block;
		background:#000;
		opacity:1;
		transition:opacity var(--image-link-trasition);
		content:'';
	}
	.details .format span::before{
		top:15px;
		left:8px;
		width:15px;
		height:1px;
	}
	.details .format span::after{
		top:8px;
		left:15px;
		width:1px;
		height:15px;
	}
	.details .format.active span::after{
		opacity:0;
	}
	.details .track{
		display:none;
		border-block-start:1px solid color-mix(in srgb,var(--default-border) var(--table-line),transparent);
	}
	.details .tracklist li{
		position:relative;
		padding-block:19px 17px;
		font-size:13px;
		line-height:1.35;
		border-block-end:1px solid color-mix(in srgb,var(--default-border) var(--table-line),transparent);
	}
	.details .tracklist li:has(.credits,.collab){
		padding-block-end:19px;
	}
	.details ol.tracklist li{
		padding-inline-start:4ex;
	}
	.details ol.tracklist{
		counter-reset:track;
	}
	.details ol.tracklist li::before{
		position:absolute;
		top:19px;
		left:0;
		font-size:13px;
		line-height:1.35;
		counter-increment:track;
		content:counter(track,decimal-leading-zero);
	}
	/*
	.details ul.tracklist li{
		padding-inline-start:20px;
	}
	.details ul.tracklist li::before{
		position:absolute;
		top:26px;
		left:8px;
		display:block;
		width:4px;
		height:4px;
		border-radius:50%;
		background:#999;
		content:'';
	}
	*/
	.details .title{
		padding-block:19px 17px;
		font-size:13px;
		line-height:1.35;
		font-weight:var(--default-font-bold);
		border-block-end:1px solid color-mix(in srgb,var(--default-border) var(--table-line),transparent);
	}
	.details .tracklist+.title{
		padding-block-start:32px;
	}
	.details .tracklist .credits,
	.details .tracklist .collab,
	.details .track .notes{
		font-size:11px;
		line-height:1.35;
		color:color-mix(in srgb,var(--default-font-color) var(--notes-color),transparent);
		font-feature-settings:'palt';
	}
	.details .tracklist .credits{
		margin-block-start:12px;
	}
	.details .tracklist .collab{
		margin-block-start:3px;
	}
	.details .track .notes{
		margin-block-start:21px;
		color:var(--default-font-color);
	}
	.details .close{
		width:108px;
		margin-inline:auto;
		padding-block:22px 35px;
	}
	.details .package:last-of-type .close{
		padding-block-end:0;
	}
	.details .close .button{
		display:grid;
		place-items:center;
		height:33px;
		padding-block-end:1px;
		font-size:13px;
	}
	.details .other+.close{
		padding-block-start:19px;
	}
	.details .spec{
		margin-block-start:40px;
	}
	.details .spec dt{
		position:relative;
		margin-block-end:11px;
		padding-inline-start:1.25em;
	}	
	.details .spec dt::before{
		position:absolute;
		top:0;
		left:0;
		content:'\25A0';
	}
	.details .spec dd+dt{
		margin-block-start:36px;
	}
	.details .link{
		width:138px;
		margin-block-start:41px;
		margin-inline:auto;
	}
}
@container (width >= 1040px){
	@scope(#disc){
		.product{
			grid-template-columns:454px 586px;
		}
		.navigation{
			width:586px;
			padding-inline:24px 30px;
		}
		.details{
			width:100%;
			padding-inline:24px 30px;
		}
		.cover{
			width:100%;
			padding-inline:30px 24px;
		}
		.navigation{
			position:absolute;
			top:0;
			right:0;
			z-index:1;
		}
		.details{
			justify-self:end;
			padding-block-start:184px;
		}
	}
}
@container (width < 1040px){
	@scope(#disc){
		.product{
			grid-template-columns:43.6538% 56.3462%;
		}
		.navigation{
			width:56.3462%;
			padding-inline:2.3077vw 30px;
		}
		.details{
			width:100%;
			padding-inline:2.3077vw 30px;
		}
		.cover{
			width:100%;
			padding-inline:30px 2.3077vw;
		}
		.navigation{
			position:absolute;
			top:0;
			right:0;
			z-index:1;
		}
		.details{
			justify-self:end;
			padding-block-start:184px;
		}
	}
}
@media screen and (max-width:800px){
	@scope(#disc){
		.inner{
			margin-block:125px 121px;
		}
		.heading{
			margin-block-end:37px;
		}
		.products{
			position:static;
		}
		.product{
			grid-template-columns:auto;
			max-width:700px;
			margin-inline:auto;
			padding-inline:min(4vw,30px);
		}
		.navigation,
		.details,
		.cover{
			width:100%;
			padding-inline:0;
		}
		.navigation{
			position:static;
		}
		.details{
			padding-block-start:35px;
		}	
		.slide{
			padding-inline:0;
			border-block-end:none;
		}
		.slick-prev,
		.slick-next,
		.slick-dots{
			display:none !important;
		}
		.thumbnail{
			width:min(22.3vw,126px);
			padding:8px;
		}
		.thumbnail .image{
			width:100%;
		}
		.thumbnail img{
			width:100%;
		}
		.cover ul{
			padding-block-start:13px;
		}
		/*
		.cover .button{
			margin-block-start:200px;
		}
		*/
		.details .type{
			font-size:16px;
		}
	}
}
@media screen and (max-width:600px){
	@scope(#disc){
		.product{
			grid-template-columns:auto;
			max-width:700px;
			margin-inline:auto;
			padding-inline:min(4vw,30px);
		}
		.cover{
			max-width:initial;
		}
		.details{
			padding-inline:0;
		}
	}
}
@media (any-hover:hover){
	@scope(#disc){
		.thumbnail:hover img{
			opacity:1;
		}
		.slick-dots button:hover::before{
			filter:invert(0%);
		}
		.details:has(.format:hover) .package:not(:first-of-type),
		.details .format:hover+.track{
			border-block-start-color:transparent;
		}
		.details:has(.package:first-of-type .format.active:hover) .package:not(:first-of-type){
			border-block-start-color:color-mix(in srgb,var(--default-border) var(--table-line),transparent);
		}
		.details .format::after{
			position:absolute;
			top:0;
			right:-18px;
			bottom:0;
			left:-18px;
			display:block;
			border-radius:3px;
			background:transparent;
			box-shadow:0 0 10px 2px rgba(255,255,255,0.25);
			opacity:0;
			transition:var(--image-link-trasition);
			content:'';
		}
		.details .format:hover::after{
			opacity:1;
		}
		.details .format:hover span{
			opacity:var(--image-link-opacity);
		}
	}
}

/* #video
-------------------------------------------------- */
@scope(#video){
	:scope{
		max-width:914px;
		margin-block-start:190px;
	}
	.youtube{
		width:100%;
		aspect-ratio:16/9;
	}
	iframe{
		width:100%;
		height:100%;
	}
}
@media screen and (max-width:800px){
	@scope(#video){
		:scope{
			max-width:700px;
			margin-block-start:170px;
		}
	}
}

/* #bonus
-------------------------------------------------- */
@scope(#bonus){
	:scope{
		width:700px;
		margin-block-start:188px;
	}
	.name,
	.all{
		font-weight:var(--default-font-bold);
	}
	.name{
		margin-block-start:25px;
		font-size:17px;
	}
	.all{
		margin-block-start:5px;
	}
	.list{
		margin-block-start:26px;
		text-align:left;
	}
}

/* #serial
-------------------------------------------------- */
@scope(#serial){
	:scope{
		margin-block-start:170px;
	}
	.heading{
		margin-block-end:58px;
	}








}

/* #campaign
-------------------------------------------------- */
@scope(#campaign){
	:scope{
		margin-block-start:0px;
	}
	.link{
		display:grid;
		grid-auto-flow:row;
		row-gap:10px;
	}
	.banner{
		display:grid;
		place-items:center;
		width:100%;
		height:100px;
		color:var(--button-font-color);
		background:var(--button-background);
	}

}

/* .slick
-------------------------------------------------- */
.slick-slider{
	position:relative;
	display:block;
	box-sizing:border-box;
	touch-action:pan-y;
}
.slick-slider .slick-list,
.slick-slider .slick-track{
	transform:translateZ(0);
}
.slick-list{
	position:relative;
	display:block;
	margin:0;
	padding:0;
	overflow:hidden;
}
.slick-list:focus{
	outline:none;
}
.slick-track{
	position:relative;
	top:0;
	left:0;
	display:block;
	margin:0 auto;
}
.slick-track::before,
.slick-track::after{
	display:table;
	content:'';
}
.slick-track::after{
	clear:both;
}
.slick-slide{
	display:none;
	float:left;
	height:100%;
	min-height:1px;
}
.slick-initialized .slick-slide{
	display:block;
}
.slick-prev,
.slick-next{
	position:absolute;
	display:block;
	width:32px;
	height:32px;
	padding:0;
	line-height:0;
	color:transparent;
	border:none;
	border-radius:50%;
	background:var(--slick-button);
	cursor:pointer;
	transition:0.3s;
	z-index:10;
}
.slick-prev::before,
.slick-next::before{
	position:absolute;
	top:calc(50% - 4px);
	display:block;
	width:8px;
	height:8px;
	transform:rotate(-45deg) translate(-50%,-50%);
	transition:0.3s;
	content:'';
}
.slick-prev::before{
	left:calc(50% + 3px);
	border-top:1px solid var(--slick-arrow);
	border-left:1px solid var(--slick-arrow);
}
.slick-next::before{
	left:50%;
	border-right:1px solid var(--slick-arrow);
	border-bottom:1px solid var(--slick-arrow);
}
.slick-prev.slick-disabled,
.slick-next.slick-disabled{
	pointer-events:none;
	filter:invert(62%);
}
@media screen and (max-width:767px){
	.slick-next:active,
	.slick-prev:active{
		background:var(--slick-button);
	}
	.slick-next:active:before,
	.slick-prev:active:before{
		border-color:var(--slick-arrow);
	}
}
@media screen and (min-width:768px){
	.slick-next:hover,
	.slick-prev:hover{
		background:var(--slick-button-hover);
		opacity:0.7;
	}
	.slick-next:hover:before,
	.slick-prev:hover:before {
		border-color:var(--slick-arrow-hover);
	}
	.slick-prev:hover:before {
		animation:slickArrowP 0.5s ease-out 0.3s 1, slickArrow_bg 0.5s ease-out 0.3s infinite
	}
	.slick-next:hover:before {
		animation: slickArrowN 0.5s ease-out 0.3s 1, slickArrow_bg 0.5s ease-out 0.3s infinite
	}
	.slick-prev.slick-disabled:hover,
	.slick-next.slick-disabled:hover{
		background:var(--nolink-background);
		opacity:1;
		cursor:default;
	}
	.slick-prev.slick-disabled:hover::before,
	.slick-next.slick-disabled:hover::before{
		opacity:0.4;
	}
	.slick-prev.slick-disabled:hover,
	.slick-next.slick-disabled:hover,
	.slick-prev.slick-disabled:hover::before,
	.slick-next.slick-disabled:hover::before{
		animation:none;
	}
}
