@charset "UTF-8";
/* ==========================================================================
   p-recruit  採用情報（下層③）
   出典: Figma PC 1047:544（1440×7067）/ SP 1078:320（390×9093）
   数値・色は `_figma_json/recruit/spec_pc.md` / `spec_sp.md`（2026-08-21取得）から反映。目視推測ゼロ。

   設計座標（PC）: FV 180 / 職業理念 671 / 職種紹介 1743 / スタッフの声 3575 / 募集要項 4817 / 応募方法 5741
   ========================================================================== */
/* S-59①: FVサブコピー＝本ページはPC 1047:801 / SP 1078:328 とも #333333（共通既定のメイン青は他ページ実測値・会員S-57と同型） */
.c-page-title__subtitle {
  color: #333333;
}

/* S-64: このページのcontact帯はFigmaに泡が無い（採用フレームはflow下端6289→footer6468の間に
   ELLIPSE不在を全走査で実測）＝btob S-50・会員S-58と同型の帯単位の出し分け */
.c-contact-band__bubble {
  display: none;
}

/* S-62: back_decoration泡（PC実測座標で配置・SPはSP周回で別途＝btob S-48と同方式） */
.p-recruit__deco {
  display: none;
}

/* 共通インナー（実測 1047:771: 白面1200幅 / 1047:705: 帯1200幅） */
.p-recruit__inner {
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: 16px;
}

/* 見出し（泡＋テキスト・中央。実測 1047:775: 32px/700/lh46.3 #333333） */
.p-recruit__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0;
  color: #333333;
  font-size: clamp(24px, 21.0285714286px + 0.7619047619vw, 32px);
  font-weight: 700;
  line-height: 1.45;
}

.p-recruit__heading-bubble {
  flex-shrink: 0;
  width: 29px;
  height: 29px;
}

/* ==========================================================================
   職業理念（実測 1047:771: 白面1200×994）
   ========================================================================== */
.p-recruit__philosophy {
  padding-block: 60px;
}

/* 🔴 #69 職業理念は Figma で**枠付き（影）カード**の中に入る。
   実測 1047:771 Rectangle 293: 1200×994・塗り#FFFFFF・DROP_SHADOW blur5・角丸なし。 */
.p-recruit__philosophy-lead {
  display: grid;
  gap: 32px;
  margin-top: 40px;
  padding: 24px;
  background-color: #ffffff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
}

/* キャッチ（実測 1047:777: Zen Old Mincho 700 32px / lh54.4 / #005CA7・改行1箇所を保持） */
.p-recruit__catch {
  margin: 0;
  color: #005ca7;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(22px, 18.2857142857px + 0.9523809524vw, 32px);
  font-weight: 700;
  line-height: 1.7;
  /* 実測 1047:777 は幅418で2行＝<br>の位置だけで折る。
     カラム幅が足りず途中で折れると「思いやり」「共に学び、」が割れて別物になるため、
     禁則ではなく**文節単位で折らない**指定にする */
  word-break: keep-all;
  overflow-wrap: normal;
}

/* リード文（実測 1047:776: 18px/500/lh28.8 #333333 相当） */
.p-recruit__lead {
  margin: 0;
  color: #333333;
  font-size: clamp(15px, 13.8857142857px + 0.2857142857vw, 18px);
  font-weight: 500;
  line-height: 1.6;
}

/* 3つの姿勢（実測 1047:794 x193 ラベル / 1047:795 x410 本文＝2カラム） */
.p-recruit__values {
  margin: 40px 0 0;
}

.p-recruit__value-row {
  display: grid;
  gap: 8px;
  padding-block: 24px;
  border-top: 1px solid #e1f5ff;
}

/* 姿勢の見出し（実測 1047:794: Zen Old Mincho 700 24px / #005CA7） */
.p-recruit__value-title {
  color: #005ca7;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(18px, 15.7714285714px + 0.5714285714vw, 24px);
  font-weight: 700;
  line-height: 1.4;
}

/* 姿勢の本文（実測 1047:795: 18px/500/lh28.8 #333333） */
.p-recruit__value-body {
  margin: 0;
  color: #333333;
  font-size: clamp(15px, 13.8857142857px + 0.2857142857vw, 18px);
  font-weight: 500;
  line-height: 1.6;
}

/* ==========================================================================
   職種紹介（実測 1047:769。02のみ背景 #F3FBFF＝1047:745）
   ========================================================================== */
.p-recruit__jobs {
  padding-block: 60px;
}

.p-recruit__job {
  padding-block: 40px;
}

/* 02 の背景帯（実測 1047:745: #F3FBFF 1050×468） */
.p-recruit__job--tinted {
  background-color: #f3fbff;
}

.p-recruit__job-inner {
  display: grid;
  gap: 24px;
}

