.select-products-page {
	--select-ink: #292a25;
	--select-green: #435d4d;
	--select-red: #a64736;
	--select-cream: #f5f0e6;
	--select-line: #ded8cd;
	color: var(--select-ink);
	background: #fff;
	font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;
}

/* Shared modern navigation */
@media screen and (min-width: 681px) {
	body#product.select-products-page nav#gnav {
		position: sticky !important;
		top: 0 !important;
		z-index: 1000 !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		background: rgba(255, 255, 255, .96) !important;
		border-bottom: 1px solid #e5e0d7 !important;
		box-shadow: 0 6px 22px rgba(45, 40, 31, .045) !important;
		backdrop-filter: blur(12px);
	}
	body#product.select-products-page nav#gnav ul.contents {
		display: flex !important;
		width: min(1220px, calc(100% - 40px)) !important;
		min-height: 72px !important;
		height: auto !important;
		margin: 0 auto !important;
		padding: 0 !important;
		align-items: center !important;
		justify-content: center !important;
		gap: clamp(15px, 2vw, 32px) !important;
	}
	body#product.select-products-page nav#gnav ul.contents li {
		margin: 0 !important;
		line-height: 1.4 !important;
	}
	body#product.select-products-page nav#gnav ul.contents li a {
		position: relative !important;
		display: block !important;
		padding: 27px 0 24px !important;
		color: #292a25 !important;
		background: transparent !important;
		border: 0 !important;
		font-size: 12px !important;
		font-weight: 600 !important;
		letter-spacing: .02em !important;
		line-height: 1.4 !important;
		text-decoration: none !important;
		white-space: nowrap !important;
	}
	body#product.select-products-page nav#gnav ul.contents li a span,
	body#product.select-products-page nav#gnav ul.contents li a br {
		display: none !important;
	}
	body#product.select-products-page nav#gnav ul.contents li a::after {
		content: "" !important;
		position: absolute !important;
		right: 0 !important;
		bottom: 16px !important;
		left: 0 !important;
		display: block !important;
		height: 2px !important;
		background: #a64736 !important;
		transform: scaleX(0) !important;
		transform-origin: center !important;
		transition: transform .2s ease !important;
	}
	body#product.select-products-page nav#gnav ul.contents li a:hover::after,
	body#product.select-products-page nav#gnav li:nth-child(5) a::after {
		transform: scaleX(1) !important;
	}
}
.select-products-page *,
.select-products-page *::before,
.select-products-page *::after {
	box-sizing: border-box;
}
.select-products-page .select-container {
	width: min(1120px, calc(100% - 64px));
	margin: 0 auto;
}
.select-products-page .select-intro {
	padding: 96px 0 82px;
	text-align: center;
	background: var(--select-cream);
}
.select-products-page .select-label,
.select-products-page .select-heading > p {
	margin: 0 0 10px;
	color: var(--select-red);
	font: 700 12px/1.4 "Courier Prime", monospace;
	letter-spacing: .2em;
}
.select-products-page .select-intro h2 {
	margin: 0;
	font: 600 clamp(34px, 4vw, 52px)/1.35 "Noto Serif JP", serif;
	letter-spacing: .08em;
}
.select-products-page .select-lead {
	margin: 24px 0 0;
	color: #66635c;
	font-size: 14px;
	line-height: 2;
}
.select-products-page .select-section {
	padding: 100px 0 120px;
}
.select-products-page .select-heading {
	margin-bottom: 42px;
	text-align: center;
}
.select-products-page .select-heading h3 {
	margin: 0;
	font: 600 34px/1.4 "Noto Serif JP", serif;
	letter-spacing: .08em;
}
.select-products-page .select-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: stretch;
}
.select-products-page .select-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	border: 1px solid var(--select-line);
	background: #fff;
}
.select-products-page .select-card figure {
	height: 330px;
	margin: 0;
	display: grid;
	place-items: center;
	overflow: hidden;
	background: #faf9f6;
}
.select-products-page .select-card figure img {
	width: 90%;
	height: 90%;
	object-fit: contain;
}
.select-products-page .select-card__body {
	display: flex;
	padding: 27px 25px 29px;
	flex: 1;
	flex-direction: column;
}
.select-products-page .select-card h4 {
	margin: 0 0 15px;
	font-size: 20px;
	line-height: 1.5;
}
.select-products-page .select-card p {
	margin: 0 0 24px;
	color: #68665f;
	font-size: 13px;
	line-height: 1.9;
}
.select-products-page .select-card a {
	margin-top: auto;
	align-self: flex-start;
	padding-bottom: 4px;
	color: var(--select-green);
	border-bottom: 1px solid currentColor;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
}
.select-products-page .select-card a span {
	margin-left: 7px;
}
.select-products-page .select-note {
	margin-top: 44px;
	padding: 23px 26px;
	background: var(--select-cream);
}
.select-products-page .select-note p {
	margin: 0;
	color: #6c685f;
	font-size: 11px;
	line-height: 1.9;
}

@media screen and (max-width: 900px) {
	.select-products-page .select-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 680px) {
	.select-products-page .select-container {
		width: calc(100% - 36px);
	}
	.select-products-page .select-intro {
		padding: 66px 0 58px;
	}
	.select-products-page .select-intro h2 {
		font-size: 34px;
	}
	.select-products-page .select-lead {
		margin-top: 18px;
		font-size: 13px;
	}
	.select-products-page .select-section {
		padding: 68px 0 82px;
	}
	.select-products-page .select-heading {
		margin-bottom: 28px;
	}
	.select-products-page .select-heading h3 {
		font-size: 28px;
	}
	.select-products-page .select-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	.select-products-page .select-card {
		display: grid;
		grid-template-columns: 42% 58%;
	}
	.select-products-page .select-card figure {
		height: auto;
		min-height: 220px;
	}
	.select-products-page .select-card figure img {
		width: 96%;
		height: 96%;
	}
	.select-products-page .select-card__body {
		padding: 22px 18px;
	}
	.select-products-page .select-card h4 {
		margin-bottom: 10px;
		font-size: 17px;
	}
	.select-products-page .select-card p {
		margin-bottom: 17px;
		font-size: 11px;
		line-height: 1.75;
	}
	.select-products-page .select-card a {
		font-size: 10px;
	}
	.select-products-page .select-note {
		margin-top: 28px;
		padding: 18px;
	}
}

@media screen and (max-width: 390px) {
	.select-products-page .select-card {
		grid-template-columns: 1fr;
	}
	.select-products-page .select-card figure {
		height: 260px;
	}
}
