@charset "utf-8";
/*-----------------------------------------------
 * HEAD TEXT
-------------------------------------------------*/
.t-headText{
	position: relative;
	width: 100%;
	height: min(calc(104 / var(--vw-min) * 100vw), 104px);
	overflow: hidden;
}
.t-headText__img{
	width: 100%;
	height: 100%;
	background: url(../img/top/txt_title_en.svg) repeat-x center left;
	background-size: auto 100%;
	position: absolute;
	top: 0;
	left: 0;
	animation: ani_headText_slide 27.96s linear infinite;
}
@keyframes ani_headText_slide {
	0%{
		background-position-x: min(calc(0 / var(--vw-min) * 100vw), 0px);
	}
	100%{
		background-position-x: max(calc(-2796 / var(--vw-min) * 100vw), -2796px);
	}
}




/*-----------------------------------------------
 * MV
-------------------------------------------------*/
.mv{
	width: 100%;
	position: relative;
}

.mvLogo{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	width: min(calc(500 / var(--vw-min) * 100vw), calc(500px * var(--max-percent)));
	margin-left: auto;
	margin-right: auto;
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
.mvLogo--img{
	display: block;
	width: 100%;
	padding-top: 30.8%;
	position: relative;
}
.mvLogo--img img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 0 20px rgba(0,0,0,50%)) drop-shadow(0 0 10px rgba(0,0,0,50%));
}
.mvVisualArea{
	width: 100%;
	/* padding-top: 54.1667%; */
	padding-top: 56.25%;
	position: relative;
	background-color: #000;
}
.mvVisualAreaInWrap,
.mvVisualGroupWrap{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.mvVisualAreaInWrap{
	overflow: hidden;
}
.mvVisualGroup{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.mvVisualGroup.swiper-slide{
	position: relative;
	width: 100%;
	height: 100%;
}
.mvVisualLayer{
	position: absolute;
}
.mvVisualLayer:not(.-catch){
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.mvVisualLayer img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width:768px){
	.mvLogo{
		width: calc(560 / var(--vw-min) * 100vw);
		margin-bottom: calc(38 / var(--vw-min) * 100vw);
	}
	.mvVisualArea{
		padding-top: 141.4667%;
		margin-bottom: min(calc(112 / var(--vw-min) * 100vw), 112px);
	}
}


/* Visual1 */
.mvVisualLayer.-visual1_catch{
	width: 7.9167%;/* 95 */
	bottom: 0;
	right: 0;
	margin-bottom: -0.834%;/* -10 */
	margin-right: 0.834%;
}
.mvVisualLayer.-visual1_catch > .mvVisualLayerIn{
	position: relative;
	width: 100%;
	padding-top: 572.6316%;
}
.mvVisualLayer.-visual1_catch > .mvVisualLayerIn img{
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:768px){
	.mvVisualLayer.-visual1_catch{
		width: calc(140 / var(--vw-min) * 100vw);
		bottom: unset;
		top: 0;
		margin-bottom: unset;
		margin-right: unset;
		margin-top: calc(112 / var(--vw-min) * 100vw);
	}
}


/* Visual2 */
.mvVisualLayer.-visual2_catch{
	width: 80.8334%;
	top: 0;
	left: 0;
	right: 0;
	margin: calc(30 / var(--vw-min) * 100vw) auto 0;
}
.mvVisualLayer.-visual2_catch > .mvVisualLayerIn{
	position: relative;
	width: 100%;
	padding-top: 8.6189%;
}
.mvVisualLayer.-visual2_catch > .mvVisualLayerIn img{
	position: absolute;
	top: 0;
	left: 0;
	object-fit: contain;
	object-position: top;
}
@media screen and (max-width:768px){
	.mvVisualLayer.-visual2_catch{
		width: 100%;
		bottom: unset;
		top: 0;
		margin-bottom: unset;
		margin-right: unset;
		margin-top: calc(112 / var(--vw-min) * 100vw);
	}
}



.onairDate{
	text-align: center;
	padding: min(calc(48 / var(--vw-min) * 100vw), 48px) 0 0;
}
.onairDate--img{
	display: inline-block;
	width: min(calc(402 / var(--vw-min) * 100vw), calc(402px * var(--max-percent)));
}
.onairDate--img img{
	width: 100%;
}
@media screen and (max-width:768px){
	.onairDate{
		padding: calc(40 / var(--vw-min) * 100vw) 0;
	}
	.onairDate--img{
		width: calc(504 / var(--vw-min) * 100vw);
	}
}


/** mvVisualChangeArea **/
.mvVisualChangeArea{
	position: absolute;
	left: 0;
	bottom: 0;
}
.mvVisualChangeListsWrap{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: min(calc(70 / var(--vw-min) * 100vw), 70px);
	margin-left: min(calc(16 / var(--vw-min) * 100vw), 16px);
	margin-bottom: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
.mvVisualChangeLists__dt{
	font-family: var(--font-en);
	font-size: min(calc(14 / var(--vw-min) * 100vw), 14px);
	font-weight: 900;
	writing-mode: vertical-rl;
	line-height: 1;
}
.mvVisualChangeLists__dt span{
	display: inline-block;
	background-color: #000;
	padding: 0.275em 0.125em;
}
.mvVisualChangeLists__dd{
	width: 100%;
	margin-top: min(calc(12 / var(--vw-min) * 100vw), 12px);
}
.mvVisualChangeLists{
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: min(calc(8 / var(--vw-min) * 100vw), 8px);
}
.mvVisualChangeList{
	width: 100%;
}
.btn_mvVisualChange{
	display: block;
	width: 100%;
	padding-top: 114.2858%;
	position: relative;
}
.btn_mvVisualChange--img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-mask: url(../img/top/btn_visualchange_bg.svg) no-repeat center / contain;
	mask: url(../img/top/btn_visualchange_bg.svg) no-repeat center / contain;
}
.btn_mvVisualChange--img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.btn_mvVisualChange--frame{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(../img/top/btn_visualchange_frame.svg) no-repeat center / contain;
}

.btn_mvVisualChange--img__gause{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
}
.btn_mvVisualChange--img__gause:before{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--color-red);
	mix-blend-mode: color;
}

/* --is-current */
body.--is-loaded .btn_mvVisualChange.--is-current .btn_mvVisualChange--img__gause{
	opacity: 1;
}
body.--is-loaded .btn_mvVisualChange.--is-current .btn_mvVisualChange--img__gause:before{
	top: 0%;
	transition: top 9s ease;
}

@media screen and (max-width:768px){
	.mvVisualChangeArea{
		width: 100%;
		bottom: calc(-112 / var(--vw-min) * 100vw);
	}
	.mvVisualChangeListsWrap{
		flex-direction: row;
		width: 100%;
		margin-left: unset;
		margin-bottom: unset;
	}
	.mvVisualChangeLists__dt{
		font-size: calc(24 / var(--vw-min) * 100vw);
		writing-mode: unset;
		flex-shrink: 0;
	}
	.mvVisualChangeLists__dt span{
		padding-left: calc(40 / var(--vw-min) * 100vw);
	}
	.mvVisualChangeLists__dd{
		margin-top: unset;
		margin-left: calc(20 / var(--vw-min) * 100vw);
	}
	.mvVisualChangeLists{
		flex-direction: row;
		gap: calc(12 / var(--vw-min) * 100vw);
	}
	.mvVisualChangeList{
		width: calc(72 / var(--vw-min) * 100vw);
	}
}



/** LOADED ANIMATION **/
.mvVisualGroupWrap{
	transform: scale(108%);
	filter: brightness(200%);
	transition: transform 1.2s ease, filter .8s ease;
}
.mvVisualSwiper{
	width: 100%;
	height: 100%;
}
.mvLogo{
	opacity: 0;
	transform: scale(90%);
	transition: transform 1.2s ease, opacity .6s ease;
}
.mvVisualLayer.-catch{
	opacity: 0;
	transition: opacity .3s ease .8s;
}

body.--is-loaded .mvVisualGroupWrap{
	transform: scale(100%);
	filter: brightness(100%);
}
body.--is-loaded .mvLogo{
	opacity: 1;
	transform: scale(100%);
}
body.--is-loaded .mvVisualLayer.-catch{
	opacity: 1;
	transform: translateY(0%);
}





/*-----------------------------------------------
 * MOVIE
-------------------------------------------------*/
#movie{
	padding-top: min(calc(92 / var(--vw-min) * 100vw), calc(92px * var(--max-percent)));
}
.movie__contArea{
	width: 100%;
	max-width: calc(1200px * var(--max-percent));
	position: relative;
	margin: 0 auto;
}

