/* 팝업 */
#popParent {
    display: none;
}
.pop-parent {
    z-index: 9999;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    padding-bottom: 40px;
    background-color: rgba(0, 0, 0, 0.35);
}
.pop-parent .pop {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    max-width: 500px;
}
.pop-parent .m-ratioBox-wrap {
    width: 100%;
    padding-top: 100%;
    position: relative;
    overflow: hidden;
}
.pop-parent .m-ratioBox-wrap .m-ratioBox {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    background-color: var(--sub_color01);
}
.pop-parent .m-ratioBox-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
}
.pop-parent .m-ratioBox-wrap iframe {
    width: 105%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
}
.pop-parent .pop .btn-toggle {
    width: 40px;
    height: 40px;
    position: relative;
    background-color: black;
    cursor: pointer;
}
.pop-parent .pop .btn-toggle img {
    width: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-90deg);
    transition: all 0.3s;
}
.pop-parent .pop-btns {
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 40px;
    background-color: #3c3c3c;
}
.pop-parent .pop-btns a {
    color: #fff;
    padding: 7px 14px;
}
.pop-parent .pop-btns #oneday_check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
}
.pop-parent .pop-btns #oneday_check + label {
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-size: 14px;
    color: #fff;
    cursor: pointer;
}
.pop-parent .pop-btns #oneday_check + label:before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-right: 10px;
    border: 1px solid #fff;
}
.pop-parent .pop .swiper-btn-control {
    width: 8px;
    height: 11px;
    margin-left: 16px;
    position: relative;
    top: 2px;
}
.pop-parent .popupSwiper {
    background-color: #fff;
}
.pop-parent .swiper-pagination {
    pointer-events: none;
    top: 21px;
    left: auto;
    right: 20px;
    width: fit-content;
}
.pop-parent .swiper-pagination-bullet {
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    border-radius: 0;
    border: 1px solid white;
    opacity: 0.5;
    background-color: transparent;
}
.pop-parent .swiper-pagination-bullet-active {
    background-color: #fff;
    opacity: 1;
}
.pop-parent .active {
    right: -400px;
}
.pop-parent .active .btn-toggle {
    transform: rotate(180deg);
}
.pop-parent .pop .btn-close {
    width: 40px;
    height: 40px;
    background-color: black;
}
.pop-parent .pop .btn-close > i {
    color: #fff;
}
/* 1279px 이하 */
@media screen and (max-width: 1279px) {
    .pop-parent .pop {
        width: calc(100% - 40px);
    }
    .pop-parent.active {
        right: calc(- (100% - 40px));
    }
}

/* 1023px 이하 */
@media screen and (max-width: 1023px) {
    .floating-btns-wrap {
        bottom: 16px;
        right: 16px;
    }
}

/* 767px 이하 */
@media screen and (max-width: 767px) {
    .pop-parent {
        top: 50%;
        right: unset;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .pop-parent .pop-btns {
        width: 100%;
        justify-content: space-between;
    }
    .pop-parent .pop .btn-toggle {
        display: none;
    }
    .pop-parent .pop .btn-close {
        display: block;
    }
}

/*
=============================================================
-------------------------커스텀스타일-------------------------
=============================================================
*/

/* 헤더 모바일 메뉴 */
#header_wrap {
    #toggle_button {
        display: inline-block;
        box-sizing: border-box;
    }

    #toggle_button span {
        display: block;
        transition: all 0.4s ease;
    }

    #toggle_button {
        span {
            position: absolute;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: #000;
            border-radius: 2px;
        }

        span:nth-child(1) {
            top: 0;
        }
        span:nth-child(2),
        span:nth-child(3) {
            top: 8px;
        }
        span:nth-child(4) {
            bottom: 0;
        }
        &.active span:nth-child(1),
        &.active span:nth-child(4) {
            opacity: 0;
        }
        &.active span:nth-child(2) {
            transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
        }
        &.active span:nth-child(3) {
            transform: rotate(-45deg);
            -webkit-transform: rotate(-45deg);
        }
    }

    #toggle_menu {
        transition: right 0.4s ease;

        &.open {
            right: 0;
        }
    }
}

