:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf7f0;--ink:#2b2a26;--green:#1f5238;--green-soft:#eaf2ec;--gold:#b8912c;--gold-text:#8a6a1c;--card:#fff;--muted:#655f52;--radius:12px;--shadow:0 2px 10px #2b2a2614}*{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--ink);margin:0;font-family:Hiragino Sans,Noto Sans JP,Yu Gothic UI,sans-serif;font-size:16px;line-height:1.9}header.nav{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#faf7f0eb;border-bottom:1px solid #e7e0d2;position:sticky;top:0}.nav-inner{align-items:center;gap:20px;max-width:1080px;margin:0 auto;padding:12px 20px;display:flex}.logo{color:var(--green);letter-spacing:.02em;font-size:18px;font-weight:700;text-decoration:none}.logo small{color:var(--gold-text);letter-spacing:.14em;margin-left:6px;font-size:11px;font-weight:600}nav.links{gap:18px;margin-left:auto;display:none}nav.links a{color:var(--ink);border-bottom:2px solid #0000;padding:4px 2px;font-size:14px;text-decoration:none}nav.links a:hover,nav.links a:focus-visible{border-bottom-color:var(--gold)}.nav-cta{margin-left:auto}@media (width<=879px){.cta-suffix,.logo small{display:none}}@media (width>=880px){nav.links{display:flex}.nav-cta{margin-left:0}}.btn{white-space:nowrap;background:var(--green);color:#fff;cursor:pointer;box-shadow:var(--shadow);border:none;border-radius:999px;padding:13px 28px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s,transform .15s;display:inline-block}.btn:hover,.btn:focus-visible{background:#2a6a4a;transform:translateY(-1px)}.btn.small{padding:9px 20px;font-size:13px}.btn:disabled{opacity:.6;cursor:default;transform:none}.btn.ghost{color:var(--green);border:1.5px solid var(--green);box-shadow:none;background:0 0}.btn.ghost:hover,.btn.ghost:focus-visible{background:var(--green-soft)}section{padding:72px 20px;scroll-margin-top:64px}.wrap{max-width:1080px;margin:0 auto}.narrow{max-width:720px;margin:0 auto}h2{color:var(--green);letter-spacing:.02em;margin:0 0 8px;font-size:26px}.lead{color:var(--muted);margin:0 0 36px;font-size:15px}.kicker{color:var(--gold-text);letter-spacing:.18em;margin-bottom:6px;font-size:12px;font-weight:700;display:inline-block}.hero{padding:64px 20px 84px;overflow:hidden}.hero .wrap{align-items:center;gap:40px;display:grid}@media (width>=880px){.hero .wrap{grid-template-columns:1fr 1fr}}.hero h1{color:var(--green);margin:0 0 14px;font-size:clamp(30px,4.6vw,44px);line-height:1.5}.hero h1 .accent{border-bottom:6px solid #b8912c59}.hero p.sub{margin:0 0 30px;font-size:17px}.nw{display:inline-block}.hero .cta-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.hero .note{color:var(--muted);margin-top:14px;font-size:12.5px}.tidy{width:100%;max-width:430px;height:340px;margin:0 auto;position:relative}@media (width<=879px){.tidy{height:250px}}.tile{background:var(--card);cursor:pointer;border-radius:18px;justify-content:center;align-items:center;width:96px;height:96px;text-decoration:none;transition:box-shadow .5s;display:flex;position:absolute;box-shadow:0 6px 18px #2b2a261a}.tile .tile-inner{justify-content:center;align-items:center;transition:transform .2s;display:flex}.tile:hover .tile-inner,.tile:focus-visible .tile-inner{transform:scale(1.15)}.tile:hover,.tile:focus-visible{box-shadow:0 8px 22px #2b2a2629}.tile svg{width:44px;height:44px}.tidy.settled .tile{box-shadow:0 3px 10px #2b2a2614}.tidy.settled .tile .tile-inner{animation:5s ease-in-out infinite breath}.tidy.settled .tile:nth-child(2n) .tile-inner{animation-delay:1.2s}.tidy.settled .tile:nth-child(3n) .tile-inner{animation-delay:2.4s}.tidy .baseline{background:var(--gold);transform-origin:0;opacity:.7;border-radius:2px;height:3px;transition:transform .9s .3s;position:absolute;bottom:-18px;left:8%;right:8%;transform:scaleX(0)}.tidy.settled .baseline{transform:scaleX(1)}@keyframes breath{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.tile,.tidy.settled .tile .tile-inner,.tidy.settled .tile:nth-child(2n) .tile-inner,.tidy.settled .tile:nth-child(3n) .tile-inner{transition:none;animation:none}.tidy .baseline{transition:none}}html.js .reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(14px)}html.js .reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;transition:none;transform:none}}.cards{gap:18px;display:grid}@media (width>=720px){.cards.c3{grid-template-columns:repeat(3,1fr)}}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 24px}.card h3{color:var(--green);margin:0 0 8px;font-size:17px}.card p{color:var(--ink);margin:0;font-size:14.5px}.icon-chip{background:var(--green-soft);border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:14px;display:flex}.icon-chip svg{width:24px;height:24px}.services .journey{display:none}.services.journey-active .journey{display:block}.services.journey-active .services-fallback{display:none}@media (prefers-reduced-motion:reduce){.services.journey-active .journey{display:none}.services.journey-active .services-fallback{display:block}}.journey-track{height:610vh}.journey-stage{justify-content:center;align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.journey-inner{text-align:center;grid-template-columns:1fr;align-items:center;gap:28px;width:min(92vw,980px);display:grid}@media (width>=880px){.journey-inner{text-align:left;grid-template-columns:auto 1fr;gap:64px}}.icon-stage{width:min(38vw,220px);height:min(38vw,220px);margin:0 auto;position:relative}.icon-card{background:var(--card);opacity:0;border-radius:28%;justify-content:center;align-items:center;transition:opacity .45s,transform .55s cubic-bezier(.22,.9,.3,1.05);display:flex;position:absolute;inset:0;transform:scale(.7)rotate(-10deg);box-shadow:0 18px 50px #1f523824}.icon-card.active{opacity:1;transform:scale(1)rotate(0)}.icon-card.passed{opacity:0;transform:scale(1.15)rotate(8deg)}.icon-card svg{width:46%;height:46%;overflow:visible}.icon-stage .halo{z-index:-1;background:radial-gradient(circle,#eaf2ece6,#eaf2ec00 70%);border-radius:50%;position:absolute;inset:-14%}.journey-txt{min-height:11em;position:relative}.step-copy{opacity:0;transition:opacity .4s,transform .5s;position:absolute;inset:0;transform:translateY(26px)}.step-copy.active{opacity:1;transform:none}.step-copy.passed{opacity:0;transform:translateY(-26px)}.step-copy .count{color:var(--gold-text);letter-spacing:.25em;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.step-copy h3{color:var(--green);margin:0 0 10px;font-size:clamp(22px,4.5vw,32px);line-height:1.5}.step-copy .desc{color:var(--ink);margin:0;font-size:15px}.journey-progress{background:#e7e0d2;border-radius:2px;width:min(60vw,320px);height:3px;position:absolute;bottom:26px;left:50%;overflow:hidden;transform:translate(-50%)}.journey-progress i{background:var(--gold);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.scroll-cue{color:var(--gold-text);letter-spacing:.15em;flex-direction:column;align-items:center;gap:2px;font-size:11.5px;transition:opacity .4s;display:flex;position:absolute;bottom:44px;left:50%;transform:translate(-50%)}.scroll-cue .chev{font-size:16px;line-height:1;animation:1.5s ease-in-out infinite jn-cue-bob}.scroll-cue.hidden{opacity:0}@keyframes jn-cue-bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.icon-card.active .a-pen{transform-origin:20% 85%;animation:1.1s ease-in-out infinite jn-write}@keyframes jn-write{0%,to{transform:rotate(0)translate(0)}25%{transform:rotate(-10deg)translate(-1px,1px)}55%{transform:rotate(6deg)translate(1.5px,-.5px)}75%{transform:rotate(-4deg)}}.icon-card.active .a-badge{transform-origin:50%;animation:1.8s ease-in-out infinite jn-ping}@keyframes jn-ping{0%,15%{transform:scale(0)}40%{transform:scale(1.6)}55%,to{transform:scale(1)}}.icon-card.active .a-mailbody{transform-origin:50%;animation:1.8s ease-in-out infinite jn-mail-hop}@keyframes jn-mail-hop{0%,35%,to{transform:translateY(0)rotate(0)}45%{transform:translateY(-2.5px)rotate(-3deg)}58%{transform:translateY(0)rotate(2deg)}70%{transform:rotate(0)}}.icon-card.active .a-day{transform-origin:50%;animation:1.6s ease-in-out infinite jn-pop-day}@keyframes jn-pop-day{0%,25%{transform:scale(1)}45%{transform:scale(2.4)}65%,to{transform:scale(1)}}.icon-card.active .a-dot{transform-origin:50%;animation:1.1s ease-in-out infinite jn-typing}.icon-card.active .a-dot2{animation-delay:.18s}.icon-card.active .a-dot3{animation-delay:.36s}@keyframes jn-typing{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-1.8px)}}.icon-card.active .a-rays{transform-origin:50%;animation:3.5s linear infinite jn-spin}@keyframes jn-spin{to{transform:rotate(360deg)}}.icon-card.active .a-core{transform-origin:50%;animation:1.75s ease-in-out infinite jn-pulse}@keyframes jn-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.icon-card.active .a-person{transform-origin:50% 85%;animation:2s ease-in-out infinite jn-nod}@keyframes jn-nod{0%,to{transform:rotate(0)}22%{transform:rotate(-8deg)translateY(2px)}44%{transform:rotate(1.5deg)}58%{transform:rotate(0)}}.trouble{background:var(--green-soft)}.trouble .card{box-shadow:none;border:1px solid #d9e6dc}.trouble .card p.q{color:var(--ink);margin-bottom:6px;font-size:15.5px;font-weight:600}.plan{flex-direction:column;display:flex;position:relative}.plan .price{color:var(--green);margin:4px 0 2px;font-size:30px;font-weight:700}.plan .price small{color:var(--muted);font-size:14px;font-weight:500}.plan .limit{color:var(--gold-text);margin-bottom:12px;font-size:12.5px;font-weight:700}.plan ul{margin:0 0 8px;padding-left:19px;font-size:14px}.plan li{margin:4px 0}.plan .badge{background:var(--gold-text);color:#fff;letter-spacing:.08em;border-radius:999px;padding:4px 12px;font-size:11.5px;font-weight:700;position:absolute;top:-12px;right:16px}.plan.reco{border:2px solid var(--gold)}.price-notes{color:var(--muted);margin-top:22px;padding-left:0;font-size:12.5px;list-style:none}.price-notes li{margin:2px 0}.boundary{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:26px;padding:20px 24px;font-size:14px}.boundary p{margin:0}.boundary .boundary-extra{margin-top:8px}.boundary strong{color:var(--green)}.steps{counter-reset:step;gap:18px;display:grid}@media (width>=720px){.steps{grid-template-columns:repeat(3,1fr)}}.step{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 24px;position:relative}.step:before{counter-increment:step;content:counter(step);background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;font-weight:700;display:flex;position:absolute;top:-16px;left:20px}.step h3{color:var(--green);margin:8px 0 6px;font-size:16px}.step p{margin:0;font-size:14px}.soon{background:linear-gradient(135deg,#f2ead7,#eaf2ec)}.soon-card{background:var(--card);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:20px;padding:34px 28px;display:grid;position:relative}@media (width>=720px){.soon-card{grid-template-columns:1fr auto}}.soon-badge{background:var(--gold-text);color:#fff;letter-spacing:.14em;border-radius:999px;margin-bottom:10px;padding:5px 14px;font-size:12px;font-weight:700;display:inline-block}.soon-card h3{color:var(--green);margin:0 0 8px;font-size:20px}.soon-card p{margin:0;font-size:14.5px}.soon-icon{background:var(--green-soft);border-radius:22px;justify-content:center;align-items:center;width:88px;height:88px;margin:0 auto;display:flex}.soon-icon svg{width:46px;height:46px}details{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:0;overflow:hidden}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;font-size:15px;font-weight:600;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary:hover,summary:focus-visible{background:var(--green-soft)}summary:after{content:"＋" / "";color:var(--gold-text);flex-shrink:0;font-weight:700}details[open] summary:after{content:"−" / ""}details .a{color:var(--ink);padding:0 22px 18px;font-size:14.5px}.about-card{background:var(--card);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:26px;padding:34px 28px;display:grid}@media (width>=720px){.about-card{grid-template-columns:auto 1fr}}.face{background:var(--green-soft);width:132px;height:132px;color:var(--muted);text-align:center;border:3px solid #d9e6dc;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:12px;display:flex}img.face{object-fit:cover;display:block}.about-card h3{color:var(--green);margin:0 0 4px;font-size:18px}.about-card .role{color:var(--gold-text);letter-spacing:.1em;margin:0 0 10px;font-size:12.5px;font-weight:700}.about-card p{margin:0;font-size:14.5px}.contact{background:var(--green-soft)}form{background:var(--card);box-shadow:var(--shadow);border-radius:16px;padding:30px 26px}label{color:var(--green);margin:16px 0 6px;font-size:13.5px;font-weight:600;display:block}input,textarea{background:#fffdf8;border:1.5px solid #ddd5c4;border-radius:10px;width:100%;padding:12px 14px;font-family:inherit;font-size:15px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);border-color:var(--gold)}#contact-turnstile-slot{justify-content:center;min-height:65px;margin:18px 0 0;display:flex}form .btn{margin:20px auto 0;display:block}#contact-status{text-align:center;color:var(--green);min-height:1.5em;margin:12px 0 0;font-size:14px;font-weight:600}#opening{z-index:100;background:var(--bg);cursor:pointer;transition:opacity .55s;display:none;position:fixed;inset:0}#opening.playing{display:block}#opening.closing{opacity:0;pointer-events:none}#opening .op-tile{background:var(--card);opacity:0;will-change:transform;border-radius:18px;justify-content:center;align-items:center;transition:transform 1s cubic-bezier(.22,.9,.3,1.02),opacity .5s;display:flex;position:absolute;box-shadow:0 8px 24px #2b2a261f}#opening .op-tile svg{width:46%;height:46%}#opening .op-tile.floating{animation:2.6s ease-in-out infinite op-float}#opening .op-tile.floating:nth-child(2n){animation-delay:.7s}#opening .op-tile.floating:nth-child(3n){animation-delay:1.4s}@keyframes op-float{0%,to{margin-top:0}50%{margin-top:-7px}}#opening .op-copy{color:var(--green);letter-spacing:.14em;white-space:nowrap;opacity:0;filter:blur(10px);z-index:2;pointer-events:none;font-size:clamp(22px,5vw,34px);font-weight:700;transition:opacity .8s,filter .8s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#opening .op-copy.show{opacity:1;filter:blur()}#opening .op-copy.out{opacity:0;filter:blur(6px);transition-duration:.45s}#opening .op-brand{color:var(--gold-text);letter-spacing:.3em;opacity:0;white-space:nowrap;font-size:14px;font-weight:700;transition:opacity .7s;position:absolute;left:50%;transform:translate(-50%)}#opening .op-brand.show{opacity:1}#opening .op-baseline{background:var(--gold);transform-origin:0;opacity:.8;border-radius:2px;height:3px;transition:transform .7s;position:absolute;transform:scaleX(0)}#opening .op-baseline.show{transform:scaleX(1)}#opening .op-skip{color:#8b8578;letter-spacing:.1em;font-size:11.5px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){#opening.playing{display:none}}footer{text-align:center;color:var(--muted);padding:56px 20px 40px;font-size:13px}.footer-brand{color:var(--green);margin:0 0 4px;font-size:15px;font-weight:700}.footer-tagline{margin:0}
