.yard-area__map img,
.yard-area__map svg {
	display: block;
}

/* AREA 地図（県別 geolonia）：県境は白線で区切る */
.yard-area-map-svg [data-pref-slug] {
	stroke: #ffffff;
	stroke-width: 1.5px;
	transition: fill 0.2s ease;
}

/* PRICE：アコーディオンがクリックできるように */
.yard-acc {
	width: 100%;
	max-width: 350px;
	box-sizing: border-box;
}

.yard-acc > summary.yard-price__row {
	cursor: pointer;
	user-select: none;
}

.yard-acc > summary.yard-price__row::after {
	transition: transform 0.2s ease, opacity 0.2s ease;
}

/*
Theme Name: Blocksy Child Yard
Theme URI: https://example.com/
Description: ヤード情報（yard CPT）用 Blocksy 子テーマ
Author: 
Template: blocksy
Version: 1.0.0
Text Domain: blocksy-child-yard
*/

/* 親テーマのスタイルは functions.php で読み込み */

/* =========================================================
   統合CSS（保守しやすく style.css 1本運用）
   コーディング/構造の思想は「足場サブスク」に寄せる
   横方向の margin / padding（px）は 1440px 基準で calc(N * 100vw / 1440)
   ========================================================= */

:root {
	--yard-font-family: "Noto Sans JP", system-ui, -apple-system, "Segoe UI", sans-serif;
	--yard-page-padding-inline: min(calc(120 * 100vw / 1440), 120px);
	--yard-header-padding-inline: min(calc(40 * 100vw / 1440), 40px);
	--yard-header-bar-padding-block: clamp(12px, calc(20 * 100vw / 1440), 20px);
	--yard-header-logo-height: clamp(36px, calc(50 * 100vw / 1440), 50px);
	--yard-header-cta-height: clamp(32px, calc(40 * 100vw / 1440), 40px);
	--yard-header-height: calc(
		var(--yard-header-bar-padding-block) * 2 +
			max(var(--yard-header-logo-height), var(--yard-header-cta-height))
	);
	--yard-scroll-offset: var(--yard-header-height);
}

html {
	scroll-padding-top: var(--yard-scroll-offset);
}

body.admin-bar {
	--yard-scroll-offset: calc(32px + var(--yard-header-height));
}

@media screen and (max-width: 782px) {
	body.admin-bar {
		--yard-scroll-offset: calc(46px + var(--yard-header-height));
	}
}

body,
body button,
body input,
body select,
body textarea,
#main-container {
	font-family: var(--yard-font-family);
}

/* チェックボックス枠線（サイト共通） */
#main-container input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	margin: 0;
	border: 1px solid #ddd;
	border-radius: 3px;
	background-color: #fff;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 12px 10px;
	cursor: pointer;
	flex-shrink: 0;
	vertical-align: middle;
}

#main-container input[type="checkbox"]:checked {
	border-color: #ff6500;
	background-color: #ff6500;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10' fill='none'%3E%3Cpath d='M1 5.5L4.5 9L11 1' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#main-container input[type="checkbox"]:focus-visible {
	outline: 2px solid #ff6500;
	outline-offset: 2px;
}

/* --- Blocksy ブレークポイント補正（旧 blocksy-breakpoints.css） --- */
@media screen and (min-width: 1000px) and (max-width: 1099.98px) {
	[data-sidebar] {
		grid-template-columns: 100% !important;
	}

	[data-sidebar] > aside {
		order: 0 !important;
	}

	[data-sidebar="left"] > section {
		grid-column: auto !important;
	}

	.ct-sidebar[data-sticky="sidebar"],
	.ct-sticky-widgets {
		position: relative !important;
		top: auto !important;
	}
}

@media screen and (min-width: 1100px) {
	[data-sidebar="right"] {
		--grid-template-columns: minmax(100px, 1fr) var(--sidebar-width, 27%);
	}

	[data-sidebar="left"] {
		--sidebar-order: -1;
		--grid-template-columns: var(--sidebar-width, 27%) minmax(100px, 1fr);
	}

	[data-sidebar="left"] > section {
		grid-column: 2;
	}

	.ct-sidebar[data-sticky="sidebar"],
	.ct-sticky-widgets {
		position: sticky;
		top: calc(
			var(--sidebar-offset, 50px) + var(--admin-bar, 0px) + var(--theme-frame-size, 0px) +
				var(--header-sticky-height, 0px) * var(--sticky-shrink, 100) / 100
		);
	}
}

@media screen and (min-width: 768px) {
	.ct-featured-image {
		padding-bottom: 50px;
	}
}

@media screen and (min-width: 690px) and (max-width: 767px) {
	.ct-featured-image {
		padding-bottom: 50px;
	}
}

/* --- ヘッダー（足場サブスク寄せ） --- */
body.has-yard-header #main-container > main {
	padding-top: var(--yard-header-height);
}

.yard-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	background: #fff;
}

.yard-header__bar {
	background: #fff;
}

.yard-header__inner {
	max-width: 1440px;
	margin: 0 auto;
	padding: clamp(12px, calc(20 * 100vw / 1440), 20px) var(--yard-header-padding-inline);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(16px, calc(30 * 100vw / 1440), 30px);
	flex-wrap: nowrap;
}

.yard-header__brand {
	flex: 0 0 auto;
}

.yard-header__nav--desktop {
	margin-left: auto;
	display: flex;
	justify-content: flex-end;
	flex: 0 1 auto;
	min-width: 0;
}

.yard-header__nav--desktop .yard-menu--header li {
	flex-shrink: 0;
}

.yard-header__brand {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.yard-header__logo {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.yard-header__logo img {
	display: block;
	height: clamp(36px, calc(50 * 100vw / 1440), 50px);
	width: auto;
}

.yard-menu--header {
	display: flex;
	align-items: center;
	gap: clamp(12px, calc(25 * 100vw / 1440), 25px);
	margin: 0;
	padding: 0;
	list-style: none;
	flex-wrap: nowrap;
	white-space: nowrap;
}

.yard-menu--header a {
	font-family: var(--yard-font-family);
	font-weight: 500;
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	color: #525252;
	text-decoration: none;
	white-space: nowrap;
}

.yard-menu--header a:hover {
	opacity: 0.6;
}

.yard-header__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: clamp(120px, calc(150 * 100vw / 1440), 150px);
	height: clamp(32px, calc(40 * 100vw / 1440), 40px);
	border-radius: clamp(6px, calc(8 * 100vw / 1440), 8px);
	background: #ff6500;
	color: #fff;
	text-decoration: none;
	font-family: var(--yard-font-family);
	font-weight: 700;
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	letter-spacing: 0.05em;
	white-space: nowrap;
}

.yard-header__cta:hover {
	opacity: 0.7;
}

/* モバイルトグル（3本線 → ×） */
.yard-header__toggle {
	display: none;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	position: relative;
	width: 22px;
	height: 30px;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	z-index: 101;
}

.yard-header__toggle span {
	position: absolute;
	left: -6%;
	width: 100%;
	height: 2px;
	background: #171717;
	border-radius: 5px;
	transition: transform 0.3s ease, opacity 0.3s ease, top 0.3s ease, left 0.3s ease, width 0.3s ease;
}

.yard-header__toggle span:nth-child(1) {
	top: 19%;
}

.yard-header__toggle span:nth-child(2) {
	top: 48%;
}

.yard-header__toggle span:nth-child(3) {
	top: 74%;
}

.yard-header__toggle.is-active span:nth-child(1) {
	top: 48%;
	left: 0;
	width: 23px;
	transform: rotate(45deg);
}

.yard-header__toggle.is-active span:nth-child(2) {
	top: 51%;
	opacity: 0;
}

.yard-header__toggle.is-active span:nth-child(3) {
	top: 48%;
	left: 0;
	width: 23px;
	transform: rotate(-225deg);
}

.yard-menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* SPナビ（フルスクリーン展開） */
.yard-nav-panel {
	display: none;
	position: fixed;
	top: var(--yard-header-height);
	left: 0;
	width: 100%;
	height: calc(100vh - var(--yard-header-height));
	height: calc(100dvh - var(--yard-header-height));
	overflow: auto;
	background: #FFFFFF;
	z-index: 99;
	padding: 40px 10%;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
}

.yard-nav-panel.is-active {
	display: block;
	animation: yard-sp-nav-in 0.3s ease;
}

@keyframes yard-sp-nav-in {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.yard-sp-nav__inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	width: 100%;
	margin: 0 auto;
}

.yard-menu--mobile {
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
}

.yard-menu--mobile a {
	display: block;
	padding: 0;
	font-family: var(--yard-font-family);
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
	color: #525252;
	text-decoration: none;
}

.yard-menu--mobile a:hover {
	opacity: 0.6;
}

.yard-sp-nav__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0;
	padding: 15px 60px;
	border-radius: 6px;
	background: #ff6500;
	color: #fff;
	font-family: var(--yard-font-family);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

.yard-sp-nav__cta:hover {
	opacity: 0.7;
}

body.is-yard-nav-open {
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	:root {
		--yard-header-padding-inline: 16px;
		--yard-header-bar-padding-block: 15px;
		--yard-header-logo-height: 28px;
		--yard-header-cta-height: 30px;
	}

	.yard-header__inner {
		max-width: none;
		padding: 15px 16px;
		gap: 0;
	}

	.yard-header__brand {
		flex: 0 1 auto;
		min-width: 0;
	}

	.yard-header__logo img {
		display: block;
		width: 139px;
		height: 28px;
		object-fit: contain;
		object-position: left center;
	}

	.yard-header__nav--desktop,
	.yard-header__cta {
		display: none;
	}

	.yard-header__toggle {
		display: block;
		flex: 0 0 auto;
		margin-left: auto;
	}

	.yard-nav-panel {
		padding: 40px 16px;
	}

	body.is-yard-nav-open .yard-header__bar {
		box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
	}
}

/* --- フッター --- */
.yard-footer__top {
	background: #eee;
	padding: clamp(40px, calc(60 * 100vw / 1440), 60px) 0 0;
}

.yard-footer__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(16px, calc(30 * 100vw / 1440), 30px);
	flex-wrap: nowrap;
}

.yard-footer__main {
	display: flex;
	flex-direction: column;
	gap: clamp(20px, calc(32 * 100vw / 1440), 32px);
}

.yard-footer__logo {
	display: inline-flex;
	align-items: center;
	height: clamp(36px, calc(50 * 100vw / 1440), 50px);
	margin-bottom: 0;
}

.yard-footer__row--links {
	align-items: center;
	flex-wrap: nowrap;
}

.yard-footer__nav {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: clamp(12px, calc(16 * 100vw / 1440), 16px);
}

.yard-footer__logo img {
	display: block;
	height: clamp(36px, calc(50 * 100vw / 1440), 50px);
	width: auto;
}

.yard-menu--footer {
	display: flex;
	align-items: center;
	gap: clamp(12px, calc(32 * 100vw / 1440), 32px);
	margin: 0;
	padding: 0;
	list-style: none;
	flex-wrap: nowrap;
	white-space: nowrap;
}

.yard-menu--footer li {
	flex-shrink: 0;
}

.yard-menu--footer a {
	font-family: var(--yard-font-family);
	font-weight: 500;
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	color: #525252;
	text-decoration: none;
	white-space: nowrap;
}

.yard-footer__link--icon {
	display: inline-flex;
	align-items: center;
	gap: clamp(4px, calc(6 * 100vw / 1440), 6px);
	white-space: nowrap;
}

.yard-footer__link--icon img {
	display: block;
	width: clamp(11px, calc(14 * 100vw / 1440), 14px);
	height: clamp(11px, calc(14 * 100vw / 1440), 14px);
	flex: 0 0 clamp(11px, calc(14 * 100vw / 1440), 14px);
}

.yard-footer__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: clamp(10px, calc(15 * 100vw / 1440), 15px) clamp(24px, calc(60 * 100vw / 1440), 60px);
	border-radius: clamp(6px, calc(8 * 100vw / 1440), 8px);
	background: #ff6500;
	color: #fff;
	text-decoration: none;
	font-family: var(--yard-font-family);
	font-size: clamp(11px, calc(16 * 100vw / 1440), 16px);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	white-space: nowrap;
}

.yard-footer__company {
	margin-top: clamp(24px, calc(40 * 100vw / 1440), 40px);
	border-top: 1px solid #ddd;
	padding: clamp(24px, calc(40 * 100vw / 1440), 40px) 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(20px, calc(40 * 100vw / 1440), 40px);
	flex-wrap: nowrap;
	width: 100%;
	color: #525252;
}

.yard-footer__company-left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: clamp(6px, calc(8 * 100vw / 1440), 8px);
	flex: 0 1 auto;
	min-width: 0;
}

.yard-footer__company-right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex: 0 1 auto;
	min-width: 0;
}

.yard-footer__temona {
	display: flex;
	align-items: center;
	gap: clamp(6px, calc(8 * 100vw / 1440), 8px);
	flex: 0 1 auto;
	min-width: 0;
}

.yard-footer__temona-mark {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(3px, calc(4 * 100vw / 1440), 4px);
	flex: 0 0 clamp(40px, calc(50 * 100vw / 1440), 50px);
	width: clamp(40px, calc(50 * 100vw / 1440), 50px);
}

.yard-footer__temona-logo-wrap {
	width: clamp(40px, calc(50 * 100vw / 1440), 50px);
	height: clamp(40px, calc(50 * 100vw / 1440), 50px);
	overflow: hidden;
	flex: 0 0 clamp(40px, calc(50 * 100vw / 1440), 50px);
}

.yard-footer__temona-logo {
	display: block;
	width: clamp(40px, calc(50 * 100vw / 1440), 50px);
	height: auto;
	flex: 0 0 auto;
}

.yard-footer__temona-code {
	font-family: var(--yard-font-family);
	font-size: clamp(10px, calc(12 * 100vw / 1440), 12px);
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.02em;
	color: #000;
	text-align: center;
	width: 100%;
}

.yard-footer__temona-text {
	margin: 0;
	width: clamp(180px, calc(322 * 100vw / 1440), 322px);
	max-width: clamp(180px, calc(322 * 100vw / 1440), 322px);
	font-family: var(--yard-font-family);
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	font-weight: 400;
	line-height: normal;
	color: #000;
}

.yard-footer__company-label {
	margin: 0;
	font-family: var(--yard-font-family);
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	font-weight: 400;
	line-height: normal;
	color: #525252;
	white-space: nowrap;
}

.yard-footer__company-name {
	margin: 0;
	font-family: var(--yard-font-family);
	font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
	font-weight: 700;
	line-height: normal;
	color: #525252;
	white-space: nowrap;
}

.yard-footer__company-note {
	margin: 0;
	font-family: var(--yard-font-family);
	font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
	font-weight: 400;
	line-height: normal;
	color: #525252;
	white-space: nowrap;
}

.yard-footer__bottom {
	background: #eee;
	padding: 0 0 clamp(24px, calc(40 * 100vw / 1440), 40px);
}

.yard-footer__copyright {
	margin: 0;
	text-align: center;
	font-size: clamp(10px, calc(12 * 100vw / 1440), 12px);
	color: #525252;
	letter-spacing: 0.02em;
}

@media screen and (max-width: 767px) {
	/* フッター（8184:768） */
	.yard-footer__top {
		padding: 60px 0 0;
	}

	.yard-footer__main {
		padding-bottom: 40px;
	}

	.yard-footer__logo {
		height: 50px;
	}

	.yard-footer__logo img {
		height: 50px;
		width: auto;
		max-width: 247px;
		object-fit: contain;
		object-position: left center;
	}

	.yard-footer__row--links {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
		width: 100%;
	}

	.yard-footer__nav {
		width: 100%;
		gap: 24px;
	}

	.yard-menu--footer {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
	}

	.yard-menu--footer li {
		line-height: 1.2;
	}

	.yard-menu--footer a {
		font-size: 14px;
	}

	.yard-footer__cta {
		width: 100%;
		padding: 15px 60px;
		border-radius: 6px;
		font-size: 16px;
		line-height: 1.3;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-footer__company {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
		margin-top: 0;
		padding: 40px 0;
	}

	.yard-footer__company-left {
		gap: 8px;
	}

	.yard-footer__company-label,
	.yard-footer__company-note {
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-footer__company-right {
		justify-content: flex-start;
		width: 100%;
	}

	.yard-footer__temona {
		width: 100%;
	}

	.yard-footer__temona-text {
		width: 100%;
		max-width: 285px;
		color: #525252;
		line-height: normal;
	}

	.yard-footer__bottom {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 54px;
		padding: 0 16px 40px;
		box-sizing: border-box;
	}

	.yard-footer__bottom .yard-container--pc {
		padding-inline: 0;
		width: 100%;
	}

	.yard-footer__copyright {
		line-height: 1.2;
		letter-spacing: 0.02em;
	}
}

/* --- ここから下：既存 yard.css / pc-top.css の主要部分を統合 ---
   ※量が多いため、必要最低限の既存機能CSSは維持しつつ、
     TOP（PC_TOP）に関係する部分は TOPページ側の値を優先
*/

.yard-pc-top {
	--yard-main: #ff6500;
	--yard-title: #171717;
	--yard-text: #525252;
	--yard-bg: #fafafa;
	--yard-line: #d1d5db;
}

.yard-pc-top .yard-section {
	padding: 60px 0;
}

/* PC_TOP: FV/AREA/PRICE=#fff、ABOUT/SEARCH AREA=#fafafa */
.yard-pc-top > .yard-fv,
.yard-pc-top > .yard-area,
.yard-pc-top > .yard-price {
	background: #fff;
}

.yard-pc-top > .yard-about,
.yard-pc-top > .yard-search-area {
	background: #fafafa;
}

.yard-pc-top > .yard-top-contact {
	background: #fff;
}

/* CONTACT（8287:580） */
.yard-top-contact__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 48px;
}

.yard-top-contact__heading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	text-align: center;
}

.yard-top-contact__form-wrap {
	width: 768px;
	max-width: 100%;
}

.yard-top-contact .yard-partner-form__stack {
	gap: 16px;
}

.yard-top-contact .yard-partner-form__field textarea#top_contact_message {
	min-height: 100px;
	resize: none;
}

.yard-top-contact .yard-partner-form__field textarea#top_contact_message::placeholder {
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.03em;
}

.yard-top-contact .yard-partner-form__field input.yard-form-field--invalid,
.yard-top-contact .yard-partner-form__field textarea.yard-form-field--invalid {
	border-color: #e53935;
	background: #fff8f8;
}

.yard-top-contact--confirm .yard-top-contact__heading {
	display: none;
}

.yard-top-contact--confirm .yard-top-contact__inner {
	gap: 0;
	padding-top: 60px;
}

.yard-top-contact--confirm .yard-top-contact__form-wrap {
	width: 100%;
	max-width: 818px;
	margin: 0 auto;
}

/* お問い合わせ 内容確認（8287:1870） */
.yard-top-contact-confirm {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 100%;
}

.yard-top-contact-confirm__title {
	margin: 0;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: center;
}

.yard-top-contact-confirm .yard-form-steps--partner-confirm {
	margin-bottom: 0;
}

.yard-top-contact-confirm__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 100%;
}

.yard-top-contact-confirm__actions {
	display: flex;
	justify-content: center;
	gap: 32px;
	width: 100%;
}

.yard-form-confirm--contact {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 818px;
	margin: 0;
}

.yard-form-confirm--contact .yard-form-confirm__row {
	display: flex;
	align-items: stretch;
	width: 100%;
}

.yard-form-confirm--contact .yard-form-confirm__label,
.yard-form-confirm--contact .yard-form-confirm__value {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 8px 24px;
	font-size: 16px;
	line-height: 1.8;
	border: 1px solid #ddd;
	box-sizing: border-box;
}

.yard-form-confirm--contact .yard-form-confirm__label {
	flex: 0 0 250px;
	width: 250px;
	min-height: 45px;
	background: #fafafa;
	font-weight: 700;
	color: #525252;
	letter-spacing: 0.03em;
}

.yard-form-confirm--contact .yard-form-confirm__value {
	flex: 1 1 auto;
	min-width: 0;
	background: #fff;
	font-weight: 400;
	color: #525252;
	letter-spacing: 0.05em;
	word-break: break-word;
}

.yard-form-confirm--contact .yard-form-confirm__row + .yard-form-confirm__row .yard-form-confirm__label,
.yard-form-confirm--contact .yard-form-confirm__row + .yard-form-confirm__row .yard-form-confirm__value {
	border-top: 0;
}

.yard-form-confirm--contact .yard-form-confirm__row .yard-form-confirm__value {
	border-left: 0;
}

.yard-form-confirm--contact .yard-form-confirm__row:last-child .yard-form-confirm__label {
	align-self: stretch;
	align-items: center;
}

.yard-form-confirm--contact .yard-form-confirm__row:last-child .yard-form-confirm__value {
	align-items: flex-start;
	height: auto;
	white-space: pre-wrap;
}

/* サイト共通コンテナ（TOP .yard-container--pc と同幅） */
.yard-container--pc {
	max-width: 1440px;
	margin: 0 auto;
	padding-inline: var(--yard-page-padding-inline);
	box-sizing: border-box;
}

.yard-fv {
	position: relative;
	min-height: 660px;
	overflow: hidden;
	background: #fff;
}

@media screen and (min-width: 768px) {
	body.yard-top-page.has-yard-header #main-container > main {
		padding-top: 0;
	}

	.yard-top-page .yard-fv {
		padding-top: var(--yard-header-height);
	}

	/* FV 背景がヘッダー（固定・白）の下に潜らないよう開始位置を下げる */
	.yard-top-page .yard-fv__bg {
		top: var(--yard-header-height);
	}
}

.yard-fv__bg {
	position: absolute;
	inset: 0;
	background: url("../img/fv.png") center/cover no-repeat;
}

.yard-fv__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 35%);
}

/* 既存の都道府県検索（機能） */
.yard-search-combobox {
	position: relative;
}

