@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700&display=swap";:root{--navy:#24445f;--blue:#5fa8d3;--pale:#eaf2f6;--ink:#333b42;--muted:#6e7880;--line:#d9e3e9;--radius:22px;--shadow:0 18px 50px rgba(36,68,95,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Noto Sans JP,sans-serif;line-height:1.8}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1120px,calc(100% - 48px));margin:auto}.site-header{position:fixed;z-index:50;inset:0 0 auto;background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,227,233,.8)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;max-width:1320px;margin:auto;padding:0 32px}.brand img{width:250px;height:52px}.global-nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.global-nav a:not(.nav-cta){position:relative}.global-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-9px;width:0;height:2px;background:var(--blue);transition:.25s}.global-nav a:hover:after,.global-nav a.is-current:after{width:100%}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:0;border-radius:999px;padding:15px 22px;background:var(--navy);color:#fff;font-weight:700;transition:.25s;cursor:pointer}.nav-cta:hover,.button:hover{background:#19364e;transform:translateY(-2px)}.menu-toggle{display:none;background:none;border:0;width:42px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:8px}.hero{min-height:760px;padding:150px 0 90px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,#fffffffa,#fffffff5 34%,#fff3 65%),url(/img/hero-office.png) center/cover}.hero:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(95,168,211,.25);border-radius:50%;left:-160px;bottom:-240px}.hero-content{width:min(1120px,calc(100% - 48px));margin:auto;position:relative;z-index:1}.hero-kicker,.eyebrow{font:700 12px Plus Jakarta Sans;letter-spacing:.22em;color:var(--blue);margin:0 0 22px}.hero h1{font-size:clamp(38px,5vw,68px);line-height:1.35;letter-spacing:.03em;color:var(--navy);margin:0 0 25px}.hero-text{max-width:550px;font-size:17px;line-height:2;margin-bottom:36px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:30px;font-size:13px;color:var(--muted)}.hero-note:before{content:"";width:38px;height:1px;background:var(--blue)}.section{padding:110px 0}.section-pale{background:var(--pale)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}.section-head h2,.page-title h1{font-size:clamp(30px,4vw,48px);line-height:1.45;color:var(--navy);margin:0}.section-head>p{max-width:520px;margin:0}.problem-grid,.service-grid,.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.problem-card,.service-card,.value-card{background:#fff;border-radius:var(--radius);padding:34px;border:1px solid var(--line);position:relative}.problem-card .num,.service-card .num{font:700 13px Plus Jakarta Sans;color:var(--blue)}.problem-card h3,.service-card h3,.value-card h3{font-size:21px;color:var(--navy);margin:15px 0 10px}.problem-card p,.service-card p,.value-card p{font-size:14px;color:var(--muted);margin:0}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{padding:40px;overflow:hidden}.service-card:after{content:attr(data-icon);position:absolute;right:22px;top:8px;font:700 76px Plus Jakarta Sans;color:#5fa8d31a}.service-card ul{padding-left:20px;font-size:14px}.service-card .price{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:22px;color:var(--navy);font-weight:700}.button-outline{background:#fff;color:var(--navy);border:1px solid var(--navy)}.button-outline:hover{color:#fff}.flow{display:grid;grid-template-columns:repeat(4,1fr);counter-reset:step}.flow-item{padding:0 26px;border-left:1px solid var(--line);counter-increment:step}.flow-item:before{content:"0"counter(step);font:700 13px Plus Jakarta Sans;color:var(--blue)}.flow-item h3{color:var(--navy)}.page-title{padding:170px 0 80px;background:var(--pale);position:relative;overflow:hidden}.page-title:after{content:attr(data-en);position:absolute;right:-20px;bottom:-55px;font:700 clamp(90px,16vw,220px) "Plus Jakarta Sans";color:#5fa8d31a;line-height:1}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:28px}.lead-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.lead-block .big{font-size:clamp(25px,3vw,39px);line-height:1.6;color:var(--navy);font-weight:700;margin:0}.style-row{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:30px 0;border-top:1px solid var(--line)}.style-row b{color:var(--blue);font:700 13px Plus Jakarta Sans}.company-table{width:100%;border-collapse:collapse}.company-table th,.company-table td{padding:22px;border-bottom:1px solid var(--line);text-align:left}.company-table th{width:28%;color:var(--navy)}.faq-list{max-width:880px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;border:0;background:none;text-align:left;padding:27px 60px 27px 52px;position:relative;color:var(--navy);font-weight:700;cursor:pointer}.faq-item button:before{content:"Q";position:absolute;left:10px;color:var(--blue);font:700 18px Plus Jakarta Sans}.faq-item button:after{content:"＋";position:absolute;right:10px}.faq-item.is-open button:after{content:"−"}.faq-answer{display:grid;grid-template-rows:0fr;transition:.3s}.faq-answer>div{overflow:hidden}.faq-answer p{margin:0;padding:0 52px 27px}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.contact-wrap{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.contact-aside{background:var(--navy);color:#fff;border-radius:var(--radius);padding:38px;height:max-content}.contact-form{display:grid;gap:25px}.field label{display:block;font-weight:600;margin-bottom:8px}.required{color:#c55555;font-size:11px;margin-left:8px}.field input,.field select,.field textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:9px;background:#f8fafb}.field textarea{min-height:180px;resize:vertical}.check{display:flex;gap:10px}.form-status{padding:16px;border-radius:8px}.form-status:empty{display:none}.form-status.success{background:#e5f4ec;color:#246b48}.form-status.error{background:#fff0f0;color:#9b3434}.site-footer{background:var(--pale)}.footer-cta{background:var(--navy);color:#fff;max-width:1320px;margin:auto;border-radius:32px 32px 0 0;padding:70px 8%;display:flex;justify-content:space-between;align-items:center}.footer-cta h2{font-size:clamp(28px,4vw,45px);line-height:1.5;margin:0 0 15px}.footer-cta p{color:#d7e5ed}.eyebrow.light{color:#b7d9ec}.button-white{background:#fff;color:var(--navy);min-width:210px}.footer-bottom{max-width:1120px;margin:auto;padding:55px 0 30px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.footer-bottom img{width:240px}.footer-bottom nav{display:flex;gap:28px;font-size:13px}.footer-bottom small{grid-column:1/-1;color:var(--muted)}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.is-visible{opacity:1;transform:none}@media(max-width:800px){.header-inner{height:72px;padding:0 20px}.brand img{width:200px}.menu-toggle{display:block}.global-nav{display:none;position:fixed;inset:72px 0 0;background:#fff;padding:50px 30px;flex-direction:column;align-items:stretch;font-size:18px}.global-nav.is-open{display:flex}.nav-cta{margin-top:20px}.hero{min-height:690px;padding-top:120px;background:linear-gradient(180deg,#fffffffa,#ffffffe6 52%,#ffffff40),url(/img/hero-office.png) 67% center/cover}.container,.hero-content{width:min(100% - 32px,1120px)}.section{padding:75px 0}.section-head,.lead-block,.contact-wrap,.footer-cta{display:block}.section-head>p{margin-top:22px}.problem-grid,.service-grid,.values-grid,.flow{grid-template-columns:1fr}.flow-item{padding:15px 22px}.lead-block>div+div{margin-top:30px}.page-title{padding:130px 0 55px}.footer-cta{border-radius:0;padding:55px 24px}.footer-bottom{padding:40px 24px;display:block}.footer-bottom nav{display:grid;grid-template-columns:1fr 1fr;margin:30px 0}.style-row{grid-template-columns:70px 1fr}.company-table th,.company-table td{display:block;width:100%;padding:12px}.company-table th{border-bottom:0;padding-bottom:0}.contact-aside{margin-bottom:35px}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.home-about{position:relative;overflow:hidden;background:#fff}.home-about:before{content:"";position:absolute;inset:8% auto auto 5%;width:330px;height:330px;border-radius:50%;background:var(--pale);filter:blur(1px)}.home-about-grid{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:90px;align-items:center}.home-about-mark{position:relative;display:grid;place-items:center;min-height:430px}.home-about-mark:before,.home-about-mark:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(95,168,211,.35)}.home-about-mark:before{width:380px;height:380px}.home-about-mark:after{width:280px;height:280px}.home-about-mark img{position:relative;z-index:1;width:240px;filter:drop-shadow(0 18px 30px rgba(36,68,95,.14))}.home-about-copy h2{margin:0 0 20px;color:var(--navy);font-size:clamp(30px,4vw,48px)}.home-about-lead{margin:0 0 22px;color:var(--navy);font-size:clamp(22px,2.6vw,32px);font-weight:700;line-height:1.65}.home-about-copy .button{margin-top:18px}.brand img{width:250px;height:auto;max-height:58px;object-fit:contain}.footer-bottom img{width:270px;height:auto}@media(max-width:800px){.home-about-grid{grid-template-columns:1fr;gap:36px}.home-about-mark{min-height:270px}.home-about-mark:before{width:260px;height:260px}.home-about-mark:after{width:200px;height:200px}.home-about-mark img{width:170px}.brand img{width:190px;max-height:50px}.footer-bottom img{width:245px}}.hero{background-position:0 0,center 56px;background-size:cover,cover;background-repeat:no-repeat}@media(max-width:800px){.hero{background-position:0 0,67% center}.menu-toggle{position:relative;z-index:3;display:grid;place-content:center;width:48px;height:48px;padding:0;border:1px solid #d5e1e8;border-radius:50%;background:#fff;box-shadow:0 5px 16px #24445f1f;cursor:pointer;transition:background .25s,border-color .25s,transform .25s}.menu-toggle:hover{border-color:var(--blue);background:var(--pale)}.menu-toggle:focus-visible{outline:3px solid rgba(95,168,211,.38);outline-offset:3px}.menu-toggle span{display:block;width:22px;height:3px;margin:3px 0;border-radius:999px;background:var(--navy);transition:transform .25s,opacity .2s}.menu-toggle[aria-expanded=true]{border-color:var(--navy);background:var(--navy)}.menu-toggle[aria-expanded=true] span{background:#fff}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.site-header:has(.global-nav.is-open){height:100dvh;background:#fff}.global-nav{position:absolute;z-index:2;inset:72px 0 auto;min-height:calc(100dvh - 72px);padding:34px 24px 40px;background:#fff;border-top:1px solid var(--line);box-shadow:none;overflow-y:auto}.global-nav.is-open{display:flex}.global-nav a:not(.nav-cta){display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 4px;border-bottom:1px solid var(--line);font-size:17px;color:var(--navy)}.global-nav a:not(.nav-cta):before{content:"";order:2;width:7px;height:7px;border-top:2px solid var(--blue);border-right:2px solid var(--blue);transform:rotate(45deg);margin-right:5px}.global-nav a:not(.nav-cta):after{display:none}.global-nav .nav-cta{width:100%;margin-top:22px;padding:18px 22px;font-size:16px}}
