@charset "utf-8";
/* CSS Document */
body{background-color: #000;}
.entrance_wrap{
	align-items: stretch;
	background-color: #000;
}
body.on .entrance_wrap{
	height: 100vh;
	overflow: hidden;
	opacity: 0;
	animation-name: fadein;
	animation-delay: 0.3s;
	animation-duration: 0.6s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
body:not(.on) .entrance_wrap .entrance_box{
	padding: 50px;
}
.entrance_wrap > .entrance_box {
  width: 100%;
}
.entrance_wrap.visible-1 > .entrance_box {
  width: 100%;
}
.entrance_wrap.visible-2 > .entrance_box {
  width: 50%;
  overflow: hidden;
}

.entrance_wrap .entrance_box{
	position: relative;
}
.entrance_wrap .entrance_box:hover{
	opacity: 1;
}
body.on .entrance_wrap .entrance_box{
	height: 100vh;
}
body.on .entrance_wrap:not(.on) .entrance_box{
	pointer-events: none;
}
.entrance_wrap .entrance_box::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 100%;
	border-width: 100%;
	border-style: solid;
	animation-name: entrance_border;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
@keyframes entrance_border {
  0% {
	border-width: 100%;
  }
  100% {
	border-width: 3.2vw;
  }
}
.entrance_wrap .entrance_box.entrance_sun::after{
	border-color: #E8CE4A;
}
.entrance_wrap .entrance_box.entrance_astral::after{
	border-color: #841125;
}
body.on .entrance_wrap .entrance_box .entrance_img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: calc(100% - 6vw);
	height: calc(100% - 6vw);
	animation-name: entrance_img1;
	animation-duration: 1.8s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
@keyframes entrance_img1{
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
		width: calc(100% - 0vw);
		height: calc(100% - 0vw);
	}
	100% {
		opacity: 1;
		-ms-filter: blur(0px);
		filter: blur(0px);
		width: calc(100% - 6vw);
		height: calc(100% - 6vw);
	}
}
@keyframes entrance_img4{
	0% {
		opacity: 1;
		width: calc(100% - 6vw);
		height: calc(100% - 6vw);
	}
	100% {
		opacity: 1;
		width: calc(100% - 3vw);
		height: calc(100% - 3vw);
	}
}
body.on .entrance_wrap.on .entrance_box:hover .entrance_img{
	animation-name: entrance_img4;
	animation-duration: 2.4s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
body.on .entrance_wrap .entrance_box .entrance_img::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: calc(100% - 40px);
	height: calc(100% - 40px);
	border: 1px solid #fff;
	z-index: 2;
}
body.on .entrance_wrap .entrance_box .entrance_img::after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 1;
}
body.on .entrance_wrap .entrance_box .entrance_img::after{
	animation-name: entrance_img2;
	animation-delay: 1.8s;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
@keyframes entrance_img2{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 0.8;
	}
}
body.on .entrance_wrap.on .entrance_box .entrance_img::after{
	animation-delay: 0s;
}
body.on .entrance_wrap .entrance_box:hover .entrance_img::after{
	animation-name: entrance_img3;
	animation-delay: 0s;
	animation-duration: 0.3s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
@keyframes entrance_img3{
	0% {
		opacity: 0.8;
	}
	100% {
		opacity: 0;
	}
}

.entrance_wrap .entrance_box .entrance_item{
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 6vw;
	height: 6vw;
	opacity: 0;
	animation-name: entrance_item;
	animation-delay: 0.4s;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
	z-index: 3;
}
@keyframes entrance_item {
	0% {
		opacity: 0;
		width: 6vw;
		height: 6vw;
	}
	100% {
		opacity: 1;
		width: calc(100% - 4vw);
		height: calc(100% - 4vw);
		}
}

.entrance_wrap .entrance_box .entrance_item img{
	position: absolute;
	width: 6vw;
}
.entrance_wrap .entrance_box .entrance_item img:first-of-type{
	top: 0;
	left: 0;
}
.entrance_wrap .entrance_box .entrance_item img:last-of-type{
	transform: rotate(180deg);
	bottom: 0;
	right: 0;
}
body.on .entrance_wrap .entrance_box .entrance_item{
	display: block;
}
.entrance_wrap .entrance_box .contents_box{
	position: relative;
	width: 100%;
	z-index: 5;
}
body.on .entrance_wrap .entrance_box .contents_box{
    opacity: 0;
    -ms-filter: blur(6px);
    filter: blur(6px);
	animation-name: blurin;
	animation-delay: 0.6s;
	animation-duration: 1.2s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
.entrance_wrap .entrance_box .contents_box > div{
	flex-direction: column;
	gap: 30px;
	text-align: center;
	transition: ease 0.6s;
}
.entrance_wrap .entrance_box:hover .contents_box > div{
	opacity: 0.4;
}
.entrance_wrap .entrance_box .contents_box > div h1,.entrance_wrap .entrance_box .contents_box > div h2{
	font-weight: 900;
	text-shadow: 0 0 10px rgba(0,0,0,0.3);
}

.entrance_wrap .entrance_box .contents_box .entrance_more{}
.entrance_wrap .entrance_box .contents_box .entrance_more > div{gap: 15px}
.entrance_wrap .entrance_box .contents_box .entrance_more > div .arrow{
	width: 60px;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
}
.entrance_wrap .entrance_box .contents_box .entrance_more > div .arrow img{
	width: 30%;
	transition: ease 0.3s;
}
.entrance_wrap .entrance_box:hover .contents_box .entrance_more > div .arrow img{
	transform: translateX(3px);
}
.entrance_wrap .entrance_box .contents_box .entrance_more > div p{
	color: #fff;
}

body.on .entrance_wrap .entrance_box.entrance_sun .entrance_img::after{
	background-color: #E8CE4A;
}
body.on .entrance_wrap .entrance_box.entrance_astral .entrance_img::after{
	background-color: #841125;
}
.entrance_wrap .entrance_box.entrance_astral .contents_box{
	transform: translateY(20%);
}
body:not(.on) .entrance_wrap .entrance_box.entrance_astral .contents_box{
	transform: translateY(0);
}
.entrance_wrap .entrance_box.entrance_sun .contents_box .logo{
	width: 30%;
}
.entrance_wrap .entrance_box.entrance_astral .contents_box .logo{
	width: 50%;
}
.entrance_wrap .entrance_box.entrance_sun .contents_box .entrance_more > div .arrow{
	background-color: #E8CE4A;
}
.entrance_wrap .entrance_box.entrance_astral .contents_box .entrance_more > div .arrow{
	background-color: #841125;
}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
@media (orientation: portrait) {
	.entrance_wrap .entrance_box{
		width: 100%!important;
	}
	.entrance_wrap.visible-1 > .entrance_box {
		height: 100vh!important;	}
	.entrance_wrap.visible-2 > .entrance_box {
		height: 50vh!important;
		overflow: hidden;
	}
	.entrance_wrap .entrance_box.entrance_astral .contents_box{
		transform: translateY(0);
	}
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.entrance_wrap .entrance_box .contents_box > div{
		gap: 20px;
	}
	.entrance_wrap .entrance_box .contents_box .entrance_more > div .arrow{
		width: 30px;
	}
}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

