html {
  scroll-behavior: smooth;
}
* {
    -moz-box-sizing: initial;
    box-sizing: initial;
    font-family: "ヒラギノ角ゴ Pro W6";
    font-weight: 600;
}

body{
    max-width: 1000px;
    font-size: 35px;
}
.rapper{
    min-width: 1000px;
}
@media screen and (max-width:750px){
    .header{
        width: 750px;
        height: 80px;
        display: flex;
    }
    .header-logo{
        height: 50px;
        width: auto;
        padding: 15px 40px;
    }
    body{
        max-width: 750px;
        font-size: 35px;
    }
    .rapper{
        min-width: 750px;
    }
}

/*section2*/
.section2{
    padding: 0 3.3rem 4.8rem;
    background-color: #dadada;
}
.section2__head::before{
    position: absolute;
    content: "";
    border-right: 93px solid transparent;
    border-top: 83px solid #f0f0f0;
    border-left: 93px solid transparent;
    z-index: -10;
    top:0;
}
.section2__head{
    position: relative;
    color:#333;
    font-size: 4.1rem;
    font-weight: 800;
    text-shadow:0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
    0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
    0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
    0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0;
    padding-top: 0.7rem;
    z-index: 10;
}
.section2__box{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 5.155555555555rem;
}
.section2__text{
    position: relative;
    top: 4.3rem;
    width: 72.8%;
    background-color: #fff;
    font-size: 1.9rem;
    text-align: left;
    line-height: 1.9;
    height: 14.3rem;
    align-items: center;
    display: flex;
    padding: 0 3rem;
    letter-spacing: -0.09em;
    -webkit-clip-path: polygon(7% 0, 100% 0, 93% 100%, 0 100%);
    clip-path: polygon(4% 0, 100% 0, 93% 100%, 0 100%);
    font-feature-settings: "palt" 1;
}
.section2__img{
    position: absolute;
    right: 0;
    top: 1.5rem;
    width: 37%;
}

@media screen and (max-width:750px){
    .section2{
        padding:0 40px;
        background:none;
        height: initial;
        background-color: #dadada;
    }
    .section2__head::before{
        position: absolute;
        content: "";
        border-right: 70px solid transparent;
        border-top: 65px solid #f0f0f0;
        border-left: 70px solid transparent;
        z-index: -10;
    }
    .section2__head{
        position: relative;
        color:#333;
        font-size: 55px;
        font-weight: 800;
        text-shadow:0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
        0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
        0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,
        0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0,0 0 5px #f0f0f0;
        padding-bottom:20px;
        z-index: 10;
    }
    .section2__box{
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-bottom: 62px;
    }
    .section2__text{
        position: relative;
        top: 30px;
        width: 78%;
        background-color: #fff;
        font-size: 24px;
        text-align: left;
        line-height: 46px;
        height: 170px;
        align-items: center;
        display: flex;
        padding: 0 47px;
        letter-spacing: -0.09em;
        -webkit-clip-path: polygon(7% 0, 100% 0, 93% 100%, 0 100%);
        clip-path: polygon(4% 0, 100% 0, 93% 100%, 0 100%);
        font-feature-settings: "palt" 1;
    }
    .section2__img{
        position: absolute;
        right: 0;
        top: 0;
    }
}

/*実績*/
.section__achievement{
    margin: 0 auto;
    margin-bottom: 5rem;
    padding: 4.7rem 3.5rem;
    background-color: #eefff5;
}

.section__achievement h2{
    font-size:44px;
    font-weight: 700;
    color: #333;
    padding-bottom:60px;
}
.achievement__box{
    background-color: #fff;
    padding: 3.22rem 3.5rem 1.9rem;
    padding-right: 1.875rem;
    margin-bottom: 5rem;
    box-shadow: 0px 0px 30px rgb(0 0 0 / 15%);
}
.achievement__box h3{
    background-color: #399d6a;
    font-size: 2.5rem;
    font-weight: 700;
    color: #fff;
    padding: 0.8rem;
    width: 40.5rem;
    margin: 0 auto;
    border-radius: 2rem;
}
.achievement__point{
    display: flex;
    justify-content: space-between;
    padding: 2.56rem 0 1.2rem;
}

