@charset "utf-8";
/* *******************************************************
 * filename : layout.css
 * description : 전체 레이아웃 CSS
 * date : 2022-07-26
******************************************************** */

/* ========================================================
 * SETTING
======================================================== */
@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@200;300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');

:root{
	--main-color: #0037b8;
	--sub-color: #1451df;
	--area-box-width: 1600px;
	--area-width: 1400px;
	--area-sub-width:1300px;
	--area-padding: 30px;
	/* --header-height: 100px; */
	--header-height:140px;
	--header-util-width:12.1rem;
	--sub-visual-height: 46.2rem;
	--sub-menu-height: 69px;
	--full-height: 100vh;
	--custom-transition1: all 0.4s cubic-bezier(.7, 0, .2, 1);
	--custom-transition2: all 0.8s cubic-bezier(.7, .1, .2, 1);
	--transition-custom: all 0.4s ease-in-out;
	--transition-custom2: all 0.8s ease-in-out; /* data-scroll */
	--font-family1: 'Pretendard', 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;
	--font-family2: 'Kanit', 'Pretendard', 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;
}
/* html:not(.is-mobile) *::-webkit-scrollbar {
	width: 15px;
	height: 15px;
}
html:not(.is-mobile) *::-webkit-scrollbar-track {
	background-color: #f1f1f1;
}
html:not(.is-mobile) *::-webkit-scrollbar-thumb {
	background-color: #c1c1c1;
} */
::selection {
    background: var(--main-color);   
    color: #fff;
}
::-moz-selection {
    background: var(--main-color);    
    color: #fff;
}
html{font-size:10px;}
body, table, th, td, button, select, input, textarea {
	font-family:var(--font-family1);
	color:#666;
	-webkit-text-size-adjust:none;
	-moz-text-size-adjust:none;
	text-size-adjust:none;
	word-break:keep-all;
}
body { background-color:#fff; }
table, th, td{word-break:break-word;}
#wrap {overflow:hidden; width:100%; min-width:320px; position:relative; }

/* ========================================================
 * LAYOUT
======================================================== */
/* ****************** 공통클래스 ********************** */
.area{ max-width:var(--area-width); margin:0px auto;}
.area-box{ max-width:var(--area-box-width); margin:0px auto; }
.area-sub-box {max-width:var(--area-sub-width); margin:0px auto;}
.full-height{height:var(--full-height);}
/* Fullpage Layout */
.fullpage-html{overflow:hidden; height:100%;}
.fullpage-html #wrap{position:static;}
/* br tag */
.m-br{display:none;}
.display-m{display:none;}
.font-kanit {font-family:var(--font-family2);}

/* ****************** HEADER ********************** */
#header{
	position:relative; height:var(--header-height); top:0; /* margin-top:6rem; */ width:100%; z-index:9998; 
}
.fullpage-html #header{
	position:fixed;
}
#headerInnerWrap{position:absolute; top:0; left: 0; width:100%; height:var(--header-height); z-index:9999; transition:top ease-out 1s 0.4s, opacity ease-out 0.6s 0.5s;}
/* #headerInnerWrap.active  */
#headerInnerWrap:after {position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-color: #fff;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s;}

#headerInner{position:relative; display:flex; align-items:center; justify-content:space-between; height:var(--header-height); margin:0px auto; padding:3rem 16rem 0; box-sizing:border-box;}
#header .logo{position:relative; z-index:100; height: 40px;}
#header .logo a{display:block; }
#header .logo img{display:block; vertical-align:top; position:absolute; top:0; left:0; transition:all 0.4s ease-in-out;}
#header .logo img.logo_off {opacity:0;}


#header.gnb-open .logo img.logo_on {opacity:1;}
#header.gnb-open .logo img.logo_off {opacity:0;}
#header.gnb-open #gnb > ul > li > a {color:#000;}
#gnb > ul > li.gnb1 {width: 15.5rem;}
#gnb > ul > li.gnb2 {width: 13.1rem;}
#gnb > ul > li.gnb5 {width: 16.5rem;}
#gnb > ul > li.gnb6 {width: 12rem;}
#header.gnb-open #headerInnerWrap:after {opacity:1;}

/* -------- Header :: hide 일 때 -------- */
#header.hide #gnb {top:-5rem; /* top:-14rem; */ opacity:0; visibility:hidden; }


/* -------- Header :: UTIL BOX -------- */
#header.gnb-open + .header-util-container {z-index:99;}
.header-util-container {position: fixed; width: 9.6rem; height: 100vh; right:0; background: var(--main-color); z-index:9999; transition:height ease-out 0.5s; top:0;}
.header-util-box {position:relative; width: 100%; z-index:9999; background: var(--main-color);}

/* 메인페이지에서의 .header-util-container */
.main-page .header-util-container {transform:translateX(100%); transition:transform ease-out 1s 0.3s , height ease-out 0.5s;}
.main-page .header-util-container.active {transform:translateX(0);}
/* 서브페이지에서의 .header-util-container */
.sub-wrap .header-util-container {position:absolute; height: calc(var(--header-height) + var(--sub-visual-height));}
.sub-wrap .inquiry-box {margin-bottom:5.7rem;}
.sub-wrap .scroll-motion {display:none;}



