:root{--navy:#12385d;--navy-deep:#0b2f55;--text:#12385d;--sub:#294b6b;--line:#e2e5e8;--paper:#fbfaf7;--green:#10b94b;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"palt" 1;background:#fff;margin:0;font-family:Shippori Mincho,Noto Serif CJK JP,Noto Serif JP,Hiragino Mincho ProN,Yu Mincho,serif;font-weight:400}a{color:inherit}.site-header{background:var(--navy-deep);color:#fff;align-items:center;height:72px;display:flex}.header-inner{width:min(calc(100% - 88px),var(--max));justify-content:space-between;align-items:center;gap:32px;margin:0 auto;display:flex}.brand-link{letter-spacing:.095em;white-space:nowrap;font-size:16px;font-weight:400;text-decoration:none}.site-header nav{letter-spacing:.07em;align-items:center;gap:52px;font-size:14px;display:flex}.site-header nav a{color:#fff;opacity:.96;text-decoration:none}.site-header a:hover,.site-header a:focus-visible{opacity:1;text-underline-offset:7px;text-decoration:underline}.hero{background:#d6cbb9;grid-template-columns:minmax(0,1fr) min(50vw,560px);min-height:500px;display:grid;overflow:hidden}.hero-copy-panel{background:url(/images/hero-1.jpeg) 50%/cover no-repeat;align-items:center;min-width:0;display:flex}.hero-copy{width:min(100%,680px);margin-left:auto;padding:44px 76px 48px 58px;transform:translateY(-5px)}.hero-company{color:var(--navy-deep);letter-spacing:.15em;margin:0 0 28px;font-size:14px;font-weight:400;line-height:1.7}.hero h1{color:var(--navy-deep);letter-spacing:.085em;margin:0;font-size:49px;font-weight:400;line-height:1.58}.hero-art{background:#d6cbb9;justify-content:center;align-items:center;display:flex}.hero-art img{object-fit:contain;width:100%;height:100%;display:block}.wrap{width:min(calc(100% - 88px),var(--max));margin:0 auto}.content-section+.content-section{border-top:1px solid var(--line)}.section-grid{grid-template-columns:230px minmax(0,1fr);align-items:start;column-gap:66px;display:grid}h2{color:var(--navy-deep);letter-spacing:.075em;margin:0;font-size:27px;font-weight:400;line-height:1.35}h2:after{content:"";background:var(--navy-deep);opacity:.78;width:40px;height:1px;margin-top:18px;display:block}.about-section{background:var(--paper)}.about-copy{max-width:720px;padding-top:0}.about-copy p{color:var(--sub);letter-spacing:.04em;margin:0;font-size:15.5px;line-height:2.05}.section-intro{color:var(--sub);letter-spacing:.04em;margin:0;font-size:15.5px;line-height:2.02}.services{grid-template-columns:repeat(3,1fr);margin-left:296px;display:grid}.service{text-align:center;min-height:226px;padding:12px 30px 10px}.service+.service{border-left:1px solid var(--line)}.service svg{width:55px;height:55px;color:var(--navy-deep);fill:none;stroke:currentColor;stroke-width:1.65px;margin:0 auto 19px}.service h3{color:var(--navy-deep);letter-spacing:.055em;margin:0 0 14px;font-size:18px;font-weight:500;line-height:1.55}.service p{max-width:245px;color:var(--sub);letter-spacing:.025em;margin:0 auto;font-size:13px;line-height:2}.service-note{color:var(--sub);text-align:center;letter-spacing:.035em;border-top:1px solid #e7e9eb;margin:25px 0 0 296px;padding-top:24px;font-size:13px;line-height:1.9}.contact-grid{grid-template-columns:.96fr 1.14fr;gap:22px;margin-left:296px;display:grid}.contact-card{text-align:center;background:#fff;border:1px solid #dce0e4;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;min-height:250px;padding:27px 24px;display:flex}.contact-card>svg{width:52px;height:40px;color:var(--navy-deep);fill:none;stroke:currentColor;stroke-width:1.7px}.contact-card h3{color:var(--navy-deep);letter-spacing:.055em;margin:15px 0 10px;font-size:16.5px;font-weight:500;line-height:1.5}.contact-address{color:var(--navy-deep);letter-spacing:.025em;margin:0 0 20px;font-size:12px}.button{border:1px solid var(--navy-deep);min-width:210px;min-height:40px;color:var(--navy-deep);letter-spacing:.035em;border-radius:2px;justify-content:center;align-items:center;padding:9px 18px;font-family:Noto Sans JP,Noto Sans CJK JP,Yu Gothic,Hiragino Kaku Gothic ProN,sans-serif;font-size:12px;font-weight:400;line-height:1.5;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.button:hover,.button:focus-visible{background:var(--navy-deep);color:#fff}.line-mark{background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-family:Arial,sans-serif;font-size:11px;font-weight:700;display:flex}.line-card h3{margin-bottom:7px}.line-content{justify-content:center;align-items:center;gap:19px;margin:0 0 14px;display:flex}.line-content p{color:var(--sub);letter-spacing:.02em;margin:0;font-size:12px;line-height:1.8}.qr{object-fit:contain;width:80px;height:80px}.line-button{color:#168941;border-color:#14a94b}.line-button:hover,.line-button:focus-visible{color:#fff;background:#14a94b}.fax{text-align:center;color:var(--navy-deep);letter-spacing:.09em;margin:24px 0 0 296px;font-size:18px;line-height:1.5}footer{background:var(--navy-deep);color:#fff;letter-spacing:.055em;justify-content:center;align-items:center;height:66px;font-size:12px;display:flex}@media (width<=900px){.site-header{height:64px}.header-inner{width:calc(100% - 40px)}.brand-link{font-size:14px}.site-header nav{gap:26px;font-size:12px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy-panel{min-height:300px}.hero-copy{width:100%;margin:0;padding:52px 30px 48px;transform:none}.hero-company{margin-bottom:20px;font-size:13px}.hero h1{letter-spacing:.075em;font-size:36px;line-height:1.56}.hero-art{background:#d6cbb9}.hero-art img{object-fit:contain;width:100%;height:auto}.wrap{width:calc(100% - 40px)}.content-section{padding:50px 0 48px}.section-grid{grid-template-columns:1fr;row-gap:27px}h2{font-size:24px}h2:after{margin-top:16px}.about-copy p,.section-intro{font-size:15px;line-height:2}.about-copy p+p{margin-top:23px}.services-heading{margin-bottom:24px}.services{grid-template-columns:1fr;margin-left:0}.service{min-height:0;padding:30px 10px}.service+.service{border-left:0;border-top:1px solid var(--line)}.service p{font-size:13px}.service-note{margin:20px 0 0;padding-top:22px}.contact{padding-top:50px;padding-bottom:30px}.contact-heading{margin-bottom:27px}.contact-grid{grid-template-columns:1fr;gap:17px;margin-left:0}.contact-card{min-height:230px}.fax{margin:22px 0 0}}@media (width<=560px){.site-header{height:60px}.header-inner{width:calc(100% - 28px)}.brand-link{display:none}.site-header nav{letter-spacing:.055em;justify-content:center;gap:32px;width:100%;font-size:12px}.hero-copy-panel{min-height:272px}.hero-copy{padding:43px 24px 40px}.hero-company{letter-spacing:.13em;margin-bottom:17px;font-size:12px}.hero h1{letter-spacing:.065em;font-size:31px;line-height:1.6}.wrap{width:calc(100% - 32px)}.content-section{padding:42px 0 40px}h2{font-size:22px}.about-copy p,.section-intro{font-size:14px;line-height:2}.service{padding:28px 6px}.service svg{width:50px;height:50px;margin-bottom:17px}.service h3{font-size:18px}.contact-card{padding:25px 14px}.line-content{flex-direction:column;gap:11px}.contact-address{font-size:11px}.button{min-width:200px}.fax{letter-spacing:.06em;font-size:16px}}:root{--navy:#0c3158;--navy-deep:#0b2f55;--text:#0c3158;--sub:#1f4568;--line:#e6e7e6;--paper:#fcfbf8;--max:1280px}body{color:var(--text);letter-spacing:.01em;font-feature-settings:"palt" 1;font-family:Noto Serif CJK JP,Noto Serif JP,Yu Mincho,YuMincho,Hiragino Mincho ProN,Hiragino Mincho Pro,serif;font-weight:400}.site-header{height:62px}.header-inner{width:min(100% - 76px,1320px)}.brand-link{letter-spacing:.09em;font-size:18px}.site-header nav{letter-spacing:.075em;gap:48px;font-size:14px}.hero{grid-template-columns:49.5% 50.5%;min-height:478px}.hero-copy-panel{align-items:center}.hero-copy{width:100%;max-width:none;margin:0;padding:34px clamp(42px,6.6vw,100px) 42px clamp(70px,7.5vw,110px);transform:translateY(18px)}.hero-company{letter-spacing:.12em;margin:0 0 26px;font-size:14px;line-height:1.7}.hero h1{letter-spacing:.075em;font-size:clamp(42px,3.35vw,50px);font-weight:400;line-height:1.62}.hero-art img{object-fit:cover;width:100%;height:100%}.wrap{width:min(calc(100% - 140px),var(--max))}.content-section{padding:46px 0 44px}.section-grid{grid-template-columns:215px minmax(0,1fr);column-gap:45px}h2{letter-spacing:.07em;font-size:25px;line-height:1.38}h2:after{width:40px;margin-top:14px}.about-copy{max-width:760px}.about-copy p{letter-spacing:.035em;font-size:15px;line-height:2.03}.about-copy p+p{margin-top:22px}.services-heading{margin-bottom:28px}.section-intro{letter-spacing:.035em;font-size:15px;line-height:1.95}.service svg{stroke-width:1.55px;width:56px;height:56px;margin-bottom:14px}.service h3{letter-spacing:.05em;margin-bottom:10px;font-size:17.5px;font-weight:500;line-height:1.5}.service p{letter-spacing:.02em;max-width:245px;font-size:12.5px;line-height:1.9}.service-note{margin:16px 0 0 260px;padding-top:17px;font-size:13px;line-height:1.8}.contact{padding-top:40px;padding-bottom:28px}.contact-grid{grid-template-columns:.92fr 1.08fr;gap:18px;margin-left:260px}.contact-card{min-height:205px;padding:19px 20px}.contact-card>svg{width:50px;height:38px}.contact-card h3{margin:11px 0 8px;font-size:16px;line-height:1.45}.contact-address{margin-bottom:15px;font-size:11.5px}.button{min-width:205px;min-height:38px;font-size:11.5px}.line-mark{width:40px;height:40px;font-size:10px}.line-content{gap:16px;margin-bottom:10px}.line-content p{font-size:11.5px;line-height:1.72}.qr{width:76px;height:76px}.fax{margin:17px 0 0 260px;font-size:18px;line-height:1.45}footer{height:68px;font-size:12px}@media (width>=1400px){.hero{min-height:510px}.hero h1{font-size:50px}.content-section{padding-top:52px;padding-bottom:50px}}@media (width<=900px){.site-header{height:60px}.header-inner{width:calc(100% - 36px)}.brand-link{font-size:14px}.site-header nav{gap:22px;font-size:12px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy-panel{min-height:285px}.hero-copy{padding:44px 28px 40px;transform:none}.hero-company{margin-bottom:18px;font-size:12.5px}.hero h1{font-size:35px;line-height:1.55}.hero-art{aspect-ratio:1.22;height:auto}.hero-art img{object-fit:cover}.wrap{width:calc(100% - 42px)}.content-section{padding:42px 0 40px}.section-grid{grid-template-columns:1fr;row-gap:24px}h2{font-size:23px}.about-copy p,.section-intro{font-size:14px;line-height:1.95}.services-heading{margin-bottom:22px}.services,.service-note,.contact-grid,.fax{margin-left:0}.services{grid-template-columns:1fr}.service{min-height:0;padding:25px 12px}.service+.service{border-left:0;border-top:1px solid var(--line)}.service p{font-size:13px}.service-note{margin-top:10px}.contact{padding-top:38px}.contact-grid{grid-template-columns:1fr;gap:14px}.contact-card{min-height:196px}.fax{margin-top:18px}}@media (width<=560px){.site-header nav{gap:16px}.brand-link{font-size:13px}.site-header nav{font-size:11px}.hero-copy-panel{min-height:260px}.hero-copy{padding:38px 23px 34px}.hero-company{margin-bottom:16px;font-size:11.5px}.hero h1{letter-spacing:.055em;font-size:31px;line-height:1.55}.wrap{width:calc(100% - 34px)}.content-section{padding:36px 0 34px}h2{font-size:21px}h2:after{margin-top:11px}.about-copy p,.section-intro{font-size:13.5px;line-height:1.92}.about-copy p+p{margin-top:18px}.service svg{width:50px;height:50px}.service h3{font-size:16.5px}.service p{font-size:12.5px;line-height:1.85}.contact-heading{margin-bottom:18px}.contact-card{padding:18px 14px}.line-content{gap:12px}.qr{width:70px;height:70px}.button{min-width:190px}.fax{font-size:16px}}#about{padding:46px 0 29px}#services{padding:46px 0 30px}.services{margin-left:110px}.service{min-height:168px;padding:8px 24px 6px}.service-note{margin-top:14px;margin-left:110px;padding-top:14px;line-height:1.65}#contact{padding:34px 0 10px}.contact-heading{margin-bottom:14px}.contact-grid{margin-left:170px}.contact-card{height:204px;min-height:204px;padding:16px 18px}.fax{text-align:center;margin:14px 0 0}@media (width<=900px){#about,#services,#contact{padding:40px 0 36px}.services,.service-note,.contact-grid{margin-left:0}.service{height:auto;min-height:0;padding:24px 12px}.contact-card{height:auto;min-height:190px}.fax{margin:18px 0 0}}@media (width<=560px){#about,#services,#contact{padding:34px 0 31px}}#services{padding-bottom:22px}#contact{padding-bottom:4px}@media (width<=900px){#services,#contact{padding-bottom:36px}}@media (width<=560px){#services,#contact{padding-bottom:31px}}@media (width>=901px){.hero-company{letter-spacing:.115em;margin-bottom:26px;font-size:16.5px}}@media (width>=561px) and (width<=900px){.hero-company{letter-spacing:.12em;font-size:13.2px}}@media (width<=560px){.hero-company{letter-spacing:.12em;font-size:13px}}.hero{isolation:isolate;background:url(/images/hero-wide-v2.png) 50%/cover no-repeat;display:block;position:relative}.hero-copy-panel{z-index:2;width:100%;min-height:inherit;background:0 0;position:relative}.hero-art{z-index:1;pointer-events:none;background:0 0;display:none;position:absolute;inset:0;overflow:hidden}.hero-art img{object-fit:contain;width:auto;height:112%;position:absolute;top:-6%;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 15% 88%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 15% 88%,#0000 100%)}@media (width<=900px){.hero{background-position:62%;min-height:500px}.hero-copy-panel{background:0 0;min-height:500px}.hero-art{aspect-ratio:auto;height:100%}.hero-art img{object-fit:contain;width:auto;height:110%;top:-5%;left:50%;-webkit-mask-image:none;mask-image:none}}@media (width<=560px){.hero,.hero-copy-panel{min-height:430px}.hero-art img{left:54%}}
