@charset "utf-8";
.kv{
	padding-left:80px;
	display:flex;
	position:relative;
	margin-bottom: 80px;
}
@media screen and (max-width:768px){
	.kv{
		padding:6.4vw 6.4vw 12.8vw;
		display:block;
		/* height:159.7333vw; */
		height: min(166.1334vw, 1246px);
		margin-bottom: 0;
	}
}
.kv__img{
	flex:1;
	position:relative;
	width:calc(100% - 80px);
}
@media screen and (max-width:768px){
	.kv__img{
		width:100%;
	}
}
.kv__imgsrc{
	width:100%;
	height:auto;
}
.kv__infixed{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index: 2;
	pointer-events: none;
}
.kv__infixedin{
	position:sticky;
	left:0;
	top:0;
	width:100%;
	height:100vh;

}
.kv__infixedin:before{
	content:'';
	position:absolute;
	left:calc(-80px + 8px);
	bottom:8px;
	width:152px;
	height:152px;
	background:url(../img/common/page_deco.svg) no-repeat center center / contain;
	transform:rotate(180deg);
}
.kv__imgList .kv__infixedin:before{
	content: unset;
}
@media screen and (max-width:768px){
	.kv__infixedin{
		position:absolute;
		left:-6.4vw;
		top:-6.4vw;
		right:-6.4vw;
		width:unset;
		height:159.7333vw
	}
	.kv__infixedin:before{
		left:1vw;
		bottom:unset;
		top:1vw;
		width:20.2666vw;
		height:20.2666vw;
		transform:rotate(-90deg);
	}
	.kv__logo{
		position:absolute;
		top:114.8vw;
		left:12.8vw;
		right:12.8vw;
		height:22.1333vw;
		background:url(../img/common/logo.svg) no-repeat center center / contain;
		filter:drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF);
	}
}
.kv__catchWrap{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	max-height: 100vh;
}
.kv__catch{
	position:absolute;
	right:40px;
	top:80px;
	bottom:80px;
	width: 5%;
	background:url(../img/common/catch.svg) no-repeat right top / contain;
	filter:drop-shadow(0px 0px 6px #131b42) drop-shadow(0px 0px 6px #131b42) drop-shadow(0px 0px 6px #131b42);
	will-change:filter;
}
.kv__catch.-c2{
	top: 0;
	right: 0;
	left: 0;
	width: 62.5vh; /* 400px */
	max-width: 55.5556%; /* 400px */
	padding-top: 5%;
	margin: 40px auto 0;
	bottom: unset;
	background-image: url(../img/common/catch2.svg);
	background-position: center top;
}
@media screen and (max-width:768px){
	.kv__catch{
		position:absolute;
		right:3.2vw;
		top:6.4vw;
		bottom:unset;
		height:86.6666vw;
		left:3.2vw;
		background:url(../img/common/catch.svg) no-repeat left top / contain;
		filter:drop-shadow(0px 0px 3px #131b42) drop-shadow(0px 0px 3px #131b42);
	}
	.kv__catch.-c2{
		width: auto;
		margin-top: unset;
		margin-bottom: 24.4649%;
		background-position: center bottom;
		height: auto;
		bottom: 0;
		left: 8vw;
		right: 8vw;
	}
}
.kv__startdate{
	position:absolute;
	bottom:40px;
	left:0;
	right:0;
	padding-top:10%;
	background:url(../img/common/startdate2.svg) no-repeat center center / contain;
	filter:drop-shadow(0px 0px 6px #131b42) drop-shadow(0px 0px 6px #131b42) drop-shadow(0px 0px 6px #131b42);
	will-change:filter;
}
@media screen and (max-width:768px){
	.kv__startdate{
		bottom:unset;
		top:min(139.7334vw, 1048px);
		padding-top:10.8%;
		background:#000;
		-webkit-mask:url(../img/common/startdate2.svg) no-repeat center center / contain;
		mask:url(../img/common/startdate2.svg) no-repeat center center / contain;
		filter:unset;
	}
}
.kv__controller{
	left:0;
	top:0;
	position:sticky;
	height:100vh;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	align-items:center;
	padding-bottom:40px;
	width:80px;
	z-index: 2;
}
.kv__controller:before{
	content:'';
	position:absolute;
	width:152px;
	height:152px;
	top:8px;
	right:8px;
	background:url(../img/common/page_deco.svg) no-repeat center center / contain;
}
@media screen and (max-width:768px){
	.kv__controller{
		position:absolute;
		left:0;
		right:0;
		top:unset;
		bottom:0;
		height:0;
		display:block;
		width:unset;
		padding:0;
		pointer-events:none;
	}
	.kv__controller:before{
		width:20.2666vw;
		height:20.2666vw;
		top:unset;
		bottom:1vw;
		left:1vw;
		background:url(../img/common/page_deco.svg) no-repeat center center / contain;
		transform:rotate(180deg);
	}
	.kv__controller:after{
		content:'';
		position:absolute;
		width:20.2666vw;
		height:20.2666vw;
		top:unset;
		bottom:1vw;
		right:1vw;
		background:url(../img/common/page_deco.svg) no-repeat center center / contain;
		transform:rotate(90deg);
	}
}
.kv__scroll{
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	align-items:center;
	text-decoration:none;
	font-weight:500;
}
.kv__scrollText{
	writing-mode:vertical-rl;
	margin-bottom:18px;
}
.kv__scrollLine{
	position:relative;
	width:7px;
	height:160px;
}
.kv__scrollLine:before{
	content:'';
	position:absolute;
	left:0;
	width:7px;
	height:7px;
	top:0;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	transform:rotate(90deg);
	z-index:10;
}
.kv__scrollLine:after{
	content:'';
	position:absolute;
	left:0;
	width:7px;
	height:7px;
	bottom:0;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	transform:rotate(90deg);
	z-index:10;
}
.kv__scrollLineBg{
	width:1px;
	height:160px;
	background:#000;
	margin:0 auto;
	position:relative;
}
.kv__scrollLineBg:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:1px;
	height:0;
	background:#ff007d;
	animation:scroller 2s ease infinite;
}
@media screen and (max-width:768px){
	.kv__scroll{
		display:none;
	}
}

/* --p_kvh */
@media screen and (min-width:768px){
	#kv.--p_kvh .kv__infixedin{
		height: 100%;
	}
	#kv.--p_kvh .kv__controller{
		height: auto;
	}
}

