/* =================================================================
   RECRUIT — Agnos Inc. — Page-scoped Styles
   2026-05-17 Claude Design ハンドオフ準拠（recruit (1).html より移植）
   採用思想を、声を張らずに体現する。
   観察 = 敬意 ／ 自立 ／ 利他 ／ 対等
   宗教的にならず、テンプレにもならない、絶妙な硬さで。

   ★ 全 CSS を body.page-recruit にスコープして他ページに影響しない構成。
   ★ アクセント色は tokens.css の --teal (#63E1E5 公式ロゴ "o" 色) /
     --teal-deep (#3DA8AB) をそのまま継承。
================================================================= */

/* ----- 本文タイポを既存より少し濃く（rgba(0,0,0,.85) ライン） ----- */
body.page-recruit .rc-body-strong{color:rgba(0,0,0,.85)}

/* ----- HERO PAGE-HERO の局所調整（既存 .page-hero を上書き） ----- */
body.page-recruit .page-hero.rc-hero{
  padding: calc(var(--header-h) + 112px) var(--gutter) 112px;
  background:var(--bg-warm);
}
body.page-recruit .page-hero.rc-hero .page-hero-inner{
  grid-template-columns:1.3fr 1fr;gap:88px;
  /* 既存 .page-hero-inner の align-items:end（下端揃え）を上書き。
     右カラム(リード4段落)が高く左カラムが下に沈むのを防ぎ、上端を揃える */
  align-items:start;
}
/* 右カラム（リード文）を少し下げて視覚バランスを取る */
body.page-recruit .page-hero.rc-hero .page-hero-inner > div:last-child{
  margin-top:116px;
}
body.page-recruit .page-hero.rc-hero h1{
  letter-spacing:.1em;line-height:1.6;
  font-size:clamp(32px,4.2vw,52px);
}
body.page-recruit .page-hero.rc-hero h1 .accent{
  background:linear-gradient(transparent 68%, rgba(99,225,229,.36) 68%);
  padding:0 .04em;
}
body.page-recruit .page-hero.rc-hero .strap{
  margin-top:24px;font-family:var(--serif-en);font-style:italic;
  font-size:15px;letter-spacing:.05em;color:var(--mute);line-height:1.6;
}
body.page-recruit .page-hero.rc-hero .lede{
  color:rgba(0,0,0,.78);font-size:14.5px;line-height:1.9;
  letter-spacing:.05em;text-wrap:pretty;
}
body.page-recruit .page-hero.rc-hero .lede + .lede{margin-top:1.3em}

body.page-recruit .rc-hero-marker{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:64px;padding-top:24px;
  border-top:1px solid var(--line-soft);
  font-family:var(--serif-en);font-style:italic;font-size:11.5px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
}
body.page-recruit .rc-hero-marker .right{font-style:normal;letter-spacing:.18em}

/* =================================================================
   ① 採用の「いま」 — Status
   小さな一段。「Now hiring, slowly.」の宣言
================================================================= */
body.page-recruit .rc-status{
  padding:96px var(--gutter);background:var(--bg);
  text-align:center;
}
body.page-recruit .rc-status .inner{max-width:680px;margin:0 auto}
body.page-recruit .rc-status .pre{
  font-family:var(--serif-en);font-style:italic;
  font-size:12px;letter-spacing:.36em;color:var(--teal-deep);
  text-transform:uppercase;
  display:inline-flex;align-items:center;gap:14px;
}
body.page-recruit .rc-status .pre::before{
  content:"";display:inline-block;width:6px;height:6px;border-radius:50%;
  background:var(--teal);animation:rc-pulse 2.4s ease-in-out infinite;
}
@keyframes rc-pulse{
  0%,100%{opacity:.35;transform:scale(.8)}
  50%{opacity:1;transform:scale(1)}
}
body.page-recruit .rc-status h2{
  margin-top:24px;
  font-family:var(--serif-jp);font-weight:400;
  font-size:clamp(20px,2.6vw,28px);letter-spacing:.12em;
  line-height:2;color:var(--ink);text-wrap:balance;
}
body.page-recruit .rc-status .note{
  margin-top:24px;font-family:var(--serif-jp);font-size:13px;line-height:2.1;
  color:var(--ink-3);letter-spacing:.05em;
}

