@charset "utf-8";
/*-----------------------------------------------
 * Visual
-------------------------------------------------*/
.p-visual{
	width: 100%;
}
.p-visual__image{
	width: 100%;
	padding-top: 141.3542%;
	position: relative;
}
.p-visual__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}


/*-----------------------------------------------
 * tMovie
-------------------------------------------------*/
.p-tMovie{
	width: 100%;
	padding-top: 0.4167%;/* 4 */
}
.p-tMovieLists{
	width: 100%;
}
.p-tMovieList{
	width: 100%;
	display: flex;
	flex-direction: column;
}
.p-tMovieList__dt{
	order: 1;
	width: 100%;
	padding-top: min(calc(12 / var(--vw-min) * 100vw), 12px);/* 12 */
	line-height: 1;
}
.tMovieList__dt--img{
	display: block;
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.tMovieList__dt--img img{
	display: inline-block;
	height: 100%;
}

.p-tMovieList__dd{
	width: 100%;
	padding-top: 12.5%;/* 120 */
	position: relative;
}
.btn_moviePlay{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.p-tMovieList__image{
	display: block;
	width: 100%;
	height: 100%;
}
.p-tMovieList__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.p-tMovieList__deco{
	display: block;
	background-color: #fff;
	-webkit-mask: url(../img/common/icon_play.svg) no-repeat center / contain;
	mask: url(../img/common/icon_play.svg) no-repeat center / contain;
	width: min(calc(48 / var(--vw-min) * 100vw), 48px);
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
}

@media screen and (hover:hover) and (pointer: fine){
	.btn_moviePlay:before,
	.btn_moviePlay:after {
		content: '';
		width: 100%;
		height: 50%;
		background: rgba(0, 0, 0, 0.75);
		position: absolute;
		z-index: 2;
		transition: transform .5s var(--easing-outquart);
	}
	.btn_moviePlay:before {
		top: 0;
		left: 0;
		transform: translateX(-120%) skewX(-45deg);
	}
	.btn_moviePlay:after {
		bottom: 0;
		right: 0;
		transform: translateX(120%) skewX(-45deg);
	}
	.btn_moviePlay:hover:before,
	.btn_moviePlay:hover:after {
		transform: translateX(0%);
	}

	.p-tMovieList__image,
	.p-tMovieList__deco {
		transition: transform .5s var(--easing-outquart);
	}
	.btn_moviePlay:hover .p-tMovieList__image,
	.btn_moviePlay:hover .p-tMovieList__deco {
		transform: scale(1.15);
	}
	
}

@media screen and (max-width:768px){
	.p-tMovie{
		padding-top: calc(8 / var(--vw-min) * 100vw);
	}
	.p-tMovieList__dt{
		padding-top: calc(12 / var(--vw-min) * 100vw);
	}
	.tMovieList__dt--img{
		height: calc(26 / var(--vw-min) * 100vw);
	}
	.p-tMovieList__dd{
		padding-top: calc(224 / var(--vw-min) * 100vw);
	}
}


/*-----------------------------------------------
 * tLoading
-------------------------------------------------*/
.tLoading {
	background-color: var(--THEME-COLOR);
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10000;
}
.tLoading:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url(../img/common/bg/bg_dots.svg);
	opacity: 40%;
}
.tLoading__logo{
	width: min(calc(230 / var(--vw-min) * 100vw), 230px);
	height: min(calc(58 / var(--vw-min) * 100vw), 58px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

}
.tLoading__logo:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/common/logo.png) no-repeat center / contain;
	animation: ani_tloading-logo 1.2s ease-in alternate;
}

@keyframes ani_tloading-logo {
	0%{
		opacity: 0;
		filter: blur(8px);
	}
	100%{
		opacity: 100%;
		filter: blur(0px);
	}
}

.tLoading {
	transition: background-color .8s ease;
}
body.--is-loading .tLoading {
	background-color: #fff;
}
body.--is-loading .tLoading__logo{
	transition: opacity .8s ease, transform 1s ease;
	opacity: 0;
}



.p-visual{
	filter: brightness(150%);
	transition: filter .6s ease;
}
body.--is-loading .p-visual{
	filter: brightness(100%);
	transition-delay: 700ms;
}
.l-header__content{
	transform: translateY(-100%);
	opacity: 0;
	transition: opacity .3s ease, transform .6s cubic-bezier(.35,.15,.38,1);
}
body.--is-loaded .l-header__content{
	opacity: 1;
	transform: translateY(0%);
}
.header__navBtnWrap{
	opacity: 0;
	transform: scale(60%);
	transition: opacity .3s ease, transform .4s ease;
}
body.--is-loaded .header__navBtnWrap{
	opacity: 1;
	transform: scale(100%);
}