.text-green_01{
    color: #249302;
}

.text-green_02{
    color: #006718;
}

.text-yellow{
    color: #FFFDC9;
}

.lot-of-troubles{
    padding: 7.92% 15.07% 9.72%;
}

.lot-of-troubles_inner{
    position: relative;
    width: 100%;
    max-width: 1006px;
    margin: 0 auto;
    padding: 3.563rem 2.5rem 2.188rem;
    border: 2px solid #253851;
    border-radius: 0.625rem;
}

.lot-of-troubles-title{
    position: relative;
    width: 427px;
    margin-top: -5rem;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.875rem;
    font-weight: 800;
    text-align: right;
    background-color: #fff;
}
.lot-of-troubles-title::before{
    content: "";
    position: absolute;
    top: -0.4em;
    left: 0em;
    display: block;
    background-image: url(../img/lot-of-troubles-title_icon@2x.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.967em;
    height: 1.2em;
    max-width: 29px;
}

.trouble-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.625rem 1.875rem;
    width: 100%;
    margin-top: 2.563rem;
}

.trouble-list li{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 400px;
    font-size: 0.938rem;
    font-weight: 600;
    background-color: #F2F2F2;
    border-radius: 0.313rem;
    padding: 1.133em 0;
    padding-left: 3em;
}
.trouble-list li::before{
    content: "";
    position: absolute;
    display: block;
    background-image: url(../img/check-icon_02@2x.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 2em;
    height: 2em;
    top: 50%;
    transform: translateY(-50%);
    left: 3%;
}

.lot-of-troubles-lead{
    font-size: 1.125rem;
    font-weight: 600;
    margin-top: 2.188rem;
    margin-left: 6em;
}
.green-highlight_01{
    margin: 0 0.278em;
    background-color: #006718;
    color: #fff;
    padding: 0.278em;
}

.lot-of-troubles_inner_image{
    position: absolute;
    width: 224.88px;
    top: 50%;
    right: 8%;
}

@media (max-width:899px){
    .content-wrap{
        padding: 0 5.33%;
    }

    .lot-of-troubles{
        margin: 9.33% 0 13.33%;
    }
    .lot-of-troubles-title{
        width: 260px;
        font-size: 1.25rem;
        text-align: center;
        margin-top: -1.1rem;
    }
    .lot-of-troubles-title::before{
        top: -0.6em;
        left: -1em;
    }
    .lot-of-troubles_inner{
        padding: 0 0.625rem 7.188rem;
    }
    .trouble-list{
        margin-top: 1.3rem;
    }
    .trouble-list li{
        font-size: 0.875rem;
        padding: 0.714em 1.071em 0.714em 3.214em;
    }
    .lot-of-troubles_inner_image{
        width: 128.88px;
        top: 63%;
        right: 3%;
    }
    .lot-of-troubles-lead{
        position: absolute;
        font-size: 0.938rem;
        margin-left: 0;
        margin-top: 0;
        bottom: 3rem;
        z-index: 1;
    }
    .lot-of-troubles-lead .text-wrap{
        display: block;
    }
}



/*原因は「見えない原価」にあった*/
.cause-section{
    padding: 5.21% 0;
    background-color: #F2FAF2;
}

.cause-title{
    font-size: 1.875rem;
    font-weight: 800;
    color: #253851;
    text-align: center;
    margin-bottom: 4.17%;
}
.dots {
  background-image: radial-gradient(circle at center, #253851 20%, transparent 27%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1em 0.3em; /* 点の間隔とサイズ調整 */
  padding-top: .4em; /* 縦方向の位置調整 */
}
.cause-lead-text{
    width: 100%;
    max-width: 1006px;
    font-size: 1.125rem;
    font-weight: 600;
    color: #374453;
    line-height: 1.94;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
}

.cause-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.563rem 2.25rem;
    width: 100%;
    max-width: 1006px;
    margin: 2.78% auto;
}

.cause-list li{
    display: flex;
    align-items: center;
    gap: 0 0.833em;
    width: 100%;
    max-width: 484px;
    background-color: #fff;
    padding: 1.111em;
}

.cause-list_image{
    width: 7.22vw;
    max-width: 104px;
}

.cause-list-text{
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.94;
    text-align: left;
}
@media(max-width:1439px){

    .cause-list{
        max-width: 959px;
    }
    .cause-list li{
        max-width: 296px;
    }
    .cause-list-text{
        font-size: 0.8rem;
    }
}

@media(max-width:899px){
    .cause-section{
        padding: 10.67% 5.33%;
    }

    .cause-title{
        font-size: 1.25rem;
    }

    .cause-lead-text{
        font-size: 0.875rem;
        font-weight: 500;
        margin-bottom: 2.188rem;
    }
    .highlight-text{
        display: block;
        margin: 1.563rem 0 2.188rem;
    }

    .cause-list{
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 0.625rem 0;
        margin: 1.563rem 0;
    }

    .cause-list li{
        max-width: 335px;
        padding: 0.714em;
        gap: 0 0.571em;
    }

    .cause-list_image{
        width: 100%;
        max-width: 47px;
    }

    .cause-list-text{
        font-size: 0.875rem;
        line-height: 1.28;
    }
}


.solution{
    position: relative;
    padding: 5.21% 0;
    background-color: #249302;
}

.solution-title{
    width: 100%;
    max-width: 583px;
    margin: 0 auto;
    margin-bottom: 35.688rem;
}

.solution-image_01{
    position: absolute;
    width: 100%;
    max-width: 1210px;
    top: 10rem;
    left: 50%;
    transform: translateX(-50%);
}

.solution-text{
    width:  100%;
    max-width: 1006px;
    margin: 0 auto;
}
.solution-text p{
    font-size: 1.125rem;
    font-weight: 600;
    color: #fff;
    line-height: 1.94;
    
}
.solution-text p:first-child{
    margin-bottom: 2.5rem;
}

.solution-features-list{
    width: 84%;
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.488rem;
    column-gap: 2.5rem;
    justify-content: center;
    margin-top: 4.938rem;
    margin-bottom: 3.838rem;
    margin-left: rem;
}

.solution-features-list li{
    position: relative;
    width: 381px;
    border-radius: 6.25rem;
    background-color: #fff;
    padding: 0.3em 0.422em;
    font-size: 1.125rem;
    font-weight: 600;
    color: #249302;
    text-align: center;
}
.solution-features-list li::before{
    content: "";
    position: absolute;
    background-image: url(../img/light-bulb-icon@2x.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 5.144rem;
    height: 5.103rem;
    top: 24%;
    transform: translateY(-50%);
    left: -11%;
}

.solution-lead{
    width: 100%;
    max-width: 1006px;
    margin: 0 auto;
    font-size: 1.563rem;
    font-weight: 600;
    color: #fff;
}
.solution-lead .big-font{
    font-size: 2.375rem;
}

.solution-image_02{
    position: absolute;
    width: 100%;
    max-width: 178px;
    bottom: 9%;
    right: 13%;
}

@media (max-width: 889px){
    .solution{
        padding: 10.67% 5.33% 35.73%;
    }

    .solution-title{
        margin-bottom: 13.5rem;
    }

    .solution-image_01{
        top: 10.5rem;
    }

    .solution-text p{
        font-size: 0.875rem;
        font-weight: 500;
        line-height: 2.142;
    }

    .solution-text p:first-child{
        margin-bottom: 2.188rem;
    }

    .solution-features-list{
        width: 100%;
        row-gap: 1.888rem;
        margin-top: 2.938rem;
        margin-bottom: 1.563rem;
    }

    .solution-features-list li{
        font-size: 0.938rem;
    }
    .solution-features-list li::before{
        width: 4.144rem;
        height: 4.103rem;
        top: 31%;
        transform: translateY(-50%);
        left: -9%;
    }

    .solution-lead{
        font-size: 1rem;
        font-weight: 700;
        text-align: center;
    }
    .solution-lead .text-wrap{
        display: block;
    }
    .solution-lead .big-font{
        font-size: 1.25rem;
    }

    .solution-image_02{
        max-width: 78px;
        left: 50%;
        transform: translateX(-50%);
        bottom: -4%;
    }
}



.three-step{
    padding: 6.67% 0 6.94%;
    background-color: #fff;
    text-align: center;
}

.three-step-title{
    position: relative;
    display: inline-block;
    font-size: 1.875rem;
    font-weight: 800;
    color: #249302;
    margin: 0 auto;
}
.three-step-title::before,
.three-step-title::after{
    content: "";
    position: absolute;
    background-color: #249302;
    width: 0.133em;
    height: 1.7em;
    border-radius: 5em;
}
.three-step-title::before{
    transform: rotate(-35deg);
    top:0%;
    left: -5%;
}
.three-step-title::after{
    transform: rotate(35deg);
    top: 0%;
    right: -3%;
}

.three-step_inner{
    width: 1006px;
    background-color: rgba(36, 147, 2,0.2);
    margin: 0 auto;
    margin-top: 2.013rem;
    padding: 2.5rem 4.938rem;
    text-align: center;
}

.three-step_inner-title{
    display: inline-block;
    font-size: 1.25rem;
    font-weight: 600;
    color: #249302;
    line-height: 1.5;
    padding: 0.2em 0;
    border-top: 2px solid #249302;
    border-bottom: 2px solid #249302;
}

.step-procedure{
    display: flex;
    gap: 3.438rem;
    margin-top: 2.594rem;
}

.step-procedure li{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between; 
    width: 246px;
    height: 255px;
    font-size: 1rem;
    font-weight: 500;
    text-align: center;
    background-color: #fff;
    border-radius: 10px;
    padding: 1.463rem 0;
    line-height: 1.6875;
}

.step-procedure li img{
    margin-bottom: 0.681rem;
    width: 100%;
    max-width: 200px;
    height: 118.7px;
    object-fit: contain;
}

.step-procedure li h4{
    display: inline-block;
    color: #fff;
    line-height: 1.0625;
    border-radius: 100px;
    background-color: #249302;
    padding: 0.12em 0.813em;
    margin-bottom: 0.981em;
}

.step-procedure li p{
    /* pタグの上下のデフォルトマージンをリセットして、flexの配置を正確にする */
    margin: 0;
}

.step-procedure li p .text-wrap{
    display: block;
}

/* 最後のli以外の、すべてのliの後に矢印を追加する */
.step-procedure li:not(:last-child)::after {
  content: ''; 
  display: block; 
  background-image: url(../img/arrow@2x.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  right: -40px; /* liと矢印の間の距離。画像のサイズに合わせて調整 */
  transform: translateY(-50%);
}

@media(max-width:899px){
    .three-step{
        padding: 22.4% 5.33% 13.33%;
    }

    .three-step-title{
        font-size: 1.25rem;
    }
    .three-step-title .text-wrap{
        display: block;
    }
    .three-step-title::before,
    .three-step-title::after{
        height: 2.8em;
    }
    .three-step-title::before{
        transform: rotate(-35deg);
        top: 14%;
        left: -18%;
    }
    .three-step-title::after{
    transform: rotate(35deg);
    top: 14%;
    right: -15%;
    }

    .three-step_inner{
        width: 335px;
        margin-top: 1.606rem;
        padding: 1.281rem 1.563rem;
    }

    .three-step_inner-title{
        display: block;
        font-size: 0.938rem;
        line-height: 2;
        padding: 0;
        border-top: 1px solid #249302;
        border-bottom: 1px solid #249302;
    }

    .step-procedure{
        margin-top: 1.281rem;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
    }

    .step-procedure li{
        padding: 0.963rem 0.938rem;
        font-size: 0.875rem;
        width: 285px;
        height: 208px;
    }

    .step-procedure li img{
        max-width: 150px;
        height: 96.7px;
    }

    .step-procedure li h4{
        margin-bottom: 0.6em;
    }
    
    .step-procedure li:not(:last-child)::after{
        top: auto;
        right: auto;
        left: 50%;
        bottom: -35px; /* liの下端からの距離。この値で隙間を調整 */
        /* 4. 中央揃えの方法を変更 */
        /* Y軸方向のtransformをリセットし、X軸方向で中央揃え */
        transform: translateX(-50%) rotate(90deg);
    }
}


.insecurity{
    padding: 5.21% ;
    background-color: #249302;
}

.insecurity-title{
    font-size: 1.875rem;
    font-weight: 800;
    color: #fff;
    text-align: center;
    margin-bottom: 4.375rem;
    
}

.insecurity-lead{
    display: block;
    font-size: 1.125rem;
    font-weight: 600;
    color: #fff;
    text-align: center;
    margin-bottom: 3.438rem;
}

.fukidashi-text{
    max-width: 593px;
    margin: 0 auto;
    margin-bottom: 1.938rem;
}

.insecurity_inner{
    position: relative;
    max-width: 1006px;
    padding: 1.875rem;
    margin: 0 auto;
    background-color: #61CB3E;
    border-radius: 10px;
}

.insecurity-image{
    position: absolute;
    max-width: 375px;
    bottom: 0;
    left: 1%;
}

.insecurity_inner-text{
    margin-left: 35%;
}

.insecurity_inner-text h4{
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 600;
    color: #249302;
    background-color: #fff;
    border-radius: 5px;
    padding: 0.313em 0.333em;
    line-height: 1;
}

.insecurity_inner-text p{
    font-size: 1.125rem;
    font-weight: 600;
    color: #fff;
    line-height: 1.94;
    margin: 1.269rem 0 1.438rem;
}

.insecurity_inner-text_list li{
    position: relative;
    font-size: 1.125rem;
    font-weight: 600;
    color: #fff;
    line-height: 1.94;
    margin-left: 2.5rem;
}
.insecurity_inner-text_list li::before{
    content: "";
    position: absolute;
    display: block;
    background-image: url(../img/check-icon_04@2x.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 30px;
    height: 30px;
    top: 50%;
    transform: translateY(-50%);
    left: -6.7%;
}



@media(max-width:899px){
    .insecurity{
        padding: 10.67% 5.33%;
    }

    .insecurity-title{
        font-size: 1.25rem;
        margin-bottom: 1.875rem;
    }
    .insecurity-title .text-wrap{
        display: block;
    }

    .insecurity-lead{
        font-size: 0.875rem;
        font-weight: 500;
        text-align: left;
        line-height: 2.14;
        margin-bottom: 1.875rem;
    }

    .insecurity_inner{
        padding: 1.563rem 1.563rem 11.688rem;
    }

    .insecurity_inner-text{
        margin-left: 0;
    }

    .insecurity_inner-text h4{
        display: block;
        font-size: 1.25rem;
        text-align: center;
    }

    .insecurity_inner-text p{
        font-size: 0.875rem;
        font-weight: 500;
        line-height: 2.14;
    }

    .insecurity_inner-text_list li{
        font-size: 0.875rem;
        margin-left: 1.3rem;
        white-space: nowrap;
    }
    .insecurity_inner-text_list li::before{
        width: 20px;
        height: 20px;
        left: -8.7%;
    }

    .insecurity-image{
        max-width: 187px;
        left: 50%;
        transform: translateX(-50%);
    }
}



.dependable-points{
    position: relative;
    padding: 7.64% 0;
    background-color: #F2FAF2;
}

.dependable-points-title{
    max-width: 608px;
    margin: 0 auto;
}

.dependable-points-list{
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
    margin-left: 50%;
    line-height: 1;
}

.dependable-points-list li{
    margin-bottom: 2.5rem;
}
.dependable-points-list li:last-child{
    margin-bottom: 0;
}

.dependable-points-list li h5{
    display: inline-block;
    font-size: 1.25rem;
    font-weight: 800;
    color: #fff;
    padding: 0.45em 0.5em;
    background-color: #159E02;
    border-radius: 4px;
    margin-bottom: 1.25rem;
}

.dependable-points-list li p{
    font-size: 1.125rem;
    font-weight: 600;
    color: #374453;
}

.dependable-points-image_01{
    position: absolute;
    max-width: 510px;
    top: 29%;
    left: 11%;
}

.dependable-points-lead{
    margin: 0% auto;
    margin-bottom: 4.375rem;
    text-align: center;
    line-height: 1;
}

.dependable-points-lead p{
    font-size: 1.563rem;
    font-weight: 600;
    color: #159E02;
}
.dependable-points-lead p:first-child{
    margin-bottom: 1.56em;
}

.dependable-points-image_02{
  object-fit: contain;

}

/*画像スライダー*/
.dependable-points-slider {
  /* 親コンテナの最大幅と高さを指定 */
  width: 100%;
  max-width: 1440px; /* PC版の最大幅 */
  height: 150px;      /* 高さは共通 */
  margin: 3rem auto 0;
  overflow: hidden;
  position: relative;
}


/* 動く部分のトラック */
.dependable-points-slider__track {
  display: flex;
  --logo-width: 241px; 
  --logo-count: 10;     /* ★ロゴの数を10に変更 */
  
  width: calc(var(--logo-width) * var(--logo-count) * 2);
  
  animation: scroll 90s linear infinite; /* ←速度を少し調整（90秒で一周） */
}

/* 個々のロゴアイテム */
.dependable-points-slider__item {
  width: var(--logo-width);
  height: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 0rem;
}

.dependable-points-slider__item img {
  max-width: 100%;
  max-height: 150px; /* ロゴの最大高さを指定 */
  object-fit: contain;
}

/* アニメーションの定義 */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * var(--logo-count) * -1));
  }
}