.movie{
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.movie__inner{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	overflow:hidden;
}
.movie__inner:after{
	pointer-events:none;
	content:'';
	position:absolute;
	left:7px;
	right:7px;
	top:7px;
	bottom:7px;
	background:url(../img/common/movie_frame.png) no-repeat center center / contain;
}
.movie__inner a{
	display:flex;
	background:#000;
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-position:center center;
	background-size:cover;
	transition:all 1.5s ease;
}
.movie__inner a:hover{
	transform:scale(1.1);
}
.movie__inner a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:linear-gradient(135deg, #ff007d 0%,#a800ff 25%,#00bccb 50%,#a800ff 75%,#ff007d 100%);
	background-size:200% 200%;
	opacity:0.7;
	transition:all 1.5s ease;
}
.movie__inner a:hover:before{
	opacity:0;
}
.play{
	position:absolute;
	left:50%;
	top:50%;
	width:80px;
	height:80px;
	margin-top:-40px;
	margin-left:-40px;
	background:url(../img/common/icon_play.svg) no-repeat center center / contain;
}
@media screen and (max-width:768px){
	.play{
		width:12.8vw;
		height:12.8vw;
		margin-top:-6.4vw;
		margin-left:-6.4vw;
	}
}
.twidget{
	width:722px;
	height:320px;
	margin:80px auto 40px;
	background:url(../img/common/twidget_frame.png) no-repeat center center / contain;
}
@media screen and (max-width:768px){
	.twidget{
		width:100%;
		height:60.8vw;
		margin:12.8vw auto 6.4vw;
		background:url(../img/common/twidget_frame-s.png) no-repeat center center / contain;
	}
}
.twidget__inner{
	padding:20px;
	height:320px;
}
@media screen and (max-width:768px){
	.twidget__inner{
		padding:10px;
		height:60.8vw;
	}
}
.twidget__box{
	overflow:auto;
	scrollbar-width:none;
	height:280px;
}
.twidget__box::-webkit-scrollbar{
	display:none;
}
@media screen and (max-width:768px){
	.twidget__box{
		height:calc(60.8vw - 20px);
	}
}
.introduction{
	padding:80px 0 0;
	position:relative;
}
@media  screen and (max-width:768px){
	.introduction{
		padding:0;
		position:relative;
	}
}
.introduction .section__content{
	margin-top:-120px;
	padding-top:110px;
	padding-bottom:110px;
	overflow: hidden;
	position: relative;
}
.introduction .section__content-bg{
	background:url(../img/top/introduction_bg.jpg) no-repeat center center / cover;
	position: absolute;
	left:0;
	top:-100%;
	right:0;
	bottom:0;
}
@media screen and (max-width:768px){
	.introduction .section__content{
		margin-top:-18.4vw;
		padding-top:14.6666vw;
		padding-bottom:6.4vw;
	}
	.introduction .section__content-bg{
		background:url(../img/top/introduction_bg-s.jpg) no-repeat center center / cover;
	}
	.introduction .section__title-ja{
		margin-left:-20vw;
	}
}
.introduction__text{
	position: relative;
	z-index: 50;
	line-height:3;
	font-size:20px;
	letter-spacing:0.05em;
	filter:drop-shadow(0px 0px 4px rgba(0,0,0,.4)) drop-shadow(0px 0px 4px rgba(0,0,0,.4)) drop-shadow(0px 0px 4px rgba(0,0,0,.4)) ;
	color:#FFF;
	width:720px;
	margin:0 auto 2em;
}
.introduction__text strong{
	color:#00bccb;
}
@media screen and (max-width:768px){
	.introduction__text{
		font-size:3.2vw;
		filter:drop-shadow(0px 0px 2px rgba(0,0,0,.4)) drop-shadow(0px 0px 2px rgba(0,0,0,.4));
		color:#FFF;
		width:87.2vw;
		margin:0 auto 2em;
	}
}
.staffcast{
	padding:160px 0 80px;
	position:relative;
}
@media screen and (max-width:768px){
	.staffcast{
		padding:12.8vw 0 6.4vw;
		position:relative;
	}
}
.staff__lists{
	display:flex;
	flex-wrap:wrap;
	max-width:940px;
	margin:0 auto 70px;
}
.staff__list{
	min-width:50%;
	display:flex;
	padding:15px 30px 15px 0;
}
.staff__list dt{
	color:#00bccb;
	font-size:16px;
	margin-right:16px;
	line-height:2.4;
}
.staff__list dd{
	font-size:20px;
	line-height:1.8;
	flex:1;
}
@media screen and (min-width:769px){
	.staff__list.p-w100{
		width: 100%;
	}
}
@media screen and (max-width:768px){
	.staff__lists{
		display:block;
		max-width:87.2vw;
		margin:0 auto 9.6vw;
	}
	.staff__list{
		width:100%;
		display:flex;
		padding:1.2vw 0;
	}
	.staff__list dt{
		font-size:2.7vw;
		margin-right:3vw;
		line-height:2.3;
	}
	.staff__list dd{
		font-size:3.2vw;
	}
}
.cast__lists{
	max-width:960px;
	margin:0 auto;
}
.cast__list{
	display: flex;
	padding: 15px 0;
}
.cast__list dt{
	font-size:16px;
	display:block;
	margin-right:16px;
	line-height:2.4;
	color:#00bccb;
	flex-shrink: 0;
}
.cast__list dd{
	display: flex;
	flex-wrap: wrap;
	line-height:1.8;
	font-size:20px;
}
@media screen and (max-width:768px){
	.cast__lists{
		max-width:87.2vw;
	}
	.cast__list{
		display:flex;
		padding:1.2vw 0 1.6vw;

	}
	.cast__list dt{
		font-size:3vw;
		margin-right:3vw;
		line-height:2;
		max-width: min(57.3334vw, 430px);
	}
	.cast__list dd{
		line-height:1.8;
		font-size:3.2vw;
	}
}
.cast__btns{
	display:flex;
}
.cast__btns li{
	width:240px;
	margin-right:40px;
}
.cast__btn{
	padding-top: 2px;
	padding-left: 0.75em;
}
@media screen and (max-width:768px){
	.cast__btns{
		display:block;
	}
	.cast__btns li{
		width:61.6vw;
		margin:0 auto 3.2vw;
	}
	.cast__btn{
		width: 100%;
		padding-left: 0;
	}
}
.books{
	position:relative;
	padding:80px 0;
	overflow:hidden;
}
@media screen and (max-width:768px){
	.books{
		position:relative;
		padding:6.4vw 0;
		overflow:hidden;
	}
}
.books__text{
	font-size:16px;
	line-height:2;
	margin-bottom:30px;
}
@media screen and (max-width:768px){
	.books__text{
		font-size:3.2vw;
		margin-bottom:3.2vw;
	}
}
.books__text strong{
	color:#ff007d;
}
.books__swiper{
	overflow:unset  !important;
	margin-bottom:80px
}
@media screen and (max-width:768px){
	.books__swiper{
		overflow:unset  !important;
		margin-bottom:12.8vw
	}
}
.books__swiper-slide{
	width:224px;
	margin-right:24px;
}
.books__swiper-slide a{
	display:block;
	text-decoration:none;
}
@media screen and (max-width:768px){
	.books__swiper-slide{
		width:40.4vw;
		margin-right:3.2vw;
	}
}
.books__thumb{
	overflow:hidden;
	margin-bottom:10px;
}
.books__thumb img{
	display:block;
	width:100%;
	height:auto;
	transition:all 1s ease;
}
.books__swiper-slide a:hover .books__thumb img{
	transform:scale(1.1);
}
@media screen and (max-width:768px){
	.books__title{
		font-size: var(--sp-size-24);
	}
}
.swiper-scrollbarCont{
	margin-top:40px;
	padding-left:90px;
	padding-right:90px;
}
@media screen and (max-width:768px){
	.swiper-scrollbarCont{
	margin-top:6.4vw;
	padding-left:19.2vw;
	padding-right:19.2vw;
	}
}
.swiper-scrollbarWrap{
	touch-action:manipulation;
	height:4px;
	position:relative;
}
.swiper-scrollbarWrap:before{
	content:'';
	height:100%;
	margin:auto;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
}
.swiper-scrollbarWrap:before{
	background:#ccc;
}
.swiper-scrollbar{
	background:transparent !important;
	height:4px !important;
	bottom:0 !important;
	width:100% !important;
	left:0 !important;
}
.swiper-scrollbar-drag{
	border-radius:0;
	background:transparent;
	cursor:pointer;
}
.swiper-scrollbar-drag:before{
	content:'';
	margin:auto;
	position:absolute;
	top:0px;
	right:0;
	bottom:0;
	left:0;
	height:4px;
}
.swiper-scrollbar-drag:before{
	background:#ff007d;
}
.books__swiperNav{
	position:absolute;
	left:0;
	bottom:-12px;
	right:0;
	pointer-events:none;
	display:flex;
	justify-content:space-between;
	z-index:50;
}
.books__swiperNav a{
	pointer-events:auto;
	width:80px;
	height:24px;
	position:relative;
	text-decoration:none;
}
.books__swiperNav p:first-child a{
	padding-left:24px;
}
.books__swiperNav p:last-child a{
	padding-right:24px;
	text-align:right;
}
.books__swiperNav p:first-child a:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	width:60px;
	background:url(../img/common/icon_arrow.svg) no-repeat right center / contain;
	transform:rotate(180deg);
}
.books__swiperNav p:last-child a:before{
	content:'';
	position:absolute;
	right:0;
	top:0;
	bottom:0;
	width:60px;
	background:url(../img/common/icon_arrow.svg) no-repeat right center / contain;
}
@media screen and (max-width:768px){
	.books__swiperNav{
		bottom:-3vw;
	}
	.books__swiperNav a{
		width:19.2vw;
		height:6.4vw;
		font-size:3.2vw;
		line-height:2;
	}
	.books__swiperNav p:first-child a{
		padding-left:6.4vw;
	}
	.books__swiperNav p:last-child a{
		padding-right:6.4vw;
	}
}



