@charset "utf-8";
/*-----------------------------------------------
 * Loading
-------------------------------------------------*/
.loading {
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 999;
}
.loading__logo {
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
	position: relative;
	z-index: 4;
}
.loading__logo img {
	width: 100%;
}
.loading__bg {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
}
.loading__bg:before,
.loading__bg:after {
	content: "";
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.loading__bg:before {
	background-color: #fff;
	z-index: 2;
}
.loading__bg:after {
	background-color: var(--color-yellow);
	z-index: 1;
}
.loading__bg2 {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.loading__bg2:before,
.loading__bg2:after {
	content: "";
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.loading__bg2:before {
	background-color: var(--color-blue);
	z-index: 2;
}
.loading__bg2:after {
	background-color: var(--color-red);
	z-index: 1;
}

/* Finish */
.loading__logo {
	transition: all .6s ease;
}
.loading.--finish .loading__logo {
	opacity: 0;
	transform: translateY(-40%);
}
.loading__bg:before,
.loading__bg:after,
.loading__bg2:before,
.loading__bg2:after {
	transition: transform .8s var(--easing-outquart);
}
.loading.--finish .loading__bg:before,
.loading.--finish .loading__bg:after,
.loading.--finish .loading__bg2:before,
.loading.--finish .loading__bg2:after {
	transform: translateY(-100%);
}
.loading.--finish .loading__bg:before {
	transition-delay: .8s;
}
.loading.--finish .loading__bg:after {
	transition-delay: .9s;
}
.loading.--finish .loading__bg2:before {
	transition-delay: 1s;
}
.loading.--finish .loading__bg2:after {
	transition-delay: 1.1s;
}

/*-----------------------------------------------
 * first
-------------------------------------------------*/
.first {
	overflow: hidden;
	position: relative;
}

/* hgroup */
.first__hgroup {
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: min(calc(210 / var(--vw-min) * 100vw), 210px);
	position: relative;
	z-index: 1;
}

.first__logo {
	width: min(calc(388 / var(--vw-min) * 100vw), 388px);
}
.first__logo img {
	width: 100%;
}

.first__x {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: min(calc(80 / var(--vw-min) * 100vw), 80px);
}
@media screen and (max-width:767px){
	.first__x {
		left: calc(40 / var(--vw-min) * 100vw);
	}
}
.first__x > a {
	color: var(--color-blue);
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	text-decoration: none;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	letter-spacing: -.01em;
	line-height: 1;
	white-space: nowrap;
}
.first__x--icon {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	margin-bottom: 0.4em;
}
.first__x--icon:before {
	content: "";
	background: url(../img/common/parts/parts_frame_blue.svg) no-repeat 0 0 / contain;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.first__x--icon:after {
	content: "";
	background-color: var(--color-blue);
	-webkit-mask: url(../img/common/sns/icon_x.svg) no-repeat center / contain;
	mask: url(../img/common/sns/icon_x.svg) no-repeat center / contain;
	width: min(calc(22 / var(--vw-min) * 100vw), 22px);
	height: min(calc(23 / var(--vw-min) * 100vw), 23px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
@media screen and (min-width:768px){
	.first__x > a {
		transition: transform .6s var(--easing-outquart);
	}
	.first__x > a:hover {
		transform: scale(0.93);
	}
	.first__x--icon {
		transition: transform .8s var(--easing-outquart);
	}
	.first__x > a:hover .first__x--icon {
		transform: rotateY(360deg);
	}
}

/* movie */
.first__movie {
	background-color: #000;
	width: 100%;
	height: min(calc(450 / var(--vw-min) * 100vw), 450px);
	margin-top: calc(700 / var(--vw-min) * 100vw);
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.first__movie {
		height: calc(422 / var(--vw-min) * 100vw);
		margin-top: calc(450 / var(--vw-min) * 100vw);
	}
}

.first__playWrap {
	width: min(calc(1146 / var(--vw-min) * 100vw), 1146px);
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.first__play {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: min(calc(140 / var(--vw-min) * 100vw), 140px);
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}
@media screen and (max-width:767px){
	.first__play {
		top: auto;
		bottom: calc(30 / var(--vw-min) * 100vw);
		left: calc(30 / var(--vw-min) * 100vw);
	}
}
.first__play > a {
	color: var(--color-red);
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	text-decoration: none;
	font-size: min(calc(62 / var(--vw-min) * 100vw), 62px);
	letter-spacing: -.01em;
	line-height: 1;
	white-space: nowrap;
}
.first__play--icon {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	margin-bottom: 0.1em;
}
.first__play--icon:before {
	content: "";
	background: url(../img/common/parts/parts_frame_movie.svg) no-repeat 0 0 / contain;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.first__play--icon:after {
	content: "";
	background-color: var(--color-red);
	-webkit-mask: url(../img/common/icon/icon_play.svg) no-repeat center / contain;
	mask: url(../img/common/icon/icon_play.svg) no-repeat center / contain;
	width: min(calc(48 / var(--vw-min) * 100vw), 48px);
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
@media screen and (min-width:768px){
	.first__play > a {
		transition: transform .6s var(--easing-outquart);
	}
	.first__play > a:hover {
		transform: scale(0.95);
	}
	.first__play--icon {
		transition: transform .8s var(--easing-outquart);
	}
	.first__play > a:hover .first__play--icon {
		transform: rotateY(360deg);
	}
}

/* bg */
.movie__bg {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.movie__bg:before {
	content: "";
	background-color: var(--color-blue);
	width: 100%;
	height: 100%;
	opacity: .6;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	mix-blend-mode: multiply;
}
.movie__bg__in {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 0;
}

/* bg */
.first__bgWrap {
	width: 100%;
	height: 100%;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.first__bg {
	background: url(../img/top/top_vs_bg.jpg) no-repeat center center / 120%;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: transform 2.5s cubic-bezier(0.25, 1, 0.5, 1);
}
@media screen and (max-width:767px){
	.first__bg {
		background-size: 140%;
	}
}

/* chara */
.first__charaWrap {
	width: 100%;
	height: 100%;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.first__chara {
	width: 100%;
	height: 100%;
	max-width: var(--common-min-width);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	transition: transform 2.5s cubic-bezier(0.25, 1, 0.5, 1);
}
.first__chara:before {
	content: "";
	background: url(../img/top/top_vs_chara.png) no-repeat 0 0 / 100%;
	width: min(calc(1855 / var(--vw-min) * 100vw), 1855px);
	height: min(calc(2318 / var(--vw-min) * 100vw), 2318px);
	position: absolute;
	top: calc(max(-165px, -12.89062vw));
	right: calc(max(-394px, -30.78125vw));
}
@media screen and (max-width:767px){
	.first__chara:before {
		width: calc(1401 / var(--vw-min) * 100vw);
		height: calc(1751 / var(--vw-min) * 100vw);
		top: -11.5vw;
		right: -47vw;
	}
}

/* date */
.first__date {
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	width: 100%;
	height: calc(700 / var(--vw-min) * 100vw);
	position: absolute;
	top: min(calc(210 / var(--vw-min) * 100vw), 210px);
	z-index: 4;
}
.first__date img {
	width: min(calc(519 / var(--vw-min) * 100vw), 519px);
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
	margin-left: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
@media screen and (max-width:767px){
	.first__date {
		height: calc(450 / var(--vw-min) * 100vw);
	}
	.first__date img {
		width: calc(400 / var(--vw-min) * 100vw);
		margin-bottom: calc(30 / var(--vw-min) * 100vw);
		margin-left: calc(30 / var(--vw-min) * 100vw);
	}
}

/*-----------------------------------------------
 * stage, main, stageHeader, section title
-------------------------------------------------*/
.stage {
	background: url(../img/common/bg/bg_main.jpg) no-repeat center top / cover;
	position: relative;
	z-index: 1;
}
.stage__inner {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	width: calc(100% - min(calc(140 / var(--vw-min) * 100vw), 140px));
	position: relative;
	z-index: 2;
}
@media screen and (max-width:767px){
	.stage__inner {
		width: calc(100% - calc(100 / var(--vw-min) * 100vw));
	}
}

.main {
	position: relative;
	z-index: 1;
}

.stageHeader {
	width: min(calc(140 / var(--vw-min) * 100vw), 140px);
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
@media screen and (max-width:767px){
	.stageHeader {
		width: calc(100 / var(--vw-min) * 100vw);
	}
}
.stageHeader__inner {
	background-color: var(--color-yellow);
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	height: 100vh;
	min-height: var(--common-min-height);
	position: sticky;
	top: 0;
	left: 0;
}

.stageHeader__inner:before,
.stageHeader__inner:after {
	content: "";
	display: block;
	background-color: #fff;
	-webkit-mask: url(../img/common/parts/parts_wave_ver.svg) repeat-y center / contain;
	mask: url(../img/common/parts/parts_wave_ver.svg) repeat-y center / contain;
	width: min(calc(36 / var(--vw-min) * 100vw), 36px);
	height: 100%;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.stageHeader__inner:before,
	.stageHeader__inner:after {
		width: calc(26 / var(--vw-min) * 100vw);
	}
}

.stageHeader__logo {
	width: min(calc(85 / var(--vw-min) * 100vw), 85px);
	margin: min(calc(35 / var(--vw-min) * 100vw), 35px) 0;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.stageHeader__logo {
		width: calc(64 / var(--vw-min) * 100vw);
	}
}
.stageHeader__logo img {
	width: 100%;
}

.stageHeader__top {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	margin: auto;
	position: absolute;
	bottom: min(calc(20 / var(--vw-min) * 100vw), 20px);
	right: 0;
	left: 0;
	z-index: 2;
}
@media screen and (max-width:767px){
	.stageHeader__top {
		display: none;
	}
}
.stageHeader__top > a {
	color: var(--color-blue);
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	text-decoration: none;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	letter-spacing: -.01em;
	line-height: 1;
	white-space: nowrap;
	text-align: center;
}
.stageHeader__top--icon {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	margin-bottom: 0.4em;
}
.stageHeader__top--icon:before {
	content: "";
	background: url(../img/common/icon/icon_top.svg) no-repeat 0 0 / contain;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (min-width:768px){
	.stageHeader__top > a {
		transition: transform .6s var(--easing-outquart);
	}
	.stageHeader__top > a:hover {
		transform: scale(0.93);
	}
	.stageHeader__top--icon {
		transition: transform .8s var(--easing-outquart);
	}
	.stageHeader__top > a:hover .stageHeader__top--icon {
		transform: rotateY(360deg);
	}
}

/* stage__bg */
.stage__bg {
	width: calc(100% - min(calc(140 / var(--vw-min) * 100vw), 140px));
	height: 100%;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.stage__bg:before {
	content: "";
	background-color: var(--color-red);
	width: 100%;
	height: min(calc(656 / var(--vw-min) * 100vw), 656px);
	pointer-events: none;
	position: absolute;
	top: min(calc(1342 / var(--vw-min) * 100vw), 1342px);
	left: 0;
	z-index: 0;
	transform: skewY(45deg);
}
@media screen and (max-width:767px){
	.stage__bg {
		width: calc(100% - calc(100 / var(--vw-min) * 100vw));
	}
	.stage__bg:before {
		height: calc(362 / var(--vw-min) * 100vw);
		top: 186.5vw;
	}
}

/* section title */
.secTitle {
	font-size: min(calc(62 / var(--vw-min) * 100vw), 62px);
	letter-spacing: -.01em;
	line-height: 1;
}

/*-----------------------------------------------
 * staff
-------------------------------------------------*/
.staff {
	padding-top: min(calc(140 / var(--vw-min) * 100vw), 140px);
}
.staff__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: 0 auto;
}
@media screen and (max-width:767px){
	.staff {
		padding-top: calc(80 / var(--vw-min) * 100vw);
	}
	.staff__inner {
		align-items: flex-start;
		flex-direction: column;
		width: 100%;
		padding: 0 calc(40 / var(--vw-min) * 100vw);
	}
}

/* title */
.secTitle.is-staff span:nth-child(1),
.secTitle.is-staff span:nth-child(5) {
	color: var(--color-blue);
}
.secTitle.is-staff span:nth-child(2),
.secTitle.is-staff span:nth-child(4) {
	color: var(--color-red);
}
.secTitle.is-staff span:nth-child(3) {
	color: var(--color-yellow);
}

/* lists */
.staffLists {
	display: flex;
	flex-wrap: wrap;
	gap: min(calc(10 / var(--vw-min) * 100vw), 10px) min(calc(74 / var(--vw-min) * 100vw), 74px);
	width: min(calc(790 / var(--vw-min) * 100vw), 777px);
}
@media screen and (max-width:767px){
	.staffLists {
		margin-top: calc(30 / var(--vw-min) * 100vw);
		width: 100%;
	}
}
.staffLists__item {
	display: flex;
	align-items: center;
}
.staffLists__item.is-mauto {
	margin-left: auto;
}
.staffLists__item.is-br {
	margin-right: 30%;
}
@media screen and (max-width:767px){
	.staffLists__item.is-mauto {
		margin-left: 0;
	}
	.staffLists__item.is-br {
		margin-right: 0;
	}
}

.staffLists dt {
	color: var(--color-blue);
	font-size: min(calc(24 / var(--vw-min) * 100vw), 24px);
	white-space: nowrap;
}
.staffLists dt:after {
	content: "：";
}
.staffLists dd {
	display: flex;
	align-items: center;
	color: var(--color-red);
	font-size: min(calc(32 / var(--vw-min) * 100vw), 32px);
}
.staffLists dd span {
	font-size: 50%;
	letter-spacing: -.01em;
}

.staffLists__cont--cmt {
	display: block;
	width: min(calc(38 / var(--vw-min) * 100vw), 38px);
	height: min(calc(38 / var(--vw-min) * 100vw), 38px);
	background-color: var(--color-red);
	-webkit-mask: url(../img/common/icon/icon_comment.svg) no-repeat center / contain;
	mask: url(../img/common/icon/icon_comment.svg) no-repeat center / contain;
	margin-bottom: min(calc(12 / var(--vw-min) * 100vw), 12px);
	margin-left: min(calc(8 / var(--vw-min) * 100vw), 8px);
}
@media screen and (min-width:768px){
	.staffLists__cont--cmt {
		transition: all .6s var(--easing-outquart);
	}
	.staffLists__cont--cmt:hover {
		background-color: var(--color-blue);
		transform: scale(1.15);
	}
}

/*-----------------------------------------------
 * character
-------------------------------------------------*/
.character {
	padding-top: min(calc(140 / var(--vw-min) * 100vw), 140px);
	position: relative;
}
@media screen and (max-width:767px){
	.character {
		padding-top: calc(80 / var(--vw-min) * 100vw);
	}
}

/* title */
.character__titleWrap {
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
@media screen and (max-width:767px){
	.character__titleWrap {
		width: 100%;
		padding: 0 calc(40 / var(--vw-min) * 100vw);
	}
}
.secTitle.is-chara span:nth-child(3n + 1) { color: var(--color-red); }
.secTitle.is-chara span:nth-child(3n + 2) { color: var(--color-blue); }
.secTitle.is-chara span:nth-child(3n + 3) { color: var(--color-yellow); }

/* charaLists */
.charaListsWrap {
	width: 100%;
	height: min(calc(1354 / var(--vw-min) * 100vw), 1354px);
	margin: calc(max(-150px, -11.71875vw)) auto 0;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.charaListsWrap {
		height: calc(1224 / var(--vw-min) * 100vw);
		margin: 0;
	}
}

.charaLists {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.charaLists > li {
	width: 100%;
	height: 100%;
	position: relative;
}
.charaLists__item__inner {
	width: 100%;
	height: 100%;
	position: relative;
}

.charaLists__cont {
	background: url(../img/top/chara_bg.png) no-repeat center / 100%;
	width: min(calc(500 / var(--vw-min) * 100vw), 500px);
	height: min(calc(500 / var(--vw-min) * 100vw), 500px);
	margin: auto;
	transform: rotate(-45deg);
	position: absolute;
	top: min(calc(250 / var(--vw-min) * 100vw), 250px);
	right: 0;
	left: 0;
	z-index: 1;
}
@media screen and (max-width:767px){
	.charaLists__cont {
		width: calc(388 / var(--vw-min) * 100vw);
		height: calc(388 / var(--vw-min) * 100vw);
	}
}

.charaLists__cont--name {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	color: var(--color-red);
	font-size: min(calc(100 / var(--vw-min) * 100vw), 100px);
	letter-spacing: -.01em;
	line-height: 1;
	position: absolute;
	top: -1.15em;
	left: -.05em;
}
@media screen and (max-width:767px){
	.charaLists__cont--name {
		font-size: calc(70 / var(--vw-min) * 100vw);
	}
}

dl.charaLists__cont--cv {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	color: var(--color-red);
	font-size: min(calc(40 / var(--vw-min) * 100vw), 40px);
	letter-spacing: -.01em;
	line-height: 1;
	position: absolute;
	bottom: -1.4em;
	right: 0;
}
dl.charaLists__cont--cv dd:last-of-type {
	margin-left: .3em;
}
.charaLists__cont--cmt {
	display: block;
	width: min(calc(38 / var(--vw-min) * 100vw), 38px);
	height: min(calc(38 / var(--vw-min) * 100vw), 38px);
	background-color: var(--color-red);
	-webkit-mask: url(../img/common/icon/icon_comment.svg) no-repeat center / contain;
	mask: url(../img/common/icon/icon_comment.svg) no-repeat center / contain;
}
@media screen and (min-width:768px){
	.charaLists__cont--cmt {
		transition: all .6s var(--easing-outquart);
	}
	.charaLists__cont--cmt:hover {
		background-color: var(--color-blue);
		transform: scale(1.15);
	}
}

.charaLists__text {
	display: flex;
	justify-content: flex-end;
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: auto;
	position: absolute;
	top: min(calc(740 / var(--vw-min) * 100vw), 740px);
	right: 0;
	left: 0;
}
.charaLists__text p {
	width: min(calc(300 / var(--vw-min) * 100vw), 300px);
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	letter-spacing: -.01em;
	line-height: 2;
}
@media screen and (max-width:767px){
	.charaLists__text {
		justify-content: flex-start;
		width: 100%;
		top: 114vw;
		padding: 0 calc(52 / var(--vw-min) * 100vw);
	}
	.charaLists__text p {
		width: calc(380 / var(--vw-min) * 100vw);
		-webkit-text-stroke: 3px #fff;
		text-stroke: 3px #fff;
		paint-order: stroke;
	}
}

.charaLists__faceWrap {
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
}
.charaLists__face {
	width: min(calc(620 / var(--vw-min) * 100vw), 620px);
	height: min(calc(620 / var(--vw-min) * 100vw), 620px);
	position: absolute;
	top: min(calc(536 / var(--vw-min) * 100vw), 536px);
	left: calc(max(-86px, -6.71875vw));
}
.charaLists__face--img {
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
	position: absolute;
}
@media screen and (max-width:767px){
	.charaLists__faceWrap {
		width: 100%;
	}
	.charaLists__face {
		width: calc(310 / var(--vw-min) * 100vw);
		height: calc(310 / var(--vw-min) * 100vw);
		top: 70vw;
	}
	.charaLists__face--img {
		width: calc(200 / var(--vw-min) * 100vw);
	}
}
.charaLists__face--img:nth-child(1) {
	top: 0;
	left: 0;
}
.charaLists__face--img:nth-child(2) {
	bottom: 0;
	right: 0;
}
.charaLists__face--img img {
	width: 100%;
}

.charaLists__full {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	height: min(calc(972 / var(--vw-min) * 100vw), 972px);
	margin: auto;
	pointer-events: none;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 4;
}
@media screen and (max-width:767px){
	.charaLists__full {
		width: 120%;
		height: 106vw;
		left: 50%;
		transform: translateX(-50%);
	}
}
.charaLists__full img {
	width: 100%;
}

.charaLists__navAreaWrap {
	display: flex;
	justify-content: flex-end;
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: auto;
	position: absolute;
	top: min(calc(981 / var(--vw-min) * 100vw), 981px);
	right: 0;
	left: 0;
	z-index: 5;
}
.charaLists__navArea {
	width: min(calc(220 / var(--vw-min) * 100vw), 220px);
	height: min(calc(220 / var(--vw-min) * 100vw), 220px);
	position: relative;
	margin-right: min(calc(88 / var(--vw-min) * 100vw), 88px);
}
@media screen and (max-width:767px){
	.charaLists__navAreaWrap {
		width: 100%;
		top: calc(762 / var(--vw-min) * 100vw);
	}
	.charaLists__navArea {
		margin-right: 0;
	}
}
.charaLists__navArea > a {
	display: block;
	width: min(calc(100 / var(--vw-min) * 100vw), 100px);
	height: min(calc(100 / var(--vw-min) * 100vw), 100px);
	transform: rotate(45deg);
	overflow: hidden;
	position: absolute;
	transition: background-color .3s ease;
}
@media screen and (min-width:768px){
	.charaLists__navArea > a:hover {
		background-color: var(--color-red);
	}
}

.charaLists__navArea > a.is-prev {
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	left: min(calc(20 / var(--vw-min) * 100vw), 20px);
}
.charaLists__navArea > a.is-next {
	bottom: min(calc(20 / var(--vw-min) * 100vw), 20px);
	right: min(calc(20 / var(--vw-min) * 100vw), 20px);
}

.charaLists__navArea > a:before {
	content: "";
	background: url(../img/common/parts/parts_frame_red.svg) no-repeat 0 0 / 100%;
	width: min(calc(140 / var(--vw-min) * 100vw), 140px);
	height: min(calc(140 / var(--vw-min) * 100vw), 140px);
	position: absolute;
	top: calc(max(-20px, -1.5625vw));
	left: calc(max(-20px, -1.5625vw));
	transform: rotate(-45deg);
	z-index: 1;
}
@media screen and (max-width:767px){
	.charaLists__navArea > a:before {
		width: 135%;
		height: 135%;
		top: -2.5vw;
		left: -2.5vw;
	}
}

.charaLists__navArea > a:after {
	content: "";
	background-color: var(--color-red);
	-webkit-mask: url() no-repeat center / contain;
	mask: url() no-repeat center / contain;
	width: min(calc(40 / var(--vw-min) * 100vw), 40px);
	height: min(calc(40 / var(--vw-min) * 100vw), 40px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	transform: rotate(-45deg);
	transition: background-color .3s ease;
}
@media screen and (min-width:768px){
	.charaLists__navArea > a:hover:after {
		background-color: #fff;
	}
}
.charaLists__navArea > a.is-prev:after {
	-webkit-mask-image: url(../img/common/icon/icon_arrow_left.svg);
	mask-image: url(../img/common/icon/icon_arrow_left.svg);
}
.charaLists__navArea > a.is-next:after {
	-webkit-mask-image: url(../img/common/icon/icon_arrow_right.svg);
	mask-image: url(../img/common/icon/icon_arrow_right.svg);
}

/* thumbLists */
.charaLists__thumbListsWrap {
	display: flex;
	justify-content: flex-end;
	width: min(calc(1007 / var(--vw-min) * 100vw), 1007px);
	margin: auto;
	position: absolute;
	top: min(calc(1090 / var(--vw-min) * 100vw), 1090px);
	right: 0;
	left: 0;
	z-index: 5;
	pointer-events: none;
}
.charaLists__thumbLists {
	width: min(calc(258 / var(--vw-min) * 100vw), 258px);
	height: min(calc(258 / var(--vw-min) * 100vw), 258px);
	position: relative;
	margin-right: min(calc(168 / var(--vw-min) * 100vw), 168px);
}
.charaLists__thumbLists > li {
	width: min(calc(122 / var(--vw-min) * 100vw), 122px);
	height: min(calc(122 / var(--vw-min) * 100vw), 122px);
	transform: rotate(45deg);
	position: absolute;
}
.charaLists__thumbLists > li:nth-child(1) {
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	left: min(calc(20 / var(--vw-min) * 100vw), 20px);
}
.charaLists__thumbLists > li:nth-child(2) {
	bottom: min(calc(20 / var(--vw-min) * 100vw), 20px);
	right: min(calc(20 / var(--vw-min) * 100vw), 20px);
}
.charaLists__thumbLists > li a {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	pointer-events: auto;
}
.charaLists__thumbLists > li img {
	width: min(calc(172 / var(--vw-min) * 100vw), 172px);
	transform: rotate(-45deg);
	position: absolute;
	top: calc(max(-25px, -1.95312vw));
	left: calc(max(-25px, -1.95312vw));
}
@media screen and (max-width:767px){
	.charaLists__thumbListsWrap {
		width: 100%;
		top: calc(962 / var(--vw-min) * 100vw);
	}
	.charaLists__thumbLists {
		margin-right: 0;
	}
	.charaLists__thumbLists > li img {
		top: -3.2vw;
		left: -3.2vw;
	}
}

/* swiper animation */
.charaLists > li.swiper-slide {
	opacity: 0;
	position: none;
}
.charaLists > li.swiper-slide.swiper-slide-active {
	opacity: 1;
	pointer-events: auto;
}
.charaLists__full img {
	opacity: 0;
	transform: translateX(-10%);
	transition: transform .8s var(--easing-outquart),
				opacity .3s ease;
}
.charaLists > li.swiper-slide.swiper-slide-active .charaLists__full img {
	transition-delay: .1s;
	opacity: 1;
	transform: translateX(0);
}
.charaLists__face,
.charaLists__cont--name,
.charaLists__text p,
dl.charaLists__cont--cv {
	transition-delay: .1s;
	opacity: 0;
	transition: opacity .6s ease;
}
.charaLists > li.swiper-slide.swiper-slide-active .charaLists__face,
.charaLists > li.swiper-slide.swiper-slide-active .charaLists__cont--name,
.charaLists > li.swiper-slide.swiper-slide-active .charaLists__text p,
.charaLists > li.swiper-slide.swiper-slide-active dl.charaLists__cont--cv {
	opacity: 1;
}

/*-----------------------------------------------
 * stageFooter
-------------------------------------------------*/
.stageFooter {
	margin-top: auto;
	padding-top: min(calc(150 / var(--vw-min) * 100vw), 150px);
	padding-bottom: min(calc(200 / var(--vw-min) * 100vw), 200px);
	position: relative;
	z-index: 2;
}
.stageFooter:before {
	content: "";
	border-style: solid;
	border-width: min(calc(450 / var(--vw-min) * 100vw), 450px) 0 0 min(calc(450 / var(--vw-min) * 100vw), 450px);
	border-color: transparent transparent transparent var(--color-blue);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
@media screen and (max-width:767px){
	.stageFooter {
		padding-bottom: calc(280 / var(--vw-min) * 100vw);
	}
	.stageFooter:before {
		border-width: calc(380 / var(--vw-min) * 100vw) 0 0 calc(380 / var(--vw-min) * 100vw);
	}
}

/* logo */
.stageFooter__logo {
	width: min(calc(940 / var(--vw-min) * 100vw), 940px);
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.stageFooter__logo {
		width: calc(542 / var(--vw-min) * 100vw);
	}
}
.stageFooter__logo img {
	width: 100%;
}

/* copy */
.stageFooter__copy {
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	text-align: center;
	margin-top: 1.5em;
	position: relative;
	z-index: 1;
}

/* x */
.stageFooter__x {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: min(calc(156 / var(--vw-min) * 100vw), 156px);
	position: absolute;
	bottom: min(calc(30 / var(--vw-min) * 100vw), 30px);
	left: min(calc(60 / var(--vw-min) * 100vw), 60px);
}
@media screen and (max-width:767px){
	.stageFooter__x {
		left: calc(30 / var(--vw-min) * 100vw);
	}
}
.stageFooter__x > a {
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	text-decoration: none;
	font-size: min(calc(24 / var(--vw-min) * 100vw), 24px);
	letter-spacing: -.01em;
	line-height: 1;
	white-space: nowrap;
	text-align: center;
}
.stageFooter__x--icon {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	margin-bottom: 0.4em;
}
.stageFooter__x--icon:before {
	content: "";
	background: url(../img/common/parts/parts_frame_white.svg) no-repeat 0 0 / contain;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.stageFooter__x--icon:after {
	content: "";
	background-color: #fff;
	-webkit-mask: url(../img/common/sns/icon_x.svg) no-repeat center / contain;
	mask: url(../img/common/sns/icon_x.svg) no-repeat center / contain;
	width: min(calc(42 / var(--vw-min) * 100vw), 42px);
	height: min(calc(44 / var(--vw-min) * 100vw), 44px);
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
@media screen and (min-width:768px){
	.stageFooter__x > a {
		transition: transform .6s var(--easing-outquart);
	}
	.stageFooter__x > a:hover {
		transform: scale(0.93);
	}
	.stageFooter__x--icon {
		transition: transform .8s var(--easing-outquart);
	}
	.stageFooter__x > a:hover .stageFooter__x--icon {
		transform: rotateY(360deg);
	}
}

.stageFooter__top {
	display: none;
}
@media screen and (max-width:767px){
	.stageFooter__top {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: calc(100 / var(--vw-min) * 100vw);
		margin: auto;
		position: absolute;
		bottom: calc(30 / var(--vw-min) * 100vw);
		right: calc(50 / var(--vw-min) * 100vw);
		z-index: 2;
	}
	.stageFooter__top > a {
		color: var(--color-blue);
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		text-decoration: none;
		font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
		letter-spacing: -.01em;
		line-height: 1;
		white-space: nowrap;
		text-align: center;
	}
	.stageFooter__top--icon {
		display: block;
		width: 100%;
		padding-top: 100%;
		position: relative;
		margin-bottom: 0.4em;
	}
	.stageFooter__top--icon:before {
		content: "";
		background: url(../img/common/icon/icon_top.svg) no-repeat 0 0 / contain;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
}

/*-----------------------------------------------
 * first animation
-------------------------------------------------*/
.first__bgWrap {
	transform: scale(1.2);
	filter:brightness(250%);
	transition: all 3.5s var(--easing-outquart);
}
.first__bgWrap.is-ani {
	transform: scale(1);
	filter:brightness(100%);
}
.first__charaWrap {
	transform: translateY(5%);
	opacity: 0;
	transition: transform 1.5s var(--easing-outquart),
				opacity 1s var(--easing-outquart);
}
.first__charaWrap.is-ani {
	transition-delay: .3s;
	transform: translateY(0);
	opacity: 1;
}
.first__hgroup {
	transform: translateY(-100%);
	transition: transform .8s var(--easing-outquart);
}
.first__hgroup.is-ani {
	transition-delay: .8s;
	transform: translateX(0);
}
.first__date img {
	transform: translateY(40%);
	opacity: 0;
	transition: all .8s var(--easing-outquart);
}
.first__date.is-ani img {
	transition-delay: .8s;
	opacity: 1;
	transform: translateX(0);
}

/*-----------------------------------------------
 * scroll animation
-------------------------------------------------*/
.secTitle {
	transform: translateY(-50%);
	opacity: 0;
	transition: all .4s var(--easing-outquart);
}
.secTitle.is-ani {
	transition-delay: .1s;
	transform: translateY(0);
	opacity: 1;
}
.staffLists {
	transform: translateY(-20%);
	opacity: 0;
	transition: all .8s var(--easing-outquart);
}
.staffLists.is-ani {
	transition-delay: .1s;
	transform: translateY(0);
	opacity: 1;
}
.charaLists__item__inner {
	transform: translateY(8%);
	opacity: 0;
	transition: all .8s var(--easing-outquart);
}
.charaListsWrap.is-ani .charaLists__item__inner {
	transition-delay: .1s;
	transform: translateY(0);
	opacity: 1;
}
