
* { font-family: "NanumSquareNeo"; } 
.fta:before,
.fta:after { font-family: "Font Awesome 5 Free" !important; font-weight: 900; } 
/** WORDPRESS MAIN VISUAL SLIDER DEFAULT SETTING **/
#mainVisualCon > .elementor-element,
#mainVisualCon > .elementor-element > .elementor-widget-container > .main-visual { height: 100%; } 
/********************************************
 * Header Menu Setting
 * 헤더
 ********************************************/
 .elementor-location-header[data-elementor-type="header"] .fixed { position: fixed; width: 100%;left: 0; top: 0; z-index: 9999; }  
/********************************************
 * Header Font Setting
 * 메인 메뉴(헤더) 폰트 셋팅
 ********************************************/
#header {position:fixed; left:0; top:0; width:100%; z-index:9999; transition: all 0.3s ease; }
#header.active {background:rgba(0,0,0,0.3); box-shadow:3px 3px 12px #00000014}
#header #logo_on { display: none; } 
#header #globalMenu_on { display: none; } 
#header #nav a { font-family: "NanumSquareNeo"; } 
#header #nav .elementor-widget-container { padding: 0; } 
#header #nav .elementor-nav-menu > .menu-item > a { padding: 40px 50px; color: #fff; font-size: 1.8rem; font-weight: 400; } 
#header #nav .elementor-nav-menu > .menu-item > a .sub-arrow {display:none;}
#header #nav .elementor-nav-menu > .menu-item > .sub-menu { width: 100% !important; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu a { font-size: 15px; color: #4e4e4e; font-weight: 700; white-space:wrap; border:none; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu .current-menu-item a { color: #fff; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu li:hover a { color: #fff; } 

/********************************************
 * Header Language Setting
 * 헤더 언어 폰트 셋팅
 ********************************************/
