/* コンサルの記事。sub.css と sub-ed.css のあとに読む */
.art{max-width:760px;margin:0 auto;padding:clamp(24px,4vw,56px) 0 clamp(64px,7vw,104px)}
.art .chip{margin-bottom:18px}
.art .h1{font-size:clamp(28px,3vw,42px);margin-bottom:24px}
.art .lead{font-size:16px;line-height:2.1;color:var(--ink-2);padding-bottom:36px;border-bottom:1px solid var(--line)}
.art section{margin-top:clamp(48px,5vw,72px)}
.art .h2{font-size:clamp(22px,2vw,28px);margin-bottom:18px}
.art p{color:var(--ink-2);line-height:2.05}
.art p + p{margin-top:1em}
.art ul.dots{margin-top:18px;display:grid;gap:10px}
.art ul.dots li{position:relative;padding-left:20px;color:var(--ink-2);line-height:1.95}
.art ul.dots li::before{content:"";position:absolute;left:4px;top:.85em;width:6px;height:6px;border-radius:50%;background:var(--green)}
.art ul.dots b{color:var(--ink);font-weight:500}
.art .ex{margin-top:20px;border-radius:20px;background:var(--white);padding:22px 26px;border:1px solid rgba(35,30,24,.07)}
.art .ex p{font-size:14.5px;line-height:1.95}
.art .ex p[lang="en"]{color:var(--ink);font-family:"Georgia","Times New Roman",serif;letter-spacing:0}
.art .ex p.ja{font-size:13px;color:var(--ink-3);margin-top:4px}
.art .ex p + p[lang="en"]{margin-top:14px}
.art .end{margin-top:clamp(56px,6vw,80px);padding-top:32px;border-top:1px solid var(--line)}
.arts{display:grid;gap:0;margin:clamp(24px,3vw,40px) auto 0;max-width:900px;border-top:1px solid var(--line)}
.arts a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;min-height:44px;padding:28px 4px;border-bottom:1px solid var(--line);text-decoration:none}
.arts .t{font-family:var(--mincho);font-weight:500;font-size:clamp(18px,1.6vw,21px);letter-spacing:.08em;line-height:1.6}
.arts .d{grid-column:1;font-size:14px;line-height:1.9;color:var(--ink-2)}
.arts .ico{grid-column:2;grid-row:1 / span 2;width:18px;height:18px;color:var(--ink-3);transition:translate .35s var(--ease-out)}
.arts a:hover .ico{translate:4px 0;color:var(--ink)}
.art .art-ph{aspect-ratio:3/2;margin:8px 0 32px}
.art ul.dots li a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink)}
.more .arts{max-width:none;margin-top:12px}
.crumb a{min-width:44px;justify-content:center}
.e-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;letter-spacing:.1em;text-decoration:none;color:var(--ink)}
.e-link span{background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:3px}
.e-link .ico{width:16px;height:16px;transition:translate .35s var(--ease-out)}
.e-link:hover .ico{translate:4px 0}
/* 一覧：左に小さな写真 */
.arts a{grid-template-columns:clamp(96px,16vw,180px) minmax(0,1fr) auto;gap:6px clamp(16px,2.4vw,32px)}
.arts .th{grid-column:1;grid-row:1 / span 2;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:14px}
.arts .t{grid-column:2;align-self:end}
.arts .d{grid-column:2;align-self:start}
.arts .ico{grid-column:3}
.more .arts a{grid-template-columns:120px minmax(0,1fr) auto}
@media (max-width:560px){.arts a{grid-template-columns:72px minmax(0,1fr) auto}.arts .d{display:none}.arts .t{align-self:center;grid-row:1 / span 2;font-size:16px}}
.more ul.arts{grid-template-columns:minmax(0,1fr);gap:0}
/* 日付と書き手、目次 */
.art .byline{display:flex;flex-wrap:wrap;gap:4px 20px;margin:-8px 0 28px;font-size:13px;letter-spacing:.08em;color:var(--ink-3)}
.art .toc{margin:28px 0 0;padding-bottom:8px}
/* 記事の終わりの案内（説明ページと一覧）を並べる */
.art .end{display:flex;flex-wrap:wrap;gap:4px 36px}
