@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

body{
  background:#EDE7DC;
  font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}

/* グローバル chrome（nav/header/footer）は /styles/chrome.css に集約。 */
.v2-wrap{
  width:100%;
  max-width:430px;
  margin:0 auto;
  background:#FAF4EC;
  position:relative;
  overflow-x:hidden;
}

/* ── hero ── */
/* スマホは横幅いっぱい（左右余白0・角丸なし）。PC(900px+)ではカード内レイアウトに戻す。 */
.v2-hero{
  margin:0 0 0;
  background:linear-gradient(160deg,#FCE9DF,#FBDDCB);
  border-radius:0;padding:16px 16px 18px;
  position:relative;overflow:hidden;
}
.v2-hero-bg-circle{
  position:absolute;top:-26px;right:-20px;
  width:120px;height:120px;border-radius:50%;
  background:rgba(255,255,255,0.4);
}
.v2-hero-emoji-bg{
  position:absolute;right:10px;top:0px;
  line-height:1;
  opacity:0.55;
  pointer-events:none;user-select:none;
}
.twemoji-hero{
  width:166px;height:166px;
  vertical-align:top;margin:0;
}
.twemoji-inline{
  width:1.1em;height:1.1em;
  vertical-align:0.3em;margin:0 0.05em;
}
.v2-hero-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;position:relative}
.v2-hero-badges>span{flex:0 0 auto}
.v2-badge-market{
  font-size:11px;font-weight:800;color:#2E72B8;
  background:#fff;border-radius:7px;padding:3px 9px;
}
.v2-badge-industry{
  font-size:11px;font-weight:800;color:#3A352E;
  background:#F2C94C;border-radius:7px;padding:3px 9px;
}
.v2-badge-bm{
  display:inline-flex;align-items:center;gap:3px;
  font-size:11px;font-weight:800;color:#3A352E;
  background:rgba(255,255,255,0.92);border-radius:7px;padding:3px 9px;
}
.v2-badge-bm--sig{box-shadow:inset 0 0 0 1.5px #F2C94C}
.v2-hero-name{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:900;font-size:30px;line-height:1.15;position:relative;
}
.v2-hero-kana{font-size:14px;font-weight:700;color:#A98B6E;margin-left:8px}
.v2-hero-tags{
  display:flex;flex-wrap:wrap;gap:6px;
  margin-top:13px;position:relative;
}
.v2-tag-chip{
  min-height:28px;
  font-size:11px;font-weight:800;color:#4C453D;
  background:rgba(255,255,255,0.9);border:1px solid rgba(107,91,77,0.12);
  border-radius:999px;padding:5px 11px;
  display:inline-flex;align-items:center;gap:3px;text-decoration:none;
}
.v2-tag-chip img{margin:0}
.v2-tag-chip.primary,
.v2-tag-chip.secondary,
.v2-tag-chip--bm{color:#4C453D;font-weight:800}
.v2-tag-chip--bm-sig{box-shadow:none}
.v2-tag-chip:hover{background:#fff;border-color:rgba(107,91,77,0.28)}
.v2-tag-chip:focus-visible{outline:3px solid rgba(46,114,184,0.35);outline-offset:2px}

/* ── generic card ── */
.v2-card{
  background:#fff;border-radius:16px;
  padding:15px 16px;
  box-shadow:rgba(80,60,40,0.28) 0px 5px 14px -11px;
  margin-top:8px;
}
.v2-card-label{
  font-size:14px;font-weight:800;margin-bottom:6px;
}

/* ── tagline (hero内) ── */
.v2-hero-tagline{
  margin-top:16px;position:relative;
  background:rgba(255,255,255,0.7);border-radius:16px;padding:14px 15px;
}
.v2-tagline-label{font-size:11px;font-weight:800;color:#E8674C;margin-bottom:6px}
.v2-tagline-main{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:700;font-size:15.5px;line-height:1.6;color:#2B2925;
}
.v2-tagline-sub{display:block;margin-top:6px;color:#5E7286;font-size:13px;font-weight:500}

/* ── quick stats ── */
.v2-quick-stats{display:flex;gap:10px;margin:13px 16px 0}
.v2-stat-dark{
  flex:1;background:#26241F;border-radius:16px;padding:13px 14px;color:#fff;
}
.v2-stat-light{
  flex:1;background:#fff;border-radius:16px;padding:13px 14px;
  box-shadow:rgba(80,60,40,0.28) 0px 5px 14px -11px;
}
.v2-stat-label{font-size:10.5px;font-weight:700;color:#C9BFB2}
.v2-stat-light .v2-stat-label{color:#8B8378}
.v2-stat-value{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:900;font-size:22px;margin-top:2px;
}
.v2-stat-unit{font-size:12px}

/* ── mobile TOC ── */
.v2-mobile-toc{margin:16px 16px 0;background:#F2EADD;border-radius:18px;padding:16px 17px}
.v2-mtoc-head{font-size:12.5px;font-weight:800;margin-bottom:13px;display:flex;align-items:center;gap:6px}
.v2-mtoc-hint{font-size:10.5px;font-weight:700;color:#A09176}
.v2-mtoc-groups{display:flex;flex-direction:column;gap:14px}
.v2-mtoc-group-label{font-size:10.5px;font-weight:800;margin-bottom:7px;letter-spacing:0.02em}
.v2-mtoc-links{display:flex;flex-direction:column;gap:2px}
.v2-mtoc-link{display:flex;align-items:center;gap:9px;text-decoration:none;padding:6px 8px;border-radius:9px}
.v2-mtoc-dot{flex:0 0 auto;width:6px;height:6px;border-radius:50%}
.v2-mtoc-text{flex:1 1 0;font-size:12.5px;font-weight:700;color:#4C453D;line-height:1.4}
.v2-mtoc-arrow{flex:0 0 auto}

/* ── section heading ── */
.v2-sec{padding:26px 18px 0}
.v2-sec-head{
  display:grid;grid-template-columns:auto minmax(0,1fr);
  align-items:center;column-gap:8px;row-gap:5px;margin-bottom:13px;
}
.v2-sec-emoji{font-size:17px;line-height:0;display:inline-block;margin-top:-3px}
.v2-sec-title{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  min-width:0;font-weight:900;font-size:18px;margin:0;line-height:1.35;
  overflow-wrap:anywhere;
}
.v2-sec-badge{
  margin-left:auto;font-size:10px;font-weight:800;
  border-radius:999px;padding:3px 9px;
}
.v2-sec-year{
  margin-left:0;
  font-size:10px;
  color:#A89E98;
  font-weight:700;
  line-height:1.35;
  text-align:right;
  white-space:nowrap;
}
.v2-sec-head>.v2-sec-year{grid-column:1 / -1;grid-row:2;justify-self:end;}

/* ── section with colored bar heading ── */
.v2-bar-head{
  display:grid;grid-template-columns:auto minmax(0,1fr);
  align-items:center;column-gap:8px;row-gap:5px;margin-bottom:14px;
}
.v2-bar{width:6px;height:20px;border-radius:4px}
.v2-bar-title{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  min-width:0;font-weight:900;font-size:19px;line-height:1.35;margin:0;
  overflow-wrap:anywhere;
}
.v2-bar-head>.v2-sec-year{grid-column:1 / -1;grid-row:2;justify-self:end;}

/* ── numbers grid ── */
.v2-num-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.v2-num-card{background:#fff;border-radius:15px;padding:13px 14px;box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px}
.v2-num-label-row{display:flex;align-items:center;gap:5px;margin-bottom:6px}
.v2-num-label{font-size:11px;color:#8B8378;font-weight:700}
.v2-hint-btn{
  width:17px;height:17px;border:none;border-radius:50%;
  background:#EFE7DA;color:#9A8E7E;font-size:10px;font-weight:900;
  cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;
}
.v2-num-value{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:900;font-size:19px;line-height:1;
}
.v2-num-unit{font-size:15px;margin-left:1px}

/* ── source link ── */
.v2-source{
  display:flex;align-items:center;justify-content:flex-end;
  gap:5px;margin-top:8px;margin-bottom:13px;text-decoration:none;
}
.v2-source span{font-size:10px;color:#A89E98;font-weight:700}
.v2-footnotes{display:flex;flex-direction:column;gap:3px;margin-top:8px;margin-bottom:13px}
.v2-footnote{display:flex;align-items:center;justify-content:flex-end;gap:5px;text-decoration:none;font-size:10px;color:#A89E98;font-weight:700}
.v2-mini-ref{position:absolute;top:5px;right:7px;font-size:9px;color:#B0A89E;font-weight:700}

/* ── chart section ── */
.v2-chart-card{
  background:#fff;border-radius:18px;padding:14px 12px;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
canvas{display:block}

/* ── segment legend ── */
.v2-seg-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.v2-seg-item{display:flex;flex-direction:column;gap:3px}
.v2-seg-row{display:flex;align-items:center;gap:7px;border-bottom:1px solid rgba(0,0,0,0.07);padding-bottom:4px}
.v2-seg-left{display:flex;align-items:center;gap:6px;margin-left:auto;flex:0 0 auto}
.v2-seg-dot{flex:0 0 auto;width:11px;height:11px;border-radius:3px}
.v2-seg-name{font-size:12.5px;font-weight:800}
.v2-seg-pct{font-size:12px;font-weight:900;white-space:nowrap}
.v2-seg-summary{font-size:11px;color:#8B8378;line-height:1.5}

/* ── biz section ── */
.v2-biz-list{display:flex;flex-direction:column;gap:11px}
.v2-biz-p{font-size:13px;line-height:1.85;margin:0;color:#4C453D}
.v2-products{display:flex;flex-wrap:wrap;gap:6px}
.v2-product-chip{
  font-size:11.5px;font-weight:700;color:#4C453D;
  background:#F2EAD9;border-radius:8px;padding:5px 9px;
}

/* ── swot ── */
.v2-swot-box{border-radius:18px;padding:16px 17px}
.v2-swot-box.good{background:#EAF6F0}
.v2-swot-box.bad{background:#FBEDE9}
.v2-swot-label{font-size:14px;font-weight:900;margin-bottom:11px;display:flex;align-items:center;gap:6px}
.v2-swot-list{display:flex;flex-direction:column;gap:10px}
.v2-swot-item{display:flex;gap:9px}
.v2-swot-num{flex:0 0 auto;font-weight:900}
.v2-swot-text{font-size:12.5px;line-height:1.6}

/* ── recruit ── */
.v2-mini-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:8px}
.v2-mini-card{
  position:relative;
  background:#fff;border-radius:14px;padding:12px 8px;
  text-align:center;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
.v2-mini-value{
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:900;font-size:18px;
}
.v2-mini-unit{font-size:10px;margin-left:2px}
.v2-mini-label{font-size:9.5px;color:#8B8378;font-weight:700;margin-bottom:3px}

/* ── selection flow ── */
.v2-flow-box{background:#fff;border-radius:16px;padding:15px 0;margin:14px 0 8px}
.v2-flow-label{font-size:14px;font-weight:800;color:#C78A1E;margin-bottom:11px}
.v2-flow-steps{display:flex;flex-direction:column;gap:0}
.v2-flow-step{display:flex;align-items:center;gap:10px}
.v2-flow-num{
  flex:0 0 auto;width:22px;height:22px;border-radius:50%;
  background:#DDA02E;color:#fff;
  font-size:11px;font-weight:900;
  display:flex;align-items:center;justify-content:center;
}
.v2-flow-num.last{background:#2F9E78}
.v2-flow-step-name{font-size:12.5px;font-weight:700}
.v2-flow-step-name.last{color:#2F9E78;font-weight:900}
.v2-flow-line{width:2px;height:11px;background:#EAD9AE;margin-left:10px}

/* ── job types ── */
.v2-jobs-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:6px}
.v2-job-card{background:#fff;border-radius:14px;padding:13px 14px;box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;display:flex;flex-direction:column;text-decoration:none;color:inherit}
.v2-job-name{font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-weight:900;font-size:13.5px}
.v2-job-desc{font-size:10.5px;color:#8B8378;margin-top:4px;line-height:1.5}
.v2-job-salary{display:flex;align-items:baseline;gap:6px;margin-top:8px;font-size:11px;line-height:1.5}
.v2-job-salary-label{flex:none;font-weight:800;color:#B0863C;font-size:10px}
.v2-job-salary-val{color:#5C5346;font-weight:700}
.v2-jt-src{display:flex;align-items:center;gap:4px;margin-top:auto;padding-top:7px;font-size:10px;color:#A89E98;font-weight:700;justify-content:flex-end}
.v2-salary-note{font-size:11px;color:#8B8378;margin-top:9px;text-align:center;font-weight:700}

/* ── guide ── */
.v2-guide-wrap{
  margin:30px 0 0;
  background:linear-gradient(160deg,#EFE9FA,#E6E1F6);
  padding:24px 18px 20px;
}
.v2-guide-head{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;column-gap:8px;row-gap:5px;margin-bottom:5px;
}
.v2-guide-emoji{font-size:18px}
.v2-guide-title{
  min-width:0;font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-weight:900;font-size:19px;line-height:1.35;margin:0;
  overflow-wrap:anywhere;
}
.v2-guide-ai-badge{
  margin-left:auto;font-size:10px;font-weight:800;color:#fff;
  background:#7E6FCB;border-radius:999px;padding:4px 10px;
}
.v2-guide-head>.v2-sec-year{grid-column:1 / -1;grid-row:2;justify-self:end;}
.v2-guide-sub{font-size:11.5px;color:#6B6080;margin:0 0 16px;line-height:1.6}

.v2-fit-row{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.v2-fit-card{
  flex:1;background:#fff;border-radius:16px;padding:14px;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
.v2-fit-label{font-size:14px;font-weight:900;margin-bottom:8px}

/* 単体ミニ見出し（募集職種・イベント・面接質問・逆質問） */
.v2-subhead{font-size:15px;font-weight:800;margin:0 0 9px;display:flex;align-items:center;gap:6px}
.v2-subhead--mt{margin-top:18px}
.v2-subhead--guide{color:#6B6080}
.v2-fit-text{font-size:11.5px;line-height:1.7;margin:0;color:#4C453D}
.v2-fit-text.bad{color:#5A453E}

/* ── motivation ── */
.v2-mot-card{
  background:#fff;border-radius:16px;padding:16px;
  margin-bottom:13px;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
.v2-mot-badge{
  display:inline-block;
  font-size:11px;font-weight:900;color:#7E6FCB;
  background:#EFE9FA;border-radius:7px;padding:3px 9px;
  margin-bottom:10px;
}
.v2-mot-text{font-size:12.5px;line-height:1.9;margin:0;color:#4C453D}
.v2-mot-more{
  margin-top:12px;width:100%;border:none;
  background:#F2EAD9;color:#6B6080;font-weight:800;font-size:12px;
  border-radius:10px;padding:9px;cursor:pointer;
}

/* ── interview QA ── */
.v2-qa-card{
  background:#fff;border-radius:16px;padding:15px 16px;
  margin-bottom:10px;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
.v2-qa-q{font-size:12.5px;font-weight:900;color:#7E6FCB;margin-bottom:8px;line-height:1.5}
.v2-qa-a{font-size:12px;line-height:1.8;margin:0 0 9px;color:#4C453D}
.v2-qa-advice{
  background:#FBF3E0;border-radius:10px;
  padding:10px 12px;font-size:11px;line-height:1.6;
  color:#7A5E1E;font-weight:700;
}

/* ── reverse questions ── */
.v2-rq-card{
  background:#fff;border-radius:16px;padding:16px;
  margin-bottom:6px;
  box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;
}
.v2-rq-list{display:flex;flex-direction:column;gap:9px}
.v2-rq-item{display:flex;align-items:center;gap:8px}
.v2-rq-arrow{flex:0 0 auto;color:#7E6FCB}
.v2-rq-text{font-size:11.5px;line-height:1.6;color:#4C453D}

/* ── Events ── */
.v2-events-list{display:flex;flex-direction:column;gap:9px;margin-top:11px}
.v2-event-card{background:#fff;border-radius:14px;padding:13px 14px;box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px;display:block;text-decoration:none;color:inherit}
a.v2-event-card:hover{opacity:.92}
.v2-ev-cell{flex:1;border-radius:9px;padding:7px 9px}
.v2-ev-date{background:#FAF6EF}
.v2-ev-dl{background:#FBF3E0}
.v2-ev-cell-label{font-size:9px;color:#A89E94;font-weight:700;margin-bottom:2px}
.v2-ev-cell-val{font-size:11px;font-weight:800;line-height:1.4;white-space:pre-line}
.v2-ev-head{display:flex;align-items:center;gap:7px;margin-bottom:8px}
.v2-ev-badge{font-size:9.5px;font-weight:800;border-radius:6px;padding:3px 8px}
.v2-ev-status{margin-left:auto;font-size:9.5px;font-weight:900;border-radius:999px;padding:3px 9px}
.v2-ev-status--open{color:#fff;background:#2F9E78}
.v2-ev-status--upcoming{color:#8A6410;background:#FBF3E0}
.v2-ev-status--closed{color:#8A8580;background:#EFEBE6}
.v2-event-card--closed{opacity:.72}
/* 卒年ごとの採用情報セクション（募集職種＋イベントをまとめる） */
.v2-grad-block{margin-top:20px}
.v2-grad-block:first-child{margin-top:8px}
.v2-grad-head{display:flex;align-items:center;gap:8px;margin:0 0 11px}
.v2-grad-head::after{content:"";flex:1;height:1px;background:#EFE7DA}
.v2-grad-pill{font-family:'Zen Maru Gothic';font-weight:900;font-size:13px;color:#fff;background:#DDA02E;border-radius:999px;padding:3px 13px}
.v2-ev-title{font-family:'Zen Maru Gothic';font-weight:900;font-size:13.5px;line-height:1.35;display:flex;align-items:flex-start;gap:5px}
.v2-ev-title-text{flex:1}
.v2-ev-linkicon{flex:0 0 auto;margin-top:2px}
.v2-ev-cells{display:flex;gap:8px;margin-top:10px}
.v2-ev-date .v2-ev-cell-val{color:#4C453D}
.v2-ev-dl .v2-ev-cell-val{color:#8A6410}
.v2-ev-dl .v2-ev-cell-label{color:#C78A1E}

/* ── CTA ── */
.v2-cta{padding:22px 18px 16px;display:flex;flex-direction:column;gap:9px}
.v2-cta-main{
  border:none;border-radius:15px;
  background:#E8674C;color:#fff;
  font-family:'Zen Maru Gothic','Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;
  font-weight:900;font-size:14.5px;padding:15px;
  box-shadow:rgba(232,103,76,0.55) 0px 8px 18px -7px;
  cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;
  text-decoration:none;
}
.v2-cta-sub{display:flex;gap:9px}
.v2-cta-btn{
  flex:1;border:1.5px solid #E5DBCC;border-radius:15px;
  background:#fff;color:#6E665C;font-weight:800;font-size:13px;
  padding:13px;cursor:pointer;text-decoration:none;
  display:flex;align-items:center;justify-content:center;
}
/* ── expand/collapse for motivation ── */
.v2-mot-collapsed .v2-mot-full{display:none}
.v2-mot-collapsed .v2-mot-preview{display:block}
.v2-mot-expanded .v2-mot-full{display:block}
.v2-mot-expanded .v2-mot-preview{display:none}

/* ── 静的スタイルのクラス化（色はセクション文脈で指定） ── */
.v2-hl{font-weight:900}
.v2-grad-badge{font-size:10px;color:#fff;background:#DDA02E;border-radius:6px;padding:1px 6px;margin-left:5px}
.v2-fin-box{position:relative;height:200px}
.v2-seg-box{position:relative;height:180px}
#sec-biz .v2-bar{background:#2F9E78}
#sec-swot .v2-bar{background:#E8674C}
#sec-recruit .v2-bar{background:#DDA02E}
#sec-biz .v2-card-label{color:#2F9E78}
#sec-recruit .v2-card-label{color:#DDA02E}
.v2-swot-box.good{margin-bottom:12px}
.v2-swot-box.good .v2-swot-label{color:#2F9E78}
.v2-swot-box.bad .v2-swot-label{color:#D95E45}
.v2-mini-stats .v2-mini-card:nth-child(1) .v2-mini-value{color:#DDA02E}
.v2-mini-stats .v2-mini-card:nth-child(2) .v2-mini-value{color:#2F9E78}
.v2-mini-stats .v2-mini-card:nth-child(3) .v2-mini-value{color:#2E72B8}
.pc-culture-row .v2-card{margin-bottom:11px}
.v2-fit-row .v2-fit-card:nth-child(1) .v2-fit-label{color:#2F9E78}
.v2-fit-row .v2-fit-card:nth-child(2) .v2-fit-label{color:#D95E45}

/* section heading: full(SEO) / simple を切替（base=SP は simple 表示） */
.hd-full{display:none}
.hd-simple{display:inline}

/* ── card aesthetic at ALL widths (mobile mirrors the PC main column) ── */
/* sections become white cards on the cream page; the @media block below
   just enlarges sizing and adds the desktop chrome (header/hero-row/sidebar). */
.v2-sec{
  background:#fff;border-radius:18px;
  margin:14px 16px 0;
  padding:18px 16px;
  box-shadow:rgba(80,60,40,0.14) 0px 6px 18px -12px;
}
.v2-num-card{background:#FAF6EF;box-shadow:none}
.v2-chart-card{background:transparent;box-shadow:none;padding:0}
.v2-biz-list .v2-card{background:#EAF6F0;box-shadow:none}
.pc-culture-row .v2-card{background:#FAF6EF;box-shadow:none}
.v2-mini-card{background:#FBF3E0;box-shadow:none}
.v2-job-card{border:1.5px solid #EFE7DA;box-shadow:none}
.v2-event-card{border:1.5px solid #EFE7DA;box-shadow:none}
.v2-guide-wrap{margin:14px 16px 0;border-radius:18px}
.v2-point-card{background:#EDE5FA;display:flex;gap:9px;margin-top:13px;border-radius:14px;padding:12px 13px;box-shadow:rgba(80,60,40,0.3) 0px 5px 14px -11px}
.v2-point-card-emoji{flex:0 0 auto;font-size:15px;line-height:1.4}
.v2-point-card-title{color:#7E6FCB;font-size:11.5px;font-weight:900;margin-bottom:3px}
.v2-point-card-body{color:#4C4368;font-size:12.5px;line-height:1.7}
/* 平均年収カードはダーク */
.v2-num-card.v2-num-dark{background:#26241F}
.v2-num-card.v2-num-dark .v2-num-label{color:#C9BFB2}

/* ── つぎは、どの会社いく？（レコメンド・モバイル基準） ── */
.v2-next{display:block;margin-top:30px;background:linear-gradient(160deg,#FCEFE6,#FBE3D6)}
.v2-next-inner{padding:26px 18px 22px}
.v2-next-head{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}
.v2-next-emoji{font-size:18px}
.v2-next-title{font-family:'Zen Maru Gothic';font-weight:900;font-size:19px;margin:0;line-height:1.25}
.v2-next-sub{font-size:11.5px;color:#9A6E58;margin:0 0 18px;line-height:1.6}
.v2-next-placeholder{background:rgba(255,255,255,0.6);border-radius:16px;padding:26px;text-align:center;font-size:13px;font-weight:700;color:#A07854}
.v2-rec-label{font-size:12.5px;font-weight:900;margin-bottom:11px;display:flex;align-items:center;gap:6px}
.v2-rec-label--mt{margin-top:22px}
.v2-rec-rivals{display:grid;grid-template-columns:1fr;grid-auto-rows:1fr;gap:10px}
/* こんな会社も：モバイルは縦積み（ピルは浮きチップ） */
.v2-rec-pick-groups{display:flex;flex-direction:column;gap:16px}
.v2-rec-pick-cards{display:grid;grid-template-columns:1fr;grid-auto-rows:1fr;gap:10px;margin-top:4px}
.v2-rec-pill{display:inline-flex;align-items:center;gap:5px;background:#fff;border-radius:999px;padding:5px 12px;margin-bottom:4px;box-shadow:rgba(80,60,40,0.3) 0 4px 10px -7px}
.v2-rec-pill-tx{font-size:11.5px;font-weight:800;color:#C2593E}

/* ── PC layout (reference reproduction) ───────── */
/* PC-only / mobile-only visibility (base = mobile) */
.v2-hero-stats,.v2-sidebar{display:none}
.v2-detail-breadcrumb-wrap{max-width:960px;margin:0 auto;padding:12px 16px 0}
.v2-detail-breadcrumb{margin:0;color:#8B6E57;font-size:12px}
.v2-detail-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:5px;list-style:none;margin:0;padding:0}
.v2-detail-breadcrumb li{display:inline-flex;align-items:center;min-width:0}
.v2-detail-breadcrumb li+li::before{content:'\203A';margin-right:5px;color:#B89D86}
.v2-detail-breadcrumb a{color:inherit;text-decoration:none}
.v2-detail-breadcrumb [aria-current='page']{color:#6F5948;font-weight:700}

@media(min-width:900px){

  body{background:#FAF4EC;display:block;min-height:100%}

  .v2-wrap{
    max-width:none;width:100%;
    background:#FAF4EC;
    overflow-x:visible;
  }

  /* PCで隠す詳細モバイル専用コンテンツ（chrome の表示制御は chrome.css） */
  .v2-quick-stats{display:none}
  .v2-cta{display:none}

  /* ── hero (full-bleed band) ── */
  .v2-hero{margin:0;border-radius:0;padding:0}
  .v2-hero-emoji-bg{right:0;top:50%;bottom:auto;transform:translateY(-50%);opacity:0.7}
  .v2-hero-emoji-bg .twemoji-hero{width:240px;height:240px}
  .v2-hero-inner{
    max-width:960px;margin:0 auto;
    padding:22px 28px 34px;position:relative;
  }
  .v2-detail-breadcrumb-wrap{padding:16px 28px 0}
  .v2-detail-breadcrumb{font-size:13px;font-weight:700}
  .v2-detail-breadcrumb a:hover{text-decoration:underline}
  .v2-hero-pc-row{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}
  .v2-hero-left{flex:1 1 0;min-width:0}
  .v2-hero-name{font-size:48px}
  .v2-hero-kana{font-size:20px;margin-left:14px}
  .v2-hero-tags{max-width:560px;margin-top:18px}
  .v2-hero-tagline{max-width:560px}
  .v2-tagline-main{font-size:18px}
  .v2-tagline-sub{font-size:14px}
  /* PCではヒーローのクイック統計は非表示（base の display:none を維持） */

  /* ── content row (sidebar + main) ── */
  .v2-content-row{
    max-width:960px;margin:0 auto;
    padding:36px 28px 70px;
    display:flex;gap:32px;align-items:flex-start;
  }

  /* ── left sidebar (TOC + buttons) ── */
  .v2-sidebar{
    display:block;
    flex:0 0 208px;
    position:sticky;top:90px;
  }

  /* hide the inline (main-column) TOC on PC — duplicate of sidebar */
  .v2-mobile-toc{display:none}
  .v2-sidebar-card{
    background:#fff;border-radius:20px;padding:20px 18px;
    box-shadow:rgba(80,60,40,0.3) 0px 8px 22px -16px;
  }
  .v2-pc-toc-label{
    font-size:12px;font-weight:800;color:#8B8378;margin-bottom:13px;
    display:flex;align-items:center;gap:6px;
  }
  .v2-pc-toc-groups{display:flex;flex-direction:column;gap:13px}
  .v2-pc-toc-group-label{
    font-size:10px;font-weight:800;margin-bottom:5px;
  }
  .v2-pc-toc-link{
    display:block;text-decoration:none;color:#5A524A;
    font-size:12px;font-weight:700;padding:5px 8px;
    border-radius:8px;line-height:1.4;
  }
  .v2-pc-toc-link:hover{background:#FAF6EF}
  .v2-sidebar-divider{border-top:1px solid #F0E8DC;margin:16px 0 14px}
  .v2-sidebar-btn{
    display:flex;align-items:center;justify-content:center;gap:6px;
    text-decoration:none;border-radius:12px;padding:12px;
    font-family:'Zen Maru Gothic';font-weight:900;font-size:13px;
  }
  .v2-sidebar-btn-main{
    background:#E8674C;color:#fff;
    box-shadow:rgba(232,103,76,0.55) 0px 8px 16px -8px;
  }
  .v2-sidebar-btn-sub{
    border:1.5px solid #E5DBCC;color:#6E665C;
    font-weight:800;padding:11px;margin-top:8px;
  }

  /* ── main column ── */
  .v2-main{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:24px}

  /* sections as white cards */
  .v2-sec{
    background:#fff;border-radius:22px;
    padding:26px 28px !important;
    box-shadow:rgba(80,60,40,0.3) 0px 8px 22px -16px;
    margin:0;scroll-margin-top:84px;
  }
  .v2-sec-title{font-size:22px}
  .v2-bar-title{font-size:22px}
  .v2-sec-head,.v2-bar-head,.v2-guide-head{display:flex;align-items:center;gap:8px}
  .v2-sec-head{margin-bottom:18px}
  .v2-sec-title,.v2-bar-title,.v2-guide-title{flex:1 1 auto}
  .v2-sec-year{flex:none;margin-left:auto;text-align:right;font-size:12.5px;color:#8F847B;font-weight:800}

  /* PC: 見出しは full(SEO)、目次サイドバーは simple */
  .hd-full{display:inline}
  .hd-simple{display:none}

  /* numbers stay 2-col, bigger */
  .v2-num-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .v2-num-card{border-radius:16px;padding:16px 17px}
  .v2-num-value{font-size:26px}
  .v2-num-label{font-size:12px}

  /* charts stack (chart-row is plain block) */
  .pc-chart-row{display:flex;flex-direction:column;gap:24px}
  .pc-chart-row .v2-sec{margin:0}

  /* segment: chart on left, legend on right */
  #sec-segments .v2-chart-card{display:flex;gap:20px;align-items:center}
  #sec-segments .v2-chart-card > div:first-child{flex:0 0 auto;width:180px}
  #sec-segments .v2-seg-list{flex:1 1 0;margin-top:0}

  /* biz list stacked, tinted cards */
  .v2-biz-list{gap:14px}
  .v2-biz-list .v2-card{border-radius:16px;padding:18px}
  .v2-biz-p{font-size:13.5px}
  .v2-product-chip{background:#fff;font-size:12px}

  /* swot: one white card containing the two colored boxes */
  .pc-swot-row{display:flex;flex-direction:column;gap:14px}
  .v2-swot-box{border-radius:16px;padding:18px 20px}
  .v2-swot-box.good{margin-bottom:0 !important}
  .v2-swot-label{font-size:16px}
  .v2-swot-text{font-size:14px}

  /* recruit mini-stats */
  .v2-mini-stats{gap:12px}
  .v2-mini-card{padding:15px}
  .v2-mini-value{font-size:23px}

  /* culture stacked */
  .pc-culture-row{display:flex;flex-direction:column;gap:14px}
  .pc-culture-row .v2-card{border-radius:16px;padding:18px;margin-bottom:0 !important}

  /* jobs 2-col */
  .v2-jobs-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .v2-job-name{font-size:15px}
  .v2-job-desc{font-size:12px}

  /* events stacked */
  .v2-events-list{gap:12px}

  /* guide as gradient card */
  .v2-guide-wrap{border-radius:22px;margin:0;padding:28px 30px}
  .v2-guide-title{font-size:22px}
  .v2-fit-row{flex-direction:column;gap:16px}
  .v2-fit-text{font-size:13px}
  .pc-qa-grid{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}
  .v2-qa-card{margin-bottom:0}

  /* point card: larger & more readable on PC (color is set universally) */
  .v2-point-card-title{font-size:12px}
  .v2-point-card-body{font-size:14px}

  /* PC: 小さすぎる本文・ラベルを読みやすいサイズに底上げ */
  .v2-biz-p{font-size:14px}
  .v2-num-label{font-size:12.5px}
  .v2-seg-name,.v2-seg-pct{font-size:13.5px}
  .v2-seg-summary{font-size:12.5px}
  .v2-card-label,.v2-flow-label,.v2-fit-label{font-size:15px}
  /* PC: 選考フローが縦に詰まって見えるので余裕を持たせる */
  .v2-flow-box{padding:22px 0}
  .v2-flow-label{margin-bottom:16px}
  .v2-flow-step{gap:13px}
  .v2-flow-num{width:26px;height:26px;font-size:12.5px}
  .v2-flow-line{height:20px;margin-left:12px}
  .v2-flow-step-name{font-size:13.5px}
  .v2-job-desc{font-size:12.5px}
  .v2-product-chip{font-size:12.5px}
  .v2-mini-label{font-size:11px}
  .v2-guide-sub{font-size:13px}
  .v2-mot-text{font-size:14px}
  .v2-qa-q{font-size:14px}
  .v2-qa-a{font-size:13.5px}
  .v2-qa-advice{font-size:12.5px}
  .v2-rq-text{font-size:13.5px}
  .v2-ev-cell-val{font-size:12px}
  .v2-ev-cell-label{font-size:10px}
  .v2-fit-text{font-size:13.5px}

  /* ── つぎは、どの会社いく？ band ── */
  .v2-next{
    display:block;
    background:linear-gradient(160deg,#FCEFE6,#FBE3D6);
  }
  .v2-next-inner{max-width:960px;margin:0 auto;padding:38px 28px}
  .v2-next-head{display:flex;align-items:center;gap:9px;margin-bottom:4px}
  .v2-next-emoji{font-size:21px}
  .v2-next-title{font-family:'Zen Maru Gothic';font-weight:900;font-size:24px;margin:0}
  .v2-next-sub{font-size:13px;color:#9A6E58;margin:4px 0 22px}
  .v2-next-placeholder{
    background:rgba(255,255,255,0.6);border-radius:16px;
    padding:26px;text-align:center;
    font-size:13px;font-weight:700;color:#A07854;
  }
  /* レコメンド PC：グリッド化、ピルはカード内へ */
  .v2-rec-label{font-size:13px}
  .v2-rec-label--mt{margin-top:26px}
  .v2-rec-rivals{gap:14px}
  .v2-rec-pick-groups{gap:20px}
  .v2-rec-pick-cards{gap:14px;margin-top:6px}
  .v2-rec-pill{margin-bottom:6px}

}
