@charset "utf-8";

/* background fixed 사용시 버그 대응용 * 한 번 스크롤로 페이지 전체 넘김을 할 때는 html스타일에서 height속성 제거하기 */
/* html {overflow: hidden; height: 100%;} */
/* body {overflow: auto; height: 100%;} */

/* ************************ 공용 ************************ */
a {text-decoration:none !important; outline:none !important; selector-dummy:expression(this.hideFocus=true) !important;}
a:link {text-decoration:none; color:#3d3833;}
a:visited {text-decoration:none; color:#3d3833;}
a:hover {text-decoration:none; color:#000;}
a:active {text-decoration:none; color:#3d3833;}
a,img,i {transition:all .1s linear;	-webkit-transition:all .1s linear; -moz-transition:all .1s linear;}
			
body {font-family:NotoSansKR,AppleSDGothicNeo-Light,DroidSans,HelveticaNeue,"돋움",sans-serif; font-size:16px; line-height:1.8; color:#666; letter-spacing:-.2px;}
body > section {position:relative; display:block; width:100%; max-width:1200px; margin:0 auto;}

#gotop {z-index:888; position:fixed; width:40px; height:40px; border-radius:50%; bottom:40px; right:40px; opacity:0; background:#fff url(../images/common/arrow_up.png) no-repeat 50%; border:3px solid #ddd;}

/* 컨텐츠 */
.contents img {max-width:100%; height:auto;}

/* ************************ 데스크탑 (992~) ************************ */
@media screen and (min-width: 992px), print {
	body {min-width:1200px; font-weight:300;}
	body>* {clear:both; position:relative; width:1200px; margin:0 auto;}
	.mobile {display:none !important;}

	/*헤더*/
	body>header {z-index:999; position:absolute; width:100%; background-color:transparent !important; border-bottom:1px solid rgba(255,255,255,.2);}
	body>header .head {position:relative; height:80px; max-width:1200px; margin:0 auto; overflow:hidden;}
	body>header .head .head-in {position:absolute; left:0; top:50%; margin-top:-15px;}
	body>header .head .head-in a {display:block; width:30px; height:30px;}
	body>header .head .head-in a span.i-home {display:block; width:30px; height:30px; border-radius:50%; background:#78a2ef url(../images/common/i-home.png)center no-repeat;}
	body>header .head h1 {width:100%; margin-top:10px; text-align:center;}
	body>header .head h1 a img {height:60px;}
	body>header .head .side {position:absolute; right:0; top:50%; margin-top:-7px;}
	body>header .head .side li {float:left; border:none; overflow:hidden;}
	body>header .head .side li:first-child {border-right:0;}
	body>header .head .side li+li {padding-left:15px;}
	body>header .head .side li a {display:block; font-size:14px; font-weight:400; color:#666; line-height:1; background:#fff;}
	body>header .head .side li a:hover {color:#ff6c80;}
	body>header .head .side li a.mypage {color:#fff; background-color:#ff6c80 ;}
	body>header .head .side li a.mypage:hover {background-color:#64d4ca;}

	/*gnb*/
	nav.mobile {visibility:hidden}
	nav.pc {visibility:hidden; position:relative; display:block; margin:0 auto; overflow:hidden; text-align:center; border-top:1px solid rgba(0,0,0,.1);}
	nav.pc:hover {box-shadow:0 5px 5px rgba(0,0,0,.1) !important;}
	nav.pc .navbg {position:absolute; left:0; top:0; width:100%; height:100%;}
	nav.pc .navbg .dep1 {height:60px;}
	
	nav.pc .navbg .dep2 {height:100%; background-color:#fff; border-top:1px solid #f2f2f2;}
	nav.pc .gnb {position:relative; display:inline-block; max-width:1200px; text-align:left !important;}
	nav.pc .gnb {}
	nav.pc .gnb a.on {color:#ff6c80 ;}
	nav.pc .gnb a:hover,nav .navWrap a:focus {color:#ff6c80 ;}
	nav.pc .gnb>ul {margin:0 !important; line-height:1.6;}
	nav.pc .gnb>ul>li {position:relative; float:left;}
	nav.pc .gnb>ul>li:last-child {padding-right:0 !important;}
	nav.pc .gnb>ul>li:last-child ul {min-width:120px;}
	nav.pc .gnb>ul>li>a {display:block; width:100%; height:60px; padding-top:20px; font-size:18px; font-weight:400; line-height:1; color:#000;}
	nav.pc .gnb>ul>li.on>a {color:#ff6c80 ;}
	nav.pc .gnb>ul>li>ul {position:absolute; left:0; width:100% !important; padding:30px 0;}
	nav.pc .gnb>ul>li>ul>li a {display:inline-block; padding:4px 0; color:#000; font-size:16px;  letter-spacing:-.5px;}
	nav.pc .gnb>ul>li>ul>li a:hover {color:#ff6c80 ;}
	nav.pc .gnb>ul>li>ul>li.on a {color:#ff6c80 ;}

	/* 상단배경 */
	.topBg {position:relative; max-width:100%; height:350px; background:url(../images/common/sub_bg03.webp) no-repeat center 72%; background-size:cover;}
	.topBg:before {content:""; position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(0,0,0,.3);} 
	.topBg .txt {position:absolute; bottom:130px; width:100%; color:#fff; text-align:center;}
	.topBg .txt .slogan {font-size:72px; font-weight:500; letter-spacing:-.1vw; line-height:1.2;}
	.topBg .txt .slogan:before {content:"튼튼한 몸 바른 마음 슬기로운 생각"; display:inline-block; font-family:'YanoljaYacheR';}
	/* .topBg .txt .subSlogan:before {content:"하늘병아리는 우리 아이들에게 예쁜 꿈을 꿀 수 있도록 오늘도 끊임 없이 노력합니다."; display:inline-block; margin-top:10px;} */


	/*서브메뉴*/
	.lnb {z-index:700; position:absolute; margin:0; padding:0; max-width:100% !important; font-weight:400; background-color:#fff; border-bottom:1px solid rgba(0,0,0,.1);}
	.lnb ul {display:flex; flex-wrap:wrap; justify-content:center; width:100%; max-width:1200px; margin:0 auto; text-align:center; font-size:0; line-height:0;}
	.lnb ul li {display:inline-block; vertical-align:middle; position:relative;}
	.lnb ul li a {display:block; padding:22px 30px; font-size:16px; line-height:1; letter-spacing:-0.5px; border-bottom:2px solid transparent; color:#666; border-right:1px solid rgba(0,0,0,.1);}
	.lnb.photo ul li a {padding:22px 6px;}
	.lnb ul li:first-child a {border-left:1px solid rgba(0,0,0,.1);}
	.lnb ul li a:hover {color:#ff6c80;}
	.lnb ul li.on a {color:#ff6c80; border-bottom:2px solid #ff6c80;}
	.lnb.fixOn {position:fixed !important; z-index:700 !important; top:0 !important; background:rgba(255,255,255,1) !important; box-shadow:0 5px 10px rgba(0,0,0,.1); margin-top:0;}
	.lnb.fixOn>ul>li>a:hover {color:#ff6c80; }
	.lnb.fixOn>ul>li.on>a {color:#ff6c80 !important; border-bottom:2px solid #ff6c80;}

	/*컨텐츠*/
	.contents {max-width:1200px; margin:0 auto; padding:130px 0 100px 0;}
	.contents img {max-width:100%;}
	.contents>header {margin-bottom:50px; text-align:center;}
	.contents>header h2 {position:relative; margin-bottom:10px; padding-top:20px; font-size:36px; color:#000; line-height:1; font-weight:300; letter-spacing:-1px;}
	.contents>header h2:before {content:""; position:absolute; top:0; left:50%; margin-left:-25px; display:block; width:50px; height:2px; background:#000;}
	.contents>header .h2txt {font-size:14px; color:#999; font-weight:300;}
	.contents>header .h2txt:before {content:"꿈과 지혜가 자라는 행복한 아이들! 쾌적한 환경에서 아이들의 꿈을 키워요!"; display:block;}
	
	/*footer*/	
	footer {width:100%; background:#fff; position:relative; padding-top:10px;}
	footer:before {position:absolute; top:0; left:0; display:block; content:""; height:10px; width:100%; background:#eee; box-shadow:3px 3px 3px #ddd inset;}
	
		.mainBody footer {padding-top:0;}
		.mainBody footer:before {display:none;}
	
	footer div[class*="part-"] {width:100%; border-top:1px solid #f1f1f1;}
	footer div[class*="part-"]>div {max-width:1200px; overflow:hidden; margin:0 auto;}
	
	footer .part-1 {padding:20px 0; width:100%;}
	footer .part-1 .morelink {float:left; width:calc(100% - 400px); padding-top:10px; line-height:1;}
	footer .part-1 .morelink a {display:inline-block; margin-right:40px; font-weight:400; font-size:14px; letter-spacing:-.05vw; line-height:1;}
	footer .part-1 .morelink a.acc {color:#3366cc;}
	footer .part-1 aside {float:left; text-align:right; line-height:1 !important; font-size:0; width:400px;}
	footer .part-1 aside li {display:inline-block;}
	footer .part-1 aside li a {display:block; padding:13px 30px; margin-left:10px; font-size:12px; font-weight:400; line-height:1; background:#fff; border-radius:50px; border:1px solid #e5e5e5;}
	footer .part-1 aside li a:hover {color:#fff; background:#3366cc ; border:1px solid #3366cc;}
	footer .part-1 aside li a.i-admin {padding-left:50px; background:#fff url(../images/common/i-admin.png)no-repeat 20px center;}
	footer .part-1 aside li a.i-admin:hover {background-color:#3366cc ; background-image:url(../images/common/i-admin-on.png);}
	
	footer .part-2 {padding:40px 4vw;}
	footer .part-2 .logo {float:left; font-size:21px; font-weight:400; color:#000; width:150px; line-height:1.2;}
	footer .part-2 .info {float:left; width:calc(100% - 150px);}
	footer .part-2 .info address p {font-size:14px; color:#666;}
	footer .part-2 .info address p span {margin-right:10px;}
}


@media (min-width:992px) and (max-width: 1140px) {
	/*
	body>header .head .logo {top:20px;}
	body>header .head h1 a img {height:40px;}
	body>header .head .head-in .side ul li a span[class*="i-"] {display:block;}
	*/
}



/* ************************ 모바일 (~991) ************************ */
@media screen and (max-width: 991px) {
	
	html,body {font-size:15px; overflow-x:hidden;}	
	.pc {display:none !important;}
	#gotop {display:none !important;}

	/*헤더*/
	header {position:relative; z-index:999; width:100%; left:0; top:0;}
	header .head {z-index:100; left:0; top:0; width:100%; height:60px; overflow:hidden; line-height:1; background-color:#fff;}
	header .head aside.mobile {position:absolute; right:20px; top:10px; width:40px; height:40px; }
	header .head aside.mobile .gnbView {position:relative; display:block; width:100%; height:100%; padding-left:15px;}
	header .head aside.mobile .gnbView div {position:absolute; width:100%; height:2px; width:25px; background:#888; margin-top:50%;}
	header .head aside.mobile .gnbView div:before,
	header .head aside.mobile .gnbView div:after {content:""; display:block; position:absolute; width:25px; height:2px; background:#888; overflow:hidden;}
	header .head aside.mobile .gnbView div:before {margin-top:-8px;}
	header .head aside.mobile .gnbView div:after {margin-top:8px;}
	header .head h1 {float:left; margin:0 0 0 20px !important; display:block;}
	header .head h1 a {display:inline-block; padding:10px 0; text-align:center;}
	header .head h1 a img {display:block; height:40px; font-size:0; line-height:0;}

	
	/*gnb*/
	nav.mobile {z-index:9999; position:fixed; visibility:hidden; top:0; width:90%; height:100vh; overflow:hidden; background-color:#fff;}
	nav.mobile .closeWrap:after {
		content:""; position:relative; bottom:0; display:block; height:7px; width:100%;
		 box-shadow:0 5px 10px rgba(0,0,0,.1) inset;
	}
	nav.mobile .closeWrap .base {position:relative; overflow:hidden; height:60px; padding-left:10px; background-color:#fff; color:#000;}
	nav.mobile .closeWrap .base a {display:inline-block; padding:20px 10px; color:#000; font-size:13px;}
	nav.mobile .closeWrap .base .gnbClose {
		text-align:left; position:relative;
		float:right; display:block; overflow:hidden; width:60px; height:60px; padding:0;
	}
	nav.mobile .closeWrap .base .gnbClose div {position:absolute; left:20px; top:20px; transform:rotate(45deg); -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -o-transform:rotate(45deg);}
	nav.mobile .closeWrap .base .gnbClose div:before,
	nav.mobile .closeWrap .base .gnbClose div:after {position:absolute; content:""; display:block; width:27px; height:1px; background:#888;}
	nav.mobile .closeWrap .base .gnbClose div:before {transform:rotate(90deg);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);}
	.gnbCover {z-index:9998; position:fixed; left:0; top:0; display:none; width:100%; height:100%; background:rgba(0,0,0,.5);}
	/* 회원전용 */
	nav.mobile .closeWrap .member {clear:both;}
	nav.mobile .closeWrap .member ul {overflow:hidden;}
	
	nav.mobile .closeWrap .member li {float:left; width:25%; text-align:center; background:#ff6c80 ; border-left:1px solid rgba(255,255,255,.3);}
	nav.mobile .closeWrap .member li:first-child {border:0; }
	nav.mobile .closeWrap .member li a {display:block; padding:18px 0; font-size:13px; letter-spacing:-.5px; line-height:1.2; color:#fff; }

	nav.mobile .gnb {position:relative; width:100%; height:100%; overflow-y:auto; text-align:left !important;}
	nav.mobile .gnb * {width:100% !important;}
	nav.mobile .gnb .home {display:block; width:100%; background-color:#f0f0f0; padding:12px 20px; border-bottom:1px solid #333;}
	nav.mobile .gnb>ul>li {clear:both; position:relative;}
	nav.mobile .gnb>ul>li>a {display:block; padding:13px 20px; font-size:16px; color:#000; border-bottom:1px solid #f0f0f0; background:#fff; letter-spacing:-.5px; border-left:7px solid transparent;}
	nav.mobile .gnb>ul>li>a:hover {color:#ff6c80 ;}
	nav.mobile .gnb>ul>li.on>a {border-bottom:1px dotted #ccc; border-left:7px solid #ff6c80 ;}
	nav.mobile .gnb>ul>li>ul {display:none;}
	nav.mobile .gnb>ul>li>ul>li {position:relative;}
	nav.mobile .gnb>ul>li>ul>li:last-child:after {content:""; position:relative; bottom:0; display:block; height:7px; width:100%; box-shadow:0 5px 10px rgba(0,0,0,.1) inset;}
	nav.mobile .gnb>ul>li>ul>li a {
		position:relative; display:block; padding:12px 20px 12px 45px; font-size:16px; color:#666; letter-spacing:-.5px; border-bottom:1px solid #f5f5f5;
		/* background:url(../images/common/dot_m.png) no-repeat #fff 30px 22px; background-size:3px; */
	}
	nav.mobile .gnb>ul>li>ul>li a:before {content:""; display:block; width:5px; height:1px; border-radius:50%; background:#ccc; position:absolute; left:30px; top:25px;}
	nav.mobile .gnb>ul>li>ul>li a:hover {background-color:#fff6fb;}
	nav.mobile .gnb>ul>li>ul>li.on a {color:#ff6c80 ;}
	nav.mobile .gnb>ul>li>ul>li.on a:before {background:#ff6c80 ;}
	
	
	/*서브메뉴*/
	.lnb {display:none;}	
	

	/* 상단배경 */
	.topBg {z-index:0; position:relative; width:100%; height:130px; background:url(../images/common/sub_bg03.webp) no-repeat center 70%; background-size:cover; overflow:hidden;}
	.topBg:before {content:""; position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(0,0,0,.3);} 
	.topBg .txt {display:none;}
	
	
	/*컨텐츠*/
	.contents {z-index:1; position:relative; width:100%; padding:50px 20px 50px;}
	.contents>header {position:absolute; margin-top:-90px; border:0; padding:0 20px; text-align:center;}
	.contents>header h2 {font-size:24px; font-weight:400; letter-spacing:-1px; color:#fff;}
	.contents>header .h2txt {font-size:13px; font-weight:normal; line-height:1.2; margin-top:10px; color:rgba(255,255,255,.8); word-break:keep-all;}
	.contents>header .h2txt:before {content:"꿈과 지혜가 자라는 행복한 아이들! 쾌적한 환경에서 아이들의 꿈을 키워요!";}
	.contents img {max-width:100%;}
		
	
	/*footer*/
	footer {overflow:hidden; width:100%; background:#fff; position:relative; padding:30px 20px !important;}
	footer:before {position:absolute; top:0; left:0; display:block; content:""; height:10px; width:100%; background:#eee; box-shadow:3px 3px 3px #ddd inset;}
	
		.mainBody footer {padding-top:0;}
		.mainBody footer:before {display:none;}
	
	footer div[class*="part-"] {width:100%;}
	
	footer .part-1 .morelink {line-height:1; text-align:center;}
	footer .part-1 .morelink a {display:inline-block; padding:5px; font-weight:400; font-size:14px; letter-spacing:-.05vw; line-height:1;}
	footer .part-1 .morelink a.acc {color:#3366cc;}
	footer .part-1 aside {text-align:center; line-height:1 !important; font-size:0; width:300px; margin:10px auto 0;}
	footer .part-1 aside li {display:inline-block;}
	footer .part-1 aside li+li a {margin-left:10px;}
	footer .part-1 aside li a {display:block; padding:10px 30px; font-size:12px; font-weight:400; line-height:1; background:#fff; border-radius:50px; border:1px solid #e5e5e5;}
	footer .part-1 aside li a:hover {color:#fff; background:#3366cc; border:1px solid #3366cc;}
	footer .part-1 aside li a.i-admin {padding-left:50px; background:#fff url(../images/common/i-admin.png)no-repeat 20px center;}
	footer .part-1 aside li a.i-admin:hover {background-color:#3366cc; background-image:url(../images/common/i-admin-on.png);}
	
	footer .part-2 {text-align:center; margin-top:30px;}
	footer .part-2 .logo {font-size:18px; font-weight:400; color:#000; line-height:1.2;}
	footer .part-2 .info address p {font-size:14px; color:#666; margin-top:10px;}
	footer .part-2 .info address p span {padding:0 5px;}
	footer .part-2 .info address p span:nth-child(1) {display:block;}
}