/* =================================================================
   ② OUR WAY — Agnosが大切にしていること（6項目）
================================================================= */
body.page-recruit .rc-way{padding:140px var(--gutter);background:var(--bg-warm)}
body.page-recruit .rc-way-grid{
  max-width:var(--max);margin:64px auto 0;
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.page-recruit .rc-way-item{
  padding:48px 36px 56px;
  border-right:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
  display:flex;flex-direction:column;gap:18px;
  background:transparent;
}
body.page-recruit .rc-way-item:nth-child(3n){border-right:0}
body.page-recruit .rc-way-item:nth-last-child(-n+3){border-bottom:0}
body.page-recruit .rc-way-item .roman{
  font-family:var(--serif-en);font-style:italic;font-size:13px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
}
body.page-recruit .rc-way-item .ja-key{
  font-family:var(--serif-jp);font-weight:500;
  font-size:22px;letter-spacing:.14em;line-height:1.5;
  color:var(--ink);text-wrap:balance;
  padding-bottom:14px;
  /* 1行タイトル（観察=敬意 / 利他を、根に）と 2行タイトル（役割は違う〜 等）が混在するため
     2行ぶんの高さを確保して、下の .en-sub border-bottom 線を水平方向で揃える */
  min-height:calc(2 * 1.5em + 14px);
}
body.page-recruit .rc-way-item .ja-key .equal{
  display:inline-block;
  font-family:var(--serif-en);font-style:italic;font-weight:300;
  font-size:.85em;color:var(--teal-deep);
  margin:0 .14em;letter-spacing:0;
}
body.page-recruit .rc-way-item .en-sub{
  font-family:var(--serif-en);font-style:italic;font-size:12.5px;
  letter-spacing:.04em;color:var(--mute);
  padding-bottom:18px;border-bottom:1px solid var(--line-soft);
  line-height:1.6;
}
body.page-recruit .rc-way-item p{
  font-family:var(--serif-jp);font-size:13.5px;line-height:2.15;
  color:rgba(0,0,0,.78);letter-spacing:.04em;
  text-wrap:pretty;
}

/* 思想 → 実務への橋渡し（短い帯） */
body.page-recruit .rc-bridge{
  max-width:var(--max);margin:80px auto 0;
  padding:36px 8px 0;
  border-top:1px solid var(--line);
  display:grid;grid-template-columns:auto 1fr;gap:48px;align-items:start;
}
body.page-recruit .rc-bridge .pre{
  font-family:var(--serif-en);font-style:italic;font-size:12px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
  padding-top:8px;white-space:nowrap;
}
body.page-recruit .rc-bridge p{
  font-family:var(--serif-jp);font-size:14.5px;line-height:2.3;
  color:rgba(0,0,0,.85);letter-spacing:.06em;
  text-wrap:pretty;
}
body.page-recruit .rc-bridge p strong{
  font-weight:500;background:linear-gradient(transparent 70%, rgba(99,225,229,.34) 70%);
  padding:0 .04em;
}

/* =================================================================
   ③ WHO — 一緒に働きたい人（対話形）
================================================================= */
body.page-recruit .rc-who{padding:140px var(--gutter);background:var(--bg)}
body.page-recruit .rc-who-wrap{
  max-width:var(--max);margin:0 auto;
  display:grid;grid-template-columns:1fr 1.45fr;gap:96px;
  align-items:flex-start;
}
body.page-recruit .rc-who-head .eyebrow{margin-bottom:18px}
body.page-recruit .rc-who-head h2{
  font-family:var(--serif-jp);font-weight:400;
  font-size:clamp(26px,3vw,38px);letter-spacing:.08em;
  line-height:1.55;color:var(--ink);text-wrap:balance;margin-top:14px;
}
body.page-recruit .rc-who-head .strap{
  margin-top:24px;font-family:var(--serif-en);font-style:italic;
  font-size:14px;letter-spacing:.04em;color:var(--mute);line-height:1.7;
}
body.page-recruit .rc-who-head .small{
  margin-top:48px;padding-top:24px;border-top:1px solid var(--line-soft);
  font-family:var(--serif-jp);font-size:12.5px;line-height:2;
  color:var(--ink-3);letter-spacing:.06em;
}
body.page-recruit .rc-who-list{display:flex;flex-direction:column}
body.page-recruit .rc-who-row{
  display:grid;grid-template-columns:64px 1fr;
  gap:32px;padding:32px 0;
  border-top:1px solid var(--line-soft);
  align-items:start;
}
body.page-recruit .rc-who-row:first-child{border-top:1px solid var(--ink)}
body.page-recruit .rc-who-row .n{
  font-family:var(--serif-en);font-style:italic;font-weight:300;
  font-size:24px;color:var(--ink-3);letter-spacing:.04em;
  padding-top:2px;
}
body.page-recruit .rc-who-row h4{
  font-family:var(--serif-jp);font-weight:500;font-size:17.5px;
  letter-spacing:.1em;line-height:1.7;color:var(--ink);
  margin-bottom:14px;text-wrap:balance;
}
body.page-recruit .rc-who-row p{
  font-family:var(--serif-jp);font-size:13.5px;line-height:2.15;
  color:rgba(0,0,0,.78);letter-spacing:.04em;text-wrap:pretty;
}

/* 採らない人（小さく、しかし正直に） */
body.page-recruit .rc-notfor{
  margin-top:48px;padding:32px 36px;
  background:var(--bg-warm);border:1px solid var(--line-soft);
}
body.page-recruit .rc-notfor .label{
  font-family:var(--serif-en);font-style:italic;font-size:11px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
  margin-bottom:14px;display:block;
}
body.page-recruit .rc-notfor h5{
  font-family:var(--serif-jp);font-weight:500;font-size:14px;
  letter-spacing:.1em;line-height:1.7;color:var(--ink);
  margin-bottom:14px;
}
body.page-recruit .rc-notfor p{
  font-family:var(--serif-jp);font-size:12.5px;line-height:2.1;
  color:var(--ink-3);letter-spacing:.04em;
  margin-bottom:1em;
}
body.page-recruit .rc-notfor p:last-of-type{margin-bottom:0}

/* 引用：価値観が合う人と、深く長く働きたい。（少し大きめに）
   .rc-notfor p（タグセレクタ含 0,2,2）に勝つため p.rc-notfor-quote で特異性 0,3,2 */
body.page-recruit .rc-notfor p.rc-notfor-quote{
  margin:18px 0 24px;
  font-family:var(--serif-jp);
  font-size:17px;
  letter-spacing:.08em;
  line-height:1.9;
  color:rgba(0,0,0,.85);
  font-weight:500;
}

/* 合わないかもしれない方の箇条書き */
body.page-recruit .rc-notfor-list{
  list-style:none;
  padding:0;
  margin:12px 0 12px 1.5em;
}
body.page-recruit .rc-notfor-list li{
  font-family:var(--serif-jp);
  font-size:14px;
  letter-spacing:.05em;
  line-height:2.0;
  color:rgba(0,0,0,.78);
  position:relative;
  padding-left:1.2em;
}
body.page-recruit .rc-notfor-list li::before{
  content:"・";
  position:absolute;
  left:0;
  color:rgba(0,0,0,.5);
}

/* =================================================================
   ④ ROLES — 募集している領域（5職種・完全フラット）
   人として対等、を視覚的に表現するため、横並びの行レイアウト
================================================================= */
/* 2026-06-21 rc-who(白) 封印に伴い、Way(warm)→Roles が warm 連続にならないよう反転。
   ※ rc-who の封印を解除する際は Roles=--bg-warm / Stance=--bg に戻すこと */
body.page-recruit .rc-roles{padding:140px var(--gutter);background:var(--bg)}
body.page-recruit .rc-roles .legend{
  max-width:var(--max);margin:0 auto 56px;
  font-family:var(--serif-jp);font-size:13.5px;line-height:2.1;
  color:rgba(0,0,0,.78);letter-spacing:.06em;
  text-align:center;max-width:36em;
}
body.page-recruit .rc-roles .legend em{
  font-style:normal;
  background:linear-gradient(transparent 70%, rgba(99,225,229,.34) 70%);
  padding:0 .04em;
}
body.page-recruit .rc-roles-list{
  max-width:var(--max);margin:0 auto;
  border-top:1px solid var(--ink);
}
body.page-recruit .rc-role{
  display:grid;
  grid-template-columns:80px 1.4fr 2fr auto;
  gap:48px;padding:36px 8px;
  border-bottom:1px solid var(--line-soft);
  align-items:start;
  transition:background .35s, transform .35s;
}
body.page-recruit .rc-role:hover{
  background:rgba(0,0,0,.015);
  transform:translateX(4px);
}
body.page-recruit .rc-role:hover .num,
body.page-recruit .rc-role:hover .title h3{color:var(--teal-deep)}
body.page-recruit .rc-role .num{
  font-family:var(--serif-en);font-style:italic;font-weight:300;
  font-size:30px;color:var(--ink-3);letter-spacing:.04em;line-height:1;
  padding-top:6px;
  transition:color .35s;
}
body.page-recruit .rc-role .title h3{
  font-family:var(--serif-jp);font-weight:500;font-size:20px;
  letter-spacing:.12em;line-height:1.6;color:var(--ink);
  text-wrap:balance;
  transition:color .35s;
}
body.page-recruit .rc-role .title .en{
  display:block;font-family:var(--serif-en);font-style:italic;
  font-size:12px;letter-spacing:.3em;color:var(--mute);
  text-transform:uppercase;margin-bottom:8px;font-weight:400;
}
body.page-recruit .rc-role .desc{
  font-family:var(--serif-jp);font-size:13.5px;line-height:2.15;
  color:rgba(0,0,0,.78);letter-spacing:.05em;
  text-wrap:pretty;padding-top:6px;
}
body.page-recruit .rc-role .status{
  display:flex;flex-direction:column;align-items:flex-end;gap:8px;
  padding-top:8px;
  font-family:var(--serif-en);font-style:italic;font-size:11px;
  letter-spacing:.24em;color:var(--mute);text-transform:uppercase;
  white-space:nowrap;
}
body.page-recruit .rc-role .status .dot{
  display:inline-flex;align-items:center;gap:10px;
  font-style:normal;color:var(--ink);
}
body.page-recruit .rc-role .status .dot::before{
  content:"";display:inline-block;width:6px;height:6px;border-radius:50%;
  background:var(--teal);
}
body.page-recruit .rc-role .status .form{
  font-family:var(--serif-jp);font-style:normal;font-size:10.5px;
  letter-spacing:.18em;color:var(--ink-3);
  border:0.5px solid var(--line);padding:3px 10px;text-transform:none;
}

/* "全て対等"の宣言フッタ */
body.page-recruit .rc-roles-foot{
  max-width:var(--max);margin:48px auto 0;
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;
}
body.page-recruit .rc-roles-foot .equal-note{
  padding-top:24px;border-top:1px solid var(--line);
}
body.page-recruit .rc-roles-foot .equal-note .label{
  font-family:var(--serif-en);font-style:italic;font-size:11px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
  margin-bottom:14px;display:block;
}
body.page-recruit .rc-roles-foot .equal-note p{
  font-family:var(--serif-jp);font-size:13px;line-height:2.1;
  color:rgba(0,0,0,.78);letter-spacing:.06em;text-wrap:pretty;
  margin:0 0 1.2em;
}
body.page-recruit .rc-roles-foot .equal-note p:last-child{margin-bottom:0}
body.page-recruit .rc-roles-foot .equal-note p strong{
  font-weight:500;color:var(--ink);
}
/* On Equality v2: Hero「人として、対等に。」と呼応する 3 段落構成 */
body.page-recruit .rc-on-equality p:last-child{
  font-weight:500;color:var(--ink);
}

/* ---- Compensation v2（2026-05-19 lane カード構造に変更）----
   左の .equal-note と並列バランス。border-top で揃え、内部は経験レーン別カード。 */
body.page-recruit .rc-compensation{
  padding-top:24px;border-top:1px solid var(--line);
}
body.page-recruit .rc-compensation .label{
  font-family:var(--serif-en);font-style:italic;font-size:11.5px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
  display:block;margin-bottom:16px;
}
body.page-recruit .rc-compensation h4{
  font-family:var(--serif-jp);font-weight:400;font-size:16px;
  letter-spacing:.1em;line-height:1.7;color:var(--ink);
  margin:0 0 20px;
}
body.page-recruit .rc-compensation .rc-comp-intro{
  font-family:var(--serif-jp);font-size:13px;line-height:1.95;
  letter-spacing:.05em;color:var(--ink-3);margin-bottom:20px;
}
body.page-recruit .rc-compensation .rc-comp-lane{
  padding:16px 0;border-top:1px solid var(--line-soft);
}
body.page-recruit .rc-compensation .rc-comp-lane:last-of-type{
  border-bottom:1px solid var(--line-soft);margin-bottom:20px;
}
body.page-recruit .rc-compensation .rc-comp-lane h5{
  font-family:var(--serif-jp);font-weight:400;font-size:12.5px;
  letter-spacing:.12em;color:var(--ink-3);margin:0 0 8px;
}
body.page-recruit .rc-compensation .rc-comp-amount{
  font-family:var(--serif-jp);font-size:14.5px;letter-spacing:.06em;
  color:var(--ink);font-weight:500;margin:0 0 4px;
}
body.page-recruit .rc-compensation .rc-comp-note{
  font-family:var(--serif-en);font-style:italic;font-size:11.5px;
  letter-spacing:.1em;color:var(--mute);margin:0;
}
body.page-recruit .rc-compensation .rc-comp-detail,
body.page-recruit .rc-compensation .rc-comp-cta,
body.page-recruit .rc-compensation .rc-comp-future{
  font-family:var(--serif-jp);font-size:13px;line-height:1.95;
  letter-spacing:.05em;color:var(--ink-3);margin-bottom:14px;
}
body.page-recruit .rc-compensation .rc-comp-future{
  margin-bottom:0;padding-top:12px;
  border-top:1px solid var(--line-soft);
  font-size:12px;color:var(--mute);font-style:italic;
}
@media (max-width:768px){
  body.page-recruit .rc-compensation h4{font-size:15px}
  body.page-recruit .rc-compensation .rc-comp-amount{font-size:13.5px}
  body.page-recruit .rc-compensation .rc-comp-intro,
  body.page-recruit .rc-compensation .rc-comp-detail,
  body.page-recruit .rc-compensation .rc-comp-cta{
    font-size:12.5px;line-height:1.85;
  }
}

/* =================================================================
   ⑤ STANCE — 採用のスタンス
================================================================= */
body.page-recruit .rc-stance{padding:140px var(--gutter);background:var(--bg-warm)}
body.page-recruit .rc-stance-wrap{
  max-width:var(--max);margin:0 auto;
  display:grid;grid-template-columns:1fr 1.2fr;gap:96px;align-items:start;
}
body.page-recruit .rc-stance-head .eyebrow{margin-bottom:18px}
body.page-recruit .rc-stance-head h2{
  font-family:var(--serif-jp);font-weight:400;
  font-size:clamp(26px,3vw,38px);letter-spacing:.08em;line-height:1.55;
  color:var(--ink);margin-top:14px;text-wrap:balance;
}
body.page-recruit .rc-stance-head .strap{
  margin-top:24px;font-family:var(--serif-en);font-style:italic;
  font-size:14px;letter-spacing:.04em;color:var(--mute);line-height:1.7;
}
body.page-recruit .rc-stance-body p{
  font-family:var(--serif-jp);font-size:14.5px;line-height:2.4;
  color:rgba(0,0,0,.85);letter-spacing:.06em;text-wrap:pretty;
}
body.page-recruit .rc-stance-body p + p{margin-top:1.4em}
body.page-recruit .rc-stance-body p strong{
  font-weight:500;
  background:linear-gradient(transparent 70%, rgba(99,225,229,.34) 70%);
  padding:0 .04em;
}
body.page-recruit .rc-stance-pull{
  margin-top:48px;padding:28px 0 0;
  border-top:1px solid var(--ink);
  font-family:var(--serif-jp);font-weight:500;font-size:16px;
  letter-spacing:.12em;line-height:2;color:var(--ink);text-wrap:balance;
}

/* 試用期間ブロック（プルクオートと簡略要項の間に挟む独立ブロック）*/
body.page-recruit .rc-stance-trial{
  margin:64px 0 56px;
  padding:48px 0;
  border-top:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
}
body.page-recruit .rc-stance-trial .label{
  display:block;
  font-family:var(--serif-en);
  font-style:italic;
  font-size:11.5px;
  letter-spacing:.32em;
  color:var(--mute);
  text-transform:uppercase;
  margin-bottom:18px;
}
body.page-recruit .rc-stance-trial h4{
  font-family:var(--serif-jp);
  font-weight:400;
  font-size:clamp(20px,2.4vw,24px);
  letter-spacing:.1em;
  line-height:1.7;
  color:var(--ink);
  margin:0 0 28px;
}
/* .rc-stance-body p の指定（特異性 0,2,2）に勝つため、p.rc-stance-trial 等は使えないので
   セレクタを .rc-stance-body .rc-stance-trial p にして特異性 0,3,2 にする */
body.page-recruit .rc-stance-body .rc-stance-trial p{
  font-family:var(--serif-jp);
  font-size:14.5px;
  line-height:2.1;
  letter-spacing:.05em;
  color:rgba(0,0,0,.85);
  margin-bottom:1.2em;
}
body.page-recruit .rc-stance-body .rc-stance-trial p:last-child{
  margin-bottom:0;
}

/* 募集要項テーブル（簡略） */
body.page-recruit .rc-stance-table{
  margin-top:64px;border-top:1px solid var(--line);
}
body.page-recruit .rc-stance-table dl{
  display:grid;grid-template-columns:200px 1fr;
  gap:24px;padding:18px 8px;
  border-bottom:1px solid var(--line-soft);
  align-items:baseline;
}
body.page-recruit .rc-stance-table dt{
  font-family:var(--serif-en);font-style:italic;font-size:11.5px;
  letter-spacing:.28em;color:var(--mute);text-transform:uppercase;
}
body.page-recruit .rc-stance-table dt .ja{
  display:block;font-family:var(--serif-jp);font-style:normal;
  font-size:11px;letter-spacing:.22em;color:var(--ink-3);
  margin-top:3px;text-transform:none;
}
body.page-recruit .rc-stance-table dd{
  font-family:var(--serif-jp);font-size:13.5px;line-height:2;
  color:rgba(0,0,0,.85);letter-spacing:.05em;
}
body.page-recruit .rc-stance-table dd .tba{
  display:inline-block;font-family:var(--serif-en);font-style:italic;
  font-size:11px;letter-spacing:.2em;color:var(--mute);
  text-transform:uppercase;padding:3px 10px;border:0.5px solid var(--line);
  margin-right:10px;vertical-align:middle;
}

/* =================================================================
   ⑥ CASUAL TALK — お声がけ
================================================================= */
body.page-recruit .rc-casual{
  padding:140px var(--gutter);
  background:var(--bg-sub);text-align:center;
  position:relative;overflow:hidden;
}
body.page-recruit .rc-casual::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 70% 60% at 0% 0%, rgba(255,255,255,.6), transparent 70%),
    radial-gradient(ellipse 70% 60% at 100% 100%, rgba(0,0,0,.03), transparent 70%);
  pointer-events:none;
}
body.page-recruit .rc-casual .inner{position:relative;max-width:1080px;margin:0 auto}
body.page-recruit .rc-casual .eyebrow{margin-bottom:36px}
body.page-recruit .rc-casual h2{
  font-family:var(--serif-jp);font-weight:400;
  font-size:clamp(26px,3.4vw,42px);letter-spacing:.1em;line-height:1.8;
  color:var(--ink);margin-bottom:32px;text-wrap:balance;
}
body.page-recruit .rc-casual .lede{
  max-width:38em;margin:0 auto;
  font-family:var(--serif-jp);font-size:14.5px;line-height:2.3;
  color:rgba(0,0,0,.78);letter-spacing:.06em;text-wrap:pretty;
}
body.page-recruit .rc-casual .lede + .lede{margin-top:1.2em}
body.page-recruit .rc-casual-channels{
  margin-top:80px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
  text-align:left;
}
body.page-recruit .rc-casual-channel{
  display:flex;flex-direction:column;gap:18px;
  padding:48px 36px 44px;
  border:1px solid var(--line-soft);background:#fff;
  text-decoration:none;color:inherit;
  transition:border-color .35s, transform .35s, box-shadow .35s;
}
body.page-recruit .rc-casual-channel:hover{
  border-color:var(--ink);transform:translateY(-3px);
  box-shadow:0 18px 40px -28px rgba(0,0,0,.2);
}
/* hover でタイトルが公式ロゴ "o" 色に変化（お声がけページ .cc:hover .title と同じ挙動）
   2026-05-17 派生 --teal-deep → 公式 --teal (#63E1E5) に変更してロゴ系統と統一 */