/*------------------------------
* KV Swiper
-------------------------------*/
/* Selector */
.kv__imgSelectorListsWrap{
	width: 24px;
	padding-bottom: 16px;
}
.kv__imgSelectorLists,
.kv__imgSelectorLists.swiper-pagination-bullets.swiper-pagination-horizontal{
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-shrink: 0;
	width: 100%;
	bottom: unset;
	left: unset;
}
.kv__imgSelectorList,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.kv__imgSelectorList{
	width: 24px;
	height: 24px;
	margin: 12px 0;
	background: unset;
	opacity: 1;
}
.kv__imgSelectorList_link{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	pointer-events: auto;
}
.kv__imgSelectorList_link:after {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	left: calc(50% - 2px);
	width: 4px;
	height: 4px;
	background-color: #000;
	transition: .3s ease;
	border-radius: 50%;
}
.kv__imgSelectorList svg{
	margin: 0;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 0;
	left: 0;
	transform: rotate(-90deg);
}
.kv__imgSelectorList svg circle{
	cx: 12px;
	cy: 12px;
	r: 11px;
	fill: transparent;
	stroke-width: 1px;
}
.kv__imgSelectorList svg.kv__imgSelectorList_link__circle{
	z-index: 2;
	opacity: 0;
}
.kv__imgSelectorList svg.kv__imgSelectorList_link__circle circle{
	stroke: #ff007d;
	animation: pCircle-out_mv 10s forwards;
	animation-play-state: paused;
}
.kv__imgSelectorList svg.kv__imgSelectorList_link__bg circle{
	stroke: rgba(0,0,0,20%);
}

