@charset "UTF-8";
:root{--navy:#243b50;--ink:#263b49;--muted:#657078;--paper:#f7f5ef;--white:#fff;--orange:#b76544;--line:#dadfdc;--blue:#eaf0f3;--sand:#e9e2d6;--serif:"Yu Mincho","游明朝","Hiragino Mincho ProN",serif;--sans:"Yu Gothic","游ゴシック体","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}svg{width:24px;height:24px;flex:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.55}h1,h2{font-weight:500}h3{font-size:20px}p+p{margin-top:18px}ul,ol{padding-left:1.4em}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--orange);outline-offset:5px}button:disabled{cursor:default}::selection{background:#e4cbb7}a:hover{color:var(--orange)}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding:100px 0}.white{background:#fff}.eyebrow{font:600 11px/1.6 var(--sans);letter-spacing:.22em;color:var(--orange);display:block;margin-bottom:20px}.section-title{font-family:var(--serif);font-size:clamp(28px,3vw,40px);letter-spacing:.07em;line-height:1.6}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head p{max-width:470px;color:var(--muted);font-size:14px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;font-weight:700;border-bottom:1px solid var(--ink);padding:8px 0;flex-shrink:0}.text-link svg{width:19px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:14px 27px;border:1px solid var(--navy);border-radius:3px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;transition:background .18s,color .18s,transform .18s}.button:hover{background:#38576e;color:#fff;transform:translateY(-2px)}.button.light{background:transparent;color:var(--navy)}.button.light:hover{background:var(--blue)}.button.cream{background:var(--paper);border-color:var(--paper);color:var(--navy)}.button.warm{background:var(--orange);border-color:var(--orange)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.small{font-size:13px;color:var(--muted)}.skip{position:fixed;top:0;left:20px;background:#fff;padding:10px;transform:translateY(-150%);z-index:999}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.header{height:96px;background:rgba(247,245,239,.97);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(36,59,80,.08)}.header-inner{height:100%;padding:0 38px;max-width:1600px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{width:37px;height:42px}.brand-name{font-size:20px;font-weight:700;letter-spacing:.08em;line-height:1.4}.brand-note{display:block;font-size:9px;letter-spacing:.12em;font-weight:500;margin-top:4px}.nav{display:flex;align-items:center;gap:25px}.nav a{font-size:12px;font-weight:700;white-space:nowrap;position:relative}.nav a[aria-current=page]:after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:2px;background:var(--orange)}.nav .nav-contact{padding:14px 20px;background:var(--navy);color:#fff;border-radius:2px}.nav .nav-contact:hover{background:#38576e}.menu-button{display:none;align-items:center;gap:8px;background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:2px;color:var(--navy);min-height:44px}.menu-button svg{width:22px}.mobile-bar{display:none}
.hero{padding:40px 0 0;position:relative}.hero-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:46% 54%;align-items:center;min-height:560px}.hero-copy{padding:25px 50px 35px max(48px,calc((100vw - 1200px)/2));position:relative;z-index:2}.hero-place{font-size:12px;letter-spacing:.12em;display:flex;align-items:center;gap:10px;margin-bottom:26px}.hero-place:before{content:"";width:23px;height:1px;background:var(--orange)}.hero h1{font:500 clamp(32px,3.25vw,49px)/1.65 var(--serif);letter-spacing:.12em;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--orange)}.hero-description{font-size:14px;line-height:2.15;margin-top:26px;letter-spacing:.04em}.hero-image{height:560px;position:relative;align-self:stretch}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:52% center;border-radius:140px 0 0 8px}.hero-image figcaption{position:absolute;bottom:12px;right:15px;color:#fff;font-size:10px;letter-spacing:.07em;background:rgba(30,42,50,.66);padding:3px 8px;border-radius:2px}.hero .actions{margin-top:30px}.hero .button{padding:13px 23px;gap:18px}.hero-foot{border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:28px;font-size:12px}.hero-foot strong{letter-spacing:.08em}.hero-foot .hero-foot-right{display:flex;gap:26px;align-items:center}.hero-foot-right span{color:var(--muted)}.scroll-note{font-size:10px;letter-spacing:.2em;display:flex;align-items:center;gap:14px}.scroll-note:before{content:"";height:24px;width:1px;background:var(--orange)}
.audience{display:grid;grid-template-columns:repeat(3,1fr);padding:32px 0}.audience a{display:flex;align-items:center;gap:18px;padding:10px 24px;border-right:1px solid var(--line)}.audience a:first-child{padding-left:0}.audience a:last-child{border:0}.audience a>svg:first-child{width:30px;height:30px;color:var(--orange)}.audience small{display:block;font-size:10px;color:var(--muted);letter-spacing:.06em}.audience strong{font-size:15px}.audience .arrow{margin-left:auto;width:18px}.home-services{padding-top:58px}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{display:flex;flex-direction:column;background:#fff;padding:27px 25px 24px;border:1px solid #e8e8e1;border-radius:5px;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-5px);border-color:#ba9f89;color:var(--ink)}.service-top{display:flex;justify-content:space-between;align-items:start}.service-number{font:italic 14px Georgia,serif;color:#9b8c7d}.service-icon{height:64px;width:64px;border-radius:50%;background:#f2ede4;display:grid;place-items:center;margin-bottom:24px;color:var(--navy)}.service-icon svg{width:35px;height:35px;stroke-width:1.4}.service-card:nth-child(2) .service-icon{background:#e9edf4}.service-card:nth-child(3) .service-icon{background:#eee9e4}.service-card:nth-child(4) .service-icon{background:#f3e5df}.service-card .tag{font-size:10px;color:var(--muted);margin-bottom:8px}.service-card h3{font-family:var(--serif);font-size:24px;margin-bottom:16px}.service-card p{font-size:13px;line-height:1.95;color:var(--muted);flex:1}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:26px;font-size:12px;font-weight:700}.card-bottom svg{width:18px}.sub-service{margin-top:24px;padding:18px 23px;border:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px}.status-label{font-size:11px;color:#795833;background:#eee5d5;padding:5px 10px;margin-left:12px}.intro-grid{display:grid;grid-template-columns:.8fr 1fr;gap:100px;align-items:center}.intro-image{max-width:390px;position:relative}.intro-image img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border-radius:4px 80px 4px 4px}.intro-image figcaption{margin-top:16px;font-size:12px;display:flex;justify-content:space-between}.intro-image:before{content:"";position:absolute;left:-20px;top:20px;width:100%;height:calc(100% - 62px);border:1px solid var(--sand);z-index:-1}.intro-copy p{font-size:14px;line-height:2.2;margin-top:25px}.intro-copy .text-link{margin-top:26px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:64px;padding-top:38px;border-top:1px solid var(--line)}.value-num{font:italic 26px Georgia,serif;color:var(--orange);display:block;margin-bottom:15px}.values h3{font-size:17px}.values p{font-size:13px;color:var(--muted);margin-top:12px}.availability-home{background:var(--blue)}.availability-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:75px;align-items:center}.availability-layout p{font-size:14px;margin-top:20px}.availability-box{background:#fff;padding:30px;border-radius:4px}.availability-box h3{font-size:16px}.updated{font-size:11px;color:var(--muted);margin:8px 0 20px}.week{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line)}.day{text-align:center;border-right:1px solid var(--line);padding:13px 1px}.day:last-child{border:0}.day span{font-size:12px;display:block}.day strong{font-size:22px;display:block;color:var(--orange);font-weight:500}.day small{font-size:9px}.availability-box .small{margin-top:18px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.step{border-top:1px solid var(--line);padding-top:22px}.step-number{font:italic 30px Georgia,serif;color:var(--orange);margin-bottom:15px}.step h3{font-size:18px}.step p{font-size:13px;color:var(--muted);margin-top:15px}.recruit-band{background:var(--navy);color:var(--paper);overflow:hidden}.recruit-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.recruit-band .eyebrow{color:#e4b493}.recruit-band p{font-size:14px;line-height:2.1;margin-top:22px;color:#e0e7eb}.recruit-band .recruit-image img{aspect-ratio:4/3;object-fit:cover;border-radius:65px 4px 4px 4px}.recruit-image figcaption{font-size:10px;opacity:.7;margin-top:10px}.recruit-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.recruit-tags span{border:1px solid #657787;padding:6px 12px;font-size:11px}.news-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.news-list{border-top:1px solid var(--line)}.news-row{display:grid;grid-template-columns:95px 78px 1fr 20px;gap:17px;padding:23px 0;align-items:center;border-bottom:1px solid var(--line)}.news-row time{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.news-tag{font-size:10px;border:1px solid var(--line);text-align:center;padding:3px}.news-row h3{font:500 14px/1.8 var(--sans)}.news-row svg{width:18px}.office-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px}.office-info{margin-top:28px}.office-info>div{display:grid;grid-template-columns:105px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.office-info dt{color:var(--muted)}.office-info dd{margin:0}.area-panel{border:1px solid var(--line);padding:35px;background:#fff;position:relative;display:flex;flex-direction:column;justify-content:center}.area-panel h3{font:500 30px var(--serif);margin:15px 0 20px}.area-districts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.area-districts span{padding:6px 15px;border:1px solid var(--line);font-size:12px}.area-panel svg{width:36px;height:36px;color:var(--orange)}
.contact-band{background:#ebe5da;padding:65px 0}.contact-layout{display:flex;justify-content:space-between;align-items:center;gap:45px}.contact-band h2{font:500 29px/1.6 var(--serif)}.contact-band p{font-size:13px;margin-top:12px}.contact-choices{display:flex;align-items:center;gap:28px}.phone{font:500 25px/1.5 Georgia,serif;letter-spacing:.04em;white-space:nowrap}.contact-choices small{display:block;font-size:10px;color:var(--muted)}.footer{background:#fff;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px}.footer-brand p{font-size:12px;line-height:2;margin-top:22px;color:var(--muted)}.footer-links{display:grid;grid-template-columns:1fr;gap:8px;font-size:12px;align-content:start}.footer-links strong{font-size:10px;letter-spacing:.15em;color:var(--orange);margin-bottom:13px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:48px;font-size:10px;color:var(--muted)}.footer-bottom nav{display:flex;gap:22px}.back-top{font-size:12px;display:inline-flex;gap:12px;align-items:center;margin-top:26px}
.breadcrumb{padding-top:28px;font-size:11px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.page-hero{padding:48px 0 58px;border-bottom:1px solid var(--line)}.page-hero h1{font:500 clamp(30px,4vw,48px)/1.5 var(--serif);letter-spacing:.06em}.page-hero .lead{max-width:730px;font-size:15px;line-height:2.1;color:var(--muted);margin-top:24px}.page-hero .eyebrow{margin-bottom:16px}.body-section{padding:60px 0 80px}.narrow{max-width:820px}.prose{font-size:15px;line-height:2}.prose h2{font:500 27px/1.6 var(--serif);margin:50px 0 22px;padding-bottom:17px;border-bottom:1px solid var(--line)}.prose h3{font-size:18px;margin:28px 0 12px}.prose p{margin:16px 0}.prose ul{margin:18px 0}.prose li{margin:8px 0}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.prose img{max-height:420px;width:auto;object-fit:contain;margin:25px auto}.prose figure img{max-height:none}.prose dl{margin:20px 0}.prose dt{font-size:13px;color:var(--muted);margin-top:16px}.prose dd{margin:4px 0 16px}.prose details{margin:0}.prose table{width:100%;border-collapse:collapse}.prose td,.prose th{padding:12px;border:1px solid var(--line);text-align:left}.prose blockquote{border-left:3px solid var(--orange);padding-left:24px;margin:30px 0;font-family:var(--serif)}.prose .legacy-label{display:none}.prose .legacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.prose .legacy-card{background:#fff;border:1px solid var(--line);padding:25px;margin-top:15px}.notice{background:#eee7db;border-left:3px solid #b78b5b;padding:18px 22px;font-size:13px;margin:26px 0}.notice strong{display:block;margin-bottom:5px}.link-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.link-card{border:1px solid var(--line);padding:28px;background:#fff;display:flex;flex-direction:column;gap:15px}.link-card svg{color:var(--orange)}.link-card h3{font-size:18px}.link-card p{font-size:13px;color:var(--muted);flex:1}.link-card .text-link{font-size:12px;align-self:start}.service-detail{display:grid;grid-template-columns:1fr 280px;gap:70px;align-items:start}.service-detail aside{position:sticky;top:125px;border:1px solid var(--line);padding:25px;background:#fff}.service-detail aside h2{font-size:16px;margin-bottom:18px}.service-detail aside a{display:block;border-top:1px solid var(--line);padding:12px 0;font-size:13px}.service-detail .prose h2:first-child{margin-top:0}.example-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:25px 0}.example{padding:22px;background:#fff;border:1px solid var(--line)}.example h3{margin:0 0 8px;font-size:16px}.example p{font-size:13px;margin:0}.faq{margin:30px 0}.faq details{border-top:1px solid var(--line);padding:0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:22px 36px 22px 0;font-weight:700;font-size:14px;position:relative}.faq summary:after{content:"+";position:absolute;right:8px;top:18px;font-size:22px;font-weight:400}.faq details[open] summary:after{content:"−"}.faq summary::-webkit-details-marker{display:none}.faq details p{font-size:14px;padding:0 12px 22px;margin:0;color:var(--muted)}
.staff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.staff-card{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden}.staff-card img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:center 27%;background:var(--sand)}.staff-card .staff-body{padding:24px}.staff-card h2{font:500 25px var(--serif);margin:8px 0 16px}.staff-card .role{font-size:11px;color:var(--orange)}.staff-card p{font-size:13px;line-height:2;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:45px;border:1px solid var(--line);background:#fff}.stat{padding:26px;text-align:center;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{font:500 34px Georgia,serif;display:block}.stat span{font-size:12px}.profile{display:grid;grid-template-columns:260px 1fr;gap:50px;margin-bottom:35px}.profile img{border-radius:4px;width:260px;max-height:390px;object-fit:cover}.profile h2{font:500 32px var(--serif);margin:12px 0 25px}.profile li{font-size:13px}.job-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:35px 0 50px}.job-card{background:#fff;padding:23px;border:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.job-card h2{font-size:17px}.job-card .salary{font:500 22px Georgia,var(--serif);color:var(--orange)}.job-card p{font-size:12px;color:var(--muted)}.job-card .text-link{margin-top:auto;font-size:12px}.job-detail{background:#fff;padding:40px;margin:30px 0;border:1px solid var(--line);scroll-margin-top:125px}.job-detail h2{font:500 27px var(--serif);margin-bottom:22px}.job-detail .recruit-job-tag{font-size:11px;color:var(--orange)}.job-detail dl>div{display:grid;grid-template-columns:120px 1fr;gap:25px;border-top:1px solid var(--line);padding:20px 0}.job-detail dt{font-size:13px;font-weight:700}.job-detail dd{margin:0;font-size:14px}.job-detail li{font-size:13px}.job-detail table{border-collapse:collapse;width:100%}.job-detail td,.job-detail th{text-align:left;padding:8px;border-bottom:1px solid var(--line);font-size:13px}.job-detail p{margin-bottom:12px}.job-detail ul{margin-top:0}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.filter-bar button{border:1px solid var(--line);background:#fff;color:var(--navy);padding:10px 22px;font-size:13px;border-radius:2px}.filter-bar button[aria-pressed=true]{background:var(--navy);color:#fff}.news-page .news-row{padding:26px 0}.news-page .news-row h3{font-size:16px}.article-date{font-size:12px;color:var(--orange);margin-bottom:22px}.document-list{display:grid;gap:15px}.document-link{display:flex;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);padding:24px}.document-link>svg{width:30px;height:30px;color:var(--orange)}.document-link strong{font-size:15px;display:block}.document-link small{font-size:11px;color:var(--muted);display:block;margin-top:4px}.document-link .download-arrow{margin-left:auto}.availability-table-wrap{overflow:auto;max-width:100%;border:1px solid var(--line);background:#fff}.availability-table{width:100%;border-collapse:collapse;min-width:590px;font-size:13px;line-height:1.5}.availability-table th{background:var(--navy);color:#fff;padding:15px;white-space:nowrap;font-weight:500}.availability-table td{padding:10px;text-align:center;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.availability-table th:first-child,.availability-table td:first-child{position:sticky;left:0;background:#f0eee7;color:var(--navy);z-index:1}.availability-table td[data-status=open]{color:#335e50;background:#eaf2ed;font-weight:700}.availability-table td[data-status=caution]{color:#916334;background:#f6efdf}.availability-table td[data-status=closed]{color:#889095}.legend{display:flex;gap:22px;margin:20px 0;font-size:12px}.mobile-slots{display:none}.day-select{display:none}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:45px}.contact-card{padding:30px;border:1px solid var(--line);background:#fff}.contact-card h2{font:500 24px var(--serif);margin:15px 0}.contact-card>svg{color:var(--orange);width:32px;height:32px}.contact-card p{font-size:13px}.contact-card .phone{font-size:31px}.contact-card .button{margin-top:20px}.form-panel{background:#fff;padding:40px;border:1px solid var(--line);max-width:850px;margin:auto}.form-panel h2{font:500 27px var(--serif);margin-bottom:20px}.form-panel .form-item{margin:25px 0}.form-panel label.form-label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}.form-panel input[type=text],.form-panel input[type=email],.form-panel input[type=tel],.form-panel select,.form-panel textarea{width:100%;border:1px solid #bdc7c9;background:#fcfcfa;border-radius:2px;padding:12px;color:var(--ink);min-height:48px}.form-panel textarea{min-height:170px;resize:vertical}.form-panel .required{font-size:10px;background:#eee4dc;color:#945334;padding:3px 7px;margin-left:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-checks{display:flex;flex-wrap:wrap;gap:15px;font-size:14px}.form-checks input{accent-color:var(--navy)}.form-panel fieldset{border:0;padding:0;margin:0}.form-panel legend{font-size:14px;font-weight:700;margin-bottom:10px}.form-panel .submit{width:100%;margin-top:26px}.form-status{margin-top:20px;font-size:14px}.form-status:empty{display:none}.preview-note{background:#eaf0f3;padding:17px 20px;font-size:12px;margin-bottom:28px;border-left:3px solid var(--navy)}.qr{width:130px;margin-top:20px}.contents{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.contents a{padding:8px 15px;border:1px solid var(--line);font-size:12px;background:#fff}.empty-result{padding:25px;font-size:14px}.print-note{display:none}[hidden]{display:none!important}
@media(min-width:1600px){.hero-copy{padding-left:120px}.hero-grid{max-width:1600px}.hero-image{height:640px}}
@media(max-width:1150px){.header-inner{padding:0 28px}.nav{gap:16px}.nav a{font-size:11px}.brand-name{font-size:17px}.brand-mark{width:31px}.hero-copy{padding-left:48px;padding-right:30px}.hero h1{font-size:36px}.hero-image{height:540px}.hero .actions{flex-direction:column;align-items:start}.hero .button{min-width:215px}.intro-grid{gap:60px}.recruit-layout{gap:50px}.contact-layout{align-items:start;flex-direction:column;gap:28px}.job-cards{grid-template-columns:repeat(2,1fr)}.service-card{padding:23px 19px}.service-card h3{font-size:22px}}
@media(max-width:960px){.header{height:80px}.nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:24px 30px 32px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #243b5010;max-height:calc(100dvh - 80px);overflow:auto}.nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav a{font-size:15px;padding:15px 8px;border-bottom:1px solid var(--line)}.nav a[aria-current=page]:after{display:none}.nav .nav-contact{margin-top:18px;text-align:center}.menu-button{display:flex}.wrap{width:calc(100% - 56px)}.hero-copy{padding-left:28px;padding-right:22px}.hero-grid{grid-template-columns:48% 52%}.hero h1{font-size:32px}.hero-image img{border-top-left-radius:90px}.hero-description{font-size:13px}.hero-foot{font-size:11px}.hero-foot-right span{display:none}.services{grid-template-columns:repeat(2,1fr);gap:20px}.section{padding:75px 0}.audience a{padding:7px 15px;gap:10px}.audience strong{font-size:12px}.audience small{font-size:9px}.audience .arrow{display:none}.intro-grid{gap:45px}.availability-layout{gap:35px}.recruit-layout{gap:35px}.news-layout{grid-template-columns:.6fr 1.4fr;gap:35px}.news-row{grid-template-columns:82px 70px 1fr 18px;gap:12px}.office-grid{gap:35px}.footer-grid{gap:35px}.service-detail{grid-template-columns:1fr 230px;gap:30px}.staff-grid{gap:20px}.link-cards{grid-template-columns:repeat(2,1fr)}.steps{gap:20px}.step h3{font-size:16px}}
@media(max-width:700px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}body{font-size:15px}.header{height:72px}.header-inner{padding:0 20px;gap:12px}.brand-name{font-size:16px;letter-spacing:.04em}.brand-note{font-size:8px;margin-top:3px}.brand{gap:8px}.brand-mark{width:27px;height:33px}.menu-button{padding:8px;border:0;font-size:10px;flex-direction:column;gap:0;line-height:1.2}.menu-button svg{width:21px;height:21px}.nav{top:72px}.section{padding:60px 0}.eyebrow{font-size:10px;margin-bottom:14px}.section-title{font-size:28px}.section-head{display:block;margin-bottom:28px}.section-head .text-link{margin-top:22px}.section-head p{margin-top:20px;font-size:13px}.hero{padding-top:0}.hero-grid{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:36px 24px 32px;width:100%}.hero-place{font-size:10px;margin-bottom:18px}.hero h1{font-size:clamp(30px,8.5vw,42px);line-height:1.65;letter-spacing:.09em}.hero-description{margin-top:19px;font-size:13px;line-height:2.05}.hero .actions{flex-direction:row;gap:10px;margin-top:23px}.hero .button{min-width:0;min-height:48px;padding:11px 15px;gap:12px;font-size:12px;flex:1}.hero .button svg{width:17px}.hero-image{height:270px;width:calc(100% - 24px);align-self:flex-end}.hero-image img{border-radius:65px 0 0 4px;object-position:center 45%}.hero-image figcaption{font-size:8px;bottom:9px;right:10px}.hero-foot{padding:21px 0;display:block;font-size:10px;line-height:1.9}.hero-foot-right{margin-top:8px;justify-content:space-between}.scroll-note{display:none}.hero-foot-right span{display:block!important;font-size:9px}.audience{grid-template-columns:1fr;padding:12px 0}.audience a,.audience a:first-child{padding:17px 3px;border-right:0;border-bottom:1px solid var(--line);gap:17px}.audience a:last-child{border-bottom:1px solid var(--line)}.audience strong{font-size:14px}.audience small{font-size:10px}.audience .arrow{display:block}.audience a>svg:first-child{width:26px}.home-services{padding-top:42px}.services{gap:14px}.service-card{padding:20px 16px}.service-icon{height:48px;width:48px;margin-bottom:18px}.service-icon svg{width:29px;height:29px}.service-number{font-size:12px}.service-card .tag{font-size:9px}.service-card h3{font-size:20px;margin-bottom:10px}.service-card p{font-size:12px;line-height:1.9}.card-bottom{font-size:10px;padding-top:13px;margin-top:19px}.card-bottom svg{width:15px}.sub-service{display:block;font-size:12px;padding:17px}.sub-service .text-link{font-size:12px;margin-top:7px}.status-label{display:inline-block;margin:8px 0 0}.intro-grid{grid-template-columns:1fr;gap:32px}.intro-image{max-width:300px;margin:0 auto;order:2}.intro-copy{order:1}.intro-copy p{font-size:14px;line-height:2.1}.intro-image img{aspect-ratio:4/4.4}.values{grid-template-columns:1fr;gap:25px;margin-top:37px;padding-top:30px}.value{display:grid;grid-template-columns:37px 1fr;gap:0 15px}.value-num{grid-row:span 2;font-size:25px;margin:0}.values h3{font-size:17px}.values p{margin-top:7px}.availability-layout{grid-template-columns:1fr;gap:28px}.availability-box{padding:23px 18px}.day{padding:12px 0}.day small{font-size:8px}.availability-layout p{font-size:13px}.steps{grid-template-columns:1fr;gap:22px}.step{display:grid;grid-template-columns:42px 1fr;gap:0 12px;padding-top:20px}.step-number{grid-row:span 2;font-size:27px}.step h3{font-size:17px}.step p{margin-top:8px}.recruit-layout{grid-template-columns:1fr;gap:30px}.recruit-image{order:2}.recruit-band .recruit-image img{border-radius:45px 4px 4px 4px}.recruit-band .button{width:100%}.news-layout{grid-template-columns:1fr;gap:28px}.news-row{grid-template-columns:90px 80px 1fr;gap:9px 12px;padding:19px 0}.news-row h3{grid-column:1/3;grid-row:2}.news-row>svg{grid-column:3;grid-row:1/3;justify-self:end}.news-layout>.news-side .text-link{margin-top:20px}.office-grid{grid-template-columns:1fr;gap:32px}.area-panel{padding:27px}.area-panel h3{font-size:28px}.office-info>div{grid-template-columns:83px 1fr;gap:12px;font-size:12px}.contact-band{padding:44px 0}.contact-band h2{font-size:26px}.contact-layout{gap:27px}.contact-choices{display:flex;flex-direction:column;align-items:start;gap:18px;width:100%}.contact-choices>.button{width:100%}.phone{font-size:28px}.footer{padding:45px 0 86px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block;line-height:2.3;margin-top:30px}.footer-bottom nav{gap:17px;margin-top:10px;flex-wrap:wrap}.mobile-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:45;background:var(--paper);padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:9px;border-top:1px solid var(--line)}.mobile-bar a{display:flex;justify-content:center;align-items:center;gap:8px;min-height:44px;font-size:12px;border:1px solid var(--navy);border-radius:2px}.mobile-bar a:last-child{background:var(--navy);color:#fff}.mobile-bar svg{width:17px;height:17px}.breadcrumb{font-size:10px;padding-top:20px;gap:9px}.page-hero{padding:32px 0 36px}.page-hero h1{font-size:32px}.page-hero .lead{font-size:14px;margin-top:20px}.body-section{padding:38px 0 60px}.prose{font-size:14px}.prose h2{font-size:24px;margin-top:35px}.prose h3{font-size:17px}.prose .legacy-grid{grid-template-columns:1fr}.service-detail{display:flex;flex-direction:column;gap:35px}.service-detail aside{position:static;width:100%}.example-list{grid-template-columns:1fr}.example{padding:20px}.link-cards{grid-template-columns:1fr}.staff-grid{grid-template-columns:1fr;gap:24px}.staff-card img{aspect-ratio:1.4;max-height:300px}.stats{margin-bottom:26px}.stat{padding:16px 6px}.stat strong{font-size:26px}.stat span{font-size:9px}.profile{grid-template-columns:1fr;gap:25px}.profile img{width:230px;margin:auto}.job-cards{grid-template-columns:1fr 1fr;gap:12px}.job-card{padding:18px 14px;gap:10px}.job-card h2{font-size:15px}.job-card .salary{font-size:19px}.job-card .text-link{font-size:11px;gap:12px}.job-detail{padding:23px 19px;scroll-margin-top:90px}.job-detail h2{font-size:23px}.job-detail dl>div{display:block;padding:15px 0}.job-detail dt{margin-bottom:9px}.job-detail dd{font-size:13px}.filter-bar{gap:8px}.filter-bar button{padding:9px 15px;font-size:12px}.news-page .news-row h3{font-size:14px}.document-link{padding:20px 17px;gap:14px}.document-link strong{font-size:13px}.document-link small{font-size:10px}.document-link>svg{width:25px}.contact-grid{grid-template-columns:1fr}.contact-card{padding:26px}.form-panel{padding:25px 19px}.form-row{grid-template-columns:1fr;gap:0}.form-panel .form-item{margin:20px 0}.form-panel input,.form-panel select,.form-panel textarea{font-size:16px}.day-select{display:flex;gap:6px;margin-bottom:20px}.day-select button{flex:1;border:1px solid var(--line);background:#fff;padding:9px 0;color:var(--navy);font-size:13px}.day-select button[aria-pressed=true]{background:var(--navy);color:#fff}.mobile-slots{display:block}.mobile-slots .slot{display:flex;justify-content:space-between;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line);font-size:13px}.availability-table-wrap.enhanced{display:none}.legend{font-size:11px;gap:13px}.notice{padding:16px;font-size:12px}.contents{gap:6px}.contents a{font-size:11px;padding:7px 10px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero-copy{padding:29px 18px}.hero h1{font-size:29px}.brand-name{font-size:14px}.brand-note{font-size:7px}.header-inner{padding:0 16px}.services{gap:10px}.service-card{padding:18px 12px}.service-card h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.header,.footer,.mobile-bar,.contact-band,.menu-button,.actions,.filter-bar{display:none}body{background:#fff;color:#000}.wrap{width:100%;max-width:none}.section,.body-section{padding:20px 0}.page-hero{padding:20px 0}.job-detail,.service-card{break-inside:avoid}.print-note{display:block}.availability-table-wrap.enhanced{display:block}.mobile-slots,.day-select{display:none}}
.job-detail .salary-note{font-size:12px;color:var(--muted)}
@media(max-width:700px){.hero h1{font-size:clamp(24px,7.6vw,34px)}.job-cards{grid-template-columns:1fr;gap:15px}.job-card{padding:23px;gap:10px}.job-card .eyebrow{margin-bottom:3px}.job-card h2{font-size:19px}.job-card .salary{font-size:24px}.job-card p{font-size:13px}.job-card .text-link{font-size:12px;align-self:start;justify-self:start}.page-hero h1{font-size:28px;text-wrap:balance}.prose{overflow-wrap:anywhere}.footer-links a{min-height:30px}}
