:root{--navy:#123451;--navy2:#0b263b;--blue:#286b94;--teal:#1f9b98;--sky:#eaf5f8;--ink:#172b3a;--muted:#60717d;--line:#d9e3e8;--white:#fff;--bg:#f5f8fa;--shadow:0 18px 50px rgba(18,52,81,.1);--radius:16px;--wide:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;background:#fff;-webkit-font-smoothing:antialiased}body.is-menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}.l-container{width:min(calc(100% - 48px),var(--wide));margin-inline:auto}.l-container--narrow{max-width:900px}.l-section{padding:112px 0}.c-skip{position:fixed;z-index:999;top:8px;left:8px;padding:8px 16px;background:#fff;transform:translateY(-150%)}.c-skip:focus{transform:none}.l-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:80px;background:rgba(255,255,255,.94);border-bottom:1px solid transparent;transition:.25s}.l-header.is-scrolled{height:70px;border-color:var(--line);box-shadow:0 4px 18px rgba(18,52,81,.06)}.l-header__inner{height:100%;display:flex;align-items:center;justify-content:space-between}.p-logo{font:800 28px/1 Arial,sans-serif;color:var(--navy);letter-spacing:-1px}.p-logo span{color:var(--teal)}.p-logo small{display:block;margin-top:6px;color:var(--muted);font:700 9px/1 Arial,sans-serif;letter-spacing:1.5px;text-transform:uppercase}.p-nav{display:flex;align-items:center;gap:26px}.p-nav ul{display:flex;align-items:center;gap:20px;margin:0;padding:0;list-style:none}.p-nav ul a{font-size:13px;font-weight:700;white-space:nowrap}.p-nav ul a:hover{color:var(--teal)}.p-menuBtn{display:none}.c-btn{display:inline-flex;min-height:58px;padding:15px 28px;align-items:center;justify-content:center;border:1px solid var(--navy);border-radius:6px;background:var(--navy);color:#fff;font-weight:700;line-height:1.4;box-shadow:0 8px 20px rgba(18,52,81,.16);transition:.2s}.c-btn:hover{background:var(--teal);border-color:var(--teal);transform:translateY(-2px)}.c-btn--small{min-height:46px;padding:10px 20px;font-size:14px}.c-btn--ghost{background:#fff;color:var(--navy);box-shadow:none}.c-btn--white{background:#fff;border-color:#fff;color:var(--navy)}.c-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.c-eyebrow,.c-heading>p{margin:0 0 14px;color:var(--teal);font:800 13px/1.2 Arial,sans-serif;letter-spacing:2px}.c-heading{margin-bottom:52px}.c-heading h2{margin:0;font-size:clamp(30px,4vw,44px);line-height:1.4;letter-spacing:.02em}.c-heading>span{display:block;margin-top:14px;color:var(--muted)}.c-heading--center{text-align:center}.p-hero{position:relative;overflow:hidden;padding:154px 0 84px;background:linear-gradient(115deg,#f5fafb 0,#fff 55%,#edf7f8 100%)}.p-hero:before{content:"";position:absolute;width:500px;height:500px;right:-160px;top:-180px;border:1px solid rgba(31,155,152,.2);border-radius:50%}.p-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.p-hero h1{margin:0;font-size:clamp(42px,5vw,67px);line-height:1.35;letter-spacing:.035em}.p-hero h1 em{color:var(--blue);font-style:normal}.p-hero__lead{max-width:650px;margin:25px 0 0;font-size:19px;line-height:1.9}.p-hero__services{display:flex;align-items:center;gap:11px;margin:16px 0;color:var(--muted);font-size:14px;font-weight:700}.p-hero__services i{width:4px;height:4px;background:var(--teal);border-radius:50%}.p-trust{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none}.p-trust li{padding:6px 12px;background:#fff;border:1px solid var(--line);border-radius:99px;color:var(--navy);font-size:13px;font-weight:700}.p-trust li:before{content:"✓";margin-right:6px;color:var(--teal)}.p-heroVisual{position:relative;min-height:475px;padding:45px;border-radius:180px 16px 16px 16px;background:linear-gradient(145deg,var(--navy),#1f6680);color:#fff;box-shadow:var(--shadow)}.p-heroVisual:before{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.25);border-radius:160px 10px 10px 10px}.p-heroVisual__label{position:relative;margin-top:80px;font-family:serif;font-size:31px;line-height:1.6}.p-heroVisual__screen{position:absolute;right:-25px;bottom:70px;width:250px;height:180px;padding:20px;background:#fff;border:8px solid #d7e5e8;border-radius:10px;color:var(--navy);box-shadow:0 25px 45px rgba(0,0,0,.25)}.p-heroVisual__screen span{display:block;width:65%;height:8px;margin-bottom:12px;background:#e4eef1}.p-heroVisual__screen span:first-child{width:30%;background:var(--teal)}.p-heroVisual__screen strong{position:absolute;right:18px;bottom:14px;color:var(--teal)}.p-heroVisual>p{position:absolute;left:45px;bottom:28px;margin:0;font:700 12px Arial;letter-spacing:2px}.p-heroVisual>p b{margin-left:10px;color:#79d4cf}.p-problems{background:var(--navy2);color:#fff}.p-problems .c-heading>p{color:#78d1cd}.p-problems__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 70px}.p-checkList{margin:0;padding:0;list-style:none}.p-checkList li{position:relative;padding:20px 20px 20px 52px;border-bottom:1px solid rgba(255,255,255,.14);font-weight:600}.p-checkList li:before{content:"";position:absolute;left:12px;top:27px;width:15px;height:8px;border-left:2px solid #6ed3ce;border-bottom:2px solid #6ed3ce;transform:rotate(-45deg)}.p-problems__answer{margin:50px 0 0;padding:28px 34px;background:#fff;color:var(--ink);border-radius:8px;font-size:18px}.p-problems__answer span{display:block;color:var(--teal);font-weight:800}.p-cardGrid{display:grid;gap:20px}.p-cardGrid--4{grid-template-columns:repeat(4,1fr)}.p-reason{position:relative;padding:38px 28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 30px rgba(18,52,81,.05)}.p-reason b{display:block;color:#b6cbd5;font:800 38px/1 Arial}.p-reason h3{margin:24px 0 12px;font-size:20px;line-height:1.55}.p-reason p{margin:0;color:var(--muted);font-size:14px}.p-works{background:var(--bg)}.p-workGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.p-work{overflow:hidden;background:#fff;border-radius:var(--radius);box-shadow:0 10px 36px rgba(18,52,81,.08)}.p-work__image{position:relative;display:flex;min-height:220px;align-items:center;justify-content:center;color:#fff;font:800 22px Arial;letter-spacing:2px}.p-work__image small{position:absolute;left:14px;bottom:10px;padding:3px 8px;background:rgba(0,0,0,.45);font:400 11px sans-serif;letter-spacing:0}.p-work__image--medical{background:linear-gradient(140deg,#2c5f8c,#9ac7d5)}.p-work__image--kids{background:linear-gradient(140deg,#1d8a89,#f2b66f)}.p-work__image--nda{background:linear-gradient(140deg,#283e50,#70848d)}.p-work__body{padding:26px}.p-tags{display:flex;gap:7px;margin:0}.p-tags span{padding:3px 8px;background:var(--sky);color:var(--blue);border-radius:3px;font-size:11px;font-weight:700}.p-work h3{min-height:58px;margin:14px 0;font-size:20px;line-height:1.5}.p-work dl{margin:0;font-size:13px}.p-work dl div{display:grid;grid-template-columns:42px 1fr;gap:8px;padding:5px 0;border-bottom:1px dashed var(--line)}.p-work dt{color:var(--muted)}.p-work dd{margin:0;font-weight:600}.p-work__body>p:not(.p-tags){color:var(--muted);font-size:14px}.p-work a,.p-work__disabled{display:inline-block;margin-top:10px;color:var(--blue);font-weight:700}.p-work__disabled{color:#8797a1}.p-works__note{margin:28px 0 0;color:var(--muted);font-size:13px}.p-serviceList{border-top:1px solid var(--line)}.p-serviceList article{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:40px 10px;border-bottom:1px solid var(--line)}.p-serviceList article>b{color:#a7bec9;font:800 45px/1 Arial}.p-serviceList h3{margin:0 0 5px;font-size:25px}.p-serviceList p{max-width:780px;margin:8px 0;color:var(--muted)}.p-serviceList .p-serviceList__for{color:var(--teal);font-weight:700}.p-price{background:var(--sky)}.p-priceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.p-priceGrid article{position:relative;padding:28px;background:#fff;border:1px solid #cee0e5;border-radius:12px}.p-priceGrid article.is-featured{border:2px solid var(--teal)}.p-priceGrid article>span{position:absolute;top:-13px;right:18px;padding:3px 12px;background:var(--teal);border-radius:20px;color:#fff;font-size:12px;font-weight:700}.p-priceGrid h3{margin:0 0 12px;font-size:17px}.p-priceGrid strong{display:block;color:var(--navy);font-size:29px}.p-priceGrid strong small{font-size:11px}.p-priceGrid strong em{font-size:14px;font-style:normal}.p-priceGrid p{margin:12px 0 0;color:var(--muted);font-size:13px}.p-price__note{margin-top:28px;padding:28px 34px;background:#fff;border-left:4px solid var(--teal)}.p-price__note h3,.p-price__note p{margin:0}.p-price__note p{margin-top:5px;color:var(--muted)}.p-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 20px;margin:0;padding:0;list-style:none;counter-reset:item}.p-flow li{position:relative;padding:26px 22px;background:#fff;border:1px solid var(--line);border-radius:10px}.p-flow li:not(:nth-child(4n)):after{content:"";position:absolute;z-index:2;right:-28px;top:46px;width:34px;border-top:1px solid var(--teal)}.p-flow b{color:var(--teal);font:800 13px Arial}.p-flow h3{margin:12px 0 8px;font-size:18px}.p-flow p{margin:0;color:var(--muted);font-size:13px}.p-profile{background:var(--bg)}.p-profile__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}.p-profile__photo{min-height:540px;padding:22px;background:linear-gradient(155deg,#bdd6de,#466a7b);border-radius:220px 220px 20px 20px}.p-profile__photo>div{display:flex;height:100%;min-height:496px;align-items:center;justify-content:center;flex-direction:column;border:1px solid rgba(255,255,255,.6);border-radius:200px 200px 12px 12px;color:#fff}.p-profile__photo span{font:700 16px Arial;letter-spacing:2px}.p-profile__photo small{margin-top:8px}.p-profile .c-heading{margin-bottom:25px}.p-profile__name{padding-bottom:18px;border-bottom:1px solid var(--line);color:var(--muted)}.p-profile__name strong{margin-left:12px;color:var(--ink);font-size:24px}.p-profile__name small{margin-left:8px}.p-profile__grid>div>p:not(.p-profile__name){color:var(--muted)}.p-profile ul{margin:22px 0 0;padding:0;list-style:none}.p-profile li{padding:5px 0;font-weight:700}.p-profile li:before{content:"—";margin-right:9px;color:var(--teal)}.p-partner{background:var(--navy);color:#fff}.p-partner__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.p-partner h2{margin:0 0 18px;font-size:38px}.p-partner p{color:#c4d2dc}.p-partner ul{margin:0;padding:32px 38px;background:rgba(255,255,255,.08);list-style:none;border:1px solid rgba(255,255,255,.16)}.p-partner li{padding:8px 0}.p-partner li:before{content:"✓";margin-right:10px;color:#6ed3ce}.c-textLink{display:inline-block;margin-top:15px;color:#7bd7d2;font-weight:700}.p-faq details{border-bottom:1px solid var(--line)}.p-faq summary{position:relative;padding:25px 55px 25px 55px;font-weight:700;cursor:pointer;list-style:none}.p-faq summary:before{content:"Q";position:absolute;left:10px;top:18px;color:var(--teal);font:800 24px Arial}.p-faq summary:after{content:"＋";position:absolute;right:12px;color:var(--teal)}.p-faq details[open] summary:after{content:"−"}.p-faq details p{margin:0;padding:0 55px 25px;color:var(--muted)}.p-cta{text-align:center;padding:95px 0;background:linear-gradient(135deg,#1a6282,var(--teal));color:#fff}.p-cta>div>p{margin:0 0 12px;font:800 13px Arial;letter-spacing:2px}.p-cta h2{margin:0;font-size:clamp(30px,4vw,44px);line-height:1.5}.p-cta span{display:block;margin:12px 0 28px}.p-contact__grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.p-contact dl{margin-top:35px}.p-contact dl div{padding:14px 0;border-bottom:1px solid var(--line)}.p-contact dt{color:var(--muted);font-size:12px}.p-contact dd{margin:2px 0 0;font-weight:700}.p-form{padding:38px;background:var(--bg);border-radius:var(--radius)}.p-form__row{margin-bottom:21px}.p-form__row label{display:block;margin-bottom:7px;font-weight:700}.p-form label em,.p-form label>span{margin-left:7px;padding:2px 6px;background:var(--navy);border-radius:3px;color:#fff;font-size:11px;font-style:normal}.p-form label>span{background:#dce5e9;color:var(--muted)}.p-form input:not([type=checkbox]),.p-form select,.p-form textarea{width:100%;padding:13px 14px;background:#fff;border:1px solid #b9c9d1;border-radius:5px;color:var(--ink)}.p-form input:focus,.p-form select:focus,.p-form textarea:focus{outline:3px solid rgba(31,155,152,.22);border-color:var(--teal)}.p-form__half{display:grid;grid-template-columns:1fr 1fr;gap:16px}.p-form__agree{display:flex;gap:8px;align-items:flex-start;margin:5px 0 22px}.p-form__agree input{width:20px;height:20px;margin-top:5px}.p-form__agree span{margin:0!important;padding:0!important;background:none!important;color:inherit!important;font-size:14px!important}.p-form__agree a{text-decoration:underline}.p-form__submit{width:100%;border:0}.p-form__demo{font-size:12px;color:var(--muted);line-height:1.5}.l-footer{padding:65px 0 25px;background:var(--navy2);color:#dbe5eb}.l-footer__grid{display:flex;justify-content:space-between;gap:60px}.p-logo--white{color:#fff}.l-footer__grid>div>p{font-size:13px;color:#aebec8}.l-footer nav{display:grid;grid-template-columns:repeat(2,1fr);gap:9px 45px;font-size:13px}.l-footer__bottom{display:flex;justify-content:space-between;margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#94a8b5}
@media(max-width:1050px){.p-nav ul{display:none}.p-cardGrid--4{grid-template-columns:repeat(2,1fr)}.p-workGrid{grid-template-columns:repeat(2,1fr)}.p-flow{grid-template-columns:repeat(2,1fr)}.p-flow li:not(:nth-child(4n)):after{display:none}.p-profile__grid{gap:45px}.p-contact__grid{gap:45px}}
@media(max-width:767px){.l-container{width:min(calc(100% - 36px),var(--wide))}.l-section{padding:76px 0}.l-header,.l-header.is-scrolled{height:64px}.p-logo{font-size:24px}.p-logo small{font-size:8px}.p-menuBtn{position:relative;z-index:2;display:flex;width:50px;height:50px;padding:8px 7px 5px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:none;border:0;color:var(--navy)}.p-menuBtn span{display:block;width:23px;border-top:2px solid currentColor}.p-menuBtn b{font-size:9px}.p-menuBtn[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.p-menuBtn[aria-expanded=true] span:nth-child(2){opacity:0}.p-menuBtn[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.p-nav{position:fixed;inset:64px 0 0;display:none;padding:28px 24px;background:#fff;overflow:auto}.p-nav.is-open{display:block}.p-nav ul{display:block}.p-nav li{border-bottom:1px solid var(--line)}.p-nav ul a{display:block;padding:15px 5px;font-size:15px}.p-nav>.c-btn{width:100%;margin-top:24px}.p-hero{padding:112px 0 62px}.p-hero__grid{grid-template-columns:1fr;gap:45px}.p-hero h1{font-size:clamp(34px,10vw,47px)}.p-hero__lead{font-size:16px}.p-hero__services{flex-wrap:wrap;gap:6px 9px;font-size:12px}.c-actions{display:grid}.c-actions .c-btn{width:100%}.p-heroVisual{min-height:340px;padding:30px;border-radius:130px 12px 12px 12px}.p-heroVisual:before{inset:15px}.p-heroVisual__label{margin-top:56px;font-size:23px}.p-heroVisual__screen{right:-8px;bottom:52px;width:190px;height:135px;border-width:6px}.p-heroVisual>p{left:30px;bottom:20px}.c-heading{margin-bottom:35px}.c-heading h2{font-size:30px}.p-problems__grid,.p-cardGrid--4,.p-workGrid,.p-priceGrid,.p-flow,.p-profile__grid,.p-partner__grid,.p-contact__grid{grid-template-columns:1fr}.p-problems__grid{gap:0}.p-problems__answer{padding:22px;font-size:16px}.p-reason{padding:29px 24px}.p-work h3{min-height:auto}.p-serviceList article{grid-template-columns:52px 1fr;gap:8px;padding:28px 0}.p-serviceList article>b{font-size:28px}.p-serviceList h3{font-size:20px}.p-priceGrid{gap:12px}.p-flow{gap:12px}.p-profile__photo{min-height:420px}.p-profile__photo>div{min-height:376px}.p-partner h2{font-size:30px}.p-partner ul{padding:25px}.p-faq summary{padding-left:42px}.p-faq summary:before{left:4px}.p-faq details p{padding-left:42px;padding-right:25px}.p-contact__grid{gap:25px}.p-form{padding:25px 18px}.p-form__half{grid-template-columns:1fr;gap:0}.l-footer__grid{display:block}.l-footer nav{margin-top:30px;gap:9px 25px}.l-footer__bottom{display:block}.l-footer__bottom small{display:block;margin-top:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
