:root{--blue:#165ec9;--ink:#12335d;--pale:#eef5ff;--line:#d6e3f4;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:white;color:var(--ink);font:14px/1.9 var(--sans)}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #f0a945;outline-offset:5px}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:10px}.skip:focus{top:0}.demo-strip{background:var(--pale);font-size:10px;color:#5d7698;display:flex;gap:15px;justify-content:space-between;padding:7px 5%}.demo-strip a{white-space:nowrap}.site-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 5%;background:#fffffffa;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-weight:700;font-size:12px;line-height:1.5;letter-spacing:.04em}.brand>span>span{display:block;font-size:20px}.brand svg{width:42px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linejoin:round}.site-header nav{display:flex;align-items:center;gap:27px;font-size:12px;font-weight:600}.nav-button{padding:12px 20px;background:var(--blue);color:white;border-radius:30px}.menu-toggle{display:none}.hero{background:var(--pale);position:relative;display:grid;grid-template-columns:1fr 1.1fr}.hero-copy{padding:65px 35px 55px max(10%,calc((100vw - 1180px)/2));position:relative;z-index:1}.small-label{font-size:10px;color:var(--blue);font-weight:700;letter-spacing:.14em}.hero h1{font-size:clamp(30px,3.5vw,49px);line-height:1.75;letter-spacing:.015em;margin:25px 0;color:var(--blue);font-weight:800}.hero h1 span{display:block;white-space:nowrap}.hero-copy>p{font-size:14px;color:#56708e;line-height:2.2}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--blue);color:white;font-size:13px;font-weight:600;border-radius:40px;padding:17px 25px;margin-top:28px;transition:background .2s}.pill:hover,.nav-button:hover{background:#0f4a9c}.pill span{font-size:23px;line-height:1}.hero-chips{display:flex;gap:10px;margin-top:25px}.hero-chips span{font-size:10px;border:1px solid #b8cfee;border-radius:20px;padding:3px 13px;color:#56708e}.hero-photo{position:relative;margin:25px 25px 25px 0;border-radius:150px 12px 12px 12px;overflow:hidden;min-height:540px}.hero-photo img{object-position:57% 50%}.photo-tag{position:absolute;right:25px;bottom:30px;background:#fffdf3;width:135px;height:135px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--blue);font:italic 16px/1.3 Georgia,serif;transform:rotate(8deg)}.sun{font-size:31px;line-height:1.2;margin-bottom:8px}.image-credit{position:absolute;left:20px;bottom:12px;color:white;background:#12335d66;font-size:8px;padding:2px 6px;letter-spacing:.08em}.hero-bottom{grid-column:1/-1;background:var(--blue);color:white;display:flex;justify-content:space-between;padding:22px 7%;align-items:center;gap:20px}.hero-bottom strong{font-size:16px}.hero-bottom>span{font-size:12px}.hero-bottom small{font-size:9px;opacity:.8;margin-left:8px}.section{max-width:1200px;padding:90px 40px;margin:auto}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:35px}.section-tag{font-size:10px;letter-spacing:.13em;color:var(--blue);font-weight:700}h2{font-size:clamp(24px,2.7vw,34px);font-weight:700;line-height:1.75;letter-spacing:.02em}.section-head h2{margin-top:18px}.section-head>p{font-size:12px;color:#607790}.sample-price{font-size:10px;color:#70839a;margin-bottom:24px}.service-list{border-top:2px solid var(--blue)}.service-list article{display:grid;grid-template-columns:110px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:27px 5px}.icon-box{width:100px;height:95px;display:grid;place-items:center;border-radius:16px;background:var(--pale)}.icon-box svg{width:76px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.service-name>span{font-size:9px;color:var(--blue);letter-spacing:.13em;font-weight:600}.service-name h3{font-size:20px;margin:7px 0}.service-name p{font-size:11px;color:#72849b}.price{font-size:34px;letter-spacing:-.03em;white-space:nowrap;color:var(--blue)}.price small{font-size:10px;letter-spacing:0;margin-left:5px}.service-list details{grid-column:2/-1;font-size:11px;margin-top:-7px}.service-list summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer;border-top:1px solid #edf1f6;padding-top:13px;color:#5e7693}.service-list summary::-webkit-details-marker{display:none}summary>span{font-size:18px;line-height:1.3}details[open] summary>span{transform:rotate(45deg)}.service-list details p{font-size:11px;color:#607790;padding:15px 0 0}.about-section{display:grid;grid-template-columns:1fr 1fr;background:#f1f7fc;max-width:1440px;margin:auto}.about-words{padding:70px clamp(30px,6vw,90px)}.about-words h2{margin:20px 0 25px}.about-words>p{font-size:13px;line-height:2.3;color:#607790;margin-top:20px}.about-photo{position:relative;min-height:570px;overflow:hidden}.about-photo:after{content:"";position:absolute;inset:0;background:#18325222}.about-photo>div{position:absolute;top:30px;left:30px;z-index:1;background:#fffef3eb;color:var(--blue);border-radius:6px;padding:20px 25px}.about-photo>div span{font-size:10px;letter-spacing:.12em}.about-photo strong{font:bold 36px/1.1 Arial,sans-serif;display:block;margin-top:12px;letter-spacing:-.03em}.about-photo small{position:absolute;bottom:15px;left:20px;right:15px;font-size:9px;color:white;z-index:1}.calculator{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b8cfee;border-radius:12px;overflow:hidden}.calc-choices{padding:20px 28px}.calc-choices button{display:grid;grid-template-columns:1fr auto 25px;gap:15px;align-items:center;background:white;color:var(--ink);width:100%;padding:20px 0;border:0;border-bottom:1px solid var(--line);text-align:left}.calc-choices button:last-child{border:0}.calc-choices span{font-size:12px}.calc-choices strong{font-size:15px}.calc-choices i{font-style:normal;width:24px;height:24px;display:grid;place-items:center;border:1px solid #a4bbdd;border-radius:50%;color:var(--blue);font-size:18px;line-height:1}.calc-choices button[aria-pressed=true] i{background:var(--blue);color:white}.calc-choices button[aria-pressed=true] span{font-weight:700;color:var(--blue)}.calc-total{background:var(--pale);padding:35px;display:flex;flex-direction:column;justify-content:center}.calc-total>span{font-size:11px}.calc-total p{color:var(--blue);font-size:17px;white-space:nowrap;margin:15px 0}.calc-total strong{font-size:55px;letter-spacing:-.04em;margin-right:7px}.calc-total small{font-size:11px}.calc-total .calc-caption{font-size:9px;color:#607790}.small-note{font-size:10px;color:#70839a;margin-top:20px;line-height:1.9}.guide-section{background:var(--pale)}.steps{list-style:none;margin:35px 0 50px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.steps li>span{width:40px;height:40px;display:grid;place-items:center;background:var(--blue);color:white;font-weight:700;border-radius:50%;font-size:14px}.steps h3{font-size:17px;margin:20px 0 12px}.steps p{font-size:12px;color:#607790}.faq{border-top:1px solid #c7d8ef;max-width:900px;margin:auto}.faq details{border-bottom:1px solid #c7d8ef}.faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:13px;padding:23px 0}.faq summary::-webkit-details-marker{display:none}.faq p{font-size:12px;color:#607790;padding:0 20px 23px 0}.end-message{padding:75px 25px;text-align:center;background:var(--blue);color:white}.end-message>span{font-size:10px;letter-spacing:.2em}.end-message h2{font-size:44px;margin:20px 0}.end-message a{display:inline-block;font-size:12px;border-bottom:1px solid #ffffff88;padding:8px 0}footer{max-width:1200px;margin:auto;padding:40px}footer>strong{font-size:15px}footer>p{font-size:10px;line-height:2;color:#70839a;max-width:800px;margin:17px 0}footer>div{display:flex;gap:25px;font-size:10px;color:#607790}footer>div>span{margin-left:auto;font-size:9px}
@media(max-width:1000px){.site-header nav{gap:17px;font-size:11px}.hero-copy{padding:55px 25px 45px 8%}.hero h1{font-size:37px}.hero-photo{min-height:500px}.section{padding:70px 30px}.about-words{padding:55px 35px}.calculator{grid-template-columns:1.1fr 1fr}.calc-total{padding:25px}.calc-total strong{font-size:47px}}
@media(max-width:760px){html{scroll-padding-top:85px}.demo-strip{font-size:8px;padding:7px 18px;align-items:center}.demo-strip>span{max-width:220px;text-align:right;line-height:1.6}.site-header{padding:13px 20px}.brand{font-size:10px}.brand>span>span{font-size:16px}.brand svg{width:35px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:0;background:none;width:44px;height:44px}.menu-toggle i{height:2px;width:22px;background:var(--blue)}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-4.5px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:10px 23px 25px;flex-direction:column;gap:0;align-items:stretch;box-shadow:0 15px 25px #12335d12}.site-header nav.open{display:flex}.site-header nav>a{padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.site-header nav .nav-button{padding:13px 20px;margin-top:14px;text-align:center;border:0}.hero{grid-template-columns:1fr}.hero-copy{padding:30px 24px 26px}.small-label{font-size:8px}.hero h1{font-size:34px;line-height:1.65;margin:18px 0}.hero-copy>p{font-size:12px;line-height:2}.pill{font-size:12px;padding:15px 23px;margin-top:22px}.hero-chips{margin-top:20px;gap:8px}.hero-chips span{font-size:9px}.hero-photo{min-height:0;height:265px;margin:0 20px 20px;border-radius:80px 10px 10px 10px}.photo-tag{width:95px;height:95px;font-size:12px;bottom:15px;right:15px}.sun{font-size:23px;margin-bottom:4px}.image-credit{font-size:7px;left:12px;bottom:10px}.hero-bottom{padding:19px 24px;display:block}.hero-bottom strong{font-size:13px}.hero-bottom>span{font-size:10px;display:block;margin-top:6px}.hero-bottom small{font-size:8px}.section{padding:57px 23px}.section-head{display:block;margin-bottom:25px}.section-tag{font-size:9px}.section-head h2{font-size:25px;margin-top:15px}.section-head>p{font-size:11px;margin-top:17px}.sample-price{font-size:9px;margin-bottom:20px}.service-list article{grid-template-columns:65px 1fr;gap:15px;padding:24px 0}.icon-box{width:62px;height:65px;border-radius:12px}.icon-box svg{width:50px}.service-name>span{font-size:8px}.service-name h3{font-size:16px;margin:5px 0}.service-name p{font-size:10px}.price{grid-column:2;font-size:29px;margin-top:-8px}.price small{font-size:9px}.service-list details{grid-column:1/-1;margin-top:0;font-size:11px}.about-section{grid-template-columns:1fr}.about-words{padding:45px 25px}.about-words h2{font-size:28px}.about-words>p{font-size:12px}.about-photo{min-height:0;height:330px}.about-photo>div{top:20px;left:22px;padding:18px 22px}.about-photo strong{font-size:31px}.about-photo small{font-size:8px}.calculator{grid-template-columns:1fr}.calc-choices{padding:10px 22px}.calc-choices button{padding:19px 0}.calc-choices span{font-size:11px}.calc-choices strong{font-size:14px}.calc-total{padding:25px}.calc-total strong{font-size:48px}.calc-total p{margin:10px 0}.small-note{font-size:9px}.steps{grid-template-columns:1fr;gap:25px;margin:30px 0}.steps li{position:relative;padding-left:57px;min-height:85px}.steps li>span{position:absolute;top:0;left:0;width:36px;height:36px;font-size:12px}.steps h3{font-size:16px;margin:0 0 10px}.steps p{font-size:11px}.faq summary{font-size:12px;gap:15px}.faq p{font-size:11px;padding-right:0}.end-message{padding:55px 23px}.end-message h2{font-size:34px}footer{padding:35px 23px}footer>p{font-size:9px}footer>div{font-size:9px;gap:18px;flex-wrap:wrap}footer>div>span{font-size:8px}.end-message>span{font-size:9px}}
@media(max-width:360px){.hero h1{font-size:29px}.service-name h3{font-size:14px}.section-head h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
