:root{color-scheme:light;--ink:#13312c;--dark:#10312a;--paper:#f9f8f3;--mint:#def28c;--line:#d7dfd2;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.8}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #ad8332;outline-offset:5px}.shell{width:min(1120px,calc(100% - 64px));margin:auto}header{background:#fff;border-bottom:1px solid var(--line)}.top{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:25px;font-weight:800;text-decoration:none;letter-spacing:-.05em}.brand span{display:block;font-size:10px;letter-spacing:.1em;line-height:1.1}.top nav{display:flex;gap:32px;margin-left:auto;font-size:13px}.top nav a{text-decoration:none}.top nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 21px;border-radius:5px;background:var(--dark);color:white;text-decoration:none;font-weight:700;font-size:15px}.button:hover{background:#285549}.small{padding:9px 14px;font-size:13px}.hero{overflow:hidden;background:#e9ede0}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:24px;min-height:478px;padding-block:55px}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.08em;display:flex;align-items:center;gap:10px}.eyebrow span{width:20px;height:2px;background:#668049}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(33px,4.95vw,68px);line-height:1.24;letter-spacing:-.055em;margin-bottom:24px}h2{font-size:clamp(24px,3.2vw,36px);line-height:1.4;letter-spacing:-.035em}h3{line-height:1.4}.intro{max-width:500px;margin-bottom:26px}.facade{height:340px;isolation:isolate;position:relative;overflow:hidden;background:linear-gradient(150deg,#e7eddb,#8ea89c);border-radius:7px}.tower{position:absolute;bottom:-10%;height:100%;background-color:#456c60}.front{left:30%;width:55%;transform:skewY(-21deg);background-image:repeating-linear-gradient(90deg,#36534a 0 6px,transparent 6px 27px),repeating-linear-gradient(0deg,#c0caaf 0 3px,transparent 3px 25px),linear-gradient(110deg,#b5c6ac,#204d46)}.side{left:13%;width:17%;transform:skewY(28deg);background:repeating-linear-gradient(0deg,#122c2b 0 4px,transparent 4px 25px),linear-gradient(90deg,#87a28f,#294a45)}.glass{right:-15%;width:38%;height:72%;transform:skewY(22deg);background:repeating-linear-gradient(0deg,#496c63 0 3px,transparent 3px 26px),repeating-linear-gradient(90deg,#738c7c 0 2px,transparent 2px 20px),linear-gradient(90deg,#ced6bc,#648d84)}.band{background:var(--dark);color:#fff;padding:29px 0 22px}.band h2{font-size:17px;margin-bottom:15px}.metrics{display:grid;grid-template-columns:1.17fr 1fr 1fr;gap:18px}.metrics>div{border-top:1px solid #5d766e;padding-top:11px}.metrics div>span{display:block;font-size:12px;color:#d0dfd4}.metrics strong{font-size:clamp(17px,2.6vw,30px);color:var(--mint);display:block}.metrics strong span,.metrics small{font-size:.57em}.note{margin:12px 0 0;color:#dbebde;font-size:12px}.section{padding-block:64px}.pair,.split,.steps{display:grid;gap:22px}.pair,.split{grid-template-columns:1fr 1fr}.pair article{background:white;border:1px solid var(--line);border-radius:7px;padding:25px}.pair ul{padding-left:1.25em;margin:0}.why{background:#e6ebde}.steps{grid-template-columns:repeat(3,1fr);padding:0;counter-reset:step;list-style:none}.steps li{border-top:1px solid #9ba99a;padding-top:18px;counter-increment:step}.steps li:before{content:counter(step,decimal-leading-zero);color:#4d6742;font-weight:800}.steps h3{margin:5px 0}.steps p{margin:0}.faq{padding-top:0}details{border-bottom:1px solid var(--line);padding:13px 0}summary{cursor:pointer;font-weight:700}details p{margin:8px 0 4px}.contact{background:var(--dark);color:white;padding:48px 0}.contact p{margin-bottom:0}.contact .split{align-items:center}.contact .button{background:var(--mint);color:var(--dark)}.contact .button:hover{background:#f0f7cc}.mail{display:block;width:fit-content;margin-top:9px}.contact h2{margin-bottom:9px}footer{background:#fff;padding:20px 0;font-size:12px}footer .shell{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
@media(max-width:730px){.shell{width:calc(100% - 36px)}.top{min-height:62px}.top nav{display:none}.hero-grid,.pair,.split,.steps{grid-template-columns:1fr}.hero-grid{padding-block:32px;gap:26px}.facade{height:170px}.metrics{grid-template-columns:1fr 1fr;gap:10px 16px}.metrics>div:first-child{grid-column:1/-1}.metrics>div:first-child strong{font-size:32px}.section{padding-block:43px}.faq{padding-top:0}.contact{padding-block:36px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

.contact-options{display:grid;grid-template-columns:1fr;gap:14px;margin-top:20px}
.contact-options article{min-width:0;display:flex;flex-direction:column;align-items:flex-start;background:#1c4037;border:1px solid #55776c;border-radius:7px;padding:18px}
.contact-options h3{margin:0 0 8px}
.contact-options p{margin:0 0 12px}
.contact-options .contact-id{font-size:14px;color:#dbeadd}
.contact-options .button{width:100%;min-height:48px;margin-top:auto}
.contact-qr{width:100%;border:0;padding:10px 0 0;font-size:13px}
.contact-qr summary{padding-block:5px}
.contact-qr img{display:block;width:min(100%,280px);height:auto;margin:8px auto 0;border-radius:6px}
.bottom-cta{display:none}

@media(min-width:731px){
  .contact-options{grid-template-columns:repeat(3,minmax(0,1fr))}
  .contact-qr{min-height:0}
}
@media(max-width:730px){
  html{scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  .bottom-cta{display:block;position:fixed;inset:auto 0 0;z-index:10;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line)}
  .bottom-cta .button{display:flex;width:100%;min-height:48px}
}
