/* ============================================================
   SERVICE LP 専用：LINEUP（メニュー一覧＆料金目安）
   ============================================================ */
.fmv-lp-svc-lineup {
	background: linear-gradient(180deg, #ffffff 0%, #f4f5f7 100%);
	padding: clamp(3rem, 6vw, 5rem) 0;
	border-top: 1px solid rgba(0, 0, 0, .04);
}
.fmv-lp-svc-lineup__container {
	max-width: min(1080px, 92%);
	margin: 0 auto;
}
.fmv-lp-svc-lineup__header {
	text-align: left;
	margin-bottom: clamp(1.6rem, 3vw, 2.4rem);
}
.fmv-lp-svc-lineup__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	font-family: 'Roboto', 'Noto Sans JP', sans-serif;
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .24em;
	color: #98202f;
	margin: 0 0 .8rem;
}
.fmv-lp-svc-lineup__eyebrow-line {
	display: inline-block;
	width: 28px;
	height: 1px;
	background: #16263f;
}
.fmv-lp-svc-lineup__h2 {
	font-family: "Noto Sans JP", "Hiragino Sans", sans-serif;
	font-size: clamp(1.5rem, 3vw, 2.1rem);
	font-weight: 700;
	color: var(--fmv-lp-text);
	letter-spacing: 0.02em;
	margin: 0 0 1rem;
	text-wrap: balance;
}
.fmv-lp-svc-lineup__h2-strong {
	color: #16263f;
	font-weight: 800;
}
.fmv-lp-svc-lineup__lead {
	max-width: 720px;
	margin: 0 auto;
	color: var(--fmv-lp-muted);
	font-size: .98rem;
	line-height: 1.85;
	text-wrap: balance;
}
.fmv-lp-svc-lineup__lead strong {
	color: var(--fmv-lp-text);
	font-weight: 700;
	background: linear-gradient(transparent 60%, #e3e9f2 60%);
	padding: 0 .15em;
}
.fmv-lp-svc-lineup__list {
	list-style: none;
	margin: 1.6rem 0 0;
	padding: 0;
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
}
@media (min-width: 640px) {
	.fmv-lp-svc-lineup__list {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.2rem;
	}
}
@media (min-width: 1024px) {
	.fmv-lp-svc-lineup__list {
		grid-template-columns: repeat(3, 1fr);
	}
}
.fmv-lp-svc-lineup__item {
	position: relative;
	background: #ffffff;
	border: 1px solid var(--fmv-lp-rule);
	border-radius: 8px;
	padding: 1.5rem 1.4rem 1.3rem;
	display: flex;
	flex-direction: column;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .03);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.fmv-lp-svc-lineup__item::before {
	content: '';
	position: absolute;
	top: 0;
	left: 1.4rem;
	right: 1.4rem;
	height: 3px;
	background: var(--fmv-lp-accent);
	border-radius: 0 0 3px 3px;
}
.fmv-lp-svc-lineup__item:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 28px rgba(20, 30, 50, .10);
	border-color: #cdd6e4;
}
.fmv-lp-svc-lineup__head {
	display: flex;
	align-items: center;
	gap: .8rem;
	margin-bottom: .65rem;
}
.fmv-lp-svc-lineup__no {
	font-family: 'Roboto', sans-serif;
	font-size: 1rem;
	font-weight: 800;
	color: #16263f;
	letter-spacing: 0.02em;
	line-height: 1;
}
.fmv-lp-svc-lineup__tag {
	font-family: 'Roboto', sans-serif;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .22em;
	color: #6b7280;
	background: #f3f4f6;
	padding: .3rem .55rem;
	border-radius: 999px;
}
.fmv-lp-svc-lineup__title {
	font-family: "Noto Sans JP", "Hiragino Sans", sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--fmv-lp-text);
	margin: 0 0 .55rem;
	line-height: 1.5;
}
.fmv-lp-svc-lineup__desc {
	font-size: .85rem;
	color: var(--fmv-lp-muted);
	line-height: 1.8;
	margin: 0 0 1rem;
	flex: 1;
}
.fmv-lp-svc-lineup__meta {
	margin: 0;
	padding: 1rem 0 0;
	border-top: 1px dashed var(--fmv-lp-rule);
	display: grid;
	gap: .35rem;
}
.fmv-lp-svc-lineup__meta-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: .8rem;
}
.fmv-lp-svc-lineup__meta dt {
	font-family: 'Roboto', 'Noto Sans JP', sans-serif;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .12em;
	color: #6b7280;
	margin: 0;
}
.fmv-lp-svc-lineup__meta dd {
	margin: 0;
	font-size: .88rem;
	font-weight: 700;
	color: var(--fmv-lp-text);
	letter-spacing: 0.02em;
}
.fmv-lp-svc-lineup__price {
	color: #16263f !important;
	font-size: .98rem !important;
	font-family: 'Roboto', 'Noto Sans JP', sans-serif !important;
}
.fmv-lp-svc-lineup__note {
	margin: 1.4rem auto 0;
	max-width: 720px;
	text-align: center;
	font-size: .78rem;
	color: #9ca3af;
	letter-spacing: 0.04em;
	line-height: 1.85;
}
@media (max-width: 767px) {
	.fmv-lp-svc-lineup__item {
		padding: 1.3rem 1.1rem 1.1rem;
	}
	.fmv-lp-svc-lineup__title {
		font-size: 1rem;
	}
	.fmv-lp-svc-lineup__desc {
		font-size: .82rem;
	}
}

