@charset "utf-8";
/*-----------------------------------------------
 * Loading
 * firstArea
 * Modal contents
-------------------------------------------------*/
/*-----------------------------------------------
 * Loading
-------------------------------------------------*/
#loading {
	background-color: #fff;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 20000;
}


/*-----------------------------------------------
 * firstArea
-------------------------------------------------*/
.firstArea {
	display: flex;
	width: 100%;
	position: relative;
}
@media screen and (max-width:960px){
	.firstArea {
		display: block;
	}
}

/**
 * titleArea
 */
.firstArea__titleArea {
	width: 50%;
	position: relative;
	z-index: 2;
}
@media screen and (max-width:960px){
	.firstArea__titleArea {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
	}
}

/* sticky */
.firstArea__titleArea__sticky {
	width: 100%;
	height: 100vh;
	min-height: var(--common-min-height);
	position: sticky;
	top: 0;
}
@media screen and (max-width:960px){
	.firstArea__titleArea__sticky {
		height: auto;
		min-height: auto;
		position: absolute;
	}
}

/* imgWrap */
.firstArea__titleImgWrap {
	width: 12.83333vw;
	height: 100%;
	margin: auto;
	padding: min(8.16666vw,100px) 0 min(11.16666vw,130px);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.firstArea__titleImgWrap img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
@media screen and (max-width:960px){
	.firstArea__titleImgWrap {
		width: 21.53333vw;
		height: auto;
		padding: 0;
		top: 4vw;
		left: 4vw;
		bottom: auto;
	}
	.firstArea__titleImgWrap img {
		height: auto;
		object-fit: unset;
	}
}

/**
 * navListsWrap
 */
.firstArea__navListsWrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: min(3.6vw,40px);
	position: absolute;
	bottom: 0;
}
@media screen and (max-width:960px){
	.firstArea__navListsWrap {
		display: none;
	}
}

/* navLists */
.firstArea__navLists {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	flex-wrap: wrap;
}
.firstArea__navLists:before {
	content:'';
	width:100%;
	display: block;
	order:1;
}
.firstArea__navLists__item {
	height: 100%;
	padding: 0 min(calc(10 / 1200 * 100vw), 10px);
}
.firstArea__navLists__item:nth-child(n + 6){
	order:10;
}
@media screen and (min-width:1720px){
	.firstArea__navLists:before {
		display: none;
	}
}

/* a */
.firstArea__navLists__item > a {
	color: #000;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top:min(0.4vw,3px);
	height: min(3.6vw,40px);
	font-size: var(--fontsize-14);
	letter-spacing: .01em;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	white-space: nowrap;
}
@media screen and (max-width:960px){
	.firstArea__navLists__item > a {
		font-size: var(--fontsize-16);
	}
}

/* line */
.firstArea__navLists__item > a:before {
	content: "";
	background-color: #000;
	width: 100%;
	height: 5px;
	position: absolute;
	bottom: 0;
	transition: transform .3s ease;
}
.firstArea__navLists__item > a:before {
	transform: translateY(5px);
}
.firstArea__navLists__item > a:hover:before {
	transform: translateY(0);
}

/**
 * linkArea
 */
.firstArea__linkArea {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: min(3.33333vw,40px);
	position: absolute;
	top: min(1.33333vw, 16px);
}
@media screen and (max-width:960px){
	.firstArea__linkArea {
		display: none;
	}
}

/* tw */
.firstArea__tw {
	height: 100%;
	margin-right: min(3.33333vw,40px);
}
.firstArea__tw > a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: var(--fontsize-12);
	letter-spacing: .01em;
	text-decoration: none;
}
.firstArea__tw > a:after {
	content: "";
	background-color: #000;
	display: block;
	-webkit-mask-image: url(../img/common/icon/icon_tw.svg);
	mask-image: url(../img/common/icon/icon_tw.svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%;
	mask-size: 100%;
	width: min(1.83333vw,22px);
	height: min(1.5vw,18px);
	margin-left: min(1.66666vw,20px);
}

/**
 * shareDl
 */
.firstArea__shareDl {
	display: flex;
	align-items: center;
	height: 100%;
}

/* dt, dd */
.firstArea__shareDl--dt {
	font-size: var(--fontsize-12);
	letter-spacing: .01em;
}
.firstArea__shareDl--dd {
	height: 100%;
	margin-left: min(1.33333vw, 16px);
}

/**
 * shareLists
 */
.firstArea__shareLists {
	display: flex;
	align-items: center;
	height: 100%;
}
.firstArea__shareLists__item {
	width: min(3.33333vw,40px);
	height: min(3.33333vw,40px);
}
.firstArea__shareLists__item:not(:first-child) {
	margin-left:  min(.4vw,10px);
}

/* a */
.firstArea__shareLists__item > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.firstArea__shareLists__item > a:before {
	content: "";
	background-color: #000;
	display: block;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%;
	mask-size: 100%;
}

/* 各SNS */
.firstArea__shareLists__item.is-twitter > a:before {
	-webkit-mask-image: url(../img/common/icon/icon_tw.svg);
	mask-image: url(../img/common/icon/icon_tw.svg);
	width: min(1.83333vw,22px);
	height: min(1.5vw,18px);
}
.firstArea__shareLists__item.is-facebook > a:before {
	-webkit-mask-image: url(../img/common/icon/icon_fb.svg);
	mask-image: url(../img/common/icon/icon_fb.svg);
	width: min(1.66666vw,20px);
	height: min(1.66666vw,20px);
}
.firstArea__shareLists__item.is-line > a:before {
	-webkit-mask-image: url(../img/common/icon/icon_line.svg);
	mask-image: url(../img/common/icon/icon_line.svg);
	width: min(1.66666vw,20px);
	height: min(1.66666vw,20px);
}

/**
 * vsArea
 */
.firstArea__vsArea {
	width: 50%;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:960px){
	.firstArea__vsArea {
		width: 100%;
	}
}

/* vsImgWrap */
.firstArea__vsImgWrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 100vh;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.firstArea__vsImgWrap img {
	width: 100%;
	transform: scale(1.3);
	transition: transform 5.5s var(--easing-outquart);
}
.firstArea__vsImgWrap img.is-on {
	transform: scale(1);
}
@media screen and (max-width:960px){
	.firstArea__vsImgWrap {
		min-height: auto;
	}
}

/**
 * start
 */
.firstArea__startWrap {
	width: 1.91666vw;
	max-width: 31px;
	height: 100%;
	position: absolute;
	top: 0;
	right: min(1.66666vw,20px);
	z-index: 2;
}
.firstArea__start {
	width: 100%;
	height: 100vh;
	min-height: var(--common-min-height);
	position: sticky;
	top: 0;
	padding-top: min(1.66666vw,20px);
	padding-bottom: min(6.66666vw, 80px);
}
.firstArea__start img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: top;
}
@media screen and (max-width:960px){
	.firstArea__startWrap {
		width: 4.13333vw;
		height: auto;
		top: 24.53333vw;
		right: 7.8vw;
		position: absolute;
	}
	.firstArea__start {
		height: auto;
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
	}
	.firstArea__start img {
		height: auto;
		object-fit: unset;
		object-position: unset;
	}
}

