:root{--primary:#174b65;--on-primary:#fff;--container:#dcebf2;--surface:#fcfdfc;--surface-low:#f0f4f4;--ink:#192c35;--muted:#52656d;--outline:#d4dfe2;--green:#d2e5cf;--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--surface);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #1568b6;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.45;letter-spacing:.025em}h2{font-size:34px;font-weight:600}h3{font-size:21px;font-weight:600}.icon{flex-shrink:0;vertical-align:middle}.wrap{max-width:1168px;margin:0 auto;padding:0 32px}.skip{position:fixed;left:16px;top:-100px;padding:12px 24px;background:var(--primary);color:white;z-index:10}.skip:focus{top:12px}.header{background:rgba(252,253,252,.97);border-bottom:1px solid #e6ecec;position:sticky;top:0;z-index:5}.header-inner{max-width:1328px;margin:auto;padding:22px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:16px;width:max-content;white-space:nowrap}.brand-mark{font-family:Arial,sans-serif;font-size:43px;line-height:1;font-weight:600;letter-spacing:-3px;color:var(--primary);display:inline-block}.brand-mark>span{font-size:27px;position:relative;top:-2px;margin:0 1px;letter-spacing:-3px}.brand-name{font-weight:600;letter-spacing:.045em;font-size:18px}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a:not(.nav-document):hover{text-decoration:underline;text-underline-offset:6px}.nav-document{display:flex;gap:14px;align-items:center;background:var(--container);padding:10px 20px;border-radius:100px;color:var(--primary)}.nav-document:hover{background:#c8e0eb}.menu-button{display:none}.eyebrow{font-family:Arial,sans-serif;color:var(--primary);font-weight:600;font-size:12px;letter-spacing:.18em}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center;padding-top:76px;padding-bottom:84px}.hero-copy>.eyebrow{margin-bottom:26px}.hero h1{font-size:clamp(36px,4.05vw,56px);font-weight:600;letter-spacing:.035em;line-height:1.55;white-space:nowrap}.hero-description{color:var(--muted);margin-top:25px;font-size:17px;line-height:2}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;border-radius:100px;padding:12px 25px;font-size:14px;font-weight:600;border:0;transition:background .2s}.primary{background:var(--primary);color:var(--on-primary)}.primary:hover{background:#0e3851}.hero .button{margin-top:34px}.hero-art{background:#e7eff0;min-height:428px;padding:30px;border-radius:32px;position:relative;overflow:hidden}.art-top,.art-bottom{display:flex;align-items:center;justify-content:space-between}.art-top{font:11px/1.5 Arial,sans-serif;letter-spacing:.12em;color:var(--primary)}.art-dot{width:9px;height:9px;border-radius:50%;background:var(--primary)}.art-grid{width:282px;height:282px;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px auto 24px}.shape-one{border-radius:100% 0 0 0;background:#acc8d4}.shape-two{border-radius:50%;background:var(--green);position:relative}.shape-two:after{content:"";position:absolute;background:#e7eff0;inset:38%;border-radius:50%}.shape-three{border-radius:0 0 0 100%;background:#2c5d74}.shape-four{border-radius:0 65% 65% 65%;background:#f9fbf8;transform:rotate(0deg)}.art-bottom{font-size:11px;letter-spacing:.06em;color:var(--primary)}.art-bottom .icon{width:20px;height:20px}.intro-band{background:var(--surface-low)}.intro{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:64px;padding-bottom:64px}.intro>.eyebrow{padding-top:13px}.intro h2{margin-bottom:24px}.intro p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:2}.intro p+p{margin-top:13px}.mobile-br{display:none}.section{padding-top:80px;padding-bottom:80px}.section-heading{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:32px}.section-heading .eyebrow,.company-heading .eyebrow{margin-bottom:11px}.section-note{color:var(--muted);font-size:14px;max-width:460px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{padding:27px 23px 29px;border-radius:24px;background:var(--surface-low)}.service-card:nth-child(2){background:#eaf0f5}.service-card:nth-child(3){background:#edf2e9}.service-card:nth-child(4){background:#f2f0ea}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.icon-disc{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:white;border-radius:16px;color:var(--primary)}.index{font:12px Arial,sans-serif;color:#60737b}.service-en{font:10px Arial,sans-serif;letter-spacing:.12em;color:var(--primary);margin-bottom:12px}.service-card h3{font-size:19px;margin-bottom:15px;letter-spacing:0}.service-card>p:last-child{font-size:14px;color:var(--muted);line-height:1.9}.company-surface{background:#f0f4f4}.company-layout{display:grid;grid-template-columns:1fr 2fr;gap:40px}.company-heading>p:not(.eyebrow){margin-top:24px;color:var(--muted);font-size:14px}.company-seal{display:flex;background:#e2ebec;width:90px;height:90px;align-items:center;justify-content:center;border-radius:25px;margin-top:38px}.company-table{margin:0}.company-table>div{display:grid;grid-template-columns:145px 1fr;padding:19px 0;border-bottom:1px solid #d4dfe2;font-size:14px;gap:20px}.company-table>div:first-child{padding-top:0}.company-table dt{font-weight:600;color:var(--muted)}.company-table dd{margin:0;overflow-wrap:anywhere}.company-table a:hover,.contact-section a:hover{text-decoration:underline;text-underline-offset:4px}.document-section{padding-top:65px;padding-bottom:65px;display:flex;align-items:center;gap:26px}.document-icon{display:flex;align-items:center;justify-content:center;background:var(--container);width:80px;height:88px;border-radius:22px;color:var(--primary)}.document-icon .icon{width:34px;height:34px}.document-section h2{font-size:28px;margin:5px 0}.document-section p:not(.eyebrow){color:var(--muted);font-size:14px}.document-section>.button{margin-left:auto}.contact-section{border-top:1px solid var(--outline);padding-top:45px;padding-bottom:55px;display:flex;align-items:center;justify-content:space-between;gap:32px}.contact-section h2{font-size:23px}.contact-section p{margin-top:10px;font-size:14px;color:var(--muted)}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.contact-links a{display:flex;align-items:center;gap:12px;font-size:15px;overflow-wrap:anywhere}.contact-links .icon{width:19px;height:19px}.footer{background:#e7eeee}.footer-inner{padding-top:28px;padding-bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer .brand-mark{font-size:35px}.footer .brand-name{font-size:15px}.footer small{font:11px Arial,sans-serif;color:var(--muted);margin-left:auto}.back-top{width:44px;height:44px;border-radius:50%;border:1px solid #b9cbd0;display:grid;place-items:center}.profile-body{background:#e9eeee}.profile-toolbar{max-width:900px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:25px auto;font-size:14px}.profile-toolbar a{display:flex;align-items:center;gap:8px}.profile-page{max-width:794px;margin:30px auto;padding:46px 52px 30px;background:white;box-shadow:0 8px 40px #192c3510}.profile-head{display:flex;align-items:center;justify-content:space-between}.profile-title{background:#eaf0f2;border-radius:23px;margin:30px 0;padding:28px 30px}.profile-title h1{font-size:33px;line-height:1.5;margin:10px 0}.profile-title>p:last-child{font-size:13px;color:var(--muted)}.profile-page h2{font-size:20px;margin:25px 0 13px}.compact>div{padding:10px 0;font-size:12px;grid-template-columns:125px 1fr}.compact>div:first-child{padding-top:0}.profile-services{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.profile-services h3{font-size:14px;display:flex;align-items:center;gap:8px;margin-bottom:5px}.profile-services .icon{width:18px;height:18px}.profile-services p,.profile-description{font-size:11px;color:var(--muted);line-height:1.8}.profile-contact{font-size:12px;padding-top:14px}.profile-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--outline);margin-top:24px;padding-top:12px;font-size:10px;color:var(--muted)}
@media(min-width:1450px){.hero{padding-top:88px;padding-bottom:96px}.hero-art{min-height:460px}.art-grid{width:300px;height:300px}}@media(max-width:1000px){.header-inner{padding:20px 25px}.brand-name{font-size:16px}nav{gap:18px;font-size:12px}.hero{gap:30px}.hero-art{padding:24px;min-height:390px}.art-grid{width:250px;height:250px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:28px}.service-top{margin-bottom:24px}.profile-toolbar{padding:0 24px}}
@media(max-width:720px){html{scroll-padding-top:95px}.wrap{padding-left:24px;padding-right:24px}.header-inner{padding:19px 24px}.brand-mark{font-size:36px}.brand-name{font-size:15px}.brand{gap:12px}.menu-button{border:0;background:var(--container);color:var(--primary);display:flex;align-items:center;justify-content:center;border-radius:100px;width:46px;height:46px}.menu-button span{display:none}nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--surface);padding:12px 24px 24px;border-bottom:1px solid var(--outline);gap:0;box-shadow:0 10px 15px #192c3510}nav.open{display:flex}nav a{padding:14px 16px;font-size:15px}.nav-document{margin-top:8px;justify-content:space-between}.hero{grid-template-columns:1fr;gap:40px;padding-top:47px;padding-bottom:48px}.hero h1{font-size:clamp(29px,8.1vw,48px)}.hero-copy>.eyebrow{margin-bottom:19px}.hero-description{font-size:15px;margin-top:20px}.hero .button{margin-top:27px}.hero-art{min-height:340px;border-radius:26px;padding:25px;max-width:520px;width:100%;margin:auto}.art-grid{width:235px;height:235px;margin:12px auto 18px}.art-top{font-size:9px}.art-bottom{font-size:10px}.intro{grid-template-columns:1fr;gap:22px;padding-top:43px;padding-bottom:44px}.intro>.eyebrow{padding-top:0}h2{font-size:27px}.intro h2{margin-bottom:20px}.intro p:not(.eyebrow){font-size:14px}.desktop-br{display:none}.mobile-br{display:block}.section{padding-top:48px;padding-bottom:48px}.section-heading{display:block;margin-bottom:24px}.section-note{margin-top:17px;font-size:13px}.service-grid{gap:13px}.service-card{padding:21px 17px;border-radius:22px}.service-card h3{font-size:16px}.service-card>p:last-child{font-size:12px}.service-top{margin-bottom:24px}.icon-disc{width:42px;height:42px;border-radius:14px}.service-en{font-size:8px}.company-layout{grid-template-columns:1fr;gap:28px}.company-heading>p:not(.eyebrow),.company-seal{display:none}.company-table>div{grid-template-columns:97px 1fr;gap:15px;padding:16px 0;font-size:13px}.document-section{flex-wrap:wrap;gap:20px;padding-top:42px;padding-bottom:42px}.document-icon{width:61px;height:70px;border-radius:18px}.document-section h2{font-size:24px}.document-section .eyebrow{font-size:10px}.document-section p:not(.eyebrow){font-size:12px}.document-section>.button{margin-left:0;width:100%}.contact-section{display:block;padding-top:32px;padding-bottom:37px}.contact-links{margin-top:22px}.contact-links a{font-size:14px}.footer-inner{gap:16px;flex-wrap:wrap}.footer .brand-name{font-size:13px}.footer .brand{gap:10px}.footer small{font-size:9px}.back-top{display:none}.profile-toolbar{flex-wrap:wrap;justify-content:flex-start;margin:20px auto}.profile-toolbar .button{min-height:42px;font-size:12px}.profile-page{margin:20px 12px;padding:28px 22px}.profile-head>.eyebrow{font-size:8px}.profile-title{padding:23px;margin:25px 0}.profile-title h1{font-size:29px}.profile-services{grid-template-columns:1fr}.compact>div{grid-template-columns:87px 1fr;font-size:11px}.profile-contact{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@page{size:A4;margin:12mm}@media print{body.profile-body{background:white}.profile-toolbar{display:none}.profile-page{box-shadow:none;max-width:none;margin:0;padding:0}.profile-title{margin:23px 0;padding:22px 26px}.profile-title h1{font-size:31px}.profile-page h2{margin-top:19px;font-size:18px}.compact>div{padding:8px 0}.profile-services{gap:12px 20px}.profile-services p{font-size:10.5px}.profile-bottom{margin-top:20px}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}a{text-decoration:none}.profile-page{break-inside:avoid}}
