@charset "UTF-8";
/* CSS Document */

#pageWrap {
    padding: 0 0;
	background-color: #03060e;
}

#sec01 {
	
	color: #fff;
	height: calc(100vh - 100px);
	min-height: 40vW;
	position: relative;
	
}
#sec01 .engBox {
	width: 80%;
	max-width: 620px;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	container-type: inline-size;
	text-align: center;
	p.top {
		text-align: center;
		font-size: 3.2cqw;
		font-size: clamp(18px, 3.2cqw, 30px);
		letter-spacing: 0.2em;
		padding: 1em 0;
	}
	h3 {
	}
	p.en {
		width: 60%;
		margin: 0 auto;
		padding: 0.5em 0;
	}
	h2 {
		color: #c1a967;
		padding: 8vh 0;
		font-size: 5.2cqw;
		font-size: clamp(30px, 5.2cqw, 50px);
		letter-spacing: 0.2em;
	}
	p.lead {
		text-align: center;
		line-height: 2.6;
		font-size: 2.5cqw;
		font-size: clamp(13px, 2.5cqw, 18px);
		letter-spacing: 0.1em;
		span {
			display: block;
		}
	}
}

#sec01 .engBox {
	p.top {
		opacity: 0;
	}
	h3 {
		opacity: 0;
		transform: scale(1.2)
	}
	p.en {
		opacity: 0;
	}
	h2 {
		opacity: 0;
		filter: blur(20px);
	}
	p.lead {
		span {
			display: block;
			opacity: 0;
			transform: translateY(100%);
	
		}
	}
}
._load #sec01 .engBox {
	p.top {
		transition: 2s ease-out 0.5s;
		opacity: 1;
	}
	h3 {
		transition: 2s ease-out 1s;
		opacity: 1;
		transform: scale(1)
	}
	p.en {
		transition: 2s ease-out 1.5s;
		opacity: 1;
	}
	h2 {
		transition: 2s ease-out 2s;
		opacity: 1;
		filter: blur(0px);
	}
	p.lead {
		span {
			transition: 1s ease-out;
 	transition-delay: calc(0.5s * var(--idx) + 3s);
			opacity: 1;
			transform: translateY(0%);
		}
	}
}

#sec02 {
	position: relative;
}
#sec02 {
	.imgBox {}
	h3 {
		position: absolute;
		width: 17%;
		top: 2%;
		left: 8%;
		img {
			filter: brightness(300%);
		}
		
	}
	h3.active {
		img {
			transition:1s 1.5s;
			filter: brightness(100%);
		}
	}
	.logo::after,.eki01::after,.eki02::after {
		content:"";
			background-color: rgba(255,255,255,0.6);
			position: absolute;
			width: 1px;
			height: 30%;
			top: 105%;
			left: 50%;
	}
	.logo {
		position: absolute;
		width: 13%;
		top: 21%;
		right: 8%;
		&::after {
			height: 100%;
			top: 120%;
		}
		
	}
	.eki01 {
		position: absolute;
		width: 9%;
		top: 33%;
		left: 31.5%;
		&::after {
			top: 110%;
			height: 350%;
		}
		
	}
	.eki02 {
		position: absolute;
		width: 6%;
		top: 30%;
		left: 43%;
		&::after {
			top: 110%;
			height: 290%;
		}
		
	}
	
	
} 


@media screen and (max-width: 599px) {
	#sec01{
		height: auto;
		min-height: 100vh;
		padding: 15vw 0 40vw;
	}
	#sec01 .engBox {
		position: static;
		width: 85%;
		transform: translate(0);
		p.top {
			font-size: 4.7cqw;
			letter-spacing: 0.1em;
		}
		h3 {
		}
		p.en {
			width: 96%;
			padding: 0em 0;
		}
		h2 {
			padding: 2em 0;
			font-size: 7cqw;
			letter-spacing: 0.2em;
		}
		p.lead {
			line-height: 2.4;
			font-size: clamp(13px, 2.5cqw, 18px);
			letter-spacing: 0.0em;
		}
	}
	
	#sec02 {
		margin-top: 0vh;
		h3 {
			position: absolute;
			width: 40%;
			left: 30%;
			top: auto;
			bottom: 80%;

		}
		.logo::after,.eki01::after,.eki02::after {

		}
		.logo {
			position: absolute;
			width: 30%;
			top: auto;
			bottom: 43%;
		}
		.eki01 {
			width: 30%;
			top: 52%;
			left: 10%;
			&::after {
				left: 82%;
				height: 280%;
			}

		}
		.eki02 {
			width: 20%;
			top: 57%;
			left: 43%;
			&::after {
				left: 15%;
				height: 180%;
			}

		}


	} 
}


