body:has(.pub){background:#0a0a0a}.pub{--p-bg:#0a0a0a;--p-panel:#121212;--p-ink:#ece8df;--p-sub:#cfcac0;--p-key:#cdb188;--p-hair:#e7e3da29;--p-serif:"Shippori Mincho JP","Hiragino Mincho ProN",serif;--p-sans:"Noto Sans JP","Hiragino Sans",sans-serif;background:var(--p-bg);min-height:100dvh;color:var(--p-ink);font-family:var(--p-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));font-size:16px;line-height:1.9}.pub a{color:inherit}.pub-head{justify-content:space-between;align-items:center;gap:16px;max-width:1080px;margin:0 auto;padding:18px 0;display:flex}.pub-logo{align-content:center;min-height:44px;text-decoration:none;display:grid}.pub-logo-name{font-family:var(--p-serif);letter-spacing:.14em;color:var(--p-ink);font-size:20px;font-weight:700}.pub-logo-sub{letter-spacing:.08em;color:var(--p-key);font-size:12.5px}.pub-nav{align-items:center;gap:8px;display:flex}.pub-nav a{letter-spacing:.06em;min-height:44px;color:var(--p-sub);align-items:center;padding:0 14px;font-size:14px;text-decoration:none;display:inline-flex}.pub-nav a:hover{color:var(--p-ink)}.pub-nav .pub-nav-cta{border:1px solid var(--p-key);color:var(--p-key);border-radius:999px}.pub-main{max-width:1080px;margin:0 auto;padding-bottom:40px}.pub-kicker{color:var(--p-key);letter-spacing:.12em;font-family:Lora,serif;font-size:15px;font-style:italic}.pub-hero{gap:14px;max-width:760px;padding:56px 0 36px;display:grid}.pub h1,.pub h2{word-break:auto-phrase}.pub-hero h1{font-family:var(--p-serif);letter-spacing:.04em;text-wrap:balance;font-size:clamp(26px,4.2vw,40px);font-weight:600;line-height:1.5}.pub-lead{color:var(--p-sub);font-size:16px}.pub-empty{color:var(--p-sub);padding:24px 0}.pub-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.pub-card{border:1px solid var(--p-hair);background:var(--p-panel);gap:10px;height:100%;padding:24px;text-decoration:none;transition:border-color .2s;display:grid}.pub-card:hover{border-color:var(--p-key)}.pub-card time{letter-spacing:.08em;color:var(--p-key);font-size:13px}.pub-card h2{font-family:var(--p-serif);font-size:19px;font-weight:600;line-height:1.6}.pub-card p{color:var(--p-sub);font-size:14.5px;line-height:1.8}.pub-more{letter-spacing:.12em;color:var(--p-key);font-size:13px}.pub-crumb{color:var(--p-sub);align-items:center;gap:10px;padding:22px 0 0;font-size:13.5px;display:flex}.pub-crumb a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.pub-article{max-width:720px;margin:0 auto;padding:20px 0 24px}.pub-article header{border-bottom:1px solid var(--p-hair);gap:12px;margin-bottom:28px;padding-bottom:28px;display:grid}.pub-article time{letter-spacing:.08em;color:var(--p-key);font-size:13px}.pub-article h1{font-family:var(--p-serif);letter-spacing:.03em;text-wrap:balance;font-size:clamp(24px,3.6vw,34px);font-weight:600;line-height:1.55}.pub-byline{color:var(--p-sub);font-size:13.5px}.pub-body{overflow-wrap:anywhere;font-size:16.5px;line-height:2.05}.pub-body h2{font-family:var(--p-serif);border-left:2px solid var(--p-key);margin:2.4em 0 .8em;padding-left:14px;font-size:23px;font-weight:600;line-height:1.6}.pub-body h3{font-family:var(--p-serif);color:var(--p-key);margin:1.8em 0 .6em;font-size:18.5px;font-weight:600}.pub-body p{margin:0 0 1.3em}.pub-body ul,.pub-body ol{margin:0 0 1.3em;padding-left:1.4em}.pub-body li{margin:.3em 0}.pub-body a{color:var(--p-key)}.pub-cta{text-align:center;border:1px solid var(--p-hair);background:linear-gradient(#141210,#0d0c0b);justify-items:center;gap:12px;max-width:720px;margin:40px auto 0;padding:40px 28px;display:grid}.pub-cta h2{font-family:var(--p-serif);letter-spacing:.06em;font-size:26px;font-weight:600}.pub-cta p{color:var(--p-sub)}.pub-btn{background:var(--p-key);letter-spacing:.06em;border-radius:999px;justify-content:center;align-items:center;min-height:52px;margin-top:8px;padding:0 32px;font-weight:700;text-decoration:none;display:inline-flex;color:#141210!important}.pub-btn:hover{filter:brightness(1.08)}.pub-note{font-size:13px}.pub-back{text-align:center;max-width:720px;margin:24px auto 0}.pub-back a{min-height:44px;color:var(--p-sub);align-items:center;display:inline-flex}.pub-foot{max-width:1080px;padding:36px 0 calc(36px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--p-hair);text-align:center;color:var(--p-sub);justify-items:center;gap:6px;margin:40px auto 0;font-size:13.5px;display:grid}.pub-foot-brand{font-family:var(--p-serif);letter-spacing:.2em;color:var(--p-ink);font-size:18px}.pub-foot-nav{flex-wrap:wrap;justify-content:center;gap:4px 8px;margin-top:8px;display:flex}.pub-foot-nav a{align-items:center;min-height:44px;padding:0 8px;text-decoration:none;display:inline-flex}.pub-copy{margin-top:8px;font-size:12.5px}.pub :focus-visible{outline:2px solid var(--p-key);outline-offset:3px}@media (max-width:640px){.pub-head{padding:12px 0}.pub-logo-sub{display:none}.pub-hero{padding:36px 0 24px}.pub-cta{padding:32px 18px}.pub-body{font-size:16px}}
