@charset "utf-8";
/*-----------------------------------------------
 * Loading
 * Top
-------------------------------------------------*/
/*-----------------------------------------------
 * Loading
-------------------------------------------------*/
#loading {
	background-color: #000;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
}


/*-----------------------------------------------
 * Top
-------------------------------------------------*/
/**
 * topArea
 */
.topArea {
	width: 100%;
	height: 100vh;
	background: url(../img/top/visual.jpg) no-repeat fixed center / cover;
}
.topArea__contents {
	width: 100%;
	height: 100vh;
    display: flex;
    align-items: center;
	position: relative;
}
@media screen and (max-width:767px){
	.topArea {
		height: unset;
		background: none;
	}
	.topArea__contents {
		height: unset;
		background-color: #263d60;
		flex-direction: column;
		padding-bottom: calc(70 / var(--vw-min) * 100vw);
	}
}
/**
* center
**/
.topArea__center {
	width: calc(100% - (min(calc(220 / var(--vw-min) * 100vw),220px) * 2));
	height: 100vh;
	position: relative;
	display: flex;
	flex-direction: column;
	order: 2;
}
@media screen and (max-width:767px){
	.topArea__center {
		width: 100%;
		height: unset;
		background: url(../img/top/visual.jpg)no-repeat center / cover;
	}
}
/** staff **/
.staffLists__item{
	color: #fff;
	position: absolute;
	top: min(calc(70 / var(--vw-min) * 100vw),70px);
	right: 0;
	left: 0;
	margin: auto;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
@media screen and (max-width:767px){
	.staffLists__item {
		position: relative;
		top: unset;
		right: unset;
		left: unset;
		padding-top: calc(80 / var(--vw-min) * 100vw);
	}
}
/* text */
.staffLists__dt {
	font-size: min(calc(12 / var(--vw-min) * 100vw), calc(12px * 1.2));
	line-height: 1;
	margin-right: 1em;
}
.staffLists__name {
	font-size: min(calc(22 / var(--vw-min) * 100vw), calc(22px * 1.2));
	font-weight: 600;
	letter-spacing: 0.4em;
	line-height: 1;
}
@media screen and (max-width:767px){
	.staffLists__dt {
		font-size: calc(20 / var(--vw-min) * 100vw);
		margin-left: .8em;
	}
	.staffLists__name {
		font-size: calc(30 / var(--vw-min) * 80vw);
	}
}
/** logo **/
.topArea__logoWrap {
	display: flex;
    flex-direction: column;
    align-items: center;
	position: absolute;
	right: 0;
	bottom: min(calc(95 / var(--vw-min) * 100vw),95px);
	left: 0;
	margin: auto;
}
@media screen and (max-width:767px){
	.topArea__logoWrap {
		position: relative;
		right: unset;
		bottom: unset;
		left: unset;
		padding-top: calc(550 / var(--vw-min) * 100vw);
	}
}
.topArea__logoWrap img {
	width: 100%;
	pointer-events: none;
	vertical-align: top;
}
.logo-ja {
	width: min(calc(682 / var(--vw-min) * 100vw),682px);
	height: min(calc(86 / var(--vw-min) * 100vw),86px);
}
@media screen and (max-width:767px){
	.logo-ja {
		width: calc(682 / var(--vw-min) * 100vw);
		height: calc(86 / var(--vw-min) * 100vw);
	}
}
.logo-en {
	width: min(calc(471 / var(--vw-min) * 100vw),471px);
	height: min(calc(15 / var(--vw-min) * 100vw),15px);
}
@media screen and (max-width:767px){
	.logo-en {
		width: calc(471 / var(--vw-min) * 100vw);
		height: calc(15 / var(--vw-min) * 100vw);
	}
}
/**
* bnr
**/
.bnrAreaWrap {
	width: min(calc(220 / var(--vw-min) * 100vw),220px);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-direction: column;
	order: 3;
}
@media screen and (max-width:767px){
	.bnrAreaWrap {
		width: 100%;
		display: block;
		padding: 0 calc(55 / var(--vw-min) * 100vw);
		order: 2;
	}
}
.bnrAreaLists {
	padding-right: min(calc(30 / var(--vw-min) * 100vw),30px);
}
@media screen and (max-width:767px){
	.bnrAreaLists {
		width: calc(100% + calc(30 / var(--vw-min) * 100vw));
		display: flex;
		flex-wrap: wrap;
		padding: calc(60 / var(--vw-min) * 100vw) 0 calc(30 / var(--vw-min) * 100vw);
		margin-left: calc(-15 / var(--vw-min) * 100vw);
	}
}
.bnrAreaItem img {
	width: 100%;
	pointer-events: none;
}
.bnrAreaItem {
	width: min(calc(120 / var(--vw-min) * 100vw),120px);
	height: min(calc(120 / var(--vw-min) * 100vw),120px);
	margin-bottom: min(calc(20 / var(--vw-min) * 100vw),20px);
}
@media screen and (max-width:767px){
	.bnrAreaItem {
		width: calc(100% / 3);
		height: auto;
		padding: 0 calc(15 / var(--vw-min) * 100vw);
	}
}
.bnrAreaItemA {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	display: block;
}
/**
* movie bnr
**/
.movieBnrAreaWrap {
	width: min(calc(220 / var(--vw-min) * 100vw),220px);
	height: 100vh;
	order: 1;
}
@media screen and (max-width:767px){
	.movieBnrAreaWrap {
		width: 100%;
		height: unset;
		order: 3;
	}
}
.movieBnrLists {
	position: absolute;
	left: min(calc(20 / var(--vw-min) * 100vw),20px);
	bottom: min(calc(20 / var(--vw-min) * 100vw),20px);
	display: flex;
	z-index:500;
}
@media screen and (max-width:768px){
	.movieBnrLists {
		display: block;
		width: 87%;
		margin: 0 auto;
		position: relative;
		left: unset;
		bottom: unset;
	}
}
.movieBnrItem img {
	width: 100%;
	pointer-events: none;
}
.movieBnrItem {
	width: min(calc(200 / var(--vw-min) * 100vw),200px);
	background-color: #fff;
	margin-right:min(calc(20 / var(--vw-min) * 100vw),20px);
}
@media screen and (max-width:768px){
	.movieBnrItem {
		width: 100%;
		margin-bottom:calc(30 / var(--vw-min) * 100vw);
	}
	.movieBnrItem:last-child {
		margin-bottom:0;
	}
}
.movieBnrItem a {
	display: block;
}
/**
 * footer
 */
.footer {
	position: absolute;
	bottom: min(calc(10 / var(--vw-min) * 100vw), 10px);
	right: min(calc(20 / var(--vw-min) * 100vw), 20px);
	z-index: 2;
}
@media screen and (max-width:767px){
	.footer {
		padding: calc(50 / var(--vw-min) * 100vw) calc(40 / var(--vw-min) * 100vw);
		position: relative;
		bottom: auto;
		right: auto;
	}
}

/* inner */
.footer__inner {
	display: flex;
	align-items: flex-end;
	flex-direction: row-reverse;
}
@media screen and (max-width:767px){
	.footer__inner {
		align-items: center;
		flex-direction: column;
	}
}

/* copyright */
.footer__copyright {
	color: #fff;
	display: block;
	font-size: min(calc(10 / var(--vw-min) * 100vw), 10px);
	margin-right: min(calc(20 / var(--vw-min) * 100vw), 20px);
	white-space: nowrap;
}
@media screen and (max-width:767px){
	.footer__copyright {
		color: #000;
		font-size: 10px;
		margin-top: 1.5rem;
	}
}

/**
 * shareLists
 */
.shareLists {
	display: flex;
	justify-content: flex-end;
	gap: min(calc(14 / var(--vw-min) * 100vw), 14px);
}
@media screen and (max-width:767px){
	.shareLists {
		justify-content: center;
		gap: 0 calc(30 / var(--vw-min) * 100vw);
	}
}

/* item */
.shareLists__item {
    width: 17px;
    height: 17px;
}
@media screen and (max-width:767px){
	.shareLists__item {
		width: calc(40 / var(--vw-min) * 100vw);
		height: calc(40 / var(--vw-min) * 100vw);
	}
}

/* link */
.shareLists__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.shareLists__link:before {
    content: "";
    background-color: #fff;
    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%;
}
@media screen and (max-width:767px){
	.shareLists__link:before {
		background-color: #000;
	}
}

/* 各SNSパーツ */
.shareLists__item.is-twitter .shareLists__link:before {
    width: 17px;
    height: 17px;
    -webkit-mask-image: url(../img/common/icon/icon_tw.svg);
    mask-image: url(../img/common/icon/icon_tw.svg);
}
.shareLists__item.is-facebook .shareLists__link:before {
    width: 17px;
    height: 17px;
    -webkit-mask-image: url(../img/common/icon/icon_fb.svg);
    mask-image: url(../img/common/icon/icon_fb.svg);
}
.shareLists__item.is-line .shareLists__link:before {
    width: 17px;
    height: 17px;
    -webkit-mask-image: url(../img/common/icon/icon_line.svg);
    mask-image: url(../img/common/icon/icon_line.svg);
}
.shareLists__item.is-youtube .shareLists__link:before {
    width: 17px;
    height: 17px;
    -webkit-mask-image: url(../img/common/icon/icon_youtube.svg);
    mask-image: url(../img/common/icon/icon_youtube.svg);
}
@media screen and (max-width:767px){
	.shareLists__item.is-twitter .shareLists__link:before {
		width: 100%;
		height: 100%;
	}
	.shareLists__item.is-facebook .shareLists__link:before {
		width: 100%;
		height: 100%;
	}
	.shareLists__item.is-line .shareLists__link:before {
		width: 100%;
		height: 100%;
	}
	.shareLists__item.is-youtube .shareLists__link:before {
		width: 100%;
		height: 100%;
	}
}
/* footerLinkLists */
.footerLinkLists {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	gap: 1em;
	overflow: hidden;
	margin-top: 10px;
}
.footerLinkLists > li {
	display: flex;
	align-items: flex-end;
}
.btn-eiga {
	width: 100px;
}
@media screen and (max-width:767px){
	.footerLinkLists {
		justify-content: center;
		margin-top: 2em;
	}
}
/* bottomBtn */
.bottomBtnLists {
	display: flex;
	justify-content: center;
	position: absolute;
	bottom: 0;
	right:0;
	left: 0;
	margin: auto;
	z-index: 3;
}
.bottomBtnLists__item {
	height: min(calc(35 / var(--vw-min) * 100vw), 35px);
}
.bottomBtnLists__item:not(:first-child) {
	margin-left: 10px;
}
.bottomBtnLists__item a {
	background-color: #fff;
	color: #283e63;
	display: flex;
	align-items: center;
	justify-content: center;
    height: 100%;
    font-size: min(calc(14 / var(--vw-min) * 100vw), 14px);
	padding: 0 min(calc(20 / var(--vw-min) * 100vw), 20px);
	text-decoration: none;
}
.bottomBtnLists__item a:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6.9px;
	border-color: transparent transparent transparent #283e63;
	margin-left: 8px;
}
.bottomBtnLists__item.is-youtube a:after {
	border: none;
	background-color: #DA1725;
	-webkit-mask: url(../img/common/icon/icon_youtube.svg) no-repeat center / contain;
	mask: url(../img/common/icon/icon_youtube.svg) no-repeat center / contain;
	width: min(calc(22 / var(--vw-min) * 100vw), 22px);
	height: min(calc(16 / var(--vw-min) * 100vw), 16px);
}
@media screen and (max-width:767px){
	.bottomBtnLists {
		flex-wrap: wrap;
		width: 87%;
		margin: 0 auto;
		margin-top: 8vw;
		position: relative;
		bottom: auto;
		right: auto;
		order: 3;
	}
	.bottomBtnLists__item {
		width: 100%;
		height: 8vw;
	}
	.bottomBtnLists__item:not(:first-child) {
		margin-top: 8px;
		margin-left: 0;
	}
	.bottomBtnLists__item a {
		font-size: 3vw;
		padding: 0;
	}
	.bottomBtnLists__item.is-youtube a:after {
		width: 22px;
		height: 16px;
	}
}