@charset "utf-8";
#fullContents{
	position: relative;
	z-index: 1;
}
.bgVideo{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.bgVideo video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bgColor{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
}
.bgColor:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,90%);
}
.scrl-bgcolor{
	position: absolute;
	top: 25vh;
	left: 0;
	width: 100%;
	height: 50vh;
	opacity: 0;
	pointer-events: none;
}


/*-----------------------------------------------
 * MV
-------------------------------------------------*/
.mv{
	position: relative;
	width: 100%;
	height: 100vh;
}


/*-----------------------------------------------
 * CONTENT - COMMON
-------------------------------------------------*/
.mainContents{
	position: relative;
	padding-top: min(calc(200 / var(--vw-min) * 100vw), 200px);
	padding-bottom: min(calc(200 / var(--vw-min) * 100vw), 200px);
	opacity: 0;
	transition: opacity .6s ease;
}
body.--is-view .mainContents{
	opacity: 1;
}
@media screen and (max-width:768px){
	.mainContents{
		padding-bottom: calc(160 / var(--vw-min) * 100vw);
	}
}

.mainCont__bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,90%);
}

.mainContent{
	width: 100%;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:768px){
	.mainContent{
		padding-left: calc(72 / var(--vw-min) * 100vw);
		padding-right: calc(72 / var(--vw-min) * 100vw);
	}
}

.cont_h2{
	font-family: var(--font-en);
	font-weight: 800;
	font-size: min(calc(42 / var(--vw-min) * 100vw), 42px);
	line-height: 1;
	text-align: center;
}
@media screen and (max-width:768px){
	.cont_h2{
		font-size: calc(48 / var(--vw-min) * 100vw);
	}
}


/*-----------------------------------------------
 * INTRODUCTION
-------------------------------------------------*/
#introduction{
	padding-top: min(calc(200 / var(--vw-min) * 100vw), 200px);
	padding-bottom: min(calc(80 / var(--vw-min) * 100vw), 80px);
}
.introduction__contentIn{
	width: 100%;
	padding-top: min(calc(72 / var(--vw-min) * 100vw), 72px);
	font-family: var(--font-ja);
}
.introduction__text{
	text-align: center;
	font-size: min(calc(18 / var(--vw-min) * 100vw), 18px);
	line-height: 2.25;
	transform: scale(0.85,1);
}
.introduction__text:not(:first-child){
	margin-top: min(calc(48 / var(--vw-min) * 100vw), 48px);
}


.introduction__text--txt{
	position: relative;
	background: linear-gradient(var(--color-green), var(--color-green)) right bottom / 100% 100% no-repeat;
	transition: background-size .3s cubic-bezier(.35,.15,.3,1.08);
}
.introduction__text--txt > span{
	position: relative;
	z-index: -1;
}

body.--is-view .introduction__text.--is-ani .introduction__text--txt{
	transition-delay: .2s;
	background-size: 0% 100%;
}

@media screen and (max-width:768px){
	#introduction{
		padding-top: calc(192 / var(--vw-min) * 100vw);
		padding-bottom: calc(48 / var(--vw-min) * 100vw);
		padding-left: 0;
		padding-right: 0;
	}
	.introduction__contentIn{
		padding-top: calc(80 / var(--vw-min) * 100vw);
	}
	.introduction__text{
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
	.introduction__text:not(:first-child){
		margin-top: calc(48 / var(--vw-min) * 100vw);
	}
}