@media screen and (max-width:768px){
	#movie{
		padding-top: calc(120 / var(--vw-min) * 100vw);
	}
	.movie__contArea{
		max-width: 100%;
	}
	.movieContent{
		display: flex;
		flex-direction: column;
	}
}


/* oy */
.movie__contArea.-oy{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: min(calc(130 / var(--vw-min) * 100vw), 130px);
	display: flex;
	align-items: center;
}
.movie__linkYoutube{
	width: 100%;
	text-align: right;
	padding-right: 6.6667%;
}
.movie__linkYoutube--link{
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	font-family: var(--font-en);
	font-weight: 900;
	line-height: 1;
}
.movie__linkYoutube--text{
	display: inline-block;
	font-size: min(calc(28 / var(--vw-min) * 100vw), 28px);
	padding-right: min(calc(12 / var(--vw-min) * 100vw), 12px);
}

@media screen and (max-width:768px){
	.movie__contArea.-oy{
		position: relative;
		height: auto;
		order: 1;
		margin-top: calc(30 / var(--vw-min) * 100vw);
	}
	.movie__linkYoutube{
		padding-right: unset;
		padding-left: calc(40 / var(--vw-min) * 100vw);
		text-align: center;
	}
	.movie__linkYoutube--text{
		font-size: calc(40 / var(--vw-min) * 100vw);
		padding-right: calc(20 / var(--vw-min) * 100vw);
	}
}