/**
 * catch1
 */
 .firstArea__catch1Wrap {
	width: 1.91666vw;
	max-width: 31px;
	height: 100%;
	position: absolute;
	top: 0;
	left: min(1.66666vw,20px);
	z-index: 2;
}
.firstArea__catch1 {
	width: 100%;
	height: 100vh;
	min-height: var(--common-min-height);
	position: sticky;
	top: 0;
	padding-top: min(1.66666vw,20px);
	padding-bottom: min(6.66666vw, 80px);
}
.firstArea__catch1 img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: top;
}
@media screen and (max-width:960px){
	.firstArea__catch1Wrap {
		width: 4.13333vw;
		height: auto;
		top: 7.46666vw;
		left: 3.8vw;
		position: absolute;
	}
	.firstArea__catch1 {
		height: auto;
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
	}
	.firstArea__catch1 img {
		height: auto;
		object-fit: unset;
		object-position: unset;
	}
}

/**
 * catch2
 */
 .firstArea__catch2Wrap {
	width: 90%;
	max-width: 730px;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 2;
}
.firstArea__catch2 {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: var(--common-min-height);
	position: sticky;
	top: 0;
}
.firstArea__catch2 img {
	width: 100%;
	margin-top: auto;
	margin-bottom: min(3.66666vw,44px);
}
@media screen and (max-width:960px){
	.firstArea__catch2Wrap {
		width: 96.26666vw;
		height: auto;
		top: auto;
		bottom: 0;
		position: absolute;
	}
	.firstArea__catch2 {
		display: block;
		height: auto;
		position: relative;
	}
	.firstArea__catch2 img {
		margin-bottom: min(4vw,30px);
	}
}

/**
 * copyright
 */
.firstArea__copyright {
	color: #000;
	display: block;
	font-size: min(0.83333vw,10px);
	position: fixed;
	bottom: min(0.83333vw,10px);
	right: min(0.83333vw,10px);
	z-index: 2;
}
@media screen and (max-width:960px){
	.firstArea__copyright {
		display: none;
	}
}

/**
 * movie
 * SP only
 */
