/* =========================================================
   週1LP 用のスタイル（2026-10-13 第1弾で追加）
   ・LPテンプレートの中でだけ読み込む（page-gyomuyo-aircon-cleaning.php の wp_enqueue_style）
   ・クラスは lp- 接頭辞で閉じ込め、既存のクラスは上書きしない
   ・色・余白は main.css の :root 変数だけを使う
   ========================================================= */

/* ---------- ヒーロー ---------- */
.lp-hero {
	position: relative; overflow: hidden; color: #fff;
	padding: var(--sp-7) 0 var(--sp-8);
	background:
		radial-gradient(640px 320px at 8% 0%, rgba(0,113,188,.55), transparent 62%),
		radial-gradient(560px 320px at 96% 100%, rgba(236,106,30,.24), transparent 60%),
		linear-gradient(135deg, var(--c-navy-dark) 0%, var(--c-navy) 55%, #0f4a8a 100%);
}
.lp-hero::before {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px;
	background: linear-gradient(90deg, var(--c-accent) 0%, #ffd76a 50%, var(--c-blue) 100%);
}
.lp-hero__inner { position: relative; display: grid; gap: var(--sp-6); align-items: center; }
.lp-hero__eyebrow {
	display: inline-flex; align-items: center; gap: 10px;
	font-size: .6875rem; font-weight: 800; letter-spacing: .2em; color: #ffd76a; margin: 0 0 var(--sp-3);
}
.lp-hero__eyebrow::after { content: ""; width: 34px; height: 1px; background: linear-gradient(90deg, #ffd76a, transparent); }
.lp-hero__title {
	margin: 0; color: #fff; font-weight: 800; letter-spacing: .02em;
	font-size: clamp(2rem, 8.4vw, 3.25rem); line-height: 1.25;
}
.lp-hero__sub { margin: var(--sp-3) 0 0; font-size: clamp(1rem, 3.6vw, 1.25rem); font-weight: 700; line-height: 1.6; color: rgba(255,255,255,.92); }
.lp-nb { display: inline-block; }
.lp-hero__tags { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: var(--sp-4) 0 0; padding: 0; list-style: none; }
.lp-hero__tags li {
	font-size: .75rem; font-weight: 800; letter-spacing: .04em;
	padding: 5px 14px; border-radius: 999px;
	background: rgba(255,255,255,.12); border: 1px solid rgba(255,215,106,.45); color: #ffe9a8;
}
.lp-hero__price {
	display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px;
	margin: var(--sp-5) 0 0; padding: var(--sp-3) var(--sp-5); border-radius: 12px;
	background: rgba(255,255,255,.1); border: 1px solid rgba(255,215,106,.45);
}
.lp-hero__price-label { font-size: .8125rem; color: rgba(255,255,255,.85); }
.lp-hero__price-value { font-size: 1.75rem; font-weight: 800; color: #ffd76a; letter-spacing: .02em; }
.lp-hero__price-note { font-size: .75rem; color: rgba(255,255,255,.8); }
.lp-hero__actions { display: flex; flex-direction: column; gap: var(--sp-3); margin-top: var(--sp-5); }
.lp-hero__actions .btn { justify-content: center; }
.lp-hero__tel {
	display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
	padding: 10px 24px; border-radius: 12px; text-decoration: none;
	border: 2px solid rgba(255,255,255,.7); color: #fff;
}
.lp-hero__tel:hover { background: rgba(255,255,255,.1); color: #fff; }
.lp-hero__tel-label { font-size: .75rem; color: rgba(255,255,255,.85); }
.lp-hero__tel-num { font-size: 1.375rem; font-weight: 800; letter-spacing: .04em; }
.lp-hero__photo { margin: 0; position: relative; }
.lp-hero__photo img {
	display: block; width: 100%; height: auto; border-radius: var(--radius);
	box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.lp-hero__photo figcaption { margin-top: var(--sp-2); font-size: .6875rem; color: rgba(255,255,255,.7); text-align: right; }

/* ---------- 実績の帯 ---------- */
.lp-stats { background: var(--c-bg-soft); border-bottom: 1px solid var(--c-line); padding: var(--sp-6) 0; }
.lp-stats__label { margin: 0 0 var(--sp-4); text-align: center; font-size: .8125rem; font-weight: 700; color: var(--c-text-sub); letter-spacing: .04em; }
.lp-stats__list { display: grid; grid-template-columns: 1fr; gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
.lp-stats__item {
	display: flex; align-items: baseline; justify-content: space-between; gap: var(--sp-3);
	padding: var(--sp-3) var(--sp-5); background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius);
}
.lp-stats__name { font-size: .8125rem; color: var(--c-text-sub); }
.lp-stats__num { font-size: 1.5rem; font-weight: 800; color: var(--c-navy); letter-spacing: .02em; white-space: nowrap; }
.lp-stats__note { margin: var(--sp-3) 0 0; font-size: .75rem; color: var(--c-text-sub); line-height: 1.7; }

/* ---------- 機種の種類 ---------- */
.lp-types { display: grid; grid-template-columns: 1fr; gap: var(--sp-3); margin: var(--sp-4) 0 0; padding: 0; list-style: none; }
.lp-types__item {
	display: grid; grid-template-columns: 56px 1fr; column-gap: var(--sp-4); align-items: start;
	padding: var(--sp-4) var(--sp-5); background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius);
	box-shadow: var(--shadow);
}
.lp-types__icon {
	grid-row: span 2; display: flex; align-items: center; justify-content: center;
	width: 56px; height: 56px; border-radius: 12px; background: var(--c-blue-light); color: var(--c-blue);
}
.lp-types__icon svg { width: 36px; height: 36px; }
.lp-types__name { margin: 0; font-size: 1rem; line-height: 1.5; color: var(--c-navy); }
.lp-types__desc { margin: 4px 0 0; font-size: .875rem; line-height: 1.8; color: var(--c-text); }
.lp-note { margin: var(--sp-4) 0 0; font-size: .875rem; line-height: 1.9; color: var(--c-text-sub); }

/* ---------- 末尾のCTA ---------- */
.lp-cta {
	position: relative; overflow: hidden; color: #fff; text-align: center;
	padding: var(--sp-8) 0;
	background:
		radial-gradient(560px 280px at 50% 0%, rgba(0,113,188,.45), transparent 65%),
		linear-gradient(160deg, var(--c-navy) 0%, var(--c-navy-dark) 100%);
}
.lp-cta__eyebrow { margin: 0 0 var(--sp-2); font-size: .6875rem; font-weight: 800; letter-spacing: .22em; color: #ffd76a; }
.lp-cta__title { margin: 0; color: #fff; font-size: clamp(1.25rem, 4.6vw, 1.875rem); line-height: 1.5; }
.lp-cta__lead { margin: var(--sp-4) auto 0; max-width: 40em; font-size: .9375rem; line-height: 1.9; color: rgba(255,255,255,.88); }
.lp-cta__actions { display: flex; flex-direction: column; align-items: center; gap: var(--sp-3); margin-top: var(--sp-5); }
.lp-cta__tel { display: inline-flex; flex-direction: column; align-items: center; color: #fff; text-decoration: none; }
.lp-cta__tel:hover { color: #ffd76a; }
.lp-cta__tel-label { font-size: .75rem; color: rgba(255,255,255,.8); }
.lp-cta__tel-num { font-size: 1.5rem; font-weight: 800; letter-spacing: .04em; }

@media (min-width: 768px) {
	.lp-stats__list { grid-template-columns: repeat(3, 1fr); }
	.lp-stats__item { flex-direction: column; align-items: center; text-align: center; gap: 2px; padding: var(--sp-4); }
	.lp-stats__num { font-size: 2rem; }
	.lp-types { grid-template-columns: repeat(2, 1fr); }
	.lp-hero__actions { flex-direction: row; flex-wrap: wrap; align-items: stretch; }
	.lp-cta__actions { flex-direction: row; justify-content: center; gap: var(--sp-6); }
}
@media (min-width: 1024px) {
	.lp-hero { padding: var(--sp-8) 0 var(--sp-9); }
	.lp-hero__inner { grid-template-columns: 1.05fr .95fr; gap: var(--sp-7); }
	.lp-stats__note { text-align: center; }
}
