@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; font-weight:300; line-height:1.8; color:#666; letter-spacing:-.2px;}
body > section {position:relative; display:block; width:100%; max-width:100%; margin:0 auto;}

#gotop.only-mobile {
	/* display:block !important; opacity:1 !important; */
	/* z-index:888; position:fixed; width:40px; height:40px; border-radius:6px; */
	/* bottom:20px; right:20px; background:#ffec2c url(../images/common/arrow_up.png) no-repeat 50%; */
	/* box-shadow:0 0 7px rgba(0,0,0,.1); */
}

/* 컨텐츠 */
.contents img {max-width:100%; height:auto;}

/* ************************ 데스크탑 (992~) ************************ */
@media screen and (min-width: 992px), print {
	#gotop.only-mobile {display:none !important;}
	
	body {min-width:1200px; font-weight:300;}
	body>* {clear:both; position:relative; width:100%; max-width:100%; margin:0 auto;}
	.mobile {display:none !important;}

	/*헤더*/
	body>header {z-index:999; position:absolute; width:100%; background-color:#fff !important;}
	body>header .head {position:relative; width:100%; height:80px; padding:0 4vw;}
	body>header .head .head-in {position:relative;}
	body>header .head .head-in .logo {position:absolute; top:15px; left:0; z-index:1004;}
	body>header .head .head-in .logo h1 a img {height:50px;}
	
	
	body>header .head .head-in .side {position:absolute; top:25px; right:0; z-index:1004;}
	body>header .head .head-in .side ul li {float:left; border:none; overflow:hidden;}
	body>header .head .head-in .side ul li+li {margin-left:.8vw;}
	body>header .head .head-in .side ul li a {font-size:14px; color:#666; display:block;}
	body>header .head .head-in .side ul li a:hover {color:#000;}
	body>header .head .head-in .side ul li a>span {display:inline-block; vertical-align:middle; height:30px; line-height:30px;}
	body>header .head .head-in .side ul li a span[class*="i-"] {
		width:30px; border-radius:50%; margin-right:.2vw;
		background-position:center;
		background-repeat:no-repeat;
	}
	body>header .head .head-in .side ul li a span.i-home {background-color:#78a2ef; background-image:url(../images/common/i-home.png);}
	body>header .head .head-in .side ul li a span.i-login {background-color:#7cce82; background-image:url(../images/common/i-login.png);}
	

	/*gnb*/
	nav.mobile {visibility:hidden;}
	nav.pc {visibility:hidden; position:absolute; display:block; margin:0 auto; overflow:hidden; text-align:center; z-index:1003;}
	nav.pc:hover {box-shadow:0 5px 5px rgba(0,0,0,.1) !important;}
	
	nav.pc {width:100%; height:80px;}
	
	nav.pc .navbg {position:absolute; left:0; top:0; width:100%; height:100%;}
	nav.pc .navbg .dep1 {height:80px;}
	nav.pc .navbg .dep2 {height:100%; background-color:#fff; border:1px solid #eee;}
	nav.pc .gnb {position:relative; display:inline-block; max-width:1400px; text-align:left !important;}
	nav.pc .gnb a.on {color:#3366cc;}
	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:100px;}
	nav.pc .gnb>ul>li>a {display:block; width:100%; height:80px; padding-top:32px; font-size:1.1em; font-weight:400; line-height:1; color:#000; position:relative;}
	nav.pc .gnb>ul>li.on>a:before {position:absolute; left:0; bottom:0; width:100%; height:5px; background:#2378ff; display:block; content:""; z-index:-1;}
	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:#666; font-size:15px; letter-spacing:-.5px;}
	nav.pc .gnb>ul>li>ul>li.on a {color:#2378ff; font-weight:400;}

	
	/* 상단배경 */
	.topBg {position:relative; max-width:100%; height:250px; background:url(../images/common/topBg.jpg) no-repeat center top; background-size:cover;}
	.topBg:before {content:""; position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(0,228,255,.12);}
	
	
	.topBg .txt {position:absolute; bottom:90px; width:100%; color:#fff; text-align:center;}
	.topBg .txt .slogan {font-size:50px; font-family:'HSsummer'; letter-spacing:; line-height:1.4; text-shadow:5px 5px 5px rgba(0,0,0,.3);}
	
	
	/* .topBg .txt {position:absolute; top:50px; width:100%; color:#fff; text-align:center;} */
	/* .topBg .txt .slogan:before {font-size:46px; font-weight:700; letter-spacing:-.05vw; line-height:1; padding-bottom:20px;} */
	/* .topBg .txt .slogan:after {position:absolute; bottom:0; left:50%; width:30px; height:5px; margin-left:-15px; background:rgba(255,255,255,1); display:block; content:"";} */
	/* .topBg .txt .slogan:before {display:inline-block; text-shadow:3px 3px 3px rgba(0,0,0,.05);} */
	
		/*각페이지별 타이틀*/
		.topBg.intro .txt .slogan:before {content:"우리원소개";}
		.topBg.edu .txt .slogan:before {content:"교육안내";}
		.topBg.photo .txt .slogan:before {content:"포토앨범";}
		.topBg.entrance .txt .slogan:before {content:"입학안내";}
		.topBg.community .txt .slogan:before {content:"알림마당";}
		
		
	.topBg .txt .subSlogan:before {
		/* content:"하늘병아리는 우리 아이들에게 예쁜 꿈을 꿀 수 있도록 오늘도 끊임 없이 노력합니다."; */
		/* display:inline-block; width:100%; font-size:16px; font-weight:300; position:absolute; top:70px; left:0; letter-spacing:-.01vw; opacity:.7; */
		
	}
		

	/*서브메뉴*/	
	.lnb {z-index:700; position:absolute; margin:0; padding:0; max-width:100% !important; font-weight:400; background-color:transparent;}
	.lnb ul {width:100%; max-width:1280px; margin:0 auto; text-align:center; font-size:0; line-height:0; background:#0b48b6; border-radius:100px; margin-top:-31px; box-shadow:3px 5px 5px rgba(0,0,0,.2);}
	.lnb ul li {display:inline-block; vertical-align:middle; position:relative;}
	.lnb ul li+li:before {content:""; position:absolute; left:0; top:50%; width:1px; height:14px; margin-top:-7px; background:rgba(255,255,255,.5);}
	.lnb ul li a {display:block; padding:22px 40px; font-size:17px; font-weight:300; line-height:1; letter-spacing:-0.5px; color:rgba(255,255,255,1);}
	/* .lnb ul li a:hover {color:#fff;} */
	.lnb ul li.on a {color:#ffc500; font-weight:400;}	
	.lnb.fixOn {position:fixed !important; z-index:700 !important; top:0 !important; background:transparent !important;}
	.lnb.fixOn ul {margin-top:0; box-shadow:0 5px 10px rgba(0,0,0,.1);}
	
	
	
	

	/*컨텐츠*/
	.contents {max-width:1280px; margin:0 auto; padding:70px 0 100px;}
	.contents img {max-width:100%;}
	.contents>header {text-align:center; margin-bottom:50px;}
	.contents>header h2 {position:relative; font-size:28px; color:#000; line-height:1; font-weight:700; letter-spacing:-1px;}
	.contents>header ul {font-size:0; margin-top:20px;}
	.contents>header ul li {display:inline-block; padding:0 20px; position:relative;}
	.contents>header ul li+li:before {position:absolute; display:block; content:""; background:#ccc; width:5px; height:5px; border-radius:50%; top:12px; left:0; margin-left:-2.5px;}
	.contents>header ul li span {display:block; font-size:16px; color:#666; font-weight:400;}
	
	/*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-"] {display:table; width:100%; border-top:1px solid #f1f1f1;}
	footer div[class*="part-"]>* {display:table-cell; vertical-align:top;}
	
	footer .part-1 {padding:20px 4vw;}
	footer .part-1 .morelink {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:#2378ff;}
	footer .part-1 aside {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:10px 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:#2378ff; border:1px solid #2378ff;}
	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:#2378ff; background-image:url(../images/common/i-admin-on.png);}
	
	footer .part-2 {padding:40px 4vw;}
	footer .part-2 .logo {font-size:24px; font-weight:400; color:#000; width:150px; line-height:1.2;}
	footer .part-2 .info {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: 1250px) {
	body>header .head .head-in .logo {top:20px;}
	body>header .head .head-in .logo h1 a img {height:40px;}
	body>header .head .head-in .side ul li a span[class*="i-"] {display:none;}
}



/* ************************ 모바일 (~991) ************************ */
@media screen and (max-width: 991px) {
	
	html,body {font-size:15px; overflow-x:hidden;}	
	.pc {display:none !important;}
	#gotop {display:none !important;}

	/*헤더*/
	body>header {position:relative; z-index:999; width:100%; left:0; top:0;}
	body>header .head {z-index:100; left:0; top:0; width:100%; height:60px; overflow:hidden; line-height:1; background-color:#fff;}
	body>header .head aside.mobile {position:absolute; right:20px; top:10px; width:40px; height:40px; }
	body>header .head aside.mobile .gnbView {position:relative; display:block; width:100%; height:100%; padding-left:15px;}
	body>header .head aside.mobile .gnbView div {position:absolute; width:100%; height:1px; width:25px; background:#666; margin-top:50%;}
	body>header .head aside.mobile .gnbView div:before,
	body>header .head aside.mobile .gnbView div:after {content:""; display:block; position:absolute; width:25px; height:1px; background:#666; overflow:hidden;}
	body>header .head aside.mobile .gnbView div:before {margin-top:-8px;}
	body>header .head aside.mobile .gnbView div:after {margin-top:8px;}
	body>header .head h1 {float:left; margin:0 0 0 20px !important; display:block;}
	body>header .head h1 a {display:inline-block; padding:10px 0; text-align:center;}
	body>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:#666; border-radius:2px;}
	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:#ff6699; 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 13px 40px; font-size:16px; color:#000; border-bottom:1px solid #f0f0f0; background:#fff; letter-spacing:-.5px; position:relative; z-index:0;}
	/* nav.mobile .gnb>ul>li>a:hover {color:#3366cc;} */
	nav.mobile .gnb>ul>li.on>a {background-color:#2378ff; color:#fff;}
	/* nav.mobile .gnb>ul>li.on>a:before {position:absolute; left:25px; top:15px; width:10px; height:10px; background:#cff09e; border-radius:50%; display:block; content:""; z-index:-1;} */
	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:5px; 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 55px; font-size:16px; color:#999; letter-spacing:-.5px; border-bottom:1px solid #f5f5f5;
	}
	nav.mobile .gnb>ul>li>ul>li a:before {content:""; display:block; width:5px; height:2px; background:#ddd; position:absolute; left:40px; top:25px;}
	nav.mobile .gnb>ul>li>ul>li a:hover {background-color:#f5f5f5;}
	nav.mobile .gnb>ul>li>ul>li.on a {color:#2378ff;}
	nav.mobile .gnb>ul>li>ul>li.on a:before {background:#2378ff;}
	
	
	/*서브메뉴*/
	.lnb {display:none;}	
	

	/* 상단배경 */
	.topBg {position:relative; max-width:100%; height:80px; background:url(../images/common/topBg.jpg) no-repeat center top; background-size:cover;}
	.topBg:before {content:""; position:absolute; left:0; top:0; width:100%; height:100%; background-color:rgba(0,228,255,.3);} 
	.topBg .txt {display:none;}
	
	
	/*컨텐츠*/
	.contents {max-width:1400px; margin:0 auto; padding:30px 20px;}
	.contents img {max-width:100%;}
	.contents>header {text-align:center; position:absolute; top:-70px; left:50%; width:320px; margin-left:-160px; z-index:99;}
	.contents>header h2 {position:relative; font-family:"HSsummer"; font-size:24px; color:#fff; line-height:1; font-weight:700; letter-spacing:-.5px; text-shadow:2px 2px 2px rgba(0,0,0,.1); padding:20px 0;}
	.contents>header ul {display:none;}
		
	
	/*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:20px; padding-top:20px; border-top:1px solid #efefef;}
	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;}
}