/* SP 微調整：strengths / models */
@media (max-width: 767px) {
	.fmv-lp-mk-strengths__card {
		padding: 1.5rem 1.2rem 1.3rem;
	}
	.fmv-lp-mk-strengths__card-head {
		gap: .8rem;
		margin-bottom: .85rem;
	}
	.fmv-lp-mk-strengths__icon {
		width: 42px;
		height: 42px;
	}
	.fmv-lp-mk-strengths__icon svg {
		width: 22px;
		height: 22px;
	}
	.fmv-lp-mk-models__group {
		padding: 1.2rem 1rem 1rem;
	}
	.fmv-lp-mk-models__group-head {
		grid-template-columns: auto 1fr;
		grid-template-areas:
			'num titles'
			'count count';
		gap: .7rem .8rem;
		row-gap: .6rem;
	}
	.fmv-lp-mk-models__group-num {
		grid-area: num;
		font-size: 1.3rem;
	}
	.fmv-lp-mk-models__group-titles {
		grid-area: titles;
	}
	.fmv-lp-mk-models__group-count {
		grid-area: count;
		justify-self: start;
		font-size: .68rem;
	}
	.fmv-lp-mk-models__item {
		min-height: 40px;
		font-size: .8rem;
		padding: .45rem .55rem;
	}
}

/* Service page inline overrides (from lp-enqueue.php) */
/* =========================================================================
 * SERVICE LP HERO
 *  - 白〜ライトグレー基調のクリーン背景
 *  - 左：見出し＋CTA / 右：デコカード（PC 2 カラム / SP 1 カラム）
 *  - アクセントは ブランド赤 #16263f で統一
 * ========================================================================= */
.fmv-lp-svc-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(3.5rem, 7vw, 6rem) 1rem clamp(3rem, 6vw, 5rem);
	background:
		radial-gradient(58% 72% at 100% 0%, rgba(20, 30, 50, .07) 0%, transparent 65%),
		radial-gradient(40% 50% at 0% 100%, rgba(20, 30, 50, .04) 0%, transparent 60%),
		linear-gradient(180deg, #ffffff 0%, #f4f6f9 100%);
	border-bottom: 1px solid var(--fmv-lp-rule);
}
.fmv-lp-svc-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(15, 23, 42, .028) 1px, transparent 1px),
		linear-gradient(90deg, rgba(15, 23, 42, .028) 1px, transparent 1px);
	background-size: 32px 32px;
	pointer-events: none;
	-webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, #000 40%, transparent 100%);
	        mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, #000 40%, transparent 100%);
}

