@charset "UTF-8";html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,dialog,figure,footer,header,nav,section,time,mark,audio,video{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;outline:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main{display:block}html{font-size:62.5%}body,table,input,textarea,select,option,h1,h2,h3,h4,h5,h6{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:700}table,input,textarea,select,option{line-height:1.1}ol,ul{list-style:none}blockquote,q{quotes:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}img{vertical-align:top}a{color:inherit;text-decoration:none;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}img{max-width:100%}.sp-only{display:none}@media only screen and (max-width: 767px){.pc-only{display:none}.sp-only{display:block}}.header{position:fixed;top:0;left:0;width:100%;z-index:102;background:-webkit-gradient(linear,left top,left bottom,from(#FFFFFF),to(rgba(255,255,255,0)));background:-webkit-linear-gradient(top,#FFFFFF 0%,rgba(255,255,255,0) 100%);background:linear-gradient(180deg,#FFFFFF 0%,rgba(255,255,255,0) 100%)}.header.is-scroll{background:#ffffff}.header.is-open .header__toggle span:nth-child(1){top:27px;-webkit-transform:translateX(-50%) rotate(45deg);transform:translate(-50%) rotate(45deg)}.header.is-open .header__toggle span:nth-child(2){opacity:0}.header.is-open .header__toggle span:nth-child(3){top:27px;-webkit-transform:translateX(-50%) rotate(-45deg);transform:translate(-50%) rotate(-45deg)}.header__inner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:90px;gap:30px;padding:0 15px}.header__overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;z-index:100}.header__overlay.is-show{opacity:1;visibility:visible}.header__logo{-ms-flex-negative:0;flex-shrink:0}@media only screen and (max-width: 767px){.header__logo{position:relative;z-index:102}}.header__logo img{display:block;width:280px;max-width:100%}@media only screen and (max-width: 1400px){.header__logo img{width:220px}}@media only screen and (max-width: 767px){.header__logo img{width:210px}}.header__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-flex:1;-ms-flex:1;flex:1}.header__nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;gap:30px;width:100%}@media only screen and (max-width: 1199px){.header__nav{position:fixed;top:0;right:0;width:100%;max-width:390px;background:url(../img/common/header-bg.jpg) no-repeat center/cover;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:100vh;opacity:0;-webkit-transform:translateX(100%);transform:translate(100%);-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;z-index:101;padding:90px 20px 0}}@media only screen and (max-width: 1199px) and (max-width: 767px){.header__nav{max-width:100%}}@media only screen and (max-width: 1199px){.header__nav.is-open{-webkit-transform:translateX(0px);transform:translate(0);opacity:1}}.header__menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media only screen and (max-width: 1199px){.header__menu{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%}}.header__menu li{position:relative}@media only screen and (max-width: 1199px){.header__menu li{width:100%}}.header__menu li:not(:last-child){margin-right:15px;padding-right:15px}@media only screen and (max-width: 1400px){.header__menu li:not(:last-child){margin-right:10px;padding-right:10px}}@media only screen and (max-width: 1199px){.header__menu li:not(:last-child){margin:0;padding:0}}.header__menu li:not(:last-child):after{content:"";position:absolute;right:0;top:0;height:100%;border-right:1px solid #EDE4D1}@media only screen and (max-width: 1199px){.header__menu li:not(:last-child):after{display:none}}.header__menu a{display:block;font-size:1.5rem;line-height:1.45;letter-spacing:.06em;font-weight:700}@media only screen and (max-width: 1400px){.header__menu a{font-size:1.3rem}}@media only screen and (max-width: 1199px){.header__menu a{font-size:1.5rem;padding:15px 0;border-bottom:1px solid #222222;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.header__menu a:after{content:"";display:block;width:30px;height:30px;background:url(../img/common/icon/ic-arrow.svg) no-repeat center/contain}}.header__group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:30px}@media only screen and (max-width: 1199px){.header__group{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:#FFFFFF;border-radius:15px;padding:20px;width:100%;gap:0}}.header__tel{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;white-space:nowrap;position:relative}@media only screen and (max-width: 1199px){.header__tel{-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:32px;padding-bottom:20px;border-bottom:2px dashed #B5DDCB}}@media only screen and (max-width: 374px){.header__tel{margin-bottom:24px}}.header__label{display:none}@media only screen and (max-width: 1199px){.header__label{display:block;background:#B5DDCB;text-align:center;border-radius:35px;font-size:1.5rem;line-height:1.5;letter-spacing:.03em;font-weight:700;padding:5px 10px;color:#007742;width:100%}}.header__phone{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:5px;font-family:Inter,sans-serif;font-size:3rem;font-weight:700;line-height:1.3;letter-spacing:.06em}@media only screen and (max-width: 1400px){.header__phone{font-size:2.6rem;letter-spacing:.05em}}@media only screen and (max-width: 1199px){.header__phone{width:100%;font-size:3.6rem;line-height:1.5;letter-spacing:.08em;gap:10px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}@media only screen and (max-width: 374px){.header__phone{font-size:2.8rem}}.header__phone:before{content:"";display:block;width:22px;height:22px;background:url(../img/common/icon/ic-phone.svg) no-repeat center/contain}@media only screen and (max-width: 1400px){.header__phone:before{width:20px;height:20px}}@media only screen and (max-width: 1199px){.header__phone:before{width:26px;height:26px;background:url(../img/common/icon/ic-phone_green.svg) no-repeat center/contain}}@media only screen and (max-width: 374px){.header__phone:before{width:20px;height:20px}}.header__time{font-size:1.4rem}@media only screen and (max-width: 1400px){.header__time{font-size:1.2rem}}@media only screen and (max-width: 1199px){.header__time{font-size:1.7rem;letter-spacing:.02em}}@media only screen and (max-width: 374px){.header__time{font-size:1.3rem}}.header__cta{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:270px;height:60px;margin-left:-15px;z-index:1;padding:2px}@media only screen and (max-width: 1400px){.header__cta{min-width:240px}}@media only screen and (max-width: 1199px){.header__cta{min-width:auto;width:100%;margin-left:0;height:75px;max-width:315px}}@media only screen and (max-width: 374px){.header__cta{height:60px}}.header__cta:before{content:"";position:absolute;top:2px;left:2px;width:calc(100% - 4px);height:calc(100% - 4px);background:-webkit-gradient(linear,left top,left bottom,color-stop(50%,#D60D34),to(#8C070B));background:-webkit-linear-gradient(top,#D60D34 50%,#8C070B 100%);background:linear-gradient(180deg,#D60D34 50%,#8C070B 100%);z-index:1;border-radius:100px}.header__cta:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:-webkit-gradient(linear,left top,left bottom,from(#FFFFFF),to(#B64F49));background:-webkit-linear-gradient(top,#FFFFFF 0%,#B64F49 100%);background:linear-gradient(180deg,#FFFFFF 0%,#B64F49 100%);z-index:-1;border-radius:100px}.header__cta-badge{display:none}@media only screen and (max-width: 1199px){.header__cta-badge{display:block;position:absolute;top:-12px;left:0;width:100%;z-index:1}.header__cta-badge span{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;background:#ffffff;border:1px solid #D60D34;font-size:1.6rem;line-height:30px;letter-spacing:.03em;text-align:center;padding:0 20px;border-radius:50px;font-weight:900;color:#007742}}@media only screen and (max-width: 374px){.header__cta-badge{top:-8px}.header__cta-badge span{font-size:1.4rem;line-height:20px}}.header__cta-btn{padding:0 30px;color:#fff;font-size:1.8rem;font-weight:900;line-height:1.5;letter-spacing:.03em;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;z-index:2;position:relative}@media only screen and (max-width: 1400px){.header__cta-btn{font-size:1.6rem;padding:0 24px}}@media only screen and (max-width: 1199px){.header__cta-btn{font-size:2rem}}@media only screen and (max-width: 374px){.header__cta-btn{font-size:1.6rem}}.header__cta-btn:after{content:"";display:block;width:14px;height:17px;background:url(../img/common/icon/ic-tab.svg) no-repeat center/contain;position:relative;left:5px}@media only screen and (max-width: 1199px){.header__cta-btn:after{width:18px;height:21px}}@media only screen and (max-width: 374px){.header__cta-btn:after{width:14px;height:17px}}.header__toggle{display:none;position:relative;width:56px;height:56px;border:none;background:transparent;cursor:pointer;z-index:101}@media only screen and (max-width: 1199px){.header__toggle{display:block}}.header__toggle span{position:absolute;left:50%;width:28px;border-bottom:3px solid #222222;border-radius:999px;-webkit-transform:translateX(-50%);transform:translate(-50%);-webkit-transition:.3s ease;transition:.3s ease}.header__toggle span:nth-child(1){top:18px}.header__toggle span:nth-child(2){top:27px}.header__toggle span:nth-child(3){top:36px}.footer{background:#006641;padding:20px}.footer__copyright{font-family:Inter,sans-serif;text-align:center;font-size:1.4rem;line-height:1.5;letter-spacing:.03em;color:#ede4d1}body{position:relative;overflow-x:hidden;font-family:Noto Sans JP,sans-serif;color:#222}@media only screen and (max-width: 767px){body{min-width:320px}}body.is-lock{overflow:hidden}main{overflow:hidden}.container{max-width:1180px;margin-inline:auto;padding:0 20px}a[href^="tel:"]{pointer-events:none}@media only screen and (max-width: 1024px){a[href^="tel:"]{pointer-events:inherit}}.top-mv{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;padding-top:90px;--mv-ease: cubic-bezier(.22, 1, .36, 1);--mv-reveal: cubic-bezier(.77, 0, .18, 1)}@media only screen and (max-width: 767px){.top-mv{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.top-mv__content{width:61.25vw;padding:5.625vw 5.625vw 9.375vw;position:relative;z-index:1}.top-mv__content:after{content:"";position:absolute;top:-90px;left:0;width:100%;height:calc(100% + 90px);background:url(../img/top/mv-bg.jpg) no-repeat center/cover;z-index:-1;-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0);-webkit-transform:scale(1.05);transform:scale(1.05);-webkit-transition:-webkit-clip-path 1.3s var(--mv-reveal),-webkit-transform 1.7s var(--mv-ease);transition:-webkit-clip-path 1.3s var(--mv-reveal),-webkit-transform 1.7s var(--mv-ease);transition:clip-path 1.3s var(--mv-reveal),transform 1.7s var(--mv-ease);transition:clip-path 1.3s var(--mv-reveal),transform 1.7s var(--mv-ease),-webkit-clip-path 1.3s var(--mv-reveal),-webkit-transform 1.7s var(--mv-ease)}.top-mv__content .top-mv__group{max-width:50vw;margin:0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px);-webkit-transition:opacity .8s ease,-webkit-transform 1s var(--mv-ease);transition:opacity .8s ease,-webkit-transform 1s var(--mv-ease);transition:opacity .8s ease,transform 1s var(--mv-ease);transition:opacity .8s ease,transform 1s var(--mv-ease),-webkit-transform 1s var(--mv-ease);-webkit-transition-delay:.2s;transition-delay:.2s}@media only screen and (max-width: 767px){.top-mv__content{z-index:3;width:100%;padding:11.5384615385vw 20px}.top-mv__content:after{top:0;height:100%;-webkit-transform:scale(1.03);transform:scale(1.03)}.top-mv__content .top-mv__group{max-width:89.7435897436vw}}.top-mv__lead{font-size:3.3125vw;line-height:1.45;letter-spacing:.06em;font-weight:600;margin-bottom:1.25vw;opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px);-webkit-transition:opacity .7s ease,-webkit-transform .8s var(--mv-ease);transition:opacity .7s ease,-webkit-transform .8s var(--mv-ease);transition:opacity .7s ease,transform .8s var(--mv-ease);transition:opacity .7s ease,transform .8s var(--mv-ease),-webkit-transform .8s var(--mv-ease)}.top-mv__lead span{position:relative}.top-mv__lead span:before{content:"";position:absolute;top:-10px;left:50%;-webkit-transform:translateX(-50%) scale(0);transform:translate(-50%) scale(0);width:.625vw;height:.625vw;background:#D60D34;border-radius:50%;-webkit-transition:-webkit-transform .5s var(--mv-ease);transition:-webkit-transform .5s var(--mv-ease);transition:transform .5s var(--mv-ease);transition:transform .5s var(--mv-ease),-webkit-transform .5s var(--mv-ease);-webkit-transition-delay:.7s;transition-delay:.7s}@media only screen and (max-width: 767px){.top-mv__lead{font-size:6.1538461538vw;margin-bottom:2.5641025641vw}.top-mv__lead span:before{width:1.2820512821vw;height:1.2820512821vw;top:-1.2820512821vw}}.top-mv__title-main{font-size:4.375vw;line-height:1.45;letter-spacing:.06em;display:-webkit-box;display:-ms-flexbox;display:flex;gap:5px;opacity:1}@media only screen and (max-width: 767px){.top-mv__title-main{font-size:6.1538461538vw}}.top-mv__title-main>span{display:block;text-align:center;background:-webkit-gradient(linear,left top,left bottom,color-stop(50%,#D60D34),to(#8C070B));background:-webkit-linear-gradient(top,#D60D34 50%,#8C070B 100%);background:linear-gradient(180deg,#D60D34 50%,#8C070B 100%);width:6.5625vw;height:6.5625vw;font-size:5.6875vw;font-weight:900;line-height:1;letter-spacing:.03em;color:#fff;padding:2px 0 0;opacity:0;-webkit-transform:translateY(35px) scale(.88);transform:translateY(35px) scale(.88);-webkit-transition:opacity .55s ease,-webkit-transform .7s var(--mv-ease);transition:opacity .55s ease,-webkit-transform .7s var(--mv-ease);transition:opacity .55s ease,transform .7s var(--mv-ease);transition:opacity .55s ease,transform .7s var(--mv-ease),-webkit-transform .7s var(--mv-ease);will-change:opacity,transform}.top-mv__title-main>span.is-plain{background:none;width:auto;height:auto;font-size:inherit;font-weight:inherit;color:inherit;padding:0;align-self:center}.top-mv__title-main>span:nth-last-child(2){margin-right:10px}@media only screen and (max-width: 767px){.top-mv__title-main>span:nth-last-child(2){margin:0}}@media only screen and (max-width: 767px){.top-mv__title-main>span{width:10.2564102564vw;height:10.2564102564vw;font-size:8.2051282051vw}.top-mv__title-main>span.is-plain{width:auto;height:auto;font-size:inherit}}.top-mv__title-sub{display:block;font-size:7.9375vw;line-height:1.45;letter-spacing:.06em;font-weight:700;opacity:0;-webkit-transform:translateY(30px) scale(.96);transform:translateY(30px) scale(.96);-webkit-transition:opacity .8s ease,-webkit-transform .9s var(--mv-ease);transition:opacity .8s ease,-webkit-transform .9s var(--mv-ease);transition:opacity .8s ease,transform .9s var(--mv-ease);transition:opacity .8s ease,transform .9s var(--mv-ease),-webkit-transform .9s var(--mv-ease);will-change:opacity,transform}@media only screen and (max-width: 767px){.top-mv__title-sub{font-size:15.3846153846vw}}.top-mv__label{background:-webkit-gradient(linear,left top,right top,color-stop(10.5%,#007742),color-stop(35.94%,#088C51),color-stop(86.82%,#088C51),color-stop(112.26%,#007742));background:-webkit-linear-gradient(left,#007742 10.5%,#088C51 35.94%,#088C51 86.82%,#007742 112.26%);background:linear-gradient(90deg,#007742 10.5%,#088C51 35.94%,#088C51 86.82%,#007742 112.26%);text-align:center;font-size:2.25vw;line-height:1.45;letter-spacing:.03em;font-weight:900;color:#fff;padding:.625vw 1.25vw;border-radius:4.375vw;width:100%;opacity:0;-webkit-transform:translateY(25px) scaleX(.9);transform:translateY(25px) scaleX(.9);-webkit-transition:opacity .7s ease,-webkit-transform .9s var(--mv-ease);transition:opacity .7s ease,-webkit-transform .9s var(--mv-ease);transition:opacity .7s ease,transform .9s var(--mv-ease);transition:opacity .7s ease,transform .9s var(--mv-ease),-webkit-transform .9s var(--mv-ease);will-change:opacity,transform}@media only screen and (max-width: 767px){.top-mv__label{font-size:4.1025641026vw;padding:1.2820512821vw 5.1282051282vw;border-radius:8.9743589744vw}}.top-mv__img{-webkit-box-flex:1;-ms-flex:1;flex:1;position:relative;z-index:1}.top-mv__img:after{content:"";position:absolute;top:-90px;left:0;width:100%;height:calc(100% + 90px);background:url(../img/top/mv-img.jpg) no-repeat center/cover;z-index:-1;-webkit-clip-path:inset(0 0 0 100%);clip-path:inset(0 0 0 100%);-webkit-transform:scale(1.06);transform:scale(1.06);-webkit-transition:-webkit-clip-path 1.4s var(--mv-reveal),-webkit-transform 1.8s var(--mv-ease);transition:-webkit-clip-path 1.4s var(--mv-reveal),-webkit-transform 1.8s var(--mv-ease);transition:clip-path 1.4s var(--mv-reveal),transform 1.8s var(--mv-ease);transition:clip-path 1.4s var(--mv-reveal),transform 1.8s var(--mv-ease),-webkit-clip-path 1.4s var(--mv-reveal),-webkit-transform 1.8s var(--mv-ease);-webkit-transition-delay:.1s;transition-delay:.1s}@media only screen and (max-width: 767px){.top-mv__img{min-height:102.5641025641vw}.top-mv__img:after{top:0;height:100%;-webkit-transform:scale(1.03);transform:scale(1.03)}}.top-mv__person{position:absolute;top:0;left:-6.125vw;width:35.625vw;z-index:2;opacity:0;-webkit-transform:translate3d(-40px,30px,0) scale(1.05);transform:translate3d(-40px,30px,0) scale(1.05);-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-transition:opacity .8s ease,-webkit-transform 1.2s var(--mv-ease);transition:opacity .8s ease,-webkit-transform 1.2s var(--mv-ease);transition:opacity .8s ease,transform 1.2s var(--mv-ease);transition:opacity .8s ease,transform 1.2s var(--mv-ease),-webkit-transform 1.2s var(--mv-ease);-webkit-transition-delay:.35s;transition-delay:.35s;will-change:opacity,transform}.top-mv__person img{display:block;width:100%;height:auto}@media only screen and (max-width: 767px){.top-mv__person{left:20px;width:73.0769230769vw;-webkit-transform:translate3d(-20px,20px,0) scale(1.03);transform:translate3d(-20px,20px,0) scale(1.03)}}.top-mv__slogan{display:-webkit-box;display:-ms-flexbox;display:flex;gap:.625vw;position:absolute;top:1.875vw;right:3.75vw;z-index:3}.top-mv__slogan span{display:block;background:#ffffff;padding:.625vw;font-size:2.4375vw;line-height:1.1;letter-spacing:.06em;font-weight:700;-webkit-writing-mode:vertical-lr;-ms-writing-mode:tb-lr;writing-mode:vertical-lr;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;opacity:0;-webkit-transform:translateY(-40px) rotate(2deg);transform:translateY(-40px) rotate(2deg);-webkit-clip-path:inset(0 0 100% 0);clip-path:inset(0 0 100% 0);-webkit-transition:opacity .7s ease,-webkit-transform .9s var(--mv-ease),-webkit-clip-path .9s var(--mv-reveal);transition:opacity .7s ease,-webkit-transform .9s var(--mv-ease),-webkit-clip-path .9s var(--mv-reveal);transition:opacity .7s ease,transform .9s var(--mv-ease),clip-path .9s var(--mv-reveal);transition:opacity .7s ease,transform .9s var(--mv-ease),clip-path .9s var(--mv-reveal),-webkit-transform .9s var(--mv-ease),-webkit-clip-path .9s var(--mv-reveal);will-change:opacity,transform,clip-path}@media only screen and (max-width: 767px){.top-mv__slogan span{font-size:5.1282051282vw;padding:1.2820512821vw}}@media only screen and (max-width: 767px){.top-mv__slogan{gap:1.2820512821vw;top:3.8461538462vw;right:7.6923076923vw}}.top-mv.is-loaded .top-mv__content:after{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);-webkit-transform:scale(1);transform:scale(1)}.top-mv.is-loaded .top-mv__content .top-mv__group{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.top-mv.is-loaded .top-mv__img:after{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);-webkit-transform:scale(1);transform:scale(1)}.top-mv.is-loaded .top-mv__lead{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.65s;transition-delay:.65s}.top-mv.is-loaded .top-mv__lead span:before{-webkit-transform:translateX(-50%) scale(1);transform:translate(-50%) scale(1)}.top-mv.is-loaded .top-mv__title-main>span{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}.top-mv.is-loaded .top-mv__title-main>span:nth-child(1){-webkit-transition-delay:.95s;transition-delay:.95s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(2){-webkit-transition-delay:1.03s;transition-delay:1.03s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(3){-webkit-transition-delay:1.11s;transition-delay:1.11s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(4){-webkit-transition-delay:1.19s;transition-delay:1.19s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(5){-webkit-transition-delay:1.27s;transition-delay:1.27s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(6){-webkit-transition-delay:1.35s;transition-delay:1.35s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(7){-webkit-transition-delay:1.43s;transition-delay:1.43s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(8){-webkit-transition-delay:1.51s;transition-delay:1.51s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(9){-webkit-transition-delay:1.59s;transition-delay:1.59s}.top-mv.is-loaded .top-mv__title-main>span:nth-child(10){-webkit-transition-delay:1.67s;transition-delay:1.67s}.top-mv.is-loaded .top-mv__title-sub{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);-webkit-transition-delay:1.55s;transition-delay:1.55s}.top-mv.is-loaded .top-mv__label{opacity:1;-webkit-transform:translateY(0) scaleX(1);transform:translateY(0) scaleX(1);-webkit-transition-delay:1.8s;transition-delay:1.8s}.top-mv.is-loaded .top-mv__person{opacity:1;-webkit-transform:translate3d(0,var(--mv-parallax-y, 0px),0) scale(1);transform:translate3d(0,var(--mv-parallax-y, 0px),0) scale(1);-webkit-transition-delay:.45s;transition-delay:.45s}.top-mv.is-loaded .top-mv__slogan span{opacity:1;-webkit-transform:translateY(0) rotate(0);transform:translateY(0) rotate(0);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}.top-mv.is-loaded .top-mv__slogan span:nth-child(1){-webkit-transition-delay:.85s;transition-delay:.85s}.top-mv.is-loaded .top-mv__slogan span:nth-child(2){-webkit-transition-delay:1.05s;transition-delay:1.05s}@media (prefers-reduced-motion: reduce){.top-mv:after,.top-mv .top-mv__content:after,.top-mv .top-mv__img:after,.top-mv .top-mv__group,.top-mv .top-mv__lead,.top-mv .top-mv__title-main>span,.top-mv .top-mv__title-sub,.top-mv .top-mv__label,.top-mv .top-mv__person,.top-mv .top-mv__slogan span{opacity:1!important;-webkit-transform:none!important;transform:none!important;-webkit-clip-path:none!important;clip-path:none!important;-webkit-transition:none!important;transition:none!important;-webkit-animation:none!important;animation:none!important}}.top-reason{padding:90px 0 120px;background:#F4F1E7;position:relative}@media only screen and (max-width: 767px){.top-reason{padding:45px 0 60px}}.top-reason:before{content:"";position:absolute;top:0;left:0;width:100%;height:610px;background:url(../img/top/reason-frame.png) no-repeat top center/cover}@media only screen and (max-width: 767px){.top-reason:before{height:305px}}.top-reason:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:430px;background:-webkit-gradient(linear,left top,left bottom,from(rgba(237,228,209,0)),to(rgba(237,228,209,.8)));background:-webkit-linear-gradient(top,rgba(237,228,209,0) 0%,rgba(237,228,209,.8) 100%);background:linear-gradient(180deg,rgba(237,228,209,0) 0%,rgba(237,228,209,.8) 100%)}@media only screen and (max-width: 767px){.top-reason:after{height:215px}}.top-reason__inner{position:relative;z-index:5}.top-reason__title{text-align:center;font-size:5.1rem;line-height:1.45;letter-spacing:.06em;font-weight:800;margin-bottom:20px;color:#fff}@media only screen and (max-width: 767px){.top-reason__title{font-size:2.4rem}}@media only screen and (max-width: 374px){.top-reason__title{font-size:2rem}}.top-reason__list{background:#FFFFFF;border:3px solid #EAE6E4;border-radius:15px;padding:60px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:15px}@media only screen and (max-width: 767px){.top-reason__list{padding:20px}}.top-reason__list li{width:calc((100% - 30px) / 3);background:#F4F1E7;border-radius:5px;padding:20px 30px;font-size:1.7rem;line-height:1.5;letter-spacing:.03em;font-weight:700;text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}@media only screen and (max-width: 1180px){.top-reason__list li{width:calc(50% - 15px);font-size:1.5rem}.top-reason__list li:last-child{width:100%}}@media only screen and (max-width: 767px){.top-reason__list li{width:100%;padding:20px}}.top-rick{margin-top:90px}@media only screen and (max-width: 767px){.top-rick{margin-top:45px}}.top-rick__title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:20px;margin-bottom:45px;opacity:0}@media only screen and (max-width: 767px){.top-rick__title{gap:5px;margin-bottom:30px}}.top-rick__title:before,.top-rick__title:after{content:"";display:block;width:60px;height:90px;background:url(../img/common/icon/ic-line.svg) no-repeat center/contain;-ms-flex-negative:0;flex-shrink:0;opacity:0;-webkit-transition:opacity .8s ease,-webkit-transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,-webkit-transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1),-webkit-transform 1s cubic-bezier(.22,1,.36,1)}@media only screen and (max-width: 1180px){.top-rick__title:before,.top-rick__title:after{width:30px;height:45px}}.top-rick__title:before{-webkit-transform:translateX(-60px);transform:translate(-60px)}@media only screen and (max-width: 1180px){.top-rick__title:before{-webkit-transform:translateX(-30px);transform:translate(-30px)}}.top-rick__title:after{-webkit-transform:translateX(60px) scaleX(-1);transform:translate(60px) scaleX(-1)}@media only screen and (max-width: 1180px){.top-rick__title:after{-webkit-transform:translateX(30px) scaleX(-1);transform:translate(30px) scaleX(-1)}}.top-rick__title>span{font-size:5.1rem;line-height:1.45;letter-spacing:.06em;font-weight:800;text-align:center;opacity:0;-webkit-transform:translateY(40px);transform:translateY(40px);-webkit-transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1),-webkit-transform .9s cubic-bezier(.22,1,.36,1)}@media only screen and (max-width: 1180px){.top-rick__title>span{font-size:3.2rem}}@media only screen and (max-width: 767px){.top-rick__title:before,.top-rick__title:after{width:22px;height:33px}}@media only screen and (max-width: 767px){.top-rick__title>span{font-size:1.8rem;-webkit-transform:translateY(25px);transform:translateY(25px)}}.top-rick__title>span span{color:#d60d34;background-image:-webkit-gradient(linear,left top,left bottom,from(#FAB6B9),to(#FAB6B9));background-image:-webkit-linear-gradient(#FAB6B9,#FAB6B9);background-image:linear-gradient(#FAB6B9,#FAB6B9);background-repeat:no-repeat;background-position:left bottom 5px;background-size:100% 20px}@media only screen and (max-width: 1180px){.top-rick__title>span span{background-size:100% 10px}}.top-rick__title.aos-animate{opacity:1}.top-rick__title.aos-animate:before,.top-rick__title.aos-animate:after{opacity:1;-webkit-transform:translateX(0);transform:translate(0)}.top-rick__title.aos-animate:after{-webkit-transform:translateX(0) scaleX(-1);transform:translate(0) scaleX(-1)}.top-rick__title.aos-animate>span{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.2s;transition-delay:.2s}.top-warning{background:url(../img/top/reason-warning.jpg) no-repeat center/cover;padding:30px 45px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:45px;border-radius:10px;max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;margin:60px auto 0}@media only screen and (max-width: 767px){.top-warning{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:20px;gap:20px;margin-top:30px}}.top-warning img{width:75px}@media only screen and (max-width: 1180px){.top-warning img{width:60px}}.top-warning span{font-size:2.4rem;line-height:1.5;letter-spacing:.03em;font-weight:800;color:#fff}@media only screen and (max-width: 1180px){.top-warning span{font-size:1.8rem}}@media only screen and (max-width: 767px){.top-warning span{text-align:center}}.top-solution{padding:120px 0 90px;background:#FFFEFA;position:relative;z-index:1}@media only screen and (max-width: 767px){.top-solution{padding:60px 0 45px}}.top-solution.aos-animate:before{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.top-solution:after{content:"";position:absolute;top:0;left:0;width:100%;height:1000px;background:url(../img/top/solution-bg.png) no-repeat center/cover;z-index:-1}.top-solution:before{content:"";position:absolute;top:-45px;right:0;width:660px;height:440px;background:url(../img/top/solution-frame.png) no-repeat center/contain;z-index:3;opacity:0;-webkit-transform:translateY(40px);transform:translateY(40px);-webkit-transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1),-webkit-transform .9s cubic-bezier(.22,1,.36,1)}@media only screen and (max-width: 1180px){.top-solution:before{width:55.9322033898vw;height:37.2881355932vw}}@media only screen and (max-width: 767px){.top-solution:before{position:relative;top:0;right:auto;left:0;display:block;width:270px;height:180px;margin:0 auto;background:url(../img/top/solution-frame_sp.png) no-repeat center/contain}}.top-solution__inner{position:relative}.top-solution__inner:before{content:"";position:absolute;top:-150px;left:50%;-webkit-transform:translateX(-50%) rotate(-45deg);transform:translate(-50%) rotate(-45deg);width:60px;height:60px;background:#EFE7D5}@media only screen and (max-width: 767px){.top-solution__inner:before{width:30px;height:30px;top:-235px}}.top-solution__title{font-size:5.4rem;line-height:1.45;letter-spacing:.06em;font-weight:700;margin-bottom:90px;position:relative;z-index:4}@media only screen and (max-width: 1180px){.top-solution__title{font-size:4.5762711864vw}}@media only screen and (max-width: 767px){.top-solution__title{font-size:2.1rem;margin-bottom:45px;text-align:center;margin-top:-20px}}.top-solution__title span{color:#d60d34;background-image:-webkit-gradient(linear,left top,left bottom,from(#FAB6B9),to(#FAB6B9));background-image:-webkit-linear-gradient(#FAB6B9,#FAB6B9);background-image:linear-gradient(#FAB6B9,#FAB6B9);background-repeat:no-repeat;background-position:left bottom 7px;background-size:100% 20px}@media only screen and (max-width: 1180px){.top-solution__title span{background-size:100% 1.6949152542vw;background-position:left bottom .593220339vw}}.top-solution__item{background:#F4F1E7;border-radius:15px;padding:60px;gap:60px;display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}@media only screen and (max-width: 1180px){.top-solution__item{padding:30px;gap:30px}}@media only screen and (max-width: 767px){.top-solution__item{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding:20px}}.top-solution__item+li{margin-top:30px}.top-solution__content{width:calc(50% - 30px);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media only screen and (max-width: 767px){.top-solution__content{width:100%}}.top-solution__tit{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:25px;font-size:3.9rem;line-height:1.3;letter-spacing:.03em;font-weight:800;color:#007742;margin-bottom:20px}@media only screen and (max-width: 1180px){.top-solution__tit{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;gap:10px}}@media only screen and (max-width: 767px){.top-solution__tit{-ms-flex-wrap:wrap;flex-wrap:wrap;font-size:2.4rem;gap:10px 25px}}.top-solution__tit span{display:block;padding:10px 15px 10px 10px;font-family:Inter,sans-serif;font-size:2.1rem;line-height:1.5;letter-spacing:.03em;color:#fff;background:#007742;border-radius:3px 15px 3px 3px;-ms-flex-negative:0;flex-shrink:0;text-transform:uppercase}@media only screen and (max-width: 767px){.top-solution__tit span{font-size:1.6rem}}.top-solution__detail{padding:30px;-webkit-box-flex:1;-ms-flex:1;flex:1;background:#FFFFFF;border:1px solid #EDE4D1;-webkit-box-shadow:0px 3px 10px #EDE4D1;box-shadow:0 3px 10px #ede4d1;border-radius:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}@media only screen and (max-width: 767px){.top-solution__detail{padding:30px 20px}}.top-solution__detail li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;gap:10px;padding-bottom:10px;border-bottom:1px solid #EDE4D1;font-size:1.8rem;line-height:1.5;font-weight:700}.top-solution__detail li+li{margin-top:15px}.top-solution__detail li:before{content:"";display:block;width:22px;height:25px;background:url(../img/common/icon/ic-checked.svg) no-repeat center/contain;-ms-flex-negative:0;flex-shrink:0}.top-solution__img{width:calc(50% - 30px)}@media only screen and (max-width: 767px){.top-solution__img{width:calc(100% + 40px);margin:-20px -20px 0}}.top-solution__img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:5px}@media only screen and (max-width: 767px){.top-solution__img img{border-radius:0}}.top-strength__item,.top-case__item{border-radius:10px;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.top-strength__img,.top-case__img{position:relative}.top-strength__img img,.top-case__img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.top-strength__img span,.top-case__img span{position:absolute;bottom:0;left:0;padding:5px 15px 5px 10px;background:#007742;border-radius:0 10px 0 0;font-family:Inter,sans-serif;font-size:1.5rem;line-height:1.5;letter-spacing:.03em;font-weight:700;color:#fff}.top-strength__content,.top-case__content{background:#FFFFFF;border-width:0px 1px 1px 1px;border-style:solid;border-color:#ede4d1;-webkit-box-shadow:0px 3px 10px #EDE4D1;box-shadow:0 3px 10px #ede4d1;border-radius:0 0 10px 10px;padding:25px;-webkit-box-flex:1;-ms-flex:1;flex:1}@media only screen and (max-width: 767px){.top-strength__content,.top-case__content{padding:20px}}.top-strength__tit,.top-case__tit{font-size:2.4rem;line-height:1.5;letter-spacing:.03em;font-weight:800;color:#007742;position:relative;padding-bottom:20px;border-bottom:1px solid #EDE4D1;margin-bottom:20px;min-height:85px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media only screen and (max-width: 767px){.top-strength__tit,.top-case__tit{min-height:auto}}.top-strength__tit:before,.top-case__tit:before{content:"";position:absolute;bottom:-1px;left:0;width:40px;border-bottom:1px solid #D60D34}.top-strength__text,.top-case__text{font-size:1.7rem;line-height:1.8;letter-spacing:.03em;font-weight:500}.top-strength{padding:0 0 90px;background:#F4F1E7}@media only screen and (max-width: 767px){.top-strength{padding:0 0 45px}}.top-strength__title{background:#007742;text-align:center;padding:20px;font-size:5.4rem;line-height:1.45;letter-spacing:.06em;font-weight:700;color:#fff;margin-bottom:90px;position:relative}@media only screen and (max-width: 767px){.top-strength__title{margin-bottom:45px;font-size:2.7rem;padding:10px 20px}}.top-strength__title span{position:relative;z-index:2}.top-strength__title:after{content:"";position:absolute;bottom:-22.5px;left:50%;-webkit-transform:translateX(-50%) rotate(-45deg);transform:translate(-50%) rotate(-45deg);width:45px;height:45px;background:#007742;z-index:1}@media only screen and (max-width: 767px){.top-strength__title:after{width:30px;height:30px;bottom:-15px}}.top-strength__list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:30px}@media only screen and (max-width: 767px){.top-strength__list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.top-strength__item{width:calc((100% - 60px) / 3)}@media only screen and (max-width: 1180px){.top-strength__item{width:calc(50% - 15px)}.top-strength__item:last-child{width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.top-strength__item:last-child .top-strength__content{width:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:0 10px 10px 0}.top-strength__item:last-child .top-strength__img{width:50%}}@media only screen and (max-width: 767px){.top-strength__item{width:100%}.top-strength__item:last-child{width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.top-strength__item:last-child .top-strength__content{width:100%;border-radius:0 0 10px 10px}.top-strength__item:last-child .top-strength__img{width:100%}}.top-case__title,.top-flow__title{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;min-height:75px;max-width:510px;margin:0 auto 60px;font-size:5.4rem;line-height:1.3;letter-spacing:.06em;color:#007742;font-weight:700;text-shadow:2px 2px 0 #ffffff,2px -2px 0 #ffffff,-2px 2px 0 #ffffff,-2px -2px 0 #ffffff,2px 0px 0 #ffffff,0px 2px 0 #ffffff,-2px 0px 0 #ffffff,0px -2px 0 #ffffff;opacity:0}@media only screen and (max-width: 767px){.top-case__title,.top-flow__title{font-size:2.7rem;max-width:250px;margin-bottom:30px}}.top-case__title:before,.top-case__title:after,.top-flow__title:before,.top-flow__title:after{content:"";position:absolute;top:0;left:0;width:35px;height:100%;background:url(../img/common/icon/ic-frame_title.svg) no-repeat center/contain;opacity:0;-webkit-transition:opacity .8s ease,-webkit-transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,-webkit-transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1),-webkit-transform 1s cubic-bezier(.22,1,.36,1)}@media only screen and (max-width: 767px){.top-case__title:before,.top-case__title:after,.top-flow__title:before,.top-flow__title:after{width:20px}}.top-case__title:before,.top-flow__title:before{-webkit-transform:translateX(-60px);transform:translate(-60px)}@media only screen and (max-width: 1180px){.top-case__title:before,.top-flow__title:before{-webkit-transform:translateX(-30px);transform:translate(-30px)}}.top-case__title:after,.top-flow__title:after{left:auto;right:0;-webkit-transform:translateX(60px) scaleX(-1);transform:translate(60px) scaleX(-1)}@media only screen and (max-width: 1180px){.top-case__title:after,.top-flow__title:after{-webkit-transform:translateX(30px) scaleX(-1);transform:translate(30px) scaleX(-1)}}.top-case__title span,.top-flow__title span{opacity:0;-webkit-transform:translateY(40px);transform:translateY(40px);-webkit-transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,-webkit-transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1),-webkit-transform .9s cubic-bezier(.22,1,.36,1)}.top-case__title.aos-animate,.top-flow__title.aos-animate{opacity:1}.top-case__title.aos-animate:before,.top-case__title.aos-animate:after,.top-flow__title.aos-animate:before,.top-flow__title.aos-animate:after{opacity:1;-webkit-transform:translateX(0);transform:translate(0)}.top-case__title.aos-animate:after,.top-flow__title.aos-animate:after{-webkit-transform:translateX(0) scaleX(-1);transform:translate(0) scaleX(-1)}.top-case__title.aos-animate>span,.top-flow__title.aos-animate>span{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.2s;transition-delay:.2s}.top-case{padding:90px 0;background:url(../img/top/case-bg.jpg) no-repeat center/cover}@media only screen and (max-width: 767px){.top-case{padding:45px 0}}.top-case__slide{position:relative;max-width:840px;margin:0 auto}.top-case__slide .swiper{margin:0 calc(-.5*(100vw - 1140px));overflow:visible}@media only screen and (max-width: 1180px){.top-case__slide .swiper{margin:0 -20px}}.top-case__slide .swiper-slide{background:#F4F1E7;border-radius:15px;padding:30px;max-width:840px;width:calc(100% - 40px)}@media only screen and (max-width: 767px){.top-case__slide .swiper-slide{padding:15px}}.top-case__slide .swiper-button-next,.top-case__slide .swiper-button-prev{width:45px;height:45px;border:1px solid #ffffff;background:#007742 url(../img/common/icon/ic-nav.svg) no-repeat center/contain;border-radius:50%;right:-20px}.top-case__slide .swiper-button-next:after,.top-case__slide .swiper-button-prev:after{display:none}.top-case__slide .swiper-button-prev{-webkit-transform:scaleX(-1);transform:scaleX(-1);left:-20px}.top-case__item{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:#FFFFFF;border:1px solid #EDE4D1;border-radius:5px}@media only screen and (max-width: 767px){.top-case__item{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-radius:10px;border:none}}.top-case__content{background:none;border:none;padding:40px;border-radius:0;width:50%;-webkit-box-shadow:none;box-shadow:none}@media only screen and (max-width: 767px){.top-case__content{width:100%;padding:20px;border:1px solid #EDE4D1;border-top:0;border-radius:0 0 10px 10px}}.top-case__img{width:50%}@media only screen and (max-width: 767px){.top-case__img{width:100%}}.top-case__img img{height:auto;-o-object-fit:inherit;object-fit:inherit}.top-flow{padding:90px 0;position:relative}@media only screen and (max-width: 767px){.top-flow{padding:45px 0}}.top-flow:before,.top-flow:after{content:"";position:absolute;top:0;width:50%;height:100%}.top-flow:before{background:rgba(238,230,213,.8);left:0}.top-flow:after{background:#F4F1E7;right:0}.top-flow__inner{position:relative;z-index:1}.top-flow__list{max-width:840px;margin:0 auto}.top-flow__item{padding:30px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:40px;background:#FFFFFF;border:1px solid #EDE4D1;-webkit-box-shadow:0px 3px 10px #EDE4D1;box-shadow:0 3px 10px #ede4d1;border-radius:10px}@media only screen and (max-width: 767px){.top-flow__item{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding:0;overflow:hidden;gap:0}}.top-flow__item+.top-flow__item{margin-top:15px}.top-flow__img{width:210px}@media only screen and (max-width: 767px){.top-flow__img,.top-flow__img img{width:100%}}.top-flow__content{-webkit-box-flex:1;-ms-flex:1;flex:1}@media only screen and (max-width: 767px){.top-flow__content{padding:20px;-webkit-box-flex:0;-ms-flex:none;flex:none;width:100%}}.top-flow__tit{font-size:3rem;line-height:1.5;letter-spacing:.03em;font-weight:700;color:#007742;padding-bottom:10px;border-bottom:1px solid #EDE4D1;margin-bottom:25px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:15px}@media only screen and (max-width: 1180px){.top-flow__tit{font-size:2.8rem}}@media only screen and (max-width: 767px){.top-flow__tit{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}}.top-flow__tit span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;background:#007742;font-family:Inter,sans-serif;font-size:1.7rem;line-height:1;letter-spacing:.03em;font-weight:700;color:#fff;padding:6px 15px 4px 10px;border-radius:3px 10px 3px 3px;min-height:35px;-ms-flex-negative:0;flex-shrink:0}.top-flow__text{font-size:1.7rem;line-height:1.95;font-weight:500}.cta{padding:40px 0 60px;background:#088C51;position:relative}.cta:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/common/cta-bg.png) no-repeat center/cover}.cta__inner{position:relative;z-index:1}.cta__title{max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;margin:0 auto 20px;font-size:1.8rem;line-height:1.45;letter-spacing:.06em;font-weight:700;color:#fff}@media only screen and (max-width: 767px){.cta__title{text-align:center;font-size:1.6rem}}.cta__title span{display:block;font-size:3.6rem;line-height:1.3;letter-spacing:.03em;margin-bottom:10px;text-align:center}@media only screen and (max-width: 767px){.cta__title span{font-size:2.4rem}}.cta__box{background:#ffffff;border-radius:15px;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative}@media only screen and (max-width: 767px){.cta__box{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.cta__box:before{content:"";position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);height:calc(100% - 40px);border-left:2px dashed #B5DDCB}@media only screen and (max-width: 767px){.cta__box:before{display:none}}.cta__item{width:50%;min-height:162px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:20px}@media only screen and (max-width: 767px){.cta__item{width:100%;min-height:auto}.cta__item:first-child{position:relative;margin-bottom:13px}.cta__item:first-child:before{content:"";position:absolute;bottom:0;width:calc(100% - 40px);left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%);border-bottom:2px dashed #B5DDCB}}.cta__phone{width:100%;max-width:380px}.cta__phone-label{font-size:1.5rem;line-height:1.5;letter-spacing:.03em;color:#007742;font-weight:900;background:#B5DDCB;border-radius:35px;padding:5px 10px;text-align:center}.cta__phone-number{display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:4.7rem;font-family:Inter,sans-serif;line-height:1.5;letter-spacing:.03em;font-weight:700}@media only screen and (max-width: 850px){.cta__phone-number{font-size:5.5294117647vw;gap:1.1764705882vw;letter-spacing:.0035294118vw}}@media only screen and (max-width: 767px){.cta__phone-number{font-size:3.8rem;letter-spacing:.03em}}@media only screen and (max-width: 374px){.cta__phone-number{font-size:3rem}}.cta__phone-number:before{content:"";display:block;width:40px;height:40px;background:url(../img/common/icon/ic-phone_green.svg) no-repeat center/contain}@media only screen and (max-width: 850px){.cta__phone-number:before{width:4.7058823529vw;height:4.7058823529vw}}@media only screen and (max-width: 767px){.cta__phone-number:before{width:30px;height:30px}}@media only screen and (max-width: 374px){.cta__phone-number:before{width:22px;height:22px}}.cta__phone-time{font-size:1.4rem;line-height:1.5;font-weight:700;color:#007742;text-align:center}.cta__btn{width:100%;max-width:390px;position:relative}.cta__btn>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:-15px;left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:0 20px;height:34px;font-size:2.1rem;line-height:1.5;letter-spacing:.03em;font-weight:900;color:#007742;background:#FFFFFF;border:1px solid #D60D34;border-radius:50px;z-index:2}@media only screen and (max-width: 850px){.cta__btn>span{top:-1.7647058824vw;padding:0 2.3529411765vw;height:4vw;font-size:2.4705882353vw}}@media only screen and (max-width: 767px){.cta__btn>span{top:-13px;padding:0 20px;height:30px;font-size:1.6rem}}@media only screen and (max-width: 374px){.cta__btn>span{font-size:1.2rem}}.cta__btn a{position:relative;display:block;padding:3px;z-index:1}.cta__btn a:before{content:"";position:absolute;top:3px;left:3px;width:calc(100% - 6px);height:calc(100% - 6px);background:-webkit-gradient(linear,left top,left bottom,color-stop(50%,#D60D34),to(#8C070B));background:-webkit-linear-gradient(top,#D60D34 50%,#8C070B 100%);background:linear-gradient(180deg,#D60D34 50%,#8C070B 100%);z-index:1;border-radius:100px}.cta__btn a:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:-webkit-gradient(linear,left top,left bottom,from(#FFFFFF),to(#B64F49));background:-webkit-linear-gradient(top,#FFFFFF 0%,#B64F49 100%);background:linear-gradient(180deg,#FFFFFF 0%,#B64F49 100%);z-index:-1;border-radius:100px}.cta__btn a span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:2.7rem;line-height:1.5;letter-spacing:.03em;font-weight:900;padding:0 40px;height:90px;position:relative;z-index:2;color:#fff}@media only screen and (max-width: 850px){.cta__btn a span{font-size:3.1764705882vw;padding:0 4.7058823529vw;height:10.5882352941vw;letter-spacing:.0035294118vw}}@media only screen and (max-width: 767px){.cta__btn a span{height:75px;font-size:2.1rem;padding:0 30px}}@media only screen and (max-width: 374px){.cta__btn a span{font-size:1.6rem;padding:0 20px;height:60px}}.cta__btn a span:after{content:"";display:block;width:20px;height:23px;background:url(../img/common/icon/ic-tab.svg) no-repeat center/contain;position:relative;left:5px}@media only screen and (max-width: 850px){.cta__btn a span:after{width:2.3529411765vw;height:2.7058823529vw;left:.5882352941vw}}@media only screen and (max-width: 767px){.cta__btn a span:after{width:20px;height:23px;left:0}}.cta__address{text-align:center;color:#ede4d1;font-size:1.5rem;line-height:1.5;letter-spacing:.03em;margin:30px 0 -30px}.cta{--cta-ease: cubic-bezier(.22, 1, .36, 1);--cta-reveal: cubic-bezier(.77, 0, .18, 1)}.cta:before{opacity:0;-webkit-transform:scale(1.08);transform:scale(1.08);-webkit-transition:opacity 1.2s ease,-webkit-transform 1.8s var(--cta-ease);transition:opacity 1.2s ease,-webkit-transform 1.8s var(--cta-ease);transition:opacity 1.2s ease,transform 1.8s var(--cta-ease);transition:opacity 1.2s ease,transform 1.8s var(--cta-ease),-webkit-transform 1.8s var(--cta-ease)}.cta__title{opacity:0;-webkit-transform:translateY(35px);transform:translateY(35px);-webkit-transition:opacity .8s ease,-webkit-transform .9s var(--cta-ease);transition:opacity .8s ease,-webkit-transform .9s var(--cta-ease);transition:opacity .8s ease,transform .9s var(--cta-ease);transition:opacity .8s ease,transform .9s var(--cta-ease),-webkit-transform .9s var(--cta-ease)}.cta__title>span{opacity:0;-webkit-transform:translateY(20px) scale(.96);transform:translateY(20px) scale(.96);-webkit-transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease),-webkit-transform .8s var(--cta-ease)}.cta__box{opacity:0;-webkit-transform:translateY(40px) scale(.97);transform:translateY(40px) scale(.97);-webkit-transform-origin:center top;transform-origin:center top;-webkit-transition:opacity .8s ease,-webkit-transform 1s var(--cta-ease);transition:opacity .8s ease,-webkit-transform 1s var(--cta-ease);transition:opacity .8s ease,transform 1s var(--cta-ease);transition:opacity .8s ease,transform 1s var(--cta-ease),-webkit-transform 1s var(--cta-ease);will-change:opacity,transform}.cta__phone-label{opacity:0;-webkit-transform:translateY(15px) scale(.96);transform:translateY(15px) scale(.96);-webkit-transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease),-webkit-transform .7s var(--cta-ease)}.cta__phone-number{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px);-webkit-transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease),-webkit-transform .8s var(--cta-ease);-webkit-transition-delay:.15s;transition-delay:.15s}.cta__phone-time{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease),-webkit-transform .7s var(--cta-ease);-webkit-transition-delay:.25s;transition-delay:.25s}.cta__btn>span{opacity:0;-webkit-transform:translateX(-50%) translateY(12px) scale(.8);transform:translate(-50%) translateY(12px) scale(.8);-webkit-transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,-webkit-transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease);transition:opacity .6s ease,transform .7s var(--cta-ease),-webkit-transform .7s var(--cta-ease);-webkit-transition-delay:.25s;transition-delay:.25s}.cta__btn a{opacity:0;-webkit-transform:translateY(25px) scale(.96);transform:translateY(25px) scale(.96);-webkit-transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,-webkit-transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease);transition:opacity .7s ease,transform .8s var(--cta-ease),-webkit-transform .8s var(--cta-ease);-webkit-transition-delay:.35s;transition-delay:.35s;overflow:hidden}.cta__btn a:after{-webkit-transition:-webkit-transform .8s var(--cta-ease);transition:-webkit-transform .8s var(--cta-ease);transition:transform .8s var(--cta-ease);transition:transform .8s var(--cta-ease),-webkit-transform .8s var(--cta-ease)}.cta__btn a:before{overflow:hidden}.cta.aos-animate:before{opacity:1;-webkit-transform:scale(1);transform:scale(1)}.cta.aos-animate .cta__title{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.05s;transition-delay:.05s}.cta.aos-animate .cta__title>span{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);-webkit-transition-delay:.2s;transition-delay:.2s}.cta.aos-animate .cta__box{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);-webkit-transition-delay:.35s;transition-delay:.35s}.cta.aos-animate .cta__phone-label{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);-webkit-transition-delay:.65s;transition-delay:.65s}.cta.aos-animate .cta__phone-number{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.78s;transition-delay:.78s}.cta.aos-animate .cta__phone-time{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.92s;transition-delay:.92s}.cta.aos-animate .cta__btn>span{opacity:1;-webkit-transform:translateX(-50%) translateY(0) scale(1);transform:translate(-50%) translateY(0) scale(1);-webkit-transition-delay:.75s;transition-delay:.75s}.cta.aos-animate .cta__btn a{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);-webkit-transition-delay:.85s;transition-delay:.85s}.cta__btn a:hover{-webkit-transform:translateY(-3px) scale(1.01);transform:translateY(-3px) scale(1.01);-webkit-transition:-webkit-transform .35s var(--cta-ease);transition:-webkit-transform .35s var(--cta-ease);transition:transform .35s var(--cta-ease);transition:transform .35s var(--cta-ease),-webkit-transform .35s var(--cta-ease)}.cta__btn a:hover span:after{-webkit-transform:translateX(3px);transform:translate(3px)}@media (prefers-reduced-motion: reduce){.cta:before,.cta__title,.cta__title>span,.cta__box,.cta__phone-label,.cta__phone-number,.cta__phone-time,.cta__btn>span,.cta__btn a{opacity:1!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none!important;transition:none!important;-webkit-animation:none!important;animation:none!important}}

/* =====================================================================
   floating-cta : SP追従CTA（後追加 / 2026-09）
   ※このファイルはビルド出力(minified)。SCSSソースが復元された際は
     このブロックをソース側へ移すこと。素の追記であることを忘れない。
   ===================================================================== */
:root {
  --floating-cta-h: 74px;
}

.floating-cta {
  display: none;
}

@media only screen and (max-width: 767px) {

  .floating-cta {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
    padding: 8px 12px;
    padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    background: #FFFFFF;
    border-top: 1px solid rgba(0, 119, 66, .15);
    -webkit-box-shadow: 0 -3px 14px rgba(0, 0, 0, .12);
    box-shadow: 0 -3px 14px rgba(0, 0, 0, .12);
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(110%);
    transform: translateY(110%);
    -webkit-transition: opacity .3s ease, visibility .3s ease, -webkit-transform .55s cubic-bezier(.22, 1, .36, 1);
    transition: opacity .3s ease, visibility .3s ease, transform .55s cubic-bezier(.22, 1, .36, 1), -webkit-transform .55s cubic-bezier(.22, 1, .36, 1);
    will-change: transform;
  }

  .floating-cta.is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  /* ハンバーガー展開中は隠す（openMenu/closeMenu は改変しない） */
  body.is-lock .floating-cta {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(110%);
    transform: translateY(110%);
  }

  .floating-cta__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    max-width: 420px;
    margin: 0 auto;
  }

  .floating-cta__item:first-child {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 48%;
    flex: 0 0 48%;
    min-width: 0;
  }

  .floating-cta__item:last-child {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 52%;
    flex: 1 1 52%;
    min-width: 0;
  }

  .floating-cta__btn {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 58px;
    border-radius: 100px;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
    -webkit-transition: -webkit-transform .15s ease;
    transition: transform .15s ease, -webkit-transform .15s ease;
  }

  .floating-cta__btn:active {
    -webkit-transform: scale(.98);
    transform: scale(.98);
  }

  .floating-cta__btn:focus-visible {
    outline: 3px solid #0B7BD1;
    outline-offset: 2px;
  }

  /* --- 電話：CTAの「白箱＋緑」を踏襲 --- */
  .floating-cta__btn--tel {
    background: #FFFFFF;
    border: 2px solid #007742;
    color: #007742;
  }

  .floating-cta__num {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 5px;
    font-family: Inter, sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .03em;
  }

  .floating-cta__num:before {
    content: "";
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    background: url(../img/common/icon/ic-phone_green.svg) no-repeat center/contain;
  }

  .floating-cta__time {
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .02em;
  }

  /* --- フォーム：.cta__btn a の赤グラデ＋外枠を踏襲 --- */
  .floating-cta__btn--form {
    position: relative;
    z-index: 1;
    padding: 3px;
    gap: 2px;
    color: #fff;
  }

  .floating-cta__btn--form:before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #D60D34), to(#8C070B));
    background: -webkit-linear-gradient(top, #D60D34 50%, #8C070B 100%);
    background: linear-gradient(180deg, #D60D34 50%, #8C070B 100%);
    z-index: 1;
    border-radius: 100px;
  }

  .floating-cta__btn--form:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#B64F49));
    background: -webkit-linear-gradient(top, #FFFFFF 0%, #B64F49 100%);
    background: linear-gradient(180deg, #FFFFFF 0%, #B64F49 100%);
    z-index: -1;
    border-radius: 100px;
  }

  .floating-cta__badge {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 16px;
    padding: 0 8px;
    background: #FFFFFF;
    border: 1px solid #D60D34;
    border-radius: 50px;
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: .02em;
    color: #007742;
  }

  .floating-cta__text {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 6px;
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: .02em;
  }

  .floating-cta__text:after {
    content: "";
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 13px;
    height: 15px;
    background: url(../img/common/icon/ic-tab.svg) no-repeat center/contain;
  }

  /* --- 追従バー分の余白（フッターを緑のまま伸ばす） --- */
  .footer {
    padding-bottom: calc(20px + var(--floating-cta-h) + env(safe-area-inset-bottom, 0px));
  }
}

@media only screen and (max-width: 374px) {

  .floating-cta {
    padding: 6px 10px;
    padding-bottom: calc(6px + env(safe-area-inset-bottom, 0px));
  }

  .floating-cta__list {
    gap: 6px;
  }

  .floating-cta__item:first-child {
    -ms-flex: 0 0 46%;
    flex: 0 0 46%;
  }

  .floating-cta__item:last-child {
    -ms-flex: 1 1 54%;
    flex: 1 1 54%;
  }

  .floating-cta__btn {
    height: 52px;
  }

  .floating-cta__num {
    font-size: 1.5rem;
    gap: 4px;
  }

  .floating-cta__num:before {
    width: 15px;
    height: 15px;
  }

  .floating-cta__time {
    font-size: 1rem;
  }

  .floating-cta__badge {
    height: 15px;
    padding: 0 6px;
  }

  .floating-cta__text {
    font-size: 1.2rem;
    gap: 4px;
  }

  .floating-cta__text:after {
    width: 11px;
    height: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {

  .floating-cta {
    -webkit-transition: none !important;
    transition: none !important;
    -webkit-transform: none !important;
    transform: none !important;
  }
}

/* =====================================================================
   グローバルナビ : サイト内リンクのスクロール位置補正（後追加 / 2026-09）
   .header は position:fixed（min-height:90px）で常に画面上部を覆うため、
   アンカー着地点をヘッダー高さ分だけ下げる。
   scroll-padding-top はスクロールコンテナ側の指定なので、
   今後アンカーを増やしても個別対応が不要。
   ===================================================================== */
:root {
  --header-h: 90px;
}

html {
  scroll-padding-top: calc(var(--header-h) + 16px);
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

/* =====================================================================
   ヘッダー内リンクのホバー（後追加 / 2026-09）
   「ふわっと色が変わり、ふわっと色が戻る」＝ 色の変化のみ、動きは付けない。
   往復のフェードは既存の a{transition:all .3s ease-in-out} が担うため、
   <a> 自体には transition を足していない。
   <span> は a の transition を継承しないので、そこだけ個別に指定する。
   タッチ端末でホバーが貼り付くのを防ぐため (hover:hover) で囲む。
   ===================================================================== */
@media (hover: hover) and (pointer: fine) {

  /* グローバルナビ：本文色 #222 → メイングリーン */
  .header__menu a:hover {
    color: #007742;
  }

  /* ヘッダーCTA：白 → ベージュ（既存パレット #EDE4D1） */
  .header__cta-btn {
    -webkit-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out;
  }

  .header__cta:hover .header__cta-btn {
    color: #EDE4D1;
  }
}

@media (prefers-reduced-motion: reduce) {

  .header__menu a,
  .header__cta-btn {
    -webkit-transition: none !important;
    transition: none !important;
  }
}

/* =====================================================================
   SP：1文字だけ改行される行（孤立文字）の抑止（後追加 / 2026-09）

   例）375px  「駐車場や新築用地として活 / 用」「空き家・空き地の実績多 / 数」
       360px  「地域密着で培ってきた信 / 頼」「現地視察・ヒアリン / グ」
       390px  「空き家・空き地の課題を解決す / る」
       428px  「相続や固定資産税の負担を減らせ / る」

   発生箇所は画面幅ごとに入れ替わる（320px:0件 / 360px:6件 / 375px:4件 /
   390px:3件 / 414px:0件 / 428px:2件）ため、<br> での固定は不適切。
   text-wrap:pretty は最終行が極端に短くなる分割を避けるので、
   幅に関係なく自動で解消できる。

   ・レイアウト変化なし（全77ブロックの高さを実測、差分0）
   ・未対応ブラウザは単に無視され、現状の見え方に戻るだけ
   ・word-break:auto-phrase は文節改行として理想的だが、継承で本文にも
     波及し .top-strength__txt が2箇所で1行増えるため採用しない
   ===================================================================== */
@media only screen and (max-width: 767px) {

  .top h2,
  .top h3,
  .top p,
  .top li,
  .cta h2,
  .cta p {
    text-wrap: pretty;
  }
}

/* =====================================================================
   SP：見出しの改行位置を指定どおりに固定（後追加 / 2026-09）

   1) .cta__title      「空き家・空き地の課題を / 解決する」
                       「売却・活用・相談まで、地域の専門家が / 丁寧にサポートします。」
        → HTML側に <br class="sp-only"> を追加済み。
   2) .top-rick__title 「放置された空き家・空き地には、/ こんなリスクがあります。」
   3) .top-solution__title「空き家・空き地の状況に合わせて / 最適な方法をご提案します。」
        → HTML側の <br class="pc-only"> を <br> に変更済み（SPでも改行）。

   2) 3) はいずれも1行目が入りきらず追加で折り返してしまうため、
   画面幅に追従する min(現行値, Nvw) で頭打ちさせる。
   固定pxだと375pxで合わせても320/360pxで3〜4行に崩れる（実測済み）。
   min() の第1引数が現行値なので、幅が広い側では従来サイズのまま。
   ===================================================================== */
@media only screen and (max-width: 767px) {

  /* --- 2) 放置された〜 ---
     :before / :after（ic-line.svg の赤い斜線）は flex アイテムとして
     30px×2 + gap 10px×2 = 80px を消費し、テキスト幅を335px→255pxまで
     削っていた。絶対配置に逃がして全幅を本文に使う。 */
  .top-rick__title {
    position: relative;
  }

  .top-rick__title:before,
  .top-rick__title:after {
    position: absolute;
    bottom: 0;
  }

  .top-rick__title:before {
    left: 0;
  }

  .top-rick__title:after {
    right: 0;
  }

  .top-rick__title > span {
    width: 100%;
    font-size: min(2.4rem, 5.4vw);
  }

  /* --- 3) 状況に合わせて で改行 --- */
  .top-solution__title {
    font-size: min(2.1rem, 5.4vw);
  }

  /* --- 1) 地域の専門家が で改行 ---
     360px以上は <br class="sp-only"> だけで成立するが、320pxだと
     1行目（18文字 / 304.6px）が可用幅280pxに入らず「家が」がこぼれる。
     見出し側の .cta__title span は 2.4rem 指定なので影響を受けない。 */
  .cta__title {
    font-size: min(1.6rem, 4.4vw);
  }
}

/* =====================================================================
   相談事例：写真左の余白（後追加 / 2026-09）
   白い内枠の左端に写真が張り付いていたので、本文側の padding(40px) に
   合わせて左側へ余白を確保する。SPは縦積みのため対象外。
   ===================================================================== */
@media only screen and (min-width: 768px) {
  .top-case__item {
    padding-left: 30px;
  }

  .top-case__img img {
    border-radius: 5px 0 0 5px;
  }
}

/* =====================================================================
   特徴：POINT 04追加に伴う 2×2 レイアウト（後追加 / 2026-09）
   3列時の「最後の1枚だけ横並び全幅」を解除し、常に2列にする。
   ===================================================================== */
@media only screen and (min-width: 768px) {
  .top-strength__item,
  .top-strength__item:last-child {
    width: calc((100% - 30px) / 2);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .top-strength__item:last-child .top-strength__img,
  .top-strength__item:last-child .top-strength__content {
    width: 100%;
  }

  .top-strength__item:last-child .top-strength__content {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    border-radius: 0 0 10px 10px;
  }
}

/* =====================================================================
   相談事例：注釈を本文と同じ大きさに（後追加 / 2026-09）
   .top-case__note は font-size 未指定のため html 62.5% で約10pxになる。
   ===================================================================== */
.top-case__note2 {
  font-size: 1.7rem;
  line-height: 1.8;
  letter-spacing: .03em;
  font-weight: 500;
  color: #B64F49;
}

/* =====================================================================
   CTA見出し：PCでも2行目を中央揃え（後追加 / 2026-09）
   SPは既存の text-align:center。PCは span（1行目）だけ中央で、
   「売却・活用・相談まで、サポートします。」が左寄りになっていた。
   ===================================================================== */
@media only screen and (min-width: 768px) {
  .cta__title {
    text-align: center;
  }
}

/* =====================================================================
   ご相談の流れ：9ステップ化（後追加 / 2026-09）

   4ステップ（バッジ＋見出し＋説明文＋写真210px）から、
   9ステップ（バッジ＋見出しのみ）へ変更。
   写真と説明文の削除ぶんが項目増を上回るため、セクション総高さは
   逆に縮む（実測 PC 1440px幅 1,168px → 1,068px、
   SP 375px幅 2,115px → 1,344px）。

   【順序の注意】このブロックは minified 出力（1行目）の
   @media(max-width:767px) より必ず後ろに来る。メディアクエリは
   詳細度を上げないので、ここに MQ 無しで書いた宣言は SP にも
   後勝ちで効いてしまう。minified が ≤767px で別値を持つ
   プロパティ（.top-flow__item の padding / gap など）に触るときは、
   このブロック側にも @767 を書いて SP 値を再宣言すること。
   ===================================================================== */

/* --- 見出しの下線を外す ---
   区切る対象（説明文）が無くなったので、罫線と下余白25pxが
   カード下端に宙ぶらりんで残る。minified の @767 はこの3つを
   触っていないため、MQ 無しの1回で PC / SP 両方に効く。 */
.top-flow__tit {
  padding-bottom: 0;
  border-bottom: 0;
  margin-bottom: 0;
}

/* --- カードを1行ぶんの高さに詰める ---
   写真が無くなり gap 40px は空きすぎるので 20px へ。
   padding は上下だけ 30px → 18px（左右30pxは維持）。
   position / z-index はコネクタ線をカードの下へ潜らせるため。 */
.top-flow__item {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: 18px 30px;
  gap: 20px;
  min-height: 72px;
}

.top-flow__item + .top-flow__item {
  margin-top: 12px;
}

/* 3rem のままだと1行見出し9本には強すぎる。
   gap 48px = バッジ右端137px から本文開始を185pxまで押し出す値。
   帯（下記）の右端が160pxなので、帯と本文の間に25pxの白が入る。
   gap 24px だと本文開始161px＝帯の右端と重なり、文字が帯に
   貼り付いて見える。 */
.top-flow__tit {
  gap: 48px;
  font-size: 2.2rem;
}

/* FLOW 01〜09 のバッジ幅を固定。Inter は等幅数字ではないため
   実測で 100〜105px と揺れ（01 が最も細い）、下のコネクタ線の
   left がステップごとにずれる。最大値＋1pxで頭を揃える。 */
.top-flow__tit span {
  min-width: 106px;
}

/* --- 3フェーズの色分け（バッジ側の帯＋バッジ色） ---
   白カード9枚に同じ緑バッジが並ぶと単調なので、内容のまとまりで
   3つに色分けする。9ステップが「実質3段階」に見え、工程数の
   負担感も下がる。

     phase1 = FLOW 01〜03  受付・ヒアリング
     phase2 = FLOW 04〜07  調査・確認
     phase3 = FLOW 08〜09  ご提案・実行

   新しい色相は足さず、メイングリーン #007742 の濃度ランプで組む。
   白抜き文字のコントラストは 5.65 / 8.14 / 11.42:1 でいずれも
   WCAG AA（4.5:1）をクリア。逆に #007742 より淡い緑は
   3.2〜4.4:1 まで落ちて白文字が乗らないため、
   「淡い→濃い」ではなく「濃い→さらに濃い」方向のランプにしている。

   帯は item の :before で敷き、border-radius で切り抜くために
   item 側へ overflow:hidden を足してある。
   幅 160px = padding-left 30px + バッジ106px + 右側の余白23px。 */
.top-flow__item:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  bottom: 0;
  width: 160px;
}

.top-flow__content {
  position: relative;
  z-index: 1;
}

.top-flow__item--phase1:before {
  background: #E8F3EE;
}

.top-flow__item--phase2:before {
  background: #D4E8DF;
}

.top-flow__item--phase3:before {
  background: #BDDCCE;
}

/* phase1 のバッジは既存の #007742 のまま */
.top-flow__item--phase2 .top-flow__tit span {
  background: #005C33;
}

.top-flow__item--phase3 .top-flow__tit span {
  background: #00432C;
}

/* --- ステップをつなぐ縦線 ---
   .top-flow__item:before では描かないこと。<li> の
   data-aos="fade-up" が付ける transform:translateY() が線にも
   掛かり、スクロール中に線が伸び縮みして見える。
   線はリスト側に1本通しで敷き、カードの白背景を上に重ねる。
   カードがどう動いても線は静止し、カード間の隙間からだけ覗く。

   left 84px = item の border 1px + padding-left 30px + バッジ106pxの中心53px
   top / bottom 37px = 1枚目・9枚目のバッジ中心

   色は #EDE4D1 だと白カードに対して弱く、隙間12pxでは見えない。
   ブランドグリーンの20%なら、ベージュ地・白カードの
   どちらに対しても認識できる。 */
.top-flow__list {
  position: relative;
}

.top-flow__list:before {
  content: "";
  position: absolute;
  left: 84px;
  top: 37px;
  bottom: 37px;
  width: 2px;
  background: rgba(0, 119, 66, .2);
  z-index: 0;
}

@media only screen and (max-width: 767px) {

  /* minified の @767 が持つ padding:0 / gap:0 を再宣言して戻す。
     カード内の余白は .top-flow__content 側が担う。
     SP は既存どおりバッジ上・見出し下の縦積みを維持する
     （横並びにすると375px幅で見出しの可用幅が293px→191pxまで落ち、
     FLOW 05「道路、ライフライン、…」が2行→3行に増えるため）。 */
  .top-flow__item {
    padding: 0;
    gap: 0;
    min-height: 60px;
  }

  /* PC を 30px → 18px 30px に詰めたのと同じ理由で SP も詰める。
     縦積みのぶん SP は余白が効きやすく、20px + gap 15px のままだと
     1行カードが125pxになり、9枚でセクション1,581pxまで伸びる。
     14px なら1行カード107px、セクション1,344px（375px幅）。 */
  .top-flow__content {
    padding: 14px;
  }

  /* 2.8rem のままだと375px幅で FLOW 05 が3行になる。
     gap 14px = バッジ下端49px から本文開始を63pxまで下げる値。
     カード本体の上辺が48pxなので、上辺から本文までの余白が
     __content の左右 padding と同じ14pxに揃う。 */
  .top-flow__tit {
    gap: 14px;
    font-size: 2rem;
  }

  .top-flow__tit span {
    min-width: 106px;
  }

  /* バッジの左下とカード本体の左上を突き合わせる。
     __content の padding-left 14px ぶんを負のマージンで打ち消して
     カードの左端（0px）まで寄せ、接する側の角丸だけ落とす。
     本文はカード内に置きたいので __content の padding はそのまま。 */
  .top-flow__item .top-flow__tit span {
    margin-left: -14px;
    border-bottom-left-radius: 0;
  }

  /* SP はバッジが上段に来るので、PC の縦帯はそのままでは使えない。
     帯をカード内に敷くと右側にカード本体の白が200px以上残って無駄になり、
     バッジ幅に詰めても薄い緑のブロックが余分に見える。
     SP は帯を出さず、濃いバッジ（白文字）だけをカードの上に置く。

       [FLOW 01]                    ← バッジのみ（フェーズ色）
       ┌──────────────────────────┐
       │ お問い合わせ              │  ← :after（白いカード本体）
       └──────────────────────────┘

     このため li 自身の背景・枠線・影・角丸はすべて :after へ移し、
     li は透明な入れ物にする。overflow は visible に戻す
     （hidden のままだと :after の影が切られる）。
     フェーズの色分けは、SP ではバッジ色だけが担う。 */
  .top-flow__item {
    background: none;
    border: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    overflow: visible;
  }

  .top-flow__item:before {
    display: none;
  }

  /* top 48px = バッジ下端49px − 枠線1px。
     1pxぶん重ねることで、バッジの下に枠線が線として残らず、
     バッジの左下とカードの左上がそのままつながって見える。
     接続する左上の角丸だけ 0 にする。 */
  .top-flow__item:after {
    content: "";
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    top: 48px;
    bottom: 0;
    background: #FFFFFF;
    border: 1px solid #EDE4D1;
    border-radius: 0 10px 10px 10px;
    -webkit-box-shadow: 0px 3px 10px #EDE4D1;
    box-shadow: 0 3px 10px #ede4d1;
  }

  /* left 68px = border 1px + __content の padding-left 14px + バッジ106pxの中心53px
     top / bottom 33px = border 1px + padding-top 14px + バッジ35pxの中心17.5px */
  .top-flow__list:before {
    left: 68px;
    top: 33px;
    bottom: 33px;
  }
}
