
/* ===== BREADCRUMB ===== */
.crumb{padding:120px 80px 0;font-family:var(--label-en);font-size:11px;letter-spacing:.2em;color:var(--ink-soft)}
.crumb a{color:var(--ink-soft)}
.crumb .sep{margin:0 10px;opacity:.6}

/* ===== MASTHEAD: 雑誌の表紙風タイトル ===== */
.masthead{padding:40px 80px 60px;position:relative;border-bottom:1px solid var(--line)}
.masthead .issue-line{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:36px;font-family:var(--label-en);font-size:11px;letter-spacing:.4em;color:var(--ink-soft)}
.masthead .issue-line .iss{color:var(--accent);font-weight:500}
.masthead .title-block{display:grid;grid-template-columns:1fr auto;gap:64px;align-items:end}
.masthead h1{font-family:var(--label-en);font-weight:200;font-size:clamp(80px,11vw,180px);letter-spacing:-.01em;line-height:.9;color:var(--ink);transform:translateX(-.03em)}
.masthead h1 .dot{color:var(--accent);font-weight:500}
.masthead .ja-sub{font-family:var(--serif-jp);font-weight:400;font-size:15px;letter-spacing:.32em;color:var(--ink);line-height:1.9;text-align:right;padding-bottom:18px;max-width:320px}
.masthead .ja-sub .em{display:block;font-size:18px;letter-spacing:.36em;margin-bottom:8px;font-weight:500}


/* ========== NEWS LIST PAGE CSS ========== */
.news-intro{padding:clamp(64px,8vw,120px) clamp(20px,4vw,52px) clamp(32px,5vw,72px);max-width:760px;margin:0 auto;text-align:center}
.news-intro p{font-size:14px;line-height:2.4;letter-spacing:.12em;color:var(--ink);margin:0}
.news-intro p span{color:var(--accent);font-weight:700;letter-spacing:.16em}
.news-filter{max-width:1080px;margin:0 auto;padding:0 clamp(20px,4vw,52px) clamp(40px,5vw,64px);display:flex;gap:6px;justify-content:center;border-bottom:1px solid var(--line)}
.news-filter a{display:inline-flex;align-items:center;padding:14px 28px;font-family:"Jost",sans-serif;font-weight:500;font-size:11.5px;letter-spacing:.42em;color:var(--ink-soft);text-decoration:none;transition:color .25s ease;position:relative}
.news-filter a.on{color:var(--ink)}
.news-filter a.on::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}
.news-filter a:hover{color:var(--ink)}
.news-list{max-width:1080px;margin:0 auto;padding:clamp(40px,5vw,80px) clamp(20px,4vw,52px) clamp(40px,5vw,72px);display:flex;flex-direction:column;gap:0}
.news-item{display:grid;grid-template-columns:170px 1fr;gap:32px;padding:36px 0;border-bottom:1px solid var(--line);align-items:start;text-decoration:none;color:var(--ink);transition:opacity .25s ease,padding .25s ease}
.news-item:first-child{padding-top:8px}
.news-item:hover{opacity:.7;padding-left:8px}
.news-item .date-col{display:flex;flex-direction:column;gap:8px;padding-top:4px}
.news-item .date{font-family:"Jost",sans-serif;font-weight:400;font-size:14px;letter-spacing:.18em;color:var(--ink)}
.news-item .badge{display:inline-block;align-self:flex-start;padding:4px 12px;font-family:"Jost",sans-serif;font-weight:500;font-size:9.5px;letter-spacing:.32em;color:#fff;background:var(--accent);border-radius:2px}
.news-item .body{}
.news-item .ttl{font-family:"Shippori Mincho",serif;font-weight:500;font-size:clamp(15px,1.4vw,18px);letter-spacing:.12em;line-height:1.85;margin-bottom:10px;color:var(--ink)}
.news-item .excerpt{font-size:13px;line-height:2;letter-spacing:.06em;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-empty{text-align:center;padding:80px 20px;color:var(--ink-soft);font-size:14px;letter-spacing:.1em}
/* PAGER */
.news-pager{padding:clamp(40px,5vw,80px) 0;display:flex;justify-content:center;align-items:center;gap:8px}
.news-pager a,.news-pager span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-family:"Jost",sans-serif;font-size:13px;letter-spacing:.04em;color:var(--ink-soft);text-decoration:none;border:1px solid transparent;transition:.2s}
.news-pager a:hover{border-color:var(--line)}
.news-pager a.on{background:var(--ink);color:#fff}
.news-pager .arrow{width:auto;padding:0 18px;font-size:11px;letter-spacing:.22em}
.news-pager .arrow.disabled{opacity:.3;pointer-events:none}
/* CTA */
.news-cta{background:var(--bg-deep);padding:clamp(80px,10vw,140px) 32px;text-align:center}
.news-cta .eb{font-family:"Jost",sans-serif;font-weight:300;font-size:13px;letter-spacing:.45em;color:var(--accent);margin-bottom:16px}
.news-cta h3{font-family:"Shippori Mincho",serif;font-weight:500;font-size:clamp(22px,2.4vw,30px);letter-spacing:.18em;line-height:1.9;margin-bottom:32px;color:var(--ink)}
.news-cta .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.news-cta .btn{display:inline-flex;align-items:center;justify-content:center;min-width:220px;padding:18px 28px;font-family:"Noto Sans JP",sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.22em;text-decoration:none;border-radius:999px;transition:.3s}
.news-cta .btn.fill{background:var(--ink);color:#fff;border:1px solid var(--ink)}
.news-cta .btn.outline{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.news-cta .btn.outline:hover{background:var(--ink);color:#fff}
@media (max-width:767px){
  .news-filter{padding-bottom:24px;flex-wrap:wrap}
  .news-filter a{padding:10px 14px;letter-spacing:.28em;font-size:10.5px}
  .news-item{grid-template-columns:1fr;gap:10px;padding:24px 0}
  .news-item .date-col{flex-direction:row;align-items:center;gap:14px}
  .news-item .ttl{font-size:14px}
  .news-cta .btn{width:100%;min-width:0}
}
