:root{--pink:#dc48bb;--beige:#ded9c2;--black:#0b0b0b;--serif:Georgia,'Times New Roman','Hiragino Mincho ProN','Yu Mincho',serif;--sans:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#080808;background:white;font-family:var(--serif);line-height:1.75}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--pink);outline-offset:4px}button{border-radius:0}.skip-link{position:fixed;left:12px;top:-100px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:8px}.content{width:min(100%,980px);margin-inline:auto}.navigation{background:var(--black);height:40px}.navigation nav{max-width:980px;margin:auto;display:flex;align-items:center;gap:30px;height:100%;padding:0 4px}.navigation a{color:#bbb;font-size:18px;line-height:28px;font-style:italic;text-decoration:none;border-top:1px solid #bbb;border-bottom:2px solid #bbb;white-space:nowrap}.navigation a:hover,.navigation a[aria-current]{color:#ffff9c}.brand{height:172px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 3px #0004;position:relative;z-index:1}.brand img{width:473px;height:160px;object-fit:contain}.hero{position:relative;height:464px;overflow:hidden}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:50% 46%;filter:brightness(.78)}.hero-content{position:absolute;inset:0;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:18px 20px;color:white;text-align:center}.hero h1{font-size:clamp(34px,5.1vw,72px);line-height:1.25;font-weight:700;margin:0 0 20px;text-shadow:2px 4px 7px #0009;letter-spacing:-1.5px}.hero h1 span{display:block;margin-top:8px}.hero .emblem{width:131px;height:141px;object-fit:contain;margin:0 0 16px}.hero-cta{border:2px solid white;text-decoration:none;padding:0 22px;font-family:var(--sans);font-size:22px;background:#ffffff15}.hero-cta:hover{background:#fff;color:#111}.section-title{text-align:center;padding:36px 12px 14px}.section-title h1,.section-title h2{font-family:var(--serif);font-size:72px;line-height:1.2;font-weight:700;margin:0;letter-spacing:-1.6px}.section-title span{display:block;width:285px;max-width:70%;height:1px;background:var(--pink);margin:14px auto 6px}.section-title p{font-size:20px;margin:0;line-height:1.88}.gallery{position:relative;overflow:hidden;margin:40px auto 20px;max-width:100%}.gallery-track{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,205px);grid-auto-columns:205px;gap:5px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}.gallery-track::-webkit-scrollbar{display:none}.gallery .zoom-image{height:100%;width:100%;scroll-snap-align:start}.gallery .zoom-image img{height:100%;width:100%;object-fit:cover}.gallery-prev,.gallery-next{position:absolute;top:calc(50% - 24px);width:44px;height:48px;border:0;color:#fff;background:#0008;font:40px/1 Georgia;z-index:2;opacity:.75}.gallery-prev{left:0}.gallery-next{right:0}.gallery-prev:hover,.gallery-next:hover{opacity:1;background:#000c}.zoom-image{display:block;background:none;border:0;padding:0;width:100%;cursor:zoom-in}.zoom-image>img{width:100%;object-fit:contain}.concept{padding:0 24px 25px}.concept-copy{font-size:18px;line-height:1.8}.concept-copy p{margin:0}.concept-copy p:nth-child(3),.concept-copy p:nth-child(5),.concept-copy p:nth-child(7),.concept-copy p:nth-child(9){margin-bottom:26px}.services{padding:0 28px 40px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:18px;font-family:var(--sans)}.service-card{background:#ccc}.service-card>img{width:100%;height:334px;object-fit:cover}.service-copy{padding:28px 30px 32px;min-height:265px}.card-top{display:flex;align-items:center;gap:16px;justify-content:space-between}.card-top h3{font-size:18px;font-weight:500;margin:0}.card-top a{font-size:13px;color:#fff;background:#174357;text-decoration:none;padding:10px 16px;white-space:nowrap}.card-top a:hover{background:#0b2735}.service-copy h4{font-size:27px;font-weight:400;line-height:1.35;margin:20px 0}.service-copy p{font-size:14px;line-height:1.8;margin:0;font-weight:600}.banners{padding:8px 3px}.banner{display:block;margin:12px auto;transition:opacity .15s}.banner:hover{opacity:.86}.banner img{width:100%}.contact{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:24px;padding:24px 24px 34px;font-family:var(--sans);scroll-margin-top:20px}.contact-brand{width:100%;max-height:436px;object-fit:contain}.contact form{width:100%}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:14px;margin:0 0 16px}input,textarea{display:block;border:1px solid #222;background:#fff;padding:8px;width:100%;margin-top:5px;min-height:38px;font-family:var(--sans);border-radius:0}input:focus,textarea:focus{outline:2px solid var(--pink);outline-offset:1px}textarea{resize:vertical}form button{display:block;width:100%;background:#000;color:#fff;border:0;padding:9px;font-size:15px}.form-note,.form-status{font-size:12px;margin:8px 0}.form-status{color:#6d285b}.team-photo{width:100%;max-height:540px;object-fit:cover;object-position:center}.organization{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));font-family:var(--sans);margin:0 auto 10px}.organization>div{border:1px solid #333;border-right:0;text-align:center;min-height:177px;padding:30px 8px}.organization>div:last-child{border-right:1px solid #333}.organization dt{font-weight:700;font-size:17px;margin-bottom:26px}.organization dd{margin:0;font-size:19px}.organization>div:last-child dd{font-size:14px}.organization a{text-decoration:none;overflow-wrap:anywhere}footer{padding:35px 20px 28px;background:var(--beige);text-align:center;font-family:var(--sans)}.newsletter{max-width:450px;margin:auto}.newsletter h2{font-size:22px;margin:0 0 8px;font-weight:500}.newsletter p{font-size:12px;margin:5px 0 12px}.registration-link{display:block;width:100%;background:white;color:#000;padding:6px;text-decoration:none}.registration-link:hover{background:#111;color:#fff}.cookie-link{display:inline-block;font-size:14px;color:#555;margin-top:45px;text-decoration:none}.cookie-link:hover{text-decoration:underline}.contact-toggle{position:fixed;bottom:24px;right:24px;width:64px;height:64px;background:#000;color:#fff;border:0;border-radius:22px;display:grid;place-items:center;z-index:40;box-shadow:0 4px 16px #0002}.contact-toggle svg{width:32px;height:32px}#contact-panel{position:fixed;right:24px;bottom:102px;width:min(320px,calc(100vw - 32px));background:#fff;padding:24px;border:1px solid #ddd;box-shadow:0 10px 50px #0003;z-index:45;font-family:var(--sans)}#contact-panel h2{font-size:23px;margin:0}#contact-panel p{font-size:13px}#contact-panel>a{display:block;padding:8px 12px;border:1px solid #ddd;text-decoration:none;margin:8px 0}#contact-panel>a:hover{background:var(--beige)}.panel-close{position:absolute;right:8px;top:6px;background:none;border:0;font-size:26px}.lightbox{background:#fff;color:#111;width:fit-content;max-width:94vw;max-height:94dvh;padding:24px;border:0;overflow:auto;text-align:center}.lightbox::backdrop{background:#000d}.lightbox img{max-width:85vw;max-height:75dvh;object-fit:contain;margin:auto}.lightbox-close{position:sticky;float:right;top:0;width:36px;height:36px;background:#000;color:#fff;border:0;font-size:28px;line-height:1;z-index:1}.lightbox p{font-size:16px;margin:8px 0}.lightbox>a{font-size:13px}.intro{text-align:center;padding:10px 12px 30px}.intro .section-title{padding-top:42px}.silver-heading{font-family:'Hiragino Mincho ProN','Yu Mincho',var(--serif);font-size:clamp(30px,6.4vw,76px);line-height:1.35;letter-spacing:-2px;color:#999;margin:4px 0 28px;font-weight:700}.intro>p{font-size:19px;line-height:1.75;margin:0}.intro+.gallery{margin-top:4px}.glove-order{padding:22px 24px 6px}.glove-order .banner{margin:24px 0 14px}.uniform-hero{height:358px;width:100%;object-fit:cover;object-position:50% 45%}.catalog .section-title{padding-top:42px}.catalog>.zoom-image{margin:8px auto 24px}.catalog>.banner{margin:36px 3px 0}.uniform-prices{overflow:hidden}.uniform-prices img{margin-top:-3.1%;margin-bottom:-4%;}.pants-slider{max-width:880px;margin:auto}.pants-slides figure{margin:0}.pants-slides figure[hidden]{display:none}.pants-slides .zoom-image img{height:460px;object-fit:contain}.pants-slides figcaption{text-align:center;font-size:16px}.slider-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin:10px 0 24px}.slider-controls button{font-size:28px;border:1px solid #ddd;background:#fff;width:40px;height:40px;line-height:1}.cap .cap-chart{max-width:760px;margin:10px auto 30px}.cap .banner{margin-bottom:10px}.study-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:493px;border:1px solid #333;font-family:var(--sans)}.study-row+.study-row{border-top:0}.study-row video{width:100%;aspect-ratio:1.2;object-fit:contain;background:#101820}.study-copy{text-align:center;padding:36px 16px}.study-copy h2{font-size:34px;line-height:1.5;margin:0 0 34px;letter-spacing:-.5px}.study-copy p{font-size:14px;font-weight:600;line-height:1.9;margin:0}.study>.zoom-image{margin:10px 0}.documents{margin:24px 0}.documents .gallery-track{grid-template-rows:550px;grid-auto-columns:400px;gap:24px}.documents .zoom-image img{object-fit:contain}.study .banner{max-width:819px;margin:26px auto 20px}.policy{padding:48px 24px 70px;min-height:65vh;font-family:var(--sans)}.policy h1{font-size:36px}.policy h2{font-size:22px;margin-top:32px}.policy p{font-size:15px;line-height:2}
@media(min-width:1100px){.hero h1{font-size:72px}.hero{height:540px}.hero-content{padding:28px 20px}.hero .emblem{margin-top:8px}.about .team-photo{height:540px}.organization{max-width:1400px}}
@media(max-width:700px){.navigation{height:auto;min-height:47px}.navigation nav{justify-content:center;gap:14px;padding:8px 10px;flex-wrap:wrap}.navigation a{font-size:14px;line-height:23px}.brand{height:124px}.brand img{width:330px;height:112px}.hero{height:490px}.hero-content{padding:26px 12px}.hero h1{font-size:40px;line-height:1.25;letter-spacing:-1px;margin-bottom:18px}.hero h1 span{font-size:31px;margin-top:18px}.hero .emblem{width:112px;height:122px;margin:10px 0 24px}.hero-cta{font-size:18px;padding:4px 16px}.hero-photo{object-position:50% 50%}.section-title{padding-top:28px}.section-title h1,.section-title h2{font-size:46px;letter-spacing:-1px}.section-title p{font-size:16px}.section-title span{width:220px;margin-top:12px}.gallery{margin-top:24px;margin-bottom:10px}.gallery-track{grid-template-rows:repeat(2,155px);grid-auto-columns:155px;gap:4px}.gallery-prev,.gallery-next{width:32px;height:40px;font-size:30px}.concept{padding:0 20px 20px}.concept-copy{font-size:15px;line-height:1.95;margin-top:10px}.concept-copy p:nth-child(3),.concept-copy p:nth-child(5),.concept-copy p:nth-child(7),.concept-copy p:nth-child(9){margin-bottom:22px}.services{padding:0 16px 24px}.service-grid{grid-template-columns:1fr;gap:20px}.service-card>img{height:auto;aspect-ratio:458/334;object-fit:cover}.service-copy{min-height:0;padding:24px}.card-top h3{font-size:16px}.card-top a{font-size:12px;padding:8px 12px}.service-copy h4{font-size:25px;margin:18px 0}.service-copy p{font-size:13px}.banners{padding:0 6px}.banner{margin:10px auto}.contact{grid-template-columns:1fr;padding:16px 20px 28px;gap:0}.contact-brand{max-height:250px;width:188px;margin:0 auto 20px}.name-fields{gap:16px}.contact form{margin:0 auto;max-width:500px}.organization{grid-template-columns:1fr 1fr}.organization>div{min-height:145px;padding:20px 8px;border-bottom:0}.organization>div:nth-child(2){border-right:1px solid #333}.organization>div:nth-child(n+3){border-bottom:1px solid #333}.organization dt{font-size:15px;margin-bottom:20px}.organization dd{font-size:16px}.organization>div:last-child dd{font-size:11px}.team-photo{height:auto;aspect-ratio:1.8;object-fit:cover}footer{padding-bottom:36px}.newsletter h2{font-size:21px}.newsletter p{font-size:11px}.contact-toggle{width:54px;height:54px;right:16px;bottom:16px;border-radius:18px}#contact-panel{right:16px;bottom:82px}.intro{padding:0 18px 25px}.intro .section-title{padding-top:32px}.silver-heading{font-size:32px;letter-spacing:-1px;margin:12px 0 22px}.intro>p{font-size:15px;line-height:1.9;text-align:left}.intro>p br{display:none}.glove-order{padding:20px 6px 5px}.uniform-hero{height:220px}.catalog .section-title{padding-top:30px}.catalog>.zoom-image{margin-bottom:16px}.catalog>.banner{margin:20px 4px 0}.pants-slider{padding:0 8px}.pants-slides .zoom-image img{height:auto;aspect-ratio:1.6}.cap .cap-chart{margin:10px 0 24px}.study-row{grid-template-columns:1fr;border-left:0;border-right:0}.study-copy{padding:30px 18px}.study-copy h2{font-size:27px;margin-bottom:24px}.study-copy p{font-size:13px;line-height:2}.study-row video{aspect-ratio:16/9}.study-row:nth-child(2) .zoom-image{padding:0 8px 20px}.study>.zoom-image{padding:0 4px}.documents .gallery-track{grid-template-rows:400px;grid-auto-columns:290px;gap:12px}.study .banner{margin:16px 4px}.policy{padding:30px 20px 50px}.policy h1{font-size:27px}.policy h2{font-size:21px}.policy p{font-size:14px}.lightbox{padding:14px}.lightbox img{max-width:84vw}.lightbox p{font-size:13px}}
@media(max-width:360px){.navigation nav{gap:8px}.navigation a{font-size:12px}.brand img{width:280px}.hero h1{font-size:34px}.hero h1 span{font-size:27px}.card-top{gap:8px}.card-top h3{font-size:14px}.service-copy{padding:20px}.section-title h1,.section-title h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@font-face{font-family:AriaCaslon;font-style:normal;font-weight:400;src:url(/assets/aria-caslon.woff2) format('woff2');font-display:swap}
.section-title h1,.section-title h2,.hero h1{font-family:AriaCaslon,Georgia,serif}
.hero .emblem{flex:none}
.sr-only,.company-field{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.newsletter input[type=email]{background:#000;color:white;border:0;font-size:15px;padding:10px 12px}.newsletter input[type=email]::placeholder{color:#ddd}.newsletter .consent{display:flex;align-items:flex-start;gap:10px;text-align:left;margin:14px 0;font-size:12px;line-height:1.6}.newsletter input[type=checkbox]{width:16px;height:16px;min-height:16px;flex:none;margin:2px 0 0;accent-color:#111}.newsletter form button{background:#fff;color:#111;font-size:16px}.newsletter form button:disabled{opacity:.6;cursor:wait}.newsletter .subscription-status{font-size:13px;text-align:left;line-height:1.7;margin:10px 0}.newsletter .unsubscribe-note{font-size:11px;margin-top:14px}