/* --- スマホ版のスタイル (max-width: 899px) --- */
@media (max-width: 899px) {
    .dependable-points{
        padding: 10.67% 0;
    }

    .dependable-points-title{
        max-width: 298px;
    }

    .dependable-points-list{
        max-width: 315px;
        margin-top: 1.875rem;
        margin-bottom: 18.625rem;
        margin-left: auto;
        margin-right: auto;
    }

    .dependable-points-list li{
        margin-bottom: 1.25rem;
    }

    .dependable-points-list li h5{
        font-size: 0.875rem;
        padding: 0.357em;
        margin-bottom: 0.625rem;
    }

    .dependable-points-list li p{
        font-size: 0.875rem;
        line-height: 1.357;
    }

    .dependable-points-image_01{
        max-width: 360px;
        top: 45%;
        left: 50%;
        transform: translateX(-50%);
    }

    .dependable-points-lead{
        margin-bottom: 2.188rem;
    }

    .dependable-points-lead p{
        font-size: 0.875rem;
    }
    .dependable-points-lead p:first-child{
        margin-bottom: 1.071em;
    }
    .dependable-points-lead p:last-child{
        line-height: 1.42;
    }

    .dependable-points-lead p .text-wrap{
        display: block;
    }
    .dependable-points-lead p .comma-remove{
        display: none;
    }


  .dependable-points-slider {
    max-width: 375px;
    margin-top: 0;
  }

  .dependable-points-slider__track {
    /* スマホ用にCSS変数の値を上書き */
    --logo-width: 180px;
    animation-duration: 90s; /* スマホでの速度を調整 */
  }
}