@keyframes pCircle_mv {
	0% {
		stroke-dasharray: 0 76; /*-- 円の直径(24)x3.14 --*/
	}
	100% {
		stroke-dasharray: 76 76;
	}
}
@keyframes pCircle-out_mv {
	0% {
		stroke-dasharray: 76 76; /*-- 円の直径(24)x3.14 --*/
	}
	100% {
		stroke-dasharray: 0 76;
	}
}

.kv__imgSelectorList.swiper-pagination-bullet-active .kv__imgSelectorList_link:after {
	background-color: #ff007d;
}
.kv__imgSelectorList.swiper-pagination-bullet-active svg.kv__imgSelectorList_link__circle {
	opacity: 1;
}
.kv__imgSelectorList.swiper-pagination-bullet-active svg.kv__imgSelectorList_link__circle circle{
	animation: pCircle_mv 16s forwards;
	animation-play-state: paused;
}
@media screen and (max-width:768px){
	.kv__imgSelectorListsWrap{
		width: 100%;
		flex-direction: unset;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		padding-bottom: 6.4%;
	}
	.kv__imgSelectorLists, .kv__imgSelectorLists.swiper-pagination-bullets.swiper-pagination-horizontal{
		flex-direction: unset;
	}
	.kv__imgSelectorList, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.kv__imgSelectorList{
		margin: 0 12px;
	}
}

body.--loaded .kv__imgSelectorList svg.kv__imgSelectorList_link__circle circle,
body.--loaded .kv__imgSelectorList.swiper-pagination-bullet-active svg.kv__imgSelectorList_link__circle circle{
	animation-play-state: running
}

/*------------------------------
* character [max -> x1.3] 
-------------------------------*/
.character{
	padding: 160px 0 0;
	overflow: hidden;
}
.character .section__title{
	position: relative;
}
.character .section__title-ja{
	position: absolute;
	top: 0;
	right: 0;
	margin-right: 80px;
	z-index: 61;
	background-color: #fff;
}
.characterContent{
	width: 100%;
	max-width: 1144px;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width: 768px){
	.character{
		padding-top: 12.8vw;
	}
	.character .section__title-ja{
		margin-right: 6.4vw;
	}
	.characterContent{
		max-width: 100%;
	}
}

/* thumb */
.characterThumbListsWrap{
	width: 100%;
	padding: 0 80px;
	position: relative;
	z-index: 3;
	pointer-events: none;
}
.characterThumbLists,
.swiper-pagination-bullets.swiper-pagination-horizontal.characterThumbLists{
	width: 480px;
	width: 66.6667%;
	display: flex;
	flex-wrap: wrap;
}
.characterThumbList,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.characterThumbList{
	opacity: 1;
	width: calc(100% / 7);
	height: auto;
	margin: 0;
	pointer-events: auto;
}
.characterThumbList a{
	display: block;
	position: relative;
	background-color: #ccc;
	transition: .3s ease;
	overflow: hidden;
}
.characterThumbList a:before,
.characterThumbList a:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: .3s ease;
	z-index: 2;
}
.characterThumbList a:before{
	background-image: url(../img/character/thumb_frame.png);
}
.characterThumbList a:after{
	opacity: 0;
	background-image: url(../img/character/thumb_frame_active.png);
}
.characterThumbList a img{
	width: 100%;
	transition: .3s ease;
}
/* active */
.characterThumbList.swiper-pagination-bullet-active a{
	background-color: var(--main-color-pink);
}
.characterThumbList.swiper-pagination-bullet-active a:after{
	opacity: 1;
}
/* hover */
.characterThumbList a:hover::after{
	opacity: 40%;
}
.characterThumbList a:hover img{
	transform: scale(1.05) rotate(4deg);
}
.characterThumbList.swiper-pagination-bullet-active a:hover::after{
	opacity: 100%;
}
.characterThumbList.swiper-pagination-bullet-active a:hover img{
	transform: scale(1);
}

@media screen and (max-width: 768px){
	.characterThumbListsWrap{
		padding: 0 var(--sp-size-48);
	}
	.characterThumbLists,
	.swiper-pagination-bullets.swiper-pagination-horizontal.characterThumbLists{
		width: 100%;
	}
}




/* Main */
.characterMainSwiper{
	width: 100%;
	height: clamp(790px, 65.83334vw, 1027px);
	margin-top: -80px;
	margin-top: clamp(-110px , -6.6667vw , -80px);
}

.characterMainList{
	width: 100%;
	position: relative;
	opacity: 0!important;
}
.swiper-slide-active.characterMainList{
	opacity: 1!important;
}
.characterMainIn{
	width: 100%;
	height: 100%;
	position: relative;
}
.characterMain__image{
	width: 564px;
	width: 64.091%;
	height: 100%;
	position: absolute;
	bottom: 0;
	right: -44px;
	right: -5%;
}
.characterMain__image img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.characterMain__detail{
	width: 63.6364%;
	padding-top: calc(clamp(80px, 6.6667vw, 110px) + 80px);
	padding-left: 80px;
	position: relative;
	z-index: 2;
}
.characterMain__charaname{
	font-size: 24px;
	line-height: 1.3334;
	font-weight: 700;
}
.characterMain__cv{
	position: relative;
	line-height: 1;
	margin-top: 16px;
	padding: 4px 0 4px 32px;
	color: var(--main-color-pink);
	font-weight: 700;
}
.characterMain__cv:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 20px;
	background: url(../img/common/icon_arrow.svg) no-repeat left center / contain;
}
.characterMain__text{
	margin-top: 40px;
	text-shadow: 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9), 0px 0px 10px rgba(255, 255, 255, 0.8), 0px 0px 15px rgba(255, 255, 255, 0.9);
}