.movieSwiper{
	width: 100%;
	margin-top: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
.movieList{
	width: min(calc(720 / var(--vw-min) * 100vw), calc(720px * var(--max-percent)));
}
.movieList__item{
	width: 100%;
	transform: scale(66.6667%);
	transition: transform .4s ease;
}
.btn_movieList{
	display: block;
	width: 100%;
	padding-top: 56.25%;
	position: relative;
	border: unset;
	border-radius: unset;
}
.btn_movieList--img{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
}
.btn_movieList--img:before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	background: linear-gradient(0deg, rgb(218,0,0) 0%, rgba(231,186,85,0) 100%);
	opacity: 0%;
	transition: opacity .4s ease;
	z-index: 1;
}
.movieList .btn_movieList--img:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,60%);
	opacity: 100%;
	transition: opacity .4s ease;
	z-index: 1;
}

.btn_movieList--img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0);
	transition: filter .6s ease, transform .4s ease;
}

.btn_movieList--icon{
	display: inline-block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: min(calc(104 / var(--vw-min) * 100vw), calc(104px * var(--max-percent)));
	height: min(calc(104 / var(--vw-min) * 100vw), calc(104px * var(--max-percent)));
	margin-right: min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
	margin-bottom: min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
	opacity: 0%;
	transition: opacity .4s ease;
	z-index: 1;
}
.btn_movieList--icon:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(../img/top/txt_moviplay.svg) no-repeat center / contain;
	animation: ani_rotate 12s linear infinite;
	animation-play-state: paused;
}
.btn_movieList--icon:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 26.9231%;/* 28 */
	height: 26.9231%;/* 28 */
	margin: auto;
	background: url(../img/common/arrow_r3.svg) no-repeat center / contain;
}

@media screen and (max-width:768px){
	.movieSwiper{
		margin-top: calc(40 / var(--vw-min) * 100vw);
	}
	.movieList{
		width: calc(560 / var(--vw-min) * 100vw);
	}
	.movieList__item{
		transform: scale(71.4286%);
	}
	.btn_movieList--icon{
		width: calc(104 / var(--vw-min) * 100vw);
		height: calc(104 / var(--vw-min) * 100vw);
		margin-right: calc(20 / var(--vw-min) * 100vw);
		margin-bottom: calc(20 / var(--vw-min) * 100vw);
	}
}



/** ACTIVE **/
.movieList.swiper-slide-active .movieList__item{
	transform: scale(100%);
}
.movieList.swiper-slide-active .btn_movieList--img:before{
	opacity: 90%;
}
.movieList.swiper-slide-active .btn_movieList--icon{
	opacity: 100%;
}
.movieList.swiper-slide-active .btn_movieList--icon:before{
	animation-play-state: running;
}
.movieList.swiper-slide-active .btn_movieList--img img{
	filter: contrast(1);
}
.movieList.swiper-slide-active .btn_movieList--img:after{
	opacity: 0%;
}



@media screen and (hover:hover) and (pointer: fine){
	.movieList.swiper-slide-active .btn_movieList:hover .btn_movieList--icon:before{
		animation-play-state: paused;
	}
	.btn_movieList--img:before{
		transition: bottom .4s ease;
	}
	.btn_movieList--img img{
		transition: transform .4s ease;
	}

	.btn_movieList:hover .btn_movieList--img:before{
		bottom: -50%;
	}
	.btn_movieList:hover .btn_movieList--img img{
		transform: scale(105%);
	}
}


/* moveiSwiper--arrows */
.moveiSwiper--arrowsWrap{
	margin-top: min(calc(32 / var(--vw-min) * 100vw), 32px);
}
.moveiSwiper--arrows{
	display: flex;
	align-items: center;
	position: relative;
	width: 100%;
	padding: 0 6.6667%;
}
.swiperNextPrev{
	min-width: calc(min(calc(48 / var(--vw-min) * 100vw), 48px) + 80px);
	display: block;
	position: relative;
	text-align: unset;
}
.swiperNextPrev.-r{
	text-align: right;
}


.swiperPaginations,
.swiperPaginations.swiper-pagination-bullets.swiper-pagination-horizontal{
	height: 8px;
	display: flex;
	justify-content: center;
	margin: auto;
}

.swiperPagination,
.swiperPaginations.swiper-pagination-horizontal.swiper-pagination-bullets .swiperPagination.swiper-pagination-bullet{
	display: block;
	cursor: pointer;
	pointer-events: auto;
	width: 8px;
	height: 8px;
	margin: 0 6px;
	background-color: rgba(255,255,255,50%);
	border: unset;
	border-radius: 50%;
	opacity: 1;
	transition: .3s ease;
}
@media screen and (honer:hover) and (pointer: fine){
	.swiperPagination:hover,
	.swiperPaginations.swiper-pagination-horizontal.swiper-pagination-bullets .swiperPagination.swiper-pagination-bullet:hover{
		border-color: var(--color-red);
	}
}
.swiperPaginations.swiper-pagination-horizontal.swiper-pagination-bullets .swiperPagination.swiper-pagination-bullet-active{
	background-color: var(--color-red);
}

