
:root{--ink:#203e39;--green:#28594b;--light:#edf2ed;--paper:#faf9f5;--line:#d8dfd7;--muted:#50615a;--gold:#866334;--serif:"YuMincho","Hiragino Mincho ProN",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:18px;line-height:1.9;overflow-wrap:anywhere}a{color:inherit}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a76a15;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:.04em}h1{font-size:clamp(36px,4.1vw,59px);line-height:1.65;margin-bottom:24px}h2{font-size:clamp(28px,3vw,40px);line-height:1.65;margin-bottom:20px}h3{font-size:23px;line-height:1.65;margin-bottom:13px}p{margin-bottom:20px}.wrap{width:min(1180px,calc(100% - 80px));margin:auto}.preview{background:#e8ece5;color:#405448;font-size:14px;text-align:center;padding:5px 16px}.header{background:#faf9f5f5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.header-inner{height:92px;display:flex;justify-content:space-between;align-items:center;gap:22px}.brand{text-decoration:none;line-height:1.2;display:block;flex-shrink:0}.brand strong{font-family:Georgia,serif;font-size:37px;letter-spacing:.12em}.brand span{display:block;font-size:12px;letter-spacing:.08em;margin-top:7px}.nav{display:flex;align-items:center;gap:26px;font-size:16px;font-weight:600}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:58px;padding:13px 25px;border:1px solid var(--green);background:var(--green);color:white;text-decoration:none;font-weight:700;border-radius:4px;line-height:1.6;transition:background .2s,transform .2s}.button:hover{background:#193e33;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--green)}.button.outline:hover{background:#e9eee7}.button.gold{background:#72552f;border-color:#72552f}.arrow{font-family:Arial,sans-serif;font-size:23px;font-weight:400}.menu-toggle{display:none}.hero{padding:76px 0 0;background:linear-gradient(115deg,#faf9f5 55%,#eaf0e8 55%)}.hero-grid{display:grid;grid-template-columns:1.22fr 1fr;align-items:center;gap:36px}.eyebrow{font-size:15px;letter-spacing:.13em;color:var(--green);font-weight:700;display:flex;align-items:center;gap:12px;margin-bottom:19px}.eyebrow:before{content:"";width:27px;height:1px;background:currentColor}.hero-lead{max-width:590px;font-size:19px}.hero-art{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero-art svg{width:100%;height:auto}.art-caption{font-size:16px;text-align:center;letter-spacing:.07em;margin:0 0 24px}.hero-foot{font-size:16px;margin:30px 0 24px;color:var(--muted)}.entrances{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px;position:relative}.entrance{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:27px 30px;text-decoration:none;background:white}.entrance:hover{background:#f1f5ef}.entrance .number{font-family:Georgia,serif;font-size:34px;color:var(--gold)}.entrance small{display:block;font-size:15px;color:var(--muted);font-weight:400}.entrance strong{font-size:23px;line-height:1.6}.section{padding:94px 0}.center{text-align:center}.center .eyebrow{justify-content:center}.intro{color:var(--muted);max-width:760px}.center .intro{margin:0 auto 40px}.concerns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.concern{padding:32px 35px;background:white;border:1px solid var(--line);border-top:3px solid var(--green)}.concern:last-child{border-top-color:var(--gold)}.list{list-style:none;margin:0;padding:0}.list li{position:relative;padding:13px 0 13px 30px;border-bottom:1px solid #e7ebe5}.list li:last-child{border:0}.list li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:bold}.concern a{display:inline-block;margin-top:22px;color:var(--green);font-weight:bold;text-underline-offset:6px}.solution{background:#edf2ed}.solution.alt{background:#f4f0e8}.section-top{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:end;margin-bottom:40px}.section-top p{margin:0}.section-index{font-family:Georgia,serif;font-size:17px;letter-spacing:.16em;color:var(--green);margin-bottom:12px}.solution.alt .section-index{color:var(--gold)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{background:#fff;padding:29px 28px;border-radius:4px;border:1px solid #dbe2d9}.step-no{font-family:Georgia,serif;color:var(--green);display:block;font-size:31px;margin-bottom:10px}.step p{font-size:18px;color:var(--muted);margin-bottom:0}.benefit{border-top:1px solid var(--line);margin-top:22px;padding-top:17px;font-weight:700;font-size:17px}.benefit:before{content:"→ ";color:var(--green)}.support-note{font-size:16px;color:var(--muted);margin:24px 0 28px}.inline-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.inline-cta p{font-size:16px;margin:0}.strength{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.strength-list article{padding:24px 0;border-top:1px solid var(--line)}.strength-list article:first-child{padding-top:0;border:0}.strength-list p{color:var(--muted);margin:0}.strength-visual{border:1px solid var(--line);background:white;padding:28px;margin-top:30px;text-align:center;border-radius:4px}.pill-row{display:flex;gap:10px;align-items:center;justify-content:center;margin-bottom:16px}.pill-row span{flex:1;background:var(--light);padding:10px;font-weight:bold;font-size:17px}.strength-visual strong{font-family:var(--serif);font-size:24px}.flow-section{background:#fff;border-block:1px solid var(--line)}.flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:40px 0 0;counter-reset:flow}.flow li{counter-increment:flow;position:relative;border-top:2px solid var(--line);padding-top:22px}.flow li:before{content:"0" counter(flow);font-family:Georgia,serif;font-size:30px;color:var(--gold);display:block;margin-bottom:10px}.flow h3{font-size:21px}.flow p{font-size:17px;color:var(--muted);margin:0}.faq{max-width:900px;margin:auto}.faq details{border-bottom:1px solid var(--line)}summary{list-style:none;padding:26px 40px 26px 0;position:relative;font-weight:700;font-size:20px;cursor:pointer}summary::-webkit-details-marker{display:none}summary:after{content:"＋";position:absolute;right:0;color:var(--green)}details[open] summary:after{content:"−"}details p{padding:0 24px 25px 0;color:var(--muted);margin:0}.contact{background:#254c40;color:white}.contact .eyebrow{color:#e1d0aa}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}.contact p{color:#e0e9e2}.contact-choices{display:grid;gap:16px;align-content:center}.contact-choices .button{background:white;color:var(--green);justify-content:space-between;padding:20px 24px;border-color:white}.contact-choices .button:hover{background:#e8eee5}.contact-choices .button small{display:block;font-size:15px;font-weight:400}.contact-choices .contact-note{font-size:15px;margin:4px 0 0}.footer{padding:44px 0 28px;background:#f0f1eb}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start}.footer-links{display:flex;gap:25px;flex-wrap:wrap;font-size:16px}.copyright{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin:28px 0 0}.backtop{display:block;text-align:right;font-size:16px;margin-top:18px;text-underline-offset:5px}@media(min-width:1500px){body{font-size:20px}}@media(max-width:1050px){.nav{gap:17px;font-size:15px}.nav .button{padding:12px 18px}.wrap{width:calc(100% - 48px)}.hero-grid{gap:15px}.hero h1{font-size:40px}.section-top{gap:35px}.strength{gap:40px}.step{padding:24px 22px}}@media(max-width:800px){html{scroll-padding-top:90px}.header-inner{height:78px}.menu-toggle{display:block;min-height:48px;background:none;color:var(--ink);border:1px solid var(--line);border-radius:3px;padding:8px 14px;font-size:16px}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:22px 24px;border-bottom:1px solid var(--line);font-size:18px;align-items:stretch}.nav.open{display:flex;flex-direction:column;gap:18px}.hero{padding-top:40px;background:linear-gradient(160deg,#faf9f5 60%,#eaf0e8 60%)}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(35px,6.5vw,48px)}.hero-art{max-width:440px;margin:0 auto}.hero-art svg{max-height:290px}.art-caption{margin:0}.hero-foot{margin-bottom:0}.entrances{margin-top:30px}.entrance{padding:22px 18px;gap:13px}.entrance strong{font-size:20px}.section{padding:62px 0}.section-top,.strength,.contact-grid{grid-template-columns:1fr;gap:25px}.steps{grid-template-columns:1fr;gap:15px}.step{display:grid;grid-template-columns:44px 1fr;column-gap:14px}.step-no{grid-row:1/4}.step h3,.step p,.step .benefit{grid-column:2}.step-no{margin:0}.concern{padding:25px}.flow{grid-template-columns:1fr 1fr}.footer-grid{flex-direction:column}.contact-grid{gap:25px}}@media(max-width:520px){.wrap{width:calc(100% - 36px)}body{font-size:18px}.preview{font-size:13px}.brand strong{font-size:30px}.brand span{font-size:11px}.hero h1{font-size:35px;letter-spacing:0}.hero-lead{font-size:18px}.eyebrow{font-size:14px;letter-spacing:.04em}.entrances,.concerns{grid-template-columns:1fr}.entrance{padding:22px}.entrance strong{font-size:22px}.entrance small{font-size:15px}.section{padding:54px 0}h2{font-size:29px}h3{font-size:22px}.flow{gap:24px 20px}.flow h3{font-size:20px}.flow p{font-size:17px}.inline-cta .button{width:100%}.footer-links{gap:15px;font-size:16px}.contact-choices .button{font-size:18px}.step{padding:25px 20px}.hero-art{width:100%}summary{font-size:19px}.contact h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.header{position:static}.preview,.menu-toggle{display:none}.section{padding:30px 0}.hero{padding-top:30px}.button{color:var(--ink);background:white}.wrap{width:95%}.steps{break-inside:avoid}}