.qa-section{
    padding: 6.94% 0 7.64%;
}

.qa-section-title{
    font-size: 3.875rem;
    font-weight: bold;
    color: #178352;
    text-align: center;
    margin: 0 auto;
    line-height: 1;
}

.qa-section-title-sub{
    display: block;
    font-size: 1.375rem;
    font-weight: bold;
    color: #374453;
    text-align: center;
    margin: 0 auto;
}

.qa-list{
    width: 1106px;
    margin-top: 4.406rem;
    margin-bottom: 5.188rem;
    margin-left: auto;
    margin-right: auto;
}

.qa-list li{
     padding: 2.906rem 2.4rem 2.906rem 7.156rem;
     border-top: 0.031rem solid #707070;
}
.qa-list li:last-child{
    padding-bottom: 0;
}

.question{
    position: relative;
    font-size: 1.438rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0.435em;
}

.answer{
    position: relative;
    justify-content: center;
    align-items: center;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.94;
    margin-left: 4rem;
}

.question,
.answer{
    display: flex;
    align-items: baseline;
    gap: 1.7em;
}
.question::before{
    position: relative;
    top: 0.2em;
    content: "Q";
    font-size: 2.188rem;
    font-weight: bold;
    color: #178352;
}
.answer::before{
    position: relative;
    top: 0.2em;
    content: "A";
    font-size: 2.188rem;
    font-weight: bold;
}

