@charset "utf-8";
/* *******************************************************
 * filename : layout.css
 * description : 전체 레이아웃 CSS
 * date : 2020-11-25
******************************************************** */
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Material-Icons.woff2") format('woff2');
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

@font-face {
    font-family: 'Binggrae';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/Binggrae.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'NanumSquareRound';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NanumSquareRound.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
/* ****************** LAYOUT ********************** */
body, table, th, td, button, select, input, textarea {
	font-family: 'Binggrae', 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;
	font-size:13px;
	color:#666;
	-webkit-text-size-adjust:none;
	word-break:keep-all;
}
body { background-color:#fff; }
#wrap {overflow:hidden; width:100%; min-width:320px; position:relative; }
.area{ max-width:1200px; margin:0px auto;} /* width 홈페이지 컨텐츠 가로값에 맞게 변경 */
.area-box{ max-width:1800px; margin:0px auto; }
.area-box2{ max-width:1500px; margin:0px auto; }
.font-taom{font-family: 'BinggraeTaom', 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;}
.font-nanum{font-family: 'NanumSquareRound', 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;}
.font-noto{font-family:'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;}

/* ****************** HEADER ********************** */
#header{
	position:relative; height:130px; top:0; left:0; width:100%; z-index:9999; 
	-webkit-transition:all 0.3s; transition:all 0.3s;
}	/* 배경위에 헤더가있으면 absolute변경 후 headerInnerWrap 배경삭제 */
.fullpage-wrapper #header{
	position:fixed;
}
#headerInnerWrap{
	position:absolute; top:0px; left:0px; width:100%; height:100%; z-index:9999; background-color:#fff; 
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s
}
#headerInner{position:relative; height:100%; margin:0px auto;}
#header .logo{position:relative; z-index:100; float:left; padding:34.5px 0;}		/* padding값 적절히 바꿔주세요 */
#header .logo a{display:block;}
#header .logo img{display:block; vertical-align:top;}