.yard-search-suggest {
	position: absolute;
	z-index: 20;
	top: 100%;
	left: 0;
	right: 0;
	margin: 0.25rem 0 0;
	padding: 0.25rem 0;
	list-style: none;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 6px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
	max-height: 240px;
	overflow-y: auto;
}

/* SEARCH AREA（8073:100） */
.yard-search-area {
	overflow-x: clip;
}

.yard-search-area__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
}

.yard-search-area__intro {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: max-content;
	max-width: min(640px, 58%);
	position: relative;
	z-index: 2;
	align-self: start;
	justify-self: start;
	pointer-events: none;
}

.yard-search-area__intro * {
	pointer-events: auto;
}

.yard-search-area__heading {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-items: flex-start;
}

.yard-search-area .yard-section__kicker,
.yard-search-area .yard-section__title,
.yard-search-area .yard-section__lead {
	text-align: left;
}

.yard-search-area .yard-section__kicker {
	margin: 0;
	font-size: 20px;
	line-height: 140%;
	letter-spacing: 1px;
}

.yard-search-area .yard-section__title {
	font-size: clamp(28px, 2.78vw, 40px);
	line-height: 130%;
	letter-spacing: 2px;
}

.yard-search-area .yard-section__lead {
	margin: 0;
	font-weight: 500;
	letter-spacing: 0.48px;
	white-space: nowrap;
}

.yard-search-area__map-wrap {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	margin: 0;
}

.yard-search-area .yard-japan-map-board {
	max-width: none;
	width: 100%;
	margin: 0;
}

.yard-search-area .yard-map-stage--desktop {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: auto;
	aspect-ratio: 1060 / 610;
	background: url("../img/searchmap.svg") center / 100% 100% no-repeat;
	border: 0;
	border-radius: 0;
	overflow: visible;
	margin: 0;
	transform: none;
	container-type: inline-size;
	container-name: yard-search-map;
}

.yard-search-area .yard-map-svg-layer {
	display: block;
}

.yard-search-area .yard-map-svg-layer svg path {
	transition: fill 0.2s ease;
}

/* 都道府県リンクのホバー：所属エリアのブロックをオレンジに */
.yard-search-area .yard-map-svg-layer svg path.is-region-hover {
	fill: #ff6500;
}

.yard-search-area .yard-region-panels {
	position: absolute;
	inset: 0;
}

.yard-search-area .yard-region-panel {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(4px, 0.75cqi, 10px);
	width: max-content;
	min-width: 0;
	max-width: none;
	padding: clamp(5px, 0.95cqi, 12px);
	background: #fff;
	border: 0;
	border-radius: 5px;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.16);
	transform: translate(-50%, -50%);
}

.yard-search-area .yard-region-panel.is-active {
	border: 0;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.16);
}

