@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;}
/*-----------------------------------------------
 * Bace
 * Modal
 * Header
 * Parts
-------------------------------------------------*/
/*-----------------------------------------------
 * Bace
-------------------------------------------------*/
:root{
	--main-color: #2e4a6c;
	--main-color-dark: #0a2a4d;
	--font-com: 'Noto Serif JP', serif;
	--font-eng: 'Oswald', sans-serif;
	--font-b_min: 'Zen Old Mincho', serif; /* weight:600; */
	--font-roboto: 'Roboto Condensed', sans-serif;
	--cont-width: min(82.4%, 1236px);
	--gradient: linear-gradient(150deg, #454170 0%, #645893 30%, #956c9c 65%, #7e78a3 100%);

	--sp-size-2: min(0.2667vw, 2px);
	--sp-size-4: min(0.5334vw, 4px);
	--sp-size-8: min(1.0667vw, 8px);
	--sp-size-10: min(1.3334vw, 10px);
	--sp-size-12: min(1.6vw, 12px);
	--sp-size-14: min(1.8667vw, 14px);
	--sp-size-16: min(2.1334vw, 16px);
	--sp-size-20: min(2.6667vw, 20px);
	--sp-size-24: min(3.2vw, 24px);
	--sp-size-26: min(3.4667vw, 26px);
	--sp-size-28: min(3.7334vw, 28px);
	--sp-size-30: min(4vw, 30px);
	--sp-size-32: min(4.2667vw, 32px);
	--sp-size-36: min(4.8vw, 36px);
	--sp-size-40: min(5.3334vw, 40px);
	--sp-size-48: min(6.4vw, 48px);
	--sp-size-56: min(7.4667vw, 56px);
	--sp-size-64: min(8.5334vw, 64px);
	--sp-size-72: min(9.6vw, 72px);
	--sp-size-80: min(10.6667vw, 80px);
	--sp-size-88: min(11.7334vw, 88px);
	--sp-size-96: min(12.8vw, 96px);
}
@media screen and (max-width: 767px){
	:root{
		--cont-width: min(84%, 630px);
	}
}

/*font-family: 'Mrs Saint Delafield', cursive;
font-family: 'Noto Serif JP', serif;
font-family: 'Roboto Condensed', sans-serif;
font-family: 'Zen Old Mincho', serif;*/


body{
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	color: #000;
	font-family: 'Noto Serif JP', serif;
	font-feature-settings: "palt";
	font-size: 16px;
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}
.pc{ display: block; }
.sp{ display: none; }
a{ color: #222; }
a:hover{ text-decoration: none; }
.ah { transition: opacity .3s ease; }
.ah:hover { opacity: .7; }
::selection{
	background: #6ccfee;
	color: #fff;
}
::-moz-selection{
	background: #6ccfee;
	color:#fff;
}
#fullWrap{
	width: 100%;
	min-height: max(100vh, 640px);
	position: relative;
	display: flex;
	flex-direction: column;
}
@media screen and (max-width:767px){ 
	html{ 
		font-size: 62.5%;
	}
	body{
		font-size: 10px; 
		font-size: 1rem;
		min-width: 320px;
	}
	.sp{ display: block; }
	.pc{ display: none; }
	.ah:hover { opacity: 1; }
	#fullWrap{min-height: 100vh;min-height: 100svh;}
}

/* ScrollBar Setting */
::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
::-webkit-scrollbar-track {
  border-radius: 4px;
  background: #fff;
}
::-webkit-scrollbar-thumb {
	background: #241f43;
	border-radius: 4px;
	margin: 2px;
	box-shadow: none;
}
html{
	scrollbar-color: #241f43 #fff;
	scrollbar-width: thin;
}


/*-----------------------------------------------
 * Modal
-------------------------------------------------*/

/**
 * modalBox
 * 基盤のモーダル
 */
.modalBox{
	-webkit-overflow-scrolling: touch;
	background: var(--main-color-dark);
	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 */
.oneModalIn{
	display: flex;
	justify-content: center;
	align-items: center;
	height: auto;
	width: 100%;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.oneModalIn__cont{
	padding: 50px 0;
}
@media screen and (max-width:767px){
	.oneModalIn__cont{
		width: 100%;
		padding: 30px 0;
	}
}

/**
 * closeBtn
 */
.closeBtn{
	width: 80px;
	height: 80px;
	position: absolute;
	top: 0;
	right: 16px;
	margin-top: 16px;
	z-index: 2;
}
.closeBtn a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	background-color: #FFF;
	color: var(--main-color-dark);
	border-radius: 50%;
	text-decoration: none;
	transition: .25s ease-in-out;
}
.closeBtn a:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: 50%;
	background: linear-gradient(var(--main-color-dark), var(--main-color-dark)) left center/0 100% no-repeat;
	transition: background-size .25s ease-in-out;
	border: 2px solid #FFF;
}
.closeBtn a:hover::before {
	background-position: right center;
	background-size: 100% 100%;
}
.closeBtn a:hover{
	color: #FFF;
}
.closeBtn a span{
	display: inline-block;
	font-size: 18px;
	line-height: 1;
	font-family: var(--font-eng);
	position: relative;
	z-index: 2;
}
@media screen and (max-width:767px){
	.closeBtn{
		width: var(--sp-size-96);
		height: var(--sp-size-96);
		/*right: 2.6667%;
		margin-top: 2.6667%;*/
		right: 4.2667%;
		margin-top: 4.2667%;
	}
	.closeBtn a span{
		font-size: var(--sp-size-24);
	}
}


/**
 * iframe
 */
/* common */
.commonIframe{
	width: 100%;
	height: 100%;
	display: block;
}

/* youtube */
.youtubeIframeWrap {
	width: 70%;
	max-width: 159.993vh;
	position: relative;
}
@media screen and (max-width:767px){
	.youtubeIframeWrap {
		width: 100%;
		max-width: 100%;
	}
}
.youtubeIframeWrap:before{
	content: "";
	display: block;
	padding-top: 56.25%;
	z-index: 0;
}
.youtubeIframe{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}


/*-----------------------------------------------
 * Header
-------------------------------------------------*/
.header {
	width: 200px;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 999;
	background-color: var(--main-color);
}
@media screen and (max-width:767px){
	.header {
		width: 100%;
		position: sticky;
		bottom: auto;
	}
}

/* header_inWrap */
.header__inWrap{
	position: sticky;
	top: 0;
	background-color: var(--main-color);
}
.head_logo{
	width: 100%;
	padding: 56px 0;
	background-color: var(--main-color-dark);
}
.head_logo a{
	width: 87.5%;
	display: block;
	margin: 0 auto;
	text-decoration: none;
}
.head_logo a img{
	width: 100%;
	transition: .3s ease;
}
.head_logo a:hover img{
	transform: scale(1.025);
}

@media screen and (max-width: 767px){
	.header__inWrap{
		padding-bottom: 0;
	}
	.head_logo{
		display: none;
	}
}

/* inner */
@media screen and (max-width:767px){
	.header__inner {
		-webkit-overflow-scrolling: touch;
		width: 100%;
		height: 100%;
		overflow: auto;
		position: fixed;
		top: 0;
		right: 0;
		padding: 12.8% 0;
		pointer-events: none;
		transform: .5s ease-in;
		opacity: 0;
		z-index: 1;
		transition: opacity .2s ease-in;
		transition-delay: .3s;
	}
	.header.is-active .header__inner {
		opacity: 1;
		pointer-events: auto;
		transition-duration: 0s;
		transition-delay: 0s;
	}

	.header__inner:before {
		content: "";
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 0;
		background: linear-gradient(var(--main-color-dark), var(--main-color-dark)) left center/0 100% no-repeat;
		transition: background-size .3s ease-in;
		transition-delay: .15s;
	}
	.header.is-active .header__inner:before {
		background-position: right center;
		background-size: 100% 100%;
		transition-delay: .2s;
	}
}

/**
 * headerNav
 */
.headerNav {
	position: relative;
	z-index: 1;
	margin: 24px 0;
}

.headerNavLists__item{
	width: 100%;
	margin: 4px 0;
}
.headerNavLists__item a{
	display: block;
	width: 100%;
	padding: 4px 0 4px 30px;
	text-decoration: none;
	font-family: var(--font-roboto);
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1;
	color: #fff;
	position: relative;
	background: var(--gradient) right center/0 100% no-repeat;
	transition: background-size .3s ease-in-out;
}
.headerNavLists__item a:hover, .headerNavLists__item a.is-active {
	background-position: left center;
	background-size: 100% 100%;
}
.headerNavLists__item span.nav_twi{
	display: inline-block;
	position: relative;
	padding-right: 32px;
}
.headerNavLists__item .nav_twi:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 20px;
	height: 20px;
	margin: auto 0;
	-webkit-mask: url(../img/common/icon_tw.svg) no-repeat right center / contain;
	mask: url(../img/common/icon_tw.svg) no-repeat right center / contain;
	background-color: #FFF;
}

