/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:host,:root{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,primevue,components;@layer utilities{.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.pl-3{padding-left:calc(var(--spacing) * 3)}.text-wrap{text-wrap:wrap}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}:root{--brand:#0b318f;--brand-bright:#1548c7;--heading:#3949ab;--gold:#d5b000;--gold-light:#f0ce30;--ink:#17191f;--muted:#626775;--line:#d9dce5;--paper:#f5f4ef;--white:#fff;--dark:#181b22;--content:1160px;--side:calc(clamp(20px, 4vw, 64px));--section-space:calc(clamp(43px, 5.9vw, 86px))}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--white);letter-spacing:.035em;margin:0;font-family:Noto Sans JP,sans-serif;font-weight:400;line-height:1.9}.hero-marquee,.main-visual,body.menu-open{overflow:hidden}a{color:inherit}img{max-width:100%;display:block}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}.skip-link{z-index:100;color:var(--white);background:var(--brand);padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:30;background:#fffffffa;border-bottom:1px solid #0b318f1f;position:relative}.header-inner{min-height:76px;max-width:calc(var(--content) + (var(--side) * 2));padding:0 var(--side);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;display:flex}.brand-link{flex:none;align-items:center;display:inline-flex}.brand-link img{width:177.6px;height:auto}.global-nav{align-items:center;gap:calc(clamp(18px,2.2vw,34px));display:flex}.global-nav a{color:#252936;white-space:nowrap;font-size:13px;font-weight:500;text-decoration:none;position:relative}.global-nav a:not(.nav-contact):after{background:var(--brand);content:"";transform-origin:0;height:2px;transition:transform .18s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.global-nav a:hover:after{transform:scaleX(1)}.nav-contact{background:var(--brand);align-items:center;min-height:42px;padding:6px 18px;display:inline-flex;color:var(--white)!important;font-weight:700!important}.menu-button{width:48px;height:48px;color:var(--brand);cursor:pointer;background:0 0;border:1px solid #0b318f40;padding:0;display:none}.menu-button span,.menu-button:after,.menu-button:before{content:"";background:currentColor;width:20px;height:2px;margin:5px auto;transition:transform .18s,opacity .18s;display:block}.menu-open .menu-button span{opacity:0}.menu-open .menu-button:before{transform:translateY(7px)rotate(45deg)}.menu-open .menu-button:after{transform:translateY(-7px)rotate(-45deg)}.main-visual{color:var(--white);background:linear-gradient(90deg,#7e5c0033,#0000),url(../media/frontpage/mv-bg.jpg) 50%/cover}.hero-inner,.main-visual{min-height:560px;position:relative}.hero-inner{z-index:2;max-width:calc(var(--content) + (var(--side) * 2));padding:0 var(--side);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;gap:calc(clamp(30px,6vw,86px));margin:0 auto;display:grid}.hero-copy{padding-bottom:50px}.hero-title{letter-spacing:-.045em;max-width:760px;margin:0;font-size:calc(clamp(31px,4.9vw,62px));font-weight:700;line-height:1.18}.hero-title span{background:#00000080;border-radius:4px;width:fit-content;padding:.02em .2em .16em .14em;display:block}.hero-title span:first-child{font-size:1.2em}.hero-title span+span{margin-top:.16em}.hero-lead{text-shadow:0 1px 6px #5738004d;max-width:600px;margin:21px 0 0;font-size:calc(clamp(15px,1.65vw,19px));font-weight:500;line-height:1.8}.hero-lead span{background:#00000080;border-radius:4px;width:fit-content;padding:0 .12em 0 .24em;display:block}.hero-lead span+span{margin-top:.08em}.hero-marquee{white-space:nowrap;background:#00000080;border-radius:4px;max-width:400px;margin:18px 0 0;padding:.1em 0;font-size:14px;line-height:1.8}.hero-marquee span{width:max-content;padding-left:100%;animation:14s linear infinite hero-marquee;display:inline-block}@keyframes hero-marquee{to{transform:translate(-100%)}}.button-link{min-height:54px;color:var(--white);background:var(--brand);border:1px solid var(--brand);justify-content:center;align-items:center;gap:24px;padding:8px 24px;font-size:14px;font-weight:700;text-decoration:none;transition:color .18s,background .18s,transform .18s;display:inline-flex}.button-link:after{content:"→"}.button-link:hover{transform:translateY(-2px)}.button-link.is-light,.button-link:hover{color:var(--brand);background:var(--white)}.button-link.is-light{border-color:var(--white)}.button-link.is-light:hover{color:var(--white);background:0 0}.contact-cta{padding:calc(clamp(63px,9.1vw,119px)) var(--side);color:var(--white);background:var(--brand)}.contact-inner{max-width:var(--content);grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:end;gap:60px;margin:0 auto;display:grid}.contact-cta small{color:var(--gold-light);letter-spacing:.2em;font-weight:700}.contact-cta h2{letter-spacing:-.06em;max-width:900px;margin:30px 0 0;font-size:calc(clamp(42px,7vw,90px));line-height:1.18}.contact-action p{color:#ffffffad;margin:0 0 26px}.site-footer{padding:48px var(--side) 36px;color:var(--white);background:#363636}.footer-inner{max-width:var(--content);margin:0 auto}.footer-contact,.footer-legal,.footer-menu,.footer-primary{flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.footer-menu a{margin:5px 0;padding:0 15px}.footer-menu a+a{border-left:1px solid #888}.footer-logo{padding:0 20px}.footer-logo img{filter:brightness(0)invert();width:200px}.site-footer a{color:var(--white);text-decoration:none;transition:color .18s}.site-footer a:hover{color:#40c4ff}.footer-contact{margin-top:28px}.footer-contact>*{padding:8px 16px}.footer-contact small{color:#ffffffa6;letter-spacing:.08em;margin-right:6px;font-size:10px;font-weight:700}.footer-rule{background:#555;border:0;height:1px;margin:22px 0}.footer-contact,.footer-menu{font-size:13px}.footer-legal{gap:30px;font-size:11px}:root{--button-radius:6px}.button-link,.menu-button,.nav-contact{border-radius:var(--button-radius)}.eyebrow,.global-nav a[aria-current]{color:var(--brand)}.global-nav a[aria-current]:after{transform:scaleX(1)}p{margin-top:0}main{overflow:clip}.wrap{max-width:var(--content);margin:0 auto}.section{padding:calc(clamp(64px,8vw,112px)) var(--side)}.eyebrow{letter-spacing:.18em;font-size:13px;font-weight:700}.service-visual{height:250px;padding:0 var(--side);background:url(../media/frontpage/mv-bg.jpg) 50%/cover;overflow:hidden}.visual-inner{max-width:1100px;height:100%;margin:auto;position:relative}.visual-inner h1{color:#000;align-items:center;min-height:150px;margin:0;font-size:40px;line-height:1.2;display:flex;position:absolute;bottom:70px;left:150px}.visual-mascot{width:150px;height:150px;position:absolute;bottom:70px;left:0}.mascot-line{gap:0;display:flex;position:absolute;bottom:10px;left:15px}.mascot-line img{width:50px;height:55px}.breadcrumb{padding:18px var(--side);border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.breadcrumb .wrap{gap:18px;display:flex}.breadcrumb a,.service-index a{text-decoration:none}.intro-layout{grid-template-columns:1.2fr 1fr;align-items:end;gap:72px;display:grid}.intro h2{color:var(--brand);letter-spacing:-.05em;margin:22px 0 0;font-size:calc(clamp(36px,4.8vw,64px));font-weight:700;line-height:1.4}.intro-copy{margin-bottom:5px;font-size:17px;line-height:2.1}.intro-copy p:last-child{margin-bottom:0}.service-index{border-top:1px solid var(--brand);border-bottom:1px solid var(--brand);grid-template-columns:repeat(5,minmax(0,1fr));margin-top:64px;display:grid}.service-index a{color:var(--brand);flex-direction:column;gap:22px;padding:24px 20px;font-size:14px;font-weight:500;display:flex;position:relative}.service-index a+a{border-left:1px solid var(--line)}.service-index small{letter-spacing:.08em;font-size:13px}.service-index a:after{content:"↓";position:absolute;top:20px;right:20px}.service-detail:nth-child(2n),.service-index a:hover{background:var(--paper)}.service-detail{padding:64px var(--side) 72px;scroll-margin-top:24px}.detail-layout{grid-template-columns:90px minmax(0,1fr) minmax(0,1.1fr);gap:44px;display:grid}.detail-number{color:var(--brand);letter-spacing:-.06em;padding-top:28px;font-size:64px;font-weight:500;line-height:1}.detail-heading .eyebrow{margin:0 0 10px;font-size:11px}.detail-heading h3{color:var(--brand);letter-spacing:-.045em;margin:0;font-size:calc(clamp(32px,3.6vw,46px));line-height:1.45}.detail-heading p:last-child{color:var(--muted);margin:24px 0 0;font-size:14px}.detail-body>p{margin-bottom:28px;line-height:2}.detail-body dl{border-top:1px solid #c9cdd6;margin:0}.detail-body dl>div{border-bottom:1px solid #c9cdd6;padding:18px 0}.detail-body dt{color:var(--brand);margin-bottom:8px;font-size:13px;font-weight:700}.detail-body dd{color:var(--muted);margin:0;font-size:14px;line-height:1.9}.section-heading{grid-template-columns:134px minmax(0,1fr);margin-bottom:48px;display:grid}.section-heading .eyebrow{margin:8px 0 0}.section-heading h2{letter-spacing:-.05em;margin:0;font-size:calc(clamp(32px,4.4vw,58px));line-height:1.4}.scope{background:var(--brand);color:#fff}.scope .eyebrow{color:var(--gold-light)}.scope-intro{color:#e0e6f3;max-width:700px;margin:0 0 48px 134px}.scope-grid{border-top:1px solid #6a80b7;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.scope-item{padding:30px 32px 0 0}.scope-item+.scope-item{border-left:1px solid #6a80b7;padding-left:32px}.scope-item small{color:var(--gold-light);letter-spacing:.12em}.scope-item h3{margin:20px 0;font-size:24px}.scope-item p{color:#e0e6f3;font-size:15px}.flow{background:var(--paper)}.flow-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none;display:grid}.flow-list li{border-top:1px solid var(--brand);padding-top:24px}.flow-list span{color:var(--brand);letter-spacing:.12em;font-size:12px}.flow-list h3{color:var(--brand);margin:20px 0 16px;font-size:23px}.flow-list p{color:var(--muted);font-size:14px}.consultation{grid-template-columns:1fr 1fr;gap:64px;display:grid}.consultation h2{color:var(--brand);letter-spacing:-.05em;margin:18px 0 24px;font-size:calc(clamp(30px,3.6vw,46px));line-height:1.5}.consultation p{color:var(--muted);font-size:15px}.question-list{margin:0;padding:0;list-style:none}.question-list li{border-bottom:1px solid var(--line);padding:20px 0}.question-list li:first-child,.related{border-top:1px solid var(--line)}.question-list strong{color:var(--brand);font-size:15px}.question-list p{margin:8px 0 0;font-size:14px}.prototype-note{padding:20px var(--side);color:#5b501e;background:#fff8da;font-size:12px}.prototype-note p{margin:0}.related{padding:32px var(--side)}.related .wrap{flex-wrap:wrap;gap:24px;font-size:13px;display:flex}.related p{color:var(--muted);margin:0}:focus-visible{outline-offset:5px}@media (width<=1100px){.header-inner{gap:16px}.global-nav{gap:18px}.brand-link img{width:155px}.detail-layout{grid-template-columns:60px minmax(0,1fr) minmax(0,1.2fr);gap:26px}.intro-layout{gap:32px}}@media (width<=980px){.menu-button{display:block}.global-nav{z-index:40;padding:24px var(--side);background:#fff;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 77px);display:none;position:absolute;top:77px;left:0;right:0;overflow-y:auto;box-shadow:0 12px 20px #0001}.menu-open .global-nav{display:flex}.global-nav a{border-bottom:1px solid var(--line);padding:14px 12px}.global-nav a:not(.nav-contact):after{bottom:-1px}.nav-contact{justify-content:center;margin-top:12px}.detail-number{font-size:48px}.intro-layout{grid-template-columns:1fr}.intro-copy{max-width:650px}.service-index a{padding:20px 12px;font-size:12px}.service-index a:after{right:12px}.detail-layout{grid-template-columns:56px minmax(0,1fr)}.detail-body{grid-column:2}.section-heading{grid-template-columns:100px minmax(0,1fr)}.scope-intro{margin-left:100px}.contact-inner{grid-template-columns:1fr;gap:40px}.flow-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}@media (width<=600px){.header-inner{min-height:72px}.global-nav{top:73px}.service-visual{height:250px}.visual-inner h1{min-height:125px;font-size:30px;left:132px}.visual-mascot{width:125px;height:125px}.mascot-line{left:0}.mascot-line img{width:36px;height:44px}.intro h2{font-size:calc(clamp(30px,8vw,46px))}.intro-copy{font-size:15px}.service-index{grid-template-columns:1fr;margin-top:36px}.service-index a{flex-direction:row;align-items:center;gap:20px;padding:16px 30px 16px 0;font-size:14px}.service-index a+a{border-left:0;border-top:1px solid var(--line)}.service-index a:after{top:16px;right:0}.service-detail{padding-top:44px;padding-bottom:48px}.detail-layout{grid-template-columns:38px minmax(0,1fr);gap:24px 18px}.detail-number{font-size:36px}.detail-heading h3{font-size:30px}.detail-heading p:last-child{margin-top:14px}.detail-body{grid-column:1/-1}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:20px}.scope-intro{margin-left:0}.consultation,.flow-list,.scope-grid{grid-template-columns:1fr}.scope-item,.scope-item+.scope-item{border-bottom:1px solid #6a80b7;border-left:0;padding:24px 0}.scope-item h3{margin:14px 0}.flow-list h3{margin-top:12px}.consultation,.footer-primary{gap:32px}.contact-cta h2{font-size:calc(clamp(34px,8vw,48px))}.footer-contact{flex-direction:column;align-items:flex-start}.footer-menu a{padding:0 12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important}}.consultation>div,.contact-inner>div:first-child,.intro-layout>div:first-child{container-type:inline-size}.intro h2{font-size:calc(min(64px,9cqw))}.contact-cta h2 span,.intro h2 span,.visually-hidden{white-space:nowrap}.contact-cta h2{font-size:calc(min(64px,8.2cqw))}.consultation h2{font-size:calc(min(46px,8cqw))}.capabilities{border-top:1px solid #c9cdd6;padding-top:20px}.capabilities h4{color:var(--brand);margin:0 0 14px;font-size:13px}.capabilities ul{margin:0;padding-left:1.2em;font-size:14px;line-height:1.9}.capabilities li{padding:5px 0}.capabilities li::marker{color:var(--brand)}.own-service{background:var(--paper);border-left:3px solid var(--brand);margin-top:32px;padding:24px}.own-service .eyebrow{margin:0 0 10px;font-size:11px}.own-service h4{color:var(--brand);margin:0 0 14px;font-size:20px}.own-service p{font-size:14px;line-height:1.9}.own-service a{color:var(--brand);text-underline-offset:5px;font-size:14px;font-weight:500}.visually-hidden{clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.additional-capabilities{margin-top:24px}.footer-contact>*{align-items:center;gap:8px;display:inline-flex}.footer-contact .footer-icon{-o-object-fit:contain;object-fit:contain;filter:brightness(0)invert();flex:0 0 16px;width:16px;height:16px}.reveal{opacity:1!important;transform:none!important}.global-nav.is-open{display:flex}.button-link,.nav-contact{border-radius:6px}.markdown-body p{margin-bottom:1.25em}.markdown-body a{color:var(--brand);text-underline-offset:4px}.markdown-body ul{padding-left:1.4em}.form-error{color:#a12020;margin:6px 0 0;font-size:14px}.p-button{font-family:inherit}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