.qa-lead{
    display: block;
    font-size: 1.438rem;
    font-weight: 700;
    margin: 0 auto;
    text-align: center;
}

@media(max-width:899px){
    .qa-section{
        padding: 12.8% 5.33% 13.47%;
    }

    .qa-section-title{
        font-size: 1.25rem;
        color: #24A410;
    }

    .qa-section-title-sub{
        font-size: 1.25rem;
    }

    .qa-list{
        width: 100%;
        margin-top: 1.969rem;
    }

    .qa-list li{
        padding:1.781rem 0 1.281rem;
    }

    .question{
        font-size: 0.938rem;
        line-height: 1.33;
        margin-bottom: 0.438rem;
    }
    .answer{
        font-size: 0.875rem;
        line-height: 1.5;
        margin-left: 0.5rem;
    }
    .question,
    .answer{
        gap: 1.2em;
    }

    .question::before{
        top: 0.1em;
        font-size: 1.25rem;
        color: #24A410;
    }
    .answer::before{
        font-size: 1.25rem;
    }

    .qa-lead{
        font-size: 0.875rem;
        line-height: 1.42;
    }
    .qa-lead .text-wrap{
        display: block;
    }
    .qa-lead .comma-remove{
        display: none;
    }

}



.line-cta{
    position: relative;
    padding: 4.375rem 0 6.875rem;
    background-color: #249302;
}