/* -------- Header :: Inquiry -------- */

.header-inquiry-box {width:100%; transition:all ease-out 0.5s; visibility:visible; background: var(--main-color); position:absolute; bottom:0; left:0;}
.header-inquiry-bottom {transition:all 0.5s ease-out;}
.header-inquiry-box .inquiry-bg {position:absolute; top:19.2rem; left:0; right:0; background:var(--main-color); /* height: 0; */ height: 100vh;}
.inquiry-box {display:flex; align-items:center; flex-direction:column; width: 100%; /* position:absolute; bottom:12.5rem; */ transition:var(--custom-transition2); margin-bottom:2.5rem;}
.inquiry-box em {transform:rotate(90deg); height: 8rem; display:flex; align-items:center; color:#69c5ff; font-size:1.8rem; letter-spacing:0.2em; margin-bottom: 1.5rem;}

#header.hide + .header-util-container {height:19.2rem;}
#header.hide + .header-util-container .header-inquiry-bottom {opacity:0;}

/* -------- Header :: UTIL BOX :: scroll-motion -------- */

.scroll-motion {width: 100%; height: 9.6rem; background: #0c1a39;}
.scroll-motion-inner {display:flex; flex-direction:column; align-items:center; width: 100%; height: 100%; justify-content:center; /* margin-top: 12px; */ padding-top:12px;}
.scroll-motion .scroll-icon {margin: -12px 0 0 0; animation:scroll-ani 1.3s infinite; color:#fff;}
.scroll-motion .scroll-icon.scroll-icon01 {animation-delay:0.1s;}
.scroll-motion .scroll-icon.scroll-icon02 {animation-delay:0.2s;}
.scroll-motion .scroll-icon.scroll-icon03 {animation-delay:0.3s;}
.scroll-motion .scroll-icon i {font-size:1.8rem;}

@keyframes scroll-ani {
	0% {opacity:0.2;}
	50% {opacity:0.5;}
	100% {opacity:1;}
}

/* Header :: 언어선택 */
.header-lang {height: 9.6rem;}
.header-lang > ul {display:flex; flex-direction:column; height: 100%; justify-content:center; width:100%;}
.header-lang > ul > li.cur a{color:rgba(255,255,255,1);}
.header-lang > ul > li > a{display:block; padding:0 10px; font-size:17px; line-height: 30px; color:rgba(255,255,255,0.2); text-align:center; font-family: 'Poppins', sans-serif;}
.header-lang.open .lang-open-btn .arrow i{transform:rotate(180deg); margin-top:-3px;}

/* Header :: 사이트맵버튼 */
.sitemap-line-btn{position: relative; width:45px; height:45px; display:flex; flex-wrap:wrap;box-sizing:border-box; margin:2.55rem auto; z-index:9999;}
.sitemap-line-btn .dot {display: block; width: 5px; height: 5px; background:rgba(154,179,239,0.5); margin:5px; opacity:1; transition:all 0.4s;  transition-delay:0.5s;}
.sitemap-line-btn .dot:nth-of-type(even) {background: #fff;}
/* active */
.sitemap-line-btn.active{position:relative; z-index:100000;}
.sitemap-line-btn.active .line:nth-child(2), 
.sitemap-line-btn.active .line:nth-child(4){opacity: 0;}
.sitemap-line-btn.active .line:nth-child(1){
	transform: translateY(5px) rotate(45deg);
}
.sitemap-line-btn.active .line:nth-child(3){
	transform: translateY(-5px) rotate(-45deg);
}

.sitemap-line-btn .line {position: absolute; top: 50%; width: 100%; height: 2px; background: rgba(154,179,239,0.5); opacity:0; transition:all 0.4s; transition-delay:0.5s;}
.sitemap-line-btn .line.line1 {left: 0; transform:rotate(45deg) translateY(-50%);}
.sitemap-line-btn .line.line2 {right:0; transform:rotate(-45deg) translateY(-50%);}
.sitemap-line-btn.open .line {opacity:1;}
.sitemap-line-btn.open .dot {opacity:0;}

/* -------- Header :: GNB(PC) -------- */
.gnb-overlay-bg{position:fixed; top:0; left:0; width:100%; height: 100%; visibility:hidden; opacity:0; background:rgba(0,0,0,0.5); z-index:9997;  transition:height 0.3s ease-in-out, opacity 0.2s ease-in-out; }	/* gnb overlay BG */
.gnb-overlay-bg:after {display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 0;
    opacity:0;
    background: #e7e7e7;
    top: calc(var(--header-height) + 6rem + 3px);
    left: 0; transition:height 0.3s ease-in-out, opacity 0.2s ease-in-out; transition-delay:0.1s;}
.gnb-overlay-bg.open{opacity:1.0; filter: Alpha(opacity=100); visibility:visible;}
.gnb-overlay-bg.open:after {opacity:1; height:1px;}

/* 서브페이지에서의 .gnb-overlay-bg */
.sub-wrap .gnb-overlay-bg {position:absolute; height: calc(484px - 6rem);}
.sub-wrap .gnb-overlay-bg:after {top: calc(var(--header-height) + 3px);s}

#gnb{position:absolute; top:0; left: 0; padding-left:377px; width: 100%; z-index:99; transition:all ease-out 0.2s; opacity:1; box-sizing:border-box; visibility:visible;}
#gnb > ul{display:flex; width: 100%; justify-content:flex-start;}
#gnb > ul > li{/* position:relative; */ float:left; word-break:keep-all; width: 16rem; transition:var(--custom-transition2);}
#gnb > ul > li > a{
	position:relative; height:var(--header-height); z-index:100; display:block; line-height:var(--header-height); padding:1.5rem 2rem 0; box-sizing:border-box; text-align:center; color:#000; font-size:1.7rem; letter-spacing:-0.025em; font-weight:400; transition:var(--transition-custom); font-family: var(--font-family2);
}
#gnb > ul > li > a:hover,
#gnb > ul > li > a:focus,
#gnb > ul > li.on > a{color:var(--main-color);}

/* GNB :: 2차 전체메뉴 */
#gnbBg{
	overflow:hidden; 
	position:absolute; 
	left:0; top:140px; 
	width:100%; 
	height:0; 
	background:#f4f4f4; 
	z-index:98;
	opacity:0;
	transition:height 0.3s ease-in-out, opacity 0.2s ease-in-out;
}
#gnbBg img {float:right;}
#gnbBg:after{position:absolute; top:0; width:100%; left:0; height:1px; background-color:#ddd; content:"";}
#gnb.total-menu > ul > li .gnb-2dep{
	position:absolute; 
	top:calc(var(--header-height) + 3px); 
	left:0px; 
	z-index:99;
	width:100%; 
	text-align:left; 
	border-right:1px solid #ddd;
	opacity:0;filter:Alpha(opacity=0);
	height:0;
	/* transition: all 0.2s 0s; */
	transition-delay: 0s;
	visibility:hidden; box-sizing:border-box; padding-top:3.3rem;
}
#gnb.total-menu > ul > li:first-child .gnb-2dep{border-left:1px solid #ddd;}
#gnb.total-menu > ul > li .gnb-2dep:before {
	content:""; position:absolute; left:0; top:0px; width:0; left:50%; height:3px; background-color:var(--main-color); 
	transition:var(--transition-custom);
}
#gnb.total-menu > ul > li:hover .gnb-2dep:before {width:100%; left:0;}
#gnb.total-menu > ul > li .gnb-2dep ul{padding:13px 0px;}
#gnb.total-menu > ul > li .gnb-2dep ul li{position:relative; margin-top: 1rem;}
#gnb.total-menu > ul > li .gnb-2dep ul li:first-of-type {margin-top: 0;}
#gnb.total-menu > ul > li .gnb-2dep ul li a{ display:block;  padding:7px 15px; color:#636363; font-size:16px; letter-spacing:-0.5px; font-weight:400; line-height:1.3; transition:var(--transition-custom); text-align:center;}
#gnb.total-menu > ul > li .gnb-2dep ul li a:hover{color:var(--main-color); font-weight: 700;}
#gnb.total-menu.open > ul > li > a {color:#000;}
#gnb.total-menu.open > ul > li:hover > a {color:var(--main-color);}

