/* 헤더 */
#header {z-index: 9; position: relative; height: 105px; transition: .3s all ease-in-out;}
#header .header-top {width: 100%; margin: 0 auto; height: 30px; color: #d0d0d0; background-color: transparent; font-size: 13px;}
#header .header-top .user-menu {display: flex; align-items: center; height: 100%; justify-content: flex-end; gap: 15px;}
#header .header-top .user-menu > a {position: relative;}
#header .header-top .user-menu > a:not(:last-child)::after {position: absolute; display: block; content: ''; height: 85%; width: 1px; background-color: #d0d0d0; top: 50%; right: -8px; transform: translateY(-40%);}
#header .header-wrap {display: flex; justify-content: space-between; align-items: center; height: 75px; padding-top: 0px; background-color: transparent; width: 100%; box-sizing: border-box;}
#header .header-wrap .logo {margin-right: 50px;}
#header .header-wrap .logo img {width: 155px;}
#header .header-wrap .gnb {display: flex; align-items: center; justify-content: space-between; height: 100%; width: calc(100% - 210px);}
#header .header-wrap .gnb > li {font-size: 18px; font-weight: 600; color: #fff; width: max-content;}
#header .header-wrap .gnb > li > a {padding-bottom: 36px; padding-right: 50px;}
#header .header-wrap .gnb > li:last-child > a {padding-right: 0;}
#header .header-wrap .gnb li .lnb {display: none; height: 332px; z-index: 3; position: absolute; top: 85px; width: 100%;}
#header .header-wrap .gnb li .lnb li {margin-bottom: 18px; font-size: 14px; color: #444; font-weight: 400;}
#header .header-wrap .gnb li .lnb li:last-child {margin-bottom: 0;}
#header .header-wrap .gnb li .lnb li a:hover {color: #e87026;}
#header .btn-mo-menu {display: none; width: 25px; height: 25px; position: relative; z-index: 9;}
#header .btn-mo-menu .bar {display: inline-block; width: 100%; height: 1px; margin: 3px 0; background-color: #fff; cursor: pointer;}
#header .dep2-layer {opacity: 0; visibility: hidden;; z-index: -2; position: absolute; width: 100%; background-color: #fdfdfd; height: 350px; top: 105px; left: 0; border-top: 1px solid #efefef; border-bottom: 1px solid #efefef; transition: .3s all ease-in-out;}

#header.active {background-color: #fff; transition: .3s all ease-in-out;}
#header.active .header-top {color: #333;}
#header.active .header-top .user-menu > a::after {background-color: #333;}
#header.active .gnb li {color: #333;}
#header.active .gnb li .lnb {display: block;}
#header.active .dep2-layer {opacity: 1; visibility: visible; z-index: 0; transition: .3s all ease-in-out;}

#mo_header {width: 100%; position: fixed; top: 0; left: 0; height: 100vh; z-index: -9999; visibility: hidden; opacity: 0;}
#mo_header .side-menu {float: right; width: 100%; height: 100vh; background-color: #fcfcfc; transform: translateX(100%); transition: .3s ease-in-out;}
#mo_header .side-layer {width: 100%; height: 100vh; background-color: rgba(0,0,0,0.5); position: absolute; top: 0; left: 0; display: none;}
#mo_header .side-menu .top {height: 70px; position: relative; padding: 20px 20px 0; display: flex; align-items: center; box-sizing: border-box;}
#mo_header .side-menu .top .logo img {width: 120px;}
#mo_header .side-menu .top .close {width: 28px; height: 28px;}
#mo_header .close .bar {width: 28px; height: 2px; background-color: #333; display: inline-block; position: absolute; top: 50%; right: 15px; cursor: pointer; transform: translateY(-50%);}
#mo_header .close .bar:nth-child(1) {transform: rotate(45deg);}
#mo_header .close .bar:nth-child(2) {transform: rotate(-45deg);}
#mo_header .side-menu .gnb li {width: 100%;; border-bottom: 1px solid #e1e1e1; font-size: 16px; box-sizing: border-box; cursor: pointer; font-weight: 600; color: #333;}
#mo_header .side-menu .gnb > li > a {width: 100%; display: block; padding: 20px;}
#mo_header .side-menu .gnb > li .lnb {display: none; width: 100%; background-color: #f3f3f3; color: #878787; border: none;}
#mo_header .side-menu .gnb > li .lnb li {border-bottom: 1px solid #e1e1e1; color: #666; font-weight: 500; padding: 15px 20px; font-size: 14px;}
#mo_header .side-menu .gnb > li .lnb li:last-child {border-bottom: none;}
#mo_header .side-menu .gnb > li .lnb li:focus, #mo_header .side-menu .gnb > li .lnb:active {color: #e87026;}
#mo_header .side-menu .gnb > li.active {color: #e87026;}
#mo_header .side-menu .gnb > li.active > .lnb {display: block;}
#mo_header .side-menu .contact {height: 50px; background-color: #e87026; text-align: center; border-bottom: 1px solid #e1e1e1;}
#mo_header .side-menu .contact a {display: inline-block; text-align: center; color: #e1e1e1; font-size: 16px; font-weight: 600; line-height: 50px;}
#mo_header.active {z-index: 999; visibility: visible; opacity: 1;}
#mo_header.active .side-layer {display: block;}
#mo_header.active .side-menu {transform: translateX(0); transition: .3s ease-in-out;}

