/**
 * TOP（front-page）専用 — Editorial White レイアウト層
 *
 * このファイルは front-page でのみ読み込まれる（area-top-render.php）。
 * 共有ブロックの見た目を TOP に限って「編集デザイン」へ作り替える。
 * スコープはすべて .fmv-lp-top（front-page.php の <main> クラス）配下。
 * 他ページ（メーカー / サービス LP）には影響しない。
 */

/* ===========================================================
   0. ページ基調 — TOP は紙面のようなウォームホワイト
   =========================================================== */
.fmv-lp-top {
	background: var(--fmv-lp-bg, #f7f5f1);
}

/* ===========================================================
   1. HERO — フルブリード画像 + 非対称イントロ（旧・中央ダーク帯を廃止）
   =========================================================== */
.dpt-hero {
	background: #ffffff;
	margin: 0;
	padding: 0;
}

.dpt-hero__media {
	line-height: 0;
	background: #ffffff;
}

.dpt-hero__img {
	display: block;
	width: 100%;
	height: auto;
}

.dpt-hero__img--pc { display: none; }
.dpt-hero__img--sp { display: block; }

@media (min-width: 1024px) {
	.dpt-hero__img--pc {
		display: block;
		max-width: min(94vw, 1440px);
		margin: 0 auto;
		max-height: min(72vh, 760px);
		object-fit: contain;
	}
	.dpt-hero__img--sp { display: none; }
}

/* --- イントロパネル（左: 明朝ディスプレイ / 右: サブ + CTA） --- */
.dpt-hero__intro {
	background: #ffffff;
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

.dpt-hero__intro-inner {
	max-width: 1120px;
	margin: 0 auto;
	padding: clamp(2.6rem, 5vw, 4.5rem) 1.25rem clamp(2.2rem, 4vw, 3.5rem);
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 1024px) {
	.dpt-hero__intro-inner {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: clamp(2.5rem, 4.5vw, 3rem);
		align-items: start;
	}
}

.dpt-hero__eyebrow {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 1.4rem;
	font-family: 'Roboto', sans-serif;
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.32em;
	color: var(--fmv-lp-muted, #6b6760);
	text-transform: uppercase;
}

.dpt-hero__eyebrow-rule {
	display: inline-block;
	width: 32px;
	height: 1px;
	background: var(--fmv-lp-muted, #6b6760);
	opacity: 0.55;
}

.dpt-hero__display {
	margin: 0;
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif);
	font-size: var(--dp-step-display, clamp(1.95rem, 4.2vw, 3.1rem));
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: var(--dp-serif-tracking, 0.04em);
	color: var(--fmv-lp-text, #1a1916);
	font-feature-settings: "palt" 1;
	text-wrap: pretty;
	word-break: keep-all;
	word-break: auto-phrase;
	overflow-wrap: break-word;
	line-break: strict;
}

.dpt-hero__display-line {
	display: block;
	/* LP Tailwind ベースの span{font-size:1rem} リセットに勝つ（line1 を親 display サイズに固定） */
	font-size: 1em;
}

.dpt-hero__display-line--second {
	margin-top: 0.5em;
	font-size: 0.6em;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: var(--fmv-lp-accent, #1a2e4a);
}

.dpt-hero__sub {
	margin: 0 0 0.9rem;
	font-size: 0.98rem;
	line-height: 2;
	color: var(--fmv-lp-text, #1a1916);
}

.dpt-hero__note {
	margin: 0 0 1.8rem;
	font-size: 0.8rem;
	letter-spacing: 0.02em;
	color: var(--fmv-lp-muted, #6b6760);
}

@media (min-width: 1024px) {
	.dpt-hero__intro-side {
		padding-top: 0.4rem;
		padding-left: clamp(2.5rem, 4.5vw, 3rem);
		border-left: 1px solid var(--fmv-lp-rule, #ddd9d2);
	}
}

/* --- CTA（赤フラット + 電話はタイポグラフィのみ） --- */
.dpt-hero__cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.4rem;
}

.dpt-hero__cta-form {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	padding: 0.95rem 1.7rem;
	background: var(--fmv-lp-cta, #8b1a2e);
	color: #ffffff;
	font-size: 0.92rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-decoration: none;
	border-radius: 4px;
	transition: background-color 0.2s ease;
}

.dpt-hero__cta-form:hover,
.dpt-hero__cta-form:focus-visible {
	background: var(--fmv-lp-cta-dark, #6e1424);
	color: #ffffff;
}

.dpt-hero__cta-arrow {
	font-family: 'Roboto', sans-serif;
	font-size: 1em;
	transition: transform 0.2s ease;
}

.dpt-hero__cta-form:hover .dpt-hero__cta-arrow {
	transform: translateX(3px);
}

.dpt-hero__cta-tel {
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	text-decoration: none;
}

.dpt-hero__cta-tel-num {
	font-family: 'Roboto', 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	color: var(--fmv-lp-accent, #1a2e4a);
}

.dpt-hero__cta-tel-hours {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	color: var(--fmv-lp-muted, #6b6760);
}

/* --- SEO H1 帯 — 奥付型タイポ（フラットネイビー・装飾最小） --- */
.fmv-lp-top .dpt-hero__band {
	text-align: left;
	background: var(--fmv-lp-accent, #1a2e4a);
	padding: clamp(0.62rem, 1.2vw, 0.82rem) 1.25rem clamp(0.68rem, 1.25vw, 0.88rem);
	border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.fmv-lp-top .dpt-hero__band-inner {
	max-width: 1120px;
	margin: 0 auto;
}

.fmv-lp-top .dpt-hero__band-h1 {
	margin: 0;
	font-weight: inherit;
}

/* タイトル群（サービス文＋店名）と区切り線。PC は 1 文として自然に流す */
.fmv-lp-top .dpt-hero__band-title {
	display: block;
	position: relative;
	margin: 0 0 0.48rem;
	padding-bottom: 0.48rem;
}

.fmv-lp-top .dpt-hero__band-title::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 2.4rem;
	height: 1px;
	background: rgba(255, 255, 255, 0.28);
}

/* PC：サービス文＋店名は 1 文として自然に流す（従来の見た目） */
.fmv-lp-top .dpt-hero__band-lead,
.fmv-lp-top .dpt-hero__band-store {
	display: inline;
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif);
	font-size: clamp(0.88rem, 1.28vw, 1.05rem);
	font-weight: 500;
	line-height: 1.52;
	letter-spacing: 0.05em;
	color: rgba(255, 255, 255, 0.94);
}

/* SP：2 行固定（1行目=サービス文／2行目=店名）。
   1 行目（全角27字）が帯幅いっぱいに収まり全幅で表示されるよう vw でサイズ最適化。 */
@media (max-width: 767px) {
	.fmv-lp-top .dpt-hero__band {
		padding: 0.58rem 0.9rem 0.65rem;
	}
	.fmv-lp-top .dpt-hero__band-lead,
	.fmv-lp-top .dpt-hero__band-store {
		display: block;
		white-space: nowrap;
		letter-spacing: 0.01em;
		line-height: 1.6;
		/* 帯の左右パディング(0.9rem×2)を除いた幅に 1 行目(全角27字)が収まり全幅で埋まる比率 */
		font-size: 3.3vw;
	}
	.fmv-lp-top .dpt-hero__band-lead {
		margin-bottom: 0.12rem;
	}
}

.fmv-lp-top .dpt-hero__band-area {
	display: block;
	margin: 0;
	padding: 0;
	font-size: clamp(0.74rem, 1vw, 0.86rem);
	font-weight: 400;
	line-height: 1.62;
	letter-spacing: 0.025em;
	color: rgba(255, 255, 255, 0.55);
}


@media (max-width: 767px) {
	/* band / band-lead の SP サイズは上の 2 行固定ブロックで定義（vw で全幅最適化）。
	   ここでは 3 行目（エリア表記）のサイズのみ調整。 */
	.fmv-lp-top .dpt-hero__band-area {
		font-size: clamp(0.72rem, 3vw, 0.82rem);
	}
}

/* ===========================================================
   2. 見出しシステム — TOP は左揃え（中央寄せの繰り返しを断つ）
   =========================================================== */
.fmv-lp-top .fmv-lp-section-head,
.fmv-lp-top .fmv-lp-reasons__header,
.fmv-lp-top .fmv-lp-inspection__header,
.fmv-lp-top .fmv-lp-symptoms__header,
.fmv-lp-top .fmv-lp-flow__header,
.fmv-lp-top .fmv-lp-voices__header,
.fmv-lp-top .fmv-lp-brand-cov__header,
.fmv-lp-top .fmv-lp-area-access__header,
.fmv-lp-top .fmv-lp-detail__header {
	align-items: flex-start !important;
	text-align: left !important;
	max-width: 46rem;
	margin-left: 0 !important;
	margin-right: auto !important;
}

.fmv-lp-top .fmv-lp-section-head__title,
.fmv-lp-top .fmv-lp-h2,
.fmv-lp-top .fmv-lp-concerns__h2,
.fmv-lp-top .fmv-lp-reasons__display,
.fmv-lp-top .fmv-lp-storefront__h2,
.fmv-lp-top .fmv-lp-svc-grid__h2,
.fmv-lp-top .fmv-lp-inspection__display,
.fmv-lp-top .fmv-lp-symptoms__h2,
.fmv-lp-top .fmv-lp-flow__h2,
.fmv-lp-top .fmv-lp-voices__h2,
.fmv-lp-top .fmv-lp-detail__display,
.fmv-lp-top .fmv-lp-brand-cov__h2,
.fmv-lp-top .fmv-lp-area-access__h2 {
	text-align: left !important;
	white-space: normal !important;
	/* 賢い改行：語を割らずスペース・句読点で改行（Chrome は文節 auto-phrase）。あふれ時のみ分割 */
	text-wrap: pretty !important;
	word-break: keep-all !important;
	word-break: auto-phrase !important;
	overflow-wrap: break-word !important;
	line-break: strict !important;
}

.fmv-lp-top .fmv-lp-section-head__lead,
.fmv-lp-top .fmv-lp-concerns__lead,
.fmv-lp-top .fmv-lp-reasons__lead,
.fmv-lp-top .fmv-lp-storefront__lead,
.fmv-lp-top .fmv-lp-svc-grid__lead,
.fmv-lp-top .fmv-lp-inspection__lead,
.fmv-lp-top .fmv-lp-symptoms__lead,
.fmv-lp-top .fmv-lp-flow__lead,
.fmv-lp-top .fmv-lp-voices__lead,
.fmv-lp-top .fmv-lp-detail__lead,
.fmv-lp-top .fmv-lp-brand-cov__lead,
.fmv-lp-top .fmv-lp-area-access__lead {
	text-align: left !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	/* 見出しと同じ賢い改行ポリシー */
	text-wrap: pretty !important;
	word-break: keep-all !important;
	word-break: auto-phrase !important;
	overflow-wrap: break-word !important;
	line-break: strict !important;
}

/* storefront / svc-grid は header ラッパー無しの直書きなので個別に */
.fmv-lp-top .fmv-lp-storefront__container,
.fmv-lp-top .fmv-lp-svc-grid__container {
	text-align: left;
}

.fmv-lp-top .fmv-lp-svc-grid .fmv-lp-section-head {
	margin-bottom: clamp(1.6rem, 4vw, 2.4rem);
}

/* ===========================================================
   3. CONCERNS — カードグリッド廃止 → 番号付きエディトリアルリスト
   =========================================================== */
.fmv-lp-top .fmv-lp-concerns__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 4rem;
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

@media (min-width: 768px) {
	.fmv-lp-top .fmv-lp-concerns__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.fmv-lp-top .fmv-lp-concerns__card {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--fmv-lp-rule, #ddd9d2);
	border-radius: 0;
	box-shadow: none;
	padding: 1.9rem 0 1.7rem;
	transition: none;
	overflow: visible;
}

.fmv-lp-top .fmv-lp-concerns__card::before {
	display: none;
}

.fmv-lp-top .fmv-lp-concerns__card:hover {
	transform: none;
	border-color: var(--fmv-lp-rule, #ddd9d2);
	box-shadow: none;
}

.fmv-lp-top .fmv-lp-concerns__head {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0.7rem;
	gap: 0.7rem;
}

.fmv-lp-top .fmv-lp-concerns__num {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif);
	font-size: 1.9rem;
	font-weight: 600;
	color: var(--fmv-lp-accent, #1a2e4a);
	letter-spacing: 0;
}

.fmv-lp-top .fmv-lp-concerns__num-label {
	font-size: 0.62rem;
	font-weight: 500;
	letter-spacing: 0.3em;
	color: #a39e95;
}

.fmv-lp-top .fmv-lp-concerns__title {
	font-size: 1.02rem;
	line-height: 1.7;
}

.fmv-lp-top .fmv-lp-concerns__desc {
	color: var(--fmv-lp-muted, #6b6760);
	line-height: 1.9;
}

/* ===========================================================
   4. REASONS — 写真カード廃止 → ボーダレスのギャラリー組み
   =========================================================== */
.fmv-lp-top .fmv-lp-reasons__cards {
	gap: 3.2rem 2.2rem !important;
}

.fmv-lp-top .fmv-lp-reasons__card {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	transition: none !important;
	overflow: visible !important;
}

.fmv-lp-top .fmv-lp-reasons__card:hover {
	transform: none !important;
	box-shadow: none !important;
}

.fmv-lp-top .fmv-lp-reasons__media {
	position: relative;
	display: block;
	border-radius: 0 !important;
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.fmv-lp-top .fmv-lp-reasons__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0 !important;
	transition: none !important;
	transform: none !important;
}

.fmv-lp-top .fmv-lp-reasons__card:hover .fmv-lp-reasons__img {
	transform: none !important;
}

.fmv-lp-top .fmv-lp-reasons__media-overlay,
.fmv-lp-top .fmv-lp-reasons__icon {
	display: none !important;
}

/* 番号バッジ → 写真下のタイポグラフィ行へ */
.fmv-lp-top .fmv-lp-reasons__num-badge {
	position: static !important;
	display: flex !important;
	align-items: baseline;
	gap: 0.7rem;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 1.1rem 0 0.45rem !important;
	margin: 0 !important;
}

.fmv-lp-top .fmv-lp-reasons__num {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
	font-size: 1.55rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-accent, #1a2e4a) !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-shadow: none !important;
}

.fmv-lp-top .fmv-lp-reasons__meta {
	font-family: 'Roboto', sans-serif !important;
	font-size: 0.64rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.3em !important;
	color: #a39e95 !important;
	text-transform: uppercase;
	text-shadow: none !important;
}

.fmv-lp-top .fmv-lp-reasons__content {
	padding: 0 !important;
}

.fmv-lp-top .fmv-lp-reasons__title {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
	font-size: 1.22rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-text, #1a1916) !important;
	letter-spacing: 0.03em !important;
	margin: 0 0 0.5rem !important;
}

.fmv-lp-top .fmv-lp-reasons__card-lead {
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	color: var(--fmv-lp-text, #1a1916) !important;
	margin: 0 0 0.45rem !important;
}

.fmv-lp-top .fmv-lp-reasons__desc {
	font-size: 0.86rem !important;
	color: var(--fmv-lp-muted, #6b6760) !important;
	line-height: 1.9 !important;
}

/* ===========================================================
   5. STOREFRONT（9 メーカー）— ロゴカード → ヘアラインのタイルグリッド
   =========================================================== */
.fmv-lp-top .fmv-lp-storefront::before {
	display: none;
}

.fmv-lp-top .fmv-lp-storefront__makers {
	gap: 0 !important;
	max-width: none !important;
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
	border-left: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

.fmv-lp-top .fmv-lp-storefront__maker-link {
	border: none;
	border-right: 1px solid var(--fmv-lp-rule, #ddd9d2);
	border-bottom: 1px solid var(--fmv-lp-rule, #ddd9d2);
	border-radius: 0;
	box-shadow: none;
	background: #ffffff;
	padding: 1.15rem 1.25rem;
	transition: background-color 0.2s ease;
}

.fmv-lp-top .fmv-lp-storefront__maker-link::before {
	display: none;
}

.fmv-lp-top .fmv-lp-storefront__maker-link:hover,
.fmv-lp-top .fmv-lp-storefront__maker-link:focus-visible {
	transform: none;
	box-shadow: none;
	border-color: var(--fmv-lp-rule, #ddd9d2);
	background: var(--fmv-lp-bg, #f7f5f1);
}

/* ===========================================================
   6. SERVICE GRID — 写真上スクリム文字 → 写真下のキャプション組み
   =========================================================== */
.fmv-lp-top .fmv-lp-svc-grid__list {
	gap: 2.4rem 2rem !important;
}

.fmv-lp-top .fmv-lp-svc-grid__item {
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	overflow: visible !important;
}

.fmv-lp-top .fmv-lp-svc-grid__card {
	display: block !important;
	position: relative;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	overflow: visible !important;
	transform: none !important;
}

.fmv-lp-top .fmv-lp-svc-grid__card:hover {
	transform: none !important;
	box-shadow: none !important;
}

.fmv-lp-top .fmv-lp-svc-grid__media {
	display: block !important;
	position: relative !important;
	aspect-ratio: 3 / 2;
	overflow: hidden !important;
	border-radius: 0 !important;
}

.fmv-lp-top .fmv-lp-svc-grid__img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: opacity 0.25s ease !important;
	transform: none !important;
}

.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__img {
	transform: none !important;
	opacity: 0.88;
}

.fmv-lp-top .fmv-lp-svc-grid__scrim {
	display: none !important;
}

.fmv-lp-top .fmv-lp-svc-grid__body {
	position: static !important;
	display: flex !important;
	align-items: baseline !important;
	gap: 0.75rem !important;
	padding: 0.95rem 0 0 !important;
	background: none !important;
	inset: auto !important;
}

.fmv-lp-top .fmv-lp-svc-grid__num {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-accent, #1a2e4a) !important;
	opacity: 1 !important;
	text-shadow: none !important;
	line-height: 1 !important;
}

.fmv-lp-top .fmv-lp-svc-grid__heading {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.25rem !important;
}

.fmv-lp-top .fmv-lp-svc-grid__title {
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: var(--fmv-lp-text, #1a1916) !important;
	text-shadow: none !important;
	letter-spacing: 0.02em !important;
}

.fmv-lp-top .fmv-lp-svc-grid__sub {
	font-size: 0.78rem !important;
	font-weight: 400 !important;
	color: var(--fmv-lp-muted, #6b6760) !important;
	text-shadow: none !important;
}

.fmv-lp-top .fmv-lp-svc-grid__arrow {
	position: static !important;
	margin-left: auto !important;
	align-self: center !important;
	color: var(--fmv-lp-accent, #1a2e4a) !important;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-radius: 0 !important;
	width: auto !important;
	height: auto !important;
	transition: transform 0.2s ease !important;
}

.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__arrow {
	transform: translateX(3px) !important;
}

/* ===========================================================
   7. VOICES — 横マーキー（詳細はファイル末尾の復活ブロック）
   =========================================================== */

/* ===========================================================
   8. FLOW — ジグザグタイムライン廃止 → 3 列の静かなステップ組み
   =========================================================== */
.fmv-lp-top .fmv-lp-flow__steps {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 2.4rem 2.4rem !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

@media (min-width: 768px) {
	.fmv-lp-top .fmv-lp-flow__steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.fmv-lp-top .fmv-lp-flow__steps::before,
.fmv-lp-top .fmv-lp-flow__steps::after {
	display: none !important;
}

.fmv-lp-top .fmv-lp-flow__step {
	position: static !important;
	display: block !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 1.4rem 0 0 !important;
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

.fmv-lp-top .fmv-lp-flow__step::before,
.fmv-lp-top .fmv-lp-flow__step::after {
	display: none !important;
}

.fmv-lp-top .fmv-lp-flow__num {
	position: static !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin: 0 0 0.5rem !important;
	transform: none !important;
}

.fmv-lp-top .fmv-lp-flow__num-text {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
	font-size: 1.7rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-accent, #1a2e4a) !important;
	line-height: 1 !important;
	text-shadow: none !important;
}

.fmv-lp-top .fmv-lp-flow__card {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto !important;
	max-width: none !important;
}

.fmv-lp-top .fmv-lp-flow__card-icon,
.fmv-lp-top .fmv-lp-flow__media,
.fmv-lp-top .fmv-lp-flow__card-next {
	display: none !important;
}

.fmv-lp-top .fmv-lp-flow__card-head {
	display: block !important;
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
	border: none !important;
}

.fmv-lp-top .fmv-lp-flow__card-label {
	font-family: 'Roboto', sans-serif !important;
	font-size: 0.64rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.3em !important;
	color: #a39e95 !important;
	text-transform: uppercase;
	margin: 0 0 0.35rem !important;
}

.fmv-lp-top .fmv-lp-flow__card-step {
	display: none !important;
}

.fmv-lp-top .fmv-lp-flow__card-title {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
	font-size: 1.12rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-text, #1a1916) !important;
	margin: 0 0 0.5rem !important;
}

.fmv-lp-top .fmv-lp-flow__card-text {
	font-size: 0.86rem !important;
	color: var(--fmv-lp-muted, #6b6760) !important;
	line-height: 1.9 !important;
	margin: 0 !important;
}

/* ===========================================================
   9. FAQ — 箱型アコーディオン → ヘアライン区切りの設問リスト
   =========================================================== */
.fmv-lp-top .fmv-lp-faq .fmv-lp-container {
	text-align: left;
}

.fmv-lp-top .fmv-lp-faq__list {
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

.fmv-lp-top .fmv-lp-faq__item {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--fmv-lp-rule, #ddd9d2) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin: 0 !important;
	overflow: visible !important;
}

.fmv-lp-top .fmv-lp-faq__q {
	background: transparent !important;
	padding: 1.3rem 0.25rem !important;
	font-size: 0.98rem !important;
	font-weight: 600 !important;
	color: var(--fmv-lp-text, #1a1916) !important;
}

.fmv-lp-top .fmv-lp-faq__qmark {
	color: var(--fmv-lp-accent, #1a2e4a) !important;
	background: none !important;
	border: none !important;
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
}

.fmv-lp-top .fmv-lp-faq__a {
	background: transparent !important;
	border: none !important;
	padding: 0 0.25rem 1.4rem !important;
	color: var(--fmv-lp-muted, #6b6760) !important;
	line-height: 1.95 !important;
}

.fmv-lp-top .fmv-lp-faq__amark {
	color: var(--fmv-lp-cta, #8b1a2e) !important;
	background: none !important;
	border: none !important;
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif) !important;
}

/* ===========================================================
   10. ABOUT ほか TOP 固有セクション（テキスト主体・左揃え）
   縦余白は lp-section-spacing.css（--fmv-lp-section-pad-y）で統一
   =========================================================== */
.fmv-lp-about__grid {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-areas:
		"head"
		"visual"
		"body";
	row-gap: clamp(0.9rem, 3vw, 1.4rem);
	column-gap: clamp(2rem, 4vw, 3.5rem);
	align-items: start;
}

/* SP：見出し → 写真 → 本文の順（子要素をグリッドに直接配置） */
.fmv-lp-about__content {
	display: contents;
}

.fmv-lp-about__content .fmv-lp-section-head {
	grid-area: head;
}

.fmv-lp-about__body {
	grid-area: body;
}

.fmv-lp-about__visual {
	grid-area: visual;
	margin: 0;
}

@media (min-width: 900px) {
	.fmv-lp-about__grid {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 400px);
		grid-template-areas: "content visual";
		gap: clamp(2.5rem, 5vw, 4.5rem);
		align-items: center;
	}

	.fmv-lp-about__content {
		display: block;
		grid-area: content;
		min-width: 0;
	}

	.fmv-lp-about__content .fmv-lp-section-head {
		grid-area: auto;
		margin-bottom: clamp(1.6rem, 3vw, 2.4rem);
	}

	.fmv-lp-about__body {
		grid-area: auto;
		margin-top: 1.6rem;
	}

	.fmv-lp-about__visual {
		grid-area: visual;
	}
}

.fmv-lp-about__img {
	display: block;
	width: 100%;
	height: auto;
	/* 写真言語を reasons/svc-grid（シャープ・編集組み）に統一。丸み・浮き影を抑える。 */
	border-radius: 2px;
	object-fit: cover;
	box-shadow: 0 14px 30px -16px rgba(26, 25, 22, 0.32);
}

.fmv-lp-top .fmv-lp-about__body,
.fmv-lp-top .fmv-lp-maintenance__note {
	max-width: 46rem;
	margin: 0;
	line-height: 2;
	color: var(--fmv-lp-muted, #6b6760);
	text-align: left;
}

/* ABOUT リード内の店名前置き語は本文と同一サイズ・ウェイトで統一 */
.fmv-lp-about__store-prefix {
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.fmv-lp-name-origin__layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2rem, 4vw, 3rem);
	align-items: center;
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

@media (min-width: 900px) {
	.fmv-lp-name-origin__layout {
		grid-template-columns: minmax(0, 1fr) minmax(240px, 340px);
		gap: clamp(2.5rem, 5vw, 4rem);
	}
}

.fmv-lp-name-origin__photos {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 0.85rem;
}

@media (min-width: 900px) {
	.fmv-lp-name-origin__photos {
		justify-content: flex-end;
	}
}

.fmv-lp-name-origin__photo {
	display: block;
	width: min(46%, 180px);
	height: auto;
	border-radius: 2px;
	object-fit: cover;
	box-shadow: 0 12px 26px -16px rgba(26, 25, 22, 0.3);
}

.fmv-lp-name-origin__photo--offset {
	margin-top: 1.75rem;
}

.fmv-lp-maintenance__grid,
.fmv-lp-body-repair__grid,
.fmv-lp-name-origin__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 3rem;
	max-width: none;
	margin: 0;
	border-top: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

@media (min-width: 768px) {
	.fmv-lp-maintenance__grid,
	.fmv-lp-body-repair__grid,
	.fmv-lp-name-origin__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

.fmv-lp-maintenance__card,
.fmv-lp-body-repair__card,
.fmv-lp-name-origin__card {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--fmv-lp-rule, #ddd9d2);
	border-radius: 0;
	padding: 1.6rem 0 1.5rem;
}

.fmv-lp-maintenance__tag,
.fmv-lp-body-repair__tag {
	font-family: 'Roboto', sans-serif;
	font-size: 0.66rem;
	font-weight: 500;
	letter-spacing: 0.28em;
	color: #a39e95;
	text-transform: uppercase;
	margin-bottom: 0.5rem;
}

.fmv-lp-maintenance__title,
.fmv-lp-body-repair__title,
.fmv-lp-name-origin__title {
	font-family: var(--fmv-lp-serif, "Noto Serif JP", serif);
	font-size: 1.08rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--fmv-lp-text, #1a1916);
}

.fmv-lp-maintenance__desc,
.fmv-lp-body-repair__desc,
.fmv-lp-name-origin__desc {
	font-size: 0.88rem;
	line-height: 1.9;
	color: var(--fmv-lp-muted, #6b6760);
}

/* --- pickup（対応エリア定義リスト） --- */
.fmv-lp-pickup__list {
	max-width: none;
	margin: 0;
}

.fmv-lp-top .fmv-lp-pickup__note {
	max-width: none;
	margin: 1.6rem 0 0;
	line-height: 2;
	color: var(--fmv-lp-muted, #6b6760);
	text-align: left;
}

.fmv-lp-pickup__row {
	display: grid;
	grid-template-columns: 7rem 1fr;
	gap: 0.75rem;
	padding: 0.9rem 0;
	border-bottom: 1px solid var(--fmv-lp-rule, #ddd9d2);
}

.fmv-lp-pickup__row dt {
	font-weight: 700;
	color: var(--fmv-lp-accent, #1a2e4a);
}

.fmv-lp-pickup__row dd {
	color: var(--fmv-lp-muted, #6b6760);
	line-height: 1.8;
	font-size: 0.9rem;
	min-width: 0;
	overflow-wrap: break-word;
	word-break: normal;
}

/* --- inspection 比較テーブル --- */
.fmv-lp-inspection__table-wrap {
	margin: 2rem 0 1.5rem;
	max-width: 720px;
	overflow-x: auto;
}

.fmv-lp-inspection__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.fmv-lp-inspection__table th,
.fmv-lp-inspection__table td {
	border: 1px solid var(--fmv-lp-rule, #ddd9d2);
	padding: 0.7rem 0.5rem;
	text-align: center;
}

.fmv-lp-inspection__table thead th {
	background: var(--fmv-lp-accent, #1a2e4a);
	color: #fff;
	font-weight: 600;
}

.fmv-lp-inspection__table tbody th {
	background: #f0ede7;
	font-weight: 700;
}

/* ===========================================================
   11. セクション余白 — --fmv-lp-section-pad-y で全ページ統一（lp-blocks-core.css 末尾）
   =========================================================== */

/* ===========================================================================
   ▼▼▼ v2「実直モダン（Grounded Modern）」上書き層 — 2026-06
   ゴシック体・ソリッドカード・ネイビー帯/くすみ赤帯で「実態」を出す。
   本層は末尾に置き、上の Editorial White ルールを後勝ちで上書きする。
   スコープは .fmv-lp-top（front-page）のみ。色軸 navy×くすみ赤は維持。
   =========================================================================== */

/* --- 0) トークン再定義（custom property はカスケード値で解決＝定義位置に依存しない） --- */
.fmv-lp-top {
	--fmv-lp-bg: #f4f5f7;
	--fmv-lp-bg-alt: #eceef2;
	--fmv-lp-card: #ffffff;
	--fmv-lp-text: #15171c;
	--fmv-lp-muted: #5b6270;
	--fmv-lp-accent: #16263f;
	--fmv-lp-accent-soft: #33496c;
	--fmv-lp-cta: #8b1a2e;
	--fmv-lp-cta-dark: #6e1424;
	--fmv-lp-rule: #e3e6ea;
	--fmv-lp-display: "Noto Sans JP", "Hiragino Sans", sans-serif;
	/* lp-section-head.css の見出し変数を上書き（明朝→ゴシック・くすみ赤ラベル） */
	--fmv-lp-head-serif: "Noto Sans JP", "Hiragino Sans", sans-serif;
	--fmv-lp-head-eyebrow-color: #98202f;
	--fmv-lp-head-title: #15171c;
	--dpt-card-shadow: 0 1px 2px rgba(20, 30, 50, 0.05), 0 10px 24px -16px rgba(20, 30, 50, 0.22);
}

/* --- 1) 見出し＝ゴシック太字（明朝の繊細さを廃す。左揃えは §2 を踏襲） --- */
.fmv-lp-top .fmv-lp-section-head__title,
.fmv-lp-top .fmv-lp-h2,
.fmv-lp-top .fmv-lp-concerns__h2,
.fmv-lp-top .fmv-lp-reasons__display,
.fmv-lp-top .fmv-lp-storefront__h2,
.fmv-lp-top .fmv-lp-svc-grid__h2,
.fmv-lp-top .fmv-lp-inspection__display,
.fmv-lp-top .fmv-lp-symptoms__h2,
.fmv-lp-top .fmv-lp-flow__h2,
.fmv-lp-top .fmv-lp-voices__h2,
.fmv-lp-top .fmv-lp-detail__display,
.fmv-lp-top .fmv-lp-brand-cov__h2,
.fmv-lp-top .fmv-lp-area-access__h2 {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 800 !important;
	letter-spacing: 0.01em !important;
	line-height: 1.42 !important;
	font-feature-settings: "palt" 1;
}

.fmv-lp-top .fmv-lp-section-head__accent,
.fmv-lp-top .fmv-lp-reasons__display-num,
.fmv-lp-top .fmv-lp-storefront__h2-accent,
.fmv-lp-top .fmv-lp-storefront__h2-strong,
.fmv-lp-top .fmv-lp-svc-grid__h2-strong,
.fmv-lp-top .fmv-lp-inspection__display-line--accent,
.fmv-lp-top .fmv-lp-flow__h2-strong {
	color: var(--fmv-lp-accent) !important;
	font-weight: 900 !important;
}

.fmv-lp-top .fmv-lp-section-head__eyebrow,
.fmv-lp-top .fmv-lp-concerns__eyebrow,
.fmv-lp-top .fmv-lp-reasons__eyebrow,
.fmv-lp-top .fmv-lp-storefront__eyebrow,
.fmv-lp-top .fmv-lp-svc-grid__eyebrow,
.fmv-lp-top .fmv-lp-inspection__eyebrow,
.fmv-lp-top .fmv-lp-symptoms__eyebrow,
.fmv-lp-top .fmv-lp-flow__eyebrow,
.fmv-lp-top .fmv-lp-voices__eyebrow,
.fmv-lp-top .fmv-lp-detail__eyebrow,
.fmv-lp-top .fmv-lp-brand-cov__eyebrow,
.fmv-lp-top .fmv-lp-area-access__eyebrow {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
	letter-spacing: 0.24em !important;
	color: var(--fmv-lp-cta) !important;
}

/* --- 2) 実情報の帯（ヒーロー直下・ネイビー）— "実態" の核 --- */
.fmv-lp-top .fmv-yamanashi-trust {
	background: var(--fmv-lp-accent);
	padding: clamp(1.3rem, 2.8vw, 1.9rem) 0;
}

.fmv-lp-top .fmv-yamanashi-trust__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	list-style: none;
	margin: 0;
	padding: 0;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.12);
}

@media (min-width: 768px) {
	.fmv-lp-top .fmv-yamanashi-trust__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.fmv-lp-top .fmv-yamanashi-trust__item {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.85rem 1.1rem;
	margin: 0;
	background: var(--fmv-lp-accent);
}

.fmv-lp-top .fmv-yamanashi-trust__label {
	font-family: var(--fmv-lp-display);
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	color: #9fb2cc;
}

.fmv-lp-top .fmv-yamanashi-trust__value {
	font-family: var(--fmv-lp-display);
	font-size: clamp(0.95rem, 1.6vw, 1.12rem);
	font-weight: 800;
	line-height: 1.4;
	color: #ffffff;
}

/* --- 3) HERO — ゴシック特大・強い CTA（横長写真は全幅維持） --- */
.fmv-lp-top .dpt-hero__eyebrow {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
	letter-spacing: 0.24em;
	color: var(--fmv-lp-cta);
}

.fmv-lp-top .dpt-hero__display {
	font-family: var(--fmv-lp-display);
	font-weight: 900;
	font-size: clamp(1.85rem, 4.6vw, 3rem);
	line-height: 1.34;
	letter-spacing: 0.005em;
	color: var(--fmv-lp-text);
}

.fmv-lp-top .dpt-hero__display-line--second {
	font-size: 0.56em;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--fmv-lp-accent);
}

.fmv-lp-top .dpt-hero__sub {
	font-weight: 500;
	color: var(--fmv-lp-text);
}

.fmv-lp-top .dpt-hero__cta-form {
	background: var(--fmv-lp-cta);
	font-weight: 800;
	font-size: 1rem;
	letter-spacing: 0.04em;
	padding: 1.05rem 1.9rem;
	border-radius: 6px;
}

.fmv-lp-top .dpt-hero__cta-tel-num {
	font-family: var(--fmv-lp-display);
	font-weight: 900;
	color: var(--fmv-lp-accent);
}

.fmv-lp-top .dpt-hero__band-lead,
.fmv-lp-top .dpt-hero__band-store,
.fmv-lp-top .dpt-hero__band-area {
	font-family: var(--fmv-lp-display);
}

.fmv-lp-top .dpt-hero__band-lead,
.fmv-lp-top .dpt-hero__band-store {
	font-weight: 700;
}

/* ヒーロー直下イントロは焼き込みバナーと重複のため非表示（2026-06-12 クライアント指定） */
.fmv-lp-top .dpt-hero__intro {
	display: none !important;
}

/* --- 4) CONCERNS — 白ソリッドカード --- */
.fmv-lp-top .fmv-lp-concerns__grid {
	gap: 1rem !important;
	border-top: none !important;
}

@media (min-width: 768px) {
	.fmv-lp-top .fmv-lp-concerns__grid {
		gap: 1.1rem !important;
	}
}

.fmv-lp-top .fmv-lp-concerns__card {
	background: var(--fmv-lp-card) !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	border-radius: 8px !important;
	box-shadow: var(--dpt-card-shadow) !important;
	padding: 1.5rem 1.5rem 1.4rem !important;
}

.fmv-lp-top .fmv-lp-concerns__card:hover {
	border-color: rgba(22, 38, 63, 0.35) !important;
}

.fmv-lp-top .fmv-lp-concerns__num {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 900 !important;
	color: var(--fmv-lp-cta) !important;
}

.fmv-lp-top .fmv-lp-concerns__title {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
}

/* --- 5) REASONS — 写真付きソリッドカード（番号は写真上のチップ） --- */
.fmv-lp-top .fmv-lp-reasons__cards {
	gap: 1.2rem !important;
}

.fmv-lp-top .fmv-lp-reasons__card {
	background: var(--fmv-lp-card) !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	border-radius: 8px !important;
	box-shadow: var(--dpt-card-shadow) !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
}

.fmv-lp-top .fmv-lp-reasons__media {
	border-radius: 0 !important;
	aspect-ratio: 16 / 10 !important;
	margin: 0 !important;
}

.fmv-lp-top .fmv-lp-reasons__num-badge {
	position: absolute !important;
	top: 0.6rem !important;
	left: 0.6rem !important;
	flex-direction: row !important;
	align-items: baseline !important;
	gap: 0.45rem !important;
	padding: 0.3rem 0.6rem !important;
	background: rgba(22, 38, 63, 0.92) !important;
	border-radius: 4px !important;
}

.fmv-lp-top .fmv-lp-reasons__num {
	font-family: var(--fmv-lp-display) !important;
	font-size: 1rem !important;
	font-weight: 900 !important;
	color: #ffffff !important;
}

.fmv-lp-top .fmv-lp-reasons__meta {
	color: #9fb2cc !important;
	font-size: 0.56rem !important;
}

.fmv-lp-top .fmv-lp-reasons__content {
	padding: 1.1rem 1.25rem 1.4rem !important;
}

.fmv-lp-top .fmv-lp-reasons__title {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
	font-size: 1.15rem !important;
}

/* --- 6) STOREFRONT — ゴシックのメーカー名（タイルは踏襲） --- */
.fmv-lp-top .fmv-lp-storefront__maker-name {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
}

.fmv-lp-top .fmv-lp-storefront__maker-link:hover .fmv-lp-storefront__maker-name {
	color: var(--fmv-lp-accent);
}

/* --- 7) SERVICE GRID — 写真付きソリッドカード --- */
.fmv-lp-top .fmv-lp-svc-grid__list {
	gap: 1.2rem !important;
}

.fmv-lp-top .fmv-lp-svc-grid__card {
	background: var(--fmv-lp-card) !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	border-radius: 8px !important;
	box-shadow: var(--dpt-card-shadow) !important;
	overflow: hidden !important;
}

.fmv-lp-top .fmv-lp-svc-grid__body {
	padding: 0.95rem 1.1rem 1.1rem !important;
}

.fmv-lp-top .fmv-lp-svc-grid__num {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 900 !important;
}

.fmv-lp-top .fmv-lp-svc-grid__title {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
}

/* --- 8) VOICES — 白カードの引用（6 件） --- */
.fmv-lp-top .fmv-lp-voices__track {
	gap: 1.2rem !important;
}

.fmv-lp-top .fmv-lp-voices__card {
	background: var(--fmv-lp-card) !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	border-top: 1px solid var(--fmv-lp-rule) !important;
	border-radius: 8px !important;
	box-shadow: var(--dpt-card-shadow) !important;
	padding: 1.4rem 1.4rem 1.5rem !important;
}

.fmv-lp-top .fmv-lp-voices__title {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
}

/* --- 9) INSPECTION — before/after ソリッド＋比較表で「当店」列を強調 --- */
.fmv-lp-top .fmv-lp-inspection__compare {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	margin: 1.5rem 0;
}

@media (min-width: 768px) {
	.fmv-lp-top .fmv-lp-inspection__compare {
		grid-template-columns: 1fr 1fr;
	}
}

.fmv-lp-top .fmv-lp-inspection__col {
	border-radius: 8px !important;
	padding: 1.4rem 1.5rem !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	background: var(--fmv-lp-card) !important;
}

.fmv-lp-top .fmv-lp-inspection__col--before {
	background: var(--fmv-lp-bg-alt) !important;
}

.fmv-lp-top .fmv-lp-inspection__col--after {
	border-color: var(--fmv-lp-accent) !important;
	box-shadow: inset 0 0 0 1px var(--fmv-lp-accent) !important;
}

.fmv-lp-top .fmv-lp-inspection__col-tag {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--fmv-lp-muted);
}

.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__col-tag {
	color: var(--fmv-lp-cta);
}

.fmv-lp-top .fmv-lp-inspection__col-headline {
	font-family: var(--fmv-lp-display);
	font-weight: 800;
}

/* inspection__table の意匠は lp-blocks-core.css（.fmv-lp-shell・①統一版）へ移管 */

.fmv-lp-top .fmv-lp-inspection__closer {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
}

/* --- 10) FLOW — ソリッドカード＋大ゴシック番号 --- */
.fmv-lp-top .fmv-lp-flow__steps {
	gap: 1.2rem !important;
}

.fmv-lp-top .fmv-lp-flow__step {
	border-top: none !important;
	padding: 1.4rem 1.5rem 1.5rem !important;
	background: var(--fmv-lp-card) !important;
	border: 1px solid var(--fmv-lp-rule) !important;
	border-radius: 8px !important;
	box-shadow: var(--dpt-card-shadow) !important;
	overflow: hidden !important;
}

.fmv-lp-top .fmv-lp-flow__card {
	padding: 0 !important;
}

.fmv-lp-top .fmv-lp-flow__num {
	margin: 0 0 0.4rem !important;
}

.fmv-lp-top .fmv-lp-flow__num-text {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 900 !important;
	color: var(--fmv-lp-cta) !important;
}

.fmv-lp-top .fmv-lp-flow__card-title {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
}

/* --- 11) FAQ — 白カード内のヘアライン設問・ゴシック Q --- */
.fmv-lp-top .fmv-lp-faq__list {
	background: var(--fmv-lp-card);
	border: 1px solid var(--fmv-lp-rule);
	border-radius: 8px;
	box-shadow: var(--dpt-card-shadow);
	padding: 0 1.4rem;
	overflow: hidden;
}

.fmv-lp-top .fmv-lp-faq__q {
	font-family: var(--fmv-lp-display) !important;
	font-weight: 700 !important;
}

.fmv-lp-top .fmv-lp-faq__item:last-child {
	border-bottom: none !important;
}

/* --- 12) 最終 CTA 帯 — lp-blocks-core.css で全LP共通定義（TOP専用上書きは廃止） --- */

/* --- 13) ABOUT/整備/板金/名前の由来 — 見出しゴシック・写真の角丸を抑える --- */
.fmv-lp-top .fmv-lp-maintenance__title,
.fmv-lp-top .fmv-lp-body-repair__title,
.fmv-lp-top .fmv-lp-name-origin__title {
	font-family: var(--fmv-lp-display);
	font-weight: 700;
}

.fmv-lp-top .fmv-lp-about__img,
.fmv-lp-top .fmv-lp-name-origin__photo {
	border-radius: 6px;
}

/* ===== DPK-LIVE-EDITS（ライブ編集の追記領域・このマーカー直後に1送信ごとの差分が入る） ===== */
/* セクション縦パディングは lp-section-head.css / lp-blocks-core.css 末尾で統一 */

/* SERVICE GRID 洗練（reasonsと同系・ホバー浮き＋画像ズーム） */
.fmv-lp-top .fmv-lp-svc-grid__list { gap: 1.5rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__card { border: 1px solid #e7e9ee !important; border-radius: 10px !important; box-shadow: 0 1px 2px rgba(20,30,50,.04), 0 16px 32px -22px rgba(20,30,50,.30) !important; transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s, border-color .28s !important; }
.fmv-lp-top .fmv-lp-svc-grid__card:hover { transform: translateY(-4px) !important; border-color: #dfe3ea !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 28px 46px -26px rgba(20,30,50,.42) !important; }
.fmv-lp-top .fmv-lp-svc-grid__media { overflow: hidden !important; }
.fmv-lp-top .fmv-lp-svc-grid__img { transition: transform .65s cubic-bezier(.22,1,.36,1) !important; }
.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__img { transform: scale(1.05) !important; }
.fmv-lp-top .fmv-lp-svc-grid__body { padding: 1.05rem 1.3rem 1.25rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__num { color: #8b1a2e !important; }
.fmv-lp-top .fmv-lp-svc-grid__title { font-size: 1.05rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__arrow { transform: translateX(4px) !important; }

/* INSPECTION 比較表は①意匠で全ページ統一 → lp-blocks-core.css（.fmv-lp-shell）へ移管（重複定義撤去） */

/* NAME-ORIGIN レイアウト改善（2枚を等幅3:4・object-fit cover・PC列比率調整） */
.fmv-lp-top .fmv-lp-name-origin__photos { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: .8rem !important; align-items: start !important; justify-content: stretch !important; }
.fmv-lp-top .fmv-lp-name-origin__photo { width: 100% !important; max-width: none !important; aspect-ratio: 3 / 4 !important; object-fit: cover !important; border-radius: 8px !important; box-shadow: 0 14px 30px -18px rgba(20,30,50,.34) !important; }
.fmv-lp-top .fmv-lp-name-origin__photo--offset { margin-top: 1.6rem !important; }
@media (min-width: 900px) { .fmv-lp-top .fmv-lp-name-origin__layout { grid-template-columns: minmax(0, 1fr) minmax(300px, 380px) !important; gap: clamp(2.5rem, 5vw, 4rem) !important; align-items: center !important; } }

/* REASONS 番号バッジ: 旧・高さ100%の縦ストリップを内容高さに戻し左上コンパクトチップ化 */
.fmv-lp-top .fmv-lp-reasons__num-badge { height: auto !important; min-height: 0 !important; max-height: none !important; bottom: auto !important; right: auto !important; align-items: center !important; align-self: flex-start !important; }

/* INSPECTION before/after 対比の洗練（before=沈むグレー／after=白+ネイビー枠で勝者化・✕✓アイコン） */
.fmv-lp-top .fmv-lp-inspection__compare { gap: 1.25rem !important; align-items: stretch !important; }
@media (min-width: 768px) { .fmv-lp-top .fmv-lp-inspection__compare { grid-template-columns: 1fr 1.08fr !important; } }
.fmv-lp-top .fmv-lp-inspection__col { position: relative !important; border-radius: 12px !important; padding: 1.6rem 1.7rem !important; }
.fmv-lp-top .fmv-lp-inspection__col--before { background: #f1f2f4 !important; border: 1px solid #e3e6ea !important; box-shadow: none !important; }
.fmv-lp-top .fmv-lp-inspection__col--after { background: #fff !important; border: 1.5px solid #16263f !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 22px 44px -26px rgba(20,30,50,.4) !important; }
.fmv-lp-top .fmv-lp-inspection__col-tag { display: inline-flex !important; align-items: center !important; gap: .4rem !important; padding: .28rem .8rem !important; border-radius: 999px !important; font-size: .72rem !important; font-weight: 700 !important; letter-spacing: .06em !important; margin: 0 0 .9rem !important; }
.fmv-lp-top .fmv-lp-inspection__col--before .fmv-lp-inspection__col-tag { background: #e2e4e8 !important; color: #6b7280 !important; }
.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__col-tag { background: #8b1a2e !important; color: #fff !important; }
.fmv-lp-top .fmv-lp-inspection__col-headline { font-size: clamp(1.05rem, 2vw, 1.3rem) !important; line-height: 1.5 !important; margin: 0 0 1.1rem !important; font-weight: 800 !important; }
.fmv-lp-top .fmv-lp-inspection__col--before .fmv-lp-inspection__col-headline { color: #5b6270 !important; }
.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__col-headline { color: #16263f !important; }
.fmv-lp-top .fmv-lp-inspection__amount { color: #b91c1c !important; font-weight: 900 !important; }
.fmv-lp-top .fmv-lp-inspection__highlight { color: #8b1a2e !important; font-weight: 900 !important; border-bottom: 3px solid #f0c9d0 !important; padding-bottom: .04em !important; }
.fmv-lp-top .fmv-lp-inspection__list { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: .6rem !important; }
.fmv-lp-top .fmv-lp-inspection__list li { position: relative !important; padding-left: 1.75rem !important; font-size: .9rem !important; line-height: 1.7 !important; }
.fmv-lp-top .fmv-lp-inspection__col--before .fmv-lp-inspection__list li { color: #6b7280 !important; }
.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__list li { color: #1f2937 !important; }
.fmv-lp-top .fmv-lp-inspection__list li::before { content: ''; position: absolute !important; left: 0; top: .18rem; width: 1.2rem; height: 1.2rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: .74rem; font-weight: 900; line-height: 1; }
.fmv-lp-top .fmv-lp-inspection__col--before .fmv-lp-inspection__list li::before { content: '×'; background: #e2e4e8; color: #9aa0aa; }
.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__list li::before { content: '✓'; background: #e7f0ea; color: #15803d; }

/* SERVICE GRID コンパクト化（写真16:9・本文引き締め・3列維持で高さ圧縮） */
.fmv-lp-top .fmv-lp-svc-grid__list { gap: 1.1rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__media { aspect-ratio: 16 / 9 !important; }
.fmv-lp-top .fmv-lp-svc-grid__body { padding: .7rem .95rem .85rem !important; gap: .12rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__num { font-size: .82rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__title { font-size: .95rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__sub { font-size: .72rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__card { border-radius: 9px !important; }
/* svc-grid 番号を左詰め（中央寄せの箱→内容幅・左揃え） */
.fmv-lp-top .fmv-lp-svc-grid__body { align-items: flex-start !important; }
.fmv-lp-top .fmv-lp-svc-grid__num { display: inline-block !important; width: auto !important; min-width: 0 !important; text-align: left !important; align-self: flex-start !important; justify-content: flex-start !important; }

/* svc-grid カードの作り込み（番号罫・ホバー下線・写真スクリム・円形矢印ボタン） */
.fmv-lp-top .fmv-lp-svc-grid__card { position: relative !important; }
.fmv-lp-top .fmv-lp-svc-grid__scrim { display: block !important; position: absolute !important; inset: 0 !important; background: #16263f !important; opacity: 0 !important; transition: opacity .3s ease !important; pointer-events: none; }
.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__scrim { opacity: .14 !important; }
.fmv-lp-top .fmv-lp-svc-grid__body { position: relative !important; padding: .85rem 1rem 1.05rem !important; gap: .32rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__num { color: #8b1a2e !important; font-weight: 900 !important; font-size: .8rem !important; letter-spacing: .06em !important; display: inline-flex !important; align-items: center !important; gap: .5rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__num::after { content: '' !important; display: inline-block; width: 18px; height: 2px; background: #dfe3ea; }
.fmv-lp-top .fmv-lp-svc-grid__heading { padding-right: 2.5rem !important; }
.fmv-lp-top .fmv-lp-svc-grid__title { position: relative !important; font-size: .98rem !important; padding-bottom: .16rem !important; display: inline-block !important; }
.fmv-lp-top .fmv-lp-svc-grid__title::after { content: '' !important; position: absolute; left: 0; bottom: 0; width: 0; height: 2px; background: #8b1a2e; transition: width .35s cubic-bezier(.22,1,.36,1); }
.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__title::after { width: 100% !important; }
.fmv-lp-top .fmv-lp-svc-grid__arrow { position: absolute !important; right: 1rem !important; bottom: 1rem !important; width: 30px !important; height: 30px !important; border-radius: 50% !important; border: 1.5px solid #16263f !important; color: #16263f !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: background .25s, color .25s, transform .25s !important; margin: 0 !important; background: transparent !important; }
.fmv-lp-top .fmv-lp-svc-grid__card:hover .fmv-lp-svc-grid__arrow { background: #16263f !important; color: #fff !important; }
.fmv-lp-top .fmv-lp-svc-grid__arrow svg { width: 15px !important; height: 15px !important; }

/* INSPECTION マーク刷新（グリフ円→CSS描画チェック／before=控えめダッシュ／強調語の下線廃止） */
.fmv-lp-top .fmv-lp-inspection__list li { padding-left: 1.65rem !important; }
.fmv-lp-top .fmv-lp-inspection__list li::before { content: '' !important; background: none !important; border: 0 !important; border-radius: 0 !important; width: auto !important; height: auto !important; display: block !important; font-size: 0 !important; }
.fmv-lp-top .fmv-lp-inspection__col--after .fmv-lp-inspection__list li::before { content: '' !important; position: absolute !important; left: .18rem !important; top: .42rem !important; width: .5rem !important; height: .28rem !important; border-left: 2.5px solid #15803d !important; border-bottom: 2.5px solid #15803d !important; border-top: 0 !important; border-right: 0 !important; transform: rotate(-45deg) !important; background: none !important; border-radius: 0 !important; }
.fmv-lp-top .fmv-lp-inspection__col--before .fmv-lp-inspection__list li::before { content: '' !important; position: absolute !important; left: .1rem !important; top: .82rem !important; width: .72rem !important; height: 2px !important; background: #bcc0c7 !important; border: 0 !important; transform: none !important; border-radius: 1px !important; }
.fmv-lp-top .fmv-lp-inspection__highlight { border-bottom: 0 !important; padding-bottom: 0 !important; color: #8b1a2e !important; font-weight: 900 !important; }

/* INSPECTION 比較表は①意匠で全ページ統一 → lp-blocks-core.css の .fmv-lp-shell 版に移管（重複定義撤去） */

/* SYMPTOMS を別意匠（カードグリッド廃止 → インデックス番号＋見出し / 症状はタグ表示の編集的2カラム） */
.fmv-lp-top .fmv-lp-symptoms__list { display: flex !important; flex-direction: column !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; list-style: none !important; border-top: 1px solid var(--fmv-lp-rule) !important; max-width: none !important; }
.fmv-lp-top .fmv-lp-symptoms__cat { display: grid !important; grid-template-columns: 1fr !important; gap: .9rem 2.5rem !important; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--fmv-lp-rule) !important; border-radius: 0 !important; box-shadow: none !important; padding: 1.9rem 0 !important; margin: 0 !important; width: auto !important; max-width: none !important; }
@media (min-width: 860px) { .fmv-lp-top .fmv-lp-symptoms__cat { grid-template-columns: minmax(190px, 240px) 1fr !important; align-items: start !important; } }
.fmv-lp-top .fmv-lp-symptoms__cat-head { display: block !important; border: 0 !important; padding: 0 !important; margin: 0 !important; background: transparent !important; gap: 0 !important; }
.fmv-lp-top .fmv-lp-symptoms__cat-num { font-family: var(--fmv-lp-display) !important; font-size: 1.9rem !important; font-weight: 900 !important; color: #d3d9e1 !important; display: block !important; line-height: 1 !important; margin: 0 0 .4rem !important; background: none !important; width: auto !important; height: auto !important; border-radius: 0 !important; }
.fmv-lp-top .fmv-lp-symptoms__cat-label { font-family: var(--fmv-lp-display) !important; font-size: .62rem !important; font-weight: 700 !important; letter-spacing: .24em !important; color: #8b1a2e !important; margin: 0 0 .25rem !important; }
.fmv-lp-top .fmv-lp-symptoms__cat-title { font-family: var(--fmv-lp-display) !important; font-size: 1.22rem !important; font-weight: 800 !important; color: var(--fmv-lp-text) !important; margin: 0 0 .25rem !important; }
.fmv-lp-top .fmv-lp-symptoms__cat-sub { font-size: .8rem !important; color: var(--fmv-lp-muted) !important; margin: 0 !important; }
.fmv-lp-top .fmv-lp-symptoms__items { display: flex !important; flex-wrap: wrap !important; gap: .5rem !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.fmv-lp-top .fmv-lp-symptoms__item { display: inline-flex !important; align-items: center !important; background: #fff !important; border: 1px solid var(--fmv-lp-rule) !important; border-radius: 999px !important; padding: .42rem .9rem !important; font-size: .82rem !important; color: #33414f !important; line-height: 1.3 !important; transition: border-color .2s, color .2s, background .2s !important; margin: 0 !important; }
.fmv-lp-top .fmv-lp-symptoms__item:hover { border-color: var(--fmv-lp-accent) !important; color: var(--fmv-lp-accent) !important; background: #f7f8fa !important; }
.fmv-lp-top .fmv-lp-symptoms__item::before { display: none !important; }

/* name-origin の価値カード（4個）を均等に：SP1列 / タブレット2×2 / PC4列1行（3+1の不均衡を解消） */
@media (min-width: 768px) { .fmv-lp-top .fmv-lp-name-origin__grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (min-width: 1024px) { .fmv-lp-top .fmv-lp-name-origin__grid { grid-template-columns: repeat(4, 1fr) !important; } }

/* FLOW: 半端な矢印を一掃し、ステップ間に洗練された薄いシェブロン連結（01 › 02 › 03） */
.fmv-lp-top .fmv-lp-flow__card-next { display: none !important; }
.fmv-lp-top .fmv-lp-flow__card::before, .fmv-lp-top .fmv-lp-flow__card::after, .fmv-lp-top .fmv-lp-flow__card-head::before, .fmv-lp-top .fmv-lp-flow__card-head::after, .fmv-lp-top .fmv-lp-flow__num::before, .fmv-lp-top .fmv-lp-flow__num::after, .fmv-lp-top .fmv-lp-flow__step::before { content: none !important; display: none !important; }
.fmv-lp-top .fmv-lp-flow__step { position: relative !important; }
@media (min-width: 768px) {
  .fmv-lp-top .fmv-lp-flow__step:not(:nth-child(3n))::after { content: '' !important; display: block !important; position: absolute !important; top: 2.4rem !important; right: -1.05rem !important; width: 11px !important; height: 11px !important; border: 0 !important; border-top: 2.5px solid #b9c1cc !important; border-right: 2.5px solid #b9c1cc !important; transform: rotate(45deg) !important; background: none !important; box-shadow: none !important; border-radius: 1px !important; }
  .fmv-lp-top .fmv-lp-flow__step:nth-child(3n)::after { content: none !important; display: none !important; }
}

/* SERVICE CATALOG 写真を復活（横長カード：写真左38%＋本文右・num/tagは写真上にチップ）— 文字版を上書き */
.fmv-lp-top .fmv-lp-detail__grid { display: grid !important; grid-template-columns: 1fr !important; gap: 1.25rem !important; border-top: 0 !important; }
@media (min-width: 768px) { .fmv-lp-top .fmv-lp-detail__grid { grid-template-columns: repeat(2, 1fr) !important; column-gap: 1.5rem !important; } }
.fmv-lp-top .fmv-lp-detail__card { display: grid !important; grid-template-columns: 38% 1fr !important; column-gap: 0 !important; background: #fff !important; border: 1px solid var(--fmv-lp-rule) !important; border-radius: 10px !important; box-shadow: 0 1px 2px rgba(20,30,50,.04), 0 14px 30px -22px rgba(20,30,50,.28) !important; overflow: hidden !important; padding: 0 !important; align-items: stretch !important; transition: transform .25s, box-shadow .25s !important; }
.fmv-lp-top .fmv-lp-detail__card:hover { transform: translateY(-3px) !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 24px 42px -26px rgba(20,30,50,.4) !important; }
.fmv-lp-top .fmv-lp-detail__media { display: block !important; position: relative !important; aspect-ratio: auto !important; height: 100% !important; min-height: 128px !important; width: auto !important; overflow: hidden !important; margin: 0 !important; background: #eceef2 !important; border-radius: 0 !important; }
.fmv-lp-top .fmv-lp-detail__img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .6s cubic-bezier(.22,1,.36,1) !important; }
.fmv-lp-top .fmv-lp-detail__card:hover .fmv-lp-detail__img { transform: scale(1.05) !important; }
.fmv-lp-top .fmv-lp-detail__media-cap { position: absolute !important; top: .55rem !important; left: .55rem !important; display: inline-flex !important; flex-direction: row !important; align-items: baseline !important; gap: .4rem !important; background: rgba(22,38,63,.92) !important; border-radius: 4px !important; padding: .25rem .55rem !important; inset: auto auto auto .55rem; }
.fmv-lp-top .fmv-lp-detail__num { font-family: var(--fmv-lp-display) !important; font-size: .92rem !important; font-weight: 900 !important; color: #fff !important; line-height: 1 !important; background: none !important; padding: 0 !important; }
.fmv-lp-top .fmv-lp-detail__tag { font-family: var(--fmv-lp-display) !important; font-size: .52rem !important; font-weight: 700 !important; letter-spacing: .18em !important; color: #9fb2cc !important; background: none !important; padding: 0 !important; border: 0 !important; }
.fmv-lp-top .fmv-lp-detail__body { padding: 1rem 1.15rem 1.1rem !important; }
.fmv-lp-top .fmv-lp-detail__title { font-family: var(--fmv-lp-display) !important; font-size: 1.02rem !important; font-weight: 800 !important; margin: 0 0 .2rem !important; }
.fmv-lp-top .fmv-lp-detail__sub { font-size: .8rem !important; font-weight: 700 !important; color: var(--fmv-lp-accent) !important; margin: 0 0 .4rem !important; }
.fmv-lp-top .fmv-lp-detail__text { font-size: .8rem !important; color: var(--fmv-lp-muted) !important; line-height: 1.8 !important; margin: 0 !important; }
/* detail 画像を4:3固定で揃える（1枚だけ縦長になる問題を解消） */
.fmv-lp-top .fmv-lp-detail__card { align-items: start !important; }
.fmv-lp-top .fmv-lp-detail__media { height: auto !important; min-height: 0 !important; aspect-ratio: 4 / 3 !important; align-self: start !important; }
.fmv-lp-top .fmv-lp-detail__img { height: 100% !important; }

/* MAINTENANCE を作り込み（白ソリッド＋ネイビー上アクセントのタブ型カード・ホバー浮き） */
.fmv-lp-top .fmv-lp-maintenance__grid { border-top: 0 !important; gap: 1.1rem !important; margin-top: .5rem !important; }
@media (min-width: 768px) { .fmv-lp-top .fmv-lp-maintenance__grid { grid-template-columns: repeat(3, 1fr) !important; } }
.fmv-lp-top .fmv-lp-maintenance__card { background: #fff !important; border: 1px solid var(--fmv-lp-rule) !important; border-top: 3px solid var(--fmv-lp-accent) !important; border-radius: 0 0 9px 9px !important; box-shadow: 0 1px 2px rgba(20,30,50,.04), 0 12px 26px -20px rgba(20,30,50,.26) !important; padding: 1.35rem 1.4rem 1.5rem !important; transition: transform .25s, box-shadow .25s !important; }
.fmv-lp-top .fmv-lp-maintenance__card:hover { transform: translateY(-3px) !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 22px 40px -24px rgba(20,30,50,.4) !important; }
.fmv-lp-top .fmv-lp-maintenance__tag { color: #8b1a2e !important; font-weight: 700 !important; letter-spacing: .2em !important; }
.fmv-lp-top .fmv-lp-maintenance__title { font-family: var(--fmv-lp-display) !important; font-weight: 800 !important; font-size: 1.1rem !important; }
.fmv-lp-top .fmv-lp-maintenance__desc { color: var(--fmv-lp-muted) !important; line-height: 1.85 !important; }

/* maintenance + body-repair を統一・高級エディトリアルへ（影付きタブカード=AIっぽさを廃し、列間ヘアライン罫＋罫付きエルブロウ＋ゴシック特大見出し） */
.fmv-lp-top .fmv-lp-maintenance__grid, .fmv-lp-top .fmv-lp-body-repair__grid { border-top: 1px solid var(--fmv-lp-rule) !important; gap: 0 !important; margin-top: .2rem !important; }
@media (min-width: 768px) { .fmv-lp-top .fmv-lp-maintenance__grid, .fmv-lp-top .fmv-lp-body-repair__grid { grid-template-columns: repeat(3, 1fr) !important; } }
.fmv-lp-top .fmv-lp-maintenance__card, .fmv-lp-top .fmv-lp-body-repair__card { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important; padding: 1.9rem 0 1.7rem 0 !important; position: relative !important; }
.fmv-lp-top .fmv-lp-maintenance__card:hover, .fmv-lp-top .fmv-lp-body-repair__card:hover { transform: none !important; box-shadow: none !important; }
@media (min-width: 768px) {
  .fmv-lp-top .fmv-lp-maintenance__card, .fmv-lp-top .fmv-lp-body-repair__card { padding-left: 2rem !important; padding-right: 2rem !important; }
  .fmv-lp-top .fmv-lp-maintenance__card:nth-child(3n+1), .fmv-lp-top .fmv-lp-body-repair__card:nth-child(3n+1) { padding-left: 0 !important; }
  .fmv-lp-top .fmv-lp-maintenance__card:not(:nth-child(3n)), .fmv-lp-top .fmv-lp-body-repair__card:not(:nth-child(3n)) { border-right: 1px solid var(--fmv-lp-rule) !important; }
}
.fmv-lp-top .fmv-lp-maintenance__tag, .fmv-lp-top .fmv-lp-body-repair__tag { display: inline-flex !important; align-items: center !important; gap: .55rem !important; font-family: var(--fmv-lp-display) !important; font-size: .6rem !important; font-weight: 700 !important; letter-spacing: .26em !important; color: #8b1a2e !important; margin-bottom: .75rem !important; }
.fmv-lp-top .fmv-lp-maintenance__tag::before, .fmv-lp-top .fmv-lp-body-repair__tag::before { content: '' !important; width: 18px; height: 1px; background: #8b1a2e; display: inline-block; }
.fmv-lp-top .fmv-lp-maintenance__title, .fmv-lp-top .fmv-lp-body-repair__title { font-family: var(--fmv-lp-display) !important; font-weight: 800 !important; font-size: 1.18rem !important; letter-spacing: .01em !important; margin: 0 0 .6rem !important; line-height: 1.5 !important; }
.fmv-lp-top .fmv-lp-maintenance__desc, .fmv-lp-top .fmv-lp-body-repair__desc { font-size: .86rem !important; color: var(--fmv-lp-muted) !important; line-height: 1.95 !important; margin: 0 !important; }

/* inspection「当店」列：ネイビー全周ボーダー(上線が浮く)→淡ボーダー＋浮き影で洗練 */
.fmv-lp-top .fmv-lp-inspection__col--after { border: 1px solid #dfe3ea !important; border-top: 1px solid #dfe3ea !important; border-radius: 12px !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 18px 40px -26px rgba(20,30,50,.4) !important; }

.fmv-lp-top .fmv-yamanashi-trust { display: none !important; } /* 削除: ヒーロー下の数値帯 */
.fmv-lp-top .fmv-lp-container { max-width: 1120px !important; padding-left: 1.25rem !important; padding-right: 1.25rem !important; margin-left: auto !important; margin-right: auto !important; } /* コンテナ幅・左右余白をページ全体で統一 */

/* REASONS カード洗練（ホバー浮き＋画像ズーム＋見出し下の赤罫・階層整理） */
.fmv-lp-top .fmv-lp-reasons__cards { gap: 1.5rem !important; }
.fmv-lp-top .fmv-lp-reasons__card { border: 1px solid #e7e9ee !important; border-radius: 10px !important; box-shadow: 0 1px 2px rgba(20,30,50,.04), 0 16px 32px -22px rgba(20,30,50,.30) !important; transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s, border-color .28s !important; }
.fmv-lp-top .fmv-lp-reasons__card:hover { transform: translateY(-4px) !important; border-color: #dfe3ea !important; box-shadow: 0 1px 2px rgba(20,30,50,.05), 0 28px 46px -26px rgba(20,30,50,.42) !important; }
.fmv-lp-top .fmv-lp-reasons__media { aspect-ratio: 16 / 10 !important; overflow: hidden !important; }
.fmv-lp-top .fmv-lp-reasons__img { transition: transform .65s cubic-bezier(.22,1,.36,1) !important; }
.fmv-lp-top .fmv-lp-reasons__card:hover .fmv-lp-reasons__img { transform: scale(1.045) !important; }
.fmv-lp-top .fmv-lp-reasons__num-badge { top: .7rem !important; left: .7rem !important; gap: .5rem !important; padding: .34rem .66rem !important; background: rgba(22,38,63,.94) !important; border-radius: 5px !important; }
.fmv-lp-top .fmv-lp-reasons__num { font-size: 1.02rem !important; }
.fmv-lp-top .fmv-lp-reasons__meta { color: #cdd8e6 !important; font-size: .58rem !important; letter-spacing: .24em !important; font-weight: 700 !important; }
.fmv-lp-top .fmv-lp-reasons__content { padding: 1.3rem 1.4rem 1.55rem !important; }
.fmv-lp-top .fmv-lp-reasons__title { font-size: 1.22rem !important; line-height: 1.45 !important; letter-spacing: .01em !important; margin: 0 0 .55rem !important; padding-bottom: .7rem !important; position: relative; }
.fmv-lp-top .fmv-lp-reasons__title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 34px; height: 2px; background: #8b1a2e; }
.fmv-lp-top .fmv-lp-reasons__card-lead { color: #16263f !important; font-size: .9rem !important; font-weight: 700 !important; margin: 0 0 .5rem !important; }
.fmv-lp-top .fmv-lp-reasons__desc { color: #5b6270 !important; font-size: .85rem !important; line-height: 1.95 !important; }

/* VOICES 無限横マーキー（実12＋複製12の2セットを -50% でシームレス送り・ホバー停止・両端フェード） */
.fmv-lp-top .fmv-lp-voices__viewport { overflow: hidden !important; padding: 1rem 0 !important; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent) !important; mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent) !important; }
.fmv-lp-top .fmv-lp-voices__track { display: flex !important; flex-wrap: nowrap !important; width: max-content !important; max-width: none !important; margin: 0 !important; padding: 0 !important; gap: 1.25rem !important; animation: fmv-lp-voices-marquee 80s linear infinite !important; will-change: transform; }
.fmv-lp-top .fmv-lp-voices__viewport:hover .fmv-lp-voices__track,
.fmv-lp-top .fmv-lp-voices__viewport:focus-within .fmv-lp-voices__track { animation-play-state: paused !important; }
.fmv-lp-top .fmv-lp-voices__card,
.fmv-lp-top .fmv-lp-voices__card[aria-hidden="true"],
.fmv-lp-top .fmv-lp-voices__card:nth-child(n+7) { display: flex !important; flex-direction: column !important; flex: 0 0 auto !important; width: 330px !important; min-width: 330px !important; max-width: 330px !important; margin: 0 !important; border: 1px solid #e7e9ee !important; border-radius: 10px !important; box-shadow: 0 1px 2px rgba(20,30,50,.04), 0 14px 30px -22px rgba(20,30,50,.28) !important; padding: 1.4rem 1.4rem 1.5rem !important; }

/* ===========================================================
   SP レイアウト（TOP 専用）— 全幅＆カード組み替えのみ。
   文字サイズ・折返しは流体トークン＋自然折返し（lp-section-head.css）に一任。
   =========================================================== */
@media (max-width: 767px) {
	.fmv-lp-top .fmv-lp-container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: var(--fmv-lp-sp-gutter, clamp(0.75rem, 3.2vw, 1rem)) !important;
		padding-right: var(--fmv-lp-sp-gutter, clamp(0.75rem, 3.2vw, 1rem)) !important;
	}

	.fmv-lp-top .dpt-hero__intro-inner {
		max-width: 100%;
		padding-left: var(--fmv-lp-sp-gutter, clamp(0.75rem, 3.2vw, 1rem));
		padding-right: var(--fmv-lp-sp-gutter, clamp(0.75rem, 3.2vw, 1rem));
	}

	.fmv-lp-top .fmv-lp-concerns__card {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
	}

	.fmv-lp-top .fmv-lp-detail__card {
		grid-template-columns: 1fr !important;
	}

	.fmv-lp-top .fmv-lp-detail__media {
		aspect-ratio: 16 / 10 !important;
		height: auto !important;
		min-height: 0 !important;
	}

	.fmv-lp-top .fmv-pickup__row {
		grid-template-columns: 5.5rem 1fr;
		gap: 0.5rem;
	}

	.fmv-lp-top .fmv-lp-voices__card,
	.fmv-lp-top .fmv-lp-voices__card[aria-hidden="true"],
	.fmv-lp-top .fmv-lp-voices__card:nth-child(n+7) {
		width: clamp(260px, 78vw, 300px) !important;
		min-width: 0 !important;
		max-width: 78vw !important;
	}

	.fmv-lp-top .fmv-lp-maintenance__card,
	.fmv-lp-top .fmv-lp-body-repair__card,
	.fmv-lp-top .fmv-lp-maintenance__grid,
	.fmv-lp-top .fmv-lp-body-repair__grid {
		min-width: 0;
		max-width: 100%;
	}

	/* SERVICE LINEUP — 見出しの余白＋カードを横並びコンパクト行に（縦長6枚積みを解消） */
	.fmv-lp-top .fmv-lp-svc-grid .fmv-lp-section-head {
		margin-bottom: clamp(1.35rem, 4.5vw, 1.85rem) !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid .fmv-lp-section-head__eyebrow {
		letter-spacing: 0.18em !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__list {
		gap: 0.55rem !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__card {
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch !important;
		min-height: 0 !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__media {
		flex: 0 0 5.25rem !important;
		width: 5.25rem !important;
		aspect-ratio: 1 / 1 !important;
		height: auto !important;
		align-self: stretch !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__scrim {
		display: none !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__body {
		flex: 1 1 auto !important;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 0.45rem 0.55rem !important;
		min-width: 0 !important;
		padding: 0.55rem 0.65rem 0.55rem 0.7rem !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__num {
		flex: 0 0 auto !important;
		font-size: 0.7rem !important;
		letter-spacing: 0.04em !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__num::after {
		display: none !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__heading {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		padding-right: 0 !important;
		gap: 0.12rem !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__title {
		font-size: 0.86rem !important;
		line-height: 1.35 !important;
		display: block !important;
		padding-bottom: 0 !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__title::after {
		display: none !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__sub {
		font-size: 0.68rem !important;
		line-height: 1.35 !important;
		display: -webkit-box !important;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.fmv-lp-top .fmv-lp-svc-grid__arrow {
		position: static !important;
		flex: 0 0 auto !important;
		align-self: center !important;
		width: 1.65rem !important;
		height: 1.65rem !important;
		margin: 0 !important;
		right: auto !important;
		bottom: auto !important;
	}

	.fmv-lp-top .fmv-lp-svc-grid__arrow svg {
		width: 13px !important;
		height: 13px !important;
	}
}
