/* mille-feuille.net — 雑誌。苺・クリーム・灰緑。見出しは Zen Old Mincho */
:root{
  --ink:#2B2225; --ink-2:#5E5256; --bg:#FBF6F0; --surface:#fff; --soft:#F4ECE3; --line:#E8DDD2;
  --brand:#9A3A4D; --brand-ink:#fff; --accent:#9A3A4D; --accent-ink:#fff; --pay:#2B2225;
  --berry:#B4485C; --berry-d:#9A3A4D; --sage:#8FA69A; --sage-d:#5B7366; --cream:#FBF6F0;
  --f-d:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
  --r:4px; --r-lg:6px; --shadow:none;
}
.logo__name{font-family:var(--f-d);font-weight:700;font-size:1.35rem;letter-spacing:.12em}
.hd{background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom:1px solid var(--line)}
.h2{font-family:var(--f-d);font-weight:700;letter-spacing:.04em}

/* ヒーロー：雑誌の見開き。大きな余白と縦の細い罫 */
.hero{padding:40px 0 32px}
.hero__in{display:grid;gap:28px;align-items:center}
@media (min-width:1000px){.hero{padding:64px 0 40px}.hero__in{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px}}
.hero__in>*{min-width:0}
.hero__text{border-left:1px solid var(--berry);padding-left:20px}
.hero__t{display:flex;flex-direction:column;align-items:flex-start;margin:0}
.hero__eyebrow{font-weight:700;font-size:.82rem;color:var(--berry-d);letter-spacing:.06em;max-width:100%}
.hero__main{align-self:stretch;margin-top:14px;font-family:var(--f-d);font-weight:700;font-size:clamp(1.9rem,1.3rem + 2.4vw,3rem);line-height:1.45;letter-spacing:.04em}
.hero__lead{margin-top:16px;color:var(--ink-2);max-width:30em;line-height:2}
.hero__photo{aspect-ratio:16/10;overflow:hidden;position:relative}
.hero__photo::after{content:"";position:absolute;inset:auto -1px -1px auto;width:40%;height:14px;background:var(--sage)}
.hero__photo img{object-position:60% 45%}
@media (max-width:999px){.hero__photo{aspect-ratio:16/9}}

/* 層：条件を重ねた帯 */
.sou__in{display:grid;gap:20px}
@media (min-width:1000px){.sou__in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center}}
.sou{display:grid;gap:0;border-top:1px solid var(--line)}
.sou__l a{position:relative;display:grid;grid-template-columns:7.5em minmax(0,1fr) auto;align-items:center;gap:4px 16px;min-height:64px;padding:12px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.sou__bar{position:absolute;left:0;bottom:-1px;height:4px;width:var(--w);background:var(--berry)}
.sou__l--1 .sou__bar{background:var(--sage-d)}
.sou__l--2 .sou__bar{background:#C98A5B}
.sou__l--3 .sou__bar{background:#7F6A8F}
.sou__l a:hover .sou__t{text-decoration:underline}
.sou__t{font-family:var(--f-d);font-weight:700;font-size:1.1rem}
.sou__d{font-size:.88rem;color:var(--ink-2)}
.sou__n{font-weight:700;font-size:.85rem;white-space:nowrap}
.sou__n .num{font-family:var(--f-d);font-size:1.7rem;margin-right:2px}
@media (max-width:560px){.sou__l a{grid-template-columns:minmax(0,1fr) auto}.sou__d{grid-column:1;grid-row:2}.sou__n{grid-row:1 / span 2;grid-column:2}}

.sec__src{font-size:.8rem;color:var(--ink-2)}
.job{border-radius:var(--r-lg);border-color:var(--line)}
.job:hover{box-shadow:0 12px 28px rgb(43 34 37 / .08)}
.job__title{font-family:var(--f-d)}
.job__new{background:var(--berry-d);color:#fff}
.job__tags li{background:var(--soft)}
.chip.is-on{background:var(--berry-d);border-color:var(--berry-d)}

.guide__in{display:grid;gap:28px}
@media (min-width:1000px){.guide__in{grid-template-columns:minmax(0,1fr) 340px;gap:64px;align-items:start}.guide__side{position:sticky;top:96px}}
.guide__main{min-width:0;max-width:760px}
.guide__photo{aspect-ratio:4/5;overflow:hidden}
.prose{line-height:2.05}
.prose h2{font-family:var(--f-d);font-weight:700;border-bottom:0;border-top:1px solid var(--berry);padding-top:18px}
.prose th{background:var(--soft)}
.prose td:first-child,.prose th:first-child{white-space:nowrap}
.ft{background:#3A2A2F}