.achievement__comment,
.achievement__comment-1,
.achievement__comment-2,
.achievement__comment-3{
    position: relative;
    display: grid;
    place-items: center;
    border: 1px solid #399d6a;
    border-radius: 0.6rem;
    line-height: 3.3rem;
    padding: 2rem 2.5rem 2.6rem;
    height: 17rem;
    font-size: 2.2rem;
    font-weight: 700;
    text-align: left;
    width: 32.2rem;
    box-sizing: border-box;
    letter-spacing: -0.03em;
    color: #333;
}
.achievement__comment-1{
    height: 20rem;
}
.achievement__comment-2{
    padding: 2rem 0 2.6rem;
}
.achievement__comment-3{
    padding: 0.5rem 0.5rem 0.5rem;
}
.achievement__comment::before,
.achievement__comment-1::before,
.achievement__comment-2::before,
.achievement__comment-3::before{
    position: absolute;
    right: -19px;
    top:46%;
    content:"";
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 18px solid #399d6a;
}
.achievement__comment::after,
.achievement__comment-1::after,
.achievement__comment-2::after,
.achievement__comment-3::after{
    position: absolute;
    right: -17px;
    top:46%;
    content:"";
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 18px solid #fff;
}
.achievement__consultation-list{
    padding: 1.4rem 0;
    font-size: 2rem;
    text-align: left;
    line-height: 1.63;
    padding-left: 0.6rem;
}

.achievement__img{
    width: 26.7% !important;
    padding-right: 1.5rem;
}

.achievement__consultation-list li:before {
    position: relative;
    top: -0.7rem;
    left: -0.56rem;
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    display: inline-block;
    background-color: #333;
    border-radius: 50%;
}
.achievement__consultation h4,.achievement__price h4,.achievement__voice h4{
    background-color: #333;
    font-size: 2.2rem;
    font-weight: 700;
    color: #fff;
    padding: 0.8rem 0.56rem 0.56rem;
    width: 17.5rem;
    text-align: center;
    border-radius: 2rem;
}
.achievement__price p{
    font-size: 3.7rem;
    font-weight: 600;
    color: #333;
    text-align: left;
    padding: 2rem 0;
}

.achievement__voice h4{
    width: 16.2rem;
}
.achievement__voice p{
    padding: 1.3rem 0;
    font-size: 2.16rem;
    text-align: left;
    line-height: 1.6;
    letter-spacing: -0.03em;
}

@media screen and (max-width:750px){
    .section__achievement{
        padding:60px 40px;
        background-color: #eefff5;
     }
     .section__achievement h2{
         font-size:44px;
         font-weight: 700;
         color: #333;
         padding-bottom:60px;
     }
     .achievement__box{
         background-color: #fff;
         padding:20px 50px 35px;
         padding-right: 30px;
     }
     .achievement__box h3{
         background-color: #399d6a;
         font-size: 30px;
         font-weight: 700;
         color: #fff;
         padding:10px;
         width: 522px;
         margin: 0 auto;
         border-radius: 32px;
     }
     .achievement__point{
         display: flex;
         justify-content: space-between;
         padding: 30px 0;
     }
     .achievement__comment,
     .achievement__comment-1,
     .achievement__comment-2,
     .achievement__comment-3{
         position: relative;
         display:grid;
         place-items: center;
         border: 1px solid #399d6a;
         border-radius: 5px;
         line-height: 40px;
         padding: 30px;
         height: initial;
         font-size: 26px;
         font-weight: 700;
         text-align: left;
         width: 400px;
         box-sizing: border-box;
         letter-spacing: -0.03em;
         color: #333;
     }
     .achievement__comment-1{
        height: 16rem;
    }
    .achievement__comment-2{
        padding: 2rem 0 2.6rem;
    }
    .achievement__comment-3{
        padding: 0.5rem;
    }
     .achievement__comment::before,
     .achievement__comment-1::before,
     .achievement__comment-2::before,
     .achievement__comment-3::before{
         position: absolute;
         right: -19px;
         top:40%;
         content:"";
         border-top: 14px solid transparent;
         border-bottom: 14px solid transparent;
         border-left: 18px solid #399d6a;
     }
     .achievement__comment::after,
     .achievement__comment-1::after,
     .achievement__comment-2::after,
     .achievement__comment-3::after{
         position: absolute;
         right: -17px;
         top:40%;
         content:"";
         border-top: 14px solid transparent;
         border-bottom: 14px solid transparent;
         border-left: 18px solid #fff;
     }
     .achievement__consultation-list{
         padding:25px 0;
         font-size: 25px;
         text-align: left;
         line-height: 40px;
         padding-left: 10px;
     }
     .achievement__consultation-list li:before {
         position: relative;
         top: -6px;
         left:-8px;
         content:  "";     /* 空の要素作成 */
         width:  6px;               /* 幅指定 */
         height:  6px;              /* 高さ指定 */
         display:  inline-block;     /* インラインブロックにする */
         background-color: #333;  /* 背景色指定 */
         border-radius:  50%;        /* 要素を丸くする */
     }
     .achievement__consultation h4,.achievement__price h4,.achievement__voice h4{
         background-color: #333;
         font-size: 27px;
         font-weight: 700;
         color: #fff;
         padding:7px;
         width: 223px;
         text-align: center;
         border-radius: 32px;
     }
     .achievement__price p{
         font-size:46px;
         font-weight: 600;
         color: #333;
         text-align: left;
         padding:20px 0;
     }

     .achievement__voice h4{
         width: 14.2rem;
     }
     .achievement__voice p{
         padding:25px 0;
         font-size: 25px;
         text-align: left;
         line-height: 40px;
         padding-left: 10px;
         letter-spacing: -0.08em;
     }
}
.about{
    background-color: #eefff5;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    box-sizing: border-box;
}
.about__section{
    padding-top:40px;
    max-width: 930px;
    margin: 0 auto;
}
.about__img{
    width: 100%;
    box-sizing: border-box;
    padding: 1.4rem 0;
}
.about__img-img{
    width: 89%;
    border-radius: 0.6rem;
}
.about__block{
    color:#333;
    font-size: 30px;
    text-align: center;
    font-weight: 700;
}
.about__title-logo{
    padding: 20px 0 30px;
    width: 45%;
}
.about__title-text{
    line-height: 1.5;
    font-weight: 700;
}
.about__title-msg{
    padding: 40px 40px;
    font-size:24px;
    line-height: 1.75;
    text-align: center;
    letter-spacing: -0.04em;
}
.form{
    padding: 110px 40px 55px;
    background-color: #eefff5;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    box-sizing: border-box;
}
.form__area{
    position: relative;
    top:-2px;
    padding: 50px 40px;
    border-radius: 15px;
    background-color: #fff;
    border: 2px solid #399d6a;
    z-index: 10;
    max-width: 930px;
    margin: 0 auto;
    box-sizing: border-box;
}
.from__head{
    position: absolute;
    top: -60px;
    background-color: #399d6a;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
    color: #fff;
    padding:15px 0;
    width: 87%;
    left:6.5%;
    border-radius: 70px;
}
.from__head__point{
    padding: 55px 0 20px;
    text-align: left;
}
.from__head__point span{
    background-color: #333;
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    padding: 3px 25px 0;
    width: 110px;
    text-align: center;
    border-radius: 32px;
}
.from__head__point p{
    display: inline;
    color:#333;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -0.04em;
}
.from__head__text{
    font-size: 25px;
    line-height: 1.7;
    color: #333;
    text-align: left;
    letter-spacing: -0.07em;
}
.from__head__text span{
    color: #e98100;
}
.wrapper{
    width: initial;
    margin: initial;
    background: #fff;
    border: initial;
}
.container {
    width: 100%;
    max-width: initial;
    margin: initial;
    padding-left: 0px;
    padding-right: 0px;
}
.main {
    width: initial;
}