@media screen and (max-width:768px){
	.moveiSwiper--arrowsWrap{
		margin-top: calc(32 / var(--vw-min) * 100vw);
	}
	.moveiSwiper--arrows{
		padding: 0 5.3334%;
	}
	.swiperNextPrev{
		min-width: calc(160 / var(--vw-min) * 100vw);
	}
	.swiperPaginations{
		opacity: 0;
	}
	.moveiSwiper--arrowsWrap .swiperPagination,
	.moveiSwiper--arrowsWrap .swiperPaginations.swiper-pagination-horizontal.swiper-pagination-bullets .swiperPagination.swiper-pagination-bullet{
		pointer-events: none;
	}
}


/* SCROLL ANIMATION */
.movieSwiper{
	opacity: 0;
	transform: translateY(12.5%);
	transition: opacity .3s ease .3s, transform .4s ease .3s;
}
.is-ani .movieSwiper{
	opacity: 1;
	transform: translateY(0%);
}
.movie__contArea{
	opacity: 0;
	transition: opacity .3s ease .4s;
}
.is-ani .movie__contArea{
	opacity: 1;
}



/*-----------------------------------------------
 * INTRODUCTION
-------------------------------------------------*/
#introduction{
	padding-top: calc(152 / var(--vw-min) * 100vw);
	padding-bottom: calc(80 / var(--vw-min) * 100vw);
	position: relative;
	z-index: 1;
}

.introduction__cont{
	width: 100%;
	position: relative;
	z-index: 1;
}

@media screen and (max-width:768px){
	#introduction{
		padding-top: calc(80 / var(--vw-min) * 100vw);
		padding-bottom: calc(40 / var(--vw-min) * 100vw);
	}
}

/**
* introduction__contArea
**/
.introduction__contArea{
	width: 100%;
	max-width: calc(1200px * var(--max-percent));
	position: relative;
	margin: 0 auto;
	padding-top: calc((48 / var(--vw-min) * 100vw) + min(calc(64 / var(--vw-min) * 100vw), 64px));
	padding-bottom: min(calc(120 / var(--vw-min) * 100vw), 120px);
	z-index: 1;
}
#introduction .contTitle__en{
	color: #FFF;
}
.introduction__contAreaIn{
	position: relative;
	width: 100%;
	min-height: min(calc(588 / var(--vw-min) * 100vw), 588px);
	text-align: center;
	padding-top: min(calc(120 / var(--vw-min) * 100vw), 120px);
}

.introduction__catch{
	width: min(calc(1040 / var(--vw-min) * 100vw), 1040px);
	margin: 0 auto;
}
.introduction__catch img{
	width: 100%;
}
.introduction__text{
	font-family: var(--font-serif);
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	font-weight: 700;
	line-height: 2.4;
	padding-top: min(calc(64 / var(--vw-min) * 100vw), 64px);
}
@media screen and (min-width:769px){
	.introduction__text{
		letter-spacing: 0.15em;
	}
}

.introduction__subCatch{
	font-family: var(--font-serif);
	font-size: min(calc(38 / var(--vw-min) * 100vw), 38px);
	font-weight: 900;
	letter-spacing: 0.2em;
	line-height: 1.26316;
	padding-top: min(calc(72 / var(--vw-min) * 100vw), 72px);
	color: var(--color-red);
	text-shadow: 0 0 min(calc(20 / var(--vw-min) * 100vw), 20px) rgba(255, 255, 255, 100%), 0 0 min(calc(20 / var(--vw-min) * 100vw), 20px) rgba(255, 255, 255, 100%), 0 0 min(calc(12 / var(--vw-min) * 100vw), 12px) #FFF, 0 0 min(calc(6 / var(--vw-min) * 100vw), 6px) #FFF, 0 0 min(calc(6 / var(--vw-min) * 100vw), 6px) #FFF;
}

@media screen and (max-width:768px){
	.introduction__contArea{
		max-width: 100%;
		padding-top: calc(312 / var(--vw-min) * 100vw);
		padding-bottom: calc(192 / var(--vw-min) * 100vw);
	}
	#introduction .contTitle__ja{
		display: none;
	}
	#introduction .contTitle__en{
		position: relative;
		text-align: center;
	}
	.introduction__contAreaIn{
		min-height: unset;
		padding-top: calc(104 / var(--vw-min) * 100vw);
	}
	.introduction__catch{
		width: calc(688 / var(--vw-min) * 100vw);
	}
	.introduction__text{
		font-size: calc(26 / var(--vw-min) * 100vw);
		padding-top: calc(80 / var(--vw-min) * 100vw);
	}
	.introduction__subCatch{
		font-size: calc(30 / var(--vw-min) * 100vw);
		padding-top: calc(88 / var(--vw-min) * 100vw);
	}
}