/* GNB :: 2차메뉴 Over (높이변경) */
/* GNB :: 2차 각각메뉴 */
#gnb.each-menu > ul > li .gnb-2dep{
	/* display:none; */
	position:absolute; 
	top:calc(var(--header-height)); 
	left:0px; 
	z-index:99;
	width:100%; 
	height: 300px;
	text-align:left; 
	visibility:hidden;
	opacity:0;filter:Alpha(opacity=0);
	/* transition:all 0.8s cubic-bezier(0.4, 0, 1, 1); */
	padding-left:418px; box-sizing:border-box;
	display:flex; flex-direction:column; justify-content:center;
}
#gnb.each-menu > ul > li .gnb-2dep .menu-txt h3 {font-size:5rem; font-weight: 600; color:#000; font-family: var(--font-family2); margin-bottom: 8px;}
#gnb.each-menu > ul > li .gnb-2dep .menu-txt p {font-size:1.8rem; letter-spacing:-0.065em; color:rgba(79,79,79,0.8); line-height:1.667em; margin-bottom: 32px;}
#gnb.each-menu > ul > li .gnb-2dep ul{ display:flex;}
#gnb.each-menu > ul > li .gnb-2dep ul li{position:relative; min-width:18rem; height: 58px; transition:all 0s 0s;  box-sizing:border-box; /* border:2px solid #d5d5d5; */ margin:0 0 0 -2px; transition:var(--transition-custom);}
#gnb.each-menu > ul > li .gnb-2dep ul li:before {display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    /* box-sizing: border-box; */
    border: 2px solid #d5d5d5;
    top: revert-layer;
    top: 0;
    left: 0;
    z-index: 1;
    box-sizing: border-box;
    opacity: 1;
    transition: var(--transition-custom);}
