.official-links {
	text-align: center;
	margin: 6rem 0 3rem;
	padding: 30px 25px;
	border: 1.5px dashed #e6cbb1; /* 細くて優しい色 */
	border-radius: 20px;
	box-shadow: 0 3px 10px rgba(0,0,0,0.03); /* 影も控えめ */
}

.official-links h3 {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #5a4d41;
	margin-bottom: 20px;
	letter-spacing: 0.5px;
}

.official-links h3::after {
	content: "✿";
	color: #f5c2b8;
	margin-left: 8px;
	font-size: 1rem;
}

.links-container {
	display: flex;
	justify-content: center;
	gap: 14px;
	flex-wrap: wrap;
}

.link-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 12px 26px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 600;
	color: #5a4d41;
	border: 2px solid var(--accent);
	border-radius: 50px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.link-btn:hover {
	background: var(--accent);
	color: #fff;
	transform: translateY(-2px) scale(1.03);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

@media (max-width: 768px) {
	.links-container {
		flex-direction: column; /* ボタンを縦に並べる */
		align-items: center;
	}

	.official-links {
		padding: 20px 15px;
	}

	.link-btn {
		width: 100%; /* ボタンを幅いっぱいに広げる */
		justify-content: center;
		padding: 10px 0;
		font-size: 0.95rem;
	}
}