.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;background:#f5f3efeb;backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}.header-inner[data-astro-cid-3ef6ksr2]{max-width:var(--w-wide);margin:0 auto;padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.brand[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.75rem;line-height:1.1}.brand-circle[data-astro-cid-3ef6ksr2]{width:52px;height:52px;border-radius:50%;border:2px solid var(--accent);display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.brand-circle[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{font-family:var(--serif);font-style:italic;font-size:1.25rem;letter-spacing:.02em}.brand-sub[data-astro-cid-3ef6ksr2]{font-family:var(--jp);font-size:.78rem;color:var(--ink-muted);letter-spacing:.14em}.primary-nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{list-style:none;display:flex;gap:2rem;padding:0;margin:0}.primary-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;line-height:1.1;position:relative;padding-bottom:4px}.primary-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].is-active .nav-en[data-astro-cid-3ef6ksr2]{color:var(--accent-dark)}.primary-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].is-active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent);border-radius:2px}.nav-en[data-astro-cid-3ef6ksr2]{font-family:var(--serif);font-size:1.05rem;letter-spacing:.04em}.nav-jp[data-astro-cid-3ef6ksr2]{font-family:var(--jp);font-size:.65rem;color:var(--ink-muted);letter-spacing:.16em;margin-top:2px}@media(max-width:900px){.primary-nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{gap:1.2rem}.nav-en[data-astro-cid-3ef6ksr2]{font-size:.95rem}}@media(max-width:720px){.header-inner[data-astro-cid-3ef6ksr2]{padding:1rem 1.25rem;flex-direction:column;align-items:flex-start;gap:.75rem}.primary-nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{gap:1rem;flex-wrap:wrap}.nav-jp[data-astro-cid-3ef6ksr2]{display:none}}.site-footer[data-astro-cid-sz7xmlte]{background:#1a1a1a;color:#d9d4cb;margin-top:var(--space-xl)}.footer-inner[data-astro-cid-sz7xmlte]{max-width:var(--w-wide);margin:0 auto;padding:var(--space-lg) var(--space-md);display:grid;grid-template-columns:1.1fr 2fr;gap:var(--space-lg)}.brand-circle[data-astro-cid-sz7xmlte]{width:56px;height:56px;border-radius:50%;border:2px solid var(--accent);display:inline-flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:.75rem}.brand-circle[data-astro-cid-sz7xmlte] span[data-astro-cid-sz7xmlte]{font-family:var(--serif);font-style:italic;font-size:1.35rem}.brand-sub[data-astro-cid-sz7xmlte]{font-family:var(--jp);font-size:.85rem;letter-spacing:.14em;margin-bottom:1.5rem;color:#d9d4cb}address[data-astro-cid-sz7xmlte]{font-style:normal;font-size:.85rem;line-height:1.9;color:#b6afa3;margin-bottom:1rem}.tel[data-astro-cid-sz7xmlte]{font-size:.85rem;line-height:1.9;color:#d9d4cb}.footer-cols[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.footer-col[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-family:var(--serif);font-style:italic;font-size:.95rem;color:#b6afa3;margin-bottom:1rem;letter-spacing:.04em;font-weight:400}.footer-col[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0}.footer-col[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{margin-bottom:.6rem;font-size:.85rem}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:#d9d4cb}.footer-meta[data-astro-cid-sz7xmlte]{border-top:1px solid #2e2e2e}.footer-meta-inner[data-astro-cid-sz7xmlte]{max-width:var(--w-wide);margin:0 auto;padding:1.25rem var(--space-md);display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:#8a8479;letter-spacing:.06em}.meta-links[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0;display:flex;gap:1.5rem}.meta-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:#8a8479}@media(max-width:900px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr}.footer-cols[data-astro-cid-sz7xmlte]{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.footer-cols[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:1.5rem}.footer-meta-inner[data-astro-cid-sz7xmlte]{flex-direction:column;gap:.75rem;align-items:flex-start}}:root{--bg: #ffffff;--bg-alt: #faf6f1;--bg-tint: #fff4ea;--ink: #2a2a2a;--ink-muted: #6b6b6b;--ink-soft: #9a9a9a;--rule: #e7e1d7;--accent: #f39c56;--accent-dark: #d97a30;--accent-soft: #fde7d2;--shadow-sm: 0 6px 24px rgba(74, 56, 38, .06);--shadow-md: 0 16px 40px rgba(74, 56, 38, .12);--serif: "Cormorant Garamond", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans: "Geist", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--jp: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--w-narrow: 720px;--w-text: 880px;--w-wide: 1180px;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 8rem}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-feature-settings:"palt";line-height:1.85;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}main,.site-footer{position:relative;z-index:2}a{color:inherit;text-decoration:none;transition:opacity .2s ease,color .2s ease}a:hover{opacity:.65}:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;left:1rem;top:-3rem;z-index:100;background:var(--ink);color:#fff;padding:.6rem 1.1rem;border-radius:8px;font-family:var(--sans);font-size:.85rem;letter-spacing:.04em;transition:top .2s ease}.skip-link:focus{top:1rem;opacity:1}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--jp);font-weight:400;line-height:1.4;letter-spacing:.02em}.eyebrow{font-family:var(--serif);font-style:italic;font-size:.95rem;color:var(--ink-muted);letter-spacing:.06em;margin-bottom:1rem;display:block}.display{font-family:var(--serif);font-size:clamp(2.6rem,6vw,4.8rem);line-height:1.1;letter-spacing:0;font-weight:400}.display-jp{font-family:var(--jp);font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.55;letter-spacing:.08em;font-weight:400;color:var(--ink-muted)}.section{padding:var(--space-xl) var(--space-md)}.section--alt{background:var(--bg-alt)}.container{max-width:var(--w-wide);margin:0 auto}.container--narrow{max-width:var(--w-narrow)}.container--text{max-width:var(--w-text)}.rule{width:48px;height:1px;background:var(--ink);margin:2rem 0}.btn{display:inline-block;font-family:var(--serif);font-style:italic;font-size:1.05rem;border-bottom:1px solid var(--ink);padding:.25rem 0;letter-spacing:.02em;color:var(--ink)}.btn--filled{background:var(--accent);color:#fff;padding:1rem 2.5rem;border:none;font-family:var(--sans);font-style:normal;font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:999px;transition:background .2s ease,transform .1s ease}.btn--filled:hover{background:var(--accent-dark);opacity:1}.btn--filled:active,.btn--outline:active{transform:translateY(1px) scale(.985)}.btn--outline{display:inline-block;border:1px solid var(--accent);color:var(--accent-dark);padding:.85rem 2rem;font-family:var(--sans);font-size:.9rem;letter-spacing:.1em;border-radius:999px;background:transparent}.btn--outline{transition:background .2s ease,transform .1s ease}.btn--outline:hover{background:var(--accent-soft);opacity:1}.chip{display:inline-block;padding:.2rem .75rem;border:1px solid var(--rule);border-radius:999px;font-size:.78rem;color:var(--ink-muted);font-family:var(--sans);letter-spacing:.04em}.chip--accent{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent-dark)}.chip--dark{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.prose p{margin-bottom:1.5rem;font-size:1.05rem;line-height:2;color:var(--ink)}.prose p+p{margin-top:0}.label{font-family:var(--serif);font-style:italic;font-size:.85rem;letter-spacing:.08em;color:var(--ink-muted);text-transform:lowercase}.mt-lg{margin-top:2rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.b-card{--mx: 50%;--my: 50%}.b-card:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(240px circle at var(--mx) var(--my),rgba(243,156,86,.13),transparent 62%);opacity:0;transition:opacity .3s ease;mix-blend-mode:multiply}.b-card:hover:before{opacity:1}.btn--filled,.btn--outline{transform:translate(var(--tx, 0),var(--ty, 0))}.has-cursor,.has-cursor a,.has-cursor button,.has-cursor .btn,.has-cursor [role=button]{cursor:none}.has-cursor input,.has-cursor textarea,.has-cursor select{cursor:auto}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;translate:-50% -50%;will-change:transform}.cursor-dot{width:6px;height:6px;background:var(--accent-dark)}.cursor-ring{width:18px;height:18px;border:1px solid var(--accent);transition:width .25s ease,height .25s ease,background .25s ease,border-color .25s ease}.cursor-ring.is-hover{width:28px;height:28px;background:#f39c561a;border-color:var(--accent-dark)}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.section{padding:var(--space-lg) 1.25rem}.grid-2,.grid-3{grid-template-columns:1fr;gap:var(--space-md)}}@media(max-width:640px){.grid-4{grid-template-columns:1fr}}
