@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline: none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
/*-----------------------------------------------
 * 01. Template
 * 00. Modal
-------------------------------------------------*/
/*-----------------------------------------------
 * 01. Template
-------------------------------------------------*/
/*@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,400;0,500;0,700;1,500&family=Noto+Sans+JP:wght@400;500;700&display=swap');*/
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
body{
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	color: #000;
	font-family: 'Noto Sans JP', "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-feature-settings: "palt";
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}
.f_jost{
	font-family: 'Jost', sans-serif;
}
.pcmin{
	display: none;
}
@media screen and (min-width: 769px){
	.pc{ display: block; }
	.sp{ display: none!important; }
}
a{ color: #222; }
a:hover{ text-decoration: none; }
.ah { transition: opacity .3s ease; }
.ah:hover { opacity: .7; }
::selection{
	background: #ee87a7;
	color: #fff;
}
::-moz-selection{
	background: #ee87a7;
	color:#fff;
}
@media screen and (max-width:768px){ 
	html{ 
		font-size: 62.5%;
	}
	body{
		font-size: 10px; 
		font-size: 1rem;
		min-width: 320px;
	}
	.sp{ display: block; }
	.pc{ display: none!important; }
	.ah:hover { opacity: 1; }
}
html{
	scrollbar-color: rgb(235,135,167) #fff;
	scrollbar-width: thin;
}
::-webkit-scrollbar {
	width: 4px;
	height: 4px;
}
::-webkit-scrollbar-track {
  border-radius: 4px;
  background: #fff;
}
::-webkit-scrollbar-thumb {
	background: #ee87a7;
	border-radius: 3px;
	margin: 1px;
	box-shadow: none;
}
/*-----------------------------------------------
 * 00. Modal
-------------------------------------------------*/
.modalBox{
	-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: 9999;
}
.oneModal{
	display: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.oneModalIn{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	height: auto;
	width: 100%;
	/*min-width: 1200px;*/
	min-width: 100%;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.oneModalIn__cont{
	padding: 50px 0;
}
@media screen and (max-width:768px){
	.oneModalIn{
		min-width: 100%;
	}
	.oneModalIn__cont{
		width: 100%;
		padding: 30px 0;
	}
}
/* closeBtn */
.closeBtn{
	width: 100%;
	height: 100%;
	/*min-width: 1200px;*/
	min-width: 100%;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.closeBtn a{
	background: url(../img/common/close.png) no-repeat 0 0 / 100%;
	display: block;
	width: 102px;
	height: 98px;
	pointer-events: auto;
	position: absolute;
	top: 50px;
	right: 50px;
}
@media screen and (max-width:768px){
	.closeBtn{
		min-width: 100%;
	}
	.closeBtn a{
		width: 102px;
		height: 98px;
		top: 20px;
		right: 20px;
	}
}
/* common */
.commonIframe{
	width: 100%;
	height: 100%;
	display: block;
}
/* youtube */
.youtubeIframeWrap{
	width: 920px;
	height: 520px;
}
@media screen and (max-width:768px){
	.youtubeIframeWrap{
		width: 100%;
		height: auto;
		padding-top: 56.25%;
		position: relative;
	}
	.youtubeIframe{
		position: absolute;
		top: 0;
		left: 0;
	}
}


/*-----------------------------------------------
 * 01. Header
-------------------------------------------------*/
#header{
	width: 100%;
	height: 100%;
	position: relative;
}
@media screen and (max-width: 768px){
	.spMenuBtn{
		position: fixed;
		width: 102px;
		height: 98px;
		top: 20px;
		right: 20px;
		z-index: 1001;
	}
	.spMenuBtn a{
		display: block;
		width: 102px;
		height: 98px;
		background: url(../img/common/fukidashi_l.svg) no-repeat center center / contain;
		position: relative;
	}
	.menuSignW{
		position: absolute;
		width: 25px;
		height: 23px;
		left: calc(50% - 12.5px);
		top: calc(50% - 11.5px);
	}
	.menuSign{
		width: 25px;
		height: 5px;
		position: absolute;
		border-radius: 5px;
		background-color: #ee86a7;
		transition: .4s ease-in-out;
	}
	.menuSign:nth-of-type(1){
		top: 0;
		right: 0;
	}
	.menuSign:nth-of-type(2){
		top: 9px;
		right: 0;
	}
	.menuSign:nth-of-type(3){
		bottom: 0;
		right: 0;
	}
	.js-menu.active .menuSign:nth-of-type(1){
		top: 9px;
		transform: rotate(30deg);
	}
	.js-menu.active .menuSign:nth-of-type(2){
		right: -10%;
		opacity: 0;
	}
	.js-menu.active .menuSign:nth-of-type(3){
		bottom: 9px;
		transform: rotate(-30deg);
	}
	.headerWrap{
		position: fixed;
		width: 100%;
		top: 0;
		right: -100%;
		height: 100%;
		display: block;
		background-color: #fff;
		z-index: 1000;
		transition: .4s ease-in-out;
	}
	.headerWrap.is-active{
		right: 0;
	}
	.headerInWrap{
		height: 100%;
		width: 100%;
		position: absolute;
		top: 0;
		right: 0;
		overflow: auto;
		padding: 100px 120px;
	}
	.docSlider-pager.navLists{
		display: none!important;
	}
}
.headNavWrap{
	width: 100%;
	min-width: 100%;
	height: 4.5vw;
	min-height: 54px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 100;
}
@media screen and (min-width: 769px){
	.headNavWrap{
		padding: 0 130px;
	}
	.navLists{
		flex-wrap: wrap;
	}
}
.navLists{
	display: flex;
	justify-content: center;
	position: relative;
}
.navList{
	margin: 0 15px;
}
.navList__link{
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	font-style: italic;
	color: #333;
	text-decoration: none;
	font-family: 'Jost', sans-serif;
	text-shadow: 0px 3px 0px rgba(255, 255, 255, 0.6);
	transition: .3s ease;
	bottom: 0;
	position: relative;
	letter-spacing: 0;
}
.navList__link:hover,
.navList__link.is-active{
	color: #ee86a7;
}
.navList__link:hover{
	bottom: 2px;
}
.navcs{
	pointer-events: none;
	opacity: 0.5!important;
}
@media screen and (max-width: 768px){
	.headNavWrap{
		width: 100%;
		min-width: 100%;
		height: auto;
		min-height: auto;
		display: block;
		position: relative;
	}
	.navLists{
		display: block;
	}
	.navList{
		margin: 0 0 64px;
	}
	.navList__link{
		font-size: 6rem;
		line-height: 1;
	}
}
#subLinksWrap{
	width: 130px;
	height: 100%;
	min-height: 620px;
	position: fixed;
	top: 0;
	right: 0;
	overflow: hidden;
	z-index: 100;
	margin-left: auto;
}
#headLogo{
	width: 46px;
	height: 308px;
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translate(50%,-50%);
	background: url(../img/common/logo_h.svg) no-repeat center center / contain;
	opacity: 1;
}
#headLogo.mini{
	top: 180px;
	bottom: 120px;
	transform: translateY(0px);
	height: auto;
}
@media screen and (min-width: 769px) and (max-height: 560px){
	#headLogo{
		top: 130px;
		bottom: 120px;
		transform: translateY(0px);
		height: auto;
	}
}
#headLogo.is-active{
	opacity: 1;
}
.shareLists{
	width: 100%;
	height: 54px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.shareList{
	margin: 0 8px
}
.shareList a{
	display: block;
}
.share_tw{
	width: 18px;
	height: 15px;
	background: url(../img/common/sns_tw.svg) no-repeat center center / contain;
}
.share_fb{
	width: 15px;
	height: 15px;
	background: url(../img/common/sns_fb.svg) no-repeat center center / contain;
}
.share_li{
	width: 16px;
	height: 15px;
	background: url(../img/common/sns_line.svg) no-repeat center center / contain;
}
.seasonLinks{
	margin-top: 20px;
}
.seasonLink{
	width: 120px;
	height: 24px;
	margin-bottom: 8px;
	margin-left: auto;
}
.seasonLink:last-child{
	margin-bottom: 0;
}
.seasonLink a{
	display: block;
	width: 100%;
	font-size: 12px;
	line-height: 24px;
	padding-left: 16px;
	padding-right: 12px;
	color: #fff;
	text-decoration: none;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	position: relative;
	right: 0;
	transition: .3s ease;
}
.seasonLink a:after{
	content: '';
	width: 3px;
	height: 3px;
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	background: url(../img/common/link_arrow.svg) no-repeat center center / contain;
}
.seasonLink a:hover{
	right: -10px;
}
.seasonLink__1st{
	background-color: #ee87a8;
}
.seasonLink__2nd{
	background-color: #d089a0;
}
.seasonLink__3rd{
	background-color: #ba7088;
}
#top_contents{
	width: 100%;
	position: relative;
}
@media screen and (max-width: 768px){
	#headLogo{
		display: none;
	}
	#subLinksWrap{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		position: relative;
		height: auto;
		min-height: auto;
		overflow: unset;
		padding-top: 16px;
	}
	.shareLists{
		order: 2;
		width: 100%;
		height: 60px;
		display: flex;
		position: relative;
		top: unset;
		right: unset;
	}
	.shareList{
		margin: 0 35px
	}
	.share_tw{
		width: 72px;
		height: 60px;
	}
	.share_fb{
		width: 60px;
		height: 60px;
	}
	.share_li{
		width: 64px;
		height: 60px;
	}
	.seasonLinks{
		order: 1;
		width: 100%;
		display: block;
		position: relative;
		top: unset;
		right: unset;
		height: auto;
		margin-top: 0;
		margin-bottom: 50px;
	}
	.seasonLink{
		width: 100%;
		height: 80px;
		margin-bottom: 20px;
	}
	.seasonLink a{
		height: 100%;
		text-align: center;
		line-height: 80px;
		font-size: 34px;
		border-radius: 5px;
	}
	.seasonLink a:after{
		width: 12px;
		height: 12px;
		right: 40px;
	}
	.docSlider-id_footer .shareLists, .docSlider-id_footer .seasonLinks{
		opacity: 1!important;
	}
}
@media screen and (max-width: 768px){
	#headLogo{
		display: none;
	}
	#subLinksWrap{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		position: relative;
		height: auto;
		min-height: auto;
		overflow: unset;
		padding-top: 16px;
	}
	.shareLists{
		order: 2;
		width: 100%;
		height: 60px;
		display: flex;
		position: relative;
		top: unset;
		right: unset;
	}
	.shareList{
		margin: 0 35px
	}
	.share_tw{
		width: 72px;
		height: 60px;
	}
	.share_fb{
		width: 60px;
		height: 60px;
	}
	.share_li{
		width: 64px;
		height: 60px;
	}
	.seasonLinks{
		order: 1;
		width: 100%;
		display: block;
		position: relative;
		top: unset;
		right: unset;
		height: auto;
		margin-top: 0;
		margin-bottom: 50px;
	}
	.seasonLink{
		width: 100%;
		height: 80px;
		margin-bottom: 20px;
	}
	.seasonLink a{
		height: 100%;
		text-align: center;
		line-height: 80px;
		font-size: 34px;
		border-radius: 5px;
	}
	.seasonLink a:after{
		width: 12px;
		height: 12px;
		right: 40px;
	}
	.docSlider-id_footer .shareLists, .docSlider-id_footer .seasonLinks{
		opacity: 1!important;
	}
}

