
* { font-family: "Pretendard"; } 
.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; top:0; left:0; border-bottom:1px solid #ddd; background:#fff; z-index:9999; transition: all 0.3s ease; }
 #header.active {background:#fff; box-shadow:3px 3px 12px #00000014}
#header #logo_on { display: none; } 
#header #globalMenu_on { display: none; } 
#header #nav a { font-family: "Pretendard"; } 
#header #nav .elementor-widget-container { padding: 0; } 
#header #nav .elementor-nav-menu > .menu-item {position:relative;}
#header #nav .elementor-nav-menu > .menu-item:after {content:''; position:absolute; width:0.6rem; height:0.6rem; border-radius:50%; background:linear-gradient(142deg, #f8d6c6, #f6e4d5); border:none; right:0;}
#header #nav .elementor-nav-menu > .menu-item:last-child:after {display:none;}
#header #nav .elementor-nav-menu > .menu-item > a { padding: 40px 30px; color: #000; font-size: 2.2rem; font-weight: 600; } 
#header #nav .elementor-nav-menu > .menu-item > a .sub-arrow {display:none;}
#header #nav .elementor-nav-menu > .menu-item > .sub-menu { width: 120% !important; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu a { font-size: 16px; color: #4e4e4e; font-weight: 600; white-space:wrap; border:none; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu li.current-menu-item a { background:#eee !important;; color: #000 !important; } 
#header #nav .elementor-nav-menu > .menu-item > .sub-menu li:hover a { background:var(--main-color); 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
 * 헤더 유틸리티 셋팅
