/* private-courses: お料理を選ぶ / 関連導線 */

.private-courses {
	padding-block: var(--space-4) var(--space-2);
	background-color: var(--color-bg);
	background-image: url("../../img/bg_top-concrete.webp");
	background-repeat: repeat;
}

.private-courses .container {
	padding-inline: 28px;
}

.private-courses__title {
	font-size: var(--fs-body);
	font-weight: var(--fw-normal);
	letter-spacing: 0.14em;
}

.private-courses__content {
	margin-top: var(--space-2);
}

.private-courses__photo {
	width: 100%;
	aspect-ratio: 2.4 / 1;
	object-fit: cover;
	object-position: 50% 52%;
}

.private-courses__body {
	margin-top: var(--space-2);
}

.private-courses__text {
	font-size: 9px;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.private-courses__buttons {
	margin-top: var(--space-3);
	display: grid;
	gap: var(--space-2);
}

.private-courses__button {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: var(--space-2) var(--space-8);
	background: var(--color-primary);
	color: var(--color-white);
	font-size: var(--fs-body-sm);
	letter-spacing: 0.08em;
	text-align: center;
}

.private-courses__button::after,
.private-courses__related a::after {
	content: "";
	position: absolute;
	right: var(--space-5);
	width: var(--space-2);
	height: var(--space-2);
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(45deg);
}

.private-courses__button::before {
	content: "";
	position: absolute;
	inset: -4px 0;
}

.private-courses__related {
	margin-top: var(--space-5);
	border-top: 1px solid var(--color-comparison-line);
}

.private-courses__related a {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 36px;
	padding: var(--space-1) var(--space-7) var(--space-1) var(--space-2);
	border-bottom: 1px solid var(--color-comparison-line);
	font-size: var(--fs-body-sm);
	letter-spacing: 0.08em;
}

.private-courses__related a::after {
	color: var(--color-primary);
}

.private-courses__related a::before {
	content: "";
	position: absolute;
	inset: -4px 0;
}

@media (min-width: 768px) {
	.private-courses {
		padding-block: var(--space-8) var(--space-4);
	}

	.private-courses .container {
		max-width: 1440px;
		padding-inline: 60px;
	}

	.private-courses__title {
		text-align: center;
		font-size: 30px;
	}

	.private-courses__title::after {
		content: "";
		display: block;
		width: 270px;
		margin: var(--space-2) auto 0;
		border-bottom: 1px solid var(--color-main);
	}

	.private-courses__content {
		margin-top: var(--space-5);
		display: grid;
		grid-template-columns: 58% 42%;
		align-items: center;
	}

	.private-courses__photo {
		aspect-ratio: 2.48 / 1;
	}

	.private-courses__body {
		margin: 0;
		padding-inline: var(--space-10);
	}

	.private-courses__text {
		font-size: var(--fs-body-pc);
		line-height: 2;
	}

	.private-courses__buttons {
		margin-top: var(--space-6);
		gap: 0;
		border-top: 1px solid var(--color-border);
	}

	.private-courses__button {
		justify-content: flex-start;
		min-height: 60px;
		padding-inline: 0 var(--space-8);
		border-bottom: 1px solid var(--color-border);
		background: transparent;
		color: var(--color-primary);
		font-size: var(--fs-body-pc);
	}

	.private-courses__related {
		margin-top: var(--space-6);
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.private-courses__related a {
		justify-content: center;
		min-height: 64px;
		font-size: var(--fs-body-pc);
	}

	.private-courses__related a + a {
		border-left: 1px solid var(--color-border);
	}
}

@media (max-width: 767px) {
	.private-courses {
		padding-block: var(--space-6);
	}

	.private-courses .container {
		padding-inline: var(--container-gutter-mobile);
	}

	.private-courses__title {
		font-size: var(--fs-h2-mobile);
		font-weight: var(--fw-normal);
		line-height: var(--lh-tight);
		letter-spacing: 0.1em;
		text-align: center;
	}

	.private-courses__title::after {
		display: block;
		width: var(--space-9);
		margin: var(--space-2) auto 0;
		border-bottom: 1px solid var(--color-main);
		content: "";
	}

	.private-courses__content {
		margin-top: var(--space-6);
	}

	.private-courses__photo {
		aspect-ratio: 3 / 1;
		border-radius: var(--radius-sm);
	}

	.private-courses__body {
		margin-top: var(--space-4);
	}

	.private-courses__text {
		font-size: var(--fs-body-pc);
		line-height: var(--lh-body);
		word-break: auto-phrase;
	}

	.private-courses__buttons {
		margin-top: var(--space-5);
		gap: var(--space-3);
	}

	.private-courses__button {
		min-height: var(--space-9);
		padding-inline: var(--space-4) var(--space-8);
		border: 1px solid var(--color-primary);
		border-radius: var(--radius-sm);
		background: transparent;
		color: var(--color-primary);
		font-size: var(--fs-body-pc);
		letter-spacing: 0.04em;
		line-height: var(--lh-tight);
		white-space: nowrap;
	}

	.private-courses__related {
		margin-top: var(--space-6);
		border-top-color: var(--color-main);
	}

	.private-courses__related a {
		justify-content: center;
		min-height: var(--space-9);
		font-size: var(--fs-body-pc);
		line-height: var(--lh-tight);
		text-align: center;
	}
}

@media (max-width: 359px) {
	.private-courses__button {
		padding-inline: var(--space-2) var(--space-7);
		font-size: var(--fs-body);
	}
}
