/* ============================================================
  achievements.css — AMGグループの実績ページ
  （[amg_graduates] ショートコードのあるページで読み込み）
   ============================================================ */

/* ---------- ページ内ナビ ---------- */
.ach-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2.5rem;padding:0;list-style:none}
.ach-nav a{
  display:inline-block;padding:.5em 1.1em;border:1px solid var(--main-color);border-radius:999px;
  color:var(--main-color);font-size:.875rem;text-decoration:none;background:#fff;transition:background .2s,color .2s
}
.ach-nav a:hover{background:var(--main-color);color:#fff}

.ach-note{
  margin:0 0 2rem;padding:1rem 1.25rem;border-left:4px solid var(--main-color);
  background:var(--bg-color);font-size:.875rem;line-height:1.8
}

/* ---------- 数字で見る実績 ---------- */
.ach-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin:1.5rem 0}
.ach-stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1rem;text-align:center;box-shadow:var(--shadow)}
.ach-stat__label{margin:0;font-size:.82rem;font-weight:700;color:var(--ink-2)}
.ach-stat__num{margin:.25rem 0 0;font-family:var(--f-serif);font-size:clamp(2.6rem,5vw,3.4rem);line-height:1.1;color:var(--main-color)}
.ach-stat__num small{display:inline-block;font-size:.45em;margin-left:.1em;white-space:nowrap}
.ach-stat__note{margin:.4rem 0 0;font-size:.75rem;color:var(--gray)}

/* ---------- 共通：卒業年・所属、作品リスト ---------- */
.grad-meta{margin:.15rem 0 0;font-size:.8rem;color:var(--gray);line-height:1.6}
.grad-meta__sep{margin:0 .2em}
.grad-works{margin:.75rem 0 0;padding:0;list-style:none;font-size:.78rem;line-height:1.7;color:var(--ink-2)}
.grad-works li{margin:0;padding:0}
.grad-works li::before{content:none}
.grad-works__cat{margin-top:.35rem !important;font-weight:700;color:var(--main-color)}
.grad-works__cat:first-child{margin-top:0 !important}
.grad-photo__none{
  display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:100px;
  background:#eceff2;color:#a7b0b9;font-family:var(--f-serif);font-size:2rem
}

