.referral-page{margin:0;background:#fff;color:#333;font-family:"Noto Sans JP",sans-serif}.referral-page *{box-sizing:border-box}.referral-main img{display:block;max-width:100%;height:auto}.referral-page p,.referral-page h1,.referral-page h2,.referral-page h3,.referral-page figure,.referral-page blockquote{margin:0}.referral-main{overflow:hidden}.referral-inner{width:min(1166px,calc(100% - 64px));margin-inline:auto}.referral-breadcrumb{display:flex;gap:12px;align-items:center;width:min(1166px,calc(100% - 64px));margin:0 auto;padding:28px 0;font-size:14px;font-weight:500;letter-spacing:.08em}.referral-breadcrumb a{text-decoration:underline;text-underline-offset:.25em}.referral-breadcrumb span:last-child{color:#777}.referral-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(420px,.8fr);min-height:620px;background:#333;color:#fff}.referral-hero__image{min-height:620px}.referral-hero__image img{width:100%;height:100%;object-fit:cover}.referral-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:64px clamp(40px,5vw,80px)}.referral-kicker,.referral-eyebrow{color:#f7e730;font:700 18px/1.4 "Jost","Noto Sans JP",sans-serif;letter-spacing:.16em}.referral-hero h1{margin:20px 0 32px;font-size:clamp(38px,4vw,58px);line-height:1.35;letter-spacing:.1em}.referral-hero h1 small{display:block;margin-bottom:4px;font-size:.5em}.referral-hero__copy>p:last-child{font-size:18px;font-weight:500;line-height:2;letter-spacing:.08em}.referral-section{padding:110px 0}.referral-heading{text-align:center}.referral-heading>p{color:#999;font:700 16px/1.4 "Jost",sans-serif;letter-spacing:.18em}.referral-heading h2{margin-top:8px;font-size:clamp(36px,4.5vw,60px);line-height:1.3;letter-spacing:.08em}.referral-heading>span{display:block;margin-top:8px;font-size:20px;font-weight:700;letter-spacing:.08em}.referral-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px;margin-top:64px}.referral-split figure{overflow:hidden;border-radius:2px}.referral-split figure img{width:100%;max-height:490px;object-fit:cover}.referral-copy h3,.referral-copy h2{display:inline;background:linear-gradient(transparent 62%,#f7e730 62%);font-size:clamp(28px,3vw,42px);line-height:1.6;letter-spacing:.06em}.referral-copy>p,.referral-copy blockquote p{margin-top:28px;font-size:17px;font-weight:500;line-height:2;letter-spacing:.07em}.referral-apply{background:#f7e730}.referral-split--reverse{margin-top:0}.referral-apply .referral-eyebrow{color:#333}.referral-apply .referral-copy h2{display:block;background:none;margin-top:6px}.referral-jobs{font-size:22px!important;font-weight:800!important;line-height:1.8!important}.referral-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.referral-button{display:inline-flex;min-width:260px;min-height:66px;align-items:center;justify-content:space-between;gap:24px;padding:18px 28px;border:2px solid #333;background:#333;color:#fff;font-size:18px;font-weight:800;letter-spacing:.12em;box-shadow:7px 7px 0 #fff;transition:transform .2s,box-shadow .2s}.referral-button:hover{transform:translate(3px,3px);box-shadow:4px 4px 0 #fff}.referral-button:focus-visible,.referral-text-link:focus-visible{outline:3px solid #333;outline-offset:4px}.referral-text-link{font-weight:700;text-decoration:underline;text-underline-offset:.3em}.referral-selection{padding:100px 0}.referral-selection__panel{position:relative;overflow:hidden;padding:64px;background:#eee}.referral-selection__panel:after{position:absolute;right:-70px;bottom:-110px;width:300px;height:300px;border:65px solid #fff;border-radius:50%;content:""}.referral-selection__panel>*{position:relative;z-index:1}.referral-selection .referral-eyebrow{color:#777}.referral-selection h2{margin-top:6px;font-size:40px}.referral-selection__lead{margin:28px 0 22px;font-size:clamp(24px,3.4vw,46px);font-weight:800;line-height:1.5}.referral-selection__panel>p:last-child{font-size:18px;font-weight:600;line-height:1.9}.referral-selection strong{background:#f7e730}.referral-voice{padding-top:80px}.referral-split--voice{grid-template-columns:.8fr 1.35fr}.referral-split--voice figure img{aspect-ratio:1/1;object-position:center 18%}.referral-copy blockquote p:first-child{margin-top:0}.referral-voice__name{margin-top:32px!important;font-size:22px!important;font-weight:800!important}.referral-voice__name small{display:block;font-size:14px}.referral-voice__name span{margin-left:12px;font-size:14px}.referral-flow{padding:100px 0;background:#f7e730}.referral-flow .referral-eyebrow{color:#333}.referral-flow h2{margin:4px 0 46px;font-size:48px}.referral-flow ol{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:0;padding:0;list-style:none}.referral-flow li{position:relative;display:flex;min-height:160px;flex-direction:column;justify-content:center;padding:32px;background:#fff;box-shadow:7px 7px 0 #333;text-align:center}.referral-flow li:not(:last-child):after{position:absolute;z-index:2;right:-24px;top:50%;width:22px;height:22px;border-top:4px solid #333;border-right:4px solid #333;content:"";transform:translateY(-50%) rotate(45deg)}.referral-flow li span{font:700 15px/1.4 "Jost",sans-serif;letter-spacing:.12em}.referral-flow li strong{margin-top:10px;font-size:22px;letter-spacing:.07em}.referral-closing{padding:120px 0;background:#333;color:#fff;text-align:center}.referral-closing h2{margin:18px 0 28px;font-size:clamp(36px,5vw,64px);line-height:1.45;letter-spacing:.08em}.referral-closing p:not(.referral-kicker){font-size:19px;font-weight:600;line-height:2;letter-spacing:.08em}.referral-button--light{margin-top:42px;border-color:#333;background:#fff;color:#333;box-shadow:7px 7px 0 #f7e730}.referral-button--light:hover{box-shadow:4px 4px 0 #f7e730}.referral-page>.site-footer ul{margin:0;padding:0;list-style:none}
@media(max-width:900px){.referral-inner,.referral-breadcrumb{width:min(calc(100% - 32px),680px)}.referral-breadcrumb{padding:20px 0;font-size:13px}.referral-hero{display:flex;min-height:0;flex-direction:column}.referral-hero__image{min-height:0;height:72vw;max-height:430px}.referral-hero__copy{padding:42px 24px 52px}.referral-hero h1{margin:14px 0 22px;font-size:36px}.referral-hero__copy>p:last-child{font-size:15px;line-height:1.9}.referral-section{padding:72px 0}.referral-heading h2{font-size:36px}.referral-heading>span{font-size:16px}.referral-split,.referral-split--voice{grid-template-columns:1fr;gap:34px;margin-top:42px}.referral-split--reverse{margin-top:0}.referral-split--reverse figure{order:2}.referral-copy h3,.referral-copy h2{font-size:27px}.referral-copy>p,.referral-copy blockquote p{margin-top:20px;font-size:15px;line-height:1.9}.referral-jobs{font-size:17px!important}.referral-actions{align-items:flex-start;flex-direction:column}.referral-button{width:100%;min-width:0}.referral-selection{padding:64px 0}.referral-selection__panel{padding:38px 24px}.referral-selection h2{font-size:30px}.referral-selection__lead{font-size:23px}.referral-selection__panel>p:last-child{font-size:15px}.referral-split--voice figure{width:86%;margin:auto}.referral-voice__name span{display:block;margin:4px 0 0}.referral-flow{padding:72px 0}.referral-flow h2{margin-bottom:34px;font-size:36px}.referral-flow ol{grid-template-columns:1fr;gap:28px}.referral-flow li{min-height:118px}.referral-flow li:not(:last-child):after{right:50%;top:auto;bottom:-20px;transform:translateX(50%) rotate(135deg)}.referral-flow li strong{font-size:20px}.referral-closing{padding:84px 0}.referral-closing h2{font-size:34px}.referral-closing p:not(.referral-kicker){font-size:15px}.referral-page>.site-footer{margin-top:0}}
@media(max-width:360px){.referral-inner,.referral-breadcrumb{width:calc(100% - 24px)}.referral-hero__copy{padding-inline:18px}.referral-hero h1{font-size:31px}.referral-heading h2{font-size:31px}.referral-selection__panel{padding-inline:18px}.referral-flow li{padding-inline:18px}.referral-closing h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.referral-button{transition:none}}

/* Referral-specific geometry repairs. Shared chrome keeps its canonical rem scale. */
@media(min-width:768px){html:has(body.referral-page){font-size:calc(100vw / 136.6)}}

@media(min-width:901px){
.referral-hero h1{max-width:100%;font-size:clamp(38px,3.3vw,56px);letter-spacing:.06em;white-space:nowrap}
.referral-apply .referral-button{border-color:#333;background:#fff;color:#333;box-shadow:7px 7px 0 #333}
.referral-apply .referral-button:hover{box-shadow:4px 4px 0 #333}
.referral-flow ol{gap:48px}
.referral-flow li:not(:last-child):after{right:-39px}
}

@media(max-width:767px){
.referral-selection__panel>p:last-child strong{display:inline-block;max-width:100%;font-size:clamp(13px,3.7vw,15px);letter-spacing:.04em;white-space:nowrap}
.referral-flow ol{gap:56px}
.referral-flow li:not(:last-child):after{bottom:-36px}
.referral-actions{width:100%;align-items:center;gap:24px;margin-top:28px}
.referral-button{box-sizing:border-box;width:min(293px,calc(100% - 7px));min-width:260px;height:52px;min-height:52px;margin-inline:auto;padding:0 24px;gap:12px;font-size:16px;line-height:24px;letter-spacing:1.6px}
.referral-apply .referral-button{border-color:#333;background:#fff;color:#333;box-shadow:7px 7px 0 #333}
.referral-apply .referral-button:hover{box-shadow:4px 4px 0 #333}
.referral-closing .referral-button{margin-top:32px}
}