.characterMain__eng{
	display: inline-block;
	font-size: 120px;
	line-height: 0.667;
	font-family: var(--font-whisper);
	background: linear-gradient(135deg, rgba(255,0,125,1) 0%, rgba(0,188,203,1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	position: absolute;
	bottom: 0;
	left: 0;
	margin-bottom: calc(clamp(64px, 5.3334vw, 84px) - 0.25em);
	padding-bottom: 0.25em;
	padding-top: 0.5em;
	padding-right: 0.5em;
	opacity: 40%;
	z-index: -1;
}

@media screen and (max-width: 768px){
	.characterMainSwiper{
		height: auto;
		margin-top: 0;
	}
	.characterMainIn{
		display: flex;
		flex-direction: column;
		margin-top: var(--sp-size-48);
	}
	.characterMain__image{
		width: 87.2%;
		position: relative;
		height: auto;
		right: unset;
		bottom: unset;
		order: -1;
		padding-top: var(--sp-size-32);
		margin: 0 auto;
	}
	.characterMain__image img{
		position: unset;
		height: auto;
		object-fit: unset;
	}
	.characterMain__detail{
		width: 100%;
		position: unset;
		padding: 0 var(--sp-size-48);
	}
	.characterMain__detail_nameset{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		padding: 0 var(--sp-size-48);
	}
	.characterMain__charaname{
		font-size: var(--sp-size-32);
	}
	.characterMain__cv{
		margin-top: var(--sp-size-24);
		font-size: var(--sp-size-26);
		padding: var(--sp-size-6) 0 var(--sp-size-6) var(--sp-size-48);
	}
	.characterMain__cv:before{
		width: var(--sp-size-30);
	}
	.characterMain__text{
		margin-top: var(--sp-size-48);
		font-size: var(--sp-size-24);
	}
	.characterMain__eng{
		font-size: calc(144 / 750 * 100vw);
		margin-bottom: calc(200 / 750 * 100vw);
	}
}

/* character Animation */
.c-ef{
	transform: translate3d(0,50px,0);
	transition: all 0.7s ease .6s;
	opacity: 0;
}
.c-ef_eng{
	transform: scale(1.2);
	filter: blur(12px);
	opacity: 0;
	transition: opacity .4s ease 1s, filter 1s ease 1s, transform 1s ease 1s;
}
.c-ef_img{
	transform: translate3d(50px,0,0);
	transition: all 0.7s ease .6s;
	opacity: 0;
}

.characterMainSwiper.efs .characterMainList.swiper-slide-active .c-ef,
.characterMainSwiper.efs .characterMainList.swiper-slide-active .c-ef_img{
	transform: translate3d(0,0,0);
	opacity: 1;
}
.characterMainSwiper.efs .characterMainList.swiper-slide-active .c-ef_eng{
	transform: scale(1);
	opacity: 40%;
	filter: blur(0px);
}



/*------------------------------
* MOVIES
-------------------------------*/
.movies{
	width: 100%;
	padding: 80px 0;
	overflow: hidden;
}
.movieListsWrap{
	overflow: unset!important;
}
.movieList{
	width: 560px;
}
.movieList:not(:last-child){
	margin-right: 40px;
}
.movieList_thumb.movie__inner{
	position: relative;
	padding-top: 56.25%;
	width: 100%;
	height: auto;
}
.movieList_thumb.movie__inner:after{
	z-index: 3;
}
.movieList_thumb.movie__inner a:before{
	z-index: 2;
}
.movieList_thumb.movie__inner .play{
	z-index: 2;
}
.movieList_thumb img{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
}
.movieList_title{
	margin-top: 10px;
}
@media screen and (max-width:768px){
	.movies{
		padding: 6.4vw 0;
	}
	.movieList{
		width: 85.627%;
	}
	.movieList:not(:last-child){
		margin-right: 6.4vw;
	}
	.movieList_title{
		font-size: var(--sp-size-24);
	}
}



/*------------------------------
* Music[max -> x1.3] 
-------------------------------*/
.music{
	width: 100%;
	padding: 80px 0;
	overflow: hidden;
}
.musicLists{
	width: 100%;
	max-width: 936px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
}
.musicList{
	width: 50%;
	padding: 0 20px;
}
.musicList:nth-of-type(1){
	padding-left: 0;
}
.musicList:nth-of-type(2){
	padding-right: 0;
}
.musicList_link{
	display: block;
	width: 100%;
	position: relative;
	text-decoration: none;
	color: #000;
}
.musicList_thumb{
	width: 100%;
	overflow: hidden;
}
.musicList_thumb img{
	width: 100%;
	transition: 1s ease;
}
.musicList_link:hover .musicList_thumb img{
	transform: scale(1.1);
} 
.musicList_theme{
	margin-top: 16px;
	line-height: 1;
	color: var(--main-color-pink);
}
.musicList_title{
	margin-top: 20px;
	font-size: 24px;
	text-align: center;
	line-height: 1.3334;
	font-weight: 700;
}
.musicList_name{
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	margin-top: 20px;
	line-height: 1;
}
@media screen and (max-width:768px){
	.music{
		padding: 6.4vw 0;
	}
	.musicLists{
		max-width: 100%;
	}
	.musicList{
		padding: 0 3.2vw;
	}
	.musicList_theme{
		font-size: var(--sp-size-20);
		margin-top: var(--sp-size-16);
	}
	.musicList_title{
		font-size: var(--sp-size-26);
		margin-top: var(--sp-size-20);
	}
	.musicList_name{
		font-size: var(--sp-size-24);
		margin-top: var(--sp-size-20);
	}
}




/*------------------------------
* Loading_kv
-------------------------------*/
#loading_kv{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10000;
}
#loading_kv:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
	z-index: 3;
	transition: 1.2s ease .4s;
}
#loading_kv.-a1:before{
	opacity: 0;
}
.loading_kvCont{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.loading_kvCont img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}


