:root{--bg:#fff6ea;--bg-card:#fffdf8;--text:#1c1916;--muted:#6f675a;--accent:#b4342f;--accent-contrast:#fff;--pink:#f0949c;--pink-soft:#fbe4e6;--border:#d9d2c4;--hairline:#c9c1b1;--ghost:#1c191612;--shadow:0 1px 3px #26211c0f, 0 4px 16px #26211c0d;--font-serif:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", "Times New Roman", serif;--font-sans:"Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", -apple-system, "Helvetica Neue", sans-serif;--font-display:"Didot", "Bodoni 72", "Playfair Display", Georgia, "Times New Roman", serif}@media (prefers-color-scheme:dark){:root{--bg:#12100e;--bg-card:#1a1815;--text:#ede6d8;--muted:#9b9184;--accent:#e0695b;--accent-contrast:#12100e;--pink:#d9808a;--pink-soft:#3c262a;--border:#322e28;--hairline:#3a352d;--ghost:#ede6d80f;--shadow:0 1px 3px #0000004d, 0 4px 16px #00000040}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-serif);letter-spacing:.03em;-webkit-font-smoothing:antialiased;font-feature-settings:"palt";line-height:1.9}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:.25em;text-decoration:underline;text-decoration-color:var(--pink);text-decoration-thickness:2px}img{max-width:100%;height:auto}::selection{background:var(--accent);color:var(--accent-contrast)}.container{max-width:44rem;margin:0 auto;padding:0 1.25rem}.container-wide{max-width:68rem;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}@keyframes rise-in{0%{opacity:0;transform:translateY(1.4rem)}to{opacity:1;transform:none}}.rise{animation:.9s cubic-bezier(.2,.7,.2,1) both rise-in}.rise.d1{animation-delay:.12s}.rise.d2{animation-delay:.24s}.rise.d3{animation-delay:.38s}.rise.d4{animation-delay:.52s}@supports (animation-timeline:view()){.reveal{animation:1s cubic-bezier(.2,.7,.2,1) both rise-in view();animation-range:entry entry 42%}}[data-scroll-scene]{--p:1}@media (prefers-reduced-motion:reduce){.rise,.reveal,.marquee .track{animation:none!important}[data-scroll-scene],[data-scroll-scene] *{--p:1!important}}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:2px dotted color-mix(in srgb, var(--pink) 65%, var(--bg));padding:1.05rem 0;position:sticky;top:0}.site-header .inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem 2rem;max-width:68rem;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);display:flex}.brand{font-family:var(--font-sans);letter-spacing:.42em;color:var(--text);align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700;display:inline-flex}.brand:hover{color:var(--accent);text-decoration:none}.site-nav{font-family:var(--font-sans);flex-wrap:wrap;gap:.2rem 1.5rem;font-size:.85rem;display:flex}.site-nav a{color:var(--muted);padding-bottom:.15em;position:relative}.site-nav a:after{content:"";background:var(--accent);transform-origin:100%;width:100%;height:1px;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text);text-decoration:none}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.site-footer{border-top:1px solid var(--hairline);margin-top:7rem;padding:3.5rem 0 2.5rem;overflow:hidden}.site-footer .inner{max-width:68rem;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}.footer-wordmark{font-family:var(--font-display);letter-spacing:.04em;color:color-mix(in srgb, var(--muted) calc(min(max((var(--p,1) - .04) * 4, 0), 1) * 100%), transparent);-webkit-text-stroke:1px var(--muted);user-select:none;white-space:nowrap;transform:translateY(calc(max(0, .25 - var(--p,1)) * 4rem));will-change:transform;font-size:clamp(3.4rem,12vw,9rem);line-height:1}.footer-meta{font-family:var(--font-sans);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem 2rem;margin-top:2rem;font-size:.8rem;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--accent)}.section-head{border-top:1px solid var(--hairline);margin:6.5rem 0 2.6rem;padding-top:1.2rem;position:relative}.section-head .no{width:2.9em;height:2.9em;font-family:var(--font-display);color:var(--accent);background:var(--pink-soft);user-select:none;border-radius:50%;place-items:center;font-size:clamp(.95rem,2vw,1.15rem);line-height:1;display:grid;position:absolute;top:1.2rem;right:0}.section-head .en{font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;transform:translateX(calc(max(0, .52 - var(--p,1)) * 14vw));opacity:calc(.25 + min(var(--p,1) * 2, 1) * .75);will-change:transform;font-size:clamp(2.6rem,7.5vw,5.2rem);line-height:1.02;display:block}.section-head[data-scroll-scene] .no{transform:translateY(calc((.5 - min(var(--p,1), .5)) * 3rem));will-change:transform}.section-head .ja{font-family:var(--font-sans);letter-spacing:.22em;color:#fff;background:var(--pink);border-radius:999px;margin-top:.9rem;padding:.3em 1.1em .3em 1.3em;font-size:.8rem;font-weight:600;display:inline-block}.section-lede{color:var(--muted);max-width:38rem;margin-bottom:2.2rem;font-size:.94rem}.page-head{margin-bottom:2.6rem;padding:clamp(3rem,8vw,5.5rem) 0 0;position:relative}.page-head .ghost{font-family:var(--font-display);text-transform:uppercase;color:#0000;-webkit-text-stroke:1px var(--ghost);-webkit-text-stroke-color:color-mix(in srgb, var(--text) 18%, transparent);user-select:none;pointer-events:none;white-space:nowrap;font-size:clamp(3.6rem,14vw,8.5rem);line-height:1;position:absolute;top:.4rem;right:-.04em}.page-head h1{letter-spacing:.1em;font-size:clamp(1.7rem,4.5vw,2.4rem);font-weight:600;position:relative}.page-head .lede{color:var(--muted);max-width:38rem;margin-top:.9rem;position:relative}.marquee{border-top:2px dotted color-mix(in srgb, var(--pink) 65%, var(--bg));border-bottom:2px dotted color-mix(in srgb, var(--pink) 65%, var(--bg));padding:.9rem 0;display:flex;overflow:hidden}.marquee .track{min-width:100%;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:baseline;gap:3.5rem;padding-right:3.5rem;font-size:1.3rem;animation:30s linear infinite marquee-slide;display:flex}.marquee .track .ja{font-family:var(--font-serif);text-transform:none;font-size:1.05rem}.marquee .track .dot{color:var(--accent)}@keyframes marquee-slide{to{transform:translate(-100%)}}.senryu{justify-content:center;margin:2.8rem auto;display:flex}.senryu .tanzaku{background:var(--bg-card);border:2px solid var(--text);border-top:4px solid var(--accent);box-shadow:4px 4px 0 var(--pink-soft);border-radius:10px;flex-direction:row-reverse;align-items:flex-start;gap:1.2em;padding:2.2em 2em 2.6em;font-size:1.12rem;line-height:1;display:flex}.senryu .ku{writing-mode:vertical-rl;letter-spacing:.28em}.senryu .ku:nth-child(2){padding-top:2.4em}.senryu .ku:nth-child(3){padding-top:5.2em}.senryu-flat .tanzaku{flex-direction:row;max-width:34rem;padding:1.5em 2.2em;line-height:1.9}.senryu-flat .hitokoto{writing-mode:horizontal-tb;letter-spacing:.14em;text-align:center}.essay-list{gap:1.1rem;list-style:none;display:grid}.essay-card{background:var(--bg-card);border:2px solid var(--text);box-shadow:4px 4px 0 var(--pink);color:var(--text);border-radius:18px;padding:1.5rem 1.7rem;transition:box-shadow .25s cubic-bezier(.2,.7,.2,1),transform .25s cubic-bezier(.2,.7,.2,1);display:block;position:relative;overflow:hidden}.essay-card:hover{box-shadow:7px 7px 0 var(--pink);text-decoration:none;transform:translate(-2px,-2px)}.essay-card .meta{font-family:var(--font-sans);color:var(--muted);flex-wrap:wrap;gap:.3rem 1.1rem;margin-bottom:.5rem;font-size:.78rem;display:flex}.essay-card h3{letter-spacing:.05em;margin-bottom:.35rem;font-size:1.14rem;font-weight:600}.essay-card p{color:var(--muted);font-size:.92rem;line-height:1.8}.essay-card .senryu-line{color:var(--accent);letter-spacing:.14em;margin-bottom:.5rem;font-size:.9rem}.tag{font-family:var(--font-sans);color:#fff;background:var(--pink);white-space:nowrap;border-radius:999px;padding:.16em .85em;font-size:.72rem;font-weight:600}.prose{margin-top:1rem}.prose p{text-align:justify;margin:1.4em 0}.prose h2{letter-spacing:.08em;border-left:3px solid var(--accent);margin:2.6em 0 .8em;padding-left:.8em;font-size:1.25rem;font-weight:600}.prose h3{margin:2em 0 .6em;font-size:1.08rem;font-weight:600}.prose ul,.prose ol{margin:1.4em 0;padding-left:1.6em}.prose li{margin:.4em 0}.prose blockquote{border-left:3px solid var(--border);color:var(--muted);margin:1.8em 0;padding:.2em 0 .2em 1.2em}.prose hr{border:none;border-top:1px solid var(--border);width:6rem;margin:2.5em auto}.prose img{border:1px solid var(--border);width:100%;height:auto;margin:1.8em 0 .4em;display:block}.prose img+em{color:var(--muted);font-size:.82rem;font-style:normal;font-family:var(--font-sans);margin-bottom:1.8em;display:block}.prose code{background:var(--bg-card);border:1px solid var(--border);border-radius:3px;padding:.1em .4em;font-family:ui-monospace,Menlo,monospace;font-size:.88em}.button{font-family:var(--font-sans);letter-spacing:.14em;border:2px solid var(--text);background:var(--bg-card);box-shadow:3px 3px 0 var(--text);color:var(--text);z-index:0;border-radius:999px;padding:.75em 2em;font-size:.88rem;font-weight:600;transition:color .3s,border-color .3s,box-shadow .25s cubic-bezier(.2,.7,.2,1),transform .25s cubic-bezier(.2,.7,.2,1);display:inline-block;position:relative;overflow:hidden}.button:before{content:"";background:var(--accent);transform-origin:100%;z-index:-1;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:scaleX(0)}.button:hover{color:var(--accent-contrast);box-shadow:5px 5px 0 var(--text);text-decoration:none;transform:translate(-1px,-1px)}.button:hover:before{transform-origin:0;transform:scaleX(1)}.button.solid{background:var(--accent);border-color:var(--text);color:var(--accent-contrast)}.button.solid:hover:before{background:var(--text)}.genpei-mark[data-astro-cid-f7espo7c]{flex:none;display:block}.petal[data-astro-cid-f7espo7c]{stroke:color-mix(in srgb, var(--accent) 50%, transparent);stroke-width:1.4px;fill:#faf1e4;animation:ease-in-out infinite genpei}@keyframes genpei{0%{fill:#faf1e4}18%{fill:#faf1e4}27%{fill:#f0949c}40%{fill:#f0949c}49%{fill:var(--accent)}64%{fill:var(--accent)}73%{fill:#f0949c}82%{fill:#f0949c}91%{fill:#faf1e4}to{fill:#faf1e4}}.p1[data-astro-cid-f7espo7c]{animation-duration:23s;animation-delay:-12.6s}.p2[data-astro-cid-f7espo7c]{animation-duration:31s;animation-delay:-1.5s}.p3[data-astro-cid-f7espo7c]{animation-duration:27s;animation-delay:-8.6s}.p4[data-astro-cid-f7espo7c]{animation-duration:37s;animation-delay:-3.7s}.p5[data-astro-cid-f7espo7c]{animation-duration:19s;animation-delay:-11s}.well[data-astro-cid-f7espo7c]{fill:#faf1e4}.at[data-astro-cid-f7espo7c]{fill:none;stroke:color-mix(in srgb, var(--accent) 60%, #f0949c);stroke-width:1.5px;stroke-linecap:round}@media (prefers-reduced-motion:reduce){.petal[data-astro-cid-f7espo7c]{animation:none}.p1[data-astro-cid-f7espo7c],.p5[data-astro-cid-f7espo7c]{fill:var(--accent)}.p3[data-astro-cid-f7espo7c]{fill:#f0949c}}
