:root{--color-text:#39483e;--color-heading:#2b503d;--color-brand:#315f49;--color-brand-dark:#244a38;--color-accent:#659778;--color-muted:#68786d;--color-muted-light:#819084;--color-bg:#fff;--color-bg-soft:#f4f8f4;--color-bg-green:#e9f2eb;--color-border:#dbe5dc;--color-footer:#254a38;--color-on-green:#e2eee5;--color-qr-bg:#f4f8f4;--color-shadow:#244a381c;--color-footer-border:#fff3;--font-body:"Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--font-heading:"Yu Mincho", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.9}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}.wrap{width:min(1120px,100% - 48px);margin-inline:auto}.section{padding-block:105px}.section-label{color:var(--color-accent);letter-spacing:.13em;margin:0;font-size:13px;font-weight:700}h1,h2{font-family:var(--font-heading);letter-spacing:.05em;font-weight:500}h2{color:var(--color-heading);margin:13px 0 17px;font-size:clamp(32px,3.3vw,43px);line-height:1.5}.intro{color:var(--color-muted);margin:0}.button{border:1px solid var(--color-brand);background:var(--color-brand);min-width:225px;color:var(--color-bg);border-radius:30px;justify-content:space-between;align-items:center;gap:20px;padding:13px 21px;font-size:16px;font-weight:700;line-height:1.5;display:inline-flex}.button:hover{background:var(--color-brand-dark)}.button span{font-size:21px;line-height:1}.button-full{width:100%}.button-light{background:var(--color-bg);min-width:0;color:var(--color-brand);justify-content:center}.button-light:hover{background:var(--color-bg-soft)}.card{background:var(--color-bg);border:1px solid var(--color-border)}.site-header{background:var(--color-bg)}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:90px;display:flex}.site-logo{color:var(--color-brand);white-space:nowrap;flex:none;align-items:center;gap:10px;font-family:Georgia,serif;font-size:20px;font-weight:700;display:inline-flex}.site-logo img{object-fit:contain;width:42px;height:42px}.desktop-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 18px;display:flex}.desktop-nav a,.mobile-nav nav a{color:var(--color-text);font-size:14px;font-weight:700}.desktop-nav a{white-space:nowrap;border-bottom:2px solid #0000;padding:9px 0}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--color-brand);border-color:var(--color-brand)}.mobile-nav{display:none;position:relative}.mobile-nav summary{cursor:pointer;border:1px solid var(--color-border);color:var(--color-brand);white-space:nowrap;border-radius:30px;padding:7px 14px;font-size:15px;font-weight:700;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{z-index:20;background:var(--color-bg);border:1px solid var(--color-border);width:min(270px,80vw);box-shadow:0 14px 28px var(--color-shadow);padding:8px 17px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.mobile-nav nav a{border-bottom:1px solid var(--color-border);padding:12px 5px}.mobile-nav nav a:last-child{border-bottom:0}.mobile-nav nav a[aria-current=page]{color:var(--color-brand);text-underline-offset:5px;text-decoration:underline}.site-footer{background:var(--color-footer);color:var(--color-on-green)}.footer-main{justify-content:space-between;gap:40px;padding-block:46px 30px;display:flex}.footer-name{color:var(--color-bg);font-family:Georgia,serif;font-size:22px;font-weight:700}.footer-main p{margin:11px 0 0;font-size:15px}.social-link{text-underline-offset:4px;align-items:center;gap:9px;text-decoration:underline;display:inline-flex}.social-icon{flex:none;width:22px;height:22px}.footer-main nav{flex-wrap:wrap;place-content:flex-start flex-end;gap:9px 20px;max-width:500px;display:flex}.footer-main nav a{font-size:14px}.footer-main nav a:hover{text-decoration:underline}.footer-disclaimer{border:1px solid var(--color-footer-border);color:var(--color-on-green);margin-block:0 22px;padding:17px 20px;font-size:14px}.footer-bottom{border-top:1px solid var(--color-footer-border);padding:16px 0 25px;font-size:13px}.cta-section{background:var(--color-brand);color:var(--color-bg);padding-block:105px}.cta-grid{grid-template-columns:1fr 1fr;gap:70px;display:grid}.cta-intro .section-label{color:var(--color-on-green)}.cta-intro h2{color:var(--color-bg)}.cta-intro>p:last-child{max-width:420px;color:var(--color-on-green)}.cta-card{background:var(--color-bg);color:var(--color-text);padding:35px 38px}.cta-card h3{color:var(--color-brand);margin:0;font-size:21px}.qr-box{background:var(--color-qr-bg);justify-items:center;gap:6px;margin:20px 0 6px;padding:16px;display:grid}.qr-box img{width:min(220px,100%);height:auto;display:block}.qr-box p{color:var(--color-muted);text-align:center;margin:0;font-size:13px}.cta-card>.button{margin:21px 0 13px}.cta-card dl{margin:25px 0 0}.cta-card dl>div{border-top:1px solid var(--color-border);grid-template-columns:90px 1fr;gap:10px;padding:13px 0;display:grid}.cta-card dt{color:var(--color-muted);font-size:14px}.cta-card dd{margin:0;font-size:15px}.line-id{color:var(--color-brand);text-underline-offset:3px;font-weight:700;text-decoration:underline}@media (width<=1000px){.desktop-nav{display:none}.mobile-nav{display:block}}@media (width<=800px){.cta-grid{grid-template-columns:1fr;gap:35px}.footer-main{flex-direction:column}.footer-main nav{justify-content:flex-start}}@media (width<=520px){.wrap{width:calc(100% - 36px)}.header-inner{gap:8px;min-height:74px}.site-logo{gap:5px;font-size:12px}.site-logo img{width:31px;height:31px}.section,.cta-section{padding-block:72px}h2{font-size:31px}.cta-card{padding:27px 22px}.cta-card dl>div{grid-template-columns:73px 1fr}.footer-name{font-size:17px}}