/** Glitch **/
#loading_kvImage {
	width: 100%;
	height: 100%;
	--glitch-width: 100%;
	--glitch-height: 100%;
	--gap-horizontal: 10px;
	--gap-vertical: 5px;
	--color-title: #fff;
	--time-anim: 4s;
	--delay-anim: 2s;
	--blend-mode-1: none;
	--blend-mode-2: none;
	--blend-mode-3: none;
	--blend-mode-4: overlay;
	--blend-mode-5: overlay;
	--blend-color-1: transparent;
	--blend-color-2: transparent;
	--blend-color-3: transparent;
	--blend-color-4: #fb909a;
	--blend-color-5: #1c1cc9;
}

/* Glitch styles */
.glitch {
	position: absolute;
	top: 0;
	left: 0;
	width: var(--glitch-width);
	height: var(--glitch-height);
	overflow: hidden;
}

.glitch__img {
	position: absolute;
	top: calc(-1 * var(--gap-vertical));
	left: calc(-1 * var(--gap-horizontal));
	width: calc(100% + var(--gap-horizontal) * 2);
	height: calc(100% + var(--gap-vertical) * 2);
	background: url(../img/top/loading_pc.jpg) no-repeat center bottom;
	background-color: var(--blend-color-1);
	background-size: cover;
	transform: translate3d(0,0,0);
	background-blend-mode: var(--blend-mode-1);
}
@media screen and (max-width:768px){
	.glitch__img {
		background-image: url(../img/top/loading_sp.jpg);
	}
}

.glitch__img:nth-child(n+2) {
	opacity: 0;
}

.imgloaded .glitch__img:nth-child(n+2) {
	animation-duration: var(--time-anim);
	animation-delay: var(--delay-anim);
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.imgloaded .glitch__img:nth-child(2) {
	background-color: var(--blend-color-2);
	background-blend-mode: var(--blend-mode-2);
	animation-name: glitch-anim-1;
}

.imgloaded .glitch__img:nth-child(3) {
	background-color: var(--blend-color-3);
	background-blend-mode: var(--blend-mode-3);
	animation-name: glitch-anim-2;
}

.imgloaded .glitch__img:nth-child(4) {
	background-color: var(--blend-color-4);
	background-blend-mode: var(--blend-mode-4);
	animation-name: glitch-anim-3;
}

.imgloaded .glitch__img:nth-child(5) {
	background-color: var(--blend-color-5);
	background-blend-mode: var(--blend-mode-5);
	animation-name: glitch-anim-flash;
}

/* Animations */

@keyframes glitch-anim-1 {
	0% { 
		opacity: 1;
		transform: translate3d(var(--gap-horizontal),0,0);
		-webkit-clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
		clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
	}
	2% {
		-webkit-clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
		clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
	}
	4% {
		-webkit-clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
		clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
	}
	6% {
		-webkit-clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
		clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
	}
	8% {
		-webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
		clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
	}
	10% {
		-webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
		clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
	}
	12% {
		-webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
		clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
	}
	14% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
		clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
	}
	16% {
		-webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
		clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
	}
	18% {
		-webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
		clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
	}
	20% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
		clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
	}
	21.9% {
		opacity: 1;
		transform: translate3d(var(--gap-horizontal),0,0);
	}
	22%, 100% {
		opacity: 0;
		transform: translate3d(0,0,0);
		-webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
		clip-path: polygon(0 0, 0 0, 0 0, 0 0);
	}
}

@keyframes glitch-anim-2 {
	0% { 
		opacity: 1;
		transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0);
		-webkit-clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
		clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
	}
	3% {
		-webkit-clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
		clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
	}
	5% {
		-webkit-clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
		clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
	}
	7% {
		-webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
		clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
	}
	9% {
		-webkit-clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
		clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
	}
	11% {
		-webkit-clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
		clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
	}
	13% {
		-webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
		clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
	}
	15% {
		-webkit-clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
		clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
	}
	17% {
		-webkit-clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
		clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
	}
	19% {
		-webkit-clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
		clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
	}
	20% {
		-webkit-clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
		clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
	}
	21.9% {
		opacity: 1;
		transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0);
	}
	22%, 100% {
		opacity: 0;
		transform: translate3d(0,0,0);
		-webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
		clip-path: polygon(0 0, 0 0, 0 0, 0 0);
	}
}

@keyframes glitch-anim-3 {
	0% { 
		opacity: 1;
		transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1,-1,1);
		-webkit-clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
		clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
	}
	1.5% {
		-webkit-clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
		clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
	}
	2% {
		-webkit-clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
		clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
	}
	2.5% {
		-webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
		clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
	}
	3% {
		-webkit-clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
		clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
	}
	5% {
		-webkit-clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
		clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
	}
	5.5% {
		-webkit-clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
		clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
	}
	7% {
		-webkit-clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
		clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
	}
	8% {
		-webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
		clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
	}
	9% {
		-webkit-clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
		clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
	}
	10.5% {
		-webkit-clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
		clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
	}
	11% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
		clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
	}
	13% {
		-webkit-clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
		clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
	}
	14% {
		-webkit-clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
		clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
	}
	14.5% {
		-webkit-clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
		clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
	}
	15% {
		-webkit-clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
		clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
	}
	16% {
		-webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
		clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
	}
	18% {
		-webkit-clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
		clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
	}
	20% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
		clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
	}
	21.9% {
		opacity: 1;
		transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1,-1,1);
	}
	22%, 100% {
		opacity: 0;
		transform: translate3d(0,0,0);
		-webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
		clip-path: polygon(0 0, 0 0, 0 0, 0 0);
	}
}

