@charset "utf-8";

@media only screen and (max-width: 850px) {

    * {
        -webkit-tap-highlight-color: transparent;
    }

    html,
    body {
        overflow-x: hidden;
    }

    .background {
        width: 100%;
        height: 0;
        padding-top: 100%;
    }

    .mainbx {
        padding: 0px 30px;
        padding-top: 27%;
    }

    .cakebx {
        position: absolute;
        bottom: -27%;
        width: 80%;
    }

    .cake {
        width: 100%;
    }

    .hat {
        width: 23%;
        top: -28%;
        right: 27%;
    }

    .happy {
        width: 61%;
        left: -12%;
        top: -36%;
    }


    .line {
        width: 20%;
        top: 5%;
        right: -14%;
    }

    .star {
        width: 12%;
        top: 8%;
        left: -9%;
    }

    .bubble1 {
        width: 10%;
        left: -6%;
        bottom: 14%;
    }

    .bubble2 {
        width: 5%;
        left: -10%;
        bottom: 32%;
    }

    .heart {
        width: 20%;
        top: 45%;
        right: -13%;
    }

    .letter {
        width: 25%;
        bottom: 0%;
        right: 0%;
    }


    .white1 {
        width: 12%;
        top: -19%;
        left: 40%;
    }

    .white2 {
        width: 9%;
        top: 0%;
        left: 58%;
    }

    .yellow1 {
        width: 12%;
        top: 0%;
        left: 34%;
    }

    .yellow2 {
        width: 10%;
        top: -15%;
        left: 62%;
    }

    .maintitlebx {
        margin-top: 25%;
        padding-bottom: 30%;
    }

    .mMod0 {
        font-size: 16px;
    }

    .mMod3 h2 {
        margin-top: 20px;
        font-size: 25px;
    }

    .mMod3 .txt {
        margin-top: 15px;
        font-size: 16px;
    }

    .mMod2 {
        min-height: unset;
    }

    .mMod1 {
        width: 80px;
        height: 80px;
        top: -42px;
    }

    .content {
        padding: 60px 30px;
    }

    .swiper-pagination {
        text-align: left;
    }

    .mMod4 {
        text-align: left;
        margin-bottom: 55px;
    }

    .mMod4 .tit {
        margin-top: 15px;
        font-size: 20px;
        padding: 0 10px;
        box-sizing: border-box;
    }

    .mMod4 .txt {
        margin-top: 15px;
        font-size: 14px;
        padding: 0 10px;
        box-sizing: border-box;
    }

    .mMod9 {
        margin-bottom: 55px;
    }

    .mMod9 .swiper-pagination {
        margin-top: 0;
        margin-bottom: 15px;
    }


    .mMod9 .swiper-container {
        height: auto;
        overflow: unset;
    }

    .mMod9 .swiper-slide img {
        height: 300px;
    }

    .mMod5 {
        flex-direction: column;
        border: none;
    }

    .txtbx {
        padding: 0 10px;
        width: 100%;
    }

    .t {
        font-size: 18px;
    }

    .ti {
        margin-bottom: 20px;
    }

    .ti::after {
        display: none;
    }

    .navi {
        position: relative;
        background-color: unset;
        color: #000;
        width: 100%;
        bottom: auto;
        text-align: left;
        padding: 0 10px;
        border-bottom: 2px solid #000;
        border-radius: 0;
    }

    .navi::after {
        content: '';
        background-image: url(../images/navi_m.png);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        width: 16px;
        height: 23px;
        background-repeat: no-repeat;
        background-size: 100%;
    }

    .navi::before {
        display: none;
    }

    .gMap {
        width: 100%;
        height: 300px;
        border: 3px solid #000;
    }

    .tx {
        padding: 0 10px;
        box-sizing: border-box;
        margin-top: 15px;
        font-size: 14px;
    }

    .mMod8 {
        position: relative;
        width: 100%;
        height: 0;
        padding-top: 56%;
        margin-bottom: 55px;
    }

    iframe {
        position: absolute;
        top: 0;
        left: 0;

    }

    .mMod7 {
        text-align: left;
        margin-bottom: 30px;
    }

    .mMod7 a {
        position: relative;
        width: 100%;
        padding: 15px 10px;
        border: none;
        border-bottom: 2px solid #000;
    }

    .mMod7 a::after {
        content: '';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        background-image: url(../images/btn_slide_next.png);
    }

    .mMod10,
    .qrbox {
        background-color: unset;
        text-align: left;
        margin-bottom: 15px;
    }

    .mMod10 a,
    .qrbox a {
        position: relative;
        padding: 15px 20px;
        box-sizing: border-box;
        font-size: 16px;
        width: 100%;
        color: #000;
        background-color: unset;
        border: 1px solid #000;
    }

    .mMod10 a::before,
    .qrbox a::before {
        display: none;
    }

    .mMod10 a::after,
    .qrbox a::after {
        content: '';
        background-image: url(../images/download_m.png);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 20px;
        width: 12px;
        height: 15px;
        background-repeat: no-repeat;
        background-size: 100%;
    }

    .mMod6 {
        text-align: left;
    }

    .mMod6 .tit {
        width: 100%;
    }

    .mMod6 a {
        position: relative;
        display: block;
        border: 2px solid #000;
        padding: 15px 20px;
        box-sizing: border-box;
        font-size: 16px;
        font-weight: normal;
        background-color: #f8df00;
    }

    .mMod6 a::after {
        content: '';
        background-image: url(../images/tel.png);
        position: absolute;
        top: 53%;
        transform: translateY(-50%);
        right: 20px;
        width: 14px;
        height: 25px;
        background-repeat: no-repeat;
        background-size: 100%;
    }

    .mMod6 .txt {
        padding: 0 10px;
        box-sizing: border-box;
    }


    .web {
        display: none;
    }

    .mobile {
        display: block;
    }


    .lMod9 .swiper-container {
        width: 100%;
        height: calc(var(--vh, 1vh) * 100);
        line-height: calc(var(--vh, 1vh) * 100);
    }

    .btn_close {
        top: 20px;
        right: 20px;
    }

    .qrpopup {
        top: 0;
        left: 0;
        transform: none;
        width: 100%;
        height: 100%;
        border-radius: 0;
    }

    .qrbx {
        width: 70%;
        padding: 20px 0;
        box-sizing: border-box;
        max-height: 100%;
    }

    .qrbx .mMod3 h2 {
        font-size: 25px;
    }

    .qrbx .mMod3::after {
        display: none;
    }

    .close2 {
        top: 30px;
        left: auto;
        right: 30px;
        transform: none;
        width: 40px;
        height: 40px;
    }
}


/* 태블릿/가로회전 및 일부 디바이스*/
@media only screen and (min-width:512px) and (max-width:850px) {
    .background {
        width: 83%;
        padding-top: 83%;
    }

    .maintitlebx {
        padding-bottom: 15%;
    }
}