.movieLinkWrap {
	display: none;
}
.bnrLinkWrap {
	display: none;
}
@media screen and (max-width:960px){
	.movieLinkWrap {
		display: block;
		width: 100%;
		padding-top: 56.25%;
		position: relative;
	}
	.movieLinkWrap > a {
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
	}
	.movieLinkWrap > a:before {
		content: "";
		background-color: rgba(0,0,0,.4);
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
	}
	.movieLinkWrap > a:after {
		content: "";
		background: url(../img/common/icon/icon_play.png) no-repeat 0 0 / 100%;
		width: 10.93333vw;
		height: 10.93333vw;
		margin: auto;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	.bnrLinkWrap {
		display: block;
		width: 100%;
		position: relative;
		margin: 30px auto 0;
		text-align: center;
	}
}

/**
 * fani-c
 */
.fani-c {
	-webkit-filter: blur(15px);
	-moz-filter: blur(15px);
	filter: blur(15px);
	opacity: 0;
	transition: all 1.2s ease-in-out;
}
.fani-c.is-on {
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	filter: blur(0);
	opacity: 1;
}


/*-----------------------------------------------
 * Modal contents
-------------------------------------------------*/
/**
 * intro
 */
.introCont__textWrap {
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
	width: 100%;
	margin-right: min(1.33333vw,16px);
}
@media screen and (max-width:960px){
	.introCont__textWrap {
		margin-right: 0;
	}
}

/* text */
.introCont__text {
	color: #000;
	font-size: min(1.3vw, 22px);
	line-height: 2.4;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}
.introCont__text.is-on {
	min-width: min(1.3vw, 22px);
}
@media screen and (max-width:960px){
	.introCont__text {
		font-size: 3vw;
	}
}

/**
 * Cast staff
 */
.staffcastArea {
	width: 100%;
	min-height: 100vh;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}
@media screen and (max-width:960px){
	.staffcastArea:before {
		content: "";
		background: url(../img/common/bg/subcont_bg_sp.jpg) no-repeat 0 0 / 100%;
		display: block;
		width: 100%;
		height: 40vw;
		position: relative;
		z-index: 0;
	}
	.staffcastArea:after {
		content: "";
		background-color: #bebebe;
		width: 1px;
		height: 100%;
		pointer-events: none;
		position: absolute;
		top: 0;
		right: 9.9vw;
		z-index: 1;
	}
}

/* cont */
.staffcastArea__cont {
	position: relative;
}
.staffcastArea__cont:last-of-type:before {
	content: "";
	background-color: #bebebe;
	width: 100vw;
	height: 1px;
	position: absolute;
	top: 0;
}
@media screen and (max-width:960px){
	.staffcastArea__cont:last-of-type:after {
		content: "";
		background-color: #bebebe;
		width: 100vw;
		height: 1px;
		position: absolute;
		bottom: 0;
	}
}

/* inner */
.staffcastArea__cont__inner {
	width: 70%;
	max-width: 1030px;
	margin: 0 auto;
	display: flex;
	flex-direction: row-reverse;
	position: relative;
	padding-top: 120px;
	padding-bottom: 120px;
}
.staffcastArea__cont:last-of-type .staffcastArea__cont__inner {
	padding-bottom: 300px;
}
.staffcastArea__cont__inner:before {
	content: "";
	background-color: #bebebe;
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 52px;
}
@media screen and (max-width:960px){
	.staffcastArea__cont__inner {
		width: 100%;
		max-width: 100%;
		padding-top: calc(80 / 750 * 100vw);
		padding-bottom: calc(80 / 750 * 100vw);
	}
	.staffcastArea__cont:last-of-type .staffcastArea__cont__inner {
		padding-bottom: calc(80 / 750 * 100vw);
	}
	.staffcastArea__cont__inner:before {
		content: none;
	}
}

/* title */
.staffcastArea__title {
	color: #bebebe;
	font-size: 34px;
	line-height: 1;
	margin-left: 60px;
	position: relative;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}
@media screen and (max-width:960px){
	.staffcastArea__title {
		font-size: 3.2vw;
		margin-left: 4vw;
		padding-right: 3vw;
	}
}

.caststaffListsWrap {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}
@media screen and (max-width:960px){
	.caststaffListsWrap{
		display: flex;
		justify-content: center;
		width: 100%;
		margin-right: 0;
		margin-bottom: 10vw;
		padding: 0 6vw;
	}
}

/* lists */
.caststaffLists {
	display: flex;
	flex-direction: row-reverse;
	gap: min(2vw, 24px);
}
@media screen and (max-width:960px){
	.caststaffLists {
		font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
		flex-wrap: wrap;
		font-weight: 700;
		gap: 8vw 3.2vw;
	}
	/* .caststaffLists.is-staff {
		padding: 0 13vw;
	} */
}

/* item */
.caststaffLists__item {
	color: #000;
	display: flex;
	align-items: center;
	font-size: min(1.33333vw, 16px);
	line-height: 1.4;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	min-width: 1em;
}
.caststaffLists.is-cast .caststaffLists__item {
	font-size: min(2vw, 24px);
}
@media screen and (max-width:960px){
	.caststaffLists__item,
	.caststaffLists.is-cast .caststaffLists__item {
		font-size: 3.2vw;
	}
}

/* fontS */
.caststaffLists__fontS {
	font-size: 80%;
}

/* commentBtn */
.caststaffLists__commentBtn {
	background: url(../img/common/icon/icon_comment.png) no-repeat 0 0 / 100%;
	display: inline-block;
	width: min(2.16666vw,26px);
	height: min(2vw,24px);
	margin-top: 10px;
}
@media screen and (max-width:960px){
	.caststaffLists__commentBtn {
		width: 4vw;
		height: 4vw;
		margin-top: 6px;
	}
}

/**
 * comment
 */
.commentWrap {
	-webkit-overflow-scrolling: touch;
	background: rgba(255,255,255,1);
	display: none;
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
.comment {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.comment__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: auto;
	width: 100%;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.comment__contWrap {
	display: flex;
	max-width: min(80vw,960px);
	padding: min(4.16666vw,50px) 0;
	position: relative;
}
@media screen and (max-width:960px){
	.comment__contWrap {
		display: block;
		max-width: 100%;
		padding: 16vw 6.66666vw;
	}
}

/* img */
.comment__photo {
	width: min(25vw,300px);
	margin-right: min(2.5vw,30px);
	flex: none;
}
.comment__photo img {
	width: 100%;
}
@media screen and (max-width:960px){
	.comment__photo {
		width: 40vw;
		max-width: 300px;
		margin-bottom: 6vw;
		margin-right: auto;
		margin-left: auto;
	}
}

/* text */
.comment__textWrap {
	width: 100%;
}
.comment__name {
	font-size: var(--fontsize-24);
	line-height: 1.4;
}
.comment__name__fontS {
	font-size: 60%;
}

.comment__text {
	font-size: var(--fontsize-16);
	line-height: 2;
	margin-top: min(2vw, 24px);
}
@media screen and (max-width:960px){
	.comment__text {
		margin-top: min(4vw, 30px);
	}
}


/**
 * books
 */
/* novel, comics */
/* .modalSubContOne.is-novel {
	order: 2;
	margin-right: min(5vw, 60px);
}
.modalSubContOne.is-comics {
	order: 1;
	margin-right: 0;
}
@media screen and (max-width:960px){
	.modalSubContOne.is-novel,
	.modalSubContOne.is-comics {
		order: initial;
		margin-right: 0;
	}
} */

/* bookLists */
.bookLists {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	gap: min(3.33333vw,40px);
	margin-right: min(3.33333vw,50px);
}
@media screen and (max-width:960px){
	.bookLists {
		display: block;
		width: 77vw;
		margin-right: auto;
		margin-left: auto;
	}
}

/* item */
.bookLists__item {
	display: flex;
	flex-direction: column;
	width: min(20.5vw,300px);
}
.bookLists__flex {
	margin-bottom:min(1.66666vw, 20px);
}
@media screen and (max-width:960px){
	.bookLists__item {
		display: block;
		width: 100%;
	}
	.bookLists__item:not(:first-child) {
		margin-top: 8vw;
	}
	.bookLists__flex {
		display: flex;
		margin-bottom:0;
	}

	/* bottom */
	.bookLists__bottom {
		margin-top: auto;
		padding-left: 4vw;
	}
}

/* img */
.bookLists__imgWrap {
	width: 100%;
	margin-bottom: min(1.66666vw, 20px);
}
.bookLists__imgWrap img {
	width: 100%;
}
@media screen and (max-width:960px){
	.bookLists__imgWrap {
		flex: none;
		width: 33.3333vw;
		margin-bottom: 0;
	}
}

/* subtitle */
.bookLists__subTitle {
	font-size: var(--fontsize-16);
	line-height: 1.4;
}
@media screen and (max-width:960px){
	.bookLists__subTitle {
		margin-bottom: min(1.66666vw, 20px);
	}
}

/* title */
.bookLists__title {
	font-size: var(--fontsize-24);
	line-height: 1.4;
	padding-bottom: min(1.66666vw, 20px);
	position: relative;
}
.bookLists__title:before {
	content: "";
	background-color: #000;
	width: 90px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.bookLists__title__fontS {
	font-size: 80%;
}
@media screen and (max-width:960px){
	.bookLists__title {
		padding-bottom: min(2.66666vw, 20px);
	}
	.bookLists__title:before {
		width: 40%;
	}
}

/* text */
.bookLists__text {
	font-size: var(--fontsize-16);
	margin-top: min(1.66666vw, 20px);
}
.bookLists__text__fontmin {
	display: block;
	font-size: 80%;
	line-height: 1.6;
}
@media screen and (max-width:960px){
	.bookLists__text {
		margin-top: 2.66666vw;
	}
}

/* link */
.bookLists__link {
	margin-top: auto;
}
.bookLists__link > a {
	color: #fff;
	background-color: #000;
	display: block;
	font-size: var(--fontsize-16);
	padding: 8px 0;
	text-align: center;
	text-decoration: none;
}
@media screen and (max-width:960px){
	.bookLists__link {
		margin-top: 5vw;
	}
}

/**
 * Character
 */
.charaCont {
	display: flex;
	align-items: center;
	margin-right: min(2.5vw,30px);
	position: relative;
}
.charaCont.is-select {
	margin-right: 1px;
}
.charaCont__one {
	display: none;
}
.charaCont__one.is-active {
	display: block;
}
.charaCont__one__flex {
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	width: 863px;
}
@media screen and (max-width:960px){
	.charaCont {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.charaCont.is-select {
		margin-right: 0;
	}
	.charaCont__one__flex {
		-webkit-writing-mode: inherit;
		writing-mode: inherit;
		display: block;
		width: 100%;
	}
}

/* name */
.charaCont__name {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #000;
	display: flex;
	align-items: center;
	font-size:24px;
	font-weight: 700;
	line-height: 1.4;
	margin-right: min(1.66666vw,20px);
	white-space: nowrap;
	flex: none;
	position: relative;
}
.charaCont__name--rubyWrap {
	position: relative;
}
.charaCont__name--ruby {
	font-size: 48%;
	position: absolute;
	top: 50%;
	right: -1em;
	transform: translateY(-50%);
}
@media screen and (max-width:960px){
	.charaCont__name {
		font-size: 3.2vw;
		position: absolute;
		top: 0;
		right: 4vw;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
	}
	.charaCont__name--ruby {
		font-size: calc(10 / 750 * 100vw);
		right: -1.2em;
	}
}

/* img */
.charaCont__imgWrap {
	flex: none;
	width: 550px;
	margin-right: 20px;
}
.charaCont__imgWrap img {
	width: 100%;
}
@media screen and (max-width:960px){
	.charaCont__imgWrap {
		width: 75.2vw;
		margin-top: 1.33333vw;
		margin-right: auto;
		margin-left: auto;
	}
}

/* text */
.charaCont__textWrap {
	/* display: flex;
	align-items: center;
	justify-content: center; */
	margin-right: min(1.66666vw,20px);
}
.charaCont__text__cont {
	/* display: flex;
	flex-direction: row-reverse; */
}
.charaCont__text {
	display: flex;
	font-size: 16px;
	line-height: 2.5;
	white-space: nowrap;
}
.charaCont__text.is-on {
	min-width: min(1.33333vw, 16px);
}
@media screen and (max-width:960px){
	.charaCont__textWrap {
		align-items: center;
		margin-top: 8vw;
		margin-right: 0;
	}
	.charaCont__text {
		margin-top: 8vw;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		font-size: 2.66666vw;
		width: 100%;
		align-items: center;
	}
	.charaCont__text.is-on {
		min-width: 2.66666vw;
	}
}

/**
 * charaNavLists
 */
.charaNavLists {
	width: 136px;
}
.charaNavLists > li,
.charaNavLists > li img {
	width: 100%;
}
.charaNavLists > li:not(:first-child) {
	border-top: 1px solid #bebebe;
}
@media screen and (max-width:960px){
	.charaNavLists {
		margin-top: -6.66666vw;
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		height: auto;
		padding-right: 1.7vw;
	}
	.charaNavLists > li {
		width: 50%;
	}
	.charaNavLists > li:not(:first-child) {
		border-top:none;
	}
	.charaNavLists > li:nth-child(n + 3) {
		border-top: 1px solid #bebebe;
	}
	.charaNavLists > li:nth-child(even) {
		border-left: 1px solid #bebebe;
	}
}

.charaNavLists > li > a {
	background-color: #000;
	display: block;
	transition: background-color .3s ease;
}

/* chara color */
.charaNavLists > li.charaNum1 > a:is(:hover, .is-active) { background-color: rgb(var(--color-mao)); }
.charaNavLists > li.charaNum2 > a:is(:hover, .is-active) { background-color: rgb(var(--color-zinsi)); }
.charaNavLists > li.charaNum3 > a:is(:hover, .is-active) { background-color: rgb(var(--color-gaosyun)); }
.charaNavLists > li.charaNum4 > a:is(:hover, .is-active) { background-color: rgb(var(--color-gyokuyouhi)); }
.charaNavLists > li.charaNum5 > a:is(:hover, .is-active) { background-color: rgb(var(--color-syaoran)); }
.charaNavLists > li.charaNum6 > a:is(:hover, .is-active) { background-color: rgb(var(--color-rifahi)); }
.charaNavLists > li.charaNum7 > a:is(:hover, .is-active) { background-color: rgb(var(--color-risyuhi)); }
.charaNavLists > li.charaNum8 > a:is(:hover, .is-active) { background-color: rgb(var(--color-aduohi)); }
.charaNavLists > li.charaNum9 > a:is(:hover, .is-active) { background-color: rgb(var(--color-rihaku)); }
.charaNavLists > li.charaNum10 > a:is(:hover, .is-active) { background-color: rgb(var(--color-ouranhi)); }
.charaNavLists > li.charaNum11 > a:is(:hover, .is-active) { background-color: rgb(var(--color-suirei)); }
.charaNavLists > li.charaNum12 > a:is(:hover, .is-active) { background-color: rgb(var(--color-rakan)); }

@media screen and (max-width:960px){
	.modalSubContOne.is-charaNav {
		padding: 6.66666vw 0 0 0;
	}
}

/**
 * movieLists
 */
.movieListsWrap {
	margin-right: min(3.33333vw,50px);
}
.movieLists {
	width: min(calc(800 / 1200 * 100vw), 800px);
}
@media screen and (max-width:960px){
	.movieListsWrap {
		margin-right: 8.5vw;
	}
	.movieLists {
		width: 77vw;
		margin-right: auto;
		margin-left: auto;
	}
}

/* item */
.movieLists > li:not(:first-child) {
	margin-top: min(calc(30 / 1200 * 100vw), 30px);
}
@media screen and (max-width:960px){
	.movieLists > li:not(:first-child) {
		margin-top: 4vw;
	}
}

/* link */
.movieLists__linkWrap {
	width: 100%;
	overflow: hidden;
	padding-top: 56.25%;
	position: relative;
}
.movieLists__link {
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
}
.movieLists__link:before {
	content: "";
	background-color: rgba(0,0,0,.4);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: 1;
}
.movieLists__link:after {
    content: "";
    background: url(../img/common/icon/icon_play.png) no-repeat 0 0 / 100%;
    width: min(calc(50 / 1200 * 100vw), 50px);
    height: min(calc(50 / 1200 * 100vw), 50px);
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index: 2;
}
@media screen and (max-width:960px){
	.movieLists__link:after {
		width: 10vw;
		height: 10vw;
	}
}

/* hover */
.movieLists__link {
	transition: transform .4s ease;
}
.movieLists__link:hover {
	transform: scale(1.15);
}

/* title */
.movieLists__title {
	font-size: min(calc(16 / 1200 * 100vw), 16px);
	text-align: center;
	margin-top: 1em;
}
@media screen and (max-width:960px){
	.movieLists__title {
		font-size: 3.2vw;
	}
}
.movieCont {
	position: relative;
	padding-top: 80px;
}
.movieCont:not(:first-of-type) {
	display: none
}
@media screen and (max-width:960px){
	.movieCont {
		padding-top: calc(20 / 750 * 100vw);
	}
}
/**
 * movieNavLists
 */
.movieNavLists {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: min(calc(50 / 1200 * 100vw), 50px);
}

.movieNavLists > li {
	width: min(calc(250 / 1200 * 100vw), 250px);
	height: min(calc(50 / 1200 * 100vw), 50px);
}
.movieNavLists > li:not(:first-child) {
	margin-left: min(calc(20 / 1200 * 100vw), 20px);
}
@media screen and (max-width:960px){
	.movieNavLists {
		margin-bottom: calc(50 / 750 * 100vw);
/*		padding: 0 calc(48 / 750 * 100vw);*/
	}
	.movieNavLists > li {
		width: calc(100% - calc(20 / 750 * 100vw));
		height: calc(60 / 750 * 100vw);
	}
	.movieNavLists > li:not(:first-child) {
		margin-left: calc(20 / 750 * 100vw);
	}
}

.movieNavLists > li > a {
	background-color: #000;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: min(calc(14 / 1200 * 100vw), 14px);
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
}
@media screen and (max-width:960px){
	.movieNavLists > li > a {
		font-size: min(calc(20 / 750 * 100vw));
	}
}
.movieNavLists > li > a.is-active {
	background:rgb(var(--color-green));
	pointer-events: none;
}
.movieNavLists > li > a:before {
	content: "";
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	display: block;
	margin: auto;
	position: absolute;
	top: -0.3em;
	bottom: 0;
	right: min(calc(12 / 1200 * 100vw), 12px);
	width: min(calc(6 / 1200 * 100vw), 6px);
	height: min(calc(6 / 1200 * 100vw), 6px);
	transform: rotate(135deg);
}
@media screen and (max-width:960px){
	.movieNavLists > li > a:before {
		width:min(calc(8 / 750 * 100vw));
		height:min(calc(8 / 750 * 100vw));
		right:min(calc(20 / 750 * 100vw));
	}
}


/**
 * modalVisualArea
 */
.modalVisualArea {
	width: 26%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
}
.modalVisualArea img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
	object-position: center;
	position: sticky;
	top: 0;
}

/**
 * musicCont
 */
.musicContWrap {
	width: 100%;
	margin-bottom: 250px;
}
.musics:not(:first-of-type){
	display: none;
}
.musicCont {
	padding-top: 120px;
}
@media screen and (max-width:960px){
	.musicContWrap {
		margin-bottom: calc(80 / 750 * 100vw);
		margin-right: 1.7vw;
	}
	.musicCont {
		padding-top: calc(20 / 750 * 100vw);
	}
	.musicCont:not(:first-of-type) {
		margin-top: calc(100 / 750 * 100vw);
	}
}

/**
 * musicNavLists
 */
.musicNavLists {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: min(calc(50 / 1200 * 100vw), 50px);
}

.musicNavLists > li {
	width: min(calc(250 / 1200 * 100vw), 250px);
	height: min(calc(50 / 1200 * 100vw), 50px);
}
.musicNavLists > li:not(:first-child) {
	margin-left: min(calc(20 / 1200 * 100vw), 20px);
}
@media screen and (max-width:960px){
	.musicNavLists {
		margin-bottom: calc(50 / 750 * 100vw);
		flex-wrap: wrap;
		justify-content: center;
/*		padding: 0 calc(48 / 750 * 100vw);*/
	}
	.musicNavLists > li {
		width: 46%;
		height: calc(60 / 750 * 100vw);
		margin:0 1% 2.4vw;
	}
	.musicNavLists > li:last-child {
		width:75%;
	}
}

.musicNavLists > li > a {
	background-color: #000;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: min(calc(14 / 1200 * 100vw), 14px);
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
}
@media screen and (max-width:960px){
	.musicNavLists > li > a {
		font-size: min(calc(20 / 750 * 100vw));
	}
}
.musicNavLists > li > a.is-active {
	background:rgb(var(--color-green));
	pointer-events: none;
}
.musicNavLists > li > a:before {
	content: "";
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	display: block;
	margin: auto;
	position: absolute;
	top: -0.3em;
	bottom: 0;
	right: min(calc(12 / 1200 * 100vw), 12px);
	width: min(calc(6 / 1200 * 100vw), 6px);
	height: min(calc(6 / 1200 * 100vw), 6px);
	transform: rotate(135deg);
}
@media screen and (max-width:960px){
	.musicNavLists > li > a:before {
		width:min(calc(8 / 750 * 100vw));
		height:min(calc(8 / 750 * 100vw));
		right:min(calc(20 / 750 * 100vw));
	}
}


/* title */
.musicCont__title {
	border-bottom: 1px solid #bebebe;
	font-size: var(--fontsize-20);
	margin-bottom: 2em;
	padding-bottom: 1em;
}
.musicCont__title > span {
	display: block;
	width: 86%;
	margin: 0 auto;
}
@media screen and (max-width:960px){
	.musicCont__title > span {
		width: 100%;
		padding: 0 calc(40 / 750 * 100vw);
	}
}

/* textArea */
.musicCont__textArea {
	width: 86%;
	margin: 0 auto;
}
.musicCont__textArea img {
	max-width: 100%;
}
@media screen and (max-width:960px){
	.musicCont__textArea {
		width: 100%;
		padding: 0 calc(40 / 750 * 100vw);
	}
}

/* img */
.musicCont__imgWrap {
	display: flex;
	justify-content: center;
}

/* text */
.musicCont__text {
	font-size: var(--fontsize-16);
	line-height: 2;
	margin-top: min(3.33333vw,40px);
}

/* comment */
.musicCont__comment__item {
	border: 1px solid #000;
	font-size: var(--fontsize-16);
	margin-top: min(3.33333vw,40px);
	padding: min(calc(26 / 1200 * 100vw), 26px) min(calc(30 / 1200 * 100vw), 30px);
}
.musicCont__comment__item > dt {
	color: rgb(var(--color-green));
	margin-bottom: 1em;
}
.musicCont__comment__item > dd {
	line-height: 2;
}

/**
 * onairCont
 */
.onairContWrap {
	width: 100%;
	margin-bottom: 250px;
}
.onairCont {
	position: relative;
	padding-top: 120px;
}
@media screen and (max-width:960px){
	.onairContWrap {
		margin-bottom: calc(80 / 750 * 100vw);
		margin-right: 1.7vw;
	}
	.onairCont {
		padding-top: calc(20 / 750 * 100vw);
	}
	.onairCont:not(:first-of-type) {
		margin-top: calc(100 / 750 * 100vw);
	}
}

/* title */
.onairCont__title {
	border-bottom: 1px solid #bebebe;
	font-size: var(--fontsize-20);
	margin-bottom: 1.5em;
	padding-bottom: 1em;
}
.onairCont__title > span {
	display: block;
	width: 86%;
	margin: 0 auto;
}
@media screen and (max-width:960px){
	.onairCont__title > span {
		width: 100%;
		padding: 0 calc(40 / 750 * 100vw);
	}
}

/* st title */
.onairCont__sttitle {
	color: #bebebe;
    font-size: 34px;
    line-height: 1;
    position: relative;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
	position: absolute;
	top: 120px;
	right: -1.6em;
}
@media screen and (max-width:960px){
	.onairCont__sttitle {
		font-size: 3.2vw;
		top: 0;
		right: -2.3em;
	}
}

/* inner */
.onairCont__inner {
	width: 86%;
	margin: 0 auto;
}
@media screen and (max-width:960px){
	.onairCont__inner {
		width: 100%;
		padding: 0 calc(40 / 750 * 100vw);
	}
}

/* catch */
.onairCont__catch {
	font-size: var(--fontsize-22);
	text-align: center;
	margin-bottom: min(calc(40 / 1200 * 100vw), 40px);
}

/**
 * onairTvLists
 */
.onairTvLists__item {
	border-bottom: 1px solid rgba(0,0,0,.1);
	display: flex;
	font-size: var(--fontsize-16);
	padding: 24px 0;
	position: relative;
}
@media screen and (max-width:960px){
	.onairTvLists__item {
		flex-direction: column;
		padding: calc(24 / 750 * 100vw) 0;
	}
}

/* dt */
.onairTvLists__item > dt {
	color: rgb(var(--color-green));
	width: 22%;
}
@media screen and (max-width:960px){
	.onairTvLists__item > dt {
		width: 100%;
	}
}

/* dd */
.onairTvLists__item > dd {
	width: 78%;
}
@media screen and (max-width:960px){
	.onairTvLists__item > dd {
		width: 100%;
	}
}

/* caution */
.onairTvLists--caution {
	font-size: var(--fontsize-14);
}

.onairCont__caution {
	font-size: var(--fontsize-12);
	margin-top: 4em;
}
@media screen and (max-width:960px){
	.onairCont__caution {
		margin-top: 2em;
	}
}

/**
 * onairStLists
 */
.onairStListsArea:not(:first-of-type) {
	margin-top: min(calc(60 / 1200 * 100vw), 60px);
}

/* title */
.onairStListsArea__title {
	font-size: min(calc(24 / 1200 * 100vw), 24px);
	margin-bottom: 1.3em;
	padding-bottom: 0.8em;
	position: relative;
}
.onairStListsArea__title:before {
	content: "";
	background-color: #000;
	width: 0.8em;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.onairStListsArea__title__ja {
	font-size: 70%;
	margin-left: 1em;
}
@media screen and (max-width:960px){
	.onairStListsArea__title {
		font-size: calc(26 / var(--vw-min) * 100vw);
	}
}

 .onairStLists {
	display: flex;
	flex-wrap: wrap;
	letter-spacing: 0.01em;
}

/* item */
.onairStLists > li {
	width: calc(100% / 3);
}
.onairStLists > li > a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 100%;
	padding: 20px;
	position: relative;
	text-decoration: none;
}
.onairStLists > li > a.is-nolink {
	pointer-events: none;
}
@media screen and (max-width:960px){
	.onairStLists > li {
		width: 50%;
	}
	.onairStLists > li > a {
		padding: calc(20 / 750 * 100vw);
	}
}

/* border */
@media screen and (min-width:961px){
	.onairStLists > li {
		border-right: 1px solid rgba(0,0,0,.1);
		border-bottom: 1px solid rgba(0,0,0,.1);
	}
	.onairStLists > li:nth-child(3n + 1) {
		border-left: 1px solid rgba(0,0,0,.1);
	}
	.onairStLists > li:nth-child(-n + 3) {
		border-top: 1px solid rgba(0,0,0,.1);
	}
}
@media screen and (max-width:960px){
	.onairStLists > li {
		border-right: 1px solid rgba(0,0,0,.1);
		border-bottom: 1px solid rgba(0,0,0,.1);
	}
	.onairStLists > li:nth-child(2n + 1) {
		border-left: 1px solid rgba(0,0,0,.1);
	}
	.onairStLists > li:nth-child(-n + 2) {
		border-top: 1px solid rgba(0,0,0,.1);
	}
}

/* name */
.onairStLists__name {
	color: rgb(var(--color-green));
	display: flex;
	align-items: center;
	font-size: var(--fontsize-14);
	text-align: center;
}
.onairStLists__name:after {
	content: "";
	flex: none;
	background-color: rgb(var(--color-green));
	-webkit-mask: url(../img/common/icon/icon_blank.svg) no-repeat center / contain;
	mask: url(../img/common/icon/icon_blank.svg) no-repeat center / contain;
	width: 14px;
	height: 14px;
	margin-left: 10px;
}
.onairStLists > li a.is-nolink .onairStLists__name:after {
	content: none;
}
@media screen and (max-width:960px){
	.onairStLists__name:after {
		width: calc(20 / 750 * 100vw);
		height: calc(20 / 750 * 100vw);
		margin-left: 0.5em;
	}
}

/* date, notice */
.onairStLists__detail {
	font-size: var(--fontsize-16);
	text-align: center;
}
.onairStLists__caution {
	font-size: var(--fontsize-14);
	margin-top: 1em;
	text-align: center;
}

/* transition animation */
.onairStLists > li a {
	transition: background-color .3s ease;
}
.onairStLists > li a:hover {
	background-color: #000;
}
.onairStLists__detail,
.onairStLists__caution {
	transition: color .3s ease;
}
.onairStLists > li a:hover .onairStLists__detail,
.onairStLists > li a:hover .onairStLists__caution {
	color: #fff;
}
.streamingLists__text:after {
	transition: background-color .3s ease;
}
.onairStLists > li a:hover .streamingLists__text:after {
	background-color: #fff;
}

/**
 * onairNavLists
 */
.onairNavLists {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: min(calc(50 / 1200 * 100vw), 50px);
}

.onairNavLists > li {
	width: min(calc(200 / 1200 * 100vw), 200px);
	height: min(calc(50 / 1200 * 100vw), 50px);
}
.onairNavLists > li:not(:first-child) {
	margin-left: min(calc(20 / 1200 * 100vw), 20px);
}
@media screen and (max-width:960px){
	.onairNavLists {
		margin-bottom: calc(50 / 750 * 100vw);
		padding: 0 calc(48 / 750 * 100vw);
	}
	.onairNavLists > li {
		width: calc(100% - calc(20 / 750 * 100vw));
		height: calc(60 / 750 * 100vw);
	}
	.onairNavLists > li:not(:first-child) {
		margin-left: calc(20 / 750 * 100vw);
	}
}

.onairNavLists > li > a {
	background-color: #000;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: min(calc(14 / 1200 * 100vw), 14px);
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
}
@media screen and (max-width:960px){
	.onairNavLists > li > a {
		font-size: min(calc(20 / 750 * 100vw));
	}
}

.onairNavLists > li > a:before {
	content: "";
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	display: block;
	margin: auto;
	position: absolute;
	top: -0.3em;
	bottom: 0;
	right: min(calc(12 / 1200 * 100vw), 12px);
	width: min(calc(6 / 1200 * 100vw), 6px);
	height: min(calc(6 / 1200 * 100vw), 6px);
	transform: rotate(135deg);
}
@media screen and (max-width:960px){
	.onairNavLists > li > a:before {
		width:min(calc(8 / 750 * 100vw));
		height:min(calc(8 / 750 * 100vw));
		right:min(calc(20 / 750 * 100vw));
	}
}
/*comment bnr*/
.bnr_cmtLink{
	position: absolute;
    right: 5%;
    bottom: 13%;
    width: 25%;
	transition-delay: .8s;
}
.bnr_cmtLink img{
	width: 100%;
	height: auto;
	transition: opacity .4s ease;
}
.bnr_cmtLink:hover img{
	opacity: .6;
}

.bnr_cmtLink2{
	position: absolute;
    left: 3%;
    bottom: 13%;
    width: 35%;
	transition-delay: .8s;
}
.bnr_cmtLink2 img{
	width: 100%;
	height: auto;
	transition: opacity .4s ease;
}
.bnr_cmtLink2:hover img{
	opacity: .6;
}

@media screen and (max-width:960px){
	.firstArea__titleArea__sticky{
		height: 100%;
	}
	.bnr_cmtLink{
		position: absolute;
		right: unset;
		left: 5%;
		top: 5%;
		bottom: unset;
		width: 25%;
		transition-delay: .8s;
	}
	.bnr_cmtLink2{
		display: none;
	}
}




/*VISUAL SLIDER*/
.swiper-wrapper{
	width: 100%;
}
.vsArea_vsBox{
	width: 100%;
	position: relative;
}
.vsBox__catchWrap{
	width: 100%;
    height: 100vh;
    min-height: var(--common-min-height);
    position: fixed;
    bottom: 0;
    padding-bottom: min(6.66666vw, 80px);
	z-index: 10;

}
/*catch*/
#js-vis_catch{
	position: fixed;
	height: 100vh;
	width: 50%;
	right: 0;
	top: 0;
	z-index: 10;
	opacity: 0;
	transition: opacity .8s ease;
	background-position: right 4% top 5vh;
	background-size: 4% auto;
	background-repeat: no-repeat;
	z-index: 10;
	pointer-events: none;
}

@media screen and (max-width:960px){
	#js-vis_catch{
		position: absolute;
		height: 100vh;
		width: 100%;
		right: 0;
		top: 0;
		z-index: 10;
		opacity: 0;
		transition: opacity .8s ease;
		background-position: right 8% top 22%;
		background-size: 5% auto;
		background-repeat: no-repeat;
		z-index: 10;
		pointer-events: none;
	}
}

#js-vis_catch.visual1{
	background-image: url(../img/top/main/main_catch1.png);
}
#js-vis_catch.visual2{
	background-image: url(../img/top/main/main_catch_2nd.png);
}
#js-vis_catch.fade{
	opacity: 1;
}