@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&family=DM+Sans:wght@600;700;800&display=swap');
:root{--navy:#142b40;--blue:#145f9d;--teal:#158c8b;--mint:#e8f6f2;--light:#f5f9fb;--text:#253747;--muted:#627482;--border:#dfebee;--shadow:0 16px 45px rgba(24,57,72,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Noto Sans JP',system-ui,sans-serif;color:var(--text);font-size:15px;line-height:1.85;background:#fff}img{max-width:100%;display:block}a{color:var(--blue);text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #edaf38;outline-offset:2px}.container{max-width:1160px;padding:0 24px;margin:0 auto}.narrow{max-width:900px}.topbar{background:var(--navy);color:#dceef3;font-size:11px}.topbar-inner{display:flex;justify-content:space-between;gap:20px;padding-top:7px;padding-bottom:7px}.topbar a{color:#dceef3}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);box-shadow:0 2px 20px rgba(20,43,64,.06);backdrop-filter:blur(12px)}body.admin-bar .site-header{top:32px}.navline{min-height:84px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;gap:12px;align-items:center;color:var(--navy);line-height:1.25}.brand-mark{display:grid;place-items:center;width:46px;height:46px;background:linear-gradient(140deg,#1a9a9c,#1359a0);border-radius:15px;color:#fff;font-size:26px}.brand strong,.brand b{display:block}.brand strong{font-size:13px;font-weight:600}.brand b{font-size:18px;font-weight:900;letter-spacing:-.04em}.nav-menu{display:flex;gap:23px;align-items:center}.nav-menu>a{color:var(--navy);font-size:13px;font-weight:700}.nav-menu .nav-cta{background:var(--blue);color:white;padding:13px 20px;border-radius:50px}.menu-toggle{display:none;border:0;background:transparent;color:var(--navy);font-weight:700}.hero{overflow:hidden;background:linear-gradient(115deg,#f0f8fa 0%,#fff 57%,#e9f6f2 100%);padding:70px 0 80px}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center}.eyebrow,.section-kicker,.category{font-family:'DM Sans',sans-serif;letter-spacing:.16em;color:var(--teal);font-weight:800;font-size:12px}.eyebrow span{font-family:inherit;letter-spacing:0;margin-left:12px;color:#697f89}.hero h1{font-size:clamp(46px,5.6vw,72px);line-height:1.33;letter-spacing:-.09em;color:var(--navy);margin:23px 0}.hero h1 em,.subhero h1 em{font-style:normal;color:var(--teal)}.hero-lead{font-size:16px;line-height:2.1;font-weight:500}.hero-pills{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.hero-pills span{background:white;border:1px solid var(--border);border-radius:50px;padding:5px 12px;font-size:11px;font-weight:700}.action-row{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.btn{border-radius:50px;display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:15px 23px;font-size:14px;font-weight:800;border:1px solid transparent;transition:transform .2s,box-shadow .2s;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(15,70,85,.12)}.btn-primary{background:var(--teal);color:white}.btn-outline{background:white;color:var(--navy);border-color:#bcd0d8}.fine{font-size:12px;color:var(--muted);line-height:1.9}.hero-visual{position:relative}.hero-image-frame{max-width:420px;margin:auto;position:relative;transform:rotate(2deg);background:white;padding:11px;border-radius:16px;box-shadow:0 24px 70px rgba(30,71,91,.18)}.hero-image-frame img{height:475px;width:100%;object-fit:cover;object-position:center 23%;border-radius:10px}.hero-photo-label{position:absolute;bottom:25px;left:20px;right:20px;background:rgba(255,255,255,.95);padding:12px 16px;border-radius:9px;font-weight:800;font-size:13px;text-align:center}.hero-sticker{position:absolute;right:-14px;top:28px;border-radius:50%;width:115px;height:115px;display:grid;place-content:center;text-align:center;background:#fff;border:5px solid #b5e6d8;box-shadow:0 12px 30px #263d4d22;font-size:12px;line-height:1.6;transform:rotate(8deg)}.hero-sticker b{color:var(--teal)}.section{padding:93px 0}.section-tint{background:var(--light)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:34px}.section-heading>div{flex:1}.section-heading>p{flex:0 0 38%;font-size:14px;color:var(--muted)}.section-heading.center{display:block;text-align:center}.section h2,.subhero h1,.page-title h1{font-size:clamp(29px,3.5vw,43px);line-height:1.45;letter-spacing:-.06em;color:var(--navy);margin:13px 0 24px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{background:#fff;overflow:hidden;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.service-img{height:270px;position:relative;background:#f4f8f8;overflow:hidden}.service-img img{width:100%;height:100%;object-fit:cover;object-position:center 24%}.floating-tag{position:absolute;top:18px;left:18px;background:var(--teal);color:#fff;border-radius:20px;padding:5px 14px;font-size:12px;font-weight:700}.service-info{padding:28px 30px}.service-info h3{font-size:21px;color:var(--navy);margin:6px 0}.service-info p{color:var(--muted);font-size:13px;min-height:78px}.price-line{display:flex;justify-content:space-between;align-items:baseline;gap:15px;border-top:1px solid var(--border);padding-top:18px}.price-line strong{font-family:'DM Sans',sans-serif;font-size:30px;color:var(--blue)}.price-line small{font-family:'Noto Sans JP',sans-serif;font-size:12px}.price-line a{font-size:13px;font-weight:800}.benefit-grid,.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.benefit,.note-grid>div{padding:28px;background:white;border:1px solid var(--border);border-radius:14px}.benefit-icon{display:grid;place-items:center;background:var(--mint);width:54px;height:54px;border-radius:50%;color:var(--teal);font-family:'DM Sans';font-weight:800}.benefit h3,.note-grid h3{font-size:17px;color:var(--navy)}.benefit p,.note-grid p{font-size:13px;color:var(--muted)}.bonus{display:grid;grid-template-columns:.94fr 1.06fr;border-radius:22px;overflow:hidden;border:1px solid #d8e9e8;background:var(--mint)}.bonus-intro{padding:40px}.bonus-intro h3{font-size:36px;line-height:1.5;letter-spacing:-.07em;margin:12px 0;color:var(--navy)}.chip{display:inline-block;background:white;padding:6px 15px;border-radius:50px;color:var(--teal);font-size:12px;font-weight:800}.bonus-list{background:white;padding:18px 35px}.bonus-list>div{display:flex;gap:20px;border-bottom:1px solid var(--border);padding:22px 0}.bonus-list>div:last-child{border:0}.bonus-list>div>span{font-size:28px}.bonus-list h4{margin:0 0 5px;color:var(--navy);font-size:16px}.bonus-list p{margin:0;color:var(--muted);font-size:13px}.section-dark{background:#17374a;color:white}.section-dark h2{color:#fff}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.split>div>p{color:#d0e0e8}.steps>div{display:flex;align-items:center;gap:24px;padding:20px;border-bottom:1px solid #385568}.steps b{font-family:'DM Sans';font-size:27px;color:#85cfc9}.steps span strong,.steps span small{display:block}.steps small{font-size:12px;color:#d0e0e8}.bottom-cta{text-align:center;background:linear-gradient(135deg,#e8f7f3,#eef6ff)}.bottom-cta .action-row{justify-content:center}.bottom-cta p{color:var(--muted)}.footer{background:#102838;color:#e8f5f8;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:50px}.footer-brand{font-weight:900;font-size:20px}.footer p{font-size:13px;color:#a7c1cb}.footer-grid>div>a,.footer-grid>div>strong{display:block;color:#e1edf1;margin-bottom:10px;font-size:13px}.footer-grid>div>strong{margin-bottom:20px}.footer-bottom{border-top:1px solid #365463;margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a7c1cb}.mobile-fixed{display:none}.subhero{padding:67px 0;background:#f0f8fa}.subhero-grid{display:grid;grid-template-columns:1.1fr .6fr;gap:80px;align-items:center}.subhero h1{font-size:clamp(35px,4.4vw,60px)}.subhero p{max-width:570px}.subhero-grid>img{width:100%;height:430px;object-fit:cover;object-position:top;border-radius:12px;box-shadow:var(--shadow)}.sub-price{margin-top:26px}.sub-price strong{color:var(--blue);font-size:39px;letter-spacing:-.05em}.sub-price small{font-size:13px}.rate-table{border-top:2px solid var(--navy);margin:25px 0}.rate-table>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 15px;border-bottom:1px solid var(--border)}.rate-table strong{white-space:nowrap;color:var(--blue);font-size:19px}.flyer-full{margin:30px 0 0}.flyer-full img{width:min(100%,650px);margin:auto;border-radius:12px;box-shadow:var(--shadow)}figcaption{text-align:center;color:var(--muted);font-size:12px;margin-top:10px}.page-title{background:#f0f8fa;padding:62px 0}.page-title h1{margin:12px 0}.form-layout{display:grid;grid-template-columns:1.5fr .65fr;gap:36px;align-items:start}.form-card{border:1px solid var(--border);padding:38px;border-radius:18px;box-shadow:var(--shadow)}.form-card h2{margin:0 0 7px}.form-card>p{font-size:13px;color:var(--muted)}.booking-form{display:grid;gap:15px;margin-top:20px}.booking-form label{display:grid;gap:6px;font-size:13px;font-weight:700;color:var(--navy)}.booking-form label b{font-size:11px;background:#fae6dd;border-radius:3px;padding:0 5px;color:#ab3d21;justify-self:start}.booking-form input:not([type=checkbox]),.booking-form textarea,.booking-form select{width:100%;min-height:47px;border:1px solid #cbdade;border-radius:7px;padding:10px 13px;background:white;color:var(--navy)}.booking-form textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form .consent{display:flex;align-items:start;gap:9px;font-size:12px;font-weight:400}.consent input{margin-top:7px}.booking-form button{width:100%}.hp-field{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}.form-aside{background:var(--light);padding:28px;border-radius:15px}.form-aside .btn{width:100%;font-size:16px}.form-aside h3{color:var(--navy)}.form-aside li{margin-bottom:10px;font-size:13px;color:var(--muted)}.form-aside hr{border:0;border-top:1px solid var(--border);margin:25px 0}.form-alert{padding:14px;background:#fff1e2;border-radius:8px}.form-alert.success{background:#e2f8ec}.prose p{margin-bottom:22px}
@media(max-width:900px){.nav-menu{gap:12px}.nav-menu>a{font-size:11px}.brand b{font-size:15px}.hero-grid{gap:30px}.hero h1{font-size:52px}.service-img{height:230px}.section{padding:70px 0}.split{gap:30px}}@media(max-width:690px){body{font-size:14px}.container{padding:0 19px}.topbar{display:none}.site-header{position:sticky}.navline{min-height:68px}.brand-mark{width:37px;height:37px}.brand strong{font-size:10px}.brand b{font-size:13px}.menu-toggle{display:block;cursor:pointer}.menu-toggle span{font-size:11px}.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:15px 22px 25px;box-shadow:0 14px 25px #10283822;flex-direction:column;align-items:stretch}.nav-menu.is-open{display:flex}.nav-menu>a{padding:10px;font-size:14px}.hero{padding:48px 0}.hero-grid,.subhero-grid{grid-template-columns:1fr;gap:25px}.hero h1{font-size:47px}.hero-lead{font-size:13px}.hero-image-frame{max-width:290px}.hero-image-frame img{height:300px}.hero-sticker{width:88px;height:88px;right:3px;top:8px;font-size:10px}.eyebrow span{display:block;margin:3px 0}.action-row{flex-direction:column}.btn{width:100%}.section{padding:58px 0}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin:0}.section h2{font-size:29px}.service-grid,.benefit-grid,.note-grid,.split,.bonus,.footer-grid,.form-layout{grid-template-columns:1fr}.service-img{height:255px}.service-info{padding:22px}.service-info p{min-height:0}.bonus-intro{padding:27px}.bonus-list{padding:10px 23px}.footer{padding-bottom:92px}.footer-grid{gap:18px}.footer-bottom{display:block}.mobile-fixed{position:fixed;z-index:101;bottom:0;left:0;right:0;display:grid;grid-template-columns:.8fr 1.2fr;box-shadow:0 -6px 20px #10283822}.mobile-fixed a{display:flex;align-items:center;justify-content:center;min-height:60px;background:#fff;color:var(--navy);font-weight:900;font-size:13px}.mobile-fixed a:last-child{background:var(--teal);color:white}.subhero-grid>img{height:280px;object-position:top}.sub-price strong{font-size:33px}.rate-table>div{align-items:flex-start}.rate-table span{max-width:61%;font-size:12px}.rate-table strong{font-size:15px}.field-row{grid-template-columns:1fr}.form-card{padding:25px}.page-title{padding:47px 0}.page-title h1{font-size:30px}body.admin-bar .site-header{top:46px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* v1.1: avoid awkward Japanese breaks in large headings and narrow navigation */
.hero-grid{grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:clamp(24px,3vw,48px)}
.hero-copy,.hero-visual,.section-heading>div{min-width:0}
.hero h1{font-size:clamp(32px,3.7vw,49px);letter-spacing:-.065em;line-height:1.42;overflow-wrap:normal;word-break:keep-all}
.hero-title-first,.hero-title-second{display:block;white-space:nowrap}
.section-heading h2{word-break:keep-all;overflow-wrap:normal;line-height:1.5;letter-spacing:-.035em}
.section-heading{align-items:center;gap:35px}
.section-heading>p{flex-basis:40%}
@media(max-width:1050px) and (min-width:691px){.navline{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.nav-menu{gap:14px;flex-wrap:wrap;justify-content:flex-end}.nav-menu>a{font-size:12px}.hero h1{font-size:clamp(32px,3.5vw,42px)}}
@media(max-width:800px) and (min-width:691px){.hero-grid{grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:clamp(28px,3.7vw,35px)}}
@media(max-width:690px){.hero h1{font-size:clamp(28px,8vw,39px);letter-spacing:-.07em}.section-heading h2{font-size:clamp(27px,7vw,32px)}}
@media(max-width:360px){.hero h1{font-size:27px;letter-spacing:-.08em}}

/* v1.2: dedicated deep-disassembly option design */
.aircon-subhero .subhero-grid{grid-template-columns:minmax(0,1.15fr) minmax(250px,.75fr);gap:clamp(28px,5vw,65px)}
.aircon-subhero h1{font-size:clamp(31px,4vw,53px);line-height:1.48;word-break:keep-all}
.aircon-prices{display:flex;gap:16px;align-items:stretch;flex-wrap:wrap;margin-top:25px}.aircon-prices .sub-price{margin-top:0}.aircon-option-price{background:#fff;border:2px solid var(--teal);border-radius:14px;padding:10px 15px;display:flex;flex-direction:column;gap:1px}.aircon-option-price>span{font-size:11px;color:var(--teal);font-weight:800}.aircon-option-price strong{font-size:20px;color:var(--navy)}.aircon-option-price small{font-size:11px;color:var(--muted)}
.aircon-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-tile{background:#fff;border:1px solid var(--border);border-radius:18px;padding:25px;box-shadow:var(--shadow)}.feature-number{font:800 29px 'DM Sans',sans-serif;color:var(--teal)}.feature-tile h3{font-size:18px;color:var(--navy);line-height:1.5}.feature-tile p{font-size:14px;color:var(--muted);line-height:1.85}.aircon-emphasis{background:var(--mint);border-left:5px solid var(--teal);padding:24px 28px;margin-top:24px;border-radius:12px}.aircon-emphasis>strong{font-size:19px;color:var(--navy)}.aircon-emphasis p{margin:7px 0}.aircon-emphasis .fine{margin-top:12px}
.aircon-compare-wrap{overflow-x:auto;border-radius:14px;border:1px solid var(--border)}.aircon-compare{width:100%;border-collapse:collapse;background:#fff;min-width:560px;font-size:13px}.aircon-compare th,.aircon-compare td{border-bottom:1px solid var(--border);padding:15px 17px;vertical-align:top;text-align:left}.aircon-compare thead th{background:#e6f1f4;color:var(--navy);font-size:14px}.aircon-compare tbody th{width:23%;color:var(--navy)}.aircon-compare .highlight-col{background:#d8f0e8}.aircon-compare td:last-child{background:#f5fbf8}.aircon-compare tr:last-child th,.aircon-compare tr:last-child td{border-bottom:0}.rate-featured{background:#f1faf6;border-left:4px solid var(--teal)}.rate-featured span{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.mini-chip{background:var(--teal);color:white;border-radius:999px;font-size:10px;padding:2px 10px}.aircon-booking{background:#f1f8fa;border:1px solid #d4e8eb;border-radius:17px;padding:25px 30px;margin-top:32px}.aircon-booking h3{margin:0;color:var(--navy)}.aircon-booking p{font-size:14px}.aircon-booking .action-row{margin-top:15px}
@media(max-width:850px){.aircon-feature-grid{grid-template-columns:1fr}.aircon-subhero .subhero-grid{grid-template-columns:1fr}.aircon-subhero .subhero-grid>img{max-width:430px;height:auto;max-height:490px;object-fit:contain;margin:auto}.aircon-feature .section-heading{display:block}.aircon-feature .section-heading>p{margin-top:14px}}
@media(max-width:690px){.aircon-subhero h1{font-size:clamp(29px,8vw,39px)}.aircon-option-price{width:100%}.aircon-booking{padding:22px 18px}.aircon-feature .section-heading h2{font-size:clamp(25px,6vw,32px)}}

/* v1.3 article and review views */
.mku-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:26px 0}.mku-post-card{border:1px solid #d9e6e9;border-radius:20px;overflow:hidden;background:#fff}.mku-post-card img{display:block;width:100%;height:210px;object-fit:cover}.mku-post-card-body{padding:24px}.mku-post-card-body h3{font-size:1.28rem;line-height:1.5;margin:10px 0}.mku-post-card-body a{color:#137b7e}.mku-link-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mku-link-tiles a{border:1px solid #cfe2e5;padding:27px;border-radius:16px;font-weight:700}.case-meta>div{display:flex;gap:18px;padding:12px 0;border-bottom:1px solid #e0eaec}.case-meta dt{min-width:90px;font-weight:700}.case-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.case-photos img{max-width:100%;height:auto;border-radius:12px}@media(max-width:760px){.mku-post-grid{grid-template-columns:1fr}.mku-link-tiles{grid-template-columns:1fr}.case-photos{grid-template-columns:1fr}}