@keyframes glitch-anim-text {
	0% { 
		transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1);
		-webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
		clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
	}
	2% {
		-webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
		clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
	}
	4% {
		-webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
		clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
	}
	5% {
		-webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
		clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
	}
	6% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
		clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
	}
	7% {
		-webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
		clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
	}
	8% {
		-webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
		clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
	}
	9% {
		-webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
		clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
	}
	9.9% {
		transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1);
	}
	10%, 100% {
		transform: translate3d(0,0,0) scale3d(1,1,1);
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	}
}

/* Flash */
@keyframes glitch-anim-flash {
	0%, 5% { 
		opacity: 0.2; 
		transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0);
	}
	5.5%, 100% {
		opacity: 0;
		transform: translate3d(0, 0, 0);
	}
}
/** END Glitch **/
.bg__noise {
	background: url(../img/common/noise.png) center;
	width: 150%;
	height: 150%;
	position: absolute;
	top: -25%;
	left: -25%;
	animation: rumble .2s linear infinite;
	opacity: .6;
	z-index: 2;
}
@media screen and (max-width:768px){
	.bg__noise {
		opacity: .4;
	}
}
@keyframes rumble {
	0%   { transform:translate(0, 0) rotate(0) }
	16%  { transform:translate(25px, -50px) rotate(-5deg) }
	33%  { transform:translate(50px, 15px) rotate(2deg) }
	49%  { transform:translate(7px, 5px) rotate(1deg) }
	66%  { transform:translate(-25px, -40px) rotate(7deg) }
	83%  { transform:translate(-50px, 25px) rotate(-3deg) }
	100% { transform:translate(5px, 7px) rotate(-8deg) }
}


/*------------------------------
* ON AIR
-------------------------------*/
#onair{
	padding: 80px 0;
}
#onair .section__contentIn{
	position: relative;
	z-index: 2;
}
#onair .section__contentIn:not(:first-child){
	padding-top: 64px;
}
.onair__headText{
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 32px;
	text-align: center;
	color: var(--main-color-pink);
}
.onairContentIn{
	width: 100%;
	max-width: 1144px;
	margin: 0 auto;
}
#onair .section__contentIn .onairContentIn:not(:last-child){
	padding-bottom: 48px;
}
#onair h4.section__subTitle-ja{
	font-size: 20px;
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: 20px;
}
.onair__streaming_infoTxt{
	font-weight: 700;
	font-size: 18px;
	line-height: 2;
	margin-bottom: 20px;
	text-align: center;
}
.onair__streamingLists{
	display: flex;
	flex-wrap: wrap;
}
.onair__streamingList{
	width: calc(100% / 3);
}
.onair__streaming_link{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	text-decoration: none;
	color: var(--main-color-pink);
	padding: 12px;
	transition: .3s ease;
}
.onair__streaming_name{
	display: inline-block;
	padding-right: 26px;
	padding-left: 16px;
	position: relative;
}
.onair__streaming_name:after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 16px;
	height: 12px;
	margin: auto 0;
	-webkit-mask: url(../img/common/icon_blank.svg) no-repeat center / contain;
	mask: url(../img/common/icon_blank.svg) no-repeat center / contain;
	background-color: #000;
	transition: .3s ease;
}

@media screen and (max-width: 767px){
	#onair {
		padding: 6.4vw 0 12.8vw;
	}
	.onair__headText{
		font-size: var(--sp-size-28);
		margin-bottom: var(--sp-size-32);
	}
	.onairContentIn{
		max-width: 100%;
	}
	#onair .section__contentIn:not(:first-child){
		padding-top: var(--sp-size-80);
	}
	#onair .section__contentIn .onairContentIn:not(:last-child){
		padding-bottom: var(--sp-size-64);
	}
	#onair h4.section__subTitle-ja{
		font-size: var(--sp-size-26);
		margin-bottom: var(--sp-size-24);
	}
	.onair__streaming_infoTxt{
		font-size: var(--sp-size-24);
		margin-bottom: var(--sp-size-32);
	}
	.onair__streamingList{
		width: 50%;
	}
	.onair__streaming_link{
		font-size:var(--sp-size-24);
		padding: var(--sp-size-20) 0;
	}
	.onair__streaming_name{
		padding-right: var(--sp-size-48);
		padding-left: var(--sp-size-20);
	}
	.onair__streaming_name:after{
		width: var(--sp-size-24);
		height: var(--sp-size-20);
		right: var(--sp-size-12);
	}
}