body.page-recruit .rc-casual-channel .title{transition:color .35s}
body.page-recruit .rc-casual-channel:hover .title{color:var(--teal)}
body.page-recruit .rc-casual-channel .label{
  font-family:var(--serif-en);font-style:italic;font-size:11px;
  letter-spacing:.32em;color:var(--mute);text-transform:uppercase;
}
body.page-recruit .rc-casual-channel .title{
  font-family:var(--serif-jp);font-weight:500;font-size:18px;
  letter-spacing:.1em;color:var(--ink);line-height:1.6;
}
body.page-recruit .rc-casual-channel .desc{
  font-family:var(--serif-jp);font-size:12.5px;line-height:2;
  color:var(--ink-3);letter-spacing:.04em;flex:1;
}
body.page-recruit .rc-casual-channel .row{
  display:flex;align-items:center;gap:12px;
  padding-top:18px;border-top:1px solid var(--line-soft);
  font-family:var(--serif-en);font-size:11px;letter-spacing:.3em;
  color:var(--ink);text-transform:uppercase;
}
body.page-recruit .rc-casual-channel .row .arrow{
  flex:1;height:1px;background:currentColor;display:block;max-width:100px;
}
body.page-recruit .rc-casual-quiet{
  margin-top:56px;font-family:var(--serif-jp);font-size:12.5px;line-height:2;
  color:var(--mute);letter-spacing:.06em;
  max-width:36em;margin-left:auto;margin-right:auto;
}


