/* ===============================
   kodawari-scenes: 利用シーン3件
   SPは縦に読み進め、PCは3列。ページ全体を横スクロールさせない。
   =============================== */

.kodawari-scenes {
	padding-block: var(--space-10);
	background: var(--color-page-bg);
}

.kodawari-scenes__header {
	max-width: 100%;
	margin-inline: auto;
	text-align: center;
}

.kodawari-scenes__title {
	font-size: var(--fs-h2-mobile);
	font-weight: var(--fw-medium);
	letter-spacing: 0.06em;
	color: var(--color-primary);
}

.kodawari-scenes__title::after {
	content: "";
	display: block;
	width: var(--space-9);
	margin: var(--space-4) auto 0;
	border-top: 1px solid var(--color-main);
}

.kodawari-scenes__lead {
	margin-top: var(--space-5);
	font-size: var(--fs-body-pc);
	line-height: var(--lh-body);
	letter-spacing: 0.035em;
	text-align: left;
}

.kodawari-scenes__list {
	display: grid;
	gap: var(--space-6);
	margin-top: var(--space-8);
}

.kodawari-scenes__item {
	min-width: 0;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	overflow: hidden;
	background: var(--color-bg);
}

.kodawari-scenes__link {
	display: block;
	color: var(--color-text);
}

.kodawari-scenes__media {
	display: block;
	overflow: hidden;
	background: var(--color-bg-subtle);
}

.kodawari-scenes__media img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform var(--duration-base) ease;
}

.kodawari-scenes__caption {
	display: grid;
	gap: var(--space-3);
	padding: var(--space-4) var(--space-5) var(--space-5);
}

.kodawari-scenes__item-title {
	display: block;
	font-size: var(--fs-hero-mobile);
	font-weight: var(--fw-medium);
	line-height: var(--lh-tight);
	letter-spacing: 0.04em;
	color: var(--color-primary);
}

.kodawari-scenes__more {
	display: inline-flex;
	align-items: center;
	justify-self: start;
	gap: var(--space-2);
	min-height: var(--space-9);
	font-size: var(--fs-body);
	letter-spacing: 0.06em;
	color: var(--color-primary);
}

.kodawari-scenes__more::after {
	content: "";
	width: var(--space-2);
	height: var(--space-2);
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--duration-fast) ease;
}

@media (hover: hover) {
	.kodawari-scenes__link:hover .kodawari-scenes__media img {
		transform: scale(1.025);
	}

	.kodawari-scenes__link:hover .kodawari-scenes__more::after {
		transform: translateX(var(--space-1)) rotate(45deg);
	}
}

@media (min-width: 768px) {
	.kodawari-scenes {
		padding-block: var(--space-11);
	}

	.kodawari-scenes__title {
		font-size: var(--fs-h2);
	}

	.kodawari-scenes__header {
		width: 64%;
	}

	.kodawari-scenes__lead {
		margin-top: var(--space-6);
		text-align: center;
	}

	.kodawari-scenes__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--space-6);
		margin-top: var(--space-9);
	}

	.kodawari-scenes__media img {
		aspect-ratio: 4 / 3;
	}

	.kodawari-scenes__caption {
		padding: var(--space-5) var(--space-6) var(--space-6);
	}

	.kodawari-scenes__item-title {
		font-size: var(--fs-h2-mobile);
	}
}