#loading{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	height: 100%;
	z-index: 100000;
	background-color: #fff;
	transition: .8s ease;
}

@media screen and (min-width: 769px){
	#loading.foend{
		left: 100%;
	}
}
@media screen and (max-width: 768px){
	#loading.foend{
		top:100%;
	}
}
#loading.fo{
	height: 0;
}
#loading.fadeout{
	display: none;
}


/* FOOTER */
.footerIMG{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
}
.js-footerIMG{
	opacity: 0;
	transition: 1.5s ease-in-out;
	transform: scale(1.125);
	filter: blur(15px);
}
.footer-active{
	opacity: 1;
	transform: scale(1);
	filter: blur(0);
}
#footerIMG_01{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(../img/top/footer_mv1.jpg) no-repeat top center / cover;
}
#footerIMG_02{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(../img/top/footer_mv2.jpg) no-repeat top center / cover;
}
#footerIMG_03{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(../img/top/footer_mv3.jpg) no-repeat top center / cover;
}
#footerIMG_04{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(../img/top/footer_mv4.jpg) no-repeat top center / cover;
}
@media screen and (max-width: 768px){
	#footerIMG_01{
	background: url(../img/top/footer_mv1_sp.jpg) no-repeat center center / cover;
	}
	#footerIMG_02{
		background: url(../img/top/footer_mv2_sp.jpg) no-repeat center center / cover;
	}
	#footerIMG_03{
		display: none;
	}
	#footerIMG_04{
		display: none;
	}
}

