/* ========== base ========== */
html {scroll-behavior: smooth}
body {position: relative;margin: 0;font-size: 15px;padding: 0 !important;background-color: #fff}
p, li {word-break: keep-all}
ul {margin-bottom: 0}
strong {font-weight: 700}
a:hover {color:#1b1b1b}
.transition-03 {-webkit-transition: all 0.3s linear;-moz-transition: all 0.3s linear;-o-transition: all 0.3s linear;-ms-transition: all 0.3s linear;transition: all 0.3s linear}
/* 컬러 */
.color-primary {color: #ffa421}
.color-primary-green {color: #48A2B8}
.color-primary-dark {color: #521000}
.color-primary-light {color: #fff7e7}
/* 버튼 스타일 */
.btn-more a {display: inline-block;position:relative;padding-bottom: 5px;font-size: 15px;font-weight: 700;color: #333;border-bottom:4px solid #333}
.btn-more.btn-more-white a {color:#fff;border-color:#fff}
@media (min-width:992px){
	.btn-more a {border-bottom:4px solid rgba(0,0,0,.35)}
	.btn-more a:after {content:"";display: block;position: absolute;bottom: -4px;left: 0;width: 0;height: 4px;background-color: #333;transition:.5s}
	.btn-more.btn-more-white a {border-bottom:4px solid rgba(255,255,255,.35)}
	.btn-more.btn-more-white a:after {background-color: #fff}
	.btn-more a:hover:after {width: 100%}
}


.offcanvas-backdrop {z-index: 1003}
/* 편집 버튼 */
.btn-edit-admin {position:fixed;top:230px;right:-1px;width:130px;padding:5px 10px;background:rgba(255, 255, 255, 0.9);box-shadow:0 0 1px rgba(0,0,0,.7);z-index:1100}

/* ========== wrapper ========== */
#hd-h1 {position:absolute;font-size:0;text-indent:-9999em;line-height:0;overflow:hidden}
.to-content a {z-index:1000;position:absolute;top:0;left:0;width:0;height:0;font-size:0;line-height:0;overflow:hidden}
.wrapper {position: relative}
@media (max-width:991px){
	.wrapper {padding-top: 70px}
}

/* ========== Header ========== */
.header {position: relative;z-index: 999;padding: 20px 0;background-color: #fff}
@media (max-width:991px){
	.header .header-inner {display: flex;flex-wrap: wrap;justify-content: space-between;align-items:center}
}
@media (max-width:991px){
	.header {position: absolute;top:0;left: 0;width: 100%;box-shadow:0 0 5px rgba(0,0,0,.2)}
	.header#header-fixed {position: fixed}
}

/* header logo */
.header-logo a {display: block;position: relative}
.header-logo a img {display: block;height: 30px;width:auto}
@media (min-width:992px){
	.header-logo {margin-bottom: 30px}
	.header-logo a img {height: 40px}
}

/* nav-bar */
.gnb-wrap .gnb .gnb-nav {padding: 0;list-style: none}

.gnb-wrap .gnb .search-box {margin-bottom: 10px}
.gnb-wrap .gnb .search-box input[type="text"] {width: 100%;height: 45px;padding: 6px;font-size: 13px;color: #999;border: 0 none !important;border: 2px solid #1b1b1b !important}
.gnb-wrap .gnb .search-box .button {position: absolute;right: 5px;top: 0;padding: 0 5px;height: 45px;line-height: 45px;font-size: 15px;color: #1b1b1b;background: transparent;border: 0 none}
.gnb-wrap .gnb .search-box .button input {position: absolute;top: 0;right: 0;padding: 0;font-size: 12px;line-height: 40px;opacity: 0;cursor: pointer}
.gnb-wrap .gnb .search-box .button img {width: 20px;vertical-align: sub}

.gnb-wrap .gnb .gnb-nav > li:last-child {border-bottom: 0 none}
.gnb-wrap .gnb .gnb-nav > li:before {content:"";position: absolute;top: 20px;left: 0;z-index:-1;width: 100%;height: 1px;background-color: #eee}
.gnb-wrap .gnb .gnb-nav > li > a.nav-link {display: inline-block;padding: 8px 10px 8px;font-size: 15px;font-weight: 700;color: #333;background-color: #fff}
.gnb-wrap .gnb .gnb-nav > li > a.nav-link:after {display: none}
.gnb-wrap .gnb .gnb-nav > li.active > a.nav-link {color: #1b1b1b;background: transparent}
.gnb-wrap .gnb .gnb-nav > li > .cate-dropdown-open {position: absolute;top: 1px;right: 0;width: 30px;height: 38px;line-height: 38px;margin: 0;padding: 0;text-align: center;color:#ccc;border: 0 none;background-color: #fff;z-index: 9}
.gnb-wrap .gnb .gnb-nav > li > .cate-dropdown-open.show {color: #714d5e}
.gnb-wrap .gnb .gnb-nav > li > .gnb-dep-2 {display: none}
.gnb-wrap .gnb .gnb-nav > li > ul {float: none;position: relative !important;transform: translate(0,0) !important;width: 100%;margin: 0;padding: 0;border: 0 none;box-shadow: none;background-color: #eee}
.gnb-wrap .gnb .gnb-nav > li > ul > li {border-bottom: 1px solid #fff}
.gnb-wrap .gnb .gnb-nav > li > ul > li:last-child {border-bottom: 0 none}
.gnb-wrap .gnb .gnb-nav > li > ul > li > a {padding: 10px 20px;font-size: 12px;color: #333}
.gnb-wrap .gnb .gnb-nav > li > ul > li > a:hover {background: transparent}
.gnb-wrap .gnb .gnb-nav > li > ul > li.active > a {color: #1b1b1b;background: transparent}
.gnb-wrap .gnb .gnb-nav > li > ul > li > ul {display: block !important;float: none;position: relative;width: 100%;padding: 0 20px 10px;margin: 0;border: 0 none;box-shadow: none;background: transparent}
.gnb-wrap .gnb .gnb-nav > li > ul > li > ul > li > a {position: relative;padding: 3px 10px 3px 15px;font-size: 12px;color: #333}
.gnb-wrap .gnb .gnb-nav > li > ul > li > ul > li > a:after {content: "";display: block;position: absolute;top: 50%;left: 2px;transform:translateY(-50%);width: 7px;height: 7px;border-left: 1px solid #919ea1;border-bottom: 1px solid #919ea1}
.gnb-wrap .gnb .gnb-nav > li > ul > li > ul > li > a:hover, .gnb-wrap .gnb .gnb-nav > li > ul > li > ul > li.active > a {color: #1b1b1b;background: transparent}
/* 모바일 로고 & 로그인 박스 & 모바일 메뉴 버튼 */
.mobile-logo {display: flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom: 30px}
.mobile-logo img {height: 30px}
.login-box ul {display: flex;flex-wrap: wrap;margin-top: 30px;list-style: none}
.login-box ul li {margin-right: 10px}
.login-box ul li:last-child {margin-right: 0}
.login-box ul li a {display: block;position: relative;padding: 5px 12px;font-size: 11px;color: #fff;background-color: #714d5e;border-radius:13px;transition:.5s}
.login-box ul li a:hover {background-color: #1b1b1b}
.mobile-nav-trigger {display: block}
.mobile-nav-trigger img {width: 25px}
@media (max-width:991px){
	.gnb-wrap .gnb {padding: 20px 30px}
	.gnb-wrap .gnb.act {right: 0}
}
@media (min-width:992px){
	.mobile-logo,
	.mobile-nav-trigger {display: none}
}

/* ========== footer ========== */
.footer {position:relative;background-color: #1b1b1b}
.footer-top {position: relative;padding: 30px 0}
.footer-top .footer-logo a {display:block}
.footer-top .footer-logo a span {display:block;line-height:1.45em;font-size:40px;color:#fff}
.footer-top .footer-logo a img {display:block;max-height:30px}

.footer-top .footer-menu {display: flex;flex-wrap:wrap}
.footer-top .footer-menu li + li {margin-left: 5px}
.footer-top .footer-menu li a {font-size: 13px;color:#909090}
.footer-top .footer-menu li a:hover {color:#fff}

.footer-bottom {position: relative;padding: 30px 0 15px;border-top:1px solid #333}
.footer-bottom .footer-info {margin-bottom:15px}
.footer-bottom .footer-info address,
.footer-bottom .footer-info span {margin:0 15px 0 0;line-height: 1.5em;font-size: 13px;color:#909090}
.footer-bottom .footer-info span a {color:#909090}
.footer-bottom .footer-info span a:hover {color:#333}

.footer .copyright {padding-bottom: 20px;font-size: 13px;color:#909090}
@media (min-width:992px){
	.footer {padding:30px 50px;border-top-left-radius: 40px}
	.footer-top {display: flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end}
	.footer-top .footer-logo a img {max-height: 40px}
	.footer-bottom {display: flex;flex-wrap:wrap;justify-content:space-between}
}
@media (max-width:991px){
	.footer-top .footer-logo {margin-bottom:20px}
}

/*---------- Eb BackToTop ----------*/ 
.eb-backtotop {position:fixed;right:15px;bottom:15px;height:46px;width:46px;cursor:pointer;display:block;-webkit-border-radius:50% !important;-moz-border-radius:50% !important;border-radius:50% !important;box-shadow:inset 0 0 0 2px rgba(255,255,255,0.15);background:#fff;z-index:1003;opacity:0;visibility:hidden;transform:translateY(15px);-webkit-transition:all 0.2s linear;transition:all 0.2s linear} 
.eb-backtotop.active-progress {opacity:1;visibility:visible;transform:translateY(0)} 
.eb-backtotop:after {position:absolute;content:"\f106";font-family:'Font Awesome\ 5 Free';font-weight:900;text-align:center;font-size:16px;color:#757575;left:0;top:0;height:46px;width:46px;line-height:28px;cursor:pointer;display:block;z-index:1;-webkit-transition:all 0.2s linear;transition:all 0.2s linear} 
.eb-backtotop:hover:after {color:#cc2300} 
.eb-backtotop svg path {fill:none} 
.eb-backtotop svg.backtotop-progress path {stroke:#b5b5b5;stroke-width:4;box-sizing:border-box;-webkit-transition:all 0.2s linear;transition:all 0.2s linear} 
.eb-backtotop .progress-count {display:block;position:absolute;bottom:8px;left:0;right:0;font-size:11px;text-align:center;color:#a5a5a5} 
.eb-backtotop {box-shadow:inset 0 0 0 2px rgba(0,0,0,0.15)} 
.eb-backtotop:after {color:#2b2b2e} 
.eb-backtotop svg.backtotop-progress path {stroke:#1b1b1b} 

/* page title */
.page-title {position:relative;margin-bottom: 70px}
.page-title-image {position:relative;width:100%;height:260px;background-repeat:no-repeat;background-size:cover;background-position:center;border-bottom-left-radius:40px}
.page-title-caption {position:absolute;top: 50%;left:0;transform:translateY(-50%);width:100%;text-align: center}
.page-title-caption h2 {position:relative;margin-bottom: 15px;line-height: 1em;font-size:27px;font-weight: 500;color:#fff}
.page-title-caption ul {display: flex;justify-content:center}
.page-title-caption ul li {display: block;padding: 15px;font-size:13px;color:#fff;border-bottom:1px solid rgba(255,255,255,.5)}
.page-title-caption ul li a {color:#ccc}
.page-title-caption ul li a:hover {color:#fff}
.page-title-caption ul li.active {font-weight: 600;border-color:#fff}
@media(max-width:991px) {
	.page-title-image {height: 220px;border-bottom-left-radius:0}
	.page-title-caption {bottom: 40px}
	.page-title-caption h2 {margin-bottom: 10px;font-size: 26px}
	.page-title-caption ul li {padding: 5px}
}

/* basic body */
.sub-basic-body {padding: 0 20px 60px}
@media (min-width:1200px){
	.sub-basic-body {padding: 0 40px 80px}
}

/* pc 레이아웃 */
@media (min-width:992px){
	.wrapper-inner {max-width:1920px;margin:0 auto}
	.header {position: absolute;top: 0;width: 350px;height: 100%;padding: 30px 20px}
	.header#header-fixed {position: fixed}
	.basic-body,
	.page-title,
	.footer {width: calc(100% - 350px);margin-left: auto}
}
@media (min-width:1200px){
	.header {width: 400px;padding: 30px 40px}
	.basic-body,
	.page-title,
	.footer {width: calc(100% - 400px)}
}

/* ========== index ========== */
.main-scrollspy {z-index:1;position: fixed;top: 50%;right: 0;transform:translateY(-50%);padding-left:20px;background-color:rgba(255,255,255,.75);border-top-left-radius:10px;border-bottom-left-radius:10px}
.main-scrollspy .main-scrollspy-nav li {margin:20px 0}
.main-scrollspy .main-scrollspy-nav li a {display: block;position: relative;opacity:.85;padding-right:80px;font-size:12px;color:#999;transition:.3s}
.main-scrollspy .main-scrollspy-nav li a.active {opacity:1;color:#333}
.main-scrollspy .main-scrollspy-nav li a:before,
.main-scrollspy .main-scrollspy-nav li a:after {content:"";position: absolute;top:50%;transform:translateY(-50%);transition:.3s}
.main-scrollspy .main-scrollspy-nav li a:before {right:0;width:0px;height: 1px;background-color: #333}
.main-scrollspy .main-scrollspy-nav li a.active:before {width: 60px}
.main-scrollspy .main-scrollspy-nav li a:after {right:60px;width: 3px;height: 3px;background-color: #999;border-radius:50%}
.main-scrollspy .main-scrollspy-nav li a.active:after {right:55px;width: 13px;height: 13px;background-color:#fff;border:5px solid #333}
@media (max-width:991px){
	.main-scrollspy {display: none}
}

.section {position: relative;z-index:1}
.section-bg-gray {background-color: #ebeff3}
.section-bg-gray:before, 
.section-bg-gray:after {content:"";display:block;position:absolute;top:0;height:100%;width:1px;background:#ddd}
.section-bg-gray:before {left:60px}
.section-bg-gray:after {right:60px}
@media (max-width:991px){
	.section-bg-gray:before {left:15px}
	.section-bg-gray:after {right:15px}
}
@media (max-width:767px){
	.section-bg-gray:before,
	.section-bg-gray:after {display: none}
}

.section-z-2 {z-index:2}
.section-p-tb {padding-top: 60px;padding-bottom: 60px}
.section-m-tb {margin-top: 60px;margin-bottom: 60px}
@media (min-width: 992px){
	.section-relat {position: relative;overflow:hidden;height: 100vh}
	.section-absol {position: absolute;top: 0;left: 0;width: 100%;height: 100%}
	.section-p-tb {padding-top: 100px;padding-bottom: 100px}
	.section-p-tb.section-last {padding-bottom:100px}
	.section-m-tb {margin-top: 100px;margin-bottom: 100px}
	.section-lg-p-lr {padding-left:30px;padding-right: 30px}
}
/* 페이지 로더 */
.page-loader {position: fixed;top: 0;left: 0;z-index: 9999;width: 100%;height: 100%;background: #fff}
.page-loader .logo-loader {position: absolute;top: 50%;left: 50%;transform:translate(-50%,-50%)}
.page-loader .logo-loader img {height:40px}
.page-loader.sub-page-loader {background:transparent}
.page-loader.sub-page-loader .logo-loader {display: none}

/* 편집모드 오버레이 */
.adm-edit-btn {z-index:10}
.overlay-area {display: flex;align-items:center;justify-content:center;z-index:1;position:absolute;top: 0;left: 0;right: 0;bottom: 0;width: 100%;height: 100%;padding: 30px;font-size: 20px;color:#fff}
.overlay-master {background-color: rgba(255,0,0,.7)}
.overlay-item {background-color: rgba(0,0,255,.7)}

/*---------- Counsel Btn ----------*/
.counsel-btn {display:block;position:fixed;bottom:70px;right:15px;width:45px;height:45px;line-height:45px;text-align:center;background:#3f4678;font-size:1.125rem;color:#fff !important;border:0;border-radius:50%;z-index:1000}
@media (max-width:991px) {
	.counsel-btn {bottom:15px;right:70px}
}