.login-box {
	background: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	/* Safari対応 */
	border-radius: 16px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
	padding: 40px 30px;
	width: 100%;
	max-width: 360px;
	color: #1a237e;
}


.login-box h2 {
	text-align: center;
	font-weight: 400;
	margin-bottom: 30px;
	font-size: 24px;
}

.login-box input {
	width: calc(100% - 20px);
	/* 左右に10pxずつ余白ができる */
	padding: 12px;
	margin-bottom: 20px;
	border: none;
	border-radius: 8px;
	font-size: 16px;
	background-color: rgba(255, 255, 255, 0.5);
	color: #1a237e;
}

.login-box input::placeholder {
	color: #666;
}

.login-box button {
	width: 100%;
	/* 左右に10pxずつ余白ができる */
	padding: 12px;
	border: none;
	border-radius: 8px;
	background-color: #64b5f6;
	color: white;
	font-size: 16px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.login-box button:hover {
	background-color: #42a5f5;
}

.entry-box {
	background: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	/* Safari対応 */
	border-radius: 16px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
	/* ソフトな影に */
	padding: 40px;
	width: 800px;
	color: #1a237e;
	/* 濃紺よりのテキスト色で読みやすく */
}


/* レスポンシブ */
@media (max-width: 400px) {
	.login-box {
		padding: 30px 20px;
	}

	.login-box h2 {
		font-size: 20px;
	}

	.login-box input,
	.login-box button {
		font-size: 14px;
		padding: 10px;
	}
}

.button-link {
	display: inline-block;
	padding: 1em 2em;
	font-size: 1.2rem;
	color: white;
	background: linear-gradient(135deg, #4b6cb7, #182848);
	border-radius: 50px;
	/* 丸い門のような形状 */
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
	transition: all 0.3s ease;
	font-weight: bold;
	letter-spacing: 1px;
}

.button-link:hover {
	background: linear-gradient(135deg, #5f87d1, #1e2e5b);
	transform: scale(1.05);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.4);
}