.sp-block{
    display: none;
}

@media screen and (max-width: 768px){
    .sp-block{
        display: block;
    }

    .sp-none{
        display: none !important;
    }

    .mv{
        height: auto;
        min-height: auto;
    }

    .ttl{
        font-size: 20px;
    }

    .head-flex{
        margin: 15px 0 30px;
    }

    /* .ttl-04 {
        font-size: 16px;
    } */

    .s1-technic__box {
        padding: 30px 20px;
        background-color: #fff;
        margin-bottom: 50px;
    }

    .s1-technic__img{
        width: 70px;
        margin: 0 auto;
        margin-bottom: 20px;
        margin-top: -65px;
    }

    .s1-technic__txt{
        width: 100%;
        margin-left: 0;
    }

    .ttl-02 {
        font-size: 1.9rem;
        font-weight: 600;
        letter-spacing: 0.12em;
        color: #333333;
    }

    .ttl-05 {
        font-size: 1.4rem;
    }

    .s2{
        padding: 0 2rem;
    }

    .s2 .head-flex .ttl-04 {
        width: 100%;
        margin-left: 0;
    }

    .s2-present {
        padding: 2rem 1.5rem;
        background-color: #FFDE2B;
        background-image: none;
    }

    .s2-present__txt{
        width: 100%;
    }

    .ttl-01 {
        font-size: 2.7rem;
    }

    .s3{
        padding: 3rem 2rem;
    }

    .s3-line{
        padding: 2rem 1.5rem;
    }

    .s3-line__box{
        padding-left: 0;
    }

    .s3-line__txt{
        width: 100%;
    }

    .s3-line .qr-txt{
        width: 100%;
    }

    .ttl-06{
        display: block;
        width: 60%;
        padding-bottom: 1.5rem;
    }

    .s4 .texture03 {
        left: -3%;
        top: -4%;
    }

    .s4{
        margin: 0;
    }

    .s4-profile__img{
        width: 60%;
        margin: 1rem auto 1.5rem;
    }

    .s4-profile__txt{
        margin-right: 0;
        width: 100%;
        padding: 0 2rem;
    }

    .s4-profile__main{
        padding: 1rem 2rem 2rem;
    }

    .s2 .head-flex{
        margin-bottom: 1.5rem;
    }

    .s1{
        padding: 2rem 2rem 5rem;
    }

    .mv .line-btn{
        width: 430px;
        position: static;
        max-width: calc(100% - 4rem);
        margin: 1.5rem auto 2rem;
        display: block;
    }

    .mv__photo{
        width: 20rem;
        margin: 0 auto;
        padding-bottom: 1.5rem;
    }

    .mv{
        /* background-color: #fff; */
        /* background-image: url(./../img/profile-bg.png); */
    background-size: cover;
    background-repeat: no-repeat;
    background-position-x: center;
    padding-bottom: 2rem;
    }

    .head-flex img {
        width: 0%;
    }
    .s1 .ttl-04{
        margin-bottom: 2rem;
    }

    .mv__link{
        display: block;
        margin-top: -4rem;
    }

    .mv-img{
        padding: 0 1rem;
    }

}