@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface&display=swap');
.overlay {
		display: none;
}
body.no_scroll {
		height: 100vh !important;
		overflow: hidden;
}
.page_container {
		overflow: hidden;
}
.loading_base {
		background: url("../images/body_bg.png");
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		z-index: 5000;
		display: flex;
		justify-content: center;
		align-items: center;
}
.loading_logo {
		width: 80px;
}
.loading_logo img {
		width: 100%;
		height: auto;
}
.loading_base p {
		font-size: 40px;
		color: #2C2C2C;
		font-family: 'Abril Fatface', cursive;
		transform: translateY(-20px);
		opacity: 0.2;
		animation: fadeInLoading 1s linear forwards;
}
@keyframes fadeInLoading {
		0% {
				opacity: 0.2;
				filter: blur(2px);
		}
		100% {
				opacity: 1;
				filter: blur(0px);
		}
}
.loading_base p span.unit {
		font-size: 60%;
		margin-left: 2px;
}
.hero_section {
		position: relative;
		min-height: 600px;
		box-sizing: border-box;
}
.hero_section::before {
		content: '';
		display: block;
		position: absolute;
		top: 100px;
		left: 0;
		width: 100%;
		height: 100%;
		background: url("../images/hero_main_pc.png") no-repeat center bottom;
		background-size: cover;
		mix-blend-mode: darken;
		transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 2.5s;
}
.hero_section .top_news_line {
		position: absolute;
		left: 135px;
		bottom: 0;
}
.top_news_line dl {
		display: flex;
		width: 400px;
		height: 25px;
		transform: rotate(90deg);
		position: relative;
		left: -190px;
		top: -190px;
}
.top_news_line dt {
		margin-right: 30px;
		position: relative;
}
.top_news_line dt::after {
		content: '.';
		display: block;
		position: absolute;
		right: -15px;
		bottom: 5px;
}
.top_news_line dl a {
		color: #2C2C2C;
		text-decoration: none;
}
@media(max-width: 1024px) {
		.hero_section {
				max-height: 200vw;
		}
		.hero_section::before {
				background: url("../images/hero_main_sp.png") no-repeat center bottom;
				background-size: 100%;
				top: 0;
		}
		.hero_section .top_news_line {
				left: 13vw;
		}
		.top_news_line dl {
				left: -230px;
		}
}
@media(max-width: 767px) {
		.top_news_line dl {
				left: -216px;
		}
}
.item_section_inner {
		text-align: center;
		max-width: 400px;
		margin: 0 auto;
		padding: 0 5vw;
}
.item_section_inner h2 {
		font-size: 17px;
		font-family: 'Libre Baskerville', serif;
		font-weight: 400;
		font-style: italic;
		letter-spacing: 0.02em;
		margin: 0 0 20px;
}
.item_section_bnr img {
		width: 100%;
		height: auto;
		transition: 0.5s opacity;
}
@media (hover: hover) {
		.item_section_bnr a:hover img {
				opacity: 0.7;
		}
}
/* ===== Loading Start  ===== */
header h1 {
		transition: opacity 2.5s;
		opacity: 0;
		transition-delay: 0.5s;
}
header.start h1 {
		opacity: 1;
}
.hero_section::before {
		transform: scale(1.05);
		opacity: 0;
		filter: blur(6px);
		transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 2.5s, filter 2.5s;
}
.hero_section.start::before {
		transform: scale(1);
		opacity: 1;
		filter: blur(0px);
}
.top_news_line {
		transition: opacity 2.5s;
		opacity: 0;
		transition-delay: 0.8s;
}
.hero_section.start .top_news_line {
		opacity: 1;
}
.global_nav li, .musicBtn {
		opacity: 0;
		transform: translateX(-50px);
		transition: transform 1s cubic-bezier(0.16, 1, 0.3, 1), opacity 1s;
}
footer {
		transition: opacity 2.5s;
		opacity: 0;
		transition-delay: 1s;
}
footer.start {
		opacity: 1;
}
.global_nav ul li:nth-child(1) {
		transition-delay: 0.3s;
}
.global_nav ul li:nth-child(2) {
		transition-delay: 0.5s;
}
.global_nav ul li:nth-child(3) {
		transition-delay: 0.7s;
}
.global_nav ul li:nth-child(4) {
		transition-delay: 0.9s;
}
.global_nav ul li:nth-child(5) {
		transition-delay: 1.1s;
}
.global_nav ul li:nth-child(6) {
		transition-delay: 1.3s;
}
.global_nav ul li:nth-child(7) {
		transition-delay: 1.5s;
}
.global_nav ul li:nth-child(8) {
		transition-delay: 1.7s;
}
.musicBtn {
		transition-delay: 1.5s;
}
.global_nav.start li, .global_nav.start .musicBtn {
		transform: translateX(0);
		opacity: 1;
}
.musicBtn {
		cursor: pointer;
		text-align: right;
		padding-right: 35px;
		position: relative;
}
.musicBtn::after {
		content: '';
		display: block;
		width: 20px;
		height: 14px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 20px;
		background-image: url("../images/sound_off.png");
		position: absolute;
		right: 5px;
		top: 8px;
		transition: background 0.3s;
}
.musicBtn.start::after {
		background-image: url("../images/sound_on.png");
}
.musicBtnTxt {
		color: rgba(255, 255, 255, 0);
		opacity: 0 !important
}
@media(max-width: 767px) {
		.musicBtn::after {
				top: 12px;
		}
}