@charset "utf-8";

@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');
@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&display=swap');


ul {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
}

:is(a, h1, h2, h3, h4, h5, h6, td, th, li, span, strong, dl, dd, div, section, button) {
    font-family: 'pretendard', sans-serif !important;

}

.lora {
    font-family: "Lora", sans-serif !important;
    font-optical-sizing: auto;
    font-style: normal;
}

a {
    color: #333 !important;
    text-decoration: none !important;
}

a:hover {
    color: #333 !important;
}

p {
    margin-bottom: 0;
}


/* layout */
#container {
    float:none !important;
    width:100% !important;
    margin: 0 !important;
}

#hd_pop, #hd_wrapper, #tnb .inner, #gnb .gnb_wrap, #container_wr, #ft_wr {
    width:100% !important;
}

@media (min-width:1400px) {
    .container {
        max-width:1640px !important;
    }
}

footer {
    background: #000;
    padding: 77px 0;
    position: relative;
    z-index: 6;

    .footer-top {
        border-bottom:solid 1px #FFFFFF80;
        padding-bottom:35px;
        margin-bottom:35px;

        .row {
            align-items:end;
        }

        .left-box {
            & ul {
                & li {
                    margin-bottom: 5px;
                    & strong {
                        color:#fff;
                        font-weight: 700;
                        font-size:16px;
                        line-height: 30px;
                    }
                    & span {
                        color:#fff;
                        font-weight: 400;
                        font-size:16px;
                        line-height: 30px;

                        & a {
                            color:#fff !important;
                        }
                    }

                    &:last-child {
                        margin-bottom: 0;
                    }
                }
            }
        }
        .right-box {
            .sns-box {
                display:flex;
                align-items:center;
                column-gap:30px;
                margin-bottom:20px;
                justify-content:end;

                .sns-span {
                    font-size:20px;
                    font-weight:700;
                    color:#fff;
                }

                & img {
                    width:35px;
                    height:35px;
                }
            }
            .service-box {
                display:flex;
                align-items:center;
                justify-content:end;
                column-gap:20px;
                margin-bottom:20px;

                & strong {
                    color:#fff;
                    font-size:26px;
                    font-weight:700;
                }

            }
            .info-box {
                text-align:right;

                & p {
                    color:#fff;
                    font-size:20px;
                    font-weight:700;
                }
            }
        }
    }

    .footer-bottom {
        text-align:center;

        & p {
            color:#fff;
            font-size:18px;
            font-weight:400;
        }
    }
}

.sub-header {
    .header-pc-box {
        position: unset;
    }

    .first-nav {
        padding: 35px 122px !important;


        & button {
            height: auto !important;
            border:0 !important;
        }

        #navbarNav {
            .navbar-nav {
                column-gap: 100px;

                & li {
                    & a {
                        & span {
                            font-weight: 500;
                            color:#000;
                            font-size: 20px;
                            display: inline-block;
                            transform-origin: center center;
                            backface-visibility: hidden;
                        }
                    }
                }

                .active {
                    & a {
                        & span {
                            animation: nav-spin-back 0.6s ease;
                        }
                    }
                }



            }
        }

        #navbarNav1 {
            & select {
                background:none;
                border:0;
                box-shadow:none !important;
                font-size:20px;
                font-weight:500;
                color:#000;

                &:focus {
                    border:0 !important;
                    box-shadow:none !important;
                }
            }
        }

    }

    .depth-wrap {
        position:absolute;
        width:100%;
        left:0;
        top:100%;
        z-index:100;

        border-top:1px solid #000;
        border-bottom:1px solid #000;
        display:none;
        padding:10px 0;

        & ul {
            display:flex;
            align-items:center;
            justify-content:center;

            & li {
                margin:0 34px;

                & a {
                    color:#000 !important;
                }
            }
        }
    }

    .nav-item.has-sub.is-open .depth-wrap {
        display:block;
    }

    .offcanvas-end.show {
        display:flex !important;
        width: 970px;


        .offcanvas-header {
            padding:50px 75px;
        }

        .offcanvas-body {
            padding:0 75px;

            .row {
                align-items:end;
            }

            .accordion-item {
                border:0;

                .accordion-button:not(.collapsed) {
                    box-shadow:none !important;
                    background-color:transparent;
                }
                .accordion-button:focus {
                    box-shadow:none !important;
                    background-color:transparent;
                }
                .accordion-button {
                    font-size:45px;
                    font-weight:400;
                    color:#000;
                }

                .accordion-body {
                    position:relative;
                    & ul {
                        & li {
                            margin-bottom:15px;
                            & a {
                                font-size:25px;
                                font-weight:400;
                                color:#000;
                            }

                            &:last-child {
                                margin-bottom:0;
                            }
                        }
                    }
                }
            }
        }
    }

    .sns-menu-box {
        text-align:right;

        .insta-menu {
            margin-bottom:30px;
        }

        & span {
            font-size:17px;
            font-weight:400;
            color:#aeaeae;
            display:block;
            margin-bottom:15px;
        }

        & a {
            font-size:22px;
            font-weight:400;
            color:#000;
        }

    }
}

