/* bear-pocket.com トップ改修 — GPTミラー(2026-09-11)のCSSをカスケード順に畳んだもの。生成物。編集は src-mock と build-css.sh で */

.com-renewal{--cr-ink:#263e35;--cr-green:#285e48;--cr-orange:#cb552a;--cr-muted:#637169;--cr-border:#dce3dc;color:var(--cr-ink);font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;font-weight:400;line-height:1.85;margin-top:48px;text-align:left;letter-spacing:.025em}
.com-renewal *{box-sizing:border-box}.com-renewal [hidden]{display:none!important}.com-renewal h2,.com-renewal h3,.com-renewal p,.com-renewal figure,.com-renewal ol{margin:0;padding:0;background:none;border:0;box-shadow:none;color:inherit}.com-renewal h2::before,.com-renewal h2::after,.com-renewal h3::before,.com-renewal h3::after{display:none}.com-renewal h2{font-size:35px;line-height:1.55;font-weight:750;letter-spacing:.045em}.com-renewal h3{font-size:20px;line-height:1.6;font-weight:700}.com-renewal p{font-size:17px;line-height:1.95}.com-renewal small{font-size:14px;line-height:1.7}.com-renewal a{color:inherit;text-decoration:none}.com-renewal a:focus-visible,.com-renewal button:focus-visible,.com-renewal summary:focus-visible{outline:3px solid #ebae65;outline-offset:4px}.com-renewal a:hover{opacity:.85}.com-renewal .cr-eyebrow{display:block;color:var(--cr-green);font-size:14px;font-weight:750;letter-spacing:.12em;margin-bottom:12px}.com-renewal .cr-section{padding:52px 0;border-bottom:1px solid var(--cr-border)}.cr-heading{margin-bottom:26px}.cr-heading p{margin-top:12px!important;color:var(--cr-muted)}
.cr-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center;padding:36px;background:#f3f5ed;border-radius:20px}.cr-intro p{margin-top:16px!important}.cr-first-contact{background:#fff;border-radius:14px;padding:24px;text-align:center}.cr-free{font-size:15px;font-weight:700;display:block;margin-bottom:12px}.com-renewal .cr-button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;background:var(--cr-orange);color:#fff;border-radius:9px;font-size:18px;font-weight:750;padding:16px 20px;text-align:left;box-shadow:0 3px 0 #a53f1e}.cr-button span{font-size:26px;font-weight:400}.cr-phone{margin:18px 0 8px}.cr-phone a{font-size:32px;font-weight:750;letter-spacing:.01em;line-height:1.4;display:block;white-space:nowrap}.cr-phone small{display:block;color:var(--cr-muted)}
.cr-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;border-bottom:2px solid var(--cr-green)}.cr-tabs button{border:0;border-radius:10px 10px 0 0;background:#eef1ed;color:var(--cr-ink);font-family:inherit;font-size:18px;line-height:1.5;font-weight:700;padding:14px 8px;cursor:pointer}.cr-tabs button[aria-selected=true]{background:var(--cr-green);color:#fff}.cr-tabs small{font-weight:400}.cr-price-panel{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:40px;padding:28px 40px;border:1px solid var(--cr-border);border-top:0;border-radius:0 0 12px 12px}.cr-price-image{text-align:center}.cr-price-image img{height:190px;width:160px;object-fit:contain;display:block;margin:auto}.cr-price-image>span{display:block;font-size:12px;line-height:1.6;color:var(--cr-muted);margin-top:8px}.cr-tagline{color:var(--cr-muted);font-size:15px!important;margin:3px 0 14px!important}.cr-price-math{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:15px;align-items:center;border-bottom:1px solid var(--cr-border);padding-bottom:12px;margin-bottom:16px}.cr-minus{background:#eff3e8;color:var(--cr-green);border-radius:4px;padding:3px 8px}.cr-price-label{font-size:15px;font-weight:650}.cr-price{display:flex;gap:8px;align-items:center;line-height:1.25;color:var(--cr-orange);margin:4px 0 10px}.cr-price>strong{font-size:59px;letter-spacing:-.04em}.cr-price>span{font-size:25px;font-weight:700}.cr-price small{display:block}.com-renewal .cr-note{font-size:14px;line-height:1.75;color:var(--cr-muted)}.cr-subsidy{display:flex;gap:18px;align-items:center;background:#f6f4ea;padding:20px 24px;margin:16px 0;border-radius:10px}.cr-subsidy-mark{flex-shrink:0;border:1px solid #d8dbc4;border-radius:50%;width:76px;height:76px;display:grid;place-content:center;text-align:center;font-weight:700;font-size:15px;color:var(--cr-green);line-height:1.6}.cr-subsidy p{font-size:15px;margin-top:5px!important}.cr-subsidy h3{font-size:18px}.cr-subsidy small{font-size:13px;color:var(--cr-muted)}.cr-detail{border-bottom:1px solid var(--cr-border);padding:16px 0}.cr-detail summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:17px;font-weight:650;cursor:pointer;min-height:24px}.cr-detail summary::-webkit-details-marker{display:none}.cr-detail summary::after{content:'＋';color:var(--cr-green);font-weight:400;flex-shrink:0;font-size:23px}.cr-detail[open] summary::after{content:'−'}.cr-detail p{margin-top:14px!important;font-size:16px}.cr-text-link{display:flex;justify-content:space-between;font-size:16px;padding-top:20px;font-weight:700}.cr-equipment{display:flex;align-items:center;gap:12px;justify-content:center}.cr-price-image .cr-equipment-icon{width:75px;padding:25px 6px;border:2px solid #c6cdc7;border-radius:6px;font-size:16px;color:#627368}.cr-price-image .cr-green{background:#f1f5ed;border-color:#527b5b;color:var(--cr-green)}
.cr-staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cr-staff-grid figure{min-width:0}.cr-staff-grid img{width:100%;height:180px;object-fit:cover;object-position:center 25%;border-radius:12px;background:#f0f2eb}.cr-staff-grid figcaption{padding:12px 2px 0;text-align:left;margin:0;font-size:18px;line-height:1.5}.cr-staff-grid small{display:block;font-size:13px;color:var(--cr-muted);margin-bottom:4px}.cr-staff-grid strong{font-size:17px}.cr-guarantee-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cr-guarantee-grid article{background:#f4f6f1;padding:24px;border-radius:12px}.cr-guarantee-grid h3{font-size:19px;margin:12px 0!important;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.cr-guarantee-grid h3 strong{font-size:41px;line-height:1;color:var(--cr-green)}.cr-guarantee-grid p{font-size:15px}.cr-pill{display:inline-block;font-size:13px;font-weight:700;color:white;background:var(--cr-green);padding:4px 10px;border-radius:5px}.cr-pill.cr-light{background:#e0e7db;color:var(--cr-green)}.cr-guarantee>.cr-note{margin-top:15px!important}.cr-steps{display:grid;grid-template-columns:1fr 1fr;gap:24px!important;list-style:none!important;counter-reset:none!important}.cr-steps li{display:flex;gap:16px;margin:0!important;padding:0!important}.cr-steps li::before{display:none!important}.cr-steps li>span{color:var(--cr-green);font-size:30px;line-height:1.4;font-weight:500}.cr-steps h3{font-size:18px}.cr-steps p{font-size:15px;margin-top:5px!important;color:var(--cr-muted)}.cr-reading{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;align-items:center;padding:36px;background:#f5f3ed;border-radius:14px;margin:44px 0}.cr-reading h2{font-size:28px}.cr-reading-links>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;font-size:16px;font-weight:650;border-bottom:1px solid #dcded1}.cr-reading-links small{display:block;color:var(--cr-muted);font-size:13px;margin-bottom:3px}.cr-reading-links b{font-size:22px;font-weight:400}.cr-contact{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;background:#edf3e8;border:1px solid #dce6d6;padding:36px;border-radius:18px}.cr-contact h2{font-size:32px}.cr-contact-copy p{margin-top:14px!important;font-size:16px}.cr-area{padding-top:18px;margin-top:18px;border-top:1px solid #d3dece;font-size:14px;line-height:1.8}.cr-area strong,.cr-area span,.cr-area small{display:block}.cr-area strong{margin-bottom:4px}.cr-area small{font-size:13px;color:var(--cr-muted);margin-top:6px}.cr-contact-actions{align-self:center;text-align:center}.cr-contact-actions>small{display:block;margin-top:10px}.cr-contact-actions .cr-phone{padding:16px 0;border-top:1px solid #d3dece;border-bottom:1px solid #d3dece;margin-top:20px}.cr-line{display:flex;justify-content:space-between;align-items:center;color:var(--cr-green)!important;font-size:15px;font-weight:650;padding:10px 8px}.cr-company{padding:28px 0 10px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:15px;font-weight:650}.cr-company small{display:block;color:var(--cr-muted);font-weight:400;font-size:13px}.cr-company a{font-size:14px;font-weight:400}.cr-mobile{display:none}#renewal-start{scroll-margin-top:120px}
@media(max-width:700px){.com-renewal{margin-top:28px;font-size:17px}.com-renewal h2{font-size:28px}.com-renewal .cr-section{padding:34px 0}.cr-heading{margin-bottom:20px}.cr-heading p{font-size:16px}.cr-intro{grid-template-columns:1fr;padding:24px 20px;gap:22px}.cr-intro p{font-size:16px}.cr-first-contact{padding:20px 16px}.cr-tabs button{font-size:15px;padding:12px 4px}.cr-tabs small{font-size:13px}.cr-price-panel{grid-template-columns:1fr;padding:24px 18px;gap:12px}.cr-price-image{display:none}.cr-price-copy h3{font-size:19px}.cr-price>strong{font-size:52px}.cr-price-math{font-size:14px;gap:8px}.cr-subsidy{padding:16px;gap:12px;align-items:flex-start}.cr-subsidy-mark{width:55px;height:55px;font-size:12px}.cr-subsidy h3{font-size:16px}.cr-subsidy p{font-size:14px}.cr-subsidy small{font-size:12px}.cr-detail{padding:15px 0}.cr-detail summary{font-size:16px}.cr-detail p{font-size:15px}.cr-staff-grid{grid-template-columns:1fr 1fr;gap:18px 12px}.cr-staff-grid img{height:145px;border-radius:9px}.cr-staff-grid figcaption{padding-top:9px}.cr-staff-grid small{font-size:12px}.cr-staff-grid strong{font-size:16px}.cr-mobile{display:block}.cr-guarantee-grid{grid-template-columns:1fr;gap:12px}.cr-guarantee-grid article{padding:20px}.cr-guarantee-grid h3{margin:10px 0!important;font-size:18px}.cr-guarantee-grid h3 strong{font-size:36px}.cr-steps{grid-template-columns:1fr;gap:20px!important}.cr-steps li>span{font-size:27px}.cr-steps h3{font-size:17px}.cr-steps p{font-size:15px}.cr-reading{grid-template-columns:1fr;gap:14px;padding:24px 20px;margin:30px 0}.cr-reading h2{font-size:26px}.cr-contact{grid-template-columns:1fr;gap:24px;padding:26px 20px}.cr-contact h2{font-size:28px}.cr-contact-copy p{font-size:15px}.cr-contact-copy br:not(.cr-mobile){display:none}.cr-contact .cr-phone a{font-size:31px}.cr-company{font-size:14px}.com-renewal .cr-button{font-size:17px;padding:14px 16px;min-height:56px}}

.com-renewal{--cr-ink:#483025;--cr-green:#995020;--cr-orange:#dc4b0c;--cr-muted:#756358;--cr-border:#eadbcb;letter-spacing:0;line-height:1.7}
.com-renewal h2{font-size:32px;letter-spacing:0;line-height:1.5}.com-renewal p{line-height:1.8}.com-renewal .cr-section{padding:36px 0}.com-renewal .cr-eyebrow{margin-bottom:6px;letter-spacing:.03em}.com-renewal .cr-heading{border-bottom:3px solid #995020;padding:0 0 15px;margin-bottom:22px}.com-renewal .cr-heading p{margin-top:7px!important}.com-renewal .cr-heading .cr-eyebrow{display:none}
.com-renewal .cr-benefits{display:grid;grid-template-columns:repeat(3,1fr);background:#fff5e7;border:1px solid #ecd5bb;border-radius:5px;padding:16px 0}.cr-benefits>div{text-align:center;padding:0 8px}.cr-benefits>div+div{border-left:1px solid #ecd5bb}.cr-benefits small{display:block;color:#725640;font-size:14px}.cr-benefits strong{font-size:26px;color:#995020}
.com-renewal .cr-included{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:20px;font-size:16px}.cr-included span{background:#fff5e7;border:1px solid #ead6c0;padding:7px 16px;font-weight:700}.cr-included b{color:#995020}.com-renewal .cr-tabs{gap:4px;border-bottom:3px solid #995020}.com-renewal .cr-tabs button{border-radius:5px 5px 0 0;background:#f7eee4;padding:13px 8px}.com-renewal .cr-tabs button[aria-selected=true]{background:#995020}.com-renewal .cr-price-panel{background:#fff;border:2px solid #ead6c0;border-top:0;border-radius:0 0 5px 5px;padding:25px 32px;gap:24px}.com-renewal .cr-price{color:#d64413}.com-renewal .cr-price>strong{font-size:67px}.com-renewal .cr-price-math{margin-bottom:12px}.com-renewal .cr-minus{background:#ffedc8;color:#77521b;font-weight:700}.com-renewal .cr-subsidy{background:#fff9e9;border:1px solid #ebd4a3;border-radius:5px;padding:18px}.com-renewal .cr-subsidy-mark{color:#77521b;border-color:#d5b778;border-radius:5px;width:68px;height:65px}.com-renewal .cr-subsidy h3{color:#77521b}
.com-renewal .cr-intro,.com-renewal .cr-contact{background:#fff5e7;border:2px solid #ecd4b7;border-top:7px solid #995020;border-radius:6px;padding:28px;gap:26px;margin-top:28px}.com-renewal .cr-intro h2,.com-renewal .cr-contact h2{font-size:30px}.com-renewal .cr-intro p{margin-top:10px!important}.com-renewal .cr-first-contact,.com-renewal .cr-contact-actions{background:#fff;border:1px solid #eadbcb;border-radius:5px;padding:20px}.com-renewal .cr-button{border-radius:5px;background:#dc4b0c;box-shadow:0 3px 0 #a93203;min-height:62px}.com-renewal .cr-phone a{color:#995020;font-size:33px}.com-renewal .cr-phone{margin:14px 0 6px}.com-renewal .cr-area{border-color:#e6d2bd}.com-renewal .cr-contact-actions .cr-phone{border-color:#eadbcb;margin-top:14px;padding:12px 0}.com-renewal .cr-line{color:#176044!important}.com-renewal .cr-free{color:#483025}
.com-renewal .cr-staff-grid{gap:12px}.com-renewal .cr-staff-grid figure{border:1px solid #eadbcb;border-radius:5px;overflow:hidden;background:#fff}.com-renewal .cr-staff-grid img{border-radius:0;height:165px}.com-renewal .cr-staff-grid figcaption{padding:10px 12px;background:#fff8ef}.com-renewal .cr-guarantee-grid article{background:#fff5e8;border:1px solid #e9d5bc;border-radius:5px;padding:20px}.com-renewal .cr-guarantee-grid article+article{background:#fff}.com-renewal .cr-pill.cr-light{background:#f7ebdd;color:#995020}.com-renewal .cr-guarantee-grid h3 strong{color:#995020}.com-renewal .cr-steps{gap:12px!important}.com-renewal .cr-steps li{padding:16px!important;background:#fff8ef;border:1px solid #eadbca;border-radius:4px}.com-renewal .cr-steps li>span{background:#995020;color:#fff;border-radius:4px;min-width:34px;height:34px;display:grid;place-items:center;font-size:20px;font-weight:700}.com-renewal .cr-reading{background:#faf3ea;border:1px solid #eadbcb;border-radius:5px;padding:26px;margin:28px 0}.com-renewal .cr-reading h2{font-size:27px}.com-renewal .cr-reading-links>a{border-color:#e5d4bf}.com-renewal .cr-detail summary{font-size:18px}.com-renewal .cr-company{border-top:1px solid #eadbcb;margin-top:24px}
@media(max-width:700px){.com-renewal h2{font-size:26px}.com-renewal .cr-section{padding:28px 0}.com-renewal .cr-heading{padding-bottom:12px;margin-bottom:17px}.com-renewal .cr-benefits{padding:12px 0}.cr-benefits small{font-size:12px;line-height:1.6}.cr-benefits strong{font-size:20px}.com-renewal .cr-included{gap:6px;font-size:14px;margin-bottom:14px}.cr-included span{padding:5px 8px}.cr-included strong{font-size:14px}.com-renewal .cr-tabs button{font-size:14px;padding:11px 3px}.com-renewal .cr-price-panel{padding:20px 16px}.com-renewal .cr-price>strong{font-size:56px}.com-renewal .cr-price-copy h3{font-size:20px}.com-renewal .cr-note{font-size:14px}.com-renewal .cr-subsidy{padding:14px 12px;gap:10px}.com-renewal .cr-subsidy-mark{width:51px;height:56px;font-size:13px}.com-renewal .cr-subsidy small{font-size:13px}.com-renewal .cr-intro,.com-renewal .cr-contact{padding:20px 16px;gap:17px;margin-top:22px}.com-renewal .cr-intro h2,.com-renewal .cr-contact h2{font-size:26px}.com-renewal .cr-first-contact,.com-renewal .cr-contact-actions{padding:18px 12px}.com-renewal .cr-button{font-size:17px;padding:14px 12px}.com-renewal .cr-phone a{font-size:32px}.com-renewal .cr-staff-grid{gap:10px}.com-renewal .cr-staff-grid img{height:130px}.com-renewal .cr-staff-grid figcaption{padding:9px 8px}.com-renewal .cr-guarantee-grid{gap:10px}.com-renewal .cr-guarantee-grid article{padding:17px}.com-renewal .cr-steps{gap:9px!important}.com-renewal .cr-steps li{padding:13px!important;gap:12px}.com-renewal .cr-reading{padding:20px 16px;gap:10px}.com-renewal .cr-reading h2{font-size:25px}.com-renewal .cr-detail summary{font-size:17px}.com-renewal .cr-detail p{font-size:16px}}


#com-price{--cr-ink:#253746;--cr-muted:#586873;--cr-border:#c8dfef;color:#253746}
#com-price .cr-included span{background:#edf7fc;border-color:#c8dfef;color:#1f6fae}
#com-price .cr-included b{color:#1f6fae}
#com-price .cr-tabs{border-bottom-color:#1f6fae}
#com-price .cr-tabs button{background:#eaf4fa;color:#253746}
#com-price .cr-tabs button[aria-selected=true]{background:#1f6fae;color:#fff}
#com-price .cr-price-panel{border-color:#c8dfef}
#com-price .cr-price-math{border-bottom-color:#c8dfef}
#com-price .cr-price{color:#c62828}


.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}}

.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}}

.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}}

.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}



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}
}

.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}}


.com-renewal .kp-consult{margin-top:96px;margin-bottom:96px}@media(max-width:700px){.com-renewal .kp-consult{margin-top:64px;margin-bottom:64px}}


.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}}


@media(max-width:700px){.com-renewal .kp-consult h2{font-size:21px;line-height:1.6}.com-renewal .kp-consult h2 br{display:none}}


.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}}


@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}
}


.com-renewal .kp-consult h2{font-weight:700}


.com-renewal .kp-consult h2{font-size:29px}
@media(max-width:700px){.com-renewal .kp-consult h2{font-size:20px}}


@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}}


@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}}


.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}}


@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}}


@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}
}


@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)}
}


@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)}
}


@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}}


@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}
}


@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%)}}


@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}
}


@media(max-width:700px){
 .kp-brand-mobile em{background:transparent url('assets/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}
}


@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}}


@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}
}


@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}}


@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/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}
}


@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}}


@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}}


@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)}}


@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}}


@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}
}


@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}
}


@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}}


@media(max-width:700px){
 .com-renewal .kp-consult h2 br{display:block}
 .com-renewal .kp-consult .kp-consult-mascots{transform:translateY(-9px)}
}


@media(max-width:700px){.com-renewal .kp-consult .kp-consult-mascots .kp-pocket{transform:translateY(-7px)}}


@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}}


@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}
}


@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}}


@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}
}


@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}
}


@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}
}


@media(min-width:701px){.kp-brand-mobile .kp-brand-no{display:none}.kp-brand-mobile .kp-brand-here{display:inline}}


@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}
}


@media(min-width:701px){.kp-brand-mobile em{min-width:88px;font-size:21px;line-height:28px;padding:16px 15px 21px}}


@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}
}


@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}
}


@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}}


@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}}


@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)}}


@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}
}


@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}
}


@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}}


@media(max-width:700px){
 .com-renewal .kp-consult-buttons{row-gap:16px}
 .com-renewal .kp-consult .kp-consult-phone{margin-top:16px}
}


@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}
}


.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}
}


@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}
}


@media(max-width:700px){.com-renewal .kp-consult h2{font-size:clamp(10.5px,3.25vw,14px)}}


.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}
}


@media(min-width:701px){.com-set .section-head h2 br{display:none}}


.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}


