@charset "utf-8";

.inner {width: calc(100% - 32px); max-width: 1400px; margin: 0 auto;}
.inner-m {width: calc(100% - 32px); max-width: 640px; margin: 0 auto;}

.primary {color: var(--primary) !important;}
.primary_bg {background-color: var(--primary);}
.secondary {color: var(--secondary);}
.secondary_bg {background-color: var(--secondary);}

/* header */
.header {position: sticky; top: 0; z-index: 9999;}
.header .header-top {position: relative; height: 100px; display: flex; align-items: center; justify-content: center; background-color: var(--primary);}
.header .header-top .logo {display: flex; align-items: center; justify-content: center;}
.header .menu {width: 100%;}
.header .menu #gnb_1dul > ul {width: 100%; display: flex; align-items: center; justify-content: center; background-color: var(--secondary);}
.header .menu #gnb_1dul > ul > li {width: calc(100% / 4); height: 50px;}
.header .menu #gnb_1dul > ul > li > a {width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #fff;}
.header .menu #gnb_1dul > ul > li .bg {display: none;}
.header .menu #gnb_1dul > ul > li .gnb_2dul {display: none; background-color: #fff; border: 1px solid var(--line); border-top: 0;}
.header .menu #gnb_1dul > ul > li .gnb_2dul .gnb_2dul_box > li {width: 100%; height: 50px;}
.header .menu #gnb_1dul > ul > li .gnb_2dul .gnb_2dul_box > li:not(:last-of-type) {border-bottom: 1px solid var(--line);}
.header .menu #gnb_1dul > ul > li .gnb_2dul .gnb_2dul_box > li > a {width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--text2);}
.header .menu #gnb_1dul > ul > li .gnb_2dul .gnb_2dul_box > li > a:hover {color: var(--primary);}

.header #gnb_all {position: absolute; display: none; top: 0; left: 0; width: 100%; height: 100vh; background-color: #fff; flex-direction: column; z-index: 99999;}
.header #gnb_all .mo-gnb-t {position: relative; width: 100%; height: 60px; display: flex; justify-content: center; align-items: center; border-bottom: 1px solid var(--line);}
.header #gnb_all .mo-gnb-t .mo-logo {display: flex; align-items: center; justify-content: center;}
.header #gnb_all .mo-gnb-t .mo-logo img {height: 32px;}
.header #gnb_all .gnb_al_ul {width: 100%; display: flex; flex-direction: column; padding: 0 16px;}
.header #gnb_all .gnb_al_ul > li > a {position: relative; display: flex; align-items: center; column-gap: 10px; padding: 20px 0; font-size: 16px; border-bottom: 1px solid var(--line); transition: all 0.3s;}
.header #gnb_all .gnb_al_ul > li > a::after {content: "";position: absolute;top: 50%;right: 5px;width: 10px;height: 10px;border-bottom-left-radius: 1px;display: block;transition: all 0.3s; border-right: 2px solid var(--text1);border-bottom: 2px solid var(--text1);transform: translateY(-50%) rotate(-45deg)}
.header #gnb_all .gnb_al_ul > li:hover > a::after,
.header #gnb_all .gnb_al_ul > li.open > a::after,
.header #gnb_all .gnb_al_ul > li.on > a::after,
.header #gnb_all .gnb_al_ul > li > a.active::after {transform: rotate(45deg); border-right: 2px solid var(--primary); border-bottom: 2px solid var(--primary);}
.header #gnb_all .gnb_al_ul > li.on > ul {display: block;}
.header #gnb_all .gnb_al_ul > li.on > a {border-bottom: 1px solid var(--primary); color: var(--primary);}
.header #gnb_all .gnb_al_ul > li > ul > li a:hover,
.header #gnb_all .gnb_al_ul > li > ul > li a.active {color: var(--secondary);}

.header #gnb_all .gnb_al_ul > li.open > a,
.header #gnb_all .gnb_al_ul > li > a:hover,
.header #gnb_all .gnb_al_ul > li > a.active {border-bottom: 1px solid var(--primary); color: var(--primary); }
.header #gnb_all .gnb_al_ul > li.open > a::after,
.header #gnb_all .gnb_al_ul > li > a:hover::after,
.header #gnb_all .gnb_al_ul > li > a.active::after {border-right: 2px solid var(--primary); border-bottom: 2px solid var(--primary);}
.header #gnb_all .gnb_al_ul > li > a:hover svg circle,
.header #gnb_all .gnb_al_ul > li > a:hover svg path,
.header #gnb_all .gnb_al_ul > li > a.active svg circle,
.header #gnb_all .gnb_al_ul > li > a.active svg path {fill: var(--primary);}

.header.menu-open #gnb #gnb_1dul > ul li {color: #fff;}
.header.menu-open .mo-btn span,
.header.menu-open .mo-btn span:before,
.header.menu-open .mo-btn span:after  {background: var(--text1);}