.fmv-lp-svc-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2rem, 4vw, 3.5rem);
	align-items: center;
	max-width: min(1080px, 92%);
	margin: 0 auto;
}
@media (min-width: 900px) {
	.fmv-lp-svc-hero__inner {
		grid-template-columns: 1fr 380px;
	}
}

/* 左カラム：テキスト */
.fmv-lp-svc-hero__content {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
}
.fmv-lp-svc-hero__eyebrow {
	display: flex;
	align-items: center;
	gap: .8rem;
	flex-wrap: wrap;
}
.fmv-lp-svc-hero__eyebrow-label {
	font-family: 'Roboto', system-ui, sans-serif;
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .3em;
	color: #98202f;
	background: rgba(139, 26, 46, .07);
	padding: .3rem .75rem;
	border-radius: 999px;
	border: 1px solid rgba(139, 26, 46, .28);
}
.fmv-lp-svc-hero__eyebrow-area {
	font-family: 'Roboto', system-ui, sans-serif;
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .18em;
	color: #6b7280;
	background: #f3f4f6;
	padding: .3rem .75rem;
	border-radius: 999px;
}
.fmv-lp-svc-hero__h1 {
	font-family: "Noto Sans JP", "Hiragino Sans", sans-serif;
	font-size: clamp(1.65rem, 3.4vw, 2.6rem);
	font-weight: 700;
	color: var(--fmv-lp-text);
	line-height: 1.45;
	letter-spacing: .02em;
	margin: 0;
	text-wrap: balance;
}
.fmv-lp-svc-hero__h1-strong {
	color: #16263f;
	text-decoration-line: underline;
	text-decoration-color: rgba(20, 30, 50, .45);
	text-decoration-thickness: clamp(3px, .18em, 5px);
	text-underline-offset: .22em;
	text-decoration-skip-ink: none;
}
.fmv-lp-svc-hero__sub {
	margin: 0;
	font-size: clamp(.92rem, 1.5vw, 1.05rem);
	font-weight: 700;
	color: #374151;
	letter-spacing: .02em;
}
.fmv-lp-svc-hero__lead {
	margin: 0;
	font-size: clamp(.88rem, 1.4vw, 1rem);
	color: var(--fmv-lp-muted);
	line-height: 1.85;
}