header {
    position:relative;
    .header-pc-box {
        position:absolute;
        z-index:6;
        width:100%;

        .offcanvas-end.show {
            display:flex !important;
            width: 970px;


            .offcanvas-header {
                padding:50px 75px;
            }

            .offcanvas-body {
                padding:0 75px;

                .row {
                    align-items:end;
                }

                .accordion-item {
                    border:0;

                    .accordion-button:not(.collapsed) {
                        box-shadow:none !important;
                        background-color:transparent;
                    }
                    .accordion-button:focus {
                        box-shadow:none !important;
                        background-color:transparent;
                    }
                    .accordion-button {
                        font-size:45px;
                        font-weight:400;
                        color:#000;
                    }

                    .accordion-body {
                        & ul {
                            & li {
                                margin-bottom:15px;
                                & a {
                                    font-size:25px;
                                    font-weight:400;
                                    color:#000;
                                }

                                &:last-child {
                                    margin-bottom:0;
                                }
                            }
                        }
                    }
                }
            }
        }

        .sns-menu-box {
            text-align:right;

            .insta-menu {
                margin-bottom:30px;
            }

            & span {
                font-size:17px;
                font-weight:400;
                color:#aeaeae;
                display:block;
                margin-bottom:15px;
            }

            & a {
                font-size:22px;
                font-weight:400;
                color:#000;
            }

        }
    }



    .depth-wrap {
        position:absolute;
        width:100%;
        left:0;
        top:100%;
        z-index:100;

        border-top:1px solid #e5e5e5;
        border-bottom:1px solid #e5e5e5;
        display:none;
        padding:10px 0;

        & ul {
            display:flex;
            align-items:center;
            justify-content:center;

            & li {
                margin:0 34px;

                & a {
                    color:#fff !important;
                }
            }
        }
    }

    .nav-item.has-sub.is-open .depth-wrap {
        display:block;
    }




    .first-nav {
        padding: 35px 122px !important;


        & button {
            height: auto !important;
            border:0 !important;
        }

        #navbarNav {
            .navbar-nav {
                column-gap: 100px;

                & li {
                    & a {
                        & span {
                            font-weight: 500;
                            color:#fff;
                            font-size: 20px;
                            display: inline-block;
                            transform-origin: center center;
                            backface-visibility: hidden;
                        }
                    }
                }

                .active {
                    & a {
                        & span {
                            animation: nav-spin-back 0.6s ease;
                        }
                    }
                }



            }
        }

        #navbarNav1 {
            & select {
                background:none;
                border:0;
                box-shadow:none !important;
                font-size:20px;
                font-weight:500;
                color:#fff;

                &:focus {
                    border:0 !important;
                    box-shadow:none !important;
                }
            }
        }

    }

}