/* border */
@media screen and (min-width:768px){
	.onair__streamingList {
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	.onair__streamingList:nth-child(3n + 1) {
		border-left: 1px solid #000;
	}
	.onair__streamingList:nth-child(-n + 3) {
		border-top: 1px solid #000;
	}
}
@media screen and (max-width:767px){
	.onair__streamingList {
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	.onair__streamingList:nth-child(2n + 1) {
		border-left: 1px solid #000;
	}
	.onair__streamingList:nth-child(-n + 2) {
		border-top: 1px solid #000;
	}
}
.onair__cautionText{
	font-size: 87.5%;
	padding-left: 1em;
	text-indent: -1em;
}
@media screen and (max-width:767px){
	.onair__cautionText{
		font-size: var(--sp-size-20);
	}
}

/* tvlists */
.onair_tvLists{
	border-top: unset;
}
.onair_tvLists:before,
.onair_tvLists:after{
	content: unset;
}
.onair_tvListIn{
	width: 100%;
	display: flex;
	padding: 24px 0;
	border-bottom: 1px solid #CCC;
}
.onair_tvList__bs{
	font-weight: 700;
	color: #c5a362;
	min-width: 30%;
	padding-right: 2em;
}
.onair_tvListIn__flex{
	display: flex;
	flex-wrap: wrap;
	width: 70%;
}
.onair_tvList__date{
	width: 30%;
}
.onair_tvList__time{
	width: 70%;
}
@media screen and (max-width:767px){
	.onair_tvListIn{
		padding: 3.2vw 0;
		font-size: var(--sp-size-24);
	}
	.onair_tvListIn__flex{
		flex-direction: column;
	}
	.onair_tvList__date,.onair_tvList__time{
		width: 100%;
	}
}


/* hover */
.onair__streaming_link:hover{
	background-color: var(--main-color-pink);
	color: #FFF;
}
.onair__streaming_link:hover .onair__streaming_name:after{
	background-color: #fff;
}


/*------------------------------
* STORY
-------------------------------*/
.story{
	padding: 160px 0 0;
	overflow: hidden;
}
#story .section__content{
	position: relative;
	z-index: 2;
}
@media screen and (max-width:767px){
	.story{
		padding-top: 12.8vw;
	}
}

/* epnum */
.story_epnumLists{
	width: 384px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.story_epnumList{
	width: 64px;
	padding: 8px;
}
.story_epnumList__link{
	width: 100%;
	position: relative;
	padding-top: 100%;
	display: block;
	font-size: 20px;
	letter-spacing: 0;
	background-color: #fff;
	transition: .3s ease;
}
.story_epnumList__link:before,
.story_epnumList__link:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: .3s ease;
	z-index: 2;
}
.story_epnumList__link:before{
	background-image: url(../img/character/thumb_frame.png);
}
.story_epnumList__link:after{
	opacity: 0;
	background-image: url(../img/character/thumb_frame_active.png);
}
.storyNum_txt{
    display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
}
.storyNum_txt span{
	display: inline-block;
	line-height: 1;
}
@media screen and (max-width:767px){
	.story_epnumLists{
		width: 74%;
	}
	.story_epnumList{
		width: var(--sp-size-80);
		padding: var(--sp-size-8);
	}
	.story_epnumList__link{
		font-size: var(--sp-size-28);
	}
}


/* hover */
.story_epnumList__link:hover{
	background-color: rgba(var(--main-color-pink-rgb), 10%);
}
.story_epnumList__link:hover::after {
    opacity: 40%;
}
/* is-active */
.story_epnumList__link.is-active{
	background-color: rgba(var(--main-color-pink-rgb), 100%);
	color: #FFF;
}
.story_epnumList__link.is-active::after {
    opacity: 100%;
}


/**
* storyContent
**/
.storyContentWrap{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	margin-top: 40px;
	position: relative;
}
.storyContent {
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s ease;
	position: absolute;
	top: 0;
	width: 100%;
	left: 0;
}
.storyContent.is-show {
	opacity: 1;
	pointer-events: auto;
}
@media screen and (max-width:767px){
	.storyContentWrap{
		max-width: 100%;
		margin-top: var(--sp-size-96);
	}
}

/* title */
.storyContent__title{
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: -20px;
	z-index: 2;
}
.storyContent__title--num{
	display: inline-block;
	line-height: 0.8;
	font-size: 136px;
	letter-spacing: 0;
	color: var(--main-color-pink);
}
.storyContent__title--text{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 24px;
	filter: drop-shadow(0px 0px 4px rgba(255,255,255,.4)) drop-shadow(0px 0px 4px rgba(255,255,255,.4)) drop-shadow(0px 0px 4px rgba(255,255,255,.4));
}
@media screen and (max-width:767px){
	.storyContent__title{
		margin-bottom: calc(var(--sp-size-20) * -1);
	}
	.storyContent__title--num{
		font-size: min(19.2vw, 144px);
	}
	.storyContent__title--text{
		font-size: var(--sp-size-28);
		padding-left: var(--sp-size-28);
	}
}


/* image */
.storyImageListsWrap{
	position: relative;
}
.storyImageListsWrap:after{
	pointer-events: none;
    content: '';
    position: absolute;
    left: 7px;
    right: 7px;
    top: 7px;
    bottom: 7px;
    background: url(../img/common/movie_frame.png) no-repeat center center / contain;
	z-index: 2;
}
.storyImageList{
	width: 100%;
}
.storyImageList img{
	width: 100%;
}

.storyThumbListsWrap{
	width: 100%;
	margin: 24px auto 0;
}
.storyThumbList__btn{
	width: 100%;
	position: relative;
	background-color: #000;
}
.storyThumbList__btn img{
	width: 100%;
	opacity: 60%;
	transition: all .3s ease;
}
.storyThumbList__btn:before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg, #ff007d 0%,#a800ff 25%,#00bccb 50%,#a800ff 75%,#ff007d 100%);
	background-size: 200% 200%;
	opacity: 0.7;
	transition: all .3s ease;
}
.storyThumbList__btn:after {
	content: '';
    pointer-events: none;
	content: '';
	position: absolute;
	left: 2px;
	right: 2px;
	top: 2px;
	bottom: 2px;
	background: url(../img/common/movie_frame.png) no-repeat center center / contain;
	opacity: 0;
	transform: scale(0.8);
	transition: all .3s ease;
}
@media screen and (max-width:767px){
	.storyThumbListsWrap{
		margin-top: var(--sp-size-24);
	}
}

/* hover */
.storyThumbList__btn:hover::before {
	opacity: 0%;
}

/* active */
.storyThumbList.swiper-slide-thumb-active .storyThumbList__btn:before{
	opacity: 0%;
}
.storyThumbList.swiper-slide-thumb-active .storyThumbList__btn:after{
	opacity: 1;
	transform: scale(1);
}
.storyThumbList.swiper-slide-thumb-active .storyThumbList__btn img{
	opacity: 100%;
}


.storyContent__Text{
	margin-top: 24px;
}
@media screen and (max-width:767px){
	.storyContent__Text{
		margin-top: var(--sp-size-24);
		font-size: var(--sp-size-24);
	}
}