/**
* introduction__contBg
**/
.introduction__contBg{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.introduction__contBgIn{
	position: sticky;
	top: 0;
	width: 100%;
	height: min(100vh, 100%);
	overflow: hidden;
	padding-top: calc(48 / var(--vw-min) * 100vw);
}
.introduction__contBgInCont{
	position: relative;
	width: 100%;
	height: 100%;
}
.introBg__redCircle{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: min(calc(600 / var(--vw-min) * 100vw), 600px);
	height: min(calc(588 / var(--vw-min) * 100vw), 588px);
	max-height: calc(100vh - (48 / var(--vw-min) * 100vw));
	background: url(../img/top/intro_bg.png) no-repeat center / contain;
}
.introBg__sideText{
	position: absolute;
	top: 0;
	display: flex;
	writing-mode: vertical-rl;
	line-height: 1;
	font-family: var(--font-serif);
	font-size: min(calc(200 / var(--vw-min) * 100vw), 200px);
	font-weight: 900;
	width: min(calc(120 / var(--vw-min) * 100vw), 120px);
	overflow: hidden;
	opacity: 5%;
	text-wrap: nowrap;
}
.introBg__sideText.-l{
	left: 0;
	align-items: flex-start;
}
.introBg__sideText.-r{
	right: 0;
	align-items: flex-end;
}

@media screen and (max-width:768px){
	.introduction__contBgIn{
		padding-top: calc(186 / var(--vw-min) * 100vw);
	}
	.introBg__redCircle{
		width: calc(600 / var(--vw-min) * 100vw);
		height: calc(588 / var(--vw-min) * 100vw);
		max-height: calc(100vh - (186 / var(--vw-min) * 100vw));
	}
	.introBg__sideText{
		font-size: calc(200 / var(--vw-min) * 100vw);
		width: calc(120 / var(--vw-min) * 100vw);
	}
}



/**
* introduction__bg
**/
.introduction__bg{
	position: absolute;
	bottom: calc(40 / var(--vw-min) * 100vw);
	left: 0;
	right: 0;
	top: calc(158 / var(--vw-min) * 100vw);
	pointer-events: none;
}
.introduction__bg--deg{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #000;
	transform: skewY(3deg);
	transform-origin: center top;
	overflow: hidden;
}
.introduction__bg--deg:before{
	content: '';
	position: absolute;
	top: calc(-40 / var(--vw-min) * 100vw);
	left: 0;
	bottom: calc(-40 / var(--vw-min) * 100vw);
	right: 0;
	transform: skewY(-3deg);
	transform-origin: center top;
	background: url(../img/common/bg/bg_black_noise.jpg) repeat;
}

@media screen and (max-width:768px){
	.introduction__bg{
		bottom: calc(20 / var(--vw-min) * 100vw);
		top: calc(188 / var(--vw-min) * 100vw);
	}
	.introduction__bg--deg:before{
		top: calc(-20 / var(--vw-min) * 100vw);
		bottom: calc(-20 / var(--vw-min) * 100vw);
	}
}



.introduction__bg.-z1{
	z-index: 1;
}

.introBg__img{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
}
.introBg__img img{
	max-width: 100%;
	object-fit: contain;
	width: min(calc(350 / var(--vw-min) * 100vw), 350px);
	height: min(calc(268 / var(--vw-min) * 100vw), 268px);
	filter: drop-shadow(0px 16px 20px rgba(0, 0, 0, 0.2)) drop-shadow(0px 16px 20px rgba(0, 0, 0, 0.2));
}
.introBg__img.-t{
	width: calc(350 / var(--vw-min) * 100vw);
	height: calc(268 / var(--vw-min) * 100vw);
	top: calc(-136 / var(--vw-min) * 100vw);
	left: calc(40 / var(--vw-min) * 100vw);
}
.introBg__img.-b{
	width: calc(350 / var(--vw-min) * 100vw);
	height: calc(268 / var(--vw-min) * 100vw);
	bottom: calc(-160 / var(--vw-min) * 100vw);
	right: calc(40 / var(--vw-min) * 100vw);
}

.introBg__shibuki{
	position: absolute;
	display: flex;
	align-items: center;
}
.introBg__shibuki--img{
	background-repeat: no-repeat;
	background-image: url(../img/top/intro_shibuki.png);
	background-size: cover;
}
.introBg__shibuki.-r{
	top: calc(-230 / var(--vw-min) * 100vw);
	right: 0;
	width: calc(286 / var(--vw-min) * 100vw);
	height: calc(544 / var(--vw-min) * 100vw);
	justify-content: flex-end;
	overflow: hidden;
}
.introBg__shibuki.-r .introBg__shibuki--img{
	width: min(calc(286 / var(--vw-min) * 100vw), 286px);
	height: min(calc(544 / var(--vw-min) * 100vw), 544px);
}

.introBg__shibuki.-l{
	bottom: calc(-232 / var(--vw-min) * 100vw);
	left: 0;
	width: calc(324 / var(--vw-min) * 100vw);
	height: calc(544 / var(--vw-min) * 100vw);
	justify-content: flex-start;
}
.introBg__shibuki.-l .introBg__shibuki--img{
	width: min(calc(324 / var(--vw-min) * 100vw), 324px);
	height: min(calc(544 / var(--vw-min) * 100vw), 544px);
	background-position: right center;
}

@media screen and (max-width:768px){
	.introBg__img img{
		width: calc(350 / var(--vw-min) * 100vw);
		height: calc(268 / var(--vw-min) * 100vw);
	}
	.introBg__img.-t{
		top: calc(-140 / var(--vw-min) * 100vw);
		left: 0;
	}
	.introBg__img.-b{
		right: 0;
		bottom: calc(-180 / var(--vw-min) * 100vw);
	}

	.introBg__shibuki.-r .introBg__shibuki--img{
		width: calc(286 / var(--vw-min) * 100vw);
		height: calc(544 / var(--vw-min) * 100vw);
	}
	.introBg__shibuki.-l .introBg__shibuki--img{
		width: calc(324 / var(--vw-min) * 100vw);
		height: calc(544 / var(--vw-min) * 100vw);
	}
}


/** SCROLL **/
.introBg__shibuki--img{
	opacity: 0;
	filter: blur(2px);
	transform: scale(175%);
	transition: opacity .2s ease, transform .35s ease, filter .3s ease;
}
.introBg__shibuki.is-ani .introBg__shibuki--img{
	opacity: 1;
	filter: blur(0px);
	transform: scale(100%);
}


.introBg__redCircle{
	opacity: 0;
	transform: scale(10%) rotate(270deg);
	transition: opacity .3s ease, transform .8s cubic-bezier(.53,.29,.33,1.3);
}
.introduction__contBg.is-ani .introBg__redCircle{
	opacity: 1;
	transform: scale(100%) rotate(0deg);
}

.introduction__catch,
.introduction__subCatch{
	opacity: 0;
	transform: scale(20%);
	transition: opacity .3s ease .45s, transform .4s cubic-bezier(.45,.31,.42,1) .45s;
}
.introduction__contArea.is-ani .introduction__catch,
.introduction__contArea.is-ani .introduction__subCatch{
	opacity: 1;
	transform: scale(100%);
}

.introduction__text{
	opacity: 0;
	transform: translateY(25%);
	transition: opacity .3s ease, transform .4s cubic-bezier(.45,.31,.42,1);
}
.introduction__contArea.is-ani .introduction__text{
	opacity: 1;
	transform: translateY(0%);
}
.introduction__contArea.is-ani .introduction__text:nth-of-type(2){
	transition-delay: .6s;
}
.introduction__contArea.is-ani .introduction__text:nth-of-type(3){
	transition-delay: .7s;
}
.introduction__contArea.is-ani .introduction__subCatch{
	transition-delay: .75s;
}


/*-----------------------------------------------
 * NEWS
-------------------------------------------------*/
#news{
	padding-top: calc(80 / var(--vw-min) * 100vw);
	padding-bottom: calc(80 / var(--vw-min) * 100vw);
	position: relative;
}
#news .contTitle__ja,
#news .contTitle__en{
	color: #000;
}
#news .contTitle__ja{
	opacity: 20%;
}