.p-recruit__job-head {
  display: flex;
  align-items: baseline;
  gap: 20px;
  margin: 0 0 16px;
}

/* 番号（実測 1047:756: Buenard 500 70.68px / lh92 / #5FCAFD） */
.p-recruit__job-no {
  color: #5fcafd;
  font-family: "Buenard", serif;
  font-size: clamp(40px, 28.6045714286px + 2.9219047619vw, 70.68px);
  font-weight: 500;
  line-height: 1.3;
}

/* 職種名（実測 1047:757: Zen Old Mincho 700 32px / lh46.3 / #005CA7） */
.p-recruit__job-title {
  color: #005ca7;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(22px, 18.2857142857px + 0.9523809524vw, 32px);
  font-weight: 700;
  line-height: 1.45;
}

/* 職種の本文（実測 1047:758: 18px/500/lh30.6・改行6箇所を保持） */
.p-recruit__job-body {
  margin: 0;
  color: #333333;
  font-size: clamp(15px, 13.8857142857px + 0.2857142857vw, 18px);
  font-weight: 500;
  line-height: 1.7;
}

/* 写真（実測 1047:759 ほか: 560×319・角丸はPNGに焼き込み済み） */
.p-recruit__job-photo {
  display: block;
  width: 100%;
  max-width: 560px;
  height: auto;
  aspect-ratio: 560/319;
  object-fit: cover;
}

/* ==========================================================================
   働くスタッフの声（実測 1047:705: #F3FBFF radius24 / 1047:706: 白カード radius16）
   ========================================================================== */
.p-recruit__voices {
  padding-block: 60px;
}

.p-recruit__voices .p-recruit__inner {
  padding-block: 40px;
  border-radius: 24px; /* 実測 1047:705: 24px */
  background-color: #f3fbff;
}

.p-recruit__voice-card {
  display: grid;
  gap: 32px;
  margin-top: 40px;
  padding: 32px 20px;
  border-radius: 16px; /* 実測 1047:706: 16px */
  background-color: #ffffff;
}

/* 🔴 #71 項目の間に罫線（実測 1047:719/728/737 Line 68: #E1F5FF 2px・幅714） */
.p-recruit__voice {
  display: grid;
  gap: 16px;
  justify-items: center;
  padding-bottom: 25px; /* 実測: item下端 → 罫線 y差 */
}
.p-recruit__voice + .p-recruit__voice {
  padding-top: 25px;
}
.p-recruit__voice:not(:last-child) {
  border-bottom: 2px solid #e1f5ff; /* 実測 1047:719: #E1F5FF 2px */
}

/* 🔴 #71 アバター＋弧文字のまとまり。
   viewBox231 はアバター154と同心で、半径96の弧に文字を乗せる（実測 1047:714）。
   アバターに対する比率で置くので、幅が変わっても円と文字の関係が崩れない。 */
.p-recruit__voice-visual {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: 154px; /* 実測 1047:713: 154×154 */
  line-height: 0;
}

.p-recruit__voice-arc {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 150%; /* 231/154 */
  height: 150%;
  overflow: visible;
  transform: translate(-50%, -50%);
  fill: #5fcafd; /* 実測 1047:714: #5FCAFD */
  font-family: "Buenard", serif;
  font-size: 16px; /* 実測 1047:714 */
  font-weight: 500;
  letter-spacing: 0.02em;
}
.p-recruit__voice-arc text {
  text-anchor: middle;
}

/* アバター（実測 1047:713 ほか: 154×154 の円） */
.p-recruit__voice-avatar {
  display: block;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover;
}

/* 役割ラベル（実測 1047:717: 20px/500/lh28 / #5FCAFD・枠つき） */
.p-recruit__voice-role {
  display: inline-block;
  margin: 0 0 12px;
  padding: 2px 16px;
  border: 1px solid #5fcafd;
  border-radius: 65px;
  color: #5fcafd;
  font-size: clamp(16px, 14.5142857143px + 0.380952381vw, 20px);
  font-weight: 500;
  line-height: 1.4;
}

/* 声の本文（実測 1047:718: 20px/500/lh34 #333333） */
.p-recruit__voice-body {
  margin: 0;
  color: #333333;
  font-size: clamp(15px, 13.1428571429px + 0.4761904762vw, 20px);
  font-weight: 500;
  line-height: 1.7;
}

/* ==========================================================================
   募集要項（実測 1047:657: 白カード 968×638 radius16）
   ========================================================================== */
.p-recruit__requirements {
  padding-block: 60px;
}

/* 🔴 #72 カードの影が落ちていた（実測 1047:657: 角丸16 ＋ DROP_SHADOW blur20） */
.p-recruit__req-list {
  max-width: 968px;
  margin: 40px auto 0;
  padding: 8px 20px;
  border-radius: 16px; /* 実測 1047:657: 16px */
  background-color: #ffffff;
  box-shadow: 0 0 20px rgba(61, 94, 72, 0.1); /* 実測 1047:657 */
}

