:root{--ink:#112d45;--text:#263d4c;--muted:#536777;--line:#dce3e8;--blue:#16607c;--paper:#fff;--soft:#f4f7f9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--text);font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--blue)}a:focus-visible{outline:3px solid #bb7b19;outline-offset:6px}p,h1,h2,h3,h4{margin:0}a,dd{overflow-wrap:anywhere}.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.draft{padding:8px 24px;text-align:center;background:#fff4d8;color:#634612;font-size:14px}.header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:27px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:baseline;gap:9px;color:var(--ink);text-decoration:none;white-space:nowrap;font-size:27px;font-weight:750;letter-spacing:.035em;line-height:1.2}.brand span{font-size:15px;font-weight:400;letter-spacing:.01em}nav{display:flex;gap:29px;font-size:14px}nav a{text-decoration:none}nav a:last-child{font-weight:700}.hero{padding-top:77px;padding-bottom:65px}.eyebrow{font-family:Arial,sans-serif;font-size:12px;line-height:1.6;font-weight:700;letter-spacing:.16em;color:var(--blue)}h1{font-size:clamp(30px,3.8vw,48px);line-height:1.6;letter-spacing:.025em;color:var(--ink);font-weight:700;margin-top:21px}.dot{color:var(--blue)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:30px}.hero-bottom p{color:var(--muted)}.text-link{text-decoration:none;font-size:14px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:9px;min-width:158px;display:flex;justify-content:space-between;gap:24px}.section{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;padding-block:60px;border-top:1px solid var(--line)}h2{font-size:26px;line-height:1.5;letter-spacing:.035em;color:var(--ink)}.section-title h2{margin-top:12px}.lead{font-size:18px;font-weight:600;color:var(--ink);margin-bottom:26px}.services{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.services article{position:relative;padding:20px 0 23px;border-top:1px solid var(--line)}.number{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.09em;color:var(--blue)}h3{font-size:18px;line-height:1.7;font-weight:650;color:var(--ink)}.services h3{margin:7px 0 5px}.services p,.cases p{font-size:15px;color:var(--muted)}.development{background:var(--soft);padding:23px 26px;border-left:3px solid var(--blue);margin-top:10px}.development h3{font-size:17px}.development p{font-size:15px;margin-top:7px}.cases article{display:flex;gap:22px;padding:19px 0;border-top:1px solid var(--line);align-items:baseline}.cases article:last-child{border-bottom:1px solid var(--line)}.cases h3{font-size:17px}.cases p{margin-top:4px}.case-mark{margin-left:auto;color:#8ca2b0}.product-band{background:var(--ink);color:#e2eaf0}.product-band .section{border:0}.product-band h2,.product-band h3,.product-band h4{color:white}.product-band .eyebrow{color:#a1c9da}.product-heading{display:flex;gap:22px;align-items:center}.product-heading h3{font-family:Arial,sans-serif;font-size:46px;font-weight:600;line-height:1.2;letter-spacing:-.04em}.product-heading h3 span{font-weight:400;color:#9bc7db}.badge{font-size:12px;letter-spacing:.1em;border:1px solid #658293;border-radius:3px;padding:2px 10px}.product-lead{font-size:22px;font-weight:600;margin:23px 0 11px}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:23px}.tags span{font-size:13px;border:1px solid #536e82;padding:4px 12px}.api-note{border-top:1px solid #466075;margin-top:27px;padding-top:22px}.api-note h4{font-size:15px;margin-bottom:8px}.api-note p{font-size:14px;line-height:1.9;color:#c9d8e2}.product-link{display:inline-flex;align-items:center;gap:35px;color:white;border-bottom:1px solid #8faaba;padding-bottom:8px;margin-top:24px;text-decoration:none;font-size:15px}.product-link:hover{color:#c0e7f9}.company-list{margin:0}.company-list>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;border-bottom:1px solid var(--line);padding:17px 0}.company-list>div:first-child{border-top:1px solid var(--line)}dt{font-size:14px;font-weight:600}dd{margin:0;font-size:15px}.pending{color:#6c4f21}footer{background:var(--soft);border-top:1px solid var(--line);padding:32px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-inner>div{text-align:right;font-size:13px}.footer-inner p{margin-top:7px;color:var(--muted);font-family:Arial,sans-serif;font-size:12px}.policy{max-width:860px;padding-block:35px 70px}.back{display:inline-block;font-size:14px;margin-bottom:40px;text-decoration:none}.policy h1{font-size:34px;margin-top:15px}.policy-date{font-size:14px;color:var(--muted);margin:15px 0 28px}.policy section{margin-top:35px}.policy h2{font-size:21px;margin-bottom:15px}.policy p+ p{margin-top:12px}.policy ul{padding-left:1.5em;margin:12px 0}.policy li+li{margin-top:8px}.policy a:not(.back){color:var(--blue)}.sr-only,.skip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;inset:10px auto auto 10px;width:auto;height:auto;clip:auto;margin:0;padding:10px 20px;background:white;z-index:10}@media(min-width:1500px){.hero{padding-top:90px;padding-bottom:80px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.header{gap:20px;flex-wrap:wrap}nav{gap:22px}.section{grid-template-columns:180px minmax(0,1fr);gap:24px}.services{gap:0 20px}.services h3{font-size:16px}.product-lead{font-size:20px}}@media(max-width:650px){.wrap{width:calc(100% - 40px)}.draft{font-size:12px;padding:8px 20px;text-align:left}.header{padding-block:22px;gap:21px}.brand{font-size:25px}.brand span{font-size:14px}nav{width:100%;justify-content:space-between;gap:10px;font-size:12px}.hero{padding-block:48px 42px}h1{font-size:clamp(25px,6.1vw,36px);line-height:1.65;letter-spacing:0}.hero-bottom{display:block;margin-top:24px}.hero-bottom p{font-size:15px}.text-link{width:155px;margin-top:24px}.section{grid-template-columns:1fr;gap:26px;padding-block:40px}.section-title h2{margin-top:7px;font-size:24px}.lead{font-size:17px;margin-bottom:20px}.services{grid-template-columns:1fr}.services article{padding-block:16px}.services h3{font-size:18px}.development{padding:20px}.cases article{gap:14px}.cases h3{font-size:16px}.product-heading h3{font-size:42px}.product-lead{font-size:19px}.product-band .section-body>p:not(.product-lead){font-size:15px}.company-list>div{grid-template-columns:76px minmax(0,1fr);gap:15px;padding-block:15px}.footer-inner{display:block}.footer-inner>div{text-align:left;margin-top:24px}.policy h1{font-size:27px}.policy h2{font-size:20px}.policy{padding-top:25px}.back{margin-bottom:30px}.policy .company-list>div{grid-template-columns:76px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.draft,nav,.skip,.back{display:none}.wrap{width:100%}.hero,.section{padding-block:24px}.product-band{background:white;color:var(--text)}.product-band h2,.product-band h3,.product-band h4,.product-link,.api-note p{color:var(--ink)}.section{break-inside:avoid}a{color:inherit}.policy section{break-inside:avoid}}

/* Supplied logo artwork stays intact; the viewport removes transparent margins.
   Horizontal artwork bounds: x=0..468, y=143..300 within the 500px original. */
:root{--ink:#123550;--text:#294455;--muted:#536c7b;--line:#d8e8f0;--blue:#1977b5;--soft:#f0f8fc;--cyan:#21abd3}
.header{padding-block:21px}
.brand{display:block;flex-shrink:0;width:270px;max-width:100%;line-height:0}
.brand .logo-crop{display:block;position:relative;width:100%;aspect-ratio:469/158;overflow:hidden}
.logo-crop img{position:absolute;display:block;width:106.609808%;height:auto;max-width:none;left:0;top:-90.506329%}
body{background:linear-gradient(110deg,#f2faff 0%,#fff 65%) no-repeat;background-size:100% 590px}
.hero .eyebrow{color:var(--blue)}
.dot{color:var(--cyan)}
.text-link{border:1px solid var(--blue);color:var(--blue);background:#fff;padding:12px 18px;min-height:48px;border-radius:4px;box-shadow:0 2px 8px rgba(18,53,80,.08);align-items:center;flex-shrink:0}
.text-link:hover{background:#eaf6fd;color:#125884;border-color:#125884}
.services article{border-top-color:#c9e1ef}
.number{color:#1977b5;font-weight:700}
.development{border-left-color:var(--cyan);background:#eff9fd}
.product-band{background:linear-gradient(115deg,#05245b,#031337);color:#e3eefb}
.product-band .eyebrow{color:#73d8f4}
.product-heading{gap:19px;flex-wrap:wrap}
.product-icon{display:block;flex-shrink:0;width:82px;height:82px;border-radius:18px}
.product-heading h3 span{color:#32c9ea}
.badge{color:#b1efff;border-color:#377b9f;background:#0b3659}
.tags span{border-color:#356489;color:#d3efff}
.api-note{border-top-color:#315376}
.api-note p{color:#c9daed}
.product-status{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px;font-size:15px;color:#d3efff}
.product-status span{display:inline-block;padding:3px 12px;border:1px solid #537593;border-radius:3px;font-size:13px;color:#e3eefb}
.content-preview{padding:26px;background:var(--soft);border-top:3px solid var(--cyan)}
.content-preview-heading{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:12px}
.content-preview-heading h3{font-size:20px}
.content-status{display:inline-block;border:1px solid #a6c9dc;border-radius:3px;padding:2px 10px;font-size:13px;color:#365c73;background:#fff}
.content-preview p{font-size:16px}
.content-preview .content-note{margin-top:10px;font-size:14px;color:var(--muted)}
footer{background:#f0f8fc}
.footer-inner .brand{width:235px}
@media(max-width:900px){.header{gap:22px}.header .brand{width:235px}nav{gap:18px}}
@media(max-width:650px){.header{padding-block:18px;gap:23px}.header .brand{width:240px}.footer-inner .brand{width:220px}.product-heading{gap:13px}.product-icon{width:62px;height:62px;border-radius:14px}.product-heading h3{font-size:35px}.badge{padding:2px 7px;font-size:12px}nav{gap:10px}}
.hero-shell{background-image:linear-gradient(90deg,rgba(249,253,255,.97) 0%,rgba(249,253,255,.93) 34%,rgba(249,253,255,.66) 57%,rgba(249,253,255,.06) 100%),url('./hero-workspace.webp');background-size:cover;background-position:center 52%;border-bottom:1px solid var(--line)}
.hero-shell .hero{padding-top:88px;padding-bottom:65px;min-height:420px}
.hero-shell .hero-bottom{max-width:700px}
.hero-shell .hero-bottom p{color:#365364}
@media(max-width:650px){.hero-shell{background-position:63% center;background-image:linear-gradient(90deg,rgba(249,253,255,.97),rgba(249,253,255,.85) 65%,rgba(249,253,255,.55)),url('./hero-workspace.webp')}.hero-shell .hero{padding-block:48px 42px;min-height:0}}
@media print{body{background:white}.hero-shell{background:none}.product-band{background:white}.badge,.tags span{color:var(--ink)}.api-note p{color:var(--text)}}
