/* Entokaku recruitment refresh — 2026-10-14.
   Presentation only. Scoped to the recruitment homepage; existing content,
   salary, links, form endpoints and common header/footer remain unchanged. */
#main.recruit-redesign{--rr-ink:#213d33;--rr-green:#17674b;--rr-leaf:#ddecad;--rr-soft:#f6f7f0;--rr-line:#dce4da;color:var(--rr-ink);background:#fff;line-height:1.9;isolation:isolate;overflow-wrap:anywhere}
#main.recruit-redesign *,#main.recruit-redesign *::before,#main.recruit-redesign *::after{box-sizing:border-box}
#main.recruit-redesign .container{width:min(1160px,calc(100% - 80px));max-width:1160px;margin-inline:auto}
#main.recruit-redesign a:focus-visible{outline:3px solid #b56300;outline-offset:5px}
#main.recruit-redesign img{max-width:100%;height:auto}
#main.recruit-redesign h2{color:var(--rr-ink);font-size:clamp(25px,2.8vw,36px);line-height:1.55;letter-spacing:.035em;text-wrap:pretty;margin:0 0 16px}
#main.recruit-redesign h3{color:var(--rr-ink);line-height:1.6;letter-spacing:.02em}
#main.recruit-redesign p{line-height:1.95}
#main.recruit-redesign .eyebrow,#main.recruit-redesign .recruit-cv-kicker{color:var(--rr-green);font-size:11px;letter-spacing:.16em;font-weight:800;margin-bottom:13px}
#main.recruit-redesign .section{padding:76px 0}
#main.recruit-redesign .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:32px}
#main.recruit-redesign .section-head>div{flex:1.1;min-width:0}
#main.recruit-redesign .section-head>p{flex:1;max-width:460px;margin:0 0 5px;color:#58695f;font-size:14px}
#main.recruit-redesign .soft-bg{background:var(--rr-soft)}
#main.recruit-redesign .recruit-cv-hero{padding:68px 0 64px;border-bottom:0;background:radial-gradient(ellipse at 95% 12%,#e7efd1 0,transparent 48%),linear-gradient(120deg,#f6f8f0,#f0f5e8);position:relative}
#main.recruit-redesign .recruit-cv-hero .cv-grid{grid-template-columns:minmax(0,1.45fr) minmax(285px,.7fr);gap:64px;align-items:center}
#main.recruit-redesign .recruit-cv-hero h2{font-size:clamp(30px,3.6vw,48px);line-height:1.55;max-width:680px;margin-bottom:22px}
#main.recruit-redesign .recruit-cv-hero .cv-lead{font-size:16px;color:#50665a;max-width:630px;line-height:2}
#main.recruit-redesign .recruit-cv-badges{gap:8px;margin:24px 0}
#main.recruit-redesign .recruit-cv-badges span{border:1px solid #d3dfc8;background:#ffffffd9;padding:8px 13px;border-radius:7px;font-size:12px;color:#314d3c}
#main.recruit-redesign .recruit-cv-actions{gap:12px}
#main.recruit-redesign .recruit-cv-actions a{min-height:54px;padding:13px 22px;border-radius:8px;font-size:13px;line-height:1.7;transition:background .15s,box-shadow .15s}
#main.recruit-redesign .recruit-cv-actions .primary{background:var(--rr-green);box-shadow:0 8px 22px #17674b15;color:white}
#main.recruit-redesign .recruit-cv-actions .secondary{border-color:#97b3a0;color:var(--rr-green);background:#fff}
#main.recruit-redesign .recruit-cv-side{border-radius:22px;border:1px solid #d5e0ce;padding:32px 28px;box-shadow:0 14px 35px #18372409;background:#fff;position:relative}
#main.recruit-redesign .recruit-cv-side::before{content:"";display:block;width:35px;height:6px;background:var(--rr-leaf);border-radius:5px;margin-bottom:22px}
#main.recruit-redesign .recruit-cv-side strong{font-size:19px;color:var(--rr-ink);margin-bottom:23px}
#main.recruit-redesign .recruit-cv-side dl{gap:15px 16px}
#main.recruit-redesign .recruit-cv-side dt{font-size:11px;color:#66786b;align-self:center}
#main.recruit-redesign .recruit-cv-side dd{font-size:14px;color:var(--rr-ink)}
#main.recruit-redesign .workstyle-nav{padding:65px 0 28px}
#main.recruit-redesign .workstyle-nav .workstyle-grid{gap:20px}
#main.recruit-redesign .workstyle-card{padding:25px 28px;border-radius:13px;border:1px solid var(--rr-line);border-left:4px solid #8fae73;box-shadow:none;background:#fff}
#main.recruit-redesign .workstyle-card small{color:#63805c;font-size:10px;letter-spacing:.14em;margin-bottom:10px}
#main.recruit-redesign .workstyle-card strong{font-size:22px;color:var(--rr-ink);margin-bottom:8px}
#main.recruit-redesign .workstyle-card span{font-size:12px;color:#617065}
#main.recruit-redesign .quick-jobs{padding:38px 0 50px}
#main.recruit-redesign .quick-jobs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#main.recruit-redesign .quick-job{padding:22px 24px;border-radius:12px;border:1px solid var(--rr-line);box-shadow:none;transition:background .15s,border-color .15s}
#main.recruit-redesign .quick-job b{font-size:15px;color:var(--rr-ink);line-height:1.6;margin-bottom:12px}
#main.recruit-redesign .quick-job .salary{font-size:14px;color:var(--rr-green);font-weight:800;line-height:1.8}
#main.recruit-redesign .quick-job em{color:#66796b;text-align:right;font-size:11px;margin-top:18px}
#main.recruit-redesign .quick-job:hover,#main.recruit-redesign .workstyle-card:hover{background:#f5f9ee;border-color:#89a674}
#main.recruit-redesign .visit-band{margin-top:35px;background:var(--rr-green);border-radius:17px;padding:32px 35px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center;box-shadow:none}
#main.recruit-redesign .visit-band h2{color:white;font-size:24px;margin:8px 0 12px}
#main.recruit-redesign .visit-band p{font-size:13px;color:#f0f6ec}
#main.recruit-redesign .visit-band a{min-height:50px;border-radius:8px;font-size:12px;white-space:normal;text-align:center;max-width:260px}
#main.recruit-redesign .recruit-benefits-v3{background:#fff}
#main.recruit-redesign .benefit-highlight-grid{gap:20px;margin:30px 0}
#main.recruit-redesign .benefit-highlight{padding:30px 27px;border:1px solid #e0e7d9;background:#f6f8ef;box-shadow:none;border-radius:14px}
#main.recruit-redesign .benefit-highlight span{font-size:10px;color:var(--rr-green);letter-spacing:.12em}
#main.recruit-redesign .benefit-highlight h3{font-size:20px;margin:14px 0}
#main.recruit-redesign .benefit-highlight p{font-size:13px;color:#56675a}
#main.recruit-redesign .benefit-grid-expanded{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
#main.recruit-redesign .benefit-grid-expanded>div{border-radius:0;border:0;border-top:1px solid #cbd9c2;padding:20px 8px 14px;background:transparent;box-shadow:none}
#main.recruit-redesign .benefit-grid-expanded b{color:#8aa273;font-size:24px;font-weight:500}
#main.recruit-redesign .benefit-grid-expanded h3{font-size:15px;margin:14px 0 10px}
#main.recruit-redesign .benefit-grid-expanded p{font-size:12px;color:#647066}
#main.recruit-redesign .benefit-common-box{padding:30px;border:1px solid var(--rr-line);background:#fbfcf8;border-radius:13px;margin-top:30px}
#main.recruit-redesign .benefit-common-box h2{font-size:23px}
#main.recruit-redesign .employment-list{display:flex;flex-wrap:wrap;gap:9px}
#main.recruit-redesign .employment-list span{background:white;border:1px solid #dde5d8;padding:7px 11px;border-radius:6px;font-size:12px}
#main.recruit-redesign .benefit-note{font-size:12px;line-height:1.9;color:#5a685d}
#main.recruit-redesign .bonus-important{font-size:13px;line-height:1.9;background:#f7f4e9;border-left:3px solid #a59b70;padding:17px 20px;color:#5b573f;border-radius:5px;margin-top:20px}
#main.recruit-redesign .staff-voices{background:#f7f7f0}
#main.recruit-redesign .voice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
#main.recruit-redesign .voice-card{border-radius:15px;border:1px solid #e1e6d9;padding:26px;background:#fff;box-shadow:none;overflow:hidden}
#main.recruit-redesign .voice-person{display:flex;align-items:center;gap:16px;border-bottom:1px solid #e7ebdf;padding-bottom:22px;margin-bottom:22px}
#main.recruit-redesign .voice-person img{width:72px;height:88px;object-fit:cover;border-radius:38px;flex-shrink:0}
#main.recruit-redesign .voice-person h3{font-size:15px;margin:0 0 7px}
#main.recruit-redesign .voice-person p{font-size:11px;margin:0;color:#6b786e}
#main.recruit-redesign .voice-body h4{font-size:13px;color:var(--rr-green);margin:22px 0 9px}
#main.recruit-redesign .voice-body p{font-size:12px;color:#536256;line-height:2;margin-bottom:18px}
#main.recruit-redesign .facility-recruit-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
#main.recruit-redesign .facility-recruit-card{border-radius:16px;overflow:hidden;border:1px solid #dee5d8;box-shadow:none;background:white}
#main.recruit-redesign .facility-recruit-photo{overflow:hidden;aspect-ratio:16/9}
#main.recruit-redesign .facility-recruit-photo img{display:block;width:100%;height:100%;object-fit:cover}
#main.recruit-redesign .facility-recruit-body{padding:29px}
#main.recruit-redesign .facility-tag{font-size:11px;background:#eef4e6;padding:6px 11px;border-radius:20px;display:inline-block;color:var(--rr-green)}
#main.recruit-redesign .facility-recruit-body h3{font-size:28px;margin:17px 0 12px}
#main.recruit-redesign .facility-recruit-body p{font-size:13px;color:#5e6b60}
#main.recruit-redesign .btn.primary{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;min-height:48px;background:var(--rr-green);color:#fff;border:1px solid var(--rr-green);border-radius:8px;text-decoration:none;font-size:12px;box-shadow:none}
#main.recruit-redesign .recruit-media-bridge{margin:0}
#main.recruit-redesign .recruit-media-bridge-card{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:45px;background:#edf3de;border:1px solid #dae5c9;border-radius:18px;padding:42px;text-decoration:none;color:var(--rr-ink);box-shadow:none}
#main.recruit-redesign .recruit-media-bridge-card h2{font-size:30px;max-width:680px}
#main.recruit-redesign .recruit-media-bridge-card p{font-size:13px;color:#56664f}
#main.recruit-redesign .recruit-media-badge{font-size:10px;font-weight:800;letter-spacing:.12em;display:inline-block;margin-bottom:20px;color:var(--rr-green)}
#main.recruit-redesign .recruit-media-badge b{background:var(--rr-green);color:#fff;padding:4px 7px;border-radius:4px;font-size:9px;margin-left:6px}
#main.recruit-redesign .recruit-media-bridge-card strong{display:inline-block;font-size:13px;margin-top:12px;padding-bottom:5px;border-bottom:1px solid var(--rr-green)}
#main.recruit-redesign .bridge-side{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;border-left:1px solid #cad9b6}
#main.recruit-redesign .bridge-side span{border-radius:50%;background:#ffffffb3;border:1px solid #d9e4c9;padding:14px 25px;letter-spacing:.14em;font-size:11px;color:#547341;font-weight:800}
#main.recruit-redesign .recruit-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:55px}
#main.recruit-redesign .recruit-intro-grid p{font-size:14px;color:#5d6b5f}
#main.recruit-redesign .recruit-intro-grid .lead{font-size:15px}
#main.recruit-redesign .recruit-message-image-v2{width:100%;height:auto;object-fit:contain;border-radius:16px;box-shadow:none}
#main.recruit-redesign .recruit-flow{display:block}
#main.recruit-redesign .recruit-flow ol{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
#main.recruit-redesign .recruit-flow li{display:block;border:0;border-top:2px solid #92ae77;border-radius:0;padding:20px 0;background:transparent;box-shadow:none}
#main.recruit-redesign .recruit-flow li b{display:block;background:transparent;color:#74985b;font-size:27px;font-weight:500;line-height:1.3;width:auto;height:auto;margin-bottom:15px}
#main.recruit-redesign .recruit-flow li strong{display:block;font-size:15px;margin-bottom:8px}
#main.recruit-redesign .recruit-flow li small{font-size:12px;line-height:1.9;color:#61705d;display:block}
#main.recruit-redesign>.contact{background:#e0edb8;padding:55px 0;color:var(--rr-ink)}
#main.recruit-redesign .contact-grid{display:flex;justify-content:space-between;align-items:center;gap:35px}
#main.recruit-redesign .contact-grid h2{font-size:29px;max-width:610px}
#main.recruit-redesign .contact-grid>div:last-child{display:flex;flex-direction:column;align-items:center;gap:14px;flex-shrink:0}
#main.recruit-redesign .contact-grid a{font-size:13px;color:var(--rr-green)}
#main.recruit-redesign .contact-grid a:first-child{display:inline-flex;background:var(--rr-green);color:white;border-radius:8px;padding:16px 26px;text-decoration:none;border:0}
#main.recruit-redesign [id]{scroll-margin-top:100px}
@media(max-width:1000px){#main.recruit-redesign .container{width:calc(100% - 48px)}#main.recruit-redesign .recruit-cv-hero .cv-grid{gap:30px;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr)}#main.recruit-redesign .recruit-cv-hero{padding:45px 0}#main.recruit-redesign .recruit-cv-side{padding:24px}#main.recruit-redesign .voice-grid{grid-template-columns:1fr}#main.recruit-redesign .voice-card{padding:30px}#main.recruit-redesign .voice-body{display:grid;grid-template-columns:150px 1fr;gap:14px 20px}#main.recruit-redesign .voice-body h4,#main.recruit-redesign .voice-body p{margin:0}#main.recruit-redesign .benefit-highlight-grid{grid-template-columns:1fr 1fr 1fr;gap:14px}#main.recruit-redesign .benefit-highlight{padding:22px}#main.recruit-redesign .benefit-grid-expanded{grid-template-columns:1fr 1fr}#main.recruit-redesign .recruit-media-bridge-card{grid-template-columns:minmax(0,1fr) 150px;gap:25px;padding:32px}#main.recruit-redesign .recruit-intro-grid{gap:28px}}
@media(max-width:760px){#main.recruit-redesign .section{padding:50px 0}#main.recruit-redesign .section-head{display:block;margin-bottom:25px}#main.recruit-redesign .section-head>p{max-width:none;font-size:13px}#main.recruit-redesign .recruit-cv-hero .cv-grid{grid-template-columns:1fr;gap:30px}#main.recruit-redesign .recruit-cv-hero h2{max-width:590px}#main.recruit-redesign .recruit-cv-side dl{grid-template-columns:auto 1fr auto 1fr;gap:12px}#main.recruit-redesign .recruit-cv-side strong{margin-bottom:18px}#main.recruit-redesign .recruit-cv-side::before{margin-bottom:15px}#main.recruit-redesign .quick-jobs-grid{grid-template-columns:1fr 1fr}#main.recruit-redesign .workstyle-nav .workstyle-grid{grid-template-columns:1fr 1fr}#main.recruit-redesign .workstyle-card{padding:22px}#main.recruit-redesign .workstyle-card strong{font-size:19px}#main.recruit-redesign .visit-band{grid-template-columns:1fr;padding:28px}#main.recruit-redesign .visit-band a{max-width:none;width:fit-content}#main.recruit-redesign .benefit-highlight-grid{grid-template-columns:1fr}#main.recruit-redesign .facility-recruit-grid,#main.recruit-redesign .recruit-intro-grid{grid-template-columns:1fr}#main.recruit-redesign .recruit-media-bridge-card{grid-template-columns:1fr}#main.recruit-redesign .bridge-side{flex-direction:row;border-left:0;border-top:1px solid #cad9b6;padding-top:22px}#main.recruit-redesign .recruit-flow ol{grid-template-columns:1fr 1fr}#main.recruit-redesign .contact-grid{display:block}#main.recruit-redesign .contact-grid>div:last-child{align-items:flex-start;margin-top:22px}}
@media(max-width:480px){#main.recruit-redesign .container{width:calc(100% - 36px)}#main.recruit-redesign h2{font-size:25px}#main.recruit-redesign .eyebrow,#main.recruit-redesign .recruit-cv-kicker{font-size:9px;letter-spacing:.13em}#main.recruit-redesign .recruit-cv-hero{padding:35px 0}#main.recruit-redesign .recruit-cv-hero h2{font-size:30px;line-height:1.6}#main.recruit-redesign .recruit-cv-hero .cv-lead{font-size:13px;line-height:2}#main.recruit-redesign .recruit-cv-badges{gap:6px;margin:20px 0}#main.recruit-redesign .recruit-cv-badges span{font-size:10px;padding:7px 9px}#main.recruit-redesign .recruit-cv-actions a{width:100%;font-size:12px;min-height:50px}#main.recruit-redesign .recruit-cv-side{padding:24px 22px;border-radius:15px}#main.recruit-redesign .recruit-cv-side dl{grid-template-columns:auto 1fr;gap:12px 20px}#main.recruit-redesign .workstyle-nav{padding:42px 0 20px}#main.recruit-redesign .workstyle-nav .workstyle-grid{grid-template-columns:1fr;gap:12px}#main.recruit-redesign .workstyle-card{padding:21px 23px}#main.recruit-redesign .quick-jobs{padding:28px 0 38px}#main.recruit-redesign .quick-jobs-grid{grid-template-columns:1fr;gap:12px}#main.recruit-redesign .quick-job{padding:21px}#main.recruit-redesign .quick-job b{font-size:14px}#main.recruit-redesign .quick-job .salary{font-size:14px}#main.recruit-redesign .quick-job em{margin-top:13px}#main.recruit-redesign .visit-band{padding:24px;gap:20px}#main.recruit-redesign .visit-band h2{font-size:21px}#main.recruit-redesign .visit-band p{font-size:12px}#main.recruit-redesign .visit-band a{width:100%;font-size:11px;padding:12px}#main.recruit-redesign .benefit-highlight{padding:25px}#main.recruit-redesign .benefit-highlight h3{font-size:19px}#main.recruit-redesign .benefit-grid-expanded{gap:12px}#main.recruit-redesign .benefit-grid-expanded>div{padding:18px 2px 8px}#main.recruit-redesign .benefit-grid-expanded h3{font-size:14px}#main.recruit-redesign .benefit-grid-expanded p{font-size:11px}#main.recruit-redesign .benefit-common-box{padding:23px 19px}#main.recruit-redesign .benefit-common-box h2{font-size:22px}#main.recruit-redesign .employment-list span{font-size:11px;padding:6px 9px}#main.recruit-redesign .benefit-note{font-size:11px}#main.recruit-redesign .bonus-important{font-size:12px;padding:15px}#main.recruit-redesign .voice-card{padding:23px}#main.recruit-redesign .voice-body{display:block}#main.recruit-redesign .voice-body h4{margin:20px 0 8px}#main.recruit-redesign .voice-body p{font-size:12px;line-height:2}#main.recruit-redesign .facility-recruit-body{padding:24px}#main.recruit-redesign .facility-tag{font-size:10px}#main.recruit-redesign .facility-recruit-body p{font-size:12px}#main.recruit-redesign .recruit-media-bridge-card{padding:25px;gap:20px}#main.recruit-redesign .recruit-media-bridge-card h2{font-size:25px}#main.recruit-redesign .bridge-side{gap:8px}#main.recruit-redesign .bridge-side span{font-size:9px;padding:12px 17px}#main.recruit-redesign .recruit-intro-grid p{font-size:13px}#main.recruit-redesign .recruit-flow ol{gap:18px}#main.recruit-redesign .recruit-flow li strong{font-size:14px}#main.recruit-redesign .recruit-flow li small{font-size:11px}#main.recruit-redesign .contact-grid h2{font-size:26px}#main.recruit-redesign>.contact{padding:42px 0}}
@media(prefers-reduced-motion:reduce){#main.recruit-redesign *,#main.recruit-redesign *::before,#main.recruit-redesign *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
#main.recruit-redesign>.subhero{background:#fff;padding:38px 0 34px;border-bottom:1px solid #e4e9df;min-height:0;color:var(--rr-ink)}
#main.recruit-redesign>.subhero h1{font-size:clamp(29px,3vw,39px);line-height:1.5;letter-spacing:.08em;color:var(--rr-ink);margin:8px 0 11px}
#main.recruit-redesign>.subhero .eyebrow{margin-bottom:5px;color:var(--rr-green)}
#main.recruit-redesign>.subhero p:last-child{font-size:13px;color:#66745f;margin:0}
@media(max-width:480px){#main.recruit-redesign>.subhero{padding:26px 0}#main.recruit-redesign>.subhero p:last-child{font-size:11px}}

/* Approved employee-referral card. Keep recipient next to the amount. */
#main.recruit-redesign .recruit-referral{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(220px,.75fr);gap:24px 35px;margin-top:30px;padding:34px;border:1px solid #bfd2ac;border-radius:16px;background:#f1f6e7;color:var(--rr-ink)}
#main.recruit-redesign .recruit-referral-copy h2{font-size:27px;margin-bottom:13px}
#main.recruit-redesign .recruit-referral-copy p:not(.eyebrow){font-size:13px;line-height:1.95;margin:0 0 12px}
#main.recruit-redesign .recruit-referral-reward{align-self:center;text-align:center;border-left:1px solid #c8d9b9;padding:16px 0 16px 24px}
#main.recruit-redesign .recruit-referral-recipient{display:inline-block;font-size:13px;font-weight:800;color:var(--rr-green)}
#main.recruit-redesign .recruit-referral-amount{font-size:clamp(38px,4vw,54px);line-height:1.4;font-weight:800;letter-spacing:.01em;color:var(--rr-green);margin:5px 0}
#main.recruit-redesign .recruit-referral-amount span{font-size:20px;margin-left:5px}
#main.recruit-redesign .recruit-referral-gross{font-size:10px;line-height:1.8;margin:0;color:#536347}
#main.recruit-redesign .recruit-referral-notice{grid-column:1/-1;border-top:1px solid #c8d9b9;padding-top:20px;font-size:13px}
#main.recruit-redesign .recruit-referral-notice strong{color:#354f2d}
#main.recruit-redesign .recruit-referral-notice p{font-size:12px;margin:9px 0 0;color:#536347}
@media(max-width:760px){#main.recruit-redesign .recruit-referral{grid-template-columns:1fr;padding:28px;gap:20px}#main.recruit-redesign .recruit-referral-reward{border-left:0;border-top:1px solid #c8d9b9;padding:22px 0 0}#main.recruit-redesign .recruit-referral-copy h2{font-size:24px}}
@media(max-width:480px){#main.recruit-redesign .recruit-referral{padding:24px 20px}#main.recruit-redesign .recruit-referral-copy h2{font-size:23px}#main.recruit-redesign .recruit-referral-copy p:not(.eyebrow){font-size:12px}#main.recruit-redesign .recruit-referral-notice{font-size:12px}#main.recruit-redesign .recruit-referral-notice p{font-size:11px}}
