@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}:root{color-scheme:light;--navy:#071a2c;--navy-deep:#04111d;--ivory:#f5f1e9;--paper:#fbf9f4;--teal:#1a6867;--coral:#d85e48;--ink:#102632;--muted:#56666c;--line:#c9d0cc;--line-dark:#f5f1e947;--focus:#f2b34a;--shell:74rem;--anchor-offset:5.25rem;--serif:"Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", Georgia, serif;--sans:-apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans);scroll-behavior:auto;line-height:1.75}.route-transition-veil{z-index:100;pointer-events:none;visibility:hidden;background:var(--navy);opacity:0;transition:opacity .36s ease-in,visibility 0s linear .36s;position:fixed;inset:0}.route-transition-veil[data-state=cover]{visibility:visible;opacity:1;transition:opacity .22s ease-out,visibility linear}.route-transition-veil[data-state=reveal]{visibility:visible;opacity:0}body{margin:0;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}button,select{cursor:pointer}[id]{scroll-margin-top:var(--anchor-offset)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.shell{width:min(calc(100% - 3rem), var(--shell));margin-inline:auto}.skip-link{z-index:20;background:var(--ivory);color:var(--navy);padding:.55rem .8rem;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;background:var(--navy-deep);color:var(--ivory);border-bottom:1px solid #f5f1e92e;position:sticky;top:0}.header-content{justify-content:space-between;align-items:center;gap:1.5rem;min-height:5.25rem;display:flex}.site-name{color:var(--ivory);flex:none;gap:.05rem;line-height:1.1;text-decoration:none;display:grid}.site-name-main,.footer-brand{font-family:var(--serif);letter-spacing:.02em;font-size:1.35rem}.site-name-sub{color:#f5f1e9b3;letter-spacing:.08em;font-size:.66rem}.site-nav{align-items:center;gap:clamp(.55rem,1.6vw,1.45rem);margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:#f5f1e9d6;letter-spacing:.06em;align-items:center;min-height:2.5rem;font-size:.78rem;text-decoration:none;display:inline-flex}.site-nav a:hover{color:#fff}.site-nav .nav-cta{border:1px solid var(--coral);background:var(--coral);color:#fff;justify-content:center;min-width:6.25rem;padding-inline:1rem;transition:background-color .16s,border-color .16s}.site-nav .nav-cta:hover{background:#ef8069;border-color:#ef8069}.mobile-header-actions{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero{background:var(--navy-deep);min-height:min(46rem,100svh - 5.25rem);color:var(--ivory);position:relative;overflow:hidden}.hero-grid{min-height:inherit;grid-template-columns:minmax(0,.98fr) minmax(25rem,1.02fr);align-items:center;display:grid}.hero-copy{z-index:1;max-width:38rem;padding-block:clamp(5rem,10vw,8rem);position:relative}.hero-summary{color:#a7c9c6;letter-spacing:.13em;margin:0 0 1.2rem;font-size:.78rem;font-weight:700}.hero h1,.page-hero h1{font-family:var(--serif);letter-spacing:-.05em;margin:0;font-weight:500}.display-heading{font-family:var(--serif);letter-spacing:-.05em;text-wrap:balance;margin:0;font-weight:500}.display-heading-line{white-space:nowrap;display:block}.hero h1{max-width:11.2em;font-size:clamp(2.5rem,4.1vw,3.65rem);line-height:1.2}.hero-lead{color:#f5f1e9d1;max-width:32rem;margin:2rem 0 0;font-size:.99rem;line-height:2}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.35rem;margin-top:2.55rem;display:flex}.hero-art{align-self:stretch;margin-right:min(-4vw,-2rem);overflow:hidden}.hero-art img{object-fit:cover;object-position:70% center;width:100%;height:100%;min-height:34rem}.button,.text-link,.card-link{text-decoration:none}.button{letter-spacing:.07em;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:1.05rem;min-height:3.65rem;padding:.8rem 1.25rem;font-size:.84rem;font-weight:700;transition:transform .16s,background-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-light{background:var(--ivory);color:var(--navy)}.button-primary{border-color:var(--coral);background:var(--coral);color:#fff;width:100%}.button-primary:hover{background:#ef8069}.button-apply{background:var(--ivory);min-width:min(100%,20rem);color:var(--navy)}.text-link,.card-link{letter-spacing:.06em;align-items:center;gap:.65rem;font-size:.82rem;font-weight:700;display:inline-flex}.text-link{color:var(--teal)}.text-link-light{color:var(--ivory)}.text-link:hover,.card-link:hover{color:var(--coral)}.arrow-icon{flex:none;width:1.2rem;height:1.2rem}.section{padding-block:clamp(5.5rem,10vw,9rem)}.section-title{font-family:var(--serif);letter-spacing:-.05em;margin:0;font-size:clamp(1.9rem,3.5vw,3.4rem);font-weight:500;line-height:1.32}.section-overline{color:var(--coral);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.72rem;font-weight:700}.section-intro{background:var(--paper)}.intro-layout,.duties-layout,.company-layout,.company-detail-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(3rem,10vw,10rem);display:grid}.intro-copy{max-width:36rem;color:var(--muted);font-size:1rem;line-height:2.05}.intro-copy p{margin:0}.candidate-list{gap:0;margin:3rem 0 0;padding:0;list-style:none;display:grid}.candidate-list li{border-top:1px solid var(--line);color:var(--ink);grid-template-columns:3rem 1fr;align-items:center;gap:.8rem;padding-block:1.05rem;line-height:1.5;display:grid}.candidate-list li:last-child{border-bottom:1px solid var(--line)}.candidate-list span,.role-number,.duty-list span{color:var(--coral);font-family:var(--serif);font-size:.9rem}.roles-section{background:var(--ivory)}.roles-layout{grid-template-columns:minmax(17rem,.76fr) minmax(0,1.24fr);align-items:start;column-gap:clamp(2rem,5vw,5.5rem);display:grid}.roles-intro{grid-column:2;padding-bottom:2rem}.roles-heading{justify-content:space-between;align-items:end;gap:2rem;padding-bottom:2rem;display:flex}.roles-heading p{color:var(--muted);margin:0;font-size:.85rem}.roles-image{grid-area:1/1/span 2;align-self:stretch;min-height:42rem;margin:0;overflow:hidden}.roles-image picture,.roles-image img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.role-number{color:var(--coral);margin:0;font-size:clamp(1.4rem,2.5vw,2.35rem);line-height:1.1}.role-list{border-bottom:1px solid var(--teal);grid-column:2;margin:0;padding:0;list-style:none;display:grid}.role-row{border-top:1px solid var(--teal);grid-template-columns:3.25rem minmax(7.5rem,.58fr) minmax(0,1.42fr);align-items:start;gap:clamp(.75rem,1.7vw,1.5rem);padding-block:clamp(1.5rem,2.7vw,2.2rem);display:grid}.role-row h3{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(1.4rem,2.25vw,2rem);font-weight:500;line-height:1.35}.role-salary{color:var(--muted);gap:.45rem;margin:0;font-size:.78rem;display:grid}.role-salary strong{color:var(--ink);letter-spacing:-.025em;font-size:clamp(.98rem,1.45vw,1.15rem);font-weight:700;line-height:1.5}.role-note{color:var(--muted);margin:.65rem 0 0;font-size:.86rem}.role-note-suffix{white-space:nowrap}.role-link{color:var(--teal);letter-spacing:.06em;align-items:center;gap:.65rem;margin-top:1.25rem;font-size:.76rem;font-weight:700;text-decoration:none;display:inline-flex}.role-link:hover{color:var(--coral)}.environment-section{background:var(--navy-deep);padding-block:clamp(3.5rem,8vw,7rem);position:relative;overflow:hidden}.environment-frame{background:var(--ivory);grid-template-columns:minmax(17rem,.78fr) minmax(0,1.22fr);min-height:36rem;display:grid;position:relative;overflow:hidden}.environment-image,.duties-image{margin:0;overflow:hidden}.environment-image{background:var(--navy-deep);min-height:100%}.environment-image img,.duties-image img{object-fit:cover;width:100%;height:100%}.environment-image img{object-position:center}.environment-content{padding:clamp(2rem,5vw,5rem)}.environment-copy{max-width:36rem;position:relative}.environment-copy>p:not(.environment-note){max-width:28rem;color:var(--muted);margin:1.8rem 0 0}.environment-note{color:var(--coral);margin:2rem 0 0;font-size:.78rem}.benefit-list{align-self:center;margin:clamp(2.5rem,5vw,4rem) 0 0;position:relative}.benefit-list>div{border-top:1px solid var(--line);grid-template-columns:minmax(6.2rem,.32fr) 1fr;gap:1rem;padding-block:1.05rem;display:grid}.benefit-list>div:last-child{border-bottom:1px solid var(--line)}.benefit-list dt{color:var(--teal);letter-spacing:.07em;font-size:.76rem;font-weight:700}.benefit-list dd{color:var(--ink);margin:0;font-size:.88rem;line-height:1.7}.environment-frame:after{content:none}.duties-section{background:var(--paper)}.duties-intro{align-self:start}.duties-image{aspect-ratio:4/3;background:var(--ivory);margin-top:2.25rem}.duties-image img{object-position:center}.duty-list{margin:0;padding:0;list-style:none;display:grid}.duty-list li{border-top:1px solid var(--line);grid-template-columns:3.6rem 1fr;align-items:center;gap:1rem;padding-block:1.35rem;display:grid}.duty-list li:last-child{border-bottom:1px solid var(--line)}.duty-list strong{font-size:clamp(1rem,1.4vw,1.2rem);font-weight:600}.company-section{background:var(--ivory)}.company-copy{max-width:34rem;color:var(--muted);font-size:1rem;line-height:2.05}.company-copy p{margin:0}.company-copy .text-link{margin-top:2.1rem}.apply-section{background:var(--navy);color:var(--ivory);padding-block:clamp(4rem,7vw,6.5rem);position:relative;overflow:hidden}.apply-section:after{content:"";border:1px solid #f5f1e929;border-radius:50%;width:31rem;height:31rem;position:absolute;bottom:-11rem;right:-6rem}.apply-layout{z-index:1;justify-content:space-between;align-items:center;gap:2.5rem;display:flex;position:relative}.apply-layout h2{font-family:var(--serif);letter-spacing:-.05em;margin:0;font-size:clamp(1.9rem,3.5vw,3.4rem);font-weight:500;line-height:1.32}.apply-layout p{color:#f5f1e9b8;margin:1rem 0 0;font-size:.9rem}.page-hero{background:var(--navy-deep);color:var(--ivory);padding-block:clamp(5.5rem,11vw,9rem)}.page-hero-visual{padding-block:0}.page-hero-visual-grid{grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr);min-height:clamp(31rem,48vw,40rem);display:grid}.page-hero-copy{align-content:center;padding:clamp(4.5rem,8vw,7.5rem) clamp(2rem,5vw,5rem) clamp(4.5rem,8vw,7.5rem) 0;display:grid}.page-hero-image{background:var(--navy);min-height:100%;margin:0;overflow:hidden}.page-hero-image img{object-fit:cover;object-position:center;width:100%;height:100%}.company-hero-identity{font-family:var(--serif);gap:.35rem;margin-top:clamp(2.2rem,4vw,3.5rem);display:grid}.company-hero-identity p{margin:0}.company-hero-identity p:first-child{font-size:clamp(1.15rem,1.8vw,1.5rem)}.company-hero-identity p:last-child{color:#f5f1e9bd;letter-spacing:.02em;font-size:.98rem}.page-hero h1{font-size:clamp(2.75rem,5vw,4.7rem);line-height:1.2}.page-hero>.shell>p:last-child{color:#f5f1e9bd;max-width:35rem;margin:1.5rem 0 0}.page-hero-compact{padding-block:clamp(4.5rem,8vw,6.5rem)}.company-detail-section,.simple-content-section,.contact-section{background:var(--paper)}.company-english{color:var(--teal);font-family:var(--serif);letter-spacing:.02em;margin:1rem 0 0;font-size:1.1rem}.company-details{margin:0}.company-details>div{border-top:1px solid var(--line);grid-template-columns:minmax(6.5rem,.35fr) 1fr;gap:1rem;padding-block:1.25rem;display:grid}.company-details>div:last-child{border-bottom:1px solid var(--line)}.company-details dt{color:var(--teal);letter-spacing:.06em;font-size:.78rem;font-weight:700}.company-details dd{margin:0;font-size:.94rem}.prose-site{max-width:44rem}.prose-site h2{color:var(--ink);font-family:var(--serif);margin:3.2rem 0 1rem;font-size:1.55rem;font-weight:500}.prose-site h2:first-child{margin-top:0}.prose-site p{color:var(--muted)}.prose-site .text-link{margin-top:1.5rem}.contact-page-hero{padding-block:0}.contact-layout{grid-template-columns:minmax(0,.82fr) minmax(23rem,1.18fr);align-items:start;gap:clamp(3rem,9vw,9rem);display:grid}.contact-intro-copy{color:var(--muted);margin:1.7rem 0 0}.contact-flow{border-top:1px solid var(--line);margin-top:2.75rem;padding-top:1.1rem}.contact-flow-title{color:var(--teal);letter-spacing:.13em;margin:0;font-size:.78rem;font-weight:700}.selection-flow{grid-template-columns:1fr;gap:0;margin:1.3rem 0 0;padding:0;list-style:none;display:grid}.selection-flow li{color:var(--ink);grid-template-columns:3rem minmax(0,1fr);align-items:start;gap:1rem;padding-bottom:1.65rem;line-height:1.4;display:grid;position:relative}.selection-flow li:last-child{padding-bottom:0}.selection-flow li:not(:last-child):after{background:var(--teal);content:"";width:1px;position:absolute;top:3rem;bottom:.35rem;left:1.5rem}.selection-flow span{z-index:1;aspect-ratio:1;border:1px solid var(--teal);background:var(--paper);width:3rem;color:var(--teal);font-family:var(--serif);border-radius:50%;place-items:center;font-size:.92rem;display:grid;position:relative}.selection-flow strong{font-size:.96rem;font-weight:700;display:block}.selection-flow p{color:var(--muted);margin:.35rem 0 0;font-size:.85rem;line-height:1.7}.form-panel{background:var(--ivory);padding:clamp(1.5rem,4vw,3.5rem)}.form{gap:1.35rem;display:grid}.field{gap:.5rem;display:grid}.field label,.field legend{color:var(--ink);font-size:.86rem;font-weight:700}.field input,.field select,.field textarea{background:var(--paper);width:100%;min-height:3.2rem;color:var(--ink);border:1px solid #aeb9b5;border-radius:0;padding:.75rem .85rem;font-size:1rem}.field textarea{resize:vertical;min-height:10rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal)}.field-consent{display:block}.field-consent label{align-items:flex-start;gap:.6rem;line-height:1.65;display:flex}.field-consent input{width:1.1rem;min-height:1.1rem;accent-color:var(--teal);margin-top:.23rem}.field-consent a{color:var(--teal)}.help-text,.form-status{color:var(--muted);margin:0;font-size:.78rem}.form-status[data-state=error]{color:#ab3024}.form-status[data-state=success]{color:#116e50}.honeypot{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-footer{background:var(--navy-deep);color:#f5f1e9b8;padding-block:2.2rem}.footer-content{justify-content:space-between;gap:2rem;display:flex}.site-footer p{margin:0;font-size:.74rem}.site-footer .footer-brand{color:var(--ivory);font-size:1.1rem}.footer-meta{text-align:right;gap:.25rem;display:grid}.site-footer a{color:#a9cbc7;text-decoration:none}.site-footer a:hover{color:var(--coral)}@media (width<=52rem){:root{--anchor-offset:4.5rem}.header-content{align-items:flex-start;min-height:auto;padding-block:1rem}.site-nav{flex-wrap:wrap;justify-content:flex-end}.hero-grid,.intro-layout,.duties-layout,.company-layout,.company-detail-layout,.contact-layout,.page-hero-visual-grid{grid-template-columns:1fr}.page-hero-copy{padding-right:0}.page-hero-image{min-height:20rem;max-height:30rem}.hero-copy{padding-bottom:2rem}.hero-art{min-height:22rem;margin-right:0}.hero-art img{min-height:22rem;max-height:28rem}.environment-frame{grid-template-columns:1fr}.environment-image{min-height:20rem;max-height:28rem}.company-copy,.intro-copy{max-width:none}.contact-layout{gap:3rem}}@media (width<=40rem){:root{--anchor-offset:4.5rem}.shell{width:min(calc(100% - 2rem), var(--shell))}.header-content{align-items:center;gap:.5rem;min-height:4.5rem;padding-block:0;position:relative}.desktop-nav{display:none}.mobile-header-actions{align-items:center;gap:.45rem;min-height:2.625rem;margin-left:auto;display:flex}.mobile-apply-link,.mobile-menu-toggle{box-sizing:border-box;block-size:2.625rem;flex:none;justify-content:center;align-items:center;min-height:0;line-height:1;text-decoration:none;display:inline-flex}.mobile-apply-link{border:1px solid var(--coral);background:var(--coral);color:#fff;letter-spacing:.06em;min-width:4.8rem;padding-inline:.65rem;font-size:.7rem;font-weight:700}.mobile-menu{align-items:stretch;block-size:2.625rem;display:flex;position:static}.mobile-menu-toggle{appearance:none;inline-size:2.625rem;color:var(--ivory);cursor:pointer;border:1px solid #f5f1e96b;padding:0;list-style:none}.mobile-menu-toggle::-webkit-details-marker{display:none}.mobile-menu-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.mobile-menu-icon{gap:.27rem;display:grid}.mobile-menu-icon span{background:currentColor;width:1rem;height:1px;display:block}.mobile-menu[open] .mobile-menu-toggle{border-color:var(--coral);color:var(--coral)}.mobile-menu-panel{z-index:1;background:var(--navy-deep);border:1px solid #f5f1e938;width:100%;padding:.6rem 1rem;position:absolute;top:calc(100% + 1px);right:0;box-shadow:0 1rem 2rem #04111d40}.mobile-menu-list{margin:0;padding:0;list-style:none}.mobile-menu-list a{min-height:3.35rem;color:var(--ivory);letter-spacing:.06em;border-bottom:1px solid #f5f1e92e;align-items:center;font-size:.82rem;font-weight:700;text-decoration:none;display:flex}.mobile-menu-list li:last-child a{border-bottom:0}.mobile-menu-list a:hover{color:var(--coral)}.page-hero-copy{padding-block:4rem}.page-hero-image{min-height:16rem}.hero{min-height:0}.hero-copy{padding-top:4rem}.hero h1{max-width:none;font-size:clamp(2rem,9.2vw,3.1rem)}.section-title,.apply-layout h2{font-size:clamp(1.65rem,7.3vw,2.7rem)}.hero-lead{font-size:.9rem}.environment-content{padding:2rem 1.4rem 2.5rem}.environment-image{min-height:17rem}.roles-layout{display:block}.roles-intro{padding-bottom:1.25rem}.roles-heading,.apply-layout,.footer-content{flex-direction:column;align-items:flex-start}.roles-heading{gap:1rem}.roles-image{height:clamp(18rem,72vw,26rem);min-height:clamp(18rem,72vw,26rem)}.role-list{margin-top:1.75rem}.role-row{grid-template-columns:2.5rem minmax(0,1fr);gap:.75rem;padding-block:1.6rem}.role-row h3,.role-details{grid-column:2}.role-row h3{font-size:clamp(1.45rem,7.3vw,2rem)}.role-salary strong{font-size:clamp(1rem,4.6vw,1.25rem)}.benefit-list>div,.company-details>div{grid-template-columns:1fr;gap:.25rem}.duty-list li{grid-template-columns:2.75rem 1fr;gap:.5rem}.selection-flow li{grid-template-columns:2.65rem minmax(0,1fr);gap:.8rem;padding-bottom:1.35rem}.selection-flow li:not(:last-child):after{top:2.65rem;left:1.325rem}.selection-flow span{width:2.65rem}.selection-flow strong{font-size:.9rem}.selection-flow p{font-size:.82rem}.company-detail-layout,.intro-layout,.duties-layout,.company-layout{gap:2.4rem}.form-panel{margin-inline:-1rem;padding:1.5rem 1rem}.footer-meta{text-align:left}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.route-transition-veil{transition:none}*,:before,:after{transition-duration:.01ms!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