/* 푸터 */
#footer {background-color: #1c1c1c;}
.footer-wrap {padding: 43px 0 35px; line-height: 150%; font-size: 13px; color: #fff;}
.footer-wrap .logo {margin-bottom: 33px;}
.footer-wrap .footer-info span {display: inline-block; margin-right: 10px;}
.footer-wrap .footer-info span:last-child {margin-right: 0;}
.footer-wrap .copyright {font-size: 12px; letter-spacing: -0.8px; font-weight: 300; opacity: 0.8;}
.footer-wrap .family-site {position: absolute; right: 0; top: 43px;}
.footer-wrap .family-site select {background-color: transparent; border: 1px solid #999; color: #999; height: 40px; line-height: 40px; width: 200px; padding: 0 10px; font-size: 14px;}
.foot_link{display: flex; padding: 20px 0; border-bottom: 1px solid #999; margin: auto; max-width: 1050px; width: 1050px;}
.foot_link a{margin-right: 40px; color: #fff; font-size: 16px; font-weight: 400}


@media all and (max-width: 1024px) {
    /* 헤더 */
    #header {height: 70px;}
    #header .header-top {display: none;}
    #header .header-wrap .gnb {display: none;}
    #header .header-wrap {padding: 20px 20px 0; height: 70px;}
    #header .header-wrap .logo img {width: 120px;}
    #header .btn-mo-menu {display: flex; flex-direction: column; justify-content: space-between;}

    #mo_header {display: block;}
    #mo_header .side-layer {display: block;}

    .footer-wrap {padding: 43px 20px 35px; box-sizing: border-box;}
    .foot_link{display: flex; padding: 20px; border-bottom: 1px solid #999; margin: auto; width: auto;}
    .foot_link a{margin-right: 40px; color: #fff; font-size: 16px; font-weight: 400; width: auto;}
}

@media all and (max-width:768px) {
    #header {height: 50px;}
    #header .header-wrap {height: 50px;}
}

@media all and (max-width: 568px) {
    #header .header-wrap {padding: 15px 15px 0; height: 50px;}
    #header .header-wrap .logo {margin-right: 0;}
    #header .header-wrap .logo img {width: 95px;}
    #header .btn-mo-menu {width: 22px; height: 22px;}
    #mo_header .side-menu .top {height: 50px; padding: 15px;}
    #mo_header .side-menu .top .logo img {width: 95px;}
    #mo_header .side-menu .top .close {width: 22px; height: 22px;}
    #mo_header .close .bar {width: 22px; height: 2px; right: 15px;}
    #mo_header .side-menu .gnb li {font-size: 14px;}
    #mo_header .side-menu .gnb > li > a {padding: 15px;}
    #mo_header .side-menu .gnb > li .lnb li {padding: 12px 15px; font-size: 13px;}
    #mo_header .side-menu .mo_btn {margin-top: 50px;}
    
    .footer-wrap {padding: 40px 20px 35px; box-sizing: border-box; line-height: 140%; font-size: 12px;}
    .footer-wrap .logo {margin-bottom: 25px;}
    .footer-wrap .logo img {width: 160px;}
    .footer-wrap .footer-info {margin-bottom: 15px;}
    .footer-wrap .copyright {font-size: 11px;}
    .footer-wrap .family-site {position: relative; margin-bottom: 10px; top: auto;}
    .footer-wrap .family-site select {height: 35px; line-height: 35px; font-size: 12px;}
    .foot_link{display: flex; padding: 10px 15px; border-bottom: 1px solid #999; margin: auto; width: auto;}
    .foot_link a{margin-right: 20px; color: #fff; font-size: 12px; font-weight: 400; width: auto;}

}

@media all and (max-width:320px) {
    .footer-wrap {padding: 35px 15px 30px; font-size: 11px;}
    .foot_link{display: flex; padding: 10px 15px; border-bottom: 1px solid #999; margin: auto; width: auto;}
    .foot_link a{margin-right: 20px; color: #fff; font-size: 12px; font-weight: 400; width: auto;}
}