@media screen and (max-width: 767px){
	.headerNav{
		opacity: 0;
		transition: opacity .15s ease-in;
	}
	.header.is-active .headerNav{
		opacity: 1;
		transition-delay: .45s;
	}
	.headerNavLists{
		width: 100%;
		overflow: hidden;
	}
	.headerNavLists__item{
		transform: translateX(4%);
		opacity: 0;
		transition: transform .5s ease-out, opacity .3s ease-in;
		margin: var(--sp-size-14) 0;
	}
	.header.is-active .headerNavLists__item{
		opacity: 1;
		transform: translateX(0);
	}

	.headerNavLists__item:nth-of-type(1){
		transition-delay: .0s;
	}
	.headerNavLists__item:nth-of-type(2){
		transition-delay: .05s;
	}
	.headerNavLists__item:nth-of-type(3){
		transition-delay: .1s;
	}
	.headerNavLists__item:nth-of-type(4){
		transition-delay: .15s;
	}
	.headerNavLists__item:nth-of-type(5){
		transition-delay: .2s;
	}
	.headerNavLists__item:nth-of-type(6){
		transition-delay: .25s;
	}
	.headerNavLists__item:nth-of-type(7){
		transition-delay: .3s;
	}
	.headerNavLists__item:nth-of-type(8){
		transition-delay: .35s;
	}
	.headerNavLists__item:nth-of-type(9){
		transition-delay: .4s;
	}
	.headerNavLists__item:nth-of-type(10){
		transition-delay: .45s;
	}

	.header.is-active .headerNavLists__item:nth-of-type(1){
		transition-delay: .6s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(2){
		transition-delay: .65s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(3){
		transition-delay: .7s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(4){
		transition-delay: .75s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(5){
		transition-delay: .8s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(6){
		transition-delay: .85s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(7){
		transition-delay: .9s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(8){
		transition-delay: .95s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(9){
		transition-delay: 1s;
	}
	.header.is-active .headerNavLists__item:nth-of-type(10){
		transition-delay: 1.05s;
	}

	.headerNavLists__item a{
		padding: var(--sp-size-14) 0 var(--sp-size-14) var(--sp-size-88);
		font-size: var(--sp-size-88);
	}

	.headerNavLists__item span.nav_twi{
		padding-right: min(16vw, 120px);
	}
	.headerNavLists__item span.nav_twi:after{
		width: var(--sp-size-80);
		height: var(--sp-size-80);
	}

}

/**
 * SP_headShare
 */
@media screen and (max-width: 767px){
	.header .shareListsWrap.sp{
		opacity: 1;
		margin-top: 4.8%;
		opacity: 0;
		transition: opacity .3s ease-in;
	}
	.header.is-active .shareListsWrap.sp{
		opacity: 1;
		transition-delay: 1.05s;
	}
	.header .shareListsWrap.sp .shareLists{
		flex-wrap: wrap;
		justify-content: center;
		position: relative;
		z-index: 2;
	}
	.header .shareListsWrap.sp .shareLists dt{
		width: 100%;
		text-align: center;
		line-height: 1;
		font-size: var(--sp-size-24);
		margin-bottom: 5.3334%;
	}
	.header .shareListsWrap.sp .shareLists dd{
		width: var(--sp-size-72);
		height: var(--sp-size-72);
		margin: 0 var(--sp-size-40);
	}
}


/**
 * navBtn
 */
@media screen and (max-width:767px){
	.header__navBtnWrap {
		width: var(--sp-size-96);
		height: var(--sp-size-96);
		position: absolute;
		top: 0;
		right: 4.2667%;
		margin-top: 4.2667%;
		z-index: 2;
	}
	.header__navBtn {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		position: relative;
		overflow: hidden;
		background-color: var(--main-color-dark);
		border-radius: 50%;
	}
	.header__navBtn:before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		border-radius: 50%;
		background: linear-gradient(#FFF, #FFF) left center/0 100% no-repeat;
		transition: background-size .25s ease-in-out;
	}
	.header__navBtn.is-active:before {
		background-position: right center;
		background-size: 100% 100%;
	}
	.header__navBtn:after{
		content: 'Close';
		color: var(--main-color-dark);
		font-size: var(--sp-size-24);
		line-height: 1;
		font-weight: 500;
		font-family: var(--font-eng);
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		transform: translateX(5%);
		opacity: 0;
		transition: transform .3s ease-out, opacity .2s ease-in;
	}
	.header__navBtn.is-active:after{
		opacity: 1;
		transform: translateX(0%);
	}
	.header__navBtn_txt{
		font-size: var(--sp-size-24);
		line-height: 1;
		font-weight: 500;
		font-family: var(--font-eng);
		color: #FFF;
		transition: transform .3s ease-out, opacity .2s ease-in;
	}
	.header__navBtn.is-active .header__navBtn_txt{
		opacity: 0;
		transform: translateX(-5%);
	}
}


/*-----------------------------------------------
 * Parts
-------------------------------------------------*/

/**
 * shareLists
 */
.shareLists {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.shareLists__ttl{
	font-size: 12px;
	line-height: 1;
	font-weight: 500;
	color: #FFF;
	padding-right: 6px;
}

/* item */
.shareLists__item {
	width: 22px;
	height: 22px;
	margin: 0 12px;
}
.shareLists__item:first-child{
	margin-left: unset;
}
.shareLists__item:last-child{
	margin-right: unset;
}

/* link */
.shareLists__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
}
.shareLists__link:before {
	content: "";
	width: 100%;
	height: 100%;
	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%;
	transition: background-color .4s ease;
}
.shareLists__link:hover:before {
	background-color: var(--main-color);
}

/* 各SNSパーツ */
.shareLists__item.is-twitter .shareLists__link:before {
	-webkit-mask-image: url(../img/common/icon_tw.svg);
	mask-image: url(../img/common/icon_tw.svg);
}
.shareLists__item.is-facebook .shareLists__link:before {
	-webkit-mask-image: url(../img/common/icon_fb.svg);
	mask-image: url(../img/common/icon_fb.svg);
}
.shareLists__item.is-line .shareLists__link:before {
	-webkit-mask-image: url(../img/common/icon_line.svg);
	mask-image: url(../img/common/icon_line.svg);
}


/**
* Btn_movie
**/
.btn_movieWrap{
	width: 100%;
	padding-top: 56.25%;
	position: relative;
}
.btn_movie{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.btn_movie img{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	object-position: center;
	transition: .3s ease;
}
.btn_movie:hover img{
	transform: scale(1.025);
}
.icon_videoPlay{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 3;
}
.icon_videoPlay:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	animation: 3s linear infinite rotate;
}
.icon_videoPlay:after{
	content: '';
	position: absolute;
	top: 0;
	left: 10%;
	right: 0;
	margin: 0 auto;
	width: 25%;
	height: 100%;
	background: url(../img/common/icon_video__icon.svg) no-repeat center / contain;
}
.btn_movie:hover .icon_videoPlay:before {
	animation-play-state: paused;
}
@keyframes rotate {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

.head_movie .icon_videoPlay{
	width: 34px;
	height: 34px;
}
.head_movie .icon_videoPlay:before{
	background-image: url(../img/common/icon_videoPlay__frame_head.png);
}

@media screen and (max-width: 767px){
	.head_movie{
		display: none;
	}
}


/**
* ImageModal
**/
.imgModalIn{
	text-align: center;
}
.imgModalIn img{
	max-width: 100%;
}



/*-----------------------------------------------
 * MainContents
-------------------------------------------------*/
.mainContentsWrap{
	width: calc(100% - 200px);
	margin-left: auto;
}
.content{
	position: relative;
	padding-bottom: min(3%, 45px);
}
.content:before{
	position: absolute;
	top: 0;
	left: 0;
	font-family: var(--font-eng);
	font-size: min(7.8334vw, 141px);
	color: var(--main-color);
	writing-mode: vertical-lr;
	letter-spacing: -0.025em;
	font-weight: 500;
	line-height: 0.825;
	pointer-events: none;
	margin-top: max(-0.5vw, -9px);
}
.content:nth-of-type(even){
	background-color: var(--main-color);
	color: #FFF;
}
.content:nth-of-type(even)::before{
	color: #FFF;
}
.cont_h2{
	width: var(--cont-width);
	margin: 0 auto;
	font-weight: 700;
	line-height: 1;
	color: var(--main-color);
	padding-top: min(4%, 60px);
}
.content:nth-of-type(even) .cont_h2{
	color: #FFF;
}
.contentIn{
	width: var(--cont-width);
	margin: 0 auto;
}
@media screen and (max-width: 767px){
	.mainContentsWrap{
		width: 100%;
	}
	.content{
		padding-bottom: min(6.4%, 48px);
	}
	.content:before{
		font-size: var(--sp-size-96);
	}
	.cont_h2{
		padding-left: 4%;
		padding-top: 6.4%;
		font-size: var(--sp-size-24);
	}
	.contentIn{
		margin-left: 12%;
	}
}


/*-----------------------------------------------
 * InPage
-------------------------------------------------*/
/*.inPagehead{
	width: 100%;
	padding-top: min(20%, 400px);
	background: url(../img/common/inpagehead_img.jpg) no-repeat center bottom 35% / cover;
}*/
@media screen and (max-width: 767px){
	.inPagehead{
		padding-top: 40%;
		background: url(../img/common/inpagehead_img_sp.jpg) no-repeat center / cover;
	}
}

/*-----------------------------------------------
 * footer
-------------------------------------------------*/
.footer{
	width: calc(100% - 200px);
	margin-left: auto;
	background-color: var(--main-color-dark);
	position: relative;
	padding: 34px 0;
	margin-top: auto;
}
.toTop{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 80px;
}
.toTop a{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fff;
}
.toTop a:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(var(--main-color-dark), var(--main-color-dark)) left top/100% 0% no-repeat;
	transition: background-size .2s ease-in;
}
.toTop a:hover::before {
	background-position: left bottom;
	background-size: 100% 100%;
}
.toTop a:after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	width: 24px;
	height: 16px;
	margin: auto;
	background-color: var(--main-color-dark);
	-webkit-mask: url(../img/common/arrow_t.svg) no-repeat center / contain;
	mask: url(../img/common/arrow_t.svg) no-repeat center / contain;
	transition: .2s ease-in;
}
.toTop a:hover::after {
	background-color: #fff;
	transform: translateY(-4px);
}

.copyright{
	font-size: 12px;
	color: #FFF;
	line-height: 1;
	text-align: center;
}

@media screen and (max-width: 767px){
	.footer{
		width: 100%;
		padding: 5.6% 0;
	}
	.toTop{
		width: 12.8%;
	}
	.toTop a:after{
		width: var(--sp-size-28);
		height: var(--sp-size-16);
	}
	.copyright{
		font-size: var(--sp-size-20);
	}
	.copyright{
		padding-right: 12.8%;
	}
}


/*-----------------------------------------------
 * LOADING
-------------------------------------------------*/
#loading{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--main-color);
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
}
.loading_icon{
	display: block;
	width: 70px;
	height: 115px;
	position: relative;
	filter: blur(0);
	transition: 0.4s ease-in ,transform 1.2s cubic-bezier(.3,1.01,.48,1.19);
}
.loading_icon:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(../img/common/icon_kago.svg) no-repeat center / contain;
	animation: loadani 1.75s ease infinite;
}
@keyframes loadani {
	0% { transform: rotate(0) }
	5% { transform: rotate(0) }
	10% { transform: rotate(-16deg) }
	15% { transform: rotate(0deg) }
	20% { transform: rotate(16deg) }
	25% { transform: rotate(-8deg); }
	35% { transform: rotate(8deg); }
	45% { transform: rotate(0deg); }
	100% { transform:rotate(0) }
}
#loading.--lfin .loading_icon{
	transform: scale(4);
	filter: blur(8px);
	opacity: 0;
}