.recruit-hero{background:#001b8b;color:#fff}
.recruit-hero-inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);align-items:end;gap:72px;padding:78px 0 72px}
.recruit-eyebrow{display:block;margin-bottom:18px;color:#bfcaff;font-size:12px;font-weight:800;letter-spacing:.18em}
.recruit-hero h1{max-width:720px;margin:0;font-size:48px;line-height:1.24;letter-spacing:-.03em}
.recruit-hero p{max-width:680px;margin:22px 0 0;color:#dbe2ff;font-size:17px;line-height:1.9}
.recruit-hero-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.34);border-bottom:1px solid rgba(255,255,255,.34)}
.recruit-hero-facts div{padding:22px 14px;border-right:1px solid rgba(255,255,255,.25)}
.recruit-hero-facts div:last-child{border-right:0}
.recruit-hero-facts b,.recruit-hero-facts span{display:block}
.recruit-hero-facts b{font-size:25px}
.recruit-hero-facts span{margin-top:5px;color:#cdd6fb;font-size:12px}
.recruit-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;padding:68px 0 92px}
.recruit-side{position:sticky;top:120px}
.recruit-side-note{margin-top:28px;padding:23px 18px;border:1px solid #dfe4f0;border-top:3px solid #001b8b}
.recruit-side-note span{color:#001b8b;font-size:11px;font-weight:800;letter-spacing:.15em}
.recruit-side-note strong{display:block;margin:8px 0 13px;color:#0a1b33;font-size:19px}
.recruit-side-note p{margin:0;color:#63728a;font-size:13px;line-height:1.9}
.recruit-side-note a{display:inline;padding:0;border:0;color:#001b8b;font-weight:600;word-break:break-all}
.recruit-heading{padding-bottom:30px;border-bottom:1px solid #dfe4f0}
.recruit-heading h2{margin:9px 0 12px;color:#0a1b33;font-size:35px;letter-spacing:-.02em}
.recruit-heading p{max-width:760px;margin:0;color:#63728a;font-size:16px;line-height:1.9}
.job-filter{display:flex;gap:30px;margin:26px 0 16px;border-bottom:1px solid #dfe4f0}
.job-filter span{position:relative;padding:0 0 14px;color:#65748a;font-size:14px;font-weight:700}
.job-filter span.active{color:#001b8b}
.job-filter span.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:#001b8b}
.job-list{border-top:2px solid #001b8b}
.job-card{border-bottom:1px solid #dfe4f0;background:#fff}
.job-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;padding:25px 22px;cursor:pointer;list-style:none}
.job-card summary::-webkit-details-marker{display:none}
.job-card[open] summary{background:#f5f7fc}
.job-title{display:flex;align-items:center;gap:20px}
.job-title>span{color:#001b8b;font-size:12px;font-weight:800;letter-spacing:.1em}
.job-title h3{margin:0;color:#0a1b33;font-size:21px}
.job-title p{margin:7px 0 0;color:#79869a;font-size:13px}
.job-meta{display:flex;align-items:center;gap:30px;text-align:right}
.job-meta strong{color:#001b8b;font-size:15px}
.job-meta i{min-width:68px;color:#68768a;font-size:12px;font-style:normal}
.job-meta i:after{content:"＋";display:inline-block;margin-left:9px;color:#001b8b;font-size:16px}
.job-card[open] .job-meta i:after{content:"－"}
.job-detail{display:grid;grid-template-columns:1fr 1fr;gap:46px;padding:30px 22px 34px;border-top:1px solid #e5e8f0}
.job-detail h4{margin:0 0 14px;color:#0a1b33;font-size:15px}
.job-detail p,.job-detail li{color:#56667d;font-size:14px;line-height:1.9}
.job-detail p{margin:0}
.job-detail ul{margin:0;padding-left:18px}
.apply-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;margin-top:44px;padding:38px 40px;background:#001b8b;color:#fff}
.apply-bar span{color:#bec9ff;font-size:11px;font-weight:800;letter-spacing:.16em}
.apply-bar h2{margin:8px 0;color:#fff;font-size:28px}
.apply-bar p{margin:0;color:#dbe2ff;font-size:14px}
.apply-bar>a{display:flex;align-items:center;gap:28px;padding:15px 20px;border:1px solid rgba(255,255,255,.5);color:#fff;font-size:14px;font-weight:800}
@media(max-width:980px){.recruit-hero-inner{grid-template-columns:1fr;gap:38px}.recruit-layout{grid-template-columns:190px minmax(0,1fr);gap:34px}.job-detail{gap:28px}}
@media(max-width:760px){.recruit-hero-inner{padding:52px 0}.recruit-hero h1{font-size:34px}.recruit-hero-facts{grid-template-columns:repeat(3,1fr)}.recruit-layout{grid-template-columns:1fr;padding:46px 0 64px}.recruit-side{position:static}.recruit-side-note{display:none}.recruit-heading h2{font-size:28px}.job-filter{gap:18px;overflow-x:auto;white-space:nowrap}.job-card summary{grid-template-columns:1fr;padding:21px 16px}.job-meta{justify-content:space-between;padding-left:36px;text-align:left}.job-detail{grid-template-columns:1fr;padding:24px 16px 28px}.apply-bar{grid-template-columns:1fr;padding:30px 24px}}
