/* support iOS */
html {
    height: -webkit-fill-available;
}

body {
    min-height: 100vh;
    min-height: -webkit-fill-available;
    position: relative !important;
    top: auto !important;
}

header {
    height: 100%;
    /* min-height: 100vh; */
    pointer-events: none;
}

header.on {
    pointer-events: auto;
}

header .overlay {
    height: 100%;
    top: auto;
    bottom: 0;
}

header .logo,
header .menu__tri,
header nav {
    pointer-events: visible;
}


.sec__official-sns .sns__list li.youtube {
    background: linear-gradient(45deg, #f46464, #c93535, #f46464, #c93535);
    background-size: 200% 200%;
    animation: bg 9s ease infinite;
}

.sec__official-sns .sns__list li.youtube a svg {
    width: 96px;
    height: 96px;
}

.sec__official-sns .sns__list li.youtube a svg g path {
    fill: #ffffff;
}

.sns__wrap .share.twitter {
    max-width: 16px;
}

@media only screen and (min-width: 768px) {
    .sec__official-sns .sns__list {
        max-width: 1400px;
    }


    .sec__official-sns .sns__list li {
        width: 32%;
        padding-top: 32%;
    }


    .sec__official-sns .sns__list li .tx {
        bottom: 20px;
        left: 20px;
    }


    .sec__official-sns .sns__list li.tw svg {
        width: 70px;
        height: 65px;
    }

    .sec__official-sns .sns__list li.insta a svg
    {
        width: 72px;
        height: 70px;
    }

    .sec__official-sns .sns__list li.youtube a svg {
        width: 90px;
        height: 70px;
    }
}

@media only screen and (min-width: 1025px) {

    .sec__official-sns .sns__list li .tx {
        bottom: 50px;
        left: 50px;
    }

    .sec__official-sns .sns__list li.tw svg {
        max-width: 160px;
        max-height: 120px;
        width: 35%;
        height: 35%;
    }
    .sec__official-sns .sns__list li.insta a svg {
        max-width: 180px;
        max-height: 180px;
        width: 37%;
        height: 36%;
    }

    .sec__official-sns .sns__list li.youtube a svg {
        max-width: 200px;
        max-height: 200px;
        width: 40%;
        height: 36%;
    }
}

/* footer */
footer .sns__wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    max-width: 260px;
    margin: 0 auto 50px;
}

footer .sns__wrap .sns__wrap__title {
    width: auto;
}

footer .sns__wrap .sns__wrap__title p {
    font-size: 1.2rem;
    color: #ffffff;
}

@media only screen and (min-width: 1025px) {
    footer .sns__wrap {
        display: inline-block;
        justify-content: unset;
        align-items: unset;
        width: auto;
        margin: 0;
    }

    footer .sns__wrap .sns__wrap__title {
        vertical-align: top;
    }

    footer .sns__wrap .sns__wrap__title p {
        font-size: 1.4rem;
    }
}