:root{--green: #5aa078;--green-dark: #3e7657;--green-deep: #2f5b43;--green-soft: #eaf2ed;--cream: #fffcf8;--cream-deep: #f6efe5;--accent: #d98a72;--ink: #2b332e;--ink-muted: #6c7a71;--ink-faint: #9aa79f;--on-dark: #fffcf8;--line: #06c755;--border: #e6ded2;--shadow-sm: 0 1px 2px rgb(43 51 46 / 6%), 0 4px 12px rgb(43 51 46 / 5%);--shadow-md: 0 2px 4px rgb(43 51 46 / 6%), 0 12px 32px rgb(43 51 46 / 9%);--radius-sm: 8px;--radius: 14px;--radius-lg: 22px;--font-sans: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", Meiryo, system-ui, sans-serif;--font-serif: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;--container: 1080px;--gutter: clamp(1.25rem, 5vw, 2.5rem);--section-gap: clamp(4rem, 10vw, 7rem);--header-height: 60px;--mobile-bar-height: 62px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 12px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.9;letter-spacing:.02em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;padding-bottom:var(--mobile-bar-height)}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,picture,svg,video{display:block;max-width:100%;height:auto}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--green-dark);outline-offset:3px;border-radius:4px}@media(min-width:768px){body{padding-bottom:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.heading{font-family:var(--font-serif);font-weight:500;line-height:1.45;letter-spacing:.06em}.section-title{font-family:var(--font-serif);font-size:clamp(1.6rem,4.4vw,2.25rem);font-weight:500;line-height:1.4;letter-spacing:.08em;margin:0}.section-label{display:block;margin-bottom:.6rem;color:var(--green);font-size:.75rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.section-lead{margin-top:1.25rem;max-width:42em;color:var(--ink-muted);font-size:1rem}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-gap)}.section--tinted{background:var(--cream-deep)}.section--green{background:var(--green-soft)}.section-head{margin-bottom:clamp(2rem,5vw,3rem)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:52px;padding:.75rem 1.75rem;border:1px solid transparent;border-radius:999px;font-size:1rem;font-weight:700;letter-spacing:.06em;text-align:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--green);color:var(--on-dark);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:var(--green-dark);box-shadow:var(--shadow-md)}.btn--outline{border-color:var(--green);color:var(--green-dark);background:transparent}.btn--outline:hover{background:var(--green);color:var(--on-dark)}.btn--line{background:var(--line);color:#fff;box-shadow:var(--shadow-sm)}.btn--line:hover{background:#05b34c;box-shadow:var(--shadow-md)}.btn--ghost-light{border-color:#ffffffb3;color:#fff;background:#ffffff1f;backdrop-filter:blur(4px)}.btn--ghost-light:hover{background:#ffffff3d}.btn--block{width:100%}.btn[aria-disabled=true]{pointer-events:none;opacity:.55}.card{background:var(--cream);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.skip-link[data-astro-cid-5hce7sga]{position:absolute;top:-100px;left:12px;z-index:200;padding:.6rem 1rem;background:var(--green);color:#fff;border-radius:0 0 8px 8px;transition:top .2s ease}.skip-link[data-astro-cid-5hce7sga]:focus{top:0}
