@charset "UTF-8";

html {
    visibility: hidden;
}

html.wf-active,
html.loading-delay {
    visibility: visible;
}

html{
    color: #000000;
    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0;
}

a{
    text-decoration: unset;
}

img{
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

:root{
    --main-w:1440;
    --base-w:1050;
}

.header{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: #ffffff;
    box-shadow: 0px 2px 9px #0000005c;
    z-index: 999;
}

.main{
    padding-top: 75px;
}

.inner{
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
}

.header__inner{
    padding: 12.5px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header__logo{
    width: 138.43px;
    height: auto;
    display: block;
}

.header__nav ul{
    display: flex;
    gap: 20px;
    align-items: center;
}

.header__nav ul li{
    list-style: none;
    font-size: 16px;
    font-weight: 500;
}

.header__nav__item{
    display: block;
    color: inherit;
    font-size: inherit;
    transition: 0.3s;
    opacity: 1;
}

.header__nav__item:hover{
    transition: 0.3s;
    opacity: 0.7;
}

.header__nav__contact{
    display: flex;
    gap: 4.3px;
    align-items: center;
    justify-content: center;
    margin-left: 20px;
    font-size: 16px;
    color: #ffffff;
    width: 230px;
    background-color: #0D9817;
    border-radius: 29px;
    line-height: 50px;
    transition: 0.3s;
    opacity: 1;
}

.header__nav__contact:hover{
    transition: 0.3s;
    opacity: 0.7;
}

.header__nav__contact::before{
    content: "";
    width: 28px;
    height: 22.96px;
    background: url(../img/contact_deco.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 50px;
}

.refinalp__sv{
    padding: 100px 0;
}

.refinalp__sv__flex{
    display: flex;
    gap: min(110px, 110 / var(--base-w) * 100vw);
    justify-content: space-between;
    align-items: flex-start;
}

.refinalp__sv__flex__logo{
    width: min(225px, 225 / var(--base-w) * 100vw);
}

.refinalp__sv__flex__info{
    width: calc(100% - min(364px, 364 / var(--base-w) * 100vw));
}

.refinalp__sv__flex__info__ttl{
    font-size: min(max(20 / var(--base-w) * 100vw,18px), 20px);
    font-weight: bold;
    line-height: 1.5;
}

.refinalp__sv__flex__info__txt{
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-weight: 500;
    line-height: 1.8;
    margin-top: 20px;
}

.refinalp__sv__flex__info__box{
    margin-top: 24px;
}

.refinalp__sv__flex__info__box__txt{
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-weight: 400;
    line-height: 1.8;
}

.refinalp__sv__flex__info__box__list{
    margin: 5px 0;
}

.refinalp__sv__flex__info__box__list li{
    position: relative;
    padding-left: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-weight: bold;
    line-height: 1.7;
    text-decoration: underline 9px #D1F2D1;
    text-underline-offset: -0.2em;
    list-style: none;
    text-decoration-skip-ink: none;
}

.refinalp__sv__flex__info__box__list li::before{
    content: '';
    position: absolute;
    width: min(max(5 / var(--base-w) * 100vw,4px), 5px);
    height:  min(max(5 / var(--base-w) * 100vw,4px), 5px);
    border-radius: 50%;
    background-color: #000000;
    left: min(max(5.5 / var(--base-w) * 100vw,5px), 5.5px);
    top: min(max(12 / var(--base-w) * 100vw,10px), 12px);
}



.refinalp__recommend{
    padding: 100px 0;
    background-color: #F1FBF1;
}

.refinalp__recommend__ttl{
    text-align: center;
    font-size: min(max(35 / var(--base-w) * 100vw,23px), 35px);
    font-weight: bold;
}

.refinalp__recommend__ttl span{
    position: relative;
    padding-bottom: 17px;
}

.refinalp__recommend__ttl span::after{
    content: "";
    position: absolute;
    width: 100%;
    background-color: #0D9817;
    height: 10px;
    left: 0;
    bottom: 0;
    border-radius: 18px;
}

.refinalp__recommend__check{
    margin-top: 55px;
    padding: min(48px, 48 / var(--base-w) * 100vw) min(50px, 50 / var(--base-w) * 100vw);
    background-color: #FFFFFF;
    border-radius: 10px;
    box-shadow: 1px 3px 7px #9B9B9B;
    display: flex;
    flex-wrap: wrap;
    gap: min(24px, 24 / var(--base-w) * 100vw) max(20px, min(34px, 34 / var(--base-w) * 100vw));
}

.refinalp__recommend__check__item{
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: min(max(10 / var(--base-w) * 100vw,8px), 10px);
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    width: calc(48% - max(10px, min(17px, 17 / var(--base-w) * 100vw)));
}

.refinalp__recommend__check__item:nth-child(2n + 1){
    width: calc(52% - max(10px, min(17px, 17 / var(--base-w) * 100vw)));
}

.refinalp__recommend__check__item::before{
    content: "";
    background: url(../img/check_deco.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: min(26.7px, 26.7 / var(--base-w) * 100vw);
    height: min(23.19px, 23.19 / var(--base-w) * 100vw);
}

.refinalp__recommend__image{
    width: 100%;
    margin: -20px 0;
}

.refinalp__recommend__copy{
    text-align: center;
    font-size: min(max(40 / var(--base-w) * 100vw,20px), 40px);
    font-weight: bold;
    color: #0D9817;
}

.refinalp__recommend__bannerarea{
    margin-top: 90px;
}

.refinalp__banner{
    position: relative;
    padding: min(36px, 36 / var(--base-w) * 100vw) min(20px, 20 / var(--base-w) * 100vw);
    background-color: #0D9817;
    border-radius: 10px;
}

.refinalp__banner::before{
    content: "";
    background: url(../img/banner_display.webp);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(264px, 264 / var(--base-w) * 100vw);
    height: min(177px, 177 / var(--base-w) * 100vw);
}

.refinalp__banner{
    padding-left: min(264px, 264 / var(--base-w) * 100vw);
    display: flex;
    gap: min(25px, 25 / var(--base-w) * 100vw);
    align-items: center
}

.refinalp__banner__center{
    color: #ffffff;
    font-weight: bold;
}

.refinalp__banner__center__ttl{
    font-size: min(max(18 / var(--base-w) * 100vw,14px), 18px);
}

.refinalp__banner__center__txt{
    font-size: min(max(24 / var(--base-w) * 100vw,17px), 24px);
    margin-top: 15px;
}

.refinalp__banner__center__txt span{
    position: relative;
}

.refinalp__banner__center__txt span::before{
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #ffffff;
    top: -4px;
    left: calc(50% - 2.5px);
}

.refinalp__banner__link{
    display: inline-block;
    font-size: min(max(18 / var(--base-w) * 100vw,14px), 18px);
    color: #000000;
    background-color: #FFBC3E;
    border-radius: 35px;
    line-height: min(60px, 60 / var(--base-w) * 100vw);
    padding: 0 min(45px, 45 / var(--base-w) * 100vw);
}


.dokkunbutton{
    animation: dokun 1.5s infinite ease-in-out;
    transform-origin: center;
}

@keyframes dokun {
    0%   { transform: scale(1); }
    10%  { transform: scale(1.05); }
    20%  { transform: scale(1); }
    30%  { transform: scale(1.05); }
    40%  { transform: scale(1); }
    100% { transform: scale(1); }
}

.refinalp__strong{
    padding: 100px 0;
}

.refinalp__section__ttl{
    text-align: center;
}

.refinalp__section__ttl__inner{
    position: relative;
    font-size: min(max(35 / var(--base-w) * 100vw,23px), 35px);
    font-weight: bold;
}

.refinalp__section__ttl__inner::before{
    content: "";
    position: absolute;
    bottom: 5px;
    left: -25px;
    width: 10px;
    height: 38px;
    background-color: #0D9817;
}

.refinalp__section__ttl__inner::after{
    content: "";
    position: absolute;
    bottom: 5px;
    right: -25px;
    width: 10px;
    height: 38px;
    background-color: #0D9817;
}

.refinalp__section__ttl__inner span{
    font-size: min(max(55 / var(--base-w) * 100vw,29px), 55px);
}

.refinalp__strong__inner{
    margin: 0 auto;
    margin-top: 55px;
    max-width: 1800px;
}

.refinalp__strong__box{
    display: flex;
    gap: 80px;
    align-items: center;
    width: calc(100vw - calc(50vw - 610px));
    max-width: 100%;
    margin: 0 0 0 auto;
    justify-content: flex-end;
}

.refinalp__strong__box__info__num{
    font-family: rockwell, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: min(max(49 / var(--base-w) * 100vw,32px), 49px);
    color: #0D9817;
}

.refinalp__strong__box__info__ttl{
    margin-top: 10px;
    color: #0D9817;
    font-size: min(max(25 / var(--base-w) * 100vw,18px), 25px);
    font-weight: bold;
}

.refinalp__strong__box__info__txt{
    margin-top: 10px;
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-weight: 500;
    line-height: 1.6;
}

.refinalp__strong__box__info__list{
    margin-top: 10px;
}

.refinalp__strong__box__info__list li{
    position: relative;
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    font-weight: 400;
    line-height: 1.7;
    list-style: none;
    padding-left: min(max(16 / var(--base-w) * 100vw,14px), 16px);
}


.refinalp__strong__box__info__list li::before{
    content: '';
    position: absolute;
    width: min(max(5 / var(--base-w) * 100vw, 2px), 5px);
    height: min(max(5 / var(--base-w) * 100vw, 2px), 5px);
    border-radius: 50%;
    background-color: #000000;
    left: min(max(5.5 / var(--base-w) * 100vw, 4.5px), 5.5px);
    top: min(max(12 / var(--base-w) * 100vw, 11px), 12px);
}

.refinalp__strong__box--reverse{
    flex-direction: row-reverse;
    margin: 0;
    width: calc(100vw - calc(50vw - 610px));
    margin: 0;
}

.refinalp__strong__box__img{
    width: 45%;
}

.refinalp__strong__box__info{
    width: 42%;
}

.refinalp__function{
    padding: 80px 0;
    background: url(../img/function_bg.webp);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.refinalp__function__inner{
    max-width: 1280px;
    margin: 0 auto;
    width: 95%;
    padding: 60px 0 112px 0;
    background: #F1FBF1;
}

.refinalp__function__round__area{
    display: flex;
    flex-wrap: wrap;
    gap: 40px 78px;
    margin-top: 60px;
}

.refinalp__function__round__item{
    width: calc(25% - 58.5px);
}

.refinalp__function__round__top{
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    background-color: #ffffff;
    border-radius: 50%;
}

.refinalp__function__round__top__num{
    font-family: rockwell, sans-serif;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    color: #0D9817;
    font-size: min(max(31 / var(--base-w) * 100vw,16px), 31px);
    padding-top: min(max(20 / var(--base-w) * 100vw,13px), 20px);
}

.refinalp__function__round__top__icon{
    width: 45%;
    margin: 0 auto;
    margin-top: 5px;
}

.refinalp__function__round__bottom{
    margin-top: 10px;
}

.refinalp__function__round__bottom__ttl{
    text-align: center;
    color: #0D9817;
    font-size: min(max(20 / var(--base-w) * 100vw,16px), 20px);
    font-weight: bold;
}

.refinalp__function__round__bottom__txt{
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    line-height: 1.6;
    margin-top: 10px;
    font-weight: 400;
}

.refinalp__function__standardttl{
    margin-top: 80px;
    text-align: center;
    position: relative;
}

.refinalp__function__standardttl::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    left: 0;
    top: calc(50% - 0.5px);
    background-color: #000000;
    z-index: 0;
}

.refinalp__function__standardttl span{
    font-size: min(max(25 / var(--base-w) * 100vw,18px), 25px);
    font-weight: bold;
    line-height: 36px;
    padding: 0 28px;
    background-color: #F1FBF1;
    position: relative;
    z-index: 1;
}

.refinalp__function__standardtxt{
    text-align: center;
    margin-top: 32px;
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    font-weight: bold;
}

.refinalp__function__standardbox{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.refinalp__function__standardbox__item{
    width: calc(33.333% - 13.4px);
    background-color: #FFFFFF;
    border: 2px solid #0D9817;
    padding: 25px 0;
    position: relative;
}

.refinalp__function__standardbox__item--end::after{
    content: "※5店舗以上拠点がある場合はご相談ください。";
    position: absolute;
    left: 0;
    transform: translateY(33px);
    font-size: 14px;
}

.refinalp__function__standardbox__item__ttl{
    text-align: center;
    font-weight: bold;
    font-size: min(max(20 / var(--base-w) * 100vw,16px), 20px);
}

.refinalp__function__standardbox__item__label{
    text-align: center;
}

.refinalp__function__standardbox__item__label__txt{
    display: inline-block;
    line-height: min(max(44 / var(--base-w) * 100vw,30px), 44px);
    background-color: #0D9817;
    border-radius: 33px;
    color: #ffffff;
    font-size: min(max(20 / var(--base-w) * 100vw,14px), 20px);
    width: min(max(135 / var(--base-w) * 100vw,93px), 135px);
    text-align: center;
    position: relative;
    margin-top: 16px;
}

.refinalp__function__standardbox__item__label__txt--rimit::after{
    content: "※";
    position: absolute;
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    color: #000000;
    right: -12px;
    top: -6px;
    line-height: 1;
}

.refinalp__function__standardbox__item__txt{
    margin-top: 12px;
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    text-align: center;
    font-weight: 400;
}

.refinalp__function__standardbox__wrap{
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 40px;
}

.refinalp__price{
    padding: 100px 0;
    background: url(../img/price_bg.webp);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.refinalp__price__ttl{
    text-align: center;
    font-size: min(max(30 / var(--base-w) * 100vw,18px), 30px);
    font-weight: bold;
    margin-top: 55px;
}

.refinalp__price__box{
    display: flex;
    gap: min(70px, 70 / var(--base-w) * 100vw);
    justify-content: center;
    align-items: stretch;
    margin-top: 32px;
}

.refinalp__price__box__item{
    width: 40%;
    color: #0D9817;
    font-size: min(max(35 / var(--base-w) * 100vw,24px), 35px);
    border: 3px solid #0D9817;
    text-align: center;
    padding: 20px 0;
    background-color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* .refinalp__price__box__item--second{
    display: flex;
    align-items: center;
    justify-content: center;
} */

.refinalp__price__box__item__num{
    font-size: min(max(64 / var(--base-w) * 100vw,47px), 64px);
    display: inline-block;
    margin-left: 10px;
    line-height: 0.8;
}

.refinalp__price__box__item__yen{
    font-size: min(max(25 / var(--base-w) * 100vw,18px), 25px);
}

.refinalp__price__box__item__bigtxt{
    font-size: min(max(45 / var(--base-w) * 100vw,33px), 45px);
}

.refinalp__price__box__item__marker{
    position: relative;
    z-index: 1;
}

.refinalp__price__box__item__marker::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 9px;
    background-color: #FFBC3E;
    bottom: 5px;
    left: 0;
    z-index: -1;
}

.refinalp__price__border{
    display: block;
    width: 100%;
    height: 12.56px;
    background: url(../img/price_border.webp);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin: 30px 0;
}

.refinalp__price__months{
    margin-bottom: 100px;
}

.refinalp__price__months__box{
    position: relative;
    background-color: #0D9817;
    max-width: 566px;
    width: 100%;
    margin: 0 auto;
    color: #ffffff;
    text-align: center;
    padding: 5px 0;
}

.refinalp__price__months__box::after{
    content: "※5店舗以上拠点がある場合はご相談ください。";
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translateY(28px);
    font-size: min(max(14 / var(--base-w) * 100vw,12px), 14px);
    color: #000000;
}

.refinalp__price__months__box__01{
    font-size: min(max(35 / var(--base-w) * 100vw,19px), 35px);
    font-weight: bold;
    margin-right: 22px;
}

.refinalp__price__months__box__02{
    font-size: min(max(74 / var(--base-w) * 100vw,41px), 74px);
    font-weight: bold;
}

.refinalp__price__months__box__03{
    font-size: min(max(29 / var(--base-w) * 100vw,15px), 29px);
    font-weight: bold;
    position: relative;
}

.refinalp__price__months__box__03::after{
    content: "(税込)";
    position: absolute;
    font-size: min(max(12 / var(--base-w) * 100vw,6px), 12px);
    right: 0;
    top: -10px;
    white-space: nowrap;
}

.refinalp__price__bannerarea{
    margin-top: 110px;
}

.refinalp__flow{
    padding: 100px 0;
    background-color: #F1FBF1;
}

.refinalp__flow__subttl{
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    text-align: center;
    font-weight: bold;
    margin-top: 56px;
}

.refinalp__flow__list{
    margin-top: 50px;
    display: flex;
    gap: min(72px, 72 / var(--base-w) * 100vw);
}

.refinalp__flow__list__item{
    width: calc(20%);
    position: relative;
}

.refinalp__flow__list__item__img{
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    background-color: #ffffff;
    border-radius: 50%;
    position: relative;
}

.refinalp__flow__list__item__img::after{
    content: "";
    position: absolute;
    background: url(../img/flow_arrow.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: min(17px, 17 / var(--base-w) * 100vw);
    height: min(35px, 35 / var(--base-w) * 100vw);
    top: calc(50%);
    transform: translateY(-50%);
    left: min(-42px, 42 / var(--base-w) * 100vw);
}

.refinalp__flow__list__item:first-child .refinalp__flow__list__item__img::after{
    display: none;
}

.refinalp__flow__list__item__img__num{
    font-family: rockwell, sans-serif;
    font-weight: 700;
    font-style: normal;
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    font-size: min(max(34 / var(--base-w) * 100vw,24px), 34px);
    font-weight: bold;
}

.refinalp__flow__list__item__img img{
    position: absolute;
    width: 59%;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

.refinalp__flow__list__item__ttl{
    text-align: center;
    font-size: min(max(20 / var(--base-w) * 100vw,16px), 20px);
    font-weight: bold;
    margin-top: 12px;
}

.refinalp__flow__list__item__txt{
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    margin-top: 8px;
}

.refinalp__faq{
    padding: 100px 0;
}

.refinalp__faq__list{
    display: flex;
    flex-wrap: wrap;
    gap: 80px 20px;
    margin-top: 120px;
}

.refinalp__faq__list__item{
    position: relative;
    width: calc(50% - 10px);
    background: #F1FBF1;
}

.refinalp__faq__list__item__q{
    display: flex;
    gap: 22px;
    align-items: center;
    color: #ffffff;
    padding: 17px 0 28px 25px;
    background: url(../img/faq_chat_com.webp);
    background-position: left;
    background-size: contain;
    background-repeat: no-repeat;
    width: 75%;
    min-width: 320px;
    position: absolute;
    left: 0;
    top: -50px;
}

.refinalp__faq__list__item__q__ttl{
    font-size: 23px;
    line-height: 1;
    font-weight: bold;
}

.refinalp__faq__list__item__q__txt{
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    font-weight: bold;
    line-height: 1.5;
}

.refinalp__faq__list__item__a{
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    line-height: 1.4;
    padding: 75px 36px 56px 36px;
}

.refinalp__bannerarea{
    padding: 100px 0;
    background-color: #F1FBF1;
}

.footer{
    background-color: #0D9817;
}

.footer__inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 45px 0;
}

.footer__logo{
    width: 138.43px;
}

.header__nav__item--footer{
    color: #ffffff;
}

.header__nav__contact--footer{
    color: #0D9817;
    background-color: #ffffff;
}

.header__nav__contact--footer::before{
    background: url(../img/contact_deco_blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.footer__copy{
    font-size: 14px;
    text-align: center;
    line-height: 30px;
    background-color: #ffffff;
    color: #000000;
    bottom: 0;
    left: 0;
}

.refinalp__fv__info__ttl{
    font-size: 35px;
    font-weight: bold;
    color: #ffffff;
    line-height: 2;
}

.fclp__fv__info__ttl{
    text-align: left;
    font-size: min(max(53 / var(--base-w) * 100vw,30px), 53px);
    font-weight: bold;
    color: #ffffff;
}

.fclp__fv__info__ttl span{
    font-size: min(max(23 / var(--base-w) * 100vw,14px), 23px);
}

.refinalp__fv{
    padding: 50px 0 70px;
    background: url(../img/fv_bg.webp);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}

.refinalp__fv__wrap{
    display: flex;
    align-items: center;
    width: calc(100vw - calc(50vw - 500px));
    margin: 0 0 0 auto;
}

.refinalp__fv__info__ttl span{
    display: inline-block;
    margin-right: 10px;
    font-size: 26px;
    line-height: 1.5;
    color: #000000;
    padding: 7px 19px;
    background-color: #ffffff;
    border-radius: 10px;
}

.refinalp__fv__img{
    width: calc(100% - 650px);
    transform: scale(1.2);
    transform-origin: left;
    max-width: 778px;
}

.refinalp__fv__info__txt{
    text-align: left;
    margin-top: 8px;
    color: #ffffff;
    font-size: min(max(27 / var(--base-w) * 100vw,17px), 27px);
    line-height: 1.5;
    font-weight: bold;
}

.fclp__fv__info__flex{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
}

.fclp__fv__info__flex__item{
    width: 33%;
    text-align: center;
    background-color: #fff;
    font-size: min(max(18 / var(--base-w) * 100vw,15px), 18px);
    font-weight: bold;
    line-height: 36px;
    border-radius: 10px;
}

.refinalp__fv__info__label{
    display: inline-flex;
    gap: 24px;
    padding: 10px 30px 14px 30px;
    border-radius: 10px;
    background-color: #ffffff;
    align-items: baseline;
    margin-top: 60px;
}

.refinalp__fv__info__label__bk{
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    font-weight: bold;
    margin-right: 8px;
    line-height: 1.1;
}

.refinalp__fv__info__label__num{
    font-size: min(max(53 / var(--base-w) * 100vw,38px), 53px);
    color: #0D9817;
    font-weight: bold;
    line-height: 1.1;
}

.refinalp__fv__info__label__yen{
    font-size: min(max(21 / var(--base-w) * 100vw,16px), 21px);
    font-weight: bold;
    color: #0D9817;
}

.refinalp__fv__info__label__ja{
    font-size: min(max(34 / var(--base-w) * 100vw,29px), 34px);
    font-weight: bold;
    color: #0D9817;
    line-height: 1.2;
    vertical-align: top;
}

.refinalp__fv__info__label__yen--tax{
    position: relative;
}

.refinalp__fv__info__label__yen--tax::before{
    content: "(税込)";
    font-size: min(max(10 / var(--base-w) * 100vw,9px), 10px);
    color: #0D9817;
    white-space: nowrap;
    position: absolute;
    top: -10px;
    left: 0;
}

.refinalp__fv__info__label__item p{
    display: inline-block;
}

.refinalp__fv__info{
    width: 650px;
    max-width: 100%;
}

.refinalp__banner__link__wrap{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 45px;
    gap: 9px;
}

.refinalp__banner__link__pop{
    position: relative;
    color: #ffffff;
    font-size: min(max(20 / var(--base-w) * 100vw,16px), 20px);
    font-weight: bold;
    padding: 0 13px;
}

.refinalp__banner__link__pop::before{
    content: "";
    position: absolute;
    height: 100%;
    width: 2px;
    background-color: #ffffff;
    border-radius: 10px;
    left: 0;
    bottom: 0;
    transform: rotate(-15deg);
}

.refinalp__banner__link__pop::after{
    content: "";
    position: absolute;
    height: 100%;
    width: 2px;
    background-color: #ffffff;
    border-radius: 10px;
    right: 3px;
    bottom: 0;
    transform: rotate(15deg);
}

.refinalp__banner__link--bikkuri{
    font-size: min(max(20 / var(--base-w) * 100vw,16px), 20px);
    line-height: 70px;
    padding: 0 min(50px, 50 / var(--base-w) * 100vw);
}

.fanmu__reason{
    max-width: 1000px;
    width: calc(100% - 30px);
    margin: min(100px, 100 / var(--base-w) * 100vw) auto;
}

.fanmu__reason__logo{
    width: min(max(339 / var(--base-w) * 100vw,186px), 339px);
    margin: 0 auto;
}

.fanmu__reason__intro{
    margin-top: min(max(40 / var(--base-w) * 100vw,30px), 40px);
    text-align: center;
    font-size: min(max(20 / var(--base-w) * 100vw,18px), 20px);
    line-height: 1.5;
    font-weight: 400;
}

.fanmu__reason__ttl{
    margin-top: min(max(80 / var(--base-w) * 100vw,40px), 80px);
    text-align: center;
    font-size: min(max(35 / var(--base-w) * 100vw,23px), 35px);
    line-height: 1.5;
    font-weight: bold;
}

.fanmu__reason__box__wrap{
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.fanmu__reason__box{
    width: 100%;
    background-color: #F1FBF1;
    border-radius: 10px;
    padding: 32px min(max(32 / var(--base-w) * 100vw,11px), 32px);
}

.fanmu__reason__box__ttl{
    text-align: center;
    font-size: min(max(18 / var(--base-w) * 100vw,16px), 18px);
    font-weight: bold;
}

.fanmu__reason__box__flex{
    margin-top: 24px;
    display: flex;
    gap: min(max(25 / var(--base-w) * 100vw,8px), 25px);
}

.fanmu__reason__box__flex__item{
    position: relative;
    overflow: hidden;
    display: flex;
    width: 33.333%;
    padding: min(max(20 / var(--base-w) * 100vw, 10px), 20px);
    border-radius: 10px;
    color: #ffff;
    text-align: center;
    background-color: #4DA73F;
    font-size: min(max(16 / var(--base-w) * 100vw, 13px), 16px);
    line-height: 1.5;
    justify-content: center;
    align-items: center;
}

.fanmu__reason__box__flex__item--01::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_01.svg);
    width: min(max(48 / var(--base-w) * 100vw, 41px), 48px);
    aspect-ratio: 48/53;
    height: auto;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__flex__item--02::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_02.svg);
    width: min(max(50 / var(--base-w) * 100vw, 43px), 50px);
    height: auto;
    aspect-ratio: 1/1;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__flex__item--03::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_03.svg);
    width: min(max(55 / var(--base-w) * 100vw, 47px), 55px);
    height: auto;
    aspect-ratio: 8/7;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__flex__item--04::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_04.svg);
    width: min(max(55 / var(--base-w) * 100vw, 50px), 55px);
    height: auto;
    aspect-ratio: 28/25;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__flex__item--05::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_05.svg);
    width: min(max(43 / var(--base-w) * 100vw, 38px), 43px);
    height: auto;
    aspect-ratio: 43/55;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__flex__item--06::after{
    content: "";
    position: absolute;
    right: 1px;
    bottom: 1px;
    background: url(../img/reasonicon_06.svg);
    width: min(max(53 / var(--base-w) * 100vw, 44px), 53px);
    height: auto;
    aspect-ratio: 53/43;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.fanmu__reason__box__after{
    text-align: center;
    font-size: min(max(16 / var(--base-w) * 100vw,14px), 16px);
    margin-top: min(max(24 / var(--base-w) * 100vw,18px), 24px);
    font-weight: 400;
    line-height: 1.7;
}

.upbutton{
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 46px;
    height: 46px;
    display: none;
}

.upbutton:hover{
    transition: 0.3s;
    opacity: 0.7;
}

.fclp__fv__info__fle--sp{
    display: none;
}

.refinalp__example{
    padding-top: min(max(100 / var(--main-w) * 100vw,36px), 100px);
    padding-bottom: min(max(110 / var(--main-w) * 100vw,70px), 110px);
    background-color: #F1FBF1;
}

.refinalp__example__slider{
    margin-top: 50px;
}

.refinalp__example__slider__item{
    display: flex;
    background-color: #fff;
    margin: 0 20px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.refinalp__example__slider__item__image{
    width: 30%;
    aspect-ratio: 1/1;
}

.refinalp__example__slider__item__info__ttl{
    font-size: min(max(25 / var(--main-w) * 100vw,14px), 25px);
    line-height: 1.6;
    font-weight: bold;
}

.refinalp__example__slider__item__info__pro{
    margin-top: 8px;
    font-size: min(max(16 / var(--main-w) * 100vw,12px), 16px);
    line-height: 1.5;
    font-weight: bold;
}

.refinalp__example__slider__item__info__txt{
    font-size: min(max(16 / var(--main-w) * 100vw,12px), 16px);
    margin-top: min(max(25 / var(--main-w) * 100vw,15px), 25px);
    line-height: 1.8;
    font-weight: 400;
}

.refinalp__example__slider__item__info{
    width: 70%;
    padding: min(max(15 / var(--main-w) * 100vw,5px), 15px) min(max(40 / var(--main-w) * 100vw,10px), 40px);
}

.refinalp__example__slider__item__image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.refinalp__example__slider.slick-initialized .slick-slide{
    display: flex;
}

.refinalp__example__slider .slick-list{
    padding-top: 10px!important;
    padding-bottom: 10px!important;
}

.contact{
    background-color: #F1FBF1;
    padding: min(max(100 / var(--main-w) * 100vw,70px), 100px) 0 min(max(150 / var(--main-w) * 100vw,100px), 150px);
}

.contact-thanks{
    background-color: unset;
}

.contact__inner{
    max-width: 800px;
    width: calc(100% - 30px);
    margin: 0 auto;
}

.contact__ttl{
    font-size: min(max(42 / var(--main-w) * 100vw,24px), 42px);
    font-weight: bold;
}

.contact-blue__form{
    margin-top: min(max(56 / var(--main-w) * 100vw,30px), 56px);
    display: flex;
    gap: 20px;
    flex-direction: column;
}

.contact-blue__form__item{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.contact-blue__form__item__ttl{
    width: 100%;
    font-size: 16px;
    letter-spacing: 0.04em;
}

.contact-blue__form__item__wrap input[type=text], .contact-blue__form__item__wrap input[type=tel], .contact-blue__form__item__wrap input[type=email], .contact-blue__form__item__wrap textarea{
    width: 100%;
    background-color: #fff;
    font-size: 13px;
    letter-spacing: 0.04em;
    padding: 15px 15px;
    border-radius: 4px;
    box-shadow: 0px 2px 5px 0px #cecece;
}

.contact-blue__form__item__wrap textarea{
    min-height: 150px;
}

.contact-blue__form__submit{
    text-align: center;
    color: #000;
}

.contact-blue__form__submit button,
.top-news__more__button{
    display: inline-block;
    padding: 20px 40px;
    background: #0d9817;
    color: white;
    border-radius: 5px;
    margin-top: 20px;
}

.form-error{
    color: red;
    font-size: 14px;
}

.confirm-value{
    display: block;
    width: 100%;
    background-color: #fff;
    font-size: 12px;
    letter-spacing: 0.04em;
    padding: 7px 10px;
    border-radius: 4px;
}

.contact-blue__ttl,.contact-sv__ttl{
    font-size: 14px;
    text-align: center;
}

.contact-blue__form__submit .btn-secondary{
    padding: 10px 20px;
    background: #49854e;
}

.sponly_768{
    display: none;
}

.sponly_490{
    display: none;
}

@media (min-width: 1440px) {
    .refinalp__example__slider.slick-initialized .slick-slide{
        max-height: 300px;
    }
}

@media (max-width:1024px) {

    .refinalp__fv__wrap{
        flex-direction: column;
        width: 100%;
        padding: 0 15px;
        margin: 0 auto;
    }

    .refinalp__fv__img{
        width: 60%;
        transform: unset;
        margin-top: 15px;
    }

    .refinalp__fv{
        padding: 30px 0 40px;
    }
}

@media (max-width:768px) {
    .header__nav__item:hover{
        opacity: 1;
    }

    .header__nav__contact:hover{
        opacity: 1;
    }

    .upbutton:hover{
        opacity: 1;
    }

    .sponly_768{
        display: block;
    }

    .pconly_768{
        display: none;
    }

    .refinalp__banner__link__wrap.sponly_768{
        display: flex;
    }

    .refinalp__fv{
        background: url(../img/spfv_bg.webp);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .refinalp__fv__info{
        text-align: center;
    }

    .refinalp__fv__info__ttl{
        font-size: 30px;
    }

    .refinalp__fv__info__txt{
        font-size: 20px;
        margin-top: 10px;
    }

    .refinalp__fv__info__label{
        margin: 0 auto;
        margin-top: 50px;
        gap: 15px;
    }

    .refinalp__fv__info__label__bk{
        font-size: 16px;
    }

    .refinalp__fv__info__label__num{
        font-size: 38px;
    }

    .refinalp__fv__info__label__ja{
        font-size: 29px;
    }

    .refinalp__fv__info__label__num{
        font-size: 38px;
    }

    .refinalp__fv__info__label__yen{
        font-size: 16px;
    }

    .refinalp__fv__info__label__yen--tax::before{
        font-size: 9px;
    }

    .refinalp__banner__link--bikkuri{
        font-size: 18px;
        line-height: 60px;
    }

    .refinalp__banner__link__pop{
        font-size: 16px;
    }

    .refinalp__banner__link__wrap{
        width: 100%;
        margin-top: 20px;
    }

    .refinalp__sv__flex{
        flex-direction: column;
        gap: 16px;
    }

    .refinalp__sv__flex__logo{
        width: 158px;
        margin: 0 auto;
    }

    .refinalp__sv__flex__info{
        width: 100%;
    }

    .refinalp__sv{
        padding: 60px 0;
    }

    .refinalp__recommend{
        padding: 64px 0;
    }

    .refinalp__recommend__check__item,.refinalp__recommend__check__item:nth-child(2n + 1){
        width: 100%;
        font-size: 16px;
    }

    .refinalp__recommend__image{
        max-width: 500px;
        width: 100%;
        margin: 50px auto 16px auto;
    }

    .refinalp__recommend__copy{
        font-size: 27px;
    }

    .refinalp__recommend__bannerarea{
        margin-top: 88px;
    }

    .refinalp__strong__box{
        flex-direction: column;
        gap: 24px;
    }

    .refinalp__strong__box{
        width: 100%;
        padding-left: 15px;
        margin: 0 auto;
    }

    .refinalp__strong__box__info{
        padding-right: 15px;
    }

    .refinalp__strong__box__info,.refinalp__strong__box__img{
        width: 100%;
    }

    .refinalp__strong{
        padding: 50px 0;
    }

    .refinalp__strong__box--reverse{
        margin: 40px auto;
    }

    .refinalp__function__round__area{
        gap: 40px 50px;
        margin-top: 40px;
    }

    .refinalp__function__round__top__num{
        padding-top: 13px;
    }

    .refinalp__function__round__item{
        width: calc(33.3333% - 33.4px);
    }

    .refinalp__section__ttl__inner{
        font-size: 30px;
    }

    .refinalp__section__ttl__inner span{
        font-size: 40px;
    }

    .refinalp__section__ttl__inner::after{
        bottom: 4px;
        right: -20px;
        width: 6px;
        height: 28px;
    }

    .refinalp__section__ttl__inner::before{
        bottom: 4px;
        left: -20px;
        width: 6px;
        height: 28px;
    }

    .refinalp__price__ttl{
        font-size: 24px;
        margin-top: 24px;
    }

    .refinalp__price__box__item{
        font-size: 24px;
        padding: 10px 0;
    }

    .refinalp__price__box__item__num{
        font-size: 47px;
    }

    .refinalp__price__box__item__yen{
        font-size: 18px;
    }

    .refinalp__price__box__item__bigtxt{
        font-size: 33px;
    }

    .refinalp__price__border{
        margin: 32px 0 18px 0;
    }

    .refinalp__price__months__box__01{
        font-size: 27px;
        margin-right: 15px;
    }

    .refinalp__price__months__box::after{
        font-size: 12px;
        transform: translateY(24px);
    }

    .refinalp__price__months{
        margin-bottom: 75px;
    }

    .refinalp__price__bannerarea{
        margin-top: 75px;
    }

    .refinalp__price{
        background-position: right;
        padding: 64px 0;
    }

    .refinalp__flow{
        padding: 64px 0;
    }

    .refinalp__flow__subttl{
        text-align: left;
        margin-top: 24px;
    }

    .refinalp__flow__list{
        gap: 70px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .refinalp__flow__list__item{
        width: calc(33.333% - 47px);
    }

    .refinalp__flow__list__item__img::after{
        left: -35px;
    }

    .refinalp__faq__list__item{
        width: 100%;
    }

    .refinalp__faq__list{
        margin-top: 73px;
    }

    .refinalp__faq,.refinalp__bannerarea{
        padding: 64px 0;
    }

    .refinalp__function__standardbox{

    }

    .refinalp__function__standardbox__item{
        width: calc(50% - 10px);
    }

    .refinalp__function__inner{
        padding: 50px 0 90px 0;
    }

    .inner{
        width: 100%;
        padding: 0 15px;
    }

    .header__nav__item{
        display: none;
    }

    .header__nav__item--footer{
        display: block;
    }

    .header__nav__contact{
        font-size: 13px;
        width: min(max(190 / var(--base-w) * 100vw,140px), 190px);
        line-height: 40px;
        gap: 3px;
        margin-left: 10px;
    }

    .header__nav__contact::before{
        width: 19.71px;
        height: 15.17px;
    }

    .header__logo{
        width: 107px;
    }

    .header__inner{
        padding: 10px 15px;
    }

    .header__nav ul{
        gap: 10px;
    }

    .fanmu__reason__box__flex{
        flex-direction: column;
        gap: 8px;
    }

    .fanmu__reason__box__flex__item{
        width: 100%;
        min-height: 60px;
    }

    .fanmu__reason__box__after{
        text-align: left;
    }

    .fanmu__reason__intro{
        text-align: left;
    }

    .footer__logo{
        width: 110px;
    }

    .main{
        padding-top: 60px;
    }

    .refinalp__example__slider{
        width: 95%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 25px;
        margin-top: 45px;
    }

    .refinalp__example__slider__item__info{
        padding: 19px 15px;
    }

    .refinalp__example__slider__item{
        margin: 0;
    }

}

@media (max-width:490px) {

    .sponly_490{
        display: block;
    }

    .pconly_490{
        display: none;
    }

    .fclp__fv__info__fle--sp{
        display: flex;
        margin-top: 10px;
    }


    .refinalp__banner__link{
        font-size: 14px;
        line-height: 60px;
        padding: 0 35px;
    }

    .refinalp__function__standardbox__item__ttl{
        font-size: 16px;
    }

    .refinalp__function__standardbox__item__label__txt{
        line-height: 30px;
        font-size: 14px;
        width: 95px;
        margin-top: 10px;
    }

    .refinalp__function__standardbox__item__label__txt--rimit::after{
        font-size: 14px;
    }

    .refinalp__function__standardbox__item__txt{
        font-size: 14px;
    }

    .refinalp__function__standardbox__item--end::after{
        font-size: 12px;
    }

    .refinalp__function__standardbox__item{
        padding: 20px 0;
        width: calc(50% - 5px);
    }

    .refinalp__function__standardbox__wrap{
        gap: 10px;
    }

    .refinalp__function__standardbox{
        gap: 10px;
    }

    .refinalp__function__standardbox__wrap{
        margin-top: 30px;
    }

    .refinalp__function__round__item{
        width: 100%;
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .refinalp__function__round__top{
        width: 100px;
        height: fit-content;
    }

    .refinalp__function__round__bottom{
        width: calc(100% - 112px);
        height: fit-content;
        margin-top: 0;
    }

    .refinalp__function__round__bottom__ttl{
        text-align: left;
        font-size: 16px;
    }

    .refinalp__function__round__bottom__txt{
        font-size: 14px;
        margin-top: 8px;
    }

    .refinalp__function__round__top__num{
        font-size: 16px;
    }

    .refinalp__function__round__area{
        gap: 40px;
    }

    .refinalp__function__round__top__icon{
        margin-top: 3px;
    }

    .refinalp__function__standardttl{
        margin-top: 60px;
    }

    .refinalp__function__standardttl span{
        font-size: 18px;
        padding: 0 13px;
    }

    .refinalp__function__standardtxt{
        margin-top: 20px;
        font-size: 15px;
    }

    .refinalp__price__box__item__marker::after{
        bottom: 4px;
        height: 6px;
    }

    .refinalp__function__standardbox__item--end::after{
        display: none;
    }

    .refinalp__function__standardbox--second{
        position: relative;
    }

    .refinalp__function__standardbox--second::after{
        content: "※5店舗以上拠点がある場合はご相談ください。";
        position: absolute;
        left: 0;
        bottom: 0;
        transform: translateY(22px);
        font-size: 12px;
    }

    .refinalp__section__ttl__inner{
        font-size: 23px;
    }

    .refinalp__section__ttl__inner span{
        font-size: 29px;
    }

    .refinalp__section__ttl__inner::after{
        height: 25px;
        right: -15px;
    }

    .refinalp__section__ttl__inner::before{
        height: 25px;
        left: -15px;
    }

    .refinalp__function{
        padding: 15px;
    }

    .refinalp__function__inner{
        width: 100%;
    }

    .refinalp__fv__info__ttl{
        font-size: 23px;
    }

    .refinalp__fv__info__ttl span{
        font-size: 20px;
        margin-right: 7px;
        padding: 6px 13px;
    }

    .refinalp__fv__info__txt{
        font-size: 16px;
    }

    .refinalp__fv__info__label{
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px 30px;
        width: 100%;
        max-width: 350px;
        padding: 10px 20px 15px 20px;
    }

    .refinalp__fv__info__label__ja{
        vertical-align: baseline;
    }

    .refinalp__banner__link--bikkuri{
        font-size: 16px;
        line-height: 50px;
        width: 100%;
        max-width: 350px;
    }

    .refinalp__fv__img{
        width: 100%;
    }

    .refinalp__sv__flex__info__txt{
        margin-top: 16px;
        font-size: 14px;
    }

    .refinalp__recommend__ttl{
        font-size: 23px;
    }

    .refinalp__recommend__check{
        padding: 40px 15px;
        gap: 16px;
    }

    .refinalp__recommend__check__item::before{
        min-width: 22.39px;
        height: 19.45px;
        margin-top: 3px;
    }

    .refinalp__recommend__check__item{
        align-items: flex-start;
    }

    .refinalp__recommend__copy{
        font-size: 20px;
    }

    .refinalp__banner{
        padding: 64px 40px 24px 40px;
        gap: 12px;
        flex-direction: column;
    }

    .refinalp__banner__center__ttl{
        text-align: center;
        font-size: 14px;
    }

    .refinalp__banner__center__txt{
        text-align: center;
        font-size: 17px;
        margin-top: 5px;
    }

    .refinalp__banner::before{
        bottom: auto;
        top: -50px;
        left: 50%;
        transform: translateX(-50%);
        width: 175px;
        height: 113px;
    }

    .refinalp__strong__box__info__num{
        font-size: 32px;
    }

    .refinalp__strong__inner{
        margin-top: 40px;
    }

    .refinalp__strong__box__info__ttl{
        font-size: 18px;
        margin-top: 6px;
    }

    .refinalp__strong__box__info__txt{
        font-size: 14px;
    }

    .refinalp__price__ttl{
        font-size: 18px;
    }

    .refinalp__price__box{
        flex-direction: column;
        align-items: center;
    }

    .refinalp__price__box__item{
        width: 100%;
        max-width: 315px;
    }

    .refinalp__price__box{
        margin-top: 24px;
        gap: 16px;
    }

    .refinalp__price__border{
        background: url(../img/spprice_border.webp);
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        height: 13.94px;
    }

    .refinalp__price__months__box{
        padding: 5px 0 15px 0;
    }

    .refinalp__price__months__box__01{
        font-size: 19px;
    }

    .refinalp__price__months__box__02{
        font-size: 41px;
    }

    .refinalp__price__months__box__03{
        font-size: 15px;
    }

    .refinalp__price__months__box__03::after{
        font-size: 6px;
    }

    .refinalp__price__bannerarea{
        margin-top: 95px;
    }

    .refinalp__flow__list{
        flex-direction: column;
        gap: 60px;
    }

    .refinalp__flow__list__item{
        position: relative;
        display: flex;
        gap: 20px;
        width: 100%;
    }

    .refinalp__flow__list__item::after{
        content: "";
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: -35px;
        background: url(../img/spflow_arrow.webp);
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        width: 33.94px;
        height: 16.32px;
    }

    .refinalp__flow__list__item:last-child::after{
        display: none;
    }

    .refinalp__flow__list__item__img{
        width: 100px;
        height: auto;
        aspect-ratio: 1/1;
    }

    .refinalp__flow__list__item__info{
        width: calc(100% - 120px);
    }

    .refinalp__flow__list__item__img__num{
        font-size: 24px;
        top: -10px;
    }

    .refinalp__flow__list__item__ttl{
        margin: 0;
        text-align: left;
        font-size: 16px;
    }

    .refinalp__flow__list__item__txt{
        font-size: 14px;
    }

    .refinalp__flow__list__item__img::after{
        display: none;
    }

    .refinalp__faq__list__item__q__ttl,.refinalp__faq__list__item__q__txt{
        font-size: 16px;
    }

    .refinalp__faq__list{
        gap: 60px 20px;
    }

    .refinalp__faq__list__item__q{
        gap: 17px;
        padding: 14px 0 25px 15px;
        top: -30px;
        min-width: 280px;
    }

    .refinalp__faq__list__item__a{
        font-size: 14px;
        padding: 58px 15px 40px 15px;
    }

    .footer__inner{
        flex-direction: column;
        align-items: center;
        gap: 24px;
        padding: 40px 0;
    }

    .footer__copy{
        font-size: 10px;
        line-height: 25px;
    }

    .header__nav__contact--footer.sponly_490{
        display: flex;
    }

    .header__nav__contact--footer{
        margin-left: 0;
    }

    .header__nav--footer ul{
        justify-content: center;
        gap: 24px;
    }

    .header__nav__contact__liitem{
        display: none;
    }

    .refinalp__recommend__ttl span{
        padding-bottom: 15px;
    }

    .refinalp__recommend__ttl span::after{
        height: 8px;
    }

    .upbutton{
        right: 15px;
        bottom: 15px;
    }

    .fclp__fv__info__flex{
        flex-wrap: wrap;
    }

    .fclp__fv__info__flex{
        justify-content: center;
    }

    .fclp__fv__info__flex__item{
        width: calc(50% - 5px);
    }

    .refinalp__example__slider__item{
        flex-direction: column;
        gap: 0;
    }

    .refinalp__example__slider__item__image,.refinalp__example__slider__item__info{
        width: 100%;
        height: auto;
        aspect-ratio: unset;
    }

    .refinalp__example__slider__item__image img{
        width: 100%;
        height: auto;
        object-fit: unset;
    }

    .refinalp__example__slider__item__info__ttl{
        font-size: 18px;
    }

    .refinalp__example__slider__item__info__txt{
        font-size: 14px;
    }
}