/* ===== プレビュー用ダミー（本番では削除） ===== */

/* ===== ここから本体（.ymt-recruit にスコープ） ===== */
.ymt-recruit{
  --ymt-navy:#122949;        /* 既存サイト基調色 */
  --ymt-blue:#2E71CB;        /* 既存サイトのリンク・ボタン青 */
  --ymt-blue-soft:#5a94dc;
  --ymt-bg:#f1f7fc;          /* 既存サイトの淡青背景 */
  --ymt-bg-alt:#ffffff;
  --ymt-line:#c9dcef;
  --ymt-text:#22303f;
  --ymt-text-soft:#5d6b7a;
  --ymt-accent:#c84d02;      /* 既存サイトのアクセント橙（CTA限定使用） */
  --ymt-radius-l:26px;
  --ymt-radius-m:16px;
  --ymt-ease:cubic-bezier(.22,.61,.36,1);
  font-family:"Noto Sans JP",sans-serif;
  color:var(--ymt-text);
  background:var(--ymt-bg);
  line-height:1.9;
  font-size:16px;
  font-feature-settings:"palt";
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.ymt-recruit *{margin:0;padding:0;box-sizing:border-box;}
.ymt-recruit img{max-width:100%;display:block;}
.ymt-recruit a{color:inherit;text-decoration:none;}
.ymt-recruit .ymt-container{max-width:1100px;margin:0 auto;padding:0 24px;}
.ymt-recruit h1,.ymt-recruit h2,.ymt-recruit h3{font-family:"Noto Sans JP",sans-serif;}
.ymt-recruit .ymt-section{padding:96px 0;}
.ymt-recruit .ymt-section-alt{background:var(--ymt-bg-alt);}
.ymt-recruit .ymt-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;padding:6px 16px;border-radius:20px;margin-bottom:18px;letter-spacing:.04em;}
.ymt-recruit .ymt-section-title{font-size:clamp(24px,2.8vw,31px);font-weight:900;color:var(--ymt-navy);margin-bottom:16px;line-height:1.6;}
.ymt-recruit .ymt-section-lead{color:var(--ymt-text-soft);font-size:15px;max-width:640px;margin-bottom:52px;}
.ymt-recruit .ymt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 40px;background:var(--ymt-blue);color:#fff;font-weight:700;font-size:15px;border-radius:40px;box-shadow:0 8px 20px rgba(46,113,203,.28);transition:transform .35s var(--ymt-ease),box-shadow .35s var(--ymt-ease);}
.ymt-recruit .ymt-btn:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(46,113,203,.35);}
.ymt-recruit .ymt-btn--accent{background:var(--ymt-accent);box-shadow:0 8px 20px rgba(200,77,2,.25);}
.ymt-recruit .ymt-btn--ghost{background:#fff;color:var(--ymt-blue);border:2px solid var(--ymt-blue);box-shadow:none;}

/* フェードイン */
.ymt-recruit .ymt-fade{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ymt-ease),transform .8s var(--ymt-ease);}
.ymt-recruit .ymt-fade.ymt-in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.ymt-recruit .ymt-fade{opacity:1;transform:none;transition:none;}}

