:root{color-scheme:light;--paper:#f7f8f5;--ink:#243746;--blue:#28618d;--muted:#667681;--line:#d9e1e4;font-synthesis:none;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;line-height:1.85}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--blue)}a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.site-header,main,.site-footer{width:min(980px,100% - 96px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:112px;display:flex}.wordmark{letter-spacing:-.9px;white-space:nowrap;font-size:26px;font-weight:750;text-decoration:none}.wordmark>span:first-child{color:var(--blue)}.wordmark-dot{color:#bb805d}.site-header nav{gap:28px;font-size:13px;display:flex}.site-header nav a{text-decoration:none}.site-header nav a[aria-current]{color:var(--blue)}.skip-link{z-index:2;background:#fff;padding:12px 20px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:12px}.intro{border-bottom:1px solid var(--line);padding:64px 0 52px}.eyebrow{color:var(--blue);letter-spacing:.17em;margin:0 0 20px;font-size:11px;font-weight:650}.intro h1{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,5.2vw,64px);font-weight:400;line-height:1.22}.intro h1 span{color:var(--blue)}.intro-bottom{justify-content:space-between;align-items:flex-end;margin-top:25px;display:flex}.intro-bottom p{color:var(--muted);margin:0;font-size:14px}.intro-mark{color:var(--blue);font-size:42px;line-height:1}.posts-section{padding-top:42px}.section-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-heading h2{margin:0;font-size:14px;font-weight:650}.section-heading>a{color:var(--muted);font-size:12px;text-decoration:none}.article-list{margin:22px 0 0;padding:0;list-style:none}.article-list>li{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr;gap:28px;padding:30px 0;display:grid}.article-list time{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:5px;font-size:12px}.article-list h2{letter-spacing:.005em;margin:2px 0 10px;font-size:20px;font-weight:650;line-height:1.65}.article-list h2 a{text-decoration:none;display:block}.article-arrow{color:var(--blue);white-space:nowrap;margin-left:10px;font-size:16px}.tags{color:var(--blue);margin:0;font-size:11px}.excerpt{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.9}.archive-intro{padding:60px 0 30px}.archive-intro h1{margin:0;font-size:34px;font-weight:650}.article-count{color:var(--muted);margin-left:15px;font-size:14px;font-weight:400}.site-footer{color:var(--muted);justify-content:space-between;gap:20px;margin-top:60px;padding:40px 0;font-size:12px;display:flex}.site-footer a{font-weight:650;text-decoration:none}.post{max-width:760px;margin:0 auto}.post-header{border-bottom:1px solid var(--line);margin-bottom:34px;padding:42px 0 34px}.back-link{color:var(--muted);font-size:12px;text-decoration:none}.post-meta{color:var(--muted);flex-wrap:wrap;gap:20px;margin:34px 0 16px;font-size:12px;display:flex}.post-meta>span{color:var(--blue)}.post h1{overflow-wrap:anywhere;margin:0;font-size:clamp(25px,3.4vw,36px);font-weight:650;line-height:1.7}.prose{overflow-wrap:anywhere;font-size:16px;line-height:2}.prose>:first-child{margin-top:0}.prose p{margin:1.5em 0}.prose h2,.prose h3,.prose h4{margin:2.2em 0 1em;line-height:1.6}.prose h2{border-bottom:1px solid var(--line);padding-bottom:8px;font-size:25px}.prose h3{font-size:21px}.prose h4{font-size:18px}.prose a{color:var(--blue)}.prose img,.prose video{border-radius:4px;max-width:100%;height:auto}.prose iframe{border:0;max-width:100%}.prose figure{margin:2em 0}.prose figcaption{color:var(--muted);font-size:13px}.prose pre{border:1px solid var(--line);background:#edf0f2;border-radius:6px;padding:24px;font-size:13px;line-height:1.8;overflow:auto}.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.prose :not(pre)>code{background:#e8edef;border-radius:3px;padding:2px 5px}.prose blockquote{border-left:3px solid var(--blue);color:var(--muted);margin-inline:0;padding:1px 22px}.prose table{border-collapse:collapse;max-width:100%;font-size:14px;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);padding:8px 12px}.prose hr{border:0;border-top:1px solid var(--line);margin:40px 0}.prose .sb-box{min-height:105px;margin:28px 0;position:relative}.prose .icon-img{width:80px;height:80px;position:absolute;top:0}.prose .icon-img img{object-fit:cover;border-radius:50%;width:80px;height:80px}.prose .icon-img-left,.prose .icon-name-left{left:0}.prose .icon-img-right,.prose .icon-name-right{right:0}.prose .icon-name{text-align:center;width:80px;color:var(--muted);font-size:11px;position:absolute;top:82px}.prose .sb-side-left{margin-left:106px}.prose .sb-side-right{margin-right:106px}.prose .sb-txt{border:1px solid var(--line);background:#fff;border-radius:10px;padding:16px 20px}.post-navigation{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:32px;margin-top:54px;padding-top:24px;font-size:14px;line-height:1.8;display:grid}.post-navigation a{text-decoration:none}.post-navigation a>span{color:var(--muted);margin-bottom:8px;font-size:11px;display:block}.post-navigation>:last-child{text-align:right}@media (width<=640px){.site-header,main,.site-footer{width:calc(100% - 40px)}.site-header{gap:16px;min-height:86px}.wordmark{font-size:23px}.site-header nav{gap:20px;font-size:12px}.intro{padding:44px 0 38px}.intro h1{font-size:clamp(34px,8.3vw,49px)}.intro-bottom p{font-size:12px}.posts-section{padding-top:30px}.article-list>li{grid-template-columns:1fr;gap:5px;padding:26px 0}.article-list h2{font-size:18px}.article-list time{padding-top:0;font-size:11px}.site-footer{margin-top:36px;padding:28px 0;display:block}.site-footer>span{margin-top:5px;display:block}.post-header{padding-top:30px}.post-meta{margin-top:26px}.post h1{font-size:25px}.prose{font-size:15px}.prose pre{padding:16px}.post-navigation{gap:20px;font-size:13px}}
