.cover_area {
    padding: 170px 0 90px;
}

#sec1 .wrap {
    background: url(../img/sec01_img01.png)no-repeat right;
    background-size: contain;
}

.cover_area {}

.cover_box {
    z-index: 99;
    position: relative;
}

.cover_box h1 {
    font-size: 6.25vw;
    font-weight: 500;
    letter-spacing: 0.01em;
    font-family: "Inter", sans-serif;
}

.cover_box p {
    font-size: 1.25vw;
    letter-spacing: 0.04em;
    margin-top: 6px;
}

.cover_img {
    position: absolute;
    bottom: -120px;
    right: 0;
    display: none;
}

#sec2 .area {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#sec2 .txt_area {
    max-width: 391px;
    width: 100%;
    margin-right: 15px
}

#sec2 .img_area {
    max-width: 590px;
    width: 100%;
}

#sec2 h3.content_tit01 {
    margin-top: 44px;
}

#sec2 p.txt01 {
    margin-top: 40px;
}

#sec2 a.btn01 {
    margin-top: 44px;
}

#sec2 .sub_tit01 {
    margin-top: 20px;
}

#sec3 .area {
    display: flex;
    justify-content: space-between;
}

section#sec2 {
    padding: 115px 15px 109px;
}

section#sec2 {}

section#sec3 {
    padding: 0 15px 110px;
}

#sec3 .sub_tit01 {
    margin-top: 14px;
}

#sec3 .img_box {
    margin-top: 29px;
}

#sec3 h3.content_tit01 {
    margin-top: 25px;
}

#sec3 p.txt01 {
    margin-top: 25px;
    max-width: 452px;
}

#sec3 a.btn01 {
    margin-top: 35px;
    max-width: 198px;
}

.item_box {
    width: 47.9%;
}

.wave {
    position: relative;
}

.wave canvas {
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
}

@media screen and (max-width:1440px) {
    .cover_box h1 {
        font-size: 90px;
    }
    .cover_box p {
        font-size: 27px;
    }
}

@media screen and (max-width:991px) {
    .cover_area {
        padding: 80px 0 50px;
    }
    section#sec2 {
        padding: 80px 30px 80px;
    }
    section#sec3 {
        padding: 0 30px 80px;
    }
    .wrap {
        padding: 0 30px;
    }
    .wave canvas {
        top: 20vw;
    }
}

@media screen and (max-width:767px) {
    .cover_area {
        padding: 105px 0 55px;
    }
    .cover_box h1 {
        font-size: 56px;
    }
    .cover_box p {
        font-size: 17px;
        margin-top: 0;
    }
    #sec2 .area {
        flex-flow: column;
    }
    #sec3 .area {
        flex-flow: column;
        max-width: 550px;
        margin: auto;
    }
    .item_box {
        width: 100%;
    }
    .item_box:last-child {
        margin-top: 90px;
    }
    #sec2 .img_area {
        margin-top: 20px;
    }
    #sec3 a.btn01 {
        margin-top: 25px;
        max-width: 168px;
    }
    #sec2 a.btn01 {
        margin-right: auto;
        margin-top: 30px;
    }
    #sec2 p.txt01 {
        margin-top: 30px;
    }
    #sec2 h3.content_tit01 {
        margin-top: 30px;
    }
    #sec2 .sub_tit01 {
        margin-top: 16px;
    }
    .wave canvas {
        top: 30vw;
    }
}

@media screen and (max-width:599px) {
    .wave canvas {
        top: 60vw;
    }
}