.yard-search-area .yard-region-panel__title {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: var(--yard-font-family);
	font-size: clamp(10px, 1.45cqi, 18px);
	font-weight: 700;
	line-height: clamp(1.4, 0.033cqi + 1.05, 1.8);
	letter-spacing: clamp(0.3px, 0.075cqi, 0.9px);
	color: var(--text, #525252);
	text-align: center;
}

.yard-search-area .yard-region-panel__buttons {
	display: grid;
	grid-template-columns: repeat(2, minmax(clamp(50px, 7.5cqi, 96px), 1fr));
	gap: clamp(2px, 0.48cqi, 6px);
	justify-content: center;
	width: 100%;
}

.yard-search-area .yard-pref-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: clamp(1px, 0.25cqi, 4px);
	width: 100%;
	min-width: 0;
	padding: 2px clamp(2px, 0.65cqi, 8px);
	border-radius: 5px;
	background: var(--card, #f5f5f5);
	border: 0;
	font-family: var(--yard-font-family);
	font-size: clamp(9px, 1.28cqi, 16px);
	font-weight: 400;
	line-height: 2.0;
	letter-spacing: clamp(0.25px, 0.065cqi, 0.8px);
	color: var(--text, #525252);
	white-space: nowrap;
}

.yard-search-area a.yard-pref-btn:hover,
.yard-search-area .yard-pref-btn--has {
	background: var(--card, #f5f5f5);
	border: 0;
	color: var(--text, #525252);
}

.yard-search-area .yard-pref-btn__name {
	text-align: center;
	flex: none;
}

.yard-search-area .yard-pref-btn__count {
	display: inline;
	flex-shrink: 0;
	min-width: 0;
	padding: 0;
	font-size: clamp(0.75em, 0.02cqi + 0.72em, 0.85em);
	font-weight: 600;
	color: #ff6500;
	background: transparent;
	border-radius: 0;
	text-align: inherit;
}

.yard-search-area .yard-pref-btn--has .yard-pref-btn__count {
	background: transparent;
	color: #ff6500;
}

.yard-search-area .yard-pref-btn--empty {
	background: #fbfbfb;
	color: #bdbdbd;
	opacity: 1;
}

.yard-search-area .yard-pref-btn--empty .yard-pref-btn__count {
	background: transparent;
	color: #c4c4c4;
}

.yard-search-area .yard-pref-btn__count::before {
	content: "(";
}

.yard-search-area .yard-pref-btn__count::after {
	content: ")";
}

.yard-search-area .yard-region-panel--hokkaido-tohoku {
	left: 92.57%;
	top: 21.23%;
}

.yard-search-area .yard-region-panel--kanto {
	left: 89.98%;
	top: 65.82%;
}

.yard-search-area .yard-region-panel--hokuriku {
	left: 69.17%;
	top: 50%;
}

.yard-search-area .yard-region-panel--kinki {
	left: 48.98%;
	top: 54.75%;
}

.yard-search-area .yard-region-panel--tokai {
	left: 67.66%;
	top: 84.67%;
}

.yard-search-area .yard-region-panel--shikoku {
	left: 31.62%;
	top: 92.38%;
}

.yard-search-area .yard-region-panel--chugoku {
	left: 26.25%;
	top: 53.61%;
}

.yard-search-area .yard-region-panel--kyushu {
	left: 4.72%;
	top: 79.92%;
}

@media screen and (max-width: 1279px) and (min-width: 1024px) {
	.yard-search-area__intro {
		max-width: min(580px, 62%);
	}
}

@media screen and (max-width: 1023px) {
	.yard-search-area__inner {
		display: flex;
		flex-direction: column;
		gap: 24px;
	}

	.yard-search-area__intro {
		grid-column: auto;
		grid-row: auto;
		width: auto;
		max-width: none;
		pointer-events: auto;
	}

	.yard-search-area .yard-section__lead {
		white-space: normal;
	}

	.yard-search-area__map-wrap {
		grid-column: auto;
		grid-row: auto;
		max-width: none;
		margin: 0;
	}

	.yard-search-area .yard-map-stage--desktop {
		display: none !important;
		transform: none;
	}

	.yard-search-area .yard-region-accordion--mobile {
		display: block !important;
	}

	.yard-search-area .yard-region-accordion__item {
		border: 0;
		border-radius: 5px;
		box-shadow: 0 0 2px rgba(0, 0, 0, 0.16);
		margin-bottom: 16px;
	}

	.yard-search-area .yard-region-accordion__summary {
		background: #fff;
		color: #525252;
		font-size: 18px;
		font-weight: 700;
		letter-spacing: 0.9px;
	}

	.yard-search-area .yard-region-accordion__summary::after {
		content: "";
		width: 12.5px;
		height: 8px;
		background: url("../img/arrow.svg") center / contain no-repeat;
		color: transparent;
		font-size: 0;
		flex-shrink: 0;
		transform: none;
		transition: transform 0.2s ease;
	}

	.yard-search-area .yard-region-accordion__item[open] .yard-region-accordion__summary::after {
		content: "";
		transform: rotate(180deg);
	}

	.yard-search-area .yard-region-accordion__item[open] .yard-region-accordion__summary {
		background: #fff;
	}

	.yard-search-area .yard-region-accordion__body .yard-region-panel__buttons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.yard-search-area .yard-region-accordion__body .yard-pref-btn {
		width: 100%;
		max-width: none;
		margin: 0;
		font-size: clamp(12px, 3.5vw, 16px);
	}
}

@media screen and (max-width: 767px) {
	.yard-search-area .yard-section__title {
		font-size: 28px;
		letter-spacing: 1.4px;
	}
}

/* AREA セクション（8073:446） */
.yard-area .yard-section__kicker,
.yard-area .yard-section__title,
.yard-area .yard-section__lead {
	text-align: left;
}

.yard-area .yard-section__kicker {
	margin: 0;
}

.yard-area .yard-section__title {
	margin: 0;
	line-height: 1.4;
}

.yard-area .yard-section__lead {
	margin: 0;
	color: #525252;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.yard-area__inner {
	display: flex;
	align-items: flex-start;
	gap: 72px;
}

.yard-area__heading {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-items: flex-start;
}

.yard-area__main {
	display: flex;
	flex-direction: column;
	gap: 24px;
	flex: 1 1 0;
	min-width: 0;
}

@media screen and (min-width: 768px) {
	.yard-area__main {
		flex: 1 1 auto;
		width: auto;
		min-width: min(100%, max-content);
		max-width: 100%;
	}

	.yard-area .yard-section__lead {
		white-space: nowrap;
		width: fit-content;
		max-width: 100%;
	}
}

@media screen and (min-width: 1440px) {
	.yard-area .yard-section__title {
		white-space: nowrap;
	}
}

.yard-area__card {
	background: #fff;
	border: 1px solid #ddd;
	padding: 32px calc(32 * 100vw / 1440);
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	align-self: stretch;
}

.yard-area__card-title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-area__card-text {
	margin: 0;
	font-size: 16px;
	letter-spacing: 0.05em;
	color: #525252;
	line-height: 1.8;
	overflow-wrap: break-word;
	word-break: keep-all;
}

.yard-area__legend {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
	justify-content: flex-start;
	min-width: 0;
}

.yard-area__legend-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	letter-spacing: 0.03em;
	color: #525252;
	min-width: 0;
}

.yard-area__swatch {
	width: 24px;
	height: 24px;
	border-radius: 3px;
	background: #eee;
}

.yard-area__swatch--active {
	background: #ff6500;
}

.yard-area__map {
	margin-left: auto;
}

@media screen and (min-width: 768px) {
	.yard-area__map {
		--yard-area-map-min-width: clamp(260px, calc(400 * 100vw / 1440), 400px);
		--yard-area-map-min-height: clamp(calc(260px * 411 / 400), calc(411 * 100vw / 1440), 411px);
		align-self: stretch;
		flex: 0 0 auto;
		display: flex;
		width: auto;
		min-width: var(--yard-area-map-min-width);
		min-height: var(--yard-area-map-min-height);
		aspect-ratio: 400 / 411;
		height: auto;
	}

	.yard-area__map img,
	.yard-area__map svg {
		width: 100%;
		height: 100%;
		max-width: none;
		object-fit: contain;
	}
}

@media screen and (max-width: 767px) {
	.yard-area__inner {
		flex-direction: column;
		gap: 32px;
	}

	.yard-area__map {
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
		align-self: auto;
		min-height: 0;
		aspect-ratio: auto;
		display: block;
	}

	.yard-area__map img,
	.yard-area__map svg {
		width: 100%;
		height: auto;
	}
}

/* PRICE：部材別料金表（8073:324） */
.yard-pc-top .yard-price__list {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 24px;
	margin-top: 48px;
	padding-top: 24px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.yard-pc-top .yard-price__list-title {
	margin: 0;
	font-family: var(--yard-font-family);
	font-size: 28px;
	font-weight: 700;
	line-height: 140%;
	letter-spacing: 1.4px;
	color: var(--title, #171717);
}

.yard-pc-top .yard-price__list-meta {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
}

.yard-pc-top .yard-price__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 5px;
	background: var(--card, #f5f5f5);
	color: var(--text, #525252);
	font-family: var(--yard-font-family);
	font-size: 16px;
	font-weight: 700;
	line-height: 180%;
	letter-spacing: 0.8px;
	white-space: nowrap;
}

.yard-price__badge-label--sp {
	display: none;
}

.yard-pc-top .yard-price__unit {
	font-family: var(--yard-font-family);
	font-size: 14px;
	font-weight: 400;
	line-height: 170%;
	letter-spacing: 0.7px;
	color: #374151;
	white-space: nowrap;
}

.yard-pc-top .yard-price__items {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
	align-self: stretch;
}

.yard-pc-top .yard-price__item-row {
	--yard-price-gap: 24px;
	display: flex;
	align-items: flex-start;
	gap: var(--yard-price-gap);
	width: 100%;
}

/* 3列幅で固定。最終行が1〜2件でも幅が他の行と揃う */
.yard-pc-top .yard-price__item-row > .yard-acc {
	flex: 0 0 calc((100% - 2 * var(--yard-price-gap)) / 3);
	min-width: 0;
	max-width: none;
	width: auto;
	border-bottom: none;
}

.yard-pc-top summary.yard-price__row {
	list-style: none;
	cursor: pointer;
	user-select: none;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 12.5px;
	column-gap: 8px;
	align-items: center;
	min-width: 0;
	padding: 16px;
	border-bottom: 1px solid var(--line, #ddd);
	box-sizing: border-box;
	font-family: var(--yard-font-family);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: var(--text, #525252);
}

.yard-pc-top summary.yard-price__row::-webkit-details-marker {
	display: none;
}

.yard-pc-top summary.yard-price__row::after {
	content: "";
	width: 12.5px;
	height: 8px;
	justify-self: end;
	background: url("../img/arrow.svg") center / contain no-repeat;
	opacity: 1;
	clip-path: none;
	transition: transform 0.2s ease;
}

.yard-pc-top details.yard-acc[open] summary.yard-price__row::after {
	transform: rotate(180deg);
}

/* アコーディオン内 部材別料金（Figma 8073:332 / 8196:4940） */
.yard-pc-top .yard-acc__body {
	padding: 16px 0;
	color: #525252;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.8;
	box-sizing: border-box;
}

.yard-pc-top .yard-price-table {
	display: block;
	width: 100%;
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
	box-sizing: border-box;
}

.yard-pc-top .yard-price-table thead {
	display: none;
}

.yard-pc-top .yard-price-table tbody {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.yard-pc-top .yard-price-table tbody tr {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 8px;
	align-items: center;
	padding: 0 16px;
	box-sizing: border-box;
	width: 100%;
}

.yard-pc-top .yard-price-table th,
.yard-pc-top .yard-price-table td {
	padding: 0;
	margin: 0;
	border: none;
}

.yard-pc-top .yard-price-table tbody tr + tr th,
.yard-pc-top .yard-price-table tbody tr + tr td {
	border-top: none;
}

.yard-pc-top .yard-price-table th[scope="row"] {
	min-width: 0;
	text-align: left;
	font-weight: 400;
	background: transparent;
}

.yard-pc-top .yard-price-table td {
	font-weight: 700;
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

@media screen and (max-width: 767px) {
	.yard-pc-top .yard-price__list-title {
		font-size: 24px;
		letter-spacing: 1.2px;
	}

	.yard-pc-top .yard-price__item-row {
		flex-direction: column;
		gap: 0;
	}

	.yard-pc-top .yard-price__item-row > .yard-acc {
		flex: 1 1 100%;
		max-width: none;
	}

	.yard-pc-top summary.yard-price__row {
		font-size: 18px;
	}
}

/* =========================================================
   旧 yard.css を style.css に完全復元（削除前の土台）
   ========================================================= */

.yard-container {
	max-width: 1100px;
	margin: 0 auto;
	padding: 2rem 1.25rem 4rem;
}

.yard-breadcrumb {
	font-size: 0.875rem;
	margin-bottom: 1.5rem;
	color: var(--theme-text-color, #555);
}

.yard-breadcrumb a {
	text-decoration: none;
}

.yard-breadcrumb a:hover {
	text-decoration: underline;
}

.yard-breadcrumb__sep {
	margin: 0 0.35rem;
	opacity: 0.6;
}

/* TOP */
.yard-top__title {
	font-size: clamp(1.5rem, 4vw, 2rem);
	margin: 0 0 0.75rem;
}

.yard-top__lead {
	margin: 0 0 1rem;
	line-height: 1.7;
}

.yard-top__total {
	font-size: 1rem;
}

/* 都道府県検索 */
.yard-search-section {
	margin: 2rem 0 2.5rem;
	padding: 1.5rem;
	background: #fff;
	border: 1px solid #dde3ea;
	border-radius: 12px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.yard-search-section__title {
	font-size: 1.125rem;
	margin: 0 0 0.5rem;
}

.yard-search-section__lead {
	margin: 0 0 1.25rem;
	font-size: 0.875rem;
	color: #666;
	line-height: 1.6;
}

.yard-search-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 1rem;
}

.yard-search-form__field {
	flex: 1 1 220px;
	min-width: 0;
}

.yard-search-combobox {
	position: relative;
}

.yard-search-suggest {
	position: absolute;
	z-index: 20;
	top: 100%;
	left: 0;
	right: 0;
	margin: 0.25rem 0 0;
	padding: 0.25rem 0;
	list-style: none;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 6px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
	max-height: 240px;
	overflow-y: auto;
}

.yard-search-suggest__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.55rem 0.85rem;
	font-size: 0.9375rem;
	cursor: pointer;
}

.yard-search-suggest__item:hover {
	background: #fff8e1;
}

.yard-search-suggest__name {
	flex: 1;
	min-width: 0;
}

.yard-search-suggest__count {
	flex-shrink: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #ff6500;
}

.yard-search-suggest__count--empty {
	color: #9e9e9e;
}

.yard-search-form__label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
	margin-bottom: 0.35rem;
}

.yard-search-form__input {
	width: 100%;
	padding: 0.7rem 0.85rem;
	font-size: 1rem;
	border: 1px solid #ccc;
	border-radius: 6px;
	box-sizing: border-box;
	background-color: #fff;
}

.yard-search-form__input:focus,
.yard-search-form__input:active {
	background-color: #fff;
	border-color: #4caf50;
	outline: 2px solid rgba(76, 175, 80, 0.25);
	outline-offset: 1px;
}

.yard-btn--search {
	flex-shrink: 0;
	padding: 0.75rem 1.75rem;
	white-space: nowrap;
	background: #171717;
	color: #fff;
	border: none;
	cursor: pointer;
	transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.yard-btn--search:hover {
	transform: translateY(2px);
	background: #171717;
	color: #fff;
	filter: none;
	opacity: 1;
}

.yard-search-form__message {
	margin: 1rem 0 0;
	font-size: 0.875rem;
	color: #c62828;
}

@media (max-width: 375px) {
	.yard-search-form {
		flex-direction: column;
		align-items: stretch;
	}

	.yard-btn--search {
		width: 100%;
		text-align: center;
	}
}

.yard-container--map {
	max-width: 960px;
}

.yard-map-section__title {
	font-size: 1.25rem;
	margin: 2rem 0 0.5rem;
}

.yard-map-section__hint {
	font-size: 0.875rem;
	margin: 0 0 1.25rem;
	color: #666;
}

.yard-map-section__hint--mobile {
	display: none;
}

/* 地図ボード（SVG + 地方オーバーレイ・同一座標系） */
.yard-japan-map-board {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

.yard-map-stage {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #f0f4f8;
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid #dde3ea;
}

.yard-map-svg-layer {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}

.yard-map-svg-layer .geolonia-svg-map,
.yard-map-svg-layer svg {
	width: 100%;
	height: 100%;
	display: block;
}

.yard-map-svg-layer .prefecture {
	transition: fill 0.2s ease, opacity 0.2s ease;
}

.yard-map-svg-layer .prefecture.is-has-yard {
	fill: #b8dfc4;
}

.yard-map-svg-layer .prefecture.is-empty {
	fill: #e8ecef;
}

.yard-map-svg-layer .prefecture.is-hover {
	fill: #4caf50 !important;
	opacity: 1;
}

.yard-region-panels {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
}

.yard-region-panel {
	position: absolute;
	pointer-events: auto;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid #c5d0dc;
	border-radius: 8px;
	padding: 0.4rem 0.5rem 0.5rem;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	width: max-content;
	min-width: 176px;
	max-width: 280px;
	transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.yard-region-panel.is-active {
	border-color: #4caf50;
	box-shadow: 0 4px 14px rgba(76, 175, 80, 0.25);
}

.yard-region-panel__title {
	margin: 0 0 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: #1a3a5c;
	line-height: 1.2;
	border-bottom: 2px solid #4caf50;
	padding-bottom: 0.2rem;
}

.yard-region-panel__buttons {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.3rem 0.4rem;
}

.yard-region-panel__buttons > li {
	min-width: 0;
}

/* 都道府県ボタン */
.yard-pref-btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.35rem;
	width: 100%;
	padding: 0.28rem 0.45rem;
	font-size: 0.6875rem;
	line-height: 1.3;
	text-decoration: none;
	color: #333;
	background: #fff;
	border: 1px solid #d0d7de;
	border-radius: 4px;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
	box-sizing: border-box;
}

a.yard-pref-btn:hover {
	background: #e8f5e9;
	border-color: #4caf50;
	color: #1b5e20;
}

.yard-pref-btn--has {
	border-color: #81c784;
	background: #f1f8f2;
}

.yard-pref-btn--has .yard-pref-btn__count {
	background: #4caf50;
	color: #fff;
}

.yard-pref-btn--empty .yard-pref-btn__count {
	background: #e0e0e0;
	color: #757575;
}

.yard-pref-btn--disabled {
	cursor: default;
	opacity: 0.65;
}

.yard-pref-btn__name {
	flex: 1;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.yard-pref-btn__count {
	flex-shrink: 0;
	min-width: 1.25rem;
	padding: 0.1rem 0.35rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-align: center;
	border-radius: 10px;
}

/* スマホ：地図非表示・アコーディオン */
.yard-region-accordion--mobile {
	display: none;
}

.yard-region-accordion__item {
	border: 1px solid #d0d7de;
	border-radius: 8px;
	margin-bottom: 0.5rem;
	background: #fff;
	overflow: hidden;
}

.yard-region-accordion__item[open] {
	border-color: #81c784;
}

.yard-region-accordion__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	font-weight: 700;
	font-size: 1rem;
	color: #1a3a5c;
	cursor: pointer;
	list-style: none;
	background: #f8f9fa;
}

.yard-region-accordion__summary::-webkit-details-marker {
	display: none;
}

.yard-region-accordion__summary::after {
	content: '+';
	font-size: 1.25rem;
	font-weight: 400;
	color: #4caf50;
	flex-shrink: 0;
}

.yard-region-accordion__item[open] .yard-region-accordion__summary {
	background: #e8f5e9;
}

.yard-region-accordion__item[open] .yard-region-accordion__summary::after {
	content: '−';
}

.yard-region-accordion__total {
	font-size: 0.875rem;
	font-weight: 600;
	color: #4caf50;
}

.yard-region-accordion__body {
	padding: 0.75rem 1rem 1rem;
	border-top: 1px solid #e8e8e8;
}

@media (max-width: 767px) {
	.yard-map-section__hint--desktop {
		display: none;
	}

	.yard-map-section__hint--mobile {
		display: block;
	}

	.yard-map-stage--desktop {
		display: none !important;
	}

	.yard-region-accordion--mobile {
		display: block;
	}

	.yard-japan-map-board {
		max-width: none;
	}

	.yard-region-panel {
		position: static;
		max-width: none;
		min-width: 0;
		width: 100%;
	}

	.yard-pref-btn {
		font-size: 0.8125rem;
		padding: 0.45rem 0.55rem;
	}
}

@media (min-width: 1024px) {
	.yard-region-accordion--mobile {
		display: none !important;
	}
}

/* 都道府県一覧・ヤードブロック */
.yard-archive__title {
	font-size: clamp(1.35rem, 3vw, 1.75rem);
	margin: 0 0 0.5rem;
}

.yard-archive__count {
	margin: 0 0 2rem;
	color: #666;
}

.yard-block-list {
	display: flex;
	flex-direction: column;
	gap: 3rem;
}

.yard-block {
	padding: 2rem;
	border: 1px solid #e0e0e0;
	border-radius: 10px;
	background: #fff;
	scroll-margin-top: 2rem;
}

.yard-block__title {
	font-size: 1.35rem;
	margin: 0 0 1.25rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--theme-palette-color-1, #2271b1);
}

.yard-block__gallery {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.yard-block__figure {
	margin: 0;
}

.yard-block__figure img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	display: block;
}

.yard-block__meta {
	margin: 0;
}

.yard-block__row {
	display: grid;
	grid-template-columns: minmax(140px, 200px) 1fr;
	gap: 0.5rem 1.5rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid #f0f0f0;
}

.yard-block__row:last-child {
	border-bottom: none;
}

.yard-block__row dt {
	margin: 0;
	font-weight: 600;
	color: #333;
}

.yard-block__row dd {
	margin: 0;
	line-height: 1.7;
}

@media (max-width: 767px) {
	.yard-block__row {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}
}

.yard-block__footer {
	margin-top: 1.75rem;
	padding-top: 1.25rem;
	border-top: 1px solid #eee;
	text-align: center;
}

.yard-btn {
	display: inline-block;
	padding: 0.85rem 2rem;
	font-size: 1rem;
	font-weight: 600;
	text-decoration: none;
	border-radius: 6px;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
	cursor: pointer;
}

.yard-btn--borrow {
	background: var(--theme-palette-color-1, #2271b1);
	color: #fff;
	border: 2px solid transparent;
}

.yard-btn--borrow:hover {
	opacity: 0.7;
	filter: none;
	color: #fff;
}

.yard-btn--outline {
	background: transparent;
	color: var(--theme-palette-color-1, #2271b1);
	border: 2px solid currentColor;
}

.yard-btn--outline:hover {
	opacity: 0.7;
	background: transparent;
}

.yard-archive__footer {
	margin-top: 3rem;
	text-align: center;
}

.yard-empty {
	padding: 2rem 0;
	text-align: center;
	color: #666;
	margin: 0;
}

/* =========================================================
   旧 yard.css の残り（フォーム系）を復元
   ========================================================= */

/* レンタル申込フォーム */
.yard-container--narrow {
	max-width: 720px;
}

.yard-rental-form__title {
	font-size: clamp(1.35rem, 3vw, 1.75rem);
	margin: 0 0 0.75rem;
}

.yard-rental-form__lead {
	margin-bottom: 2rem;
	line-height: 1.7;
}

.yard-rental-form__section {
	margin-bottom: 2.5rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid #e8e8e8;
}

.yard-rental-form__section-title {
	font-size: 1.125rem;
	margin: 0 0 1.25rem;
}

.yard-form-field {
	margin-bottom: 1.25rem;
}

.yard-form-field label,
.yard-form-field legend {
	display: block;
	font-weight: 600;
	margin-bottom: 0.4rem;
	cursor: pointer;
}

.yard-form-field--required label::after {
	content: ' *';
	color: #c62828;
	font-weight: 700;
}

.yard-form-optional {
	font-weight: 400;
	font-size: 0.875rem;
	color: #666;
}

.yard-form-field input[type='text'],
.yard-form-field input[type='email'],
.yard-form-field input[type='tel'],
.yard-form-field input[type='date'],
.yard-form-field textarea,
.yard-form-field select {
	width: 100%;
	padding: 0.65rem 0.75rem;
	border: 1px solid #ccc;
	border-radius: 6px;
	font-size: 1rem;
	box-sizing: border-box;
	cursor: pointer;
}

.yard-form-field input[readonly] {
	background: #f5f5f5;
	color: #333;
	cursor: default;
}

.yard-form-field textarea {
	resize: vertical;
	min-height: 100px;
}

.yard-form-note {
	margin: 0.35rem 0 0;
	font-size: 0.8125rem;
	color: #666;
	line-height: 1.5;
}

.yard-form-note--center {
	text-align: center;
}

.yard-form-dates {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

@media (max-width: 375px) {
	.yard-form-dates {
		grid-template-columns: 1fr;
	}
}

.yard-form-dates__label {
	display: block;
	font-size: 0.875rem;
	margin-bottom: 0.25rem;
	color: #555;
}

.yard-form-checkboxes {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
}

.yard-form-checkboxes label {
	font-weight: 400;
	display: flex;
	align-items: center;
	gap: 0.35rem;
	cursor: pointer;
}

.yard-rental-form__actions {
	text-align: center;
	margin-top: 1rem;
}

.yard-rental-form__actions button,
.yard-rental-form__actions .yard-btn {
	cursor: pointer;
}

.yard-search-form__field input[type='search'],
.yard-search-form__field input[type='text'] {
	cursor: text;
}

.yard-search-form button {
	cursor: pointer;
}

.yard-form-message {
	margin-top: 2rem;
	padding: 1.25rem 1.5rem;
	border-radius: 8px;
}

.yard-form-message--success {
	background: #e8f5e9;
	border: 1px solid #a5d6a7;
	color: #2e7d32;
}

.yard-form-message--error {
	background: #ffebee;
	border: 1px solid #ef9a9a;
	color: #c62828;
}

.yard-form-message__lead {
	margin: 0 0 0.75rem;
	font-weight: 600;
}

.yard-form-message__list {
	margin: 0;
	padding-left: 1.25rem;
	line-height: 1.7;
}

.yard-form-message__list li + li {
	margin-top: 0.35rem;
}

.yard-form-field input.yard-form-field--invalid,
.yard-form-field textarea.yard-form-field--invalid,
.yard-form-field select.yard-form-field--invalid {
	border-color: #e53935;
	background: #fff8f8;
}

.yard-form-field:has(.yard-form-field--invalid) label,
.yard-form-field:has(.yard-form-field--invalid) legend {
	color: #c62828;
}

/* フォーム 3ステップ（入力・確認・完了） */
.yard-form-steps {
	display: flex;
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	gap: 0;
	border: 1px solid #dde3ea;
	border-radius: 8px;
	overflow: hidden;
}

.yard-form-steps__item {
	flex: 1;
	text-align: center;
	padding: 0.65rem 0.5rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: #888;
	background: #f5f5f5;
	border-right: 1px solid #dde3ea;
}

.yard-form-steps__item:last-child {
	border-right: none;
}

.yard-form-steps__item.is-active {
	background: #e8f5e9;
	color: #2e7d32;
}

.yard-form-steps__item.is-done {
	background: #fff;
	color: #4caf50;
}

.yard-form-confirm__title,
.yard-form-complete__title {
	font-size: 1.25rem;
	margin: 0 0 0.75rem;
}

.yard-form-confirm__lead {
	margin: 0 0 1.25rem;
	color: #666;
	font-size: 0.9375rem;
}

.yard-form-confirm__list {
	margin: 0;
	padding: 0;
	background: #fafafa;
	border: 1px solid #e8e8e8;
	border-radius: 8px;
	overflow: hidden;
}

.yard-form-confirm__list dt {
	margin: 0;
	padding: 0.65rem 1rem 0.25rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #555;
	background: #f0f0f0;
	border-top: 1px solid #e8e8e8;
}

.yard-form-confirm__list dt:first-child {
	border-top: none;
}

.yard-form-confirm__list dd {
	margin: 0;
	padding: 0.25rem 1rem 0.75rem;
	line-height: 1.6;
	background: #fff;
}

.yard-rental-form__actions--confirm {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

/* サンクスページ */
.yard-rental-complete-main .yard-rental-form__header,
.yard-partner-complete-main .yard-rental-form__header {
	margin-bottom: 0.5rem;
}

.yard-form-complete-card {
	margin-top: 1rem;
	padding: 2.5rem 1.75rem 2rem;
	text-align: center;
	background: #fff;
	border: 1px solid #dde3ea;
	border-radius: 12px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.yard-form-complete-card__icon {
	display: flex;
	justify-content: center;
	margin-bottom: 1.25rem;
	color: #2e7d32;
}

.yard-form-complete-card__title {
	font-size: 1.375rem;
	margin: 0 0 1rem;
	color: var(--theme-heading-color, #1a1a1a);
}

.yard-form-complete-card__message {
	font-size: 1.0625rem;
	font-weight: 600;
	color: #2e7d32;
	margin: 0 0 1rem;
	line-height: 1.8;
}

.yard-form-complete-card__note {
	font-size: 0.875rem;
	color: #666;
	margin: 0 0 2rem;
	line-height: 1.7;
	max-width: 36em;
	margin-left: auto;
	margin-right: auto;
}

.yard-form-complete-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
	align-items: center;
	padding-top: 0.5rem;
	border-top: 1px solid #e8e8e8;
}

@media (max-width: 375px) {
	.yard-form-complete-card {
		padding: 2rem 1.25rem 1.75rem;
	}

	.yard-form-complete-card__actions {
		flex-direction: column;
		width: 100%;
	}

	.yard-form-complete-card__actions .yard-btn {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}

/* =========================================================
   PC_TOP（TOPページ）主要スタイル（不足分の復旧）
   ========================================================= */

.yard-fv__inner {
	position: relative;
	z-index: 1;
	display: grid;
	align-content: center;
	gap: 24px;
	min-height: 570px;
}

.yard-fv__title {
	margin: 0;
	font-family: var(--yard-font-family);
	font-weight: 700;
	font-size: clamp(34px, 4vw, 56px);
	line-height: 0;
	letter-spacing: 0.03em;
	color: #171717;
}

.yard-fv__title-line {
	display: block;
	font-size: inherit;
	line-height: 1.3;
}

@media screen and (min-width: 768px) {
	.yard-fv__title-line {
		line-height: 1.15;
	}

	.yard-fv__title-suffix {
		display: inline;
	}
}

@media screen and (max-width: 767px) {
	.yard-fv__title-suffix {
		display: block;
	}
}

.yard-fv__title strong {
	color: #ff6500;
	font-weight: 700;
}

/* FV検索（既存の都道府県検索を見た目だけ当てる） */
.yard-fv__searchbox .yard-search-section {
	position: relative;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background: transparent;
}

.yard-fv__searchbox .yard-search-section__title,
.yard-fv__searchbox .yard-search-section__lead,
.yard-fv__searchbox .yard-search-form__label {
	display: none !important;
}

.yard-fv__searchbox .yard-search-form__message:not([hidden]) {
	display: block !important;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.6;
	color: #c62828;
	margin-top: 8px;
}

.yard-fv__searchbox .yard-search-form {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	align-items: center;
	max-width: 56%;
	width: 100%;
}

.yard-fv__searchbox .yard-search-form__field {
	flex: 1 1 0;
	min-width: 0;
	position: relative;
	z-index: 2;
}

.yard-fv__searchbox .yard-search-suggest {
	max-height: 148px;
	padding: 2px 0;
	border-radius: 5px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.yard-fv__searchbox .yard-search-suggest__item {
	padding: 8px 12px;
	font-size: 14px;
	line-height: 1.35;
}

.yard-fv__searchbox .yard-search-suggest__item:hover {
	background: #fff8e1;
}

.yard-fv__searchbox .yard-search-suggest__count {
	font-size: 12px;
}

@media screen and (min-width: 768px) {
	.yard-fv__searchbox .yard-search-form {
		max-width: min(650px, 100%, max(calc(650 * 100vw / 1440), 500px));
	}

	.yard-fv__searchbox .yard-search-form__field {
		flex: 1 1 auto;
		min-width: clamp(320px, calc(400 * 100vw / 1440), 400px);
	}

	.yard-fv__searchbox .yard-search-combobox {
		min-width: 100%;
	}
}

.yard-fv__searchbox .yard-search-combobox {
	height: 55px;
	border: 1px solid #d1d5db;
	border-radius: 5px;
	background-color: #fff;
	box-sizing: border-box;
	cursor: text;
}

.yard-fv__searchbox .yard-search-combobox:focus-within {
	border-color: #d1d5db;
}

.yard-fv__searchbox .yard-search-form__input {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 0;
	padding: 0 calc(18 * 100vw / 1440);
	font-size: 16px;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #525252;
	background-color: transparent;
	cursor: text;
	-webkit-appearance: none;
	appearance: none;
}

.yard-fv__searchbox .yard-search-form__input:placeholder-shown {
	padding-top: 15px;
	padding-bottom: 16px;
}

.yard-fv__searchbox .yard-search-form__input:not(:placeholder-shown) {
	padding-top: 16px;
	padding-bottom: 16px;
}

.yard-fv__searchbox .yard-search-form__input::placeholder {
	color: #525252;
	line-height: 1.3;
	opacity: 1;
}

.yard-fv__searchbox .yard-search-form__input:focus,
.yard-fv__searchbox .yard-search-form__input:active {
	background-color: transparent;
	outline: none;
	box-shadow: none;
}

.yard-fv__searchbox .yard-btn--search {
	height: 55px;
	border: 0;
	border-radius: 8px;
	padding: 0 calc(30 * 100vw / 1440);
	background: #171717;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: transform 0.2s ease;
}

.yard-fv__searchbox .yard-btn--search:hover {
	transform: translateY(2px);
	background: #171717;
	color: #fff;
	opacity: 1;
}

@media screen and (max-width: 767px) {
	.yard-fv__searchbox .yard-search-form {
		max-width: 100%;
	}

	.yard-fv__searchbox .yard-search-form__input {
		padding-inline: 16px;
	}

	.yard-fv__searchbox .yard-btn--search {
		padding-inline: 30px;
	}
}

.yard-section__kicker {
	margin: 0 0 4px;
	font-family: var(--yard-font-family);
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #ff6500;
	text-align: center;
}

.yard-section__title {
	margin: 0;
	font-family: var(--yard-font-family);
	font-weight: 700;
	font-size: clamp(28px, 3vw, 40px);
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: center;
}

.yard-section__lead {
	margin: 16px 0 0;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #374151;
	text-align: center;
}

/* ABOUT（8073:386） */
.yard-about__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}

.yard-about__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
	text-align: center;
}

.yard-about__heading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
}

.yard-about__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	width: 100%;
	max-width: 1200px;
}

.yard-about__lead {
	margin: 30px 0 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #525252;
	text-align: center;
}

.yard-about__visual {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 54px;
	margin: 0;
}

.yard-about__photo {
	display: block;
	width: 160px;
	height: 160px;
	flex: 0 0 160px;
	border-radius: 999px;
	object-fit: cover;
}

.yard-about__figure {
	position: relative;
	flex: 0 0 266px;
	width: 266px;
	min-height: 186px;
}

.yard-about__fig-base {
	display: block;
	width: 266px;
	height: 146px;
}

.yard-about__fig-badge {
	position: absolute;
	top: 153px;
	left: 37px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 192px;
	padding: 4px calc(16 * 100vw / 1440);
	border-radius: 22px;
	background: #ff6500;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.03em;
	white-space: nowrap;
	box-sizing: border-box;
}

.yard-about__worker {
	display: block;
	width: 160px;
	height: 160px;
	flex: 0 0 160px;
}

.yard-about-card {
	margin: 0;
	background: #fff;
	border-radius: 5px;
	padding: 30px calc(30 * 100vw / 1440);
	width: fit-content;
	max-width: 100%;
	box-sizing: border-box;
	text-align: center;
}

.yard-about-card__title {
	margin: 0 0 16px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-about-card__row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: flex-start;
	justify-content: center;
}

.yard-about-card__tags {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.yard-about-card__tags li {
	background: #f5f5f5;
	border-radius: 5px;
	padding: 16px calc(16 * 100vw / 1440);
	font-weight: 500;
	font-size: 16px;
	line-height: 1.6;
	color: #525252;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.yard-about-card__tags li:nth-child(1),
.yard-about-card__tags li:nth-child(3) {
	min-width: 114px;
	box-sizing: border-box;
	text-align: center;
}

.yard-about-card__note {
	margin: 0;
	color: #525252;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.8;
	text-align: left;
	white-space: nowrap;
}

@media screen and (max-width: 767px) {
	.yard-about__visual {
		flex-direction: column;
		flex-wrap: wrap;
	}

	.yard-about-card__note {
		white-space: normal;
		text-align: center;
		width: 100%;
	}
}

/* PRICE */
.yard-price__cards {
	margin-top: 24px;
	display: grid;
	gap: 24px;
}

@media screen and (min-width: 768px) {
	.yard-price__cards {
		grid-template-columns: repeat(12, 1fr);
		align-items: stretch;
	}

	.yard-price-card--big {
		grid-column: 1 / span 5;
	}

	.yard-price-card--wide {
		grid-column: 6 / span 7;
	}

	.yard-price__cards > .yard-price-card:not(.yard-price-card--big):not(.yard-price-card--wide) {
		grid-column: span 4;
	}
}

.yard-price-card {
	background: #f5f5f5;
	border-radius: 5px;
	padding: min(calc(32 * 100vw / 1440), 32px) min(calc(32 * 100vw / 1440), 32px);
	display: flex;
	gap: 24px;
	align-items: center;
}

.yard-price-card__icon {
	width: 70px;
	height: 70px;
	border-radius: 999px;
	background: #fff;
	flex: none;
	display: grid;
	place-items: center;
	overflow: hidden;
}

.yard-price-card--big .yard-price-card__icon {
	width: 87px;
	height: 87px;
}

.yard-price-card__icon img {
	display: block;
	width: 70%;
	height: auto;
}

.yard-price-card__title {
	margin: 0 0 8px;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-price-card__price {
	margin: 0;
	color: #525252;
	letter-spacing: 0.08em;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
}

.yard-price-card__price span {
	font-size: 28px;
	color: #ff6500;
	font-weight: 700;
	line-height: 1;
}

.yard-price-card__price strong {
	font-size: 40px;
	color: #ff6500;
	font-weight: 700;
	line-height: 1;
}

.yard-price-card__price em {
	color: var(--text, #525252);
	font-family: var(--yard-font-family);
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 140%;
	letter-spacing: 1px;
	margin-left: calc(6 * 100vw / 1440);
}

.yard-price-card__price .yard-price-card__note {
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	letter-spacing: 0.03em;
	margin-left: 16px;
}

.yard-price-card__highlight {
	margin: 0;
	font-weight: 700;
	font-size: 28px;
	color: #ff6500;
	letter-spacing: 0.05em;
	line-height: 1.4;
}

.yard-price-card__sub {
	margin: 8px 0 0;
	font-size: 14px;
	color: #525252;
	letter-spacing: 0.03em;
}

.yard-price-card__text {
	margin: 0;
	color: #525252;
	letter-spacing: 0.03em;
	line-height: 1.8;
}

.yard-price-card__text-line {
	display: block;
}

.yard-price-card__accent {
	margin: 0;
	color: #ff6500;
	font-weight: 500;
}

.yard-price-card__benefit {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.yard-price-card__benefit .yard-price-card__sub {
	margin-top: 0;
}

/* 初回登録費用・基本利用料：タイトル・価格行の高さを揃える */
@media screen and (min-width: 768px) {
	.yard-price-card--big,
	.yard-price-card--wide,
	.yard-top-page .yard-price-card--big,
	.yard-top-page .yard-price-card--wide {
		align-items: flex-start;
	}

	.yard-price-card--wide .yard-price-card__icon,
	.yard-top-page .yard-price-card--wide .yard-price-card__icon {
		width: 87px;
		height: 87px;
	}

	.yard-price-card--big .yard-price-card__title,
	.yard-price-card--wide .yard-price-card__title,
	.yard-top-page .yard-price-card--big .yard-price-card__title,
	.yard-top-page .yard-price-card--wide .yard-price-card__title {
		min-height: calc(20px * 1.4);
	}

	.yard-price-card--big .yard-price-card__price,
	.yard-price-card--wide .yard-price-card__price,
	.yard-top-page .yard-price-card--big .yard-price-card__price,
	.yard-top-page .yard-price-card--wide .yard-price-card__price {
		min-height: 40px;
		white-space: nowrap;
	}
}

/* 旧ベースCSSに負けないよう TOP の PRICE を固定適用 */
.yard-top-page .yard-price__cards {
	margin-top: 24px;
	display: grid;
	gap: 24px;
}

.yard-top-page .yard-price-card {
	background: #f5f5f5;
	border-radius: 5px;
	padding: min(calc(32 * 100vw / 1440), 32px) min(calc(25 * 100vw / 1440), 25px);
	display: flex;
	gap: 24px;
	align-items: center;
	min-width: 0;
}

.yard-top-page .yard-price-card__body {
	min-width: 0;
	flex: 1 1 auto;
}

.yard-top-page .yard-price-card__icon {
	flex-shrink: 0;
}

/* =========================================================
   都道府県別ヤード一覧（PC_エリア一覧）
   ========================================================= */

.yard-prefecture-page {
	background: #fff;
}

.yard-prefecture-page__breadcrumb-wrap {
	border-bottom: 0;
	background: #fff;
}

.yard-prefecture-breadcrumb {
	display: flex;
	align-items: center;
	gap: 20px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 var(--yard-header-padding-inline);
	min-height: 36px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.yard-prefecture-breadcrumb a {
	color: #ff6500;
	text-decoration: none;
}

.yard-prefecture-breadcrumb a:hover {
	opacity: 0.6;
}

.yard-prefecture-breadcrumb__sep {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #525252;
	border-right: 1px solid #525252;
	transform: rotate(45deg);
	flex: 0 0 auto;
	vertical-align: middle;
}

.yard-prefecture-breadcrumb__current {
	color: #525252;
}

.yard-prefecture-breadcrumb__crumb-link {
	color: #ff6500;
}

.yard-prefecture-page__inner.yard-container--pc {
	padding-top: 60px;
	padding-bottom: 60px;
}

.yard-prefecture-page__header {
	border-bottom: 2px solid #ddd;
	padding-bottom: 8px;
	margin-bottom: 0;
}

.yard-prefecture-page__title {
	margin: 0;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-prefecture-page__count {
	margin: 8px 0 0;
	font-size: 16px;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-prefecture-page__count strong {
	font-size: 24px;
	font-weight: 700;
	color: #ff6500;
	margin-right: calc(2 * 100vw / 1440);
}

.yard-prefecture-page__count-unit {
	font-weight: 400;
}

.yard-card-list {
	display: flex;
	flex-direction: column;
}

.yard-card {
	border-bottom: 1px solid #ddd;
	padding: 48px 0;
}

.yard-card__main {
	display: flex;
	gap: 24px;
	align-items: flex-start;
}

.yard-card__photos {
	display: grid;
	grid-template-columns: 240fr 135fr;
	gap: 8px;
	flex: 0 0 auto;
	width: 383px;
	max-width: 100%;
}

.yard-card__photo {
	margin: 0;
	overflow: hidden;
	background: #eee;
	width: 100%;
	min-width: 0;
}

.yard-card__photo--large {
	height: 180px;
}

.yard-card__photo--small {
	height: 180px;
}

.yard-card__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.yard-card__photo--placeholder {
	background: linear-gradient(135deg, #eee 0%, #ddd 100%);
}

.yard-card__content {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.yard-card__title {
	margin: 0;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-card__address {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 8px 0 0;
	font-size: 16px;
	line-height: 1.8;
	color: #737373;
	letter-spacing: 0.05em;
}

.yard-card__address-icon {
	width: 16px;
	height: 21px;
	flex: 0 0 16px;
	background: url("../img/pin.svg") center/contain no-repeat;
}

.yard-card__address-link,
.yard-card__address-link:link,
.yard-card__address-link:visited {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.yard-material-price-link {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	flex: 0 0 auto;
	min-width: 0;
}

.yard-material-price-link__label {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-material-price-link__anchor,
.yard-material-price-link__anchor:link,
.yard-material-price-link__anchor:visited,
button.yard-material-price-link__anchor {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #ff6500;
	text-decoration: underline;
	text-underline-offset: 3px;
}

button.yard-material-price-link__anchor {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-family: inherit;
	cursor: pointer;
	text-align: left;
}

.yard-material-price-link__anchor:hover,
button.yard-material-price-link__anchor:hover {
	opacity: 0.85;
}

.yard-material-price-link--card {
	padding-right: calc(24 * 100vw / 1440);
}

.yard-material-price-link--sidebar {
	width: 100%;
}

.yard-material-price-link--sidebar .yard-material-price-link__anchor,
.yard-material-price-link--sidebar .yard-material-price-link__anchor:link,
.yard-material-price-link--sidebar .yard-material-price-link__anchor:visited,
.yard-material-price-link--sidebar button.yard-material-price-link__anchor {
	font-weight: 400;
	color: #525252;
}

.yard-material-price-link--sidebar .yard-material-price-link__anchor:hover,
.yard-material-price-link--sidebar button.yard-material-price-link__anchor:hover {
	color: #525252;
	opacity: 0.6;
}

.yard-card__price {
	padding-right: calc(24 * 100vw / 1440);
}

.yard-card__price-area {
	font-size: 16px;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-card__details {
	display: flex;
	gap: 32px;
	align-items: flex-start;
	border-top: 1px solid #ddd;
	padding-top: 16px;
}

.yard-card__detail {
	flex: 0 0 auto;
}

.yard-card__detail--materials {
	flex: 1 1 auto;
	min-width: 0;
}

.yard-card__detail-label {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-card__detail-text {
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-card__materials-wrap:not(.is-ready) .yard-card__materials {
	display: none;
}

.yard-card__materials-wrap.is-single-line .yard-card__materials,
.yard-card__materials-wrap.is-single-line .yard-card__materials-toggle {
	display: none;
}

.yard-card__materials-wrap.is-multi-line .yard-card__materials-plain {
	display: none;
}

.yard-card__materials-plain {
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-card__materials {
	margin: 0;
}

.yard-card__materials-summary {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	list-style: none;
}

.yard-card__materials-summary::-webkit-details-marker {
	display: none;
}

.yard-card__materials-preview {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-card__materials-wrap.is-multi-line .yard-card__materials-preview {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.yard-card__materials[open] .yard-card__materials-summary {
	align-items: flex-start;
}

.yard-card__materials[open] .yard-card__materials-preview {
	display: block;
	overflow: visible;
	-webkit-box-orient: unset;
	-webkit-line-clamp: unset;
}

.yard-card__materials-toggle {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex: 0 0 auto;
	white-space: nowrap;
	font-size: 16px;
	line-height: 1.8;
	color: #737373;
	letter-spacing: 0.05em;
}

.yard-card__materials-arrow {
	display: block;
	width: 12px;
	height: 8px;
	flex: 0 0 auto;
	transition: transform 0.2s ease;
}

.yard-card__materials[open] .yard-card__materials-arrow {
	transform: rotate(180deg);
}

.yard-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 16px;
	padding: 16px calc(16 * 100vw / 1440);
	background: #f5f5f5;
}

.yard-card__footer-inner {
	--yard-card-footer-content-height: 34px;
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	grid-template-areas:
		"price-label options-label"
		"price-body options-body";
	column-gap: 32px;
	row-gap: 4px;
	align-items: start;
	flex: 1 1 auto;
	min-width: 0;
}

.yard-card__footer-inner > .yard-material-price-link--card,
.yard-card__footer-inner > .yard-card__options {
	display: contents;
}

.yard-card__footer-inner .yard-material-price-link__label {
	grid-area: price-label;
	margin: 0;
}

.yard-card__footer-inner .yard-card__options-label {
	grid-area: options-label;
	margin: 0;
}

.yard-card__footer-inner .yard-material-price-link__anchor,
.yard-card__footer-inner .yard-material-price-link__anchor:link,
.yard-card__footer-inner .yard-material-price-link__anchor:visited {
	grid-area: price-body;
	display: inline-flex;
	align-items: center;
	height: var(--yard-card-footer-content-height);
	min-height: var(--yard-card-footer-content-height);
	line-height: 1;
	box-sizing: border-box;
	font-weight: 400;
	color: #525252;
}

.yard-card__footer-inner .yard-card__option-tags,
.yard-card__footer-inner .yard-card__options-text {
	grid-area: options-body;
	margin: 0;
	min-height: var(--yard-card-footer-content-height);
}

.yard-card__price-label {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-card__price-label span {
	font-size: 12px;
	font-weight: 700;
}

.yard-card__price-row {
	display: flex;
	align-items: flex-end;
	gap: 16px;
	margin-top: 0;
}

.yard-card__price-amount {
	display: flex;
	align-items: flex-end;
	gap: 4px;
	flex: 0 0 auto;
}

.yard-card__price-note {
	font-size: 16px;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
	flex: 0 0 auto;
}

.yard-card__price-value {
	margin: 0;
	font-size: 16px;
	line-height: 1.4;
	color: #525252;
	flex: 0 0 auto;
}

.yard-card__price-value strong {
	font-size: 28px;
	font-weight: 700;
	color: #ff6500;
	letter-spacing: 0.05em;
}

.yard-card__price-value span {
	font-size: 16px;
	color: #ff6500;
}

.yard-card__options-label {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-card__option-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.yard-card__option-tags li {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: var(--yard-card-footer-content-height, 34px);
	min-height: var(--yard-card-footer-content-height, 34px);
	padding: 0 8px;
	box-sizing: border-box;
	border: 1px solid #ddd;
	border-radius: 3px;
	background: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	color: #525252;
	letter-spacing: 0.05em;
	white-space: nowrap;
}

#main-container .yard-card .yard-card__option-tags > li {
	color: #525252;
}

.yard-card__options-text {
	display: inline-flex;
	align-items: center;
	height: var(--yard-card-footer-content-height, 34px);
	min-height: var(--yard-card-footer-content-height, 34px);
	margin: 0;
	font-size: 16px;
	line-height: 1;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 12px calc(32 * 100vw / 1440);
	border-radius: 8px;
	background: #ff6500;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-decoration: none;
	white-space: nowrap;
}

.yard-card__cta:hover {
	opacity: 0.7;
	color: #fff;
}

.yard-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 48px 0 0;
}

.yard-pagination__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	text-decoration: none;
}

.yard-pagination__arrow img {
	display: block;
	width: 13px;
	height: 9px;
}

.yard-pagination__arrow--prev img {
	transform: rotate(90deg);
}

.yard-pagination__arrow--next img {
	transform: rotate(-90deg);
}

.yard-pagination__arrow.is-disabled {
	opacity: 0.35;
	pointer-events: none;
}

.yard-pagination__pages {
	display: flex;
	align-items: center;
	gap: 6px;
}

.yard-pagination__page,
.yard-pagination__dots {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 4px calc(4 * 100vw / 1440);
	border: 1px solid #ddd;
	border-radius: 3px;
	font-size: 16px;
	line-height: 1.8;
	color: #525252;
	text-decoration: none;
	letter-spacing: 0.05em;
}

.yard-pagination__page.is-current,
.yard-pagination__page.current {
	background: #ff6500;
	border-color: #ff6500;
	color: #fff;
}

.yard-pagination__dots {
	border: 0;
	min-width: auto;
	padding: 0 calc(4 * 100vw / 1440);
}

.yard-back-to-top {
	position: fixed;
	right: 40px;
	bottom: 40px;
	z-index: 90;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	width: 75px;
	height: 75px;
	border-radius: 999px;
	background: #171717;
	color: #fff;
	text-decoration: none;
	font-family: var(--yard-font-family);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0.42px;
	text-align: center;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.yard-back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.yard-back-to-top__icon {
	display: block;
	width: 15px;
	height: 10px;
	flex-shrink: 0;
	background: url("../img/back-to-top-arrow.svg") center/contain no-repeat;
}

.yard-back-to-top.is-visible:hover {
	opacity: 0.7;
	color: #fff;
}

/* 768〜1439px: ヤード一覧を1440px基準で比例縮小（改行・はみ出し防止） */
@media screen and (min-width: 768px) and (max-width: 1439px) {
	.yard-prefecture-page .yard-prefecture-page__title {
		font-size: clamp(28px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-prefecture-page .yard-prefecture-page__count {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-prefecture-page .yard-prefecture-page__count strong {
		font-size: clamp(20px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-prefecture-page .yard-card {
		padding: clamp(32px, calc(48 * 100vw / 1440), 48px) 0;
	}

	.yard-prefecture-page .yard-card__main {
		gap: clamp(16px, calc(24 * 100vw / 1440), 24px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__photos {
		width: clamp(280px, calc(383 * 100vw / 1440), 383px);
		gap: clamp(6px, calc(8 * 100vw / 1440), 8px);
	}

	.yard-prefecture-page .yard-card__photo--large,
	.yard-prefecture-page .yard-card__photo--small {
		height: clamp(140px, calc(180 * 100vw / 1440), 180px);
	}

	.yard-prefecture-page .yard-card__title {
		font-size: clamp(20px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-prefecture-page .yard-card__address {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-prefecture-page .yard-card__details {
		flex-wrap: nowrap;
		gap: clamp(16px, calc(32 * 100vw / 1440), 32px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__detail {
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__detail-label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
	}

	.yard-prefecture-page .yard-card__detail-text,
	.yard-prefecture-page .yard-card__materials-plain,
	.yard-prefecture-page .yard-card__materials-preview,
	.yard-prefecture-page .yard-card__materials-toggle {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-prefecture-page .yard-card__materials-summary {
		flex-wrap: nowrap;
		gap: clamp(6px, calc(8 * 100vw / 1440), 8px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__materials-preview {
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__footer {
		flex-wrap: nowrap;
		gap: clamp(12px, calc(24 * 100vw / 1440), 24px);
		padding: clamp(12px, calc(16 * 100vw / 1440), 16px) clamp(12px, calc(16 * 100vw / 1440), 16px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__footer-inner {
		column-gap: clamp(16px, calc(32 * 100vw / 1440), 32px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__price,
	.yard-prefecture-page .yard-material-price-link--card {
		min-width: 0;
		padding-right: 0;
	}

	.yard-prefecture-page .yard-material-price-link__label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-material-price-link__anchor {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-prefecture-page .yard-card__price-label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-card__price-label span {
		font-size: clamp(10px, calc(12 * 100vw / 1440), 12px);
	}

	.yard-prefecture-page .yard-card__price-row {
		flex-wrap: nowrap;
		gap: clamp(8px, calc(16 * 100vw / 1440), 16px);
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__price-area,
	.yard-prefecture-page .yard-card__price-note {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
		flex-shrink: 1;
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__price-amount {
		flex-shrink: 0;
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-card__price-value {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-card__price-value strong {
		font-size: clamp(20px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-prefecture-page .yard-card__price-value span {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-prefecture-page .yard-card__options {
		min-width: 0;
	}

	.yard-prefecture-page .yard-card__options-label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-card__option-tags {
		flex-wrap: nowrap;
		gap: clamp(6px, calc(8 * 100vw / 1440), 8px);
	}

	.yard-prefecture-page .yard-card__option-tags li {
		height: 34px;
		min-height: 34px;
		padding: 0 clamp(6px, calc(8 * 100vw / 1440), 8px);
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
		line-height: 1;
		white-space: nowrap;
		flex-shrink: 0;
		color: #525252;
	}

	.yard-prefecture-page .yard-card__options-text {
		height: 34px;
		min-height: 34px;
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		line-height: 1;
		white-space: nowrap;
	}

	.yard-prefecture-page .yard-card__cta {
		flex-shrink: 0;
		padding: clamp(10px, calc(12 * 100vw / 1440), 12px) clamp(16px, calc(32 * 100vw / 1440), 32px);
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
	}
}

@media screen and (max-width: 767px) {
	/* 都道府県別ヤード一覧 SP（8187:2118） */
	.yard-prefecture-page .yard-prefecture-page__breadcrumb-wrap {
		border-bottom: 0;
	}

	.yard-prefecture-page .yard-prefecture-breadcrumb {
		gap: 16px;
		max-width: none;
		padding: 24px 16px 32px;
		min-height: 0;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	.yard-prefecture-page .yard-prefecture-breadcrumb__sep {
		width: 6px;
		height: 9px;
		border: 0;
		transform: rotate(-90deg);
		background: url("../img/arrow.svg") center / contain no-repeat;
	}

	.yard-prefecture-page .yard-prefecture-page__inner.yard-container--pc {
		padding: 0 16px;
	}

	.yard-prefecture-page .yard-prefecture-page__header {
		width: 100%;
		padding-bottom: 8px;
		text-align: left;
	}

	.yard-prefecture-page .yard-prefecture-page__title {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
	}

	.yard-prefecture-page .yard-prefecture-page__count {
		margin-top: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-prefecture-page__count strong {
		font-size: 24px;
		line-height: 1.3;
		letter-spacing: 0.05em;
		margin-right: 0;
	}

	.yard-prefecture-page .yard-card-list {
		width: 100%;
	}

	.yard-prefecture-page .yard-card {
		display: flex;
		flex-direction: column;
		gap: 24px;
		padding: 32px 0;
		border-bottom: 1px solid #ddd;
	}

	.yard-prefecture-page .yard-card__main {
		flex-direction: column;
		gap: 24px;
		width: 100%;
	}

	.yard-prefecture-page .yard-card__photos {
		grid-template-columns: 215fr 121fr;
		gap: 7px;
		width: 100%;
		max-width: none;
	}

	.yard-prefecture-page .yard-card__photo--large {
		height: auto;
		aspect-ratio: 215 / 161;
	}

	.yard-prefecture-page .yard-card__photo--small {
		height: auto;
		aspect-ratio: 121 / 161;
	}

	.yard-prefecture-page .yard-card__content {
		gap: 16px;
		width: 100%;
	}

	.yard-prefecture-page .yard-card__head {
		gap: 8px;
	}

	.yard-prefecture-page .yard-card__title {
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0;
		margin-bottom: 8px;
	}

	.yard-prefecture-page .yard-card__address {
		margin: 0;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__address-icon {
		width: 14px;
		height: 18px;
		flex: 0 0 14px;
	}

	.yard-prefecture-page .yard-card__details {
		flex-direction: column;
		gap: 24px;
		padding-top: 16px;
		width: 100%;
	}

	.yard-prefecture-page .yard-card__detail {
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.yard-prefecture-page .yard-card__detail-label {
		margin: 0;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__detail-text,
	.yard-prefecture-page .yard-card__materials-plain,
	.yard-prefecture-page .yard-card__materials-preview {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__materials-summary {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}

	.yard-prefecture-page .yard-card__materials-toggle {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__materials-arrow {
		width: 9px;
		height: 6px;
	}

	.yard-prefecture-page .yard-card__footer {
		flex-direction: column;
		align-items: stretch;
		gap: 24px;
		margin-top: 0;
		padding: 16px;
		width: 100%;
		box-sizing: border-box;
	}

	.yard-prefecture-page .yard-card__footer-inner {
		display: flex;
		flex-direction: column;
		gap: 24px;
		width: 100%;
	}

	.yard-prefecture-page .yard-card__footer-inner > .yard-material-price-link--card,
	.yard-prefecture-page .yard-card__footer-inner > .yard-card__options {
		display: flex;
		flex-direction: column;
		gap: 4px;
		width: 100%;
	}

	.yard-prefecture-page .yard-card__footer-inner .yard-material-price-link__label,
	.yard-prefecture-page .yard-card__footer-inner .yard-card__options-label {
		grid-area: unset;
	}

	.yard-prefecture-page .yard-card__price,
	.yard-prefecture-page .yard-material-price-link--card {
		padding-right: 0;
		width: 100%;
	}

	.yard-prefecture-page .yard-material-price-link__label {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-material-price-link__anchor {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__price-label {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__price-label span {
		font-size: 12px;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__price-row {
		flex-wrap: wrap;
		gap: 4px;
		margin-top: 0;
	}

	.yard-prefecture-page .yard-card__price-area,
	.yard-prefecture-page .yard-card__price-note {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__price-value strong {
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__price-value span {
		font-size: 14px;
		line-height: 1.7;
	}

	.yard-prefecture-page .yard-card__options-label {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__option-tags li {
		height: 34px;
		min-height: 34px;
		padding: 0 8px;
		font-size: 14px;
		line-height: 1;
		letter-spacing: 0.05em;
		color: #525252;
	}

	.yard-prefecture-page .yard-card__options-text {
		height: 34px;
		min-height: 34px;
		font-size: 14px;
		line-height: 1;
		letter-spacing: 0.05em;
	}

	.yard-prefecture-page .yard-card__cta {
		width: 100%;
		padding: 12px 32px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-prefecture-page .yard-pagination {
		gap: 6px;
		padding: 64px 0 80px;
	}

	.yard-prefecture-page .yard-pagination__page,
	.yard-prefecture-page .yard-pagination__dots {
		min-width: 32px;
		width: 32px;
		height: 32px;
		padding: 4px;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-prefecture-page .yard-pagination__dots {
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		border: 0;
	}

	.yard-prefecture-page .yard-back-to-top {
		right: 15px;
		bottom: 20px;
		width: 50px;
		height: 50px;
		font-size: 9px;
		gap: 1px;
	}

	.yard-prefecture-page .yard-back-to-top__icon {
		width: 10px;
		height: 7px;
	}
}

/* =========================================================
   レンタル申込フォーム（PC_ヤード申込）
   ========================================================= */

.yard-rental-page {
	background: #fff;
}

.yard-rental-page__breadcrumb-wrap {
	background: #fff;
}

/* 入力ステップ：現在地の右に区切りを出さない */
.yard-rental-page:not(.yard-rental-page--confirm) .yard-rental-breadcrumb-confirm-sep,
.yard-rental-page:not(.yard-rental-page--confirm) .yard-rental-breadcrumb-confirm-label,
.yard-rental-page:not(.yard-rental-page--confirm) .yard-rental-breadcrumb-form-back,
.yard-rental-page:not(.yard-rental-page--confirm) .yard-rental-page__breadcrumb-confirm {
	display: none !important;
}

.yard-rental-page.yard-rental-page--confirm .yard-rental-breadcrumb-form-input {
	display: none !important;
}

.yard-rental-page__inner.yard-container--pc {
	padding-top: 60px;
	padding-bottom: 80px;
}

.yard-rental-page__header {
	margin-bottom: 60px;
}

.yard-rental-page__title {
	margin: 0;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: center;
}

.yard-rental-page__layout {
	display: flex;
	gap: 32px;
	align-items: flex-start;
	justify-content: center;
}

.yard-rental-page__form-col {
	flex: 0 1 768px;
	width: 100%;
	max-width: 768px;
}

/* ステップ表示 */
.yard-form-steps--rental {
	--yard-steps-gap: 15px;
	--yard-steps-item-gap: 8px;
	--yard-steps-font-size: 20px;
	--yard-steps-num-size: 32px;
	--yard-steps-line-width: 100px;
	--yard-steps-line-margin: calc(15 * 100vw / 1440);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: var(--yard-steps-gap);
	margin: 0 0 32px;
	padding: 0;
	list-style: none;
	border: 0;
	border-radius: 0;
	overflow: visible;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.yard-form-steps--rental .yard-form-steps__item {
	display: flex;
	align-items: center;
	gap: var(--yard-steps-item-gap);
	flex: 0 0 auto;
	flex-shrink: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: var(--yard-steps-font-size);
	font-weight: 700;
	color: #525252;
	white-space: nowrap;
}

.yard-form-steps--rental .yard-form-steps__label {
	white-space: nowrap;
	letter-spacing: 0.05em;
}

.yard-form-steps--rental .yard-form-steps__item.is-active {
	background: transparent;
	color: #ff6500;
}

.yard-form-steps--rental .yard-form-steps__item.is-done {
	background: transparent;
	color: #ff6500;
}

.yard-form-steps--rental .yard-form-steps__item.is-done .yard-form-steps__num {
	background: #ff6500;
	color: #fff;
}

.yard-form-steps--rental .yard-form-steps__num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--yard-steps-num-size);
	height: var(--yard-steps-num-size);
	border-radius: 999px;
	background: #f5f5f5;
	font-size: var(--yard-steps-font-size);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0 !important;
	text-align: center;
	color: #525252;
	flex-shrink: 0;
	box-sizing: border-box;
	/* Noto Sans JP の数字は左に寄って見えやすいため、見た目上の中央へ微調整 */
	padding-left: 0.08em;
	padding-bottom: 0.04em;
}

.yard-form-steps--rental .yard-form-steps__item.is-active .yard-form-steps__num {
	background: #ff6500;
	color: #fff;
}

.yard-form-steps--rental .yard-form-steps__item + .yard-form-steps__item::before {
	content: "";
	display: block;
	flex-shrink: 1;
	width: var(--yard-steps-line-width);
	min-width: 0;
	height: 2px;
	margin-right: var(--yard-steps-line-margin);
	background: #ddd;
}

/* レンタル申込フォーム */
.yard-rental-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.yard-rental-field {
	margin: 0;
	padding: 0;
	border: 0;
	min-width: 0;
}

fieldset.yard-rental-field {
	min-inline-size: 0;
}

.yard-rental-field__head {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 4px;
}

.yard-rental-field__head label,
.yard-rental-field__head legend,
.yard-rental-field__label {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6;
	color: #525252;
	letter-spacing: 0.03em;
}

.yard-rental-field fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

.yard-rental-badge {
	display: inline-flex;
	align-items: center;
	padding: 2px calc(4 * 100vw / 1440);
	border-radius: 3px;
	background: #ff6500;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.02em;
}

.yard-rental-field input[type="text"],
.yard-rental-field input[type="email"],
.yard-rental-field input[type="tel"],
.yard-rental-field input[type="date"],
.yard-rental-field textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 8px calc(16 * 100vw / 1440);
	border: 1px solid #ddd;
	border-radius: 5px;
	background: #fff;
	font-size: 16px;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-rental-field input::placeholder,
.yard-rental-field textarea::placeholder,
.yard-partner-form__field input::placeholder,
.yard-partner-form__field textarea::placeholder {
	color: #a3a3a3;
	opacity: 1;
}

.yard-rental-field input[readonly] {
	background: #fff;
	color: #525252;
	cursor: default;
}

.yard-rental-field textarea {
	min-height: 100px;
	resize: vertical;
}

.yard-rental-field input.yard-form-field--invalid,
.yard-rental-field textarea.yard-form-field--invalid {
	border-color: #e53935;
	background: #fff8f8;
}

.yard-rental-dates {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.yard-rental-date-group {
	display: contents;
}

.yard-rental-date-group__label {
	display: none;
}

.yard-rental-date {
	position: relative;
	display: block;
	flex: 1 1 200px;
	min-width: 0;
}

.yard-rental-date input[type="date"] {
	width: 100%;
}

.yard-rental-date input[type="date"]:invalid {
	color: transparent;
}

.yard-rental-date input[type="date"]:focus,
.yard-rental-date input[type="date"]:valid {
	color: #525252;
}

.yard-rental-date input[type="date"]:invalid::-webkit-datetime-edit {
	opacity: 0;
}

.yard-rental-date input[type="date"]:focus::-webkit-datetime-edit,
.yard-rental-date input[type="date"]:valid::-webkit-datetime-edit {
	opacity: 1;
}

.yard-rental-date input[type="date"]::-webkit-calendar-picker-indicator {
	cursor: pointer;
	width: 18px;
	height: 18px;
	padding: 0;
	margin: 0;
	opacity: 1;
	background: transparent
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23a3a3a3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E")
		center / contain no-repeat;
	color: transparent;
}

.yard-rental-date__placeholder {
	position: absolute;
	inset: 0 calc(16 * 100vw / 1440) 0 calc(16 * 100vw / 1440);
	display: flex;
	align-items: center;
	color: #a3a3a3;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	pointer-events: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.yard-rental-date input[type="date"]:focus + .yard-rental-date__placeholder,
.yard-rental-date input[type="date"]:valid + .yard-rental-date__placeholder {
	opacity: 0;
	visibility: hidden;
}

.yard-rental-dates__sep {
	font-size: 16px;
	font-weight: 500;
	color: #525252;
}

.yard-rental-note {
	margin: 4px 0 0;
	font-size: 14px;
	line-height: 1.7;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-rental-options-empty {
	margin: 0;
	font-size: 14px;
	line-height: 1.7;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-rental-checkboxes {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.yard-rental-checkboxes label {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 14px;
	font-weight: 400;
	line-height: 2;
	color: #525252;
	cursor: pointer;
}

.yard-rental-checkboxes input[type="checkbox"] {
	width: 18px;
	height: 18px;
}

.yard-rental-field--privacy .yard-rental-field__head .yard-rental-field__label {
	font-size: 14px;
}

.yard-rental-privacy-check {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #525252;
	cursor: pointer;
}

.yard-rental-privacy-check input[type="checkbox"] {
	width: 16px;
	height: 16px;
	border-radius: 2px;
}

.yard-rental-privacy-text {
	margin: 4px 0 0;
	font-size: 14px;
	line-height: 1.6;
	color: #525252;
}

.yard-rental-privacy-text a {
	color: #004ba4;
}

.yard-rental-form__actions--primary {
	display: flex;
	justify-content: center;
	margin-top: 32px;
}

.yard-rental-form__actions--primary.yard-rental-form__actions--confirm {
	gap: 32px;
}

.yard-rental-page--confirm .yard-rental-page__form-col .yard-form-flow {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.yard-rental-page--confirm .yard-form-flow > [data-yard-step="confirm"] {
	margin-top: 32px;
}

.yard-rental-page--confirm .yard-form-steps--rental {
	margin-bottom: 0;
}

.yard-rental-page--confirm [data-yard-step="confirm"] {
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 100%;
}

.yard-rental-page--confirm .yard-rental-form__actions--primary.yard-rental-form__actions--confirm {
	margin-top: 0;
}

/* 申し込み内容確認（8073:1393） */
.yard-rental-page--confirm .yard-rental-page__layout--confirm {
	justify-content: center;
}

.yard-rental-page--confirm .yard-rental-sidebar {
	display: none;
}

.yard-rental-page--confirm .yard-rental-page__form-col {
	flex: 0 1 818px;
	max-width: 818px;
}

.yard-form-confirm--rental {
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 100%;
}

.yard-form-confirm--rental .yard-form-confirm__section {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.yard-form-confirm--rental .yard-form-confirm__section-title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-form-confirm--rental .yard-form-confirm__table {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
}

.yard-form-confirm--rental .yard-form-confirm__row {
	display: flex;
	align-items: stretch;
	width: 100%;
}

.yard-form-confirm--rental .yard-form-confirm__label,
.yard-form-confirm--rental .yard-form-confirm__value {
	margin: 0;
	padding: 8px calc(24 * 100vw / 1440);
	font-size: 16px;
	line-height: 1.8;
	border: 1px solid #ddd;
}

.yard-form-confirm--rental .yard-form-confirm__label {
	flex: 0 0 250px;
	width: 250px;
	background: #fafafa;
	font-weight: 700;
	color: #525252;
	letter-spacing: 0.03em;
}

.yard-form-confirm--rental .yard-form-confirm__value {
	flex: 1 1 auto;
	min-width: 0;
	background: #fff;
	font-weight: 400;
	color: #525252;
	letter-spacing: 0.05em;
	word-break: break-word;
}

.yard-form-confirm--rental .yard-form-confirm__row + .yard-form-confirm__row .yard-form-confirm__label,
.yard-form-confirm--rental .yard-form-confirm__row + .yard-form-confirm__row .yard-form-confirm__value {
	border-top: 0;
}

.yard-form-confirm--rental .yard-form-confirm__row .yard-form-confirm__value {
	border-left: 0;
}

.yard-form-confirm--rental .yard-form-confirm__table .yard-form-confirm__row:last-child .yard-form-confirm__label {
	align-self: stretch;
	align-items: center;
}

.yard-form-confirm--rental .yard-form-confirm__table .yard-form-confirm__row:last-child .yard-form-confirm__value {
	align-items: flex-start;
	height: auto;
	white-space: pre-wrap;
}

.yard-btn--confirm-back,
.yard-btn--confirm-send {
	justify-content: center;
	gap: 24px;
	min-width: 305px;
	padding-left: calc(32 * 100vw / 1440);
	padding-right: calc(32 * 100vw / 1440);
}

.yard-btn--confirm-back {
	border-width: 2px;
}

.yard-btn--confirm-back::after,
.yard-btn--confirm-send::before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	flex-shrink: 0;
}

.yard-btn--confirm-back .yard-btn__chevron--left,
.yard-btn--confirm-send .yard-btn__chevron--right {
	position: static;
	top: auto;
	left: auto;
	right: auto;
}

.yard-btn__chevron {
	display: inline-block;
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
}

.yard-btn__chevron--left {
	transform: rotate(135deg);
}

.yard-btn__chevron--right {
	transform: rotate(-45deg);
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* 申し込み完了（8073:1803） */
.yard-rental-page--complete .yard-rental-page__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.yard-rental-complete {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 100%;
	max-width: 818px;
}

.yard-rental-page--complete .yard-form-steps--complete {
	margin-bottom: 0;
	order: unset;
}

.yard-rental-page--complete .yard-rental-complete__body {
	order: unset;
}

.yard-form-steps--complete .yard-form-steps__item.is-done,
.yard-form-steps--complete .yard-form-steps__item.is-active {
	color: #ff6500;
}

.yard-form-steps--complete .yard-form-steps__item.is-done .yard-form-steps__num,
.yard-form-steps--complete .yard-form-steps__item.is-active .yard-form-steps__num {
	background: #ff6500;
	color: #fff;
}

.yard-rental-complete__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 100%;
}

.yard-rental-complete__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	width: 117px;
	height: 117px;
}

.yard-rental-complete__icon img {
	display: block;
	width: 117px;
	height: 117px;
}

.yard-rental-complete__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 100%;
	text-align: center;
}

.yard-rental-complete__heading {
	margin: 0;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-rental-complete__message {
	display: flex;
	flex-direction: column;
	gap: 0;
	align-items: center;
}

.yard-rental-complete__message p {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-rental-complete__note {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-btn--primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 305px;
	padding: 12px calc(32 * 100vw / 1440);
	border: 0;
	border-radius: 8px;
	background: #ff6500;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-decoration: none;
	cursor: pointer;
}

.yard-btn--primary:hover {
	opacity: 0.7;
	color: #fff;
}

.yard-btn--primary:disabled,
.yard-btn--primary.is-disabled,
.yard-btn--primary[aria-disabled="true"] {
	background: #d4d4d4;
	color: #fff;
	cursor: not-allowed;
	opacity: 1;
	pointer-events: none;
}

.yard-btn--primary-outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 140px;
	padding: 12px calc(32 * 100vw / 1440);
	border: 1px solid #ff6500;
	border-radius: 8px;
	background: #fff;
	color: #ff6500;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.8;
	cursor: pointer;
}

/* サイドバー（8073:1367） */
.yard-rental-sidebar {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	flex: 0 0 400px;
	width: 400px;
	padding: 32px;
	border-radius: 8px;
	background: #f5f5f5;
	box-sizing: border-box;
}

.yard-rental-sidebar__title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-rental-sidebar__photo {
	margin: 0;
	width: 100%;
	height: 252px;
	overflow: hidden;
	background: #eee;
}

.yard-rental-sidebar__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.yard-rental-sidebar__photo--placeholder {
	background: linear-gradient(135deg, #eee 0%, #ddd 100%);
}

.yard-rental-sidebar__head {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	width: 100%;
	padding-bottom: 16px;
	border-bottom: 1px solid #ddd;
}

.yard-rental-sidebar__name {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-rental-sidebar__address {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #737373;
}

.yard-rental-sidebar__address-icon {
	width: 16px;
	height: 21px;
	flex: 0 0 16px;
	background: url("../img/pin.svg") center/contain no-repeat;
}

.yard-rental-sidebar__address-link,
.yard-rental-sidebar__address-link:link,
.yard-rental-sidebar__address-link:visited {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.yard-rental-sidebar__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 32px;
	width: 100%;
}

.yard-rental-sidebar__body:not(:empty) {
	margin-top: 16px;
}

.yard-rental-sidebar__price {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	width: 100%;
}

.yard-rental-sidebar__price-label {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-rental-sidebar__price-label span {
	font-size: 12px;
	letter-spacing: 0.05em;
}

.yard-rental-sidebar__price-detail {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
}

.yard-rental-sidebar__price-area {
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-rental-sidebar__price-amount {
	display: flex;
	align-items: flex-end;
	gap: 4px;
}

.yard-rental-sidebar__price-note {
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
	flex: 0 0 auto;
}

.yard-rental-sidebar__price-value {
	margin: 0;
	font-size: 16px;
	line-height: 1.4;
	color: #ff6500;
	flex: 0 0 auto;
}

.yard-rental-sidebar__price-value strong {
	font-size: 28px;
	font-weight: 700;
	color: #ff6500;
	letter-spacing: 0.05em;
}

.yard-rental-sidebar__price-value span {
	font-size: 16px;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #ff6500;
}

.yard-rental-sidebar__detail {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	width: 100%;
}

.yard-rental-sidebar__detail-label {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-rental-sidebar__detail-text {
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-rental-sidebar__materials-wrap {
	width: 100%;
}

.yard-rental-sidebar__materials-wrap .yard-card__materials-plain,
.yard-rental-sidebar__materials-wrap .yard-card__materials-preview {
	width: 100%;
	margin: 0;
}

.yard-rental-sidebar__materials-wrap .yard-card__materials-summary {
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	font-weight: 400;
}

.yard-rental-sidebar__materials-wrap.is-multi-line .yard-card__materials-preview {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.yard-rental-sidebar__materials-wrap.is-multi-line .yard-card__materials[open] .yard-card__materials-preview {
	display: block;
	overflow: visible;
	-webkit-box-orient: unset;
	-webkit-line-clamp: unset;
}

.yard-rental-sidebar__materials-wrap .yard-card__materials-toggle {
	margin-top: 0;
}

/* 1024〜1439px: 2カラム維持のまま1440px基準で比例縮小 */
@media screen and (min-width: 1024px) and (max-width: 1439px) {
	.yard-rental-page .yard-rental-page__layout {
		gap: clamp(16px, calc(32 * 100vw / 1440), 32px);
		width: 100%;
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
	}

	.yard-rental-page .yard-rental-page__form-col {
		flex: 1 1 0;
		min-width: 0;
		width: auto;
		max-width: clamp(420px, calc(768 * 100vw / 1440), 768px);
	}

	.yard-rental-page .yard-rental-sidebar {
		flex: 0 1 clamp(240px, calc(400 * 100vw / 1440), 400px);
		width: clamp(240px, calc(400 * 100vw / 1440), 400px);
		min-width: 0;
		padding: clamp(20px, calc(32 * 100vw / 1440), 32px);
		gap: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-sidebar__title,
	.yard-rental-page .yard-rental-sidebar__name {
		font-size: clamp(14px, calc(20 * 100vw / 1440), 20px);
	}

	.yard-rental-page .yard-rental-sidebar__address {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-sidebar__photo {
		height: clamp(160px, calc(252 * 100vw / 1440), 252px);
	}

	.yard-rental-page .yard-rental-sidebar__price-label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
	}

	.yard-rental-page .yard-rental-sidebar__price-label span,
	.yard-rental-page .yard-rental-sidebar__price-area,
	.yard-rental-page .yard-rental-sidebar__price-note,
	.yard-rental-page .yard-rental-sidebar__price-value,
	.yard-rental-page .yard-rental-sidebar__price-value span {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-sidebar__price-value strong {
		font-size: clamp(20px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__label {
		font-size: clamp(14px, calc(18 * 100vw / 1440), 18px);
	}

	.yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-sidebar__detail-label,
	.yard-rental-page .yard-rental-sidebar__detail-text,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-plain,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-preview,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-toggle,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-summary {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-page__title {
		font-size: clamp(28px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-rental-page .yard-form-steps--rental {
		--yard-steps-gap: clamp(8px, calc(15 * 100vw / 1440), 15px);
		--yard-steps-item-gap: clamp(4px, calc(8 * 100vw / 1440), 8px);
		--yard-steps-font-size: clamp(12px, calc(20 * 100vw / 1440), 20px);
		--yard-steps-num-size: clamp(22px, calc(32 * 100vw / 1440), 32px);
		--yard-steps-line-width: clamp(24px, calc(100 * 100vw / 1440), 100px);
		--yard-steps-line-margin: clamp(0px, calc(15 * 100vw / 1440), 15px);
	}

	.yard-rental-page .yard-rental-field__head label,
	.yard-rental-page .yard-rental-field__head legend,
	.yard-rental-page .yard-rental-field__label {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page .yard-rental-field input[type="text"],
	.yard-rental-page .yard-rental-field input[type="email"],
	.yard-rental-page .yard-rental-field input[type="tel"],
	.yard-rental-page .yard-rental-field input[type="date"],
	.yard-rental-page .yard-rental-field textarea {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-rental-page--confirm .yard-rental-page__form-col {
		flex: 0 1 clamp(580px, calc(818 * 100vw / 1440), 818px);
		max-width: clamp(580px, calc(818 * 100vw / 1440), 818px);
	}
}

@media screen and (max-width: 1023px) {
	/* 1カラム時: ステップ → ヤード情報 → フォーム */
	.yard-rental-page .yard-rental-page__inner.yard-container--pc {
		padding-inline: 40px;
	}

	.yard-rental-page .yard-rental-page__form-col,
	.yard-rental-page .yard-rental-page__form-col .yard-form-flow {
		display: contents;
	}

	.yard-rental-page--confirm .yard-rental-page__form-col {
		display: flex;
		flex-direction: column;
		order: 3;
		width: 100%;
		max-width: 818px;
		margin-inline: auto;
	}

	.yard-rental-page--confirm .yard-rental-page__form-col .yard-form-flow {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	.yard-rental-page--confirm .yard-form-flow > [data-yard-step="confirm"] {
		margin-top: 32px;
	}

	.yard-rental-page--confirm .yard-form-steps--rental {
		order: 1;
		margin-bottom: 0;
	}

	.yard-rental-page--confirm [data-yard-step="confirm"] {
		order: 2;
	}

	.yard-rental-page--confirm #yard-rental-form-error {
		order: 3;
	}

	.yard-rental-page .yard-rental-page__layout {
		flex-direction: column;
		align-items: stretch;
		gap: 32px;
	}

	.yard-rental-page .yard-rental-page__layout .yard-form-steps--rental {
		order: 1;
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
	}

	.yard-rental-page .yard-rental-sidebar {
		order: 2;
		flex: none;
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
	}

	.yard-rental-page .yard-form-flow > [data-yard-step] {
		order: 3;
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
	}

	.yard-rental-page #yard-rental-form-error {
		order: 4;
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
	}

	.yard-form-steps--rental {
		--yard-steps-line-width: clamp(20px, 4vw, 40px);
		--yard-steps-line-margin: 0;
	}

	.yard-form-steps--rental .yard-form-steps__item + .yard-form-steps__item::before {
		width: var(--yard-steps-line-width);
	}

	/* 1023px以下は detail-text と同じ 16px 固定（clamp の最小 12px が効かないよう） */
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-plain,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-preview,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-toggle,
	.yard-rental-page .yard-rental-sidebar__materials-wrap .yard-card__materials-summary {
		font-size: 16px;
	}
}

@media screen and (max-width: 767px) {
	/* レンタル申込フォーム SP（8187:3952） */
	.yard-rental-page .yard-rental-page__breadcrumb-wrap {
		display: none;
	}

	.yard-rental-page .yard-rental-page__inner.yard-container--pc {
		padding: 24px 16px 80px;
	}

	.yard-rental-page .yard-rental-page__header {
		margin-bottom: 32px;
	}

	.yard-rental-page .yard-rental-page__title {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
		text-align: center;
	}

	.yard-form-steps--rental {
		--yard-steps-gap: clamp(4px, 1.6vw, 8px);
		--yard-steps-item-gap: clamp(2px, 1.1vw, 4px);
		--yard-steps-font-size: clamp(10px, 3.73vw, 14px);
		--yard-steps-num-size: clamp(18px, 6.4vw, 24px);
		--yard-steps-line-width: clamp(8px, 8vw, 30px);
		--yard-steps-line-margin: 0;
		flex-wrap: nowrap;
		margin: 0;
	}

	.yard-rental-page .yard-form-steps--rental .yard-form-steps__item {
		line-height: 1.8;
	}

	.yard-rental-page .yard-rental-sidebar {
		padding: 24px;
		border-radius: 6px;
		gap: 16px;
		box-sizing: border-box;
	}

	.yard-rental-page .yard-rental-sidebar__photo,
	.yard-rental-page .yard-rental-sidebar__body {
		display: none;
	}

	.yard-rental-page .yard-rental-sidebar__title {
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #171717;
	}

	.yard-rental-page .yard-rental-sidebar__head {
		gap: 4px;
		padding-bottom: 0;
		border-bottom: 0;
	}

	.yard-rental-page .yard-rental-sidebar__name {
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0;
	}

	.yard-rental-page .yard-rental-sidebar__address {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-sidebar__address-icon {
		width: 14px;
		height: 18px;
		flex: 0 0 14px;
	}

	.yard-rental-page .yard-rental-sidebar__price {
		gap: 0;
	}

	.yard-rental-page .yard-rental-sidebar__price-label {
		margin: 0 0 -5px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #525252;
	}

	.yard-rental-page .yard-rental-sidebar__price-label span {
		font-size: 12px;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-sidebar__price-detail {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-end;
		gap: 4px;
		white-space: nowrap;
		line-height: 1;
	}

	.yard-rental-page .yard-rental-sidebar__price-area {
		flex: 0 0 auto;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		white-space: nowrap;
	}

	.yard-rental-page .yard-rental-sidebar__price-amount {
		flex: 0 0 auto;
		white-space: nowrap;
	}

	.yard-rental-page .yard-rental-sidebar__price-note {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-sidebar__price-value {
		display: flex;
		align-items: flex-end;
		flex: 0 0 auto;
		white-space: nowrap;
	}

	.yard-rental-page .yard-rental-sidebar__price-value strong {
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-sidebar__price-value span {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		color: #ff6500;
	}

	.yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__label {
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-form {
		gap: 16px;
		width: 100%;
	}

	.yard-rental-page .yard-rental-badge {
		padding: 2px 4px;
	}

	.yard-rental-page .yard-rental-field input[type="text"],
	.yard-rental-page .yard-rental-field input[type="email"],
	.yard-rental-page .yard-rental-field input[type="tel"],
	.yard-rental-page .yard-rental-field input[type="date"],
	.yard-rental-page .yard-rental-field textarea {
		padding: 8px 16px;
	}

	.yard-rental-page .yard-rental-date-group {
		display: flex;
		flex-direction: column;
		gap: 4px;
		width: 100%;
	}

	.yard-rental-page .yard-rental-date-group__label {
		display: block;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.7;
		color: #525252;
		letter-spacing: 0.05em;
	}

	.yard-rental-page .yard-rental-dates {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
	}

	.yard-rental-page .yard-rental-dates__sep {
		display: none;
	}

	.yard-rental-page .yard-rental-date {
		flex: none;
		width: 100%;
	}

	.yard-rental-page .yard-rental-date__placeholder {
		inset: 0 16px;
	}

	.yard-rental-page .yard-rental-field textarea {
		min-height: 100px;
	}

	.yard-rental-page #other_requests::placeholder {
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.03em;
	}

	.yard-rental-page .yard-rental-form__actions--primary {
		margin-top: 16px;
		width: 100%;
	}

	.yard-rental-page .yard-rental-form__actions--primary .yard-btn--primary {
		width: 100%;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	/* 申し込み完了 SP（8196:4959） */
	.yard-rental-page--complete .yard-rental-page__header {
		margin-bottom: 32px;
	}

	.yard-rental-page--complete .yard-rental-complete {
		gap: 32px;
		max-width: none;
	}

	.yard-rental-page--complete .yard-form-steps--complete {
		flex-wrap: nowrap;
		order: unset;
		margin: 0;
	}

	.yard-rental-page--complete .yard-rental-complete__body {
		order: unset;
		gap: 32px;
	}

	.yard-rental-page--complete .yard-rental-complete__icon,
	.yard-rental-page--complete .yard-rental-complete__icon img {
		width: 117px;
		height: 117px;
	}

	.yard-rental-page--complete .yard-rental-complete__text {
		gap: 16px;
		width: 100%;
		max-width: 100%;
	}

	.yard-rental-page--complete .yard-rental-complete__heading {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-rental-page--complete .yard-rental-complete__message p,
	.yard-rental-page--complete .yard-rental-complete__note {
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-btn--primary {
		min-width: 0;
		width: 100%;
	}

	/* 申し込み内容確認 SP（8196:4550） */
	.yard-rental-page--confirm .yard-form-confirm--rental {
		gap: 32px;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__section {
		gap: 8px;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__section:first-of-type .yard-form-confirm__section-title {
		font-size: 18px;
		letter-spacing: 0.05em;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__section:nth-of-type(2) .yard-form-confirm__section-title {
		font-size: 20px;
		letter-spacing: 0.05em;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__row {
		flex-direction: column;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__label,
	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__value {
		flex: none;
		width: 100%;
		padding: 8px 24px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
		border: none;
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__row:first-child .yard-form-confirm__label {
		border-top: 1px solid #ddd;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__label {
		display: flex;
		align-items: center;
		min-height: 45px;
		background: #fafafa;
		font-weight: 700;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__value {
		background: #fff;
		font-weight: 400;
		border-top: none;
	}

	.yard-rental-page--confirm .yard-form-confirm--rental .yard-form-confirm__row .yard-form-confirm__value {
		border-left: 1px solid #ddd;
	}

	.yard-rental-page--confirm .yard-rental-form__actions--primary.yard-rental-form__actions--confirm {
		flex-direction: column;
		gap: 16px;
		width: 100%;
	}

	.yard-rental-page--confirm .yard-btn--confirm-back,
	.yard-rental-page--confirm .yard-btn--confirm-send {
		width: 100%;
		min-width: 0;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-rental-page--confirm .yard-btn--confirm-back {
		border-width: 2px;
	}

	.yard-btn--primary-outline {
		width: 100%;
	}
}

/* =========================================================
   パートナー募集ページ（8073:2125）
   ========================================================= */
.yard-partner-form-page #main,
.yard-partner-form-main {
	background: #fff;
}

.yard-partner-page {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0;
	background: #fff;
}

.yard-partner-page__breadcrumb-wrap {
	background: #fff;
}

/* 入力ステップ：現在地の右に区切りを出さない */
.yard-partner-page:not(.yard-partner-page--confirm) .yard-partner-breadcrumb-confirm-sep,
.yard-partner-page:not(.yard-partner-page--confirm) .yard-partner-breadcrumb-confirm-label,
.yard-partner-page:not(.yard-partner-page--confirm) .yard-partner-breadcrumb-form-back,
.yard-partner-page:not(.yard-partner-page--confirm) .yard-partner-page__breadcrumb-confirm {
	display: none !important;
}

.yard-partner-page.yard-partner-page--confirm .yard-partner-breadcrumb-form-input {
	display: none !important;
}

.yard-partner-hero {
	display: flex;
	gap: 32px;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0;
	padding: 60px 0 60px var(--yard-page-padding-inline);
	background: #fff;
	overflow: hidden;
	box-sizing: border-box;
}

.yard-partner-hero__left {
	flex: 0 0 auto;
	width: auto;
	max-width: 640px;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.yard-partner-hero__lead {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.yard-partner-hero__highlight {
	position: relative;
	display: inline-block;
	align-self: flex-start;
	margin: 0;
	padding: 0;
	background: none;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: left;
}

.yard-partner-hero__highlight::before {
	content: '';
	position: absolute;
	left: 0;
	top: 25px;
	width: 460px;
	max-width: 100%;
	height: 19px;
	background: #ffe4d2;
	z-index: 0;
}

.yard-partner-hero__highlight-text {
	position: relative;
	z-index: 1;
	display: block;
	color: #171717;
}

.yard-partner-hero__headline {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0;
	color: #171717;
}

.yard-partner-hero__headline-line1 {
	display: flex;
	flex-wrap: nowrap;
	align-items: baseline;
	margin: 0;
	white-space: nowrap;
}

.yard-partner-hero__headline-line2 {
	margin: 0;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #171717;
	text-align: left;
	white-space: nowrap;
}

.yard-partner-hero__headline-small {
	font-size: 48px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #171717;
}

.yard-partner-hero__headline-amount {
	font-size: 80px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #ff6500;
}

.yard-partner-hero__headline-unit {
	font-size: 48px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #ff6500;
}

.yard-partner-hero__headline-after {
	font-size: 48px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #171717;
}

.yard-partner-hero__intro {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.yard-partner-hero__subheadline {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #171717;
	white-space: nowrap;
}

.yard-partner-hero__subheadline-accent {
	color: #ff6500;
}

.yard-partner-hero__body {
	margin: 0;
	max-width: 100%;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-partner-hero__body p {
	margin: 0;
}

.yard-partner-hero__right {
	flex: 0 0 1017px;
	width: 1017px;
	max-width: none;
	height: 435px;
	overflow: hidden;
	position: relative;
	background: #ebebeb;
}

.yard-partner-hero__photo {
	display: block;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: left center;
}

/* パートナー募集 — 収益モデル / フロー（PDF 11–12ページ） */
.yard-partner-section {
	padding: 60px var(--yard-page-padding-inline);
	background: #fff;
}

.yard-partner-section + .yard-partner-section {
	padding-top: 0;
}

.yard-partner-section__inner {
	max-width: 1200px;
	margin: 0 auto;
}

.yard-partner-section__header {
	margin-bottom: 32px;
}

.yard-partner-section__header .yard-section__title {
	margin: 0;
}

.yard-partner-section__header .yard-section__lead {
	margin: 16px auto 0;
	max-width: 720px;
	text-align: center;
}

.yard-partner-process__steps {
	margin: 0;
	padding: 0;
	list-style: none;
}

.yard-partner-revenue__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 32px;
}

.yard-partner-benefit-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	min-width: 0;
	padding: 32px 24px;
	border-radius: 5px;
	background: #f5f5f5;
	text-align: center;
}

.yard-partner-benefit-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 87px;
	height: 87px;
	border-radius: 999px;
	background: #fff;
}

.yard-partner-benefit-card__icon img {
	display: block;
	width: 58px;
	height: 58px;
	object-fit: contain;
	object-position: center;
}

.yard-partner-revenue__cards .yard-partner-benefit-card:nth-child(1) .yard-partner-benefit-card__icon img {
	width: 64px;
	height: 64px;
	transform: translateY(3px);
}

.yard-partner-revenue__cards .yard-partner-benefit-card:nth-child(2) .yard-partner-benefit-card__icon img {
	width: 74px;
	height: 74px;
	transform: translateY(3px);
}

.yard-partner-process__steps .yard-partner-process__step:nth-child(2) .yard-partner-process__step-icon img {
	width: 68px;
	height: 68px;
}

.yard-partner-benefit-card__title {
	margin: 0;
	width: 100%;
	min-width: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-partner-benefit-card__text {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
	text-align: center;
}

.yard-partner-process__highlights {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	margin: 0 auto 40px;
	padding: 0;
	list-style: none;
}

.yard-partner-process__highlight {
	display: flex;
	flex: 1 1 320px;
	align-items: center;
	gap: 14px;
	max-width: 420px;
	padding: 18px 20px;
	border: 1px solid #e5e5e5;
	border-left: 4px solid #ff6500;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(23, 23, 23, 0.06);
}

.yard-partner-process__highlight-icon {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
}

.yard-partner-process__highlight-icon img {
	display: block;
	width: 40px;
	height: 40px;
	object-fit: contain;
}

.yard-partner-process__highlight-body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.yard-partner-process__highlight-title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-partner-process__highlight-text {
	margin: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-partner-process__steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.yard-partner-process__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	position: relative;
	min-width: 0;
	padding: 24px 10px;
	border-radius: 5px;
	background: #f5f5f5;
	text-align: center;
}

.yard-partner-process__step:not(:last-child)::after {
	content: "";
	position: absolute;
	z-index: 1;
	width: 13px;
	height: 9px;
	background-color: #ff6500;
	mask: url("../img/arrow.svg") center / contain no-repeat;
	-webkit-mask: url("../img/arrow.svg") center / contain no-repeat;
	pointer-events: none;
}

@media screen and (min-width: 1024px) {
	.yard-partner-process__step:not(:last-child)::after {
		top: 50%;
		right: 0;
		transform: translate(calc(50% + 10px), -50%) rotate(-90deg);
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.yard-partner-process__step::after {
		display: none;
	}

	.yard-partner-process__step:nth-child(odd):not(:nth-last-child(-n+1))::after {
		display: block;
		top: 50%;
		right: 0;
		transform: translate(calc(50% + 10px), -50%) rotate(-90deg);
	}
}

@media screen and (max-width: 767px) {
	.yard-partner-process__step:not(:last-child)::after {
		top: auto;
		right: auto;
		bottom: -22px;
		left: 50%;
		transform: translateX(-50%);
	}
}

.yard-partner-process__step-num {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #ff6500;
}

.yard-partner-process__step-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 87px;
	height: 87px;
	border-radius: 999px;
	background: #fff;
}

.yard-partner-process__step-icon img {
	display: block;
	width: 58px;
	height: 58px;
	object-fit: contain;
	object-position: center;
}

.yard-partner-process__step-title {
	margin: 0;
	width: 100%;
	min-width: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-partner-process__step-text {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 0 2px;
	box-sizing: border-box;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.02em;
	color: #525252;
	overflow-wrap: break-word;
}

@media screen and (max-width: 1023px) {
	.yard-partner-section {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.yard-partner-process__highlights {
		justify-content: stretch;
		gap: 16px;
		margin-bottom: 32px;
	}

	.yard-partner-process__highlight {
		flex: 1 1 calc(50% - 8px);
		max-width: none;
		min-width: 0;
	}

	.yard-partner-process__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 899px) {
	.yard-partner-process__highlights {
		flex-direction: column;
		align-items: stretch;
	}

	.yard-partner-process__highlight {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
	}
}

@media screen and (max-width: 767px) {
	.yard-partner-section {
		padding: 32px 16px;
	}

	.yard-partner-section + .yard-partner-section {
		padding-top: 0;
	}

	.yard-partner-section__header {
		margin-bottom: 24px;
	}

	.yard-partner-section__header .yard-section__title {
		font-size: 32px;
		line-height: 1.3;
	}

	.yard-partner-section__header .yard-section__lead {
		margin-top: 12px;
		font-size: 15px;
		line-height: 1.8;
	}

	.yard-partner-revenue__cards,
	.yard-partner-process__steps {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.yard-partner-revenue__cards {
		margin-bottom: 24px;
	}

	.yard-partner-process__highlights {
		gap: 12px;
		margin-bottom: 24px;
	}

	.yard-partner-process__highlight {
		padding: 16px;
		gap: 12px;
	}

	.yard-partner-process__highlight-icon,
	.yard-partner-process__highlight-icon img {
		width: 36px;
		height: 36px;
	}

	.yard-partner-process__highlight-title {
		font-size: 15px;
		line-height: 1.6;
	}

	.yard-partner-process__highlight-text {
		font-size: 13px;
		line-height: 1.7;
	}

	.yard-partner-benefit-card,
	.yard-partner-process__step {
		padding: 24px 16px;
	}

	.yard-partner-benefit-card__text {
		font-size: 14px;
		line-height: 1.8;
	}

	.yard-partner-process__step-title {
		font-size: 17px;
	}

	.yard-partner-process__step-icon {
		width: 80px;
		height: 80px;
	}

	.yard-partner-revenue__cards .yard-partner-benefit-card:nth-child(1) .yard-partner-benefit-card__icon img {
		width: 58px;
		height: 58px;
	}

	.yard-partner-revenue__cards .yard-partner-benefit-card:nth-child(2) .yard-partner-benefit-card__icon img {
		width: 66px;
		height: 66px;
	}

	.yard-partner-process__steps .yard-partner-process__step:nth-child(2) .yard-partner-process__step-icon img {
		width: 58px;
		height: 58px;
	}
}

.yard-partner-page--confirm .yard-partner-revenue,
.yard-partner-page--confirm .yard-partner-process {
	display: none;
}

/* パートナー募集ページ 中間幅（768〜1439px）カード内テキスト比例縮小（TOP yard-price-card 同方式） */
@media screen and (min-width: 768px) and (max-width: 1439px) {
	.yard-partner-revenue__cards {
		gap: clamp(12px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-partner-benefit-card {
		padding: clamp(14px, calc(32 * 100vw / 1440), 32px) clamp(8px, calc(20 * 100vw / 1440), 24px);
		gap: clamp(8px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-partner-benefit-card__title {
		font-size: clamp(12px, calc(18 * 100vw / 1440), 20px);
		line-height: 1.4;
		letter-spacing: 0.04em;
	}

	.yard-partner-benefit-card__text {
		font-size: clamp(9px, calc(15 * 100vw / 1440), 16px);
		line-height: 1.6;
		letter-spacing: 0.02em;
	}

	.yard-partner-process__steps {
		gap: clamp(8px, calc(20 * 100vw / 1440), 20px);
	}
}

@media screen and (min-width: 1024px) and (max-width: 1439px) {
	.yard-partner-process__step {
		padding: clamp(12px, calc(24 * 100vw / 1440), 24px) clamp(4px, calc(10 * 100vw / 1440), 10px);
	}

	.yard-partner-process__step-title {
		font-size: clamp(12px, calc(18 * 100vw / 1440), 18px);
		line-height: 1.4;
	}

	.yard-partner-process__step-text {
		font-size: clamp(9px, calc(14 * 100vw / 1440), 14px);
		line-height: 1.6;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.yard-partner-process__steps {
		gap: 20px;
	}

	.yard-partner-process__step {
		padding: 24px 16px;
	}

	.yard-partner-process__step-title {
		font-size: 18px;
		line-height: 1.6;
	}

	.yard-partner-process__step-text {
		font-size: 14px;
		line-height: 1.8;
	}
}

@media screen and (min-width: 768px) and (max-width: 1439px) {
	.yard-partner-process__step-text {
		word-break: keep-all;
		overflow-wrap: break-word;
	}
}

.yard-partner-inquiry {
	background: #fafafa;
	padding: 60px var(--yard-page-padding-inline);
	margin: 0;
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	box-sizing: border-box;
}

.yard-partner-inquiry__title {
	margin: 0 0 16px;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: center;
}

.yard-partner-inquiry__card {
	width: 768px;
	max-width: calc(100% - 32px);
	margin: 0 auto;
	padding: 32px calc(32 * 100vw / 1440);
}

.yard-partner-form__stack {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.yard-partner-form__field {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.yard-partner-form__labelrow {
	display: flex;
	align-items: center;
	gap: 8px;
}

.yard-partner-form__label {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #525252;
}

.yard-partner-form__label--plain {
	margin: 0;
}

.yard-partner-required-badge {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	background: #ff6500;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.02em;
	padding: 2px calc(4 * 100vw / 1440);
	border-radius: 3px;
}

.yard-partner-form__field input[type="text"],
.yard-partner-form__field input[type="email"],
.yard-partner-form__field input[type="tel"],
.yard-partner-form__field textarea {
	width: 100%;
	border: 1px solid #ddd;
	background: #fff;
	border-radius: 5px;
	padding: 8px calc(16 * 100vw / 1440);
	font-size: 16px;
	color: #525252;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.yard-partner-form__field textarea {
	min-height: 100px;
	resize: none;
}

.yard-partner-form__field--privacy textarea {
	min-height: 0;
}

.yard-partner-form__field textarea[rows="2"] {
	min-height: 100px;
}

.yard-partner-form__field--privacy .yard-partner-form__label {
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.yard-partner-form__actions {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

.yard-partner-privacy-check {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	line-height: 1.8;
	color: #525252;
	letter-spacing: 0.03em;
}

.yard-partner-privacy-check label {
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	letter-spacing: inherit;
}

.yard-partner-privacy-check input[type="checkbox"] {
	width: 16px;
	height: 16px;
	border-radius: 2px;
}

.yard-partner-privacy-text {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: #525252;
	letter-spacing: 0.05em;
}

.yard-partner-privacy-text a {
	color: #004ba4;
	text-decoration: none;
}

.yard-partner-privacy-text a:hover {
	opacity: 0.6;
}

.yard-partner-form-page .yard-partner-page--confirm .yard-partner-hero {
	display: none;
}

.yard-partner-page--confirm .yard-partner-inquiry {
	background: #fff;
	padding-top: 60px;
}

.yard-partner-page--confirm .yard-partner-inquiry__title {
	display: none;
}

.yard-partner-page--confirm .yard-partner-inquiry__card {
	padding-top: 0;
}

.yard-partner-confirm {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	width: 100%;
	max-width: 818px;
	margin: 0 auto;
}

.yard-partner-confirm__title {
	margin: 0;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #171717;
	text-align: center;
}

.yard-form-steps--partner-confirm {
	margin-bottom: 0;
}

.yard-form-steps--partner-confirm .yard-form-steps__item.is-done {
	color: #ff6500;
}

.yard-form-steps--partner-confirm .yard-form-steps__item.is-done .yard-form-steps__num {
	background: #ff6500;
	color: #fff;
}

/* 768px以上: パートナーFV（1440px基準で比例縮小、1440px超はhero幅・各値を上限固定） */
@media screen and (min-width: 768px) {
	.yard-partner-form-page .yard-partner-hero {
		width: min(100vw, 1440px);
		max-width: 1440px;
		margin-left: calc(50% - min(50vw, 720px));
		margin-right: calc(50% - min(50vw, 720px));
		display: grid;
		grid-template-columns: minmax(0, min(calc(640 * 100vw / 1440), 640px)) minmax(0, 1fr);
		column-gap: min(calc(32 * 100vw / 1440), 32px);
		align-items: start;
		padding-top: min(calc(60 * 100vw / 1440), 60px);
		padding-bottom: min(calc(60 * 100vw / 1440), 60px);
		padding-left: var(--yard-page-padding-inline);
		padding-right: 0;
		box-sizing: border-box;
	}

	.yard-partner-form-page .yard-partner-hero__left {
		flex: unset;
		width: 100%;
		max-width: none;
		min-width: 0;
		gap: min(calc(32 * 100vw / 1440), 32px);
	}

	.yard-partner-form-page .yard-partner-hero__highlight {
		font-size: min(calc(28 * 100vw / 1440), 28px);
	}

	.yard-partner-form-page .yard-partner-hero__highlight::before {
		top: min(calc(25 * 100vw / 1440), 25px);
		width: min(calc(460 * 100vw / 1440), 460px);
		max-width: 100%;
		height: min(calc(19 * 100vw / 1440), 19px);
	}

	.yard-partner-form-page .yard-partner-hero__headline-line2,
	.yard-partner-form-page .yard-partner-hero__headline-small,
	.yard-partner-form-page .yard-partner-hero__headline-after {
		font-size: min(calc(48 * 100vw / 1440), 48px);
	}

	.yard-partner-form-page .yard-partner-hero__headline-amount {
		font-size: min(calc(80 * 100vw / 1440), 80px);
	}

	.yard-partner-form-page .yard-partner-hero__headline-unit {
		font-size: min(calc(48 * 100vw / 1440), 48px);
	}

	.yard-partner-form-page .yard-partner-hero__intro {
		gap: min(calc(16 * 100vw / 1440), 16px);
	}

	.yard-partner-form-page .yard-partner-hero__subheadline {
		font-size: min(calc(20 * 100vw / 1440), 20px);
		white-space: nowrap;
	}

	.yard-partner-form-page .yard-partner-hero__body {
		max-width: none;
		font-size: min(calc(16 * 100vw / 1440), 16px);
	}

	.yard-partner-form-page .yard-partner-hero__right {
		flex: unset;
		width: 100%;
		min-width: 0;
		height: min(calc(435 * 100vw / 1440), 435px);
		min-height: 220px;
		margin-right: 0;
	}

	.yard-partner-form-page .yard-partner-hero__photo {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		max-width: none;
		object-fit: cover;
		object-position: left center;
	}
}

@media screen and (max-width: 767px) {
	/* パートナー募集 SP（8196:5420） */
	.yard-partner-form-page .yard-partner-page__breadcrumb-wrap {
		background: #fff;
	}

	.yard-partner-form-page .yard-partner-page__breadcrumb-wrap .yard-prefecture-breadcrumb {
		gap: 16px;
		max-width: none;
		padding: 24px 16px 0;
		min-height: 0;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	.yard-partner-form-page .yard-partner-page__breadcrumb-wrap .yard-prefecture-breadcrumb__sep {
		width: 6px;
		height: 9px;
		border: 0;
		transform: rotate(-90deg);
		background: url("../img/arrow.svg") center / contain no-repeat;
	}

	.yard-partner-form-page .yard-partner-hero {
		flex-direction: column;
		gap: 32px;
		align-items: stretch;
		padding: 24px 16px 32px;
	}

	.yard-partner-form-page .yard-partner-hero__right {
		order: -1;
		width: 100%;
		flex: none;
		height: 228px;
	}

	.yard-partner-form-page .yard-partner-hero__photo {
		position: static;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}

	.yard-partner-form-page .yard-partner-hero__left {
		gap: 24px;
		width: 100%;
		max-width: none;
		flex: none;
	}

	.yard-partner-form-page .yard-partner-hero__highlight {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-partner-form-page .yard-partner-hero__highlight::before {
		top: 17px;
		width: 308px;
		max-width: 100%;
		height: 14px;
	}

	.yard-partner-form-page .yard-partner-hero__headline-line1 {
		flex-wrap: wrap;
		white-space: normal;
	}

	.yard-partner-form-page .yard-partner-hero__headline-small,
	.yard-partner-form-page .yard-partner-hero__headline-after {
		font-size: 28px;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	.yard-partner-form-page .yard-partner-hero__headline-amount {
		font-size: 48px;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	.yard-partner-form-page .yard-partner-hero__headline-unit {
		font-size: 28px;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	.yard-partner-form-page .yard-partner-hero__headline-line2 {
		font-size: 28px;
		line-height: 1.4;
		letter-spacing: 0.1em;
		white-space: normal;
	}

	.yard-partner-form-page .yard-partner-hero__intro {
		gap: 12px;
	}

	.yard-partner-form-page .yard-partner-hero__subheadline {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		white-space: normal;
	}

	.yard-partner-form-page .yard-partner-hero__body {
		max-width: none;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-partner-form-page .yard-partner-section {
		padding: 32px 16px;
	}

	.yard-partner-form-page .yard-partner-section + .yard-partner-section {
		padding-top: 0;
	}

	.yard-partner-form-page .yard-partner-section__header {
		margin-bottom: 24px;
	}

	.yard-partner-form-page .yard-partner-section__header .yard-section__title {
		font-size: 32px;
		line-height: 1.3;
	}

	.yard-partner-form-page .yard-partner-process__highlights {
		flex-direction: column;
		align-items: stretch;
	}

	.yard-partner-form-page .yard-partner-process__highlight {
		max-width: none;
	}

	.yard-partner-form-page .yard-partner-revenue__cards,
	.yard-partner-form-page .yard-partner-process__steps {
		grid-template-columns: 1fr;
	}

	.yard-partner-form-page .yard-partner-benefit-card,
	.yard-partner-form-page .yard-partner-process__step {
		padding: 24px 16px;
	}

	.yard-partner-form-page .yard-partner-inquiry {
		padding: 32px 16px 80px;
		width: 100%;
		left: auto;
		right: auto;
		margin-left: 0;
		margin-right: 0;
	}

	.yard-partner-form-page .yard-partner-inquiry__title {
		margin-bottom: 24px;
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
		color: #1f2937;
	}

	.yard-partner-form-page .yard-partner-inquiry__card {
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

	.yard-partner-form-page .yard-partner-form__field input[type="text"],
	.yard-partner-form-page .yard-partner-form__field input[type="email"],
	.yard-partner-form-page .yard-partner-form__field input[type="tel"],
	.yard-partner-form-page .yard-partner-form__field textarea {
		padding: 8px 16px;
	}

	.yard-partner-form-page .yard-partner-required-badge {
		padding: 2px 4px;
	}

	.yard-partner-form-page .yard-partner-form__actions {
		margin-top: 16px;
		width: 100%;
	}

	.yard-partner-form-page .yard-partner-form__actions .yard-btn--primary {
		width: 100%;
		min-width: 0;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-partner-form-page #partner_other_requests::placeholder {
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.03em;
	}

	/* パートナー募集・内容確認 SP（8196:6067） */
	.yard-partner-page--confirm .yard-partner-inquiry {
		padding: 24px 16px 80px;
		background: #fff;
	}

	.yard-partner-page--confirm .yard-partner-inquiry__card {
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

	.yard-partner-page--confirm .yard-partner-confirm {
		gap: 32px;
		max-width: none;
		align-items: stretch;
	}

	.yard-partner-page--confirm .yard-partner-confirm__title {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
		text-align: center;
	}

	.yard-partner-page--confirm .yard-form-steps--partner-confirm {
		flex-wrap: nowrap;
		margin: 0;
		justify-content: center;
	}

	.yard-partner-page--confirm .yard-form-steps--partner-confirm .yard-form-steps__item {
		line-height: 1.8;
	}

	.yard-partner-page--confirm [data-yard-step="confirm"] {
		display: block;
		width: 100%;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental {
		gap: 32px;
		width: 100%;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__section {
		gap: 8px;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__section:first-of-type .yard-form-confirm__section-title {
		font-size: 18px;
		letter-spacing: 0.05em;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__section:nth-of-type(2) .yard-form-confirm__section-title {
		font-size: 20px;
		letter-spacing: 0.05em;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__row {
		flex-direction: column;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__label,
	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__value {
		flex: none;
		width: 100%;
		padding: 8px 24px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
		border: none;
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__row:first-child .yard-form-confirm__label {
		border-top: 1px solid #ddd;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__label {
		display: flex;
		align-items: center;
		min-height: 45px;
		background: #fafafa;
		font-weight: 700;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__value {
		background: #fff;
		font-weight: 400;
		border-top: none;
	}

	.yard-partner-page--confirm .yard-form-confirm--rental .yard-form-confirm__row .yard-form-confirm__value {
		border-left: 1px solid #ddd;
	}

	.yard-partner-page--confirm .yard-rental-form__actions--primary.yard-rental-form__actions--confirm {
		flex-direction: column;
		gap: 16px;
		margin-top: 0;
		width: 100%;
	}

	.yard-partner-page--confirm .yard-btn--confirm-back,
	.yard-partner-page--confirm .yard-btn--confirm-send {
		width: 100%;
		min-width: 0;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-partner-page--confirm .yard-btn--confirm-back {
		border-width: 2px;
	}

}

/* =========================================================
   サイト全体：ホバー（色を薄く / 足場を探すは下にスライド）
   ========================================================= */
:root {
	--theme-link-hover-color: var(--theme-link-initial-color, inherit);
}

#main-container a:hover {
	opacity: 0.6;
}

#main-container .yard-prefecture-breadcrumb a:hover,
#main-container .yard-prefecture-breadcrumb__crumb-link:hover {
	color: #ff6500;
	opacity: 0.6;
}

#main-container .yard-partner-privacy-text a:hover {
	color: #004ba4;
	opacity: 0.6;
}

#main-container .yard-card__address-link:hover,
#main-container .yard-rental-sidebar__address-link:hover {
	color: #737373;
	opacity: 0.6;
	text-decoration: underline;
}

#main-container .yard-menu--header a:hover,
#main-container .yard-menu--footer a:hover {
	color: #525252;
	opacity: 0.6;
}

#main-container .yard-breadcrumb a:hover {
	opacity: 0.6;
}

#main-container .yard-pagination__page:hover:not(.is-current):not(.current) {
	color: #525252;
	opacity: 0.6;
}

#main-container .yard-btn:hover:not(.yard-btn--search),
#main-container .yard-header__cta:hover,
#main-container .yard-footer__cta:hover,
#main-container .yard-card__cta:hover,
#main-container .yard-btn--primary:hover,
#main-container .yard-btn--borrow:hover,
#main-container .yard-btn--outline:hover,
#main-container .yard-btn--primary-outline:hover,
#main-container .yard-back-to-top:hover {
	filter: none;
	opacity: 0.7;
}

#main-container .yard-btn--primary:hover,
#main-container .yard-btn--borrow:hover,
#main-container .yard-header__cta:hover,
#main-container .yard-footer__cta:hover,
#main-container .yard-card__cta:hover,
#main-container .yard-back-to-top:hover {
	color: #fff;
}

#main-container .yard-btn--outline:hover {
	color: var(--theme-palette-color-1, #2271b1);
	background: transparent;
}

#main-container .yard-btn--primary-outline:hover {
	color: #ff6500;
	background: #fff;
}

#main-container button.yard-btn--search:hover,
#main-container .yard-btn--search:hover {
	background-color: #171717;
	color: #fff;
	opacity: 1;
	transform: translateY(2px);
}

/* 改行ユーティリティ（PC/SP切替） */
.yard-br--sp-only {
	display: none;
}

/* =========================================================
   TOPページ 中間幅（768〜1439px）PCレイアウト維持・比例縮小
   ========================================================= */

@media screen and (min-width: 768px) and (max-width: 1439px) {
	.yard-top-page .yard-pc-top .yard-section {
		padding: clamp(40px, calc(60 * 100vw / 1440), 60px) 0;
	}

	.yard-top-page .yard-fv {
		min-height: clamp(500px, calc(660 * 100vw / 1440), 660px);
	}

	.yard-top-page .yard-fv__inner {
		min-height: clamp(420px, calc(570 * 100vw / 1440), 570px);
		gap: clamp(16px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-top-page .yard-fv__title {
		font-size: clamp(34px, calc(56 * 100vw / 1440), 56px);
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form {
		max-width: min(655px, 100%, max(calc(806 * 100vw / 1440), 500px));
		gap: clamp(10px, calc(15 * 100vw / 1440), 15px);
		flex-wrap: nowrap;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__field {
		min-width: clamp(320px, calc(400 * 100vw / 1440), 400px);
	}

	.yard-top-page .yard-fv__searchbox .yard-search-combobox,
	.yard-top-page .yard-fv__searchbox .yard-btn--search {
		height: clamp(48px, calc(55 * 100vw / 1440), 55px);
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__input,
	.yard-top-page .yard-fv__searchbox .yard-btn--search {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-top-page .yard-section__kicker {
		font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
	}

	.yard-top-page .yard-section__title {
		font-size: clamp(28px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-top-page .yard-section__lead {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-top-page .yard-area__inner {
		flex-wrap: nowrap;
		gap: clamp(32px, calc(72 * 100vw / 1440), 72px);
	}

	.yard-top-page .yard-area .yard-section__title {
		white-space: nowrap;
	}

	.yard-top-page .yard-area__card {
		padding: clamp(20px, calc(32 * 100vw / 1440), 32px) clamp(16px, calc(32 * 100vw / 1440), 32px);
	}

	.yard-top-page .yard-area__card-title {
		font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
	}

	.yard-top-page .yard-area__card-text {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
		line-height: 1.7;
	}

	.yard-top-page .yard-area__legend-item {
		font-size: clamp(12px, calc(14 * 100vw / 1440), 14px);
	}

	.yard-top-page .yard-about__visual {
		flex-wrap: nowrap;
		gap: clamp(32px, calc(54 * 100vw / 1440), 54px);
	}

	.yard-top-page .yard-about__photo,
	.yard-top-page .yard-about__worker {
		width: clamp(120px, calc(160 * 100vw / 1440), 160px);
		height: clamp(120px, calc(160 * 100vw / 1440), 160px);
		flex: 0 0 clamp(120px, calc(160 * 100vw / 1440), 160px);
	}

	.yard-top-page .yard-about__figure {
		flex: 0 0 clamp(200px, calc(266 * 100vw / 1440), 266px);
		width: clamp(200px, calc(266 * 100vw / 1440), 266px);
		min-height: clamp(140px, calc(186 * 100vw / 1440), 186px);
	}

	.yard-top-page .yard-about__fig-base {
		width: clamp(200px, calc(266 * 100vw / 1440), 266px);
		height: clamp(110px, calc(146 * 100vw / 1440), 146px);
	}

	.yard-top-page .yard-about__fig-badge {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		width: clamp(150px, calc(192 * 100vw / 1440), 192px);
	}

	.yard-top-page .yard-about-card__title {
		font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
	}

	.yard-top-page .yard-about-card__tags li {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
	}

	.yard-top-page .yard-about-card__note {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
	}

	.yard-top-page .yard-price .yard-section__kicker {
		font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
	}

	.yard-top-page .yard-price .yard-section__title {
		font-size: clamp(28px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-top-page .yard-price .yard-section__lead {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-top-page .yard-price__cards {
		gap: clamp(12px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-top-page .yard-price-card {
		padding: clamp(14px, calc(32 * 100vw / 1440), 32px) clamp(10px, calc(25 * 100vw / 1440), 25px);
		gap: clamp(8px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-top-page .yard-price-card--big,
	.yard-top-page .yard-price-card--wide {
		align-items: flex-start;
	}

	.yard-top-page .yard-price-card__icon {
		width: clamp(44px, calc(70 * 100vw / 1440), 70px);
		height: clamp(44px, calc(70 * 100vw / 1440), 70px);
	}

	.yard-top-page .yard-price-card--big .yard-price-card__icon {
		width: clamp(54px, calc(87 * 100vw / 1440), 87px);
		height: clamp(54px, calc(87 * 100vw / 1440), 87px);
	}

	.yard-top-page .yard-price-card--wide .yard-price-card__icon {
		width: clamp(54px, calc(87 * 100vw / 1440), 87px);
		height: clamp(54px, calc(87 * 100vw / 1440), 87px);
	}

	.yard-top-page .yard-price-card__title {
		margin-bottom: clamp(4px, calc(8 * 100vw / 1440), 8px);
		font-size: clamp(13px, calc(20 * 100vw / 1440), 20px);
		line-height: 1.4;
	}

	.yard-top-page .yard-price-card--big .yard-price-card__title,
	.yard-top-page .yard-price-card--wide .yard-price-card__title {
		min-height: clamp(18px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-top-page .yard-price-card__price {
		white-space: nowrap;
	}

	.yard-top-page .yard-price-card--big .yard-price-card__price,
	.yard-top-page .yard-price-card--wide .yard-price-card__price {
		min-height: clamp(22px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-top-page .yard-price-card__price span {
		font-size: clamp(18px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-top-page .yard-price-card__price strong {
		font-size: clamp(22px, calc(40 * 100vw / 1440), 40px);
	}

	.yard-top-page .yard-price-card__price em {
		font-size: clamp(12px, calc(20 * 100vw / 1440), 20px);
		margin-left: clamp(4px, calc(6 * 100vw / 1440), 6px);
	}

	.yard-top-page .yard-price-card__price .yard-price-card__note {
		font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
		line-height: 140%;
		margin-left: clamp(8px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-top-page .yard-price-card__highlight {
		font-size: clamp(13px, calc(28 * 100vw / 1440), 28px);
		line-height: 1.35;
	}

	.yard-top-page .yard-price-card__sub,
	.yard-top-page .yard-price-card__text {
		font-size: clamp(11px, calc(14 * 100vw / 1440), 14px);
		line-height: 1.6;
	}

	.yard-top-page .yard-price-card__accent {
		font-size: clamp(12px, calc(16 * 100vw / 1440), 16px);
		line-height: 1.6;
	}

	.yard-top-page .yard-pc-top .yard-price__list {
		margin-top: clamp(32px, calc(48 * 100vw / 1440), 48px);
		gap: clamp(16px, calc(24 * 100vw / 1440), 24px);
	}

	.yard-top-page .yard-pc-top .yard-price__list-title {
		font-size: clamp(22px, calc(28 * 100vw / 1440), 28px);
	}

	.yard-top-page .yard-pc-top .yard-price__list-meta {
		gap: clamp(16px, calc(24 * 100vw / 1440), 24px);
		flex-wrap: nowrap;
	}

	.yard-top-page .yard-pc-top .yard-price__badge,
	.yard-top-page .yard-pc-top .yard-price__unit {
		font-size: clamp(13px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
	}

	.yard-top-page .yard-pc-top .yard-price__item-row {
		--yard-price-gap: clamp(16px, calc(24 * 100vw / 1440), 24px);
		flex-wrap: nowrap;
		gap: var(--yard-price-gap);
	}

	.yard-top-page .yard-pc-top summary.yard-price__row {
		font-size: clamp(16px, calc(20 * 100vw / 1440), 20px);
		padding: clamp(12px, calc(16 * 100vw / 1440), 16px);
		white-space: nowrap;
	}

	.yard-top-page .yard-pc-top .yard-price-table tbody tr {
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 0 clamp(12px, calc(16 * 100vw / 1440), 16px);
	}
}

@media screen and (min-width: 768px) and (max-width: 1439px) {
	.yard-top-page .yard-price-card__highlight,
	.yard-top-page .yard-price-card__sub,
	.yard-top-page .yard-price-card__text,
	.yard-top-page .yard-price-card__accent {
		word-break: keep-all;
		overflow-wrap: break-word;
	}
}

/* 部材別料金表：1023px以下は2列（768px未満のSPは1列を維持） */
@media screen and (max-width: 1023px) and (min-width: 768px) {
	.yard-top-page .yard-pc-top .yard-price__items {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: clamp(12px, calc(16 * 100vw / 1440), 16px);
	}

	.yard-top-page .yard-pc-top .yard-price__item-row {
		display: contents;
	}

	.yard-top-page .yard-pc-top .yard-price__item-row > .yard-acc {
		min-width: 0;
		width: auto;
		max-width: none;
	}
}

@media screen and (min-width: 1024px) and (max-width: 1439px) {
	.yard-top-page .yard-search-area__intro {
		max-width: min(calc(640 * 100vw / 1440), 58%);
	}

	.yard-top-page .yard-search-area .yard-section__title {
		font-size: clamp(28px, calc(40 * 100vw / 1440), 40px);
		white-space: nowrap;
	}

	.yard-top-page .yard-search-area .yard-section__lead {
		font-size: clamp(14px, calc(16 * 100vw / 1440), 16px);
	}
}

/* =========================================================
   TOPページ「エリアから探す」SP（1023px以下・他セクションはPC維持）
   ========================================================= */

@media screen and (max-width: 1023px) {
	.yard-top-page .yard-search-area__intro {
		width: 100%;
		max-width: 100%;
	}

	.yard-top-page .yard-search-area__map-wrap {
		width: 100%;
		max-width: 100%;
	}

	.yard-top-page .yard-search-area .yard-region-accordion--mobile {
		width: 100%;
		max-width: 100%;
	}

	/* SEARCH AREA アコーディオン（Figma・SP） */
	.yard-top-page .yard-search-area__inner {
		display: flex;
		flex-direction: column;
		gap: 32px;
		align-items: stretch;
	}

	.yard-top-page .yard-search-area__intro {
		gap: 24px;
		align-items: flex-start;
	}

	.yard-top-page .yard-search-area__heading {
		gap: 8px;
	}

	.yard-top-page .yard-search-area .yard-section__kicker,
	.yard-top-page .yard-search-area .yard-section__title,
	.yard-top-page .yard-search-area .yard-section__lead {
		text-align: left;
	}

	.yard-top-page .yard-search-area .yard-section__title {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
	}

	.yard-top-page .yard-search-area .yard-section__lead {
		margin: 0;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #525252;
		white-space: normal;
	}

	.yard-top-page .yard-search-area .yard-region-accordion--mobile {
		display: flex !important;
		flex-direction: column;
		gap: 8px;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__item {
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin-bottom: 0;
		background: #fff;
		overflow: visible;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__item[open] {
		border-color: transparent;
		background: #fff;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__summary {
		padding: 16px;
		background: #fff;
		color: #525252;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__summary::after {
		content: "";
		width: 12.5px;
		height: 8px;
		background: url("../img/arrow.svg") center / contain no-repeat;
		color: transparent;
		font-size: 0;
		flex-shrink: 0;
		transform: none;
		transition: transform 0.2s ease;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__item[open] .yard-region-accordion__summary {
		background: #fff;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__item[open] .yard-region-accordion__summary::after {
		content: "";
		transform: rotate(180deg);
	}

	.yard-top-page .yard-search-area .yard-region-accordion__total {
		display: none;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__body {
		padding: 0 24px 24px;
		border-top: 0;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__body .yard-region-panel__buttons {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		justify-content: center;
		justify-items: stretch;
		gap: 8px 9px;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__body .yard-pref-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		max-width: none;
		height: 48px;
		margin: 0;
		padding: 2px 8px;
		gap: 0;
		border: 0;
		border-radius: 5px;
		background: #f5f5f5;
		font-size: 16px;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #525252;
	}

	.yard-top-page .yard-search-area a.yard-pref-btn:hover,
	.yard-top-page .yard-search-area .yard-pref-btn--has {
		background: #f5f5f5;
		border: 0;
		color: #525252;
	}

	.yard-top-page .yard-search-area .yard-region-accordion__body .yard-pref-btn--empty {
		background: #fbfbfb;
		color: #bdbdbd;
		opacity: 1;
	}

	.yard-top-page .yard-search-area .yard-pref-btn__name {
		flex: none;
		text-align: center;
	}

	.yard-top-page .yard-search-area .yard-pref-btn__count,
	.yard-top-page .yard-search-area .yard-pref-btn--has .yard-pref-btn__count {
		font-size: inherit;
		font-weight: 400;
		color: #525252;
		background: transparent;
		min-width: 0;
		padding: 0;
	}

	.yard-top-page .yard-search-area .yard-pref-btn--empty .yard-pref-btn__count {
		font-size: inherit;
		font-weight: 400;
		color: #c4c4c4;
		background: transparent;
		min-width: 0;
		padding: 0;
	}
}

/* =========================================================
   SP_TOP（TOPページ・スマホ）Figma 8182:16
   ========================================================= */

@media screen and (max-width: 767px) {
	:root {
		--yard-page-padding-inline: 16px;
		--yard-header-padding-inline: 16px;
	}

	.yard-br--pc-only {
		display: none;
	}

	.yard-br--sp-only {
		display: inline;
	}

	.yard-top-page .yard-pc-top .yard-section {
		padding: 80px 0;
	}

	.yard-top-page .yard-container--pc {
		padding-inline: 16px;
	}

	/* --- FV --- */
	.yard-top-page .yard-fv {
		min-height: 440px;
		padding-top: 0;
		overflow: hidden;
		display: flex;
		flex-direction: column;
	}

	.yard-top-page .yard-fv__bg {
		inset: 0;
		height: auto;
		min-height: 100%;
		background-position: 30% center;
		background-size: cover;
	}

	.yard-top-page .yard-fv__bg::after {
		background: linear-gradient(
			-90deg,
			rgba(255, 255, 255, 0) 22.596%,
			#fff 76.924%
		);
	}

	.yard-top-page .yard-fv__inner.yard-container--pc {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		flex: 1 1 auto;
		width: 100%;
		margin-inline: auto;
		min-height: 440px;
		gap: 32px;
		padding-block: 32px 64px;
		padding-inline: 16px;
		box-sizing: border-box;
	}

	.yard-top-page .yard-fv__title {
		width: auto;
		max-width: none;
		font-size: 36px;
		line-height: 0;
		letter-spacing: 0.03em;
	}

	.yard-top-page .yard-fv__searchbox {
		align-self: stretch;
		width: 100%;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		width: 100%;
		max-width: none;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__field {
		flex: 1 1 auto;
		width: 100%;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-combobox {
		height: 56px;
		border-radius: 6px;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-suggest {
		max-height: 112px;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-suggest__item {
		padding: 7px 12px;
		font-size: 13px;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__input {
		padding-inline: 16px;
		font-size: 16px;
		line-height: 1.3;
		letter-spacing: 0.05em;
		box-sizing: border-box;
		width: 100%;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__input:placeholder-shown {
		font-size: 12px;
		padding-top: 19px;
		padding-bottom: 21px;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__input:not(:placeholder-shown) {
		font-size: 16px;
		padding-top: 17px;
		padding-bottom: 17px;
	}

	.yard-top-page .yard-fv__searchbox .yard-search-form__input::placeholder {
		font-size: inherit;
		line-height: 1.3;
	}

	.yard-top-page .yard-fv__searchbox .yard-btn--search {
		width: 100%;
		height: 55px;
		padding: 0 30px;
		border-radius: 6px;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 0.05em;
	}

	/* --- セクション共通タイポ --- */
	.yard-top-page .yard-section__kicker {
		font-family: "Poppins", var(--yard-font-family);
		font-size: 14px;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0;
		margin: 0;
	}

	.yard-top-page .yard-section__title {
		font-size: 32px;
		line-height: 1.2;
		letter-spacing: 0;
	}

	.yard-top-page .yard-section__lead {
		margin: 0;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #525252;
	}

	/* --- AREA --- */
	.yard-top-page .yard-area .yard-section__kicker,
	.yard-top-page .yard-area .yard-section__title,
	.yard-top-page .yard-area .yard-section__lead {
		text-align: left;
	}

	.yard-top-page .yard-area__inner {
		display: flex;
		flex-direction: column;
		gap: 32px;
	}

	.yard-top-page .yard-area__main {
		display: contents;
	}

	.yard-top-page .yard-area__heading {
		order: 1;
		gap: 12px;
	}

	.yard-top-page .yard-area .yard-section__lead {
		order: 2;
	}

	.yard-top-page .yard-area__map {
		order: 3;
		flex: none;
		width: 100%;
		max-width: none;
		margin: 0;
		align-self: auto;
		min-height: 0;
		aspect-ratio: auto;
		display: block;
	}

	.yard-top-page .yard-area__map img,
	.yard-top-page .yard-area__map svg {
		width: 100%;
		height: auto;
	}

	.yard-top-page .yard-area__card {
		order: 4;
		align-self: stretch;
		width: 100%;
		max-width: none;
		padding: 24px;
		gap: 16px;
		box-sizing: border-box;
	}

	.yard-top-page .yard-area__card-title {
		font-size: 18px;
		line-height: 1.8;
	}

	.yard-top-page .yard-area__legend-item {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	/* --- ABOUT（8184:1154） --- */
	.yard-top-page .yard-about__inner {
		gap: 32px;
	}

	.yard-top-page .yard-about__header {
		gap: 24px;
	}

	.yard-top-page .yard-about__heading {
		gap: 12px;
	}

	.yard-top-page .yard-about .yard-section__title {
		line-height: 1;
	}

	.yard-top-page .yard-about__lead {
		margin: 0;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		text-align: left;
		align-self: flex-start;
		width: 100%;
	}

	.yard-top-page .yard-about__content {
		gap: 32px;
	}

	.yard-top-page .yard-about__visual {
		flex-direction: column;
		gap: 16px;
	}

	.yard-top-page .yard-about__figure {
		position: relative;
		flex: 0 0 auto;
		width: 178px;
		max-width: 178px;
		min-height: 249px;
	}

	.yard-top-page .yard-about__figure picture {
		display: block;
		width: 178px;
	}

	.yard-top-page .yard-about__fig-base {
		display: block;
		width: 178px;
		height: 249px;
	}

	.yard-top-page .yard-about__fig-badge {
		position: absolute;
		top: 155px;
		left: 50%;
		transform: translateX(-50%);
		margin: 0;
		width: 192px;
		padding: 4px 16px;
		box-sizing: border-box;
	}

	.yard-top-page .yard-about-card {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 16px;
		width: 100%;
		padding: 24px;
		box-sizing: border-box;
	}

	.yard-top-page .yard-about-card__title {
		font-size: 18px;
		margin: 0;
		letter-spacing: 0.05em;
	}

	.yard-top-page .yard-about-card__row {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
		width: 100%;
	}

	.yard-top-page .yard-about-card__tags {
		display: grid;
		grid-template-columns: repeat(2, 143px);
		justify-content: center;
		gap: 9px 10px;
		width: 100%;
	}

	.yard-top-page .yard-about-card__tags li {
		min-width: 0;
		width: 143px;
		padding: 16px;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		white-space: nowrap;
		box-sizing: border-box;
	}

	.yard-top-page .yard-about-card__tags li:nth-child(1),
	.yard-top-page .yard-about-card__tags li:nth-child(3) {
		min-width: 0;
	}

	.yard-top-page .yard-about-card__note {
		width: 100%;
		max-width: 287px;
		margin: 0;
		align-self: center;
		text-align: left;
		font-size: 16px;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		white-space: normal;
	}

	/* --- PRICE（8184:1027） --- */
	.yard-top-page .yard-price__inner {
		display: flex;
		flex-direction: column;
		gap: 64px;
		align-items: stretch;
	}

	.yard-top-page .yard-price__intro {
		display: flex;
		flex-direction: column;
		gap: 32px;
		align-items: center;
	}

	.yard-top-page .yard-price__header {
		display: flex;
		flex-direction: column;
		gap: 24px;
		align-items: center;
		text-align: center;
		width: 100%;
	}

	.yard-top-page .yard-price__heading {
		display: flex;
		flex-direction: column;
		gap: 12px;
		align-items: center;
	}

	.yard-top-page .yard-price .yard-section__title {
		line-height: 1;
	}

	.yard-top-page .yard-price .yard-section__lead {
		margin: 0;
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #525252;
	}

	.yard-top-page .yard-price__cards {
		margin-top: 0;
		display: flex;
		flex-direction: column;
		gap: 16px;
		align-items: center;
		width: 100%;
	}

	.yard-top-page .yard-price-card {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 100%;
		padding: 32px;
		gap: 16px;
		text-align: center;
		box-sizing: border-box;
	}

	.yard-top-page .yard-price-card--big {
		padding: 24px;
	}

	.yard-top-page .yard-price-card:last-child {
		gap: 24px;
	}

	.yard-top-page .yard-price-card__icon {
		width: 87px;
		height: 87px;
	}

	.yard-top-page .yard-price-card__body {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 8px;
		width: 100%;
	}

	.yard-top-page .yard-price-card__title {
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		margin: 0;
	}

	.yard-top-page .yard-price-card--big .yard-price-card__title,
	.yard-top-page .yard-price-card--wide .yard-price-card__title {
		min-height: calc(18px * 1.8);
	}

	.yard-top-page .yard-price-card__price {
		margin: 0;
	}

	.yard-top-page .yard-price-card--big .yard-price-card__price,
	.yard-top-page .yard-price-card--wide .yard-price-card__price {
		min-height: calc(36px + 14px * 1.4 * 2);
		width: 100%;
		justify-content: center;
		white-space: normal;
		align-content: flex-start;
	}

	.yard-top-page .yard-price-card__price span {
		font-size: 24px;
		line-height: 1;
	}

	.yard-top-page .yard-price-card__price strong {
		font-size: 36px;
		line-height: 1;
	}

	.yard-top-page .yard-price-card__price em {
		font-size: 18px;
		letter-spacing: 0.05em;
		line-height: 1.4;
		margin-left: 0;
	}

	.yard-top-page .yard-price-card__price--with-note {
		gap: 15px;
	}

	.yard-top-page .yard-price-card__price .yard-price-card__note {
		margin-left: 0;
		font-size: 14px;
		font-weight: 400;
		line-height: 140%;
		letter-spacing: 0.05em;
	}

	.yard-top-page .yard-price-card__highlight {
		margin: 0;
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}

	.yard-top-page .yard-price-card__sub,
	.yard-top-page .yard-price-card__text {
		margin: 0;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

	.yard-top-page .yard-price-card__benefit {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
		width: 100%;
	}

	.yard-top-page .yard-price-card__accent {
		margin: 0;
		font-weight: 500;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		color: #ff6500;
	}

	.yard-top-page .yard-price__badge-label--sp {
		display: inline;
	}

	.yard-top-page .yard-price__badge-label--pc {
		display: none;
	}

	.yard-top-page .yard-pc-top .yard-price__list {
		margin-top: 0;
		padding-top: 0;
		gap: 24px;
		align-items: flex-start;
		width: 100%;
	}

	.yard-top-page .yard-pc-top .yard-price__list-title {
		font-size: 24px;
		line-height: 1.4;
		letter-spacing: 0;
	}

	.yard-top-page .yard-pc-top .yard-price__list-meta {
		gap: 16px;
		align-items: center;
	}

	.yard-top-page .yard-pc-top .yard-price__badge {
		font-weight: 500;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		padding: 4px 8px;
	}

	.yard-top-page .yard-pc-top .yard-price__unit {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		color: #525252;
	}

	.yard-top-page .yard-pc-top .yard-price__items {
		display: flex;
		flex-direction: column;
		gap: 8px;
		width: 100%;
	}

	.yard-top-page .yard-pc-top .yard-price__item-row {
		display: contents;
	}

	.yard-top-page .yard-pc-top .yard-price__item-row > .yard-acc {
		max-width: none;
		width: 100%;
	}

	.yard-top-page .yard-pc-top summary.yard-price__row {
		font-size: 16px;
		font-weight: 700;
		line-height: 1.8;
		letter-spacing: 0.05em;
		padding: 16px;
	}

	/* --- CONTACT --- */
	.yard-top-page .yard-top-contact__inner {
		gap: 32px;
	}

	.yard-top-page .yard-top-contact .yard-section__title {
		font-size: 32px;
		line-height: 1.2;
		letter-spacing: 0;
	}

	.yard-top-page .yard-top-contact__form-wrap {
		width: 100%;
	}

	.yard-top-page .yard-top-contact .yard-partner-form__field input[type="text"],
	.yard-top-page .yard-top-contact .yard-partner-form__field input[type="email"],
	.yard-top-page .yard-top-contact .yard-partner-form__field input[type="tel"],
	.yard-top-page .yard-top-contact .yard-partner-form__field textarea {
		padding: 8px 16px;
	}

	.yard-top-page .yard-top-contact .yard-partner-required-badge {
		padding: 2px 4px;
	}

	.yard-top-page .yard-top-contact .yard-partner-form__actions {
		margin-top: 16px;
		width: 100%;
	}

	.yard-top-page .yard-top-contact .yard-partner-form__actions .yard-btn--primary {
		width: 100%;
		min-width: 0;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	/* お問い合わせ 内容確認 SP（8287:1870） */
	.yard-top-page .yard-top-contact--confirm {
		padding: 24px 16px 80px;
		background: #fff;
	}

	.yard-top-page .yard-top-contact--confirm .yard-top-contact__inner {
		padding-top: 0;
	}

	.yard-top-page .yard-top-contact--confirm .yard-top-contact__form-wrap {
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

	.yard-top-page .yard-top-contact-confirm__title {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0;
	}

	.yard-top-page .yard-top-contact-confirm .yard-form-steps--partner-confirm {
		flex-wrap: nowrap;
		margin: 0;
		justify-content: center;
	}

	.yard-top-page .yard-top-contact-confirm .yard-form-steps--partner-confirm .yard-form-steps__item {
		line-height: 1.8;
	}

	.yard-top-page .yard-form-confirm--contact .yard-form-confirm__row {
		flex-direction: column;
	}

	.yard-top-page .yard-form-confirm--contact .yard-form-confirm__label,
	.yard-top-page .yard-form-confirm--contact .yard-form-confirm__value {
		flex: none;
		width: 100%;
		padding: 8px 24px;
		border: none;
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}

	.yard-top-page .yard-form-confirm--contact .yard-form-confirm__row:first-child .yard-form-confirm__label {
		border-top: 1px solid #ddd;
	}

	.yard-top-page .yard-form-confirm--contact .yard-form-confirm__value {
		border-top: none;
		border-left: 1px solid #ddd;
	}

	.yard-top-page .yard-top-contact-confirm__actions {
		flex-direction: column;
		gap: 16px;
	}

	.yard-top-page .yard-top-contact-confirm__actions .yard-btn--confirm-back,
	.yard-top-page .yard-top-contact-confirm__actions .yard-btn--confirm-send {
		width: 100%;
		min-width: 0;
		padding: 12px 32px;
		border-radius: 8px;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.05em;
		box-sizing: border-box;
	}

	.yard-top-page .yard-top-contact-confirm__actions .yard-btn--confirm-back {
		border-width: 2px;
	}

}

/* =========================================================
   404 Not Found
   ========================================================= */

.yard-not-found-page__inner {
	padding-block: clamp(80px, calc(120 * 100vw / 1440), 120px);
}

.yard-not-found {
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
}

.yard-not-found__title {
	margin: 0 0 16px;
	font-family: var(--yard-font-family);
	font-size: clamp(24px, calc(32 * 100vw / 1440), 32px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #171717;
}

.yard-not-found__lead {
	margin: 0 0 40px;
	font-family: var(--yard-font-family);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #525252;
}

.yard-not-found__actions {
	margin: 0;
}

@media screen and (max-width: 767px) {
	.yard-not-found-page__inner {
		padding-block: 80px;
	}

	.yard-not-found__title {
		font-size: 24px;
	}

	.yard-not-found__lead {
		margin-bottom: 32px;
		font-size: 14px;
	}

	.yard-not-found__actions .yard-btn--primary {
		width: 100%;
		max-width: 343px;
		min-width: 0;
		box-sizing: border-box;
	}
}

/* ヤードカード：フッター2行目（リンク・タグ・無し）の高さ統一 */
#main-container .yard-card .yard-card__footer-inner .yard-material-price-link__anchor,
#main-container .yard-card .yard-card__footer-inner .yard-material-price-link__anchor:link,
#main-container .yard-card .yard-card__footer-inner .yard-material-price-link__anchor:visited,
#main-container .yard-card .yard-card__footer-inner button.yard-material-price-link__anchor,
#main-container .yard-card .yard-card__footer-inner .yard-card__option-tags > li,
#main-container .yard-card .yard-card__footer-inner .yard-card__options-text {
	display: inline-flex;
	align-items: center;
	height: 34px;
	min-height: 34px;
	line-height: 1;
	font-weight: 400;
	color: #525252;
}

#main-container .yard-card .yard-card__footer-inner .yard-material-price-link__anchor:hover,
#main-container .yard-card .yard-card__footer-inner button.yard-material-price-link__anchor:hover {
	color: #525252;
	opacity: 0.6;
}

#main-container .yard-card .yard-card__option-tags {
	align-items: center;
}

#main-container .yard-card .yard-card__option-tags > li {
	padding: 0 8px;
	color: #525252 !important;
}

#main-container .yard-card .yard-card__options-text {
	color: #525252;
}

#main-container .yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor,
#main-container .yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor:link,
#main-container .yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor:visited,
#main-container .yard-rental-page .yard-material-price-link--sidebar button.yard-material-price-link__anchor {
	font-weight: 400;
	color: #525252;
}

#main-container .yard-rental-page .yard-material-price-link--sidebar .yard-material-price-link__anchor:hover,
#main-container .yard-rental-page .yard-material-price-link--sidebar button.yard-material-price-link__anchor:hover {
	color: #525252;
	opacity: 0.6;
}

/* =========================================================
   部材別料金表モーダル
   ========================================================= */

body.yard-material-price-modal-open {
	overflow: hidden;
}

.yard-material-price-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px 16px;
	box-sizing: border-box;
}

.yard-material-price-modal[hidden] {
	display: none;
}

.yard-material-price-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(23, 23, 23, 0.55);
}

.yard-material-price-modal__dialog {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	width: min(1120px, 100%);
	max-height: min(90dvh, 920px);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 16px 48px rgba(23, 23, 23, 0.18);
	overflow: hidden;
	outline: none;
}

.yard-material-price-modal__header {
	position: absolute;
	top: 8px;
	right: 15px;
	z-index: 2;
	display: flex;
	justify-content: flex-end;
	padding: 0;
	flex: 0 0 auto;
}

.yard-material-price-modal__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #f5f5f5;
	color: #171717;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}

.yard-material-price-modal__close:hover {
	background: #eee;
}

.yard-material-price-modal__body {
	flex: 1 1 auto;
	min-height: 0;
	overflow: auto;
	padding: 12px 20px 24px;
	box-sizing: border-box;
}

.yard-material-price-modal__scope.yard-pc-top {
	display: block;
	width: 100%;
}

.yard-material-price-modal__scope .yard-price__list {
	margin-top: 0;
	padding-top: 0;
	gap: 16px;
}

.yard-material-price-modal__scope .yard-price__list-title {
	font-size: 24px;
	padding-right: 32px;
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.yard-material-price-modal__scope .yard-price__items {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.yard-material-price-modal__scope .yard-price__item-row {
		display: contents;
	}

	.yard-material-price-modal__scope .yard-price__item-row > .yard-acc {
		min-width: 0;
		width: auto;
		max-width: none;
	}
}

@media screen and (max-width: 767px) {
	.yard-material-price-modal {
		padding: 16px;
	}

	.yard-material-price-modal__dialog {
		border-radius: 6px;
		height: 80dvh;
	}

	.yard-material-price-modal__body {
		padding: 10px 16px 20px;
	}

	.yard-material-price-modal__header {
		top: 6px;
		right: 6px;
	}

	.yard-material-price-modal__scope .yard-price__list-title,
	#yard-material-price-modal-title {
		font-size: clamp(17px, calc(20 * 100vw / 375), 22px);
		line-height: 1.3;
		letter-spacing: 0.04em;
		white-space: nowrap;
		padding-right: 28px;
	}

	.yard-material-price-modal__scope .yard-price__items {
		display: flex;
		flex-direction: column;
		gap: 8px;
	}

	.yard-material-price-modal__scope .yard-price__item-row {
		display: contents;
	}

	.yard-material-price-modal__scope .yard-price__item-row > .yard-acc {
		max-width: none;
		width: 100%;
	}

	.yard-material-price-modal__scope summary.yard-price__row {
		font-size: 16px;
	}
}