/* 写真プレースホルダー */
.ymt-recruit .ymt-ph{position:relative;border:2px dashed #8fb4dd;border-radius:var(--ymt-radius-m);background:linear-gradient(135deg,#dcebf9 0%,#eef5fc 55%,#d4e5f6 100%);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;overflow:hidden;}
.ymt-recruit .ymt-ph::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(255,255,255,.7),transparent 55%);}
.ymt-recruit .ymt-ph-tag{position:relative;display:inline-block;background:var(--ymt-navy);color:#fff;font-size:12px;font-weight:700;padding:4px 14px;border-radius:14px;margin-bottom:10px;letter-spacing:.05em;}
.ymt-recruit .ymt-ph-desc{position:relative;font-size:12.5px;line-height:1.8;color:#3a5675;max-width:340px;font-weight:500;}
.ymt-recruit .ymt-ph-note{position:relative;font-size:10.5px;color:#7d95ad;margin-top:8px;}

/* ===== FV ===== */
.ymt-recruit .ymt-hero{background:linear-gradient(160deg,#eaf3fb 0%,#f7fbff 45%,#dcebf9 100%);padding:80px 0 64px;position:relative;overflow:hidden;}
.ymt-recruit .ymt-hero::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(46,113,203,.10),transparent 70%);top:-140px;right:-120px;}
.ymt-recruit .ymt-hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;position:relative;z-index:1;}
.ymt-recruit .ymt-hero-copy h1{font-size:clamp(28px,3.6vw,42px);font-weight:900;color:var(--ymt-navy);line-height:1.65;margin-bottom:22px;}
.ymt-recruit .ymt-hero-copy h1 .ymt-marker{background:linear-gradient(transparent 62%,#c8defa 62%);}
.ymt-recruit .ymt-hero-sub{font-size:15px;color:var(--ymt-text-soft);max-width:520px;margin-bottom:32px;}
.ymt-recruit .ymt-hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
.ymt-recruit .ymt-hero-ph{aspect-ratio:4/3;}
.ymt-recruit .ymt-hero-badge{display:inline-flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.ymt-recruit .ymt-hero-badge span{background:#fff;border:1.5px solid var(--ymt-line);color:var(--ymt-blue);font-size:12.5px;font-weight:700;padding:5px 14px;border-radius:16px;}

/* アンカー帯 */
.ymt-recruit .ymt-anchors{background:#fff;border-top:1px solid var(--ymt-line);border-bottom:1px solid var(--ymt-line);}
.ymt-recruit .ymt-anchors ul{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;list-style:none;padding:12px 16px;}
.ymt-recruit .ymt-anchors a{display:inline-block;font-size:13.5px;font-weight:700;color:var(--ymt-navy);padding:8px 18px;border-radius:20px;transition:background .3s;}
.ymt-recruit .ymt-anchors a:hover{background:var(--ymt-bg);color:var(--ymt-blue);}

/* 思想 strip */
.ymt-recruit .ymt-philosophy{background:var(--ymt-navy);color:#fff;padding:64px 0;text-align:center;}
.ymt-recruit .ymt-philosophy .ymt-phi-label{font-size:12px;letter-spacing:.28em;color:#9db8d9;margin-bottom:16px;font-weight:700;}
.ymt-recruit .ymt-philosophy h2{font-size:clamp(21px,2.6vw,28px);font-weight:900;line-height:1.8;margin-bottom:14px;}
.ymt-recruit .ymt-philosophy p{font-size:14px;color:#c4d4e8;max-width:620px;margin:0 auto;}

/* 魅力3カード */
.ymt-recruit .ymt-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ymt-recruit .ymt-value-card{background:#fff;border-radius:var(--ymt-radius-l);padding:38px 30px;box-shadow:0 6px 24px rgba(18,41,73,.07);transition:transform .35s var(--ymt-ease),box-shadow .35s var(--ymt-ease);}
.ymt-recruit .ymt-section-alt .ymt-value-card{background:var(--ymt-bg);box-shadow:none;}
.ymt-recruit .ymt-value-card:hover{transform:translateY(-6px);box-shadow:0 14px 32px rgba(18,41,73,.12);}
.ymt-recruit .ymt-value-num{display:inline-flex;width:44px;height:44px;border-radius:50%;background:var(--ymt-blue);color:#fff;font-weight:900;font-size:18px;align-items:center;justify-content:center;margin-bottom:18px;}
.ymt-recruit .ymt-value-card h3{font-size:18.5px;font-weight:900;color:var(--ymt-navy);line-height:1.6;margin-bottom:12px;}
.ymt-recruit .ymt-value-card p{font-size:14px;color:var(--ymt-text-soft);}

/* 連携図 */
.ymt-recruit .ymt-net{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:760px;margin:0 auto 32px;}
.ymt-recruit .ymt-net-chip{background:#fff;border:1.5px solid var(--ymt-line);border-radius:var(--ymt-radius-m);padding:20px 14px;text-align:center;}
.ymt-recruit .ymt-net-chip strong{display:block;font-size:15px;color:var(--ymt-navy);font-weight:900;margin-bottom:4px;}
.ymt-recruit .ymt-net-chip span{font-size:11.5px;color:var(--ymt-text-soft);line-height:1.6;display:block;}
.ymt-recruit .ymt-net-chip--main{background:var(--ymt-blue);border-color:var(--ymt-blue);box-shadow:0 10px 24px rgba(46,113,203,.3);}
.ymt-recruit .ymt-net-chip--main strong,.ymt-recruit .ymt-net-chip--main span{color:#fff;}
.ymt-recruit .ymt-net-center{grid-column:1/-1;text-align:center;font-size:13px;font-weight:700;color:var(--ymt-navy);background:#e2eefb;border-radius:30px;padding:10px;}
.ymt-recruit .ymt-band{background:linear-gradient(120deg,#1c3a63,#2E71CB);border-radius:var(--ymt-radius-l);color:#fff;padding:36px 40px;display:flex;gap:20px;align-items:center;margin-top:44px;}
.ymt-recruit .ymt-band p{font-size:14.5px;line-height:2;}
.ymt-recruit .ymt-band strong{color:#ffd9be;}

/* 社員ストーリー（v7構成） */
.ymt-recruit .ymt-wstory{display:grid;grid-template-columns:.95fr 1.05fr;gap:40px;align-items:center;background:#fff;border-radius:var(--ymt-radius-l);padding:40px;box-shadow:0 6px 24px rgba(18,41,73,.07);margin-bottom:28px;}
.ymt-recruit .ymt-wstory--rev .ymt-ph{order:2;}
.ymt-recruit .ymt-wstory .ymt-ph{aspect-ratio:4/3;}
.ymt-recruit .ymt-wstory-type{display:inline-block;font-size:12px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;border-radius:14px;padding:4px 14px;margin-bottom:14px;}
.ymt-recruit .ymt-wstory h3{font-size:clamp(19px,2.2vw,23px);font-weight:900;color:var(--ymt-navy);line-height:1.7;margin-bottom:14px;}
.ymt-recruit .ymt-wstory blockquote{font-size:15.5px;font-weight:700;color:var(--ymt-blue);border-left:4px solid var(--ymt-blue-soft);padding-left:14px;margin-bottom:12px;line-height:1.9;}
.ymt-recruit .ymt-wstory-guide{font-size:13px;color:var(--ymt-text-soft);margin-bottom:10px;}
.ymt-recruit .ymt-wstory-meta{font-size:12.5px;font-weight:700;color:var(--ymt-navy);margin-bottom:16px;}
.ymt-recruit .ymt-wstory-facts{display:flex;gap:8px;flex-wrap:wrap;list-style:none;}
.ymt-recruit .ymt-wstory-facts li{font-size:11.5px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;padding:4px 12px;border-radius:14px;}

/* ほかの働き方 */
.ymt-recruit .ymt-other-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;}
.ymt-recruit .ymt-other-card{background:#fff;border-radius:var(--ymt-radius-m);padding:24px 28px;box-shadow:0 4px 16px rgba(18,41,73,.06);}
.ymt-recruit .ymt-section-alt .ymt-other-card{background:var(--ymt-bg);box-shadow:none;}
.ymt-recruit .ymt-other-card h3{font-size:16.5px;font-weight:900;color:var(--ymt-navy);margin-bottom:6px;}
.ymt-recruit .ymt-other-card p{font-size:13px;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-other-label{font-size:14px;font-weight:700;color:var(--ymt-blue);margin:44px 0 14px;}

/* 中間CTA */
.ymt-recruit .ymt-midcta{background:linear-gradient(120deg,#1c3a63,#2E71CB);border-radius:var(--ymt-radius-l);color:#fff;padding:34px 40px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:56px;}
.ymt-recruit .ymt-midcta p{font-family:"Noto Serif JP",serif;font-size:clamp(17px,2vw,21px);font-weight:700;line-height:1.7;}
.ymt-recruit .ymt-midcta .ymt-btn{background:#fff;color:var(--ymt-navy);box-shadow:none;}

/* 仕事の軸（work-intro） */
.ymt-recruit .ymt-workintro{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;margin-bottom:56px;}
.ymt-recruit .ymt-workintro-box{background:#fff;border-radius:var(--ymt-radius-l);padding:34px;box-shadow:0 6px 24px rgba(18,41,73,.07);}
.ymt-recruit .ymt-workintro-box h3{font-size:19px;font-weight:900;color:var(--ymt-navy);margin-bottom:12px;line-height:1.7;}
.ymt-recruit .ymt-workintro-box p{font-size:14px;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-workintro .ymt-ph{min-height:240px;}

/* 成長ステップ */
.ymt-recruit .ymt-steps{position:relative;max-width:720px;margin:0 auto;}
.ymt-recruit .ymt-steps::before{content:"";position:absolute;left:27px;top:8px;bottom:8px;width:3px;border-radius:2px;background:linear-gradient(var(--ymt-blue-soft),var(--ymt-blue));}
.ymt-recruit .ymt-step{position:relative;padding:0 0 40px 84px;}
.ymt-recruit .ymt-step:last-child{padding-bottom:0;}
.ymt-recruit .ymt-step-dot{position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;background:#fff;border:3px solid var(--ymt-blue);color:var(--ymt-blue);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:900;}
.ymt-recruit .ymt-step-dot small{font-size:8px;letter-spacing:.08em;}
.ymt-recruit .ymt-step-dot b{font-size:19px;line-height:1;}
.ymt-recruit .ymt-step h3{font-size:17px;font-weight:900;color:var(--ymt-navy);margin-bottom:6px;}
.ymt-recruit .ymt-step .ymt-step-period{display:inline-block;font-size:11.5px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;border-radius:12px;padding:2px 12px;margin-bottom:8px;}
.ymt-recruit .ymt-step p{font-size:13.5px;color:var(--ymt-text-soft);}

/* 代表メッセージ（v7構成） */
.ymt-recruit .ymt-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center;background:#fff;border-radius:var(--ymt-radius-l);padding:48px;box-shadow:0 6px 24px rgba(18,41,73,.07);margin-top:72px;}
.ymt-recruit .ymt-story .ymt-ph{aspect-ratio:3/3.4;}
.ymt-recruit .ymt-story h3{font-size:clamp(19px,2.2vw,24px);font-weight:900;color:var(--ymt-navy);line-height:1.7;margin-bottom:16px;}
.ymt-recruit .ymt-story p{font-size:14px;color:var(--ymt-text-soft);margin-bottom:12px;}
.ymt-recruit .ymt-story .ymt-story-sign{font-size:13px;color:var(--ymt-navy);font-weight:700;margin-top:18px;}
.ymt-recruit .ymt-interview-link{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:16px;padding:26px 32px;background:#f4f8fc;border:1px solid #d7e3ef;border-radius:var(--ymt-radius-m);}
.ymt-recruit .ymt-interview-link-label{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--ymt-gold);margin-bottom:8px;}
.ymt-recruit .ymt-interview-link h3{font-family:"Noto Serif JP",serif;font-size:19px;font-weight:700;line-height:1.55;color:var(--ymt-navy);margin-bottom:6px;}
.ymt-recruit .ymt-interview-link p{font-size:13px;line-height:1.8;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-interview-link-action{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid currentColor;color:var(--ymt-blue);font-size:14px;font-weight:700;white-space:nowrap;transition:color .2s var(--ymt-ease),gap .2s var(--ymt-ease);}
.ymt-recruit .ymt-interview-link-action:hover{color:var(--ymt-navy);gap:12px;}
.ymt-recruit .ymt-interview-link-action:focus-visible{outline:3px solid rgba(46,113,203,.35);outline-offset:5px;}

/* 数字 */
.ymt-recruit .ymt-stats{background:var(--ymt-navy);}
.ymt-recruit .ymt-stats .ymt-eyebrow{background:rgba(255,255,255,.12);color:#bcd6f5;}
.ymt-recruit .ymt-stats .ymt-section-title{color:#fff;}
.ymt-recruit .ymt-stats .ymt-section-lead{color:#9db8d9;}
.ymt-recruit .ymt-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.ymt-recruit .ymt-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--ymt-radius-l);padding:30px 20px;text-align:center;}
.ymt-recruit .ymt-stat-label{font-size:12.5px;color:#9db8d9;font-weight:700;margin-bottom:8px;display:block;}
.ymt-recruit .ymt-stat-value{font-family:"Noto Serif JP",serif;font-weight:900;font-size:clamp(24px,2.6vw,32px);color:#fff;line-height:1.3;}
.ymt-recruit .ymt-stat-value small{font-size:14px;}
.ymt-recruit .ymt-stat-note{font-size:10.5px;color:#7d97b8;margin-top:6px;display:block;}
.ymt-recruit .ymt-stats-caption{text-align:center;font-size:11px;color:#7d97b8;margin-top:24px;}

/* 募集要項 */
.ymt-recruit .ymt-req-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--ymt-radius-m);overflow:hidden;box-shadow:0 6px 24px rgba(18,41,73,.07);}
.ymt-recruit .ymt-req-table th,.ymt-recruit .ymt-req-table td{padding:20px 24px;font-size:14px;text-align:left;border-bottom:1px solid var(--ymt-bg);vertical-align:top;line-height:1.9;}
.ymt-recruit .ymt-req-table th{width:180px;background:var(--ymt-bg);color:var(--ymt-navy);font-weight:700;}
.ymt-recruit .ymt-req-table tr:last-child th,.ymt-recruit .ymt-req-table tr:last-child td{border-bottom:none;}
.ymt-recruit .ymt-req-star{color:#a08040;font-size:11.5px;}

/* FAQ */
.ymt-recruit .ymt-faq{max-width:760px;margin:72px auto 0;}
.ymt-recruit .ymt-faq h3{font-size:20px;font-weight:900;color:var(--ymt-navy);text-align:center;margin-bottom:28px;}
.ymt-recruit .ymt-faq-item{background:#fff;border-radius:var(--ymt-radius-m);margin-bottom:12px;box-shadow:0 4px 16px rgba(18,41,73,.06);overflow:hidden;}
.ymt-recruit .ymt-faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;background:none;border:none;font:inherit;font-size:14.5px;font-weight:700;color:var(--ymt-navy);cursor:pointer;text-align:left;}
.ymt-recruit .ymt-faq-q::after{content:"＋";font-size:18px;color:var(--ymt-blue);flex-shrink:0;transition:transform .3s;}
.ymt-recruit .ymt-faq-item.ymt-open .ymt-faq-q::after{transform:rotate(45deg);}
.ymt-recruit .ymt-faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ymt-ease);}
.ymt-recruit .ymt-faq-a p{padding:0 24px 20px;font-size:13.5px;color:var(--ymt-text-soft);}

/* 最終CTA（クロージング） */
.ymt-recruit .ymt-cta{background:linear-gradient(140deg,#1c3a63,#2E71CB);padding:88px 0;text-align:center;color:#fff;}
.ymt-recruit .ymt-cta h2{font-size:clamp(22px,2.8vw,30px);font-weight:900;line-height:1.7;margin-bottom:14px;}
.ymt-recruit .ymt-cta p{font-size:14px;color:#cfe0f5;margin-bottom:34px;max-width:680px;margin-left:auto;margin-right:auto;}
.ymt-recruit .ymt-cta-note{font-size:11.5px;color:#9db8d9;margin-top:22px;margin-bottom:0;}

@media(max-width:900px){
  .ymt-recruit .ymt-hero-inner{grid-template-columns:1fr;gap:32px;}
  .ymt-recruit .ymt-value-grid{grid-template-columns:1fr;}
  .ymt-recruit .ymt-net{grid-template-columns:repeat(2,1fr);}
  .ymt-recruit .ymt-wstory{grid-template-columns:1fr;padding:28px 22px;gap:24px;}
  .ymt-recruit .ymt-wstory--rev .ymt-ph{order:0;}
  .ymt-recruit .ymt-other-grid{grid-template-columns:1fr;}
  .ymt-recruit .ymt-midcta{flex-direction:column;text-align:center;padding:28px 24px;}
  .ymt-recruit .ymt-workintro{grid-template-columns:1fr;}
  .ymt-recruit .ymt-story{grid-template-columns:1fr;padding:32px 24px;}
  .ymt-recruit .ymt-interview-link{align-items:flex-start;flex-direction:column;gap:18px;padding:24px;}
  .ymt-recruit .ymt-interview-link h3{font-size:18px;}
  .ymt-recruit .ymt-interview-link-action{min-height:44px;align-items:center;}
  .ymt-recruit .ymt-stats-grid{grid-template-columns:repeat(2,1fr);}
  .ymt-recruit .ymt-req-table th{width:110px;padding:16px;font-size:13px;}
  .ymt-recruit .ymt-req-table td{padding:16px;font-size:13px;}
  .ymt-recruit .ymt-section{padding:72px 0;}
  .ymt-recruit .ymt-band{flex-direction:column;padding:28px 24px;}
}

/* ============================================================
   BC折衷（プラン1）：C案の信頼感要素の移植
   ============================================================ */
/* (5) 角丸を抑制して上品に */
.ymt-recruit{--ymt-gold:#b09c6f;--ymt-radius-l:14px;--ymt-radius-m:10px;}

/* (1) 主要見出しを明朝に（カード見出し・ボタン・タグ・バッジは丸ゴシックのまま） */
.ymt-recruit .ymt-hero-copy h1,
.ymt-recruit .ymt-section-title,
.ymt-recruit .ymt-philosophy h2,
.ymt-recruit .ymt-wstory h3,
.ymt-recruit .ymt-story h3,
.ymt-recruit .ymt-cta h2{font-family:"Noto Serif JP",serif;font-weight:700;}
.ymt-recruit .ymt-hero-copy h1{letter-spacing:.01em;line-height:1.72;}

/* (2) eyebrow をC案の金茶レタースペース型に */
.ymt-recruit .ymt-eyebrow{background:none;padding:0;border-radius:0;color:var(--ymt-gold);letter-spacing:.3em;text-transform:uppercase;font-size:12px;}
.ymt-recruit .ymt-stats .ymt-eyebrow{background:none;color:#c9b788;}
.ymt-recruit .ymt-philosophy .ymt-phi-label{color:#c9b788;letter-spacing:.32em;}
/* 見出し下の金茶短線 */
.ymt-recruit .ymt-title-rule{width:52px;height:2px;background:var(--ymt-gold);margin:0 0 26px;}

/* (3) ヒーローの SINCE 帯 */
.ymt-recruit .ymt-hero-est{display:inline-flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.22em;color:#9a824a;font-weight:700;margin-bottom:18px;}
.ymt-recruit .ymt-hero-est::before,.ymt-recruit .ymt-hero-est::after{content:"";width:28px;height:1px;background:var(--ymt-gold);}

/* (4) 代表メッセージをC案の紺ブロック＋金茶縦ラインに */
.ymt-recruit .ymt-story{position:relative;overflow:hidden;background:var(--ymt-navy);color:#fff;}
.ymt-recruit .ymt-story::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ymt-gold);}
.ymt-recruit .ymt-story .ymt-eyebrow{color:#c9b788;}
.ymt-recruit .ymt-story h3{color:#fff;}
.ymt-recruit .ymt-story p{color:#c3d1e2;}
.ymt-recruit .ymt-story .ymt-story-sign{color:#e3d3a5;font-family:"Noto Serif JP",serif;letter-spacing:.08em;}
.ymt-recruit .ymt-story .ymt-ph{border-color:rgba(255,255,255,.45);background:linear-gradient(150deg,rgba(255,255,255,.13),rgba(255,255,255,.04));}
.ymt-recruit .ymt-story .ymt-ph-desc{color:#d7e2ef;}
.ymt-recruit .ymt-story .ymt-ph-note{color:#93a9c4;}

/* v23: 2026-07-21撮影の実写真 */
.ymt-recruit .ymt-photo{position:relative;overflow:hidden;border-radius:var(--ymt-radius-m);background:#dcebf9;}
.ymt-recruit .ymt-photo img{width:100%;height:100%;object-fit:cover;}
.ymt-recruit .ymt-photo--hero{aspect-ratio:4/3;}
.ymt-recruit .ymt-photo--hero img{object-position:50% 58%;}
.ymt-recruit .ymt-wstory .ymt-photo{aspect-ratio:4/3;}
.ymt-recruit .ymt-wstory--rev .ymt-photo{order:2;}
.ymt-recruit .ymt-photo--qualification img{object-position:62% 52%;}
.ymt-recruit .ymt-photo--workstyle img{object-position:50% 50%;}
.ymt-recruit .ymt-workintro .ymt-photo{min-height:240px;aspect-ratio:4/3;}
.ymt-recruit .ymt-photo--pairwork img{object-position:50% 55%;}
.ymt-recruit .ymt-story .ymt-photo{aspect-ratio:3/3.4;border:1px solid rgba(255,255,255,.45);}
.ymt-recruit .ymt-photo--representative img{object-position:50% 8%;transform:scale(1.12);transform-origin:50% 12%;}
.ymt-recruit .ymt-office{display:grid;grid-template-columns:.95fr 1.05fr;gap:0;margin:56px 0 72px;background:var(--ymt-bg);border:1px solid var(--ymt-line);border-radius:var(--ymt-radius-l);overflow:hidden;}
.ymt-recruit .ymt-office-photo{border-radius:0;aspect-ratio:4/3;}
.ymt-recruit .ymt-office-photo img{object-position:50% 50%;}
.ymt-recruit .ymt-office-copy{padding:36px 40px;display:flex;flex-direction:column;justify-content:center;}
.ymt-recruit .ymt-office-label{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--ymt-gold);margin-bottom:12px;}
.ymt-recruit .ymt-office h3{font-family:"Noto Serif JP",serif;font-size:22px;font-weight:700;line-height:1.7;color:var(--ymt-navy);margin-bottom:12px;}
.ymt-recruit .ymt-office p{font-size:13.5px;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-office-stories{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);background:#fff;border-top:1px solid var(--ymt-line);}
.ymt-recruit .ymt-office-story{padding:30px 34px;}
.ymt-recruit .ymt-office-story+.ymt-office-story{border-left:1px solid var(--ymt-line);}
.ymt-recruit .ymt-office-story-type{display:inline-block;font-size:11px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;border-radius:14px;padding:4px 12px;margin-bottom:12px;}
.ymt-recruit .ymt-office-story h4{font-family:"Noto Serif JP",serif;font-size:18px;font-weight:700;line-height:1.7;color:var(--ymt-navy);margin-bottom:12px;}
.ymt-recruit .ymt-office-story blockquote{font-size:14px;font-weight:700;line-height:1.85;color:var(--ymt-blue);border-left:3px solid var(--ymt-blue-soft);padding-left:12px;margin-bottom:12px;}
.ymt-recruit .ymt-office-story-copy{margin-bottom:10px;}
.ymt-recruit .ymt-office-story-meta{font-size:12.5px!important;font-weight:700;color:var(--ymt-navy)!important;margin-bottom:14px;}
.ymt-recruit .ymt-office-story-facts{display:flex;gap:7px;flex-wrap:wrap;list-style:none;}
.ymt-recruit .ymt-office-story-facts li{font-size:11px;font-weight:700;color:var(--ymt-blue);background:#e2eefb;padding:4px 10px;border-radius:14px;}
@media(max-width:900px){
  .ymt-recruit .ymt-wstory--rev .ymt-photo{order:0;}
  .ymt-recruit .ymt-office{grid-template-columns:1fr;margin:40px 0 56px;}
  .ymt-recruit .ymt-office-copy{padding:28px 24px;}
  .ymt-recruit .ymt-office-stories{grid-template-columns:1fr;}
  .ymt-recruit .ymt-office-story{padding:26px 24px;}
  .ymt-recruit .ymt-office-story+.ymt-office-story{border-left:none;border-top:1px solid var(--ymt-line);}
}

/* Contact Form 7: 採用・相談フォーム */
.ymt-recruit .ymt-contact-form{max-width:760px;margin:36px auto 0;padding:32px;background:#fff;border-radius:var(--ymt-radius-m);box-shadow:0 8px 24px rgba(8,25,48,.18);color:var(--ymt-text);text-align:left;}
.ymt-recruit .ymt-contact-form .wpcf7-form>p{margin:0 0 18px;}
.ymt-recruit .ymt-contact-form label{display:block;font-size:14px;font-weight:700;color:var(--ymt-navy);line-height:1.7;}
.ymt-recruit .ymt-contact-form fieldset{min-inline-size:0;margin:0 0 18px;padding:0;border:0;}
.ymt-recruit .ymt-contact-form legend{padding:0;font-family:"Noto Sans JP",sans-serif;font-size:14px;font-weight:700;color:var(--ymt-navy);line-height:1.7;}
.ymt-recruit .ymt-contact-form .required,.ymt-recruit .ymt-contact-form .optional{font-size:12px;font-weight:500;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-contact-form .ymt-contact-form__help{display:block;margin-top:3px;font-size:12px;font-weight:400;color:var(--ymt-text-soft);}
.ymt-recruit .ymt-contact-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),.ymt-recruit .ymt-contact-form select,.ymt-recruit .ymt-contact-form textarea{display:block;width:100%;margin-top:7px;padding:12px 14px;border:1px solid #b8c9da;border-radius:6px;background:#fff;color:var(--ymt-text);font:inherit;line-height:1.6;}
.ymt-recruit .ymt-contact-form textarea{min-height:150px;resize:vertical;}
.ymt-recruit .ymt-contact-form input:focus,.ymt-recruit .ymt-contact-form select:focus,.ymt-recruit .ymt-contact-form textarea:focus{outline:3px solid rgba(46,113,203,.25);border-color:var(--ymt-blue);}
.ymt-recruit .ymt-contact-form .wpcf7-list-item{display:inline-flex;margin:8px 14px 0 0;}
.ymt-recruit .ymt-contact-form .wpcf7-list-item label{display:inline-flex;align-items:center;gap:7px;font-weight:500;}
.ymt-recruit .ymt-contact-form input[type="checkbox"],.ymt-recruit .ymt-contact-form input[type="radio"]{width:18px;height:18px;accent-color:var(--ymt-blue);}
.ymt-recruit .ymt-contact-form input[type="submit"]{display:block;width:100%;margin-top:28px;padding:16px 24px;border:0;border-radius:40px;background:var(--ymt-accent);color:#fff;font:700 15px/1.4 "Noto Sans JP",sans-serif;cursor:pointer;transition:background .2s var(--ymt-ease),transform .2s var(--ymt-ease);}
.ymt-recruit .ymt-contact-form input[type="submit"]:hover{background:#aa4000;transform:translateY(-2px);}
.ymt-recruit .ymt-contact-form .wpcf7-not-valid-tip{display:block;margin-top:6px;color:#b42318;font-size:12.5px;font-weight:700;}
.ymt-recruit .ymt-contact-form .wpcf7-response-output{margin:20px 0 0!important;padding:12px 14px!important;border-width:1px!important;font-size:13px;}
@media(max-width:900px){.ymt-recruit .ymt-contact-form{margin-top:28px;padding:24px 20px;}.ymt-recruit .ymt-contact-form .wpcf7-list-item{display:flex;margin-right:0;}}

/* 既存テーマのモバイル共通CSSとの干渉を、採用テンプレート内だけで解消 */
@media screen and (max-width:512px){
  /* テーマの nav { position:absolute } を採用ページ内のアンカー帯へ適用させない */
  body.page-template-page-templatespage-template-recruit-2026-php .ymt-recruit .ymt-anchors{position:static;right:auto;bottom:auto;display:block;width:auto;}

  /* テーマの固定フッターナビ（z-index:9999）より上に、メニューを完全表示する */
  body.page-template-page-templatespage-template-recruit-2026-php .menu__box{z-index:10000;max-height:100dvh;height:100vh;overflow-y:auto;}
  body.page-template-page-templatespage-template-recruit-2026-php .menu__btn{z-index:10001;}
}