/* 行の区切り＝会社案内と同じ二色線（青#5FCAFD 196 ＋ 灰#CFCFCF）。最終行にも入る */
.p-recruit__req-row {
  display: grid;
  gap: 6px;
  padding-block: 20px;
  background-image: linear-gradient(to right, #5fcafd 0 196px, transparent 196px), linear-gradient(to right, #cfcfcf 0 100%);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 2px;
}

/* 項目名（実測 1047:660: 20px/700/lh29/ls0.40 #333333） */
.p-recruit__req-label {
  color: #333333;
  font-size: clamp(16px, 14.5142857143px + 0.380952381vw, 20px);
  font-weight: 700;
  letter-spacing: 0.4px;
  line-height: 1.45;
}

/* 内容（実測 1047:661: 16px/500/lh23.2 #000000＝本文#333とは別値） */
.p-recruit__req-value {
  margin: 0;
  color: #000000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
}

/* ==========================================================================
   応募方法（実測 1047:618。丸バッジ＋本文の3ステップ → 電話ボタン）
   ========================================================================== */
.p-recruit__apply {
  padding-block: 60px 80px;
}

.p-recruit__steps {
  display: grid;
  gap: 32px;
  margin: 40px 0 0;
  padding: 0;
  list-style: none;
}

.p-recruit__step {
  display: grid;
  /* S-65①: 行はコンテンツ高で上詰め（既定のstretchだと電話を持つSTEP①だけ4行で、
     3行の②③が引き伸ばされて文章が下へずれる） */
  align-content: start;
  gap: 12px;
  justify-items: center;
  text-align: center;
}

/* ステップ番号（実測 1047:623: DM Sans 700 18px / #005CA7 の丸バッジ） */
.p-recruit__step-no {
  display: grid;
  width: 36px;
  height: 36px;
  border: 1px solid #5fcafd;
  border-radius: 50%;
  background-color: #ffffff;
  color: #005ca7;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  place-items: center;
}

/* 🔴 #73 ステップのアイコン（実測 1047:632/640/649: 枠122×122）。
   中身の実寸は 122×95(電話) / 76×101(クリップボード) / 86×87(グラフ)＝枠の中で中央に置く */
.p-recruit__step-icon {
  display: grid;
  width: 122px;
  height: 122px;
  place-items: center;
}
.p-recruit__step-icon img {
  max-width: 100%;
  max-height: 100%;
}

.p-recruit__step-body {
  margin: 0;
  color: #333333;
  font-size: clamp(14px, 12.5142857143px + 0.380952381vw, 18px); /* Figma実測PC=18（8/24スイープで検出・旧16は誤り） */
  font-weight: 500;
  line-height: 1.7;
}

/* S-63: STEP①直下の電話（実測 1112:30: 本文下端→8px・枠なし＝アイコン+文字のみ。
   旧: ステップ列の下に独立配置＋ピル枠＋CSS自作アイコン＝デザインに無い装飾だった） */
.p-recruit__tel-wrap {
  /* ステップliのgrid gap12が先に入るため、実測8にするには-4（本文下端6245→電話6253） */
  margin: -4px 0 0;
  text-align: center;
}

/* 電話リンク（実測 1112:29 Rectangle305: 280×36・stroke#005CA7 1px・r46／1112:31: fs24/700/ls0.96 #005CA7。
   旧枠は #5FCAFD・padding式＝別物だった。
   ⚠️ 番号はデザインの11桁を採らず代表番号 053-422-8787 で実装（実在しない桁数＝誤字の巻き取り・疑義#25） */
.p-recruit__tel {
  display: inline-flex;
  gap: 10px; /* 実測: アイコン右端308 → 文字318 */
  align-items: center;
  justify-content: center;
  width: 280px;
  max-width: 100%;
  height: 36px;
  border: 1px solid #005ca7;
  border-radius: 46px;
  color: #005ca7;
  font-size: clamp(20px, 18.5142857143px + 0.380952381vw, 24px);
  font-weight: 700;
  letter-spacing: 0.96px;
  line-height: 1;
}

/* 電話アイコン（S-63: Figma 1112:32 のSVG書き出し・旧CSS自作形状を置換） */
.p-recruit__tel-icon {
  flex-shrink: 0;
  width: 24px;
  height: 22px;
}

/* ==========================================================================
   タブレット以上（769px〜）
   ========================================================================== */
@media (min-width: 769px) {
  .p-recruit__inner {
    padding-inline: 32px;
  }
  .p-recruit__philosophy,
  .p-recruit__jobs,
  .p-recruit__voices,
  .p-recruit__requirements {
    padding-block: 80px;
  }
  /* S-60②: 白カード（実測 1047:771: 1200×994）は**見出し・リード・3つの姿勢の全体**を囲む
     （旧: リードだけがカードだった）。padding=上82(589→671)/横59(→タイトルx179)/下93(最終線1490→1583) */
  .p-recruit__philosophy .p-recruit__inner {
    padding: 82px 59px 93px;
    background-color: #ffffff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.25); /* 実測 1047:771: DROP_SHADOW blur5 */
  }
  /* S-60②: 見出しはカード内左寄せ（実測 1047:773: x179＝カード左端+59） */
  .p-recruit__philosophy .p-recruit__heading {
    justify-content: flex-start;
  }
  /* リードは「キャッチ｜説明」の2カラム（実測 1047:777 x179 / 1047:776 x648）
     S-60②: カード役はinnerへ移したため装飾なし。タイトル下端717→786＝gap69 */
  .p-recruit__philosophy-lead {
    grid-template-columns: minmax(418px, auto) 1fr; /* 実測 1047:777: 幅418（ブラウザ字幅は+αで折れるためautoで逃がす） */
    gap: 50px; /* 実測: キャッチ右端597 → リード648 */
    align-items: start;
    margin-top: 69px;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
  }
  .p-recruit__lead {
    line-height: 1.7; /* 実測 1047:776: lh30.6 ÷ fs18（旧1.6） */
  }
  /* S-60②: 3つの姿勢（実測: リード下端957 → 1行目1042＝85・行はカード内へ12インセット） */
  .p-recruit__values {
    margin: 85px 12px 0;
  }
  /* 姿勢は「ラベル｜本文」の2カラム（実測 x191 / x410＝ラベル列219）
     S-60②: 各行の下に二色線（灰#CFCFCF 2px 全幅 ＋ 青#5FCAFD 136px 左端＝実測 1047:791-793）。
     旧: 全行の上に #E1F5FF 1px＝色・位置・青あしらいとも別物。
     行別の余白はFigma手置き実測値（線上40/62/27・線下64/15） */
  .p-recruit__value-row {
    grid-template-columns: 219px 1fr;
    gap: 0;
    padding-block: 0 40px;
    border-top: none;
    background-image: linear-gradient(to right, #5fcafd 0 136px, transparent 136px), linear-gradient(to right, #cfcfcf 0 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 2px;
  }
  .p-recruit__value-row:nth-child(2) {
    margin-top: 64px;
    padding-bottom: 62px;
  }
  .p-recruit__value-row:nth-child(3) {
    align-items: center; /* 実測 1047:785: 「チャレンジ」は本文ブロックに対し上下中央（y1372） */
    margin-top: 15px;
    padding-bottom: 27px;
  }
  /* ラベル（実測 lh24÷fs24=1。PCの「素直さと感謝」のみfs26はFigma混在＝SP3件とも24で統一） */
  .p-recruit__value-title {
    line-height: 1;
  }
  /* 本文（実測: 1行目1047:795=lh28.8/1.6・2〜3行目=lh26.1/1.45のFigma実測値）
     margin-right=-12: 2行目本文はFigmaで828/838幅の際どい1行＝ブラウザ字幅差で折れるため折返し限界だけ広げる
     （文字はFigma同様828で終わる・線1058は変えない） */
  .p-recruit__value-body {
    margin-right: -12px;
    line-height: 1.45;
  }
  .p-recruit__value-row:first-child .p-recruit__value-body {
    line-height: 1.6;
  }
  /* 職種は「本文｜写真」の2カラム（実測: 本文x179幅662 / 写真は右側560） */
  .p-recruit__job-inner {
    grid-template-columns: 1fr 560px;
    gap: 40px;
    align-items: center;
  }
  /* S-61④: 白カードは963幅・帯内センター（実測 1047:706: 239..1202）。
     旧: 帯いっぱい＝中身が左に寄って見えた。padding=横123/115（コンテンツ実測362..1087） */
  .p-recruit__voice-card {
    max-width: 963px;
    margin-inline: auto;
    padding: 48px 115px 24px 123px;
    gap: 40px;
  }
  /* S-61④: 行内はアバター左端・本文右端（実測 item01: 群362..633／本文633..1087＝行725を使い切る） */
  .p-recruit__voice {
    justify-content: space-between;
  }
  /* S-60②横展開: 見出し泡はFigma全5見出しとも42px（実測 1047:617/701/709/768/774。旧29px） */
  .p-recruit__heading-bubble {
    width: 42px;
    height: 42px;
  }
  /* S-62: back_decoration泡（PC実測座標。帯=1047:703 x120,y3458 基準／要項inner=x120,y4817 基準） */
  .p-recruit__voices .p-recruit__inner,
  .p-recruit__requirements .p-recruit__inner {
    position: relative;
  }
  /* SP周回(8/26): 弧文字のPC/SP出し分け（PCは従来の左上パスのみ） */
  .p-recruit__voice-arc .p-recruit__voice-arc-text--pc {
    display: block;
  }
  .p-recruit__voice-arc .p-recruit__voice-arc-text--sp {
    display: none;
  }
  .p-recruit__deco {
    position: absolute;
    display: block;
    height: auto;
  }
  /* SP周回(8/26)で追加したSP専用泡はPCでは出さない（PC Figmaに存在しない） */
  .p-recruit__deco--pink-req,
  .p-recruit__deco--lightblue {
    display: none;
  }
  .p-recruit__deco--yellow {
    top: 42px; /* 実測 1047:741: abs(65,3500) − 帯(120,3458) */
    left: -55px;
    width: 67px;
  }
  .p-recruit__deco--pink {
    top: 525px; /* 実測 1047:740: abs(1299,3983) − 帯(120,3458) */
    left: 1179px;
    width: 130px;
  }
  .p-recruit__deco--blue {
    /* S-65: 実測 1047:739: 泡下端5798＝白カード下端5581+217（上端はカード下端-17）。
       カード実高はブラウザで変わるため下端基準で追従させる（旧top:747は固定でずれた） */
    bottom: -217px;
    left: -157px;
    width: 231px;
  }
  /* 声は「アバター｜本文」の横並び。2番目だけ左右反転（実測 1047:726 が右寄せ） */
  /* 実測 1047:711/720/729: 本文ブロック(Frame 900)は**3項目とも幅454**。
     1fr にすると1項目目だけカード幅いっぱい(870px)に伸びて折返し行数がFigmaと変わるため、
     列幅を実測値で固定する（アバター群 271 ＋ 本文 454）。 */
  .p-recruit__voice {
    grid-template-columns: 154px minmax(0, 454px);
    gap: 32px;
    align-items: center;
    justify-items: start;
  }
  /* item02 は Figma でも左右が逆（実測 1047:720: 本文454が左・アバター群が右） */
  .p-recruit__voice--reverse {
    grid-template-columns: minmax(0, 454px) 154px;
    /* 🔴 並べ替える対象は「アバター＋弧文字」のまとまり。
       #71 で .p-recruit__voice-visual を挟んだため、img ではなくこちらに order を掛ける
       （img のままだとグリッド項目でなくなり順序が効かず、本文が細い列に潰れる） */
  }
  .p-recruit__voice--reverse .p-recruit__voice-visual {
    order: 2;
  }
  .p-recruit__voice-avatar {
    width: 154px; /* 実測 1047:713: 154×154 */
    height: 154px;
  }
  /* 募集要項は「項目名｜内容」の2カラム（実測 1047:660 w180 / 1047:661 w612） */
  .p-recruit__req-list {
    padding: 8px 40px;
  }
  .p-recruit__req-row {
    grid-template-columns: 180px 1fr;
    gap: 24px;
    align-items: center;
    padding-block: 26px;
  }
  /* S-65: 応募方法の余白・列をFigma実測へ（旧: 1200幅1fr×3・タイトル→バッジ40で全体が詰まっていた） */
  .p-recruit__apply {
    padding-block: 80px; /* 実測: 要項カード下端5581→タイトル5741=160の折半（要項側pb80と対） */
  }
  /* ステップは3列（実測 1047:631/639/648: x244/580/916 幅280＝コンテンツ952・列間56。
     タイトル下端5787→バッジ5924=137。丸バッジ同士は3px #005CA7 の線でつながる＝1047:620） */
  .p-recruit__steps {
    position: relative;
    max-width: 952px;
    margin: 137px auto 0;
    grid-template-columns: repeat(3, 280px);
    justify-content: space-between;
    gap: 0;
  }
  .p-recruit__steps::before {
    position: absolute;
    z-index: 0;
    top: 18px; /* バッジ36pxの中心 */
    right: 140px; /* バッジ中心＝列幅280の中央 */
    left: 140px;
    height: 3px;
    background-color: #005ca7;
    content: "";
  }
  /* 縦リズム（実測: バッジ下端5960→アイコン6003=43／アイコン下端6125→本文6149=24。gap0で個別指定） */
  .p-recruit__step {
    gap: 0;
  }
  .p-recruit__step-icon {
    margin-top: 43px;
  }
  .p-recruit__step-body {
    margin-top: 24px;
    text-align: left;
  }
  .p-recruit__tel-wrap {
    margin-top: 8px; /* 実測: 本文下端6245→電話6253（PCはgap0のため直値） */
  }
  .p-recruit__step-no {
    position: relative;
    z-index: 1; /* 線の上に出す */
  }
}
/* ==========================================================================
   PC専用（1440px〜）＝Figma実数値に着地させる
   ========================================================================== */
@media (min-width: 1440px) {
  /* S-60③: 職種の写真は右端まで裁ち落とし（実測 1047:759ほか: x883..1443＝フレーム右端を3px超える全ブリード）。
     本文はデザイン左端x123（=50%-597px）に固定。旧: 1200インナー内で右端に届かず左に寄っていた */
  .p-recruit__job-inner {
    max-width: none;
    justify-content: space-between;
    grid-template-columns: 662px 560px;
    align-items: start;
    padding-right: 0;
    padding-left: calc(50% - 597px);
  }
  /* 写真の縦オフセット（実測: 01=+53(1922-1869)・02=+53(2506-2453)・03=-9(2979-2988)） */
  .p-recruit__job-photo {
    margin-top: 53px;
  }
  .p-recruit__job:last-of-type .p-recruit__job-photo {
    margin-top: -9px;
  }
  /* S-60③: 02の水色帯は左端から1050px・全幅ではない（実測 1047:745: #F3FBFF 1050×468） */
  .p-recruit__job--tinted {
    background-color: transparent;
    background-image: linear-gradient(#f3fbff, #f3fbff);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 1050px 100%;
  }
}
/* ==========================================================================
   SP周回（2026-08-26）: Figma SP 1078:320 実測に合わせたSP限定修正。
   768px以下限定＝769px以上（タブレット・PC）には影響しない（PC22面承認済み）。
   fsはSP実測値（従来のclamp下限はSP実測なしの推定値だった＝S-16の「実装統一維持」型とは別）。
   ========================================================================== */
@media (max-width: 768px) {
  /* --- FV --- */
  .p-recruit .c-page-title__title {
    text-align: left; /* 実測 1078:329: x22 LEFT（既定centerだと4文字が箱中央に浮く） */
  }
  .p-recruit .c-page-title__subtitle {
    width: 264px; /* 実測 1078:328: w264（「暮らしを/きれいに」で折る） */
  }
  /* --- 職業理念: カードは見出し〜3つの姿勢の全体（S-60②のSP版・1078:393 x10 w370 y288..1537） --- */
  .p-recruit__philosophy {
    padding-block: 40px 0; /* 実測: canvas下端248 → カード288 */
  }
  .p-recruit__philosophy .p-recruit__inner {
    margin-inline: 10px;
    padding: 30px 10px; /* 実測: カード288→見出し318／v3本文下端1507→カード下端1537 */
    background-color: #ffffff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.25); /* 実測 1078:393: DROP_SHADOW blur5 */
  }
  .p-recruit__philosophy .p-recruit__heading {
    justify-content: flex-start; /* 実測 1078:395: title x20 左寄せ */
  }
  .p-recruit__philosophy-lead {
    gap: 30px; /* 実測: キャッチ下端481 → リード511 */
    margin-top: 40px; /* 実測: 見出し下端353 → キャッチ393 */
    padding: 0;
    background-color: transparent;
    box-shadow: none;
  }
  .p-recruit__catch {
    margin-left: 12px; /* 実測 1078:398: x32 ＝ 内容20+12 */
    font-size: 22px; /* 実測 1078:398 */
    line-height: 2; /* 実測: lh44/22 */
  }
  .p-recruit__lead {
    font-size: 18px; /* 実測 1078:399 */
  }
  .p-recruit__values {
    margin-top: 50px; /* 実測: リード下端759 → v1タイトル809 */
  }
  .p-recruit__value-row {
    gap: 28px; /* 実測: タイトル下端→本文 v1=30/v2=26/v3=26（Figma側揺れ＝中間28） */
    padding: 0 0 25px; /* 実測: 本文下端950→線975 */
    border-top: 0;
  }
  /* 行間の線＝青140px＋灰の二色線（実測 1078:407/408: 灰w350＋青w140） */
  .p-recruit__value-row + .p-recruit__value-row {
    padding-top: 25px; /* 実測: 線975→v2タイトル1000 */
    background-image: linear-gradient(to right, #5fcafd 0 140px, transparent 140px), linear-gradient(to right, #cfcfcf 0 100%);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% 2px;
  }
  .p-recruit__value-row:last-child {
    padding-bottom: 0;
  }
  .p-recruit__value-title {
    font-size: 24px; /* 実測 1078:414 */
  }
  .p-recruit__value-body {
    font-size: 18px; /* 実測 1078:413（lhはFigma側1.45/1.6/1.7混在＝実装1.6を維持） */
  }
  /* --- 職種紹介（SPは写真→番号見出し→本文の順） --- */
  .p-recruit__jobs {
    padding-block: 90px 0; /* 実測: カード下端1537→見出し1627 */
  }
  .p-recruit__job {
    padding-block: 0;
  }
  .p-recruit__jobs > .p-recruit__job:first-of-type {
    margin-top: 70px; /* 実測: 見出し下端1662 → card_01写真1732 */
  }
  .p-recruit__job--tinted {
    margin-top: 81px; /* 実測: 01本文下端2511 → 02写真2592 */
    padding-bottom: 18px; /* 実測: 本文下端3433 → 帯下端3451 */
    background: linear-gradient(180deg, transparent 0 48px, #f3fbff 48px); /* 実測: 帯2640＝写真2592+48 */
  }
  .p-recruit__job--tinted + .p-recruit__job {
    margin-top: 50px; /* 実測: 帯下端3451 → 03写真3501 */
  }
  .p-recruit__job-inner {
    gap: 20px; /* 実測: 写真下端1954 → 番号1974 */
  }
  .p-recruit__job-photo {
    order: -1;
    max-width: none;
    width: 100%; /* グリッド列358幅（widthはautoだと属性560pxで溢れる） */
    margin-left: 15px; /* 実測 1078:435: x31 ＝ 内容16+15 */
    margin-right: -16px; /* 右端まで裁ち落とし（x31..390） */
    aspect-ratio: 359/222; /* 実測 1078:435 */
  }
  .p-recruit__job-head {
    margin-bottom: 20px; /* 実測: 番号下端2057 → 本文2077 */
  }
  .p-recruit__job-no {
    font-size: 64px; /* 実測 1078:438 */
  }
  .p-recruit__job-title {
    font-size: 20px; /* 実測 1078:439 */
  }
  .p-recruit__job-body {
    font-size: 18px; /* 実測 1078:440 */
  }
  /* --- 働くスタッフの声（外帯#E1F5FF r16 全幅 ＋ 内側白 r8 inset12） --- */
  .p-recruit__voices {
    margin-top: 90px; /* 実測: item_03下端4156 → 帯4246 */
    padding: 18px 12px 17px; /* 実測 1078:450: 白カードのinset（marginだと相殺で抜ける） */
    border-radius: 16px; /* 実測 1078:449 */
    background-color: #e1f5ff;
  }
  .p-recruit__voices .p-recruit__inner {
    margin: 0; /* insetは親のpaddingで確保 */
    padding: 76px 31px 23px; /* 実測: 白4264→見出し4340.5／item x43／item3下端5903.7→白下端5927 */
    border-radius: 8px; /* 実測 1078:450 */
    background-color: #ffffff;
  }
  .p-recruit__voice-card {
    margin-top: 30px; /* 実測: 見出し下端4375.5 → item1 4405.5 */
    gap: 0; /* 送りは各itemのpadding 25+線+25 で作る */
    padding: 0;
    background-color: transparent;
    border-radius: 0;
  }
  .p-recruit__voice-visual {
    width: 157px; /* 実測 1078:458（旧100は推定） */
  }
  .p-recruit__voice-avatar {
    width: 157px;
    height: 157px;
  }
  .p-recruit__voice-arc {
    width: 176.6%; /* パス円r115.25（bbox230.5）: (96/231)xW=115.25 → W=277.3=157x176.6% */
    height: 176.6%;
    font-size: 13.33px; /* rendered 16px = 13.33x(277.3/231) */
  }
  /* SPはitem2の弧文字を右上パスで表示（1078:465） */
  .p-recruit__voice-arc .p-recruit__voice-arc-text--pc {
    display: none;
  }
  .p-recruit__voice {
    position: relative;
    padding-bottom: 25px;
  }
  .p-recruit__voice + .p-recruit__voice {
    padding-top: 25px; /* 実測: 線→次item 25 */
  }
  .p-recruit__voice:not(:last-child) {
    border-bottom: 0;
  }
  .p-recruit__voice:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -9px; /* 実測 Line68: x34 w323＝コンテンツ304より左右+9.5 */
    bottom: 0;
    left: -9px;
    height: 2px;
    background-color: #e1f5ff;
  }
  .p-recruit__voice-role {
    padding: 2px 24px;
    border-radius: 4px; /* 実測 1078:461: r4（旧r65ピルは別物） */
    background-color: #ffffff;
    font-size: 20px; /* 実測 1078:462 */
  }
  .p-recruit__voice-body {
    font-size: 20px; /* 実測 1078:463 */
  }
  /* --- 募集要項（SPは2カラム行・青82px線） --- */
  .p-recruit__requirements {
    margin-top: 90px; /* 実測: 帯下端5944 → 見出し6034 */
    padding-block: 0;
  }
  .p-recruit__req-list {
    margin: 70px 4px 0; /* 実測: 見出し下端6069→カード6139／カードx20＝インナー16+4 */
    padding: 50px 20px; /* 実測: カード6139→1行目6189／最終行6862→カード下端6912 */
  }
  .p-recruit__req-row {
    grid-template-columns: 82px 1fr; /* 実測: 項目名x40 w82／内容x138 */
    gap: 0 16px;
    padding-block: 30px 26px; /* 実測: 内容下端→線24＋線2／線→次内容30（6241→6265→6297） */
    background-image: linear-gradient(to right, #5fcafd 0 82px, transparent 82px), linear-gradient(to right, #cfcfcf 0 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 2px;
  }
  .p-recruit__req-row:first-child {
    padding-top: 0;
  }
  .p-recruit__req-row:last-child {
    padding-bottom: 0;
    background-image: none; /* 実測: SPは最終行に線なし */
  }
  .p-recruit__req-label {
    font-size: 20px; /* 実測 1078:490 */
  }
  .p-recruit__req-value {
    line-height: 1.6; /* 実測 1078:491: lh25.6/16 */
  }
  /* --- 応募方法（SPは左に番号丸+縦線・右にアイコン+本文） --- */
  .p-recruit__apply {
    margin-top: 90px; /* 実測: カード下端6912 → 見出し7002 */
    padding-block: 0 10px; /* 実測: step3下端7928 → contact帯7988 ＝ 60（band既定margin50と合算） */
  }
  .p-recruit__steps {
    position: relative;
    margin-top: 40px; /* 実測: 見出し下端7037 → step1アイコン7077 */
    padding-left: 39px; /* 実測: 丸x55 ＝ インナー16+39 */
    padding-right: 30px; /* 実測: 本文右端344 → インナー右374 */
    gap: 40px; /* 実測: item1下端7364 → item2 7404 */
  }
  .p-recruit__steps::before {
    content: ""; /* 番号丸をつなぐ縦線（実測 1114:37: x82） */
    position: absolute;
    top: 26px;
    bottom: 80px;
    left: 65px; /* 39 + 26（丸中心） */
    width: 1px;
    background-color: #5fcafd;
  }
  .p-recruit__step {
    grid-template-columns: 52px 1fr;
    gap: 24px 9px; /* 実測: アイコン下端7526→本文7550／丸右端107→アイテム116 */
    justify-items: center;
  }
  .p-recruit__step-no {
    position: relative;
    z-index: 1;
    grid-column: 1;
    grid-row: 1;
    width: 52px; /* 実測 1114:38: 52φ */
    height: 52px;
  }
  .p-recruit__step-icon {
    grid-column: 2;
    grid-row: 1;
  }
  .p-recruit__step-body {
    grid-column: 2;
    font-size: 18px; /* 実測 1130:222 */
    line-height: 1.8; /* 実測: lh32.4/18 */
  }
  .p-recruit__tel-wrap {
    grid-column: 2;
    width: 100%;
    margin: -16px 0 0; /* grid gap24が先に入るため実測8へ詰める */
  }
  .p-recruit__tel {
    width: 100%;
    gap: 5px; /* 実測: アイコン右端159.2 → 文字164 */
    font-size: 24px; /* 実測 1130:226 */
  }
  /* --- SPのback_decoration泡4点（1078:480/391/481/530 実測） --- */
  .p-recruit__voices .p-recruit__inner,
  .p-recruit__requirements .p-recruit__inner,
  .p-recruit__apply .p-recruit__inner {
    position: relative;
  }
  .p-recruit__deco--yellow {
    display: block;
    position: absolute;
    top: -12px; /* 実測: 白カード上端4264 → 泡4252 */
    left: -27px; /* 実測 1078:480: x-16 */
    width: 38px;
    z-index: 1;
  }
  .p-recruit__deco--pink {
    display: block;
    position: absolute;
    right: -37px; /* 実測 1078:391: x341（白カード右378の内側へ食い込む） */
    bottom: 30px; /* 実測: 泡5824..5870 ＝ 白カード下端5927の57上 */
    width: 49px;
    z-index: 1;
  }
  .p-recruit__deco--pink-req {
    display: block;
    position: absolute;
    top: -43px; /* 実測 1078:481: y5991 ＝ 見出し6034の43上（innerは見出しと同y起点） */
    right: -16px;
    width: 49px;
  }
  .p-recruit__deco--lightblue {
    display: block;
    position: absolute;
    top: -24px; /* 実測 1078:530: y6978 ＝ 見出し7002の24上 */
    left: -30px; /* 実測: x-14 ＝ インナー16−30 */
    width: 90px;
  }
}
/* SP字間の個別値（全数照合 2026-08-28・_SP_AUDIT_CLASSIFY_20260828.md）
   Figma SP実測: step-body は負の字間 -0.54px */
@media (max-width: 768px) {
  .p-recruit__step-body {
    letter-spacing: -0.54px;
  }
}
