/* v264 デザインの追加CSS（2026-09-13）
   確認ページ working/ の hero.css → consultation-block.css → readability.css → lp-decisions.css を
   読み込み順のまま1本にしたもの。上書きの順序に意味があるので並べ替えないこと。
   ・背景の浴室写真は 2MB の PNG だったので WebP(80KB) に変換して参照している
   ・--mirror-sticky-height は --bp-sticky-height に改名（lp-behaviors.js が書く）
   ・バージョンは scripts/stamp-css.py が index.html のリンクに打つ */
/* ======== hero.css（確認ページ v264 より・2026-09-13） ======== */
.kh-hero{background:linear-gradient(110deg,#fffaf0,#fff1c4);color:#412210;font-family:system-ui,sans-serif;padding:38px 24px 24px;position:relative}.kh-hero *{box-sizing:border-box}.kh-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:1.35fr 1fr;gap:20px 40px;align-items:center}.kh-hero p,.kh-hero h1{margin:0}.kh-area{font-size:13px;font-weight:700;color:#80512d}.kh-area span{font-size:10px;font-weight:400}.kh-hero h1{font-size:37px;line-height:1.5;letter-spacing:-.025em;margin:15px 0}.kh-hero h1 em{font-style:normal;color:#c74e0d}.kh-sub{font-size:16px;line-height:1.8;color:#604d40}.kh-price{margin-top:20px}.kh-price-label{font-size:16px;font-weight:700}.kh-price>div{display:flex;align-items:center;gap:10px;color:#c62828}.kh-price>div>strong{font-size:78px;line-height:1.2;letter-spacing:-.04em}.kh-price b{font-size:28px;line-height:1.3}.kh-price small{display:block;font-size:13px}.kh-price p{font-size:12px;line-height:1.6;margin-top:5px}.kh-subsidy{border:1px solid #d9b766;background:#fffdf6;padding:12px 16px;border-radius:8px;margin-top:18px}.kh-subsidy>span{display:block;color:#805719;font-size:11px;margin-bottom:4px}.kh-subsidy>strong{font-size:18px}.kh-subsidy p{font-size:12px;margin-top:4px}.kh-actions{display:grid;grid-template-columns:1.1fr 1fr;gap:10px;margin-top:18px}.kh-actions a{display:flex;flex-direction:column;justify-content:center;min-height:70px;text-decoration:none;border-radius:7px;padding:12px;text-align:center}.kh-web{background:#1565c0;color:#fff;box-shadow:0 3px 0 #0d47a1}.kh-web strong{font-size:16px}.kh-actions small{font-size:10px;display:block;margin:3px 0}.kh-web b{margin-left:7px}.kh-phone{background:white;color:#c74e0d;border:1px solid #e9bc97}.kh-phone strong{font-size:21px;white-space:nowrap}.kh-visual{position:relative;padding:0 0 45px}.kh-product{background:#fff;border:1px solid #ebddc2;border-radius:18px;padding:24px 22px;text-align:center;box-shadow:0 14px 30px #7550150b}.kh-badge{display:inline-block;background:#fff1c4;padding:5px 12px;border-radius:30px;color:#805719;font-size:12px}.kh-product p{font-size:14px;margin-top:12px}.kh-product p strong{display:block;font-size:24px;margin-top:3px}.kh-equipment{display:block;width:100%;height:235px;object-fit:contain;margin:12px 0}.kh-specs{display:flex;justify-content:center;gap:8px}.kh-specs span{background:#edf5fa;color:#275a80;font-size:12px;padding:5px 9px;border-radius:4px}.kh-math{display:flex;justify-content:center;gap:13px;align-items:center;margin-top:20px;padding-top:15px;border-top:1px solid #eadfce}.kh-math small{display:block;font-size:10px;color:#756358}.kh-math strong{font-size:23px}.kh-math>div:last-child{color:#997017}.kh-mascots{position:absolute;right:-12px;bottom:-38px;display:flex;align-items:flex-end;gap:7px}.kh-mascots img:first-child{width:90px}.kh-mascots img:last-child{width:55px}.kh-trust{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);background:#fff9;border-top:1px solid #e7d6b6;border-bottom:1px solid #e7d6b6;padding:14px 0;text-align:center}.kh-trust>div+div{border-left:1px solid #e7d6b6}.kh-trust small{display:block;font-size:12px}.kh-trust strong{font-size:21px;color:#995020}.kh-notes{grid-column:1/-1;font-size:11px;line-height:1.75;color:#756358}.kh-actions a:focus-visible{outline:3px solid #412210;outline-offset:4px}
@media(max-width:700px){.kh-hero{padding:22px 16px 18px}.kh-inner{display:block}.kh-area{font-size:11px;line-height:1.7}.kh-area span{font-size:9px}.kh-hero h1{font-size:26px;line-height:1.5;margin:12px 0}.kh-sub{font-size:14px}.kh-price{margin-top:15px}.kh-price-label{font-size:14px}.kh-price>div>strong{font-size:65px}.kh-price b{font-size:24px}.kh-price p{font-size:11px}.kh-visual{display:none}.kh-subsidy{margin-top:15px;padding:11px 12px}.kh-subsidy>strong{font-size:16px}.kh-actions{grid-template-columns:1fr;margin-top:14px;gap:10px}.kh-actions a{min-height:57px;padding:8px 12px}.kh-web strong{font-size:17px}.kh-phone strong{font-size:25px}.kh-trust{margin-top:20px;padding:12px 0}.kh-trust small{font-size:10px}.kh-trust strong{font-size:16px}.kh-notes{margin-top:12px!important;font-size:10px}}
/* Stronger FV hierarchy with the LP's softly lit bathroom backdrop. */
.kh-hero{background:#fff8e9 url('/assets/lp/hero-bath.webp') center/cover no-repeat;padding-top:28px}.kh-inner{gap:18px 36px;align-items:start}.kh-area{display:inline-block;background:#c74e0d;color:white;border-radius:30px;padding:7px 14px;font-size:12px}.kh-hero h1{font-size:40px;font-weight:900;line-height:1.4;margin:16px 0 10px;text-shadow:0 2px 0 #fff}.kh-hero h1 em{color:#dd5410}.kh-sub{font-size:15px;line-height:1.7}.kh-price{position:relative;border:2px solid #ef691b;border-radius:10px;background:#fffdf6;box-shadow:0 6px 18px #a6631414;padding:0 18px 12px;margin-top:16px;overflow:hidden}.kh-price-label{display:block;background:#ef691b;color:#fff;margin:0 -18px 7px;padding:7px 18px;text-align:center;font-size:17px}.kh-price>div{justify-content:center;gap:12px}.kh-price>div>strong{font-size:84px;font-weight:900}.kh-price b{font-size:28px}.kh-price p{text-align:center;font-size:12px}.kh-subsidy{display:grid;grid-template-columns:1fr 1.6fr;align-items:center;gap:4px 14px;border:2px solid #2c8459;background:#f6fff9;padding:12px 16px;margin-top:14px;box-shadow:0 3px 10px #17604412}.kh-subsidy>span{background:#2c8459;color:#fff;padding:6px 9px;border-radius:4px;text-align:center;font-size:12px}.kh-subsidy>strong{font-size:17px;color:#176044;line-height:1.2}.kh-grant{font-size:42px;font-weight:900;margin:0 5px}.kh-grant>span{font-size:18px}.kh-subsidy p{grid-column:1/-1;font-size:11px;color:#38614d;margin-top:5px}.kh-actions{margin-top:14px}.kh-actions a{min-height:73px}.kh-web strong{font-size:18px}.kh-phone strong{font-size:24px}.kh-product{border-radius:14px;border:2px solid #fff;box-shadow:0 12px 35px #5337221a;background:#fffffff2;padding:20px}.kh-product p strong{font-size:27px}.kh-equipment{height:270px}.kh-badge{background:#1f6fae;color:#fff;font-weight:700}.kh-math{background:#eef6fc;border:0;border-radius:7px;padding:13px 8px;gap:10px}.kh-math strong{font-size:25px}.kh-mascots{bottom:-46px;right:0}.kh-trust{margin-top:12px;background:#fff1ce;border:1px solid #e1bd72;border-radius:6px;padding:12px 0}.kh-trust strong{font-size:23px}.kh-trust small{font-size:12px}
@media(max-width:700px){.kh-hero{padding:20px 16px;background-position:65% center}.kh-area{font-size:10px;padding:6px 9px}.kh-area span{font-size:9px}.kh-hero h1{font-size:28px;margin:14px 0 9px}.kh-sub{font-size:14px}.kh-price{padding:0 12px 10px;margin-top:15px}.kh-price-label{font-size:14px;margin:0 -12px 7px;padding:7px 8px}.kh-price>div>strong{font-size:65px}.kh-price b{font-size:23px}.kh-price p{font-size:11px}.kh-subsidy{grid-template-columns:1fr;padding:11px 12px;gap:7px}.kh-subsidy>span{justify-self:start;padding:4px 8px;font-size:10px}.kh-subsidy>strong{font-size:18px}.kh-grant{font-size:37px}.kh-subsidy p{font-size:11px}.kh-actions a{min-height:59px}.kh-web strong{font-size:17px}.kh-phone strong{font-size:25px}.kh-trust{margin-top:18px}.kh-trust strong{font-size:16px}.kh-trust small{font-size:10px}}
/* Product information hierarchy without another outlined card. */
.kh-visual{padding-bottom:0}.kh-product{padding-bottom:26px}.kh-specs{gap:0;align-items:center;margin-top:10px}.kh-specs span{background:none;border-radius:0;padding:0 15px;font-size:16px;font-weight:700;color:#435565}.kh-specs span+span{border-left:1px solid #d4dee4}.kh-specs span:first-child{font-size:26px;color:#1f6fae}.kh-math{background:none;border:0;border-radius:0;padding:0;margin-top:28px;gap:16px;align-items:center}.kh-math>div{flex:1}.kh-math small{font-size:13px;color:#604d40;margin-bottom:8px;font-weight:700}.kh-math strong{display:block;font-size:31px;letter-spacing:-.03em;line-height:1.3;color:#412210}.kh-math>div:last-child small{color:#176044}.kh-math>div:last-child strong{font-size:34px;color:#238257}.kh-math>b{font-size:29px;color:#8b989e;font-weight:400;align-self:flex-end;margin-bottom:4px}
@media(min-width:701px){.kh-visual{align-self:stretch;display:flex}.kh-product{width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;padding:24px 22px 28px}.kh-badge{align-self:center}.kh-equipment{height:310px;flex:1;min-height:270px;max-height:365px}.kh-math{margin-top:28px}.kh-product p strong{font-size:30px}.kh-math strong{font-size:33px}.kh-math>div:last-child strong{font-size:36px}}
/* Two price tiles with colored title bands. */
.kh-math{gap:9px;align-items:center;margin-top:23px}.kh-math>div{background:#fff7ef;border:1px solid #f0c4a0;border-radius:7px;overflow:hidden;min-width:0}.kh-math small{display:block;background:#e86519;color:#fff;margin:0;padding:8px 5px;font-size:12px;line-height:1.5;font-weight:750;white-space:nowrap}.kh-math strong{color:#b9470d;font-size:30px;padding:13px 4px;line-height:1.25;letter-spacing:-.04em}.kh-math>div:last-child{background:#f0faf4;border-color:#a9d3bc}.kh-math>div:last-child small{background:#27875a;color:white}.kh-math>div:last-child strong{color:#238257;font-size:32px}.kh-math>b{align-self:center;margin:0;font-size:25px;font-weight:700;color:#78868c}
.kh-total{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;background:#fff2ed;border-radius:7px;padding:12px 8px}.kh-total>span{font-size:27px;color:#89949a}.kh-total small{display:block;color:#7d3a24;font-size:12px;font-weight:700}.kh-total strong{display:block;font-size:48px;line-height:1.2;letter-spacing:-.035em;color:#c62828}.kh-total strong span{font-size:25px;margin-left:3px}@media(min-width:701px){.kh-equipment{min-height:210px;height:270px;max-height:290px}}
.kh-offer{position:relative;isolation:isolate}.kh-offer-mascots{display:none}
@media(min-width:701px){.kh-copy{display:flex;flex-direction:column;align-self:stretch}.kh-area{align-self:flex-start}.kh-offer{margin-top:auto;padding-top:104px}.kh-offer>.kh-price,.kh-offer>.kh-subsidy,.kh-offer>.kh-actions{position:relative;z-index:2}.kh-offer>.kh-price{margin-top:0}.kh-offer-mascots{display:flex;align-items:flex-end;gap:10px;position:absolute;right:22px;top:-29px;z-index:1;pointer-events:none}.kh-offer-mascots img:first-child{width:150px;height:auto}.kh-offer-mascots img:last-child{width:94px;height:auto}.kh-visual{min-height:0}.kh-equipment{flex:1}}

.kh-actions .kh-phone{background:#ef691b;color:#fff;border-color:#ef691b;box-shadow:0 3px 0 #c74e0d}
.kh-proof{grid-column:1/-1;margin-top:16px;background:#fff;border:1px solid #eadfce;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px #604d4010;color:#604d40}.kh-voice{display:flex;border-bottom:5px solid #dfb345}.kh-voice-label{display:flex;align-items:center;justify-content:center;min-width:165px;background:linear-gradient(135deg,#786052,#412210);color:#fff;font-size:20px;font-weight:800;padding:20px}.kh-voice>div{flex:1;padding:18px 25px 10px}.kh-hero .kh-voice h2{font-size:21px;margin:0 0 5px;line-height:1.5;background:none;padding:0;border:0;color:#604d40}.kh-voice h2::before,.kh-voice h2::after{display:none}.kh-voice p{font-size:16px;line-height:1.7;font-weight:600}.kh-voice>div>small{display:block;text-align:right;color:#91847a;font-size:10px;margin-top:5px}.kh-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:28px 15px 18px}.kh-proof-grid>div{text-align:center;padding:0 8px}.kh-proof-grid>div+div{border-left:1px solid #eadfce}.kh-proof-grid>div>span{display:block;font-size:17px;font-weight:750;margin-bottom:13px}.kh-proof-grid strong{font-size:34px;line-height:1.5;white-space:nowrap;color:#392d25;letter-spacing:-.04em}.kh-proof-grid strong small{font-size:14px;margin-left:3px}.kh-proof-grid mark{background:linear-gradient(transparent 68%,#f9e3a8 68%);color:inherit;padding:0 3px}.kh-proof-grid i{font-style:normal;color:#e8aa00;margin-right:5px}.kh-hero .kh-proof-note{font-size:10px;line-height:1.7;padding:0 20px 13px;color:#85786b}
@media(max-width:700px){.kh-proof{margin-top:22px;border-radius:10px}.kh-voice{display:block}.kh-voice-label{display:block;padding:8px 14px;font-size:15px}.kh-voice>div{padding:13px 14px 9px}.kh-hero .kh-voice h2{font-size:18px}.kh-voice p{font-size:14px}.kh-proof-grid{grid-template-columns:1fr 1fr;padding:5px 12px 12px;gap:0}.kh-proof-grid>div{padding:16px 3px}.kh-proof-grid>div+div{border-left:0}.kh-proof-grid>div:nth-child(even){border-left:1px solid #eadfce}.kh-proof-grid>div:nth-child(n+3){border-top:1px solid #eadfce}.kh-proof-grid>div>span{font-size:12px;margin-bottom:7px}.kh-proof-grid strong{font-size:27px}.kh-proof-grid strong small{font-size:10px}.kh-hero .kh-proof-note{padding:0 14px 12px}}
.kh-actions .kh-web strong{font-size:22px;line-height:1.5}.kh-actions .kh-phone strong{font-size:31px;line-height:1.3;letter-spacing:-.025em}.kh-actions .kh-web b{margin-left:4px}.kh-actions a{min-height:80px}@media(max-width:700px){.kh-actions .kh-web strong{font-size:21px}.kh-actions .kh-phone strong{font-size:32px}.kh-actions a{min-height:65px}}@media(min-width:701px) and (max-width:1100px){.kh-actions{grid-template-columns:1fr}.kh-actions .kh-phone strong{font-size:30px}}

.kh-actions .kh-phone small{font-size:13px;font-weight:600;line-height:1.4;margin-top:1px}@media(max-width:700px){.kh-actions .kh-phone small{font-size:13px}}

.kh-area{background:#27875a;color:#fff}
.kh-area{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#ffffffdf;color:#604d40;border-left:4px solid #27875a;border-radius:0;white-space:nowrap;line-height:1.5;font-weight:500}.kh-area .kh-area-label{font-size:12px;color:#27875a;font-weight:750}.kh-area .kh-area-regions{font-size:12px;font-weight:500}.kh-area .kh-area-note{font-size:9px;color:#756358}@media(max-width:700px){.kh-area{gap:5px;padding:7px 6px;border-left-width:3px}.kh-area .kh-area-label{font-size:10px}.kh-area .kh-area-regions{font-size:10px;letter-spacing:-.035em}.kh-area .kh-area-note{font-size:8px;letter-spacing:-.045em}}@media(max-width:360px){.kh-area{gap:3px;padding-left:4px;padding-right:4px}.kh-area .kh-area-label,.kh-area .kh-area-regions{font-size:9px}.kh-area .kh-area-note{font-size:7px}}

.kh-area{border-left-color:#1f6fae;color:#1f6fae}.kh-area .kh-area-label,.kh-area .kh-area-regions,.kh-area .kh-area-note{color:#1f6fae}

.kh-area .kh-area-label{font-size:14px;color:#1f6fae}.kh-area .kh-area-regions{font-size:14px;color:#6e6258}.kh-area .kh-area-note{font-size:11px;color:#6e6258}@media(max-width:700px){.kh-area .kh-area-label,.kh-area .kh-area-regions{font-size:11px}.kh-area .kh-area-note{font-size:9px}}@media(max-width:360px){.kh-area .kh-area-label,.kh-area .kh-area-regions{font-size:10px}.kh-area .kh-area-note{font-size:8px}.kh-area{gap:2px;padding-left:3px;padding-right:3px}}

.kh-area{width:100%;align-self:stretch;background:#fff;border-radius:0;box-sizing:border-box}

.kh-area{background:#edf7fc}

.kh-area .kh-area-regions{color:#333333}
.com-renewal .kh-proof{margin-top:0;margin-bottom:28px;font-weight:400}.com-renewal .kh-proof-note{font-size:11px;line-height:1.7;padding:0 20px 13px;color:#85786b}.com-renewal .kh-proof-grid small{line-height:inherit;font-size:14px}@media(max-width:700px){.com-renewal .kh-proof-note{padding:0 14px 12px;font-size:10px}.com-renewal .kh-proof-grid small{font-size:10px}}

/* Bespoke generated bathroom background; original asset preserved. */
.kh-hero{background-image:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.96) 24%,rgba(255,255,255,.72) 44%,rgba(255,255,255,.24) 66%,rgba(255,255,255,0) 86%),url('/assets/lp/hero-bath-original-v1.webp');background-position:center;background-size:cover}
@media(max-width:700px){.kh-hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 40%,rgba(255,255,255,.60) 75%,rgba(255,255,255,.28) 100%),url('/assets/lp/hero-bath-original-v1.webp');background-position:62% center}}

/* White service-area band over the photographic hero. */
.kh-hero .kh-area{background:#fff}

/* Service area: modest type enlargement and clearer spacing, one line. */
.kh-hero .kh-area{gap:10px;padding:11px 12px;line-height:1.6}
.kh-area .kh-area-label{font-size:16px;font-weight:750}
.kh-area .kh-area-regions{font-size:16px;font-weight:600;letter-spacing:0}
.kh-area .kh-area-note{font-size:11px;font-weight:400}
@media(max-width:700px){
 .kh-hero .kh-area{gap:5px;padding:9px 6px}
 .kh-area .kh-area-label,.kh-area .kh-area-regions{font-size:11.5px;letter-spacing:-.035em}
 .kh-area .kh-area-note{font-size:9px;letter-spacing:-.045em}
}
@media(max-width:360px){
 .kh-hero .kh-area{gap:3px;padding:9px 4px}
 .kh-area .kh-area-label,.kh-area .kh-area-regions{font-size:10px}
 .kh-area .kh-area-note{font-size:8px}
}

/* Stronger supporting hero copy. */
.kh-hero .kh-sub{font-size:18px;font-weight:700;line-height:1.8;color:#49372b}
@media(max-width:700px){.kh-hero .kh-sub{font-size:16px;line-height:1.75}}

/* Keep hero mascots inside their own space below the supporting copy. */
@media(min-width:701px){.kh-hero .kh-offer{padding-top:128px}.kh-hero .kh-offer-mascots{top:18px}}

/* Reveal Pokemaru’s face above the price card. */
@media(min-width:701px){.kh-hero .kh-offer-mascots img:last-child{width:80px;transform:translateY(-40px)}}

/* Mobile review: hide service facts footnote only on small screens. */
@media(max-width:700px){.com-renewal #com-service-facts .kh-proof-note{display:none}}

/* Mobile hero supporting copy flows without a forced line break. */
@media(max-width:700px){.kh-hero .kh-sub br{display:none}}

.kh-price-example-mobile{display:none}
@media(max-width:700px){.kh-price-example-desktop{display:none}.kh-price-example-mobile{display:inline}}

@media(max-width:700px){.kh-price-example-mobile{white-space:nowrap;font-size:clamp(8px,2.3vw,10px);letter-spacing:-.025em}}

/* Subsidy card shared by mobile and desktop. */
 .kh-hero .kh-subsidy{display:block;padding:0;border:2px solid #27875a;border-radius:10px;background:#fffdf2;overflow:hidden;box-shadow:0 4px 0 #17604416;margin-top:14px}
 .kh-hero .kh-subsidy>span{display:block;margin:0;padding:8px 10px;border-radius:0;background:#27875a;color:#fff;font-size:14px;line-height:1.4;font-weight:750;letter-spacing:.035em}
 .kh-hero .kh-subsidy>strong{display:flex;align-items:baseline;justify-content:center;gap:5px;padding:10px 8px 12px;font-size:15px;line-height:1.2;color:#176044;white-space:nowrap}
 .kh-hero .kh-subsidy .kh-grant{display:inline-flex;align-items:baseline;gap:2px;font-size:70px;font-weight:900;line-height:1;color:#c62828;letter-spacing:-.05em}
 .kh-hero .kh-subsidy .kh-grant>span{font-size:27px;font-weight:850;letter-spacing:0}
 .kh-hero .kh-subsidy p{margin:0;padding:9px 12px;background:#fff;border-top:1px solid #dce8cf;color:#385c46;font-size:11px;font-weight:600;line-height:1.65;text-align:center}

.kh-hero .kh-subsidy>span{width:100%;justify-self:stretch}
@media(min-width:701px){
 .kh-hero .kh-subsidy>span{font-size:15px;padding:7px 12px}
 .kh-hero .kh-subsidy>strong{font-size:20px;gap:8px;padding:10px 12px}
 .kh-hero .kh-subsidy .kh-grant{font-size:72px}
 .kh-hero .kh-subsidy .kh-grant>span{font-size:30px}
 .kh-hero .kh-subsidy p{font-size:12px;padding:8px 12px}
}

/* Subsidy amount uses the same green palette on both layouts. */
.kh-hero .kh-subsidy .kh-grant{color:#27875a}

/* Compact mobile subsidy card; desktop sizing stays unchanged. */
@media(max-width:700px){
 .kh-hero .kh-subsidy>span{font-size:12px;padding:5px 8px;line-height:1.3}
 .kh-hero .kh-subsidy>strong{padding:5px 8px 6px;font-size:14px;gap:4px}
 .kh-hero .kh-subsidy .kh-grant{font-size:52px}
 .kh-hero .kh-subsidy .kh-grant>span{font-size:24px}
 .kh-hero .kh-subsidy p{padding:5px 8px;font-size:10px;line-height:1.5}
}

/* Three concise assurances below the subsidy card, mobile only. */
.kh-mobile-assurances{display:none}
@media(max-width:700px){
 .kh-mobile-assurances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px;padding:12px 3px;background:#fff;border:1px solid #ecd9bd;border-radius:8px;box-shadow:0 3px 10px #53372208;position:relative;z-index:2;text-align:center}
 .kh-mobile-assurances>div{padding:0 3px;min-width:0}
 .kh-mobile-assurances>div+div{border-left:1px solid #eadfce}
 .kh-mobile-assurances>div>span{display:block;font-size:10px;line-height:1.5;font-weight:650;white-space:nowrap;color:#604d40;margin-bottom:5px;letter-spacing:-.025em}
 .kh-mobile-assurances strong{display:inline-block;font-size:24px;line-height:1.25;letter-spacing:-.045em;color:#49372b;font-weight:850;background:linear-gradient(transparent 72%,#ffe4a0 72%);white-space:nowrap}
 .kh-mobile-assurances strong small{font-size:11px;font-weight:750;letter-spacing:-.035em}
}
@media(max-width:360px){.kh-mobile-assurances>div>span{font-size:9px}.kh-mobile-assurances strong{font-size:22px}.kh-mobile-assurances strong small{font-size:10px}}

/* Slimmer mobile FV price card. */
@media(max-width:700px){
 .kh-price>div>strong{font-size:60px;line-height:1.1}
 .kh-price{padding-bottom:7px}
 .kh-price-label{padding-top:5px;padding-bottom:5px;margin-bottom:5px}
 .kh-price p{margin-top:3px}
}

/* ======== consultation-block.css（確認ページ v264 より・2026-09-13） ======== */
.com-renewal .kp-consult{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px 30px;padding:36px;background:linear-gradient(120deg,#fffaf0 0%,#fff1c4 100%);border:1px solid #eadfce;border-radius:14px;color:#fff;margin:32px 0;overflow:hidden}
.com-renewal .kp-consult::before{content:"";position:absolute;z-index:-1;width:480px;height:480px;right:-200px;top:-190px;border:65px solid #dfb34512;border-radius:50%}
.com-renewal .kp-consult-copy{grid-column:1;min-width:0}.com-renewal .kp-consult-brand{display:inline-block;font-size:15px;line-height:1.6;letter-spacing:.06em;color:#c74e0d;border-bottom:1px solid #dfb345;padding-bottom:6px;margin-bottom:14px;font-weight:700}
.com-renewal .kp-consult h2{font-size:31px;line-height:1.55;letter-spacing:0;color:#412210;font-weight:800}.com-renewal .kp-consult-copy p{font-size:16px;line-height:1.9;margin-top:12px;color:#6e6258}
.com-renewal .kp-consult-panel{grid-column:1;background:#fff;border:1px solid #eadfce;border-radius:10px;padding:20px;color:#533722;box-shadow:0 5px 15px #71311120}
.com-renewal .kp-consult-buttons{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}.com-renewal .kp-consult-buttons a{min-height:80px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:7px;padding:12px;color:#fff;text-decoration:none}.com-renewal .kp-consult-form{background:#1565c0;box-shadow:0 3px 0 #0d47a1}.com-renewal .kp-consult-line{background:#06c755;color:#fff;box-shadow:0 3px 0 #049e43}.com-renewal .kp-consult-buttons small{display:block;font-size:13px;line-height:1.6;font-weight:500}.com-renewal .kp-consult-buttons strong{display:block;font-size:18px;line-height:1.6;white-space:nowrap}.com-renewal .kp-consult-buttons b,.com-renewal .kp-consult-phone>b{margin-left:auto;font-size:29px;font-weight:400;line-height:1}.com-renewal .kp-consult-icon{font-size:30px;line-height:1}
.com-renewal .kp-consult-phone{display:flex;gap:13px;align-items:center;justify-content:center;background:#fffaf0;color:#c74e0d;text-decoration:none;margin-top:15px;min-height:81px;border:1px solid #ead7bd;border-radius:7px;padding:12px 20px}.com-renewal .kp-phone-icon{font-size:31px;margin-left:auto}.com-renewal .kp-consult-phone strong{display:block;font-size:35px;line-height:1.25;letter-spacing:.01em;white-space:nowrap}.com-renewal .kp-consult-phone small{display:block;text-align:center;font-size:13px;line-height:1.7;margin-top:4px}.com-renewal .kp-consult-note{text-align:center;font-size:14px;line-height:1.7;margin-top:14px;color:#6e6258}
.com-renewal .kp-consult-person{grid-column:2;grid-row:1 / 3;align-self:end;position:relative;margin:0;background:#fffaf0;border:6px solid #fff;border-radius:120px 120px 10px 10px;overflow:hidden;box-shadow:0 8px 20px #67300c25}.com-renewal .kp-consult-person img{width:100%;height:310px;object-fit:cover;object-position:50% 25%;display:block}.com-renewal .kp-consult-person figcaption{color:#604d40;background:#fffaf0;font-size:14px;line-height:1.6;text-align:center;padding:10px 3px;margin:0;font-weight:700}.kp-consult-mobile{display:none}
@media(max-width:1000px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 185px;padding:28px;gap:22px}.com-renewal .kp-consult h2{font-size:27px}.com-renewal .kp-consult-person img{height:280px}.com-renewal .kp-consult-buttons{grid-template-columns:1fr}.com-renewal .kp-consult-buttons a{min-height:62px}.com-renewal .kp-consult-phone strong{font-size:32px}}
@media(max-width:700px){.com-renewal .kp-consult{display:grid;grid-template-columns:minmax(0,1fr) 82px;padding:22px 16px 16px;gap:18px 12px;margin:26px 0;border-radius:10px}.com-renewal .kp-consult-copy{grid-column:1 / -1}.com-renewal .kp-consult-brand{font-size:14px;margin-bottom:12px}.com-renewal .kp-consult h2{font-size:25px;line-height:1.6}.com-renewal .kp-consult-copy p{font-size:15px;padding-right:84px;min-height:98px;margin-top:14px;line-height:1.8}.com-renewal .kp-consult-copy p br{display:none}.com-renewal .kp-consult-person{position:absolute;right:16px;top:135px;width:78px;border-width:3px;border-radius:40px 40px 5px 5px;box-shadow:none}.com-renewal .kp-consult-person img{height:92px}.com-renewal .kp-consult-person figcaption{font-size:11px;padding:5px 0}.com-renewal .kp-consult-panel{grid-column:1 / -1;padding:14px 12px;border-radius:8px}.com-renewal .kp-consult-buttons{grid-template-columns:1fr;gap:12px}.com-renewal .kp-consult-buttons a{min-height:68px;padding:12px 15px;justify-content:flex-start}.com-renewal .kp-consult-buttons strong{font-size:18px}.com-renewal .kp-consult-line{min-height:48px!important}.com-renewal .kp-consult-line>span{display:flex;align-items:center;gap:12px}.com-renewal .kp-consult-line small{font-size:12px;order:2}.com-renewal .kp-consult-phone{padding:12px 8px;gap:6px}.com-renewal .kp-phone-icon{font-size:23px}.com-renewal .kp-consult-phone strong{font-size:30px}.com-renewal .kp-consult-phone small{font-size:12px}.com-renewal .kp-consult-phone>b{font-size:25px}.com-renewal .kp-consult-note{font-size:13px}.kp-consult-mobile{display:block}}
@media(max-width:700px){.com-renewal .kp-consult-copy{display:contents}.com-renewal .kp-consult-brand{grid-column:1 / -1;justify-self:start;margin-bottom:0}.com-renewal .kp-consult h2{grid-column:1 / -1}.com-renewal .kp-consult-copy p{grid-column:1;grid-row:3;padding-right:0;min-height:0;margin-top:0;align-self:center}.com-renewal .kp-consult-person{position:static;grid-column:2;grid-row:3;width:78px;align-self:center}.com-renewal .kp-consult-panel{grid-row:4}}
.com-renewal .kp-consult-mascots{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible;align-self:center}.com-renewal .kp-mascot-pair{display:flex;align-items:flex-end;justify-content:center;gap:8px;padding:10px 0 16px}.com-renewal .kp-consult-mascots .kp-bear{width:59%;height:auto;object-fit:contain}.com-renewal .kp-consult-mascots .kp-pocket{width:36%;height:auto;object-fit:contain;margin-bottom:5px}.com-renewal .kp-consult-mascots figcaption{background:#fffaf0;border:1px solid #eadfce;border-radius:20px;padding:9px 6px;font-size:14px}
@media(max-width:700px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 106px}.com-renewal .kp-consult-mascots{width:106px}.com-renewal .kp-mascot-pair{gap:4px;padding:0 0 9px}.com-renewal .kp-consult-mascots figcaption{font-size:12px;padding:6px 4px;line-height:1.6}}
/* Wide CTA panel with mascots tucked behind its upper edge. */
.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px}.com-renewal .kp-consult-copy{grid-column:1;position:relative;z-index:2;padding-right:240px;min-height:180px}.com-renewal .kp-consult-panel{grid-column:1;grid-row:auto;position:relative;z-index:3}.com-renewal .kp-consult-mascots{position:absolute;z-index:1;right:38px;top:125px;width:218px;grid-column:auto;grid-row:auto;pointer-events:none}.com-renewal .kp-consult-mascots figcaption{display:none}.com-renewal .kp-mascot-pair{padding:0;gap:8px}.com-renewal .kp-consult-buttons{grid-template-columns:1.6fr 1fr}
@media(max-width:700px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr);padding:22px 12px 12px;gap:16px}.com-renewal .kp-consult-copy{display:block;padding-right:0;min-height:0}.com-renewal .kp-consult-brand{margin-bottom:12px}.com-renewal .kp-consult h2{font-size:23px}.com-renewal .kp-consult-copy p{padding-right:118px;margin-top:14px;min-height:110px}.com-renewal .kp-consult-mascots{width:125px;right:16px;top:205px}.com-renewal .kp-consult-panel{grid-row:auto;padding:14px 10px}.com-renewal .kp-consult-buttons{grid-template-columns:1fr}.com-renewal .kp-mascot-pair{gap:4px}}
/* Full-bleed section background; keep readable content aligned to the page. */
.com-renewal .kp-consult{background:transparent;border:0;border-radius:0;overflow:visible;padding-top:32px;padding-bottom:32px;margin-top:32px;margin-bottom:32px}
.com-renewal .kp-consult::before{inset:0 auto 0 50%;transform:translateX(-50%);width:100vw;height:auto;border:0;border-radius:0;background:linear-gradient(115deg,#ffd477 0%,#ffb249 55%,#f79834 100%);z-index:-1}
.com-renewal .kp-consult-brand{color:#713809;border-bottom-color:#b65b1e}.com-renewal .kp-consult-copy p{color:#60452f}.com-renewal .kp-consult-panel{background:#fff;border:1px solid #eadfce;border-radius:10px;box-shadow:0 5px 15px #71311120}.com-renewal .kp-consult-mascots{filter:drop-shadow(0 5px 3px #ad64121c)}
@media(max-width:700px){.com-renewal .kp-consult{padding-top:22px;padding-bottom:12px;margin-top:26px;margin-bottom:26px}}

@media(max-width:700px){.com-renewal .kp-consult-panel{border-radius:8px}}
/* The entire consultation remains a cream card over an orange full-width band. */
.com-renewal .kp-consult{border:1px solid #eadfce;border-radius:14px;margin-top:56px;margin-bottom:56px}
.com-renewal .kp-consult::before{top:-40px;bottom:-40px;z-index:-2}
.com-renewal .kp-consult::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,#fffaf0 0%,#fff1c4 100%)}
@media(max-width:700px){.com-renewal .kp-consult{border-radius:10px;margin-top:42px;margin-bottom:42px}.com-renewal .kp-consult::before{top:-28px;bottom:-28px}}

.com-renewal .kp-consult-phone{background:#ef691b;color:#fff;border-color:#ef691b;box-shadow:0 3px 0 #c74e0d}

/* ======== readability.css（確認ページ v264 より・2026-09-13） ======== */
/* Readability pass, working mock only. */
body{font-size:18px}
.post_content>p,.post_content>.wp-block-group p,.post_content>.wp-block-columns p{font-size:18px;line-height:1.85}
.p-postList__title,.p-postSlider .p-postList__title{font-size:18px!important;line-height:1.65!important}
.sp-testimonial-content,.sp-testimonial-content p{font-size:17px!important;line-height:1.85!important}
.post_content>h2{font-size:29px}.post_content>h3{font-size:24px}
.com-renewal .kp-consult-buttons strong{white-space:normal}
.com-renewal .kp-consult-copy{min-height:205px}
.com-renewal .kp-consult-mascots{top:150px}
.com-renewal .kp-consult-phone small{font-size:13px}
.com-renewal .cr-line,.com-renewal .cr-text-link{font-size:16px}
@media(max-width:700px){
 body{font-size:17px}.post_content>p,.post_content>.wp-block-group p,.post_content>.wp-block-columns p{font-size:17px}
 .post_content>h2{font-size:26px}.post_content>h3{font-size:22px}
 .com-renewal .kp-consult h2{font-size:23px}
 .com-renewal .kp-consult-copy{min-height:0}
 .com-renewal .kp-consult-copy{grid-row:1}
 .com-renewal .kp-consult-copy p{padding-right:0;min-height:0;margin-bottom:0}
 .com-renewal .kp-consult-mascots{position:relative;grid-row:2;grid-column:1;justify-self:end;top:auto;bottom:auto;right:0;margin-bottom:-36px}
 .com-renewal .kp-consult-panel{grid-row:3}
 .com-renewal .kp-consult-phone{gap:5px;padding:12px 5px}
 .com-renewal .kp-consult-phone strong{font-size:28px}
 .com-renewal .kp-consult-phone small{font-size:12px}
 .com-renewal .kp-phone-icon{font-size:21px}
 .com-renewal .kp-consult-line>span{flex-wrap:wrap;gap:3px 12px}
}
/* Compact consultation heading after removing the explanatory paragraph. */
.com-renewal .kp-consult-brand{font-size:21px;font-weight:750;margin-bottom:12px;line-height:1.5}.com-renewal .kp-consult-copy{min-height:0}.com-renewal .kp-consult{row-gap:18px}.com-renewal .kp-consult-mascots{top:70px}@media(max-width:700px){.com-renewal .kp-consult-brand{font-size:19px;margin-bottom:10px}.com-renewal .kp-consult{row-gap:8px}.com-renewal .kp-consult-mascots{top:auto;margin-top:0;margin-bottom:-32px}}

/* Give the consultation band breathing room between content sections. */
.com-renewal .kp-consult{margin-top:96px;margin-bottom:96px}@media(max-width:700px){.com-renewal .kp-consult{margin-top:64px;margin-bottom:64px}}

/* Consultation supporting message */
.com-renewal .kp-consult .kp-consult-note{font-size:18px;font-weight:700;line-height:1.75}
@media(max-width:700px){.com-renewal .kp-consult .kp-consult-note{font-size:16px}}

/* Mobile consultation headline: smaller, naturally wrapping copy. */
@media(max-width:700px){.com-renewal .kp-consult h2{font-size:21px;line-height:1.6}.com-renewal .kp-consult h2 br{display:none}}

/* Mobile consultation buttons: equal emphasis and simplified icons. */
.kp-consult .kp-simple-icon,.kp-consult .kp-line-official{display:none}
@media(max-width:700px){
 .com-renewal .kp-consult-buttons small{display:none}
 .com-renewal .kp-consult-buttons{gap:10px}
 .com-renewal .kp-consult-buttons a{display:grid;grid-template-columns:40px minmax(0,1fr) 12px;gap:10px;align-items:center;padding:8px 12px;min-height:60px!important;box-sizing:border-box}
 .com-renewal .kp-consult-buttons strong{font-size:18px;line-height:1.4}
 .com-renewal .kp-consult-line>span{display:block}
 .com-renewal .kp-consult .kp-legacy-icon{display:none}
 .com-renewal .kp-consult .kp-simple-icon{display:block;width:26px;height:26px;margin:auto}
 .com-renewal .kp-consult .kp-line-official{display:block;width:40px;height:40px;object-fit:contain;margin:0}
 .com-renewal .kp-consult .kp-consult-icon,.com-renewal .kp-consult .kp-phone-icon{display:block;margin:0;width:40px}
 .com-renewal .kp-consult .kp-consult-phone{display:grid;grid-template-columns:40px minmax(0,1fr) 12px;gap:10px;min-height:72px;padding:8px 12px;margin-top:10px;box-sizing:border-box}
 .com-renewal .kp-consult .kp-consult-phone strong{font-size:25px;line-height:1.25;letter-spacing:0;text-align:center}
 .com-renewal .kp-consult .kp-consult-phone small{font-size:10px;line-height:1.5;margin-top:3px;white-space:nowrap}
 .com-renewal .kp-consult .kp-consult-phone>b,.com-renewal .kp-consult-buttons a>b{font-size:23px}
}
@media(max-width:360px){.com-renewal .kp-consult-buttons strong{font-size:16px}.com-renewal .kp-consult .kp-consult-phone strong{font-size:22px}.com-renewal .kp-consult .kp-consult-phone small{font-size:9px}}

/* Shared consultation icons; keep desktop button text and sizing. */
@media(min-width:701px){
 .com-renewal .kp-consult .kp-legacy-icon{display:none}
 .com-renewal .kp-consult .kp-simple-icon{display:block;width:30px;height:30px;margin:auto}
 .com-renewal .kp-consult .kp-line-official{display:block;width:40px;height:40px;object-fit:contain;flex-shrink:0;margin:0}
}

/* Slightly lighter consultation heading on desktop and mobile. */
.com-renewal .kp-consult h2{font-weight:700}

/* Slightly smaller consultation heading. */
.com-renewal .kp-consult h2{font-size:29px}
@media(max-width:700px){.com-renewal .kp-consult h2{font-size:20px}}

/* Mobile consultation header: mascots beside the brand, no spacer row. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 68px;gap:12px 8px}
 .com-renewal .kp-consult-copy{display:contents}
 .com-renewal .kp-consult-brand{grid-column:1;grid-row:1;align-self:center;margin:0;letter-spacing:0;white-space:nowrap}
 .com-renewal .kp-consult .kp-consult-mascots{position:static;grid-column:2;grid-row:1;width:68px;align-self:center;justify-self:end;margin:0;filter:none}
 .com-renewal .kp-consult .kp-mascot-pair{padding:0;gap:3px}
 .com-renewal .kp-consult h2{grid-column:1/-1;grid-row:2;margin:0}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:3}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:17px}.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 60px}.com-renewal .kp-consult .kp-consult-mascots{width:60px}}

/* Tighter mobile consultation headline. */
@media(max-width:700px){.com-renewal .kp-consult h2{font-size:19px;line-height:1.45}}

@media(max-width:700px){.com-renewal .kp-consult h2{font-size:18px;font-weight:600}}

/* Mobile reassuring label with simple radiating accent strokes. */
.kp-brand-mobile{display:none}
@media(max-width:700px){
 .kp-consult-brand .kp-brand-desktop{display:none}
 .kp-consult-brand .kp-brand-mobile{display:inline}
 .com-renewal .kp-consult-brand{font-size:16px;letter-spacing:-.035em;position:relative}
 .kp-brand-mobile em{font-style:normal;color:#d65b16;position:relative;display:inline-block}
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{content:"";position:absolute;background:#ef691b;border-radius:1px;width:2px;pointer-events:none}
 .kp-brand-mobile em::before{height:10px;left:9px;top:-9px;transform:rotate(-28deg)}
 .kp-brand-mobile em::after{height:7px;left:3px;top:-4px;transform:rotate(-48deg)}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:14px}}

/* Reverse-color badge for the mobile reassurance word. */
@media(max-width:700px){.kp-brand-mobile em{background:#d65b16;color:#fff;border-radius:3px;padding:1px 4px;margin:0 3px;line-height:1.35}}

/* Mirrored accent strokes around 安心, without a filled badge. */
@media(max-width:700px){
 .kp-brand-mobile em{background:transparent;color:#d65b16;border-radius:0;padding:0;margin:0 9px;line-height:inherit}
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{width:2px;height:11px;top:3px;background:#ef691b;border-radius:1px}
 .kp-brand-mobile em::before{left:-6px;right:auto;transform:rotate(-25deg);box-shadow:-4px 3px 0 -0.25px #ef691b}
 .kp-brand-mobile em::after{left:auto;right:-6px;transform:rotate(25deg);box-shadow:4px 3px 0 -0.25px #ef691b}
}

/* Tapered outward-opening emphasis marks, matching the supplied reference. */
@media(max-width:700px){
 .kp-brand-mobile em{margin:0 10px}
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{width:10px;height:18px;top:50%;background:#ef691b;border-radius:0;box-shadow:none;clip-path:polygon(0 0,35% 0,100% 100%,73% 70%,0 35%,15% 30%,62% 68%)}
 .kp-brand-mobile em::before{left:-11px;right:auto;transform:translateY(-55%)}
 .kp-brand-mobile em::after{left:auto;right:-11px;transform:translateY(-55%) scaleX(-1)}
}

/* Two distinct tapered rays per side, based on the latest reference. */
@media(max-width:700px){
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{
  width:12px;height:22px;top:50%;border-radius:0;box-shadow:none;clip-path:none;
  background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 44'%3E%3Cpath fill='%23ef691b' d='M8 3 16 0 30 44Z M0 18 5 14 24 42Z'/%3E%3C/svg%3E") center/contain no-repeat;
 }
 .kp-brand-mobile em{margin:0 13px}
 .kp-brand-mobile em::before{left:-14px;right:auto;transform:translateY(-50%)}
 .kp-brand-mobile em::after{left:auto;right:-14px;transform:translateY(-50%) scaleX(-1)}
}

/* Smaller, slightly raised accents around 安心. */
@media(max-width:700px){.kp-brand-mobile em::before,.kp-brand-mobile em::after{width:9px;height:17px;top:38%}.kp-brand-mobile em{margin:0 10px}.kp-brand-mobile em::before{left:-11px}.kp-brand-mobile em::after{right:-11px}}

/* A small speech bubble adds a friendly accent to 安心. */
@media(max-width:700px){
 .kp-brand-mobile em{display:inline-block;position:relative;vertical-align:baseline;margin:0 4px;padding:3px 6px 4px;border-radius:9px;background:#ef691b;color:#fff;line-height:1.1;letter-spacing:0;transform:translateY(-3px)}
 .kp-brand-mobile em::before{display:none}
 .kp-brand-mobile em::after{content:"";display:block;position:absolute;left:9px;right:auto;top:auto;bottom:-4px;width:7px;height:6px;background:#ef691b;clip-path:polygon(0 0,100% 0,15% 100%);transform:none;box-shadow:none;border-radius:0}
}

/* Speech bubble points toward 無料相談. */
@media(max-width:700px){.kp-brand-mobile em::after{left:auto;right:-4px;top:50%;bottom:auto;width:7px;height:7px;clip-path:polygon(0 0,100% 80%,0 100%);transform:translateY(-25%)}}

/* A gently curved tail emerges from the lower-right of the bubble. */
@media(max-width:700px){
 .kp-brand-mobile em::after{left:auto;right:-5px;top:auto;bottom:-5px;width:13px;height:11px;clip-path:none;transform:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cpath fill='%23ef691b' d='M0 0H9C8 5 10 9 16 10C8 15 2 9 0 0Z'/%3E%3C/svg%3E") center/contain no-repeat}
}

/* Trial G: cloud-shaped orange reassurance bubble on mobile. */
@media(max-width:700px){
 .kp-brand-mobile em{background:transparent url('/assets/lp/assurance-tree-green-v1.svg') center/100% 100% no-repeat;color:#fff;border-radius:0;padding:11px 10px 14px;margin:0 2px;line-height:1.1;min-width:55px;text-align:center;transform:translateY(-2px)}
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{display:none}
}

/* Reduce only the lettering, retaining the tree badge dimensions. */
@media(max-width:700px){.kp-brand-mobile em{font-size:14px;line-height:17.6px}}
@media(max-width:360px){.kp-brand-mobile em{font-size:12px;line-height:15.4px}}

/* Desktop CTA: center icon and copy together; anchor arrows separately. */
@media(min-width:701px){
 .com-renewal .kp-consult-buttons a,.com-renewal .kp-consult .kp-consult-phone{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;padding-left:42px;padding-right:42px}
 .com-renewal .kp-consult-buttons a>span,.com-renewal .kp-consult .kp-consult-phone>span{flex:0 1 auto;text-align:center}
 .com-renewal .kp-consult .kp-consult-icon,.com-renewal .kp-consult .kp-phone-icon{margin:0;flex:0 0 30px}
 .com-renewal .kp-consult-buttons a>b,.com-renewal .kp-consult .kp-consult-phone>b{position:absolute;right:16px;top:50%;transform:translateY(-50%);margin:0}
}

/* Mobile CTA: center the icon and copy as a single group. */
@media(max-width:700px){
 .com-renewal .kp-consult-buttons a,.com-renewal .kp-consult .kp-consult-phone{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding-left:24px;padding-right:24px}
 .com-renewal .kp-consult-buttons a>span,.com-renewal .kp-consult .kp-consult-phone>span{flex:0 1 auto;text-align:center;min-width:0}
 .com-renewal .kp-consult .kp-consult-icon,.com-renewal .kp-consult .kp-phone-icon{flex:0 0 26px;width:26px;margin:0}
 .com-renewal .kp-consult .kp-line-official{flex:0 0 40px}
 .com-renewal .kp-consult-buttons a>b,.com-renewal .kp-consult .kp-consult-phone>b{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0}
}

.kp-line-label-mobile{display:none}
@media(max-width:700px){.kp-line-label-desktop{display:none}.kp-line-label-mobile{display:inline}}

/* Desktop consultation: simpler button labels and the reassurance tree. */
@media(min-width:701px){
 .com-renewal .kp-consult-buttons small{display:none}
 .kp-consult-brand .kp-brand-desktop{display:none}
 .kp-consult-brand .kp-brand-mobile{display:inline}
 .kp-brand-mobile em{display:inline-block;position:relative;vertical-align:baseline;background:transparent url('/assets/lp/assurance-tree-green-v1.svg') center/100% 100% no-repeat;color:#fff;border-radius:0;padding:12px 11px 16px;margin:0 3px;font-style:normal;font-size:16px;font-weight:750;line-height:20px;letter-spacing:0;min-width:62px;text-align:center;transform:translateY(-2px)}
 .kp-brand-mobile em::before,.kp-brand-mobile em::after{display:none}
}

/* Mobile consultation footer fits on one line. */
@media(max-width:700px){.com-renewal .kp-consult .kp-consult-note{font-size:clamp(8px,2.5vw,12px);font-weight:600;line-height:1.6;letter-spacing:-.035em;white-space:nowrap}}

/* Mobile consultation title and mascots centered as a compact pair. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) max-content 60px minmax(0,1fr);column-gap:4px}
 .com-renewal .kp-consult-brand{grid-column:2;grid-row:1;justify-self:center}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:3;grid-row:1;width:60px;justify-self:start}
 .com-renewal .kp-consult h2,.com-renewal .kp-consult-panel{grid-column:1/-1}
}
@media(max-width:360px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) max-content 52px minmax(0,1fr)}.com-renewal .kp-consult .kp-consult-mascots{width:52px}}

/* Mobile title: mascots on the left, group remains centered. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 60px max-content minmax(0,1fr)}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:2;justify-self:end}
 .com-renewal .kp-consult-brand{grid-column:3}
}
@media(max-width:360px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 52px max-content minmax(0,1fr)}}

/* Mobile consultation: mascots alongside the supporting headline. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:60px minmax(0,1fr);column-gap:10px}
 .com-renewal .kp-consult-brand{grid-column:1/-1;grid-row:1;justify-self:center}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:1;grid-row:2;width:60px;justify-self:start;align-self:center}
 .com-renewal .kp-consult h2{grid-column:2;grid-row:2;align-self:center}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:3}
}
@media(max-width:360px){.com-renewal .kp-consult{grid-template-columns:52px minmax(0,1fr)}.com-renewal .kp-consult .kp-consult-mascots{width:52px}}

/* Mobile mascots peek from behind the upper-right of the button panel. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr);row-gap:10px}
 .com-renewal .kp-consult-brand{grid-column:1;grid-row:1}
 .com-renewal .kp-consult h2{grid-column:1;grid-row:2}
 .com-renewal .kp-consult .kp-consult-mascots{position:relative;grid-column:1;grid-row:3;justify-self:end;align-self:end;width:100px;margin:0 3px -29px;z-index:1}
 .com-renewal .kp-consult-panel{position:relative;grid-column:1;grid-row:4;z-index:2}
}

/* Compact mobile copy and mascot space above the CTA panel. */
@media(max-width:700px){
 .com-renewal .kp-consult{row-gap:6px}
 .com-renewal .kp-consult h2{font-size:16px;line-height:1.45}
 .com-renewal .kp-consult .kp-consult-mascots{width:82px;margin-top:0;margin-bottom:-29px}
}

/* Mobile consultation brand: stronger heading with a full-width underline. */
@media(max-width:700px){
 .com-renewal .kp-consult-brand{width:100%;justify-self:stretch;text-align:center;font-size:20px;letter-spacing:-.035em;padding-bottom:8px}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:18px}}

/* Mobile consultation: intentional two-line copy and more visible mascots. */
@media(max-width:700px){
 .com-renewal .kp-consult h2 br{display:block}
 .com-renewal .kp-consult .kp-consult-mascots{transform:translateY(-9px)}
}

/* Raise only Pokemaru in the mobile consultation mascot pair. */
@media(max-width:700px){.com-renewal .kp-consult .kp-consult-mascots .kp-pocket{transform:translateY(-7px)}}

/* Mobile supporting copy and mascots share one row above the buttons. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 68px;column-gap:8px;row-gap:8px}
 .com-renewal .kp-consult-brand{grid-column:1/-1;grid-row:1}
 .com-renewal .kp-consult h2{grid-column:1;grid-row:2;align-self:center;font-size:15px;line-height:1.45;margin:0}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:2;grid-row:2;position:relative;width:68px;margin:0;transform:none;align-self:center;justify-self:end}
 .com-renewal .kp-consult .kp-consult-mascots .kp-pocket{transform:none}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:3}
}
@media(max-width:700px){.com-renewal .kp-consult h2{text-wrap:balance}}

/* Keep the two intended copy lines beside the mascots on narrow phones. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 52px;column-gap:6px}
 .com-renewal .kp-consult h2{font-size:clamp(11px,3.45vw,15px);line-height:1.5;letter-spacing:-.025em;white-space:nowrap;text-wrap:nowrap}
 .com-renewal .kp-consult h2 br{display:block}
 .com-renewal .kp-consult .kp-consult-mascots{width:52px}
}

/* Center the tree itself, with brand and service on either side. */
@media(max-width:700px){
 .com-renewal .kp-consult-brand{font-size:18px}
 .kp-consult-brand .kp-brand-mobile{display:grid;grid-template-columns:minmax(0,1fr) 55px minmax(0,1fr);align-items:center;gap:3px;width:100%}
 .kp-brand-mobile .kp-brand-no{display:none}
 .kp-brand-mobile .kp-brand-name{text-align:right}
 .kp-brand-mobile .kp-brand-service{text-align:left}
 .kp-brand-mobile em{margin-left:0;margin-right:0}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:16px}}

.kp-brand-here{display:none}
@media(max-width:700px){.kp-brand-here{display:inline}}

/* Center the entire mobile brand label naturally as one group. */
@media(max-width:700px){
 .kp-consult-brand .kp-brand-mobile{display:flex;align-items:center;justify-content:center;gap:3px;width:100%}
 .kp-brand-mobile .kp-brand-name,.kp-brand-mobile .kp-brand-service{flex:0 0 auto;text-align:center}
 .kp-brand-mobile em{flex:0 0 55px}
}

/* Desktop: brand heading leads, supporting copy is secondary. */
@media(min-width:701px){
 .com-renewal .kp-consult-brand{font-size:29px;line-height:1.5}
 .com-renewal .kp-consult h2{font-size:21px;line-height:1.6}
 .kp-brand-mobile em{min-width:72px;font-size:19px;line-height:24px;padding:13px 12px 18px}
}

/* Desktop mascots occupy the header row with their full bodies visible. */
@media(min-width:701px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 190px;column-gap:24px;row-gap:18px}
 .com-renewal .kp-consult-copy{grid-column:1;grid-row:1;padding-right:0;align-self:center}
 .com-renewal .kp-consult .kp-consult-mascots{position:relative;grid-column:2;grid-row:1;top:auto;right:auto;bottom:auto;width:190px;margin:0;align-self:center;justify-self:end;transform:none}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:2}
}

/* Match desktop consultation heading wording to mobile. */
@media(min-width:701px){.kp-brand-mobile .kp-brand-no{display:none}.kp-brand-mobile .kp-brand-here{display:inline}}

/* Desktop supporting copy on one line with room for the mascots. */
@media(min-width:701px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 150px;column-gap:18px}
 .com-renewal .kp-consult .kp-consult-mascots{width:150px}
 .com-renewal .kp-consult h2{font-size:17px;line-height:1.6}
 .com-renewal .kp-consult h2 br{display:none}
}

/* Larger reassurance tree on desktop only. */
@media(min-width:701px){.kp-brand-mobile em{min-width:88px;font-size:21px;line-height:28px;padding:16px 15px 21px}}

/* Desktop: larger mascots peek behind the panel, closer to the copy. */
@media(min-width:701px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 230px;column-gap:12px}
 .com-renewal .kp-consult .kp-consult-mascots{width:230px;align-self:end;margin-bottom:-48px;z-index:1}
 .com-renewal .kp-consult-panel{z-index:3}
}

/* Desktop copy and mascots form a compact centered group over the panel. */
@media(min-width:701px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) max-content 230px minmax(0,1fr);column-gap:10px}
 .com-renewal .kp-consult-copy{grid-column:2;grid-row:1;min-width:0}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:3;grid-row:1}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:2}
}
@media(min-width:701px) and (max-width:1050px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 180px}
 .com-renewal .kp-consult-copy{grid-column:1}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:2;width:180px}
}

/* Mobile: compact centered heading/copy group with mascots behind the panel. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 64px;column-gap:8px;row-gap:8px}
 .com-renewal .kp-consult-copy{display:block;grid-column:1;grid-row:1;padding:0;min-width:0;align-self:center}
 .com-renewal .kp-consult-brand{display:block;width:100%;font-size:14px;text-align:center;padding-bottom:5px;margin-bottom:7px;letter-spacing:-.04em}
 .kp-consult-brand .kp-brand-mobile{gap:1px}
 .kp-brand-mobile em{flex:0 0 39px;min-width:39px;padding:7px 5px 10px;font-size:11px;line-height:14px}
 .com-renewal .kp-consult h2{font-size:clamp(10px,3.05vw,13px);line-height:1.5;white-space:normal;text-wrap:pretty}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:2;grid-row:1;width:64px;align-self:end;justify-self:end;margin:0 0 -17px;z-index:1}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:2;z-index:3}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:12px}.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) 56px;column-gap:6px}.com-renewal .kp-consult .kp-consult-mascots{width:56px}}

/* Mobile brand spans the card; copy and mascots share the row beneath. */
@media(max-width:700px){
 .com-renewal .kp-consult-copy{display:contents}
 .com-renewal .kp-consult-brand{grid-column:1/-1;grid-row:1;font-size:18px;width:100%;padding-bottom:8px;margin-bottom:0}
 .kp-consult-brand .kp-brand-mobile{gap:3px}
 .kp-brand-mobile em{flex:0 0 55px;min-width:55px;padding:11px 10px 14px;font-size:14px;line-height:17.6px}
 .com-renewal .kp-consult h2{grid-column:1;grid-row:2}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:2;grid-row:2}
 .com-renewal .kp-consult-panel{grid-column:1/-1;grid-row:3}
}
@media(max-width:360px){.com-renewal .kp-consult-brand{font-size:16px}.kp-brand-mobile em{font-size:12px;line-height:15.4px}}

/* Mobile copy/mascot pair centered independently of the full-width heading. */
@media(max-width:700px){
 .com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) max-content 64px minmax(0,1fr);column-gap:4px}
 .com-renewal .kp-consult-brand{grid-column:1/-1}
 .com-renewal .kp-consult h2{grid-column:2;grid-row:2;white-space:nowrap;text-wrap:nowrap}
 .com-renewal .kp-consult .kp-consult-mascots{grid-column:3;grid-row:2;justify-self:start}
 .com-renewal .kp-consult-panel{grid-column:1/-1}
}
@media(max-width:360px){.com-renewal .kp-consult{grid-template-columns:minmax(0,1fr) max-content 56px minmax(0,1fr)}}

/* Tighten mobile phone number and reception details. */
@media(max-width:700px){
 .com-renewal .kp-consult .kp-consult-phone strong{line-height:1.15}
 .com-renewal .kp-consult .kp-consult-phone small{margin-top:0;font-weight:600;line-height:1.4}
}

/* Match desktop phone spacing and supporting text weight. */
@media(min-width:701px){
 .com-renewal .kp-consult .kp-consult-phone strong{line-height:1.15}
 .com-renewal .kp-consult .kp-consult-phone small{margin-top:0;font-weight:600;line-height:1.4}
}

/* Slightly larger mobile phone reception details. */
@media(max-width:700px){.com-renewal .kp-consult .kp-consult-phone small{font-size:11px}}
@media(max-width:360px){.com-renewal .kp-consult .kp-consult-phone small{font-size:10px}}

/* Give mobile consultation buttons a little more vertical separation. */
@media(max-width:700px){
 .com-renewal .kp-consult-buttons{row-gap:16px}
 .com-renewal .kp-consult .kp-consult-phone{margin-top:16px}
}

/* More breathing room around desktop consultation cards and orange band. */
@media(min-width:701px){
 .com-renewal .kp-consult{padding:44px;margin-top:112px;margin-bottom:112px}
 .com-renewal .kp-consult-panel{padding:30px}
 .com-renewal .kp-consult::before{top:-56px;bottom:-56px}
}

/* Mobile reassurance caption sits on the beige card. */
.com-renewal .kp-note-outside{display:none}
@media(max-width:700px){
 .com-renewal .kp-consult-panel .kp-note-inside{display:none}
 .com-renewal .kp-consult>.kp-note-outside{display:block;grid-column:1/-1;grid-row:4;margin:6px 0 2px;text-align:center}
}

/* Desktop reassurance caption also sits outside the white card. */
@media(min-width:701px){
 .com-renewal .kp-consult-panel .kp-note-inside{display:none}
 .com-renewal .kp-consult>.kp-note-outside{display:block;grid-column:1/-1;grid-row:3;margin:0;text-align:center}
}

/* Slightly larger mobile consultation introduction. */
@media(max-width:700px){.com-renewal .kp-consult h2{font-size:clamp(10.5px,3.25vw,14px)}}

/* Housing equipment imported from the LP; scoped to the new section. */
.com-renewal .com-set{margin:60px 0;padding:32px 24px;background:#fff8ec;border-radius:16px;color:#333}
.com-set .section-head>p{color:#bf510f;font-weight:700;margin:0 0 8px}
.com-set .section-head h2{font-size:30px;line-height:1.5;margin:0 0 12px}
.com-set .section-copy{font-size:16px;line-height:1.7}
.com-set .set-offer{display:flex;align-items:center;justify-content:center;gap:18px;margin:24px 0;padding:16px;background:#fff0cf;border-radius:10px}
.com-set .set-offer img{width:45px;height:auto;display:block}
.com-set .set-offer p{margin:0;line-height:1.6}.com-set .set-offer p span,.com-set .set-offer p strong{display:block}
.com-set .set-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.com-set .set-card{background:#fff;border:1px solid #ecdfcd;border-radius:10px;overflow:hidden;min-width:0;display:flex;flex-direction:column}
.com-set .set-card>header{padding:10px;background:#fff0d7;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;font-weight:700}.com-set .set-card>header small{font-size:10px}
.com-set .set-card-media img{width:100%;height:155px;object-fit:contain;display:block}
.com-set .set-card-body{padding:14px;display:flex;flex-direction:column;flex:1}
.com-set .set-tags{display:flex;flex-wrap:wrap;gap:4px;min-height:42px;align-content:start}.com-set .set-tags span{font-size:10px;background:#eef5fa;color:#28618a;padding:2px 5px;border-radius:3px}
.com-set .set-card h3{font-size:17px;line-height:1.5;margin:8px 0;min-height:51px}.com-set .set-model{font-size:13px;overflow-wrap:anywhere}
.com-set .set-regular{font-size:11px;margin:16px 0 12px;line-height:1.6}.com-set .set-regular-price{display:block;font-size:18px}.com-set .set-regular p{font-size:10px;margin:4px 0}
.com-set .set-price{margin-top:auto;background:#fff6e5;padding:12px 8px;border-radius:6px}.com-set .set-deal-medal{display:none}.com-set .set-price-label{display:block;font-size:11px;color:#825529}.com-set .set-price>strong{font-size:30px;color:#c62828;white-space:nowrap;letter-spacing:-.04em}.com-set .set-price-yen,.com-set .set-price-suffix{font-size:.5em}.com-set .set-price small,.com-set .set-regular-price small{font-size:10px}
.com-set .product-inquiry-button{display:block;text-align:center;background:#1565c0;color:white;font-size:13px;font-weight:700;text-decoration:none;padding:12px 4px;border-radius:5px;margin-top:12px}
.com-set .set-note,.com-set .set-price-disclaimer{font-size:12px;line-height:1.7;color:#666;margin:14px 0 0}.com-set-swipe{display:none}
@media(max-width:1000px) and (min-width:701px){.com-set .set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .com-renewal .com-set{margin:40px 0;padding:22px 12px;border-radius:10px}
 .com-set .section-head>p{font-size:13px}.com-set .section-head h2{font-size:22px}.com-set .section-copy{font-size:13px}
 .com-set .set-offer{gap:10px;padding:12px;margin:18px 0}.com-set .set-offer p{font-size:12px}.com-set .set-offer img{width:34px}
 .com-set .set-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:12px}
 .com-set .set-card{flex:0 0 88%;scroll-snap-align:start}
 .com-set .set-card-media img{height:160px}.com-set .set-tags{min-height:0}.com-set .set-card h3{min-height:0;font-size:18px}.com-set .set-price>strong{font-size:34px}
 .com-set-swipe{display:block;text-align:right;font-size:11px;color:#626262;margin:0 0 8px}
 .com-set .set-note,.com-set .set-price-disclaimer{font-size:11px}
}

/* Desktop set replacement heading on one line. */
@media(min-width:701px){.com-set .section-head h2 br{display:none}}

/* Footer transplanted from LP. */
.kp-lp-footer{color:#fff;background:#3d2113;border-top:6px solid #d8a72b;padding:58px 24px 116px}
.kp-lp-footer-main{grid-template-columns:270px minmax(0,1fr) 278px;align-items:start;gap:52px;width:min(1120px,100%);margin:auto;display:grid}
.kp-lp-footer-brand>a{display:block}
.kp-lp-footer-brand img{background:#fff;border-radius:10px;width:250px;height:auto;padding:10px}
.kp-lp-footer-brand p{color:#f4e9de;margin:17px 0 7px;font-size:14px;font-weight:750;line-height:1.7}
.kp-lp-footer-brand small{color:#d7bda8;font-size:12px;font-weight:800}
.kp-lp-footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}
.kp-lp-footer-links nav{flex-direction:column;align-items:flex-start;gap:11px;display:flex}
.kp-lp-footer-links strong{color:#f2cf54;margin-bottom:4px;font-size:15px;font-weight:950}
.kp-lp-footer-links a{color:#fffaf5;opacity:.9;font-size:14px;font-weight:800;line-height:1.5;transition:opacity .18s,color .18s}
.kp-lp-footer-links a:hover{color:#f2cf54;opacity:1}
.kp-lp-footer-contact{background:#180b053d;border:1px solid #f2cf5457;border-radius:16px;padding:22px 21px}
.kp-lp-footer-contact>span{color:#f2cf54;font-size:14px;font-weight:950;display:block}
.kp-lp-footer-contact>a:not(.kp-lp-footer-contact-link){color:#fff;letter-spacing:-.035em;margin:8px 0 13px;font-family:Arial Black,Arial,sans-serif;font-size:25px;font-weight:900;line-height:1.15;display:block}
.kp-lp-footer-contact p{color:#eadfd6;margin:5px 0 0;font-size:13px;font-weight:700}
.kp-lp-footer-contact p b{color:#fff;font-weight:950}
.kp-lp-footer-contact-link{color:#fff;background:#276f98;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;margin-top:17px;padding:9px 13px;font-size:13px;font-weight:950;display:flex;box-shadow:0 4px #164f70}
.kp-lp-footer-contact-link i{color:#f2cf54;font-size:18px;font-style:normal}
.kp-lp-footer-bottom{border-top:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:20px;width:min(1120px,100%);margin:36px auto 0;padding-top:20px;display:flex}
.kp-lp-footer-bottom p{color:#cdb8aa;margin:0;font-size:11px;font-weight:700}
.kp-lp-footer-bottom a{color:#e8d8cb;font-size:12px;font-weight:850}
.kp-lp-footer-bottom a span{color:#f2cf54;margin-left:4px}
@media(max-width:900px){
.kp-lp-footer{padding:42px 18px 106px}
.kp-lp-footer-main{grid-template-columns:1fr;gap:30px}
.kp-lp-footer-brand{text-align:center}
.kp-lp-footer-brand img{width:220px;margin:auto}
.kp-lp-footer-brand p{margin-top:14px}
.kp-lp-footer-links{gap:22px}
.kp-lp-footer-links nav{gap:10px}
.kp-lp-footer-links strong{font-size:14px}
.kp-lp-footer-links a{font-size:13px}
.kp-lp-footer-contact{text-align:center;padding:20px}
.kp-lp-footer-contact>a:not(.kp-lp-footer-contact-link){font-size:26px}
.kp-lp-footer-contact-link{max-width:260px;margin:17px auto 0}
.kp-lp-footer-bottom{text-align:center;flex-direction:column-reverse;gap:12px;margin-top:28px;padding-top:18px}
}
.kp-lp-footer a{text-decoration:none}.kp-lp-footer *{box-sizing:border-box}.kp-lp-footer-contact-link{background:#1565c0}

/* Join the last mobile CTA orange band directly to the footer. */
@media(max-width:700px){body:has(#com-footer) #content{margin-bottom:28px}}

/* Join the last desktop CTA orange band directly to the footer. */
@media(min-width:701px){body:has(#com-footer) #content{margin-bottom:56px}}

/* Keep the final mobile orange bleed inside the content clipping boundary. */
@media(max-width:700px){body:has(#com-footer) #content{margin-bottom:0;padding-bottom:28px}}

/* Close the subpixel seam between the final orange CTA and footer. */
@media(min-width:701px){body:has(#com-footer) #content{margin-bottom:0;padding-bottom:56px}}
body:has(#com-footer) #com-footer{position:relative;margin-top:-1px}

/* Keep the preserved social cards side by side on mobile. */
@media(max-width:700px){
 #com-social-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;align-items:start}
 #com-social-cards>.wp-block-column{min-width:0;margin:0!important;width:auto!important}
 #com-social-cards .wp-block-image{margin:0 0 12px!important}
 #com-social-cards figure{margin:0!important}
 #com-social-cards img{display:block;width:100%;height:auto}
 #com-social-cards .swell-block-button{margin:0!important}
 #com-social-cards .swell-block-button__link{display:block;width:100%;padding:10px 4px;font-size:12px;letter-spacing:0;white-space:nowrap;min-width:0}
}

/* Social cards just before the final consultation block. */
.com-renewal #com-social-cards{margin-top:40px;margin-bottom:0}
.com-renewal #com-social-cards .swell-block-button__link{color:#fff}

/* ======== lp-decisions.css（確認ページ v264 より・2026-09-13） ======== */
.lp-new-hero{background-image:linear-gradient(90deg,#fff 0%,#ffffffed 30%,#ffffff33 100%),url('/assets/lp/hero-bath-original-v1.webp');background-size:cover;background-position:center;padding-top:30px}
.lp-new-hero .hero-brand-title{font-family:var(--font-rounded,'Arial Rounded MT Bold','Hiragino Maru Gothic ProN',sans-serif);font-size:44px;line-height:1.35;letter-spacing:-.035em;text-shadow:none;font-weight:900;margin:16px 0}
.lp-new-hero .hero-brand-title span{display:block}.lp-new-hero .area-copy{margin:14px 0 0;justify-content:flex-start;font-size:15px}.lp-new-hero .area-copy em{color:inherit;font-style:normal}
.lp-new-hero .kh-area{font-size:12px}.lp-new-hero .kh-offer{padding-top:82px}.lp-new-hero .kh-offer-mascots{top:-4px}.lp-new-hero .kh-offer-mascots img:first-child{width:105px}.lp-new-hero .kh-offer-mascots img:last-child{width:62px;transform:translateY(-15px)}
.lp-new-hero .kh-actions{grid-template-columns:1fr 1fr}.lp-new-hero .kh-actions a{min-height:64px}.lp-new-hero .kh-actions strong{font-size:16px}.lp-new-hero .lp-hero-line{display:flex;flex-direction:row;gap:8px;background:#06c755;color:white;box-shadow:0 3px #049e43}.lp-hero-line img{width:36px;height:36px}
.lp-grant{background:#f3fff8;border:1px solid #92c3a8;border-radius:9px;margin-top:14px;padding:12px 16px;color:#23764f}.lp-grant>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.lp-grant>div>span{font-size:12px;font-weight:700;background:#27875a;color:white;padding:6px 9px;border-radius:4px}.lp-grant strong{font-size:20px;white-space:nowrap;line-height:1.1}.lp-grant b{font-size:48px}.lp-grant small{font-size:12px}.lp-grant p{font-size:12px;line-height:1.7;margin-top:8px}
.lp-trust-strip{background:#fff;border-bottom:1px solid #eee2d5;padding:30px 24px}.lp-trust-strip>div{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.lp-trust-strip article{display:flex;align-items:center;justify-content:center;gap:14px;color:#463b32}.lp-trust-icon{flex:0 0 58px;height:58px;background:#ef691b;color:white;border-radius:15px;padding:13px}.lp-trust-icon svg{display:block;width:100%;height:100%}.lp-trust-strip article>div>span{display:block;font-size:15px;font-weight:700}.lp-trust-strip strong{display:block;font-size:25px;line-height:1.35;font-weight:850}.lp-trust-strip small{display:block;font-size:12px;color:#70665e;margin-top:3px}
.lp-consult-shell{max-width:1120px;margin:0 auto;padding:0 24px;font-family:system-ui,sans-serif;color:#533722;line-height:1.7}.lp-consult-shell p,.lp-consult-shell h2,.lp-consult-shell figure{margin:0}.lp-consult-shell *{box-sizing:border-box}.lp-consult-shell a{text-decoration:none}.lp-consult-shell .kp-consult-note{color:#6e6258}.lp-consult-shell .kp-brand-mobile em{font-style:normal}
@media(max-width:700px){
 .lp-new-hero{padding:20px 16px;background-position:62% center;background-image:linear-gradient(90deg,#fffffff7,#ffffffb8),url('/assets/lp/hero-bath-original-v1.webp')}
 .lp-new-hero .hero-brand-title{font-size:32px;margin:16px 0 12px}.lp-new-hero .area-copy{font-size:12px;gap:10px}.lp-new-hero .area-copy>span{padding:7px 10px}.lp-new-hero .area-copy b{font-size:12px}.lp-new-hero .area-copy b em{font-size:20px}
 .lp-new-hero .kh-offer{padding-top:0}.lp-new-hero .kh-offer-mascots{display:none}.lp-new-hero .kh-visual{display:none}.lp-new-hero .kh-area{font-size:10px}
 .lp-new-hero .kh-actions{gap:8px}.lp-new-hero .kh-actions a{padding:10px 5px;min-height:56px}.lp-new-hero .kh-actions strong{font-size:12px}.lp-new-hero .lp-hero-line{gap:3px}.lp-hero-line img{width:28px;height:28px}
 .lp-new-hero .kh-price-label{font-size:12px}.lp-new-hero .kh-notes{font-size:10px;margin-top:12px;line-height:1.6}
 .lp-grant{padding:10px;margin-top:10px}.lp-grant>div>span{font-size:10px;padding:5px}.lp-grant b{font-size:38px}.lp-grant strong{font-size:16px}.lp-grant p{font-size:11px;margin-top:6px}
 .lp-trust-strip{padding:20px 12px}.lp-trust-strip>div{gap:8px}.lp-trust-strip article{flex-direction:column;gap:8px;text-align:center;justify-content:flex-start}.lp-trust-icon{flex-basis:42px;width:42px;height:42px;border-radius:11px;padding:9px}.lp-trust-strip article>div>span{font-size:10px;white-space:nowrap}.lp-trust-strip strong{font-size:18px}.lp-trust-strip small{font-size:10px;line-height:1.5}
 .lp-consult-shell{padding:0 16px}.lp-consult-shell .kp-consult h2{font-weight:600;font-size:clamp(10.5px,3.25vw,14px);line-height:1.5}
}
@media(max-width:700px){.lp-trust-strip strong{font-size:clamp(14px,4.1vw,18px);white-space:nowrap}}
/* FVの実績表示を控えめにする */
.lp-new-hero .area-copy b{font-size:24px}
.lp-new-hero .area-copy b em{font-size:46px}
@media(max-width:700px){
 .lp-new-hero .area-copy b{font-size:11px}
 .lp-new-hero .area-copy b em{font-size:18px}
}
/* 最新.comの補助金バナーに合わせる */
.lp-grant{padding:0;border:0;border-radius:10px;overflow:hidden;background:#207b50}
.lp-grant>div{justify-content:center;gap:20px;padding:17px 16px;color:#ffe77a}
.lp-grant>div>span{background:#fff;color:#207b50;padding:9px 12px;font-size:14px;white-space:nowrap}
.lp-grant strong{font-size:22px;letter-spacing:-.04em}
.lp-grant b{font-size:46px}
.lp-grant small{color:white;font-size:16px;letter-spacing:0}
.lp-grant p{display:flex;justify-content:center;gap:18px;margin:0;padding:10px 12px;background:#e8f5ed;color:#225f42;font-size:12px;font-weight:700;line-height:1.6}
.lp-grant p span{white-space:nowrap}
@media(max-width:700px){
 .lp-grant>div{gap:12px;padding:12px 10px}
 .lp-grant>div>span{font-size:10px;padding:7px 8px}
 .lp-grant strong{font-size:16px}.lp-grant b{font-size:30px}.lp-grant small{font-size:11px}
 .lp-grant p{flex-direction:column;gap:2px;padding:7px 12px;font-size:10px}
}
/* FVのLINEは元LPのボタンを使用 */
.lp-new-hero .kh-actions .action-line{display:grid;grid-template-columns:36px max-content;justify-content:center;gap:8px;position:relative;padding:12px 24px 12px 10px;color:white;background-color:var(--line-green);border-bottom:4px solid #049e43;box-shadow:none}
.lp-new-hero .kh-actions .action-line strong{font-size:21px;display:block}
.lp-new-hero .kh-actions .action-line small{font-size:10px;display:block}
.lp-new-hero .kh-actions .line-mark{width:36px;height:36px;font-size:10px;border-radius:10px}
.lp-new-hero .kh-actions .action-line>i{position:absolute;right:8px;font-size:22px}
@media(max-width:700px){
 .lp-new-hero .kh-actions .action-line{grid-template-columns:24px 1fr;gap:5px;padding:8px 14px 8px 6px}
 .lp-new-hero .kh-actions .action-line strong{font-size:12px}
 .lp-new-hero .kh-actions .action-line small{font-size:7px;letter-spacing:-.06em;white-space:nowrap}
 .lp-new-hero .kh-actions .line-mark{width:24px;height:26px;font-size:8px;border-radius:7px}
 .lp-new-hero .kh-actions .action-line>i{right:4px;font-size:17px}
}
/* FVの2つの相談ボタンの外形を揃える */
.lp-new-hero .kh-actions{align-items:stretch}
.lp-new-hero .kh-actions>a{box-sizing:border-box;height:76px;min-height:76px;margin:0}
.lp-new-hero .kh-actions .kh-web{border-bottom:4px solid #124f9b;box-shadow:none}
@media(max-width:700px){.lp-new-hero .kh-actions>a{height:60px;min-height:60px}}
/* FV見出しを表示幅いっぱいまで拡大 */
.lp-new-hero .kh-copy{container-type:inline-size}
.lp-new-hero .hero-brand-title{font-size:clamp(44px,5vw,66px);line-height:1.28;letter-spacing:-.045em}
@supports(font-size:1cqi){.lp-new-hero .hero-brand-title{font-size:11.5cqi}}
@media(max-width:700px){
 .lp-new-hero .hero-brand-title{font-size:clamp(30px,9.1vw,48px);line-height:1.3;margin:18px 0}
 @supports(font-size:1cqi){.lp-new-hero .hero-brand-title{font-size:11.5cqi}}
}
.lp-new-hero .lp-hero-intro{margin:12px 0 0;font-size:16px;font-weight:600;line-height:1.8;color:#49362b}
@media(max-width:700px){.lp-new-hero .lp-hero-intro{margin:8px 0 16px;font-size:12px;line-height:1.65}}
/* FVはマスコットなしで価格を上へ詰める */
.lp-new-hero .kh-offer-mascots{display:none}
.lp-new-hero .kh-offer{padding-top:20px}
@media(max-width:700px){.lp-new-hero .kh-offer{padding-top:0}}
/* FV上部の3ブロックの縦間隔 */
.lp-new-hero .area-copy{margin:0}
.lp-new-hero .hero-brand-title{margin:24px 0 0}
.lp-new-hero .lp-hero-intro{margin:18px 0 0}
.lp-new-hero .kh-offer{padding-top:24px}
@media(max-width:700px){
 .lp-new-hero .area-copy{margin:0}
 .lp-new-hero .hero-brand-title{margin:20px 0 0}
 .lp-new-hero .lp-hero-intro{margin:14px 0 0}
 .lp-new-hero .kh-offer{padding-top:20px}
}
/* FV補足文を少し拡大 */
.lp-new-hero .lp-hero-intro{font-size:18px;line-height:1.75}
@media(max-width:700px){.lp-new-hero .lp-hero-intro{font-size:13px;line-height:1.7}}
/* FV見出しの大きさと字間を微調整 */
.lp-new-hero .hero-brand-title{font-size:clamp(40px,4.6vw,61px);letter-spacing:0.01em}
@supports(font-size:1cqi){.lp-new-hero .hero-brand-title{font-size:10.8cqi}}
@media(max-width:700px){
 .lp-new-hero .hero-brand-title{font-size:clamp(29px,8.7vw,44px)}
 @supports(font-size:1cqi){.lp-new-hero .hero-brand-title{font-size:10.8cqi}}
}
/* スマホFV：見出し上は元の余白を維持 */
@media(max-width:700px){.lp-new-hero .hero-brand-title{margin-top:20px}}
/* PC FV：見出し上にも8pxの余白を追加 */
@media(min-width:701px){.lp-new-hero .hero-brand-title{margin-top:32px}}
/* FV実績表示を一段拡大 */
.lp-new-hero .area-copy b{font-size:26px}
.lp-new-hero .area-copy b em{font-size:50px}
@media(max-width:700px){
 .lp-new-hero .area-copy b{font-size:12px}
 .lp-new-hero .area-copy b em{font-size:21px}
}
/* スマホFV：補足文の上下の余白を詰める */
@media(max-width:700px){
 .lp-new-hero .lp-hero-intro{margin-top:8px}
 .lp-new-hero .kh-offer{padding-top:12px}
}
/* スマホFV：補足文の下をさらに詰める */
@media(max-width:700px){.lp-new-hero .kh-offer{padding-top:6px}}
/* スマホFV：実績をさらに大きく */
@media(max-width:700px){
 .lp-new-hero .area-copy b{font-size:14px}
 .lp-new-hero .area-copy b em{font-size:26px}
}
/* staging.bear-pocket.com 実際の補助金バナー設定（2026-09-12確認） */
.kh-hero .kh-subsidy.bp-subsidy{display:block;padding:0;border:0;border-radius:10px;background:#1f7a4d;color:white;overflow:hidden;box-shadow:none;margin-top:14px;font-family:system-ui,sans-serif;font-size:18px;line-height:1.6}
.bp-subsidy *{box-sizing:border-box}
.bp-subsidy__row{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 16px}
.bp-subsidy__tag{display:inline-block;background:white;color:#1f7a4d;font-size:13px;font-weight:800;padding:5px 10px;border-radius:4px;white-space:nowrap;letter-spacing:.02em}
.bp-subsidy__main{display:flex;align-items:baseline;gap:8px;white-space:nowrap;font-weight:800;font-size:16px;line-height:1}
.bp-subsidy__main b{font-size:40px;font-weight:900;letter-spacing:-.04em;color:#ffe37a}
.bp-subsidy__main b small{font-size:20px;font-weight:850;margin-left:2px}
.bp-subsidy__unit{font-size:14px;font-weight:700;opacity:.95}
.bp-subsidy__foot{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 18px;background:#e9f6ee;color:#1f5a3a;font-size:12px;font-weight:700;padding:7px 16px;text-align:center}
.bp-subsidy__foot span::before{content:'✓ ';color:#27875a}
@media(max-width:700px){
 .kh-hero .kh-subsidy.bp-subsidy{margin-top:10px}
 .bp-subsidy__row{flex-direction:row;gap:10px;padding:8px 10px 6px}
 .bp-subsidy__tag{font-size:11px;padding:4px 7px;margin-bottom:0}
 .bp-subsidy__main{font-size:13px;gap:5px}
 .bp-subsidy__main b{font-size:32px}
 .bp-subsidy__main b small{font-size:16px}
 .bp-subsidy__unit{font-size:12px}
 .bp-subsidy__foot{font-size:10.5px;gap:2px 12px;padding:5px 8px;line-height:1.4}
}
@media(min-width:701px){
 .bp-subsidy__row{padding:16px 18px 12px;gap:20px}
 .bp-subsidy__tag{font-size:14px;padding:6px 12px}
 .bp-subsidy__main b{font-size:48px}
 .bp-subsidy__main b small{font-size:22px}
 .bp-subsidy__unit{font-size:15px}
 .bp-subsidy__foot{font-size:13px;padding:9px 16px;gap:4px 22px}
}
/* FV LINE：.comの公式アイコンとシンプルなラベルへ戻す */
.lp-new-hero .kh-actions .lp-hero-line{display:flex;align-items:center;justify-content:center;flex-direction:row;gap:8px;background:#06c755;border-bottom:4px solid #049e43;box-shadow:none;color:#fff}
.lp-new-hero .kh-actions .lp-hero-line img{width:36px;height:36px;flex-shrink:0}
@media(max-width:700px){.lp-new-hero .kh-actions .lp-hero-line{gap:5px}.lp-new-hero .kh-actions .lp-hero-line img{width:28px;height:28px}}
/* スマホFV：フォーム・LINE両方のラベルを少し拡大 */
@media(max-width:700px){.lp-new-hero .kh-actions strong{font-size:13px}}
/* PC FV：フォーム・LINE両方のラベルを少し拡大 */
@media(min-width:701px){.lp-new-hero .kh-actions strong{font-size:18px}}
/* スマホFV：最新.comと同じ白グラデーション・スマホ用浴室画像 */
@media(max-width:700px){
 .lp-new-hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 40%,rgba(255,255,255,.6) 75%,rgba(255,255,255,.28) 100%),url('/assets/lp/hero-bath-v1-sp.webp');background-position:62% center;background-size:cover}
}
/* スマホFV：.comと同じ下2px・ぼかしなしの白影 */
@media(max-width:700px){
 .lp-new-hero .hero-brand-title{text-shadow:0 2px 0 #fff}
}
/* 文字spanの既存の影にも白影を明示する */
@media(max-width:700px){
 .lp-new-hero .hero-brand-title span{text-shadow:.45px 0 0 #51382c,-.45px 0 0 #51382c,0 .45px 0 #51382c,0 -.45px 0 #51382c,0 2px 0 #fff}
}
/* FV直下：補足＋見出しの2段 */
.lp-trust-strip small{margin:0 0 4px;white-space:nowrap}
.lp-trust-strip strong{white-space:nowrap}
@media(max-width:700px){
 .lp-trust-strip>div{gap:6px}
 .lp-trust-strip small{font-size:clamp(8px,2.2vw,10px);margin:0 0 4px;line-height:1.4}
 .lp-trust-strip strong{font-size:clamp(10px,2.75vw,13px);line-height:1.4;letter-spacing:-.04em}
}
/* FV直下の補足文を太字に */
.lp-trust-strip small{font-weight:700}
/* スマホ：FV下の4つのチップを少しスリムに */
@media(max-width:700px){.shortcut .intent-chip{min-height:52px}}
/* 補助金：金額・差引き見積り・申請代行をひとまとまりに */
.kp-grant-section{background:#f0f7f1;padding:54px 24px;color:#433329;font-family:system-ui,sans-serif;scroll-margin-top:100px}
.kp-grant-inner{max-width:900px;margin:auto}
.kp-grant-heading{text-align:center;margin-bottom:24px}
.kp-grant-heading>span{display:inline-block;color:#247b50;font-size:14px;font-weight:800;letter-spacing:.06em;margin-bottom:10px}
.kp-grant-heading h2{font-size:32px;line-height:1.45;font-weight:850;margin:0}
.kp-grant-heading em{font-style:normal;color:#20764b;background:linear-gradient(transparent 75%,#f8df8b 75%)}
.kp-grant-heading p{font-size:14px;margin:12px 0 0;line-height:1.6}
.kp-grant-card{background:white;border-radius:18px;overflow:hidden;border:1px solid #d8e7da}
.kp-grant-amounts{display:grid;grid-template-columns:1fr 1fr;padding:24px 12px}
.kp-grant-amounts>div{text-align:center;padding:0 10px}
.kp-grant-amounts>div+div{border-left:1px solid #d8e7da}
.kp-grant-amounts span{font-size:14px;font-weight:700;display:block;color:#3c5f49}
.kp-grant-amounts strong{display:block;color:#207b50;font-size:26px;font-weight:800;line-height:1.1;margin-top:8px;white-space:nowrap}
.kp-grant-amounts b{font-size:70px;letter-spacing:-.05em;font-weight:900;margin-right:4px}
.kp-grant-amounts small{font-size:14px;color:#506b57;font-weight:600}
.kp-grant-payment{background:#fff5df;text-align:center;padding:18px 20px}
.kp-grant-payment>span{font-size:12px;font-weight:800;color:#9b531c}
.kp-grant-payment h3{font-size:23px;margin:4px 0 0;font-weight:800;line-height:1.45;color:#70411f}
.kp-grant-payment p{font-size:12px;margin:5px 0 0;color:#675c4a;line-height:1.5}
.kp-grant-sp{display:none}
.kp-grant-support{text-align:center;padding:18px}
.kp-grant-support>strong{font-size:16px;color:#286c49;font-weight:750}
.kp-grant-support ol{padding:0;margin:12px 0 0;list-style:none;display:flex;justify-content:center;gap:30px}
.kp-grant-support li{font-size:13px;display:flex;align-items:center;gap:7px;font-weight:700}
.kp-grant-support li b{display:inline-grid;place-items:center;background:#eaf5ed;color:#207b50;border-radius:50%;width:24px;height:24px;font-size:12px}
.kp-grant-caution{font-size:11px;line-height:1.6;margin:12px 0;color:#59655b}
.kp-grant-details{border-top:1px solid #cbdccf;border-bottom:1px solid #cbdccf;font-size:13px}
.kp-grant-details summary{cursor:pointer;padding:13px 0;font-weight:700;display:flex;justify-content:space-between;align-items:center;list-style:none;color:#386349}
.kp-grant-details summary::-webkit-details-marker{display:none}
.kp-grant-details summary span{font-size:20px}.kp-grant-details[open] summary span{transform:rotate(45deg)}
.kp-grant-details>div{padding:0 0 18px;line-height:1.75}
.kp-grant-details h3{font-size:14px;margin:12px 0 4px}.kp-grant-details p{margin:0}.kp-grant-details a{display:inline-block;margin-top:12px;color:#226a48;text-decoration:underline}
@media(max-width:700px){
 .kp-grant-section{padding:30px 16px;scroll-margin-top:20px}
 .kp-grant-heading{margin-bottom:18px}.kp-grant-heading>span{font-size:11px;margin-bottom:7px}
 .kp-grant-heading h2{font-size:24px;line-height:1.4}.kp-grant-heading p{font-size:11px;margin-top:10px}
 .kp-grant-card{border-radius:13px}.kp-grant-amounts{padding:18px 4px}.kp-grant-amounts>div{padding:0 4px}
 .kp-grant-amounts span{font-size:10px;white-space:nowrap}.kp-grant-amounts strong{font-size:20px;margin-top:7px}.kp-grant-amounts b{font-size:56px}.kp-grant-amounts small{font-size:11px}
 .kp-grant-payment{padding:13px 10px}.kp-grant-payment>span{font-size:11px}.kp-grant-payment h3{font-size:19px;margin-top:3px}.kp-grant-sp{display:block}.kp-grant-payment p{font-size:10px}
 .kp-grant-support{padding:14px 8px}.kp-grant-support>strong{font-size:14px}.kp-grant-support ol{gap:12px;margin-top:10px}.kp-grant-support li{font-size:10px;gap:4px}.kp-grant-support li b{width:19px;height:19px;font-size:10px}
 .kp-grant-caution{font-size:10px;margin:10px 0;line-height:1.5}.kp-grant-details summary{font-size:11px;padding:10px 0}
}
/* 補助金：短い横棒で7万円と10万円を比較 */
.kp-grant-chart{padding:22px 28px 24px}
.kp-grant-chart-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 16px;font-size:14px;font-weight:750;color:#315e43}
.kp-grant-chart-caption>span{font-size:11px;font-weight:600;white-space:nowrap;color:#68756b}
.kp-grant-chart-row{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center;margin-top:12px}
.kp-grant-chart-row>span{font-size:13px;font-weight:750;line-height:1.5;color:#405547}
.kp-grant-chart-track{min-width:0;background:#f0f6f1;border-radius:0 8px 8px 0}
.kp-grant-bar{height:52px;border-radius:0 8px 8px 0;display:flex;align-items:center;justify-content:flex-end;padding:0 14px;gap:12px;box-sizing:border-box}
.kp-grant-bar-seven{width:70%;background:#c9e7d4;color:#205f3d}
.kp-grant-bar-ten{width:100%;background:#247c50;color:#fff}
.kp-grant-bar strong{font-size:36px;font-weight:900;line-height:1;white-space:nowrap;letter-spacing:-.04em}
.kp-grant-bar strong small{font-size:16px;font-weight:750;margin-left:3px;letter-spacing:0}
.kp-grant-bar-ten strong{color:#ffe37a}
.kp-grant-bar-ten>span{font-size:12px;font-weight:700;margin-right:auto}
@media(max-width:700px){
 .kp-grant-chart{padding:16px 12px 18px}
 .kp-grant-chart-caption{font-size:11px;margin-bottom:12px;gap:5px}.kp-grant-chart-caption>span{font-size:9px}
 .kp-grant-chart-row{grid-template-columns:90px 1fr;gap:8px;margin-top:10px}
 .kp-grant-chart-row>span{font-size:10px}
 .kp-grant-bar{height:46px;padding:0 9px;gap:4px}
 .kp-grant-bar strong{font-size:30px}.kp-grant-bar strong small{font-size:13px}
 .kp-grant-bar-ten{position:relative;height:54px;align-items:flex-end;padding-bottom:6px}
 .kp-grant-bar-ten>span{position:absolute;top:5px;left:9px;font-size:8px;line-height:1.2}
}
/* 補助金：元LPのベージュ・ブラウン・青を維持し可読性を優先 */
.kp-grant-section{background:var(--cream-deep);color:var(--brown-dark)}
.kp-grant-heading>span{color:var(--brown-dark);font-size:18px}
.kp-grant-heading em{color:var(--brown-dark)}
.kp-grant-heading p{font-size:17px}
.kp-grant-card{border-color:#e7d096}
.kp-grant-chart-caption{color:var(--brown-dark);font-size:17px}
.kp-grant-chart-caption>span{font-size:13px;color:#6f6056}
.kp-grant-chart-row{grid-template-columns:180px 1fr}
.kp-grant-chart-row>span{color:var(--brown-dark);font-size:16px}
.kp-grant-chart-track{background:#edf5fd}
.kp-grant-bar-seven{background:#1976d2;color:#fff}
.kp-grant-bar-ten{background:#1565c0;color:#fff}
.kp-grant-bar-ten strong{color:#fff}
.kp-grant-bar-ten>span{font-size:14px}
.kp-grant-payment>span{font-size:15px}.kp-grant-payment p{font-size:15px}
.kp-grant-support>strong{color:var(--brown-dark);font-size:19px}
.kp-grant-support li{font-size:15px}.kp-grant-support li b{background:#fff0ca;color:#755027}
.kp-grant-caution{font-size:13px;color:#6f6056}
.kp-grant-details{border-color:#e0ceb0;font-size:15px}
.kp-grant-details summary{font-size:15px;color:var(--brown-dark)}
.kp-grant-details a{color:#1565c0}
@media(max-width:700px){
 .kp-grant-heading>span{font-size:14px}.kp-grant-heading p{font-size:13px}
 .kp-grant-chart-caption{font-size:13px;align-items:flex-start}.kp-grant-chart-caption>span{font-size:11px}
 .kp-grant-chart-row{grid-template-columns:110px 1fr;gap:8px}
 .kp-grant-chart-row>span{font-size:12px}
 .kp-grant-bar{height:52px}.kp-grant-bar strong{font-size:32px}
 .kp-grant-bar-ten{height:62px}.kp-grant-bar-ten>span{font-size:10px;left:6px}
 .kp-grant-payment>span{font-size:13px}.kp-grant-payment h3{font-size:21px}.kp-grant-payment p{font-size:12px}
 .kp-grant-support>strong{font-size:16px}.kp-grant-support li{font-size:12px}.kp-grant-support ol{gap:8px}
 .kp-grant-caution{font-size:12px}.kp-grant-details summary{font-size:13px}
}
/* PC補助金：元LPに近い横幅へ */
@media(min-width:701px){.kp-grant-inner{max-width:1120px}}
/* 補助金：外幅を保ちつつ内側に左右の余白 */
.kp-grant-card{padding-inline:28px}
.kp-grant-payment{border-radius:10px}
@media(min-width:701px){
 .kp-grant-card{padding-inline:44px}
 .kp-grant-chart{padding-inline:16px}
}
@media(max-width:700px){
 .kp-grant-card{padding-inline:12px}
 .kp-grant-chart{padding-inline:0}
 .kp-grant-payment{padding-inline:8px}
 .kp-grant-support{padding-inline:0}
}
/* 支払い比較：スマホも横並びでコンパクトに */
.kp-payment-compact{padding:20px 24px}
.kp-payment-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:780px;margin:16px auto 12px}
.kp-payment-pair>div{border:1px solid #e1b544;border-radius:10px;background:#fffcf0;padding:14px 12px}
.kp-payment-pair h4{font-size:16px;margin:0 0 7px;color:#b64c0a;font-weight:800}
.kp-payment-pair p{font-size:14px;margin:0;font-weight:700}
.kp-payment-pair strong{display:block;font-size:52px;line-height:1.15;font-weight:900;color:#c54e0b;letter-spacing:-.04em;margin:4px 0}
.kp-payment-pair strong small{font-size:22px;margin-left:3px;letter-spacing:0}
.kp-payment-pair>div>span{display:block;font-size:13px;font-weight:650}
.kp-payment-pair .kp-payment-later{background:#f6f5f3;border-color:#d8d5cf}
.kp-payment-later h4,.kp-payment-later strong{color:#76716a}
.kp-payment-compact .kp-payment-result{font-size:17px;font-weight:800;color:#974610;margin:10px 0 6px}
@media(max-width:700px){
 .kp-payment-compact{padding:14px 8px}
 .kp-payment-compact>span{font-size:12px}
 .kp-payment-compact h3{font-size:18px}
 .kp-payment-pair{gap:8px;margin:12px 0 10px}
 .kp-payment-pair>div{padding:10px 4px;border-radius:8px}
 .kp-payment-pair h4{font-size:12px;margin-bottom:6px;white-space:nowrap}
 .kp-payment-pair p{font-size:12px}
 .kp-payment-pair strong{font-size:40px}
 .kp-payment-pair strong small{font-size:17px}
 .kp-payment-pair>div>span{font-size:10px;line-height:1.5}
 .kp-payment-compact .kp-payment-result{font-size:13px}
}
/* 支払い比較の見出しにカプセル装飾 */
.kp-payment-pair h4{display:inline-block;padding:5px 14px;border:2px solid currentColor;border-radius:999px;background:#fff;line-height:1.4}
@media(max-width:700px){.kp-payment-pair h4{padding:4px 7px;border-width:1.5px}}
/* くまのポケット側の比較カードの外枠を少し強調 */
.kp-payment-pair .kp-payment-ours{border-width:2px}
/* 申請の3ステップ：見出しなしのベージュ帯 */
.kp-grant-support{background:#fff9ef;border-radius:12px;padding:18px 12px;margin:18px 0}
.kp-grant-support ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}
.kp-grant-support li{justify-content:center;padding:6px 12px;font-size:16px;gap:9px}
.kp-grant-support li+li{border-left:1px solid #e5d4b6}
.kp-grant-support li b{background:#e2b53f;color:#493322;width:28px;height:28px;font-size:15px;flex-shrink:0}
@media(max-width:700px){
 .kp-grant-support{padding:10px 3px;margin:12px 0}
 .kp-grant-support li{padding:2px 3px;font-size:12px;line-height:1.5;gap:5px;flex-direction:column;text-align:center}
 .kp-grant-support li b{width:23px;height:23px;font-size:12px}
}
/* 撤去加算と合計例をコンパクトに追加 */
.kp-grant-addition{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0 0 196px;padding:10px 14px;background:#f3faff;border:2px dashed #b8d9e9;border-radius:10px;color:#286f99}
.kp-grant-addition>b{font-size:30px;line-height:1}
.kp-grant-addition>span{font-size:15px;font-weight:700;color:#6f6056}
.kp-grant-addition strong{font-size:19px;color:#286f99;margin-left:12px}
.kp-grant-example{display:block;font-size:11px;font-weight:600;margin-top:3px}
.kp-grant-total-bar{display:grid;grid-template-columns:5fr 2fr 3fr;color:white;background:#1976d2;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%);min-height:52px;padding-right:16px;align-items:stretch}
.kp-grant-total-bar>span,.kp-grant-total-bar>strong{display:flex;align-items:center;justify-content:center;gap:3px;font-size:18px;font-weight:800;white-space:nowrap}
.kp-grant-total-bar>span:first-child{background:#124b9c}.kp-grant-total-bar>span:nth-child(2){background:#1565c0}
.kp-grant-total-bar b{font-size:30px;line-height:1}
.kp-grant-removal-note{font-size:13px;line-height:1.6;margin:12px 0 0;color:#6f6056}
@media(max-width:700px){
 .kp-grant-addition{margin:12px 0 0;padding:8px;gap:8px}
 .kp-grant-addition>b{font-size:26px}.kp-grant-addition>span{font-size:12px}.kp-grant-addition strong{display:block;margin:2px 0 0;font-size:15px}
 .kp-grant-total-row{grid-template-columns:76px 1fr;gap:8px}.kp-grant-example{font-size:10px}
 .kp-grant-total-bar{min-height:44px;padding-right:12px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%)}
 .kp-grant-total-bar>span,.kp-grant-total-bar>strong{font-size:12px;gap:1px}.kp-grant-total-bar b{font-size:24px}
 .kp-grant-removal-note{font-size:12px;margin-top:9px}
}
/* 合計グラフも新しい横棒のデザインに統一 */
.kp-grant-total-bar{clip-path:none;border-radius:0 8px 8px 0;overflow:hidden;padding-right:0}
@media(max-width:700px){.kp-grant-total-bar{clip-path:none;padding-right:0;border-radius:0 8px 8px 0}}
/* グラフは全行共通で12万円を最大幅にする */
.kp-grant-bar-seven{width:58.333333%}
.kp-grant-bar-ten{width:83.333333%}
@media(max-width:700px){.kp-grant-total-row{grid-template-columns:110px 1fr;gap:8px}}
/* 支払い比較は白背景、上のグラフとは罫線で区切る */
.kp-grant-payment.kp-payment-compact{background:#fff;border-top:1px solid #e5d4b6;border-radius:0}
/* スマホ：補助金グラフのバーをスリムに */
@media(max-width:700px){
 .kp-grant-bar{height:42px}
 .kp-grant-bar-ten{height:50px;padding-bottom:4px}
 .kp-grant-total-bar{min-height:38px}
}
/* PC：補助金セクションの見出し・説明・補足の階層を整理 */
@media(min-width:701px){
 .kp-grant-heading>span{font-size:32px;font-weight:800;line-height:1.4;margin-bottom:14px}
 .kp-grant-heading h2{font-size:28px;line-height:1.5;font-weight:750}
 .kp-grant-heading p{font-size:16px;line-height:1.7;margin-top:12px}
}
/* PC：元LPの「見出し→大きい説明→太字の補足」の関係に統一 */
@media(min-width:701px){
 .kp-grant-heading>span,.price-section .section-head>p{font-size:30px;font-weight:900;line-height:1.4;color:var(--orange-dark);letter-spacing:.055em;margin:0 0 18px}
 .kp-grant-heading h2,.price-section .section-head h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;color:var(--brown-dark);white-space:normal}
 .kp-grant-heading h2>br{display:none}
 .kp-grant-heading p,.price-section .section-head .section-copy{font-size:18px;font-weight:750;line-height:1.7;color:#6f6056;margin:18px 0 0}
}
/* 補助金の説明文：マーカーなし */
.kp-grant-heading em{background:none}
/* スマホ補助金：バー・撤去加算をさらにコンパクトに */
@media(max-width:700px){
 .kp-grant-chart-row{margin-top:8px}
 .kp-grant-bar{height:34px}
 .kp-grant-bar-ten{height:42px;padding-bottom:3px}
 .kp-grant-bar-ten>span{top:3px}
 .kp-grant-bar strong{line-height:1}
 .kp-grant-addition{margin-top:8px;padding:5px 8px;gap:8px}
 .kp-grant-addition>span{line-height:1.4}
 .kp-grant-addition strong{margin-top:0;line-height:1.4}
 .kp-grant-addition>b{font-size:24px}
}
/* スマホ：7万円・10万円も合計バーと同じ38pxの高さ */
@media(max-width:700px){
 .kp-grant-bar,.kp-grant-bar-ten{height:38px}
 .kp-grant-bar strong{font-size:24px;line-height:1}
 .kp-grant-bar strong small{font-size:12px}
 .kp-grant-bar-ten{padding-bottom:2px}
 .kp-grant-bar-ten>span{top:2px;font-size:9px;line-height:1}
}
/* スマホ：加算内訳をバーの縦中央に */
@media(max-width:700px){
 .kp-grant-bar-ten>span{top:50%;transform:translateY(-50%)}
}
/* グラフ上の説明：スマホだけ短い元の文言 */
.kp-grant-chart-caption>.kp-chart-caption-pc,.kp-grant-chart-caption>.kp-chart-caption-sp{font-size:inherit;font-weight:inherit;color:inherit;white-space:normal}
.kp-grant-chart-caption>.kp-chart-caption-sp{display:none}
@media(max-width:700px){
 .kp-grant-chart-caption>.kp-chart-caption-pc{display:none}
 .kp-grant-chart-caption>.kp-chart-caption-sp{display:inline}
}
/* スマホ：各セクション冒頭の文字階層を統一 */
@media(max-width:700px){
 body .section .section-head>p,body .kp-grant-heading>span{font-size:18px;font-weight:800;line-height:1.45;letter-spacing:.035em;margin:0 0 10px}
 body .section .section-head h2,body .kp-grant-heading h2{font-size:24px;font-weight:600;line-height:1.45;letter-spacing:-.025em;white-space:normal}
 body .section .section-head .section-copy,body .section .section-head .section-copy span,body .kp-grant-heading p{font-size:13px;font-weight:650;line-height:1.65;letter-spacing:0}
 body .section .section-head .section-copy,body .kp-grant-heading p{margin-top:10px}
}
/* スマホ：支払い比較の見出しを1段に */
@media(max-width:700px){
 .kp-payment-compact{container-type:inline-size}
 .kp-payment-compact h3{font-size:clamp(10px,2.9vw,13px);white-space:nowrap;letter-spacing:-.025em}
 @supports(font-size:1cqi){.kp-payment-compact h3{font-size:3.9cqi}}
}
/* スマホ：差引き案内の見出しに淡い黄色のマーカー */
@media(max-width:700px){
 .kp-payment-compact h3{display:table;width:auto;max-width:100%;margin-left:auto;margin-right:auto;background:linear-gradient(transparent 72%,#ffe49a 72%,#ffe49a 94%,transparent 94%)}
}
/* PC：差引き案内にも同じマーカー */
@media(min-width:701px){
 .kp-payment-compact h3{display:table;width:auto;max-width:100%;margin-left:auto;margin-right:auto;background:linear-gradient(transparent 72%,#ffe49a 72%,#ffe49a 94%,transparent 94%)}
}
.kp-speed-title-sp{display:none}
@media(max-width:700px){
 #speed .speed-heading>img{display:none}
 #speed .speed-heading{display:block}
 #speed .speed-heading>div{width:100%;container-type:inline-size}
 #speed .speed-heading h2{font-size:18px;line-height:1.5;letter-spacing:-.035em;white-space:nowrap}
 #speed .kp-speed-title-pc{display:none}
 #speed .kp-speed-title-sp{display:inline}
 @supports(font-size:1cqi){#speed .speed-heading h2{font-size:min(20px,5cqi)}}
}
/* PC・スマホ：オペレーター案内のマーカーを外す */
#speed .speed-reception>div>span{background:none}
/* スマホ：緊急案内の対応エリアを1段に */
@media(max-width:700px){
 #speed .speed-area{display:flex;align-items:center;gap:8px;padding:10px 9px}
 #speed .speed-area>strong{font-size:12px;line-height:1.5;white-space:nowrap;margin:0;flex-shrink:0}
 #speed .speed-area>p{font-size:11px;line-height:1.5;white-space:nowrap;margin:0;letter-spacing:0}
}
/* スマホ：対応エリアの文字を少し拡大 */
@media(max-width:700px){
 #speed .speed-area>strong{font-size:13px}
 #speed .speed-area>p{font-size:12px}
}
/* 補助金セクション見出しを他の見出しと同じオレンジに */
.kp-grant-heading>span{color:var(--orange-dark)}
/* スマホ：補助金の説明を緊急案内の見出しと同じサイズ・太さに */
@media(max-width:700px){
 .kp-grant-heading{container-type:inline-size}
 body .kp-grant-heading h2{font-size:18px;font-weight:700;line-height:1.5;letter-spacing:-.035em}
 #speed .speed-heading h2{font-weight:700}
 body .kp-grant-heading h2 em{font-weight:inherit}
 @supports(font-size:1cqi){body .kp-grant-heading h2{font-size:min(20px,5cqi)}}
}
/* スマホ：補助金の説明は通常の太さに */
@media(max-width:700px){body .kp-grant-heading h2{font-weight:400}}
/* スマホ：各セクションの見出し・説明の文字階層を統一 */
@media(max-width:700px){
 body .section .section-head>p,body .kp-grant-heading>span,#speed .speed-heading .section-label{font-size:18px;font-weight:800;line-height:1.45;letter-spacing:.035em;color:var(--orange-dark)}
 body .section .section-head,body .kp-grant-heading{container-type:inline-size}
 body .section .section-head h2,body .kp-grant-heading h2,#speed .speed-heading h2{font-size:18px;font-weight:500;line-height:1.5;letter-spacing:-.035em}
 body .section .section-head h2 em,body .kp-grant-heading h2 em{font-weight:inherit}
 @supports(font-size:1cqi){body .section .section-head h2,body .kp-grant-heading h2,#speed .speed-heading h2{font-size:min(20px,5cqi)}}
}
/* スマホ：緊急案内・商品情報の見出しは青系を保持 */
@media(max-width:700px){
 #speed .speed-heading .section-label,body .maker-catalog .section-head>p{color:var(--web-blue,#1565c0)}
}
/* スマホ：補助金の説明を1段に */
@media(max-width:700px){
 body .kp-grant-heading h2>br{display:none}
 body .kp-grant-heading h2{white-space:nowrap}
}
/* 費用案内：スマホのみ短い文言 */
.kp-price-title-sp{display:none}
@media(max-width:700px){
 .kp-price-title-pc{display:none}
 .kp-price-title-sp{display:inline}
}

/* 費用案内の補足文はスマホでは非表示 */
@media(max-width:700px){
 #price .section-head > .section-copy{display:none}
}

/* スマホ：補足文を省いた費用案内の余白を詰める */
@media(max-width:700px){
 #price .section-head{margin-bottom:18px}
}

/* 固定CTA分の余白を実際の高さに合わせる */
@media(max-width:700px){
 html body{padding-bottom:var(--bp-sticky-height,108px)!important}
 html{scroll-padding-bottom:calc(var(--bp-sticky-height,108px) + 16px)}
 .mobile-review-float{bottom:calc(var(--bp-sticky-height,108px) + 12px)}
}

/* 見積り無料診断は最後の相談CTA前に集約 */
.estimate-banner-bottom{margin:0 auto 40px}
.estimate-banner-bottom .estimate-teaser-card{margin-top:0}
.estimate-banner-bottom .estimate-teaser-card>b{font-size:15px;line-height:1.5;white-space:normal}
@media(max-width:700px){.estimate-banner-bottom{margin-bottom:24px}.estimate-banner-bottom .estimate-teaser-card>b{font-size:13px}}

/* CTAのベージュカード幅を他セクションの1120pxに揃える */
@media(min-width:701px){
 .lp-consult-shell{max-width:1168px}
}

/* .com stagingの白カード実幅902pxに合わせる（PCのみ） */
@media(min-width:701px){
 .lp-consult-shell .kp-consult-panel{width:100%;max-width:902px;justify-self:center}
}

/* PC：緊急対応の外幅を他セクションに統一 */
@media(min-width:701px){
 #speed .speed-layout{max-width:1120px}
 #speed .speed-emergency-card{width:100%}
}

/* PC：オペレーター案内を少し大きく */
@media(min-width:701px){
 #speed .speed-reception>div>span{font-size:26px}
}

/* 緊急対応：対応エリアをコンパクトな横並びの帯に */
#speed .speed-area{display:flex;align-items:center;justify-content:center;gap:26px;width:100%;padding:18px 24px;margin-top:28px;border:1px solid #cce2ec;border-radius:12px;background:#ffffffdb}
#speed .speed-area>strong{flex-shrink:0;padding:8px 20px;border-radius:6px;background:#287ca4;color:#fff;font-size:17px;line-height:1.5;white-space:nowrap}
#speed .speed-area>p{margin:0;color:#405e6c;font-size:20px;font-weight:650;line-height:1.6;letter-spacing:.035em}
@media(max-width:700px){
 #speed .speed-area{gap:8px;padding:10px 8px;margin-top:20px;border-radius:8px}
 #speed .speed-area>strong{padding:5px 7px;font-size:12px}
 #speed .speed-area>p{font-size:12px;letter-spacing:-.025em;white-space:nowrap}
}
@media(max-width:700px){
 #speed .speed-area{gap:6px}
 #speed .speed-area>strong{font-size:11px;padding-inline:6px}
 #speed .speed-area>p{font-size:clamp(10px,2.82vw,12px)}
}

/* 緊急対応カード：パーツ間の余裕 */
#speed .speed-emergency-card{padding-top:30px;padding-bottom:30px}
#speed .speed-proof-list{margin-top:28px;gap:14px}
#speed .speed-fv-phone{margin-top:28px}
#speed .speed-reception>div>strong{margin-top:12px;margin-bottom:10px}
@media(max-width:700px){
 #speed .speed-emergency-card{padding-top:20px;padding-bottom:22px}
 #speed .speed-proof-list{margin-top:20px;gap:8px}
 #speed .speed-fv-phone{margin-top:20px}
 #speed .speed-reception>div>strong{margin-top:8px;margin-bottom:7px}
}

/* PCのみ：緊急対応セクション全体の上下に余裕 */
@media(min-width:701px){
 #speed{padding-top:120px;padding-bottom:120px}
}

/* PC：背景境界からコンテンツまでの上下余白を統一 */
@media(min-width:701px){
 :root{--lp-section-space:120px}
 main>section.section,#speed,#subsidy{padding-top:var(--lp-section-space);padding-bottom:var(--lp-section-space)}
 .lp-consult-shell{max-width:none;width:100%;padding:var(--lp-section-space) 24px;background:linear-gradient(115deg,#ffd477 0%,#ffb249 55%,#f79834 100%);display:flow-root}
 .lp-consult-shell .kp-consult{max-width:1120px;width:100%;margin:0 auto!important}
 .lp-consult-shell .kp-consult::before{display:none}
}

/* PC：4チップの上下に余裕（追従ナビには適用しない） */
@media(min-width:701px){
 .shortcut:not(.is-floating){padding-top:36px;padding-bottom:36px}
 .shortcut:not(.is-floating)>p{margin-bottom:16px}
}

/* 施工事例：施工対応エリアを茶色のラベルに */
#cases .service-area>strong{display:inline-block;flex-shrink:0;background:#70503a;color:#fff;border-radius:6px;padding:8px 18px;line-height:1.5;white-space:nowrap}
@media(max-width:700px){#cases .service-area>strong{padding:5px 9px;font-size:12px}}

/* ラベルを固定150px列に押し込まず、文字幅に合わせる */
#cases .service-area{grid-template-columns:max-content minmax(0,1fr);gap:24px}
#cases .service-area>strong{width:auto;justify-self:start}
@media(max-width:700px){#cases .service-area{grid-template-columns:1fr;gap:10px}}

/* 施工対応エリアの文字・ラベル寸法を共通化 */
#speed .speed-area>strong,#cases .service-area>strong{font-size:17px;font-weight:800;line-height:1.5;letter-spacing:0;padding:8px 20px;border-radius:6px}
#speed .speed-area>p,#cases .service-area>p{font-size:20px;font-weight:650;line-height:1.6;letter-spacing:.035em;margin:0}
@media(max-width:700px){
 #speed .speed-area>strong,#cases .service-area>strong{font-size:11px;padding:5px 6px}
 #speed .speed-area>p,#cases .service-area>p{font-size:clamp(10px,2.82vw,12px);letter-spacing:-.025em;line-height:1.5}
}

/* PC：商品紹介の二重の上下余白を解消し、CTAと背景を接続 */
@media(min-width:701px){
 main>section#products{background:#edf7fc}
 #products .maker-catalog{padding-top:0;padding-bottom:0}
}

/* スマホ：セクション境界からの上下余白を56pxに統一 */
@media(max-width:700px){
 main>section.section,#speed,#subsidy{padding-top:56px;padding-bottom:56px}
 .lp-consult-shell{max-width:none;width:100%;padding:56px 16px;background:linear-gradient(115deg,#ffd477 0%,#ffb249 55%,#f79834 100%);display:flow-root}
 .lp-consult-shell .kp-consult{width:100%;margin:0 auto!important}
 .lp-consult-shell .kp-consult::before{display:none}
 main>section#products{background:#edf7fc}
 #products .maker-catalog{padding-top:0;padding-bottom:0}
}

/* スマホの補助金注意書きを短縮 */
@media(max-width:700px){.kp-grant-caution-pc{display:none}}

/* 公式の予算消化状況へのリンクを復元 */
.kp-grant-budget-link{text-align:center;margin:10px 0 0;font-size:14px;line-height:1.6}
.kp-grant-budget-link a{color:#1565c0;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.kp-grant-budget-link{font-size:12px;margin-top:8px}}

/* 予算リンクを注意書きに続けて表示 */
.kp-grant-caution .kp-grant-budget-inline{display:inline;color:#1565c0;text-decoration:underline;text-underline-offset:3px;margin-left:.35em;font-size:inherit;font-weight:inherit}

/* スマホ：費用目安の見出し周りを少しコンパクトに */
@media(max-width:700px){
 #price .section-head>p{margin-bottom:6px;line-height:1.35}
 #price .section-head h2{line-height:1.35}
}

/* スマホ：補助金の見出し周りも費用目安に揃える */
@media(max-width:700px){
 #subsidy .kp-grant-heading>span{margin-bottom:6px;line-height:1.35}
 #subsidy .kp-grant-heading h2{line-height:1.35}
}

/* スマホ：施工事例の説明を一段に */
@media(max-width:700px){
 #cases .section-head>p{margin-bottom:6px;line-height:1.35}
 #cases .section-head h2{font-size:clamp(12px,3.55vw,16px);line-height:1.35;white-space:nowrap;letter-spacing:-.035em}
 #cases .section-head h2 br{display:none}
}

/* スマホ：施工事例の補足文を非表示 */
@media(max-width:700px){#cases .section-head>.section-copy{display:none}}

/* スマホ：追加費用の4項目を横並びに */
@media(max-width:700px){
 #price .price-caution{padding:20px 12px}
 #price .price-caution ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 #price .price-caution li{padding:10px 2px;font-size:12px;line-height:1.5;display:flex;flex-direction:column;justify-content:center;min-width:0}
 #price .price-caution-break{display:block}
}

/* スマホ：追加費用の項目を箇条書き4行に */
@media(max-width:700px){
 #price .price-caution ul{display:block;list-style:disc;padding-left:1.3em;margin-top:14px}
 #price .price-caution li{display:list-item;background:none;border-radius:0;padding:0;font-size:14px;line-height:1.7;text-align:left;margin:0 0 5px}
 #price .price-caution li:last-child{margin-bottom:0}
 #price .price-caution-break{display:none}
}

/* スマホ：追加費用はスリムな白カードを2列2段に */
@media(max-width:700px){
 #price .price-caution ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;list-style:none;padding:0;margin-top:14px}
 #price .price-caution li{display:block;background:#fff;border-radius:6px;padding:7px 5px;margin:0;font-size:14px;line-height:1.5;text-align:center}
 #price .price-caution-break{display:none}
}

/* スマホ：追加費用の補足文は小さめ・レギュラー */
@media(max-width:700px){
 #price .price-caution p,#price .price-caution p span{font-size:13px;font-weight:400}
}

/* PC・スマホ：追加費用の補足文のマーカーを外す */
#price .price-caution p span{background:none;padding:0}

/* スマホ：追加費用の見出しを少し小さく */
@media(max-width:700px){
 #price .price-caution>strong{font-size:18px}
}

/* スマホ：追加費用ブロックの左アクセントを外す */
@media(max-width:700px){
 #price .price-caution{border-left:0;box-shadow:none}
}

/* PC・スマホ：追加費用ブロックの左アクセントを外す */
#price .price-caution{border-left:0;box-shadow:none}

/* PC・スマホ：追加費用ブロックを細い枠線で区切る */
#price .price-caution{border:1px solid #edcdb4;box-shadow:none}

/* PC・スマホ：追加費用の枠線を2pxに */
#price .price-caution{border-width:2px}

/* スマホ：補助金の重複案内をバーに集約 */
#price .price-subsidy-mobile{display:none}
@media(max-width:700px){
 #price .price-subsidy-guide,#price .price-breakdown>.price-subsidy{display:none}
 #price .price-subsidy-mobile{display:flex;margin:16px 12px 0}
}

/* PCも補助金案内を上段のバーに集約 */
@media(min-width:701px){
 #price .price-subsidy-guide,#price .price-breakdown>.price-subsidy{display:none}
 #price .price-subsidy-mobile{display:flex;margin:20px 14px 0}
}

/* 移動先でも補助金バーのデザインを維持 */
#price .price-subsidy-mobile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;background:#eef6fc;border:1px solid #3478a6;border-radius:8px;min-height:45px;margin:20px 0 14px;padding:0;overflow:hidden}
#price .price-subsidy-mobile>span{display:flex;align-items:center;justify-content:center;min-width:0;padding:7px 8px;color:#245f89;text-align:center;font-size:12px;font-weight:900;line-height:1.3}
#price .price-subsidy-mobile>strong{display:flex;align-items:center;justify-content:center;background:#2b6f9b;border-left:1px solid #3478a6;padding:7px 10px;color:#fff;white-space:nowrap;letter-spacing:0;font:950 14px/1.15 system-ui,sans-serif}
@media(max-width:700px){
 #price .price-subsidy-mobile{min-height:42px;margin:16px 0 10px}
 #price .price-subsidy-mobile>span{padding-inline:4px;font-size:10.5px}
 #price .price-subsidy-mobile>strong{padding-inline:8px;font-size:13px}
}
@media(min-width:701px){
 #price .price-subsidy-mobile{width:calc(100% + 16px);margin-left:-8px;margin-right:-8px}
 #price .price-subsidy-mobile>span{font-size:10.5px;white-space:nowrap;padding-inline:4px}
 #price .price-subsidy-mobile>strong{font-size:13px;padding-inline:8px}
}

/* PC・スマホ：支払い目安は薄いブルーの長めの下線に */
#price .price-payment>span{background:none;padding:0 12px 7px;border-bottom:2px solid #bdddeb;box-decoration-break:slice;-webkit-box-decoration-break:slice}

/* 支払い目安の下線を細く */
#price .price-payment>span{border-bottom-width:1px}

/* 支払い目安：左右に溶けるブルーグレーの細線 */
#price .price-payment>span{border-bottom:0;position:relative}
#price .price-payment>span::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent 0%,#93aebd 28%,#93aebd 72%,transparent 100%);pointer-events:none}

/* 支払い目安と金額のまとまりを上へ詰める */
#price .price-breakdown .price-payment{margin-top:0;padding-top:8px}
@media(max-width:700px){#price .price-breakdown .price-payment{padding-top:6px}}

/* PC・スマホ：金額下の余白を適度に詰める */
#price .price-grid article{padding-bottom:18px}
#price .price-breakdown{padding-bottom:0}
#price .price-breakdown .price-payment{padding-bottom:8px}
@media(max-width:700px){
 #price .price-grid article{padding-bottom:14px}
 #price .price-breakdown .price-payment{padding-bottom:6px}
}

/* 補助金バー直下に元の補足を復元 */
#price .price-subsidy-mobile{margin-bottom:0}
#price .price-subsidy-note{margin:5px 0 14px;color:#667781;text-align:right;font-size:11px;font-weight:700;line-height:1.5}
#price .price-subsidy-note span{color:#4f5e66;background:linear-gradient(transparent 57%,#ffe06c 57%,#ffe06c 91%,transparent 91%);padding:0 2px 2px;font-weight:950}
@media(max-width:700px){#price .price-subsidy-note{margin-bottom:10px}}

/* PC・スマホ：費用目安・商品紹介の見出しはブルー系 */
#price .section-head>p,#products .maker-catalog .section-head>p{color:var(--web-blue,#1565c0)}

/* PC・スマホ：ハイブリッド給湯器の見出しをブルーに */
#hybrid .section-label{color:var(--web-blue,#1565c0)}

/* スマホ：施工事例のエリア案内を一段に */
@media(max-width:700px){
 #cases .service-area{grid-template-columns:max-content minmax(0,1fr);gap:6px;padding:10px 8px}
 #cases .service-area>p{white-space:nowrap}
}

/* スマホ：選ばれる理由の見出しを一段に */
@media(max-width:700px){
 #reasons .section-head h2{font-size:clamp(14px,4.3vw,18px);line-height:1.35;white-space:nowrap;letter-spacing:-.035em}
 #reasons .section-head h2 br{display:none}
}

/* 選ばれる理由：線画アイコン付きの横長カード */
#reasons .reason-list-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
#reasons .reason-list-rows .reason-row{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:32px;padding:28px 40px;background:#fff;border:1px solid #eee3cf;border-radius:20px;box-shadow:none}
#reasons .reason-icon{display:flex;align-items:center;justify-content:center;width:112px;height:112px;background:#faf5e9;border-radius:50%;color:#70503a}
#reasons .reason-icon svg{display:block;width:68px;height:68px}
#reasons .reason-content{min-width:0}
#reasons .reason-row-heading{display:flex;align-items:center;gap:16px;margin:0 0 10px}
#reasons .reason-number{font-size:28px;font-weight:800;line-height:1;color:#c59b37}
#reasons .reason-row h3{margin:0;font-size:24px;font-weight:700;line-height:1.5;background:none;white-space:normal}
#reasons .reason-row .reason-content>p{margin:0;font-size:17px;line-height:1.8;color:#70665c}
@media(max-width:700px){
 #reasons .reason-list-rows{gap:12px}
 #reasons .reason-list-rows .reason-row{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:18px 14px;border-radius:14px}
 #reasons .reason-icon{width:48px;height:48px}
 #reasons .reason-icon svg{width:34px;height:34px}
 #reasons .reason-row-heading{gap:7px;margin-bottom:6px;align-items:baseline}
 #reasons .reason-number{font-size:17px}
 #reasons .reason-row h3{font-size:15px;line-height:1.5;letter-spacing:-.025em}
 #reasons .reason-row .reason-content>p{font-size:13px;line-height:1.7}
}
/* PCは3列、スマホは横長カードを縦に */
@media(min-width:701px){
 #reasons .reason-list-rows{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 #reasons .reason-list-rows .reason-row{grid-template-columns:minmax(0,1fr);align-content:start;gap:22px;padding:30px 24px}
 #reasons .reason-icon{width:88px;height:88px;margin:0 auto}
 #reasons .reason-icon svg{width:54px;height:54px}
 #reasons .reason-row-heading{gap:10px;align-items:baseline}
 #reasons .reason-number{font-size:24px}
 #reasons .reason-row h3{font-size:20px}
 #reasons .reason-row .reason-content>p{font-size:16px}
}
@media(min-width:701px){
 #reasons .reason-row-heading{gap:8px}
 #reasons .reason-number{font-size:22px}
 #reasons .reason-row h3{font-size:18px;text-wrap:balance}
}
/* 番号の代わりに見出し横のアイコン。カードの高さを抑える */
#reasons .reason-list-rows .reason-row{grid-template-columns:minmax(0,1fr);gap:0;padding:22px 24px}
#reasons .reason-row-heading{align-items:center;gap:10px;margin-bottom:10px}
#reasons .reason-icon{flex:0 0 36px;width:36px;height:36px;margin:0;border-radius:50%}
#reasons .reason-icon svg{width:26px;height:26px}
#reasons .reason-row h3{font-size:18px;line-height:1.5}
@media(max-width:700px){
 #reasons .reason-list-rows .reason-row{padding:14px 16px}
 #reasons .reason-row-heading{gap:8px;margin-bottom:6px}
 #reasons .reason-icon{flex-basis:28px;width:28px;height:28px}
 #reasons .reason-icon svg{width:22px;height:22px}
 #reasons .reason-row h3{font-size:15px}
}
/* 理由カード：アイコンは控えめ、見出しは大きく */
#reasons .reason-icon{flex-basis:30px;width:30px;height:30px}
#reasons .reason-icon svg{width:23px;height:23px}
#reasons .reason-row h3{font-size:22px;line-height:1.45;font-weight:700;text-wrap:balance}
@media(max-width:700px){
 #reasons .reason-icon{flex-basis:26px;width:26px;height:26px}
 #reasons .reason-icon svg{width:20px;height:20px}
 #reasons .reason-row h3{font-size:18px;line-height:1.5}
}
/* アイコンを独立した左列に置き、見出しと説明の左端を揃える */
#reasons .reason-list-rows .reason-row{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;padding:24px 20px}
#reasons .reason-icon{width:42px;height:42px;flex-basis:42px;border-radius:12px;margin:0}
#reasons .reason-icon svg{width:28px;height:28px}
#reasons .reason-row-heading{display:block;margin-bottom:10px}
#reasons .reason-row h3{font-size:22px;line-height:1.45;letter-spacing:-.025em}
@media(max-width:700px){
 #reasons .reason-list-rows .reason-row{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:16px 14px}
 #reasons .reason-icon{width:34px;height:34px;flex-basis:34px;border-radius:9px}
 #reasons .reason-icon svg{width:24px;height:24px}
 #reasons .reason-row-heading{margin-bottom:6px}
 #reasons .reason-row h3{font-size:18px;line-height:1.5}
}
/* 理由カード同士の間隔をコンパクトに */
#reasons .reason-list-rows{gap:14px}
@media(max-width:700px){
 #reasons .reason-list-rows{gap:8px}
}
/* カード幅を活かして見出しの横幅を確保 */
@media(min-width:701px){
 #reasons .reason-list-rows .reason-row{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:22px 16px}
 #reasons .reason-icon{width:32px;height:32px;border-radius:9px}
 #reasons .reason-icon svg{width:23px;height:23px}
 #reasons .reason-row h3{font-size:20px;letter-spacing:-.045em;text-wrap:normal}
}
#reasons .reason-row h3{min-height:0}
/* スタッフ紹介を理由カードの上へ統合 */
#reasons .reason-staff{padding:0;margin:0 0 32px;background:none}
@media(max-width:700px){
 #reasons .reason-staff{margin-bottom:20px}
}
/* スマホ：スタッフ写真と肩書きまわりをコンパクトに */
@media(max-width:700px){
 #staff .staff-photo{aspect-ratio:1/1}
 #staff .staff-photo>img{object-position:center 25%}
 #staff .staff-grid article>div{padding:10px 11px 12px}
 #staff .staff-grid small{display:block;line-height:1.35}
 #staff .staff-grid h3{margin:3px 0 0;line-height:1.3}
 #staff .staff-grid p{margin-top:8px;padding-top:8px;line-height:1.5}
}
/* 理由カードの見出しを揃えて少し大きく */
#reasons .reason-row h3{font-size:22px}
@media(max-width:700px){
 #reasons .reason-row h3{font-size:20px}
}
/* 理由カード：大きめのアイコンと、横幅を使う補足文 */
#reasons .reason-list-rows .reason-row{grid-template-columns:42px minmax(0,1fr);column-gap:10px;row-gap:10px;align-items:center}
#reasons .reason-row .reason-content{display:contents}
#reasons .reason-row .reason-icon{grid-column:1;grid-row:1;width:42px;height:42px;border-radius:11px}
#reasons .reason-row .reason-icon svg{width:30px;height:30px}
#reasons .reason-row .reason-row-heading{grid-column:2;grid-row:1;margin:0;min-width:0}
#reasons .reason-row .reason-content>p{grid-column:1/-1;grid-row:2;margin:0}
@media(max-width:700px){
 #reasons .reason-list-rows .reason-row{grid-template-columns:38px minmax(0,1fr);column-gap:10px;row-gap:8px}
 #reasons .reason-row .reason-icon{width:38px;height:38px;border-radius:10px}
 #reasons .reason-row .reason-icon svg{width:28px;height:28px}
}
/* 強み3つ：見出し全文にマーカー */
#reasons .reason-row h3 .reason-heading-marker{
 background:linear-gradient(transparent 68%,#f4d277 68%);
 padding:0;
 box-decoration-break:clone;
 -webkit-box-decoration-break:clone;
}
/* 強みカードのアイコンをひと回り大きく */
#reasons .reason-list-rows .reason-row{grid-template-columns:48px minmax(0,1fr)}
#reasons .reason-row .reason-icon{width:48px;height:48px;border-radius:12px}
#reasons .reason-row .reason-icon svg{width:36px;height:36px}
@media(max-width:700px){
 #reasons .reason-list-rows .reason-row{grid-template-columns:44px minmax(0,1fr)}
 #reasons .reason-row .reason-icon{width:44px;height:44px;border-radius:11px}
 #reasons .reason-row .reason-icon svg{width:34px;height:34px}
}
/* 強みアイコンの配色を少しはっきりさせる */
#reasons .reason-row .reason-icon{color:#684326;background:#eed8aa}
/* スマホ：強みカードの文字を読みやすく */
@media(max-width:700px){
 #reasons .reason-row h3{font-size:22px;line-height:1.5}
 #reasons .reason-row .reason-content>p{font-size:15px;line-height:1.6}
}
/* スマホの商品一覧：パナソニックのみ4台＋もっと見る */
@media(max-width:760px){
 #products .maker-products-details>.maker-product-grid{display:grid}
 #products .maker-products-details>.maker-product-contact{display:block}
 #products .maker-products-toggle{display:none}
 #maker-panasonic .maker-products-details:not(.is-open)>.maker-product-grid>.maker-card:nth-child(n+5){display:none}
 #maker-panasonic .maker-products-toggle{display:flex;margin:18px auto 0}
 #maker-panasonic .maker-products-details.is-open .maker-products-toggle{margin:18px auto 0}
}
/* スマホのメーカー選択を3列×2段に */
@media(max-width:760px){
 #products .maker-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 #products .maker-nav>a{min-width:0;padding:12px 4px;min-height:48px}
 #products .maker-nav>a strong{font-size:13px;line-height:1.4;white-space:nowrap;letter-spacing:-.035em}
}
/* スマホの商品紹介見出しを一段に */
@media(max-width:700px){
 #products .maker-catalog>.section-head h2{font-size:clamp(16px,4.8vw,20px);line-height:1.35;letter-spacing:-.035em;white-space:nowrap}
 #products .maker-catalog>.section-head h2 br{display:none}
}
/* スマホ：メーカー選択の上下の間隔を詰める */
@media(max-width:760px){
 #products .maker-nav{row-gap:4px}
}
/* スマホ：メーカー選択下の余白を縮める */
@media(max-width:760px){
 #products .maker-nav{margin-bottom:28px}
}
/* スマホ：ハイブリッドの見出しを共通サイズに */
@media(max-width:700px){
 #hybrid .section-label{font-size:18px;font-weight:800;line-height:1.45;letter-spacing:.035em}
}
/* ハイブリッド紹介：マスコットを外し、空き列も解消 */
#hybrid .hybrid-intro{display:block}
/* ハイブリッドのタイトルを共通の文字階層に揃える */
@media(min-width:701px){
 #hybrid .hybrid-intro h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em}
}
@media(max-width:700px){
 #hybrid .hybrid-intro>div{container-type:inline-size}
 #hybrid .hybrid-intro h2{font-size:18px;font-weight:500;line-height:1.5;letter-spacing:-.035em}
 @supports(font-size:1cqi){#hybrid .hybrid-intro h2{font-size:min(20px,5cqi)}}
}
/* スマホ：ハイブリッド紹介の補足文を非表示 */
@media(max-width:700px){
 #hybrid .hybrid-intro>div>p:not(.section-label){display:none}
}
/* スマホ：施工事例の見出しを他セクションと同じサイズへ */
@media(max-width:700px){
 #cases .section-head h2{font-size:18px;font-weight:500;line-height:1.5;letter-spacing:-.035em;white-space:normal;text-wrap:balance}
 @supports(font-size:1cqi){#cases .section-head h2{font-size:min(20px,5cqi)}}
}
/* 施工事例：スマホ用の短いタイトル */
#cases .case-title-sp{display:none}
@media(max-width:700px){
 #cases .case-title-pc{display:none}
 #cases .case-title-sp{display:inline}
 #cases .section-head h2{white-space:nowrap}
}


/* PC：ハイブリッド紹介の3行を中央寄せ */
@media(min-width:701px){
 #hybrid .hybrid-intro,#hybrid .hybrid-intro>div{text-align:center}
}
/* スマホ：パナソニックの開閉ボタンを押しやすく */
@media(max-width:760px){
 #maker-panasonic .maker-products-toggle,
 #maker-panasonic .maker-products-details.is-open .maker-products-toggle{
  width:100%;
  min-width:0;
  min-height:56px;
  padding:15px 20px;
  margin:26px auto 24px;
  touch-action:manipulation;
 }
}
/* 商品ごとの見積り導線 */
#products .maker-model-quote{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 16px 18px;padding:13px 8px;min-height:48px;background:#1d648f;color:#fff;border-radius:9px;font-size:16px;font-weight:700;text-decoration:none;text-align:center}
#products .maker-model-quote span{color:#f2cf54}
@media(max-width:760px){
 #products .maker-model-quote{font-size:12px;gap:3px;margin:0 8px 12px;padding:10px 3px;min-height:44px}
}
/* 商品価格：通常価格→補助金バー→お支払い額→保証 */
#products .maker-cost{margin-top:18px;text-align:left;color:#294f67}
#products .maker-cost-total{margin:0 0 14px;font-size:17px;line-height:1.6}
#products .maker-cost-total strong{white-space:nowrap;font-size:20px}
#products .maker-cost-grant{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid #3478a6;border-radius:9px;overflow:hidden;background:#eef6fc;align-items:stretch}
#products .maker-cost-grant>span{display:flex;align-items:center;justify-content:center;padding:10px 8px;font-size:14px;font-weight:800;line-height:1.5}
#products .maker-cost-grant>strong{display:flex;align-items:center;justify-content:center;padding:10px;background:#2b6f9b;color:white;font-size:17px;white-space:nowrap}
#products .maker-cost-payment{display:block;margin-top:12px;font-size:44px;line-height:1.3;color:#cb242a;font-weight:800;letter-spacing:-.025em}
#products .maker-cost-payment>span{font-size:.85em}
#products .maker-cost-warranty{list-style:none;margin:18px 0 0;padding:14px 0 0;border-top:1px dashed #b8d4e5;color:#536c7c}
#products .maker-cost-warranty li{display:flex;gap:6px;font-size:14px;line-height:1.7}
#products .maker-cost-warranty li::before{content:"✓";color:#24814f;font-weight:800}
@media(max-width:760px){
 #products .maker-cost{margin-top:12px}
 #products .maker-cost-total{font-size:11px;line-height:1.5;margin-bottom:8px}
 #products .maker-cost-total strong{font-size:15px}
 #products .maker-cost-grant{grid-template-columns:minmax(0,1fr);border-radius:6px}
 #products .maker-cost-grant>span{padding:5px 3px;font-size:10px;line-height:1.4;text-align:center}
 #products .maker-cost-grant>strong{padding:4px;font-size:13px}
 #products .maker-cost-payment{font-size:clamp(23px,6.7vw,32px);margin-top:9px;white-space:nowrap}
 #products .maker-cost-warranty{margin-top:10px;padding-top:9px}
 #products .maker-cost-warranty li{font-size:11px;line-height:1.6;gap:4px}
}
/* お支払い額の説明 */
#products .maker-cost-payment-label{margin:12px 0 0;font-size:15px;line-height:1.5;color:#758996}
#products .maker-cost-payment-label+.maker-cost-payment{margin-top:4px}
@media(max-width:760px){
 #products .maker-cost-payment-label{margin-top:8px;font-size:11px}
}
/* お支払い額のラベルと金額は元LPの見せ方に */
#products .maker-cost-payment-label{
 color:#60554d;font-size:19px;font-weight:950;text-align:right;
 width:fit-content;margin:12px 0 0 auto;
 background:linear-gradient(transparent 62%,#ffe28a 62% 94%,transparent 94%);
}
#products .maker-cost-payment{
 color:#ed4319;font-family:"Arial Black",Arial,sans-serif;font-size:46px;
 font-weight:900;line-height:1.12;letter-spacing:-.045em;text-align:right;
}
#products .maker-cost-payment>span{
 font-family:system-ui,sans-serif;font-size:.48em;font-weight:900;letter-spacing:0;margin-left:2px;
}
#products .maker-cost-payment::after{content:" 税込";color:#60554d;font:800 11px system-ui,sans-serif}
@media(max-width:760px){
 #products .maker-cost-payment-label{font-size:clamp(10px,2.8vw,15px);margin-top:9px}
 #products .maker-cost-payment{font-size:clamp(24px,7.4vw,35px)}
 #products .maker-cost-payment::after{font-size:9px}
}
/* お支払い額の補足ラベルを控えめに */
#products .maker-cost-payment-label{font-size:15px;font-weight:400}
@media(max-width:760px){
 #products .maker-cost-payment-label{font-size:10px;font-weight:400}
}
/* お支払い額の補足ラベルを少し拡大 */
#products .maker-cost-payment-label{font-size:16px}
@media(max-width:760px){
 #products .maker-cost-payment-label{font-size:11px}
}
/* 支払金額の左に説明を配置 */
#products .maker-cost-payment-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px}
#products .maker-cost-payment-row .maker-cost-payment-label{margin:0;flex:1;min-width:0;text-align:left;line-height:1.5;background:none}
#products .maker-cost-payment-row .maker-cost-payment{margin:0;flex-shrink:0}
@media(max-width:760px){
 #products .maker-cost-payment-row{gap:6px;margin-top:9px;flex-wrap:wrap}
 #products .maker-cost-payment-row .maker-cost-payment-label{flex:1 0 64px}
 #products .maker-cost-payment-row .maker-cost-payment{margin-left:auto}
}
/* スマホ：補助金バーを横並びに統一 */
@media(max-width:760px){
 #products .maker-cost-grant{grid-template-columns:minmax(0,1fr) auto;align-items:stretch}
 #products .maker-cost-grant>span{font-size:10px;padding:7px 5px;line-height:1.4}
 #products .maker-cost-grant>strong{font-size:13px;padding:7px 8px}
}
/* お支払い額の説明をオレンジのラベルに */
#products .maker-cost-payment-row .maker-cost-payment-label{
 flex:0 1 auto;width:auto;background:#e96319;color:#fff;
 border-radius:6px;padding:7px 10px;text-align:center;line-height:1.5;
}
@media(max-width:760px){
 #products .maker-cost-payment-row .maker-cost-payment-label{padding:5px 7px;border-radius:5px}
}
/* ノーリツ旧モデル：在庫限りの特別価格 */
#products .maker-cost-special .maker-cost-payment-label{background:#c92c32;color:#fff}
/* 商品カード：見積りボタン上に余裕を持たせる */
#products .maker-card .product-inquiry-button{margin-top:20px}
@media(max-width:760px){
 #products .maker-card .product-inquiry-button{margin-top:16px}
}
/* 商品の説明と価格欄を薄いブルーの線で区切る */
#products .maker-cost{border-top:1px solid #c9dfea;padding-top:16px}
@media(max-width:760px){
 #products .maker-cost{padding-top:12px}
}
/* スマホ：支払金額も通常価格と同じ本文系の書体で太く表示 */
@media(max-width:760px){
 #products .maker-cost-payment{
  font-family:inherit;
  font-weight:900;
  font-style:normal;
  letter-spacing:-.025em;
 }
}
/* スマホ：交換元ごとの費用も商品価格と同じ書体に */
@media(max-width:760px){
 #price .price-total>strong,
 #price .price-payment>strong{
  font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-weight:900;
  font-style:normal;
  letter-spacing:-.025em;
 }
}
/* 長府：補助金なしの総額表示も共通の価格欄へ */
#products .maker-cost-chofu .maker-cost-payment-row{margin-top:0}
/* スマホ：ハイブリッドのしくみの補足説明を非表示 */
@media(max-width:700px){
 #hybrid .hybrid-explain>p{display:none}
}
/* スマホ：セクション見出しとタイトルの間隔・行間を共通化 */
@media(max-width:700px){
 body main .section .section-head>p,
 body main .kp-grant-heading>span,
 body main .hybrid-intro .section-label,
 body main #speed .speed-heading .section-label{
  margin-top:0;margin-bottom:6px;line-height:1.35;
 }
 body main .section .section-head h2,
 body main .kp-grant-heading h2,
 body main #hybrid .hybrid-intro h2,
 body main #gas .hybrid-intro h2,
 body main #speed .speed-heading h2{
  margin-top:0;line-height:1.35;
 }
}
/* スマホ：ハイブリッド紹介の見出しとタイトルを中央寄せ */
@media(max-width:700px){
 #hybrid .hybrid-intro .section-label,
 #hybrid .hybrid-intro h2{text-align:center}
}
/* スマホ：ハイブリッド動作カードを横長の縦2段に */
@media(max-width:700px){
 #hybrid .hybrid-mode-grid{grid-template-columns:minmax(0,1fr);gap:8px}
 #hybrid .hybrid-mode-card{flex-direction:row;justify-content:flex-start;text-align:left;gap:12px;min-height:0;padding:12px 14px;border-radius:12px}
 #hybrid .hybrid-mode-icon{flex:0 0 38px;width:38px;height:38px}
 #hybrid .hybrid-mode-icon svg{width:21px;height:21px}
 #hybrid .hybrid-mode-card small{margin-bottom:2px;line-height:1.35}
 #hybrid .hybrid-mode-card strong{font-size:15px;line-height:1.4}
}
/* 価格の税込表記 */
#price .price-total>strong .price-tax-label,
#price .price-payment>strong .price-tax-label{
 font:600 11px/1.4 system-ui,sans-serif;letter-spacing:0;margin-left:4px;color:#70665c;
}
#products .maker-cost-total .maker-total-tax{
 font:600 11px/1.4 system-ui,sans-serif;margin-left:4px;color:#536c7c;
}
@media(max-width:760px){
 #price .price-total>strong .price-tax-label,
 #price .price-payment>strong .price-tax-label,
 #products .maker-cost-total .maker-total-tax{font-size:9px;margin-left:3px}
}
/* スマホ：ハイブリッドの比較・金額目安と付随注記を非表示 */
@media(max-width:700px){
 #hybrid .hybrid-metrics,
 #hybrid .hybrid-source{display:none}
}
/* スマホ：しくみ・災害時の見出し階層を他セクションに揃える */
@media(max-width:700px){
 #hybrid .hybrid-explain,
 #hybrid .hybrid-resilience>header{container-type:inline-size}
 #hybrid .hybrid-explain>span,
 #hybrid .hybrid-resilience>header>span{
  display:block;font-size:18px;font-weight:800;line-height:1.35;
  letter-spacing:.035em;margin:0 0 6px;
 }
 #hybrid .hybrid-explain h3,
 #hybrid .hybrid-resilience>header h3{
  font-size:18px;font-weight:500;line-height:1.35;
  letter-spacing:-.035em;margin-top:0;
 }
 @supports(font-size:1cqi){
  #hybrid .hybrid-explain h3,
  #hybrid .hybrid-resilience>header h3{font-size:min(20px,5cqi)}
 }
}
/* スマホ：しくみの2文に丸囲みチェック */
@media(max-width:700px){
 #hybrid .hybrid-check-title{display:grid;gap:6px}
 #hybrid .hybrid-check-title>br{display:none}
 #hybrid .hybrid-check-title>span{display:flex;align-items:center;gap:7px}
 #hybrid .hybrid-check-title>span::before{
  content:"✓";display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 19px;width:19px;height:19px;border-radius:50%;
  background:#287ca4;color:#fff;font:800 12px/1 system-ui,sans-serif;
 }
}
/* スマホ：しくみの説明を動作カードへまとめる */
#hybrid .hybrid-mode-description{display:none}
@media(max-width:700px){
 #hybrid .hybrid-check-title{display:none}
 #hybrid .hybrid-mode-card small{display:none}
 #hybrid .hybrid-mode-card .hybrid-mode-description{display:block;margin:4px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
}
/* 災害時のカード：補足説明を独立した段へ */
#hybrid .hybrid-resilience-grid article>p{grid-column:2;margin-top:0}
@media(max-width:700px){
 #hybrid .hybrid-resilience-grid article{row-gap:8px}
 #hybrid .hybrid-resilience-grid article>p{grid-column:1/-1;margin:0}
}
/* PC：災害時カードの補足文を幅いっぱいに、少し大きく */
@media(min-width:701px){
 #hybrid .hybrid-resilience-grid article>p{
  grid-column:1/-1;
  margin:0;
  font-size:15px;
  line-height:1.6;
 }
}
/* PC：補足文の文字サイズを保ち、一段に収める横幅を確保 */
@media(min-width:701px){
 #hybrid .hybrid-resilience-grid{gap:8px;margin-left:-14px;margin-right:-14px;grid-template-columns:1fr 1.08fr 1fr}
 #hybrid .hybrid-resilience-grid article{padding-left:10px;padding-right:10px}
 #hybrid .hybrid-resilience-grid article>p{font-size:15px;letter-spacing:-.04em;white-space:nowrap}
}
@media(min-width:701px) and (max-width:1150px){
 #hybrid .hybrid-resilience-grid article>p{white-space:normal}
}
/* PC：災害時カードの補足文まわりをコンパクトに */
@media(min-width:701px){
 #hybrid .hybrid-resilience-grid article{min-height:0;row-gap:6px;padding-top:16px;padding-bottom:12px;align-content:start}
 #hybrid .hybrid-resilience-grid article>p{margin:0}
}
/* PC：災害時カードの余白を少し戻し、アイコンを拡大 */
@media(min-width:701px){
 #hybrid .hybrid-resilience-grid article{
  grid-template-columns:52px minmax(0,1fr);
  row-gap:10px;
  padding-top:18px;
  padding-bottom:16px;
 }
 #hybrid .hybrid-resilience-grid article>i{width:52px;height:52px;font-size:13px}
}
/* ガス給湯器紹介：マスコットを外し、共通の文字階層で中央寄せ */
#gas .gas-intro{display:block;text-align:center}
#gas .gas-intro>div{text-align:center}
#gas .gas-intro .section-label{color:#247ca7}
@media(min-width:701px){
 #gas .gas-intro .section-label{font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px}
 #gas .gas-intro h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0}
 #gas .gas-intro>div>p:not(.section-label){font-size:18px;font-weight:650;line-height:1.7;margin-top:18px}
}
@media(max-width:700px){
 #gas .gas-intro>div{container-type:inline-size}
 #gas .gas-intro .section-label{font-size:18px;font-weight:800;line-height:1.35;letter-spacing:.035em;margin:0 0 6px}
 #gas .gas-intro h2{font-size:18px;font-weight:500;line-height:1.35;letter-spacing:-.035em;margin-top:0}
 #gas .gas-intro>div>p:not(.section-label){font-size:13px;font-weight:650;line-height:1.6;margin-top:10px}
 @supports(font-size:1cqi){#gas .gas-intro h2{font-size:min(20px,5cqi)}}
}
/* PC・スマホ：青系の見出しを落ち着いた青に統一 */
body main #speed .speed-heading .section-label,
body main #price .section-head>p,
body main #products .maker-catalog .section-head>p,
body main #products .maker-intro h3,
body main #hybrid .section-label,
body main #hybrid .hybrid-explain>span,
body main #hybrid .hybrid-resilience>header>span,
body main #gas .gas-intro .section-label,
body main #gas .gas-explain>span{
 color:#247ca7;
}
/* PC：ハイブリッド内の小見出しを読みやすく拡大 */
@media(min-width:701px){
 #hybrid .hybrid-explain>span,
 #hybrid .hybrid-resilience>header>span{
  font-size:22px;
  line-height:1.4;
 }
}
/* しくみの小見出しはオレンジを保持 */
body main #hybrid .hybrid-explain>span{color:var(--orange-dark)}
/* ハイブリッド紹介の見出しをオレンジに */
body main #hybrid .hybrid-intro .section-label{color:var(--orange-dark)}
/* ガス紹介の補足はカード内へ */
#gas .gas-explain .gas-card-description{
 margin:14px 0 0;color:var(--muted);font-size:17px;font-weight:500;line-height:1.7;white-space:normal;
}
@media(max-width:700px){
 #gas .gas-explain .gas-card-description{margin-top:10px;font-size:13px;line-height:1.6}
}
/* スマホ：ガス給湯器紹介のタイトルを一段に */
@media(max-width:700px){
 #gas .gas-intro h2>br{display:none}
 #gas .gas-intro h2{white-space:nowrap}
}
/* スマホ：ガス交換費用も商品価格と同じ数字の書体に */
@media(max-width:760px){
 #gas .gas-price>strong>b{
  font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-weight:900;font-style:normal;letter-spacing:-.025em;
 }
}
/* PC：ガス交換費用の数字も同じ書体に */
@media(min-width:761px){
 #gas .gas-price>strong>b{
  font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-weight:900;font-style:normal;letter-spacing:-.025em;
 }
}
/* ガス給湯器の強みカードも補足文を独立した段に */
#gas .gas-benefits>div{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-height:0;padding:18px 16px}
#gas .gas-benefits i{width:38px;height:38px}
#gas .gas-benefits strong{margin:0;line-height:1.45}
#gas .gas-benefits p{grid-column:1/-1;margin:0;font-size:15px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){
 #gas .gas-benefits{gap:8px}
 #gas .gas-benefits>div{padding:14px;row-gap:8px}
 #gas .gas-benefits strong{font-size:16px}
 #gas .gas-benefits p{font-size:13px;line-height:1.6}
}
/* ガス給湯器の取扱メーカーラベル */
#gas .gas-makers>span{
 display:inline-block;background:#247ca7;color:#fff;
 border-radius:6px;padding:6px 12px;line-height:1.4;
}
/* スマホ：取扱メーカーを一段で表示 */
@media(max-width:700px){
 #gas .gas-makers{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:8px}
 #gas .gas-makers>span{flex-shrink:0;padding:5px 8px;font-size:11px;white-space:nowrap;margin:0}
 #gas .gas-makers>strong{font-size:13px;line-height:1.4;letter-spacing:-.035em;white-space:nowrap;margin:0}
}
@media(max-width:700px){
 #gas .gas-makers{flex-direction:row}
}
/* 住宅設備紹介：共通の見出し・タイトルに揃える */
@media(min-width:701px){
 #set .section-head>p{font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px}
 #set .section-head h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0}
}
#set .section-head{text-align:center}
#set .section-head h2>br{display:none}
@media(max-width:700px){
 #set .section-head>p{font-size:18px;font-weight:800;line-height:1.35;margin:0 0 6px}
 #set .section-head h2{font-weight:500;line-height:1.35;letter-spacing:-.035em;margin-top:0}
}
/* スマホ：セット交換のメリットを少し大きく */
@media(max-width:700px){
 #set .set-offer>p>span{font-size:18px;line-height:1.4}
}
/* セット価格の短い文言はスマホのみ */
#set .set-offer .set-offer-copy-sp{display:none}
@media(max-width:700px){
 #set .set-offer .set-offer-copy-pc{display:none}
 #set .set-offer .set-offer-copy-sp{display:inline}
}
#set .set-offer strong>span{font:inherit;color:inherit;letter-spacing:inherit;margin:0}
/* 住宅設備のスマホ用タイトル */
#set .set-title-sp{display:none}
@media(max-width:700px){
 #set .set-title-pc{display:none}
 #set .set-title-sp{display:inline}
}
/* スマホ：セット交換の補助見出しを非表示 */
@media(max-width:700px){
 #set .set-offer>p>span{display:none}
}
/* スマホ：セット価格バナーをスリムに */
@media(max-width:700px){
 #set>.container>.section-head{margin-bottom:18px}
 #set .set-offer{grid-template-columns:46px minmax(0,1fr);gap:10px;padding:11px 14px;margin-bottom:18px;border-radius:14px}
 #set .set-offer>div{width:46px;height:46px}
 #set .set-offer img{width:30px;height:auto}
}
/* セット商品：エコキュート商品と揃えた価格欄 */
#set .set-cost{border-top:1px solid #c9dfea;padding-top:16px;margin-top:18px;color:#294f67;text-align:left}
#set .set-cost-total{margin:0;font-size:17px;line-height:1.6}
#set .set-cost-total>strong{font-size:20px;white-space:nowrap}
#set .set-cost-total small{font:600 11px/1.4 system-ui,sans-serif;margin-left:4px;color:#536c7c}
#set .set-cost-breakdown{font-size:12px;line-height:1.5;color:#758996;margin:5px 0 0}
#set .set-cost-payment-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:14px}
#set .set-cost-label{background:#e96319;color:#fff;border-radius:6px;padding:7px 10px;font-size:16px;font-weight:400;line-height:1.5}
#set .set-cost-payment{margin-left:auto;color:#ed4319;font:900 46px/1.12 "Arial Black",Arial,sans-serif;letter-spacing:-.045em;white-space:nowrap}
#set .set-cost-payment>span{font-family:system-ui,sans-serif;font-size:.48em;font-weight:900;letter-spacing:0;margin-left:2px}
#set .set-cost-payment>small{color:#60554d;font:800 11px/1.4 system-ui,sans-serif;margin-left:3px}
#set .set-card-body>a.product-inquiry-button{margin-top:20px}
@media(max-width:760px){
 #set .set-cost{padding-top:12px;margin-top:12px}
 #set .set-cost-total{font-size:13px}
 #set .set-cost-total>strong{font-size:17px}
 #set .set-cost-payment-row{gap:6px;margin-top:10px}
 #set .set-cost-label{font-size:11px;padding:5px 7px;border-radius:5px}
 #set .set-cost-payment{font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:clamp(24px,7.4vw,35px);letter-spacing:-.025em}
 #set .set-cost-payment>small{font-size:9px}
 #set .set-card-body>a.product-inquiry-button{margin-top:16px}
}
/* ご相談の流れ：共通の見出し階層に統一 */
#flow .section-head{text-align:center}
@media(min-width:701px){
 #flow .section-head>p{font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px}
 #flow .section-head h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0}
}
@media(max-width:700px){
 #flow .section-head>p{font-size:18px;font-weight:800;line-height:1.35;letter-spacing:.035em;margin:0 0 6px}
 #flow .section-head h2{font-size:18px;font-weight:500;line-height:1.35;letter-spacing:-.035em;margin-top:0}
 @supports(font-size:1cqi){#flow .section-head h2{font-size:min(20px,5cqi)}}
}
/* PC：ステップバーの番号と項目名を少し大きく */
@media(min-width:761px){
 #flow .flow-overview b{font-size:28px}
 #flow .flow-overview span{font-size:16px}
}
/* スマホ：STEP 01〜04のイラストを非表示 */
@media(max-width:760px){
 #flow .flow-list>.flow-step:nth-child(-n+4)>.flow-step-visual{display:none}
}
/* スマホ：ステップの補足文を段落で改行せず続ける */
@media(max-width:760px){
 #flow .flow-step-copy>p{display:inline;margin:0}
 #flow .flow-step-copy br{display:none}
}
/* スマホ：STEP番号と見出しを同じ段に */
@media(max-width:760px){
 #flow .flow-list>.flow-step{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;row-gap:12px}
 #flow .flow-step-number{grid-column:1;grid-row:1;border:0;padding:0;gap:4px}
 #flow .flow-step-number span{font-size:28px}
 #flow .flow-step-body{display:contents}
 #flow .flow-step-body>.flow-step-head{grid-column:2;grid-row:1;margin:0;gap:5px}
 #flow .flow-step-head strong{width:auto;font-size:20px}
 #flow .flow-step-body>:not(.flow-step-head){grid-column:1/-1;margin-top:0}
}
/* スマホ：STEPの見出し段の下に区切り線を残す */
@media(max-width:760px){
 #flow .flow-list>.flow-step{position:relative}
 #flow .flow-step-number,
 #flow .flow-step-body>.flow-step-head{align-self:stretch;padding-bottom:10px;border-bottom:1px solid #eadfcf}
 #flow .flow-step-number{position:relative}
 #flow .flow-step-number::after{content:"";position:absolute;left:100%;bottom:-1px;width:12px;border-bottom:1px solid #eadfcf}
}
/* 保証の見出し・タイトルを枠の外へ */
#flow .flow-warranty-heading{margin-top:64px;margin-bottom:24px}
#flow .flow-warranty-heading+.flow-aftercare{margin-top:0}
#flow .flow-aftercare .flow-warranty-grid{margin-top:0}
@media(max-width:700px){
 #flow .flow-warranty-heading{margin-top:36px;margin-bottom:18px}
}
/* 保証欄：チェックアイコンと空き列を除去 */
#flow .flow-aftercare{display:block}
/* FAQ：共通の見出し・タイトルに統一 */
#faq .section-head{text-align:center}
@media(min-width:701px){
 #faq .section-head>p{font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px}
 #faq .section-head h2{font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0}
}
@media(max-width:700px){
 #faq .section-head>p{font-size:18px;font-weight:800;line-height:1.35;letter-spacing:.035em;margin:0 0 6px}
 #faq .section-head h2{font-size:18px;font-weight:500;line-height:1.35;letter-spacing:-.035em;margin-top:0}
 @supports(font-size:1cqi){#faq .section-head h2{font-size:min(20px,5cqi)}}
}
/* PC：施工事例・選ばれる理由・商品紹介の見出し階層を共通化 */
@media(min-width:701px){
 #cases .section-head>p,
 #reasons .section-head>p,
 #products .maker-catalog>.section-head>p{
  font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px;
 }
 #cases .section-head h2,
 #reasons .section-head h2,
 #products .maker-catalog>.section-head h2{
  font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0;
 }
}
/* 緊急案内：相談を促す文も上の説明と同じ色・サイズに */
#speed .speed-reception>div>p{color:var(--brown-dark);font-size:19px;line-height:1.45}
@media(max-width:760px){
 #speed .speed-reception>div>p{font-size:clamp(10px,3.1vw,12px);line-height:1.4}
}
/* 交換費用：内訳チップと税込金額が重ならない配置 */
#price .price-breakdown .price-total{
 display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px;
}
#price .price-total .price-inclusions{flex:0 1 auto;flex-wrap:wrap;max-width:100%}
#price .price-total>strong{flex:0 0 auto;margin-left:auto;white-space:nowrap}
/* PC：内訳チップと通常価格を一段に */
@media(min-width:761px){
 #price .price-breakdown .price-total{flex-wrap:nowrap;gap:8px}
 #price .price-total .price-inclusions{flex-wrap:nowrap;gap:3px}
 #price .price-inclusions i{padding:6px 5px;font-size:10px}
 #price .price-total>strong{font-size:25px}
 #price .price-total>strong small{font-size:12px}
 #price .price-total>strong .price-tax-label{font-size:9px;margin-left:3px}
}
@media(min-width:761px){
 #price .price-inclusions i{font-size:11px;padding:6px}
}
/* ガス給湯器の補足文を少し大きく */
#gas .gas-explain .gas-card-description{font-size:18px}
@media(max-width:700px){
 #gas .gas-explain .gas-card-description{font-size:14px}
}
/* ご相談の流れ：各ステップの説明文を少し拡大 */
#flow .flow-step-copy p{font-size:17px}
@media(max-width:760px){
 #flow .flow-step-copy p{font-size:16px}
}
/* 最終確認：狭い画面での文字はみ出しを防ぐ */
@media(max-width:700px){
 body main #speed .speed-heading h2{font-size:min(19px,4.65vw)}
 #speed .speed-reception>div>strong{white-space:normal;font-size:clamp(10px,3.1vw,12px);line-height:1.4}
}
#products .product-overview-info{min-width:0;container-type:inline-size}
#products .product-model{font-size:min(26px,15cqi);white-space:nowrap}
#products .product-special-capsule{max-width:100%;box-sizing:border-box;white-space:normal;text-align:center}
@media(min-width:701px) and (max-width:1000px){
 .lp-trust-strip article{flex-direction:column;text-align:center;gap:8px;min-width:0}
 .lp-trust-strip strong{font-size:20px}
 .shortcut .intent-chip{white-space:normal;font-size:14px}
 #hybrid .hybrid-explain>p{white-space:normal}
}
@media(min-width:701px) and (max-width:1000px){
 .phone-cta-copy{min-width:0;container-type:inline-size}
 .site-header .phone-cta-copy strong,.contact-copy .phone-cta-copy strong{font-size:min(30px,13cqi)}
 .kh-hero .kh-price>div>strong{font-size:58px}
 .kh-hero .bp-subsidy__row{flex-wrap:wrap;gap:6px}
 .kh-hero .kh-math small{white-space:normal}
 .shortcut .intent-chip.intent-chip-emergency{padding-left:10px;padding-right:10px;font-size:13px;gap:6px}
 #products .product-model{font-size:min(26px,13.5cqi)}
}
@media(min-width:701px) and (max-width:1000px){
 body .intent-chip.intent-chip-emergency{min-width:0;padding:10px;white-space:normal;font-size:13px;gap:6px}
 .contact-copy .phone-cta-copy>span,.contact-copy .phone-cta-copy>small{white-space:normal;font-size:10px}
}
@media(min-width:701px) and (max-width:1000px){
 body .intent-chip.intent-chip-emergency span{min-width:0;font-size:13px;white-space:normal}
}

/* ======== お問い合わせ冒頭（スマホ）2026-09-13 渡邊さん指示 ========
   1段目: 左にイラスト、右にラベル「無料見積もり・ご相談」＋見出し
   2段目: 説明文を幅いっぱい ／ 3段目: 電話
   マスコットの吹き出し「まずはお気軽にご相談ください♪」は出さない。
   PC（761px以上）は触らない。
   文字の大きさは画面幅に応じて可変（375pxで「お聞かせください。」が折り返さない上限）。 */
@media (width<=760px){
 #contact .contact-copy{display:grid;grid-template-columns:118px minmax(0,1fr);grid-template-areas:"art label" "art h2" "lead lead" "phone phone";column-gap:12px;row-gap:0;align-items:center}
 #contact .contact-copy>.section-label{grid-area:label;align-self:end;font-size:min(19px,5vw);line-height:1.4;margin:0 0 6px;letter-spacing:.04em}
 #contact .contact-copy>h2{grid-area:h2;align-self:start;font-size:min(26px,6vw);line-height:1.45;font-weight:700;margin:0}
 #contact .contact-copy>p:not(.section-label){grid-area:lead;font-size:15px;line-height:1.6;margin:14px 0 0}
 #contact .contact-mascot-scene{grid-area:art;width:118px;height:auto;margin:0;align-self:center}
 #contact .contact-mascot-scene>p{display:none}
 #contact .contact-mascot-scene>img.contact-greeting-group{position:static;width:118px;height:auto;left:auto}
 /* 電話ボタン（スマホ）: アイコン・文言・「›」を外し、電話番号だけのスリムなカプセルに（2026-09-13 渡邊さん指示）
    href と data-cta-location はそのまま（計測は tel: のURL判定） */
 #contact .contact-copy>.contact-fv-phone{grid-area:phone;display:flex;justify-content:center;align-items:center;width:100%;max-width:340px;justify-self:center;min-height:0;margin:12px auto 0;padding:9px 26px;gap:4px;border-radius:999px;border-bottom-width:2px;box-shadow:0 4px 10px #5330141f}
 /* 案C（2026-09-13 渡邊さん選択・Dから変更）: 白い丸にオレンジの受話器＋番号。
    受話器は支給画像から抜き出したもの（元: site/_unused/icon-src/）。☎ の文字は消して背景画像に差し替える */
 #contact .contact-copy>.contact-fv-phone .phone-icon{display:inline-block;flex:0 0 26px;width:26px;height:26px;margin-right:4px;font-size:0;color:transparent;border-radius:50%;background:#fff url("/assets/lp/phone-handset-orange.png") center/60% no-repeat;padding:0}
 #contact .contact-copy>.contact-fv-phone .phone-cta-lead,
 #contact .contact-copy>.contact-fv-phone .phone-cta-meta,
 #contact .contact-copy>.contact-fv-phone>i{display:none}
 #contact .contact-copy>.contact-fv-phone .phone-cta-copy{display:block;text-align:center;container-type:normal}
 #contact .contact-copy>.contact-fv-phone .phone-cta-copy strong{font-size:22px;line-height:1.15;letter-spacing:.02em;margin:0}
 /* 説明文とカプセルの間、カプセルとフォームの間を詰める */
 #contact .contact-copy>p:not(.section-label){margin-top:10px}
 #contact .contact-layout{gap:16px}
}

/* ======== FVの説明文（スマホ）: 2026-09-13 に非表示 → 2026-09-14 渡邊さん指示で再表示（元の指定に戻す） ======== */

/* ======== スマホの Googleレビュー浮遊バッジ（左下の ★4.9）をやめる 2026-09-13 渡邊さん指示 ========
   戻すときはこのブロックを消す。lp-behaviors.js の表示切替はそのまま動いているが、display:none が勝つ */
@media (width<=760px){
 .mobile-review-float{display:none!important}
}

/* ======== FV（スマホ）: 見出し「エコキュート・給湯器の交換専門」と価格カードの間を詰める 2026-09-13 渡邊さん指示 ======== */
@media (width<=760px){
 .lp-new-hero .hero-brand-title{margin-bottom:0}
 .lp-new-hero .kh-price{margin-top:6px}
}

/* ======== 追従バー（スマホ）: ページ先頭では隠し、スクロール開始で出す 2026-09-13 渡邊さん指示 ========
   クラスは lp-behaviors.js が付け外しする（scrollY が 12px 以下で is-offscreen） */
@media (width<=760px){
 .mobile-sticky{transition:transform .28s ease,opacity .28s ease}
 .mobile-sticky.is-offscreen{transform:translateY(120%);opacity:0;pointer-events:none}
}

/* ======== FVの補助金バナー: 外枠を上段と同じ濃い緑の線に 2026-09-13 渡邊さん指示（PC・スマホ共通） ======== */
#lp-fv-subsidy.bp-subsidy,.lp-new-hero .bp-subsidy{border:2px solid #1f7a4d}

/* ======== 緊急対応セクションのオペレーター説明（スマホ）: 2文を改行なしで続ける 2026-09-13 渡邊さん指示 ======== */
@media (width<=760px){
 #speed .speed-reception>div>strong,#speed .speed-reception>div>p{display:inline;margin:0;font-size:13px;line-height:1.45;white-space:normal;letter-spacing:0}   /* 行間 1.6→1.45（2026-09-14） */
 #speed .speed-reception>div>span{display:block;margin-bottom:6px;line-height:1.4}
 #speed .speed-reception>div{line-height:19px}   /* 折り返し行の高さは親の枠で決まる。親の文字は17pxなので倍率でなくpxで指定（2026-09-14） */
}

/* ======== 選ばれる理由（強み3枚）の補足文を少し大きく 2026-09-13 渡邊さん指示（PC） ======== */
@media (min-width:761px){
 #reasons .reason-row .reason-content>p{font-size:18px;line-height:1.8}
}

/* ======== ハイブリッドの災害時カード（PC）: 補足文の左を少し空ける 2026-09-13 渡邊さん指示 ======== */
@media (min-width:761px){
 #hybrid .hybrid-resilience-grid article>p{padding-left:8px}
}

/* ======== 住宅設備セットの内訳「本体○円＋取り付け撤去処分○円」を少し大きく 2026-09-13 渡邊さん指示 ======== */
#set .set-cost-breakdown{font-size:14px}

/* ======== 選ばれる理由の補足文の色を濃く 2026-09-13 渡邊さん指示（PC・スマホ共通）: #70665c → #4d3b30 ======== */
#reasons .reason-row .reason-content>p{color:#4d3b30}

/* ======== 実績帯（FV直下の3列）: 1024px前後で列が中身に押し広げられ横にはみ出していた 2026-09-13 修正 ========
   列幅を minmax(0,1fr) にして中身より優先し、狭いPC幅では文字と間隔を少し詰める */
.lp-trust-strip>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-trust-strip article{min-width:0}
.lp-trust-strip article>div{min-width:0}
@media (min-width:761px) and (max-width:1180px){
 .lp-trust-strip{padding-left:16px;padding-right:16px}
 .lp-trust-strip>div{gap:14px}
 .lp-trust-strip article{gap:10px}
 .lp-trust-strip .lp-trust-icon{flex-basis:48px;height:48px;padding:11px}
 .lp-trust-strip strong{font-size:clamp(17px,2.1vw,23px);white-space:nowrap}
 .lp-trust-strip article>div>span{font-size:13px}
}

/* ======== FV価格カードの注記（スマホ）「補助金7万円適用後 ｜ パナソニック HE-S37LQS／370Lの場合」 2026-09-14 渡邊さん指示 ========
   8.6px → 12px（Googleの判読基準）。iPhone 14 Pro（393px・ヒラギノ）では1行に収まることを実機で確認。
   375px以下の機種では収まらない可能性があるので、380px以下だけ11pxに落とす保険 */
@media (width<=760px){
 .lp-new-hero .kh-price p,.lp-new-hero .kh-price p .kh-price-example-mobile{font-size:12px;line-height:1.5;letter-spacing:0;white-space:nowrap}
}
@media (width<=380px){
 .lp-new-hero .kh-price p,.lp-new-hero .kh-price p .kh-price-example-mobile{font-size:11px;letter-spacing:-.01em}
}

/* ======== 12px未満の文字を底上げ（スマホ）2026-09-14 渡邊さん指示・案A一括 ========
   Googleの判読基準（12px）を目安に、注記・ラベル類を 11〜12px、本文寄りは 13〜14px に。
   番号は渡邊さんに出した一覧の #0〜#14。PC（761px以上）は触らない。 */
@media (width<=760px){
 /* #0 FV冒頭の2文 13→14 */
 .lp-new-hero .lp-hero-intro{font-size:14px;line-height:1.75}
 .lp-new-hero .lp-hero-intro br{display:none}   /* 14pxでは強制改行位置で「も。」が孤立するため、スマホは自然に折り返す */
 /* #1 ヘッダーの✓2行 10.5→12 */
 .site-header .header-trust span{font-size:12px}
 /* #2 FV補助金バナー: タグ 11→12、下段2行 10.5→12 */
 .lp-new-hero .bp-subsidy__tag{font-size:12px}
 .lp-new-hero .bp-subsidy__foot{font-size:12px;line-height:1.5}
 /* #3 FV注記 10→12 */
 .lp-new-hero .kh-notes{font-size:12px;line-height:1.7}
 /* #4 追従バーの電話ボタン内の小文字 9→11 */
 .mobile-sticky .sticky-phone-lead,.mobile-sticky .sticky-phone-hours{font-size:11px}
 /* #5 実績帯: 小見出し 8.3→11、見出し 10.3→13（折り返し可） */
 .lp-trust-strip article>div>small{font-size:10px;white-space:nowrap;letter-spacing:-.02em;line-height:1.3}   /* 3列に収める都合で10px止まり */
 .lp-trust-strip strong{font-size:13px;white-space:normal;line-height:1.35;text-wrap:balance}
 /* #6 緊急対応: 小見出し 9→11、都県名 10.6→12 */
 #speed .speed-proof-list li small{font-size:11px}
 #speed .speed-area>p{font-size:12px}
 /* #7 補助金: 加算の内訳・撤去例・支払い比較の補足 9〜10→12 */
 #subsidy .kp-grant-bar>span{font-size:12px}
 #subsidy .kp-grant-example{font-size:12px}
 #subsidy .kp-payment-ours>span,#subsidy .kp-payment-later>span{font-size:12px}
 #subsidy .kp-grant-chart-caption>span:last-child{font-size:12px}
 /* #8 相談ブロックの一言 9.4→12 */
 #lp-consult-subsidy .kp-consult-note,#lp-consult-price .kp-consult-note,#lp-consult-products .kp-consult-note{font-size:12px;line-height:1.6}
 /* #9 費用: 補助金対象商品 10.5→12、税込 9→11 */
 #price .price-subsidy>span{font-size:12px}
 #price .price-total strong .price-tax-label,#price .price-payment strong .price-tax-label,#price .price-payment>strong .price-tax-label,#price .price-tax-label{font-size:11px}
 /* #10 施工事例の都県名 10.6→12 */
 #cases .service-area>p{font-size:12px}
 /* #11 選ばれる理由: スタッフの役割 10→12 */
 #reasons .staff-grid small,#reasons figure+div>small{font-size:12px}
 /* #12 商品カード: 機能ラベル 10→12、税込 9→11、補助金対象商品 10→12、「くまさんの」 8→10 */
 #products .feature-help-label{font-size:12px}
 #products .maker-card .maker-cost-total strong .maker-total-tax,#products .maker-card .maker-total-tax,#products .maker-total-tax{font-size:11px}
 #products .maker-cost-grant>span{font-size:12px}
 #products .maker-recommend small{font-size:10px}
 /* #13 住設セット: 税込 9→11 */
 #set .set-cost-payment small{font-size:11px}
 /* #14 流れ: STEP 10→11、NP後払い 9→12 */
 #flow .flow-step-number small{font-size:11px}
 #flow .flow-payment-card small{font-size:12px;line-height:1.4}
}

/* ======== 12px未満の文字を底上げ（PC）2026-09-14 渡邊さん指示 ========
   スマホと同じ方針: 注記・補足は12px、「税込」「必須」「任意」「Copyright」などのラベルは11pxのまま */
@media (min-width:761px){
 .site-header .header-phone .phone-cta-lead{font-size:12px}
 .header-phone .phone-cta-copy .phone-cta-meta,.action-phone .phone-cta-copy .phone-cta-meta,.phone-cta-meta{font-size:12px}
 .lp-new-hero .kh-notes{font-size:14px;line-height:1.8;color:#4d3b30}   /* 2026-09-14 12→14、色も濃く（渡邊さん） */
 #subsidy .kp-grant-example{font-size:12px}
 #price .price-subsidy>span{font-size:12px}
 #price .price-subsidy-note{font-size:12px}
 #price .price-total strong .price-tax-label,#price .price-total>strong .price-tax-label{font-size:11px}
 #cases .case-caption-before,#cases .case-caption-after{font-size:12px}
 #cases .case-card-body dd small{font-size:12px}
 #flow .flow-payment-card small{font-size:12px}
}

/* ======== FV冒頭2文目をPC／スマホで出し分け 2026-09-14 渡邊さん指示 ========
   PC「ご自宅に合う交換方法」／スマホ「最適な交換方法」。共通の .pc-only/.sp-only は display:block なので、文中では inline にする */
.lp-hero-intro .pc-only{display:inline}
.lp-hero-intro .sp-only{display:none}
@media (width<=760px){
 .lp-hero-intro .pc-only{display:none}
 .lp-hero-intro .sp-only{display:inline}
}

/* ======== 「無料見積り・ご相談」「LINEで無料相談」ボタンの文字を大きく 2026-09-14 渡邊さん指示（PC・スマホ） ======== */
.lp-consult-shell .kp-consult-buttons strong{font-size:21px}
@media (min-width:761px){
 .lp-new-hero .kh-actions strong{font-size:20px}
}
@media (width<=760px){
 .lp-new-hero .kh-actions strong{font-size:15px}   /* FVは2列なので、折り返さない上限 */
}

/* FV注記の色（スマホも同じ濃さに）2026-09-14 */
@media (width<=760px){ .lp-new-hero .kh-notes{color:#4d3b30} }

/* ======== 実績帯の小見出し（積み重ねた施工経験 など）: 色を濃く、PCは大きく 2026-09-14 渡邊さん指示 ======== */
.lp-trust-strip article>div>small{color:#4d3b30}
@media (min-width:761px){
 .lp-trust-strip article>div>small{font-size:14px;font-weight:700}
}

/* 実績帯「現地調査・お見積り無料」はスマホでは「・」の後で改行（渡邊さん指示 2026-09-14）。PCでは <br class="sp-only"> を消す */
.lp-trust-strip strong br.sp-only{display:none}
@media (width<=760px){
 .lp-trust-strip strong br.sp-only{display:inline}
 .lp-trust-strip strong{text-wrap:initial}
}

/* ======== 補助金グラフ: 行見出しを短くしたので、見出し列を詰めてグラフを左へ 2026-09-14 渡邊さん指示 ======== */
@media (min-width:761px){
 #subsidy .kp-grant-chart-row{grid-template-columns:118px 1fr;gap:14px}
}
@media (width<=760px){
 #subsidy .kp-grant-chart-row{grid-template-columns:84px 1fr;gap:8px}
 #subsidy .kp-grant-chart-row>span .kp-grant-example{display:block}
}

/* ======== 補助金グラフ: 「撤去する設備があれば」を点線の箱から出して見出し列へ 2026-09-14 渡邊さん指示 ========
   他の行と同じ「見出し列｜グラフ列」のグリッドに載せる。箱には「＋ 2万円 または 4万円加算」だけ残す */
#subsidy .kp-grant-addition-row .kp-grant-addition{margin:0;justify-content:center}
#subsidy .kp-grant-addition-row .kp-grant-addition strong{margin:0;display:inline}

/* ======== 補助金グラフ（PC）: 棒の伸びる上限（右端）を短く 2026-09-14 渡邊さん指示 ========
   行（見出し列＋棒）だけ右に余白を取る。説明文・注記は幅そのまま */
@media (min-width:761px){
 #subsidy .kp-grant-chart-row{padding-right:120px}
}

/* ======== 補助金グラフ（スマホ）: 「撤去する設備がある場合」は改行せず1行のまま横並び 2026-09-14 渡邊さん指示 ========
   見出し列84pxには入らないので、この行だけ見出し列を文字幅にする。箱は残り幅で、中の文字は折り返し可（積む案は不採用） */
@media (width<=760px){
 #subsidy .kp-grant-addition-row{grid-template-columns:auto 1fr;gap:8px}   /* 見出し列は文字幅に合わせる（横並びのまま） */
 #subsidy .kp-grant-addition-row>span{white-space:nowrap}
 #subsidy .kp-grant-addition-row .kp-grant-addition{padding:8px 6px;gap:6px}
 #subsidy .kp-grant-addition-row .kp-grant-addition strong{display:block;text-align:center;line-height:1.35;word-break:keep-all}   /* 折り返しはスペース位置（「2万円 または／4万円加算」）だけ */
}

/* 補助金グラフの行見出し: PC「撤去する／設備がある場合」、スマホ「撤去設備がある」で出し分け 2026-09-14 渡邊さん指示 */
.kp-grant-addition-sp{display:none}
@media (width<=760px){
 .kp-grant-addition-pc{display:none}
 .kp-grant-addition-sp{display:inline}
}

/* 補助金グラフ（スマホ）: 「電気温水器の撤去例」を小さく1行に 2026-09-14 渡邊さん指示
   12px底上げの例外（実績帯の小見出しと同じ扱い）。84px列に収めるため10px・改行なし */
@media (width<=760px){
 #subsidy .kp-grant-total-row .kp-grant-example{font-size:10px;white-space:nowrap;letter-spacing:-.02em;line-height:1.3}
}

/* 補助金グラフ（スマホ）: 高性能機種バーの「10万円」を上下中央に 2026-09-14 渡邊さん指示
   元は align-items:flex-end＋padding-bottom で下寄せ（内訳ラベルを上に置いていた名残。内訳はいま絶対配置で縦中央） */
@media (width<=760px){
 #subsidy .kp-grant-bar-ten{align-items:center;padding-bottom:0}
}

/* 補助金グラフ 合計バー: 「10万円」「12万円」の単位を数字のベースラインに揃える（7万円・10万円の棒と同じ下付き）2026-09-14 渡邊さん指示
   親が flex で数字と単位を別々に上下中央へ置いていたため、単位が数字の中央の高さに来ていた。1つのかたまり（インライン）にして flex には1要素として渡す */
.kp-grant-total-bar .kp-grant-total-num{display:inline;line-height:1;white-space:nowrap}
.kp-grant-total-bar .kp-grant-total-num b{margin-right:3px}   /* 元の gap:3px ぶん */

/* 補助金の支払い比較（PC）: 「通常価格40万円・補助金10万円の場合」を大きく 15→18px 2026-09-14 渡邊さん指示 */
@media (min-width:761px){
 #subsidy .kp-payment-compact>span{font-size:18px}
}

/* 補助金の支払い比較カード（PC）: 縦に伸びてよいので全体を一回り大きく 2026-09-14 渡邊さん指示（幅は据え置き） */
@media (min-width:761px){
 #subsidy .kp-payment-pair>div{padding:20px 16px 18px}
 #subsidy .kp-payment-pair h4{font-size:19px;padding:6px 18px;margin-bottom:10px}
 #subsidy .kp-payment-pair p{font-size:17px}
 #subsidy .kp-payment-pair strong{font-size:64px;margin:6px 0}
 #subsidy .kp-payment-pair strong small{font-size:26px}
 #subsidy .kp-payment-pair>div>span{font-size:16px;line-height:1.5}
}

/* 補助金の支払い比較（スマホ）: 見出し「くまのポケットは、補助金分を先に差し引きます」を1行のまま少し大きく 2026-09-14 渡邊さん指示
   2行案は不採用。容器幅に対して1行で入る上限（375px幅で約14px）。上限15px・下限10px */
@media (width<=760px){
 #subsidy .kp-payment-compact h3{font-size:clamp(10px,4.6cqi,15px)}   /* 下限は元と同じ10px。狭い端末ではみ出さないため */
}

/* 補助金の申請の流れ 1・2・3（スマホ）: 帯の上の余白を少し詰める 12→4px（上ブロックの下余白14pxと合わせて 26→18px）2026-09-14 渡邊さん指示 */
@media (width<=760px){
 #subsidy .kp-grant-support{margin-top:4px}
}

/* 補助金グラフの見出し文（PC「対象機種なら7万円…」／スマホ「機種の性能に応じて…」）: 文字色をオレンジに（「30万円」と同じ #c54e0b）2026-09-14 渡邊さん指示
   右端の「1台あたり」は別指定（#6f6056）のまま */
#subsidy .kp-grant-chart-caption{color:#c54e0b}

/* 相談ブロックの見出し「エコキュートの交換費用も、機種選びも。まずはお気軽にご相談ください。」（3箇所共通）を少し大きく 2026-09-14 渡邊さん指示
   PC 17→19px、スマホ 3.25vw→3.5vw（375px幅で12.2→13.1px、上限14px） */
@media (min-width:761px){
 .lp-consult-shell .kp-consult h2{font-size:19px}
}
@media (width<=760px){
 .lp-consult-shell .kp-consult h2{font-size:clamp(11px,3.5vw,14px)}
}

/* 設置までの流れ STEP1〜5 の補足文: 文字色を濃く #6e6258→#4d3b30（PC・スマホ）2026-09-14 渡邊さん指示 */
#flow .flow-step-copy p{color:#4d3b30}

/* 設置までの流れ STEP1〜5 の補足文（スマホ）: 行間を詰める 28→24px 2026-09-14 渡邊さん指示
   p は inline なので、親の枠（17px基準の行送り）と p の両方に px で指定する */
@media (width<=760px){
 #flow .flow-step-copy,#flow .flow-step-copy p{line-height:24px}
}

/* 設置までの流れ STEP1〜5 の補足文（スマホ）: 太字をやめて標準の太さに（試し）2026-09-14 渡邊さん指示 */
@media (width<=760px){
 #flow .flow-step-copy,#flow .flow-step-copy p{font-weight:400}
}

/* 工事後の保証カード（施工10年保証／機器本体10年延長保証）の補足文: 文字色を濃く #6e6258→#4d3b30（PC・スマホ）2026-09-14 渡邊さん指示 */
#flow .flow-warranty-card>p{color:#4d3b30}

/* 工事後の保証カードの補足文: 14→16px（PC・スマホ）2026-09-14 渡邊さん指示 */
#flow .flow-warranty-card>p{font-size:16px}

/* 工事後の保証の※注記（PC）: 12→14px。色はそのまま 2026-09-14 渡邊さん指示 */
@media (min-width:761px){
 #flow .flow-warranty-note{font-size:14px}
}

/* お支払い方法カード「銀行振込」の補足「NP後払い／請求書到着後14日以内」: 2行に分け、色を少し濃く（#887c72→#6e6258）、PCは12→14px 2026-09-14 渡邊さん指示 */
#flow .flow-payment-card small{color:#6e6258;font-weight:400}   /* 2026-09-14 #4d3b30 は濃すぎたので中間の色に。太字（850）もやめる（渡邊さん） */
@media (min-width:761px){
 #flow .flow-payment-card small{font-size:14px}
}

/* お問い合わせ冒頭の一文（無料見積りだけでも…）: 文字色を濃く #6e6258→#4d3b30（PC・スマホ）2026-09-14 渡邊さん指示 */
#contact .contact-copy>p:not(.section-label){color:#4d3b30}   /* 見出し上のオレンジのラベル「無料見積もり・ご相談」は除く */

/* ガス給湯器・ハイブリッドの特徴カード（最短即日の交換にも対応…／電気だけで給湯…）: カード内の補足文を太字に 2026-09-14 渡邊さん指示 */
#gas .hybrid-benefits p,#hybrid .hybrid-resilience-grid p{font-weight:700;color:#4d3b30;text-align:center}   /* 中央寄せも（渡邊さん） */   /* ガス側は #gas 付きの既存指定に負けるのでIDで強くする */   /* 色も #6e6258→#4d3b30 に（渡邊さん） */

/* ======== 薄い補足文をまとめて濃く #4d3b30（PC・スマホ）2026-09-14 渡邊さん指示 ========
   補助金グラフ下の注記／支払い比較の一文／ハイブリッドの仕組み説明／ハイブリッドの数値カード補足×2／ガス給湯器の説明／ガス価格の※注記 */
#subsidy .kp-grant-removal-note,
#subsidy .kp-payment-compact>p:not(.kp-payment-result),   /* オレンジの「お支払いは…」は除く */
#hybrid .hybrid-explain>p,
#hybrid .hybrid-metric-card>p,
#gas .gas-equipment-row .gas-explain .gas-card-description,   /* 既存のID付き指定より強くする */
#gas .gas-price>p{color:#4d3b30}
/* ガス価格の※注記（PC）: 一番小さいので13→14px */
@media (min-width:761px){
 #gas .gas-price>p{font-size:14px}
}

/* ======== 注記（※で始まる補足）の共通スタイル 2026-09-14 渡邊さん指示 ========
   PC 14px／スマホ 12px、色 #4d3b30、太さ 400、行送り 1.7。個別の指定に勝つようセクションIDを付ける。
   対象: FV注記／補助金の対象要件／ハイブリッドの出典・災害時注記／ガス価格の※／セット価格の※／保証の※／フォームの個人情報注記
   ※補助金の「最新の予算消化状況」リンクは色だけ自分の指定（青）を保つ */
.lp-new-hero .kh-notes,
#subsidy .kp-grant-caution,
#hybrid .hybrid-source,
#hybrid .hybrid-resilience-note,
#gas .gas-price>p,
#set .set-note,
#flow .flow-warranty-note,
#contact .contact-privacy-note{font-size:14px;color:#4d3b30;font-weight:400;line-height:1.7}
@media (width<=760px){
 .lp-new-hero .kh-notes,
 #subsidy .kp-grant-caution,
 #hybrid .hybrid-source,
 #hybrid .hybrid-resilience-note,
 #gas .gas-price>p,
 #set .set-note,
 #flow .flow-warranty-note,
 #contact .contact-privacy-note{font-size:12px}
}

/* FV価格カードの「補助金7万円適用後 ｜ パナソニック HE-S37LQS／370Lの場合」（PC）: 12→14px 2026-09-14 渡邊さん指示 */
@media (min-width:761px){
 .lp-new-hero .kh-price p{font-size:14px}
}

/* FV商品カードのバッジ「エコキュート交換プランの一例」（PC。スマホはカード非表示）: 12→15px、余白も広げる 2026-09-14 渡邊さん指示 */
@media (min-width:761px){
 .lp-new-hero .kh-product .kh-badge{font-size:15px;padding:6px 16px}
}

/* 緊急対応のオペレーター説明2文（PC）「お困りの状況を伺い…」「まずはお気軽に…」: 19→21px 2026-09-14 渡邊さん指示 */
@media (min-width:761px){
 #speed .speed-reception>div>strong,#speed .speed-reception>div>p{font-size:21px}
}

/* PC右下の固定パネル（WEBで無料相談／LINE QR）: 商品カードと重なるので中身ごと0.7倍に（右下を基点に縮小）2026-09-14 渡邊さん指示「2まわり小さく」
   1500px未満だけ。重なりが起きるのは1400px前後までなので、それより広い画面は元の大きさ（QRも読みやすい） */
@media (min-width:761px) and (max-width:1499px){
 aside.desktop-contact{transform-origin:right bottom;transform:translateY(12px) scale(.7)}
 aside.desktop-contact.is-visible{transform:translateY(0) scale(.7)}   /* 表示時の translateY(0) に負けないよう、こちらにも scale を入れる */
}

/* PC左下のGoogleレビュー札: 横長なので、右下パネル（縮小後123px幅）と同じ幅感になるよう縮小（左下基点）2026-09-14 渡邊さん指示
   これも1500px未満だけ。件数の札「168件」の非表示は全幅で */
@media (min-width:761px) and (max-width:1499px){
 a.desktop-review,.desktop-review{width:156px;transform-origin:left bottom;transform:translateY(12px) scale(.79)}   /* 幅を詰めてから縮小率を上げ、幅123pxのまま縦を伸ばす（渡邊さん） */
 .desktop-review.is-visible{transform:translateY(0) scale(.79)}
 .desktop-review.is-visible:hover{transform:translateY(-2px) scale(.79)}
}
@media (min-width:761px){
 .desktop-review .desktop-review-count{display:none}   /* 件数の札「168件」は出さない（渡邊さん 9/14）。数字はHTMLに残してある */
}

/* 選ばれる理由カード（メーカーから直接仕入れ／プロによる自社施工／無料工事保証10年 ほか）の補足文: 太字に 2026-09-14 渡邊さん指示 */
#reasons .reason-content>p{font-weight:700}

/* 選ばれる理由のスタッフ紹介コメント（養生から試運転まで…／安全な施工と…）: 太字をやめて標準の太さに 2026-09-14 渡邊さん指示 */
#reasons .staff-grid article p{font-weight:400;color:#4d3b30}   /* 色も #6e6258→#4d3b30 に（渡邊さん） */

/* ======== 選ばれる理由の下に「お客様の声＋4指標の帯」を復活（v264移植で落ちていた塊。2026-09-14 渡邊さん案）========
   HTMLは9/13以前のものをそのまま（.hero-reviews / .hero-stats は基本CSSに残っている）。ここでは置き場所の余白と注記だけ */
#reasons .reason-proof{margin-top:28px}
#reasons .reason-proof .hero-reviews{margin:0 auto;border-radius:16px 16px 0 0;width:100%}   /* 幅はカード列と同じに（元はFV用の min(1160px,100% - 40px)） */   /* 上下で1つの塊。間に余白を入れない */
#reasons .reason-proof .hero-stats{margin:0 auto;border-top:0;width:100%}   /* 境目の金線は上側の下線1本にする */
#reasons .reason-proof-note{margin:10px 0 0;font-size:14px;color:#4d3b30;font-weight:400;line-height:1.7}
@media (width<=760px){
 #reasons .reason-proof{margin-top:20px}
 #reasons .reason-proof .hero-reviews{width:100%;border-radius:14px 14px 0 0}   /* 元は幅が両端12px狭く、指標の格子と段差が出るので同じ幅に */
 #reasons .reason-proof .hero-stats{border-radius:0 0 14px 14px}
 #reasons .reason-proof-note{font-size:12px}
}

#reasons .hero-stats .hero-stat-pc{display:inline}   /* 「受付」を包む span。基本CSSの span{display:block} を打ち消す */

/* 4指標の帯（スマホ）: 2×2 の格子をやめて1段4列に（試し）2026-09-14 渡邊さん指示
   375px幅で1列≈85px。見出しは2行に折り返してよい、数字は16px前後まで詰める */
@media (width<=760px){
 #reasons .reason-proof .hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
 #reasons .reason-proof .hero-stats .hero-stat{padding:8px 2px 6px;border-right:0;border-bottom:0}   /* 縦をスリムに（渡邊さん） */
 #reasons .reason-proof .hero-stats .hero-stat+.hero-stat{border-left:1px solid var(--border)}
 #reasons .reason-proof .hero-stats span{font-size:10px;letter-spacing:0;line-height:1.3;margin-bottom:3px;white-space:nowrap;display:block}
 #reasons .reason-proof .hero-stats .hero-stat-pc{display:none}   /* スマホは「WEB・LINE相談」（受付を省く） */
 #reasons .reason-proof .hero-stats strong{font-size:clamp(13px,4.1vw,17px);letter-spacing:-.045em;padding:0 1px 2px;white-space:nowrap}   /* 375pxで「24時間365日」が84px列に収まる上限 */
 #reasons .reason-proof .hero-stats small{font-size:9px;margin-left:2px}
 #reasons .reason-proof .hero-stats .review-star{font-size:.8em}
}

/* お客様の声（スマホ）: 見出し帯と本文をスリムに 2026-09-14 渡邊さん指示 */
@media (width<=760px){
 #reasons .reason-proof .hero-reviews{min-height:0;padding:10px 14px 10px;gap:6px}
 #reasons .reason-proof .hero-review-heading{margin:-10px -14px 0;padding:8px 14px}
 #reasons .reason-proof .hero-review-heading strong{font-size:14px}
 #reasons .reason-proof .hero-review-copy strong{font-size:15px;margin-bottom:2px;line-height:1.3}
 #reasons .reason-proof .hero-review-copy p{font-size:12px;line-height:1.45}
 #reasons .reason-proof .hero-review-source{display:none}   /* スマホは「掲載口コミをもとに要約」を出さない（渡邊さん） */
 #reasons .reason-proof .hero-reviews{padding-bottom:8px}
}

/* 選ばれる理由のカード3枚: 枠線を太く 1px #eee3cf → 2px #e5d4b6（PC・スマホ）2026-09-14 渡邊さん指示 */
#reasons .reason-list .reason-row.reason-row{border:3px solid #e5d4b6}   /* 2→3px（渡邊さん） */   /* 既存のID付き指定に勝つよう強くする */

/* 選ばれる理由のカード補足文: 左右に内側の余白を足して文の幅を少し狭く 2026-09-14 渡邊さん指示 */
#reasons .reason-content>p{padding:0 10px}
@media (width<=760px){
 #reasons .reason-content>p{padding:0 6px}
}

/* 商品情報「もっと見る（残り6商品）」ボタン（スマホ）: 青だと素通りされやすいので色を変える 2026-09-14 渡邊さん指示 */
@media (width<=760px){
 /* 比較（dist/variants/more-button.html）の結果 B: 茶ボタン＋白文字に決定（渡邊さん 9/14）。お客様の声の見出し帯と同じ茶 */
 #products .maker-products-toggle{background:linear-gradient(145deg,#7a5a48 0%,#5f4334 55%,#472d20 100%);color:#fff;border:1px solid #4a2f22;box-shadow:0 4px 0 #2f1c12,0 8px 18px #2d1a1033;font-weight:900}
 #products .maker-products-toggle:hover,#products .maker-products-toggle:active{background:linear-gradient(145deg,#87675a 0%,#6b4d3d 55%,#523628 100%);color:#fff}
 #products .maker-products-toggle i{border-color:#fff}   /* 記号∨は文字と同じ白 */
}
