
/*! TOP-MENU */
#header input { margin: 0px; padding: 0px; border: 0px currentColor; border-image: none; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; }
#header label, #header legend { text-decoration: none; display: inline-block; }
#header input[type=text] { -ms-ime-mode: active; }
#header ol, #header ul, #sitemap ol, #sitemap ul { list-style-type: none; margin:0 !important; padding:0 !important; }

#header .skip, #header .blind { background: none; margin: 0px; padding: 0px; width: 1px; height: 1px; color: transparent; line-height: 0; font-size: 3px; position: absolute; }
#header .blind { width: 0px; height: 0px; line-height: 0; overflow: hidden; font-size: 0px; position: absolute; }

#header .inner { margin: 0px auto; padding: 0px 20px; position: relative; max-width: 1440px; }

@media all and (min-width:992px) {
	#header #gnb_mobile, .mask_mobile  { display: none !important; }
}

@media all and (max-width:991px) {
	#header #gnb_pc, #header .bg_pc, #sitemap, .sitemapbg, #header .mask_pc { display: none !important; }
}

@media all and (max-width:767px) {
	#header .inner { padding: 0px 15px; }
}

#header { background: url("/images/common/top_back.png") repeat-x left bottom; transition:0.2s; width: 100%; position: fixed; z-index: 2000; }
#header .inner { transition:0.2s; }

/*! PC logo */
#header h1 { transition:0.2s; left: 20px; top: 50%; width: 400px; height: 70px; margin-top: -75px; position: absolute; z-index: 15; }
#header h1 a {background: url("/images/common/logo_400.png") no-repeat 0px 0px / cover; width: 100%; height: 100%; text-indent: -9999px; overflow: hidden; display: block; }

.fixed#header { background: url("/images/common/top_back_a.png") repeat-x left bottom; }
.fixed#header h1 { height: 0px; }
.fixed#header .toplink-pc { display:none; height: 0px; }
.active#header { background: url("/images/common/top_back_h.png") repeat-x left bottom; }

@media all and (max-width:991px) {
	#header { background: rgb(245, 247, 252); transition:0.2s; width: 100%; position: fixed; z-index: 2000; }
	.fixed#header { background: rgba(245, 247, 252, 0.9); }
	.fixed#header h1 { height: 0px; }
	.active#header { background: rgba(245, 247, 252, 1); }
	.toplink-pc { display:none; height: 0px; }
}