#gnb.each-menu > ul > li .gnb-2dep ul li a{display:flex; width: 100%; padding:8px 20px; height: 100%; align-items:center; color:#767676; font-size:16px; font-weight:400; text-align:center; line-height:1.4; opacity:0.9; box-sizing:border-box; letter-spacing:-0.05em; transition:var(--transition-custom); position: relative; z-index:2; justify-content:space-between;}
#gnb.each-menu > ul > li .gnb-2dep ul li a i {padding-left:2rem;}
/* #gnb.each-menu > ul > li .gnb-2dep ul li a:after {    display: block;
    content: "\eb45";
    font-family:'xeicon';
    font-size:18px;
    letter-spacing:-0.065em;
    color:rgba(148,148,148,0.5);
    transition:var(--transition-custom);
    padding-left:15px;
} */
#gnb.each-menu > ul > li .gnb-2dep ul li:hover {border-color:var(--sub-color);}
#gnb.each-menu > ul > li .gnb-2dep ul li:hover:before {border-color:var(--sub-color);}
/* #gnb.each-menu > ul > li .gnb-2dep ul li:hover + li {border-left:0;} */
#gnb.each-menu > ul > li .gnb-2dep ul li a:hover{opacity:1.0; color:#fff; background: var(--sub-color); border-color:var(--sub-color);}
#gnb.each-menu > ul > li .gnb-2dep ul li a:hover:after {color:#fff;}
/* #gnb.open {width:100%; left:0;} */
#gnb.open > ul {width: 100%;}
#gnb.open > ul > li {width: calc(100% / 5);}
#gnb.open #gnbBg{height:350px; opacity:1.0;filter:Alpha(opacity=100);}
#gnb.open > ul > li .gnb-2dep{
	height:300px; opacity:1.0;filter:Alpha(opacity=100);
	visibility:visible;
    transition: height 0.5s ease-in-out, opacity 0.5s ease-in-out 0.2s;
}
#header.gnb-open #gnbBg {height: 300px; opacity:1;  filter: Alpha(opacity=100);}

/* over했을때 */
#gnb.each-menu > ul > li .gnb-2dep.open{visibility:visible; opacity:1.0; filter: Alpha(opacity=100); transition:all 0.8s;}
#gnb.each-menu > ul > li .gnb-2dep.open:before{height:100%;}


/* -------- Header :: GNB(Mobile) -------- */
.m-lang {display:none;}
.nav-open-btn{display:none;}
#gnbM{display:none}