/* =================================================================
   MOBILE
================================================================= */
@media (max-width:880px){
  body.page-recruit .page-hero.rc-hero{padding: calc(var(--header-h) + 48px) 22px 64px}
  body.page-recruit .page-hero.rc-hero .page-hero-inner{grid-template-columns:1fr;gap:32px}
  body.page-recruit .rc-hero-marker{flex-direction:column;align-items:flex-start;gap:6px;margin-top:36px}

  body.page-recruit .rc-status{padding:64px 22px}
  body.page-recruit .rc-status h2{font-size:17px;line-height:2}

  body.page-recruit .rc-way{padding:80px 22px}
  body.page-recruit .rc-way-grid{grid-template-columns:1fr;margin-top:40px}
  body.page-recruit .rc-way-item{padding:36px 8px 40px;border-right:0}
  body.page-recruit .rc-way-item:nth-child(3n){border-right:0}
  body.page-recruit .rc-way-item:not(:last-child){border-bottom:1px solid var(--line-soft) !important}
  body.page-recruit .rc-way-item:last-child{border-bottom:0}
  body.page-recruit .rc-bridge{grid-template-columns:1fr;gap:18px;margin-top:48px}

  body.page-recruit .rc-who{padding:80px 22px}
  body.page-recruit .rc-who-wrap{grid-template-columns:1fr;gap:48px}
  body.page-recruit .rc-who-row{grid-template-columns:48px 1fr;gap:18px;padding:24px 0}
  body.page-recruit .rc-notfor{padding:28px 22px}

  body.page-recruit .rc-roles{padding:80px 22px}
  body.page-recruit .rc-roles .legend{margin-bottom:36px}
  body.page-recruit .rc-role{grid-template-columns:1fr;gap:16px;padding:24px 0}
  body.page-recruit .rc-role .status{flex-direction:row;align-items:center;align-self:flex-start}
  body.page-recruit .rc-roles-foot{grid-template-columns:1fr;gap:24px}

  body.page-recruit .rc-stance{padding:80px 22px}
  body.page-recruit .rc-stance-wrap{grid-template-columns:1fr;gap:40px}
  body.page-recruit .rc-stance-table dl{grid-template-columns:1fr;gap:6px;padding:14px 0}
  body.page-recruit .rc-stance-trial{margin:48px 0 40px;padding:36px 0}
  body.page-recruit .rc-stance-trial h4{font-size:18px;margin-bottom:22px}
  body.page-recruit .rc-stance-body .rc-stance-trial p{font-size:13.5px;line-height:2.0}

  body.page-recruit .rc-casual{padding:80px 22px}
  body.page-recruit .rc-casual-channels{grid-template-columns:1fr;gap:14px;margin-top:48px}
  body.page-recruit .rc-casual-channel{padding:32px 26px 30px}

}
