:root{--phone-red:#dc2448;--phone-gradient:linear-gradient(180deg,#f76e77,#dc2448);--ink:#203334;--pink:#f64770;--green:#399c58;--mint:#f4f9ec;--blush:#fff0f4;--cream:#fff4df}
body.p_top{background:#fff;color:var(--ink);padding-top:67px;font-family:'Noto Sans JP','Zen Kaku Gothic New',sans-serif;padding-bottom:64px}
.p_top a[href^='tel']{pointer-events:auto;cursor:pointer!important}
.p_top .row{width:100%;max-width:1000px}
.p_top .design-header{height:67px;border-bottom:2px solid #f5ece4;padding:0;background:#fff}
.design-header-inner{width:1000px;max-width:calc(100% - 30px);margin:auto;display:flex;align-items:center;justify-content:space-between}
.p_top .design-header h1{width:249px;margin:0}
.p_top .design-header h1 a{display:block;padding:0}
.p_top .design-header h1 img{display:block;width:249px;height:50px}
.p_top .design-header-line{display:flex;gap:7px;align-items:center;justify-content:center;width:195px;height:48px;color:#fff;background:linear-gradient(#24c768,#0c813c);border:3px double #fff;border-radius:5px;box-shadow:0 1px 4px #abc5b1}
.design-header-line img{width:25px;height:25px;object-fit:contain}
.design-header-icon{display:flex;width:25px;height:25px;align-items:center;justify-content:center;flex:none}
.design-header-line img[src$='.svg']{width:auto;height:auto;max-width:none}
.design-header-line span{display:flex;flex-direction:column;text-align:center;line-height:1.4}
.design-header-line strong{font-size:12px;font-weight:700}
.design-header-line small{font-size:9px}
.design-header-line b{font-size:20px}
.design-section{overflow:hidden;margin:0;position:relative}
.design-wide{width:min(1400px,140vw);margin:0 auto;position:relative;left:50%;transform:translateX(-50%);margin-left:0}
.design-wide picture{display:block;overflow:hidden}
.design-section img{display:block;width:100%;max-width:none;height:auto}
.design-hero{background:#fff4f4 url('./design-assets/hero_bg.png') center top/100% 100% no-repeat}
.design-hero-content{width:1400px;max-width:none;margin:0;position:relative;left:50%;transform:translateX(-50%)}
.design-hero::before{content:'';position:absolute;bottom:0;left:0;width:100%;height:176px;background:rgba(255,255,255,.54);pointer-events:none}
.design-hero picture{display:block;overflow:hidden;height:633px;aspect-ratio:1400/633}
.design-hero img{transform:translateY(-9.5714286%)}
.design-reasons{background:var(--mint)}
.design-reasons picture{aspect-ratio:1400/870}
.design-worries,.design-voices{background:var(--blush)}
.design-fees,.design-flow{background:var(--mint)}
.design-methods{position:relative;background:var(--blush);padding:0 15px 64px}
.design-methods-inner{width:800px;max-width:100%;margin:0 auto}
.design-methods-title{display:block;width:722px;max-width:100%;margin:-94px 0 -6px auto;position:relative}
.design-methods-title img{display:block;width:100%;height:auto}
.design-method-cards{display:flex;gap:24px;align-items:flex-start}
.design-method-cards picture{display:block;width:calc(50% - 12px)}
.design-method-cards img{display:block;width:100%;height:auto}
.design-strengths{background:var(--cream);padding:40px 15px 64px;text-align:center}
.design-strengths picture{display:block;width:802px;max-width:100%;margin:0 auto}
.design-strengths img{display:block;width:100%;height:auto}
.p_top .design-cases{margin:0;background:linear-gradient(130deg,#459f55,#238b58);padding:64px 0 55px;color:white}
.p_top .design-cases h2{font-size:28px;font-weight:700;line-height:1.4;color:#fff;margin:0 0 34px;text-align:center}
.p_top .design-cases .sec03_slider{overflow:visible}
.p_top .design-cases .sec03_slider .swiper-slide{width:322px;margin-right:15px}
.p_top .design-cases .sec03_slider .swiper-slide img{display:block;width:100%;height:auto}
.p_top .design-cases .sec03_ctrl{margin-top:34px}
.p_top .design-cases .swiper-pagination-progressbar-fill{background:#f2f197}
.p_top .design-cases .swiper-pagination-progressbar{background:#cfe4d0;height:5px}
.p_top .design-cases .swiper-button-prev,.p_top .design-cases .swiper-button-next{background-color:transparent;border:0;padding:0}
.design-cta{background:#fff url('./design-assets/cta_bg.png') center center/cover no-repeat;padding:32px 15px 28px}
.design-cta-inner{max-width:1000px;margin:auto}
.design-cta-title{display:block;width:830px;max-width:100%;margin:0 60px -20px auto;position:relative}
.design-cta-title img{display:block;width:100%;height:auto}
.design-cta-actions{display:flex;align-items:center;gap:38px}
.design-cta-phone{flex:1;min-width:0;text-align:center}
.design-cta-phone p{font-size:16px;font-weight:600;white-space:nowrap;letter-spacing:-.5px}
.p_top .design-cta-phone a{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--phone-red);font-family:'Hind',sans-serif;font-size:60px;font-weight:700;line-height:1.3;white-space:nowrap}
.design-cta-phone img{display:block;width:73px;height:48px;object-fit:contain}
.design-actions{display:flex;flex-direction:column;gap:16px;width:437px;max-width:100%}
.p_top .design-actions a{position:relative;display:flex;align-items:center;justify-content:center;color:#fff;border-radius:50px;height:86px;border:3px solid #fff;outline:1px solid #f2b9a6;box-shadow:0 4px 5px #d7c9bc80;background:linear-gradient(#ff9558,#ff6023);padding:8px 30px;gap:20px}
.design-actions a::before{content:'';position:absolute;inset:3px;border:1px solid #ffffff9c;border-radius:45px;pointer-events:none}
.p_top .design-actions [data-action='line']{background:linear-gradient(#3bb867,#0c873f);outline-color:#94ca9b}
.design-actions a img{width:48px;height:48px;object-fit:contain;flex:none}
.design-action-icon{display:flex;width:48px;height:48px;align-items:center;justify-content:center;flex:none}
.design-actions a img[src$='.svg']{width:auto;height:auto;max-width:none}
.design-actions a span{display:flex;flex-direction:column;text-align:center}
.design-actions a small{font-size:14px;font-weight:600;line-height:1.3}
.design-actions a strong{font-size:28px;line-height:1.5;font-weight:700;white-space:nowrap}
.design-actions a b{position:absolute;right:25px;font-size:30px;font-weight:500}
.design-cta .design-actions [data-action='tel']{display:none}
.p_top .qa{background:var(--mint);margin:0;padding:52px 0 72px}
.p_top .qa .box{background:#fff;border-radius:26px;padding:36px 40px 55px}
.p_top h2.design-heading{font-size:32px;color:var(--pink);font-weight:800;line-height:1.4;text-align:center;margin:0 0 40px}
.design-heading small{display:block;font-family:'Hind',sans-serif;font-size:24px;font-weight:600;line-height:1.3}
.p_top .qa .qa_list{width:600px}
.p_top .qa .qa_list dl dt,.p_top .qa .qa_list dl dd{color:var(--ink)}
.p_top .qa .qa_list dl dt::before{color:var(--green)}
.p_top .qa .qa_list dl dd::before{color:var(--pink)}
.p_top .contact{background:var(--blush);padding:60px 0 72px}
.p_top .contact.quick{background:var(--blush)}
.p_top .contact.quick .quick_ttl small,.p_top .contact.quick .quick_ttl span{color:var(--pink)}
.p_top .contact.quick .form hr{background:var(--green)}
.p_top .contact .form{background:#fff;border-radius:26px}
.p_top .contact .form dl dt,.p_top .contact .form dl dd{color:var(--ink)}
.p_top .contact .form dl dt span{background:var(--pink)}
.p_top .contact .form dl dt span.gray{background:#626564}
.p_top .contact .form dl dd .select label,.p_top .contact .form input[type='text'],.p_top .contact .form input[type='email']{background-color:#eef1f6;color:var(--ink)}
.p_top .contact .form input:focus-visible,.p_top .contact .form select:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.p_top .contact .form input:checked~span::after{background-color:var(--green)}
.p_top .contact button.design-submit{position:relative;display:block;width:462px;max-width:100%;height:76px;margin:29px auto 0;border:3px solid #fff;border-radius:50px;outline:1px solid #ffc5a8;box-shadow:0 3px 5px #ead8ce;background:linear-gradient(#ff9558,#ff6023);color:#fff;font-size:28px;font-weight:700}
.design-submit span{position:absolute;right:24px;font-size:30px;top:50%;transform:translateY(-50%)}
.design-contact-actions{display:none}
.p_top .footer{background:linear-gradient(130deg,#449f54,#278b58);padding-bottom:20px;color:#fff}
.p_top .company{padding:40px 15px 72px}
.p_top .company .row{max-width:1000px}
.p_top .company h2{color:#fff;margin-bottom:42px;font-size:28px}
.p_top .company .c_list{display:block}
.p_top .company .c_list dl{color:#fff;font-weight:500;font-size:14px;line-height:1.6}
.p_top .company .c_list dl dt{width:160px}
.p_top .copyright{color:#fff;font-size:14px;text-align:center}
.design-fixed{position:fixed;z-index:100;bottom:0;left:0;width:100%;background:linear-gradient(#ff8a4a,#ff7429);height:64px;box-shadow:0 -4px 6px #0002}
.design-fixed-inner{display:flex;align-items:center;justify-content:center;gap:36px;max-width:1000px;margin:auto;height:100%}
.p_top .design-fixed a{display:flex;align-items:center;gap:10px;color:#fff;font-family:'Hind','Noto Sans JP',sans-serif;font-size:30px;font-weight:700;line-height:1.3}
.design-fixed img{width:40px;height:40px;object-fit:contain}
.p_top .design-fixed a.js_anchorlink{background:#fff;border-radius:10px;color:var(--ink);font-size: clamp(10px, 3.9vw, 19px);padding:10px 26px;font-family:'Noto Sans JP',sans-serif}
.fixed-sp-label{display:none}
@media(min-width:769px) and (max-width:1099px){
 .design-cta-phone p{font-size:13px}.p_top .design-cta-phone a{font-size:48px}.design-cta-phone img{width:55px;height:40px}.design-cta-actions{gap:22px}.design-actions{width:42%}.design-actions a strong{font-size:23px}.design-actions a small{font-size:12px}.design-actions a img{width:40px;height:40px}.design-cta-title{margin-right:0}
 .p_top .contact .form,.p_top .contact.quick .form{padding:40px 30px}.p_top .contact .form dl dt,.p_top .contact.quick .form dt{width:40%}.p_top .contact .form dl dd{flex:1;min-width:0}.p_top .contact.quick .form hr{margin-left:-30px;margin-right:-30px}
}
@media(max-width:768px){
 body.p_top{padding-top:11.352657vw;padding-bottom:23.913044vw}
 .p_top .design-header{height:11.352657vw;padding:0}
 .design-header-inner{width:100%;max-width:none;padding:0 2vw}
 .p_top .design-header h1{width:52vw}
 .p_top .design-header h1 img{width:52vw;height:auto}
 .p_top .design-header-line{width:35.5vw;height:9vw;gap:1vw;border-width:0;border-radius:2vw}
 .design-header-line img{width:5.3vw;height:5.3vw}.design-header-line strong{font-size:2.5vw}.design-header-line small{display:none}.design-header-line b{font-size:4vw}
 .design-wide{width:100%;left:auto;transform:none;margin:0}
 .design-hero{background:none}
 .design-hero::before{display:none}
 .design-hero-content{width:100%;left:auto;transform:none}
 .design-hero picture{height:138.647343vw;aspect-ratio:414/574}
 .design-hero img{transform:translateY(-7.568438%)}
 .design-reasons picture{aspect-ratio:414/1060}
 .design-methods{padding:0 3.623189vw 11.594203vw}
 .design-methods-inner{width:100%}
 .design-methods-title{width:103.1%;max-width:none;margin:0 0 -9.178744vw -1.932368vw}
 .design-method-cards{display:block}
 .design-method-cards picture{width:102.083333%;margin:0 -1.041667%}
 .design-method-cards picture+picture{margin-top:6.763285vw}
 .design-strengths{padding:0}
 .design-strengths picture{width:100%;max-width:none}
 .p_top .design-cases{padding:11.352657vw 0 10.628019vw}
 .p_top .design-cases h2{font-size:5.314009vw;margin:0 0 6.038647vw}
 .p_top .design-cases .sec03_slider .swiper-slide{width:81.642512vw;margin-right:3.864734vw}
 .p_top .design-cases .sec03_ctrl{margin-top:4.347826vw}
 .design-cta{padding:10.144928vw 3.623189vw 5.555556vw;background-size:auto 100%}
 .design-cta-title{width:100.958333%;max-width:none;margin:0 -0.5% -17.327451vw;position:relative;z-index:1}
 .design-cta-actions{display:block}
 .design-cta-phone{display:none}
 .design-actions{width:100%;gap:3.140096vw}
 .p_top .design-actions a{height:18.357488vw;border-width:.724638vw;padding:2vw 5vw;gap:5vw;outline-width:.241546vw}
 .design-actions a img{width:11.594203vw;height:11.594203vw}
 .design-action-icon{width:11.594203vw;height:11.594203vw}
 .design-action-icon img[src$='.svg']{transform:scale(calc(100vw / 414px))}
 .design-header-icon{width:5.3vw;height:5.3vw;transform:scale(calc(100vw / 460px))}
 .design-actions a small{font-size:3.381642vw;line-height:1.2}
 .design-actions a strong{font-size:6.280193vw;line-height:1.5}
 .design-actions a b{right:6.038647vw;font-size:7.246377vw}
 .design-cta .design-actions [data-action='tel']{display:flex}
 .design-cta .design-actions{padding-top:3.140097vw;position:relative;z-index:2}
 .p_top .qa{padding:12.560386vw 0 11.111111vw}
 .p_top .qa .box{padding:6.763285vw 3.623189vw 10vw;border-radius:6.280193vw}
 .p_top h2.design-heading{font-size:7.729469vw;margin:0 0 5.314009vw}
 .design-heading small{font-size:5.797101vw}
 .p_top .qa .qa_list{width:100%}
 .p_top .qa .qa_list dl dt{font-size:3.381642vw;font-weight:700}
 .p_top .qa .qa_list dl dd{font-size:3.381642vw}
 .p_top .contact{padding:11.111111vw 0 12.560386vw}
 .p_top .contact .form{border-radius:6.280193vw}
 .p_top .contact button.design-submit{width:77.294686vw;height:18.357488vw;font-size:6.280193vw;border-width:.724638vw;margin-top:7.004831vw}
 .design-submit span{right:5.797101vw;font-size:7.246377vw}
 .design-contact-actions{display:flex;margin:0 auto 6.280193vw;gap:3.864734vw}
 .p_top .company{padding:9.903382vw 3.623189vw 16.42512vw}
 .p_top .company h2{font-size:7.246377vw;margin-bottom:9.903382vw}
 .p_top .company .row{padding:0}
 .p_top .company .c_list dl{display:block;font-size:4.347826vw;line-height:1.5}
 .p_top .company .c_list dl dt{width:100%;margin-bottom:2.415459vw}
 .p_top .company .c_list dl+dl{margin-top:5.797101vw}
 .p_top .copyright{font-size:3.381642vw;padding:0 3.623189vw}
 .design-fixed{height:23.913044vw;padding:3.623189vw 3.623189vw;background:linear-gradient(#ff8a4a,#ff7429)}
 .design-fixed-inner{gap:3.623189vw}
 .p_top .design-fixed a{width:50%;font-size:4.10628vw;gap:1.449275vw;justify-content:center;line-height:1.3}
 .design-fixed img{width:8.695652vw;height:8.695652vw}
 .fixed-sp-label{display:block;font-size:3.381642vw;font-family:'Noto Sans JP',sans-serif}
 .fixed-pc-label{display:none}
 .p_top .design-fixed a.js_anchorlink{font-size:3.381642vw;padding:2.173913vw 1.449275vw;border-radius:2.415459vw;height:12.560386vw;background:linear-gradient(#ff9558,#ff6023);color:#fff;border:.483092vw solid #fff}
 .design-fixed a strong{font-size:4.10628vw;white-space:nowrap}
}

/* Telephone CTA color and compact mobile fixed consultation bar. */
.p_top .design-actions [data-action='tel']{background:var(--phone-gradient);outline-color:#f8b3bf}
.design-cta-phone a::before{content:"";display:block;flex:none;width:48px;height:48px;background:var(--phone-red);-webkit-mask:url('./design-assets/mobile_icon.png') center/contain no-repeat;mask:url('./design-assets/mobile_icon.png') center/contain no-repeat}
.design-cta-phone a img{display:none}
@media(max-width:768px){
 body.p_top{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
 .design-fixed{height:auto;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:var(--phone-gradient)}
 .design-fixed-inner{gap:8px}
 .p_top .design-fixed a{width:auto;min-width:0;height:54px;flex:0 0 calc(50% - 4px);box-sizing:border-box;gap:6px}
 .design-fixed img{width:40px;height:40px;flex:none}
 .fixed-sp-label{font-size:15px}
 .p_top .design-fixed a strong{font-size:clamp(17px,6.4vw,25.4px)}
 .p_top .design-fixed a.js_anchorlink{flex:0 0 calc(50% - 4px);height:54px;padding:4px 6px;background:linear-gradient(#ff9558,#ff6023);color:#fff;border:2px solid #fff;box-shadow:0 3px 5px #871a3555,inset 0 1px 1px #ffffff80;font-size: clamp(10px, 3.9vw, 18px);gap:3px}
 .design-fixed a.js_anchorlink .fixed-sp-label{font-size:inherit}
}
