@charset "UTF-8";
:root{--corporate-blue:#3d7a2c;--corporate-line:#f1f6ea}html{scroll-padding-top:110px}body{line-height:1.85}.site-header{border-bottom:1px solid #f1f6ea;background:rgba(255,255,255,.98)}.header-inner{height:96px}nav{gap:25px;font-size:14px}nav a[aria-current=page]{color:#3d7a2c}.nav-cta{border-radius:2px}.section{padding-block:104px}.section-heading{margin-bottom:42px}.section-heading h2{letter-spacing:-.045em}.service-card{box-shadow:none;border-radius:3px;border-color:#f1f6ea}.button{border-radius:2px}.breadcrumb{display:flex;gap:16px;padding-top:28px;font-size:11px;letter-spacing:.07em;color:#647489}.breadcrumb a{color:#1d3556}.page-intro{padding-top:62px;padding-bottom:66px}.page-intro h1{font-size:clamp(40px,4.6vw,68px);letter-spacing:-.05em;line-height:1.35;margin:16px 0 22px}.page-intro h1>span{color:#3d7a2c}.page-lead{font-size:20px;color:#54677e}.group-overview{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center;padding-bottom:76px}.group-overview h2{font-size:clamp(32px,3vw,44px);line-height:1.55;letter-spacing:-.04em;margin:20px 0}.group-overview p:not(.eyebrow){font-size:16px;color:#53657a}.group-overview img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:50% top}.company-jumps{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;font-size:11px;font-weight:700;letter-spacing:.06em}.company-jumps a{border-bottom:1px solid #9badc1;padding-bottom:6px}.company-section{background:#f1f6ea}.company-profile{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:64px 0;border-top:1px solid #cad6e5;scroll-margin-top:110px}.company-section>.wrap>.eyebrow{margin-bottom:35px}.company-number{font-size:12px;color:#5e7694}.company-wordmark{font-size:clamp(36px,3.5vw,54px);font-weight:750;letter-spacing:-.045em;line-height:1.2;margin:35px 0 30px}.company-wordmark>span{display:block;font-size:10px;letter-spacing:.2em;margin-top:13px;color:#6c7d92}.company-wordmark.neoleaf{color:#497736}.company-wordmark.naplus{color:#345e79}.company-identity h2{font-size:18px;font-weight:600}.company-description h3{font-size:32px;line-height:1.5;margin:16px 0 22px}.company-description>p:not(.eyebrow){max-width:550px;color:#54667c;font-size:16px}.business-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:24px 0 28px}.business-tags li{padding:6px 12px;border:1px solid #cdd9e7;font-size:12px;background:#fff}.corporate-callout{background:#0a2448;color:white;padding:80px 0}.corporate-callout h2{font-size:42px;line-height:1.5;margin:20px 0 28px}.corporate-callout .eyebrow{color:#b9cdeb}.corporate-callout .button{background:#fff!important;color:#0a2448}.corporate-footer{padding:70px 0 0;background:white}.footer-directory{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:64px}.footer-directory>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:13px}.footer-directory>div>span{font-size:10px;letter-spacing:.15em;color:#64748a;margin-bottom:10px}.footer-directory p{font-size:14px;color:#657388;margin-top:12px}.corporate-footer .footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #f1f6ea;padding:24px 0;font-size:10px}.careers-visual{position:relative}.careers-visual>img{width:100%;height:560px;object-fit:cover;object-position:center 45%;display:block}.careers-visual>div{position:absolute;left:0;bottom:0;background:#0c294beF;color:white;padding:38px 48px}.careers-visual h2{font-size:42px;line-height:1.5;margin-top:16px}.careers-visual .eyebrow{color:#b9d0ee}.editorial-statement{display:grid;grid-template-columns:1fr 2fr;gap:70px}.editorial-statement h2{font-size:42px;line-height:1.55;margin-bottom:26px}.editorial-statement p:not(.eyebrow){font-size:17px;color:#54677e}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:64px}.values-grid article{border-top:2px solid #23466d;padding-top:25px}.values-grid span{font-size:10px;letter-spacing:.13em;color:#5e7897}.values-grid h3{font-size:23px;margin:24px 0 14px}.values-grid p{font-size:15px;color:#54677e}.openings{background:#f1f6ea}.empty-state{padding:64px 40px;background:#f1f6ea;border-top:1px solid #f1f6ea;border-bottom:1px solid #f1f6ea}.empty-state h3{font-size:25px;line-height:1.7;margin:18px 0}.empty-state p{font-size:15px;color:#627287}.openings .empty-state{background:white}.press-layout{display:grid;grid-template-columns:240px 1fr;gap:72px;padding-bottom:100px}.press-layout aside{border-top:2px solid #153656;padding-top:25px}.press-layout aside p{font-weight:650;margin:20px 0}.press-layout aside a{font-size:12px;color:#58708c}.press-list-heading{display:flex;justify-content:space-between;align-items:center;border-top:2px solid #153656;padding:24px 0}.press-list-heading h2{font-size:20px}.press-list-heading>span{font-size:9px;letter-spacing:.1em;color:#64748a}.press-contact{padding-top:54px}.press-contact h3{font-size:23px;margin:18px 0 12px}.press-contact p:not(.eyebrow){font-size:15px;color:#627287;margin-bottom:18px}.corporate-hub{background:#f1f6ea}.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.hub-grid>a{position:relative;background:white;border:1px solid #f1f6ea;padding:35px 30px 60px;transition:background .2s}.hub-grid>a:hover{background:#f1f6ea}.hub-grid span{font-size:10px;letter-spacing:.15em;color:#4b6d96}.hub-grid h3{font-size:26px;margin:28px 0 14px}.hub-grid p{font-size:14px;color:#627287}.hub-grid b{position:absolute;bottom:20px;right:25px;font-size:22px}.corporate-footer a:hover{color:#3d7a2c}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}nav{gap:16px;font-size:12px}.brand{font-size:28px}.group-overview{gap:35px}.company-profile{gap:40px}.press-layout{gap:36px;grid-template-columns:190px 1fr}.nav-cta{padding:12px 16px}}
@media(max-width:850px){.header-inner{height:78px}nav{font-size:16px;gap:0}.section{padding-block:64px}.page-intro{padding-top:38px;padding-bottom:40px}.page-lead{font-size:17px}.group-overview{grid-template-columns:1fr;gap:30px}.group-overview img{aspect-ratio:1.65}.company-profile{gap:30px;grid-template-columns:1fr;padding:40px 0}.company-wordmark{margin:20px 0}.company-identity h2{font-size:16px}.company-description h3{font-size:28px}.editorial-statement{grid-template-columns:1fr;gap:24px}.careers-visual>img{height:450px}.careers-visual>div{padding:24px 30px}.careers-visual h2{font-size:32px}.values-grid{grid-template-columns:1fr;gap:30px;margin-top:40px}.values-grid h3{margin:12px 0}.press-layout{grid-template-columns:1fr;gap:30px}.press-layout aside{display:none}.hub-grid{grid-template-columns:1fr}.hub-grid>a{padding:28px}.hub-grid h3{margin:16px 0 10px}.footer-directory{grid-template-columns:1fr 1fr;gap:35px}.footer-directory>div:first-child{grid-column:1/-1}.corporate-callout h2,.editorial-statement h2{font-size:32px}}
@media(max-width:480px){.wrap{width:calc(100% - 40px)}.page-intro h1{font-size:38px}.page-intro{padding-top:28px}.group-overview p br{display:none}.group-overview img{aspect-ratio:1.2}.company-description h3{font-size:27px}.careers-visual>img{height:430px;object-position:65% center}.careers-visual>div{left:0;bottom:0;padding:18px 24px}.careers-visual h2{font-size:27px}.careers-visual .eyebrow{font-size:9px}.empty-state{padding:32px 22px}.empty-state h3{font-size:21px}.press-list-heading{align-items:flex-start;gap:12px;flex-direction:column}.press-contact h3{font-size:21px}.company-jumps{gap:12px}.corporate-footer{padding-top:44px}.footer-directory{padding-bottom:35px}.breadcrumb{padding-top:20px}.corporate-callout{padding:55px 0}}
.group-overview img{height:auto}

/* Dedicated editorial images for careers and group */
.group-overview img{aspect-ratio:4/3;object-position:center;height:auto}.careers-visual>img{object-position:55% center}@media(max-width:850px){.group-overview img{aspect-ratio:4/3}.careers-visual>img{height:auto;aspect-ratio:16/10;object-position:center}.careers-visual>div{position:relative;left:auto;bottom:auto;background:#0c294b;padding:26px 28px}.careers-visual h2 br{display:none}.careers-visual h2{font-size:27px;line-height:1.6}}

/* A little motion, with a quiet corporate rhythm. */
.motion-reveal{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1)}
.motion-ready{opacity:0;transform:translateY(22px)}
.button,.nav-cta,.hub-grid>a{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.text-link span,.hub-grid b{display:inline-block;transition:transform .25s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
.button:hover,.nav-cta:hover{transform:translateY(-3px);box-shadow:0 9px 22px #102b3b14}
.hub-grid>a:hover{transform:translateY(-5px);box-shadow:0 14px 30px #102b3b0d}
.text-link:hover span,.hub-grid>a:hover b{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:no-preference){
.page-intro>.eyebrow,.hero-copy>.eyebrow{animation:opening-copy .8s ease both}
.page-intro>h1,.hero-copy>h1{animation:opening-copy .85s .1s ease both}
.page-intro>.page-lead{animation:opening-copy .85s .2s ease both}
@keyframes opening-copy{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){.motion-reveal,.motion-ready{opacity:1;transform:none;transition:none}.button,.nav-cta,.hub-grid>a,.text-link span,.hub-grid b{transition:none}}

/* 2026-09-19 50代社員の一文 */
.proof-note{margin:26px 0 10px;font-size:17px;line-height:1.7;letter-spacing:.02em}
@media (max-width:720px){.proof-note{font-size:15px;margin:20px 0 8px}}.footer-company{font-style:normal;display:flex;flex-direction:column;gap:4px;margin-top:18px;font-size:12px;color:#5b6b80;line-height:1.7}.footer-company b{color:#1d3556;font-size:13px}.company-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 26px;padding:18px 0 0;border-top:1px solid #cad6e5;font-size:14px}.company-facts div{display:grid;grid-template-columns:64px 1fr;gap:12px}.company-facts dt{color:#5e7694;font-size:12px;letter-spacing:.06em}.company-facts dd{margin:0;color:#2b3c52}
/* 2026-09-20 会社概要 */
.company-outline{padding-top:0}.company-outline .wrap{max-width:760px}.company-outline h2{font-size:clamp(24px,3vw,30px);margin:6px 0 18px}.company-facts.outline{border-top:1px solid #cad6e5;border-bottom:1px solid #cad6e5;padding:18px 0;margin:0 0 18px;gap:12px;font-size:15px}.company-facts.outline div{grid-template-columns:110px 1fr;padding:0}.company-facts.outline dd a{color:#1d3556;text-decoration:underline;text-underline-offset:3px}.footer-company a{color:#1d3556;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin-top:2px;width:max-content}@media (max-width:720px){.company-facts.outline div{grid-template-columns:88px 1fr}}
/* 2026-09-20 OUR COMPANIES に会社概要 */
.company-profile .company-facts{margin:26px 0 24px}.company-profile .company-facts div{grid-template-columns:84px 1fr}#profile{scroll-margin-top:110px}@media (max-width:720px){.company-profile .company-facts div{grid-template-columns:76px 1fr}}