/* ****************** FOOTER ********************** */
/* -------- FOOTER :: 파트너리스트 -------- */
#footerPartnerListContent{padding:30px 0; border-top:1px solid #ddd;}
.footer-partner-list{position:relative; padding:0 65px;}
.footer-partner-list .partner-item{float:left; }
.footer-partner-list .partner-item-inner{position:relative; height:44px; padding:0 10px;}
.footer-partner-list .partner-item-inner span{display:block; position:relative; height:100%; width:100%; }
.footer-partner-list .partner-item-inner span img{position:absolute; top:0px; left:0px; bottom:0px; right:0px; max-width:100%; max-height:100%; margin:auto; }
.footer-partner-list .slick-arrow{position:absolute; top:50%; margin-top:-24px; width:48px; height:48px; cursor:pointer; border:0; z-index:9; font-size:48px;}
.footer-partner-list .slick-arrow i{line-height:48px; vertical-align:top}
.footer-partner-list .slick-arrow.slick-prev{left:0px; }
.footer-partner-list .slick-arrow.slick-next{right:0px;}
.footer-partner-list i{color:#aaa; }

/* -------- FOOTER :: 레이아웃 -------- */
#footer{background-color:#fff; border-top:1px solid #e1e1e1;}
.footer-left-con{float:left; display:flex;}
.footer-right-con{float:right; align-self: flex-end;}

/* --z----- FOOTER :: 상단 -------- */
#footerTop{border-top:1px solid #ddd; padding:25px 0; }

/* Footer :: 푸터메뉴 */
.foot-menu{display:flex; justify-content:flex-end; margin-top: 2rem;}
.foot-menu li{position:relative; padding-right:30px; line-height:35px;}
/* .foot-menu li:before{position:absolute; top:50%; left:18px; content:""; width:2px; height:2px; background-color:#636363; border-radius:50%; } */ /* dot 형태 */ 
/* .foot-menu li:before{position:absolute; top:50%; left:18px; width:1px; height:10px; margin-top:-5px; background-color:#ddd;  content:"";} */ /* line 형태 */ 
.foot-menu li:last-child{padding-right:0}
.foot-menu li:first-child:before{display:none} 
.foot-menu li a{color:#aaa; font-size:16.5px; letter-spacing:-0.5px; transition:all 0.3s ease; font-weight: 500;}
.foot-menu li a:hover {color:var(--main-color);}
/* .foot-menu li a b{color:var(--main-color); font-weight:500;} */

/* Footer :: 사이트맵 */
.footer-sitemap-list-con > ul > li{float:left; padding-left:60px;}
.footer-sitemap-list-con > ul > li:first-child{padding-left:0;}
.footer-sitemap-list-con > ul > li h3{margin-bottom:20px; color:#333; font-size:17px; font-weight:500; letter-spacing:-0.5px;}
.footer-sitemap-list-con > ul > li .sitemap-2dep li{margin-bottom:15px;}
.footer-sitemap-list-con > ul > li .sitemap-2dep li:last-child{margin-bottom:0}
.footer-sitemap-list-con > ul > li .sitemap-2dep li a{display:block; color:#aaa; font-size:14px; letter-spacing:-0.3px; transition:all 0.4s}
.footer-sitemap-list-con > ul > li .sitemap-2dep li a:hover{color:var(--main-color);}

/* 사이트맵 :: 닫기버튼 */
/* .sitemap-close-btn{display:none; width:var(--header-util-width); height:var(--header-util-width); position:fixed; top:0px; right:0px; z-index:10001; font-size:0; text-indent:-9999px} */
.sitemap-close-btn{display:none; width:45px; height:45px; position:fixed; top:2.8rem; right:2.5rem; z-index:10001; font-size:0; /* text-indent:-9999px */}

/* -------- FOOTER :: 하단 -------- */
#footerBottom{ padding:80px 0; }
.footer-bottom-container {display:flex; justify-content: space-between; padding:0 16rem;}

/* Footer :: 서브 퀵 메뉴 */
.sub-footer-quick .footer-quick-menu {position:fixed; right:2.2rem; bottom:-7rem; z-index:99; transition:var(--transition-custom);}
.footer-quick-menu .menu-list {width: 7rem; height: 7rem; position: relative;} 
.footer-quick-menu .menu-list .list-item {position:absolute; top:0; right:0; transition:var(--transition-custom); transition-delay:0.2s;}
/* .footer-quick-menu .menu-list .list-item:nth-child(1) {z-index:5;}
.footer-quick-menu .menu-list .list-item:nth-child(2) {z-index:10;} */
.footer-quick-menu .menu-list .list-item a {position: relative; display: flex; justify-content:center; align-items: center; width: 7rem; height: 7rem; border-radius: 7rem; margin: auto; margin-right: 0; transition: var(--transition-custom); overflow:hidden; box-shadow: 7px 7px 24px 0px rgba(0, 0, 0, 0.18); background: #fff;}
.footer-quick-menu .menu-list .list-item.footer-inquiry a {background: var(--main-color);}
.footer-quick-menu .menu-list .list-item.footer-inquiry a .quick-logo-box {position: absolute; width: 7rem; height: 7rem; text-align: center; left: 0; border-radius: 7rem; display: flex; align-items: center; justify-content: center;}
.footer-quick-menu .menu-list .list-item.footer-inquiry a .quick-tit {    position: absolute;
    font-size: 1.8rem;
    letter-spacing: 0.15em;
    color: #fff;
    left: 8rem;
    opacity: 0;
    transition: all 0.3s;
    transition-delay: 0.3s; font-family: var(--font-family2);}
.footer-quick-menu .menu-list .list-item a i {position: relative; font-size:2.4rem; color:#000; text-align:center; z-index:1;}
.footer-quick-menu .menu-list .list-item.footer-inquiry a:hover {width: 20rem; background:var(--main-color);}
.footer-quick-menu .menu-list .list-item.footer-inquiry a:hover .quick-tit {opacity:1;}

.footer-quick-menu.active {bottom:7rem;}
.footer-quick-menu.active .list-item:nth-child(1) {top:-8rem;}



/* Footer :: 푸터로고 */
.foot-logo{display:block; padding-bottom:20px; width: 22rem;}
.footer-right-con .foot-logo{text-align:right;}

/* Footer :: 정보 */
.footer-address{margin-bottom:15px; letter-spacing:-0.5px;}
.footer-address .footer-address-txt{color:#444; font-size:14px; line-height:1.7; margin:0 -8px;}
.footer-address p{display:inline-block; vertical-align:middle; position:relative; margin:0 8px;}
.footer-address p:before{position:absolute; top:50%; left:-8px; width:1px; height:10px; margin-top:-5px; background-color:#ccc; content:"";}
.footer-address p:first-child:before{display:none;}
.footer-address a{color:inherit}

/* Footer :: 정보 style02 */
.footer-address-info-box{letter-spacing:-0.5px; display:flex;}
.footer-address-list:first-of-type {margin-right: 5.5rem;}
.footer-address-list .address-tit {font-size:1.6rem; letter-spacing:-0.04em; color:#000; line-height:1.75em; font-weight: 500; margin-bottom: 1rem;}
.footer-address-list dl{display:block; vertical-align:middle; color:#aaa; font-size:14px; line-height:1.7;}
.footer-address-list dl:first-child{margin-left:0}
.footer-address-list dl dt,
.footer-address-list dl dd{vertical-align:middle; display:inline-block; font-size:1.6rem; color:#757575; letter-spacing:-0.04em;}
.footer-address-list dl dt{margin-right:7px; color:#666; vertical-align:top;}
.footer-address-list span{display:inline-block; margin-right:15px}
.footer-address-list a{color:inherit}

/* Footer :: Copyright */
.footer-copyright{font-size:14px; letter-spacing:-0.04em; color:rgba(117,117,117,0.5); line-height:2em; margin-top: 2rem;}
/* .footer-copyright b{color:var(--main-color)} */

/* Footer :: SNS 리스트 */
.foot-sns-menu{text-align:right;}
.foot-sns-menu li{/* float:left; */display:inline-block; vertical-align:middle; margin-left:25px}
.foot-sns-menu li:first-child{margin-left:0}
.foot-sns-menu li img{width:35px;}
.foot-sns-menu li a{display:block; text-align:center;}
.foot-sns-menu li a i{font-size:25px; color:#757575}

/* Footer :: 패밀리사이트 */
.family-site-box{/* position:absolute; top:20px; right:0;*/ position:relative; width:215px; text-align:left; letter-spacing:-0.25px;}
.family-site-box .family-site-open-btn{display:block; width:100%; height:50px; line-height:50px; padding:0 20px; text-align:left; font-size:14px; border:1px solid #111; background-color:#111; color:#fff; box-sizing:border-box; }
.family-site-box .family-site-open-btn:after{position:absolute; right:10px; top:50%; transform:translateY(-50%); font-size:24px; font-family: 'xeicon'; content:"\e942";}
.family-site-box.open .family-site-open-btn:after{content:"\e945";}
.family-site-list{position:absolute; bottom:100%; left:0px; width:100%;  padding:10px 0; background-color:#fff; border:1px solid #ddd; border-bottom:0;  z-index:11; display:none; box-sizing:border-box;}
.family-site-list a{display:block; padding:10px 20px; color:#333; font-size:12px;}
.family-site-list a:hover{color:#000; text-decoration:underline;}

/* ****************** SUB LAYOUT ********************** */
/*  SUB LAYOUT :: 비주얼 */
#visual{position:relative; width:100%; height:var(--sub-visual-height); }
#visual .visual-img-con{
	position:absolute; 
	top:0px; 
	left:0px; 
	width:100%;
	height:var(--sub-visual-height);
	overflow:hidden; 
}
#visual .visual-img-inner{
	width:100%; 
	height:100%; 
	background-size:cover !important; 
	transform: scale(1.2,1.2); 
	transition:all 2s;
}
#visual .visual-txt-con{position:relative; z-index:1; text-align:center; display:table; width:100%; height:100%; letter-spacing:-0.5px; color:#fff; box-sizing:border-box; padding:0 16rem;}
#visual .visual-txt-container{position:relative; width:100%; display:flex; align-items:center;}
#visual .visual-tit,
#visual .visual-sub-txt,
#visual .location{
	opacity:0;filter:Alpha(opacity=0);
	-webkit-transition:opacity 1.0s, transform 1.0s;
	transition:opacity 1.0s, transform 1.0s;
}
#visual .visual-tit{
	font-weight:500; 
	font-size:11rem;
	font-family:var(--font-family2);
	/* text-transform:capitalize; */
	-webkit-transition-delay:0.3s;
	transition-delay:0.3s;
}
#visual .visual-sub-txt{
	font-size:18px; 
	font-weight:300; 
	font-family:var(--font-family2);
	letter-spacing:-0.005em;
	color:rgba(255,255,255,0.8);
	padding-top:15px;
	/* margin-left:35px; */
	margin-left:50px;
	align-self:flex-end;
	padding-bottom:3rem;
	transition-delay:0.3s;
}
#visual .location{
	transition-delay:0.5s;
}

/* SUB LAYOUT :: 상단효과 active */
#visual.active .visual-img-inner{
     transform: scale(1.0,1.0) rotate(0.002deg);
}
#visual.active .visual-tit,
#visual.active .visual-sub-txt,
#visual.active .location{
	opacity:1.0;filter:Alpha(opacity=100);
}

#visual.active .visual-tit .char, 
#visual.active .visual-sub-txt .char {
	-webkit-animation: sub-text-active-animation 1.4s cubic-bezier(0.4, 0, 0.2, 1) both;
	animation: sub-text-active-animation 1.4s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes sub-text-active-animation {
	from {
		opacity:0;filter:Alpha(opacity=0);
		-webkit-transform: translateY(70px); 
		transform: translateY(70px); 
	}
	to {
		opacity:1.0;filter:Alpha(opacity=100);
		-webkit-transform: translateY(0); 
		transform: translateY(0); 
	}
}



/* middleArea */
#middleArea {/* position: relative; top:-70px; */ position: relative; z-index:10; margin-top:-70px;}

/* SUB LAYOUT :: 서브메뉴(스타일3) */
#topMenu03{position:relative; width:100%; height:calc(var(--sub-menu-height) + 1px); border-top:1px solid rgba(255,255,255,0.2);} /* (+1 border height)*/
#topMenu03 .side-menu-inner{text-align:center; width:100%; height:var(--sub-menu-height); border-bottom:1px solid #ddd; /* background-color: #fff; */ }
#topMenu03 .side-menu-inner-wrap {padding:0 16rem;}
#topMenu03 .side-menu-inner ul{display:flex; align-items:center; justify-content:center;}
#topMenu03 .side-menu-inner ul li{
	float:left;
	/* width:25%; */
	width: 100%;
	vertical-align:middle;
	/* border-right:1px solid #ddd; */
	transition:var(--transition-custom);
}
#topMenu03 .side-menu-inner ul li:first-child {/* border-left: 1px solid #ddd; */ margin-left:0}
#topMenu03 .side-menu-inner ul li > a{
	display:block; 
	display:table; 
	position:relative;
	width:100%;
	height:var(--sub-menu-height);
	line-height:1.2; 
	color:#fff; 
	font-size:17px; 
	letter-spacing:-0.5px; 
	font-weight:400; 
	word-break:keep-all;
	transition:var(--transition-custom);
}

#topMenu03 .side-menu-inner ul li > a > i {display:none;}

#topMenu03 .side-menu-inner ul li > a:before{
	position:absolute;
	top:0px;
	left:50%;
	width:0;
	height:3px;
	background-color:#fff;
	content:"";
	transition:var(--transition-custom);
}
#topMenu03 .side-menu-inner ul li > a > span{display:table-cell; vertical-align:middle; padding:0 15px; }
#topMenu03 .side-menu-inner ul li > a:hover:before, 
#topMenu03 .side-menu-inner ul li.on > a:before{width:100%; margin-left:-50%;}


/* SUB LAYOUT :: 서브메뉴 Fixed (공통) */
@media all and (min-width:1025px){
	.fixed-sub-menu.top-fixed .side-menu-inner{position:fixed; top:0px; left:0px; z-index:9999;}
}

/* SUB LAYOUT :: 모바일메뉴(공통)  */
#topMenuM{display:none;}

/*  SUB LAYOUT :: 컨텐츠 레이아웃 */
#content:not(.wide){padding:100px 0}
#content.wide{padding:100px 0 0 0}

/*  SUB LAYOUT :: 상단정보 (공통) */
#contentInfoCon{position:relative; margin:0 auto 50px; text-align:center; }
#contentInfoCon .content-tit{color:#333; font-size:38px; font-weight:600; letter-spacing:-0.6px;}
#contentInfoCon .content-tit:after{display:block; content:""; width:58px; height:2px; margin:30px auto 0; background-color:#040508}
#contentInfoCon .content-sub-tit{color:#888; font-weight:300; margin-top:30px; font-size:16px; letter-spacing:-0.8px; word-break:keep-all;}
/*  SUB LAYOUT :: 상단정보(타이틀+location) */
#contentInfoCon.content-title-location{text-align:left;}
#contentInfoCon.content-title-location .content-tit{float:left;}
#contentInfoCon.content-title-location .content-tit:after{display:none;}
#contentInfoCon.content-title-location .location{float:right;}

/* ****************** MODAL LAYERPOPUP ********************** */
/* modal layer */
.modal-fixed-pop-wrapper{display:none; overflow-y:scroll; overflow-x:hidden;  position:fixed; top:0px; left:0px; width:100%; height:100%; z-index:9999; background:#000; background:rgba(0,0,0,0.8);}
.modal-fixed-pop-inner{position:absolute; display:table; width:100%; height:100%; text-align:center;}
.modal-inner-box{ position:relative; display:table-cell; vertical-align:middle;}
.modal-loading{position:absolute; top:50%; left:50%; margin:-25px 0 0 -25px; z-index:10000;}
.modal-inner-content{text-align:left;}
.loading {
  display: inline-block;
  width: 50px;
  height: 50px;
  border: 8px solid rgba(255,255,255,.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}
@-webkit-keyframes spin {
  to { transform: rotate(360deg); }
}
/* modal layer content */
.footer-modal-content{position:relative; width:96%; max-width:1000px; margin:20px auto; }
.footer-modal-content h1{font-size:24px; font-weight:600; letter-spacing:-0.5px; text-align:center; padding:0 50px 20px; color:#fff;}
.modal-close-btn{position:absolute; top:-6px; right:-6px; color:#fff; }
.modal-close-btn i{font-size:38px;}
.modal-close-btn i:hover {color:#fff}
.footer-inner-box{padding:30px; background-color:#fff; }
.footer-inner{padding:20px; height:400px; overflow-y:auto; overflow-x:hidden; border:1px solid #ddd; }

.privacy-pop .modal-close-btn {top:-5px;}

/* 문의하기 팝업 */
/* .inquiry-modal {background: #fff; padding:5rem 6.5rem; box-sizing:border-box; max-width:1300px;} */
.inquiry-modal {max-width:1300px; margin:0 auto;}
.popup-online-box {background: #fff; padding:5rem 6.5rem; box-sizing:border-box; max-width:1300px;}
.inquiry-modal .cm-btn-controls {margin-top: 30px;}
.inquiry-modal .cm-btn-controls button {width: 250px; height: 64px; font-size:16px; background-color:var(--sub-color);}
.inquiry-modal .modal-close-btn {position: static; color:#000;}
.inquiry-modal .modal-close-btn i {font-size:3.4rem; letter-spacing:-0.065em;}
.inquiry-modal .modal-close-btn:hover i {color:#000;}
.inquiry-pop {background: #fff; padding:5rem 6.5rem;}
/* .inquiry-pop .inquiry-top-line {display:flex; justify-content:space-between; padding-bottom:3.5rem; border-bottom:2px solid #000;} */
.inquiry-top-line {display:flex; justify-content:space-between; padding-bottom:3.5rem; border-bottom:2px solid #000;}
.inquiry-top-line .title strong {font-size:5rem; letter-spacing:-0.005em; color:#000; font-weight: 600; font-family:var(--font-family2);}
.inquiry-top-line .title em {font-size:2.2rem; letter-spacing:-0.05em; color:#8a8a8a; font-weight: 500; margin-left: 2.5rem;}
/* .inquiry-pop .title strong {font-size:5rem; letter-spacing:-0.005em; color:#000; font-weight: 600; font-family:var(--font-family2);}
.inquiry-pop .title em {font-size:2.2rem; letter-spacing:-0.05em; color:#8a8a8a; font-weight: 500; margin-left: 2.5rem;} */

.inquiry-form-box {margin-top: 2rem;}
.inquiry-agree-box {display:flex; align-items:center; justify-content:space-between; width: calc(100% - 7.5rem); float:right;}
.inquiry-agree-box .agree-txt {color:#000; font-size:1.6rem; letter-spacing:-0.065em; line-height:2em;}
.inquiry-agree-box .agree-txt input {display:none;}
.inquiry-agree-box .agree-txt input + i {font-size:2rem; color:rgba(98,98,98,0.3); position: relative; top:3px; margin-right:10px;}
.inquiry-agree-box .agree-txt input:checked + i {color:var(--sub-color);}
.inquiry-agree-box .agree-txt label span {color:var(--sub-color);}
.inquiry-agree-box .agree-show-btn {color:rgba(0,0,0,0.5); font-size:1.6rem; letter-spacing:-0.065em;}
.inquiry-agree-box .agree-show-btn i {font-size:2rem; color:rgba(98,98,98,0.5); position: relative; top:3px; margin-left:5px;}

.modal-fixed-pop-wrapper2{
	display: none;
	overflow-y: auto;
	/* overflow-y: hidden; */
	overflow-x: hidden;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #000;
	background: rgba(0,0,0,0.8);
}

@media all and (max-width:1280px){
	/* .inquiry-modal {padding:4rem;} */
	.inquiry-tbl-style07-con dt {width: 10rem;}
	.inquiry-tbl-style07-con dd {width: calc(100% - 10rem);}
	.inquiry-agree-box {width: calc(100% - 10rem);}
}

@media all and (max-width:800px){
	.inquiry-pop {padding:3rem; height:450px; overflow-y:scroll;}
	.inquiry-pop .title em {display: block; margin-left:0; margin-top:2rem; text-align:left;}
	.inquiry-modal .modal-close-btn {align-self:flex-start;}
	.inquiry-tbl-style07-con {flex-wrap:wrap;}
	.inquiry-tbl-style07-con dd {width: 100%; margin-top: 1rem;}
	.inquiry-agree-box {width: 100%;}

}

@media all and (max-width:480px){
	.inquiry-agree-box {flex-direction:column; align-items:flex-start;}
}



/* 사이트맵 */
#siteMapCon05 {    position: fixed;
    visibility: hidden;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 100000;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;}

#siteMapCon05:before {
	    position: absolute;
    top: 0;
    right: -100%;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background:#0037b8 url(/images/content/sitemap_background.jpg) no-repeat 50% 0;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    background-size: cover;
}

#siteMapCon05.open:before{
	top: 0;
    right: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

#siteMapCon05 h1 {
	    position: relative;
    font-size: 50px;
    font-weight: 500;
    letter-spacing: -0.25px;
    padding: 0 0 22px;
    text-align: center;
    color: #fff;
    visibility: hidden;
    opacity: 0;
    transition-delay: 0s;
}

.site-map-con {
    position: relative;
    visibility: hidden;
    opacity: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    z-index: 1;
}

.sitemap-wrapper05{
	    padding: 0;
    margin-top: 120px;
    visibility: hidden;
    opacity: 0;
    transition-delay: 0s;
    background-color: transparent;	
}

.sitemap-wrapper05 > ul {
	    display: table;
    width: 100%;
    table-layout: fixed;
}

.sitemap-wrapper05 > ul > li {
	    display: table-cell;
    vertical-align: top;
    text-align: center;
}

.sitemap-wrapper05 > ul > li > h2{
	    position: relative;
    color: #fff;
    font-size: 28px;
    letter-spacing: -0.25px;
    padding: 0 10px 60px;
    font-weight: 500;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    background-color: transparent;
}

.sitemap-wrapper05 > ul > li > h2:before {
	position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: '';
    width: 100%;
    height: 1px;
    background-color: transparent;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.sitemap-wrapper05 > ul > li .sitemap-2dep {
	    padding: 45px 10px 0;
}

.sitemap-wrapper05 > ul > li .sitemap-2dep a{
	    display: block;
    padding: 0.5em 0;
    color: rgba(255,255,255,0.7);
    opacity: 0.8;
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.4;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

.sitemap-wrapper05 > ul > li .sitemap-2dep a > i {display:none;}

.sitemap-wrapper05 > ul > li:hover > h2:before {background-color:#fff;}
.sitemap-wrapper05 > ul > li .sitemap-2dep a:hover {opacity:1; color:rgba(255,255,255,1);}

#siteMapCon05.open {
	    visibility: visible;
    opacity: 1;
    z-index: 10000000;
}

#siteMapCon05.open:before {
	    top: 0;
    right: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

#siteMapCon05.open h1 {
	visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    transition-delay: 0.5s;
}

#siteMapCon05.open .site-map-con{
	visibility: visible;
    opacity: 1;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

#siteMapCon05.open .sitemap-wrapper05{
	visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    transition-delay: 0.8s;
}