@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');
@font-face {
    font-family: 'KBIZHanmaumMyungjo';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/KBIZHanmaumMyungjo.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'GmarketSansBold';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.ui-datepicker-trigger {display: none;}
.ui-datepicker { border-radius: 5px !important; border: 1px solid #e1e1e1; background-color: #fff; }
.ui-datepicker .ui-datepicker-header { background: none; border: 0; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { background: none; border: 0; border-radius: 5px; transition:all 0.3s ease; }
.ui-state-default:hover { background: #f5f5f5; }
.ui-datepicker-today a { font-weight: 600; color: #00939b; }
.ui-datepicker .ui-datepicker-prev { left: 2px; cursor: pointer; }
.ui-datepicker .ui-datepicker-next { right: 2px; cursor: pointer; }
.ui-datepicker td span, .ui-datepicker td a { text-align: center; }
.ui-state-active {  background: #F46F1B !important; color: #fff !important; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display:none; }

.ui-datepicker { width: 17em; display: none; }
.ui-datepicker .ui-datepicker-header { position:relative; padding: 10px; background-color: #00939b; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top:9px; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {}
.ui-datepicker .ui-datepicker-prev { left:12px; }
.ui-datepicker .ui-datepicker-prev:before {font-family: 'xeicon'; content: "\e93d"; font-size: 20px; color: #fff;}
.ui-datepicker .ui-datepicker-next { right:12px; }
.ui-datepicker .ui-datepicker-next:before {font-family: 'xeicon'; content: "\e940"; font-size: 20px; color: #fff;}
.ui-datepicker .ui-datepicker-prev-hover { left:12px; }
.ui-datepicker .ui-datepicker-next-hover { right:12px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; color: #fff; }
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: 400; border: 0;  }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .4em .2em; text-align: center; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }



/*reset*/
* { box-sizing:border-box; -webkit-tap-highlight-color: transparent; }
html { font-size:62.5%; }
body { font-family: 'Noto Sans KR', sans-serif; }
img { max-width:100%; }
input { font-family:inherit; /*-webkit-appearance: none; -webkit-border-radius: 0;*/ }
a { color:inherit; }
button { font-family:inherit; font-size:inherit; background:none; }
textarea { -webkit-appearance: none; -webkit-border-radius: 0; }


/*공통*/
.container { overflow:hidden; }
.in { width:1440px; max-width:100%; padding:0 20px; margin:0 auto; position:relative; }
.hidden { display:block; height: 0; width: 0; font-size: 0; line-height: 0; margin: 0; padding: 0; overflow:hidden; }
.bg-grey { background:#f5f6f7; }

.pc-only { display:block; }
.mo-only { display:none; }
.phone-only { display:none; }
.phone-over { display:block; }

.left-box { text-align:left; }
.center-box { text-align:center; }
.right-box { text-align:right; }

.flex-bt-ct { display:flex;	justify-content:space-between; align-items:center; }



/*스와이퍼 공통*/
.swiper-wrapper.disabled {
    transform: translate3d(0px, 0, 0) !important;
}
.swiper-pagination.disabled,
.swiper-button-prev.disabled, 
.swiper-button-next.disabled, 
.swiper-button-pause.disabled {
    display: none;
}
.swiper-pagination-bullet {
    background: #dbdbdb;
    opacity: 1;
}
.swiper-pagination-bullet-active {
	background:#F46F1B;	
}
.swiper-pagination-bullet {
    margin-right: 13px;
}
.swiper-pagination-bullet:last-of-type {
    margin-right: 0;
}
.swiper-button-pause {
	font-size: 2rem;
    margin-left: 9px;
}
.swiper-button-next, .swiper-button-prev {
	position:static;
	margin:0;
	color:inherit;
	width:auto;
	height:auto;
}
.swiper-button-prev {
	margin-right:10px;
}
.swiper-button-next {
	margin-left:10px;
}
.swiper-button-next span, .swiper-button-prev span {
	font-size:1.7rem;
}
.swiper-pagination {
	position:static;
	text-align:left;
}
.slide-util-mg {
	margin: 85px 0 85px;
}
.slide-util {
	display: flex;
    align-items: center;
}
.swiper-button-disabled {
	display:none;
}

.main-memory-txt .swiper-button-disabled {
	display:flex;
}
.main-edu-txt .swiper-button-disabled {
	display:flex;
}
.footer .swiper-button-disabled {
	display:flex;
}
.main-memory-txt .slide-util .swiper-button-next,
.main-memory-txt .slide-util .swiper-button-prev {
	display:none;
}

/*스킵 내비게이션*/
.skip-nav {
    position: absolute;
    width: 100%;
    z-index: 99999;
    top: -200px;
    left: 0;
    background: rgba(33,33,33,.7);
    text-align: center;
    padding: 12px 0;
	background-color: #333;
	font-size:1.9rem;
	display:block;
	color:#fff;
}
.skip-nav:focus, 
.skip-nav:active { 
	top: 0; 
}















/* LSM */

/* SITEMAP */
/*수정전 사이트맵*/
/*.sitemap { display:none; position:fixed; left:0; top:0; right:0; bottom:0; z-index:1000; background:#fffce9; padding: 8% 40% 8% 8%; }
.sitemap .btn-close { position:absolute; right:50px; top:30px; font-size:40px; }
.sitemap:before { content:''; position:absolute; right:0; top:0; bottom:0; width:35%; background:#fff url(../img/common/bg_sitemap.jpg) no-repeat 100% 100%; background-size:cover;  }
.sitemap .in { height:100%; display:flex; align-items:center; }*/

/*수정후 사이트맵*/
.sitemap { display:none; position:fixed; left:0; top:0; right:0; bottom:0; z-index:1000; background:#fff; padding: 8% 0 8% 0; }
.sitemap .btn-close { position:absolute; right:50px; top:30px; font-size:40px; }
/*.sitemap:before { content:''; position:absolute; right:0; top:0; bottom:0; width:35%; background:#fff url(../img/common/bg_sitemap.jpg) no-repeat 100% 100%; background:#fff; background-size:cover;  }*/
.sitemap .in { height:100%; display:flex; align-items:center; width: 1100px;}


.sitemap .navs { width:100%;}
.sitemap .navs  h3 {font-size:4.5rem; font-weight:600; padding-bottom:25px; margin-bottom:30px;border-bottom:1px solid #333; }
.sitemap .navs nav > ul > li { margin-bottom:35px; }
.sitemap .navs nav .btn-dep1 { font-size:3rem; color:#666; font-weight:600;  transition:all 0.5s ease;}
.sitemap .navs nav > ul > li.active .btn-dep1,
.sitemap .navs nav > ul > li:hover .btn-dep1 { color:#333; }
.sitemap .navs nav .dep2 { display:none; }
.sitemap .navs nav .dep2 > ul { padding-top:20px; display:flex; flex-wrap:wrap; flex-direction:row; }
.sitemap .navs nav .btn-dep2 { display:block; font-size:1.9rem; color:#333; padding-bottom:15px; margin-right:70px;  }
.sitemap .navs nav .btn-dep2 span { display:inline-block; border-bottom:1px solid transparent; transition:all 0.5s ease; }
.sitemap .navs nav .btn-dep3 { display:block; font-size:1.6rem; color:#333; margin-bottom:10px; }
.sitemap .navs nav .btn-dep3 span { display:inline-block; border-bottom:1px solid transparent; transition:all 0.5s ease; }
.sitemap .navs nav .btn-dep2:hover span,
.sitemap .navs nav .btn-dep3:hover span { border-color:#333; }
.sitemap .footer-sns { padding-top:50px; }
.sitemap .footer-sns li i  {font-size:2.2rem; }

                   



.hidden { overflow:hidden; }
.modal-backdrop {position: fixed; top:0; right:0; bottom:0; left:0; background:#000; z-index:7500; opacity:.7; filter:alpha(opacity=70);}
.modal {display:none; position:fixed; top:0; right:0; bottom:0; left:0; z-index:8000; overflow:auto; -webkit-overflow-scrolling:touch; outline:0; }
.modal-dialog {position:relative; width:auto;margin:0 auto 15px;  padding:0 15px; }
.modal-content {position:relative;  outline:none;    }
.modal-body { transform: translateY(10px); position:relative; }

.modal-header { position: relative; height:54px; line-height: 53px; padding:0 20px; background: #009FE8; position: relative; }
.close { position: absolute; right:0; top:-70px; font-size:4.5rem; color: #fff; }
#modalTerms .close { top: -17px; }

.modal-target { background: #fff; }
.modal-target h6 { text-align: center; padding: 75px 0 40px; font-size:3rem; font-weight: 600; }
.modal-target .btns { padding: 0 55px 40px; display: flex; justify-content: space-between; }
.modal-target .btns a { flex:1; margin:0 20px 20px; display: block; padding: 30px 15px 30px 30px; border: 1px solid #000; transition: all 0.5s ease; position: relative; }
.modal-target .btns a:before { content: ''; position: absolute;left: -1px; top:-1px; right:-1px; bottom:-1px; border: 2px solid #F46F1B; transition: all 0.5s ease; opacity:0; }
.modal-target .btns a .ic { font-size:4rem; display: block; }
.modal-target .btns a strong { font-size:2.1rem; margin:20px 0 5px; }
.modal-target .btns a p { font-size:1.6rem; font-weight: 400; color: #6f6f6f; word-break: keep-all; }
.modal-target .btns a:hover,
.modal-target .btns a.active{  box-shadow:0 0 24px rgba(242,171,12,0.25); }
.modal-target .btns a:hover:before,
.modal-target .btns a.active:before{ opacity:1; }
.modal-target .choice button { width:100%; height: 67px; background: #f9f9f9; font-size:1.8rem; font-weight: 400; transition: all 0.5s ease; }
.modal-target .choice button em { display: inline-block; vertical-align: top;  }
.modal-target .choice button .ic { display: inline-block; vertical-align: top; font-size:2rem; margin:0 0 0 30px; transition: all 0.2s ease; }
.modal-target .choice button:hover { background: #000; color: #fff; }

#modalTerms .modal-body { overflow: hidden; padding-top: 56px; }
.modal-terms {  background: #fff; }
.modal-terms h5 { text-align: center; line-height: 100px; text-align: center; background: #F46F1B; font-size:3rem; font-weight: 600; color: #fff; }
.modal-terms .text { padding: 30px; font-size:1.4rem; line-height: 1.6; font-weight: 400; max-height: 500px; overflow: auto; }
.modal-terms::after { height:3px; width:100%; background: #fff; box-shadow: 0 0 13px 12px #fff; position: absolute; content: ''; display: block; bottom: 0; left:0; z-index: 1; }
.modal-terms.copy-type::after { display: none; }



.modal-terms .text strong { font-size: 1.6rem; }
.modal-terms .text  div div strong { font-size:1.4rem; }
.modal-terms ::-webkit-scrollbar { width: 5px; height: 5px; }
.modal-terms ::-webkit-scrollbar-thumb { background: #838383; border-radius:5px; }
.modal-terms ::-webkit-scrollbar-track { background-color: #f5f5f5;border-radius:5px;}
.modal-terms .btn-type3  { font-size:1.6rem; }
.modal-terms.copy-type .text {font-size:1.7rem; }
.modal-terms.copy-type .text ul { }
.modal-terms.copy-type .text ul li { display: flex; }
.modal-terms.copy-type .text ul li strong { padding-top: 5px; margin-right: 8px; flex-shrink:0; }
.modal-terms.copy-type .text ul li span {  }

.modal-terms.copy-type .btn-type3 { margin-top:50px; }

.modal table { width:100%; border-collapse:collapse; margin-top:10px; }
.modal table caption { position:absolute; left:-9999px; opacity:0; }
.modal table thead th { padding:3px 5px; background:#f2f2f2; font-size:12px;  border:1px solid #ddd; }
.modal table tbody td { text-align:center; padding:3px 5px;font-size:12px;   border:1px solid #ddd; }


.btn-type1 { display: inline-block; vertical-align: middle; text-align: left; width:230px;  height: 65px; line-height: 63px; font-size:1.8rem; color: #000; border: 1px solid #000; padding-left:30px;  transition: all 0.5s ease; position: relative; }
.btn-type1 i,
.btn-type1 svg { position: absolute; top:22px; right:25px;  font-size:2rem;  margin-left:20px; transition: all 0.5s ease; transform:translate(0, 0); }
.btn-type1:hover { background: #000000; color: #fff; }
.btn-type1:hover i,
.btn-type1:hover svg { color: #fff; transform:translate(7px, 0); }
.btn-type1-long { width:315px; }


.btn-type2 { display: inline-block; vertical-align: middle; text-align: left; width:230px;  height: 65px; line-height: 63px; font-size:1.8rem; color: #fff; border: 1px solid #F46F1B; background: #F46F1B;  padding-left:30px;  transition: all 0.5s ease; position: relative; }
.btn-type2 i,
.btn-type2 svg { position: absolute; top:22px; right:25px;  font-size:2rem;  margin-left:20px; transition: all 0.5s ease;}
.btn-type2:hover { background: #000000; color: #fff; border:1px solid #000; }
.btn-type2:hover i,
.btn-type2:hover svg { color: #fff; }


.btn-type3 { display: inline-block; vertical-align: middle; text-align: left; height: 65px; line-height: 59px; font-size:1.8rem; color: #000; border: 1px solid #000; padding:0 20px;  transition: all 0.5s ease; position: relative; }
.btn-type3 .ic { font-size:2.2rem !important; margin:-4px 0 0 10px;}
.btn-type3:hover { background: #000000; color: #fff; }
.btn-type3:hover .ic { color: #fff; }

@media screen and (max-width:1200px) {
	
	.pc-only { display:none !important; }

	/* STIEMAP */
	.sitemap  { padding:20px 10px; overflow:auto; }
	.sitemap:before { display:none; }
	.sitemap .in { width:auto; display:block;height:auto;  }
	.sitemap .navs h3 { font-size:3.5rem; padding-bottom:15px; margin-bottom:15px; }
	.sitemap .navs nav .dep2 > ul { padding-top:10px; }
	.sitemap .navs nav > ul > li { margin-bottom:20px; }
	.sitemap .navs nav .dep2 > ul > li { width:50%; }
	.sitemap .navs nav .btn-dep1 { font-size:2.5rem; }
	.sitemap .navs nav .btn-dep2 { font-size:1.6rem; margin-right:0; letter-spacing:-0.5px; }
	.sitemap .navs nav .btn-dep3 { font-size:1.5rem; }
	.sitemap .btn-close { right:35px; top:25px; font-size:3rem; }

	/* 공통 */
	.btn-type1 { width:auto; padding:0 50px 0 17px; height: 40px; font-size:1.2rem; line-height: 38px; }
	.btn-type1 i, .btn-type1 svg { right:16px; top:12px; font-size:1.6rem; }
	.btn-type2 { width:auto; padding:0 50px 0 17px; height: 40px; font-size:1.2rem; line-height: 38px; }
	.btn-type2 i, .btn-type2 svg { right:16px; top:12px; font-size:1.6rem; }
	.btn-type3 { width:auto; padding:0 15px; height: 40px; font-size:1.4rem; line-height: 36px; }
	.btn-type3 .ic{  font-size:1.52rem !important; }

	.btn-type1-li { padding: 0 9px; text-align:center; }
	.btn-type1-li i, .btn-type1-li svg { display:none; }

	/* MODAL */
	.modal-target h6 { padding:20px 0 15px; font-size:1.8rem; }
	.modal-target .btns { padding: 0 15px; display: block; }
	.modal-target .btns a { margin:0 0 20px; padding:15px; }
	.modal-target .btns a .ic { font-size:2.8rem; }
	.modal-target .btns a strong { font-size:1.5rem; margin:10px 0 5px; }
	.modal-target .btns a p { font-size:1.2rem; }
	.modal-target .choice button { height: 45px; font-size:1.4rem; }
	.modal-target .choice button .ic { font-size:1.6rem; margin-left: 20px; margin-top:-3px;  }
	
	.modal-terms h5 { line-height: 50px; font-size:2rem; }
	.modal-terms .text { font-size:1.2rem; max-height: 300px;padding:10px;  }
	.modal-terms.copy-type .text { font-size:1.3rem; }
	.modal-terms .btn-type3 { display: block; font-size:1.2rem; padding: 0; letter-spacing: -1px; text-align: center;}
	.modal-terms.copy-type .btn-type3 { margin-top:15px; }

}



@media screen and (max-width:768px){
	.phone-only { display:block; }
	.phone-over { display:none; }
}



/*별점*/
.websize-star { background: #fff; padding: 18px 0 64px; }
.appr { padding: 17px 38px; border: 2px solid #ececec; position: relative; display: flex; align-items: center; position: relative; margin:50px 0 20px;  }
.appr .areyou { font-size:1.7rem; } 
.appr .grade { margin-left: 30px; }
.appr .btn-send { position: absolute; right:-2px; top:-2px; width:170px; bottom:-2px; text-align: center; font-size:1.7rem; font-weight: 300; background: #000; color: #fff; }
.appr .btn-send:focus { outline:2px solid #f2ab0c; }
.manager { display: flex; align-items: center; }
.manager h5 { font-size:1.6rem; padding-left: 15px; font-weight: 600; position: relative;}
.manager h5:before { content: ''; position: absolute;left: 0; top:2px; bottom:2px; width:2px; background: #000; }
.manager dl { display: flex; align-items: center; font-size:1.6rem; font-weight: 300; }
.manager dl dt { margin:0 5px 0 15px; font-weight: 400; }

.grade button { margin-right:12px; }
.grade button span { position: absolute;left: -9999px; }
.grade button i:before,
.grade button svg:before { content: '\f006'; font-family:'FontAwesome';  font-size:2.5rem; color: #d5d5d5; font-style: normal; }
.grade button.on i:before,
.grade button.on svg:before{ content: '\f005'; color: #ffd800; }

@media screen and (max-width:1200px){
	.websize-star { background: #fff; padding: 2px 0 11px; }

	.grade button i:before, 
	.grade button svg:before { font-size:2.2rem; }
	
	.appr { margin:30px 0 15px; display: block; padding:20px; }
	.appr .areyou { font-size:1.4rem; text-align: center; }
	.appr .grade {margin: 15px 0; text-align: center; }
	.appr .grade button { margin:0 5px;  }
	.appr .btn-send { position: static; display: block; width:100%; height: 35px; font-size:1.4rem; }
	.manager { margin-bottom: 35px; }
	.manager h5 { font-size:1.3rem; padding-left: 7px; }
	.manager dl { font-size:1.3rem; }

}

@media screen and (max-width:320px){
	.btn-type1 { padding: 0 7px; text-align:center; }
	.btn-type2 { padding: 0 7px; text-align:center; }

	.btn-type1 i, .btn-type1 svg { display:none; }
	.btn-type2 i, .btn-type2 svg { display:none; }

}