.mo-btn{position:relative;width:30px;height:30px;cursor:pointer; display: none;}
.mo-btn span,
.mo-btn span:before,
.mo-btn span:after{display:block;position:absolute;left:0;width:100%;height:3px;background:#fff;transition:all 0.3s;}
.mo-btn span{top:50%;transform:translteY(-50%,-50%);}
.mo-btn span:before,
.mo-btn span:after{content:'';}
.mo-btn span:before{top:-10px;}
.mo-btn span:after{top:10px;}

.header.menu-open .mo-btn >span {background:transparent;}
.header.menu-open .mo-btn >span:before {top:0;transform:rotate(45deg);}
.header.menu-open .mo-btn >span:after {top:0;transform:rotate(-45deg);}

.header.menu-open #gnb_all {display: flex; transition: all 0.3s; overflow-y: scroll;-ms-overflow-style: none;  /* IE, Edge */ scrollbar-width: none;     /* Firefox */}
.header.menu-open #gnb_all::-webkit-scrollbar {display: none;}

footer {width: 100%; padding: 80px 0; background-color: var(--text1);}
footer .footer-t {display: flex; flex-direction: column; row-gap: 40px; padding-bottom: 40px; margin-bottom: 36px; border-bottom: 1px solid #414141;}
footer .footer-t > div {display: flex; column-gap: 40px; align-items: center;}
footer .footer-t > div a {color: #fff;}
footer .footer-t > div .sns {display: flex; align-items: center; column-gap: 12px;}
footer .footer-t > div .sns a {display: flex; align-items: center;}
footer .footer-t > div .sns svg {width: 30px; height: 30px;}
footer .footer-t > div .sns svg path {fill: var(--gray2);}
footer .footer-b {display: flex; justify-content: space-between; align-items: flex-end;}
footer .footer-b a,
footer .footer-b li {color: #fff; opacity: 0.6;}
footer .footer-b ul {width: 660px; display: flex; flex-wrap: wrap; column-gap: 28px; row-gap: 8px; padding-bottom: 24px;}
footer .footer-b ul li {position: relative;}
footer .footer-b ul li::after {position: absolute; width: 1px; height: 14px; background-color: var(--gray1); top: 50%; right: -14px; transform: translate(0, -50%); display: block; content: '';}
footer .footer-b ul li:nth-of-type(2):after,
footer .footer-b ul li:nth-of-type(4):after {display: none;}
footer .footer-b .admin a b{font-weight: 600; text-decoration: underline;}
footer .footer-t a:hover,
footer .footer-b .admin a:hover {color: var(--secondary); transition: all 0.3s;}
footer .footer-t > div .sns a:hover svg path {fill: var(--secondary); transition: all 0.3s;}

#top_btn {position:fixed;bottom:50px;right:8%;width:64px;height:64px;z-index: 999;display: flex; align-items: center; justify-content: center; border-radius: 50%; background-color: var(--secondary);}

/* 반응형 */
@media screen and (max-width: 1520px) {

}
@media screen and (max-width: 1280px) {

}
@media screen and (max-width: 1024px) {
    footer .footer-b {flex-direction: column-reverse; align-items: flex-start; row-gap: 30px;}
}
@media screen and (max-width: 768px) {
    .header .header-top {height: 60px;}
    .header .header-top .logo img {height: 32px;}

    .mo-btn {position: absolute; display: flex; right: 16px; top: 50%; transform: translate(0, -50%);}
    #gnb_all .mo-gnb-t .mo-btn {position: absolute; right: 16px; top: 50%; transform: translate(0, -50%);}
    #gnb_all .gnb_al_ul .gnb_al_li > ul {display: none; padding: 10px 0; border-bottom: 1px solid var(--line);}
    #gnb_all .gnb_al_ul .gnb_al_li > ul li a {width: 100%; padding: 10px 0; color: var(--text2); }
    #gnb_all .gnb_al_ul .gnb_al_li > a.active + ul {display: block;}

    footer .footer-b ul {width: 100%;}

    #top_btn {right: 4%;}

}
@media screen and (max-width: 600px) {

}
@media screen and (max-width: 500px) {
    .header .menu #gnb_1dul > ul > li > a {font-size: 3.2vw;}

    .mo-btn {width: 24px; height: 24px;}
    .mo-btn span,
    .mo-btn span:before,
    .mo-btn span:after {height: 2px;}
    .mo-btn span:after {top: 8px;}
    .mo-btn span:before {top: -8px;}

    footer {padding: 60px 0;}
    footer .footer-t {row-gap: 30px; padding-bottom: 30px; margin-bottom: 24px;}
    footer .footer-t .logo img {height: 30px;}
    footer .footer-t > div {column-gap: 20px; flex-wrap: wrap; row-gap: 12px;}
    footer .footer-t > div .sns {width: 100%;}
    footer .footer-b ul li:nth-of-type(3):after {display: none;}

    #top_btn {width: 54px; height: 54px; }
    #top_btn svg {width: 32px; height: 32px;}
}
@media screen and (max-width: 480px) {
}
@media screen and (max-width: 360px) {
}
@media screen and (max-width: 340px) {
    footer a,
    footer li {font-size: 15px;}
    footer .footer-t .logo img {height: 28px;}
}


/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/
/*************/