@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/shippori-mincho-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/shippori-mincho-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--washi: #f7f3ec;--washi-deep: #efe8dc;--paper: #fbf8f3;--sumi: #1f1d1a;--vermillion: #c8452c;--vermillion-ink: #b03a24;--indigo: #2e4a62;--indigo-deep: #1d3246;--stone: #8a8478;--sakura: #f4c7cf;--sakura-deep: #e9a3b1;--bg: var(--washi);--surface: var(--paper);--text: var(--sumi);--text-muted: #5f594f;--line: rgb(31 29 26 / .12);--accent: var(--vermillion);--on-accent: #ffffff;--focus: var(--indigo);--font-serif: "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif CJK JP", Georgia, serif;--font-sans: "Inter", "Noto Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-xs: .8125rem;--fs-sm: .9375rem;--fs-base: 1.0625rem;--fs-lg: 1.25rem;--fs-xl: clamp(1.5rem, 1.2rem + 1.2vw, 2rem);--fs-2xl: clamp(2rem, 1.4rem + 2.6vw, 3.25rem);--fs-hero: clamp(2.3rem, 1.4rem + 3vw, 4.25rem);--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 3rem;--space-6: 4rem;--space-7: 6rem;--section: clamp(5rem, 3.5rem + 7vw, 9rem);--gutter: clamp(1rem, .5rem + 2.5vw, 2.5rem);--container: 72rem;--radius-sm: 6px;--radius: 14px;--radius-lg: 24px;--shadow-sm: 0 1px 2px rgb(31 29 26 / .06), 0 2px 8px rgb(31 29 26 / .04);--shadow: 0 2px 6px rgb(31 29 26 / .05), 0 18px 40px -18px rgb(31 29 26 / .22);--shadow-lg: 0 30px 80px -30px rgb(46 74 98 / .4);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .18s;--dur: .32s;--dur-slow: .9s;--z-petals: 5;--z-header: 50;--z-menu: 60;--z-skip: 100;--header-h: 72px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}img,svg{display:block;max-width:100%}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;line-height:1.2;margin:0;text-wrap:balance;letter-spacing:-.005em}p{margin:0;text-wrap:pretty}a{color:var(--vermillion-ink);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}::selection{background:var(--sakura);color:var(--sumi)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:var(--z-skip);padding:.75rem 1.25rem;background:var(--sumi);color:var(--washi);border-radius:var(--radius-sm);transform:translateY(-200%);transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.todo{background:repeating-linear-gradient(-45deg,#fff4c2,#fff4c2 6px,#ffeaa0 6px 12px);color:#5a4300;border-radius:4px;padding:.05em .35em;font-family:var(--font-sans);font-size:.9em;font-style:normal}.container{width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}.section{position:relative;padding-block:var(--section)}.section-head{max-width:44rem;margin-bottom:var(--space-6)}.section-head--center{margin-inline:auto;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:.75rem;margin-bottom:var(--space-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--indigo)}.eyebrow:before{content:"";width:2rem;height:1px;background:currentColor}.eyebrow .jp{font-family:var(--font-serif);letter-spacing:.1em;color:var(--vermillion-ink);text-transform:none}.section-title{font-size:var(--fs-2xl)}.lead{font-size:var(--fs-lg);color:var(--text-muted);margin-top:var(--space-3);max-width:38rem}.section-head--center .lead{margin-inline:auto}.v-line{position:absolute;left:max(var(--gutter),calc((100% - var(--container)) / 2 - 2rem));top:0;width:1px;height:100%;background:linear-gradient(to bottom,transparent,var(--line) 15%,var(--line) 85%,transparent);pointer-events:none}@media(max-width:1240px){.v-line{display:none}}.seigaiha{position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='40' viewBox='0 0 80 40'%3E%3Cg fill='none' stroke='%232E4A62' stroke-width='1.2'%3E%3Cpath id='a' d='M0 40a40 40 0 0 1 80 0M8 40a32 32 0 0 1 64 0M16 40a24 24 0 0 1 48 0M24 40a16 16 0 0 1 32 0M32 40a8 8 0 0 1 16 0'/%3E%3Cpath d='M-40 20a40 40 0 0 1 80 0M-32 20a32 32 0 0 1 64 0M-24 20a24 24 0 0 1 48 0M-16 20a16 16 0 0 1 32 0M-8 20a8 8 0 0 1 16 0M40 20a40 40 0 0 1 80 0M48 20a32 32 0 0 1 64 0M56 20a24 24 0 0 1 48 0M64 20a16 16 0 0 1 32 0M72 20a8 8 0 0 1 16 0'/%3E%3C/g%3E%3C/svg%3E");background-size:80px 40px;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent)}.btn{--btn-bg: var(--accent);--btn-fg: var(--on-accent);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;padding:.85rem 1.6rem;border:1px solid transparent;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:600;letter-spacing:.01em;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;touch-action:manipulation;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),background-color var(--dur-fast),color var(--dur-fast);will-change:transform}.btn:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),rgb(255 255 255 / .28),transparent 60%);opacity:0;transition:opacity var(--dur)}.btn:hover{text-decoration:none;box-shadow:0 12px 30px -12px #c8452ca6}.btn:hover:before{opacity:1}.btn:active{transform:scale(.97)}.btn svg{width:1.1em;height:1.1em;flex-shrink:0;transition:transform var(--dur) var(--ease-out)}.btn:hover svg{transform:translate(3px)}.btn--ghost{--btn-bg: transparent;--btn-fg: var(--text);border-color:currentColor}.btn--ghost:hover{--btn-bg: var(--sumi);--btn-fg: var(--washi);box-shadow:none}.btn--light{--btn-bg: rgb(255 255 255 / .12);--btn-fg: #fff;border-color:#ffffff8c}.btn--light:hover{--btn-bg: #fff;--btn-fg: var(--sumi);box-shadow:none}.btn--lg{min-height:56px;padding:1rem 2rem;font-size:var(--fs-base)}.js [data-reveal]{opacity:0;transform:translate3d(0,28px,0);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:calc(var(--i, 0) * 70ms)}.js [data-reveal=left]{transform:translate3d(-36px,0,0)}.js [data-reveal=right]{transform:translate3d(36px,0,0)}.js [data-reveal=scale]{transform:scale(.94)}.js [data-reveal].is-visible{opacity:1;transform:none}.split-word{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}.split-word>span{display:inline-block;transition:transform 1s var(--ease-out);transition-delay:calc(var(--w, 0) * 55ms)}.js [data-split]:not(.is-visible) .split-word>span{transform:translateY(105%)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}.js [data-reveal],.js [data-split] .split-word>span{opacity:1!important;transform:none!important}}.header.astro-3ef6ksr2{position:fixed;inset:0 0 auto;z-index:var(--z-header);height:var(--header-h);transition:background-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),height var(--dur) var(--ease-out)}.header.astro-3ef6ksr2.is-scrolled{background:#f7f3ecf2;box-shadow:0 1px 0 var(--line)}.header__inner.astro-3ef6ksr2{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);height:100%}.brand.astro-3ef6ksr2{display:flex;align-items:center;gap:.75rem;color:var(--text);text-decoration:none;min-height:44px}.brand__sun.astro-3ef6ksr2{position:relative;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#e0644a,var(--vermillion) 70%);box-shadow:0 0 0 4px #c8452c1f;flex-shrink:0;transition:transform var(--dur-slow) var(--ease-spring)}.brand__sun.astro-3ef6ksr2:after{content:"";position:absolute;inset:-8px;border-radius:50%;border:1px solid rgb(200 69 44 / .25);animation:ripple 3.2s var(--ease-out) infinite}.brand.astro-3ef6ksr2:hover .brand__sun.astro-3ef6ksr2{transform:translateY(-3px) scale(1.06)}@keyframes ripple{0%{transform:scale(.7);opacity:1}to{transform:scale(1.35);opacity:0}}.brand__text.astro-3ef6ksr2{display:flex;flex-direction:column;line-height:1.1}.brand__name.astro-3ef6ksr2{font-family:var(--font-serif);font-weight:700;font-size:1.125rem;white-space:nowrap}.brand__sub.astro-3ef6ksr2{font-size:.75rem;color:var(--text-muted);letter-spacing:.06em}.brand__sub.astro-3ef6ksr2 span.astro-3ef6ksr2{color:var(--vermillion-ink)}.nav__list.astro-3ef6ksr2{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}.nav__link.astro-3ef6ksr2{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 .8rem;color:var(--text);font-size:var(--fs-sm);font-weight:500;text-decoration:none}.nav__link.astro-3ef6ksr2:after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:8px;height:1px;background:var(--vermillion);transform:scaleX(0);transform-origin:right;transition:transform var(--dur) var(--ease-out)}.nav__link.astro-3ef6ksr2:hover:after,.nav__link.astro-3ef6ksr2[aria-current=true]:after{transform:scaleX(1);transform-origin:left}.nav__link.astro-3ef6ksr2[aria-current=true]{color:var(--vermillion-ink)}.nav__mobile-cta.astro-3ef6ksr2{display:none}.header__actions.astro-3ef6ksr2{display:flex;align-items:center;gap:.5rem}.header__cta.astro-3ef6ksr2{min-height:44px;padding:.6rem 1.2rem;white-space:nowrap}.header__cta-short.astro-3ef6ksr2{display:none}.burger.astro-3ef6ksr2{display:none;position:relative;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);cursor:pointer;z-index:calc(var(--z-menu) + 1)}.burger__bar.astro-3ef6ksr2{position:absolute;top:calc(50% - .75px);left:13px;right:13px;height:1.5px;background:var(--sumi);transition:transform var(--dur) var(--ease-out)}.burger__bar--top.astro-3ef6ksr2{transform:translateY(-4px)}.burger__bar--bottom.astro-3ef6ksr2{transform:translateY(4px)}.burger.astro-3ef6ksr2[aria-expanded=true] .burger__bar--top.astro-3ef6ksr2{transform:rotate(45deg)}.burger.astro-3ef6ksr2[aria-expanded=true] .burger__bar--bottom.astro-3ef6ksr2{transform:rotate(-45deg)}@media(max-width:1080px){.burger.astro-3ef6ksr2{display:block}.nav__list.astro-3ef6ksr2{position:fixed;inset:0;z-index:var(--z-menu);flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:calc(var(--header-h) + 1rem) var(--gutter) 2rem;background:radial-gradient(circle at 85% 18%,rgb(244 199 207 / .55),transparent 40%),var(--washi);visibility:hidden;opacity:0;clip-path:circle(0% at calc(100% - 2.5rem) 2.25rem);transition:clip-path .7s var(--ease-in-out),opacity .3s,visibility 0s .7s}.nav__list.astro-3ef6ksr2.is-open{visibility:visible;opacity:1;clip-path:circle(150% at calc(100% - 2.5rem) 2.25rem);transition:clip-path .8s var(--ease-in-out),opacity .2s,visibility 0s}.nav__list.astro-3ef6ksr2 li.astro-3ef6ksr2{opacity:0;transform:translateY(16px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2{opacity:1;transform:none}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(1){transition-delay:.15s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(2){transition-delay:.19s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(3){transition-delay:.23s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(4){transition-delay:.27s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(5){transition-delay:.31s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(6){transition-delay:.35s}.nav__list.astro-3ef6ksr2.is-open li.astro-3ef6ksr2:nth-child(7){transition-delay:.39s}.nav__link.astro-3ef6ksr2{font-family:var(--font-serif);font-size:clamp(1.6rem,6vw,2.25rem);font-weight:600;padding:.35rem 0}.nav__link.astro-3ef6ksr2:after{left:0;right:0;bottom:4px}.nav__mobile-cta.astro-3ef6ksr2{display:block;margin-top:var(--space-4)}.header__cta-long.astro-3ef6ksr2{display:none}.header__cta-short.astro-3ef6ksr2{display:inline}}@media(max-width:520px){.brand.astro-3ef6ksr2{gap:.55rem}.brand__sun.astro-3ef6ksr2{width:24px;height:24px}.brand__name.astro-3ef6ksr2{font-size:1rem}.brand__sub.astro-3ef6ksr2{display:none}.header__cta.astro-3ef6ksr2{padding:.55rem .95rem;font-size:.875rem}}.footer.astro-sz7xmlte{position:relative;padding:var(--space-5) 0 calc(var(--space-5) + 3rem);background:var(--sumi);color:#f7f3eccc;font-size:var(--fs-sm);overflow:hidden}.footer__inner.astro-sz7xmlte{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-3)}.footer__brand.astro-sz7xmlte{display:flex;align-items:center;gap:.75rem}.footer__brand.astro-sz7xmlte strong.astro-sz7xmlte{font-family:var(--font-serif);color:var(--washi)}.footer__sun.astro-sz7xmlte{width:18px;height:18px;border-radius:50%;background:var(--vermillion)}.footer__links.astro-sz7xmlte{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;margin:0;padding:0;list-style:none}.footer__links.astro-sz7xmlte a.astro-sz7xmlte{display:inline-flex;align-items:center;min-height:44px;color:inherit}.footer__links.astro-sz7xmlte a.astro-sz7xmlte:hover{color:#fff}.footer__jp.astro-sz7xmlte{position:absolute;right:var(--gutter);bottom:.75rem;font-family:var(--font-serif);font-size:.85rem;letter-spacing:.4em;color:#f7f3ec8c}.petals.astro-7s5dcq4c{position:fixed;inset:0;width:100%;height:100%;z-index:var(--z-petals);pointer-events:none}.petals-toggle.astro-7s5dcq4c{position:fixed;left:max(1rem,env(safe-area-inset-left));bottom:max(1rem,env(safe-area-inset-bottom));z-index:var(--z-header);display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:0 .95rem 0 .75rem;border:1px solid var(--line);border-radius:999px;background:#fbf8f3f5;color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:color var(--dur-fast),transform var(--dur) var(--ease-out)}.petals-toggle.astro-7s5dcq4c:hover{transform:translateY(-2px)}.petals-toggle.astro-7s5dcq4c svg.astro-7s5dcq4c{width:18px;height:18px;color:var(--stone);transition:color var(--dur),transform var(--dur-slow) var(--ease-spring)}.petals-toggle.astro-7s5dcq4c[aria-pressed=true] svg.astro-7s5dcq4c{color:var(--sakura-deep);transform:rotate(-20deg)}.petals-toggle.astro-7s5dcq4c[aria-pressed=false] .petals-toggle__label.astro-7s5dcq4c{text-decoration:line-through}.scroll-progress.astro-5hce7sga{position:fixed;inset:0 0 auto;height:3px;z-index:calc(var(--z-header) + 1);pointer-events:none}.scroll-progress.astro-5hce7sga span.astro-5hce7sga{display:block;height:100%;background:linear-gradient(90deg,var(--sakura-deep),var(--vermillion));transform-origin:0 50%;transform:scaleX(0);will-change:transform}main.astro-5hce7sga:focus{outline:none}main.astro-5hce7sga{overflow-x:clip}
