@charset "utf-8";

/*-----------------------------------------------
 * bgMovie（YouTube背景）
-------------------------------------------------*/
.bgMovie {
	position: fixed;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
	background-color: #000;
}

.bgMovie__inner {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 56.25vw; /* 16:9 */
	min-height: 100%;
	min-width: 177.78vh; /* 16:9 cover */
	transform: translate(-50%, -50%);
}

.bgMovie__iframe,
.bgMovie__player,
.bgMovie__inner iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	pointer-events: none;
}

.bgMovie__pattern {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: rgba(0, 0, 0, 0.6) url(../img/common/movie_ov_pt.png) repeat 0 0 / 2px 2px;
}

#fullWrap {
	background-color: transparent;
	position: relative;
	z-index: 1;
	overflow-x: hidden;
}

@media (prefers-reduced-motion: reduce) {
	.bgMovie {
		display: none;
	}
}
.fv{
	position: relative;
	overflow: hidden;
}
.fv__inner{
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 768px){
	.fv__inner{
		height: calc(1080 / var(--vw-min) * 100vw);
		background-color: #000;
	}
}
.fv__logo{
	position: absolute;
	bottom: min(calc(80 / var(--vw-min) * 100vw), 80px);
	left: 0;
	right: 0;
	margin: 0 auto;
	width:calc(500 / var(--vw-min) * 100vw);
	height: calc(270 / var(--vw-min) * 100vw);
	z-index: 2;
	opacity: 0;
	transform: scale(0.82);
	transform-origin: center bottom;
	will-change: opacity, transform;
}
.fv.is-ready .fv__logo{
	animation: fvLogoPop 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0.8s both;
}
@keyframes fvLogoPop{
	0%{
		opacity: 0;
		transform: scale(0.82);
	}
	55%{
		opacity: 1;
		transform: scale(1.05);
	}
	78%{
		transform: scale(0.985);
	}
	100%{
		opacity: 1;
		transform: scale(1);
	}
}
.fv__logo img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}
@media screen and (max-width: 768px){
	.fv__logo{
		inset: 0;
		margin: auto;
		width:calc(564 / var(--vw-min) * 100vw);
		height: calc(316 / var(--vw-min) * 100vw);
		transform-origin: center center;
	}
}

.fv__date{
	position: absolute;
	top: calc(48 / var(--vw-min) * 100vw);
	left:calc(10 / var(--vw-min) * 100vw);
	width:calc(467 / var(--vw-min) * 100vw);
	height:calc(271 / var(--vw-min) * 100vw);
	background: url(../img/fv/fv_day.png) no-repeat left top / contain;
	z-index: 2;
	opacity: 0;
	transform: scale(0.82);
	transform-origin: left top;
	transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1), transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
	transition-delay: 0s;
	will-change: opacity, transform;
}
.fv.is-ready .fv__date{
	opacity: 1;
	transform: scale(1);
	transform-origin: center center;
	transition-delay: 1.8s;
}
@media screen and (max-width: 768px){
	.fv__date{
		top: unset;
		bottom: calc(90 / var(--vw-min) * 100vw);
		left: 0;
		right: 0;
		margin: auto;
		width: calc(562 / var(--vw-min) * 100vw);
        height: calc(306 / var(--vw-min) * 100vw);
		transform-origin: center bottom;
	}
}
.fv__kv{
	transform: scale(1.28) rotate(-8deg);
	transform-origin: center center;
	transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}
.fv.is-ready .fv__kv{
	transform: scale(1) rotate(0deg);
}
.fv__kv img{
	width: 100%;
	height:auto;
}
@media (prefers-reduced-motion: reduce){
	.fv__kv,
	.fv__logo,
	.fv__date,
	.fv__news{
		opacity: 1;
		transform: none;
		transition: none;
		animation: none;
		pointer-events: auto;
	}
}

.fv__movieLink{
	position: absolute;
	bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
	right: min(calc(40 / var(--vw-min) * 100vw), 40px);
	margin: 0 auto;
	width:min(calc(160 / var(--vw-min) * 100vw), 160px);
	height: min(calc(160 / var(--vw-min) * 100vw), 160px);
	background: url(../img/fv/fv_moviebtn.png) no-repeat center center / contain;
	transition: transform 0.3s ease;
	cursor: pointer;
}
.fv__movieLink:hover{
	transform: scale(1.1);
}
@media screen and (max-width: 768px){
	.fv__movieLink{
		bottom: calc(30 / var(--vw-min) * 100vw);
		right: calc(20 / var(--vw-min) * 100vw);
		width: calc(120 / var(--vw-min) * 100vw);
		height: calc(120 / var(--vw-min) * 100vw);
	}
}