.toplink-pc { height:35px; margin:0; padding:0; }
.toplink-pc .tlk-1 { background:#fff; font-size:13px; font-weight: 400; line-height: 1.0em; color:#555; padding:10px 10px 11px; margin:0px; display: inline-block; border-right:1px solid #eee; border-bottom:1px solid #eee; border-left:1px solid #eee; }
.toplink-pc .tlk-2 { background:#fff; font-size:13px; font-weight: 400; line-height: 1.0em; color:#555; padding:10px 10px 11px; margin:0 0 0 -5px; display: inline-block; border-right:1px solid #eee; border-bottom:1px solid #eee; border-left:1px solid #eee; }
.toplink-pc .tlk-3 { background:#fff; font-size:13px; font-weight: 400; line-height: 1.0em; color:#555; padding:10px 10px 11px; margin:0 0 0 -5px; display: inline-block; border-right:1px solid #eee; border-bottom:1px solid #eee; border-left:1px solid #eee; }
.toplink-pc .tlk-1:hover { background:#edf0f4; color:#fff; margin:0px; border-right:1px solid #edf0f4; border-bottom:1px solid #edf0f4; border-left:1px solid #edf0f4; }
.toplink-pc .tlk-2:hover, .toplink-pc .tlk-3:hover { background:#edf0f4; color:#fff; margin:0 0 0 -5px; border-right:1px solid #edf0f4; border-bottom:1px solid #edf0f4; border-left:1px solid #edf0f4; }

.toplink-mo { width:100%; margin:0; padding:15px; }
.toplink-mo .tlk-1, .toplink-mo .tlk-2, .toplink-mo .tlk-3 { background:#474952; font-size:15px; font-weight: 400; text-align: center; line-height: 1.0em; color:#fff; padding:8px 15px 11px; margin-bottom:4px; display: inline-block; border-radius: 20px; border:0px solid #eee; }
.toplink-mo .tlk-1:hover, .toplink-mo .tlk-3:hover, .toplink-mo .tlk-3:hover { background:#2e3e83; color:#fff; margin-bottom:4px; }

#header .bg_pc { background: rgba(255, 255, 255, 1.0); left: 0px; top: 180px; width: 100%; height: 0px; overflow: hidden; display: none; position: absolute; border-bottom:1px solid #e3e3e3; }
#header .bg_pc::before { background: rgb(237, 240, 244); left: 0px; top: 0px; height: 0px; right: 0px; display: block; position: absolute; content: ""; }
.mask_pc { background: rgba(0, 0, 0, 0.0); left: 0px; top: 0px; right: 0px; bottom: 0px; display: none; position: fixed; z-index: 100; }

.fixed#header .bg_pc { top: 70px; }
.fixed#header .btn_box { margin-top: -13px; }

#gnb_pc { padding: 0px 50px 0px 0px; position: relative; z-index: 10; }
#gnb_pc .depth_01 > li { width: 20.0%; float: left; position: relative; }
#gnb_pc .depth_01 h2 { margin:0 !important; padding:0 !important; }
#gnb_pc .depth_01 h2 a { transition:0.1s; height: 70px; text-align: center; color: rgb(255, 255, 255); line-height: 70px !important; font-size: 20px; font-weight: 400; display: block; position: relative; }
#gnb_pc .depth_01 h2 a::after { background: rgb(252, 176, 64); border-radius: 0px; transition:0.2s; left: 50%; height: 5px; right: 50%; bottom: 0px; display: block; position: absolute; z-index: 10; content: ""; }
#gnb_pc .depth_01 h2.active a::after { left: 1px; right: 0px; }
#gnb_pc .depth_02 { transition:0.2s; left: 0px; top: 70px; width: 100%; border-left-color: rgba(227, 227, 227, 1.0); border-left-width: 1px; border-left-style: solid; display: none; position: absolute; border-bottom:1px solid #e3e3e3; }
#gnb_pc .depth_01 li:last-child .depth_02 { border-right-color: rgba(227, 227, 227, 1.0); border-right-width: 1px; border-right-style: solid; }
#gnb_pc .depth_01 h2.active + .depth_02 { background: rgba(255, 255, 255, 1.0) !important; }
#gnb_pc .depth_02 h3 { margin:0 !important; padding:0 !important; }
#gnb_pc .depth_02 h3 a { transition:0.1s; color: rgb(85, 85, 85); line-height: 1.0em; padding: 7px 10px; font-size: 16px; font-weight: 400; display: block; white-space: nowrap; position: relative;  }
#gnb_pc .depth_02 li:first-child h3 a { padding-top:35px !important; }
#gnb_pc .depth_02 li:last-child h3 a { padding-bottom:35px !important; }
#gnb_pc .depth_02 li:last-child h3 a:hover { padding-bottom:34px !important; }
#gnb_pc .depth_02 h3 a:hover { color: rgb(0, 0, 0); background: rgba(244, 246, 250, 1.0); padding: 7px 10px; }
#gnb_pc .depth_02 h3 a.arrow::after { background: url("/images/common/sp_new.png") no-repeat -356px -113px / 720px 400px; top: 50%; width: 8px; height: 14px; right: 25px; margin-top: -7px; display: block; position: absolute; content: ""; }
#gnb_pc .depth_02 h3 a.arrow:hover::after { background-position-x: -436px; }
#gnb_pc .depth_02 h3 a[target=_blank]::after { background: url("/images/common/sp_foundation02.png") no-repeat -192px -272px / 800px 480px; top: 50%; width: 16px; height: 16px; right: 20px; margin-top: -9px; display: block; position: absolute; content: ""; }

.fixed#header #gnb_pc .topbx { padding: 0px; height: 0px; overflow: hidden; }

#gnb_pc .topbx { transition:0.2s; height: 110px; text-align: right; right: -50px; padding-top: 35px; position: relative; }
#gnb_pc .topbx > div { vertical-align: top; display: inline-block; }
#gnb_pc .topbx .joblk { border-radius: 19px; background:#474952; font-size:13px; font-weight: 300; color:#fff; padding:5px 15px; margin-top:3px; margin-left: 1px; vertical-align: middle; display: inline-block; box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.0); }
#gnb_pc .topbx .joblk:hover { background:#3150a7; }
#gnb_pc .topbx .joblk img { width: 100%; display: block; }
#gnb_pc .topbx .memberbx a { padding: 0px 5px; height: 38px; color: rgb(51, 51, 51); line-height: 38px; font-size: 14px; font-weight: 400; vertical-align: top; display: inline-block; }
#gnb_pc .topbx .memberbx a:hover { color: rgb(102, 0, 53); }
#gnb_pc .topbx .memberbx .inbx i { margin-top:-3px !important; }
#gnb_pc .topbx .searchbx { background: rgb(255, 255, 255); margin: 0px 0px 0px 10px; border-radius: 19px; border: 1px solid rgb(187, 188, 192); border-image: none; width: 300px; height: 38px; text-align: left; padding-right: 40px; position: relative; box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.0); }
#gnb_pc .topbx .searchbx input[type='text'] { background: none; width: 100%; height: 34px; text-align: left; color: rgb(102, 102, 102); padding-left:20px; font-size: 14px; line-height: 1.0em; padding-top:0px; font-weight: 400; border: 0px solid #ddd !important; }
#gnb_pc .topbx .searchbx input[type='submit'] { background: url("/images/common/sp_new.png") no-repeat -29px -29px / 720px 400px; transition:transform 0.1s; top: 50%; width: 24px; height: 24px; right: 12px; text-indent: -9999px; overflow: hidden; margin-top: -11.5px; position: absolute; }
#gnb_pc .topbx .searchbx input[type='submit']:active { transform: scale(0.9); }

.active#header .depth_02 h3 a { animation:rise01 0.1s ease-in-out 0.1s both; }
.active#header .depth_02 > li:nth-child(2) h3 a { animation-delay: 0.12s; }
.active#header .depth_02 > li:nth-child(3) h3 a { animation-delay: 0.14s; }
.active#header .depth_02 > li:nth-child(4) h3 a { animation-delay: 0.16s; }
.active#header .depth_02 > li:nth-child(5) h3 a { animation-delay: 0.18s; }
.active#header .depth_02 > li:nth-child(6) h3 a { animation-delay: 0.2s; }
.active#header .depth_02 > li:nth-child(7) h3 a { animation-delay: 0.22s; }
.active#header .depth_02 > li:nth-child(8) h3 a { animation-delay: 0.24s; }
.active#header .depth_02 > li:nth-child(9) h3 a { animation-delay: 0.26s; }

#gnb_pc .topbx .snsbx a { background: url("/images/common/sp_new.png") no-repeat -265px -25px / 720px 400px; margin: 3px 0px 0px 5px; width: 31px; height: 30px; text-indent: 9999px; overflow: hidden; vertical-align: top; display: inline-block; }
#gnb_pc .topbx .snsbx a.faceb { background-position-x: -265px; }
#gnb_pc .topbx .snsbx a.insta { background-position-x: -345px; }
#gnb_pc .topbx .snsbx a.blog { background-position-x: -425px; }
#gnb_pc .topbx .snsbx a.utube { background-position-x: -500px; }

#header .btn_box { transform-origin: 100% 50%; transition:0.2s; top: 50%; right: 20px; margin-top: 42px; position: absolute; z-index: 2001;  }
#header .btn_box a { background: url("/images/common/sp_new_btn.png") no-repeat 0px 0px; transition:transform 0.1s; width: 32px; height: 26px; text-indent: -9999px; overflow: hidden; display: block; z-index:2001; }
#header .btn_box a:active { transform: scale(0.9); z-index:2001; }
#header .btn_box a.mopen.active { background-position: -186px -26px; width: 28px; height: 28px; transform: scale(0.9); z-index:2001; }
#header .btn_box a.mopen { display: none; }

@media all and (max-width:991px) { 
	#header .btn_box a.sitemap { display: none; z-index:2001; }
	#header .btn_box a.mopen { display: block; z-index:2001; }
	#header .btn_box a { background: url("/images/common/sp_new.png") no-repeat -105px -28px / 720px 400px; transition:transform 0.1s; width: 30px; height: 24px; text-indent: -9999px; overflow: hidden; display: block; z-index:2001; }
}

#sitemap { height:400px; border-radius: 15px; background: rgb(255, 255, 255); padding: 25px 25px 0px 25px; animation:rise01 0.25s 0.1s both; left: calc((100vw - 950px) /2); top: 25px; right: calc((100vw - 950px) /2); display: none; position: fixed; z-index: 2030; }
.sitemapbg { background: rgba(0, 0, 0, 0.5); left: 0px; top: 0px; right: 0px; bottom: 0px; display: none; position: fixed; z-index: 2020; }
#sitemap::before { background: rgb(210, 210, 210); left: 340px; top: 50px; height: 1px; right: 80px; display: block; position: absolute; content: ""; }

/*! Sitemap logo */
#sitemap .title { background: url("/images/common/logo_400.png") no-repeat 0px 0px / cover; width: 300px; height: 50px; margin-left:0px; text-indent: -9999px; overflow: hidden; }
#sitemap .close { background: url("/images/common/sp_new.png") no-repeat -186px -26px / 720px 400px; transition:transform 0.1s; top: 35px; right: 25px; width: 28px; height: 28px; text-indent: -9999px; overflow: hidden; display: block; position: absolute; }
#sitemap .close:active { transform: scale(0.9); }
#sitemap .depth_01 { height: calc(100% - 110px); padding: 0px; margin-top: 30px !important; -ms-overflow-y: auto; }
#sitemap .depth_01 > li { padding-left: 145px; position: relative; }
#sitemap .depth_01 > li + li { margin-top: 15px;  }
#sitemap .depth_01 h2 a { border-radius: 25px; border: 1px solid rgb(198, 203, 226); border-image: none; left: 0px; top: 0px; width: 120px; height: 40px; text-align: center; color: rgb(18, 11, 42); line-height: 38px; font-size: 15px; font-weight: 500; position: absolute; }
#sitemap .depth_01 h2 a:hover { border: 1px solid rgb(239, 98, 102); background: rgba(239, 98, 102); color: rgba(255, 255, 255); }
#sitemap .depth_02 { position: relative; }
#sitemap .depth_02::after { clear: both; display: table; content: ""; }
#sitemap .depth_02 li { padding-right: 20px; margin-bottom: 0px; float: left;  }
#sitemap .depth_02 li:nth-child(11n) { clear: both; }
#sitemap .depth_02 h3 { margin-bottom: 0px; }
#sitemap .depth_02 h3 a { height: 40px; color: rgb(41, 34, 67); line-height: 40px; font-size: 16px; font-weight: 400; display: block; position: relative; }
#sitemap .depth_02 h3 a:hover { color: rgb(239, 98, 102); font-weight: 500; }
#sitemap .depth_02 h3 a::after { background: rgb(255, 255, 255); border-radius: 0px; transition:0.1s; left: 0px; height: 2px; right: 0px; bottom: 0px; display: block; position: absolute; content: ""; }
#sitemap .depth_02 h3 a:hover::after { background: rgb(239, 98, 102); }
#sitemap .depth_02 li li { width: 100%; padding-left:4px; padding-right:0; }
#sitemap .depth_02 h4 a { width:100%; height: 30px; color: rgb(93, 91, 105); line-height: 30px; padding-left: 7px; font-size: 12px; font-weight: 400; display: block; position: relative; }
#sitemap .depth_02 h4 a::after { background: rgb(93, 91, 105); border-radius: 50%; left: 0px; top: 50%; width: 2px; height: 2px; margin-top: -1px; display: block; position: absolute; content: ""; }
#sitemap .depth_02 h4 a:hover { text-decoration: underline; }

#gnb_mobile { background: rgb(255, 255, 255); padding: 0px 0px 20px; transition:0.35s ease-in-out; top: 60px; width: 414px; height: calc(100% - 60px); right: -414px; font-family: "Noto Sans KR"; display: none; position: fixed; z-index: 50; -ms-overflow-y: auto; }
.mask_mobile { background: rgba(0, 0, 0, 0.5); left: 0px; top: 0px; right: 0px; bottom: 0px; display: none; position: fixed; z-index: 150; }
.active#gnb_mobile { right: 0%; }

#gnb_mobile .depth_02 { background: rgb(245, 245, 245); padding: 20px 20px 15px !important; margin:0 !important; display: none; }
#gnb_mobile .depth_03 { display: none; }
#gnb_mobile h2 a { height: 45px; color: rgb(17, 17, 17); line-height: 50px; padding-left: 20px; font-size: 20px; font-weight: 600; display: block; position: relative;  }
#gnb_mobile h2 a::after { border-width: 2px 2px 0px 0px; border-style: solid; border-color: rgb(35, 31, 32); transition:0.1s; border-image: none; top: 50%; width: 8px; height: 8px; right: 20px; margin-top: -4px; display: block; position: absolute; content: ""; transform: rotate(135deg); }
#gnb_mobile h2.active a { color: rgb(102, 0, 53); }
#gnb_mobile h2.active a::after { border-color: rgb(16, 75, 159); transform: rotate(-45deg); }
#gnb_mobile h3 a { border-radius: 0px; transition:0.2s; color: rgb(35, 31, 32); line-height: 16px; padding: 3px 0px; font-size: 16px; font-weight: 500; display: block; position: relative; z-index: 1; }
#gnb_mobile h3 a:hover { color: rgb(102, 0, 53); }
#gnb_mobile h3.has_depth a::after { border-width: 2px 2px 0px 0px; border-style: solid; border-color: rgb(35, 31, 32); transition:0.1s; border-image: none; top: 50%; width: 8px; height: 8px; right: 10px; margin-top: -4px; display: block; position: absolute; content: ""; transform: rotate(135deg); }
#gnb_mobile h3 a[target=_blank]::after { background: url("/images/common/sp_new.png") no-repeat -673px -193px / 720px 400px; top: 50%; width: 14px; height: 14px; right: 20px; margin-top: -7px; display: block; position: absolute; content: ""; transform: scale(0.85); }
#gnb_mobile h3.active a { background: rgb(16, 75, 159); color: rgb(255, 255, 255); padding-left:25px; }
#gnb_mobile h3.active a::after { border-color: rgb(255, 255, 255); transform: rotate(-45deg); right:30px; }
#gnb_mobile h3.active a::before { opacity: 1; }
#gnb_mobile .depth_03 { padding: 10px 0px 5px; }
#gnb_mobile h4 a { height: 30px; color: rgb(35, 31, 32); line-height: 30px; padding-left: 25px; font-size: 16px; font-weight: 500; display: block; }
#gnb_mobile h4 a::before { padding-right: 1px; content: "-"; }
#gnb_mobile h4.active a { color: rgb(16, 75, 159); }

#gnb_mobile .topbx { background: rgb(245, 245, 245); margin: 15px 15px 10px; border-radius: 23px; height: 45px; text-align: left; position: relative; }
#gnb_mobile .topbx input[type='text'] { background: none; width: 100%; height: 45px; text-align: left; color: rgb(35, 31, 32); padding-left: 20px; font-size: 15px; font-weight: 500; border: 0px solid #ddd !important; }
#gnb_mobile .topbx input[type='submit'] { background: url("/images/common/sp_new.png") no-repeat -29px -29px / 720px 400px; transition:transform 0.1s; top: 50%; width: 24px; height: 24px; right: 12px; text-indent: -9999px; overflow: hidden; margin-top: -11.5px; position: absolute; }
#gnb_mobile .topbx input[type='submit']:active { transform: scale(0.9); }

#gnb_mobile .mjbx { border-top: 1px solid #ddd !important; padding-left: 18px; margin-top: 0px; white-space: nowrap; }
#gnb_mobile .mjbx .memberbx { margin-top:5px; margin-bottom: 10px; display: block; }
#gnb_mobile .mjbx .memberbx a { padding: 0px 5px; height: 30px; color: rgb(103, 115, 121); line-height: 30px; font-size: 14px; font-weight: 400; vertical-align: top; display: inline-block; }
#gnb_mobile .mjbx .joblk { border-radius: 19px; width: 140px; margin-right: 20px; margin-left: 10px; vertical-align: top; float: right; display: inline-block; box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); }
#gnb_mobile .mjbx .joblk img { width: 100%; display: block; }
#gnb_mobile .mjbx .snsbx { margin-left: 3px; vertical-align: top; display: inline-block; }
#gnb_mobile .mjbx .snsbx a { background: url("/images/common/sp_new.png") no-repeat -265px -25px / 720px 400px; margin: -1px 0px 0px 2px; width: 31px; height: 30px; text-indent: 9999px; overflow: hidden; vertical-align: top; display: inline-block; transform: scale(0.8); }
#gnb_mobile .mjbx .snsbx a.faceb { background-position-x: -265px; }
#gnb_mobile .mjbx .snsbx a.insta { background-position-x: -345px; }
#gnb_mobile .mjbx .snsbx a.blog { background-position-x: -425px; }
#gnb_mobile .mjbx .snsbx a.utube { background-position-x: -500px; }


@media all and (max-width:1399px) {
	#gnb_pc .depth_02 h3 a { padding-left: 8px; font-size:15px !important; }
	#gnb_pc .depth_02 h3 a::before { left: 15px; }
	#gnb_pc .depth_02 h3 a.arrow::after { right: 15px; }
}

@media all and (max-width:991px) {
	#header { height: 60px; }
	#header .inner { height: 60px; }
	.fixed#header { height: 60px; }
	.fixed#header .inner { height: 60px; }
	/*! 테블릿 logo */
	#header h1 { transform-origin: 0% 50%; transition:0.2s; left: 10px; width: 240px; height: 40px; margin-top: -20px; }
	#header h1 a { background: url("/images/common/logo_400.png") no-repeat 0px 0px / cover; }
	.fixed#header h1 { width: 183px; height: 32px; margin-top: -16px; transform: scale(0.9); }
	#header .btn_box { right: 20px; margin-top: -13px; transform: scale(0.8); }
	#gnb_mobile { display: block; }
	.active2#header { background: rgb(255, 255, 255); }
}

@media all and (max-width:767px) {
	#header h1 { left: 5px; }
	#header .btn_box { right: 15px; }
  .gallery_title { font-size:14px; font-weight: 500; }
}

@media all and (max-width:414px) {
	#gnb_mobile { width: 100%; right: -100%; }
}

@media all and (min-width:768px) {
	#gnb-mobile .gnb-sub .slick-track { width: 100% !important; }
	#gnb-mobile .gnb-sub a { width: 20%; }
  .gallery_title { font-size:15px; font-weight: 500; height:20px !important; max-height:20px !important; -webkit-line-clamp:1 !important; display:-webkit-box !important; overflow:hidden !important; white-space: normal !important; word-wrap:break-word !important; text-overflow:ellipsis !important; -webkit-box-orient:vertical !important; }
}

@media all and (max-width:991px) {
	#header .bg { display: none !important; }
}

/* 1차 서브 메뉴 width */
.snb_link > li > a { min-width: 215px; }
