body {
    margin: 0;
    padding: 0;
}



.tabipass {
    background-color: #bfe2f6;
    padding-bottom: 50px;

}

.top-banner {
    width: 100%;
    padding-top: 50px;
    margin-bottom: 0px;
}

@media screen and (max-width: 480px) {
    .top-banner {
        width: 80%;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
}

.top-image {
    margin-top: 0px;
    margin-bottom: 45px;
}

.top-image-small {
    margin-top: 0px;
    margin-bottom: 20px;
}

@media screen and (max-width: 480px) {
    .tabipass {

        background-color: #bfe2f6;
        padding-bottom: 50px;

    }
}

.tabipass-header {
    width: 80%;
    margin: 0 auto;

}

@media screen and (max-width: 480px) {
    .tabipass-header {
        width: 100%;
        margin: 0 auto;
    }
}

.tabipass-contents {
    width: 70%;
    margin: 0 auto;
}

@media screen and (max-width: 480px) {
    .tabipass-contents {
        width: 90%;

    }
}


.tabipass-header p {
    text-align: center;
    font-size: 3.5vw;
    font-weight: 900;
    margin: 40px 0 30px 0;
    line-height: 110%;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
}


@media screen and (max-width: 480px) {
    .tabipass-header p {
        font-size: 4vw;
        margin: 10px auto;
    }
}


.app-qr {
    text-align: center;
    margin-bottom: 30px;
}

.app-qr img {
    width: 20%;
}

@media screen and (max-width: 1300px) {
    .app-qr img {
        width: 25%;

    }

    .app-qr {
        margin-bottom: 10px;
    }
}




.present_banner {
    width: 100%;
    text-align: center;
}

.present_banner img {
    width: 100%;
}

.tabipass-detail {

    text-align: center;
}

.tabipass-detail img {
    width: 100%;
    margin-top: 50px;
}

@media screen and (max-width: 480px) {
    .tabipass-detail img {
        width: 100%;
        transform: scale(1.1);

    }
}

.manual {
    background-color: #e9ffe3;
    padding-bottom: 70px;
    padding-top: 100px;
}

@media screen and (max-width: 480px) {
    .manual {

        padding-bottom: 50px;
        padding-top: 50px;
    }
}

.manual-contents {
    width: 70%;
    margin: 0 auto;
    text-align: center;
}

.manual-contents p {
    text-align: center;
    font-size: 3.5vw;
    font-weight: 900;
    margin: 5px 0 15px 0;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
}

.manual-contents span {
    color: #1f01ff;
}

@media screen and (max-width: 480px) {
    .manual-contents p {
        font-size: 4.5vw;
    }
}



.manual-contents img {
    width: 100%;
    margin-bottom: 30px;

}

@media screen and (max-width: 480px) {
    .manual-contents img {
        width: 100%;
        transform: scale(1.1);

    }
}

.point {
    height: auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.point img {
    width: 22%;
    height: 100%;
}



@media screen and (max-width: 800px) {
    .point img {
        width: 48%;
        height: 100%;
    }
}

@media screen and (max-width: 480px) {
    .point img {
        width: 45%;
        height: 100%;
    }
}





.anq-contents {
    width: 70%;
    margin: 0 auto;
    text-align: center;
    padding-top: 100px;
}

.anq-contents img {
    margin-bottom: 50px;
    filter: saturate(120%);
}

@media screen and (max-width: 480px) {
    .anq-contents img {
        margin-bottom: 10px;

    }


    .anq-contents {
        padding-top: 30px;
    }

}

.anq-image {
    width: 55%;
    position: relative;
    z-index: -1;
    left: -15px;

}

@media screen and (max-width: 1300px) {
    .anq-image {
        width: 80%;
        left: -17px;
    }
}

@media screen and (max-width: 800px) {
    .anq-image {
        width: 80%;
        left: -10px;
    }
}

@media screen and (max-width: 480px) {
    .anq-image {
        width: 90%;
        left: -10px;
    }
}


.facility-list {
    width: 70%;
    margin: 100px auto 100px auto;
}


@media screen and (max-width: 480px) {
    .facility-list {
        width: 80%;
        margin: 10px auto 100px auto;
    }

}



.facility-header {
    text-align: center;
    font-size: 3.5vw;
    font-weight: 900;
    margin-top: 0;
    line-height: 90%;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
}

@media screen and (max-width: 480px) {
    .facility-header {

        font-size: 4.5vw;

    }

}


.facility-header span {
    text-align: center;
    font-size: 1.3vw;
    font-weight: normal;
    margin-top: 0;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
}

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

    .facility-header span {
        font-size: 3vw;
    }

}

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

table {
    border-collapse: collapse;
    width: 48%;
    margin-bottom: 50px;

}

@media screen and (max-width: 1300px) {
    table {
        width: 100%;
    }

    .list {
        flex-direction: column;
    }
}



table,
th,
td {
    border: 3px solid #333333;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
    font-weight: 600;
}

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

    table,
    th,
    td {
        border: 1px solid #333333;
    }

}

td {
    height: 25px;
}

td:nth-of-type(2) {
    text-align: center;
}

.caution {
    width: 100%;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
}

.caution p {
    text-align: left;

}

.caution ul {
    padding-inline-start: 0px;
}

.caution ul li {
    list-style: none;
}

.list-kakko {
    font-size: 110%;
}


.md-block {
    display: none;
}

@media screen and (max-width: 480px) {
    .md-none {
        display: none;
    }

    .md-block {
        display: revert;
    }
}

a {
    text-decoration: none;
}

/* modal対応 */
.exp_img {
     object-fit: contain;
     cursor: pointer;
}

.modal-wrapper {
     width: 100%;
     height: 100%;
     position: fixed;
     top: 0;
     left: 0;
     background: rgba(0,0,0,0.5);
     pointer-events: none;
     opacity: 0;
     transition: 0.25s ease-out;
}

.modal-wrapper.show {
     opacity: 1;
     pointer-events: all;
}

.modal-image {
     position: absolute;
     max-width: 90%;
     max-height: 80%;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -58%);
     object-fit: cover;
     opacity: 0;
     transition: 0.5s ease-out;
}

.modal-image.show {
     opacity: 1;
}
