@charset "UTF-8";

		/* ========================================
		Loading Screen (New)
		========================================
		*/
		#loading-screen {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background-color: #050505;
			z-index: 10000;
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1); /* スムーズなスライドアップ */
		}

		#loading-screen.is-loaded {
			transform: translateY(-100%);
		}

		.loading-logo {
			font-family: var(--font-eng);
			color: #fff;
			text-align: center;
			animation: pulse 2s infinite ease-in-out;
		}

		.loading-logo h1 {
			font-size: 3rem;
			font-weight: 900;
			letter-spacing: 0.1em;
			margin-bottom: 0.5rem;
		}

		.loading-logo span {
			font-family: var(--font-sans);
			font-size: 0.8rem;
			letter-spacing: 0.3em;
			color: var(--cover-accent-color);
		}

		@keyframes pulse {
			0% { opacity: 0.6; }
			50% { opacity: 1; }
			100% { opacity: 0.6; }
		}

		/* ========================================
		Age Verification Modal (Overlay)
		========================================
		*/
		#age-verification {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: rgba(255, 255, 255, 0.98);
			z-index: 9999;
			display: flex;
			justify-content: center;
			align-items: center;
			opacity: 0;
			visibility: hidden;
			transition: opacity 0.4s;
		}

		#age-verification.is-visible {
			opacity: 1;
			visibility: visible;
		}

		.modal-content {
			text-align: center;
			padding: 2rem;
			max-width: 400px;
		}

		.modal-title {
			font-family: var(--font-copy);
			font-size: 1.8rem;
			font-weight: 800;
			margin-bottom: 1rem;
		}

		.btn-group {
			display: flex;
			gap: 1rem;
			justify-content: center;
			margin-top: 2rem;
		}

		.btn {
			padding: 0.8rem 2rem;
			border-radius: 50px;
			border: 2px solid #000;
			font-weight: 700;
			cursor: pointer;
			background: transparent;
			transition: all 0.2s;
		}

		.btn-enter {
			background: #000;
			color: #fff;
		}

		.btn-enter:hover {
			background: var(--cover-accent-color);
			border-color: var(--cover-accent-color);
		}