/*
.main-header, .main-wrap {
    cursor: url('/theme/basic/img/main/mouse.svg') 10 2, pointer;
}

 */


@keyframes nav-spin-back {
    0% {
        transform: rotateX(0deg);
    }
    100% {
        transform: rotateX(360deg);
    }
}

.all-menu-navbar {
    display: none;
    position: fixed;

    left: 0;
    z-index: 1000;
    width: 100%;
    border-top: solid 1px #d8d8d8;


    .all-menu-navbar-wrapper{
        width: 100%;
        background: #fff;
        padding: 24px 0 50px 0;

    }

    .all-menu-navbar-empty{
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.3);
    }

    .all-menu-navbar-nav {
        max-width: 1280px;
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        .all-menu-nav-item{
            .all-menu-nav-link{
                font-weight: 800;
                font-size: 25px;
                line-height: 150%;
                color: #00AD1D !important;
                display: inline-block;
                margin-bottom: 27px;
            }
            .all-menu-sub-depth{
                .all-menu-pc-sub-menu{
                    display: flex;
                    flex-direction: column;
                    gap: 20px;

                    .all-menu-sub-item a{
                        font-weight: 600;
                        font-size: 17px;
                        line-height: 150%;
                        letter-spacing: -0.01em;
                    }
                    .all-menu-sub-item a:hover{
                        color: #00AD1D !important;
                    }
                }
            }
        }
    }
}
.all-menu-navbar.active {
    display: block;
}

.all-menu-header-navbar{
    top: 207px;
}

.all-menu-footer-navbar{
    bottom: 275px;
}


.sub-box {
    height: 448px;
    padding: 138px 0;


    .navi-box {
        margin-bottom: 25px;
        display: flex;
        align-items: center;
        column-gap: 12px;
        justify-content: center;


        & span {
            font-size:25px;
            font-weight: 600;
            color:#fff;
            line-height: 100%;
        }
        .eclipse-span {
            display: inline-block;
            width:4px;
            height: 4px;
            background: #fff;
            border-radius: 500px;
        }
    }

    .sub-nav-title {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 30px;

        & h2 {
            font-size:130px;
            font-weight: 400;
            color:#fff;
            line-height: 100%;
            margin-bottom: 0;
        }
    }

    .sub-nav-box {


        .nav-col {
            background: #00000036;
            border-radius: 30px;

            .nav-item {
                /*line-height: 50px;*/
                line-height: 100%;
                text-align: center;
                height: 67px;
                align-content: center;

                & a {
                    font-size:18px;
                    font-weight: 600;
                    margin: 0 12px;
                    color:#fff !important;
                    border-radius: 300px;
                    align-content: center;
                }
                a.active {
                    background:#000;
                    height: 47px;

                }
            }

        }
    }

}


.sub-box.sub1 {
    background: url('/theme/basic/img/sub/sub-1.png') no-repeat center;
    background-size: cover;

    .nav-item:nth-child(6) {
        flex:0 0 17%;
    }
}

.sub-box.sub2 {
    background: url('/theme/basic/img/sub/sub-2.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub3 {
    background: url('/theme/basic/img/sub/sub-3.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub4 {
    background: url('/theme/basic/img/sub/sub-4.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub5 {
    background: url('/theme/basic/img/sub/sub-5.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub6 {
    background: url('/theme/basic/img/sub/sub-6.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub7 {
    background: url('/theme/basic/img/sub/sub-7.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub8 {
    background: url('/theme/basic/img/sub/sub-8.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub9 {
    background: url('/theme/basic/img/sub/sub-9.png') no-repeat center;
    background-size: cover;
}

.sub-box.sub10 {
    background: url('/theme/basic/img/sub/sub-10.png') no-repeat center;
    background-size: cover;
}





.offcanvas.offcanvas-end {
    display: none;
}