/** TRAILER **/
.page_trailer .newsWrap{
	min-height: auto;
}

.page_trailer .newsTitle{
	box-shadow: 17.355px 20.683px 38px 0px rgb(183 242 244 / 60%);
}
.page_trailer .newscontents{
	box-shadow: 17.355px 20.683px 38px 0px rgb(183 242 244 / 60%);
}



/** contBG **/
.contBG{
	position: absolute;
	/*width: 100%;*/
	top: 0;
	right: 130px;
	left: 0;
	z-index: -1;
}
.contBG div{
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: url(../img/common/common_bg.jpg) no-repeat center / cover;
}
.contBG div.is-percent{
	height: 100%;
}

.contBG div:before{
	content: '';
	width: 39.3334vw;
	height: 31.5834vw;
	min-width: 472px;
	min-height: 379px;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/common/cont_corner_topl.png)no-repeat top left / contain;
}
.contBG div:after{
	content: '';
	width: 37vw;
	height: 23.6667vw;
	min-width: 444px;
	min-height: 284px;
	position: absolute;
	bottom: 0;
	right: 0;
	background: url(../img/common/cont_corner_bottomr.png)no-repeat bottom right / contain;
}
@media screen and (min-width: 1500px){
	.fv_infoBG:before{
		width: 590px;
		height: 473.75px;
	}
	.fv_infoBG:after{
		width: 555px;
		height: 355px;
	}
}
@media screen and (max-width: 768px){
	.contBG{
		right: 0;
	}
	.contBG div{
		height: 100%;
	}
}