.pc-img{
    display: block;
    width: 100%;
}
.sp-img{
    display: none;
}

@media screen and (max-width:750px) {
    .sp-img{
        display: block;
    }
    .pc-img{
        display: none;
    }
}
.cta__scroll-bottom{
    position: fixed;
    bottom: 0;
    left: 0;
    margin: 0;
    width: 100%;
    background: rgba(255,255,255,0.8);
    color:white;
    z-index: 100;
    height: 170px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
    transition: opacity 1s, visibility 1s, transform 1s;
}
.cta__scroll-bottom > a > .btn-img{
    position: relative;
    width: 45%;
    left: 0;
    top: 0rem;
    max-width: 429px;
    margin: 10px auto;
}

.display-on{
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}
.problem1,.problem2{
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    box-sizing: border-box;
}
.problem1 div,.problem2 div{
    max-width: 930px;
    margin: 0 auto;
}
.problem1{
    background-color: #f0f0f0;
}
.problem2{
    background-color: #dadada;
}
.problem3{
    background-color: #f0f0f0;
}
.achievement{
    background-color: #EDFEF4;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    box-sizing: border-box;
}
.achievement div{
    max-width: 930px;
}
.header{
    display: flex;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    box-sizing: border-box;
}
.header-img{
    padding-left: 45px;
    height:80px;
    width:398px;
}
@media screen and (max-width:1000px){
    .header{
        margin: 0;
        width: 100%;
    }
    .header-img{
        padding-left: 45px;
        height:80px;
        width:398px;
    }
    section{
        min-width: 1000px;
    }
    .problem1, .problem2, .achievement, .about,.form,footer{
        min-width: 1000px;
        margin: 0 auto;
    }
}

@media screen and (max-width:750px) {
    .problem1, .problem2, .achievement, .about,.form,footer {
        margin: 0;
        width: initial;
        min-width: initial;
        box-sizing: content-box;
    }
    .cta-area1{
        margin: 0;
        width: initial;
        box-sizing: content-box;
    }
    section{
        min-width: initial;
    }
    .cta__scroll-bottom > a > .btn-img{
        width: 48%;
    }
}

