:root{--accent:#ee5c40;--accent-strong:#c8442c;--accent-soft:#fbe3db;--accent-tint:#f4a48f;--ink:#61352e;--brown:#61352e;--muted:#93827b;--paper:#fff;--surface:#fff;--surface-alt:#f5f5f4;--line:#e7e3e1;--shadow:0 2px 4px #61352e0d, 0 16px 36px -20px #61352e38;--radius:16px;--content-max:1180px;--prose-max:720px;--font-body:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "YuGothic", "Meiryo", "Noto Sans JP", sans-serif}*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.85}img{max-width:100%;display:block}a{color:var(--accent-strong)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}h1,h2,h3{color:var(--ink);text-wrap:balance}h1{font-size:clamp(32px,5vw,60px);line-height:1.25}h2{font-size:clamp(26px,3.4vw,38px);line-height:1.35}h3{font-size:clamp(20px,2.4vw,26px);line-height:1.4}p{font-size:16px}.skip-link{background:var(--surface);color:var(--ink);z-index:100;padding:10px 16px;position:absolute;top:0;left:-9999px}.skip-link:focus{top:12px;left:12px}.wrap{max-width:var(--content-max);margin:0 auto;padding:0 28px}.wrap-prose{max-width:var(--prose-max)}.site-header{border-bottom:1px solid var(--line);background:var(--surface);z-index:40;position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;gap:20px;padding-top:18px;padding-bottom:18px;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:4px;display:flex}.brand-mark img{object-fit:contain;width:100%;height:100%}.brand-text{flex-direction:column;line-height:1.35;display:flex}.brand-text strong{font-size:19px}.brand-text small{color:var(--muted);font-size:12.5px}.nav-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;display:none}.nav-toggle-bar{background:var(--ink);width:20px;height:2px;margin:0 auto}.site-nav{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.site-nav a{color:var(--ink);border-bottom:2px solid #0000;padding:6px 2px;font-size:14.5px;font-weight:600;text-decoration:none}.site-nav a:hover{border-bottom-color:var(--accent)}.site-nav a[aria-current=page]{color:var(--accent-strong);border-bottom-color:var(--accent-strong)}.nav-cta{background:var(--accent);border-radius:999px;padding:9px 18px;font-weight:700;color:#fff!important}.nav-cta:hover{background:var(--accent-strong)}@media (width<=860px){.nav-toggle{display:flex}.site-nav{background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:4px;padding:12px 28px 20px;display:none;position:absolute;top:100%;left:0;right:0}.site-nav.is-open{display:flex}.site-nav a{border-bottom:1px solid var(--line);width:100%;padding:10px 0}.nav-cta{text-align:center;margin-top:8px}}.site-footer{background:var(--ink);color:#efe6d8;margin-top:0;padding:52px 0 28px;font-size:14px}.site-footer a{color:#efe6d8}.site-footer-inner{grid-template-columns:1.3fr 1fr 1fr;gap:28px;display:grid}.footer-brand strong{color:#fff;margin-bottom:6px;font-size:16px;display:block}.footer-brand p{opacity:.8;margin:2px 0}.footer-nav{flex-direction:column;gap:8px;display:flex}.footer-nav a{opacity:.85;text-decoration:none}.footer-nav a:hover{opacity:1;text-decoration:underline}.footer-contact p{opacity:.85;margin:3px 0}.footer-note{opacity:.7;border-top:1px solid #ffffff26;margin-top:32px;padding-top:20px;font-size:13px}@media (width<=720px){.site-footer-inner{grid-template-columns:1fr}}.section{padding:88px 0}.section-tight{padding:64px 0}.eyebrow{letter-spacing:.14em;color:var(--accent-strong);margin:0 0 14px;font-size:13px;font-weight:700}.icon{display:block}.btn{border-radius:999px;padding:15px 30px;font-size:15.5px;font-weight:700;text-decoration:none;display:inline-block}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent-strong)}