@media screen and (max-width:768px){
	#news{
		padding-top: calc(120 / var(--vw-min) * 100vw);
		padding-bottom: calc(80 / var(--vw-min) * 100vw);
	}
}



/**
* news__cont
**/
.news__cont{
	position: relative;
	z-index: 1;
	padding-top: min(calc(156 / var(--vw-min) * 100vw), 156px);
}
.news__contArea{
	width: 100%;
	max-width: calc(1200px * var(--max-percent));
	position: relative;
	margin: 0 auto;
	z-index: 1;
}

.news__moreLinkWrap{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
    height: min(calc(130 / var(--vw-min) * 100vw), 130px);
    display: flex;
    align-items: center;
}
.news__linkMore{
	width: 100%;
	text-align: right;
	padding-right: 6.6667%;
}
.news__linkMore--link{
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	font-family: var(--font-en);
	font-weight: 900;
	line-height: 1;
	color: #000;
}
.news__linkMore--text{
	display: inline-block;
	font-size: min(calc(28 / var(--vw-min) * 100vw), 28px);
	padding-right: min(calc(12 / var(--vw-min) * 100vw), 12px);
}


.news__contAreaIn{
	width: 100%;
	margin-top: min(calc(64 / var(--vw-min) * 100vw), 64px);
	padding-left: 6.6667%;
	padding-right: 6.6667%;
}

