
:root{--ink:#1a1a1a;--paper:#fafaf7;--orange:#d9531e;--orange-soft:#fbe9e0;--gray:#8a8a85;--line:#e4e2dc;}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;background:var(--paper);color:var(--ink);line-height:2;letter-spacing:.02em;-webkit-font-smoothing:antialiased;}
.serif{font-family:"Cormorant Garamond",Georgia,serif;}
header.site{position:sticky;top:0;z-index:50;background:rgba(250,250,247,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:16px 24px;display:flex;justify-content:space-between;align-items:center;}
header.site a.logo{font-family:"Cormorant Garamond",Georgia,serif;font-size:17px;letter-spacing:.22em;font-weight:600;color:var(--ink);text-decoration:none;}
header.site a.logo span{color:var(--orange);}
header.site nav a{color:var(--ink);text-decoration:none;font-size:12px;letter-spacing:.14em;margin-left:22px;}
header.site nav a:hover,header.site nav a.on{color:var(--orange);}
main{max-width:760px;margin:0 auto;padding:56px 22px 90px;}
.j-head{margin-bottom:40px;}
.j-head .en{font-family:"Cormorant Garamond",Georgia,serif;font-size:13px;letter-spacing:.3em;color:var(--orange);text-transform:uppercase;}
.j-head h1{font-size:clamp(28px,5vw,40px);font-weight:800;margin-top:8px;}
.j-head p{color:var(--gray);font-size:13px;margin-top:10px;}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 8px;}
.tabs button{font-family:inherit;font-size:12.5px;letter-spacing:.08em;padding:9px 20px;border-radius:99px;border:1.5px solid var(--line);background:#fff;cursor:pointer;color:#55534e;}
.tabs button.on{background:var(--ink);border-color:var(--ink);color:#fff;}
.plist{list-style:none;border-top:1px solid var(--line);}
.plist li{border-bottom:1px solid var(--line);}
.plist a{display:grid;grid-template-columns:110px 110px 1fr;gap:18px;align-items:baseline;padding:20px 6px;text-decoration:none;color:var(--ink);transition:background .2s;}
.plist a:hover{background:#fff;}
.plist .d{font-family:"Cormorant Garamond",Georgia,serif;font-size:13.5px;color:var(--gray);letter-spacing:.06em;}
.plist .c{font-size:10px;letter-spacing:.12em;color:var(--orange);border:1px solid var(--orange);border-radius:99px;padding:2px 0;text-align:center;align-self:center;}
.plist .t{font-size:14.5px;font-weight:600;line-height:1.7;}
@media(max-width:600px){.plist a{grid-template-columns:1fr;gap:4px;}.plist .c{width:110px;}}
article .meta{display:flex;gap:14px;align-items:center;margin-bottom:18px;}
article .meta .c{font-size:10.5px;letter-spacing:.14em;color:var(--orange);border:1px solid var(--orange);border-radius:99px;padding:3px 14px;}
article .meta .d{font-family:"Cormorant Garamond",Georgia,serif;font-size:14px;color:var(--gray);}
article h1.title{font-size:clamp(24px,4.6vw,34px);font-weight:800;line-height:1.5;margin-bottom:34px;padding-bottom:26px;border-bottom:1px solid var(--line);}
.body{font-size:15px;}
.body p{margin-bottom:1.6em;}
.body h1,.body h2{font-size:20px;font-weight:800;margin:2em 0 .8em;padding-left:14px;border-left:3px solid var(--orange);}
.body h3{font-size:17px;font-weight:700;margin:1.6em 0 .6em;}
.body img{max-width:100%;height:auto;border-radius:10px;margin:1em 0;}
.body a{color:#2456a6;}
.body ul,.body ol{margin:0 0 1.6em 1.4em;}
.body blockquote{border-left:3px solid var(--line);padding:4px 0 4px 18px;color:#55534e;margin-bottom:1.6em;}
.body figure{margin:1em 0;}
.pn{display:flex;justify-content:space-between;gap:14px;margin-top:60px;padding-top:26px;border-top:1px solid var(--line);}
.pn a{flex:1;text-decoration:none;color:var(--ink);font-size:13px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;}
.pn a:hover{border-color:var(--orange);}
.pn .lbl{font-size:10px;letter-spacing:.2em;color:var(--orange);display:block;margin-bottom:6px;}
.pn a.next{text-align:right;}
footer.site{border-top:1px solid var(--line);padding:40px 22px;text-align:center;font-size:11px;color:var(--gray);letter-spacing:.1em;}
footer.site a{color:var(--orange);text-decoration:none;}
