@font-face{font-family:Zen Old Mincho;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/mincho-700.woff2)format("woff2")}@font-face{font-family:Zen Old Mincho;font-weight:900;font-style:normal;font-display:swap;src:url(/fonts/mincho-900.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans JP;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/plex-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans JP;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/plex-600.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/mono-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/mono-600.woff2)format("woff2")}:root{--paper:#f5f6f3;--paper-2:#e9ebe6;--white:#fcfcfa;--ink:#15181b;--ink-2:#4a5157;--rule:#c3ccd1;--rule-soft:#788e9c3d;--shu:#c9321b;--shu-soft:#f3d9d2;--shu-on-dark:#ff7a5e;--on-dark:#eef0ec;--on-dark-2:#a8b0b4;--rule-dark:#eef0ec38;--head:"Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--body:"IBM Plex Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--input:"Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;--gutter:clamp(18px, 5vw, 76px);--line-h:34px;--ease:cubic-bezier(.2, .75, .15, 1)}@view-transition{navigation:auto}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:90px}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0;font-size:16px;line-height:1.95;overflow-x:clip}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit;text-underline-offset:.25em}button,select,textarea,input{font:inherit;color:inherit}input,select,textarea{font-family:var(--input)}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0;padding:0}ul,ol{list-style:none}strong,b{font-weight:600}:focus-visible{outline:2px solid var(--shu);outline-offset:2px}.jp{word-break:keep-all;overflow-wrap:anywhere}.wrap{width:min(1360px,100%);padding-inline:var(--gutter);margin-inline:auto}.narrow{width:min(820px,100%);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(70px,10vw,140px)}.bg-ink{background:var(--ink);color:var(--on-dark)}.bg-2{background:var(--paper-2)}.ruled{background-image:repeating-linear-gradient(to bottom, transparent 0 calc(var(--line-h) - 1px), var(--rule-soft) calc(var(--line-h) - 1px) var(--line-h))}.h-xl,.h-lg,.h-md{font-family:var(--head);letter-spacing:.01em;font-weight:900}.h-xl{font-size:clamp(2.4rem,7vw,6.8rem);line-height:1.22}.h-lg{font-size:clamp(1.8rem,3.8vw,3.4rem);line-height:1.38}.h-md{font-size:clamp(1.2rem,1.9vw,1.6rem);font-weight:700;line-height:1.5}.mono{font-family:var(--mono);font-feature-settings:"zero" 0;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.shu{color:var(--shu)}.bg-ink .shu{color:var(--shu-on-dark)}.small{font-size:.82rem;line-height:1.75}.muted{color:var(--ink-2)}.bg-ink .muted{color:var(--on-dark-2)}.lead{font-size:clamp(1rem,1.3vw,1.15rem);line-height:2.05}.tag{font-family:var(--mono);letter-spacing:.06em;align-items:center;gap:10px;margin-bottom:18px;font-size:.78rem;display:flex}.tag:before{content:"";border-block:1px solid var(--shu);width:26px;height:3px}.bg-ink .tag:before{border-color:var(--shu-on-dark)}.btn{background:var(--ink);min-height:52px;color:var(--on-dark);border:1px solid var(--ink);cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:12px;padding:8px 24px;font-weight:600;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn:hover{background:var(--shu);border-color:var(--shu)}.btn:after{content:"→";font-family:var(--mono);transition:transform .3s var(--ease)}.btn:hover:after{transform:translate(4px)}.btn.plain:after{content:none}.btn-line{color:inherit;background:0 0;border-color:currentColor}.btn-line:hover{color:var(--on-dark)}.bg-ink .btn{background:var(--on-dark);color:var(--ink);border-color:var(--on-dark)}.bg-ink .btn:hover{background:var(--shu-on-dark);border-color:var(--shu-on-dark)}.bg-ink .btn-line{color:var(--on-dark);background:0 0}.photo{background:var(--paper-2);overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%}.ledger{border-collapse:collapse;width:100%;font-size:.92rem}.ledger caption{text-align:left}.ledger th,.ledger td{border-bottom:1px solid var(--rule);text-align:left;padding:7px 10px;line-height:1.5}.ledger thead th{border-bottom:3px double var(--ink);font-size:.8rem;font-weight:600}.ledger .r{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}.ledger .neg{color:var(--shu);font-weight:600}.ledger tfoot td,.ledger tfoot th{border-top:1px solid var(--ink);border-bottom:3px double var(--ink);font-weight:600}label.field{gap:4px;font-size:.86rem;font-weight:600;display:grid}.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{background:var(--white);border:1px solid var(--ink);border-radius:0;width:100%;min-height:48px;padding:8px 12px;font-size:16px;font-weight:400}input[type=range]{width:100%;height:30px;accent-color:var(--shu);cursor:pointer;margin:0}[data-reveal]{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(14px)}[data-reveal].in,.no-js [data-reveal]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}.mark[data-astro-cid-27oicc4y] rect[data-astro-cid-27oicc4y]{fill:none;stroke:currentColor;stroke-width:1px}.mark[data-astro-cid-27oicc4y] rect[data-astro-cid-27oicc4y].on{fill:var(--shu);stroke:var(--shu)}.bg-ink .mark[data-astro-cid-27oicc4y] rect[data-astro-cid-27oicc4y].on{fill:var(--shu-on-dark);stroke:var(--shu-on-dark)}body:before{content:"";inset:0 auto 0 calc(var(--gutter) * .5);z-index:60;border-inline:1px solid var(--shu);opacity:.55;pointer-events:none;transform-origin:top;width:4px;animation:rule-in 1.1s var(--ease) both;position:fixed}@keyframes rule-in{0%{transform:scaleY(0)}}.band{padding:4px var(--gutter);background:var(--ink);color:var(--on-dark);text-align:center;font-size:.8rem;line-height:1.8}.band b{color:var(--shu-on-dark);font-family:var(--mono);font-weight:600}.site-header{z-index:50;min-height:72px;padding-inline:var(--gutter);backdrop-filter:blur(8px);border-bottom:1px solid var(--ink);background:#f5f6f3f2;align-items:center;gap:22px;display:flex;position:sticky;top:0}.logo{align-items:center;gap:12px;margin-right:auto;text-decoration:none;display:flex}.logo-words{font-family:var(--head);line-height:1.1;display:grid}.logo-words small{letter-spacing:.12em;font-size:.66rem;font-weight:700}.logo-words b{letter-spacing:.16em;font-size:1.5rem;font-weight:900}.nav-pc{gap:clamp(12px,1.6vw,28px);font-size:.88rem;display:flex}.nav-pc a{white-space:nowrap;padding-block:6px;text-decoration:none;position:relative}.nav-pc a:after{content:"";border-block:1px solid var(--shu);transform-origin:0;height:3px;transition:transform .35s var(--ease);position:absolute;inset:auto 0 3px;transform:scaleX(0)}.nav-pc a:hover:after,.nav-pc a[aria-current]:after{transform:scaleX(1)}.head-cta{background:var(--shu);color:#fff;white-space:nowrap;align-items:center;min-height:44px;padding-inline:20px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.head-cta:hover{background:var(--ink)}.menu-btn{background:var(--ink);min-height:44px;color:var(--on-dark);cursor:pointer;border:0;padding:2px 16px;font-size:.86rem;display:none}.sp-menu{z-index:45;padding-inline:var(--gutter);background-color:var(--paper);align-content:center;gap:2px;display:grid;position:fixed;inset:0}.sp-menu[hidden]{display:none}.sp-menu a{font-family:var(--head);padding-block:8px;font-size:1.55rem;font-weight:900;text-decoration:none}.site-footer{padding-top:clamp(50px,7vw,90px)}.footer-grid{grid-template-columns:1.4fr 1.1fr .6fr;align-items:start;gap:40px;padding-bottom:clamp(40px,6vw,80px);display:grid}.foot-logo{font-family:var(--head);align-items:center;gap:14px;line-height:1.2;display:flex}.foot-logo span{display:grid}.foot-logo small{letter-spacing:.12em;font-size:.78rem;font-weight:700}.foot-logo b{letter-spacing:.16em;font-size:2rem;font-weight:900}.foot-next{font-family:var(--head);word-break:keep-all;margin-top:26px;font-size:clamp(1.7rem,3.2vw,3rem);font-weight:900;line-height:1.3}.foot-nav{gap:2px;font-size:.9rem;display:grid}.foot-nav a{text-decoration:none}.foot-nav a:hover{text-decoration:underline}.aether-band{background:var(--paper-2);color:var(--ink);padding-block:22px}.aether-band .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;display:flex}.aether-band p{flex:480px;gap:4px;display:grid}.aether-band .btn-line{color:var(--ink)}.aether-band .btn-line:hover{color:var(--on-dark)}.sp-cta{display:none}@media (width<=1180px){.nav-pc{display:none}.menu-btn{display:block}.head-cta{display:none}.site-header{min-height:62px}}@media (width<=860px){body:before{left:6px}.footer-grid{grid-template-columns:1fr}.sp-cta{z-index:40;background:var(--ink);color:var(--on-dark);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:1fr 1fr;display:grid;position:fixed;inset:auto 0 0}.sp-cta a{justify-content:center;align-items:center;min-height:54px;font-weight:600;text-decoration:none;display:flex}.sp-cta .primary{background:var(--shu);color:#fff}body{padding-bottom:54px}}