/* CTA ボタン群 */
.fmv-lp-svc-hero__cta {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .9rem;
	margin-top: .4rem;
}
@media (max-width: 480px) {
	.fmv-lp-svc-hero__cta {
		grid-template-columns: 1fr;
	}
}
.fmv-lp-svc-hero__btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .2rem;
	padding: 1rem 1.1rem;
	border-radius: 8px;
	text-decoration: none;
	text-align: center;
	transition: transform .22s ease, box-shadow .22s ease;
	min-height: 78px;
	overflow: hidden;
	position: relative;
	isolation: isolate;
}
.fmv-lp-svc-hero__btn::after {
	content: '';
	position: absolute;
	top: 0;
	left: -120%;
	width: 60%;
	height: 100%;
	background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, .22) 50%, transparent 100%);
	transition: left .8s ease;
	pointer-events: none;
}
.fmv-lp-svc-hero__btn:hover::after { left: 130%; }
.fmv-lp-svc-hero__btn:hover {
	transform: translateY(-2px);
}
.fmv-lp-svc-hero__btn--tel {
	background: #ffffff;
	border: 1px solid var(--fmv-lp-rule);
	box-shadow: 0 8px 22px rgba(15, 23, 42, .10), inset 0 1px 0 rgba(255, 255, 255, .9);
}
.fmv-lp-svc-hero__btn--tel:hover {
	box-shadow: 0 12px 30px rgba(15, 23, 42, .16);
	border-color: rgba(20, 30, 50, .3);
}
.fmv-lp-svc-hero__btn--form {
	background: linear-gradient(180deg, var(--fmv-lp-cta) 0%, var(--fmv-lp-cta-dark) 100%);
	border: 1px solid rgba(255, 255, 255, .14);
	box-shadow: 0 8px 22px rgba(20, 30, 50, .38);
}
.fmv-lp-svc-hero__btn--form:hover {
	box-shadow: 0 12px 30px rgba(20, 30, 50, .52);
}
.fmv-lp-svc-hero__btn-label {
	font-size: .65rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.fmv-lp-svc-hero__btn--tel .fmv-lp-svc-hero__btn-label { color: #6b7280; }
.fmv-lp-svc-hero__btn--form .fmv-lp-svc-hero__btn-label { color: rgba(255, 255, 255, .82); }
.fmv-lp-svc-hero__btn-num {
	font-family: 'Roboto', system-ui, sans-serif;
	font-size: clamp(1.25rem, 2vw, 1.55rem);
	font-weight: 800;
	letter-spacing: -.01em;
	color: #16263f;
	line-height: 1.1;
}
.fmv-lp-svc-hero__btn-hours {
	font-size: .68rem;
	color: #9ca3af;
}
.fmv-lp-svc-hero__btn-main {
	font-size: clamp(1.05rem, 1.7vw, 1.25rem);
	font-weight: 800;
	color: #ffffff;
	line-height: 1.1;
}

/* バッジ（信頼ポイント） */
.fmv-lp-svc-hero__badges {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem .9rem;
	list-style: none;
	margin: .3rem 0 0;
	padding: 0;
	font-size: .82rem;
	color: var(--fmv-lp-muted);
	font-weight: 600;
}
.fmv-lp-svc-hero__badge-icon {
	color: #16263f;
	font-weight: 700;
	margin-right: .25em;
}

/* 右カラム：デコカード */
.fmv-lp-svc-hero__deco {
	display: flex;
	justify-content: center;
}
@media (max-width: 899px) {
	.fmv-lp-svc-hero__deco {
		display: none;
	}
}
.fmv-lp-svc-hero__deco-card {
	background: #ffffff;
	border: 1px solid var(--fmv-lp-rule);
	border-radius: 22px;
	padding: 2rem 1.8rem 1.8rem;
	box-shadow:
		0 24px 50px -12px rgba(15, 23, 42, .12),
		0 4px 12px rgba(15, 23, 42, .06);
	width: 100%;
	max-width: 360px;
	position: relative;
	overflow: hidden;
}
.fmv-lp-svc-hero__deco-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #16263f 0%, #16263f 100%);
	border-radius: 22px 22px 0 0;
}
.fmv-lp-svc-hero__deco-num {
	font-family: 'Roboto', system-ui, sans-serif;
	font-size: 3.5rem;
	font-weight: 900;
	line-height: 1;
	color: rgba(20, 30, 50, .09);
	letter-spacing: -.04em;
	display: block;
	margin-bottom: .5rem;
}
.fmv-lp-svc-hero__deco-service {
	font-family: 'Roboto', sans-serif;
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .3em;
	color: #16263f;
	margin: 0 0 .5rem;
}
.fmv-lp-svc-hero__deco-copy {
	font-size: .98rem;
	font-weight: 700;
	color: var(--fmv-lp-text);
	line-height: 1.55;
	margin: 0 0 1.2rem;
}
.fmv-lp-svc-hero__deco-bar {
	height: 2px;
	background: linear-gradient(90deg, #16263f 0%, transparent 100%);
	border-radius: 2px;
	margin-bottom: 1.2rem;
}
.fmv-lp-svc-hero__deco-badges {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}
.fmv-lp-svc-hero__deco-badges li {
	font-size: .75rem;
	font-weight: 700;
	color: #374151;
	background: #f3f4f6;
	border: 1px solid var(--fmv-lp-rule);
	padding: .32rem .72rem;
	border-radius: 999px;
	letter-spacing: .02em;
}

/* 右カラム：ヒーロー画像 */
.fmv-lp-svc-hero__img-wrap {
	position: relative;
	width: 100%;
	max-width: 560px;
	border-radius: 20px;
	overflow: hidden;
	box-shadow:
		0 28px 55px -12px rgba(15, 23, 42, .18),
		0 8px 20px rgba(15, 23, 42, .08);
}
.fmv-lp-svc-hero__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 640 / 420;
	object-fit: cover;
	border-radius: 20px;
}
.fmv-lp-svc-hero__img-badge {
	position: absolute;
	bottom: 1rem;
	left: 1rem;
	background: rgba(0, 0, 0, .52);
	-webkit-backdrop-filter: blur(6px);
	        backdrop-filter: blur(6px);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	padding: .3rem .9rem;
}
.fmv-lp-svc-hero__img-badge-label {
	font-family: 'Roboto', sans-serif;
	font-size: .65rem;
	font-weight: 800;
	letter-spacing: .28em;
	color: #ffffff;
}
@media (max-width: 899px) {
	.fmv-lp-svc-hero__img-wrap {
		display: none;
	}
}

/* スクロールアニメ矢印 */
.fmv-lp-svc-hero__scroll {
	position: absolute;
	bottom: 1.4rem;
	left: 50%;
	transform: translateX(-50%);
}
.fmv-lp-svc-hero__scroll span {
	display: block;
	width: 20px;
	height: 20px;
	border-right: 2px solid #16263f;
	border-bottom: 2px solid #16263f;
	transform: rotate(45deg);
	animation: svcHeroScroll 1.6s ease infinite;
	opacity: .6;
}
@keyframes svcHeroScroll {
	0%   { transform: rotate(45deg) translate(0, 0); opacity: .6; }
	50%  { transform: rotate(45deg) translate(4px, 4px); opacity: 1; }
	100% { transform: rotate(45deg) translate(0, 0); opacity: .6; }
}
@media (prefers-reduced-motion: reduce) {
	.fmv-lp-svc-hero__scroll span { animation: none; }
}

/* =========================================================================
 * SERVICE LP HERO（maker-hero.php 共用時）
 *  - PC サイズは lp-base.css の --fmv-lp-hero-pc-max-* を参照
 *  - SP は元から 100% なので変更不要
 * ========================================================================= */
/* 装飾 strong → span.fmv-inline-em（表示同一） */
.fmv-inline-em {
	font-weight: 700;
}
.fmv-lp-inspection__lead .fmv-inline-em,
.fmv-lp-inspection__closer .fmv-inline-em,
.fmv-lp-detail__lead .fmv-inline-em,
.fmv-lp-reasons__lead .fmv-inline-em,
.fmv-lp-svc-lineup__lead .fmv-inline-em,
.fmv-lp-brand-cov__call-text .fmv-inline-em,
.fmv-lp-cta-repeat__lead .fmv-inline-em,
.fmv-lp-voices__h2 .fmv-inline-em {
	font-weight: inherit;
}
.fmv-lp-inspection__lead .fmv-inline-em,
.fmv-lp-inspection__closer .fmv-inline-em {
	font-weight: 700;
}
.fmv-lp-voices__h2 .fmv-inline-em {
	color: var(--fmv-lp-accent, #16263f);
	font-weight: 800;
}

.coating-process-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:640px){.coating-process-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px){.coating-process-grid{grid-template-columns:repeat(5,1fr)}}
.coating-scroll-hint{font-size:12px;color:#999;margin-top:.3rem}@media(min-width:1024px){.coating-scroll-hint{display:none}}
.coating-table-head{background:#16263f;color:#fff}.coating-table-left{background:#eef2f8;color:#16263f;font-weight:700}
.coating-ba-wrap{padding-top:2.2rem}.coating-ba-row{display:flex;align-items:center;justify-content:center;gap:1.8rem;flex-wrap:wrap}
.coating-ba-card{background:#f8f8f8;border-radius:8px;padding:16px;width:min(100%,320px);text-align:center}
.coating-ba-card img{display:block;width:100%;height:auto;border-radius:6px}
.coating-ba-label{margin-top:.65rem;font-size:2.25rem;line-height:1;font-weight:800;color:#111}
.coating-ba-arrow{flex-shrink:0;color:#111}.coating-ba-arrow svg{width:40px;height:40px;fill:currentColor}
@media(max-width:767px){.coating-ba-label{font-size:1.8rem}.coating-ba-arrow{transform:rotate(90deg)}}
.coating-process-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);border:1px solid #f0f0f0}
.coating-process-card img{width:100%;height:140px;object-fit:cover;border-radius:8px;padding:8px 8px 0;box-sizing:border-box}@media(min-width:768px){.coating-process-card img{height:120px}}
.coating-process-card-body{padding:.7rem .6rem .9rem;text-align:center}
.coating-process-card-title{font-weight:bold;color:#333;font-size:.9rem;margin-bottom:.25rem}
.coating-process-card-text{font-size:.78rem;color:#555;line-height:1.5}
.aircon-detail-section{padding:0 1.25rem;max-width:960px;margin:0 auto}
.aircon-cause-list ol{margin:0;padding-left:1.25rem}.aircon-cause-list li{margin-bottom:1rem;color:var(--fmv-lp-muted);line-height:1.8}.aircon-cause-list li:last-child{margin-bottom:0}
.aircon-cause-card{background:rgba(255,255,255,.96);border:1px solid #e8e8e8;border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,.06);overflow:hidden}
.aircon-cause-card-head{padding:1.05rem 1.4rem 1rem;border-bottom:1px solid #ebe5de;background:linear-gradient(180deg,#f9f6f1 0%,#f5f2ed 100%)}
.aircon-cause-label{font-family:Roboto,sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;color:#8f8f8f;margin:0 0 .4rem}
.aircon-cause-title{font-size:clamp(1.08rem,2.45vw,1.55rem);font-weight:800;color:#2f2f2f;line-height:1.45;margin:0}
.aircon-cause-title-sub{font-size:.84em;color:#646464}
@media(min-width:768px){.aircon-detail-section{padding:0}.aircon-block-img{width:55% !important}.aircon-block-text{width:50% !important;margin-top:0 !important;margin-left:-5%}div[style*="row-reverse"] .aircon-block-text{margin-left:0;margin-right:-5%}}
.glass-detail-section{padding:0 1.25rem}
@media(min-width:768px){.glass-detail-section{padding:0}.glass-block-img{width:55% !important}.glass-block-text{width:50% !important;margin-top:0 !important;margin-left:-5%}.glass-block-reverse .glass-block-text{margin-left:0 !important;margin-right:-5%}}
.glass-repair-worry-card{background:#fff;border:1px solid #d8d8d8;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.glass-repair-worry-card img{display:block;width:100%;height:195px;object-fit:cover}
.glass-repair-worry-cta{display:inline-block;background:var(--fmv-lp-cta,#8b1a2e);color:#fff;font-size:clamp(1.9rem,3.4vw,2.2rem);font-weight:700;line-height:1;padding:1.35rem 4.25rem;border-radius:9999px;text-decoration:none;box-shadow:0 4px 14px rgba(139,26,46,.35);transition:opacity .2s ease}
.glass-repair-worry-cta:hover{opacity:.88}
@media(max-width:767px){.glass-repair-worry-card img{height:175px}.glass-repair-worry-cta{font-size:1.7rem;padding:1.1rem 3.2rem}}
@media(min-width:768px){.glass-asv-block-img{width:54% !important}.glass-asv-block-text{width:52% !important;margin-top:0 !important;margin-left:-6%}div[style*="row-reverse"] .glass-asv-block-text{margin-left:0;margin-right:-6%}}

/* SP：容器全幅（文字サイズ・折返しは流体トークン＋自然折返しに一任） */
@media (max-width: 767px) {
	.fmv-lp-svc-lineup__container {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		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));
		box-sizing: border-box;
	}

	.aircon-detail-section,
	.glass-detail-section {
		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));
		max-width: 100%;
	}
}

/* ============================================================
   Service LP: 見出しエリアの全幅化
   - 共通 section-head の max-width:46rem 制約をサービスLPのみ解除
   - 変な位置での折返し（右側の余白が大きい状態）を解消
   ============================================================ */
.fmv-lp-sub--tire :is(
	.fmv-lp-section-head,
	.fmv-lp-concerns__header,
	.fmv-lp-reasons__header,
	.fmv-lp-symptoms__header,
	.fmv-lp-flow__header,
	.fmv-lp-voices__header,
	.fmv-lp-svc-lineup__header
),
.fmv-lp-sub--coating :is(
	.fmv-lp-section-head,
	.fmv-lp-concerns__header,
	.fmv-lp-reasons__header,
	.fmv-lp-symptoms__header,
	.fmv-lp-flow__header,
	.fmv-lp-voices__header,
	.fmv-lp-svc-lineup__header
),
.fmv-lp-sub--air-conditioner :is(
	.fmv-lp-section-head,
	.fmv-lp-concerns__header,
	.fmv-lp-reasons__header,
	.fmv-lp-symptoms__header,
	.fmv-lp-flow__header,
	.fmv-lp-voices__header,
	.fmv-lp-svc-lineup__header
),
.fmv-lp-sub--glass-repair :is(
	.fmv-lp-section-head,
	.fmv-lp-concerns__header,
	.fmv-lp-reasons__header,
	.fmv-lp-symptoms__header,
	.fmv-lp-flow__header,
	.fmv-lp-voices__header,
	.fmv-lp-svc-lineup__header
) {
	width: 100% !important;
	max-width: none !important;
}

.fmv-lp-sub--tire :is(
	.fmv-lp-section-head__lead,
	.fmv-lp-concerns__lead,
	.fmv-lp-reasons__lead,
	.fmv-lp-inspection__lead,
	.fmv-lp-symptoms__lead,
	.fmv-lp-flow__lead,
	.fmv-lp-voices__lead,
	.fmv-lp-svc-lineup__lead
),
.fmv-lp-sub--coating :is(
	.fmv-lp-section-head__lead,
	.fmv-lp-concerns__lead,
	.fmv-lp-reasons__lead,
	.fmv-lp-inspection__lead,
	.fmv-lp-symptoms__lead,
	.fmv-lp-flow__lead,
	.fmv-lp-voices__lead,
	.fmv-lp-svc-lineup__lead
),
.fmv-lp-sub--air-conditioner :is(
	.fmv-lp-section-head__lead,
	.fmv-lp-concerns__lead,
	.fmv-lp-reasons__lead,
	.fmv-lp-inspection__lead,
	.fmv-lp-symptoms__lead,
	.fmv-lp-flow__lead,
	.fmv-lp-voices__lead,
	.fmv-lp-svc-lineup__lead
),
.fmv-lp-sub--glass-repair :is(
	.fmv-lp-section-head__lead,
	.fmv-lp-concerns__lead,
	.fmv-lp-reasons__lead,
	.fmv-lp-inspection__lead,
	.fmv-lp-symptoms__lead,
	.fmv-lp-flow__lead,
	.fmv-lp-voices__lead,
	.fmv-lp-svc-lineup__lead
) {
	max-width: none !important;
	padding-right: 0 !important;
}