#language .lang-item a {color:#aaaaaa; font-size:1.4rem; font-weight:500; padding:0 1rem; position:relative; transition:all 0.3s ease;}
#language .lang-item a::after {content:''; position:absolute; width:1px; height:60%; top:20%; right:0; left:auto; opacity:1; background:#dddddd;;}
#language .lang-item:first-child a:before {content:'\f0ac'; font-weight:900; font-family:'Font Awesome 5 Free'; opacity:1; width:0; height:0; position:Absolute; left:-1rem; top:0;}
#language .lang-item:last-child a:after {display:none;}
#language .lang-item.current-lang a {color:#222222; font-weight:600}
#language .lang-item a:hover {color:#222222;}
/********************************************
 * Header Utility Setting
 * 헤더 유틸리티 셋팅
********************************************/
#util
{display:flex; align-items: center;}
#util .util-list 
{display:flex;}
#util .util-list li a 
{font-size:1.6rem; color:#fff; font-weight:500; margin:0 1rem; padding:0 1rem;}

#util .sitemap-con 
{width:5rem; height:5rem; position: relative;}
#util .sitemap-con .sitemap-icon 
{width:100%; height:100%; position:relative; display:inline-block;}
#util .sitemap-con .sitemap-icon .row 
{width:4rem; height:3px; background:#fff; display:inline-block; position:absolute; top:18px; right:0;}
#util .sitemap-con .sitemap-icon .row2 
{margin-top:15px;}


#header.active #util .util-list li a 
{color:#000;}
#header.active #util .sitemap-con .sitemap-icon .row 
{background:#000;}

/********************************************
 * FULLPAGE SETTING
 * FULLPAGE 플러그인 사용시에만 사용하도록 !!
 * 풀페이지 네비게이션 세팅
 ********************************************/
#fp-nav.left { left: 70px !important; } 
#fp-nav.left > ul > li { width: 8px; height: 8px; margin: 2rem 0; display: flex; align-items: center; } 
#fp-nav.left > ul > li > a > span { background: transparent; border: 1px solid #fff; width: 8px; height: 8px; margin: 0; left: 0; top: 0; } 
#fp-nav.left > ul > li > a.active > span,
#fp-nav.left > ul > li:hover > a > span,
#fp-nav.left > ul > li:hover > a.active > span { background: #fff; width: 8px; height: 8px; margin: 0; left: 0; top: 0; } 
#fp-nav.left > ul > li > .fp-tooltip { font-size: 1.8rem; color: #fff; font-weight: 400; font-family: "NanumSquareNeo"; position: relative; overflow: visible; width: auto; } 
#fp-nav.left.active > ul > li > a > span { border-color: #9d9d9d !important; } 
#fp-nav.left.active > ul > li > .fp-tooltip { color: #000 !important; } 
#fp-nav.left > ul > li > a.active > span { background: var(--main-color) !important; border: 1px solid var(--main-color) !important; } 
/********************************************
 * FULLPAGE SETTING
 * FULLPAGE 플러그인 사용시에만 사용하도록 !!
 * 풀페이지 메인페이지 세팅
 ********************************************/
.section .fp-tableCell .elementor-element,
.section .fp-tableCell .elementor-element .elementor-widget-container { height: 100%; } 


/********************************************
 * COMMON SITEMAP SETTING
 * 사이트맵 세팅
********************************************/
#sitemapCon .sitemap-tit-con
{padding:0 3rem 5rem 3rem; border-bottom:1px solid #000;}
#sitemapCon .sitemap-tit-con h2 
{font-family:'NanumSquareNeo'; font-size:4.2rem; color:#000; font-weight:800;}
#sitemapCon .sitemap-tit-con p
{font-family:'NanumSquareNeo'; font-size:2rem; color:#4b4b4b; font-weight:500;}
#sitemapCon .sitemap-menu-con .menu-row 
{padding:5rem 3rem; border-bottom:1px solid #ddd;}
#sitemapCon .sitemap-menu-con .sitemap-tit 
{min-width:15%;}
#sitemapCon .sitemap-menu-con .sitemap-tit h2 
{font-family:'NanumSquareNeo'; font-size:2.8rem; color:#000; font-weight:800;}
#sitemapCon .sitemap-menu-con .sitemap-menu
{min-width:85%;}
#sitemapCon .sitemap-menu-con .sitemap-menu li 
{margin-right:1rem;}
#sitemapCon .sitemap-menu-con .sitemap-menu li a 
{font-family:'NanumSquareNeo'; font-size:1.8rem; color:#555555; font-weight:600; border-radius:5px; transition:all 0.3s ease;}
#sitemapCon .sitemap-menu-con .menu-row:hover 
{background:#f4f4f4;}
#sitemapCon .sitemap-menu-con .sitemap-menu li a:hover
{color:#fff; background:var(--main-color); font-weight:800;}

/********************************************
 * QUICK BTN
 * 따라다니는 퀵메뉴
********************************************/
#quickBtn 
{position:fixed; right:2%; top:70%; width:auto; display:inline-block; z-index:999;}
#quickBtn .quick-btn 
{display:flex; flex-direction:column}
#quickBtn .quick-btn > a 
{width:7rem; height:7rem; border-radius:50%; position:relative; display:inline-block; box-shadow:6px 3px 10px #0c0c0c11;}
#quickBtn .quick-btn > a.top-btn 
{background:#fff;}
#quickBtn .quick-btn > a.customer-btn 
{background:var(--main-color); display:flex; align-items: center; justify-content: center; margin-top:1rem;}
#quickBtn .quick-btn .txt-box 
{display:flex; flex-direction:column; align-items: center; justify-content: center; height:100%;}
#quickBtn .quick-btn .txt-box i 
{width:23px; height:14px;}
#quickBtn .quick-btn .txt-box h4 
{font-family:'Titilliym Web'; font-size:1.6rem; font-weight:700; color:var(--main-color); margin-top:0.5rem}
#quickBtn .quick-btn > a.customer-btn i 
{width:36px; height:34px; display:inline-block;}
#quickBtn .quick-btn > a.customer-btn:hover 
{background:#065083}
/********************************************
 * SUB VISUAL SETTING
 * 서브 비주얼 셋팅
 ********************************************/
#subVisual { width: 100%; height: 50rem; background-position:center; align-items:center; justify-content:center;;} 
#subVisual > .e-con-inner { justify-content: end; } 
#subVisual #subTitle {}
#subVisual #subTitle h2 { font-family:'NanumSquareNeo'; font-size: 5.2rem; color: #fff; font-weight: 800; margin-top:2rem} 
#subVisual #subText
{margin-bottom:5rem;}
#subVisual #subText h4 {font-family:'NanumSquareNeo'; font-size:2.4rem; color:#fff; opacity:0.6; font-weight:300}

/********************************************
 * SUB MENU SETTING
 * 서브 메뉴 셋팅
 ********************************************/
#subMenu {justify-content: center; } 
#subMenu .elementor-element { max-width: var(--max-container); width: 100%; } 
#subMenu ul.elementor-nav-menu { width: 100%; justify-content: center;} 
#subMenu ul.elementor-nav-menu li {min-width:14rem; transition: all 0.3s ease; } 
#subMenu ul.elementor-nav-menu li a { font-family: "NanumSquareNeo"; padding: 2.5rem 3rem; font-size: 18px; color:#222; font-weight:800; position: relative; display: inline-block; text-align: center; transition: all 0.3s ease; } 
#subMenu ul.elementor-nav-menu li a:after { content: ""; position: absolute; width: 1px; height: 50%; top: 50%; transform: translateY(-50%); background: #ffffff1c; right: 0; left: auto; opacity: 1; } 
#subMenu ul.elementor-nav-menu li:last-child a:after { display: none; } 

#subMenu ul.elementor-nav-menu li:hover {  } 
#subMenu ul.elementor-nav-menu li:hover a { color:var(--main-color)}
#subMenu ul.elementor-nav-menu li.current-menu-item,
#subMenu ul.elementor-nav-menu li.current-page-ancestor { background: linear-gradient(180deg, var(--main-color), var(--sub-color))} 
#subMenu ul.elementor-nav-menu li.current-menu-item a,
#subMenu ul.elementor-nav-menu li.current-page-ancestor a { color: #fff;  font-weight:600} 


/********************************************
 * POLICE COMMON
 * 정책 공통 세팅
********************************************/
.police-content .police-con p { font-size: 17px; color: #000; font-weight: 300; margin-bottom: 20px; line-height: 1.5; } 
.police-content .discl-box { max-width: 800px; margin: 15px auto 15px; background: #f4f4f4; border: 1px solid #ddd; padding: 30px; border-radius: 15px; } 
.police-content .discl-box p { font-size: 17px; color: #000; font-weight: 300; line-height: 1.5; }
.emailinfo .info_box { display: flex; align-items: center; flex-wrap: wrap; background: #f4f4f4; border: 1px solid #ddd; border-radius: 10px; padding: 30px; } 
.emailinfo .info_box .txt-con { width: 100%; } 
.emailinfo .info_box .txt-con h4 { font-size: 19px; margin-bottom: 10px; } 
.emailinfo .info_box .txt-con p { font-size: 17px; color: #4b4b4b; line-height: 1.3; word-break: keep-all; } 
.emailinfo .emailinfo-detail { } 
.emailinfo .emailinfo-detail .detail-sec { margin: 50px 0; } 
.emailinfo .emailinfo-detail .detail-sec h5 { font-size: 21px; 
margin-bottom: 25px; position: relative; color: #222; } 
.emailinfo .emailinfo-detail .detail-sec .detail-txt-con ol > li { font-size: 18px; color: #4e4e4e; margin-bottom: 25px; font-weight: 600; word-break: keep-all; line-height: 1.5; } 
.emailinfo .emailinfo-detail .detail-sec .detail-txt-con ol > li > ul { margin-top: 10px; } 
.emailinfo .emailinfo-detail .detail-sec .detail-txt-con ol > li > ul > li { font-size: 16px; color: #666; margin-bottom: 5px; font-weight: 400; line-height: 1.5; } 
.login-content input[type="submit"] {background-color:var(--main-color) !important}
/**************************************************
* MAIN VISUAL
* 메인 비주얼 공통 세팅
****************************************************/
#mainVisualCon { width:100%; height:70rem;} 
/* 풀페이지에만 사용 */
/*
.section .fp-tableCell .elementor-element,
.section .fp-tableCell .elementor-element .elementor-widget-container { height: 100%; } 
*/
.main-visual-slide, .main-visual-slide .slick-list, .main-visual-slide .slick-track, .main-visual-item { height:100%; } 
.main-visual-item .container { height: 100%; } 
.main-visual-img { position:absolute; width:100%; height:100%; background-size:cover; background-position:center;} 

#mainVisualCon .visual-area {max-width:var(--max-container); margin:0 auto; width:100%; height:100%;}
#mainVisualCon .main-visual-txt-con {height:100%;}
#mainVisualCon .visual-txt-con { position:absolute; left:0; width:100%; top:32%; text-align:center; } 
#mainVisualCon .visual-txt-con h4 {font-size:4rem; color:#fff; font-weight:700; width:100%;}
#mainVisualCon .visual-txt-con h2 {font-size:5.6rem; color:#fff; font-weight:800; width:100%;}

#mainVisualCon .slick-dots 
{position:absolute; display:flex; justify-content:center; bottom:4rem; width:100%; z-index:9999;}
#mainVisualCon .slick-dots li
{margin:0 0.5rem;}
#mainVisualCon .slick-dots li button
{font-size:0; width:1rem; height:1rem; background:#8d8e90; border-radius:50px; padding:0; border:none;}
#mainVisualCon .slick-dots li.slick-active button
{width:3rem; background:#fff;}

/**************************************************
* MAIN VISUAL PROGRESS BAR
* 메인 비주얼 프로그레스 바
****************************************************/
.main-visual-controls { position: absolute; width: 100%; top:50%; z-index:999;} 
.main-visual-controls .main-controls-wrapper {display:flex; justify-content:center; align-items:center;} 
.main-visual-controls .main-controls-wrapper .pagination {display:flex; align-items:center; justify-content:center; margin:0;}
.main-visual-controls .pagination span { font-size:1.5rem; color:#fff; margin: 0 0.3rem; font-weight:600 } 

.main-visual-controls .progress {width:27rem; height:2px; position:relative; margin:0 1rem;}
.main-visual-controls .progress .bg-bar {position:absolute; width:100%; height:100%; background:rgba(255,255,255,0.3); display:block; left:0; top:0;}
.main-visual-controls .progress .ing-bar {width:0%; height:100%; display:block; position:relative; background:rgba(255,255,255,1)}
.main-visual-controls .progress.active .ing-bar
{width:100%; transition:all 3s ease-in-out;}

.main-visual-controls .play-pause
{position:relative; width:1.5rem; height:1.5rem;}
.main-visual-controls .play-pause button
{position:absolute; left:0; top:0;}
.main-visual-controls .play-pause button i 
{font-size:2rem; color:#fff;}
.main-visual-controls .play-pause .main-visual-play-btn 
{display:none;}
.main-visual-controls .play-pause button:hover 
{background:transparent;}
/**************************************************
* SUB COMMON
* 서브 공통
****************************************************/
.hide-menu 
{display:none;}

.cm-sub-con 
{margin:10rem 0;}
.bg-con
{padding:10rem 0;}

.cm-table-style-01 table tr th 
{background: #f4f4f4 !important; font-size: 2rem; color: #222; border-color: #ddd; } 
.cm-table-style-01 table tr td 
{background:#fff !important; }

.cm-table-style-02 table tr th 
{background: #f4f4f4 !important; font-size: 2rem; color: #222; border-color: #ddd; } 
.cm-table-style-02 table tr td 
{background:#fff !important; }



@media screen and (max-width:1400px) {
  #subVisual > .e-con-inner {padding:0 10px;}
}
@media screen and (max-width:1024px) {
  #sitemapBtn 
  {display:none;}
  /* 모바일 메뉴 버튼 */
  #header #menu-wrap .elementor-menu-toggle 
  {background:#ffffff3b}
  /* 모바일 토글 메뉴 */
  /* 1차 메뉴 */
  #header #nav .elementor-nav-menu > .menu-item > a
  {color:#000; font-size:1.7rem; padding:20px;}
  /* 1차 메뉴 active */
  #header #nav .elementor-nav-menu > .menu-item.current-menu-ancestor,
  #header #nav .elementor-nav-menu > .menu-item.current-menu-item
  {background:var(--main-color);}
  #header #nav .elementor-nav-menu > .menu-item.current-menu-ancestor > a,
  #header #nav .elementor-nav-menu > .menu-item.current-menu-item > a
  {color:#fff;}
  /* 2차 메뉴 */
  #header #nav .elementor-nav-menu > .menu-item > .sub-menu
  {width:100% !important;}
  #header #nav .elementor-nav-menu > .menu-item > .sub-menu a
  {justify-content: start; text-align:left; font-size:16px; padding:20px;}
  #header #nav .elementor-nav-menu > .menu-item > .sub-menu > li:hover a,
  #header #nav .elementor-nav-menu > .menu-item > .sub-menu > li.current-menu-item a 
  {background:var(--main-color); color:#fff;}
  /* 스크롤 다운 (header active) */
  #header.active #nav .elementor-nav-menu > .menu-item > a.elementor-item-active,
  #header #nav .elementor-nav-menu > .menu-item > a.highlighted
  {background:var(--main-color); color:#fff;}
}
@media screen and (max-width:767px) {
  .cm-table-style-01,
  .cm-table-style-02 
  {overflow-x:scroll;}
}

