:root{--bg: #faf8f3;--bg-alt: #f2ede3;--bg-dawn-1: #fcf6ec;--bg-dawn-2: #faf1e3;--ink: #0e1626;--ink-2: #3b4658;--ink-3: #6b7588;--rule: #e1dbcc;--brick: #c8694b;--sand: #e9ddc8;--white: #ffffff;--bal-brick-a: #f2b49c;--bal-brick-b: #b7553a;--bal-pink-a: #f6cfd5;--bal-pink-b: #c97388;--bal-sky-a: #cde0f2;--bal-sky-b: #6b97c8;--bal-mint-a: #d8eed9;--bal-mint-b: #7bb392;--bal-yellow-a: #f6e6b2;--bal-yellow-b: #c9a04c;--bal-lilac-a: #e2d6e6;--bal-lilac-b: #a38ab8;--bal-peach-a: #ffe2c6;--bal-peach-b: #d29575;--font-jp: "Noto Sans JP", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-en: "Inter Tight", "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter: 56px;--gutter-md: 32px;--gutter-sm: 20px;--gutter-mobile: 20px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-jp);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}a{color:inherit;text-decoration:none}a:hover{color:var(--brick)}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--brick);outline-offset:2px}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}.prose{font-size:16px;line-height:2.05;color:var(--ink-2);max-width:720px}.prose>p:first-child{font-size:18px;color:var(--ink);line-height:1.95;margin-top:0}.prose h2{font-size:26px;font-weight:700;color:var(--ink);margin:56px 0 18px;letter-spacing:-.005em}.prose h3{font-size:19px;font-weight:700;color:var(--ink);margin:40px 0 16px}.prose h4{font-size:16px;font-weight:700;color:var(--ink);margin:32px 0 12px}.prose p{margin:0 0 1.7em}.prose ul,.prose ol{padding-left:24px;line-height:2.1;margin:0 0 1.7em}.prose li{margin-bottom:8px}.prose strong,.prose b{color:var(--ink);font-weight:700}.prose code{font-family:var(--font-mono);font-size:.92em;background:var(--bg-alt);color:var(--ink);padding:2px 6px;border-radius:2px}.prose pre{background:var(--ink);color:#e8e1d2;padding:24px;border-radius:2px;font-family:var(--font-mono);font-size:13px;line-height:1.8;overflow-x:auto;margin:0 0 32px}.prose pre code{background:transparent;padding:0;color:inherit;font-size:inherit}.prose blockquote{margin:40px 0;padding:4px 0 4px 24px;border-left:3px solid var(--brick);font-size:18px;color:var(--ink);line-height:1.9;font-style:normal}.prose .section-figure{width:100%;aspect-ratio:2 / 1;object-fit:cover;margin:4px 0 36px;border:1px solid var(--rule);background:var(--bg-alt)}.prose .section-figure--portrait{aspect-ratio:auto;object-fit:contain;max-width:420px;margin-left:auto;margin-right:auto}.prose figure{margin:4px 0 36px}.prose figure .section-figure{margin:0 0 8px}.prose figcaption{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);letter-spacing:.3px;line-height:1.7}.prose a{color:var(--brick);border-bottom:1px solid var(--rule)}.prose a:hover{border-bottom-color:var(--brick)}.prose hr{border:none;border-top:1px solid var(--rule);margin:32px 0}.prose table{display:table;width:100%;margin:32px 0;border-collapse:collapse;font-size:14px;line-height:1.65;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);text-wrap:pretty}.prose table:has(thead th:nth-child(5)),.prose table:has(tbody tr:first-child td:nth-child(5)){display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.prose table thead{background:var(--bg-alt)}.prose table th{text-align:left;font-weight:700;color:var(--ink);padding:9px 12px;border-bottom:1px solid var(--rule);letter-spacing:.01em}.prose table td{padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top;color:var(--ink-2);word-break:normal;overflow-wrap:anywhere}.prose table tbody tr:last-child td{border-bottom:none}.prose table th:first-child,.prose table td:first-child{color:var(--ink);font-weight:600}.prose table tbody tr:hover td{background:var(--bg-alt)}.prose table code{font-size:.88em;padding:1px 5px;white-space:nowrap}.prose table strong{color:var(--ink)}@media(max-width:720px){html,body{font-size:15.5px}.prose{font-size:15.5px;line-height:2.25}.prose>p:first-child{font-size:16.5px;line-height:2.05}.prose p{margin:0 0 2em}.prose ul,.prose ol{line-height:2.25;margin:0 0 2em}.prose h2{font-size:21px;margin:48px 0 16px}.prose h3{font-size:17px;margin:34px 0 14px}.prose table{font-size:13px;margin:24px 0}.prose table th,.prose table td{padding:8px 10px}}.prose .aff-inline{margin:32px 0;padding:20px 22px;background:var(--bg-alt);border:1px solid var(--rule);border-left:3px solid var(--brick)}.prose .aff-inline__head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.prose .aff-inline__pr{flex-shrink:0;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;color:var(--white);background:var(--brick);padding:2px 8px}.prose .aff-inline__label{font-family:var(--font-mono);font-size:12px;letter-spacing:.5px;color:var(--ink-2)}.prose .aff-inline__headline{font-family:var(--font-jp);font-size:16px;font-weight:700;line-height:1.55;color:var(--ink);margin-bottom:8px}.prose .aff-inline__desc{font-size:13.5px;line-height:1.9;color:var(--ink-2);margin:0 0 14px}.prose a.aff-inline__cta{display:inline-block;padding:11px 22px;background:var(--brick);color:var(--white);font-size:14px;font-weight:700;text-decoration:none;font-family:var(--font-jp)}.prose a.aff-inline__cta:hover{opacity:.9}.prose .aff-inline__embed{max-width:100%;overflow-x:auto}.prose .aff-inline__embed img{max-width:100%;height:auto}.site-footer[data-astro-cid-sz7xmlte]{padding:40px var(--gutter) 48px;border-top:1px solid var(--rule);background:var(--bg);font-family:var(--font-jp);color:var(--ink-3);font-size:12px}.inner[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;max-width:1280px;margin:0 auto}.brand[data-astro-cid-sz7xmlte]{font-family:var(--font-en);font-weight:700;color:var(--ink);font-size:15px;margin-bottom:6px}.dot[data-astro-cid-sz7xmlte]{color:var(--brick)}.tagline[data-astro-cid-sz7xmlte]{margin:0;color:var(--ink-3)}.block-right[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);text-align:right;line-height:1.8}.block-right[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:inherit}.block-right[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--brick)}@media(max-width:720px){.site-footer[data-astro-cid-sz7xmlte]{padding:32px var(--gutter-mobile)}.inner[data-astro-cid-sz7xmlte]{flex-direction:column;align-items:flex-start;gap:20px}.block-right[data-astro-cid-sz7xmlte]{text-align:left}}.site-header[data-astro-cid-3ef6ksr2]{background:var(--bg);border-bottom:1px solid var(--rule)}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;padding:20px var(--gutter);font-family:var(--font-jp);max-width:1280px;margin:0 auto}.brand[data-astro-cid-3ef6ksr2]{display:flex;align-items:baseline;gap:12px;text-decoration:none}.brand-name[data-astro-cid-3ef6ksr2]{font-family:var(--font-en);font-weight:700;font-size:17px;letter-spacing:-.2px;color:var(--ink)}.brand-dot[data-astro-cid-3ef6ksr2]{color:var(--brick)}.brand-tag[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.links[data-astro-cid-3ef6ksr2]{list-style:none;display:flex;align-items:center;gap:28px;font-size:13.5px;color:var(--ink-2);margin:0;padding:0}.link[data-astro-cid-3ef6ksr2]{color:var(--ink-2);font-weight:500;text-decoration:none;padding:4px 0;border-bottom:2px solid transparent;transition:color .15s ease;white-space:nowrap}.link[data-astro-cid-3ef6ksr2]:hover{color:var(--ink)}.link--active[data-astro-cid-3ef6ksr2]{color:var(--ink);font-weight:600;border-bottom-color:var(--brick)}.mail-chip[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);padding:6px 10px;border:1px solid var(--rule);border-radius:4px;text-decoration:none}.mail-chip[data-astro-cid-3ef6ksr2]:hover{color:var(--ink);border-color:var(--ink)}@media(max-width:1100px){.brand-tag[data-astro-cid-3ef6ksr2],.li-mail[data-astro-cid-3ef6ksr2]{display:none}.links[data-astro-cid-3ef6ksr2]{gap:20px}}@media(max-width:720px){.nav[data-astro-cid-3ef6ksr2]{padding:16px var(--gutter-mobile);flex-wrap:wrap;gap:12px}.links[data-astro-cid-3ef6ksr2]{gap:14px;row-gap:8px;font-size:12.5px;flex-wrap:wrap}}