.fv__catch{
	background-color: #e01613;
	width: 100%;
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	padding: min(calc(16 / var(--vw-min) * 100vw), 16px) 0;
	box-sizing: border-box;
	overflow: hidden;
}
@media screen and (max-width: 768px){
	.fv__catch{
		height: calc(80 / var(--vw-min) * 100vw);
	}
}
.fv__catchTrack{
	display: flex;
	width: max-content;
	height: 100%;
	animation: fvCatchMarquee 30s linear infinite;
}
.fv__catchGroup{
	display: flex;
	flex-shrink: 0;
	align-items: center;
	height: 100%;
}
.fv__catchTxt{
	flex-shrink: 0;
	height: 100%;
	margin: 0;
	padding: 0 min(calc(40 / var(--vw-min) * 100vw), 40px);
	box-sizing: border-box;
}
.fv__catchTxt img{
	display: block;
	height: 100%;
	width: auto;
}
@keyframes fvCatchMarquee{
	from{ transform: translateX(0); }
	to{ transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
	.fv__catchTrack{
		animation: none;
	}
}

/*-----------------------------------------------
 * product
-------------------------------------------------*/
.product{
	position: relative;
	overflow-x: hidden;
}
.product__inner{
	position: relative;
	padding-top: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
@media screen and (max-width: 768px){
	.product__inner{
		overflow: hidden;
		padding-top: calc(50 / var(--vw-min) * 100vw);
	}
}
.product__ttl{
	width: min(calc(1005 / var(--vw-min) * 100vw), 1005px);
	height: min(calc(108 / var(--vw-min) * 100vw), 108px);
	background: url(../img/product/product_ttl.svg) no-repeat center center / contain;
	margin: 0 auto min(calc(64 / var(--vw-min) * 100vw), 64px);
}
@media screen and (max-width: 768px){
	.product__ttl{
        width: calc(636 / var(--vw-min) * 100vw);
        height: calc(174 / var(--vw-min) * 100vw);
		background: url(../img/product/product_ttl_sp.svg) no-repeat center center / contain;
		margin: 0 auto calc(50 / var(--vw-min) * 100vw);
	}
}
.productBox__img{
	position: relative;
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	margin: 0 auto;
	z-index: 1;
}
.productBox__img img{
	width: 100%;
	height: auto;
}

@media screen and (max-width: 768px){
	.productBox__img{
		width:calc(700 / var(--vw-min) * 100vw);
	}
}

.productBox__ttl._complete{
	position: relative;
	width: 100%;
	height: min(calc(300 / var(--vw-min) * 100vw), 300px);
	background: url(../img/product/complete_ttl.png) no-repeat center center / contain;
	margin: max(calc(-30 / var(--vw-min) * 100vw), -30px) auto 0;
}
.complete__ttl__deco{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: min(calc(208 / var(--vw-min) * 100vw), 208px);
	background: url(../img/product/complete_ttl_deco.png) no-repeat center center / contain;
	pointer-events: none;
}
@media screen and (max-width: 768px){
	.productBox__ttl._complete{
		height: calc(300 / var(--vw-min) * 100vw);
		margin: calc(-40 / var(--vw-min) * 100vw) auto;
	}
	.complete__ttl__deco{
		width: 96%;
        height: calc(238 / var(--vw-min) * 100vw);
	}
}

/*-----------------------------------------------
 * complete deco（吹き出し）
-------------------------------------------------*/
.complete_decoWrap{
	position: absolute;
	inset: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	z-index: 1;
	transform-origin: center center;
	pointer-events: none;
}

.complete_decoWrap span{
	position: absolute;
	z-index: 1;
	display: block;
	opacity: 0;
	transform: scale(0.15);
	transform-origin: center center;
	will-change: transform, opacity;
}
@keyframes completeDecoPop1{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(-14deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(7deg);
	}
	78%{
		transform: scale(0.96) rotate(-3deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(-2deg);
	}
}
@keyframes completeDecoPop2{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(12deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(-8deg);
	}
	78%{
		transform: scale(0.96) rotate(4deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(3deg);
	}
}
@keyframes completeDecoPop3{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(-9deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(10deg);
	}
	78%{
		transform: scale(0.96) rotate(-5deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(-1deg);
	}
}
@keyframes completeDecoPop4{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(11deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(-6deg);
	}
	78%{
		transform: scale(0.96) rotate(5deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(2deg);
	}
}
@keyframes completeDecoPop5{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(-12deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(9deg);
	}
	78%{
		transform: scale(0.96) rotate(-4deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(-3deg);
	}
}
@keyframes completeDecoPop6{
	0%{
		opacity: 0;
		transform: scale(0.15) rotate(8deg);
	}
	55%{
		opacity: 1;
		transform: scale(1.12) rotate(-10deg);
	}
	78%{
		transform: scale(0.96) rotate(3deg);
	}
	100%{
		opacity: 1;
		transform: scale(1) rotate(1deg);
	}
}
.complete_decoWrap.--is-ani .complete_deco1,
.complete_decoWrap.--is-ani .complete_deco2,
.complete_decoWrap.--is-ani .complete_deco3,
.complete_decoWrap.--is-ani .complete_deco4,
.complete_decoWrap.--is-ani .complete_deco5,
.complete_decoWrap.--is-ani .complete_deco6{
	--deco-rest: 1deg;
	animation-duration: 0.68s;
	animation-timing-function: cubic-bezier(0.34, 1.4, 0.64, 1);
	animation-fill-mode: forwards;
}
.complete_decoWrap.--is-ani .complete_deco1{
	--deco-rest: -2deg;
	animation-name: completeDecoPop1;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.02s);
}
.complete_decoWrap.--is-ani .complete_deco2{
	--deco-rest: 3deg;
	animation-name: completeDecoPop2;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.1s);
}
.complete_decoWrap.--is-ani .complete_deco3{
	--deco-rest: -1deg;
	animation-name: completeDecoPop3;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.05s);
}
.complete_decoWrap.--is-ani .complete_deco4{
	--deco-rest: 2deg;
	animation-name: completeDecoPop4;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.14s);
}
.complete_decoWrap.--is-ani .complete_deco5{
	--deco-rest: -3deg;
	animation-name: completeDecoPop5;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.07s);
}
.complete_decoWrap.--is-ani .complete_deco6{
	animation-name: completeDecoPop6;
	animation-delay: calc(var(--scrani-delay, 0.08s) + 0.12s);
}
.complete_deco1{
	top: max(calc(-40 / var(--vw-min) * 100vw), -40px);
	left: max(calc(-40 / var(--vw-min) * 100vw), -40px);
	width: min(calc(178 / var(--vw-min) * 100vw), 178px);
	height: min(calc(109 / var(--vw-min) * 100vw), 109px);
	background: url(../img/deco/deco_fukidashi1.png) no-repeat center center / contain;
}
.complete_deco2{
	top: min(calc(90 / var(--vw-min) * 100vw), 90px);
	left: max(calc(-154 / var(--vw-min) * 100vw), -154px);
	width: min(calc(231 / var(--vw-min) * 100vw), 231px);
	height: min(calc(152 / var(--vw-min) * 100vw), 152px);
	background: url(../img/deco/deco_fukidashi2.png) no-repeat center center / contain;
}
.complete_deco3{
	top: min(calc(330 / var(--vw-min) * 100vw), 330px);
	left: max(calc(-80 / var(--vw-min) * 100vw), -80px);
	width: min(calc(208 / var(--vw-min) * 100vw), 208px);
	height: min(calc(139 / var(--vw-min) * 100vw), 139px);
	background: url(../img/deco/deco_fukidashi3.png) no-repeat center center / contain;
}
.complete_deco4{
	top: max(calc(-53 / var(--vw-min) * 100vw), -53px);
	right: max(calc(-120 / var(--vw-min) * 100vw), -120px);
	width: min(calc(205 / var(--vw-min) * 100vw), 205px);
	height: min(calc(155 / var(--vw-min) * 100vw), 155px);
	background: url(../img/deco/deco_fukidashi4.png) no-repeat center center / contain;
}
.complete_deco5{
	top: min(calc(130 / var(--vw-min) * 100vw), 130px);
	right: max(calc(-40 / var(--vw-min) * 100vw), -40px);
	width: min(calc(151 / var(--vw-min) * 100vw), 151px);
	height: min(calc(103 / var(--vw-min) * 100vw), 103px);
	background: url(../img/deco/deco_fukidashi5.png) no-repeat center center / contain;
}
.complete_deco6{
	top: min(calc(275 / var(--vw-min) * 100vw), 275px);
	right: max(calc(-130 / var(--vw-min) * 100vw), -130px);
	width: min(calc(271 / var(--vw-min) * 100vw), 271px);
	height: min(calc(200 / var(--vw-min) * 100vw), 200px);
	background: url(../img/deco/deco_fukidashi6.png) no-repeat center center / contain;
}
@media screen and (max-width: 768px){
	.complete_deco1{
		width: calc(151 / var(--vw-min) * 100vw);
		height: calc(93 / var(--vw-min) * 100vw);
		left: calc(-28 / var(--vw-min) * 100vw);
		top: calc(-30 / var(--vw-min) * 100vw);
	}
	.complete_deco2{
		width: calc(196 / var(--vw-min) * 100vw);
		height: calc(129 / var(--vw-min) * 100vw);
		left: calc(-90 / var(--vw-min) * 100vw);
		top: calc(130 / var(--vw-min) * 100vw);
	}
	.complete_deco3{
		width: calc(177 / var(--vw-min) * 100vw);
		height: calc(118 / var(--vw-min) * 100vw);
		left: calc(-60 / var(--vw-min) * 100vw);
		top: calc(300 / var(--vw-min) * 100vw);
	}
	.complete_deco4{
		width: calc(174 / var(--vw-min) * 100vw);
		height: calc(132 / var(--vw-min) * 100vw);
		right: calc(-80 / var(--vw-min) * 100vw);
		top: calc(-30 / var(--vw-min) * 100vw);
	}
	.complete_deco5{
		width: calc(128 / var(--vw-min) * 100vw);
		height: calc(88 / var(--vw-min) * 100vw);
		right: calc(-28 / var(--vw-min) * 100vw);
		top: calc(130 / var(--vw-min) * 100vw);
	}
	.complete_deco6{
		width: calc(230 / var(--vw-min) * 100vw);
		height: calc(170 / var(--vw-min) * 100vw);
		right: calc(-110 / var(--vw-min) * 100vw);
		top: calc(265 / var(--vw-min) * 100vw);
	}
}
@keyframes completeDecoIdle{
	0%, 100%{
		transform: scale(1) rotate(var(--deco-rest, 0deg));
	}
	30%{
		transform: scale(1.08) rotate(calc(var(--deco-rest, 0deg) + 7deg));
	}
	58%{
		transform: scale(0.96) rotate(calc(var(--deco-rest, 0deg) - 6deg));
	}
	82%{
		transform: scale(1.03) rotate(calc(var(--deco-rest, 0deg) + 3deg));
	}
}
.complete_decoWrap.--is-ani.is-settled span{
	animation: none;
	opacity: 1;
	transform: scale(1) rotate(var(--deco-rest, 0deg));
}
.complete_decoWrap.--is-ani.is-settled span.is-wiggle{
	animation: completeDecoIdle 0.55s cubic-bezier(0.34, 1.35, 0.64, 1);
}
@media (prefers-reduced-motion: reduce){
	.complete_decoWrap.js-scrani,
	.complete_decoWrap span{
		opacity: 1;
		transform: none;
		animation: none !important;
		transition: none;
	}
}
.complete__infoBox{
	margin: 0 auto;
	width: 100%;
}
@media screen and (max-width: 768px){
	.complete__infoBox{
		width: 100%;
	}
}
.complete__infoTxtWrap{
	width: 100%;
	height: 100%;
}
.complete__infoTxt{
	text-align: center;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	color: #ffd400;
	font-weight: 900;
}
.complete__infoTxt:not(:last-child){
	margin-bottom: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
.complete__infoTxt._normal{
	color: #FFF;
}
.complete__infoTxt__sub{
	color: #FFF;
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-weight: 400;
}
@media screen and (max-width: 768px){
	.complete__infoTxt{
		font-size: calc(28 / var(--vw-min) * 100vw);
	}
	.complete__infoTxt__sub{
		font-size: calc(20 / var(--vw-min) * 100vw);
		line-height: 1.6;
		display: inline-block;
	}
}


.priceBoxWrap._complete{
	margin: 0 auto;
	background-color: #e01613;
	color: #FFF;
	border: 2px solid #FFF;
	padding: min(calc(40 / var(--vw-min) * 100vw), 40px);
	box-sizing: border-box;
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
	margin-top: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
@media screen and (max-width: 768px){
	.priceBoxWrap._complete{
		margin-top: calc(40 / var(--vw-min) * 100vw);
		margin-bottom: calc(40 / var(--vw-min) * 100vw);
	}
}
.priceBoxWrap._normal{
	margin: 0 auto;
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	background-color: #FFF;
	color: #000;
	border: 2px solid #000;
	padding: min(calc(40 / var(--vw-min) * 100vw), 40px);
	box-sizing: border-box;
}
.priceBox{
	display: flex;
	align-items: center;
	gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
@media screen and (max-width: 768px){
	.priceBox{
		flex-direction: column;
		gap: calc(40 / var(--vw-min) * 100vw);
	}
}
.priceBox__item{
	display: flex;
	flex-direction: column;
	gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
	position: relative;
}
._complete .priceBox__item{
	width: 50%;
}
@media screen and (max-width: 768px){
	._complete .priceBox__item{
		width: 100%;
	}
}
._normal .priceBox__item{
	width: 100%;
}
.priceBox__item::before{
	content: '';
	position: absolute;
	top:min(calc(23 / var(--vw-min) * 100vw), 23px);
	left: 2px;
	width: 100%;
	height:1px;
	background-color: #FFF;
	display: block;
	pointer-events: none;
	opacity: 0.4;
}
@media screen and (max-width: 768px){
	.priceBox__item::before{
		top: calc(30 / var(--vw-min) * 100vw);
	}
}

._normal .priceBox__item::before{
	background-color: #000;
}


.priceBox__item__ttl._bd{
	width: min(calc(150 / var(--vw-min) * 100vw), 150px);
	height: min(calc(31 / var(--vw-min) * 100vw), 31px);
	mask: url(../img/product/txt_bluray.svg) no-repeat center center / contain;
	-webkit-mask: url(../img/product/txt_bluray.svg) no-repeat center center / contain;
	background-color: #FFF;
}
.priceBox__item__ttl._dvd{
	width: min(calc(77 / var(--vw-min) * 100vw), 77px);
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	mask: url(../img/product/txt_dvd.svg) no-repeat center center / contain;
	-webkit-mask: url(../img/product/txt_dvd.svg) no-repeat center center / contain;
	background-color: #FFF;
}
@media screen and (max-width: 768px){
	.priceBox__item__ttl._bd{
		width: calc(200 / var(--vw-min) * 100vw);
		height: calc(40 / var(--vw-min) * 100vw);
	}
	.priceBox__item__ttl._dvd{
		width: calc(100 / var(--vw-min) * 100vw);
		height: calc(30 / var(--vw-min) * 100vw);
	}
}

.priceBoxWrap._normal .priceBox__item__ttl{
	background-color: #000;
}

.priceBox__item__price{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
@media screen and (max-width: 768px){
	.priceBox__item__price{
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
}

.discDetailWrap{
	color: #FFF;
}


.productBox__inner{
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	padding-bottom: min(calc(80 / var(--vw-min) * 100vw), 80px);
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.productBox__inner{
		width: 100%;
		padding:0 calc(40 / var(--vw-min) * 100vw) calc(80 / var(--vw-min) * 100vw);
	}
}

.productBox.normal{
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px) 0;
	background-color: #FFF;
}
@media screen and (max-width: 768px){
	.productBox.normal{
		padding: calc(80 / var(--vw-min) * 100vw) 0 0;
	}
}
.productBox__ttl._normal{
	width: auto;
	height: min(calc(64 / var(--vw-min) * 100vw), 64px);
	background: url(../img/product/nomal_ttl.svg) no-repeat center center / contain;
	margin: 0 auto min(calc(80 / var(--vw-min) * 100vw), 80px);
}

.productBox.novelty{
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px) 0 0;
	background-color: #e01613;
}
.productBox__ttl._novelty{
	width: auto;
	height: min(calc(64 / var(--vw-min) * 100vw), 64px);
	background: url(../img/product/tokuten_ttl.svg) no-repeat center center / contain;
	margin: 0 auto min(calc(80 / var(--vw-min) * 100vw), 80px);
}
.noveltyImg img{
	width: 100%;
	height: auto;
}
.noveltyTxt{
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	margin-top: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.noveltyTxt__ttl{
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	line-height: 1.6;
	color: #FFF;
	margin-bottom: min(calc(12 / var(--vw-min) * 100vw), 12px);
	font-weight: 900;
}
.noveltyTxt__txt{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	line-height: 1.6;
	color: #000;
}
@media screen and (max-width: 768px){
	.noveltyTxt,
	.noveltyTxt__ttl{
		font-size: calc(28 / var(--vw-min) * 100vw);
	}
	.noveltyTxt__txt{
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
}

.normalDetail{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
@media screen and (max-width: 768px){
	.normalDetail{
		flex-direction: column;
		gap: calc(40 / var(--vw-min) * 100vw);
	}
}
.normalImgBlock{
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
}
.normalImg{
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
	height: min(calc(400 / var(--vw-min) * 100vw), 400px);
	border: 3px solid #000;
}
.normalImg img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}
@media screen and (max-width: 768px){
	.normalImgBlock{
		width: 100%;
	}
	.normalImg{
		width: 100%;
		height: unset;
	}
}

.normalTxtBlock{
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.normalTxtBlock{
		width: 100%;
	}
}
.priceBoxWrap._normal{
	width: 100%;
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
}

.noveltyDetail:not(.shopNovelty){
	padding-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}	
.shopNovelty{
	padding-top: min(calc(30 / var(--vw-min) * 100vw), 30px);
}
@media screen and (max-width: 768px){
	.shopNovelty{
		padding-top: calc(40 / var(--vw-min) * 100vw);
	}
}
/* -----------------------------------------------
discDetail
-------------------------------------------------*/
.discDetail{
	display: flex;
	flex-direction: column;
	gap: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.discDetail:not(:last-child){
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
.discDetail__ttl{
	font-size: min(calc(24 / var(--vw-min) * 100vw), 24px);
	line-height: 1;
	color: #FFF;
	font-weight: 900;
	padding-left: min(calc(12 / var(--vw-min) * 100vw), 12px);
	position: relative;
}
.normal .discDetail__ttl{
	color: #000;
}
.discDetail__ttl::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 4px;
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	background-color: #e01613;
}
.discDetail__txt{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	line-height: 1.6;
	color: #FFF;
}
.discDetailLists{
	display: flex;
	flex-direction: column;
	gap: min(calc(2 / var(--vw-min) * 100vw), 2px);
}
.discDetailLists__item{
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	color: #FFF;
	background: rgba(0, 0, 0, 0.6);
	min-height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	padding: min(calc(10 / var(--vw-min) * 100vw), 10px) min(calc(16 / var(--vw-min) * 100vw), 16px);
	display: flex;
	align-items: center;
}
.discDetailLists__item._btn{
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: column;
	gap: min(calc(6 / var(--vw-min) * 100vw), 6px);
}
.discDetailLists__item._btn .linkBtnWrap{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(calc(6 / var(--vw-min) * 100vw), 6px);
}
@media screen and (max-width: 768px){
	.discDetail__ttl{
		font-size: calc(32 / var(--vw-min) * 100vw);
		padding-left: calc(16 / var(--vw-min) * 100vw);
	}
	.discDetail__ttl::before{
		height: calc(32 / var(--vw-min) * 100vw);
	}
	.discDetail__txt{
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
	.discDetailLists__item{
		font-size: calc(28 / var(--vw-min) * 100vw);
		min-height: calc(64 / var(--vw-min) * 100vw);
		padding: calc(14 / var(--vw-min) * 100vw) calc(20 / var(--vw-min) * 100vw);
	}
	.discDetailLists__item._btn{
		flex-direction: column;
		align-items: flex-start;
	}
	.discDetailLists__item._btn .linkBtnWrap{
		margin-top: calc(10 / var(--vw-min) * 100vw);
	}
}
/* -----------------------------------------------
linkBtn
-------------------------------------------------*/
 .linkBtn{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	background-color: #e01613;
	border-radius: min(calc(50 / var(--vw-min) * 100vw), 50px);
	width: min(calc(180 / var(--vw-min) * 100vw), 180px);
	height: min(calc(32 / var(--vw-min) * 100vw), 32px);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(calc(8 / var(--vw-min) * 100vw), 8px);
	text-decoration: none;
	transition: all 0.3s ease;
}
@media screen and (max-width: 768px){
	.linkBtn{
		font-size: calc(24 / var(--vw-min) * 100vw);
		width: calc(240 / var(--vw-min) * 100vw);
		height: calc(48 / var(--vw-min) * 100vw);
	}
}
.linkBtn__txt{
	color: #FFF;
	padding-left: min(calc(34 / var(--vw-min) * 100vw), 34px);
	position: relative;
	transition: all 0.3s ease;
}
.linkBtn__txt::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(20 / var(--vw-min) * 100vw), 20px);
	mask: url(../img/common/icon/ic_disc.svg) no-repeat center center / contain;
	background-color: #ffd400;
	transition: all 0.3s ease;
}
._listen .linkBtn__txt::before{
	mask: url(../img/common/icon/ic_onpu.svg) no-repeat center center / contain;
}

.linkBtn._yellow{
	display: inline-flex;
	background-color: #ffd400;
	width: min(calc(120 / var(--vw-min) * 100vw), 120px);
}
.linkBtn._yellow .linkBtn__txt::before{
	display: none;
}
.linkBtn._yellow .linkBtn__txt{
	padding-left: 0;
	color: #000;
}
@media screen and (max-width: 768px){
	.linkBtn._yellow{
		width: calc(220 / var(--vw-min) * 100vw);
		margin-top: calc(10 / var(--vw-min) * 100vw);
	}
}


@media screen and (hover: hover){
	.linkBtn:hover{
		background-color: #ffd400;
	}
	.linkBtn:hover .linkBtn__txt{
		color: #000;
	}
	.linkBtn:hover .linkBtn__txt::before{
		background-color: #e01613;
	}
	.linkBtn._yellow:hover{
		background-color: #000;
	}
	.linkBtn._yellow:hover .linkBtn__txt{
		color: #FFF;
	}
}

/* -----------------------------------------------
moreLink
-------------------------------------------------*/
.moreLinkWrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
	margin-top: min(calc(60 / var(--vw-min) * 100vw), 60px);
}
@media screen and (max-width: 768px){
	.moreLinkWrap{
		flex-direction: column;
		gap: calc(40 / var(--vw-min) * 100vw);
	}
}
.normal .moreLinkWrap{
	justify-content: center;
}
.moreLink{
	display: flex;
	align-items: center;
	gap: min(calc(6 / var(--vw-min) * 100vw), 6px);
	text-decoration: none;
	color: #000;
	background-color: #ffd400;
	border-radius: min(calc(50 / var(--vw-min) * 100vw), 50px);
	width: min(calc(420 / var(--vw-min) * 100vw), 420px);
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: all 0.3s ease;
}
.moreLink._complete{
	width: min(calc(560 / var(--vw-min) * 100vw), 560px);
	margin: 0 auto;
}
.moreLink:hover{
	transform: scale(1.05);
}

.moreLink__txt{
	color: #000;
	font-weight: 600;
	position: relative;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
}
.moreLink .ic_arrow{
	position: absolute;
	right: min(calc(24 / var(--vw-min) * 100vw), 24px);
	bottom: 0;
	top: 0;
	margin: auto;
	width: min(calc(30 / var(--vw-min) * 100vw), 30px);
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	mask: url(../img/common/icon/ic_arrow.svg) no-repeat center center / contain;
	background-color: #e01613;
}
@media screen and (max-width: 768px){
	.moreLink{
		width: 90%;
		height: calc(100 / var(--vw-min) * 100vw);
		border-radius: calc(50 / var(--vw-min) * 100vw);
	}
	.moreLink._complete{
		width: 90%;
	}
	.moreLink__txt{
		font-size: calc(26 / var(--vw-min) * 100vw);
	}
	.moreLink .ic_arrow{
		width: calc(30 / var(--vw-min) * 100vw);
		height: calc(24 / var(--vw-min) * 100vw);
	}
}

.-indent{
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

/*-----------------------------------------------
 * news
-------------------------------------------------*/
.fv__news{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: #000;
	z-index: 2;
	overflow: visible;
	border-radius: 0 0 min(calc(24 / var(--vw-min) * 100vw), 24px) min(calc(24 / var(--vw-min) * 100vw), 24px);
	opacity: 0;
	transform: translate3d(0, -110%, 0);
	transition: opacity 0.35s ease, transform 0.75s cubic-bezier(0.22, 1.35, 0.36, 1);
	will-change: opacity, transform;
	pointer-events: none;
}
@media screen and (max-width: 768px){
	.fv__news{
		border-radius: 0;
	}
}
.fv__news::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
	height: 100vh;
	background: #000;
	pointer-events: none;
}
.fv__news.is-show{
	opacity: 1;
	transform: translate3d(0, 0, 0);
	pointer-events: auto;
}
.news__inner{
	display: flex;
	align-items: center;
	gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
	padding: 0 min(calc(48 / var(--vw-min) * 100vw), 48px);
}
@media screen and (max-width: 768px){
	.news__inner{
		padding: 0 calc(20 / var(--vw-min) * 100vw);
	}
}
.news__ttl{
	width: min(calc(68 / var(--vw-min) * 100vw), 68px);
	height: min(calc(14 / var(--vw-min) * 100vw), 14px);
	background: url(../img/fv/fv_news_ttl.svg) no-repeat center center / contain;
}
@media screen and (max-width: 768px){
	.news__ttl{
		width: calc(93 / var(--vw-min) * 100vw);
		height: calc(20 / var(--vw-min) * 100vw);
	}
}

.news__moreLink{
	display: flex;
	align-items: center;
	gap: min(calc(10 / var(--vw-min) * 100vw), 10px);
	cursor: pointer;
}
.news__moreLink .news__moreLink__txt{
	display: block;
	width: min(calc(60 / var(--vw-min) * 100vw), 60px);
	height: min(calc(14 / var(--vw-min) * 100vw), 14px);
	mask: url(../img/txt/txt_more.svg) no-repeat center center / contain;
	background-color: #FFF;
	color: #FFF;
	transition: background-color 0.3s ease;
}
.news__moreLink .ic_arrow{
	display: block;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(16 / var(--vw-min) * 100vw), 16px);
	mask: url(../img/common/icon/ic_arrow.svg) no-repeat center center / contain;
	background-color: #FFF;
	transition: all 0.3s ease;
}
@media screen and (max-width: 768px){
	.news__moreLink .ic_arrow{
		width: calc(30 / var(--vw-min) * 100vw);
		height: calc(24 / var(--vw-min) * 100vw);
	}
}
@media screen and (hover: hover){
	.news__moreLink:hover{
		transform: translateX(min(calc(5 / var(--vw-min) * 100vw), 5px));
		transition: transform 0.3s ease;
	}
	.news__moreLink:hover .ic_arrow{
		background-color: #ffd400;
	}
	.news__moreLink:hover .news__moreLink__txt{
		background-color: #ffd400;
	}
}

.newsListsWrap{
	width: 100%;
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
}
.newsListsWrap.swiper{
	margin: 0;
}
@media screen and (max-width: 768px){
	.newsListsWrap{
		height: calc(60 / var(--vw-min) * 100vw);
	}
}
.newsLists{
	height: 100%;
	margin: 0;
	padding: 0;
}
.newsLists__item{
	height: 100%;
	box-sizing: border-box;
}
.newsLists__link{
	display: flex;
	align-items: center;
	gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
	position: relative;
	z-index: 0;
	height: 100%;
	padding: 0 min(calc(24 / var(--vw-min) * 100vw), 24px);
	box-sizing: border-box;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	color: #FFF;
	transition: color 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}
.newsLists__link::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: var(--news-hover-color, #e01613);
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}
.newsLists__date,
.newsLists__ttl{
	position: relative;
	z-index: 1;
}
.newsLists__date{
	flex-shrink: 0;
}
.newsLists__ttl{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.newsLists__ttl br{
	display: none;
}
@media screen and (hover: hover){
	.newsLists__link:hover::before{
		transform: scaleX(1);
		transform-origin: left center;
	}
}
@media screen and (max-width: 768px){
	.newsLists__link{
		font-size: calc(20 / var(--vw-min) * 100vw);
	}
}	
/*-----------------------------------------------

 * movie

-------------------------------------------------*/
.movie{
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px) 0;
}
@media screen and (max-width: 768px){
	.movie{
		padding: calc(80 / var(--vw-min) * 100vw) 0 calc(40 / var(--vw-min) * 100vw);
	}
}
.movie__ttl{
	width: 100%;
	height: min(calc(64 / var(--vw-min) * 100vw), 64px);
	background: url(../img/txt/ttl_movie.svg) no-repeat center center / contain;
	margin: 0 auto min(calc(64 / var(--vw-min) * 100vw), 64px);
}
.movieListsOuter{
	width: 100%;
}
.movieListsWrap{
	overflow: visible;
}
.movieListsWrap.swiper{
	overflow: hidden;
	margin: 0;
}
.movieListsWrap .movieList.swiper-slide{
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	padding: 0;
	box-sizing: border-box;
	transition: filter 0.4s ease 0.2s, opacity 0.4s ease 0.2s;
	opacity: 1;
}
.movieListsWrap .movieList.swiper-slide .movieList__thumb img{
	transition: all 0.4s ease;
}

.movieList__title{
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	text-align: center;
	line-height: 1.6;
	color: #fff;
	min-height: min(calc(64 / var(--vw-min) * 100vw), 64px);
	margin-top: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.movieList__thumb{
	display: block;
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	height: min(calc(496 / var(--vw-min) * 100vw), 496px);
	padding: 0;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	background-color: #000;
}
.movieList__thumb img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.movieBtn{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	z-index: 10;
	background: rgba(0, 0, 0, 0.8);
	cursor: pointer;
	transition: background 0.3s ease;
}
.movieList__thumb .movieBtn{
	opacity: 1;
	pointer-events: all;
}
.movieList.swiper-slide-active .movieBtn{
	background: rgba(0, 0, 0, 0.4);
}
.movieList.swiper-slide-active .ic_play{
	opacity: 1;
}
.ic_play{
	position: absolute;
	inset: 0;
	margin: auto;
	display: block;
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	background: url(../img/common/icon/ic_play.svg) no-repeat center center / 100% auto;
	transition: all 0.3s ease;
	opacity: 0;
}
.movieList .movieList__thumb img{
	transform: scale(1);
}
@media screen and (hover: hover){
	.movieBtn:hover{
		background: rgba(0, 0, 0, 0.4);
	}
	.movieBtn:hover .ic_play{
		transform: scale(1.1);
	}
	.movieList .movieList__thumb:hover img{
		transform: scale(1.05);
		opacity: 1;
	}
	.movieList .movieList__thumb:hover .movieBtn{
		background: rgba(0, 0, 0, 0.1);
	}
	.movieList .movieList__thumb:hover .ic_play{
		transform: scale(1.1);
	}
	.movieList .movieList__thumb:hover .ic_play{
		opacity: 1;
	}
}
@media screen and (max-width: 768px){
	.movieContentWrap{
		padding-top: calc(168 / var(--vw-min) * 100vw);
		padding-bottom: calc(180 / var(--vw-min) * 100vw);
	}
	.movieListsWrap .movieList.swiper-slide{
		width: calc(100% - 80px);
		padding: 0;
	}
	.movieList__thumb{
		width: 100%;
		height: auto;
		aspect-ratio: 880 / 496;
	}
	.movieList__title{
		font-size: calc(24 / var(--vw-min) * 100vw);
		line-height: 1.6667;
		min-height: calc(80 / var(--vw-min) * 100vw);
		margin-top: calc(16 / var(--vw-min) * 100vw);
	}
}

/*-----------------------------------------------
credit
-------------------------------------------------*/
.credit{
	background-color: #FFF;
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px) 0 min(calc(80 / var(--vw-min) * 100vw), 80px);

}
.credit__inner{
	width: min(calc(880 / var(--vw-min) * 100vw), 880px);
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.credit__inner{
		width: 100%;
		padding: 0 calc(20 / var(--vw-min) * 100vw);
	}
}
.credit__txt{
	width: 100%;
	height: min(calc(400 / var(--vw-min) * 100vw), 400px);
	background: url(../img/billing.png) no-repeat center center / contain;
}
@media screen and (max-width: 768px){
	.credit__txt{
		height: calc(320 / var(--vw-min) * 100vw);
	}
}
.txt_rental{
	width: min(calc(510 / var(--vw-min) * 100vw), 510px);
	height: min(calc(38 / var(--vw-min) * 100vw), 38px);
	margin: 0 auto;
	background: url(../img/txt/txt_rental.svg) no-repeat center center / contain;
	margin-bottom: min(calc(60 / var(--vw-min) * 100vw), 60px);
}