:root{--ink:#403a35;--brown:#625449;--cream:#fffaf2;--beige:#f5eee2;--mint:#dff4e7;--green:#31845e;--coral:#ed7155;--yellow:#ffe7a1;--blue:#dff1f5;--line:#ded5c8;--round:"M PLUS Rounded 1c","Noto Sans JP",sans-serif;--body:"Zen Maru Gothic","Noto Sans JP",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);line-height:1.85;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.section-pad{padding:clamp(72px,10vw,140px) max(20px,calc((100% - 1160px)/2))}h1,h2,h3,p{margin-top:0}h1,h2,h3,.wordmark,.button{font-family:var(--round)}h2{font-size:clamp(35px,4.7vw,64px);line-height:1.38;letter-spacing:.02em;margin-bottom:0}h3{line-height:1.55}.kicker{font:700 13px var(--round);color:var(--green);letter-spacing:.11em;margin-bottom:14px}.center{text-align:center}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;padding:18px max(20px,calc((100% - 1160px)/2));display:flex;justify-content:space-between;align-items:center}.wordmark{font-size:22px;line-height:1;font-weight:800;letter-spacing:.05em;color:#28815b}.wordmark span{display:block;font:700 9px var(--body);letter-spacing:.22em;margin-left:2px}.header-cta{font:700 12px var(--round);padding:10px 17px;border:1px solid var(--green);border-radius:99px;color:var(--green)}.hero{position:relative;min-height:820px;padding-top:150px;background:linear-gradient(125deg,#fffaf2 20%,#e7f8ed 100%);overflow:hidden}.hero:after{content:"";position:absolute;width:600px;height:600px;border:1px solid #b8dfc5;border-radius:50%;right:-180px;top:70px}.hero-copy{position:relative;z-index:1;max-width:660px}.hero h1{font-size:clamp(38px,5vw,69px);line-height:1.42;letter-spacing:.035em;margin:0 0 20px}.hero h1 mark,.idea mark,.timing mark{background:linear-gradient(transparent 58%,var(--yellow) 58%);color:inherit;padding:0 3px}.hero-copy>p:not(.kicker){font-size:clamp(15px,1.5vw,18px)}.cta-stack{margin-top:30px}.button{display:inline-flex;min-height:56px;align-items:center;justify-content:space-between;gap:28px;padding:12px 23px;border-radius:16px;font-size:15px;font-weight:700;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 rgba(64,58,53,.14)}.button b{font-size:20px}.button-primary{background:var(--green);color:#fff}.cta-stack small,.contact small{display:block;margin-top:10px;font-size:12px;color:#6c6963}.hero-art{position:absolute;z-index:1;width:min(48vw,580px);right:max(1vw,calc((100% - 1230px)/2));bottom:60px}.hero-art svg{width:100%;height:auto}.house{fill:#fffdf8;stroke:var(--ink);stroke-width:5;stroke-linejoin:round}.window{fill:var(--blue);stroke:var(--ink);stroke-width:5}.sun{fill:var(--yellow)}.floor{fill:#e9cda5;stroke:var(--ink);stroke-width:5;stroke-linejoin:round}.rug{fill:#f7e3db;stroke:var(--ink);stroke-width:4}.person{fill:#77bca0;stroke:var(--ink);stroke-width:5;stroke-linejoin:round}.person-b{fill:#ef9d85}.dog{fill:#f2c56f;stroke:var(--ink);stroke-width:4;stroke-linejoin:round}.plant{fill:none;stroke:#4e9d6d;stroke-width:6;stroke-linecap:round}.pot{fill:#ee9c7e;stroke:var(--ink);stroke-width:4}.hero-note{position:absolute;z-index:2;bottom:35px;left:max(20px,calc((100% - 1160px)/2));font-size:12px;color:#70675d}.hero-note strong{display:block;color:var(--green);font-family:var(--round)}.decisions{background:var(--cream)}.chips{max-width:760px;margin:52px auto 68px;display:flex;justify-content:center;flex-wrap:wrap;gap:13px}.chips span{padding:10px 19px;border-radius:99px;background:#fff;border:1px solid var(--line);font:700 14px var(--round);transform:rotate(var(--r,0deg))}.chips span:nth-child(2n){--r:2deg;background:#f5f1fc}.chips span:nth-child(3n){--r:-2deg;background:#fff4db}.chips span:nth-child(4n){background:#e7f7ef}.question{max-width:670px;margin:auto;padding:30px;background:var(--mint);border-radius:28px;display:flex;align-items:center;justify-content:center;gap:22px;text-align:center;font-size:clamp(17px,2vw,22px);line-height:1.7}.question p{margin:0}.bubble-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--coral);color:#fff;font:bold 34px var(--round)}.reality{background:var(--beige)}.section-title{max-width:820px}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px}.scene{min-height:260px;padding:28px;background:#fffaf2;border-radius:22px}.scene h3{font-size:19px;margin:12px 0 9px}.scene p,.benefit p{font-size:13px;line-height:1.85;margin:0}.scene-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:50%;font:32px var(--round);font-style:normal}.spill{background:#ffe2b3;color:#d27b36}.chair{background:#dceff5;color:#5290a3;transform:rotate(-20deg)}.paw{background:#e4f2df;color:#529263}.bridge{text-align:center;margin:70px 0 0;font-size:clamp(17px,2vw,21px);line-height:2}.idea{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(35px,8vw,120px)}.idea-art svg{width:100%;height:auto}.blob{fill:#e1f4e6}.floor-lines{stroke:#c5a77d;stroke-width:6;stroke-linecap:round}.human{fill:#f49b7d;stroke:var(--ink);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.mop{fill:none;stroke:#479b73;stroke-width:7;stroke-linecap:round}.shield{fill:#fff8ed;stroke:#429366;stroke-width:5;stroke-linejoin:round}.shine{fill:#f2be4a}.idea-copy>p:not(.kicker){margin:22px 0;color:#5c5750;font-size:15px}.idea ul{padding:0;list-style:none;font:700 14px var(--round)}.idea li{margin:10px 0}.idea li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;margin-right:10px;border-radius:50%;background:var(--green);color:#fff}.product{background:#dff4e7}.product-top{max-width:700px;margin:auto;text-align:center}.product-type{font:700 16px var(--round);margin:26px 0 0}.product h2{margin:-5px 0 14px;font-size:clamp(64px,10vw,130px);letter-spacing:-.07em;color:var(--green);line-height:1}.product-top>p:last-child{font-size:15px}.layer-card{position:relative;max-width:760px;height:285px;margin:60px auto 0;padding:92px 35px 30px;border-radius:28px;background:#fffaf2;overflow:hidden}.layer{height:50px;border:2px solid var(--ink);border-radius:13px}.coating{position:relative;z-index:2;height:32px;background:rgba(124,207,224,.48);border-color:#39798e;box-shadow:0 8px 16px rgba(54,139,159,.18)}.wood{position:relative;z-index:1;display:flex;align-items:center;padding-left:27px;background:repeating-linear-gradient(15deg,#e5ba7c 0 18px,#edc98f 18px 36px);margin-top:-2px}.wood span{font:700 15px var(--round)}.base{height:36px;margin-top:-2px;background:#d5e0cf}.layer-label{position:absolute;top:24px;left:35px;font:700 15px var(--round);color:#39798e}.layer-label small{margin-left:10px;font:400 11px var(--body);color:#6a7270}.sparkle{position:absolute;color:#f1a747;font-style:normal;font-size:28px}.s1{right:50px;top:35px}.s2{right:115px;bottom:30px}.product-actions{text-align:center;margin-top:35px}.benefits{background:#fffaf2}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}.benefit{min-height:280px;padding:27px;border-radius:20px;background:var(--beige)}.benefit:nth-child(2n){background:#e5f4e9}.benefit:nth-child(3n){background:#e7f2f5}.benefit span{font:700 11px var(--round);color:#776e63}.benefit i{display:block;margin:24px 0 12px;font:34px var(--round);font-style:normal;color:var(--coral)}.benefit h3{font-size:18px;margin:0 0 9px}.compare{background:#f5eee2}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:950px;margin:55px auto 0}.compare article{padding:36px;border-radius:26px}.compare h3{font-size:23px;margin:0 0 25px}.compare h3 small{display:block;font-size:11px;color:#397f5d}.without{background:#eee6d8}.with{background:#d8f0e1}.compare ul{padding:0;margin:0;list-style:none}.compare li{padding:13px 0;border-top:1px solid rgba(64,58,53,.15);font-size:14px}.compare li:before{content:"—";margin-right:10px}.with li:before{content:"✓";color:var(--green);font-weight:bold}.performance{background:#fffaf2}.badges{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:48px}.badges div{min-height:135px;padding:22px 10px;text-align:center;border:1px solid var(--line);border-radius:50% 50% 42% 42%;background:#fff}.badges strong{display:block;font:800 24px var(--round);color:var(--green);line-height:1.3}.badges strong small{font-size:13px}.badges span{font-size:11px}.details{max-width:860px;margin:42px auto 0;padding:18px 24px;border:1px solid var(--line);border-radius:16px;background:#fff}.details summary{display:flex;justify-content:space-between;cursor:pointer;font:700 14px var(--round)}.details summary b{font-size:20px}.details[open] summary b{transform:rotate(45deg)}.details p{margin:15px 0 0;font-size:13px}.recommend{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--blue)}.recommend-copy>p:not(.kicker){font-size:14px}.checklist{padding:25px;background:#fffdf7;border-radius:24px;box-shadow:10px 10px 0 #b7dde5}.checklist p{padding:13px 0;margin:0;border-bottom:1px dashed #d6d0c8;font:700 14px var(--round)}.checklist p:last-child{border:0}.timing{background:#fffaf2}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;max-width:1050px;margin:58px auto 0}.steps article{position:relative;padding:0 25px 0 67px}.steps article:not(:last-child):after{content:"";position:absolute;width:65%;border-top:2px dashed #a4d0b1;right:-15%;top:23px}.steps b{position:absolute;left:0;top:0;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--green);color:#fff;font:700 18px var(--round)}.steps h3{margin:6px 0 10px;font-size:18px}.steps p{font-size:13px;margin:0}.small-note{text-align:center;margin:48px 0 0;font-size:13px}.flow{background:var(--mint)}.flow-list{max-width:930px;padding:0;margin:52px auto 0;list-style:none}.flow-list li{display:grid;grid-template-columns:100px 1fr;gap:28px;padding:24px 0;border-top:1px solid rgba(64,58,53,.16)}.flow-list li:last-child{border-bottom:1px solid rgba(64,58,53,.16)}.flow-list b{font:800 33px var(--round);color:#66a981}.flow-list h3{margin:0 0 6px;font-size:18px}.flow-list p{margin:0;font-size:13px}.faq{background:#fffaf2}.faq-list{max-width:880px;margin:48px auto 0;border-top:1px solid var(--line)}.faq-list article{border-bottom:1px solid var(--line)}.faq-list button{display:flex;width:100%;padding:20px 5px;border:0;background:transparent;justify-content:space-between;text-align:left;cursor:pointer;font:700 15px var(--round);color:var(--ink)}.faq-list button span{font-size:24px;line-height:1;transition:transform .25s}.faq-list button[aria-expanded=true] span{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}.faq-answer p{overflow:hidden;margin:0;font-size:13px}.faq-list button[aria-expanded=true]+.faq-answer{grid-template-rows:1fr}.faq-list button[aria-expanded=true]+.faq-answer p{padding:0 5px 20px}.contact{background:#3d8a63;color:#fff;text-align:center}.contact-inner{max-width:860px;margin:auto}.contact .kicker{color:#d7f5aa}.contact h2{font-size:clamp(33px,4.5vw,59px)}.contact-inner>p:not(.kicker){margin:25px 0;color:#eefcf3;font-size:15px}.contact-buttons{display:flex;justify-content:center;gap:12px;margin-top:35px}.button-coral{background:var(--coral);color:#fff}.button-outline{border:1px solid rgba(255,255,255,.75);color:#fff}.contact small{color:#e5f7eb}footer{padding:45px max(20px,calc((100% - 1160px)/2));background:#f1eadf;font-size:12px}footer p{margin:17px 0 10px;font-weight:700}footer nav{display:flex;gap:18px;flex-wrap:wrap}footer nav a{text-decoration:underline;text-underline-offset:4px}footer small{display:block;margin-top:24px;color:#777067}.floating-cta{position:fixed;z-index:10;right:24px;bottom:24px;display:flex;gap:18px;align-items:center;padding:13px 18px;border-radius:99px;background:var(--coral);color:white;box-shadow:0 7px 19px rgba(95,51,38,.25);font:700 13px var(--round);opacity:0;transform:translateY(15px);pointer-events:none;transition:.3s}.floating-cta.show{opacity:1;transform:none;pointer-events:auto}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}@media(max-width:800px){.hero{min-height:auto;padding-top:110px;padding-bottom:390px}.hero h1{font-size:clamp(34px,9vw,47px)}.hero-art{width:min(92vw,440px);right:50%;bottom:60px;transform:translateX(50%)}.hero-note{bottom:18px;font-size:10px}.scene-grid,.benefit-grid{grid-template-columns:1fr 1fr}.idea,.recommend{grid-template-columns:1fr;gap:35px}.idea-art{max-width:450px;margin:auto;order:2}.recommend{gap:35px}.badges{grid-template-columns:repeat(3,1fr)}.steps{gap:28px}.steps article{padding:58px 5px 0}.steps article:not(:last-child):after{display:none}.steps b{left:5px}.contact-buttons{flex-direction:column;align-items:center}.contact-buttons .button{min-width:min(100%,330px)}.floating-cta{right:16px;bottom:15px}.site-header{padding-top:16px}.header-cta{padding:8px 12px;font-size:11px}}
@media(max-width:540px){body{padding-bottom:74px}.section-pad{padding:72px 20px}.hero{padding-left:20px;padding-right:20px;padding-bottom:360px}.hero-copy>p:not(.kicker){font-size:14px}.button{width:100%;min-height:55px}.hero-art{bottom:66px}.hero-note{left:20px;right:20px;bottom:20px}.question{padding:23px 16px;gap:13px;font-size:16px}.bubble-icon{width:42px;height:42px;font-size:28px}.scene-grid,.benefit-grid{grid-template-columns:1fr}.scene{min-height:0}.compare-grid{grid-template-columns:1fr;gap:12px}.compare article{padding:25px}.badges{grid-template-columns:repeat(2,1fr)}.badges div{min-height:115px}.layer-card{height:270px;padding:108px 18px 22px}.layer-label{left:18px;right:14px;top:21px}.layer-label small{display:block;margin:2px 0 0}.steps{grid-template-columns:1fr;margin-top:42px}.steps article{padding:0 0 0 62px;min-height:78px}.steps b{left:0}.flow-list li{grid-template-columns:60px 1fr;gap:12px}.flow-list b{font-size:24px}.faq-list button{font-size:14px;line-height:1.5}.contact-buttons{width:100%}.contact-buttons .button{width:100%}footer nav{display:grid;gap:8px}.floating-cta{left:12px;right:12px;bottom:10px;justify-content:space-between;padding:14px 20px}.delay-1,.delay-2{transition-delay:0s}}
footer .disclaimer{max-width:720px;margin:24px 0 0;font:400 11px/1.7 var(--body);color:#777067}:root{--coral:#9ccc3c}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal.visible,.floating-cta,.faq-answer,.faq-list button span{transition:none;transform:none}.reveal{opacity:1}}
