@charset "utf-8";

/*-------------------------------------------------------------------
	분류그룹 : 공통
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
body.action,
body.open-sitemap,
body.open-mobile {overflow:hidden;height: 100%;}
#wrap {overflow:hidden; position:relative; min-height:100%; background: #fff;}

.con-area {display:block; width:100%; max-width: 1600px; margin:0 auto; padding: 0 20px;}
.con-area:after{content:"";display:block;clear:both;}

/* heading titles */
.h2 {display:block; position: relative; margin-bottom: 30px; border-bottom: 1px solid #dddddd; font-weight: 700; font-size: 2.25rem; color: #000;}
.h2:not(:last-child) {margin-bottom: 0;}
.h3 {display:block; position: relative; margin-bottom: 20px; padding-left: 15px; font-weight: 700; font-size: 1.75rem; color: #000;}
.h3::before {content:""; position: absolute; top: 15%; left: 0; width: 6px; height: 70%; background-color: #6667ab;}
.h4 {display:block; position: relative; margin-bottom: 15px; padding-left: 10px; font-weight: 600; font-size: 1.5rem; color: #000;}
.h4::before {content:""; position: absolute; top: 15%; left: 0; width: 7px; height: 7px; background-color: #6667ab;}
.h5 {margin-bottom: 15px; font-weight: 600; font-size: 1.25rem; color: #000;}
.h6 {margin-bottom: 10px; font-weight: 500; font-size: 1.125rem; color: #000;}
/* //heading titles */

#container {position:relative; min-height: 100vh; padding-top: 91px; padding-left: 70px;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
	body.open-total {overflow:hidden;height: 100%;}
}
@media screen and (max-width: 800px) {
    #container {padding-top: 61px; padding-left: 0;}
	.con-area{padding: 0 15px;}
}




/*-------------------------------------------------------------------
	분류그룹 : header
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#header {position: absolute; top: 0; left: 0; z-index: 90; width: 100%; padding-left: 70px; box-shadow: 0 0 8px 0 rgba(0,0,0,0); background-color: #ffffff;}
#header .header-wrap {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; position: relative; height: 91px; padding: 0 75px; border-bottom: 1px solid #e9e9e9; -webkit-box-pack: justify; -moz-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center;}

/* 닫기 버튼 */
#header .btn-close {display: block; border: 0; background-color: transparent; cursor: pointer;}
#header .btn-close .icon {display: block; position: relative; width: 30px; height: 30px; border-radius: 4px;}
#header .btn-close .icon::before,
#header .btn-close .icon::after {content:""; position: absolute; top: 50%; left: 50%; width: 100%; height: 3px; border-radius: 1.5px; background-color: #343434;}
#header .btn-close .icon::before {transform: translate(-50%, -50%) rotate(45deg);}
#header .btn-close .icon::after {transform: translate(-50%, -50%) rotate(-45deg);}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#header {transition: box-shadow 0.3s;}
#header.follow {position: fixed; animation: follow 0.3s; box-shadow: 0 0 8px 0 rgba(0,0,0,0.2);}
.open-sitemap #header {z-index: 110;}

#header .btn-close .icon {transition: border-radius 0.5s, background 0.4s;}
#header .btn-close:focus .icon,
#header .btn-close:hover .icon {border-radius: 50%; background-color: #AD733E;}
#header .btn-close .icon::before,
#header .btn-close .icon::after {transition: width 0.4s, background 0.4s, transform 0.4s;}
#header .btn-close:focus .icon::before,
#header .btn-close:hover .icon::before {width: 65%; background-color: #ffffff; transform: translate(-50%, -50%) rotate(30deg);}
#header .btn-close:focus .icon::after,
#header .btn-close:hover .icon::after {width: 65%; background-color: #ffffff; transform: translate(-50%, -50%) rotate(-30deg);}

@keyframes follow {
	0% {transform: translateY(-100%);}
	100% {transform: translateY(0);}
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1600px) {
	#header .header-wrap {padding: 0 20px;}
}
@media screen and (max-width: 800px) {
	#header {padding-left: 0;}
	#header .header-wrap {height: 61px; padding: 0 15px;}
}


/*-------------------------------------------------------------------
	분류그룹 : header > logo
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#header .header-wrap #logo {display: block; padding-right: 30px; }
#header .header-wrap #logo .link {display: block;}
#header .header-wrap #logo .link > img {display: block; height: 45px;}
#header .header-wrap #logo .link:focus-visible {outline: 3px dashed #000000;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1200px) {
	#header .header-wrap #logo .link > img {height: 35px;}
}
@media screen and (max-width: 800px) {
	#header .header-wrap #logo {padding-right: 0;}
}
@media screen and (max-width: 600px) {
	#header .header-wrap #logo .link > img {height: 30px;}
}
@media screen and (max-width: 375px) {
	#header .header-wrap #logo .link > img {height: 25px;}
}


/*-------------------------------------------------------------------
	분류그룹 : header > gnb
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#header .header-wrap #gnb {display: block;}
#header .header-wrap #gnb .depth-01 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex;}
#header .header-wrap #gnb .depth-01 > li {display: block;}
#header .header-wrap #gnb .depth-01 > li .menu-01 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; position: relative; padding: 0 35px; height: 90px; font-weight: 600; font-size: 1.25rem; color: #000000; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center;}
#header .header-wrap #gnb .depth-01 > li .sub-menu {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; position: absolute; top: 100%; left: 0; width: 100%; padding: 50px 75px 30px; border-top: 1px solid #e9e9e9; min-height: 350px; background-color: #ffffff; box-shadow: 0 10px 10px 0 rgba(0,0,0,0.2);}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-info {display: block; width: 400px; flex-shrink: 0; padding-right: 30px;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-info .tit {display: block; margin-bottom: 45px; font-weight: 700; font-size: 2.25rem; color: #000000;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-info .txt {display: block; font-weight: 400; font-size: 1.0625rem; color: #555555;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con {display: block; -webkit-box-flex: 1; -ms-flex: 1; flex-grow: 1;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -15px; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li {display: block; width: 25%; margin-bottom: 30px; padding: 0 15px;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .menu-02 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; padding: 5px 15px; min-height: 45px; background-color: #F1F1F1; font-weight: 600; font-size: 1.0625rem; color: #000000; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 {display: block; padding-top: 10px; padding-left: 15px;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li {display: block;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03 {display: block; padding: 5px; font-weight: 400; font-size: 1rem; color: #555555;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#header .header-wrap #gnb .depth-01 > li .sub-menu {visibility: hidden; opacity: 0; transition: visibility 0s 0.3s, opacity 0.3s;}
#header .header-wrap #gnb .depth-01 > li .sub-menu.on {visibility: visible; opacity: 1; transition: visibility 0s 0s, opacity 0.3s;}

/* 1depth */
#header .header-wrap #gnb .depth-01 > li .menu-01 {transition: color 0.3s;}
#header .header-wrap #gnb .depth-01 > li .menu-01:focus-visible {outline-color: transparent; color: #AD733E}
#header .header-wrap #gnb .depth-01 > li .menu-01:focus-visible::before {content:""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 3px dashed #000000; box-sizing: border-box;}
#header .header-wrap #gnb .depth-01 > li .menu-01:hover,
#header .header-wrap #gnb .depth-01 > li .menu-01.active {color: #AD733E;}
/* 2depth */
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .menu-02 {transition: background 0.3s, color 0.3s;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .menu-02:focus {background-color: #ffffff; color: #AD733E; outline: 2px dashed #000000;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .menu-02:hover,
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .menu-02.active {background-color: #AD733E; color: #ffffff;}
/* 3depth */
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03 {transition: background 0.3s, color 0.3s;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03:focus {outline: 2px dashed #000000;}
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03:focus,
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03:hover,
#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li .depth-03 > li .menu-03.active {color: #AD733E;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1600px) {
	#header .header-wrap #gnb .depth-01 > li .menu-01 {padding: 0 25px;}
	#header .header-wrap #gnb .depth-01 > li .sub-menu {padding: 30px 20px 30px;}
	#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-info {width: 300px;}
	#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 {margin: 0 -10px;}
	#header .header-wrap #gnb .depth-01 > li .sub-menu .sub-con .depth-02 > li {padding: 0 10px;}
}
@media screen and (max-width: 1200px) {
	#header .header-wrap #gnb .depth-01 > li .menu-01 {font-size: 1.125rem;}
}
@media screen and (max-width: 1024px) {
	#header .header-wrap #gnb {display: none;}
}


/*-------------------------------------------------------------------
	분류그룹 : header > utils
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#header #utils {display: block; padding-left: 30px;}
#header #utils .list {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -10px;}
#header #utils .list > li {display: block; padding: 0 10px;}
#header #utils .list > li.type-pc {display: block;}
#header #utils .list > li.type-mobile {display: none;}
#header #utils .list > li .btn-total {display: block; position: relative; width: 30px; height: 30px; border-radius: 4px; background-color: #ffffff; background-image: url(../images/common/i_search.svg); background-repeat: no-repeat; background-size: 24px; background-position: center;}
#header #utils .list > li .btn-menu {display: block; overflow: hidden; position: relative; width: 30px; height: 30px; background-color: #ffffff; background-image: url(../images/layout/i_btn_gnb.svg); background-repeat: no-repeat; background-size: 24px; background-position: center;}
#header #utils .list > li .btn-menu.btn-sitemap {display: block;}
#header #utils .list > li .btn-menu.btn-mobile {display: none;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#header #utils .list > li .btn-total {transition: border-radius 0.5s, background 0.4s;}
#header #utils .list > li .btn-total:focus,
#header #utils .list > li .btn-total:hover {border-radius: 50%; background-color: #5072E6; background-image: url(../images/common/i_search_wh.svg); background-size: 26px; background-position: right bottom;}

#header #utils .list > li .btn-menu {transition: border-radius 0.5s, background 0.4s;}
/* #header #utils .list > li .btn-menu:focus {outline: 3px solid #000000;} */
#header #utils .list > li .btn-menu:focus,
#header #utils .list > li .btn-menu:hover {background-image: url(../images/layout/i_btn_gnb_on.svg);}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
	#header #utils .list > li .btn-menu.btn-sitemap {display: none;}
	#header #utils .list > li .btn-menu.btn-mobile {display: block;}
}
@media screen and (max-width: 800px) {
	#header #utils {padding-left: 0;}
	#header #utils .list > li.type-pc {display: none;}
	#header #utils .list > li.type-mobile {display: block;}
	#header #utils .list > li .btn-total {width: 24px; height: 24px; background-size: 20px;}
	#header #utils .list > li .btn-total:focus,
	#header #utils .list > li .btn-total:hover {background-size: 19px;}
	#header #utils .list > li .btn-menu {width: 24px; height: 24px; background-size: 20px;}
}
@media screen and (max-width: 600px) {
	#header #utils .list {margin: 0 -5px;}
	#header #utils .list > li {padding: 0 5px;}
}
@media screen and (max-width: 375px) {
	#header #utils .list > li .btn-total {width: 24px; height: 24px;}
	#header #utils .list > li .btn-menu {width: 24px; height: 24px; background-size: 20px;}
}




/*-------------------------------------------------------------------
	분류그룹 : header > sitemap & mobile 공통
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#modal-ui {visibility: hidden; position: fixed; top: 0; left: 0; z-index: 200; width: 100%; height: 100%; transition: visibility 0s 0.3s;}
#modal-ui.active {visibility: visible; transition: visibility 0s 0s;}
#modal-ui .bg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0); transition: background 0.3s;}
#modal-ui.active .bg {background-color: rgba(0,0,0,0.7);}




/*-------------------------------------------------------------------
	분류그룹 : header > sitemap
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#sitemap {display: block; position: absolute; top:0; left:0; z-index:100; width:100%; height:100%; background-color:#ffffff;}
#sitemap .content-box {display: block; height: 100%;}
#sitemap .content-box .con-head {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; height: 90px; margin: 0 100px; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -moz-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;}
#sitemap .content-box .con-head .logo {display: block;}
#sitemap .content-box .con-head .logo > img {display: block;}
#sitemap .content-box .con-head .btn-sitemap-close {}
#sitemap .content-box .con-head .btn-sitemap-close .icon {width: 36px; height: 36px;}
#sitemap .content-box .con-head .btn-sitemap-close .icon::before,
#sitemap .content-box .con-head .btn-sitemap-close .icon::after {height: 4px; border-radius: 2px;}

#sitemap .content-box .con-body {display: block; overflow-x: hidden; overflow-y: auto; height: calc(100% - 90px); padding: 100px 100px 50px;}
#sitemap .content-box .con-body::-webkit-scrollbar {width: 10px; box-sizing: content-box;}
#sitemap .content-box .con-body::-webkit-scrollbar-thumb {height: 30%; border-radius: 10px; background: rgba(173, 115, 62, 0.8);}
#sitemap .content-box .con-body::-webkit-scrollbar-track {padding: 0 5px; border-radius: 10px; background: #e4e4e4;}
#sitemap .content-box .con-body .depth-01 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -50px; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#sitemap .content-box .con-body .depth-01 > li {display: block; position: relative; width: 25%; margin-bottom: 50px; padding: 0 50px;}
#sitemap .content-box .con-body .depth-01 > li::before {content:""; position: absolute; top: 0; left: 0; width: 1px; height: 100%; background-color: #e9e9e9;}
#sitemap .content-box .con-body .depth-01 > li:nth-child(5n + 1)::before,
#sitemap .content-box .con-body .depth-01 > li:first-child::before {display: none;}
#sitemap .content-box .con-body .depth-01 > li .menu-01 {display: block; position: relative; margin-bottom: 30px; padding: 5px 0 10px; border-bottom: 2px solid #000000; font-weight: 700; font-size: 2rem; color: #000000;}
#sitemap .content-box .con-body .depth-01 > li .menu-01::before {content:""; position: absolute; top: calc(50% - 1.5px); right: 0; width: 15px; height: 3px; background-color: #AD733E;}
#sitemap .content-box .con-body .depth-01 > li .menu-01::after {content:""; position: absolute; top: calc(50% - 7.5px); right: 6px; width: 3px; height: 15px; background-color: #AD733E;}
#sitemap .content-box .con-body .depth-01 > li .menu-01 > span {display: inline-block; position: relative;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 {display: block;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li {display: block;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02 {display: block; font-weight: 600; font-size: 1.2rem; color: #333333;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 {display: block; padding-top: 10px; padding-left: 10px;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li {display: block;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03 {display: block; position: relative; padding: 5px 5px 5px 15px; color: #666666;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03::before {content:""; position: absolute; top: calc(0.65rem + 2px); left: 0; width: 4px; height: 4px; border-radius: 50%; background-color: #666666;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#sitemap {opacity: 0; transition: opacity 0.4s;}
#sitemap.on {opacity: 1;}
#sitemap .content-box .con-body .depth-01 > li .menu-01 {transition: color 0.3s;}
#sitemap .content-box .con-body .depth-01 > li .menu-01:focus,
#sitemap .content-box .con-body .depth-01 > li .menu-01:hover,
#sitemap .content-box .con-body .depth-01 > li .menu-01.active {color: #AD733E;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02 {transition: color 0.3s;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02:focus,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02:hover,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02.active {color: #AD733E;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03 {transition: color 0.3s;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:focus,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:hover,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03.active {color: #AD733E;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03::before {transition: background 0.3s;}
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:focus::before,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:hover::before,
#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03.active::before {background-color: #AD733E;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1700px) {
	#sitemap .content-box .con-head {margin: 0 50px;}
	#sitemap .content-box .con-body {padding: 80px 50px 50px;}
	#sitemap .content-box .con-body .depth-01 {margin: 0 -30px;}
	#sitemap .content-box .con-body .depth-01 > li {padding: 0 30px;}
	#sitemap .content-box .con-body .depth-01 > li .menu-01 {font-size: 1.625rem;}
	#sitemap .content-box .con-body .depth-01 > li .depth-02 > li .menu-02 {font-size: 1.375rem;}
}
@media screen and (max-width: 1400px) {
	#sitemap .content-box .con-body .depth-01 {margin: 0 -20px;}
	#sitemap .content-box .con-body .depth-01 > li {padding: 0 20px;}
}
@media screen and (max-width: 1200px) {
	#sitemap .content-box .con-head {margin: 0 20px;}
	#sitemap .content-box .con-body {padding: 40px 20px;}
}
@media screen and (max-width: 1024px) {
	#sitemap {display: none;}
}




/*-------------------------------------------------------------------
	분류그룹 : header > mobile
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#mobile {position: absolute; top:0; right: -80%; z-index:100; width:80%; height:100%; background-color: #ffffff;}
#mobile .con-head {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; height: 61px; padding: 0 15px; border-bottom: 1px solid #e9e9e9; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -moz-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;}
#mobile .con-head .logo {display: block;}
#mobile .con-head .logo > img {display: block; height: 30px;}
#mobile .con-head .utils {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -8px;}
#mobile .con-head .utils > li {display: block; padding: 0 8px;}
#mobile .con-head .utils > li .btn-total {display: block; width: 30px; height: 30px; background-color: #ffffff; background-image: url(../images/common/i_search.svg); background-repeat: no-repeat; background-size: 24px; background-position: center;}
#mobile .con-body {display: block; overflow-x: hidden; overflow-y: auto; height: calc(100% - 61px);}
#mobile .con-body::-webkit-scrollbar {width: 10px; box-sizing: content-box;}
#mobile .con-body::-webkit-scrollbar-thumb {height: 30%; border-radius: 10px; background: rgba(173, 115, 62, 0.8);}
#mobile .con-body::-webkit-scrollbar-track {padding: 0 5px; border-radius: 10px; background: #e4e4e4;}
#mobile .con-body .depth-01 {display: block;}
#mobile .con-body .depth-01 > li {display: block;}
#mobile .con-body .depth-01 > li .menu-01 {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; height: 50px; padding: 0 15px; border-bottom: 1px solid #e9e9e9; font-weight: 600; font-size: 1.25rem; color: #000000; -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-items: center;}
#mobile .con-body .depth-01 > li .menu-01 > span {display: block; width: 100%; position: relative; padding-right: 20px;}
#mobile .con-body .depth-01 > li .depth-02 {display: none; padding: 8px 15px; border-width: 1px 0; border-style: solid; border-color: #e9e9e9; background-color: #f7f4f1;}
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02 {display: block; position: relative; padding: 8px 8px 8px 10px; font-weight: 600; font-size: 1.125rem;}
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02::before {content:""; position: absolute; top: calc(50% - 2px); left: 0; width: 4px; height: 4px; border-radius: 50%; background-color: #000000;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 {display: block; padding-left: 10px;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li {display: block;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03 {display: block; position: relative; padding: 5px 5px 5px 8px; font-weight: 600; font-size: 1rem; color: #666666;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03::before {content:""; position: absolute; top: calc(50% - 2px); left: 0; width: 4px; height: 2px; background-color: #666666;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#mobile {opacity: 0; transition: right 0.4s, opacity 0.4s;}
#mobile.on {right: 0; opacity: 1;}

#mobile .con-head .utils > li .btn-total {transition: border-radius 0.5s, background 0.4s;}
#mobile .con-head .utils > li .btn-total:focus,
#mobile .con-head .utils > li .btn-total:hover {border-radius: 50%; background-color: #5072E6; background-image: url(../images/common/i_search_wh.svg); background-size: 26px; background-position: right bottom;}
/* 1depth */
#mobile .con-body .depth-01 > li .menu-01 {transition: background 0.3s, color 0.3s;}
#mobile .con-body .depth-01 > li .menu-01:focus {position: relative; outline-color: transparent;}
#mobile .con-body .depth-01 > li .menu-01:focus::before {content:""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 3px dashed #000000; box-sizing: border-box;}
#mobile .con-body .depth-01 > li .menu-01:focus,
#mobile .con-body .depth-01 > li .menu-01:hover {color: #AD733E;}
#mobile .con-body .depth-01 > li .menu-01.on {background-color: #AD733E; color: #ffffff;}

#mobile .con-body .depth-01 > li .menu-01.fold > span::before {content:""; position: absolute; top: calc(50% - 1px); right: 0; width: 14px; height: 2px; background-color: #000000;}
#mobile .con-body .depth-01 > li .menu-01.fold > span::after {content:""; position: absolute; top: calc(50% - 7px); right: 6px; width: 2px; height: 14px; background-color: #000000;}
#mobile .con-body .depth-01 > li .menu-01.fold.on > span::before {background-color: #ffffff;}
#mobile .con-body .depth-01 > li .menu-01.fold.on > span::after {display: none;}
/* 2depth */
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02 {transition: color 0.3s;}
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02:focus,
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02:hover {color: #AD733E;}
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02::before {transition: background 0.3s;}
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02:focus::before,
#mobile .con-body .depth-01 > li .depth-02 > li .menu-02:hover::before {background-color: #AD733E;}
/* 3depth */
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03 {transition: color 0.3s;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:focus,
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:hover {color: #AD733E;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03::before {transition: background 0.3s;}
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:focus::before,
#mobile .con-body .depth-01 > li .depth-02 > li .depth-03 > li .menu-03:hover::before {background-color: #AD733E;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 800px) {
	#mobile .con-head .utils > li .btn-total {width: 24px; height: 24px; background-size: 20px;}
	#mobile .con-head .utils > li .btn-total:focus,
	#mobile .con-head .utils > li .btn-total:hover {background-size: 19px;}
	#mobile .con-head .utils > li .btn-close .icon {width: 24px; height: 24px;}
}
@media screen and (max-width: 600px) {
	#mobile {width: 100%;}
}
@media screen and (max-width: 375px) {
	#mobile .con-head .logo > img {height: 25px;}
}




/*-------------------------------------------------------------------
	분류그룹 : 통합검색
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#total {display: block; position: relative; z-index: 100;}
#total .total-box {display: block; position: fixed; top: 0; left: 0; max-width: 1024px; width: 50%; height: 100%; padding-right: 70px; background-color: #ffffff; box-shadow: 0 0 8px 5px rgba(0,0,0,0.3);}
#total .total-box .handle {display: block; overflow: hidden; position: absolute; top: 0; right: 0; width: 70px; height: 100%;}
#total .total-box .handle .btn-total {display: block; position: relative; width: 100%; height: 100%; border-right: 4px solid #AD733E; background: linear-gradient(90deg, #265A83 0%, #003863 100%);}
#total .total-box .handle .btn-total .txt {display: block; position: absolute; top: 50%; left: 50%; padding: 0 50px 0 30px; font-weight: 600; font-size: 1rem; color: #ffffff; transform: translate(-50%, -50%) rotate(-90deg);}
#total .total-box .handle .btn-total .txt::before {content:""; display: block; position: absolute; top: calc(50% - 9px); left: 0; width: 9px; height: 9px; border-width: 0 0 2px 2px; border-style: solid; border-color: #ffffff; box-sizing: border-box; transform: rotate(-45deg);}
#total .total-box .handle .btn-total .txt::after {content:""; position: absolute; top: calc(50% - 15px); right: 0; width: 30px; height: 30px; border-radius: 50%; background: #AD733E url(../images/common/i_search_wh.svg) no-repeat center; background-size: 18px;}

#total .total-box .box-wrap {display: block; overflow-x: hidden; overflow-y: auto; max-height: 100%; padding: 30px; border-right: 1px solid #e9e9e9;}
#total .total-box .box-wrap::-webkit-scrollbar {width: 10px; box-sizing: content-box;}
#total .total-box .box-wrap::-webkit-scrollbar-thumb {height: 30%; border-radius: 10px; background: rgba(173, 115, 62, 0.8);}
#total .total-box .box-wrap::-webkit-scrollbar-track {padding: 0 5px; border-radius: 10px; background: #e4e4e4;}
#total .total-box .box-wrap .con-head {display: block; margin-bottom: 50px;}
#total .total-box .box-wrap .con-head .title-box {display: block; margin-bottom: 40px; text-align: center;}
#total .total-box .box-wrap .con-head .title-box .logo {display:block; margin-bottom: 20px;}
#total .total-box .box-wrap .con-head .title-box .logo > img {display: inline-block; height: 45px; line-height: 1; vertical-align: middle;}
#total .total-box .box-wrap .con-head .title-box .tit {display: block; font-weight: 400; font-size: 1.5rem; line-height: 1;}
#total .total-box .box-wrap .con-head .title-box .tit > strong {display: inline-block; font-weight: 700; line-height: 1;}
#total .total-box .box-wrap .con-head .search-box {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; max-width: 500px; margin: 0 auto 20px; border-bottom: 2px solid #000000;}
#total .total-box .box-wrap .con-head .search-box .search-bar {display: block; -webkit-box-flex: 1; -ms-flex: 1; flex-grow: 1;}
#total .total-box .box-wrap .con-head .search-box .search-bar .in-total {display: block; width: 100%; padding: 0 15px; border: 0; line-height: 45px;}
#total .total-box .box-wrap .con-head .search-box .btn-total-submit {display: block; width: 45px; height: 45px; border-radius: 4px; background: #ffffff url(../images/common/i_search.svg) no-repeat center; background-size: 24px;}
#total .total-box .box-wrap .con-head .search-list {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; flex-shrink: 0; -webkit-box-pack: center; -moz-justify-content: center; -ms-flex-pack: center; justify-content: center;}
#total .total-box .box-wrap .con-head .search-list .tit {display: block; padding: 6px 30px 6px 6px; flex-shrink: 0;}
#total .total-box .box-wrap .con-head .search-list .list-wrap {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#total .total-box .box-wrap .con-head .search-list .list-wrap > li {display: block; padding: 0 5px 5px;}

#total .total-box .box-wrap .con-body {display: block;}
#total .total-box .box-wrap .con-body .search-filter {display: block; margin-bottom: 50px; border-top: 1px solid #000000;}
#total .total-box .box-wrap .con-body .search-filter .filter-item {display: block; padding: 20px; border-bottom: 1px solid #000000;}
#total .total-box .box-wrap .con-body .search-filter .filter-item .tit {display: block; margin-bottom: 15px; font-size: 1.5rem;}
#total .total-box .box-wrap .con-body .search-filter .filter-item .item-con {display: block;}
#total .total-box .box-wrap .con-body .search-filter .filter-item .item-con .label-list > li {padding: 5px 0;}
#total .total-box .box-wrap .con-body .search-filter .filter-item .item-con .intxt,
#total .total-box .box-wrap .con-body .search-filter .filter-item .item-con .sel {display: block; width: 100%;}

#total .total-box .box-wrap .con-body .search-btn-wrap {margin: 0 -10px; -webkit-box-pack: center; -moz-justify-content: space-between; -ms-flex-pack: center; justify-content: center;}
#total .total-box .box-wrap .con-body .search-btn-wrap .g-item {padding: 0 10px;}
#total .total-box .box-wrap .con-body .search-btn-wrap .g-item .btn {display: block; width: 200px;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
/* .open-sitemap #total .total-box,
.open-mobile #total .total-box {z-index: 80;} */
#total .total-box {transition: padding 0.4s, transform 0.4s cubic-bezier(.4,.12,.74,.88); transform: translateX(calc(-100% + 70px));}
#total.on .total-box {padding-right: 50px; transform: translateX(0);}

#total .total-box .handle {transition: width 0.4s;}
#total.on .total-box .handle {width: 50px;}
#total .total-box .handle::before {content:""; opacity: 0; position: absolute; top: -25px; z-index: 10; width: 100%; height: 50px; background-color: rgba(255,255,255,0.3); transform: skew(70deg); animation: bling01 1s 0.3s;}
#total .total-box .handle::after {content:""; opacity: 0; position: absolute; top: -25px; z-index: 10; width: 100%; height: 50px; background-color: rgba(255,255,255,0.5); transform: skew(70deg); animation: bling01 1s 0.35s;}

#total .total-box .handle .btn-total .txt::before {animation: upAndDown 0.5s infinite alternate-reverse;}

#total.on .total-box .handle .btn-total {border-right: 0; background: #ffffff;}
#total.on .total-box .handle .btn-total .txt {color: #000000;}
#total.on .total-box .handle .btn-total .txt::before {top: calc(50% - 3px); border-width: 2px 2px 0 0; border-color: #000000;}
#total.on .total-box .handle .btn-total .txt::after {background-image: url(../images/common/i_close.svg); background-size: 24px;}

#total .total-box .box-wrap .con-head .search-box .btn-total-submit {transition: background 0.3s;}
#total .total-box .box-wrap .con-head .search-box .btn-total-submit:focus,
#total .total-box .box-wrap .con-head .search-box .btn-total-submit:hover {background-color: #AD733E; background-image: url(../images/common/i_search_wh.svg);}

@media screen and (min-width: 1025px) {
	#total .total-box:not(.on) {animation: aniUp 0.4s;}
}
@keyframes aniUp {
	0% {transform: translateX(calc(-100%));}
	100% {transform: translateX(calc(-100% + 70px));}
}

@keyframes bling01 {
	0% {top: -100px; opacity: 0;}
	50% {opacity: 1;}
	90% {opacity: 0;}
	100% {top: 100%;}
}

@keyframes upAndDown {
	0% {transform: translateY(3px) rotate(-45deg);}
	100% {transform: translateY(-3px) rotate(-45deg);}
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1400px) {
	#total .total-box {width: 65%;}
	#total .total-box .box-wrap {padding: 20px;}
	#total .total-box .box-wrap .con-head .title-box .tit {font-size: 1.375rem;}
	#total .total-box .box-wrap .con-body .search-filter .filter-item {padding: 20px 15px;}
	#total .total-box .box-wrap .con-body .search-filter .filter-item .tit {font-size: 1.375rem;}
}
@media screen and (max-width: 1024px) {
	#total .total-box {width: 100%;}
	#total .total-box .box-wrap .con-head .title-box .tit {font-size: 1.25rem;}
}
@media screen and (max-width: 800px) {
	#total .total-box {box-shadow: none; transform: translateX(-100%);}
	#total .total-box .box-wrap .con-head {margin-bottom: 20px;}
	#total .total-box .box-wrap .con-head .title-box {margin-bottom: 20px;}
	#total .total-box .box-wrap .con-head .title-box .logo {margin-bottom: 15px;}
	#total .total-box .box-wrap .con-head .title-box .logo > img {height: 40px;}

	#total .total-box .box-wrap .con-body .search-filter {margin-bottom: 25px;}
	#total .total-box .box-wrap .con-body .search-filter .filter-item .item-con .label-list > li {margin-right: 5px;}
	#total .total-box .box-wrap .con-body .search-btn-wrap .g-item {width: 50%;}
	#total .total-box .box-wrap .con-body .search-btn-wrap .g-item .btn {width: 100%;}
}
@media screen and (max-width: 600px) {
	#total.on .total-box {padding-right: 35px;}
	#total.on .total-box .handle {width: 35px;}
	#total .total-box .box-wrap .con-head .title-box .logo {margin-bottom: 0;}
	#total .total-box .box-wrap .con-head .title-box .logo > img {height: 30px;}
	#total .total-box .box-wrap .con-head .title-box .tit {display: none;}
	#total .total-box .box-wrap .con-head .search-list {display: block;}
	#total .total-box .box-wrap .con-head .search-list .tit {padding: 0 0 10px;}
	#total .total-box .box-wrap .con-head .search-list .list-wrap {margin: 0 -5px;}
	#total .total-box .box-wrap .con-body .search-filter .filter-item {padding: 20px 0;}
}




/*-------------------------------------------------------------------
	분류그룹 : footer
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#footer {display: block; position: relative; padding-left: 70px; background-color: #1A2030;}
#footer .footer-wrap {display: block; padding: 30px 75px;}
#footer .footer-wrap::after {content:""; display: block; clear: both;} 
#footer .footer-wrap .con-head {display: block; float: left;}
#footer .footer-wrap .con-head .logo {display: block; padding-top: 4px;}
#footer .footer-wrap .con-head .logo > img {display: block;}
#footer .footer-wrap .con-body {display: block; overflow: hidden; padding: 4px 0 0 50px;}
#footer .footer-wrap .con-body .footer-menu {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -16px 5px; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#footer .footer-wrap .con-body .footer-menu > li {display: block; margin-bottom: 10px; padding: 0 16px;}
#footer .footer-wrap .con-body .footer-menu > li .menu-01 {display: block; font-weight: 600; font-size: 1rem; color: #ffffff;}
#footer .footer-wrap .con-body .address {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin: 0 -10px; color: #8c8f97; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#footer .footer-wrap .con-body .address > li {display: block; margin-bottom: 5px; padding: 0 10px;}
#footer .footer-wrap .con-body .address > li .txt {display: block; font-weight: 400; font-size: 1rem;}
#footer .footer-wrap .con-body .copyright {display: block; font-weight: 400; font-size: 1rem; color: #8c8f97;}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1600px) {
	#footer .footer-wrap {padding: 30px 20px;}
}
@media screen and (max-width: 1200px) {
	#footer .footer-wrap .con-head .logo > img {height: 35px;}
	#footer .footer-wrap .con-body {padding: 4px 0 0 30px;}
	#footer .footer-wrap .con-body .address {margin: 0 -5px;}
	#footer .footer-wrap .con-body .address > li {padding: 0 5px;}
}
@media screen and (max-width: 1024px) {
	#footer .footer-wrap .con-head {display: none;}
	#footer .footer-wrap .con-body {overflow: visible; padding: 0;}
	#footer .footer-wrap .con-body .footer-menu {margin: 0 -5px;}
	#footer .footer-wrap .con-body .footer-menu > li {padding: 0 5px;}
}
@media screen and (max-width: 800px) {
	#footer {padding-left: 0;}
	#footer .footer-wrap {padding: 25px 15px;}
}




/*-------------------------------------------------------------------
	분류그룹 : footer > 탑버튼
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
#topBtn {display: block; position:fixed; bottom:5vh; right:5vw; z-index:99; border-radius: 10px; transform: translateY(calc(5vh + 60px)); opacity: 0; transition: transform .3s ease-in-out, opacity .3s ease-in;}
#topBtn::before {content:""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 10px; background-color:rgba(152, 205, 255, 0.5);}
#topBtn::after {content:""; display:block; position: relative; width: 50px; height: 50px; border-radius: 10px; background:#5072E6; background-image: url(../images/layout/i_btn_top_arr.svg); background-size: 15px; background-position: center; background-repeat: no-repeat;}
#topBtn.action {transform: translateY(0);opacity: 1;}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
#topBtn:focus {outline: 3px solid #000000;}
#topBtn::before {animation: topBtn 1s; animation-direction: alternate; animation-iteration-count: infinite;}
@keyframes topBtn{
    0% {opacity: 0; transform: scale(1);}
    100% {opacity: 1; transform: scale(1.3);}
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 800px) {
    #topBtn {right: 15px;}
}
@media screen and (max-width: 425px) {
    #topBtn {bottom: 15px;}
    #topBtn::after {width: 40px; height: 40px;}
}