********************************************/
#utilBox .util
{display:flex; align-items: center;; justify-content:space-between;}
#utilBox .util .sitemap 
{width:2.4rem; height:2rem; margin-left:2rem;}
#utilBox .util .sitemap .sitemap-con 
{width:100%; height:100%; display:flex; justify-content: space-between; flex-direction:column;}
#utilBox .util .sitemap .sitemap-con .row 
{width:100%; height:3px; background:#000;}

/* 공통 상단 검색창 */
#header .cm-kboard-search-con ul
{display:flex; width:23rem; position:relative;}
#header .cm-kboard-search-input
{position:relative; width:100%; padding:0;}
#header .cm-kboard-search-input .search-input-con
{position:relative; padding:0;}
#header .cm-kboard-search-input .search-input-con:before 
{content:''; position:absolute; width:2px; height:40%; background:#a2a2a2; top:30%; left:20px; z-index:9;}
#header .cm-kboard-search-input input 
{position:relative; border:1px solid #444; font-size:1.4rem; height:40px; line-height:40px; border-radius:50px; width:100%; color:#000;
padding:5px 20px 5px 30px; cursor:pointer;; transition:all 0.3s ease;}


#header .cm-kboard-search-input input::placeholder
{color:#444444}
#header .cm-kboard-search-btn
{position:absolute; right:0; top:0; width:5rem; height:4rem; padding:0;}
#header .cm-kboard-search-btn input 
{font-size:0; border:none; position:absolute; right:0; padding:0; width:100%; height:100%;}
#header .cm-kboard-search-btn:before
{position:absolute; content:''; background-image:url('/wp-content/uploads/2025/07/search_icon.png'); width:22px; height:21px; display:inline-block; top:8px; left:12px; transition:all 0.3s ease;}
#header .cm-kboard-search-btn input:hover,
#header .cm-kboard-search-btn input:focus
{background:transparent; border:none;}


#header .header-search-con:hover .cm-kboard-search-input input  {background:#f4f4f4;}
#header .header-search-con.active .cm-kboard-search-input input {background:#f4f4f4;}
#header .header-search-con:hover .cm-kboard-search-con .cm-kboard-search-btn:before,
#header .header-search-con.active .cm-kboard-search-con .cm-kboard-search-btn:before
{background-image:url('/wp-content/uploads/2025/07/search_icon-active.png');}


#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: "Pretendard"; 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%; } 

.fp-tableCell > .elementor-element > .elementor-widget-container
{padding-top:100px;}
#elementor-popup-modal-1261 .dialog-widget-content {background-color:transparent !important; box-shadow:none !important;}
#elementor-popup-modal-1261 .elementor-1261 {width:100%; height:100%;}
#sitemapCon {background:#fff; padding:0; height:100%;}
#sitemapCon > .e-con-inner {width:100%; max-width:100%; padding:0; margin:0; height:100%;}
#sitemapCon > .e-con-inner > .elementor-element {padding:0; height:100%;}
#sitemapCon > .e-con-inner > .elementor-element > .sitemap-item {border-right:1px solid #ddd; align-items:center; padding:15rem 0;}

#sitemapCon .sitemap-item .e-con-inner { border:1px solid #ddd; border-radius:15px 15px 0 0; } 
#sitemapCon .sitemap-item .menu-tit{margin-bottom:10px; width:100%; border-bottom:1px solid #ddd;}
#sitemapCon .sitemap-item .menu-tit h2 { font-family:'gmarketsans'; font-size:2.3rem; color:#1b1b1b; font-weight:700; padding:5rem 0; text-align:center; position:relative;} 
#sitemapCon .sitemap-item .menu-tit h2:before 
{opacity:0; visibility:hidden; content:''; width:1rem; height:1rem; background:var(--main-color); border-radius:50px; display:inline-block; position:absolute; top:0; left:-10px; z-index:-1; transform:translateY(-10px); z-index:9; transition:all 0.3s ease;}
#sitemapCon .sitemap-item .hide-menu
{display:none !important}
#sitemapCon .sitemap-item .menu-item {width:100%; margin:1rem 0;}
#sitemapCon .sitemap-item .menu-item .sub-arrow 
{display:none;}
#sitemapCon .sitemap-item .menu-item nav {max-width:90%; width:100%; margin:0 auto;}
#sitemapCon .sitemap-item nav .elementor-nav-menu .menu-item > a { font-family:'Pretendard'; font-size:1.8rem; font-weight:500; color:#444; padding:1.5rem 3rem; border-radius:5px;} 
#sitemapCon .sitemap-item nav .elementor-nav-menu .menu-item.current-menu-item a { background:none; color:var(--sub-color); border:none; position:relative; font-weight:600;} 
#sitemapCon .sitemap-item nav .elementor-nav-menu .menu-item.current-menu-item a:before {width:0.5rem; height:0.5rem; background:var(--sub-color); border-radius:50%; position:absolute; content:''; top:1rem; left:2rem;}


#sitemapCon > .e-con-inner > .elementor-element > .sitemap-item:hover {background:#fffaea6b;}
#sitemapCon > .e-con-inner > .elementor-element > .sitemap-item:hover .menu-tit {background:linear-gradient(137deg, #b78b6d, var(--main-color));}
#sitemapCon > .e-con-inner > .elementor-element > .sitemap-item:hover .menu-tit h2 {color:#fff;}
#sitemapCon .sitemap-item nav .elementor-nav-menu .menu-item > a:hover {color:#000; border:none; fill:none; font-weight:600; text-decoration:underline} 
#sitemapCon .sitemap-item nav .elementor-nav-menu .menu-item > a::after{display:none}

#elementor-popup-modal-1261 .dialog-close-button svg {fill:#000; font-size:4.2rem;}

/********************************************
 * 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: var(--sub-visual-height); background-position:center; position:relative; position:relative; overflow:hidden;} 
#subVisual #subVisualImg {width:100%; height:100%; position:absolute; left:50%; top:0; transform:translateX(-50%) scale(1.2); transition:all 3s ease;}
#subVisual #subVisualImg.on {transform:translateX(-50%) scale(1)}
#subVisual #subVisualTxt {width:100%; height:100%; padding-top:100px; text-align:center;}
#subVisual #subVisualTxt > .e-con-inner {justify-content: center;}
#subVisual #subTitle {}
#subVisual #subTitle h2 { font-family:'gmarketsans'; font-size: 4.2rem; color: #222; font-weight: 700;} 
#subVisual #breadcrumb {font-size:1.7rem;  }
#subVisual #breadcrumb span,
#subVisual #breadcrumb a {font-family:'gmarketsans'; color:#939393;}

/********************************************
 * SUB MENU SETTING
 * 서브 메뉴 셋팅
 ********************************************/
#subVisual #subMenu { bottom: 5rem; } 
#subVisual #subMenu .elementor-element { max-width: var(--max-container); width: 100%; } 
#subVisual #subMenu ul.elementor-nav-menu { width: 100%; flex-wrap: nowrap; } 
#subVisual #subMenu ul.elementor-nav-menu li { width: 15%; transition: all 0.3s ease; } 
#subVisual #subMenu ul.elementor-nav-menu li a { font-family: "Pretendard"; padding: 2.5rem 1rem; font-size: 20px; font-weight: 500; background: rgba(0, 0, 0, 0.3); color: #fff; position: relative; display: inline-block; text-align: center; transition: all 0.3s ease; } 
#subVisual #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; } 
#subVisual #subMenu ul.elementor-nav-menu li:last-child a:after { display: none; } 
#subVisual #subMenu ul.elementor-nav-menu li.current-menu-item,
#subVisual #subMenu ul.elementor-nav-menu li.current-page-ancestor { background: var(--main-color); } 
#subVisual #subMenu ul.elementor-nav-menu li.current-menu-item a,
#subVisual #subMenu ul.elementor-nav-menu li.current-page-ancestor a { color: #fff; } 
#subVisual #subMenu ul.elementor-nav-menu li:hover { background: var(--main-color); } 
#subVisual #subMenu ul.elementor-nav-menu li:hover a { color: #fff; } 

/********************************************
 * 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%; } 

#mainVisualCon .main-visual-txt-con {height:100%;}
#mainVisualCon .visual-txt-con { position:relative; height:100%; display:flex; flex-direction:column; justify-content: center; align-items: start; } 
#mainVisualCon .visual-txt-con h4 {font-size:2.6rem; color:#fff; font-weight:400;}
#mainVisualCon .visual-txt-con .slogan {font-size:7.6rem; color:#fff; font-weight:700; margin:2rem 0 5rem;}
#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%; bottom: 10rem; z-index:999;} 
.main-visual-controls .visual-controls-wrap { width: 100%; display: flex; align-items: center; } 
.main-visual-controls .paging-controls span { font-size: 19px; font-weight: 600; color: rgba(255, 255, 255, 0.5); padding: 0 0.5rem; } 
.main-visual-controls .paging-controls span.cur { color: #fff; } 
.main-visual-controls .progress-bar-con { width: 21rem; height: 3px; margin: 0 1rem; } 
.main-visual-controls .progress-bar { position: relative; } 
.main-visual-controls .progress-bar .total-bar { width: 100%; height: 100%; background: rgba(255, 255, 255, 0.5); } 
.main-visual-controls .progress-bar .ing-bar { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #fff; } 
.main-visual-controls .progress-bar.active .ing-bar { width: 100%; transition: all 3s ease-in-out; } 
.mouse-scroll { position: absolute; bottom: 7rem; right: 10rem; display:flex; align-items:center; animation: scrollDown 2.5s infinite ease-in-out; } 
/**************************************************
* 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:1680px) {
  #header > .e-con-inner {padding:0 20px;}
  #header #nav .elementor-nav-menu > .menu-item > a 
  {padding:40px 20px; font-size:1.7rem;}
}
@media screen and (max-width:1280px) {
  #header #nav {display:none;}
}
@media screen and (max-width:1400px) {
  #subVisual > .e-con-inner {padding:0 10px;}
}
@media screen and (max-width:1023px) {
  #header #nav
  {display:none;}
  #header #utilBox > .elementor-element 
  {width:100%;}
  /* 모바일 메뉴 버튼 */
  #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;}
}

