:root{--navy:#14233A;--yellow:#F4C542;--gray:#f2f4f6;--pale:#fff5cf;--blue:#52677c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--navy);background:white;font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.85;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c79300;outline-offset:5px}.preview{padding:5px 24px;background:var(--pale);font-size:12px;text-align:center;letter-spacing:.04em}.preview span{margin-left:14px}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:16px max(28px,calc((100% - 1160px)/2));gap:24px;background:#fff;border-bottom:1px solid #e2e6ea}.brand{display:flex;align-items:baseline;font-weight:900;font-size:27px;white-space:nowrap;letter-spacing:-.04em}.brand span{font-size:21px;margin-left:4px}.brand small{font-size:10px;letter-spacing:.1em;margin-left:17px}nav{display:flex;gap:25px;font-size:13px;font-weight:700}nav a:hover{box-shadow:0 3px var(--yellow)}.menu{display:none}.wrap{max-width:1160px;padding:0 28px;margin:auto}section{padding:100px 0;scroll-margin-top:0}.navy{background:var(--navy);color:white}.blue{background:var(--blue);color:white}.pale{background:var(--pale)}.gray{background:var(--gray)}.yellow{color:var(--yellow)}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;margin:0 0 22px;line-height:1.5}.navy>.wrap>.eyebrow,.hero .eyebrow{color:var(--yellow)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,5.2vw,68px);line-height:1.45;letter-spacing:.02em;margin-bottom:28px}h2{font-size:clamp(27px,3vw,40px);line-height:1.55;letter-spacing:.02em;margin-bottom:40px}h3{font-size:23px;line-height:1.6;margin-bottom:14px}.hero{padding:82px 0 25px;min-height:665px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-180px;top:160px;width:480px;height:480px;border:1px solid #ffffff12;transform:rotate(35deg);pointer-events:none}.hero-copy{color:#dae0e9;max-width:700px;margin-bottom:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;min-height:58px;padding:15px 27px;background:var(--yellow);color:var(--navy);border:0;font-weight:800;border-radius:2px;transition:background .2s,transform .2s}.button:hover{background:#ffda69;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff29;margin-top:65px;padding-top:20px;font-size:10px;letter-spacing:.14em}.mobile{display:none}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.two{display:grid;grid-template-columns:1fr 1fr;gap:28px}.features article{padding:30px;min-height:260px}.card-no{display:block;font-size:12px;opacity:.65;margin-bottom:18px}.features h3{font-size:38px;margin-bottom:15px}.features .catch{font-size:21px;font-weight:800;margin-bottom:6px}.features p:last-child{font-size:14px;margin-bottom:0}.flow{max-width:820px;margin:0 auto;text-align:center}.main-source{display:flex;flex-direction:column;padding:27px;gap:3px}.main-source strong{font-size:28px}.main-source span{color:var(--yellow);font-weight:700}.main-source small{color:#d4dce5}.sources{gap:12px;margin-top:15px}.sources div{border:1px solid #c5cdd5;background:white;padding:17px 9px;font-weight:700}.flow-lines{font-size:33px;line-height:1.7;color:#8191a2}.destination{padding:13px;border:2px solid var(--navy);background:#fff;font-weight:900;font-size:27px}.closing{text-align:center;font-size:22px;font-weight:800;margin:35px 0 0}.intro{margin:-18px 0 38px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.work-card{background:white;color:var(--navy);overflow:hidden}.photo{height:175px;margin:16px 16px 0;border:1px dashed #aeb9c6;background:#edf0f3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:#57687b;padding:15px}.photo span{font-size:10px;letter-spacing:.13em}.photo strong{font-size:16px}.photo small{font-size:11px}.work-text{padding:24px 28px 27px}.work-text .eyebrow{font-size:10px;margin-bottom:10px;color:#6b7b8c}.work-text h3{font-size:22px}.work-text p:last-child{margin-bottom:0;line-height:1.95}.statement{padding:45px 48px}.statement h3{font-size:clamp(27px,3vw,38px);line-height:1.6}.statement p:last-child{margin-bottom:0}.skills{text-align:center;margin-top:25px}.skills p{font-weight:800;margin:0;padding:14px 0}.skills span{display:inline-block;font-size:24px;margin-right:12px}.training-lead{border-left:6px solid var(--yellow);padding:0 0 0 25px;margin-bottom:35px}.training-lead strong{font-size:28px}.training-lead strong span{background:linear-gradient(transparent 65%,var(--pale) 65%)}.training-lead p{margin:5px 0 0}.steps article{padding:22px 28px}.steps small{font-size:11px;letter-spacing:.12em}.steps h3{margin:9px 0 0}.support{margin-top:45px;border-top:1px solid #d6dce2;border-bottom:1px solid #d6dce2;padding:38px 0;display:grid;grid-template-columns:1fr 1.4fr;gap:35px}.support .eyebrow{margin-bottom:12px;font-size:10px}.support h3{font-size:28px}.support strong{font-size:18px}.support-list{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:0 0 18px;gap:10px}.support-list li{background:var(--gray);padding:13px 15px;font-size:14px;font-weight:700}.support-list li:before{content:"✓";margin-right:10px;color:#9c7400}.support p:last-child{font-size:14px;margin-bottom:0}.career-tree{max-width:880px;margin:0 auto}.career-top{max-width:380px;margin:auto;text-align:center}.career-top article{border:1px solid #798493;padding:14px 20px;display:grid;grid-template-columns:1fr 1.4fr;align-items:center}.career-top small{grid-column:1/-1;font-size:10px;letter-spacing:.1em;text-align:left;color:var(--yellow)}.career-top h3{margin:0;font-size:21px;text-align:left}.career-top p{margin:0;font-size:14px;text-align:right}.career-top strong{font-size:34px}.next{display:block;color:var(--yellow);line-height:1.5}.branch{height:130px;position:relative;margin-top:0}.branch svg{width:100%;height:100%;overflow:visible}.branch path{stroke:var(--yellow);fill:none;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:1100;stroke-dashoffset:1100;transition:stroke-dashoffset 1.4s ease}.branch p{position:absolute;top:40px;left:50%;transform:translateX(-50%);text-align:center;font-size:15px;line-height:1.7;background:var(--navy);padding:0 15px;white-space:nowrap}.routes{gap:38px}.routes article{border-top:4px solid var(--yellow);background:#22324a;padding:30px;opacity:.55;transform:translateY(10px);transition:opacity .8s .5s,transform .8s .5s}.routes small{font-size:11px;letter-spacing:.05em}.routes h3{font-size:27px;margin-top:10px}.routes p{font-size:14px;margin-bottom:15px}.routes .salary{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;padding:15px 0;color:var(--yellow);font-weight:700}.salary strong{font-size:53px;line-height:1.4;letter-spacing:-.03em}.career-tree.visible .branch path{stroke-dashoffset:0}.career-tree.visible .routes article{opacity:1;transform:none}.career-note{text-align:center;margin:35px 0 12px;font-size:15px}.fine{font-size:12px;color:#c5cfdb;margin-bottom:0}.promises{margin:25px 0}.promises p{border-left:2px solid var(--yellow);padding-left:20px}.promises strong{font-size:25px;color:var(--yellow)}.style-notes p{padding:20px;background:#fff;font-weight:700;margin:20px 0 0;border-left:3px solid #a4b2c1}.spec{display:grid;grid-template-columns:230px 1fr;margin:0;border-top:2px solid var(--navy)}.spec dt,.spec dd{padding:20px 24px;border-bottom:1px solid #d4dce2;margin:0}.spec dt{background:#f3f5f7;font-weight:700}.spec dd{background:white}.review-note{padding:22px 25px;background:var(--pale);margin-top:25px;font-size:13px}.review-note p{margin:5px 0 0}.faq-list{border-top:1px solid #cbd3dc}details{border-bottom:1px solid #cbd3dc;background:white}summary{cursor:pointer;list-style:none;padding:23px 55px 23px 58px;font-weight:700;position:relative}summary::-webkit-details-marker{display:none}summary:before{content:"Q";position:absolute;left:23px;color:#a37a00;font-size:20px;top:17px}summary:after{content:"＋";position:absolute;right:22px;top:22px;font-size:19px}details[open] summary:after{content:"−"}details[open] summary{color:#566b82}details>p{padding:0 55px 25px 58px;margin:0;font-size:15px}.apply{margin-top:70px;padding:55px;text-align:center}.apply h2{margin-bottom:20px}.apply .eyebrow{margin-bottom:20px}.apply .button{background:var(--navy);color:white;margin-top:12px;opacity:.65;cursor:not-allowed;transform:none}.apply small{display:block;margin-top:12px;font-size:12px}footer{padding:30px max(28px,calc((100% - 1104px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span,footer>a:last-child{font-size:11px}.menu span{margin-left:10px}@media(min-width:1600px){.hero{min-height:730px;padding-top:110px}}@media(max-width:900px){nav{gap:14px;font-size:12px}.brand small{display:none}.features article{padding:25px 20px}.features h3{font-size:32px}.features .catch{font-size:18px}.support-list{grid-template-columns:1fr}section{padding:75px 0}}@media(max-width:680px){html{scroll-padding-top:78px}body{font-size:16px}.wrap{padding:0 22px}.preview{font-size:10px;padding:5px 8px}.preview span{margin-left:6px}header{padding:13px 22px}.brand{font-size:24px}.brand span{font-size:19px}.menu{display:block;border:1px solid #cdd4dd;background:white;padding:5px 10px;font-size:12px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:10px 22px 20px;box-shadow:0 8px 12px #14233a15}nav.open{display:grid;grid-template-columns:1fr 1fr;gap:0}nav a{padding:12px 0;border-bottom:1px solid #e1e5e9}section{padding:62px 0}h1{font-size:37px;line-height:1.55;letter-spacing:0}h2{font-size:27px;margin-bottom:28px}h3{font-size:22px}.hero{padding:55px 0 20px;min-height:620px}.hero-copy{font-size:15px;line-height:2}.hero-copy br{display:none}.mobile{display:block}.hero-bottom{margin-top:45px}.eyebrow{font-size:10px;margin-bottom:18px}.three{grid-template-columns:1fr;gap:14px}.features article{min-height:0;padding:23px 25px;position:relative}.card-no{position:absolute;right:22px;top:20px}.features h3{font-size:32px;margin-bottom:8px}.features .catch{font-size:21px}.features p:last-child{font-size:14px}.main-source{padding:24px 15px}.main-source strong{font-size:24px}.sources{grid-template-columns:repeat(3,1fr);gap:6px}.sources div{font-size:12px;padding:15px 8px;display:flex;align-items:center;justify-content:center}.closing{font-size:19px;text-align:left}.work-grid{grid-template-columns:1fr;gap:22px}.photo{height:155px}.work-text{padding:22px 24px}.work-text h3{font-size:22px}.intro{margin:-10px 0 28px}.statement{padding:30px 25px}.statement h3{font-size:27px}.skills{gap:0;text-align:left}.skills p{border-bottom:1px solid #d9cd9c;font-size:16px}.skills span{width:25px}.training-lead{padding-left:18px}.training-lead strong{font-size:24px}.steps{gap:10px}.steps article{padding:16px 23px}.steps h3{font-size:23px;display:inline-block;margin:0 0 0 17px}.steps small{font-size:10px}.support{grid-template-columns:1fr;gap:24px;margin-top:30px;padding:30px 0}.support h3 br,.support strong br{display:none}.support-list{grid-template-columns:1fr 1fr;gap:8px}.support-list li{font-size:13px;padding:12px 10px}.support-list li:before{margin-right:4px}.career-top{max-width:290px}.branch{height:130px}.branch p{font-size:15px;top:43px;padding:0 8px}.routes{gap:12px}.routes article{padding:18px 13px}.routes h3{font-size:22px}.routes p{font-size:13px}.salary strong{font-size:39px}.routes .salary{font-size:12px}.routes small{font-size:10px}.career-note{text-align:left;font-size:14px}.fine{font-size:12px}.promises{grid-template-columns:1fr;gap:15px}.promises p{margin:0}.promises strong{font-size:24px}.style-notes{grid-template-columns:1fr;gap:0}.style-notes p{padding:17px;font-size:15px;margin-top:12px}.spec{grid-template-columns:1fr}.spec dt{padding:13px 16px 4px;border-bottom:0;font-size:13px}.spec dd{padding:7px 16px 18px;font-size:15px;background:#f3f5f7}.review-note{padding:20px}.faq-list summary{padding:20px 40px 20px 42px;font-size:15px}.faq-list summary:before{left:14px;top:15px}.faq-list summary:after{right:12px;top:18px}.faq-list details>p{padding:0 20px 22px 42px;font-size:15px}.apply{margin-top:45px;padding:35px 20px}.apply h2{font-size:26px}.apply p{font-size:15px}.apply .button{gap:16px;padding:15px 18px;font-size:14px}footer{flex-wrap:wrap;padding:25px 22px}footer>span{order:3;width:100%;font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.branch path{stroke-dashoffset:0}.routes article{opacity:1;transform:none}}