@media(max-width:700px){body:has(#com-footer) #content{margin-bottom:28px}}


@media(min-width:701px){body:has(#com-footer) #content{margin-bottom:56px}}


@media(max-width:700px){body:has(#com-footer) #content{margin-bottom:0;padding-bottom:28px}}


@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}


@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}
}


.com-renewal #com-social-cards{margin-top:40px;margin-bottom:0}
.com-renewal #com-social-cards .swell-block-button__link{color:#fff}


body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important}
.kp-sticky{position:fixed;left:0;right:0;bottom:0;z-index:10000;padding:12px 24px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(115deg,#ffd477 0%,#ffb249 55%,#f79834 100%);border-top:1px solid #eaa247;box-shadow:0 -4px 20px #41221018;font-family:"Noto Sans JP",system-ui,sans-serif;line-height:1.4;box-sizing:border-box}
.kp-sticky *{box-sizing:border-box}.kp-sticky-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:190px 1.25fr 1.1fr;align-items:center;gap:12px}.kp-sticky-lead{color:#604d40}.kp-sticky-lead strong{display:block;font-size:19px}.kp-sticky-lead>span{display:block;font-size:12px;margin-top:4px}
.kp-sticky a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:62px;padding:10px 14px;border-radius:7px;text-decoration:none;color:#fff;transition:filter .15s}.kp-sticky a:hover{filter:brightness(1.08)}.kp-sticky a:focus-visible{outline:3px solid #412210;outline-offset:3px}.kp-sticky a>span[aria-hidden]{font-size:24px}.kp-sticky a small{display:block;font-size:11px;font-weight:500}.kp-sticky a strong{display:block;font-size:17px;font-weight:750;white-space:nowrap}.kp-sticky a b{font-size:24px;font-weight:400;margin-left:auto}.kp-sticky-web{background:#1565c0;box-shadow:0 3px 0 #0d47a1}.kp-sticky .kp-sticky-tel{background:#fff5e7;color:#b74509;border:1px solid #e8b580}.kp-sticky-tel strong{font-size:21px!important}.kp-sticky-line{background:#18713e;box-shadow:0 3px 0 #0b5028}.kp-sticky-mobile-label{display:none}
@media(max-width:900px){.kp-sticky-lead{display:none}.kp-sticky-inner{grid-template-columns:1.2fr 1fr;gap:8px}.kp-sticky{padding-left:14px;padding-right:14px}}
@media(max-width:600px){body{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}.kp-sticky{padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}.kp-sticky-inner{grid-template-columns:1.2fr 1fr;gap:5px}.kp-sticky a{min-height:62px;padding:7px 3px;border-radius:5px;gap:0;text-align:center}.kp-sticky a>span[aria-hidden],.kp-sticky a b{display:none}.kp-sticky a strong,.kp-sticky-tel strong{font-size:14px!important}.kp-sticky a small{font-size:9px;white-space:nowrap;margin-bottom:4px}.kp-sticky-number{display:none}.kp-sticky-mobile-label{display:inline}}
@media(max-width:360px){.kp-sticky a strong,.kp-sticky-tel strong{font-size:12px!important}.kp-sticky a small{font-size:8px}}
.kp-sticky-inner{grid-template-columns:190px 1fr 1.35fr}.kp-sticky .kp-sticky-tel strong{font-size:40px!important;line-height:1.15;letter-spacing:-.025em}.kp-sticky .kp-sticky-tel small{font-size:12px}
@media(max-width:900px){.kp-sticky-inner{grid-template-columns:1fr 1.35fr}.kp-sticky .kp-sticky-tel strong{font-size:34px!important}}
@media(max-width:600px){.kp-sticky-inner{grid-template-columns:.85fr 1.25fr}.kp-sticky-number{display:inline}.kp-sticky-mobile-label{display:none}.kp-sticky .kp-sticky-tel strong{font-size:clamp(21px,6.5vw,34px)!important;letter-spacing:-.04em}.kp-sticky .kp-sticky-tel small{font-size:10px}.kp-sticky-web strong{font-size:13px!important}}


.kp-sticky-inner{align-items:stretch}
.kp-sticky-lead{align-self:center}
.kp-sticky a{height:100%;min-height:76px;position:relative}
.kp-sticky a .kp-sticky-icon{display:flex;align-items:center;flex:0 0 26px;width:26px}
.kp-sticky-icon svg{width:100%;height:26px;display:block}
.kp-sticky a>b{position:absolute;right:12px;margin:0}
.kp-sticky .kp-sticky-tel>span:not(.kp-sticky-icon){text-align:center}
.kp-sticky .kp-sticky-tel small{margin:2px 0 0;font-weight:600;line-height:1.4;white-space:nowrap}
@media(max-width:600px){
 .kp-sticky a{min-height:68px;gap:5px;padding:8px 4px}
 .kp-sticky a .kp-sticky-icon{flex-basis:18px;width:18px}
 .kp-sticky-icon svg{height:18px}
 .kp-sticky .kp-sticky-web strong{font-size:clamp(11px,3.1vw,14px)!important}
 .kp-sticky .kp-sticky-tel{display:grid;grid-template-columns:18px max-content;justify-content:center;column-gap:4px}
 .kp-sticky .kp-sticky-tel strong{font-size:clamp(18px,5.6vw,26px)!important}
 .kp-sticky .kp-sticky-tel small{font-size:clamp(7px,1.95vw,9px);letter-spacing:-.035em}
}
.kp-sticky a>span.kp-sticky-icon[aria-hidden]{display:flex}


.com-renewal .kp-products-note{font-size:16px;line-height:1.85;color:#756358;margin:16px 0}.kp-maker{border:1px solid #cddfec;border-radius:8px;margin:12px 0;overflow:hidden}.kp-maker summary{display:flex;align-items:center;justify-content:space-between;padding:20px;background:#eaf5fc;cursor:pointer;list-style:none;gap:12px}.kp-maker summary::-webkit-details-marker{display:none}.kp-maker summary strong{font-size:22px}.kp-maker summary span{font-size:16px;color:#1f6fae}.kp-maker summary span::after{content:' ＋'}.kp-maker[open] summary span::after{content:' −'}.kp-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:20px;background:#f3f8fc}.kp-product{background:#fff;border:1px solid #cddfec;border-radius:8px;padding:20px;min-width:0}.kp-product-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.kp-product-top>div{min-width:0}.kp-product-top img{width:110px;height:140px;object-fit:contain}.com-renewal .kp-product-top h3{font-size:24px;overflow-wrap:anywhere}.com-renewal .kp-product-top p{font-size:18px;margin-top:8px}.kp-product-top small{font-size:16px}.kp-product-specs{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 12px}.kp-product-specs span{background:#eaf3fa;padding:4px 9px;font-size:15px;border-radius:4px}.com-renewal .kp-product-features{font-size:16px;line-height:1.8;min-height:50px}.kp-product-cost{border-top:1px solid #cddfec;padding-top:15px;margin-top:16px}.com-renewal .kp-product-cost p{font-size:16px}.com-renewal .kp-product-subsidy{color:#77521b;background:#fff1c4;padding:6px 9px;margin:10px 0;font-weight:700}.kp-product-cost>small{display:block;font-size:15px;margin-top:10px}.kp-product-cost>strong{display:block;color:#c62828;font-size:40px;line-height:1.5}.com-renewal .kp-product-warranty{font-size:15px;color:#756358;margin-top:8px}
@media(max-width:700px){.kp-maker summary{padding:17px 14px}.kp-maker summary strong{font-size:20px}.kp-product-grid{grid-template-columns:1fr;padding:12px;gap:12px}.kp-product{padding:16px}.kp-product-top img{width:90px;height:120px}.com-renewal .kp-product-top h3{font-size:22px}.com-renewal .kp-product-features{min-height:0}.kp-product-cost>strong{font-size:38px}}

.com-renewal .kp-products{color:#24465f}.com-renewal .kp-products .cr-heading{border-bottom-color:#1f6fae}.com-renewal .kp-products .cr-heading h2,.com-renewal .kp-maker summary strong{color:#1f6fae}.com-renewal .kp-products-note,.com-renewal .kp-product-warranty{color:#556b7b}.com-renewal .kp-product-specs span{color:#275a80}
.kp-maker-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px;background:#eaf5fc}.com-renewal .kp-maker-heading h3{font-size:22px;color:#1f6fae;margin:0}.kp-maker-heading>span{font-size:16px;color:#1f6fae}.kp-products-more{display:block;width:calc(100% - 24px);margin:0 12px 16px;padding:14px;border:1px solid #1565c0;background:#1565c0;color:#fff;border-radius:6px;font-family:inherit;font-size:18px;font-weight:700;line-height:1.5;cursor:pointer;min-height:48px}.kp-products-more:focus-visible{outline:3px solid #1565c0;outline-offset:3px}.kp-products-more[hidden],.kp-product[hidden]{display:none!important}@media(max-width:700px){.kp-maker-heading{padding:17px 14px}.com-renewal .kp-maker-heading h3{font-size:20px}}


.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}}

.kh-hero{background:#fff8e9 url('assets/hero-bath-v1.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}}

.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}}

.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}}


.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/hero-bath-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/hero-bath-v1.webp');background-position:62% center}}


.kh-hero .kh-area{background:#fff}


.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}
}


.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}}


@media(min-width:701px){.kh-hero .kh-offer{padding-top:128px}.kh-hero .kh-offer-mascots{top:18px}}


@media(min-width:701px){.kh-hero .kh-offer-mascots img:last-child{width:80px;transform:translateY(-40px)}}


@media(max-width:700px){.com-renewal #com-service-facts .kh-proof-note{display:none}}


@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}}


 .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}
}


.kh-hero .kh-subsidy .kh-grant{color:#27875a}


@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}
}


.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}}


@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}
}

@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/hero-bath-v1-sp.webp')}}
/* ---- custom/base.css ---- */
/* ---- 基本フォント: 新LP(.jp)と同じ書体の並びに揃える（2026-09-12 渡邊さん要望）。サイト全体（記事も）に効く ---- */
:root { --swl-font_family: system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif; }
body { font-family: var(--swl-font_family); }

