.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--paper:#f5f0e6;--paper-2:#ebe4d5;--paper-3:#e1d8c6;--ink:#1f1c18;--ink-2:#5a5348;--ink-3:#857c6d;--rule:#d3c9b6;--shu:#c23b22;--shu-soft:#c23b221a;--ai:#1f4a6e;--chart-b:#1f69a8;--marker:#f1d67a;--serif:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;--sans:"Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--w-text:39rem;--w-page:72rem;--gutter:clamp(1.15rem, 4vw, 2.5rem);color-scheme:light}:root[data-theme=dark]{--paper:#181715;--paper-2:#211f1c;--paper-3:#2b2925;--ink:#e8e2d5;--ink-2:#b3ab9c;--ink-3:#8a8274;--rule:#3a362f;--shu:#e0674c;--shu-soft:#e0674c24;--ai:#7fb0d8;--chart-b:#4f97dc;--marker:#6b5a1f;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem}body{background-color:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:.03em;font-feature-settings:"palt" 0;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-wrap:anywhere;line-break:strict;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .4 0 0 0 0 .35 0 0 0 0 .25 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");margin:0;font-size:clamp(1rem,.96rem + .2vw,1.0625rem);line-height:2}a{color:inherit;text-decoration-color:var(--shu);text-underline-offset:.3em;text-decoration-thickness:1px;transition:color .15s}a:hover{color:var(--shu)}:focus-visible{outline:2px solid var(--shu);outline-offset:3px;border-radius:2px}::selection{background:var(--shu);color:var(--paper)}h1,h2,h3{font-family:var(--serif);letter-spacing:.06em;font-feature-settings:"palt";text-wrap:balance;word-break:auto-phrase;margin:0;font-weight:700;line-height:1.5}p{margin:0}button,input,select{font:inherit;color:inherit;letter-spacing:inherit}.num{font-family:var(--serif);font-variant-numeric:tabular-nums lining-nums;letter-spacing:.02em}.wrap{width:min(100% - var(--gutter) * 2, var(--w-page));margin-inline:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.label{letter-spacing:.22em;color:var(--ink-3);font-size:.75rem;font-weight:500}.site-head{z-index:20;background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);position:sticky;top:0}.site-head .wrap{align-items:center;gap:1rem;min-height:3.6rem;display:flex}.brand{font-family:var(--serif);letter-spacing:.14em;white-space:nowrap;align-items:center;gap:.6rem;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{color:inherit}.seal{background:var(--shu);width:1.7rem;height:1.7rem;color:var(--paper);font-family:var(--serif);letter-spacing:0;border-radius:3px 4px 3px 5px;place-items:center;font-size:1.05rem;font-weight:800;line-height:1;transition:transform .3s cubic-bezier(.3,1.6,.5,1);display:grid;transform:rotate(-3deg)}.brand:hover .seal{transform:rotate(4deg)scale(1.06)}.site-nav{align-items:center;gap:clamp(.9rem,2.5vw,1.9rem);margin-left:auto;font-size:.9rem;display:flex}.site-nav a{white-space:nowrap;padding:.3rem 0;text-decoration:none;position:relative}.site-nav a:after{content:"";background:var(--shu);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.theme-btn{border:1px solid var(--rule);cursor:pointer;width:2.2rem;height:2.2rem;font-family:var(--serif);background:0 0;border-radius:50%;place-items:center;font-size:.85rem;line-height:1;transition:border-color .2s,background .2s;display:grid}.theme-btn:hover{border-color:var(--ink)}@media (width<=34rem){.brand-text{letter-spacing:.08em;font-size:.95rem}.site-nav{gap:.85rem;font-size:.84rem}.nav-about{display:none}}.site-foot{border-top:1px solid var(--rule);color:var(--ink-2);margin-top:clamp(5rem,12vw,9rem);padding:3rem 0 3.5rem;font-size:.84rem;line-height:1.9}.foot-grid{grid-template-columns:1.4fr 1fr;gap:2rem;display:grid}.foot-nav{flex-wrap:wrap;place-content:start flex-end;gap:.4rem 1.4rem;display:flex}.foot-note{max-width:34rem}.copyright{color:var(--ink-3);letter-spacing:.1em;margin-top:2.2rem;font-size:.75rem}@media (width<=44rem){.foot-grid{grid-template-columns:1fr}.foot-nav{justify-content:flex-start}}.btn{background:var(--ink);color:var(--paper);letter-spacing:.1em;border:1px solid var(--ink);cursor:pointer;border-radius:2px;align-items:center;gap:.9rem;padding:.85rem 1.5rem .85rem 1.7rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn .arrow{background:currentColor;width:1.6rem;height:1px;transition:width .25s;display:inline-block;position:relative}.btn .arrow:after{content:"";border-top:1px solid;border-right:1px solid;width:7px;height:7px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.btn:hover{background:var(--shu);border-color:var(--shu);color:#fff}.btn:hover .arrow{width:2.3rem}.btn.ghost{color:var(--ink);background:0 0}.btn.ghost:hover{color:var(--shu);border-color:var(--shu);background:0 0}.hanko{border:2px solid var(--shu);width:2.1rem;height:2.1rem;color:var(--shu);font-family:var(--serif);letter-spacing:0;opacity:.9;border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:800;line-height:1;display:inline-grid;transform:rotate(-9deg)}@keyframes stamp{0%{opacity:0;transform:rotate(-22deg)scale(2.1)}55%{opacity:1;transform:rotate(-9deg)scale(.92)}to{opacity:.9;transform:rotate(-9deg)scale(1)}}.prose{max-width:var(--w-text)}.prose>*+*{margin-top:1.5em}.prose h2{border-top:1px solid var(--rule);margin-top:3.4em;padding-top:1.1em;font-size:clamp(1.3rem,1.15rem + .7vw,1.6rem);position:relative}.prose h2:before{content:"";background:var(--shu);width:3.2rem;height:1px;position:absolute;top:-1px;left:0}.prose h3{margin-top:2.6em;font-size:1.12rem}.prose h2+*,.prose h3+*{margin-top:1em}.prose strong{background:linear-gradient(transparent 62%, var(--marker) 62%, var(--marker) 92%, transparent 92%);padding-inline:.1em;font-weight:700}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.5em}.prose li::marker{color:var(--shu);font-family:var(--serif)}.prose blockquote{border-left:3px double var(--rule);font-family:var(--serif);color:var(--ink-2);margin-inline:0;padding:.2em 0 .2em 1.4em;font-size:1.02em}.prose hr{text-align:center;border:0;margin-block:3em}.prose hr:before{content:"＊　＊　＊";color:var(--ink-3);letter-spacing:.4em;font-size:.7rem}.prose code{background:var(--paper-2);letter-spacing:0;border-radius:3px;padding:.15em .4em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.prose pre{background:var(--paper-2);border-left:2px solid var(--ai);white-space:pre-wrap;font-family:var(--sans);letter-spacing:.02em;border-radius:0 2px 2px 0;margin-inline:0;padding:1.2em 1.3em;font-size:.9em;line-height:1.9;color:var(--ink)!important;background-color:var(--paper-2)!important}.prose pre code{font:inherit;letter-spacing:inherit;background:0 0;padding:0}.prose pre span{color:inherit!important}.prose table{border-collapse:collapse;width:100%;font-size:.92em;line-height:1.7}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.75em .8em}.prose thead th{border-bottom:1px solid var(--ink);letter-spacing:.12em;color:var(--ink-2);white-space:nowrap;font-size:.85em;font-weight:500}.prose tbody th{white-space:nowrap;font-weight:700}.table-scroll{overflow-x:auto}.shiki{font-family:var(--serif);text-align:center;border-block:1px solid var(--rule);letter-spacing:.08em;padding:1.3em 1em;font-size:1.12em;line-height:1.8}.shiki small{font-family:var(--sans);color:var(--ink-3);letter-spacing:.1em;margin-top:.4em;font-size:.75rem;display:block}.memo,.chui{background:var(--paper-2);border-radius:2px;padding:1.5em 1.5em 1.4em;font-size:.94em;line-height:1.9;position:relative}.memo>*+*,.chui>*+*{margin-top:.8em}.memo:before,.chui:before{font-family:var(--serif);letter-spacing:.25em;padding:0 .7em;font-size:.8rem;font-weight:700;line-height:1.6;position:absolute;top:-.75em;left:1.2em}.memo:before{content:"覚え書き";background:var(--ink);color:var(--paper)}.chui{background:var(--shu-soft)}.chui:before{content:"注意";background:var(--shu);color:#fff}@media (prefers-reduced-motion:no-preference){.rise{animation:.9s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:calc(var(--d,0) * .11s)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.field{gap:.35rem;display:grid}.field-head{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:1rem;font-size:.86rem;display:flex}.field-val{white-space:nowrap;color:var(--ink);flex:none;align-items:baseline;gap:.3rem;display:inline-flex}.field-val input{border:0;border-bottom:1px solid var(--ink-3);text-align:right;width:5.2em;font-family:var(--serif);font-variant-numeric:tabular-nums lining-nums;-moz-appearance:textfield;appearance:textfield;background:0 0;border-radius:0;padding:.1em .3em;font-size:1.35rem}.field-val input::-webkit-outer-spin-button,.field-val input::-webkit-inner-spin-button{-webkit-appearance:none}.field-val input:focus{border-bottom-color:var(--shu);box-shadow:0 1px 0 var(--shu);outline:none}input[type=range]{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;width:100%;height:1.6rem;margin:0}input[type=range]::-webkit-slider-runnable-track{background:var(--ink-3);height:1px}input[type=range]::-moz-range-track{background:var(--ink-3);height:1px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--shu);border:3px solid var(--paper);width:1.05rem;height:1.05rem;box-shadow:0 0 0 1px var(--shu);border-radius:50%;margin-top:calc(.5px - .525rem);transition:transform .15s}input[type=range]::-moz-range-thumb{background:var(--shu);border:3px solid var(--paper);width:.7rem;height:.7rem;box-shadow:0 0 0 1px var(--shu);border-radius:50%}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2)}.figure{margin-inline:0}.figure figcaption{color:var(--ink-3);margin-top:.8em;font-size:.8rem;line-height:1.7}.page-head{padding:clamp(3rem,8vw,6rem) 0 clamp(2rem,5vw,3.5rem)}.page-head h1{letter-spacing:.12em;margin-top:.6rem;font-size:clamp(2rem,1.4rem + 3vw,3.4rem)}.page-head .lead{max-width:36rem;color:var(--ink-2);margin-top:1.4rem}