@media screen and (max-width:768px){
	.news__cont{
		padding-top: calc(88 / var(--vw-min) * 100vw);
	}
	.news__contArea{
		max-width: 100%;
		display: flex;
		flex-direction: column;
	}
	.news__moreLinkWrap{
		order: 1;
		position: relative;
		height: auto;
		margin-top: calc(64 / var(--vw-min) * 100vw);
	}
	.news__linkMore{
		padding-right: unset;
		padding-left: calc(40 / var(--vw-min) * 100vw);
		text-align: center;
	}
	.news__linkMore--text{
		font-size: calc(40 / var(--vw-min) * 100vw);
		padding-right: calc(20 / var(--vw-min) * 100vw);
	}

	.news__contAreaIn{
		margin-top: calc(48 / var(--vw-min) * 100vw);
		padding-left: 5.3334%;
		padding-right: 5.3334%;
	}
}



/* comListBoxes */
.comListBoxes{
	width: 100%;
	max-width: 1040px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: min(calc(26 / var(--vw-min) * 100vw), 26px);
}
.comListBox{
	width: 100%;
}
.comListBox__link{
	display: block;
	width: 100%;
	height: 100%;
	padding: 8.3334%;/* 20 */
	text-decoration: none;
	position: relative;
	background: #000 url(../img/common/bg/bg_black_noise.jpg) repeat;
	font-weight: 700;
	color: #FFF;
}
.comListBox__linkCont{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
}
.comListBox__link--thumb{
	width: 100%;
	padding-top: 70%;
	position: relative;
}
.comListBox__link--thumb img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.comListBox__link--cat{
	line-height: 1;
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
	color: #000;
	margin-top: 1em;
}
.comListBox__link--cat > span{
	display: inline-block;
	padding: 0.5em;
	background-color: var(--color-red);
}
.comListBox__link--title{
	line-height: 1.625;
	margin-top: min(calc(10 / var(--vw-min) * 100vw), 10px);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.comListBox__link--time{
	display: block;
	text-align: right;
	margin-top: auto;
	padding-top: min(calc(26 / var(--vw-min) * 100vw), 26px);
	font-family: var(--font-en);
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	color: var(--color-red);
	line-height: 1;
}

@media screen and (max-width:768px){
	.comListBoxes{
		max-width: 100%;
		grid-template-columns: repeat(2, 1fr);
		gap: calc(40 / var(--vw-min) * 100vw);
	}
	.comListBox__link{
		padding: calc(20 / var(--vw-min) * 100vw);
	}
	.comListBox__link--cat{
		font-size: calc(20 / var(--vw-min) * 100vw);
		margin-top: calc(22 / var(--vw-min) * 100vw);
	}
	.comListBox__link--title{
		margin-top: calc(16 / var(--vw-min) * 100vw);
	}
	.comListBox__link--time{
		font-size: calc(24 / var(--vw-min) * 100vw);
		padding-top: calc(32 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) and (pointer: fine){
	.comListBox__link:before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: linear-gradient(rgba(218,0,0,30%), rgba(218,0,0,30%)) right bottom / 0 100% no-repeat;
		transition: background-size 0.4s;
	}
	.comListBox__link:hover::before{
		background-size: 100% 100%;
		background-position: left bottom;
	}
}


/**
* news__contBg
**/
.news__contBg{
	position: absolute;
	top: calc(-40 / var(--vw-min) * 100vw);
	left: 0;
	bottom: 0;
	right: 0;
}
.news__bg--deg{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--color-red);
	transform: skewY(3deg);
	transform-origin: center top;
	overflow: hidden;
}
.news__bg--degIn{
	position: absolute;
	top: calc(-40 / var(--vw-min) * 100vw);
	left: 0;
	bottom: calc(-40 / var(--vw-min) * 100vw);
	right: 0;
	transform: skewY(-3deg);
	opacity: 50%;
	mix-blend-mode: multiply;
}
.news__bg--degIn .contBg__fixed--bgImg{
	background-image: url(../img/common/bg/tex_bg1.jpg);
}
@supports (background-image: url(../img/common/bg/tex_bg1.webp)){
	.news__bg--degIn .contBg__fixed--bgImg{
		background-image:url(../img/common/bg/tex_bg1.webp);
	}
}

.news__bg--decodeg{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	background-color: var(--color-red);
	transform: skewY(3deg);
	transform-origin: center top;
	overflow: hidden;
}
.news__bg--decodeg:before{
	content: '';
	position: absolute;
	top: calc(-40 / var(--vw-min) * 100vw);
	left: 0;
	bottom: calc(-40 / var(--vw-min) * 100vw);
	right: 0;
	transform: skewY(-3deg);
	transform-origin: center top;
	background: url(../img/common/bg/bg_red.jpg) repeat;
}

@media screen and (max-width:768px){
	.news__contBg{
		top: calc(-20 / var(--vw-min) * 100vw);
	}
	.news__bg--degIn{
		top: calc(-20 / var(--vw-min) * 100vw);
		bottom: calc(-20 / var(--vw-min) * 100vw);
	}
	.news__bg--decodeg{
		height: calc(80 / var(--vw-min) * 100vw);
	}
	.news__bg--decodeg:before{
		top: calc(-20 / var(--vw-min) * 100vw);
		bottom: calc(-20 / var(--vw-min) * 100vw);
	}
}


/* SCROLL ANIMATION */
#news .contTitle__ja{
	opacity: 100%;
}
#news .is-ani .contTitle__ja{
	opacity: 10%;
}

