@charset "UTF-8";

a {
    transition: 0.2s ease-in;
}

a:hover {
    opacity: 0.7;
}

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

.main .mv {
    position: relative;
    width: 60%;
}

.main .mv .banner {
    position: absolute;
    width: 30%;
    right: 3%;
    top: 4%;
}

.main .txt_wrap {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    position: relative;
}

.main .txt_wrap .logo {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 3% 0 3% 3%;
}

.main .txt_wrap .logo img:nth-child(1) {
    max-width: 129px;
    width: 23%;
    margin-right: 5%;
}

.main .txt_wrap .logo img:nth-child(2) {
    width: 31%;
    min-width: 160px;
}

.thanks_midashi {
    max-width: 450px;
    width: 65%;
    margin: 8% auto 0;
}

.thanks_txt {
    max-width: 480px;
    width: 75%;
    margin: 8% auto 0;
}

.mv .vista_bnr {
    width: 32.5%;
    position: absolute;
    bottom: 5.5%;
    left: 5%;
}

.box01 {
    padding: 35px 0;
}

.box01 .inner {
    max-width: 900px;
    width: 90%;
    margin: 0 auto  0;
    position: relative;
}

.box01 .inner .btn {
    width: 47%;
}

.cancel_entry_btn {
    max-width: 570px;
    width: 50%;
    margin: 0 auto;
}

.btn_flex {
    position: absolute;
    transform: translate(0, -50%);
    top: 45%;
    right: 0;
    max-width: 300px;
    width: 22%;
    display: flex;
   justify-content: center;
   gap: 20px;
   align-items: center;
}

.outline_btn {
    width: 49%;
}

.map_btn {
    width: 20%;
}

.map_btn a {
   
}

.box02 {
    background-color: #e6e6e6;
    padding: 30px 0 30px;
}

.box02 .inner {
    max-width: 1050px;
    width: 80%;
    margin: 0 auto;
}

.box02 .inner .flex {
    flex-wrap: wrap;
}

.recom_midashi {
    max-width: 445px;
    width: 37%;
    margin: 0 auto 40px;
}

.recom_btn {
    width: 48%;
}

.other_btn {
    width: 43%;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {

    body {
        margin-top: 0;
    }

    .flex {
        flex-direction: column;
    }

    .main .mv {
        width: 100%;
    }

    .main .mv .banner {
        width: 45%;
        top: -3%;
        right: 2%;
    }

    .main .txt_wrap {
        width: 100%;
    }

    .main .txt_wrap .logo {
        padding: 3% 0 3% 3%;

    }

    .main .txt_wrap .logo img:nth-child(1) {
        margin-right: 3%;
    }


    .mv .vista_bnr {
        width: 90%;
        bottom: 5.5%;
        left: 5%;
    }

    .thanks_midashi {
        width: 65%;
        margin: 20% auto 5%;
    }

    .cancel_entry_btn {
        width: 100%;
    }


    .thanks_txt {
        width: 85%;
        margin: 20px auto;
    }

    .box01 {
        padding: 25px 0;
    }

    .box01 .inner {
        gap: 30px 0;
    }

    .box01 .inner .btn {
        width: 100%;
    }

    .btn_flex {
        max-width: 430px;
        width: 100%;
        margin: 0 auto;
        align-items: center;
        gap: 20px;
        position: initial;
        transform: translate(0,0);
        text-align: center;
        justify-content: center;
    }

    .box01 .inner .txt_btn img {
        display: block;
        margin: 0 auto;
        max-width: none;
        width: auto;
        max-height: 17px;
    }
    .box01 .inner .list_wrap li.cancel_btn {
        width: 100%;
    }

    .box02 {
        padding: 30px 0;
    }

    .recom_midashi {
        width: 80%;
        margin-bottom: 20px;
    }

    .recom_btn {
        width: 100%;
        margin-bottom: 30px;
    }

    .other_btn {
        width: 100%;
        margin-top: 0;
    }

    .map_btn a {
        display: initial;
    
    }

    .logo {
        max-width: 168px;
        position: absolute;
        transform: translateX(-50%);
        left: 50%;
        margin-left: 0;
    }
}