/* ---- custom/cases-hub.css ---- */
/* ---- 施工事例の入口ページと一覧（2026-09-14） ---- */
.bp-cases-filter { margin: 8px 0 28px; }
.bp-cases-filter__label { display: block; font-size: 13px; font-weight: 800; color: #6e6258; letter-spacing: .06em; margin-bottom: 8px; }
.bp-cases-filter__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bp-cases-filter__chips a { display: inline-flex; align-items: baseline; gap: 6px; padding: 9px 14px; border-radius: 999px; background: #fff; border: 1px solid #e3d2bc; color: #412210; font-weight: 700; font-size: 14px; text-decoration: none; line-height: 1.2; }
.bp-cases-filter__chips a small { font-size: 11px; color: #8a7466; font-weight: 600; }
.bp-cases-filter__chips a:hover { background: #fff7ea; border-color: #c9a27f; }
.bp-cases-filter__chips a.bp-cases-filter__all { background: #8a6a5b; border-color: #8a6a5b; color: #fff; }
.bp-cases-filter__chips a.bp-cases-filter__all small { color: #f3e6d8; }
.bp-cases-hub-more { display: flex; justify-content: center; margin: 26px 0 8px; }
.bp-cases-hub-more a { display: inline-flex; align-items: center; gap: 10px; background: #8a6a5b; color: #fff; border: 2px solid #8a6a5b; font-weight: 800; font-size: 16px; padding: 14px 36px; border-radius: 999px; text-decoration: none; }
.bp-cases-hub-more a:hover { background: #fff; color: #7c5b4f; }
/* 一覧（カテゴリページ）: 「– category –」の小見出しを出さない */
.c-pageTitle__subTitle { display: none; }
@media (max-width: 700px) { .bp-cases-filter__chips a { padding: 8px 11px; font-size: 13px; } }
/* 一覧ページ上部の子カテゴリ帯（SWELL .p-termNavigation）: 入口ページの絞り込みボタンと同じ見た目に（2026-09-14 渡邊さん指摘） */
.p-termNavigation.c-categoryList { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 4px 0 26px; padding: 0; }
.p-termNavigation.c-categoryList::before { content: "種類で絞る"; flex-basis: 100%; font-size: 13px; font-weight: 800; color: #6e6258; letter-spacing: .06em; margin-bottom: 2px; }
.p-termNavigation .c-categoryList__separation { display: none; }
.p-termNavigation .c-categoryList__link { display: inline-flex; align-items: center; margin: 0; padding: 9px 14px; border-radius: 999px; background: #fff; border: 1px solid #e3d2bc; color: #412210; font-weight: 700; font-size: 14px; line-height: 1.2; text-decoration: none; }
.p-termNavigation a.c-categoryList__link:hover { background: #fff7ea; border-color: #c9a27f; color: #412210; }
.p-termNavigation .c-categoryList__link.-current { background: #8a6a5b; border-color: #8a6a5b; color: #fff; }
.p-termNavigation .c-categoryList__link.-current::before { content: "✓ "; font-weight: 900; }
@media (max-width: 700px) { .p-termNavigation .c-categoryList__link { padding: 8px 11px; font-size: 13px; } }

/* ---- custom/cases.css ---- */
/* ---- 施工事例スライダー（2026-09-12 決定: 案J2＝クリーム帯・PC3列・カテゴリ表示はSWELLのまま・見出しは他セクションと同形式） ---- */
#post_slider.bp-cases { padding: 40px 0 36px; background: #fff7ea; }
#post_slider.bp-cases .com-renewal--cases .cr-heading { margin-bottom: 22px; }
#post_slider.bp-cases .p-postList__item { padding: 0 8px; }
#post_slider.bp-cases .p-postList__link { display: block; background: #fff; border: 1px solid #f0dcc4; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 18px #5337220d; }
#post_slider.bp-cases .c-postThumb { margin: 0; }
/* 写真を4:3に揃える: SWELL は figure::before の padding-top（CSS変数 --card_posts_thumb_ratio）で高さを作る仕組みなので、変数だけ上書きする */
#post_slider.bp-cases { --card_posts_thumb_ratio: 75%; }
#post_slider.bp-cases .c-postThumb__figure img { object-fit: cover; }
#post_slider.bp-cases .p-postList__body { padding: 12px 14px 14px; }
#post_slider.bp-cases .p-postList__title { font-size: 15px; line-height: 1.5; color: #412210; font-weight: 700; margin: 0; }
#post_slider.bp-cases .p-postList__title br { display: none; }
#post_slider.bp-cases .p-postList__title::after { content: "›"; float: right; color: #ef691b; font-weight: 900; margin-left: 6px; }
#post_slider.bp-cases .swiper-pagination { margin-top: 14px; }
#post_slider.bp-cases .swiper-pagination-bullet-active { background: #ef691b; }
.bp-cases-more { display: flex; justify-content: center; margin-top: 30px; }
.bp-cases-more a { display: inline-flex; align-items: center; gap: 12px; background: #8a6a5b; color: #fff; border: 2px solid #8a6a5b; font-weight: 800; font-size: 16px; letter-spacing: .04em; padding: 15px 40px 15px 44px; border-radius: 999px; text-decoration: none; line-height: 1.3; transition: background .15s, color .15s; }   /* 塗りの茶（メイン色より少し明るい） */
.bp-cases-more a small { font-size: 13px; font-weight: 700; color: inherit; opacity: .85; letter-spacing: 0; }
.bp-cases-more a::after { content: "›"; color: #ffd477; font-weight: 900; font-size: 20px; margin-left: 4px; }
.bp-cases-more a:hover::after { color: #ef691b; }
.bp-cases-more a:hover { background: #fff; color: #7c5b4f; border-color: #8a6a5b; }   /* hover: 茶 → 白（2026-09-12 決定） */
@media (min-width: 960px) { #post_slider.bp-cases .p-postList__item { width: 33.333% !important; } }
@media (max-width: 959px) {
	#post_slider.bp-cases { padding: 30px 0 26px; }
	#post_slider.bp-cases .p-postList__item { padding: 0 5px; }
	#post_slider.bp-cases .p-postList__body { padding: 9px 10px 11px; }
	#post_slider.bp-cases .p-postList__title { font-size: 12.5px; }
	.bp-cases-more { margin-top: 24px; }
	.bp-cases-more a { font-size: 15px; padding: 13px 28px 13px 32px; gap: 10px; }
	.bp-cases-more a small { font-size: 12px; }
}
/* カードとページ送りドットの間を広げる（2026-09-12） */
#post_slider.bp-cases .p-postSlider__swiper { padding-bottom: 46px !important; }
#post_slider.bp-cases .swiper-pagination { bottom: 0 !important; margin-top: 0; }
@media (max-width: 959px) { #post_slider.bp-cases .p-postSlider__swiper { padding-bottom: 38px !important; } }
/* スマホ: 見出しとリードが画面の端に付いていた（2026-09-13 渡邊さん指摘）。スライダーは全幅のままで、見出しと下のボタンだけ左右に余白を付ける */
@media (max-width: 959px) {
	#post_slider.bp-cases .cr-heading { margin-left: 16px; margin-right: 16px; }
	#post_slider.bp-cases .bp-cases-more { padding: 0 16px; }
}
/* スマホでカード見出しの3行目が欠ける（渡邊さん 9/14）: src-mock/readability.css の `.p-postList__title{font-size:18px!important;line-height:1.65}` が勝ち、
   SWELL の max-height:4.2em（行間1.4×3行想定）では 2.55 行ぶんしか入らない。文字サイズ・行間は案J2の承認時と同じなので触らず、高さを 3行ぶん（1.65×3）に */
#post_slider.bp-cases.-ps-style-normal .p-postList__title { max-height: none; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
/* ↑ 4.95em の固定高だと 375px で29文字の見出しが4行になり欠ける。見出しは最新記事で変わるので、3行で「…」省略に（4行目以降は出さない） */

/* ---- custom/columns.css ---- */
/* ---- お役立ちコラム（トップ・FAQ と 口コミ／Instagram の間）2026-09-14 渡邊さん指示。参考: ミズテックのコラム区画。見出しは共通の .cr-heading 形式 ---- */
#com-columns.cr-section { border-bottom: 0; } /* 口コミ／Instagram の上下に線を出さない決定（7-12）に合わせる */
/* スライダー: PCは3枚ずつ表示・左右の丸ボタンで1枚ずつ送る（4枚目以降・渡邊さん 9/14）。スクロールスナップ＋renewal.js */
.bp-columns-slider { position: relative; }
.bp-columns-grid { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.bp-columns-grid::-webkit-scrollbar { display: none; }
.bp-columns-card { flex: 0 0 calc((100% - 48px) / 3); scroll-snap-align: start; }
.bp-columns-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; /* カードの上下中央（9/14） */ width: 44px; height: 44px; border-radius: 50%; border: 0; background: #412210; color: #fff; font-size: 26px; line-height: 1; font-weight: 700; cursor: pointer; box-shadow: 0 4px 12px #41221040; display: grid; place-items: center; padding: 0 0 3px; transition: background .15s, opacity .15s; }
.bp-columns-nav.is-prev { left: -22px; } .bp-columns-nav.is-next { right: -22px; }
.bp-columns-nav:hover { background: #6b4a3b; }
.bp-columns-slider.is-static .bp-columns-nav { display: none; } /* 全部収まるなら矢印を出さない。それ以外は両端で止まらずループ（renewal.js） */
.bp-columns-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #f0dcc4; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 18px #5337220d; color: #412210; text-decoration: none; transition: transform .15s, box-shadow .15s; }
.bp-columns-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px #53372218; color: #412210; }
.bp-columns-thumb { position: relative; margin: 0; aspect-ratio: 16 / 10; /* 16:9→16:10（9/14「もう少しだけ縦幅広く」） */ background: #fff7ea; overflow: hidden; }
.bp-columns-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bp-columns-thumb img.bp-columns-noimg { object-fit: contain; padding: 14px; box-sizing: border-box; }
.bp-columns-draft { position: absolute; left: 10px; top: 10px; background: #c74e0d; color: #fff; font-size: 11px; font-weight: 700; line-height: 1.4; padding: 3px 8px; border-radius: 4px; }
.bp-columns-body { padding: 18px 18px 22px; }
.bp-columns-body small { display: block; color: #c74e0d; font-size: 12px; font-weight: 800; letter-spacing: .04em; margin-bottom: 6px; }
.com-renewal .bp-columns-body h3 { margin: 0; font-size: 16px; line-height: 1.55; font-weight: 700; color: #412210; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
/* もっと見る: 他の「もっと見る」3本と同じ濃い茶 */
.bp-columns-more { display: flex; justify-content: center; margin-top: 28px; }
.bp-columns-more a { display: inline-flex; align-items: center; gap: 12px; background: #6b4a3b; color: #fff; border: 2px solid #6b4a3b; font-weight: 800; font-size: 16px; letter-spacing: .04em; padding: 15px 40px 15px 44px; border-radius: 999px; text-decoration: none; line-height: 1.3; transition: background .15s, color .15s; }
.bp-columns-more a::after { content: "›"; color: #ffd477; font-weight: 900; font-size: 20px; margin-left: 4px; }
.bp-columns-more a:hover { background: #fff; color: #6b4a3b; }
.bp-columns-more a:hover::after { color: #ef691b; }
@media (max-width: 959px) {
	/* スマホ・タブレットは横スワイプ（住宅設備セットと同じ考え方） */
	/* スマホはカード1枚を中央に表示し、左右の矢印で送る（9/14 渡邊さん）。両端の余白 36px でスナップ位置が中央になる */
	.bp-columns-grid { gap: 12px; padding: 4px 24px 12px; } /* 左右36→24px（9/14「カードの幅はもう少し広げても」）。390px でカード 287→310px、矢印はカード端に8px重なる */
	.bp-columns-card { flex: 0 0 100%; scroll-snap-align: center; } /* 100%＝内側の幅（左右36pxを除いた分）。両端の余白で中央に収まる */
	.bp-columns-nav { width: 36px; height: 36px; font-size: 22px; }
	.bp-columns-nav.is-prev { left: -4px; } .bp-columns-nav.is-next { right: -4px; }
	.bp-columns-body { padding: 14px 14px 18px; }
	.com-renewal .bp-columns-body h3 { font-size: 15px; }
	.bp-columns-more { margin-top: 20px; }
	.bp-columns-more a { font-size: 15px; padding: 13px 28px 13px 32px; gap: 10px; }
}

/* ---- custom/flow-detail.css ---- */
/* ---- ご利用の流れ（詳細）/flow/ — LP #flow（STEP01〜05＋お支払い方法）をそのまま移植 2026-09-14。正本はLP ---- */
#com-flow-detail { --gold:#dfb345; --gold-light:#fff1c4; --brown:#604d40; --brown-dark:#412210; --ink:#2d241d; --muted:#6e6258; --orange:#ef691b; --orange-dark:#c74e0d; --border:#eadfce; --web-blue:#1565c0; --line-green:#06c755; --cream:#fffaf0; --cream-deep:#f7edd5; --blue:#1f6fae; }
#com-flow-detail #speed, #com-flow-detail #subsidy, #com-flow-detail #price, #com-flow-detail #products, #com-flow-detail #cases, #com-flow-detail #reasons, #com-flow-detail, #com-flow-detail #faq, #com-flow-detail #contact { scroll-margin-top:86px }
#com-flow-detail .faq-section .section-head>p, #com-flow-detail .flow-section .section-head>p { letter-spacing:.08em;font-size:clamp(22px,2.2vw,28px) }
#com-flow-detail .flow-section { background:linear-gradient(#fff9ef 0%,#fffdf9 100%) }
#com-flow-detail .flow-intro { max-width:850px;color:var(--muted);text-align:center;margin:-12px auto 28px;font-size:20px;font-weight:800;line-height:1.7 }
#com-flow-detail .flow-overview { background:#fffaf3;border:1px solid #eadfcf;border-radius:20px;grid-template-columns:repeat(5,1fr);gap:0;margin:0 0 42px;padding:13px 16px;list-style:none;display:grid }
#com-flow-detail .flow-overview li { min-height:88px;color:var(--brown-dark);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:10px 18px;display:flex;position:relative }
#com-flow-detail .flow-overview li:not(:last-child):after { content:"›";color:#d1b77a;font:900 29px/1 Arial,sans-serif;position:absolute;top:50%;right:-5px;transform:translateY(-52%) }
#com-flow-detail .flow-overview b { color:var(--orange-dark);font:950 25px/1 Arial,sans-serif }
#com-flow-detail .flow-overview .is-company b { color:#247ca7 }
#com-flow-detail .flow-overview span { font-size:14px;font-weight:900;line-height:1.35 }
#com-flow-detail .flow-list { gap:22px;width:min(1000px,100%);margin:0 auto;padding:0;list-style:none;display:grid }
#com-flow-detail .flow-list .flow-step { background:#fff;border:1px solid #e7ddd2;border-radius:22px;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:25px;min-height:0;padding:28px 30px;display:grid;box-shadow:0 10px 28px #462f1d12 }
#com-flow-detail .flow-list .flow-step.has-media { grid-template-columns:104px minmax(0,1fr) 270px }
#com-flow-detail .flow-step-number { border-right:1px solid #eadfcf;flex-direction:column;justify-content:center;align-items:center;min-height:118px;padding-right:23px;display:flex }
#com-flow-detail .flow-step-number small { color:#a59182;letter-spacing:.14em;font-size:12px;font-weight:950 }
#com-flow-detail .flow-step-number span { color:var(--orange-dark);margin-top:5px;font:950 52px/1 Arial,sans-serif }
#com-flow-detail .flow-step.is-company .flow-step-number span { color:#247ca7 }
#com-flow-detail .flow-step-body { min-width:0 }
#com-flow-detail .flow-step-head { flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:13px;display:flex }
#com-flow-detail .flow-step-head strong { color:var(--brown-dark);font-size:26px;font-weight:950;line-height:1.35 }
#com-flow-detail .flow-step-head em { color:#7c6f65;background:#f2eee9;border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal;font-weight:900 }
#com-flow-detail .flow-step-copy p { color:var(--muted);margin:0;font-size:16px;font-weight:700;line-height:1.8 }
#com-flow-detail .flow-step-copy p+p { margin-top:5px }
#com-flow-detail .flow-step-meta { color:#246d91;background:#eef7fc;border-radius:9px;margin:14px 0 0;padding:9px 12px;font-size:13px;font-weight:900;line-height:1.5 }
#com-flow-detail .flow-step-note { color:#8e8177;margin:12px 0 0;font-size:12px;font-weight:700;line-height:1.55 }
#com-flow-detail .flow-guide-links { flex-wrap:wrap;gap:9px;margin-top:16px;display:flex }
#com-flow-detail .flow-step-photo { aspect-ratio:4/3;width:100%;box-shadow:none;border-radius:16px }
#com-flow-detail .flow-step-photo figcaption { top:auto;bottom:9px }
#com-flow-detail .flow-step-visual { aspect-ratio:4/3;border-radius:16px;width:100%;position:relative;overflow:hidden }
#com-flow-detail .flow-model-visual { background:linear-gradient(145deg,#eef8fc 0%,#f9fbfb 55%,#fff5d9 100%) }
#com-flow-detail .flow-model-visual:before { content:"";background:#f0c84b52;border-radius:50%;width:154px;height:154px;position:absolute;bottom:-58px;right:-45px }
#com-flow-detail .flow-model-unit { background:linear-gradient(90deg,#fff,#eef1f2);border:2px solid #ccd4d7;border-radius:9px;width:82px;height:118px;position:absolute;bottom:25px;left:43px;box-shadow:0 10px 18px #2e4c5821 }
#com-flow-detail .flow-model-unit:before { content:"";background:#dce3e6;border-radius:4px;width:64px;height:7px;position:absolute;top:10px;left:7px }
#com-flow-detail .flow-model-unit:after { content:"";background:repeating-linear-gradient(#ddd 0 2px,#fff 2px 5px);border:3px solid #e56b2f;border-radius:5px;width:42px;height:23px;position:absolute;top:34px;right:8px }
#com-flow-detail .flow-model-unit>i { background:#c5d1d5;border-radius:50%;width:10px;height:10px;position:absolute;bottom:14px;left:12px;box-shadow:45px 0 #c5d1d5 }
#com-flow-detail .flow-camera-card { background:#77b7d4;border:5px solid #fff;border-radius:10px;width:88px;height:72px;position:absolute;bottom:31px;right:28px;transform:rotate(4deg);box-shadow:0 10px 18px #2e4c5829 }
#com-flow-detail .flow-camera-card:before { content:"";border:6px solid #fff;border-radius:50%;width:33px;height:33px;position:absolute;top:15px;left:23px }
#com-flow-detail .flow-camera-card:after { content:"";background:#fff;border-radius:5px 5px 0 0;width:24px;height:9px;position:absolute;top:-11px;left:8px }
#com-flow-detail .flow-camera-card>i { background:#f0c84b;border-radius:50%;width:8px;height:8px;position:absolute;top:8px;right:8px }
#com-flow-detail .flow-calendar-visual { background:linear-gradient(145deg,#fff8e6,#f8f2e8) }
#com-flow-detail .flow-calendar-visual:before { content:"";background:#247ca71a;border-radius:50%;width:170px;height:170px;position:absolute;top:-70px;left:-62px }
#com-flow-detail .flow-estimate-sheet { background:#fff;border-radius:8px;width:105px;height:122px;padding-top:34px;position:absolute;top:25px;left:38px;transform:rotate(-7deg);box-shadow:0 10px 22px #4f362326 }
#com-flow-detail .flow-estimate-sheet:before { content:"";background:#e8a962;border-radius:5px;width:54px;height:8px;position:absolute;top:16px;left:17px }
#com-flow-detail .flow-estimate-sheet>i { background:#ddd6cf;border-radius:4px;width:68px;height:5px;margin:0 auto 11px;display:block }
#com-flow-detail .flow-calendar-card { background:#fff;border-radius:11px;width:112px;height:105px;position:absolute;bottom:24px;right:29px;overflow:hidden;box-shadow:0 11px 24px #4f36232b }
#com-flow-detail .flow-calendar-card:before { content:"";background:#247ca7;height:27px;position:absolute;inset:0 0 auto }
#com-flow-detail .flow-calendar-card>i { z-index:1;background:#6b5545;border-radius:5px;width:8px;height:20px;position:absolute;top:-3px;left:25px;box-shadow:54px 0 #6b5545 }
#com-flow-detail .flow-calendar-card>b { width:45px;height:45px;color:var(--brown-dark);background:#f0c84b;border-radius:50%;place-items:center;font-size:25px;display:grid;position:absolute;top:43px;left:34px }
#com-flow-detail .flow-consult-visual { background:linear-gradient(145deg,#edf8fc,#f8fbfc 55%,#fff4d5) }
#com-flow-detail .flow-consult-visual:before { content:"";background:#f0c84b4d;border-radius:50%;width:165px;height:165px;position:absolute;bottom:-72px;left:-58px }
#com-flow-detail .flow-consult-phone { background:#fff;border:5px solid #5f4b3c;border-radius:18px;width:90px;height:145px;position:absolute;top:27px;left:42px;box-shadow:0 11px 22px #2e4c5826 }
#com-flow-detail .flow-consult-phone:before { content:"";background:#dce6ea;border-radius:5px;width:54px;height:7px;position:absolute;top:16px;left:13px;box-shadow:0 18px #dce6ea,0 36px #dce6ea }
#com-flow-detail .flow-consult-phone:after { content:"";background:#247ca7;border-radius:50%;width:34px;height:34px;position:absolute;bottom:12px;left:23px }
#com-flow-detail .flow-consult-phone>i { background:#b8c8cf;border-radius:50%;width:8px;height:8px;position:absolute;top:5px;left:36px }
#com-flow-detail .flow-consult-phone>b { z-index:1;border:3px solid #fff;border-top:0;border-left:0;width:9px;height:9px;position:absolute;bottom:25px;left:36px;transform:rotate(-45deg) }
#com-flow-detail .flow-consult-message { border-radius:16px;position:absolute;right:26px;box-shadow:0 9px 18px #2e4c581f }
#com-flow-detail .flow-consult-message:after { content:"";border-style:solid;position:absolute;bottom:-9px }
#com-flow-detail .flow-consult-message-one { background:#247ca7;width:103px;height:61px;top:39px }
#com-flow-detail .flow-consult-message-one:before { content:"";background:#ffffffe6;border-radius:4px;width:62px;height:6px;position:absolute;top:18px;left:18px;box-shadow:0 15px #ffffffad }
#com-flow-detail .flow-consult-message-one:after { border-width:10px 0 0 14px;border-color:#0000 #0000 #0000 #247ca7;right:14px }
#com-flow-detail .flow-consult-message-two { background:#f0c84b;width:84px;height:52px;bottom:30px;right:54px }
#com-flow-detail .flow-consult-message-two:before { content:"";background:#4d351fa3;border-radius:4px;width:47px;height:6px;position:absolute;top:15px;left:18px;box-shadow:0 14px #4d351f66 }
#com-flow-detail .flow-consult-message-two:after { border-width:10px 14px 0 0;border-color:#f0c84b #0000 #0000;left:13px }
#com-flow-detail .flow-install-visual { background:linear-gradient(145deg,#fff8e7,#f5f9fa 56%,#e9f5fb) }
#com-flow-detail .flow-install-visual:before { content:"";background:#247ca71f;border-radius:50%;width:160px;height:160px;position:absolute;top:-58px;right:-52px }
#com-flow-detail .flow-install-tank { background:linear-gradient(90deg,#fff,#e9eef0);border:2px solid #cbd4d7;border-radius:8px;width:77px;height:139px;position:absolute;bottom:25px;right:34px;box-shadow:0 11px 21px #2e4c5824 }
#com-flow-detail .flow-install-tank:before { content:"";background:#d7e0e3;border-radius:4px;width:53px;height:5px;position:absolute;top:13px;left:10px;box-shadow:0 91px #d7e0e3 }
#com-flow-detail .flow-install-tank:after { content:"";background:#f7f9fa;border:2px solid #b9c6ca;border-radius:4px;width:25px;height:18px;position:absolute;top:31px;right:9px }
#com-flow-detail .flow-install-tank>i { background:#aab9be;border-radius:0 0 3px 3px;width:7px;height:14px;position:absolute;bottom:-13px;left:15px;box-shadow:39px 0 #aab9be }
#com-flow-detail .flow-install-outdoor { background:linear-gradient(#fff,#e9eef0);border:2px solid #cad4d7;border-radius:8px;width:105px;height:76px;position:absolute;bottom:28px;left:31px;box-shadow:0 10px 20px #2e4c5824 }
#com-flow-detail .flow-install-outdoor:before { content:"";background:repeating-conic-gradient(#a9bcc3 0 8deg,transparent 8deg 31deg);border:4px solid #a9bcc3;border-radius:50%;width:51px;height:51px;position:absolute;top:10px;left:10px }
#com-flow-detail .flow-install-outdoor:after { content:"";background:#c7d2d6;border-radius:4px;width:25px;height:5px;position:absolute;top:13px;right:8px;box-shadow:0 12px #c7d2d6,0 24px #c7d2d6 }
#com-flow-detail .flow-install-outdoor>i { background:#aab9be;width:8px;height:10px;position:absolute;bottom:-10px;left:14px;box-shadow:73px 0 #aab9be }
#com-flow-detail .flow-install-tool { background:#e56b2f;border-radius:14px;width:78px;height:20px;position:absolute;top:38px;left:103px;transform:rotate(-31deg);box-shadow:0 7px 12px #61402621 }
#com-flow-detail .flow-install-tool:before { content:"";border:10px solid #e56b2f;border-right-color:#0000;border-radius:50%;width:39px;height:39px;position:absolute;top:-10px;left:-12px }
#com-flow-detail .flow-install-tool:after { content:"";border:5px solid #fff6e4;border-radius:50%;width:18px;height:18px;position:absolute;top:1px;right:7px }
#com-flow-detail .flow-payment-panel { background:#fffaf3;border:1px solid #eadbc8;border-radius:22px;width:min(1000px,100%);margin:26px auto 0;padding:25px 28px 28px }
#com-flow-detail .flow-payment-heading { text-align:center;justify-content:center;align-items:baseline;gap:12px;margin-bottom:19px;display:flex }
#com-flow-detail .flow-payment-heading small { color:var(--orange-dark);letter-spacing:.07em;font:950 14px/1 Arial,sans-serif }
#com-flow-detail .flow-payment-heading h3 { color:var(--brown-dark);margin:0;font-size:24px;font-weight:950;line-height:1.35 }
#com-flow-detail .flow-payment-methods { grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid }
#com-flow-detail .flow-payment-card { min-height:132px;color:var(--brown-dark);text-align:center;background:#fff;border:1px solid #e3d7ca;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;padding:16px 13px;display:flex;box-shadow:0 6px 16px #462f1d0b }
#com-flow-detail .flow-payment-card b { font-size:17px;font-weight:950;line-height:1.35 }
#com-flow-detail .flow-payment-card small { color:#887c72;margin-top:6px;font-size:11px;font-weight:850;line-height:1.4 }
#com-flow-detail .flow-payment-logos { grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:7px;width:100%;margin-top:13px;display:grid }
#com-flow-detail .flow-payment-logos img { object-fit:contain;justify-self:center;width:auto;max-width:100%;height:auto;max-height:30px }
#com-flow-detail .flow-payment-paypay img { width:132px;height:auto }
@media (max-width: 760px) {
	#com-flow-detail .set-section .section-head>p, #com-flow-detail .flow-section .section-head>p, #com-flow-detail .faq-section .section-head>p, #com-flow-detail .contact-copy>.section-label { letter-spacing:.045em;font-size:21px;line-height:1.45 }
	#com-flow-detail .faq-section .section-head h2, #com-flow-detail .flow-section .section-head h2 { letter-spacing:-.055em;white-space:nowrap;font-size:clamp(22px,6.45vw,25px) }
	#com-flow-detail .flow-intro { text-align:left;margin-top:-7px;margin-bottom:22px;font-size:15px;line-height:1.65 }
	#com-flow-detail .flow-overview { display:none }
	#com-flow-detail .flow-list { gap:16px }
	#com-flow-detail .flow-list .flow-step, #com-flow-detail .flow-list .flow-step.has-media { padding:20px 18px;display:block }
	#com-flow-detail .flow-step-number { border-bottom:1px solid #eadfcf;border-right:0;flex-direction:row;justify-content:flex-start;align-items:baseline;gap:7px;min-height:0;padding:0 0 11px }
	#com-flow-detail .flow-step-number small { font-size:10px }
	#com-flow-detail .flow-step-number span { margin:0;font-size:38px }
	#com-flow-detail .flow-step-body { margin-top:15px }
	#com-flow-detail .flow-step-head { gap:7px 9px;margin-bottom:11px }
	#com-flow-detail .flow-step-head strong { width:100%;font-size:22px }
	#com-flow-detail .flow-step-copy p { font-size:15px;line-height:1.75 }
	#com-flow-detail .flow-step-meta { font-size:12px }
	#com-flow-detail .flow-step-photo, #com-flow-detail .flow-step-visual { aspect-ratio:16/9;margin-top:18px }
	#com-flow-detail .flow-model-unit { transform-origin:bottom;bottom:17px;left:29%;transform:translate(-50%)scale(.83) }
	#com-flow-detail .flow-camera-card { transform-origin:100% 100%;bottom:21px;right:18%;transform:rotate(4deg)scale(.82) }
	#com-flow-detail .flow-estimate-sheet { transform-origin:0 0;top:9px;left:24%;transform:rotate(-7deg)scale(.76) }
	#com-flow-detail .flow-calendar-card { transform-origin:100% 100%;bottom:15px;right:21%;transform:scale(.78) }
	#com-flow-detail .flow-consult-phone { transform-origin:top;top:11px;left:25%;transform:translate(-50%)scale(.76) }
	#com-flow-detail .flow-consult-message-one { transform-origin:100% 0;top:22px;right:20%;transform:scale(.82) }
	#com-flow-detail .flow-consult-message-two { transform-origin:100% 100%;bottom:17px;right:31%;transform:scale(.8) }
	#com-flow-detail .flow-install-tank { transform-origin:100% 100%;bottom:17px;right:22%;transform:scale(.78) }
	#com-flow-detail .flow-install-outdoor { transform-origin:0 100%;bottom:18px;left:19%;transform:scale(.78) }
	#com-flow-detail .flow-install-tool { transform-origin:50%;top:28px;left:42%;transform:rotate(-31deg)scale(.8) }
	#com-flow-detail .flow-payment-panel { border-radius:18px;margin-top:20px;padding:20px 14px 16px }
	#com-flow-detail .flow-payment-heading { margin-bottom:15px;display:block }
	#com-flow-detail .flow-payment-heading small { margin-bottom:5px;font-size:12px;display:block }
	#com-flow-detail .flow-payment-heading h3 { font-size:21px }
	#com-flow-detail .flow-payment-methods { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px }
	#com-flow-detail .flow-payment-card { border-radius:13px;min-height:119px;padding:13px 8px }
	#com-flow-detail .flow-payment-card b { font-size:15px }
	#com-flow-detail .flow-payment-card small { font-size:9px }
	#com-flow-detail .flow-payment-logos { gap:5px;margin-top:10px }
	#com-flow-detail .flow-payment-logos img { max-height:25px }
	#com-flow-detail .flow-payment-paypay img { width:108px }
	#com-flow-detail .flow-guide-links .photo-guide-triggers { grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid }
	#com-flow-detail .flow-guide-links .photo-guide-triggers button { min-height:54px;padding:11px 9px;font-size:14px }
}
@media (min-width: 761px) and (max-width: 1100px) {
	#com-flow-detail .flow-list { grid-template-columns:1fr }
}
#com-flow-detail.cr-section { padding-top: 8px; }
#com-flow-detail .container { width: 100%; max-width: none; padding: 0; }

/* トップの流れ → 詳細ページへのボタン（商品「一覧を見る」と同じ形） */
.bp-flow-more { display: flex; justify-content: center; margin: 26px 0 6px; }
.bp-flow-more a { display: inline-flex; align-items: center; gap: 12px; background: #1f6fae; color: #fff; border: 2px solid #1f6fae; font-weight: 800; font-size: 16px; letter-spacing: .04em; padding: 15px 40px 15px 44px; border-radius: 999px; text-decoration: none; line-height: 1.3; transition: background .15s, color .15s; }
.bp-flow-more a small { font-size: 13px; font-weight: 700; opacity: .85; }
.bp-flow-more a::after { content: "›"; color: #ffd477; font-weight: 900; font-size: 20px; margin-left: 4px; }
.bp-flow-more a:hover { background: #fff; color: #1f6fae; }
.bp-flow-intro { font-size: 16px; color: #4d3b30; margin: 0 0 22px; }
@media (max-width: 959px) { .bp-flow-more a { font-size: 15px; padding: 13px 28px 13px 32px; gap: 10px; } }

/* ---- custom/form.css ---- */
/* ---- お問い合わせフォーム（LP bearpocket-lp の #contact のCSSを .bp-form 配下に移植 2026-09-13。正本はLP側。ここは生成物に近い ---- */
.bp-form { --brown:#604d40; --brown-dark:#412210; --ink:#2d241d; --muted:#6e6258; --orange:#ef691b; --orange-dark:#c74e0d; --border:#eadfce; --web-blue:#1565c0; --web-blue-dark:#0d47a1; --web-blue-hover:#1976d2; color: var(--ink); }
.photo-guide-backdrop { z-index: 10000; --brown:#604d40; --brown-dark:#412210; --ink:#2d241d; --muted:#6e6258; --orange:#ef691b; --border:#eadfce; }
.bp-form .section-label { color:var(--orange-dark);letter-spacing:.1em;margin:0 0 14px;font-size:16px;font-weight:900 }
.bp-form .section-label { color:var(--orange-dark);letter-spacing:.13em;margin:0 0 12px;font-size:16px;font-weight:900 }
.bp-form .line-intro .section-label { letter-spacing:.07em;font-size:21px }
.bp-form .line-intro>p:not(.section-label) { color:#52645a;max-width:520px;margin:16px 0 0;font-size:18px;line-height:1.8 }
.bp-form .line-intro>p:not(.section-label) span { -webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 57%,#ffe06c 57% 91%,#0000 91%);padding:0 3px 3px }
.bp-form .speed-section .section-label { color:#247ca7;letter-spacing:.065em;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 58%,#ffe06c 58% 92%,#0000 92%);width:fit-content;margin-bottom:16px;padding:0 .12em .08em;font-size:30px }
.bp-form .hybrid-intro .section-label { letter-spacing:.07em;font-size:clamp(22px,2.2vw,28px);line-height:1.4 }
.bp-form .hybrid-intro>div>p:not(.section-label) { color:var(--muted);margin:19px 0 0;font-size:18px;font-weight:800;line-height:1.8 }
.bp-form .gas-intro .section-label { color:#247ca7 }
.photo-guide-triggers { flex-wrap:wrap;gap:9px;display:flex }
.photo-guide-triggers button { color:#fff;cursor:pointer;background:#276f98;border:0;border-bottom:6px solid #164f70;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:58px;padding:13px 20px;font-family:inherit;font-size:16px;font-weight:950;line-height:1.3;transition:transform .18s,background-color .18s,box-shadow .18s;display:inline-flex;box-shadow:0 7px 14px #1448642e }
.photo-guide-triggers button:after { content:"→";color:#f2cf54;font-family:inherit;font-size:23px;font-weight:900;line-height:1 }
.photo-guide-triggers button:hover { background:#2d7ca9;transform:translateY(-2px);box-shadow:0 10px 18px #1448643d }
.photo-guide-triggers button:active { transform:translateY(2px);box-shadow:0 3px 8px #14486429 }
.photo-guide-triggers button:focus-visible { outline-offset:2px;outline:3px solid #2b6f9b4d }
.bp-form .contact-section { background:linear-gradient(135deg,#fff6df,#fffaf1) }
.bp-form .contact-layout { grid-template-columns:.8fr 1.2fr;align-items:start;gap:52px;display:grid }
.bp-form .contact-copy { position:sticky;top:30px }
.bp-form .contact-copy>.section-label { letter-spacing:.08em;font-size:clamp(22px,2.2vw,28px) }
.bp-form .contact-copy h2 { font-size:49px }
.bp-form .contact-copy>p:not(.section-label) { color:var(--muted);font-size:18px;line-height:1.8 }
.bp-form .contact-mascot-scene { width:min(410px,100%);height:300px;margin:17px auto 22px;position:relative }
.bp-form .contact-mascot-scene>p { z-index:1;width:220px;color:var(--orange-dark);text-align:center;background:#fffffff5;border:1px solid #ead6aa;border-radius:15px;margin:0;padding:14px 18px;font-size:18px;font-weight:950;line-height:1.45;position:absolute;top:6px;right:0;box-shadow:0 9px 22px #53301417 }
.bp-form .contact-mascot-scene>img { filter:drop-shadow(0 10px 9px #4122101f);width:auto;height:auto;position:absolute;bottom:0 }
.bp-form .contact-mascot-scene .contact-greeting-group { z-index:2;width:338px;left:0 }
.bp-form .contact-copy>.contact-fv-phone { width:100% }
.bp-form .contact-form { border:1px solid var(--border);background:#fff;border-radius:22px;gap:22px;padding:30px;display:grid;box-shadow:0 17px 42px #47301e17 }
.bp-form .contact-form-block { background:#fff;border:1px solid #eadfcf;border-radius:17px;gap:20px;padding:26px;display:grid }
.bp-form .contact-form-block-head { border-bottom:1px solid #eee3d5;align-items:center;gap:12px;padding-bottom:16px;display:flex }
.bp-form .contact-form-block-head>span { background:var(--brown);color:#fff;border-radius:50%;flex:0 0 39px;place-items:center;width:39px;height:39px;font-size:20px;font-weight:950;display:grid }
.bp-form .contact-form-block-head small { color:var(--muted);font-size:12px;font-weight:800;display:block }
.bp-form .contact-form-block-head h3 { color:var(--brown-dark);margin:2px 0 0;font-size:23px;line-height:1.2 }
.bp-form .contact-optional-block { background:#fbfaf7 }
.bp-form .contact-optional-block .contact-form-block-head>span { background:#8aa5b2 }
.bp-form .contact-field { color:var(--brown-dark);font-size:17px;font-weight:900;display:block }
.bp-form .contact-form .required-mark, .bp-form .contact-form .optional-mark { color:#fff;vertical-align:2px;border-radius:4px;margin-left:8px;padding:3px 7px;font-size:11px;font-weight:900;line-height:1.25;display:inline-block }
.bp-form .contact-form .required-mark { background:var(--orange) }
.bp-form .contact-form .optional-mark { background:#8798a0 }
.bp-form .contact-form input:not([type=radio]):not([type=file]):not([type=hidden]), .bp-form .contact-form select, .bp-form .contact-form textarea { width:100%;min-height:58px;color:var(--ink);font:inherit;background:#fff;border:2px solid #dcd1c5;border-radius:9px;margin-top:8px;padding:13px 15px;font-weight:500 }
.bp-form .contact-form input:focus, .bp-form .contact-form select:focus, .bp-form .contact-form textarea:focus { border-color:#378db8;outline:3px solid #378db829 }
.bp-form .contact-form textarea { resize:vertical;min-height:130px }
.bp-form .contact-form fieldset { border:0;min-width:0;margin:0;padding:0 }
.bp-form .contact-form legend { color:var(--brown-dark);margin-bottom:10px;font-size:17px;font-weight:900 }
.bp-form .contact-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid }
.bp-form .contact-choice-grid label { cursor:pointer;position:relative }
.bp-form .contact-choice-grid input { opacity:0;pointer-events:none;position:absolute }
.bp-form .contact-choice-grid label>span { min-height:52px;color:var(--brown-dark);text-align:center;background:#fff;border:2px solid #ddd5ca;border-radius:10px;justify-content:center;align-items:center;padding:10px 12px;font-size:15px;font-weight:800;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex }
.bp-form .contact-choice-grid input:checked+span { color:#185f84;background:#eaf6fc;border-color:#2c86b3;box-shadow:inset 0 0 0 1px #2c86b3 }
.bp-form .contact-choice-grid input:focus-visible+span { outline-offset:2px;outline:3px solid #378db833 }
.bp-form .contact-photo-group { background:#f7fbfc;border-radius:13px;border:1px solid #dce5e8!important;padding:18px!important }
.bp-form .contact-photo-guide { margin:-3px 0 13px }
.bp-form .contact-photo-guide button { min-height:50px;padding:10px 16px;font-size:14px }
.bp-form .contact-photo-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid }
.bp-form .contact-photo-card { cursor:pointer;text-align:center;background:#fff;border:2px dashed #aac8d6;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;min-height:144px;padding:13px 8px 10px;display:flex;position:relative;overflow:hidden }
.bp-form .contact-photo-card:hover { background:#f8fcfe;border-color:#378db8 }
.bp-form .contact-photo-order { color:#6e8793;font-size:11px;font-weight:900 }
.bp-form .contact-photo-card strong { min-height:39px;color:var(--brown-dark);place-items:center;margin-top:4px;font-size:14px;line-height:1.4;display:grid }
.bp-form .contact-photo-action { color:#216e94;background:#e7f3f8;border-radius:999px;margin-top:9px;padding:6px 10px;font-size:12px;font-weight:900 }
.bp-form .contact-photo-card input { opacity:0;width:1px;height:1px;position:absolute }
.bp-form .contact-photo-card:focus-within { border-color:#378db8;outline:3px solid #378db829 }
.bp-form .contact-upload-limits { color:#6e7e86;text-align:center;margin:10px 0 0;font-size:12px;font-weight:800;line-height:1.5 }
.bp-form .contact-form>button { border:0;border-bottom:5px solid var(--web-blue-dark);background:var(--web-blue);color:#fff;cursor:pointer;border-radius:12px;min-height:72px;padding-left:24px;padding-right:52px;font-size:21px;font-weight:900;transition:transform .18s,background-color .18s,box-shadow .18s;position:relative;box-shadow:0 8px 18px #0d47a133 }
.bp-form .contact-form>button:after { content:"›";color:#f0c84b;pointer-events:none;font:900 32px/1 Arial,sans-serif;position:absolute;top:50%;right:22px;transform:translateY(-54%) }
.bp-form .contact-form>button:hover { background:var(--web-blue-hover);transform:translateY(-2px);box-shadow:0 11px 22px #0d47a140 }
.bp-form .contact-form>button:active { transform:translateY(2px);box-shadow:0 4px 10px #0d47a12b }
.bp-form .contact-free-note { color:#40525b;text-align:center;margin:-12px 0 0;font-size:14px;font-weight:900 }
.bp-form .contact-privacy-note { color:var(--muted);text-align:center;margin:-8px 0 0;font-size:12px;font-weight:700;line-height:1.6 }
.photo-guide-backdrop { z-index:2400;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#261f1ab3;place-items:center;padding:24px;display:grid;position:fixed;inset:0 }
.photo-guide-modal { background:#fffdf9;border:1px solid #e2d8ca;border-radius:22px;width:min(900px,100vw - 48px);max-height:calc(100dvh - 48px);padding:28px;position:relative;overflow:auto;box-shadow:0 26px 80px #1c17134d }
.photo-guide-close { color:#5e5148;cursor:pointer;background:#f8f5f1;border:1px solid #d7d1cb;border-radius:50%;place-items:center;width:42px;height:42px;padding:0 0 3px;font:500 29px/1 Arial,sans-serif;display:grid;position:absolute;top:18px;right:18px }
.photo-guide-close:focus-visible, .photo-guide-tabs button:focus-visible, .photo-guide-actions :focus-visible { outline-offset:2px;outline:3px solid #2b6f9b4d }
.photo-guide-kicker { color:#79511e;background:#fff0bd;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:950;display:inline-flex }
.photo-guide-modal h2 { color:var(--brown-dark);margin:9px 52px 0 0;font-size:27px;line-height:1.3 }
.photo-guide-tabs { background:#f1eee9;border-radius:12px;grid-template-columns:1fr 1fr;margin-top:20px;padding:4px;display:grid }
.photo-guide-tabs button { color:#756b63;cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:48px;font-size:15px;font-weight:900 }
.photo-guide-tabs button[aria-selected=true] { color:#216e94;background:#fff;box-shadow:0 3px 10px #342b231a }
.photo-guide-panel { margin-top:22px }
.photo-guide-model-panel { grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr);align-items:center;gap:24px;display:grid }
.photo-guide-image { background:#fff;border:1px solid #e8ded1;border-radius:16px;overflow:hidden }
.photo-guide-image img { width:100%;height:auto;display:block }
.photo-guide-copy h3 { color:var(--brown-dark);margin:0;font-size:21px }
.photo-guide-copy ol { color:#61564e;margin:14px 0;padding-left:23px;font-size:15px;font-weight:700;line-height:1.75 }
.photo-guide-copy li+li { margin-top:6px }
.photo-guide-copy p, .photo-guide-note { color:#7a6f66;margin:0;font-size:13px;font-weight:700;line-height:1.65 }
.photo-guide-note { text-align:center;margin-top:12px }
.photo-guide-actions { justify-content:flex-end;gap:10px;margin-top:22px;display:flex }
.photo-guide-actions button, .photo-guide-actions a { color:#5e5148;cursor:pointer;background:#fff;border:1px solid #d5cbc0;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:10px 20px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex }
.photo-guide-actions a { border-color:var(--web-blue);background:var(--web-blue);color:#fff }
.bp-form .contact-form input::placeholder, .bp-form .contact-form textarea::placeholder { color: rgb(152, 146, 139); opacity: 1; }
.bp-form .contact-form .bp-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.bp-form .contact-form .contact-photo-card.has-file { border-style: solid; border-color: #2e9e6b; background-color: #f2fbf6; background-position: center; background-size: cover; background-repeat: no-repeat; }
.bp-form .contact-form .contact-photo-card.has-file::before { content: ""; position: absolute; inset: 0; background: #ffffffb8; pointer-events: none; }
.bp-form .contact-form .contact-photo-card.has-file > * { position: relative; z-index: 1; }
.bp-form .contact-form .contact-photo-card.has-file .contact-photo-action { color: #0a7a4f; background: #d3f2e2; font-size: 0; }
.bp-form .contact-form .contact-photo-card.has-file .contact-photo-action::before { content: "✓ 選択済み"; font-size: 12px; font-weight: 900; }
.bp-form .contact-form .contact-photo-card.has-file::after { content: attr(data-file-name); position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 3px 6px; background: #0a7a4fe6; color: #fff; font-size: 10px; font-weight: 700; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; pointer-events: none; }
.bp-form .contact-form .contact-photo-card.is-dragover { border-style: solid; border-color: #378db8; background-color: #eaf6fb; box-shadow: 0 0 0 4px #378db833; }
.bp-form .contact-form .contact-photo-card.is-invalid { border-style: solid; border-color: #d9534f; background-color: #fdf1f1; }
.bp-form .contact-form .contact-photo-card.is-invalid .contact-photo-action { color: #b33; background: #fadbdb; font-size: 0; }
.bp-form .contact-form .contact-photo-card.is-invalid .contact-photo-action::before { content: "この形式・容量は不可"; font-size: 11px; font-weight: 900; }
.bp-form .contact-form .contact-photo-card .contact-photo-remove { position: absolute; z-index: 3; right: 4px; bottom: 1px; width: 20px; height: 20px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 999px; background: #fff; color: #0a7a4f; font-size: 13px; font-weight: 900; line-height: 1; cursor: pointer; -webkit-appearance: none; appearance: none; }
.bp-form .contact-form .contact-photo-card .contact-photo-remove:hover, .bp-form .contact-form .contact-photo-card .contact-photo-remove:focus-visible { background: #c0392b; color: #fff; }
.bp-form .contact-form .contact-photo-card.has-file::after { padding-right: 28px; }
.bp-form .contact-form .contact-sending-note { display: none; margin: 10px 0 0; text-align: center; font-size: 13px; font-weight: 700; line-height: 1.6; color: #0a7a4f; }
.bp-form .contact-form .contact-sending-note.is-visible { display: block; }
.bp-form .contact-form button[type="submit"][disabled] { opacity: .65; cursor: progress; }
@media (width>=1101px) {
	.bp-form .gas-intro>div>p:not(.section-label) { letter-spacing:-.025em;white-space:nowrap;font-size:17px }
}
@media (width<=760px) {
	.bp-form .section-label { font-size:14px }
	.bp-form .section-label { font-size:13px }
	.bp-form .contact-layout { grid-template-columns:1fr;gap:28px }
	.bp-form .line-intro .section-label { letter-spacing:.045em;margin-bottom:7px;font-size:17px }
	.bp-form .line-intro>p:not(.section-label) { margin-top:9px;font-size:16px;line-height:1.65 }
	.bp-form .speed-section .section-label { letter-spacing:.035em;white-space:nowrap;grid-area:1/1/auto/-1;margin:0;font-size:clamp(19px,5.9vw,23px);line-height:1.4 }
	.bp-form .hybrid-intro .section-label { letter-spacing:.035em;font-size:21px;line-height:1.42 }
	.bp-form .hybrid-intro>div>p:not(.section-label) { grid-column:1/-1;font-size:16px;line-height:1.75 }
	.bp-form .contact-copy>.section-label { letter-spacing:.045em;font-size:21px;line-height:1.45 }
	.bp-form .contact-copy { position:static }
	.bp-form .contact-copy h2 { font-size:34px }
	.bp-form .contact-mascot-scene { width:min(320px,100%);height:160px;margin-top:15px;margin-bottom:19px }
	.bp-form .contact-mascot-scene>p { border-radius:12px;width:170px;padding:9px 10px;font-size:13px;top:5px;right:2px }
	.bp-form .contact-mascot-scene .contact-greeting-group { width:180px;left:3px }
	.bp-form .contact-form { border-radius:18px;gap:16px;padding:18px 12px }
	.bp-form .contact-form-block { border-radius:14px;gap:18px;padding:19px 14px }
	.bp-form .contact-form-block-head { gap:10px;padding-bottom:13px }
	.bp-form .contact-form-block-head>span { flex-basis:35px;width:35px;height:35px;font-size:18px }
	.bp-form .contact-form-block-head h3 { font-size:21px }
	.bp-form .contact-field, .bp-form .contact-form legend { font-size:16px }
	.bp-form .contact-form input:not([type=radio]):not([type=file]):not([type=hidden]), .bp-form .contact-form select, .bp-form .contact-form textarea { min-height:56px;font-size:16px }
	.bp-form .contact-choice-grid { gap:8px }
	.bp-form .contact-choice-grid label>span { min-height:50px;padding:9px 7px;font-size:14px }
	.bp-form .contact-photo-group { padding:15px 12px!important }
	.bp-form .contact-photo-grid { grid-template-columns:1fr;gap:8px }
	.bp-form .contact-photo-card { text-align:left;grid-template-columns:52px minmax(0,1fr) auto;gap:5px 8px;min-height:82px;padding:10px 11px;display:grid }
	.bp-form .contact-photo-order { text-align:center;grid-area:1/1/span 2;align-self:center }
	.bp-form .contact-photo-card strong { grid-area:1/2/span 2;justify-items:start;min-height:0;margin:0;font-size:14px }
	.bp-form .contact-photo-action { white-space:nowrap;grid-area:1/3/span 2;align-self:center;margin:0 }
	.bp-form .contact-form>button { min-height:68px;font-size:19px }
	.bp-form .contact-privacy-note { text-align:left;padding-inline:5px }
	.bp-form .flow-guide-links .photo-guide-triggers { grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid }
	.bp-form .flow-guide-links .photo-guide-triggers button { min-height:54px;padding:11px 9px;font-size:14px }
	.bp-form .contact-photo-guide button { min-height:48px;padding:9px 13px;font-size:13px }
	.photo-guide-backdrop { place-items:end center;padding:0 }
	.photo-guide-modal { width:100%;max-height:92dvh;padding:22px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0 }
	.photo-guide-close { width:38px;height:38px;font-size:26px;top:14px;right:14px }
	.photo-guide-modal h2 { margin-top:8px;font-size:22px }
	.photo-guide-tabs { margin-top:16px }
	.photo-guide-tabs button { min-height:44px;font-size:13px }
	.photo-guide-panel { margin-top:16px }
	.photo-guide-model-panel { grid-template-columns:1fr;gap:15px }
	.photo-guide-model-image { width:min(100%,440px);margin-inline:auto }
	.photo-guide-copy h3 { font-size:18px }
	.photo-guide-copy ol { margin-block:10px;font-size:14px;line-height:1.65 }
	.photo-guide-actions { grid-template-columns:1fr 1fr;display:grid }
	.photo-guide-actions button, .photo-guide-actions a { min-height:46px;padding:9px 10px }
}
@media (max-width: 760px) {
	.bp-form .contact-form .contact-photo-card.has-file { padding-bottom: 22px; }
	.bp-form .contact-form .contact-photo-card .contact-photo-remove::after { content: ""; position: absolute; top: -9px; right: -9px; bottom: -9px; left: -9px; }
}
@media (min-width: 761px) {
	.bp-form .contact-form .contact-upload-limits::after { content: "／ドラッグ＆ドロップでも添付できます"; }
}

/* タブで隠したパネルは幅に関係なく隠す（スマホ用の display 指定が hidden 属性に勝っていた 2026-09-14） */
.photo-guide-panel[hidden], .photo-guide-backdrop[hidden] { display: none !important; }

/* 全ページ共通のフォーム帯（footer.php・2026-09-14）: サイドバーの有無に関係なく全幅の帯にし、中身は1,200pxに収める */
.bp-form-band { background: #fff7ea; padding: 44px 0 36px; } /* border-top は 9/14 撤去（口コミ／Instagram の下の線を無くすため。帯の色差で区切る） */
.bp-form-band__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.bp-form-band .bp-form { padding: 0; border: 0; }
@media (max-width: 959px) { .bp-form-band { padding: 30px 0 26px; } .bp-form-band__inner { padding: 0 15px; } }

/* LPと同じ導入（2026-09-14 渡邊さん）: ラベル「無料見積もり・ご相談」をオレンジで、一文は濃い色（LPの9/14微調整） */
.bp-form .contact-copy .section-label { color: #c74e0d; }
.bp-form .contact-copy > p:not(.section-label) { color: #4d3b30; }

/* 見出し「まずは状況を、お聞かせください。」が3行に折り返す（2026-09-14 渡邊さん）: 列幅に収まる大きさに */
.bp-form .contact-copy h2 { font-size: 49px; font-weight: 400; line-height: 1.35; letter-spacing: -.045em; } /* LPの実測値（49px・太さ400・字間-0.045em）。SWELLのh2の太字を戻す */
@media (max-width: 1100px) { .bp-form .contact-copy h2 { font-size: 36px; } }
@media (max-width: 700px) { .bp-form .contact-copy h2 { font-size: 30px; } }

/* ---- lp-design.css 由来（#contact …）: スマホ表示（ラベル・見出し・マスコット・電話ボタン）と9/14微調整。スタック式で取り直し 2026-09-14（渡邊さん「スマホの表示の仕方はLPと同じに」） ---- */
@media(min-width:701px) and (max-width:1000px) {
	.bp-form .contact-copy .phone-cta-copy strong { font-size:min(30px,13cqi) }
	.bp-form .contact-copy .phone-cta-copy>span, .bp-form .contact-copy .phone-cta-copy>small { white-space:normal;font-size:10px }
}
@media (max-width: 760px) {
	.bp-form .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 }
	.bp-form .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 }
	.bp-form .contact-copy>h2 { grid-area:h2;align-self:start;font-size:min(26px,6vw);line-height:1.45;font-weight:700;margin:0 }
	.bp-form .contact-copy>p:not(.section-label) { grid-area:lead;font-size:15px;line-height:1.6;margin:14px 0 0 }
	.bp-form .contact-mascot-scene { grid-area:art;width:118px;height:auto;margin:0;align-self:center }
	.bp-form .contact-mascot-scene>p { display:none }
	.bp-form .contact-mascot-scene>img.contact-greeting-group { position:static;width:118px;height:auto;left:auto }
	.bp-form .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 }
	.bp-form .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/phone-handset-orange.png") center/60% no-repeat;padding:0 }
	.bp-form .contact-copy>.contact-fv-phone .phone-cta-lead, .bp-form .contact-copy>.contact-fv-phone .phone-cta-meta, .bp-form .contact-copy>.contact-fv-phone>i { display:none }
	.bp-form .contact-copy>.contact-fv-phone .phone-cta-copy { display:block;text-align:center;container-type:normal }
	.bp-form .contact-copy>.contact-fv-phone .phone-cta-copy strong { font-size:22px;line-height:1.15;letter-spacing:.02em;margin:0 }
	.bp-form .contact-copy>p:not(.section-label) { margin-top:10px }
	.bp-form .contact-layout { gap:16px }
	.bp-form .contact-privacy-note { font-size:12px }
}
.bp-form .contact-copy>p:not(.section-label) { color:#4d3b30 }
.bp-form .contact-privacy-note { font-size:14px;color:#4d3b30;font-weight:400;line-height:1.7 }

/* スマホの電話ボタンはLPと同じ46px（旧抽出分の min-height:94px を打ち消す） */
@media (max-width: 760px) { .bp-form .contact-copy > a.contact-fv-phone { min-height: 0 !important; height: auto !important; padding: 9px 26px !important; } }

/* フォーム内「ご希望の機種」の表示（LPの .contact-selected-product） */
.bp-form .contact-selected-product > span { color: #412210; margin-bottom: 8px; font-size: 16px; font-weight: 900; display: block; }
.bp-form .contact-selected-product > div { background: #f0f1f2; border: 1px solid #d5d2cd; border-radius: 9px; display: grid; grid-template-columns: minmax(0, 1fr) 34px; align-items: center; gap: 12px; min-height: 58px; padding: 12px 12px 12px 16px; }
.bp-form .contact-selected-product strong { color: #514d49; overflow-wrap: anywhere; font-size: 16px; line-height: 1.45; }
.bp-form .contact-selected-product button { color: #6c6762; cursor: pointer; background: #fff; border: 1px solid #c8c5c0; border-radius: 50%; display: grid; place-items: center; width: 34px; height: 34px; padding: 0 0 2px; font: 700 22px/1 Arial, sans-serif; }
.bp-form .contact-selected-product button:hover { color: #3e3a36; background: #faf9f7; border-color: #8d8882; }

/* ---- custom/guarantee.css ---- */
/* ---- 保証（工事後の保証）— LP #flow 内の .flow-aftercare をそのまま移植 2026-09-14。正本はLP。見出しは .com の cr-heading ---- */
#com-guarantee { --gold:#dfb345; --brown-dark:#412210; --muted:#6e6258; --orange-dark:#c74e0d; }
#com-guarantee .flow-aftercare { background:linear-gradient(135deg,#fff9e9,#fffdf7);border:2px solid #e2c16a;border-radius:22px;grid-template-columns:86px minmax(0,1fr);align-items:start;gap:22px;width:min(1000px,100%);margin:26px auto 0;padding:28px 30px;display:grid }
#com-guarantee .flow-aftercare-icon { background:var(--gold);width:72px;height:72px;color:var(--brown-dark);border-radius:50%;place-items:center;font-size:35px;font-weight:950;display:grid }
#com-guarantee .flow-aftercare-content { min-width:0 }
#com-guarantee .flow-aftercare small { color:var(--orange-dark);letter-spacing:.07em;font-size:22px;font-weight:950;line-height:1.35 }
#com-guarantee .flow-aftercare h3 { color:var(--brown-dark);margin:3px 0 5px;font-size:25px }
#com-guarantee .flow-aftercare p { color:var(--muted);margin:0;font-size:16px;font-weight:700;line-height:1.7 }
#com-guarantee .flow-warranty-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid }
#com-guarantee .flow-warranty-card { background:#ffffffe6;border:1px solid #eadfcf;border-radius:15px;padding:17px 18px 18px }
#com-guarantee .flow-warranty-card>span { letter-spacing:.02em;border-radius:999px;align-items:center;min-height:40px;padding:8px 17px;font-size:15px;font-weight:950;display:inline-flex }
#com-guarantee .flow-warranty-card.is-included>span { color:#fff;background:#247ca7 }
#com-guarantee .flow-warranty-card.is-optional>span { color:#4d351f;background:#f0c84b }
#com-guarantee .flow-warranty-card h4 { color:var(--brown-dark);margin:12px 0 6px;font-size:20px;font-weight:950 }
#com-guarantee .flow-warranty-card p { font-size:14px;line-height:1.75 }
#com-guarantee .flow-aftercare .flow-warranty-note { color:#8e8177;margin-top:12px;font-size:12px;font-weight:700;line-height:1.65 }
@media (max-width: 760px) {
	#com-guarantee .flow-aftercare { margin-top:20px;padding:20px 18px;display:block }
	#com-guarantee .flow-aftercare-icon { width:52px;height:52px;margin-bottom:12px;font-size:27px }
	#com-guarantee .flow-aftercare small { letter-spacing:.045em;font-size:20px }
	#com-guarantee .flow-aftercare h3 { font-size:22px }
	#com-guarantee .flow-aftercare p { font-size:15px }
	#com-guarantee .flow-warranty-grid { grid-template-columns:1fr;gap:10px }
	#com-guarantee .flow-warranty-card { padding:15px 16px 16px }
	#com-guarantee .flow-warranty-card>span { min-height:37px;padding:7px 15px;font-size:14px }
	#com-guarantee .flow-warranty-card h4 { font-size:19px }
	#com-guarantee .flow-warranty-card p { font-size:14px }
	#com-guarantee .flow-aftercare .flow-warranty-note { font-size:11px }
}
/* 9/14 のLP微調整に追随: 補足文 16px・注記 14px・色を濃く */
#com-guarantee .flow-warranty-card p { font-size: 16px; color: #4d3b30; }
#com-guarantee .flow-aftercare .flow-warranty-note { font-size: 14px; color: #4d3b30; font-weight: 400; line-height: 1.7; }
#com-guarantee .flow-aftercare { display: block; padding: 24px 26px; margin-top: 0; }
#com-guarantee .flow-warranty-grid { margin-top: 0; }
@media (max-width: 760px) { #com-guarantee .flow-warranty-card p { font-size: 15px; } #com-guarantee .flow-aftercare .flow-warranty-note { font-size: 12px; } }

/* 幅を他セクションの1,200px枠に揃える */
#com-guarantee .flow-aftercare { width: 100%; max-width: none; }

/* ---- custom/header.css ---- */
/* ---- PCヘッダー（2026-09-12 決定: 幅を広げる・ナビはアイコン無し・右は見積りボタン＋電話番号） ---- */
@media (min-width: 960px) {
	.l-header__inner { align-items: center; max-width: 1400px; padding-left: 24px; padding-right: 24px; }
	.l-header__logo .c-headLogo__img { height: 54px; width: auto; }
	.l-header .c-gnav > li > a .ttl { font-weight: 700; font-size: 17px !important; letter-spacing: .02em; } /* SWELL 側の指定より後勝ちにする */
	.c-gnav > li > a { padding-left: 1em; padding-right: 1em; }
	.c-gnav .ttl i { display: none; }                 /* メニュー項目のアイコンを出さない（項目の見直しは後日） */
	.l-header__gnav { margin-right: 32px; }           /* ナビと右のCTAの間に余白 */
	.w-header .widget_media_image { display: none; } /* 旧・電話番号画像（保険で非表示。functions.php でも出力停止） */
}
/* 渡邊さん 9/14: ①PCナビの「無料見積り・ご相談」は右隣に見積りボタンがあるので出さない（メニュー Primary はスマホ2か所と共用なので、項目は残して PC だけ CSS で隠す。本番はページIDが違うので href で判定）
   ②追従ヘッダー（SWELL .l-fixHeader）のナビ文字も通常ヘッダーと同じ 17px 太字に（CTAは変えない）。幅も通常ヘッダーと同じ 1400px */
@media (min-width: 960px) {
	.c-gnav > li:has(> a[href$="/contact/"]) { display: none; }
	.l-fixHeader__inner { max-width: 1400px; padding-left: 24px; padding-right: 24px; }
	.l-fixHeader .c-gnav > li > a .ttl { font-weight: 700; font-size: 17px !important; letter-spacing: .02em; }
	.l-fixHeader .l-header__gnav, .l-fixHeader .l-fixHeader__gnav { margin-right: 32px; }
}
.bp-hcta { display: flex; align-items: center; gap: 18px; font-family: system-ui, -apple-system, "Hiragino Sans", "Noto Sans JP", sans-serif; }
.bp-hcta__form { display: inline-flex; align-items: center; gap: 7px; background: #1565c0; color: #fff; font-weight: 800; font-size: 15px; padding: 12px 22px; border-radius: 999px; box-shadow: 0 3px 0 #0d47a1; text-decoration: none; white-space: nowrap; }
.bp-hcta__form:hover { background: #1258a8; color: #fff; }
.bp-hcta__form svg { width: 17px; height: 17px; fill: none; stroke: #fff; stroke-width: 2; }
.bp-hcta__tel { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.1; text-decoration: none; color: #412210; }
.bp-hcta__tel strong { font-size: 30px; font-weight: 900; letter-spacing: -.03em; white-space: nowrap; }
.bp-hcta__tel strong::before { content: "TEL"; font-size: 12px; margin-right: 6px; color: #ef691b; vertical-align: middle; letter-spacing: 0; }
.bp-hcta__tel small { font-size: 11px; color: #6e6258; white-space: nowrap; margin-top: 2px; }

/* スマホのメニュー（SWELL .p-spMenu）: 文字を 17→19px、行間も少し広く（2026-09-14 渡邊さん） */
.p-spMenu .c-spnav.c-listMenu > li > a { font-size: 19px; padding-top: 15px; padding-bottom: 15px; font-weight: 700; }
.p-spMenu .c-spnav.c-listMenu > li > a i { font-size: 18px; }

/* スマホのヘッダー下の横スクロールメニュー（SWELL .p-spHeadMenu）: 12→14.5px・高さ 36→44px（2026-09-14 渡邊さん） */
.p-spHeadMenu { height: 44px; }
.p-spHeadMenu .c-gnav > li > a, .p-spHeadMenu li > a { font-size: 14.5px; font-weight: 700; padding: 0 13px; line-height: 44px; }
.p-spHeadMenu li > a i { font-size: 13px; }

/* ---- custom/hero-line.css ---- */
/* ---- FVのLINEボタン（LPと同じ）2026-09-14 ---- */
.kh-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 }
@media(max-width:700px) {
	.kh-hero .lp-hero-line { gap:3px }
	.lp-hero-line img { width:28px;height:28px }
}
.kh-hero .lp-hero-line { align-items: center; justify-content: center; text-decoration: none; }
.kh-hero .lp-hero-line strong { font-size: 22px; } /* 左の「無料見積り・ご相談」(22px) と同じ大きさに（渡邊さん 9/14） */
@media (max-width: 700px) { .kh-hero .lp-hero-line strong { font-size: 21px; } }

/* スマホのFVボタン: LPと同じ2列横並び（各168px・高さ60px・文字15px・gap 8px）2026-09-14 渡邊さん */
@media (max-width: 700px) {
	.kh-hero .kh-actions { grid-template-columns: 1fr 1fr !important; gap: 8px !important; margin-top: 14px !important; }
	.kh-hero .kh-actions > a { min-height: 60px !important; height: 60px; padding: 10px 5px !important; border-radius: 7px; }
	.kh-hero .kh-actions .kh-web strong, .kh-hero .lp-hero-line strong { font-size: 15px !important; }
	.kh-hero .lp-hero-line { gap: 3px; }
}

/* ---- custom/hero-subsidy.css ---- */
/* ---- FV 補助金バナー（2026-09-12 決定: ミズテック寄せの帯・案B3・影なし） ---- */
.kh-hero .kh-subsidy.bp-subsidy { display: block; padding: 0; border: 2px solid #1f7a4d; /* 濃い緑と同色の枠（9/14 渡邊さん）。下帯の薄緑も同じ枠で囲う */ border-radius: 10px; background: #1f7a4d; color: #fff; overflow: hidden; box-shadow: none; margin-top: 14px; }
.bp-subsidy__row { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 10px 16px; }
.bp-subsidy__tag { display: inline-block; background: #fff; 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__pre { font-size: 15px; }
.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__sub { text-align: right; font-size: 12px; font-weight: 700; line-height: 1.5; white-space: nowrap; }
.bp-subsidy__sub span { display: block; font-size: 11px; font-weight: 600; opacity: .9; }
.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) {
	/* スマホはスリムに: タグと注記を小さく、本文を2行に */
	.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__pre { font-size: 13px; }
	.bp-subsidy__main b { font-size: 32px; }
	.bp-subsidy__main b small { font-size: 16px; }
	.bp-subsidy__unit { font-size: 12px; }
	.bp-subsidy__sub { text-align: center; font-size: 11px; line-height: 1.4; white-space: normal; }
	.bp-subsidy__sub span { display: inline; font-size: 10.5px; }
	.bp-subsidy__sub span::before { content: "｜"; opacity: .7; }
	.bp-subsidy__foot { font-size: 10.5px; gap: 2px 12px; padding: 5px 8px; line-height: 1.4; }
}

/* ---- PC: 価格カード下の例を1段にし、その分だけ補助金バナーを縦に少し大きく（2026-09-12） ---- */
@media (min-width: 701px) {
	.kh-price-example-desktop { display: none; }
	.kh-price-example-mobile { display: inline; white-space: nowrap; font-size: 12px; letter-spacing: 0; }
	.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; }
}

/* ---- custom/item.css ---- */
/* ---- 商品紹介 /item/（エコキュート／給湯器のタブ）2026-09-14 ---- */
.bp-item__tabs { grid-template-columns: 1fr 1fr; margin-bottom: 22px; }
.bp-item__tabs button { font-size: 17px; padding: 13px 8px; }
.bp-item__tabs small { display: block; font-size: 12px; font-weight: 500; margin-top: 2px; }
.bp-item [role="tabpanel"][hidden] { display: none !important; }
.bp-item .cr-section { padding-top: 6px; }
@media (max-width: 700px) { .bp-item__tabs button { font-size: 14px; padding: 11px 4px; } .bp-item__tabs small { font-size: 11px; } }
/* タブを茶→ブルー系に（9/14 渡邊さん）。費用の目安のタブ（#com-price）と同じ配色 */
.com-renewal .cr-tabs.bp-item__tabs { border-bottom-color: #1f6fae; }
.com-renewal .cr-tabs.bp-item__tabs button { background: #eaf4fa; color: #253746; }
.com-renewal .cr-tabs.bp-item__tabs button[aria-selected="true"] { background: #1f6fae; color: #fff; }

/* ---- custom/layout.css ---- */
/* ---- トップページだけ本文幅 1,200px（記事ページは 960 のまま）2026-09-12 決定 ----
   このサイトは body にクラスが付かないため、SWELL が #content に付ける data-postid（トップ＝固定ページ60）で判定する */
@media (min-width: 960px) {
	#content[data-postid="60"] { --article_size: 1200px; }
	#content[data-postid="60"] .l-mainContent, #content[data-postid="60"] .l-article, #content[data-postid="60"] .l-mainContent__inner { max-width: 1200px; }
	/* 口コミ／Instagram の画像カードは横に伸ばしすぎない */
}
/* おすすめ機種のグリッド: スマホ1列 → タブレット2列 → PC3列 */
.bp-products-top .bp-products-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 600px) { .bp-products-top .bp-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 960px) { .bp-products-top .bp-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; } }
.bp-products-top .kp-product { margin: 0; }
.bp-products-more { display: flex; justify-content: center; margin: 26px 0 10px; }
.bp-products-more a { display: inline-flex; align-items: center; gap: 12px; background: #1f6fae; color: #fff; border: 2px solid #1f6fae; font-weight: 800; font-size: 16px; letter-spacing: .04em; padding: 15px 40px 15px 44px; border-radius: 999px; text-decoration: none; line-height: 1.3; transition: background .15s, color .15s; }
.bp-products-more a small { font-size: 13px; font-weight: 700; color: inherit; opacity: .85; }
.bp-products-more a::after { content: "›"; color: #ffd477; font-weight: 900; font-size: 20px; margin-left: 4px; }
.bp-products-more a:hover { background: #fff; color: #1f6fae; }
.bp-products-more a:hover::after { color: #ef691b; }
@media (max-width: 959px) { .bp-products-more a { font-size: 15px; padding: 13px 28px 13px 32px; gap: 10px; } }
/* 相談CTAブロック: ベージュの帯は1,200pxのまま、中身（見出し・マスコット・ボタンの白パネル）は左右を詰めて約960pxに（2026-09-12） */
@media (min-width: 1100px) { #content[data-postid="60"] .kp-consult { padding-left: 132px; padding-right: 132px; } }
/* スマホの各セクション見出しを小さく（渡邊さん 9/14）: GPT見本 readability.css の ≤700px `.com-renewal h2{font-size:26px}` → 22px。
   施工事例スライダーの見出し（.com-renewal--cases）も同じ .cr-heading なので揃う。リード（.cr-heading p 16px）は据え置き */
@media (max-width: 700px) {
	.com-renewal .cr-heading h2, .cr-heading h2 { font-size: 20px; line-height: 1.45; } /* 22→20px（9/14「もう少し小さく」） */
}

/* ---- custom/lp-common.css ---- */
/* ---- LP共通部品（電話ボタン .action-phone・.section-label・.container・.mock-photo）を .bp-lp 配下に移植 2026-09-14。正本はLP ---- */
.bp-lp { --brown:#604d40; --brown-dark:#412210; --ink:#2d241d; --muted:#6e6258; --orange:#ef691b; --orange-dark:#c74e0d; --border:#eadfce; --web-blue:#1565c0; --web-blue-dark:#0d47a1; --line-green:#06c755; --cream:#fffaf0; --cream-deep:#f7edd5; }
.bp-lp .action { color:#fff;border-radius:12px;grid-template-columns:48px 1fr 17px;align-items:center;gap:10px;min-height:86px;padding:0 19px;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden;box-shadow:0 10px 24px #5330142b }
.bp-lp .action:hover { transform:translateY(-2px);box-shadow:0 13px 28px #53301438 }
.bp-lp .action-phone { background-color:var(--orange);border-bottom:4px solid var(--orange-dark) }
.bp-lp .action .phone-icon { width:46px;height:46px;color:var(--orange);background:#fff;border-radius:50%;place-items:center;font-size:25px;display:grid }
.bp-lp .action small { margin-bottom:2px;font-size:14px;font-weight:800;display:block }
.bp-lp .action strong { letter-spacing:.02em;font-size:27px;line-height:1.18;display:block }
.bp-lp .phone-cta-lead { color:#fff;white-space:nowrap;background:#ffffff2e;border-radius:999px;width:fit-content;margin:0 auto 2px;padding:4px 12px;font-weight:900;display:block }
.bp-lp .action-phone .phone-cta-copy { text-align:center;min-width:0 }
.bp-lp .action-phone .phone-cta-lead { letter-spacing:.02em;font-size:14px;line-height:1.2 }
.bp-lp .action-phone .phone-cta-copy strong { letter-spacing:-.025em;white-space:nowrap;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:31px;font-weight:950;line-height:1.06 }
.bp-lp .action-phone .phone-cta-meta { letter-spacing:.02em;margin:2px 0 0;font-size:12px;font-weight:900;line-height:1.15 }
.bp-lp .action>i { font-size:29px;font-style:normal }
.bp-lp .shine { background-image:linear-gradient(115deg,#0000 38%,#ffffff6b 49%,#0000 60%);background-repeat:no-repeat;background-size:250% 100%;animation:3.8s ease-in-out infinite shine }
.bp-lp .urgent-inner>a .phone-icon { width:55px;height:55px;color:var(--orange);background:#fff;border-radius:50%;place-items:center;font-size:29px;display:grid }
.bp-lp .shortcut-phone .phone-icon { width:27px;height:27px;color:var(--orange);background:#fff;border-radius:50%;flex:0 0 27px;place-items:center;font-size:16px;display:grid }
.bp-lp .section-label { color:var(--orange-dark);letter-spacing:.1em;margin:0 0 14px;font-size:16px;font-weight:900 }
.bp-lp .container { width:min(1120px,100%);margin:0 auto }
.bp-lp .container.wide { width:min(1240px,100%) }
.bp-lp .container.narrow { width:min(900px,100%) }
.bp-lp .section-head>p, .bp-lp .section-label { color:var(--orange-dark);letter-spacing:.13em;margin:0 0 12px;font-size:16px;font-weight:900 }
.bp-lp .subsidy-section .container { width:min(1240px,100%) }
.bp-lp .line-intro .section-label { letter-spacing:.07em;font-size:21px }
.bp-lp .mock-photo { background:#e9e1d7;border-radius:18px;margin:0;position:relative;overflow:hidden;box-shadow:0 12px 28px #402b1c1f }
.bp-lp .mock-photo>img { object-fit:cover;width:100%;height:100%;display:block }
.bp-lp .mock-photo figcaption { z-index:2;color:#fff;letter-spacing:.02em;background:#493323e0;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;line-height:1;position:absolute;top:10px;left:10px;box-shadow:0 3px 10px #291b1233 }
.bp-lp .speed-section .section-label { color:#247ca7;letter-spacing:.065em;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 58%,#ffe06c 58% 92%,#0000 92%);width:fit-content;margin-bottom:16px;padding:0 .12em .08em;font-size:30px }
.bp-lp .hybrid-intro .section-label { letter-spacing:.07em;font-size:clamp(22px,2.2vw,28px);line-height:1.4 }
.bp-lp .gas-intro .section-label { color:#247ca7 }
@media (width>=761px) {
	.bp-lp .action-phone .phone-cta-lead, .bp-lp .urgent-inner>a .phone-cta-lead { background:0 0;border-radius:0;padding:0 }
}
@media (width>=1101px) {
	.bp-lp .action { grid-template-columns:44px max-content;justify-content:center;gap:8px;padding:0 30px 0 12px;position:relative }
	.bp-lp .action .phone-icon, .bp-lp .line-mark { width:44px;height:44px }
	.bp-lp .action small { letter-spacing:-.04em;white-space:nowrap;font-size:clamp(11.5px,.92vw,13px) }
	.bp-lp .action strong { white-space:nowrap }
	.bp-lp .action-phone .phone-cta-lead { letter-spacing:.02em;font-size:clamp(12px,.9vw,13px) }
	.bp-lp .action-phone .phone-cta-copy strong { font-size:clamp(30px,2.35vw,34px) }
	.bp-lp .action-phone .phone-cta-meta { letter-spacing:.02em;font-size:clamp(11px,.8vw,12px) }
	.bp-lp .action>i { position:absolute;right:12px }
	.bp-lp .shortcut.is-floating .shortcut-phone-full>.phone-icon { width:46px;height:46px;color:var(--orange);background:#fff;border-radius:50%;flex:0 0 46px;place-items:center;font-size:25px;display:grid }
	.bp-lp .shortcut.is-floating .shortcut-phone-full .phone-cta-copy { color:#fff;text-align:center;min-width:0;display:block }
	.bp-lp .shortcut.is-floating .shortcut-phone-full .phone-cta-copy small { color:#fff;letter-spacing:.02em;white-space:nowrap;font-size:13px;font-weight:900;line-height:1.18;display:block }
	.bp-lp .shortcut.is-floating .shortcut-phone-full .phone-cta-copy strong { color:#fff;letter-spacing:-.025em;white-space:nowrap;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:32px;font-weight:950;line-height:1.06;display:block }
	.bp-lp .shortcut.is-floating .shortcut-phone-full .phone-cta-copy strong+small { margin-top:2px;font-size:12px }
}
@media (width<=760px) {
	.bp-lp .action { grid-template-columns:46px 1fr 17px;min-height:78px }
	.bp-lp .action small { font-size:13px }
	.bp-lp .action strong { font-size:25px }
	.bp-lp .action.action-phone { min-height:94px }
	.bp-lp .action-phone .phone-cta-lead { font-size:12px }
	.bp-lp .action-phone .phone-cta-copy strong { font-size:clamp(28px,8vw,32px) }
	.bp-lp .action-phone .phone-cta-meta { font-size:11px }
	.bp-lp .urgent-inner>a .phone-icon { width:42px;height:42px;font-size:22px }
	.bp-lp .shortcut-phone .phone-icon { flex-basis:27px;width:27px;height:27px;font-size:15px }
	.bp-lp .shortcut-contact .phone-icon { font-size:19px }
	.bp-lp .shortcut-contact>span:not(.phone-icon) { font-size:16px }
	.bp-lp .section-label { font-size:14px }
	.bp-lp .section-head>p, .bp-lp .section-label { font-size:13px }
	.bp-lp .line-intro .section-label { letter-spacing:.045em;margin-bottom:7px;font-size:17px }
	.bp-lp .mock-photo figcaption { padding:6px 9px;font-size:10px;top:8px;left:8px }
	.bp-lp .speed-section .section-label { letter-spacing:.035em;white-space:nowrap;grid-area:1/1/auto/-1;margin:0;font-size:clamp(19px,5.9vw,23px);line-height:1.4 }
	.bp-lp .hybrid-intro .section-label { letter-spacing:.035em;font-size:21px;line-height:1.42 }
}
@media (width>=761px) and (width<=1100px) {
	.bp-lp .urgent-inner>a .phone-icon { width:46px;height:46px;font-size:24px }
}
@media (width>=1001px) and (width<=1280px) {
	.bp-lp .shortcut-contact .phone-icon, .bp-lp .shortcut-contact>span:not(.phone-icon) { font-size:20px }
}
@media (prefers-reduced-motion:reduce) {
	.bp-lp .shine, .bp-lp .mascot-enter, .bp-lp .mascot-image, .bp-lp .product-enter { animation:none!important }
}

/* ---- custom/lp-pages.css ---- */
/* ---- 会社概要・個人情報保護方針（LPの about/privacy のインラインCSSを .bp-lp-page 配下に移植 2026-09-14） ---- */
.bp-lp-page { --ink:#3b2717; --brown-dark:#4a3524; --muted:#6f665e; --orange:#ef691b; --cream:#fffaf0; --border:#eadfce; --blue:#1565c0; color: var(--ink); line-height: 1.9; max-width: 800px; margin: 0 auto; }
.bp-lp-page .lead { margin: 0 0 26px; color: var(--muted); font-size: 15px; }
.bp-lp-page h2 { font-size: 18px; font-weight: 900; margin: 36px 0 10px; padding: 0 0 0 12px; border: 0; border-left: 5px solid var(--orange); background: none; color: var(--brown-dark); line-height: 1.5; }
.bp-lp-page h2::before, .bp-lp-page h2::after { display: none; }
.bp-lp-page h2:first-child { margin-top: 8px; }
.bp-lp-page p, .bp-lp-page li, .bp-lp-page td, .bp-lp-page th { font-size: 15.5px; }
.bp-lp-page ul, .bp-lp-page ol { padding-left: 1.3em; margin: 10px 0; }
.bp-lp-page li { margin-bottom: 6px; }
.bp-lp-page table { width: 100%; border-collapse: collapse; margin: 12px 0; background: #fff; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
.bp-lp-page th, .bp-lp-page td { padding: 12px 14px; text-align: left; border: 0; border-bottom: 1px solid #f0e7da; vertical-align: top; background: none; }
.bp-lp-page th { width: 32%; background: #fffdf7; font-weight: 900; color: var(--brown-dark); }
.bp-lp-page tr:last-child th, .bp-lp-page tr:last-child td { border-bottom: 0; }
.bp-lp-page .badges { display: flex; gap: 9px; flex-wrap: wrap; margin: 2px 0 0; }
.bp-lp-page .badge { background: var(--cream); border: 1px solid var(--border); border-radius: 11px; padding: 10px 15px; font-size: 13px; font-weight: 900; color: var(--brown-dark); line-height: 1.5; text-align: center; }
.bp-lp-page .badge span { display: block; font-size: 13px; color: var(--muted); line-height: 1.5; }
.bp-lp-page .badge b { display: block; font-size: 20px; color: var(--orange); line-height: 1.35; margin-top: 1px; }
.bp-lp-page a { color: var(--blue); }
.bp-lp-page .note, .bp-lp-page .contactbox { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 16px 18px; margin: 14px 0; }
.bp-lp-page .contactbox b { display: block; color: var(--brown-dark); margin-bottom: 4px; }
.bp-lp-page .rev { margin-top: 38px; padding-top: 18px; border-top: 1px solid var(--border); color: var(--muted); font-size: 14px; }
@media (max-width: 600px) { .bp-lp-page h2 { font-size: 17px; } .bp-lp-page th { width: 36%; } .bp-lp-page th, .bp-lp-page td { padding: 10px 10px; font-size: 14px; } .bp-lp-page .badge { padding: 8px 11px; } .bp-lp-page .badge b { font-size: 18px; } }

/* 会社概要(83)・個人情報保護方針(3) はLPと同じベージュの背景（2026-09-14 渡邊さん）。フォーム帯なし（footer.php） */
#body_wrap.page-id-83, #body_wrap.page-id-3, .page-id-83 .l-content, .page-id-3 .l-content, .page-id-83 .l-mainContent, .page-id-3 .l-mainContent, .page-id-83 #content, .page-id-3 #content { background: #fffaf0; }
.page-id-83 .l-mainContent__inner, .page-id-3 .l-mainContent__inner { padding-bottom: 56px; }

/* ---- custom/more-buttons.css ---- */
/* ---- 「もっと見る」系ボタン3本の共通仕上げ（渡邊さん 9/14）: 施工事例／商品一覧／詳しい流れ を同じ濃い茶に。スマホは補足（件数・機種数・「お支払い方法〜」）を出さない
   ※ 個別の定義（cases.css / layout.css / flow-detail.css）より後ろに連結されるので、ここが勝つ ---- */
.bp-cases-more a, .bp-products-more a, .bp-flow-more a { background: #6b4a3b; border-color: #6b4a3b; color: #fff; }
.bp-cases-more a:hover, .bp-products-more a:hover, .bp-flow-more a:hover { background: #fff; color: #6b4a3b; border-color: #6b4a3b; }
.bp-cases-more a::after, .bp-products-more a::after, .bp-flow-more a::after { color: #ffd477; }
.bp-cases-more a:hover::after, .bp-products-more a:hover::after, .bp-flow-more a:hover::after { color: #ef691b; }
@media (max-width: 959px) {
	.bp-cases-more a small, .bp-products-more a small, .bp-flow-more a small { display: none; }
	.bp-cases-more a, .bp-products-more a, .bp-flow-more a { gap: 8px; }
}

/* ---- custom/post-cta.css ---- */
/* ---- 投稿末尾のCTA帯（post-cta.php・2026-09-14） ---- */
.bp-pcta { margin: 40px 0 8px; padding: 22px 24px; background: #fff7ea; border: 1px solid #f0dcc4; border-left: 6px solid #ef691b; border-radius: 12px; }
.bp-pcta__lead { margin-bottom: 14px; }
.bp-pcta__lead strong { display: block; font-size: 19px; font-weight: 800; color: #412210; line-height: 1.4; }
.bp-pcta__lead span { display: block; font-size: 14px; color: #6e6258; margin-top: 4px; }
.bp-pcta__btns { display: grid; grid-template-columns: 1.3fr 1fr 1.2fr; gap: 10px; }
.bp-pcta__btns a { display: flex; align-items: center; gap: 8px; min-height: 60px; padding: 10px 14px; border-radius: 8px; color: #fff; font-weight: 800; font-size: 15px; text-decoration: none; line-height: 1.2; }
.bp-pcta__btns a.bp-pcta__form, .bp-pcta__btns a.bp-pcta__line { font-size: 18px; } /* 2026-09-14 渡邊さん: 文言を大きく（電話はそのまま） */
.bp-pcta__btns a b { margin-left: auto; font-size: 22px; font-weight: 400; }
.bp-pcta__form { background: #1565c0; box-shadow: 0 3px 0 #0d47a1; }
.bp-pcta__form svg { width: 24px; height: 24px; flex: none; }
.bp-pcta__line { background: #06c755; box-shadow: 0 3px 0 #049e43; }
.bp-pcta__line img { width: 28px; height: 28px; flex: none; border-radius: 6px; }
.bp-pcta__tel { background: #ef691b; color: #fff; border: 2px solid #ef691b; border-bottom-color: #c74e0d; } /* 白地→橙の塗り（9/14 渡邊さん） */
.bp-pcta__tel-ico { width: 30px; height: 30px; flex: none; display: grid; place-items: center; border-radius: 50%; background: #ef691b; color: #fff; font-size: 16px; }
.bp-pcta__tel strong { display: block; font-size: 19px; font-weight: 900; letter-spacing: -.02em; color: #fff; }
.bp-pcta__tel small { display: block; font-size: 11px; font-weight: 600; color: #fff; opacity: .92; margin-top: 2px; }
.bp-pcta__form:hover, .bp-pcta__line:hover { filter: brightness(1.06); color: #fff; }
.bp-pcta__tel:hover { background: #f57a2c; color: #fff; }
@media (max-width: 700px) {
	.bp-pcta { margin: 30px 0 6px; padding: 16px 14px; border-left-width: 5px; }
	.bp-pcta__lead strong { font-size: 17px; }
	.bp-pcta__lead span { font-size: 13px; }
	.bp-pcta__btns { grid-template-columns: 1fr; gap: 8px; }
	.bp-pcta__btns a { min-height: 54px; }
}
/* 2026-09-14 渡邊さん: 記事末尾CTAもアイコン不要・電話番号を大きく */
.bp-pcta__form svg, .bp-pcta__line img, .bp-pcta__tel-ico { display: none !important; }
@media (min-width: 701px) { .bp-pcta__btns { grid-template-columns: 1.15fr 1fr 1.25fr; } } /* スマホは元の1列のまま */
.bp-pcta__btns a { justify-content: center; text-align: center; gap: 6px; }
.bp-pcta__btns a b { margin-left: 6px; }
.bp-pcta__tel { justify-content: center; }
.bp-pcta__tel strong { font-size: 24px; }
.bp-pcta__tel small { font-size: 12px; }
@media (max-width: 700px) { .bp-pcta__tel strong { font-size: 22px; } }

/* ---- custom/price.css ---- */
/* ---- 費用の目安タブ（2026-09-12）: 一言・交換前→交換後の写真・追加費用の箇条書き。申請代行の箱はFVと重複のため削除 ---- */
.bp-price-lead { font-size: 14px; line-height: 1.7; color: #4a3b32; margin: 4px 0 6px !important; }
.cr-price-image.bp-swap { display: flex; align-items: center; justify-content: center; gap: 10px; }
.cr-price-image.bp-swap figure { margin: 0; text-align: center; }
.cr-price-image.bp-swap img { width: 110px; height: 165px; object-fit: contain; display: block; margin: 0 auto; }
.cr-price-image.bp-swap figcaption { font-size: 12px; font-weight: 700; color: #6e6258; margin-top: 4px; }
.cr-price-image.bp-swap > b { font-size: 26px; color: #ef691b; font-weight: 900; }
/* 追加費用が発生するケース: 案V1（4カード＋一言説明）2026-09-12 決定。説明文は一般則で書いたもの（クライアント確認の宿題） */
.bp-extra { margin-top: 20px; }
.bp-extra__head { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 10px; }
.bp-extra__head strong { font-size: 15px; font-weight: 800; color: #412210; }
.bp-extra__head span { font-size: 12.5px; color: #6e6258; }
.bp-extra__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.bp-extra__grid > div { background: #fffaf2; border: 1px solid #f0dcc4; border-radius: 10px; padding: 12px 12px 10px; }
.bp-extra__grid b { display: block; font-size: 14px; color: #412210; margin-bottom: 4px; }
.bp-extra__grid b::before { content: "＋"; color: #ef691b; margin-right: 4px; font-weight: 900; }
.bp-extra__grid p { font-size: 12px; line-height: 1.6; color: #6e6258; margin: 0 !important; }
@media (max-width: 700px) { .bp-extra__grid { grid-template-columns: 1fr 1fr; gap: 8px; } .bp-extra__grid > div { padding: 10px; } }
@media (max-width: 700px) {
	.cr-price-image.bp-swap img { width: 84px; height: 126px; }
	.bp-price-lead { font-size: 13px; }
}
.cr-price-image.bp-swap figcaption small { display: block; font-size: 10.5px; font-weight: 600; color: #8a7466; }

/* ---- custom/products.css ---- */
/* 2026-09-14 渡邊さん「全体的に文字が小さい」→ 各要素を1〜2px大きく */
/* ---- 商品カードのスリム化（2026-09-12 決定: 補助金バー残す・保証2行・機能はLPの一文・見出しのみ） トップ(products-top)と商品一覧(products)の両方に効く ---- */
.com-renewal .kp-product { display: flex; flex-direction: column; padding: 16px 18px 14px; }
.com-renewal .kp-product-top { align-items: flex-start; }
.com-renewal .kp-product-top img { width: 100px; height: 130px; }
.com-renewal .kp-product-top small { font-size: 14px; color: #556b7b; display: block; }
.com-renewal .kp-product-top h3 { font-size: 22px; line-height: 1.3; margin: 2px 0 0; padding: 0; border: 0; background: none; }
.com-renewal .kp-product-top h3::before, .com-renewal .kp-product-top h3::after { display: none; }
.com-renewal .kp-product-top p { font-size: 15px; margin-top: 4px; }
/* 特価品カード（ET-S370C）2026-09-12 決定: 枠は案C（左上の赤タグ・背景は白）・価格は案B（赤の点線箱） */
.com-renewal .kp-product.bp-special { position: relative; overflow: hidden; background: #fff; border-color: #f4b400; }
.com-renewal .bp-special .kp-product-top > div { padding-top: 28px; } /* タグの分は左の文字列だけ下げる（右の画像130pxより低いので行の高さは増えない＝他カードと段が揃う） */
.bp-special__tag { position: absolute; left: 0; top: 0; display: inline-flex; align-items: baseline; gap: 6px; background: #d32f2f; color: #fff; font-weight: 900; font-size: 15px; line-height: 1.2; padding: 6px 14px 6px 12px; border-radius: 0 0 10px 0; letter-spacing: .06em; }
.bp-special__tag small { font-size: 11px; font-weight: 700; color: #ffe0e0; letter-spacing: 0; }
.com-renewal .kp-product-cost .bp-special__lead { color: #b71c1c; font-weight: 800; font-size: 14px; }
.bp-special__box { background: #fff3f3; border: 1px dashed #d32f2f; border-radius: 6px; padding: 12px 10px; margin-top: 6px; } /* 他カードの価格ブロック(143px)と高さを合わせる */
.bp-special__box small { display: block; font-size: 13px; color: #556b7b; }
.com-renewal .bp-special__box strong { display: block; color: #d32f2f; font-size: 32px; line-height: 1.3; font-weight: 900; letter-spacing: -.01em; }
/* 仕様チップ: LP(.jp)の青グラデーション（.product-specs-vertical）を横並びで移植 2026-09-12 */
.com-renewal .kp-product-specs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; margin: 10px 0 8px; }
.com-renewal .kp-product-specs span { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 29px; padding: 4px 4px; color: #fff; background: linear-gradient(135deg, #31b0ea 0%, #0873c2 100%); border-radius: 7px; font-size: 13px; font-weight: 900; line-height: 1.1; white-space: nowrap; text-align: center; }
.com-renewal .kp-product-features { font-size: 14.5px; line-height: 1.7; min-height: 0; margin: 0 0 auto; color: #3f5b70; }
.com-renewal .kp-product-cost { margin-top: 12px; padding-top: 10px; }
.com-renewal .kp-product-cost p { font-size: 14px; line-height: 1.5; }
.com-renewal .kp-product-cost p b { font-size: 15px; }
/* 補助金バー: LP(.jp)の .product-subsidy-mobile（ブルー）を移植 2026-09-12 */
.com-renewal .kp-product-subsidy.bp-subsidy-bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; overflow: hidden; margin: 8px 0 6px; padding: 0; min-height: 36px; color: #245f89; background: #eef6fc; border: 1px solid #3478a6; border-radius: 7px; font-weight: 900; }
.com-renewal .bp-subsidy-bar span { display: flex; align-items: center; justify-content: center; text-align: center; min-width: 0; padding: 5px 6px; font-size: 13px; line-height: 1.15; }
.com-renewal .bp-subsidy-bar strong { display: flex; align-items: center; justify-content: center; white-space: nowrap; color: #fff; background: #2b6f9b; border-left: 1px solid #3478a6; padding: 5px 10px; font-size: 14px; font-weight: 900; line-height: 1.1; }
.com-renewal .kp-product-cost > small { font-size: 13px; margin-top: 4px; color: #556b7b; }
.com-renewal .kp-product-cost > strong { font-size: 32px; line-height: 1.3; letter-spacing: -.01em; }
.com-renewal ul.bp-warranty { list-style: none; margin: 8px 0 0; padding: 8px 0 0; border-top: 1px dashed #cddfec; font-size: 13px; line-height: 1.6; color: #556b7b; }
.com-renewal ul.bp-warranty li { padding-left: 1.2em; position: relative; }
.com-renewal ul.bp-warranty li::before { content: "✓"; position: absolute; left: 0; color: #1f7a4d; font-weight: 800; }
@media (max-width: 700px) {
	.com-renewal .kp-product { padding: 14px 14px 12px; }
	.com-renewal .kp-product-top img { width: 84px; height: 110px; }
	.com-renewal .kp-product-cost > strong { font-size: 30px; }
}

/* 「この機種で無料見積り」ボタン（2026-09-14 渡邊さん）: LPの .product-inquiry-button と同じ青。押すとフォームの「ご希望の機種」に型番が入る（form.js） */
.com-renewal .kp-product .bp-model-cta { position: relative; display: flex; align-items: center; justify-content: center; min-height: 60px; margin-top: 12px; padding: 10px 40px 10px 16px; border: 2px solid #1565c0; border-bottom: 5px solid #0d47a1; border-radius: 10px; background: #1565c0; color: #fff; font-size: 19px; /* 16→19px（9/14「文字サイズを大きく」） */ font-weight: 900; line-height: 1.3; text-decoration: none; transition: transform .18s, background-color .18s, box-shadow .18s; }
.com-renewal .kp-product .bp-model-cta::after { content: "›"; position: absolute; right: 16px; top: 50%; transform: translateY(-54%); color: #f0c84b; font: 900 28px/1 Arial, sans-serif; }
.com-renewal .kp-product .bp-model-cta:hover { background: #1976d2; border-color: #1976d2; border-bottom-color: #0d47a1; color: #fff; transform: translateY(-2px); box-shadow: 0 10px 20px rgba(13, 71, 161, .23); }
@media (max-width: 700px) { .com-renewal .kp-product .bp-model-cta { min-height: 54px; font-size: 17px; } } /* 15→17px */
/* スマホの「もっと見る（残り○台）」ボタン: LPと同じ茶のグラデーション＋白文字（2026-09-14 渡邊さん・LP #products .maker-products-toggle と同じ） */
.com-renewal .kp-products-more { background: linear-gradient(145deg, #7a5a48 0%, #5f4334 55%, #472d20 100%); color: #fff; border: 1px solid #4a2f22; border-radius: 999px; box-shadow: 0 4px 0 #2f1c12, 0 8px 18px rgba(45, 26, 16, .2); font-weight: 900; width: calc(100% - 24px); max-width: 360px; margin: 0 auto 16px; display: block; }
.com-renewal .kp-products-more:hover, .com-renewal .kp-products-more:active { background: linear-gradient(145deg, #87675a 0%, #6b4d3d 55%, #523628 100%); color: #fff; }

/* スマホの仕様チップ: 4列だと6文字以上（ウルトラ高圧・シンプルオート・省電力モード）が見切れる → 2列×2段に（2026-09-14 渡邊さん） */
@media (max-width: 700px) {
	.com-renewal .kp-product-specs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
	.com-renewal .kp-product-specs span { font-size: 13px; padding: 5px 6px; min-height: 30px; }
}

/* ---- custom/set-lp.css ---- */
/* ---- 住宅設備もまとめて交換 — LP #set のCSS（2026-09-14 公開版）を #com-set に移植。正本はLP。LPに残っていた旧 .com-set ルールは除外 ---- */
#com-set { --brown:#604d40; --brown-dark:#412210; --ink:#2d241d; --muted:#6e6258; --orange:#ef691b; --orange-dark:#c74e0d; --border:#eadfce; --web-blue:#1565c0; --web-blue-dark:#0d47a1; --web-blue-hover:#1976d2; --gold:#dfb345; --cream:#fffaf0; color:#2d241d; }
#com-set { background:linear-gradient(#fff 0%,#f4f9fc 48%,#fff 100%) }
#com-set .section-head>p { letter-spacing:.08em;font-size:clamp(22px,2.2vw,28px) }
#com-set .set-offer { background:linear-gradient(110deg,#edf7fc,#fff);border:1px solid #c9deeb;border-radius:20px;grid-template-columns:74px 1fr;align-items:center;gap:22px;margin-bottom:30px;padding:20px 34px;display:grid;box-shadow:0 14px 34px #2d658914 }
#com-set .set-offer>div { background:#fff;border-radius:50%;place-items:center;width:74px;height:74px;display:grid }
#com-set .set-offer img { width:47px;height:auto }
#com-set .set-offer p { margin:0 }
#com-set .set-offer span { color:#286b93;margin-bottom:2px;font-size:16px;font-weight:900;display:block }
#com-set .set-offer strong { color:var(--brown-dark);font-size:28px;display:block }
#com-set .set-carousel-controls { display:none }
#com-set .set-grid { grid-template-columns:repeat(2,1fr);gap:22px;display:grid }
#com-set .set-card { background:#fff;border:1px solid #cddfe9;border-radius:21px;overflow:hidden;box-shadow:0 14px 35px #2d4f6614 }
#com-set .set-card>header { color:#1f6188;background:#eaf5fb;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:12px 20px;display:flex }
#com-set .set-card>header span { font-size:18px;font-weight:900 }
#com-set .set-card>header small { font-size:13px;font-weight:900 }
#com-set .set-card-media { aspect-ratio:7/5;background:#fff;border:1px solid #e6edf1;border-radius:13px;width:calc(100% - 46px);margin:20px 23px 0;position:relative;overflow:hidden }
#com-set .set-card-media img { object-position:center;max-width:none;position:absolute;inset:16px;object-fit:contain!important;width:calc(100% - 32px)!important;height:calc(100% - 32px)!important }
#com-set .set-card-body { padding:16px 23px 24px }
#com-set .set-tags { flex-wrap:wrap;gap:7px;display:flex }
#com-set .set-tags span { color:#75520b;background:#fff1bd;border-radius:99px;padding:5px 10px;font-size:13px;font-weight:900 }
#com-set .set-card h3 { color:var(--brown-dark);margin:15px 0 4px;font-size:23px }
#com-set .set-model { color:var(--muted);font:800 18px Arial,sans-serif }
#com-set .set-regular { min-height:112px;color:var(--muted);background:0 0;border:0;border-radius:0;grid-template-columns:auto 1fr;align-items:center;column-gap:18px;margin-top:17px;padding:16px 0 0;display:grid;position:relative }
#com-set .set-regular.has-regular-price:after { display:none }
#com-set .set-regular>span { color:#fff;white-space:nowrap;background:#58483f;border-radius:99px;padding:8px 14px;font-size:16px;font-weight:900;line-height:1;box-shadow:0 3px #402e2521 }
#com-set .set-regular-price { color:var(--brown-dark);letter-spacing:-.045em;white-space:nowrap;justify-self:start;font:900 clamp(35px,3.2vw,43px)/1 Arial Black,Arial,sans-serif;position:relative }
#com-set .set-price-yen { letter-spacing:0;margin-left:2px;font-family:system-ui,sans-serif;font-size:.48em;font-weight:900 }
#com-set .set-regular-price small { color:var(--muted);letter-spacing:0;margin-left:5px;font:800 11px system-ui,sans-serif }
#com-set .set-open-price { color:var(--brown);font-size:30px }
#com-set .set-regular p { border-top:1px dashed #d7dfe3;grid-column:1/-1;margin:8px 0 0;padding-top:8px;font-size:13px;line-height:1.5 }
#com-set .set-price { min-height:132px;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-rows:auto auto;grid-template-columns:92px minmax(0,1fr);align-items:center;column-gap:16px;margin-top:18px;padding:16px 0;display:grid;overflow:visible }
#com-set .set-deal-medal { color:#fff;text-align:center;background:radial-gradient(circle at 34% 25%,#34bd83 0%,#07975e 42%,#006f4c 100%);border:3px solid #087c4e;border-radius:50%;flex-direction:column;grid-area:1/1/span 2;justify-content:center;place-self:center start;align-items:center;width:92px;height:92px;line-height:1;display:flex;position:relative;box-shadow:inset 0 0 0 1px #00462b52,inset 0 5px 8px #fff3,inset 0 -6px 9px #00462b33,0 4px 9px #00523129 }
#com-set .set-deal-medal:before { content:"";border:1px solid #dcffec9e;border-radius:50%;position:absolute;inset:4px }
#com-set .set-deal-medal small { color:#fff;letter-spacing:.02em;text-shadow:0 1px #00462b80;font-size:12px;font-weight:900 }
#com-set .set-deal-medal strong { color:#fff;letter-spacing:.04em;text-shadow:0 1px #00462b8c;margin-top:5px;font-size:22px;font-weight:950 }
#com-set .set-price-label { color:#087c4e;letter-spacing:-.025em;white-space:nowrap;background:linear-gradient(#0000 62%,#ffe28a 62% 94%,#0000 94%);grid-area:1/2;place-self:end;width:fit-content;padding-top:8px;font-size:clamp(19px,1.75vw,23px);font-weight:900;line-height:1.15 }
#com-set .set-price>strong { color:#ed4319;letter-spacing:-.045em;text-align:right;white-space:nowrap;grid-area:2/2;justify-content:flex-end;place-self:start end;align-items:baseline;min-width:0;margin-top:3px;padding:0;font:900 46px/1.12 Arial Black,Arial,sans-serif;display:flex }
#com-set .set-price>strong .set-price-yen { margin-top:0 }
#com-set .set-price>strong small { color:#60554d;letter-spacing:0;margin:0 0 0 5px;font:800 11px system-ui,sans-serif }
#com-set .set-card-body>a { color:#27688f;border:2px solid #2f7199;border-radius:10px;place-items:center;min-height:62px;margin-top:14px;font-size:20px;font-weight:900;display:grid }
#com-set .set-card-body>a.product-inquiry-button { border-color:var(--web-blue);border-bottom:5px solid var(--web-blue-dark);background:var(--web-blue);color:#fff;box-shadow:0 7px 16px #0d47a12e }
#com-set .set-card-body>a.product-inquiry-button:after { font-size:26px;right:13px }
#com-set .set-card-body>a.product-inquiry-button:hover { border-color:var(--web-blue-hover);border-bottom-color:var(--web-blue-dark);background:var(--web-blue-hover);color:#fff;box-shadow:0 10px 20px #0d47a13b }
#com-set .set-note { color:var(--muted);margin:24px 0 0;font-size:14px;line-height:1.75 }
#com-set .set-price-disclaimer { color:#8d8178;text-align:center;margin:13px 0 0;font-size:10px;line-height:1.5 }
#com-set .set-price .set-price-suffix { font-family: system-ui, sans-serif; font-size: .48em; font-weight: 900; letter-spacing: 0; margin-left: 1px; }
@media (max-width: 760px) {
	#com-set .set-grid { grid-template-columns:1fr;gap:16px }
	#com-set .set-offer { border-radius:16px;grid-template-columns:58px 1fr;gap:13px;padding:17px }
	#com-set .set-offer>div { width:58px;height:58px }
	#com-set .set-offer img { width:38px }
	#com-set .set-offer span { font-size:13px }
	#com-set .set-offer strong { font-size:20px;line-height:1.45 }
	#com-set .set-products-carousel { position:relative }
	#com-set .set-carousel-controls { justify-content:center;align-items:center;min-height:44px;margin:0 0 10px;display:flex }
	#com-set .set-carousel-controls>button { z-index:7;color:#fff;background:#28719b;border:0;border-radius:50%;place-items:center;width:46px;height:46px;font:950 32px/1 Arial,sans-serif;display:grid;position:absolute;top:calc(50% + 22px);transform:translateY(-50%);box-shadow:0 5px 12px #28719b3b }
	#com-set .set-carousel-controls>button:first-child { left:-7px }
	#com-set .set-carousel-controls>button:last-child { right:-7px }
	#com-set .set-carousel-controls>button:disabled { color:#92a3ab;box-shadow:none;background:#d6e1e6 }
	#com-set .set-carousel-controls>button:focus-visible { outline-offset:2px;outline:3px solid #28719b4d }
	#com-set .set-carousel-status { color:#356b87;align-items:center;gap:10px;display:flex }
	#com-set .set-carousel-status>strong { font-size:16px }
	#com-set .set-carousel-status>strong small { font-size:11px }
	#com-set .set-carousel-status>span { gap:5px;display:flex }
	#com-set .set-carousel-status>span button { background:#cbdce5;border:0;border-radius:50%;width:8px;height:8px;padding:0 }
	#com-set .set-carousel-status>span button.is-active { background:#28719b;border-radius:99px;width:20px }
	#com-set .set-grid { scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;gap:12px;margin-inline:-18px;padding-inline:18px;scroll-padding-inline:18px;display:flex;overflow-x:auto }
	#com-set .set-grid::-webkit-scrollbar { display:none }
	#com-set .set-grid>article { scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0 }
	#com-set .set-card>header { min-height:50px;padding:9px 15px }
	#com-set .set-card>header span { font-size:17px }
	#com-set .set-card>header small { font-size:11px }
	#com-set .set-card-media { aspect-ratio:16/9;width:calc(100% - 28px);margin:12px 14px 0 }
	#com-set .set-card-media img { inset:10px;width:calc(100% - 20px)!important;height:calc(100% - 20px)!important }
	#com-set .set-card-body { padding:11px 15px 15px }
	#com-set .set-tags { gap:4px }
	#com-set .set-tags span { padding:4px 7px;font-size:11px }
	#com-set .set-card h3 { margin-top:10px;font-size:20px }
	#com-set .set-model { font-size:16px }
	#com-set .set-regular { column-gap:10px;min-height:84px;margin-top:12px;padding:8px 0 0 }
	#com-set .set-regular>span { padding:7px 10px;font-size:13px }
	#com-set .set-regular-price { font-size:34px }
	#com-set .set-open-price { font-size:23px }
	#com-set .set-regular p { margin-top:5px;padding-top:5px;font-size:11px }
	#com-set .set-price { grid-template-columns:68px minmax(0,1fr);column-gap:10px;min-height:90px;margin-top:10px;padding:8px 0 }
	#com-set .set-deal-medal { border-width:3px;width:68px;height:68px }
	#com-set .set-deal-medal:before { inset:3px }
	#com-set .set-deal-medal small { font-size:9px }
	#com-set .set-deal-medal strong { margin-top:4px;font-size:18px }
	#com-set .set-price-label { letter-spacing:-.045em;padding-top:7px;font-size:clamp(12px,3.6vw,15px) }
	#com-set .set-price>strong { padding:0;font-size:clamp(29px,8.8vw,36px) }
	#com-set .set-price>strong small { margin-left:3px;font-size:11px }
	#com-set .set-card-body>a { min-height:56px;margin-top:10px;font-size:18px }
	#com-set .set-note { font-size:13px }
	#com-set .section-head>p { letter-spacing:.045em;font-size:21px;line-height:1.45 }
}
@media (min-width: 761px) and (max-width: 1100px) {
	#com-set .set-grid { grid-template-columns:repeat(2,1fr) }
}
/* 抽出漏れ分: 見出し・案内文のPC/SP出し分け、スワイプ案内、区画の余白。旧GPT版(.com-set)の指定を打ち消す */
#com-set .set-title-sp, #com-set .set-offer-copy-sp { display: none; }
#com-set .com-set-swipe { display: none; }
#com-set .container { width: 100%; max-width: none; }
#com-set.com-set { margin: 40px 0; padding: 36px 28px; border-radius: 16px; }
#com-set .set-card > header { background: #eaf5fb; color: #1f6188; }
#com-set .set-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
@media (min-width: 761px) and (max-width: 1100px) { #com-set .set-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) {
	#com-set .set-title-pc, #com-set .set-offer-copy-pc { display: none; }
	#com-set .set-title-sp, #com-set .set-offer-copy-sp { display: inline; }
	#com-set .com-set-swipe { display: block; text-align: right; font-size: 12px; color: #356b87; margin: 0 0 8px; }
	#com-set.com-set { margin: 26px 0; padding: 22px 18px; }
	#com-set .set-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; }
	#com-set .set-grid > article { flex: 0 0 100%; scroll-snap-align: start; }
}

/* ---- lp-design.css 由来（#set …）: 価格ブロック .set-cost 系・PC/SP出し分け・9/14微調整。スタック式で取り直し 2026-09-14 ---- */
@media(min-width:701px) {
	#com-set .section-head>p { font-size:30px;font-weight:800;line-height:1.4;letter-spacing:.055em;margin:0 0 18px }
	#com-set .section-head h2 { font-size:clamp(28px,2.5vw,36px);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:0 }
}
#com-set .section-head { text-align:center }
#com-set .section-head h2>br { display:none }
#com-set .set-offer .set-offer-copy-sp { display:none }
#com-set .set-offer strong>span { font:inherit;color:inherit;letter-spacing:inherit;margin:0 }
#com-set .set-title-sp { display:none }
#com-set .set-cost { border-top:1px solid #c9dfea;padding-top:16px;margin-top:18px;color:#294f67;text-align:left }
#com-set .set-cost-total { margin:0;font-size:17px;line-height:1.6 }
#com-set .set-cost-total>strong { font-size:20px;white-space:nowrap }
#com-set .set-cost-total small { font:600 11px/1.4 system-ui,sans-serif;margin-left:4px;color:#536c7c }
#com-set .set-cost-breakdown { font-size:12px;line-height:1.5;color:#758996;margin:5px 0 0 }
#com-set .set-cost-payment-row { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:14px }
#com-set .set-cost-label { background:#e96319;color:#fff;border-radius:6px;padding:7px 10px;font-size:16px;font-weight:400;line-height:1.5 }
#com-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 }
#com-set .set-cost-payment>span { font-family:system-ui,sans-serif;font-size:.48em;font-weight:900;letter-spacing:0;margin-left:2px }
#com-set .set-cost-payment>small { color:#60554d;font:800 11px/1.4 system-ui,sans-serif;margin-left:3px }
#com-set .set-card-body>a.product-inquiry-button { margin-top:20px }
#com-set .set-cost-breakdown { font-size:14px }
#com-set .lp-new-hero .kh-notes, #com-set #subsidy .kp-grant-caution, #com-set #hybrid .hybrid-source, #com-set #hybrid .hybrid-resilience-note, #com-set #gas .gas-price>p, #com-set .set-note, #com-set #flow .flow-warranty-note, #com-set #contact .contact-privacy-note { font-size:14px;color:#4d3b30;font-weight:400;line-height:1.7 }
@media(max-width:700px) {
	#com-set .section-head>p { font-size:18px;font-weight:800;line-height:1.35;margin:0 0 6px }
	#com-set .section-head h2 { font-weight:500;line-height:1.35;letter-spacing:-.035em;margin-top:0 }
	#com-set .set-offer>p>span { font-size:18px;line-height:1.4 }
	#com-set .set-offer .set-offer-copy-pc { display:none }
	#com-set .set-offer .set-offer-copy-sp { display:inline }
	#com-set .set-title-pc { display:none }
	#com-set .set-title-sp { display:inline }
	#com-set .set-offer>p>span { display:none }
	#com-set>.container>.section-head { margin-bottom:18px }
	#com-set .set-offer { grid-template-columns:46px minmax(0,1fr);gap:10px;padding:11px 14px;margin-bottom:18px;border-radius:14px }
	#com-set .set-offer>div { width:46px;height:46px }
	#com-set .set-offer img { width:30px;height:auto }
}
@media(max-width:760px) {
	#com-set .set-cost { padding-top:12px;margin-top:12px }
	#com-set .set-cost-total { font-size:13px }
	#com-set .set-cost-total>strong { font-size:17px }
	#com-set .set-cost-payment-row { gap:6px;margin-top:10px }
	#com-set .set-cost-label { font-size:11px;padding:5px 7px;border-radius:5px }
	#com-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 }
	#com-set .set-cost-payment>small { font-size:9px }
	#com-set .set-card-body>a.product-inquiry-button { margin-top:16px }
}
@media (max-width: 760px) {
	#com-set .set-cost-payment small { font-size:11px }
	#com-set .lp-new-hero .kh-notes, #com-set #subsidy .kp-grant-caution, #com-set #hybrid .hybrid-source, #com-set #hybrid .hybrid-resilience-note, #com-set #gas .gas-price>p, #com-set .set-note, #com-set #flow .flow-warranty-note, #com-set #contact .contact-privacy-note { font-size:12px }
}
/* 出し分けは他の display 指定に負けないよう !important */
#com-set .set-title-sp, #com-set .set-offer .set-offer-copy-sp { display: none !important; }
@media (max-width: 760px) { #com-set .set-title-pc, #com-set .set-offer .set-offer-copy-pc { display: none !important; } #com-set .set-title-sp, #com-set .set-offer .set-offer-copy-sp { display: inline !important; } }
/* スマホの見出し「エコキュートと一緒なら、住宅設備もお得に交換。」を他セクションと同じ 20px に（渡邊さん 9/14。LPは 22px のまま） */
@media (max-width: 700px) { #com-set .section-head h2 { font-size: 20px; line-height: 1.45; } }

/* ---- custom/social.css ---- */
/* ---- Googleレビュー・Instagram カード（GPT確定版 2026-09-12 を整理したもの） ---- */
.bp-social { color: #503827; display: block; } /* .cr-section の display:grid（justify-content 付き）だと中身が最小幅に縮むので block に */
.bp-social .social-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; width: 100%; min-width: 0; } /* 親の .cr-section が display:grid なので幅を明示（でないと最小幅に縮む） */
.bp-social .social-card { position: relative; overflow: hidden; display: flex; align-items: center; gap: 22px; min-height: 0; padding: 20px 24px; border: 1px solid #e6ded2; border-bottom: 3px solid #8db7e3; border-radius: 20px; color: inherit; text-decoration: none; background: linear-gradient(110deg, #fff 12%, #e7f1fc 100%); box-shadow: 0 7px 22px rgba(80, 56, 39, .03); transition: transform .2s, box-shadow .2s; }
.bp-social .social-card.instagram { background: linear-gradient(110deg, #fff 12%, #ffe7de 100%); border-bottom-color: #e6aca1; }
.bp-social .social-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(80, 56, 39, .07); color: inherit; }
.bp-social .social-card:focus-visible { outline: 3px solid #2674c8; outline-offset: 4px; }
.bp-social .social-card::before { content: ""; position: absolute; top: 0; left: 24px; width: 48px; height: 4px; border-radius: 0 0 4px 4px; background: #80aeda; }
.bp-social .social-card.instagram::before { background: linear-gradient(90deg, #edb371, #d781a6); }
.bp-social .social-copy { position: relative; z-index: 1; flex: 1; min-width: 0; }
.bp-social .social-copy small { display: block; font-size: 13px; font-weight: 650; letter-spacing: .04em; margin-bottom: 7px; color: #776b61; }
.bp-social .social-title { display: flex; align-items: center; gap: 12px; margin-top: 6px; }
.bp-social .social-icon { width: 44px; height: 44px; flex-shrink: 0; border-radius: 14px; display: grid; place-items: center; background: #fff; border: 1px solid #dbe8f5; box-shadow: 0 3px 10px rgba(80, 56, 39, .035); color: #377ac5; transform: rotate(-5deg); }
.bp-social .instagram .social-icon { border-color: #f0d5cb; color: #c7646d; transform: rotate(5deg); }
.bp-social .social-icon svg { width: 29px; height: 29px; transform: rotate(5deg); }
.bp-social .instagram .social-icon svg { transform: rotate(-5deg); }
.bp-social .social-copy .social-title strong { display: block; font-size: 28px; line-height: 1.35; letter-spacing: .015em; }
.bp-social .social-copy p { margin: 9px 0 0; font-size: 15px; line-height: 1.65; color: #786a5f; }
@media (min-width: 1100px) { .bp-social .social-copy p { white-space: nowrap; } } /* 1,200px幅では一段。狭いPCでは折り返す */
.bp-social .social-link { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: 180px; margin-top: 15px; padding: 8px 22px; border-radius: 30px; font-size: 13px; font-weight: 700; line-height: 1.5; color: #3075bc; background: #edf4fc; border: 1px solid #d5e4f4; }
.bp-social .instagram .social-link { color: #b65b65; background: #fff0ed; border-color: #efd5cf; }
.bp-social .social-link b { font-size: 18px; font-weight: 400; }
.bp-social .social-qr { position: relative; z-index: 1; flex: 0 0 152px; text-align: center; background: #fff; padding: 7px 7px 9px; border: 1px solid #e8e2dc; border-radius: 12px; box-shadow: 0 3px 10px rgba(80, 56, 39, .02); }
.bp-social .qr-crop { display: block; width: 136px; height: 136px; margin: 0 auto; overflow: hidden; background: #fff; border-radius: 6px; }
.bp-social .qr-crop img { display: block; width: 100%; height: 100%; object-fit: contain; }
.bp-social .social-qr small { display: block; font-size: 10px; color: #8b7b6c; margin-top: 5px; letter-spacing: .02em; }
@media (max-width: 700px) {
	.bp-social .social-grid { gap: 12px; }
	.bp-social .social-card { flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px 14px; border-radius: 15px; }
	.bp-social .social-card::before { left: 15px; width: 38px; }
	.bp-social .social-copy small { font-size: 11px; margin-bottom: 5px; letter-spacing: 0; }
	.bp-social .social-title { gap: 5px; }
	.bp-social .social-icon { width: 23px; height: 23px; border-radius: 8px; }
	.bp-social .social-icon svg { width: 17px; height: 17px; }
	.bp-social .social-copy .social-title strong { font-size: 15px; white-space: nowrap; letter-spacing: 0; }
	.bp-social .social-copy p { font-size: 13px; margin-top: 8px; white-space: normal; }
	.bp-social .social-link { width: 100%; min-width: 0; margin-top: 12px; padding: 5px 10px; font-size: 12px; gap: 6px; }
	.bp-social .social-qr { display: none; } /* スマホはQRなし（GPT確定版の仕様） */
	#com-social-cards.bp-social { display: block !important; gap: 0 !important; } /* GPT見本の旧カラム用 #com-social-cards{display:grid} を打ち消す */
}
/* 口コミ／Instagram の上下の区切り線を無くす（渡邊さん 9/14）: 上＝FAQ区画の .cr-section border-bottom、下＝この区画の border-bottom */
#com-faq.cr-section, #com-social-cards.cr-section { border-bottom: 0; }

/* ---- custom/speed.css ---- */
/* ---- 緊急枠「お湯が出なくてお困りの方へ」— LP #speed をそのまま移植 2026-09-14（渡邊さん決定「LPのまま」）。正本はLP ---- */
#com-speed, #subsidy, #price, #products, #cases, #reasons, #flow, #faq, #contact { scroll-margin-top:86px }
.speed-section { color:var(--brown-dark);background:linear-gradient(128deg,#eef8fb 0%,#f5fbfc 58%,#fff9e9 100%) }
.speed-layout { max-width:1040px }
.speed-heading { justify-content:center;align-items:center;gap:38px;margin:0 auto 38px;display:flex }
.speed-heading>div { min-width:0 }
.speed-heading>img { filter:drop-shadow(0 12px 14px #3d5c6221);flex:none;width:112px;height:auto }
.speed-section h2 { color:var(--brown-dark) }
.speed-section .section-label { color:#247ca7;letter-spacing:.065em;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 58%,#ffe06c 58% 92%,#0000 92%);width:fit-content;margin-bottom:16px;padding:0 .12em .08em;font-size:30px }
.speed-emergency-card { background:#ffffffe6;border:1px solid #cce4ed;border-radius:24px;width:min(980px,100%);margin:0 auto;padding:20px 22px 24px;box-shadow:0 14px 34px #265f7417 }
.speed-reception { grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:28px;display:grid }
.speed-reception .mock-photo-phone { aspect-ratio:16/9 }
.speed-reception .mock-photo-phone>img { object-position:50% 18% }
.speed-reception>div { padding-right:18px }
.speed-reception>div>span { color:#247ca7;letter-spacing:.035em;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 58%,#ffe06c 58% 92%,#0000 92%);padding:0 .08em .08em;font-size:22px;font-weight:950 }
.speed-reception>div>strong { color:var(--brown-dark);margin:8px 0 6px;font-size:19px;line-height:1.45;display:block }
.speed-reception>div>p { color:var(--muted);margin:0;font-size:16px;font-weight:700;line-height:1.65 }
.speed-proof-list { grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid }
.speed-proof-list li { min-height:72px;color:var(--brown);text-align:center;background:#eef8fb;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;padding:12px 16px;display:flex }
.speed-proof-list small { color:#497783;font-size:13px;font-weight:850 }
.speed-proof-list strong { color:#247ca7;margin-top:2px;font-size:21px;font-weight:950 }
.speed-area { background:#ffffffd6;border-left:6px solid #2d86b0;width:min(980px,100%);margin:38px auto 0;padding:26px 32px }
.speed-area strong { color:#247ca7;font-size:21px }
.speed-area p { color:var(--muted);margin:8px 0 0;font-size:18px;line-height:1.7 }
.speed-section .speed-fv-phone { width:min(760px,100%);margin:20px auto 0 }
.speed-online-hours { color:#53757e;justify-content:center;gap:10px;margin:12px 0 0;font-size:14px;font-weight:800;display:flex }
.speed-online-hours strong { color:#247ca7 }
@media (width>=761px) {
	.speed-section h2 { white-space:nowrap;font-size:clamp(34px,3vw,40px) }
}
@media (width>=1001px) {
	.speed-reception>div>strong { white-space:nowrap;font-size:19px }
}
@media (width<=760px) {
	.sticky-phone-number, .speed-section .speed-fv-phone strong { letter-spacing:-.035em;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:950 }
	.speed-layout { text-align:left }
	.speed-heading { grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 64px;align-items:stretch;gap:13px 12px;margin-bottom:28px;display:grid }
	.speed-heading>div { display:contents }
	.speed-heading>img { object-fit:contain;grid-area:2/2;place-self:stretch end;width:64px;height:100%;max-height:88px }
	.speed-section .section-label { letter-spacing:.035em;white-space:nowrap;grid-area:1/1/auto/-1;margin:0;font-size:clamp(19px,5.9vw,23px);line-height:1.4 }
	.speed-section h2 { grid-area:2/1;font-size:29px;line-height:1.42 }
	.speed-emergency-card { border-radius:18px;padding:12px 12px 16px }
	.speed-reception { grid-template-columns:72px minmax(0,1fr);align-items:center;gap:9px }
	.speed-reception .mock-photo-phone { aspect-ratio:1;border-radius:13px }
	.speed-reception .mock-photo-phone>img { object-position:50% 30%;transform-origin:50% 30%;transform:scale(1.35) }
	.speed-reception>div { padding-right:2px }
	.speed-reception>div>span { letter-spacing:.01em;padding-inline:.04em;font-size:16px }
	.speed-reception>div>strong { letter-spacing:-.06em;white-space:nowrap;margin:5px 0 4px;font-size:clamp(10px,3.1vw,12px);line-height:1.4 }
	.speed-reception>div>p { font-size:12px;line-height:1.55 }
	.speed-proof-list { gap:6px;margin-top:12px }
	.speed-proof-list li { border-radius:10px;min-height:64px;padding:8px 5px }
	.speed-proof-list small { font-size:9px;line-height:1.35 }
	.speed-proof-list strong { font-size:14px;line-height:1.35 }
	.speed-area { margin-top:30px;padding:21px 20px }
	.speed-area strong { font-size:19px }
	.speed-area p { font-size:16px }
	.speed-section .speed-fv-phone { grid-template-columns:46px minmax(0,1fr);margin-top:14px;padding-right:20px }
	.speed-section .speed-fv-phone>i { display:none }
	.speed-online-hours { gap:7px;margin-top:9px;font-size:11px }
}

/* ---- LP lp-design.css の #speed 向けルールを全件移植（2026-09-14 渡邊さん「LP参照して再現」。抽出: scratchpad/extract_speed.py・順序そのまま・#speed→#com-speed・`body main`→`body`）。オペレーター案内のマーカー消し（background:none）もここ ---- */
#com-speed .kp-speed-title-sp { display:none }
@media(max-width:700px) {
	#com-speed .speed-heading>img { display:none }
	#com-speed .speed-heading { display:block }
	#com-speed .speed-heading>div { width:100%;container-type:inline-size }
	#com-speed .speed-heading h2 { font-size:18px;line-height:1.5;letter-spacing:-.035em;white-space:nowrap }
	#com-speed .kp-speed-title-pc { display:none }
	#com-speed .kp-speed-title-sp { display:inline }
	@supports(font-size:1cqi) {
		#com-speed .speed-heading h2 { font-size:min(20px,5cqi) }
	}
}
#com-speed .speed-reception>div>span { background:none }
@media(max-width:700px) {
	#com-speed .speed-area { display:flex;align-items:center;gap:8px;padding:10px 9px }
	#com-speed .speed-area>strong { font-size:12px;line-height:1.5;white-space:nowrap;margin:0;flex-shrink:0 }
	#com-speed .speed-area>p { font-size:11px;line-height:1.5;white-space:nowrap;margin:0;letter-spacing:0 }
}
@media(max-width:700px) {
	#com-speed .speed-area>strong { font-size:13px }
	#com-speed .speed-area>p { font-size:12px }
}
@media(max-width:700px) {
	#com-speed .speed-heading h2 { font-weight:700 }
}
@media(max-width:700px) {
	#com-speed .speed-heading .section-label { font-size:18px;font-weight:800;line-height:1.45;letter-spacing:.035em;color:var(--orange-dark) }
	#com-speed .speed-heading h2 { font-size:18px;font-weight:500;line-height:1.5;letter-spacing:-.035em }
	@supports(font-size:1cqi) {
		#com-speed .speed-heading h2 { font-size:min(20px,5cqi) }
	}
}
@media(max-width:700px) {
	#com-speed .speed-heading .section-label { color:var(--web-blue,#1565c0) }
}
@media(min-width:701px) {
	#com-speed .speed-layout { max-width:1120px }
	#com-speed .speed-emergency-card { width:100% }
}
@media(min-width:701px) {
	#com-speed .speed-reception>div>span { font-size:26px }
}
#com-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 }
#com-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 }
#com-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) {
	#com-speed .speed-area { gap:8px;padding:10px 8px;margin-top:20px;border-radius:8px }
	#com-speed .speed-area>strong { padding:5px 7px;font-size:12px }
	#com-speed .speed-area>p { font-size:12px;letter-spacing:-.025em;white-space:nowrap }
}
@media(max-width:700px) {
	#com-speed .speed-area { gap:6px }
	#com-speed .speed-area>strong { font-size:11px;padding-inline:6px }
	#com-speed .speed-area>p { font-size:clamp(10px,2.82vw,12px) }
}
#com-speed .speed-emergency-card { padding-top:30px;padding-bottom:30px }
#com-speed .speed-proof-list { margin-top:28px;gap:14px }
#com-speed .speed-fv-phone { margin-top:28px }
#com-speed .speed-reception>div>strong { margin-top:12px;margin-bottom:10px }
@media(max-width:700px) {
	#com-speed .speed-emergency-card { padding-top:20px;padding-bottom:22px }
	#com-speed .speed-proof-list { margin-top:20px;gap:8px }
	#com-speed .speed-fv-phone { margin-top:20px }
	#com-speed .speed-reception>div>strong { margin-top:8px;margin-bottom:7px }
}
@media(min-width:701px) {
	#com-speed { padding-top:120px;padding-bottom:120px }
}
@media(min-width:701px) {
	#com-speed { padding-top:var(--lp-section-space);padding-bottom:var(--lp-section-space) }
}
#com-speed .speed-area>strong { font-size:17px;font-weight:800;line-height:1.5;letter-spacing:0;padding:8px 20px;border-radius:6px }
#com-speed .speed-area>p { font-size:20px;font-weight:650;line-height:1.6;letter-spacing:.035em;margin:0 }
@media(max-width:700px) {
	#com-speed .speed-area>strong { font-size:11px;padding:5px 6px }
	#com-speed .speed-area>p { font-size:clamp(10px,2.82vw,12px);letter-spacing:-.025em;line-height:1.5 }
}
@media(max-width:700px) {
	#com-speed { padding-top:56px;padding-bottom:56px }
}
@media(max-width:700px) {
	body #com-speed .speed-heading .section-label { margin-top:0;margin-bottom:6px;line-height:1.35; }
	body #com-speed .speed-heading h2 { margin-top:0;line-height:1.35; }
}
body #com-speed .speed-heading .section-label { color:#247ca7; }
#com-speed .speed-reception>div>p { color:var(--brown-dark);font-size:19px;line-height:1.45 }
@media(max-width:760px) {
	#com-speed .speed-reception>div>p { font-size:clamp(10px,3.1vw,12px);line-height:1.4 }
}
@media(max-width:700px) {
	body #com-speed .speed-heading h2 { font-size:min(19px,4.65vw) }
	#com-speed .speed-reception>div>strong { white-space:normal;font-size:clamp(10px,3.1vw,12px);line-height:1.4 }
}
@media (width<=760px) {
	#com-speed .speed-reception>div>strong, #com-speed .speed-reception>div>p { display:inline;margin:0;font-size:13px;line-height:1.45;white-space:normal;letter-spacing:0 }
	#com-speed .speed-reception>div>span { display:block;margin-bottom:6px;line-height:1.4 }
	#com-speed .speed-reception>div { line-height:19px }
}
@media (width<=760px) {
	#com-speed .speed-proof-list li small { font-size:11px }
	#com-speed .speed-area>p { font-size:12px }
}
@media (min-width:761px) {
	#com-speed .speed-reception>div>strong, #com-speed .speed-reception>div>p { font-size:21px }
}

/* ---- .com 側の調整（LP移植分より後ろに置いて勝たせる） ---- */
/* 区画の余白は他セクションに合わせる（LPは PC 120px・--lp-section-space は .com 未定義） */
#com-speed.cr-section { padding: 44px 0 36px; } /* 背景は LP のブルー系グラデーション（.speed-section）のまま。クリーム #fffaf0 への上書きは 9/14 渡邊さん「実機で見るとベージュになる」で撤回 */
@media (max-width: 700px) { #com-speed.cr-section { padding: 28px 0 22px; } }
#com-speed .sp-only { display: none; }
/* 幅を .com の他セクション（1,200px枠）に揃える（渡邊さん 9/14）。LPの container 1120 / speed-layout 1120 より後勝ち */
#com-speed.bp-lp .container { width: min(1200px, 100%); max-width: 1200px; padding-left: 24px; padding-right: 24px; }
#com-speed .speed-layout { max-width: none; }
/* スマホは LP と同じ左右18px（LP .section{padding:72px 18px}）。24px だと実績3項目の1枠が LP 104px→101px に縮み「現地調査・お見積り」が1文字折れる（渡邊さん 9/14） */
@media (max-width: 760px) { #com-speed.bp-lp .container { padding-left: 18px; padding-right: 18px; } }
#com-speed .speed-emergency-card, #com-speed .speed-area, #com-speed .speed-fv-phone { width: 100%; max-width: none; }
#com-speed .speed-fv-phone { width: min(900px, 100%); }
/* スマホの見出し: LPは包みの div が display:contents のままで cqi/vw が画面幅基準になり、.com の枠（左右24px）では 390px で数px はみ出す。
   .com は div を block にして枠幅基準の 5cqi（上限は LP と同じ 19px）で必ず1行に収める（2026-09-14） */
@media (max-width: 700px) {
	#com-speed .speed-heading > div { display: block; width: 100%; container-type: inline-size; }
	body #com-speed .speed-heading h2 { font-size: 18px; white-space: nowrap; }
	@supports (font-size: 1cqi) { body #com-speed .speed-heading h2 { font-size: min(19px, 5cqi); } }
}

/* ---- custom/staff.css ---- */
/* ---- 選ばれる理由（スタッフ4人＋理由3つ）— LP #reasons の実測値（2026-09-13）を .com 向けに肉抜き ---- */
.bp-staff-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.bp-staff { background: #fff; border: 1px solid #eadfcf; border-radius: 14px; overflow: hidden; }
.bp-staff figure { margin: 0; aspect-ratio: 4 / 3; background: #f0f2eb; }
.bp-staff figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.bp-staff > div { padding: 14px 16px 16px; }
.bp-staff small { display: block; color: #c74e0d; font-size: 12px; font-weight: 800; letter-spacing: .06em; }
.com-renewal .bp-staff h3 { margin: 4px 0 0; padding: 0; border: 0; background: none; color: #412210; font-size: 19px; font-weight: 700; line-height: 1.4; }
.com-renewal .bp-staff h3::before, .com-renewal .bp-staff h3::after { display: none; }
.com-renewal .bp-staff p { margin: 10px 0 0; padding-top: 10px; border-top: 1px solid #eee4d9; color: #4d3b30; font-weight: 400; font-size: 14px; line-height: 1.7; } /* 2026-09-14 LP追随: 濃い色・標準の太さ */
.bp-reason-rows { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bp-reason { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 10px; row-gap: 8px; align-items: center; padding: 18px 16px; background: #fff; border: 1px solid #eee3cf; border-radius: 14px; }
.bp-reason__icon { grid-column: 1; grid-row: 1; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 11px; background: #eed8aa; color: #684326; }
.bp-reason__icon svg { display: block; width: 32px; height: 32px; }
.com-renewal .bp-reason h3 { grid-column: 2; grid-row: 1; margin: 0; padding: 0; border: 0; background: none; color: #3f332b; font-size: 20px; font-weight: 700; line-height: 1.45; letter-spacing: -.03em; }
.com-renewal .bp-reason h3::before, .com-renewal .bp-reason h3::after { display: none; }
.bp-reason h3 span { background: linear-gradient(transparent 68%, #f4d277 68%); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.com-renewal .bp-reason p { grid-column: 1 / -1; grid-row: 2; margin: 0; color: #4d3b30; font-weight: 700; font-size: 15px; line-height: 1.7; } /* 2026-09-14 LP追随: 太字 */
@media (max-width: 959px) {
	.bp-staff-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.bp-reason-rows { grid-template-columns: 1fr; gap: 10px; }
}
@media (max-width: 700px) {
	.bp-staff-grid { gap: 10px; margin-bottom: 18px; }
	.bp-staff figure { aspect-ratio: 1 / 1; }
	.bp-staff > div { padding: 10px 11px 12px; }
	.bp-staff small { font-size: 10px; letter-spacing: .02em; }
	.com-renewal .bp-staff h3 { font-size: 17px; }
	.com-renewal .bp-staff p { margin-top: 8px; padding-top: 8px; font-size: 12px; line-height: 1.6; }
	.bp-reason { padding: 14px 14px; }
	.com-renewal .bp-reason h3 { font-size: 18px; }
	.com-renewal .bp-reason p { font-size: 14px; }
}

/* 実績4項目を理由カードの下に（2026-09-14 渡邊さん）: 入れ子の section の余白を殺し、上に間隔だけ */
.bp-facts-in-reasons { margin-top: 18px; }
.bp-facts-in-reasons .kh-proof.cr-section, .bp-facts-in-reasons .kh-proof { padding: 0; border: 0; }

/* 白が多い → セクションをベージュの帯に（LPの選ばれる理由と同じ #f7edd5）。カードは白のまま（2026-09-14 渡邊さん） */
#com-staff.bp-reasons { background: #f7edd5; padding-top: 44px; padding-bottom: 40px; }
#com-staff .bp-staff, #com-staff .bp-reason { border-color: #eadbc6; }
#com-staff .bp-facts-in-reasons .kh-proof { background: #fff; border: 1px solid #eadbc6; border-radius: 14px; padding: 18px 20px 14px; }
@media (max-width: 700px) { #com-staff.bp-reasons { padding-top: 30px; padding-bottom: 28px; } #com-staff .bp-facts-in-reasons .kh-proof { padding: 14px 12px 10px; } }

/* 中身は他セクションと同じ 1,200px枠（内側1,152）に */
#com-staff .bp-reasons__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
@media (max-width: 959px) { #com-staff .bp-reasons__inner { padding: 0 15px; } }

/* 理由カードの枠線を太く（2026-09-14 渡邊さん） */
#com-staff .bp-reason { border-width: 3px; border-color: #e6cfa6; }

/* 理由カードの補足文: 左右に少し余白（2026-09-14 渡邊さん） */
#com-staff .bp-reason p { padding-left: 10px; padding-right: 10px; }
@media (max-width: 700px) { #com-staff .bp-reason p { padding-left: 6px; padding-right: 6px; } }
/* スマホの実績4項目をスリムに（渡邊さん 9/14）: セル余白 16→9/8px・ラベル下 7→2px・数字 27→25px/行間 1.5→1.25・外枠 14/12/10→6/10/4px */
@media (max-width: 700px) {
	#com-staff .bp-facts-in-reasons .kh-proof { padding: 6px 10px 4px; }
	#com-staff .bp-facts-in-reasons .kh-proof-grid { padding: 0 4px; }
	#com-staff .bp-facts-in-reasons .kh-proof-grid > div { padding: 9px 3px 8px; }
	#com-staff .bp-facts-in-reasons .kh-proof-grid > div > span { font-size: 12px; margin-bottom: 2px; }
	#com-staff .bp-facts-in-reasons .kh-proof-grid strong { font-size: 25px; line-height: 1.25; }
}

/* ---- custom/sticky-sp.css ---- */
/* ---- スマホの固定バー: LP .mobile-sticky（電話／WEB／LINE）をそのまま移植 2026-09-14（渡邊さん「スマホはLPと全く同じに」）。正本はLP ---- */
.mobile-sticky { --orange:#ef691b; --orange-dark:#c74e0d; --web-blue:#1565c0; --web-blue-dark:#0d47a1; --line-green:#06c755; --brown-dark:#412210; }
.mobile-sticky { display:none }
@media (max-width: 760px) {
	.mobile-sticky { z-index:50;min-height:92px;padding:8px 9px calc(10px + env(safe-area-inset-bottom,0px));background:#fff4dc;grid-template-columns:minmax(0,2.18fr) minmax(0,1fr) minmax(0,1fr);gap:7px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -7px 22px #3b27172e }
	.mobile-sticky a { color:#fff;border-radius:11px;justify-content:center;align-items:center;min-width:0;min-height:74px;display:flex }
	.mobile-sticky .sticky-phone { border-bottom:5px solid var(--orange-dark);background:linear-gradient(145deg,#f77a25,var(--orange));text-align:center;grid-template-rows:auto auto 1fr;gap:1px;padding:7px 8px 6px;display:grid;box-shadow:0 5px 11px #963c0c2e }
	.sticky-phone-lead { white-space:nowrap;background:#ffffff29;border-radius:999px;padding:3px 5px;font-size:9px;font-weight:900;line-height:1.15;display:block }
	.sticky-phone-hours { white-space:nowrap;font-size:9px;font-weight:800;line-height:1.2 }
	.sticky-phone-number { letter-spacing:-.035em;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:950 }
	.sticky-phone-number { letter-spacing:-.035em;white-space:nowrap;justify-content:center;align-items:center;gap:4px;font-size:clamp(17px,4.8vw,21px);font-weight:950;line-height:1;display:flex }
	.mobile-sticky .sticky-phone-number .phone-icon { width:23px;height:23px;color:var(--orange);background:#fff;border-radius:50%;flex:0 0 23px;place-items:center;font-size:15px;display:grid }
	.mobile-sticky .sticky-web, .mobile-sticky .sticky-line { text-align:center;border-bottom-style:solid;border-bottom-width:5px;flex-direction:column;gap:4px;padding:6px 3px;box-shadow:0 5px 11px #41221024 }
	.mobile-sticky .sticky-web { border-bottom-color:var(--web-blue-dark);background:var(--web-blue) }
	.mobile-sticky .sticky-line { background:var(--line-green);border-bottom-color:#049e43 }
	.mobile-sticky .sticky-web>span, .mobile-sticky .sticky-line>span { white-space:nowrap;font-size:clamp(12px,3.5vw,15px);font-weight:950;line-height:1.08 }
	.mobile-sticky .sticky-web>b, .mobile-sticky .sticky-line>b { background:#fff;border-radius:7px;place-items:center;min-width:34px;height:25px;padding:0 5px;font-size:10px;line-height:1;display:grid }
	.mobile-sticky .sticky-web>b { color:var(--web-blue);font-size:17px }
	.mobile-sticky .sticky-line>b { color:var(--line-green) }
	.mobile-sticky { transition:transform .28s ease,opacity .28s ease }
	.mobile-sticky.is-offscreen { transform:translateY(120%);opacity:0;pointer-events:none }
	.mobile-sticky .sticky-phone-lead, .mobile-sticky .sticky-phone-hours { font-size:11px }
}
@media (max-width: 370px) {
	.mobile-sticky .sticky-phone-hours, .mobile-sticky .sticky-phone-lead { font-size:8px }
	.mobile-sticky .sticky-phone-number { font-size:16px }
	.mobile-sticky .sticky-web>span, .mobile-sticky .sticky-line>span { font-size:12px }
}
/* .com 側の出し分け: スマホ(≤700)はLPのバー、それ以外は .com のバー */
.mobile-sticky { display: none; }
@media (max-width: 700px) { .mobile-sticky { display: grid; } .kp-sticky { display: none !important; } }

/* スマホのLPバー（93px）分の余白 */
@media (max-width: 700px) { body { padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important; } }

/* ---- custom/sticky.css ---- */
/* ---- 固定CTA 3本（電話／WEB／LINE）2026-09-14。全ページに出す。余白は body padding-bottom（renewal.css: PC 104px／SP 88px）が既にある ---- */
/* PC（2026-09-14 渡邊さん）: 左の文言なし、WEB → LINE → 電話（電話は右端・少し広め）、WEB／LINEの文言を大きく */
.kp-sticky-lead { display: none; }
.kp-sticky-inner { grid-template-columns: 1fr 1fr 1.3fr; max-width: 1200px; }
.kp-sticky .kp-sticky-web { order: 1; }
.kp-sticky .kp-sticky-line { order: 2; }
.kp-sticky .kp-sticky-tel { order: 3; }
.kp-sticky .kp-sticky-web strong, .kp-sticky .kp-sticky-line strong { font-size: 21px; }
.kp-sticky .kp-sticky-line small { display: none; } /* 「写真を送って相談」は出さない（渡邊さん 9/14） */
.kp-sticky .kp-sticky-icon { display: none !important; } /* PCのフローティングは全ボタンともアイコンなし（渡邊さん 9/14）。スマホのLPバーはLPのまま */
.kp-sticky .kp-sticky-line { background: #06c755; box-shadow: 0 3px 0 #049e43; color: #fff; }
.kp-sticky .kp-sticky-line img { border-radius: 8px; display: block; }
@media (max-width: 959px) { .kp-sticky-inner { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; } .kp-sticky .kp-sticky-tel { order: 1; } .kp-sticky .kp-sticky-web { order: 2; } .kp-sticky .kp-sticky-line { order: 3; } .kp-sticky .kp-sticky-web strong, .kp-sticky .kp-sticky-line strong { font-size: 15px; } }
@media (max-width: 700px) {
	.kp-sticky-inner { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; } /* minmax(0) で電話ボタンの nowrap に引っ張られない */
	.kp-sticky .kp-sticky-tel small { display: none; } /* 「通話料無料｜電話受付」は3本だと入らない */
	.kp-sticky a strong, .kp-sticky-tel strong { font-size: 12px !important; }
	.kp-sticky .kp-sticky-line small { display: none; }
}

/* スマホ(≤700)は3本なので電話ボタンは番号でなく「電話で相談」（LPのスマホ固定バーも文字） */
@media (max-width: 700px) { .kp-sticky .kp-sticky-number { display: none !important; } .kp-sticky .kp-sticky-mobile-label { display: inline !important; } .kp-sticky .kp-sticky-tel strong { font-size: 12px !important; } }

/* ---- custom/title-break.css ---- */
/* 施工事例タイトル「地域｜工事内容」の自動2行（functions.php の the_title フィルタ）。効かせるのは記事の見出しとカードだけ。パンくず・prev/next は1行のまま */
.c-postTitle__ttl .bp-ttl-b, .p-postList__title .bp-ttl-b { display: block; }

/* ---- custom/trust-strip.css ---- */
/* ---- FV直下の実績帯（LP .lp-trust-strip をそのまま移植 2026-09-14）。正本はLP ---- */
.lp-trust-strip { --orange:#ef691b; --orange-dark:#c74e0d; --brown-dark:#412210; --muted:#6e6258; --border:#eadfce; }
.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 }
@media(max-width:700px) {
	.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-trust-strip strong { font-size:clamp(14px,4.1vw,18px);white-space:nowrap }
}
.lp-trust-strip .sp-only { display: none; }
@media (max-width: 700px) { .lp-trust-strip .sp-only { display: inline; } }
.lp-trust-strip > div { max-width: 1200px; }

/* スマホのFV内にあった同じ3項目（累計施工実績／見積り無料／保証10年）は、直下の実績帯と重複するので出さない（2026-09-14） */
.kh-hero .kh-mobile-assurances { display: none !important; }

/* ---- custom/voices.css ---- */
/* ---- お客様の声（2026-09-12）: 見出しは共通形式、カードは暖色系に。Testimonial Free 4.0 theme-one を上書き ---- */
/* 施工事例と同じく画面幅いっぱいの帯＋1,200pxの内枠（2026-09-12）。広げる計算は SWELL の .alignfull に任せ、内枠は .l-container に任せる */
.bp-voices.cr-section { padding: 36px 0 28px; border-bottom: 0; }
.bp-voices .cr-heading { margin-bottom: 20px; }
.bp-voices .sp-testimonial-free-wrapper { background: transparent; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-item .sp-testimonial-free { background: #fffaf2 !important; border: 1px solid #f0dcc4 !important; border-radius: 12px !important; box-shadow: 0 6px 18px #5337220d !important; padding: 22px 22px 18px !important; margin: 4px 6px 10px !important; }   /* プラグインの ID 付きインラインCSSに勝つため !important */
.bp-voices .sp-testimonial-free-section .sp-testimonial-title { margin: 0 0 8px; }
.bp-voices .sp-testimonial-free-section h3.sp-testimonial-post-title { font-size: 16px; font-weight: 800; color: #412210; line-height: 1.5; margin: 0; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-content { font-size: 14px; line-height: 1.8; color: #4a3b32; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-rating { margin: 10px 0 6px; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-rating i,
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-rating span { color: #ef691b !important; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-designation { font-size: 12px; color: #8a7466; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-designation::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #ef691b; margin-right: 6px; vertical-align: 1px; }
.bp-voices .testimonial-nav-arrow { color: #7c5b4f !important; }
.bp-voices .swiper-pagination-bullet { background: #d9c7b6 !important; opacity: 1 !important; }
.bp-voices .swiper-pagination-bullet-active { background: #ef691b !important; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-free::before,
.bp-voices .sp-testimonial-free-section .sp-testimonial-free::after { display: none; }
@media (max-width: 959px) {
	.bp-voices.cr-section { padding: 28px 0 20px; }
	.bp-voices .sp-testimonial-free-section .sp-testimonial-item .sp-testimonial-free { padding: 16px 16px 14px !important; margin: 4px 2px 8px !important; }
	.bp-voices .sp-testimonial-free-section h3.sp-testimonial-post-title { font-size: 15px; }
	.bp-voices .sp-testimonial-free-section .sp-testimonial-content { font-size: 13.5px; }
}
/* カードの高さを揃える（同じ列のカードは最も高いものに合わせる。本文は7行で省略）2026-09-12 */
.bp-voices .sp-testimonial-free-section .swiper-wrapper { align-items: stretch; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-item { height: auto !important; display: flex; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-item .sp-testimonial-free { flex: 1 1 auto; display: flex !important; flex-direction: column; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-testimonial { flex: 1 1 auto; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-content { display: -webkit-box; -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden; }
.bp-voices .sp-testimonial-free-section .sp-testimonial-client-designation { margin-top: auto; padding-top: 8px; }

