@charset "UTF-8";

:root
{

--headerH: calc(120 * var(--v));

}

/* ================================================================================
KV
================================================================================ */
@media print, screen
{

#KV .background
{
	z-index: 1;
	position: absolute;
	top: 0;	left: 0;

	width: 100%;	height: 0;
	background: var(--Ctheme1);

	transition: 1s var(--easeOutS1) 0s;
}
.loaded #KV .background{	height: calc(100% - 180 * var(--v));	}

#KV .image1
{
	--degX: calc((100vh - 70 * var(--v))/tan(72deg));

	z-index: 2;
	position: absolute;
	top: 0;	right: 0;

	width: 65%;	height: calc(100vh - 70 * var(--v));

	clip-path: polygon(calc(100% + var(--degX)) 0,100% 100%, 100% 100%, 100% 0);

	transition: 0.9s var(--easeOutS1) 0.1s;
	transition-property: clip-path;
}
.loaded #KV .image1{	clip-path: polygon(var(--degX) 0,0 100%, 100% 100%, 100% 0);	}

#KV .image2
{
	--degX: calc((420 * var(--v))/tan(72deg));

	z-index: 2;
	position: absolute;
	bottom: calc(-120 * var(--v));	left: 0;

	width: 36%;	height: calc(420 * var(--v));

	clip-path: polygon(0 0,0 100%, calc(-1 * var(--degX)) 100%, 0 0);

	transition: 0.8s var(--easeOutS1) 0.2s;
	transition-property: clip-path;
}
.loaded #KV .image2{	clip-path: polygon(0 0,0 100%, calc(100% - var(--degX)) 100%, 100% 0);	}


#KV > .inner
{
	z-index: 3;
	display: flex;	align-items: center;
	height: 100vh;
	padding: var(--headerH) 0 calc(340 * var(--v));
}

#KV .texts
{
	opacity: 0;
	transform: translate(0, calc(30 * var(--v)));
	filter: blur(calc(8 * var(--v)));

	transition: 0.5s ease-in-out 1s;
}
.loaded #KV .texts
{
	opacity: 1;
	transform: translate(0,0);
	filter: blur(0);
}

#KV h2
{
	margin-bottom: calc(30 * var(--v));

	color: white;
	font-size: var(--fzv48);
	font-weight: 300;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
#KV p
{
	color: white;
	font-family: var(--Roboto);
	font-size: var(--fzv14);
	/* font-weight: 500; */
	line-height: 1.7;
	letter-spacing: 0.05em;
}

}
@media screen and (max-width: 767px)
{

.loaded #KV .background{	height: 89.4vh;	}

#KV .image1
{
	--degX: calc(69.8vh/tan(72deg));
	width: 75vw;	height: 69.8vh;
}
#KV .image2
{
	--degX: calc(30.2vh/tan(72deg));
	bottom: -6.7vh;
	width: 76vw;	height: 30.2vh;
}

#KV > .inner{	padding: var(--headerH) var(--pageP) 66vw;	}
#KV h2{	line-height: 1.45;	}

}


/* ================================================================================
lead
================================================================================ */
@media print, screen
{

#lead > .inner{	padding: calc(120 * var(--v)) 0;	}

#lead .text1
{
	font-size: var(--fzv30);
	/* font-weight: 300; */
	text-align: center;
	line-height: 1.8;
}

}
@media screen and (max-width: 767px)
{

#lead > .inner{	padding: calc(190 * var(--v)) 0 calc(140 * var(--v));	}

#lead .text1
{
	font-size: var(--fzv25);
}

}


/* ================================================================================
entrance
================================================================================ */
@media print, screen
{

.entrance{	padding: 0;	}
.entrance > .outer
{
	position: relative;
	max-width: var(--outerW);
	margin: 0 auto;
}
.entrance > .outer > .inner
{
	position: relative;
	max-width: var(--pageW);
	margin: 0 auto;
}

.entrance .en
{
	z-index: 3;
	position: absolute;
	top: calc(30 * var(--v));	right: 0;

	color: var(--Cgray3);
	font-family: var(--Roboto);
	font-size: var(--fzu135);
	font-weight: 100;
	text-align: right;

	pointer-events: none;
}
.entrance .image{	width: calc(585 * var(--u));	height: calc(397 * var(--v));	}
.entrance .texts
{
	z-index: 2;
	position: absolute;
	bottom: 0;	right: 0;

	display: block;
	width: calc(670 * var(--u));
	padding: calc(60 * var(--u)) calc(90 * var(--u));
	background: white;
}
.entrance .title
{
	display: flex;	align-items: center;
	gap: 0 calc(25 * var(--v));
	margin-bottom: calc(30 * var(--v));
}
.entrance h2
{
	font-size: var(--fzv29);
	line-height: 1.3;
}
.entrance .texts p
{
	font-size: var(--fzv17);
	line-height: 1.7;
	letter-spacing: 0.05em;
}

}
@media screen and (min-width: 768px)
{

.entrance .texts{	transition: 0.5s ease-in-out 0s;	}
.entrance .texts:hover
{
	background-color: var(--Cwhite0a);
	backdrop-filter:var(--backdrop0);
	-webkit-backdrop-filter: var(--backdrop0);
	box-shadow: var(--shadow0);
}

}
@media screen and (max-width: 767px)
{

.entrance{	margin-bottom: -15vw !important;	}

.entrance > .outer > .inner{	padding: 0 var(--pageP);	}
.entrance .en
{
	position: unset;
	font-size: var(--fzv85);
}
.entrance .image{	aspect-ratio: 585/443;	}
.entrance .texts
{
	position: relative;
	top: -15vw;	bottom: unset;	left: calc(var(--pageP)*3);
	padding: calc(45 * var(--u)) calc(65 * var(--u));
}
.entrance .title
{
	display: flex;	align-items: center;
	gap: 0 calc(25 * var(--v));
	margin-bottom: calc(30 * var(--v));
}
.entrance h2
{
	font-size: var(--fzv22);
	letter-spacing: 0.05em;
}
.entrance .texts p{	font-size: var(--fzv18);	}
.entrance .circleArrow{	width: 8vw;	}

}




/* ======================================== end ======================================== */
