@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--ink:#132f54;--muted:#60717e;--line:#d8dfe3;--surface:#f3f6f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:white;font-family:'Noto Sans JP',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #377d9e;outline-offset:6px}.header{height:108px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:white}.brand{display:flex;gap:12px;align-items:center}.brand svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:2}.brand strong{display:block;font-family:Arial,sans-serif;font-size:20px;letter-spacing:.11em}.brand small{display:block;font-size:12px;letter-spacing:.12em;margin-top:5px}.header nav{display:flex;align-items:center;gap:38px;font-size:14px;font-weight:500}.header nav a{padding:15px 0;border-bottom:1px solid transparent}.header nav a:hover{border-color:var(--ink)}.header nav a:last-child{margin-left:6px;padding:15px 24px;background:var(--ink);color:white}.header nav span{margin-left:25px}.menu{display:none}.hero{position:relative;min-height:660px;margin-left:5%;padding-top:50px}.hero-copy{position:relative;z-index:1;width:47%;padding:44px 0 90px;background:white;clip-path:polygon(0 0,100% 0,100% 87%,88% 100%,0 100%)}.eyebrow{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.16em;font-weight:700;margin:0 0 28px}h1{font-size:clamp(44px,4.8vw,76px);line-height:1.5;letter-spacing:.05em;margin:0 0 25px;font-weight:500}.hero-sub{font-size:17px;line-height:2;letter-spacing:.09em;margin-bottom:34px}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:14px;font-weight:500}.circle{display:flex;justify-content:center;align-items:center;border:1px solid #a0aeb8;border-radius:50%;width:42px;height:42px;transition:background .2s,color .2s}.text-link:hover .circle{background:var(--ink);color:white}.hero-photo{position:absolute;right:0;top:0;width:64%;height:580px;background-color:#d9e2e6;background-size:cover;background-position:center}.photo-caption{position:absolute;right:26px;bottom:27px;color:white;font:11px Arial,sans-serif;letter-spacing:.14em;text-shadow:0 1px 8px #152d40}.hero-bottom{position:absolute;bottom:24px;left:0;right:5.25%;display:flex;justify-content:space-between;font:11px Arial,sans-serif;letter-spacing:.17em}.hero-bottom span:last-child{display:flex;gap:18px;align-items:center}.hero-bottom i{height:32px;width:1px;background:#738593}.section{padding:108px 8%;scroll-margin-top:20px}.section-label>span{font:12px Arial,sans-serif;letter-spacing:.13em;font-weight:700}.section-label h2{font-size:22px;font-weight:500;letter-spacing:.08em;margin-top:20px}.about{position:relative;display:grid;grid-template-columns:1fr 1.6fr;overflow:hidden;padding-bottom:118px;background:var(--surface)}.about-copy{position:relative;z-index:1}.about h3{font-size:34px;letter-spacing:.08em;line-height:1.8;margin:0 0 30px;font-weight:500}.about p{font-size:16px;line-height:2.2;margin:0 0 22px}.about p:last-child{margin-bottom:0}.about-mark{position:absolute;left:5.5%;bottom:15px;font:bold 170px Arial,sans-serif;letter-spacing:-.09em;color:#e2e9ed}.section-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:50px}.section-top>p{font-size:15px;line-height:2;margin-top:0;color:var(--muted)}.business-list article{display:grid;grid-template-columns:70px 1fr 1.3fr;border-top:1px solid var(--line);gap:24px;padding:42px 0}.business-list article:last-child{border-bottom:1px solid var(--line)}.business-number{font:18px Arial,sans-serif;padding-top:6px;color:#7c8e9a}.business-title span{font:11px Arial,sans-serif;letter-spacing:.13em;color:var(--muted)}.business-title h3{font-size:25px;font-weight:500;margin:12px 0 0;letter-spacing:.05em}.business-description h4{font-size:18px;font-weight:500;margin:0 0 15px}.business-description p{font-size:15px;color:#526571;line-height:2;margin:0;max-width:440px}.company{background:var(--surface);display:grid;grid-template-columns:1fr 1.6fr;gap:30px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid var(--line);padding:27px 0;font-size:15px;line-height:2}.company dl>div:last-child{border-bottom:1px solid var(--line)}.company dt{color:var(--muted)}.company dd{margin:0}footer{background:var(--ink);color:white;padding:60px 8% 28px}footer .brand{width:fit-content}.footer-bottom{border-top:1px solid #ffffff30;margin-top:50px;padding-top:25px;display:flex;justify-content:space-between;align-items:center}.footer-bottom p{font:12px Arial,sans-serif;color:#bdc8cf}.footer-bottom a{font-size:13px;color:#dde4e8}@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:770px}.hero-photo{height:690px}.hero-copy{padding-top:70px;padding-bottom:110px}}@media(max-width:900px){.header{height:90px}.brand strong{font-size:17px}.header nav{gap:20px}.header nav a:last-child{padding:13px}.hero{min-height:640px}.hero-copy{width:52%;padding-top:35px}.hero-photo{width:62%;height:560px}.section{padding:80px 6%}.about{grid-template-columns:1fr 1.7fr;gap:30px}.about h3{font-size:28px}.business-list article{grid-template-columns:40px 1fr 1.2fr;gap:16px}.business-title h3{font-size:21px}.company{grid-template-columns:1fr 1.7fr}}
@media(max-width:640px){html{scroll-padding-top:20px}.header{height:84px;padding:0 6%}.brand svg{width:30px;height:34px}.brand{gap:8px}.brand strong{font-size:15px}.brand small{font-size:10px;letter-spacing:.03em}.menu{display:flex;gap:12px;background:none;border:0;padding:10px 0 10px 12px;color:var(--ink);font-size:13px}.menu span{font-size:18px}.header nav{display:none;position:absolute;top:84px;left:0;right:0;background:white;padding:20px 6% 30px;z-index:5;box-shadow:0 15px 25px #152d4010}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}.header nav a:last-child{margin:0}.hero{margin:0;padding:0;min-height:0;display:flex;flex-direction:column}.hero-copy{width:100%;clip-path:none;padding:28px 7% 37px}.eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:22px}h1{font-size:46px;line-height:1.5;margin-bottom:17px;letter-spacing:.04em}.hero-sub{font-size:15px;line-height:1.9;margin:0 0 24px}.text-link{font-size:14px;gap:22px}.circle{height:36px;width:36px}.hero-photo{position:relative;width:94%;height:290px;margin-left:6%;background-position:center}.photo-caption{font-size:8px;right:15px;bottom:18px}.hero-bottom{position:relative;bottom:auto;left:auto;right:auto;margin:22px 6% 30px;font-size:9px;letter-spacing:.09em}.hero-bottom span:last-child{gap:10px}.hero-bottom i{height:22px}.section{padding:60px 7%}.section-label>span{font-size:11px}.section-label h2{font-size:20px;margin:14px 0 30px}.about{display:block}.about h3{font-size:25px;line-height:1.8;letter-spacing:.04em;margin-bottom:23px}.about p{font-size:15px;line-height:2.1}.desktop{display:none}.about-mark{font-size:140px;bottom:0;left:auto;right:5%;opacity:.6}.section-top{display:block;margin-bottom:32px}.section-top>p{font-size:14px}.business-list article{grid-template-columns:30px 1fr;gap:10px 16px;padding:30px 0}.business-number{grid-row:1 / 3;font-size:16px}.business-title h3{font-size:23px;margin-top:9px}.business-description{grid-column:2;margin-top:13px}.business-description h4{font-size:16px;line-height:1.8;margin-bottom:10px}.business-description p{font-size:14px;line-height:2}.company{display:block}.company dl>div{grid-template-columns:1fr;gap:8px;padding:22px 0;font-size:14px}.company dt{font-size:13px}footer{padding:42px 7% 24px}.footer-bottom{margin-top:35px;gap:15px}.footer-bottom p{font-size:10px}.footer-bottom a{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-logo{display:block;position:relative;width:64px;height:48px;flex:none;overflow:hidden}.brand-logo img{position:absolute;max-width:none;width:143.177%;height:auto;left:-23.154%;top:-46.936%}footer .brand-logo{background:white;border:5px solid white;box-sizing:content-box;border-radius:2px}@media(max-width:640px){.brand-logo{width:48px;height:36px}.brand strong{font-size:14px}}

.company dd{min-width:0;overflow-wrap:anywhere}.company dd a{text-decoration:underline;text-decoration-color:#99aaba;text-underline-offset:5px}.company dd a:hover{text-decoration-color:currentColor}

.columns{border-top:1px solid var(--line)}.columns .section-top{align-items:center}.columns .section-label h2{margin-bottom:0}.column-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.column-intro h3{font-size:32px;font-weight:500;line-height:1.8;letter-spacing:.06em;margin:0 0 20px}.column-intro p:not(.eyebrow){font-size:16px;line-height:2.1;color:var(--muted)}.column-wait{border-left:1px solid var(--line);padding:20px 0 20px 45px}.column-kicker{font:12px Arial,sans-serif;letter-spacing:.15em;color:var(--muted)}.column-wait h4{font-weight:500;font-size:19px;line-height:1.8;margin:24px 0 10px}.column-wait .note-label{display:inline-flex;margin-top:20px}.note-label{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font:13px Arial,sans-serif}.note-label b{font-size:25px;letter-spacing:-.04em;color:var(--ink)}.footer-nav{display:flex;flex-wrap:wrap;gap:20px 30px;margin-top:35px;font-size:14px}.footer-nav a:hover{text-decoration:underline}.header nav a[aria-current="page"]{border-bottom-color:var(--ink)}.column-page-head{padding:30px 8% 75px;background:var(--surface)}.breadcrumbs{display:flex;gap:18px;align-items:center;font-size:14px;margin-bottom:65px;color:var(--muted)}.breadcrumbs a:hover{text-decoration:underline}.column-page-head h1{font-size:46px;line-height:1.7;letter-spacing:.06em}.column-lead{font-size:17px;line-height:2.1;color:var(--muted);margin-bottom:0}.column-archive .section-top{align-items:center}.column-empty{text-align:center;padding:75px 24px;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.column-empty h2{font-size:24px;font-weight:500;line-height:1.8;margin:22px 0 16px}.column-empty p{font-size:16px;line-height:2.1;color:var(--muted)}.return-home{margin-top:45px}.column-page-head .eyebrow{margin-bottom:20px}@media(min-width:641px) and (max-width:1050px){.header nav{gap:16px;font-size:13px}.header nav span{margin-left:10px}.header nav a:last-child{padding:13px}.header .brand strong{font-size:15px}.header .brand small{font-size:10px}.header .brand-logo{width:48px;height:36px}}@media(max-width:800px){.column-intro{gap:28px}.column-wait{padding-left:25px}.column-intro h3{font-size:27px}}@media(max-width:640px){.columns .section-top{display:flex;gap:15px;margin-bottom:35px}.columns .text-link{gap:10px;font-size:13px}.column-intro{display:block}.column-intro h3{font-size:25px}.column-intro p:not(.eyebrow){font-size:16px}.column-wait{border-left:0;border-top:1px solid var(--line);padding:30px 0 0;margin-top:30px}.column-wait h4{font-size:18px}.column-page-head{padding:24px 7% 45px}.breadcrumbs{margin-bottom:45px}.column-page-head h1{font-size:29px;line-height:1.8}.column-lead{font-size:16px}.column-archive .section-top{display:flex;gap:15px}.column-archive .section-label h2{margin-bottom:0}.column-empty{padding:48px 20px}.column-empty h2{font-size:21px}.column-empty p{font-size:16px}.footer-nav{gap:18px 25px}.header nav.open{font-size:14px}}
