/* Recruitment-specific composition, including dedicated mobile layout. */
.recruit-site .visual-hero{border-bottom:0}
.recruit-site .visual-hero .wrap{position:relative;display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:auto auto;padding:70px 0 40px;gap:0 35px;align-items:center}
.recruit-site .visual-hero .hero-copy{position:relative;grid-column:1;grid-row:1;z-index:2}
.recruit-site .visual-hero h1{font-size:clamp(42px,4.8vw,70px);line-height:1.5;font-weight:600;letter-spacing:-.035em;margin:30px -100px 25px 0}
.visual-hero h1 span{background:#fff;box-shadow:12px 0 #fff,-3px 0 #fff;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.recruit-scene{grid-column:2;grid-row:1/3;margin:0;overflow:hidden;align-self:stretch;min-height:470px}
.recruit-scene img{width:100%;height:100%;object-fit:cover;object-position:48% 50%;display:block}
.hero-intro{grid-row:2;grid-column:1;padding-bottom:35px}
.recruit-site .hero-intro p{font-size:15px;line-height:2.15;margin:5px 0 25px}
.hero-caption{grid-column:2;font-size:9px;letter-spacing:.2em;text-align:right;margin-top:13px;color:#75868d}
.recruit-site .recruit-index{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:0;gap:0}
.recruit-site .recruit-index a{display:flex;align-items:center;justify-content:space-between;flex:1;padding:25px 18px;border-right:1px solid var(--line)}
.recruit-site .recruit-index a:first-child{padding-left:0}
.recruit-site .recruit-index a:last-child{border-right:0}
.recruit-site .section-heading>.eyebrow,.recruit-site .section-heading>div>.eyebrow{font-family:Arial,sans-serif;font-size:clamp(18px,3vw,38px);letter-spacing:-.025em;font-weight:500;color:var(--ink);display:block;margin-bottom:20px}
.recruit-site .work-grid{counter-reset:pillar}
.recruit-site .work-grid article{position:relative;padding-top:30px;border-top:1px solid #a9b6bb}
.recruit-site .work-grid article:before{counter-increment:pillar;content:'0' counter(pillar);display:block;font:38px/1.2 Arial,sans-serif;color:#97a4aa;margin-bottom:22px}
.recruit-site .role-card{position:relative;padding-bottom:32px!important}
.recruit-site .role-card>span:last-child{margin-top:auto}
.mobile-careers-cta{display:none}
@media(hover:hover) and (pointer:fine){.recruit-scene img{transition:transform 1s cubic-bezier(.2,.6,.3,1)}.recruit-scene:hover img{transform:scale(1.025)}}
@media(max-width:900px){.recruit-site .visual-hero .wrap{gap:0 20px}.recruit-site .visual-hero h1{font-size:45px}.recruit-scene{min-height:430px}}
@media(max-width:650px){
 .recruit-site{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
 .recruit-site .visual-hero .wrap{display:flex;flex-direction:column;align-items:stretch;width:100%;padding:38px 0 26px;gap:0}
 .recruit-site .visual-hero .hero-copy{padding:0 24px;margin-bottom:26px}
 .recruit-site .visual-hero h1{font-size:clamp(33px,9.6vw,47px);line-height:1.48;letter-spacing:-.04em;margin:19px 0 0}
 .visual-hero h1 span{box-shadow:none;background:none}
 .recruit-site .visual-hero .eyebrow{font-size:9px;letter-spacing:.16em;margin:0}
 .recruit-scene{height:250px;min-height:0;flex:none;width:calc(100% - 24px);align-self:flex-end;margin:0}
 .recruit-scene img{object-position:50% 50%}
 .hero-intro{padding:22px 24px 0}
 .recruit-site .hero-intro p{font-size:13px;line-height:2;margin:0}
 .hero-caption{display:none!important}
 .recruit-site .recruit-index{display:grid;grid-template-columns:1fr 1fr;width:calc(100% - 48px)}
 .recruit-site .recruit-index a{min-height:52px;font-size:11px;padding:15px 10px}
 .recruit-site .recruit-index a:nth-child(2n){border-right:0;padding-left:20px}
 .recruit-site .recruit-index a:nth-child(-n+2){border-bottom:1px solid var(--line)}
 .recruit-site .recruit-index a:nth-child(3){padding-left:0}
 .recruit-site .wrap{width:calc(100% - 48px)}
 .recruit-site .recruit-section{padding-block:72px;scroll-margin-top:88px}
 .recruit-site .section-heading>.eyebrow,.recruit-site .section-heading>div>.eyebrow{font-size:28px;margin-bottom:20px}
 .recruit-site h2{font-size:27px;line-height:1.65;letter-spacing:0}
 .recruit-site .split-heading{gap:18px}
 .recruit-site .split-heading>p{margin-bottom:0;font-size:14px;line-height:2}
 .recruit-site .app-visual{margin:0 -12px 38px}
 .recruit-site .work-grid{display:block}
 .recruit-site .work-grid article{padding:24px 0 30px;display:grid;grid-template-columns:42px 1fr;gap:8px 12px}
 .recruit-site .work-grid article:before{grid-column:1;grid-row:1/4;font-size:27px;margin:0}
 .recruit-site .work-grid article>span,.recruit-site .work-grid article>h3,.recruit-site .work-grid article>p{grid-column:2;margin:0}
 .recruit-site .work-grid h3{font-size:18px;line-height:1.65}
 .recruit-site .work-grid p{font-size:13px}
 .recruit-site .performance-strip .income strong{font-size:66px}
 .recruit-site .job-filters{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
 .job-filters button{min-height:48px;font-size:12px}
 .recruit-site .role-grid{border-top:1px solid var(--line)}
 .recruit-site .role-card{border:0!important;border-bottom:1px solid var(--line)!important;padding:26px 0!important;display:block}
 .recruit-site .role-card h4{font-size:22px;padding-right:25px;margin:10px 0}
 .recruit-site .role-card p{font-size:13px;line-height:1.8;margin:10px 28px 0 0}
 .recruit-site .role-card>span:last-child{font-size:11px;margin-top:20px;display:flex;justify-content:space-between}
 .recruit-site .role-card b{font-size:20px}
 .mobile-careers-cta{position:fixed;z-index:40;bottom:calc(12px + env(safe-area-inset-bottom));left:16px;right:16px;min-height:56px;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;padding:15px 24px;font-size:14px;text-decoration:none;box-shadow:0 3px 18px #19344022}
 .mobile-careers-cta>span:last-child{font-size:22px}
 body:has(.recruit-header .menu[aria-expanded=true]) .mobile-careers-cta{visibility:hidden}
 .recruit-site .role-section-nav{overflow-x:auto;justify-content:flex-start;gap:22px!important;white-space:nowrap}
 .recruit-site .role-section-nav a{min-height:36px;display:flex;align-items:center;font-size:11px}
}
@media(prefers-reduced-motion:reduce){.recruit-scene img{transition:none}}
.recruit-site h1,.recruit-site h2,.recruit-site h3,.recruit-site h4{font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN',sans-serif}