/* 메인 헤더 스와이퍼 마다 텍스트 컬러 변경 */
#header {
    #header_wrap > a,
    #header_wrap > span {
        transition: all 0.4s;
    }

    #header_wrap.header-white > ul > li > a,
    #header_wrap.header-white > ul > li > span {
        color: white;
    }

    #header_wrap.header-black > ul > li > a,
    #header_wrap.header-black > ul > li > span {
        color: black;
    }
}

/* 메인 스와이퍼 슬라이드 불릿 커스텀 */
.mySwiper1 {
    > .swiper-pagination {
        margin-right: 30px;

        .swiper-pagination-bullet {
            width: 10px;
            height: 10px;
            background: none;
            border: 2px solid var(--color-gray-300);
            opacity: 0.6;
            margin: 18px 0 !important;

            &.swiper-pagination-bullet-active {
                position: relative;
                background: none;
                border: 2px solid var(--color-black-100);
                opacity: 1;

                &:before {
                    content: attr(data-bullet);
                    position: absolute;
                    right: 20px;
                    top: 50%;
                    transform: translateY(-50%);

                    font-size: 14px;
                    color: var(--color-black-100);
                    display: block;
                }

                &:nth-child(2),
                &:nth-child(3) {
                    border: 2px solid white;
                    &:before {
                        color: #fff;
                    }
                }
            }

            &:last-child {
                display: none;
            }
        }
    }

    .mySwiper2 {
        > .swiper-pagination {
            margin-bottom: 10px;

            .swiper-pagination-bullet {
                width: 10px;
                height: 10px;
                background: none;
                border: 2px solid white;
                opacity: 0.6;
                margin: 0 9px !important;

                &.swiper-pagination-bullet-active {
                    background: none;
                    opacity: 1;
                }
            }
        }
    }
}

/* 메인 스와이퍼 02. Service PC 버전 */
#pc_hover_event {
    #bg-left,
    #bg-right,
    #hover-left,
    #hover-right {
        transition: opacity 0.3s ease-in-out;
    }
}

/* 메인 스와이퍼 02. AAV 슬라이드 */
@media screen and (max-width: 1640px) {
    .mySwiper3 {
        .swiper-slide {
            transition:
                transform 0.3s ease,
                opacity 0.3s ease;
            transform: scale(0.8);
            opacity: 0.6;
        }
        .swiper-slide-active {
            transform: scale(1);
            opacity: 1;
            z-index: 2;
        }
    }
}

/* 메인 스와이퍼 04. News 슬라이드 */
.swiper.mySwiper4.swiper-initialized.swiper-horizontal.swiper-backface-hidden {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 20px;

    .news-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
        position: relative;
        width: 100%;
    }
    .swiper-pagination-progressbar {
        background: rgba(158, 158, 158, 0.2); /* #9e9e9e 20% */
    }
    .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
        background: var(--color-blue-100);
    }
}

/* 스크롤바 커스텀 */
.scrollbar-x {
    overflow-x: scroll;

    &::-webkit-scrollbar {
        height: 2px;
    }
    &::-webkit-scrollbar-thumb {
        background: var(--color-blue-100);
        border-radius: 2px;
    }
    &::-webkit-scrollbar-track {
        background: rgba(158, 158, 158, 0.2); /* #9e9e9e 20% */
        border-radius: 2px;
    }

    @media screen and (min-width: 851px) {
        &::-webkit-scrollbar {
            display: none;
        }
    }
}
.scrollbar-hide {
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */

    &::-webkit-scrollbar {
        display: none; /* Chrome, Safari, Opera */
    }
}

/* 폼 */
input::placeholder,
textarea::placeholder {
    color: var(--color-gray-300);
    opacity: 0.6;
}

/* 연혁 History */
#history_list > li:first-child {
    max-height: 0;
}