/* -------- Header :: UTIL BOX -------- */
.header-util-box{position:absolute; top:50%; right:0; margin-top:-25px; z-index:100;}
/* 메뉴 바로가기 */
.header-menu-box{float: left;}
.header-menu-box li{position: relative; float: left; margin-left: 54px;}
.header-menu-box li:before{position: absolute; top: 50%; margin-top: -7.5px; left: -26px; display: block; content: ''; width: 1px; height: 15px; background-color: #c2c2c2;}
.header-menu-box li:first-child{margin-left: 0;}
.header-menu-box li:first-child:before{display: none;}
.header-menu-box li a{display: block; font-size: 18px; line-height: 50px; letter-spacing: -0.5px; color: #444;}
/* 로그인,로그아웃 */
.header-member-box{float: left; margin-left: 35px;}
.header-member-box li{margin-left: 6px; float: left;}
.header-member-box li:first-child{margin-left: 0;}
.header-member-box li a{display: block; width: 130px; height: 50px; background-color: #efefef; -webkit-border-radius: 50px; border-radius: 50px; text-align: center;}
.header-member-box li a img{display: inline-block; vertical-align: middle;}
.header-member-box li a span{display: inline-block; vertical-align: middle; margin-left: 5px; font-size: 15px; font-weight: 600; letter-spacing: -0.25px; line-height: 50px; color: rgba(34,34,34,0.8);}
.header-member-box li a span.login{margin-left: 10px;}
.header-member-box li a span.join{margin-left: 5px;}

/* -------- Header :: GNB(PC) -------- */
.gnb-overlay-bg{display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:9997;}	/* gnb overlay BG */
#gnb{position:absolute; text-align:center; top:0; left:0px; width:100%; z-index:99;}
#gnb > ul{padding-left: 180px; width: 100%; *display:inline;*zoom:1; text-align: left; font-size: 0; -webkit-box-sizing: border-box; box-sizing: border-box;}
#gnb > ul > li{margin-left: 95px; position:relative; display: inline-block; word-break:keep-all;}
#gnb > ul > li:first-child{margin-left: 0;}
#gnb > ul > li:before{position: absolute; top: 50%; margin-top: -24px; left: -50px; display: block; content: ''; width: 2px; height: 48px; background-color: #333;}
#gnb > ul > li:first-child:before{display: none;}
#gnb > ul > li > a{position:relative; z-index:100; display:block; height:130px; line-height:130px; text-align:center; color:#333; font-weight: 600; font-size:24px;}
#gnb > ul > li > a span{margin: 0 15px 0 13px;}
#gnb > ul > li > a .img, #gnb > ul > li > a span, #gnb > ul > li > a .arrow{display: inline-block; vertical-align: middle; -webkit-transition:all 0.3s; transition:all 0.3s;}
#gnb > ul > li > a .arrow{width: 27px; height: 27px; background: url("../images/icon/icon_arrow.png") 0 0 no-repeat;}
#gnb > ul > li:nth-child(2) > a .arrow{background: url("../images/icon/icon_arrow.png") 0 0 no-repeat;}
/* active */
#gnb > ul > li.active > a{color: #fec905;}
#gnb > ul > li:nth-child(2).active > a{color: #7dc501;}
#gnb > ul > li.active > a .arrow{background: url("../images/icon/icon_arrow01_on.png") 0 0 no-repeat;}
#gnb > ul > li:nth-child(2).active > a .arrow{background: url("../images/icon/icon_arrow02_on.png") 0 0 no-repeat;}

@media all and (min-width:1025px){
	#gnb > ul > li > a:hover{color: #fec905;}
	#gnb > ul > li:nth-child(2) > a:hover{color: #7dc501;}
	#gnb > ul > li > a:hover .arrow{background: url("../images/icon/icon_arrow01_on.png") 0 0 no-repeat; -webkit-transform: translateX(5px); transform: translateX(5px);}
	#gnb > ul > li:nth-child(2) > a:hover .arrow{background: url("../images/icon/icon_arrow02_on.png") 0 0 no-repeat;}
}

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

/* ****************** FOOTER ********************** */
/* -------- FOOTER :: 레이아웃 -------- */
#footer{background-color:#f5f5f5;padding: 30px 0 40px;}
#footer .area-box{padding: 0 15px;}
#footerInner{position:relative; }
.footer-left-con{float:left; }
.footer-right-con{float:right;}

/* Footer :: 푸터메뉴 */
.foot-menu{}
.foot-menu li{float:left; position:relative; padding-left:40px; line-height:48px;}
.foot-menu li:first-child{padding-left:0}
.foot-menu li:first-child:before{display:none} 
.foot-menu li a{color:rgba(51,51,51,0.9); font-size:14px;}
.foot-menu li a b{color:#00a7d9; font-weight:400;}
/* Footer :: 정보 */
.footer-address{margin-top: 5px; margin-bottom:15px;}
.footer-address .footer-address-txt{color: rgba(51,51,51,0.6); font-size:13px; letter-spacing: -0.25px; line-height:1.7; margin:0 -15px;}
.footer-address p{display:inline-block; vertical-align:middle; position:relative; margin:0 15px;}
.footer-address p i{position: relative; top: 2px; font-size: 16px; margin-right: 5px;}
.footer-address a{color:inherit}
/* Footer :: Copyright */
.footer-copyright{font-size:13px; letter-spacing:-0.25px; color: rgba(51,51,51,0.4);}

/* Footer :: 패밀리사이트 */
.family-site-box{position:relative; width:185px; text-align:left; letter-spacing:-0.25px;}
.family-site-box .family-site-open-btn{display:block; width:100%; height:48px; line-height:48px; padding:0 25px; text-align:left; font-size:14px; background-color:#fff; color:#222; box-sizing:border-box; -webkit-border-radius: 48px; border-radius: 48px;}
.family-site-box .family-site-open-btn:after{position:absolute; right:15px; top:50%; transform:translateY(-50%); font-size:24px; font-family: 'xeicon'; content:"\e936";}
.family-site-box.open .family-site-open-btn:after{content:"\e930";}
.family-site-list{position:absolute; bottom:100%; left:0px; width:100%; padding:10px 0; background-color:#fff; border:1px solid #ddd; z-index:11; display:none; box-sizing:border-box; -webkit-border-radius: 10px; border-radius: 10px;}
.family-site-list a{display:block; padding:10px; color:#333; font-size:12px;}
.family-site-list a:hover{color:#000; text-decoration:underline;}
/* Footer :: 푸터로고 */
.foot-logo{margin-top: 15px; display:block; text-align:right;}

/* ****************** SUB LAYOUT ********************** */
/*  SUB LAYOUT :: 비주얼 */
#visual{position:relative; overflow:hidden; width:100%; height:684px; padding-bottom: 210px; -webkit-box-sizing: border-box; box-sizing: border-box;}
#visual .visual-img-con, .visual-img-cover, .visual-img-cover > div{position:absolute; top:0px; left:0px; width:100%; height:100%; background-size:cover !important;}
#visual .visual-img-cover > div{animation: upDown 2s ease-in-out infinite;}
.sub-visual-img01{position: absolute; top: 114px; left: 0;}
.sub-visual-img02{position: absolute; top: 426px; right: 80px;}
#visual .visual-txt-con{position:relative; z-index:1; text-align:center; display:table; width:100%; height:100%; letter-spacing:-0.5px; color:#fff;}
#visual .visual-txt-container{position:relative; width:100%;}
#visual .visual-tit{font-weight:600; font-size:66px;}
/* 마이페이지 추가 css */
#visual.sub-visual-member{height: 301px; padding-bottom: 25px;}
#visual.sub-visual-member .visual-tit{font-size: 50px; color: #161616;}

/* SUB LAYOUT :: 서브메뉴(스타일2) */
#topMenu02{margin-top: 50px; position:relative; width:100%; height:77px;}
#topMenu02 .side-menu-inner{text-align: center;}
#topMenu02 .side-menu-inner ul{padding: 0 27px; display: inline-block; text-align:center; height:67px; border:5px solid #e5e5e5; background-color: #fff; -webkit-border-radius: 27px; border-radius: 27px; font-size: 0;}
#topMenu02 .side-menu-inner ul li{display:inline-block; margin-left: 16px; width: 244px; -webkit-transition:all 0.3s; transition:all 0.3s;}
#topMenu02 .side-menu-inner ul li:first-child {margin-left: 0;}
#topMenu02 .side-menu-inner ul li > a{
	display:block; 
	display:table; 
	position:relative; width:100%; height:67px; 
	line-height:1.2; color:#121212; 
	font-size:20px; letter-spacing:-0.5px; font-weight:600; word-break:keep-all;
	-webkit-transition:all 0.3s; transition:all 0.3s;
}
#topMenu02 .side-menu-inner ul li > a:before{
	position:absolute; bottom:-6px; left:50%;
	content:""; width:0; height:6px; background-color:#feab05; -webkit-border-radius: 6px; border-radius: 6px;
	-webkit-transition:all 0.3s; transition:all 0.3s;
}
#topMenu02 .side-menu-inner ul li > a > span{display:table-cell; vertical-align:middle;}
#topMenu02 .side-menu-inner ul li > a:hover:before, 
#topMenu02 .side-menu-inner ul li.on > a:before{width:100%; width:calc(100% + 1px); margin-left:-50%;}
#topMenu02 .side-menu-inner ul li:hover > a, 
#topMenu02 .side-menu-inner ul li.on > a{color:#feab05;}

/* 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 :: 모바일메뉴(공통)  */
#topMenuM01,
#topMenuM02{display:none;}

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

/* ****************** 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;
  -webkit-animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
  to { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
@-webkit-keyframes spin {
  to { -webkit-transform: rotate(360deg); 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; }

/* ****************** 사이트맵 ********************** */
/* -------- 사이트맵 01 -------- */
/* 사이트맵 01 */
.sitemap-wrapper{padding:30px; background-color:#fff;}
.sitemap-wrapper > ul{display:table; width:100%; table-layout:fixed;}
.sitemap-wrapper > ul > li{display:table-cell; vertical-align:top; text-align:center;}
.sitemap-wrapper > ul > li > h2{color:#191919; margin:0 2% 20px 2%; padding:15px; font-size:18px; background-color:#f2f2f2;  letter-spacing:-1.0px; margin-bottom:20px; font-weight:500;}
.sitemap-wrapper > ul > li .sitemap-2dep {padding:0 5% 20px;}
.sitemap-wrapper > ul > li .sitemap-2dep a{display:block; padding:10px 0; color:#666; font-size:14px; font-weight:400; line-height:1.2em;}
.sitemap-wrapper > ul > li .sitemap-2dep a:hover{color:#000; }

/* -------- 사이트맵 02 -------- */
/* 사이트맵 02 :: Layout */
#sitemapContent{	
	position:fixed; 
	top:0; left:0; right:0; bottom:0; 
	opacity:0;filter:Alpha(opacity=0); 
	visibility:hidden;   
	z-index:-1;
	-webkit-transition:all 0.3s  0.5s;
	transition:all 0.3s  0.5s;
}
#sitemapInnerCon{position:absolute; top:0; left:0; bottom:0; right:100px; border-right:1px solid #ddd; }
#sitemapContent .sitemap-bg-box{position:absolute; top:0px; left:0px; width:100%; height:100%;}
#sitemapContent .visual-intro-item{float:left; position:relative; height:100%;}
#sitemapContent .visual-intro-item:before{
	position:absolute;  left:0; top:0px; width:1px; height:0; content:""; background-color:#ddd; z-index:1; 
}
#sitemapContent .visual-intro-item:first-child:before{display:none}
#sitemapContent .visual-intro-item:after{	
	content:""; 
	position:absolute; right:0; top:0px; 
	width:100%; height:100%; 
	background: #333; 
	-webkit-transition: width .6s cubic-bezier(0.47, 0, 0.31, 1.04) 0.2s;
	transition: width .6s cubic-bezier(0.47, 0, 0.31, 1.04) 0.2s ;
}
#sitemapContent .sitemap-close-btn{position:absolute; top:40px; right:40px;}
#sitemapContent .sitemap-close-btn i{font-size:20px; color:#222;}

/* 사이트맵 02 :: 메뉴리스트 */
.sitemap-wrapper-style02{height:100%; }
.sitemap-wrapper-style02 > ul{overflow:hidden; position:relative; z-index:1; top:50%; transform:translateY(-50%);}
.sitemap-wrapper-style02 > ul > li{overflow:hidden; float:left; width:20%;height:100%;}
.sitemap-wrapper-style02 > ul > li > h2{overflow:hidden; color:#191919; font-size:18px; letter-spacing:-1.0px; margin:0% 15% 40px; font-weight:600; }
.sitemap-wrapper-style02 > ul > li:hover > h2{color:#f57f20;}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a{
	overflow:hidden; position:relative; display:block;  padding:20px 15%; color:#777; font-size:15px; letter-spacing:-0.15px; font-weight:400; line-height:1.2;
	-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;-ms-transition:all 0.3s;transition:all 0.3s
}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a:after{
	position:absolute; top:0; left:0; width:0; content:""; height:100%; background:#f57f20;
	-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;-ms-transition:all 0.3s;transition:all 0.3s
}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a span{position:relative; z-index:1;}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a .gnb-icon{display:none;}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a:hover{color:#fff; }
.sitemap-wrapper-style02 > ul > li .sitemap-2dep a:hover:after{width:100%; }
.sitemap-wrapper-style02 ul li span{
	display:block; opacity:0;filter:Alpha(opacity=50);
	-webkit-transform:translateX(-5%);
	transform:translateX(-50%);
	transition: transform .8s cubic-bezier(0.47, 0, 0.31, 1.04) 0s, opacity .8s cubic-bezier(0.47, 0, 0.31, 1.04) 0s; 
}
/* 사이트맵 open */
#sitemapContent.open{
	opacity:1.0;filter:Alpha(opacity=100); 
	visibility:visible; 
	z-index:99999; 
	background-color:#fff;
	-webkit-transition:all 0.3s  0s; 
	transition:all 0.3s 0s;
}
#sitemapContent.open .visual-intro-item:before{height:100%;}
#sitemapContent.open .visual-intro-item:after {width:0;}
#sitemapContent.open .visual-intro-item {
	-webkit-transform: scaleX(1);
	transform: scaleX(1); 
	transform-origin:right top; 
	transition-property: transform;
}
#sitemapContent.open .sitemap-wrapper-style02 ul li span{
	opacity:1.0;filter:Alpha(opacity=100);
	-webkit-transform:translateX(0);
	transform:translateX(0);
	transition: transform .8s cubic-bezier(0.47, 0, 0.31, 1.04), opacity .8s cubic-bezier(0.47, 0, 0.31, 1.04); 
}