/* ---------- 声優：インタビュー ---------- */
.grad-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0 2.5rem}
.grad-feature{display:flex;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.grad-feature__photo{flex:0 0 38%;max-width:38%;align-self:flex-start;aspect-ratio:3/4;background:#eceff2}
.grad-feature__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.grad-feature__body{position:relative;flex:1;padding:1.25rem 1.25rem 1.5rem;min-width:0}
.grad-feature__name{margin:0;font-family:var(--f-serif);font-size:1.6rem;letter-spacing:.08em;line-height:1.3}
.grad-feature__headline{margin:.9rem 0 0;font-family:var(--f-serif);font-size:1.05rem;line-height:1.6;font-weight:700}
.grad-feature__comment{margin:.6rem 0 0;font-size:.82rem;line-height:1.85;color:var(--ink-2)}
.grad-awards{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .6rem;padding:0;list-style:none}
.grad-awards li{
  margin:0;padding:.25em .7em;border:1px solid var(--main-color);border-radius:999px;
  font-size:.7rem;line-height:1.4;color:var(--main-color);background:#fff
}
.grad-awards li::before{content:none}

/* ---------- 声優：一覧 ---------- */
.grad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1rem;margin:1.5rem 0 2.5rem}
.grad-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.grad-card__agency{margin:0;padding:.35rem .9rem;background:#f3e3df;font-family:var(--f-serif);font-size:.85rem;line-height:1.5}
.grad-card__agency::after{content:"所属";margin-left:.35em;font-size:.7em}
.grad-card__agency:empty{display:none}
.grad-card__inner{display:flex;gap:.75rem;padding:.75rem .9rem .9rem}
.grad-card__text{flex:1;min-width:0}
.grad-card__name{margin:0;font-family:var(--f-serif);font-size:1.15rem;letter-spacing:.06em;line-height:1.35}
.grad-card__photo{flex:0 0 92px;width:92px;height:132px;border-radius:4px;overflow:hidden;background:#eceff2}
.grad-card__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.grad-card .grad-works{font-size:.72rem;margin-top:.5rem}

/* ---------- クリエイター ---------- */
.grad-creators{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0 2.5rem}
.grad-creator{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}
.grad-creator__head{display:flex;gap:1rem;align-items:center}
.grad-creator__photo{flex:0 0 96px;width:96px;height:96px;border-radius:50%;overflow:hidden;background:#eceff2}
.grad-creator__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.grad-creator__name{margin:0;font-family:var(--f-serif);font-size:1.4rem;letter-spacing:.08em;line-height:1.3}
.grad-creator__role{margin:.2rem 0 0;font-size:.8rem;line-height:1.6;color:var(--ink-2)}
.grad-creator__headline{margin:1rem 0 0;font-family:var(--f-serif);font-weight:700;line-height:1.6}
.grad-creator__comment{margin:.5rem 0 0;font-size:.82rem;line-height:1.85;color:var(--ink-2)}

/* ---------- 2026 所属実績・内定者・プロジェクト ---------- */
.ach-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin:1.5rem 0 2rem}
.ach-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem}
.ach-card__label{display:inline-block;margin:0 0 .5rem;padding:.15em .7em;background:var(--main-color);color:#fff;font-size:.72rem;border-radius:3px}
.ach-card__title{margin:0;font-family:var(--f-serif);font-size:1.05rem;line-height:1.6;font-weight:700}
.ach-card__name{margin:.5rem 0 0;font-family:var(--f-serif);font-size:1.2rem;letter-spacing:.06em}
.ach-card__text{margin:.5rem 0 0;font-size:.82rem;line-height:1.8;color:var(--ink-2)}
.ach-card__members{margin:.6rem 0 0;font-size:.78rem;line-height:1.7;color:var(--gray)}

.ach-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem;margin:1.25rem 0 2rem;padding:0;list-style:none}
.ach-group li{margin:0;padding:.9rem 1rem;background:var(--bg-color);border-radius:var(--radius);font-size:.82rem;line-height:1.6}
.ach-group li::before{content:none}
.ach-group strong{display:block;font-size:.95rem;color:var(--main-color)}

.ach-list details{margin:0 0 .5rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.ach-list summary{cursor:pointer;padding:.8rem 1rem;font-weight:700}
.ach-list details[open] summary{border-bottom:1px solid var(--line)}
.ach-list dl{margin:0;padding:.5rem 1rem 1rem}
.ach-list dt{margin:.75rem 0 .2rem;font-weight:700;color:var(--main-color);font-size:.9rem}
.ach-list dd{margin:0;font-size:.82rem;line-height:1.8;color:var(--ink-2)}

/* 固定ページ共通の余白指定（.page h4 + p など）を打ち消す */
.page .grad-meta{margin:.15rem 0 0}
.page .grad-feature__headline{margin:.9rem 0 0}
.page .grad-feature__comment,.page .grad-creator__comment{margin:.5rem 0 0}
.page .grad-creator__role{margin:.2rem 0 0}
.page .grad-creator__headline{margin:1rem 0 0}
.page .grad-card__agency{margin:0}
.page .ach-card p{margin-bottom:0}
.page .ach-card .ach-card__label{margin:0 0 .5rem}
.page .ach-card .ach-card__title{margin:0}
.page .ach-card .ach-card__name,.page .ach-card .ach-card__text,.page .ach-card .ach-card__members{margin-top:.5rem}
.page .ach-stat p{margin:0}
.page .ach-stat .ach-stat__num{margin-top:.25rem}
.page .ach-stat .ach-stat__note{margin-top:.4rem}

@media (max-width:820px){
  .grad-featured,.grad-creators{grid-template-columns:1fr}
}
@media (max-width:520px){
  .grad-feature{flex-direction:column}
  .grad-feature__photo{flex:none;max-width:none;width:100%;aspect-ratio:4/3}
  .grad-grid{grid-template-columns:1fr}
}

/* ---------- 実績の注記 ---------- */
.amg-note{margin:1rem 0 0;font-size:.75rem;line-height:1.7;color:var(--gray)}
.amg-note--center{text-align:center}
.page .amg-note{margin-top:1rem;margin-bottom:0}
.obog .amg-note{color:inherit;opacity:.8}

/* ---------- 学科のキャッチコピー（学科紹介・トップ） ---------- */
.course_item .dept__catch,.page .course_item .dept__catch{margin:.4rem 0 .6rem;font-size:.85rem;line-height:1.6;color:#fff;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.45)}

/* ---------- 目的別ガイド（トップ・フッター） ---------- */
.linker.guide{padding-bottom:0}
.linker.guide .section-title{margin-bottom:2rem}
.ftr__guide{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:center;margin:2rem 0 0;padding:1rem 0;border-top:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12);font-size:.85rem}
.ftr__guide-label{font-weight:700;margin-right:.5rem}
.ftr__guide a{color:inherit;text-decoration:none}
.ftr__guide a:hover{text-decoration:underline}

/* 目的別ページの写真 */
.guide-img{max-width:960px;margin:2rem auto}
.guide-img--tall{max-width:360px}
.guide-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.6rem;margin:2rem 0}
.guide-gallery figure{margin:0}
.guide-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);display:block}
.guide-gallery figcaption{margin-top:.6rem;font-size:.85rem;line-height:1.6;color:var(--ink-2)}