/*-----------------------------------------------
 * COMINGSOON CONTENT
-------------------------------------------------*/
.csContent{
	padding-top: min(calc(200 / var(--vw-min) * 100vw), 200px);
	max-width: 1920px;
	margin: 0 auto;
}
.csContent__lists{
	display: flex;
	flex-wrap: wrap;
	row-gap: min(calc(88 / var(--vw-min) * 100vw), 88px);
	justify-content: center;
}
.csContent__list{
	width: auto;
	min-width: min(calc(568 / var(--vw-min) * 100vw), 568px);
	padding: min(calc(80 / var(--vw-min) * 100vw), 160px) min(calc(40 / var(--vw-min) * 100vw), 40px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
.csContent__listIn{
	width: 100%;
	position: relative;
}
.csContent__list--txt{
	font-family: var(--font-en);
	font-size: min(calc(42 / var(--vw-min) * 100vw), 42px);
	font-weight: 800;
	line-height: 1.2;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: min(calc(112 / var(--vw-min) * 100vw), 112px);
}
@media screen and (min-width:769px){
	.csContent__list--txt._la{
		font-size: min(calc(39 / var(--vw-min) * 100vw), 39px);
	}
}
.csContent__list--txt:after{
	content: '';
	position: absolute;
	top: 0;
	left: -50%;
	right: -50%;
	bottom: 0;
	width: min(calc(296 / var(--vw-min) * 100vw), 296px);
	height: min(calc(44 / var(--vw-min) * 100vw), 44px);
	background: url(../img/common/txt-comingsoon.svg) no-repeat center / contain;
	margin: auto;
	transform: rotate(-10deg);
	opacity: 70%;
}

.csContent__list--detail{
	width: min(calc(480 / var(--vw-min) * 100vw), 480px);
	min-height: min(calc(144 / var(--vw-min) * 100vw), 144px);
	margin: min(calc(24 / var(--vw-min) * 100vw), 24px) auto 0;
	padding: min(calc(20 / var(--vw-min) * 100vw), 20px) min(calc(20 / var(--vw-min) * 100vw), 20px);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
.csContent__list--detail_txt{
	font-size: min(calc(18 / var(--vw-min) * 100vw), 18px);
	font-weight: bold;
	line-height: 1.6667;
}
.csContent__list--detail_deco{
	position: absolute;
	top: 0;
	bottom: 0;
	width: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
.csContent__list--detail_deco:before{
	content: '';
	position: absolute;
	top: 0;
	height: 100%;
	bottom: 0;
	width: 2px;
	background-color: var(--color-green);
}
.csContent__list--detail_deco:after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	border-top: 2px solid var(--color-green);
	border-bottom: 2px solid var(--color-green);
}

.csContent__list--detail_deco.-l{
	left: 0;
}
.csContent__list--detail_deco.-l:before,
.csContent__list--detail_deco.-l:after{
	left: 0;
}

.csContent__list--detail_deco.-r{
	right: 0;
}
.csContent__list--detail_deco.-r:before,
.csContent__list--detail_deco.-r:after{
	right: 0;
}




@media screen and (max-width:768px){
	.csContent{
		padding-top: calc(104 / var(--vw-min) * 100vw);
		max-width: 100%;
	}
	.csContent__lists{
		row-gap: calc(80 / var(--vw-min) * 100vw);
	}
	.csContent__list{
		width: 100%;
		padding: calc(40 / var(--vw-min) * 100vw) 0;
	}
	.csContent__list--txt{
		font-size: calc(50 / var(--vw-min) * 100vw);
		/* min-height: calc(144 / var(--vw-min) * 100vw); */
		min-height: 0;
	}
	.csContent__list--txt:after{
		width: calc(440 / var(--vw-min) * 100vw);
		height: calc(64 / var(--vw-min) * 100vw);
	}

	.csContent__list--detail{
		width: 100%;
		padding: calc(32 / var(--vw-min) * 100vw) calc(32 / var(--vw-min) * 100vw);
		min-height: calc(192 / var(--vw-min) * 100vw);
		/* margin-top: calc(32 / var(--vw-min) * 100vw); */
		margin-top: calc(64 / var(--vw-min) * 100vw);
	}
	.csContent__list--detail_txt{
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
	.csContent__list--detail_deco{
		width: calc(24 / var(--vw-min) * 100vw);
	}
}


/**
* animation - listDetail
**/
.csContent__list--detail_deco:before{
	margin: auto;
	height: 0%;
	transition: height .4s ease .2s;
}
.csContent__list--detail_deco:after{
	width: 0%;
	transition: width .3s ease .5s;
}
.csContent__list--detail_txt{
	opacity: 0;
	transform: translateY(15%);
	transition: opacity .3s ease .7s, transform .4s ease .75s;
}
.csContent__list.--is-ani .csContent__list--detail_deco:before{
	height: 100%;
}
.csContent__list.--is-ani .csContent__list--detail_deco:after{
	width: 100%;
}
.csContent__list.--is-ani .csContent__list--detail_txt{
	opacity: 1;
	transform: translateY(0%)
}




/*-----------------------------------------------
 * FOOTER
-------------------------------------------------*/
.footer{
	opacity: 0;
	transition: opacity .6s ease;
}
body.--is-view .footer{
	opacity: 1;
}



/**
* animation - Title
**/
.a-title{
	opacity: 0;
	transition: opacity .3s ease .1s;
}
.a-title__txt{
	display: inline-block;
	transform: translateY(75%);
	transition: transform .4s cubic-bezier(.54,.42,.2,1) .2s;
}
body.--is-view .--is-ani .a-title{
	opacity: 1;
}
body.--is-view .--is-ani .a-title__txt{
	transform: translateY(0%);
}



.csContent__list:after{
	opacity: 0;
	transform: scale(50%) rotate(-8deg);
	transition: opacity .3s ease .3s, transform .3s cubic-bezier(.54,.42,.2,1) .4s;
}
body.--is-view .csContent__list.--is-ani:after{
	opacity: 1;
	transform: scale(100%) rotate(-10deg);
}



/*-----------------------------------------------
 * LOADING
-------------------------------------------------*/
#loading{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10001;
	overflow: hidden;
	background-color: #000;
}
.loading__video{
	position: absolute;
	inset: 0;
}
.loading__video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}