.news__moreLinkWrap{
	opacity: 0;
	transition: opacity .3s ease .4s;
}
.news__cont.is-ani .news__moreLinkWrap{
	opacity: 1;
}

.comListBox{
	opacity: 0;
	transform: translateY(16%);
	transition: opacity .3s ease .4s, transform .5s cubic-bezier(.47,.26,.44,1) .4s;
}

.news__cont.is-ani .comListBox{
	opacity: 1;
	transform: translateY(0%);
}
@media screen and (min-width:769px){
	.news__cont.is-ani .comListBox:nth-of-type(4n - 3){
		transition-delay: .4s;
	}
	.news__cont.is-ani .comListBox:nth-of-type(4n - 2){
		transition-delay: .45s;
	}
	.news__cont.is-ani .comListBox:nth-of-type(4n - 1){
		transition-delay: .5s;
	}
	.news__cont.is-ani .comListBox:nth-of-type(4n){
		transition-delay: .55s;
	}
}
@media screen and (max-width:768px){
	.news__cont.is-ani .comListBox:nth-of-type(2n - 1){
		transition-delay: .4s;
	}
	.news__cont.is-ani .comListBox:nth-of-type(2n){
		transition-delay: .45s;
	}
}


/*-----------------------------------------------
 * Loading
-------------------------------------------------*/
.loading {
	display: flex;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10002;
}
/* @media screen and (max-width:767px){
	.loading {
		flex-direction: column;
	}
} */
.loading__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}
.loading__logo img {
	width: min(calc(500 / var(--vw-min) * 100vw), 500px);
}
.loading:before,
.loading:after {
	content: "";
	background-color: #000;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.loading:after {
	background-color: var(--color-red);
}
.loading__bg {
	display: flex;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 2;
}
.loading__bg:before {
	content: "";
	background-color: var(--color-black);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	transform: scale(0, 1);
	transform-origin: left top;
}
.loading__bg:after {
	content: "";
	background-color: var(--color-black);
	width: 2px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	transform: scale(1, 0);
	transform-origin: left bottom;
}
.loading__bg:nth-of-type(1):after{
	display: none;
}
/* @media screen and (max-width:767px){
	.loading__bg:after {
		width: 100%;
		height: 2px;
		transform: scale(0, 1);
		transform-origin: left top;
	}
} */

/* animation */
body.--is-load-ani .loading .loading__bg:after {
	animation-name: lineAni;
	animation-duration: .8s;
	animation-timing-function: var(--easing-outquart);
	animation-fill-mode: forwards;
}
body.--is-load-ani .loading .loading__bg:before {
	animation-name: bgAni;
	animation-duration: 1.2s;
	animation-timing-function: var(--easing-outquart);
	animation-fill-mode: forwards;
	animation-delay: .4s;
}
@keyframes lineAni {
	0%{
		transform: scale(1, 0);
		transform-origin: left top;
	}
	50% {
		transform-origin: left top;
		transform: scale(1, 1);
	}
	50.01%{
		transform-origin: left bottom;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: left bottom;
	}
}
/* @media screen and (max-width:767px){
	@keyframes lineAni {
		0%{
			transform: scale(0, 1);
			transform-origin: left top;
		}
		50% {
			transform-origin: left top;
			transform: scale(1, 1);
		}
		50.01%{
			transform-origin: right top;
		}
		100% {
			transform: scale(0, 1);
			transform-origin: right top;
		}
	}
} */

@media screen and (max-width:768px){
	body.--is-load-ani .loading .loading__bg:nth-of-type(2)::after {
		animation-delay: 0s;
		animation-duration: .8s;
	}
	body.--is-load-ani .loading .loading__bg:nth-of-type(3)::after {
		animation-delay: 0.05s;
		animation-duration: .75s;
	}
	body.--is-load-ani .loading .loading__bg:nth-of-type(4)::after {
		animation-delay: 0.1s;
		animation-duration: .6s;
	}
	body.--is-load-ani .loading .loading__bg:nth-of-type(5)::after {
		animation-delay: 0.15s;
		animation-duration: .55s;
	}
}


@keyframes bgAni {
	0%{
		transform: scale(0, 1);
		transform-origin: left top;
	}
	30% {
		transform-origin: left top;
		transform: scale(1, 1);
	}
	30.01%{
		transform-origin: right top;
		transform: scale(1, 1);
	}
	70%{
		transform: scale(1, 1);
	}
	100% {
		transform-origin: right top;
		transform: scale(0, 1);
	}
}
.loading:before,
.loading:after {
	transition: opacity .3s ease;
}
body.--is-load-ani .loading:before,
body.--is-load-ani .loading:after {
	transition-delay: 0.6s;
	opacity: 0;
}
.loading__logo img {
	transition: opacity .3s ease;
}
body.--is-load-ani .loading .loading__logo img {
	transition-delay: 0.4s;
	opacity: 0;
}