/* 採用応募フォーム（新）専用 */
.recruit-entry{
  --ink:#0e1626;--navy:#16213a;--navy-soft:#3c4b6b;--muted:#66738d;
  --paper:#fff;--band:#eef2f8;--navy-band:#16213a;
  --blue:#1a54a8;--blue-deep:#0f3d80;--blue-soft:#e8f0fb;
  --hi:#ef6c12;--hi-deep:#d65a06;--hi-soft:#fff1e6;
  --safe:#1c8a5b;--safe-soft:#e6f5ee;
  --line:#dce3ee;--r:16px;
  --jp:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic Medium","Yu Gothic","Noto Sans JP",Meiryo,sans-serif;
}
.recruit-entry, .recruit-entry *{box-sizing:border-box}
.recruit-entry{margin:0;background:var(--band);color:var(--navy);font-family:var(--jp);font-size:19px;line-height:1.85;-webkit-font-smoothing:antialiased;text-wrap:pretty;padding-top:130px}
@media(max-width:991px){.recruit-entry{padding-top:70px}}
.recruit-entry a{color:var(--blue)}.recruit-entry a:hover{color:var(--blue-deep)}
.recruit-entry .wrap{width:min(720px,92vw);margin:0 auto}


.recruit-entry .topbar{background:#fff;border-bottom:1px solid var(--line)}
.recruit-entry .topbar .row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px clamp(12px,2vw,24px)}
.recruit-entry .hd-logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.recruit-entry .hd-logo .emblem{display:block;width:50px;height:50px;flex-shrink:0;border-radius:50%}
.recruit-entry .hd-logo .nm{font-weight:900;font-size:clamp(18px,2.4vw,25px);color:#1b1b1b;letter-spacing:.04em;line-height:1.2;white-space:nowrap}
.recruit-entry .hd-logo .en{display:block;font-weight:600;letter-spacing:.3em;font-size:12px;color:#8a8f98;margin-top:3px}
.recruit-entry .hd-tel{display:none;align-items:center;gap:10px;text-decoration:none;color:#1b1b1b}
.recruit-entry .hd-tel .ic{color:var(--blue);display:grid;place-items:center}
.recruit-entry .hd-tel .no{font-weight:900;font-size:29px;line-height:1;letter-spacing:.01em}
.recruit-entry .hd-tel .hr{display:block;font-size:12.5px;font-weight:700;color:#5b6470;text-align:right;margin-top:4px}
@media(min-width:760px){.recruit-entry .hd-tel{display:flex}}


.recruit-entry .head{background:var(--navy-band);color:#fff;padding:34px 0 30px;text-align:center}
.recruit-entry .head .eyebrow{font-weight:700;letter-spacing:.18em;font-size:14px;color:#ffb473}
.recruit-entry .head h1{margin:10px 0 0;font-size:clamp(26px,5vw,36px);font-weight:900;line-height:1.4}
.recruit-entry .head p{margin:12px 0 0;color:#d3dcec;font-size:17px}
.recruit-entry .steps3{display:flex;justify-content:center;gap:8px;margin-top:22px;flex-wrap:wrap}
.recruit-entry .steps3 span{font-size:14px;font-weight:900;color:#b9c5db;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:5px 16px}
.recruit-entry .steps3 span.on{background:var(--hi);border-color:var(--hi);color:#fff}

.recruit-entry main{padding:26px 0 46px}
.recruit-entry .formcard{background:#fff;border-radius:var(--r);padding:clamp(22px,4vw,36px);box-shadow:0 18px 40px -26px rgba(16,33,64,.5)}
.recruit-entry .formcard h2{margin:0;font-size:clamp(21px,3.6vw,27px);font-weight:900;color:var(--ink)}
.recruit-entry .formcard .fl{margin-top:10px;font-size:17px;color:var(--navy-soft)}
.recruit-entry .badge{display:inline-flex;align-items:center;gap:9px;background:#ffe9d6;color:#b64d00;font-weight:900;font-size:16px;padding:8px 16px;border-radius:999px;margin-bottom:14px}
.recruit-entry .badge .dot{width:9px;height:9px;border-radius:50%;background:var(--hi)}
.recruit-entry .field{margin-top:34px}
.recruit-entry .field label{display:flex;flex-flow:row nowrap;align-items:center;justify-content:flex-start;gap:10px;width:100%;font-weight:900;font-size:18px;line-height:1.5;color:var(--ink);margin:0 0 5px}
.recruit-entry .field > label + br{display:none}
.recruit-entry .req{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;margin:0;font-size:13px;line-height:1.4;font-weight:900;color:#fff;background:var(--hi);padding:2px 10px;border-radius:6px}
.recruit-entry .opt{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;font-size:13px;line-height:1.4;font-weight:900;color:var(--muted);background:var(--band);padding:2px 10px;border-radius:6px}
.recruit-entry .field input, .recruit-entry .field select{display:block;margin:0;width:100%;font-family:inherit;font-size:19px;font-weight:500;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:12px;padding:16px;min-height:62px;-webkit-appearance:none;appearance:none}
.recruit-entry .field select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%233c4b6b' stroke-width='2.5'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 14px center}
.recruit-entry .field input:focus, .recruit-entry .field select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}
.recruit-entry .field.err input, .recruit-entry .field.err select{border-color:#c62828;background:#fff6f6}
.recruit-entry .field .msg{display:none;margin-top:8px;color:#c62828;font-weight:900;font-size:16px}
.recruit-entry .field.err .msg{display:block}
.recruit-entry .field .hint{margin-top:6px;font-size:15px;color:var(--muted)}
.recruit-entry .submit{width:100%;margin-top:28px;background:var(--hi);color:#fff;border:0;border-radius:14px;padding:22px;font-family:inherit;font-weight:900;font-size:22px;cursor:pointer;min-height:76px;box-shadow:0 14px 30px -12px rgba(239,108,18,.7)}
.recruit-entry .submit:hover{background:var(--hi-deep)}
.recruit-entry .privacy{margin-top:14px;font-size:15px;color:var(--muted);text-align:center}
.recruit-entry .telbox{margin-top:20px;background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:22px;text-align:center}
.recruit-entry .telbox .t{font-weight:900;font-size:17px;color:var(--ink)}
.recruit-entry .telbox a{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;text-decoration:none;color:var(--ink);font-weight:900;font-size:30px;line-height:1.2}
.recruit-entry .telbox a .ic{color:var(--hi)}
.recruit-entry .telbox .hr{margin-top:6px;font-size:15px;color:var(--muted)}
.recruit-entry .back{display:block;text-align:center;margin-top:22px;font-size:16px;font-weight:700}
.recruit-entry .done{display:none;text-align:center;padding:12px 0 6px}
.recruit-entry .done .ck{width:84px;height:84px;border-radius:50%;background:var(--safe-soft);color:var(--safe);display:grid;place-items:center;margin:0 auto 18px}
.recruit-entry .done h2{font-size:clamp(24px,4.6vw,32px)}
.recruit-entry .done p{font-size:19px;color:var(--navy-soft);margin-top:14px;line-height:1.9}
.recruit-entry .done .tel-note{margin-top:22px;background:var(--band);border-radius:12px;padding:20px;font-size:17px;font-weight:700;color:var(--navy)}
.recruit-entry .done .tel-note b{font-size:26px;color:var(--ink);display:block;margin-top:4px}
.recruit-entry .sent .formbody{display:none}
.recruit-entry .sent .done{display:block}
.recruit-entry footer{background:#0c1424;color:#9fadc6;padding:30px 0;font-size:14.5px;line-height:1.9;text-align:center}
.recruit-entry footer a{color:#cfd9ea;text-decoration:none}.recruit-entry footer a:hover{color:#fff}
.recruit-entry footer .nm{color:#fff;font-weight:900;font-size:18px}

.recruit-entry .form-alert {
  background: #fff2f2;
  border: 2px solid #c62828;
  border-radius: 10px;
  color: #a31919;
  font-weight: 700;
  margin-top: 20px;
  padding: 14px 16px;
}
.recruit-entry .mw_wp_form .error {
  color: #c62828;
  display: block;
  font-size: 16px;
  font-weight: 900;
  margin-top: 8px;
}
.recruit-entry .is-submitting .submit { cursor: wait; filter: grayscale(.2); opacity: .7; pointer-events: none; }
.recruit-entry .mw_wp_form_complete .done { display: block; }
.recruit-entry .website-field {
  height: 1px;
  left: -10000px;
  overflow: hidden;
  position: absolute;
  top: auto;
  width: 1px;
}
.recruit-entry .recruit-password { min-height: 45vh; padding-top: 80px; padding-bottom: 80px; }
.recruit-entry .recruit-password h1 { margin-bottom: 20px; }
.recruit-entry .recruit-password form { margin-top: 24px; }