.line-cat-lead{
    width: 100%;
    max-width: 415px;
    font-size: 1.875rem;
    font-weight: 800;
    color: #fff;
    line-height: 1.5;
    margin-left: 13.563rem;
    margin-bottom: 3.125rem;
}

.line-cat-text{
    font-size: 1.125rem;
    font-weight: 600;
    color: #fff;
    line-height: 1.94;
    margin-left: 13.563rem;
    margin-bottom: 5rem;
}
.line-cat-text p:first-child{
    margin-bottom: 2.222em;
}
.line-cat-text .text-wrap{
    display: block;
}

.line-cat-image{
    position: absolute;
    max-width: 540px;
    top: 19%;
    right:10.438rem;
}

.line-cat_btn{
    position: relative;
    display: block;
    width: 623px;
    font-size: 1.563rem;
    font-weight: 800;
    color: #374453;
    line-height: 1;
    text-align: center;
    background-color: #E8E009;
    padding: 1.28em 0;
    border: 4px solid #249302;
    border-radius: 100px;
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
    margin: 0% auto;
}

.line-cat_btn::before,
.line-cat_btn::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 3.5rem;
  width: 16px;
  height: 4px;
  border-radius: 9999px;
  background-color: #374453;
  transform-origin: calc(100% - 2px) 50%;
}

.line-cat_btn::before {
  transform: rotate(37.5deg);
}

.line-cat_btn::after {
  transform: rotate(-37.5deg);
}

@media(max-width:899px){
    .line-cta{
        padding: 10.67% 5.33% 13.33%;
    }

    .line-cat-lead{
        font-size: 1.25rem;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 1.875rem;
        line-height: 1.55;
    }

    .line-cat-text{
        font-size: 0.875rem;
        margin: 0 auto;
        margin-bottom: 18.625rem;
    }

    .line-cat-image{
        max-width: 365px;
        top: 23rem;
        left: 50%;
        transform: translateX(-50%);
    }    

    .line-cat_btn{
        width: 100%;
        font-size: 1.063rem;
        padding: 1.176em 0;
    }

    .line-cat_btn::before,
    .line-cat_btn::after {
        top: calc(50% - 1.5px);
        right: 2rem;
        width: 11px;
        height: 3px;
        transform-origin: calc(100% - 1px) 50%;
    }
    .line-cat_btn::before {
    transform: rotate(45deg);
}
    .line-cat_btn::after {
    transform: rotate(-45deg);
    }
}