/*
메인페이지
*/

:root {
	--white : #fff;
	--brand-color1: #111;
	--brand-color2: #666;
	--font-color1: #111;
	--font-color2: #505050;
	--font-color3: #767676;
	--font-color4: #acacac;
	--bg-color1: #f7f8fb;
	--bg-color2: #F5F7FE;
	--bg-color3: #FFF4F8;
	--bg-color4: #EDF9F8;
	--bg-color5: #F7F8FB;
	--line-color1: #E5E5E5;
	--line-color2: #d4d4d8;
	--line-color3: #111;
	--system-color1: #04b014;
	--system-color2: #ffaa00;
	--system-color3: #db1f31;
	--system-color4: #112859;
	--system-color5: #00bcd4;
	--system-color6: #059C44;
}

/* 레이어 팝업 */
.layerpop {  }
.layerpop .popup { padding: 0; }
.layerpop .popup-body { position: relative; }
.layerpop .swiper-slide { height: 100%; width: 100%;  }
.layerpop .swiper-slide a { display: inline-block; height: 100%; width: 100%; }
.layerpop-banner img { width: 100%; height: 100%; object-fit: cover; border-radius: 15px 15px 0 0;  }

.layerpop .controls { position: absolute; display: flex; align-items: center; gap: 10px; justify-content: center; width: 100%;  bottom: calc( 100% + 20px ); font-size: 20px; color: #fff; }
.layerpop .controls .swiper-pagination { position: relative; bottom: 0; width: auto; }


.layerpop .swiper-button-prev { left: auto; right: calc(100% + 20px ); }
.layerpop .swiper-button-next { transform: scaleX(-1); left: calc(100% + 20px ); right: auto; }
.layerpop .swiper-button-prev:hover,
.layerpop .swiper-button-next:hover { background-color: #033987; }

.layerpop .fixed-bottom { margin-top: 0; }
.layerpop .popup-foot { margin-top: 0; padding: 16px; }
.layerpop .popup-foot .common-btns { align-items: center; display: flex; justify-content: space-between; }
.layerpop .popup-foot .common-btns .btn { width: auto; }



.btn.btn-fill-black { background: #111; color: #fff; }
.btn.btn-fill-black:hover { background:rgba(0,0,0,0.8); }
.btn.btn-fill-black:disabled { color: var(--font-color4); background:var(--background-color); }
.btn { height: 36px; border-radius:6px; padding:0 24px; font-size:14px;  letter-spacing: -0.25;  transition: all 0.5s ease;}
.btn.block { width:100%; }

.layerpop .swiper-button-prev,
.layerpop .swiper-button-next { width: 50px; height: 50px;  background: rgba(17,17,17,0.4) url(/math/resources/images/main/arrow_red.svg) no-repeat 50% 50%; flex:0 0 24px; border-radius: 50%; transition: all 0.5s ease ; background-size: 30%}
.layerpop .swiper-button-prev { left: auto; right: calc(100% + 20px ); }
.layerpop .swiper-button-next { transform: scaleX(-1); left: calc(100% + 20px ); right: auto; }
.layerpop .swiper-button-prev:hover,
.layerpop .swiper-button-next:hover { background-color: #000; }

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {    content: none !important;		}
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {    content:none !important;}

@media all and (max-width:1024px) {
	.layerpop .swiper-button-prev, .layerpop .swiper-button-next { width: 40px; height: 40px; }
	.layerpop .swiper-button-prev { right: auto; left: 16px; }
	.layerpop .swiper-button-next { left: auto; right: 16px ; }
	.list-type4 ul li { width:auto !important;  padding:4px;  }
}

@media (max-width:1023px) {
	.ing_prgram { height: auto; width: auto !important;; }
	.ing_prgram dd ul li.p_name { font-size: 1.2em !important; }
	.ing_prgram dd ul li:last-child{margin-bottom:0;}
}


@media (max-width: 768px) {
	.swiper {    width: 100%;    height: auto !important;    max-width: 1300px;    margin: 0 30px; }
	.ing_prgram dt.img { height: 140px !important; }
	.ing_prgram dd ul li.p_name { font-size: 1.2em !important; height: 35px; }
	.ing_prgram dd ul li.floor { color: #666; font-size: 0.9em; }
}



/* Popup */
.border-bottom-none { border-bottom: 0 !important; }
.max-h400 { max-height: 400px; overflow: auto;}
body.popup-on { overflow: hidden;}
.popup-wrap { position: fixed;left: 0; top:0; right:0; bottom:0; z-index:5000; background: rgba(17,17,17,0.5); overflow: auto;  display: none; }
.popup-box { display: table; width:100%; height: 100%; }
.popup-cont { display: table-cell; vertical-align: middle; padding:20px; }
.popup { padding: 40px; border-radius:15px; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.1); margin: 0 auto; }
.popup-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 40px; }
.popup-head .h3-popup { font-size:20px; }
.popup-head .btn-refresh { font-size:16px; }
.popup-head .btn-refresh:disabled { opacity:0.3; }
.popup-head .btn-close { width:28px; height: 28px; background: url(../img/common/ico_close_popup.svg) no-repeat 50% 50%; }
.popup-head .btn-download { width:28px; height: 28px; background: url(../img/common/ico_download2.svg) no-repeat 50% 50%; }
.popup-head.line-type { border-bottom: 1px solid var(--line-color1); }
.popup-body .h3-sub { margin-bottom: 8px; }
.popup-foot { margin-top:16px; }
.popup-foot.type2 { border-top:0; }
.popup-foot.type2 .fixed-bottom { margin-top:0; }
.popup-foot.type2 .common-btns { border-top:0 !important; }
.popup .btn-all { font-size:14px; font-weight: 400; }
.popup-msg { text-align: center; padding: 40px 20px; border-radius:6px; font-weight: 400; font-size:16px; color:var(--font-color3); background: var(--background-color); margin-bottom: 40px;  }
.popup-wrap.modal-type .fixed-bottom { height: auto; margin-top:0; }

.popup-wrap.type2 .popup { padding:0;  }
.popup-wrap.type2 .popup-head { padding:24px; margin-bottom: 0; border-bottom: 1px solid var(--line-color1);}
.popup-wrap.type2 .max-h580 { max-height: 540px; padding:16px 24px; overflow: auto; overflow-x:hidden;}
.popup-wrap.type2 .max-h580 .hr1 { width:calc(100% + 48px); margin-left: -24px; }
.popup-wrap.type2 .common-btns { padding:24px; border-top:1px solid var(--line-color1); }
.popup-wrap.type2 .popup-foot { margin-top:0; }
.popup-wrap.small-type .popup-head { padding:24px; margin-bottom: 0; }
.popup-wrap.small-type .popup { padding: 0;  }
.popup-wrap.small-type .popup-body { padding: 0 24px;}
.popup-wrap.small-type .popup-foot{ padding:24px; }
.popup-wrap.small-type .popup-foot .fixed-bottom { margin-top:0; }

.popup-box { display: table; width:100%; height: 100%; }
.popup-cont { display: table-cell; vertical-align: middle; padding:20px; }

.popup-body .h3-sub { margin-bottom: 8px; }
.popup-body.h-auto { height: auto; }

.mainPopupMaxWidth{ max-width: 600px; }

.checkbox + div { display: flex ; align-items: center; cursor: pointer; }
.popup-wrap { position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 555000; background: rgba(17, 17, 17, 0.5);
overflow: auto; display: none; }


.join-txt1 { font-size: 16px; color: var(--font-color3); font-weight: 400; }


.swiper-button-next:after,.swiper-button-prev:after { font-family: swiper-icons; font-size: 0; text-transform:none!important; letter-spacing: 0; font-variant: initial; line-height: 1 }




.main-calendar .tabs4 { margin-bottom: 35px; }
.main-calendar .calendar-col { display: flex; justify-content: space-between; gap: 20px; }
.main-calendar .calendar-col .calendar-inner { width: 50%; }
.main-calendar .calendar-inner { min-height: 510px; padding: 40px 40px 30px 40px; border-radius: 8px; background-color: #F5F8FD; }
.main-calendar .calendar-titarea { display: flex; align-items: center; gap: 12px; }
.main-calendar .calendar-tit { font-size: 28px; font-weight: 700; }
.main-calendar .calendar-left .calendar-titarea { justify-content: space-between; }
.main-calendar .calendar-control { display: flex; align-items: center; gap: 6px; }
.main-calendar .calendar-control .btn { display: flex; align-items: center; justify-content: center; position: relative; width: 46px; height: 46px; padding: 0; border-radius: 50%; background-color: var(--white); border: 1px solid var(--line-color1); transition: .3s; }
.main-calendar .calendar-control .btn::before { content: ""; display: inline-block; width: 24px; height: 24px; background-image: url(../img/common/ico_s24_arr_prev.svg); background-repeat: no-repeat; background-position: center; background-size: contain; transition: .3s; }
.main-calendar .calendar-control .btn.btn-next::before { transform: rotate(180deg); }
.main-calendar .calendar-control .btn:hover { background-color: var(--system-color5); }
.main-calendar .calendar-control .btn:hover::before { filter: invert(100%); }
.main-calendar .calendar-state { display: flex; justify-content: center; align-items: center; gap: 8px; margin: 20px 0 14px 0; }
.main-calendar .calendar-state li { display: inline-flex; align-items: center; gap: 8px; }
.main-calendar .calendar-state li i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; }
.main-calendar .calendar-state li i.color1 { border: 2px solid var(--system-color5); }
.main-calendar .calendar-state li i.color2 { background-color: var(--system-color5); }
.main-calendar .calendar-state li i.color3 { background-color: #EE5D4D; }
.main-calendar .calendar-state li span { font-size: 14px; font-weight: 400; }
.main-calendar .calendar-table .sunday { color: #EE5D4D !important; }
.main-calendar .calendar-table .saturday { color: var(--system-color5) !important; }
.main-calendar .calendar-table table { width: 100%; }
.main-calendar .calendar-table thead { border-bottom: 1px solid var(--line-color1); }
.main-calendar .calendar-table thead tr th { height: 48px; font-size: 16px; line-height: 28px; font-weight: 500; text-align: center; }
.main-calendar .calendar-table tbody tr td { height: 44px; padding: 4px; text-align: center; }
.main-calendar .calendar-table tbody tr td .day { display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; width: 48px; height: 48px; margin: 0 auto; }
.main-calendar .calendar-table tbody tr td .day.day-today button { border-color: var(--system-color5); }
.main-calendar .calendar-table tbody tr td .day.day-select button { background-color: var(--system-color5); border-color: var(--system-color5); color: var(--white)!important; }
.main-calendar .calendar-table tbody tr td .day-on button span::after { content: ""; position: absolute; left: 50%; top: calc(100% + 2px); transform: translateX(-50%); width: 6px; height: 6px; border-radius: 50%; background-color: #EE5D4D; }
.main-calendar .calendar-table tbody tr td .day button { position: relative; width: 100%; height: 100%; border-radius: 50%; transition: .3s; border: 2px solid transparent; background-color: transparent; font-size: 16px; line-height: 28px; font-weight: 500; }
.main-calendar .calendar-table tbody tr td .day button span { position: relative; display: inline-block; }
.main-calendar .calendar-right { max-height: 510px; overflow-y: auto; }
.main-calendar .calendar-right .calendar-titarea { position: sticky; top: 0; padding-bottom: 40px; background-color: #F5F8FD; }
.main-calendar .calendar-right .calendar-titarea::before { content: ""; position: absolute; left: 0; bottom: 100%; z-index: 10; width: 100%; height: 40px; background-color: #F5F8FD; }
.main-calendar .calendar-right .calendar-tit { display: inline-flex; align-items: center; gap: 12px; }
.main-calendar .calendar-right .calendar-tit::before { content: ""; display: inline-block; width: 40px; height: 40px; background: url(../img/main/ico_main_calendar.svg) no-repeat center / contain; }
.main-calendar .calendar-item { padding: 20px 24px; background-color: var(--white); border-radius: 8px; }
.main-calendar .calendar-item+.calendar-item { margin-top: 10px; }
.main-calendar .calendar-item .calendar-badge { display: inline-block; margin-bottom: 10px; padding: 4px 12px; font-size: 14px; font-weight: 500; color: var(--system-color5); border: 1px solid var(--system-color5); text-align: center; border-radius: 90px; }
.main-calendar .calendar-item .calendar-textarea p { font-size: 20px; font-weight: 500; }


.cate_m span::after {
	display: inline-block;
	content: '';
	/* background: url(../images/sub/arr_down_src.png) no-repeat 98% center; */
	width: 11px;
	height: 7px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%) rotate(0);
	transition: all 0.3s;
}
.main_new .sec03 .cate_wrap2 .cate_m span {
	display: block;
	background: #fff;
	font-size: 21px;
	height: auto;
	line-height: normal;
	padding: 24px;
	position: relative;
	cursor: pointer;
	margin-bottom: 7px;
	font-size: 18px;
}

.main_new .sec03 .cate_wrap2 .cate_m span::after {
	display: inline-block;
	content: '';
	background: none;
	width: 11px;
	height: 7px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%) rotate(0);
	transition: all 0.3s;
}


/*
공통
*/

body *{box-sizing: border-box;}

/*header*/
header .header{padding-top:34px;}
header{z-index:9999;position:fixed;width:100%;height:130px;margin:0 auto;transition:.3s all; background:none  }
header:before{content:"";position:absolute;left:0;top:130px;width:100%;border-bottom:1px solid rgba(00,00,00,.0)}
header .over:before {    border-bottom: 1px solid #e5e5e5;}
/*header .header{position:relative;width:1300px;padding-top:35px;margin:0 auto;}*/
header h1{z-index:99;position:absolute;top:55px;left:0;width:222px;height:39px;background:url(https://www.nowon.kr/math/resources/site/images/logo_ov.png) no-repeat 0 50%;background-size:contain}
header h1 a{display:block;width:100%;height:100%;font-size:0 ! important;}
header .utill{z-index:99;position:absolute;top: 15px;right: 50px;font-size:0;color:#757575}
header .utill a{display:inline-block;font-weight:500;font-size:16px;color:#222;vertical-align:middle; }
header .utill a~a{position:relative;margin-left:30px; color:#333}
header .utill strong{text-decoration:underline}
header .utill .btn_log{padding-left:22px;background:url(https://www.nowon.kr/math/resources/site/images/ic_log_ov.png) no-repeat 0 50%;}
header .utill .btn_join{padding-left:22px;background:url(https://www.nowon.kr/math/resources/site/images/ic_join_ov.png) no-repeat 0 50%;}
header .utill .btn_logout{padding-left:27px;background:url(https://www.nowon.kr/math/resources/site/images/ic_log2_ov.png) no-repeat 0 50%;}

header nav{z-index:10;position:relative;top:30px;text-align:center; width:calc(100% - 300px); left: 300px}
header nav .gnb{display:inline-block;font-size:0; display: flex; justify-content: space-around}
header nav .depth1{display:inline-block;width:20%;}
header nav .depth1 > a{position:relative;display:block;height:67px;font-size:21px;font-weight:500; color: #333;   }
header nav .depth2{display:none;position:absolute;top:66px;left:0;padding-top:30px;width:20%;min-height:520px;padding-left:20px;z-index:99;text-align:left;border-left:1px solid #e5e5e5;box-sizing:border-box;}
header nav .depth2:before{content:"";position:absolute;left:0;right:0;top:0;width:0;height:4px;margin:0 auto;background:#df0f3e;transition:.3s all;}
header nav .depth2.m2{left:20%}
header nav .depth2.m3{left:40%}
header nav .depth2.m4{left:60%}
header nav .depth2.m5{left:80%}
header nav .depth2 .m_tit{margin-bottom:25px;font-size:23px;color:#000;font-weight:500}
header nav .depth2 li{line-height:30px; }
header nav .depth2 li~li{margin-top:17px}
header nav .depth2 a{display:block;line-height:30px;letter-spacing:-.35px;font-size:18px;color:#111;font-weight:500; position: relative;}
header nav .depth2 a:hover{text-decoration:underline;color:#df0f3e}
header nav .depth1:hover > a{color:#df0f3e}
header nav .depth1:hover .depth2:before{width:100%}
.gnb_bg{z-index:999;position:fixed;top:130px;width:100%;background:#fff;overflow:hidden;box-shadow:0 5px 5px rgba(00, 00, 00, .1)}

header nav .depth3 {margin:10px; border-radius: 5px; background: #f7f7f7; padding:7px 5px 7px 10px; }
header nav .depth3 li{line-height: 20px; padding-left: 10px;}
header nav .depth2 li~li{margin-top:7px}
header nav .depth3 li a:before{content:'- '}
header nav .depth3 li a{display:block;line-height:18px;letter-spacing:-.35px;font-size:17px;color:#777;font-weight:500;text-indent: -10px;  }

header nav .depth2.m3 li a.drop:after { display: inline-block; content: ''; width: 11px; height: 6px; background: url(https://www.nowon.kr/math/resources/images/sub/arrow.svg) no-repeat center center; position: absolute; top: 0; right: 20px; margin: auto 0; width: 20px; height: 20px; transform: rotate(0); transition: all 0.4s; }
header nav .depth2 a.on::after { transform: rotate(180deg);}


header.over{background:#fff}
header.over:before{border-bottom:1px solid #e5e5e5;}
header.fixed{height:130px;border-bottom:1px solid #e5e5e5;;background:#fff}
header.fixed:before{top:130px;}
header.fixed.over:before{border-bottom:0}

header.fixed h1{top:27px;}
header.fixed .header{padding-top:35px}
header.fixed h1, header.over h1{background:url(https://www.nowon.kr/math/resources/site/images/logo_ov.png) no-repeat 0 50%;background-size:contain}
header.fixed .utill a, header.over .utill a{color:#191919}
header.fixed .utill .btn_log,header.over .utill .btn_log{background:url(https://www.nowon.kr/math/resources/site/images/ic_log_ov.png) no-repeat 0 50%;}
header.fixed .utill .btn_join,header.over .utill .btn_join{background:url(https://www.nowon.kr/math/resources/site/images/ic_join_ov.png) no-repeat 0 50%;}
header.fixed .utill .btn_logout,header.over .utill .btn_logout{background:url(https://www.nowon.kr/math/resources/site/images/ic_log2_ov.png) no-repeat 0 50%;}
header.fixed .depth1 > a, header.over .depth1 > a{color:#333}
header.fixed + .gnb_bg{top:100px}



header.over{background:#fff}
header.over:before{border-bottom:1px solid #e5e5e5;}
header.fixed{height:130px;border-bottom:1px solid #e5e5e5;;background:#fff}
header.fixed:before{top:130px;}
header.fixed.over:before{border-bottom:0}
header.fixed .utill{display:block}
header.fixed h1{top:55px;}
header.fixed .header{padding-top:35px}
header.fixed h1, header.over h1{background:url(https://www.nowon.kr/math/resources/site/images/logo_ov.png) no-repeat 0 50%;background-size:contain}
header.fixed .utill a, header.over .utill a{color:#191919}
header.fixed .utill .btn_log,header.over .utill .btn_log{background:url(https://www.nowon.kr/math/resources/site/images/ic_log_ov.png) no-repeat 0 50%;}
header.fixed .utill .btn_join,header.over .utill .btn_join{background:url(https://www.nowon.kr/math/resources/site/images/ic_join_ov.png) no-repeat 0 50%;}
header.fixed .utill .btn_logout,header.over .utill .btn_logout{background:url(https://www.nowon.kr/math/resources/site/images/ic_log2_ov.png) no-repeat 0 50%;}
header.fixed .depth1 > a, header.over .depth1 > a{color:#333}
header.fixed + .gnb_bg{top:100px}



@media all and (max-width: 1200px) {
	body{font-size:14px;}

	header{height:60px; width: 100%}
	header.fixed{height:60px}
	header:before,header:after,header .header:before{display:none}
	header h1{left:20px;top:17px;width:139px;height:23px;background:url(https://www.nowon.kr/math/resources/site/images/m/logo.png) no-repeat 50% 50%;background-size:contain}
	header.fixed h1, header.over h1{left:20px;top:17px;}
	header nav{display:none}
	header .utill{display:none}
	header.fixed .utill {display:none !important}
	.gnb_allMenu{display:block;position:absolute;top:20px;right:20px;width:22px;height:17px;font-size:0;background:url(https://www.nowon.kr/math/resources/site/images/m/btn_menu.png) no-repeat 50% 50%;background-size:contain}

	#main-sidebar-wrapper{height:100vh}
	header.fixed h1, header.over h1{background:url(https://www.nowon.kr/math/resources/site/images/m/logo.png) no-repeat 50% 50%;background-size:contain}

	header .utill .btn_log{color:#000 ! important;background:url(https://www.nowon.kr/math/resources/site/images/ic_log_ov.png) no-repeat 0 50% ! important;}
	header .utill .btn_join{color:#000 ! important;background:url(https://www.nowon.kr/math/resources/site/images/ic_join_ov.png) no-repeat 0 50% ! important;}
	header .utill .btn_logout{color:#000 ! important;background:url(https://www.nowon.kr/math/resources/site/images/ic_log2_ov.png) no-repeat 0 50% ! important;}


	.allM_open #main-sidebar-wrapper{z-index:99999;display:block}
	.allM_open header{position:static;}
	.allM_open:before{content:"";z-index:999;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(00, 00, 00, .8)}
	.allM_open .menu_side.actve{right:0;}
	.menu_side{position:absolute;right:-310px;width:310px;height:100vh;margin:0 0 0 auto;overflow-y:auto;background:#fff;-webkit-transition:all .2s ease-in;transition:all .2s ease-in;}
	.menu_side .m_close{position:absolute;top:18px;right:18px;width:18px;height:18px;font-size:0;background:url(https://www.nowon.kr/math/resources/site/images/m/btn_close.png) no-repeat 50% 50%;background-size:16px auto}
	.menu_side .top{position:relative;height:61px;border-bottom:1px solid #999;background:url(https://www.nowon.kr/math/resources/site/images/m/logo.png) no-repeat 20px 50% #fff;background-size:139px auto;}
	.menu_side .menu_box a{font-weight:500;font-size:18px;color:#333;}
	.menu_side .menu_box ul{padding:0;text-align:left}
	.menu_side .menu_box > ul > li{display:block;width:100%;height:auto;padding:0;}
	.menu_side .menu_box > ul > li~li{border-left:0;}
	.menu_side .menu_box > ul > li{border-bottom:1px solid #999}
	.menu_side .menu_box > ul > li > a{display:block;height:50px;line-height:45px;padding-left:32px;}
	.menu_side .menu_box .dep2{display:none;padding:20px 20px 20px 30px;margin:0;border-top:1px solid #999;background:#eaeaea}
	.menu_side .menu_box .dep2 li~li{margin-top:16px}
	.menu_side .menu_box .dep2 li{position: relative;}
	.menu_side .menu_box .dep2 a{padding-right:0;font-size:16px;color:#777;   display: inline-block; }
	.menu_side .menu_box .dep2 li a.drop:after { display: inline-block; content: ''; width: 11px; height: 6px; background: url(https://www.nowon.kr/math/resources/images/sub/arrow.svg) no-repeat center center; position: absolute; top: 3px; right:5px; width: 20px; height: 20px; transform: rotate(0); transition: all 0.4s; }
	.menu_side .menu_box  .dep2 a.on::after { transform: rotate(180deg);}

	.menu_side .menu_box .dep3{ border:1px solid #ddd; background: #fff; border-radius: 10px; padding:10px; margin-top: 10px}
	.menu_side .menu_box .dep3 li:before{content:' - '; padding-left: 10px}
	.menu_side .menu_box .dep3 li~li{margin-top:5px}

	.menu_side .menu_box .selected{font-weight:700;color:#df0f3e}
	.menu_side .menu_box .selected + .dep2{display:block}
	.menu_side .utill{position:relative;display:block !important;right:0;margin-left:20px;}


}

/* main */
body{background: none}

.main{padding-top:0px;}
.main_new{    display: flex;    align-items: flex-start;    flex-wrap: wrap;  gap: 0; }
.main_new h2{margin: 50px 0}
/*.main_new .sec01{overflow:hidden;width:100%;height: 810px; background: url(/math/resources/images/main/main_visual.jpg) center center no-repeat; background-size: cover; }*/


@media only screen and (min-width: 1201px) {
    
/*애니메이션*/

.main_new .sec01 { overflow: hidden; width: 100%; height: 890px; background:	url(/math/resources/images/main/main_visual_base.jpg) center center no-repeat; background-size: cover; position:
relative; }

/*열기구*/ 
.balloon01 { position: absolute; top: 15%; left:28%; width: 10vw; animation: floatUpDown 4s ease-in-out
infinite; }
@keyframes floatUpDown {
	0% { transform: translateY(0px); }
	50% { transform: translateY(-60px); }
	100% { transform: translateY(0px); }
}

/*트라이*/
.character { position:absolute; top:59%; left: 47% } 
.character img.body { width:6em; display: block; position:relative; } 
.arm{position:absolute; width:2em;  top:54px; 	left:70px; transform-origin: 0 44px;animation: waveArm 0.6s ease-in-out infinite alternate; }

@keyframes waveArm{
	0% { transform: rotate(0); }
	100% { transform: rotate(-30deg); }
}

/*제로*/
.zero {    width: 7vw;    animation: jump 1s ease-in-out infinite;   position: absolute; top:25%; left:22%;  }

@keyframes jump {
	0% { transform: translateY(0); }
	30% { transform: translateY(-30px); } /* 위로 튀기 */
	50% { transform: translateY(0); }
	70% { transform: translateY(-15px); } /* 튕긴 뒤 약간 더 튀기 */
	100% { transform: translateY(0); }
}

/*파이*/
.pi {    width: 9vw;    animation: bounceSmall 0.6s ease-in-out infinite; position: absolute; bottom:0; left:35%;}

@keyframes bounceSmall {
	0% { transform: translateY(0); }
	50% { transform: translateY(-10px); } /* 작게 위로 */
	100% { transform: translateY(0); }
}

/*시그마*/
.sigma {width: 7vw; animation: jump 0.8s ease-in-out infinite;  bottom:10%; position: absolute; right:10.9%  }

@keyframes sigma {
	0%   { transform: translateY(0); }
	50%  { transform: translateY(-10px); }
	100% { transform: translateY(0); }
}

/*탄젠트*/
.bouncer { position: absolute; bottom: 50%; right:21%; transform: translateX(-50%); animation: bounce 0.7s ease-in-out  infinite; width: 9vw; /* 이미지 크기에 맞게 조정 */ }

@keyframes bounce {
	0%, 100% { transform: translateX(-50%) translateY(0); }
	50%      { transform: translateX(-50%) translateY(-10px); } /* 위로 튀는 높이 */
}

/* 풍선*/
.balloon {
	position: absolute; /* 위치 조정 가능하게 */
	animation: floatUpDown 4s ease-in-out infinite;
}

.balloon_yellow {
	animation-delay: 0s;  width: 5vw; bottom: 11%; left:24%;
}
.balloon_blue {
	animation-delay: 1s;width: 5vw; bottom: 10%; left:22%;
}
.balloon_red {
	animation-delay: 2s; width: 5vw; bottom: 5%; left:30%;
}

@keyframes floatUpDown {
	0%   { transform: translateY(0); }
	50%  { transform: translateY(-50px); }
	100% { transform: translateY(0); }
}
}
    
 @media only screen and (max-width: 1200px) {
    .main_new .sec01 {    background: url(/math/resources/images/main/main_visual_m.jpg) center center no-repeat; background-size: cover;}
    .main_new .sec01 img{display: none;}
    }
    

.main_new .sec02{width:100%; }
.main_new .sec02 .box{width:1300px;margin:50px auto; position:relative;}
.box .more {    position: absolute;    right: 0;    top: 0;  display:flex; align-items: center;    justify-content: center;    gap: 12px;    width: 110px;    height: 36px;        font-size: 18px;    color: #393939;}
.box .more:after {    display: flex;    align-items: center;    justify-content: center;    width: 25px;    height: 25px;    border-radius: 100%;       color: #222;    font-family: serif;    font-size: 30px;    content: "+";}
/* 진행중인 프로그램*/
.ing_prgram{/* display: flex; */gap:50px;/*justify-content: space-between;*/box-sizing: border-box;position: relative;height: 360px;width: 280px;padding:5px;}

.ing_prgram .prev{ position: absolute; left:-40px; top: calc(50% - 40px); z-index: 2; width: 72px; height: 72px; background:#fff url(/math/resources/images/main/arrow_red.svg) 45% 50% no-repeat; border:1px solid #ddd; border-radius: 100%; font-size: 0;background-size: 15px; display:none }
.ing_prgram .next{ position: absolute; right:-40px; top: calc(50% - 40px); z-index: 2; width: 72px; height: 72px; background:#fff url(/math/resources/images/main/arrow_red.svg) 45% 50% no-repeat; border:1px solid #ddd; border-radius: 100%; font-size: 0;background-size: 15px; transform: rotate(180deg); display:none;}
.ing_prgram .prev:hover, .ing_prgram .next:hover{background-color: #f4f4f4}
.ing_prgram dl{border-radius: 15px; border:1px solid #ddd; /*width: 25%;*/}
.ing_prgram dl:hover{box-shadow: 0 0 30px 0 rgba(80, 118, 80, 0.2); color:#00bcd4 }
.ing_prgram dt.img{overflow: hidden; position: relative; border-radius: 15px 15px 0 0; height:215px; text-align:center; }
.ing_prgram dt.img img{height:100%;}
.ing_prgram dt.img img:hover{transform: scale(1.1); transition: 0.5s ease-in-out}
.ing_prgram dt em{position: absolute; left:0; font-size: 0.9em; padding:5px 15px; border-radius: 15px 0; color: #fff; min-width: 75px; box-sizing: border-box; display: inline-block; text-align: center; z-index: 2 }
.ing_prgram dt em.state01{background: #fc7979; }
.ing_prgram dt em.state02{background: #63c4f6; }
.ing_prgram dt em.state03{background: #43c6d2; }
.ing_prgram dt em.state04{background: #43d279; }
.ing_prgram dt em.state05{background: #de6aec; }
.ing_prgram dd{padding:15px}
.ing_prgram dd ul li{margin-bottom:0}
.ing_prgram dd ul li.category{color:#00bcd4}
.ing_prgram dd ul li.p_name {    font-size: 18px;    font-weight: 600;    line-height: 1.2em;    display: -webkit-box;    white-space: normal;    text-overflow: ellipsis;    -webkit-line-clamp: 2;    -webkit-box-orient: vertical;
overflow: hidden;   height:2.4em; }
.ing_prgram dd ul li.floor { color: #666; font-size: 0.8em; font-weight: normal; }

.ing_prgram2{display: flex; flex-wrap:wrap;gap:20px;  box-sizing: border-box; position: relative;  }
.ing_prgram2 .prev{ position: absolute; left:-40px; top: calc(50% - 40px); z-index: 2; width: 72px; height: 72px; background:#fff url(/math/resources/images/main/arrow_red.svg) 45% 50% no-repeat; border:1px solid #ddd; border-radius: 100%; font-size: 0;background-size: 15px; display:none }
.ing_prgram2 .next{ position: absolute; right:-40px; top: calc(50% - 40px); z-index: 2; width: 72px; height: 72px; background:#fff url(/math/resources/images/main/arrow_red.svg) 45% 50% no-repeat; border:1px solid #ddd; border-radius: 100%; font-size: 0;background-size: 15px; transform: rotate(180deg); display:none;}
.ing_prgram2 .prev:hover, .ing_prgram .next:hover{background-color: #f4f4f4}
.ing_prgram2 dl{border-radius: 15px; border:1px solid #ddd; width: calc(25% - 15px);}
.ing_prgram2 dl:hover{box-shadow: 0 0 30px 0 rgba(80, 118, 80, 0.2); color:#00bcd4 }
.ing_prgram2 dt.img{overflow: hidden; position: relative; border-radius: 15px 15px 0 0; height:215px;  display: flex;    justify-content: center;    align-items: center;}
.ing_prgram2 dt.img img{/*height:100%;  max-width:inherit;*/}
.ing_prgram2 dt.img img:hover{transform: scale(1.1); transition: 0.5s ease-in-out}
.ing_prgram2 dt em{position: absolute; font-size: 0.9em; padding:5px 15px; border-radius: 15px 0; color: #fff; min-width: 75px; box-sizing: border-box; display: inline-block; text-align: center; z-index: 2 }
.ing_prgram2 dt em.state01{background: #fc7979; }
.ing_prgram2 dt em.state02{background: #63c4f6; }
.ing_prgram2 dt em.state03{background: #43c6d2; }
.ing_prgram2 dt em.state04{background: #43d279; }
.ing_prgram2 dt em.state05{background: #de6aec; }
.ing_prgram2 dd{padding:15px}
.ing_prgram2 dd ul li{margin-bottom:10px}
.ing_prgram2 dd ul li.category{color:#00bcd4}
.ing_prgram2 dd ul li.p_name{font-size: 19px; font-weight: 600 }
.ing_prgram2 dd ul li.floor{color:#666}


.main_new .sec03{width:100%;background: #eaf9bb}
.main_new .sec03 .box{width:1300px;margin:90px auto;}
.main_new .sec03 .exh_box{display: flex; justify-content: space-between; gap: 50px; height: auto;}

.main_new .sec03 .calendar{ border-radius: 20px; border: none; }
.main_new .sec03 .calendar .divi {display: block;width: 356px;height: 35px;margin: auto;line-height: 35px;border-radius: 18px;background: #f9f9f9;box-sizing: border-box;text-align: center;margin-bottom: 15px;}
.posxx { display: block; width: 10px; height: 12px; background: url(/math/resources/images/sub/ico_s1.png) no-repeat center; margin: 0 auto; text-indent: -9999px; position: relative; left: 1px; }
.pos {
	display: block;
	width: auto;
	height: 12px;
	/* background: url(/math/resources/images/sub/ico_s1.png) no-repeat center; */
	margin: 0 auto;
	/* text-indent: -9999px; */
	position: relative;
	left: 1px;
}
.pos div {
	margin: 0 auto;
	font-size: 12px;
	line-height: 21px;
	background-color: #013668;
	color: white;
	text-align: center;
	border-radius: 13px;
	width: fit-content;
	padding: 0 8px;
	width: auto;
}

.hol {display: block;width: 12px;height: 14px;background: url(/math/resources/images/sub/ico_s3.png) no-repeat center;margin: 0 auto;text-indent: -9999px;position: relative;left: 1px;}
.main_new .sec03 .calendar table {transform:scale(0.9);}
.main_new .sec03 .calendar table tbody td a.today { color: #222; width: 64px; height: 64px; line-height: 21px; border: 1px solid #222; border-radius: 50%; margin: 0 auto; padding-top: 10px; box-sizing: border-box; }
.main_new .sec03 .calendar table tbody td a.today dd{font-size: .7em}
.main_new .sec03 .calendar .head strong {font-weight: 600}
.main_new .sec03 .cate_wrap2{ border-radius: 20px; min-height:inherit; overflow: hidden;border: none;}
.main_new .sec03 .cate_wrap2 .cate_top01{ padding: 50px; font-size: 36px; position: relative; margin-left: 40px; padding-left: 60px }
.main_new .sec03 .cate_wrap2 .cate_top01:before{content:''; position: absolute; top: center; left: 0;  width: 36px; height: 36px; background: url(/math/resources/images/main/icon_calendar.svg) 0 0 no-repeat; }
.main_new .sec03 .cate_wrap2 .cate_m { min-height:inherit; padding:5px 30px 25px}
.main_new .sec03 .cate_wrap2 .cate_m > div { border: 1px dashed #ccc; border-radius: 25px; overflow: hidden; margin-top: 20px;  }
.main_new .sec03 .cate_wrap2 .cate_m span { display: block; background: #fff; font-size: 18px; height: 80px; line-height: 80px; padding: 0 30px; position: relative; cursor: pointer; border-radius:15px }
.main_new .sec03 .cate_wrap2 .cate_m span::after { display: inline-block; content: ''; /*background: url(/math/resources/images/sub/arr_down_src.png) no-repeat 98% center; */width: 11px; height: 7px; position: absolute; right: 30px; top: 50%; transform: translateY(-50%) rotate(0); transition: all 0.3s; }
.main_new .sec03 .cate_wrap2 .cate_m span.on::after { transform: translateY(-50%) rotate(180deg); }
.main_new .sec03 .cate_m .cate_tab { display: none; background: #f9f9f9; padding: 19px 30px; border-top: 1px solid #ddd;     overflow-y: auto; height: auto; box-sizing: border-box; /*20.09.04 khj 수정 */ }
.main_new .sec03 .cate_m .cate_tab.active { display: block; }
.main_new .sec03 .cate_m .cate_tab li { margin-right: 7px; /* 20.09.04 khjㅛ수정 */}
.main_new .sec03 .cate_m .cate_tab li:before{content: ' - '}



.main_new .sec04{width:100%;}
.main_new .sec04 .box{width:1300px;margin:90px auto; }
.main_new .sec04 .txt{margin:17px 0 35px 0;font-size:18px;color:#999;text-align:center;}
.main_new .sec04 .dir_go{display:flex;font-size:0}
.main_new .sec04 .dir_go li{position:relative;width:100%;height:250px;text-align:center}
.main_new .sec04 .dir_go li~li{margin-left:15px}
.main_new .sec04 .dir_go a{display:block;width:100%;height:100%;padding-top:35px;font-size:22px;color:#121212;font-weight:700;border-radius:20px;background:#ebfbff;box-sizing:border-box;box-shadow:0 0 35px rgba(00, 00, 00, .1);transition:.3s all;}
.main_new .sec04 .dir_go div:before{content:"";display:block;width:130px;height:120px;margin:0 auto 15px;transition:.3s all; }
.main_new .sec04 .dir_go span{display:block;margin-top:15px;font-size:16px;color:#a3a3a3;line-height:22px;font-weight:400;transition:.3s all; display:none}
.main_new .sec04 .dir_go .go1 div::before{background:url(/math/resources/images/main/main_icon01.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go2 div::before{background:url(/math/resources/images/main/main_icon02.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go3 div::before{background:url(/math/resources/images/main/main_icon03.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go4 div::before{background:url(/math/resources/images/main/main_icon04.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go5 div::before{background:url(/math/resources/images/main/main_icon05.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go a:hover{background:#00bcd4;color:#fff;box-shadow:0 0 35px rgba(00, 00, 00, .4);}
.main_new .sec04 .dir_go a:hover span{color:#fff;}
.main_new .sec04 .dir_go .go1:hover div::before{background:url(/math/resources/images/main/main_icon01.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go2:hover div::before{background:url(/math/resources/images/main/main_icon02.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go3:hover div::before{background:url(/math/resources/images/main/main_icon03.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go4:hover div::before{background:url(/math/resources/images/main/main_icon04.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go .go5:hover div::before{background:url(/math/resources/images/main/main_icon05.png) no-repeat 50% 50%;background-size:130%}
.main_new .sec04 .dir_go a:hover div::before{animation-name:wobble-horizontalY;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}




/*quick_menu*/

@media (max-width: 1200px) {
	.main {
		padding-top: 0px;
	}
}

/* PC 우측 따라다니는 퀵메뉴 */
@media screen and (min-width: 767px) {
	.quick-menu-pc { position: fixed; top: 50%; right: 10px; transform:	translateY(-50%); display: flex; flex-direction: column; background: #fff; border: 1px solid #ddd; box-shadow: 0 2px 10px rgba(0,0,0,0.1); z-index: 9999; border-radius: 50px; overflow: hidden; padding:30px 0 }

	.quick-menu-pc a { padding: 12px 16px; text-align: center; color: #333; text-decoration: none; border-bottom: 1px	solid #eee; font-size: 14px;  display: flex;flex-direction: column;  }
	.quick-menu-pc a:last-child {border-bottom: none;}
	.quick-menu-pc a:hover {background-color: #f5f5f5;}
	.quick-menu-mobile {display: none;}
}
/* 모바일 하단 퀵메뉴 */
@media screen and (max-width: 768px) {
	.quick-menu-mobile { position: fixed; bottom: 0; left: 0; width: 100%; background: #fff; border-top: 1px solid #ddd; display: flex; justify-content: space-around; align-items: center;
	height: 74px; box-shadow: 0 -1px 5px rgba(0,0,0,0.1); z-index: 999; }

	.quick-menu-mobile a { flex: 1; text-align: center; font-size: 14px; color: #333; text-decoration: none; padding: 10px 0;  display: flex; flex-direction: column; align-items: center; }

	.quick-menu-mobile a  img{width: 3em}
	.quick-menu-mobile a:hover {background: #f0f0f0;}
	.quick-menu-pc {display: none;}
}


.box .more {    position: absolute;    right: 0;    top: -10px;  display:flex; align-items: center;    justify-content: center;    gap: 12px;    width: 110px;    height: 36px;        font-size: 18px;    color: #393939;}

/* 전체메뉴 팝업 */
.modal {/*팝업 배경*/ display: none; /*평소에는 보이지 않도록*/ position: fixed; top:0; left: 0; width: 100%; height: 100vh; overflow: hidden; background: rgba(0,0,0,0.5); z-index: 99999999}
.modal .close_btn {position: absolute; right:20px; display: block; width: 40px; height:40px; line-height: 0; box-sizing: border-box; background-color: #111; font-size: 2em; font-weight: 200; border: none; border-radius: 5px; color: #fff; cursor: pointer; transition: box-shadow 0.2s;}
.modal .close_btn:after{content: "\00d7";}
.modal.on{display: block;}
.modal .gnb_allMenu_pop{ position: absolute; width: 80%; height:80%; top: 50%; left: 50%; transform: translate(-50%, -50%); padding: 20px; background: #ffffff; overflow: auto; }
.modal .gnb_allMenu_pop > .gnb{display: flex; flex-wrap: wrap; flex-direction: column; }
.modal .gnb_allMenu_pop > .gnb > .depth1{display: flex; border-bottom: 1px dashed #ddd; padding: 30px; width: 100%; box-sizing: border-box;}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .m_tit{font-size: 25px; font-weight: 800; width: 250px; max-height: 100px}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2{width: 100%; height: 100%;}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 > ul{display: flex; flex-wrap: wrap; }
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li{ width: 25%; margin-bottom: 20px}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li a{border-bottom: 0; position: relative;}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li a:before{content:"";position:absolute;left:0;right:0;bottom:-3px;width:0;height:2px;margin:0 auto;background:#df0f3e;transition:.3s all;}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li a:hover:before{width: 100%}
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li > .depth3 {background-color: #f7f7f7; width: auto; border-radius: 10px; padding: 10px ;width: 80%; margin-top: 10px; }
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li > .depth3 ul li{margin-bottom: 5px; width: 100%; }
.modal .gnb_allMenu_pop > .gnb > .depth1 > .depth2 ul li > .depth3 ul li a{font-size: 17px; color:#777; margin-left: 10px}





@media (min-width: 1930px) {

}

@media (max-width: 1320px) {
	.main_new .sec01{width:100%;}
	.main_new .sec02{width:100%;padding:0 30px}
	.main_new .sec03{width:100%;padding:0 30px}
	.main_new .sec04{width:100%;padding:0 30px}
	.main_new .sec02 .box, .main_new .sec03 .box, .main_new .sec04 .box{width: 100%}
}

@media (max-width: 1200px) {
	body{background:none}

	header h1 a{top:17px;background:url(/math/resources/images/m/logo.png) no-repeat 50% 50%;background-size:contain}
	.main_new .sec01{width: 100%; height: 410px;}

	/*.cate_tab.active {min-height: inherit;}*/

	.main_new .sec04 {margin-top:45px;padding-bottom:45px;background:#fff; }
	.main_new .sec04 .box{padding-top:0; width: 100%}
	.main_new .sec04 h2{font-size:21px;}
	.main_new .sec04 .txt{margin:12px 0 20px 0;line-height:16px;font-size:12px}
	.main_new .sec04 .dir_go{display:block}
	.main_new .sec04 .dir_go li{height:auto}
	.main_new .sec04 .dir_go li~li{margin:10px 0 0 0}
	.main_new .sec04 .dir_go a{box-shadow: 0 0 35px rgb(0 0 0 / 0%);border:1px solid #cacaca;border-radius:10px;}

  .main_new .sec03 .cate_wrap2{ border-radius: 15px; background: #f4f4f4; padding:20px; }
  .main_new .sec03 .cate_wrap2 .cate_top01{font-size: 2em; }
}


@media (max-width: 1023px) {

	.ing_prgram{display: flex; gap:30px; /*justify-content: space-between;*/ box-sizing: border-box; position: relative; }
	.ing_prgram .prev{transform: scale(0.9)}
	.ing_prgram .next{transform: scale(0.9) rotate(180deg)}

	.ing_prgram dl{border-radius: 15px; border:1px solid #ddd; width: calc(100% / 2 - 30px); }
	.ing_prgram dl:hover{box-shadow: 0 0 30px 0 rgba(80, 118, 80, 0.2); color:#00bcd4 }
	.ing_prgram dt.img{overflow: hidden; position: relative; border-radius: 15px 15px 0 0; height:215px;  text-align:center}
	.ing_prgram dt.img img{height:100%; width: inherit;}
	.ing_prgram dt.img img:hover{transform: scale(1.1); transition: 0.5s ease-in-out}
	.ing_prgram dt em{position: absolute; font-size: 0.9em; padding:5px 15px; border-radius: 15px 0; color: #fff; min-width: 75px; box-sizing: border-box; display: inline-block; text-align: center; z-index: 2 }
	.ing_prgram dt em.state01{background: #fc7979; }
	.ing_prgram dt em.state02{background: #63c4f6; }
	.ing_prgram dt em.state03{background: #43c6d2; }
	.ing_prgram dt em.state04{background: #43d279; }
	.ing_prgram dt em.state05{background: #de6aec; }
	.ing_prgram dd{padding:15px}
	.ing_prgram dd ul li{margin-bottom:10px}
	.ing_prgram dd ul li.category{color:#00bcd4}
	.ing_prgram dd ul li.p_name{font-size: 19px; font-weight: 600 }
	.ing_prgram dd ul li.floor{color:#666}

	.ing_prgram2{display: flex; gap:30px; /*justify-content: space-between;*/ box-sizing: border-box; position: relative; }
	.ing_prgram2 .prev{transform: scale(0.9)}
	.ing_prgram2 .next{transform: scale(0.9) rotate(180deg)}

	.ing_prgram2 dl{border-radius: 15px; border:1px solid #ddd; width: calc(100% / 2 - 30px); }
	.ing_prgram2 dl:hover{box-shadow: 0 0 30px 0 rgba(80, 118, 80, 0.2); color:#00bcd4 }
	.ing_prgram2 dt.img{overflow: hidden; position: relative; border-radius: 15px 15px 0 0; height:215px; text-align:center; }
	.ing_prgram2 dt.img img{height:100%;  max-width:inherit;}
	.ing_prgram2 dt.img img:hover{transform: scale(1.1); transition: 0.5s ease-in-out}
	.ing_prgram2 dt em{position: absolute; font-size: 0.9em; padding:5px 15px; border-radius: 15px 0; color: #fff; min-width: 75px; box-sizing: border-box; display: inline-block; text-align: center; z-index: 2 }
	.ing_prgram2 dt em.state01{background: #fc7979; }
	.ing_prgram2 dt em.state02{background: #63c4f6; }
	.ing_prgram2 dt em.state03{background: #43c6d2; }
	.ing_prgram2 dt em.state04{background: #43d279; }
	.ing_prgram2 dt em.state05{background: #de6aec; }
	.ing_prgram2 dd{padding:15px}
	.ing_prgram2 dd ul li{margin-bottom:10px}
	.ing_prgram2 dd ul li.category{color:#00bcd4}
	.ing_prgram2 dd ul li.p_name{font-size: 19px; font-weight: 600 }
	.ing_prgram2 dd ul li.floor{color:#666}


	.main_new .sec03{margin-top:30px;padding-bottom:30px;}
	.main_new .sec03 h2{font-size:21px;}

	.main_new .sec04{margin-top:45px;padding-bottom:45px;background:#fff}
	.main_new .sec04 .box{padding-top:0;}
	.main_new .sec04 h2{font-size:21px;}
	.main_new .sec04 .txt{margin:12px 0 20px 0;line-height:16px;font-size:12px}
	.main_new .sec04 .dir_go{display:block}
	.main_new .sec04 .dir_go li{height:auto}
	.main_new .sec04 .dir_go li~li{margin:10px 0 0 0}
	.main_new .sec04 .dir_go a{box-shadow: 0 0 35px rgb(0 0 0 / 0%);border:1px solid #cacaca;border-radius:10px;padding:22px 0 19px;font-size:17px}

	.main_new .sec04 .dir_go a div:before{position:absolute;top:0;bottom:0;left:0;display:inline-block;width:70px;height:70px;margin:auto 0;background-size:contain ! important}
	.main_new .sec04 .dir_go div{position:relative;display:inline-block;width:230px;padding-left:75px;text-align:left;box-sizing:border-box;}
	.main_new .sec04 .dir_go span{margin-top:3px;font-size:10px}
	.main_new .sec04 .dir_go span br{display:none}


}

@media (max-width: 768px) {
	.main_new h2 { margin: 30px 0;}
	.main_new .sec02 .box, .main_new .sec03 .box, .main_new .sec04 .box{margin:0 auto; }
	/*main*/
	.ing_prgram_wrap{width: 100%; overflow-y: auto; }
	.ing_prgram_wrap .ing_prgram{/*width: 280px !important;*/ display: flex; justify-content: flex-start;flex-direction:row; height: auto !important; gap: 20px;}
	.ing_prgram dl {width:200px;}
	.ing_prgram dt.img {height: 160px !important;}
	.ing_prgram dd ul li.p_name {font-size: 1.2em !important;}

	.ing_prgram_wrap2{width: 100%; overflow-y: auto; }
	.ing_prgram_wrap2 .ing_prgram{width: 860px !important; display: flex; justify-content: flex-start;flex-direction:row; height: auto !important; gap: 20px;}
	.ing_prgram2 dl {width:200px;}
	.ing_prgram2 dt.img {height: 160px !important;}
	.ing_prgram2 dd ul li.p_name {font-size: 1.2em !important;}

	/*서브*/
	.ing_prgram{/*height: auto; display: block;  display: flex !important;*/
		flex-direction: column;
		flex-wrap: nowrap;
		width: 100% !important;
		/*height: 450px !important;*/
	overflow-y: auto; }
	.ing_prgram .prev{transform: scale(0.8)}
	.ing_prgram .next{transform: scale(0.8) rotate(180deg)}
	.ing_prgram .prev{left: -30px}
	.ing_prgram .next{right: -30px}
	.ing_prgram dl{width: 100%; }

	.ing_prgram2{/*height: auto; display: block; */ display: flex !important;
		flex-direction: column;
		flex-wrap: nowrap;
		width: 100% !important;
		/*   height: 450px !important;*/
	overflow-y: auto; }
	.ing_prgram2 .prev{transform: scale(0.8)}
	.ing_prgram2 .next{transform: scale(0.8) rotate(180deg)}
	.ing_prgram2 .prev{left: -30px}
	.ing_prgram2 .next{right: -30px}
	.ing_prgram2 dl{width: 100%; }

	/*.ing_prgram dl:nth-child(2),.ing_prgram dl:nth-child(3),.ing_prgram dl:nth-child(4){display: none}*/

	.main_new .sec03 .exh_box{display: block}
	.main_new .sec03 .calendar{border-radius: 15px}
	.main_new .sec03 .calendar table tbody td a.today { width: 45px; height: 45px; padding-top: 6px; line-height: 1;}

	.main_new .sec03 .cate_wrap2{ border-radius: 15px; background: #f4f4f4;padding:20px 10px; margin-top: 20px; }
	.main_new .sec03 .cate_wrap2 .cate_top01{ padding: 0; font-size: 1.5em; position: relative; margin-left: 30px; padding-left: 40px; margin-bottom: 20px; }
	.main_new .sec03 .cate_wrap2 .cate_top01:before{content:''; position: absolute; top: center; left: 0;  width: 25px; height: 25px; background: url(/math/resources/images/main/icon_calendar.svg) 0 0 no-repeat; }
  .main_new .sec03 .cate_wrap2 .cate_m{padding:10px;}
	.main_new .sec03 .cate_wrap2 .cate_m > div { border: 1px dashed #ccc; border-radius: 15px; overflow: hidden; margin-top: 10px }
	.main_new .sec03 .cate_wrap2 .cate_m span { font-size: 1em; height: 60px; line-height: 60px;  }

	.main_new .sec04{margin-top:0;padding-bottom:30px;}
	
	.main_new .sec03 .calendar .divi {width:100%}

	/*swiper*/
	.popup-box { display: inherit; width:100%; height: auto;}
	.popup-cont { display: inherit; margin-top:30%}
	
	

    .event_list .e_cont .e_dt dl dt {width: 2em;    }
    .e_cont .e_tit {    max-height: 80px !important; width:100% !important; word-break: break-all;}


}
@media (max-width: 500px) {
	.cate_tab {
		font-size: inherit;
	}
}

@media (max-width: 330px) {
	.main_new .sec02,.main_new .sec03,.main_new .sec04{padding:0 10px}
	.ing_prgram .prev{left: -10px}
	.ing_prgram .next{right: -10px}

	.ing_prgram2 .prev{left: -10px}
	.ing_prgram2 .next{right: -10px}
}


.submain{padding-top:0px;}

.main_new .subnav05 {
	overflow: hidden;
	width: 100%;
	height: 280px;
	background-size: cover;
	margin-top: 130px;
}
/*
.sub_visual {
position: relative;
width: 100%;
height: 280px;
background: #fff;
overflow: hidden;
background-size: cover;
background-position: center top;
margin-top: 110px;
}

.sub_visual .tit {
position: relative;
padding-top: 120px;
text-align: center;
letter-spacing: -1px;
transition: all 0.4s;
overflow: hidden;
z-index: 1;
margin-bottom: 0 !important;
padding-bottom: 10px;
text-shadow: 1px 1px 7px white, 0 0 20px white, 0 0 5px white;
}
*/
.inner_box {width:100%;  background: #fff; box-sizing: border-box;}
.inner_box .question { display: flex; justify-content: space-between; align-items: center; position: relative; padding: 30px; background: #fff; font-size: 1em; font-weight: bold; color: #333; cursor: pointer; transition: background 0.3s; border-bottom: 1px solid #ddd; }
.inner_box  p{padding-left:100px;}
.inner_box  em{width:150px; position: relative; display: block; color: #fff; text-align: center}
.inner_box .question.active em:after{content: 'Q'; position: absolute; width: 42px; height:42px; line-height: 42px; text-align: center; border-radius: 33px; background-color:#3f51b5 ; top: 50%; left:-50%; transform: translateY(-20%); }
.inner_box .question em:after{content: 'Q'; position: absolute; width: 42px; height:42px;line-height: 42px; border-radius: 33px; background-color:#999 ; top: 50%; left:-50%;transform: translateY(-20%);  }
.inner_box .answer em:after{content: 'A'; position: absolute; width: 42px; height:42px;line-height: 42px; border-radius: 33px; background-color:green ; top: 50%; left:-50%; transform: translateY(-20%); }
.inner_box .question:hover {background: #f0f0f0;}
.inner_box .question i {transition: transform 0.4s;}
.inner_box .question.active i {transform: rotate(180deg);}
.inner_box .answer { display: none; padding: 30px; border-bottom: 1px solid #ddd; background: #fafafa; font-size: 1em; line-height: 1.6; color: #717171; letter-spacing: normal; }

.visual {   background-image: url(/math/resources/images/sub/sub_visual06.png);}
.visual01 {   background-image: url(/math/resources/images/sub/sub_visual01.png);}
.visual02 {   background-image: url(/math/resources/images/sub/sub_visual02.png);}
.visual03 {   background-image: url(/math/resources/images/sub/sub_visual03.png);}
.visual04 {   background-image: url(/math/resources/images/sub/sub_visual04.png);}
.visual05 {   background-image: url(/math/resources/images/sub/sub_visual05.png);}


@media (max-width: 768px) {
	.inner_box .question, .inner_box .answer{padding:15px}
	.inner_box p{padding-left:50px;}
	.inner_box em{width:100px; }

	.visual01 {   background-image: url(/math/resources/images/sub/sub_visual01_m.png);}
	.visual02 {   background-image: url(/math/resources/images/sub/sub_visual02_m.png);}
	.visual03 {   background-image: url(/math/resources/images/sub/sub_visual03_m.png);}
	.visual04 {   background-image: url(/math/resources/images/sub/sub_visual04_m.png);}
	.visual05 {   background-image: url(/math/resources/images/sub/sub_visual05_m.png);}
      .sub_visual {background-position:center top;}
}

@media (max-width: 1200px) {
	.main_new .subnav05 {
		overflow: hidden;
		width: 100%;
		height:180px;
		background-size: cover;
		margin-top:0px;
	}
}
@media (max-width: 768px) {
	.main_new .subnav05 {
		overflow: hidden;
		width: 100%;
		background-size: cover;
		margin-top:0px;
	}

	.intro_text{margin: 0 auto;    width: 100% !important;}
}
@media (max-width: 330px) {
	.main_new .subnav05 {
		overflow: hidden;
		width: 100%;
		background-size: cover;
		margin-top:0px;
	}
}

.intro_text{margin: 0 auto;    width: 700px;}

body *{box-sizing:border-box;}
.lnb.subOn { position: relative;}

@media (max-width: 1024px) {
	.ing_prgram{height: auto; width:1300px }
	.ing_prgram .prev{transform: scale(0.8)}
	.ing_prgram .next{transform: scale(0.8) rotate(180deg)}
	.ing_prgram .prev{left: -30px}
	.ing_prgram .next{right: -30px}
	.ing_prgram dl{width: 100%; }


	.ing_prgram2{height: auto; width:1300px }
	.ing_prgram2 .prev{transform: scale(0.8)}
	.ing_prgram2 .next{transform: scale(0.8) rotate(180deg)}
	.ing_prgram2 .prev{left: -30px}
	.ing_prgram2 .next{right: -30px}
	.ing_prgram2 dl{width: auto; }

	/*.ing_prgram dl:nth-child(2),.ing_prgram dl:nth-child(3),.ing_prgram dl:nth-child(4){display: none}*/

}

/*서브비주얼*/
.sub_visual.visual_new{background: url(/math/resources/images/sub/sub_visual.png); }


/*층별안내*/
.floorinfo_tab{display: flex; justify-content:space-between; border:1px solid #ddd; border-radius: 2em; height: 78px; }
.floorinfo_tab li{width: 20%; display: flex ; align-items: center; flex-direction: column; justify-content: center; color: #43c6d2; font-size: 1.2em }
.floorinfo_tab li a:hover{ transition: 0.3s ease-in-out; cursor: pointer; font-size: 1.4em; color:#43c6d2}
.floorinfo_tab li.on{background-color: #43c6d2; color:#fff !important; border-radius: 2em; font-size: 1.5em; font-weight: 600; text-shadow: 2px 2px 15px rgba(0,0,0,0.3);}
.floorinfo_tab li.on a{color:#fff !important;}

.floorinfo > .floor_menu{display: flex; /*justify-content: center; */margin-top: 90px; max-width: 70%; margin: 90px auto 50px; }
.floorinfo > .floor_menu > .floor_present {font-size:3em; color:#43c6d2; }
.floorinfo > .floor_menu > .floor_present span{font-size: 2em; font-weight: 800;}
.floorinfo > .floor_menu > .floor_present_detail { display:flex; flex-direction: column; margin-left: 50px }
.floorinfo > .floor_menu > .floor_present_detail dl{display: flex; }
.floorinfo > .floor_menu > .floor_present_detail dl dt{font-weight: 600; margin-right: 20px; width:200px; display: inline-block;}
.floorinfo > .floor_menu > .floor_present_detail dl dd{width: calc(100% - 200px)}
.floorinfo > .floor_menu > .floor_present_detail dl dd a { display: inline-flex; height: 30px}
.floorinfo > .floor_menu > .floor_present_detail dl dd a:hover{border-bottom:1px solid #df0f3e; }
.floorinfo > .floor_menu > .floor_present_detail dl dd span{width: 20px; display: inline-block; text-align: center; color: #999}
.floorinfo > .floor_menu > .floor_present_detail dl dd a:last-child:after{content:none; }
.hall_pic{ display: block; width: 100%; max-height: 500px; text-align: center; margin: 30px auto 68px;}

@media (max-width: 768px) {
	/* 층별안내*/
	.floorinfo_tab{display: flex; justify-content:space-between; border:1px solid #ddd; border-radius: 2em; height: 50px; }
	.floorinfo > .floor_menu{max-width: 100%; margin: 0 auto; padding:20px}
	.floorinfo > .floor_menu > .floor_present {display: none; }
	.floorinfo > .floor_menu > .floor_present_detail{margin:0}
	.floorinfo > .floor_menu > .floor_present_detail dl dt{width: 30%}
	.floorinfo > .floor_menu > .floor_present_detail dl dd{width: 70%}
	.hall_pic{margin:0 auto 30px; }
      
   /*예약*/
    .event_box .e_cont  {padding: 1.5em !important;        margin: 0 !important;    }
    .event_box .e_cont dl {font-size:1em !important;}
    .event_box .e_cont dl dt {        width: 4em;    }
   

}


/*lnb*/
.lnb {height: 66px;border-bottom: 1px solid #ddd;box-sizing: border-box;background: #60caea;position: relative;z-index: 99;/*21.02.02 khjzindex수정*/margin: 0 auto;font-size: 17px;}
.lnb.subOn { position: relative; top: 0; left: 0; width: 100%; z-index: 999; }
.lnb .lnb_inner { /*width: 1300px;*/ margin: 0 auto; position: relative; }
.lnb .menu li {float: left;border-right: 1px solid #fff;width: 250px;cursor: pointer;height: 65px; /* 20.12.28 khj높이추가 */}
.lnb .menu li:last-child{/*width:auto;*/}
.lnb .menu>li>a { display: block; line-height: 65px; color: #fff; font-weight: 600; padding-left: 20px;font-size: 20px;/*20.09.14 khj수정 */ }
.lnb .menu li.home,.lnb .menu li.share,.lnb .menu li.print { width: 69px; height: 65px; }
.lnb.fix .menu>li.home>a { border-left: 1px solid #ddd; }

.lnb .menu .nav_list { /*padding-left: 20px;*/ position: relative; box-sizing: border-box; text-align: left; }

.lnb .menu .nav_list.on::after { transform: rotate(180deg);}
.lnb .menu .nav_list .list { width: 100%; text-indent: 20px; border: 1px solid #ddd; border-top: none; position: absolute; left: -1px; background: #fff; z-index: 1; display: none; /* 20.12.28 khj top추가 */top: 65px;}
.lnb .menu>.nav_list .list>li { width: 100%; }
.lnb .menu>.nav_list .list>li:first-child a { border-top: 1px solid #ddd; }

.lnb .menu>.nav_list .list>li a { display: block; line-height: 65px; transition: all 0.3s; font-weight: 700; transition: all 0.3s; }
.lnb .menu>.nav_list .list>li:hover a{ color: #013668; text-decoration: underline; }
.lnb .menu>.nav_list .list>li a.current,.menu>.nav_list .list>li a:focus { color: #fff; background: #60caea; }
.lnb .menu>.nav_list .list>li:hover a.current { color: #fff;  background: #0e95a2; }

.lnb .menu>li.home>a { display: block; background: url(../images/sub/ico_home.png) no-repeat center; text-indent: -9999px; border-left: 1px solid #fff; }

.lnb .l_side { position: absolute; right: 0; top: 0; box-sizing: border-box; }
.lnb .l_side > a {display: inline-block;width: 69px;height: 65px;border-left: 1px solid #fff;}
.lnb .print { display: block; background: url(../images/sub/ico_print.png) no-repeat center; text-indent: -9999px; line-height: 65px; border-right: 1px solid #fff;}


/*체험전시관*/

.exh_hall {display:flex; background-color: #43c6d2;width: 100%;height: 480px;border-radius: 30px;margin-bottom: 50px;overflow: hidden}
.hall_map{background: url(/math/resources/images/sub/exh_ex.png) ; width: 60%; background-size: cover; }
.hall_info{width: 40%; padding:50px 30px}
.floor_tab{display: flex; justify-content: space-around}
.floor_tab li{border-radius: 2em; background: #fff; padding:10px 15px; width: calc(20% - 10px); text-align: center; }
.floor_tab li:hover{background: #f4f4f4; transition: 0.3s ease-in-out; cursor: pointer; font-size: 1.2em}
.floor_tab li.on{background-color: #ffe109; font-weight: 700}
.floor_step{font-size: 2em; color:#fff; margin:70px 20px 20px; display: inline-block; width: auto; }
.floor_step em{font-size: 2em; font-weight: 600; }
.floor_step span{border-bottom: 1px solid #fff; text-shadow: 2px 2px 15px rgba(0,0,0,0.3); }
.floor_exp{padding:0 20px}
.floor_exp dt{font-size: 1.9em; font-weight: 600; line-height: 2.5em}

.exh_hall.floor-1f{background-color:#f9d7d7 !important;}
.exh_hall.floor-2f{background-color:#f9e39d !important;}
.exh_hall.floor-3f{background-color:#bcdee2 !important;}
.exh_hall.floor-outside{background-color:#d2d4eb !important;}


.mainPopupMaxWidth2 {
	max-width: 860px;
}

@media (max-width: 1024px) {
	/*
	.main_new h2 { margin: 30px 0;}
	.main_new .sec02 .box, .main_new .sec03 .box, .main_new .sec04 .box{margin:0 auto; }
	.ing_prgram{height: auto; display: block; }
	.ing_prgram .prev{transform: scale(0.8)}
	.ing_prgram .next{transform: scale(0.8) rotate(180deg)}
	.ing_prgram .prev{left: -30px}
	.ing_prgram .next{right: -30px}
	.ing_prgram dl{width: 100%; }
	//.ing_prgram dl:nth-child(2),.ing_prgram dl:nth-child(3),.ing_prgram dl:nth-child(4){display: none}
	*/
	.exh_hall {display: flex; align-items: center; flex-wrap: nowrap; justify-content: center; flex-direction: column; height:
	auto;}
	.hall_map{width: 100%; min-height: 310px}
	.hall_info{width: 100%; padding: 30px}
	.floor_step{font-size: 1.8em; margin-top:50px}

}
@media (max-width: 1024px) {
	.floor_step{font-size: 1.5em; margin-top:30px}
	.floor_step{font-size: 1.5em; margin-top:30px; }
	.floor_exp dt{font-size: 1.3em; line-height: 1.5em}
}
@media (max-width: 360px) {
	.hall_map{width: 100%; min-height: 200px}
	.hall_info{width: 100%; padding: 15px}
	.floor_tab li{border-radius: 2em; padding:5px}
	.floor_step{font-size: 1.5em; margin-top:30px; padding: 0}
	.floor_exp dt{font-size: 1.3em; line-height: 1.5em}

}

/*예약*/
.e_img {    overflow: hidden;    border-radius: 5px;    width: 300px;    object-fit: cover;    text-align: center;}
.e_img img {width:auto !important;}
.e_cont .e_tit {font-size: 28px;    font-weight: 700;    line-height: 30px;    display: -webkit-box;    -webkit-box-orient: vertical;    overflow: hidden;    text-overflow: ellipsis;    -webkit-line-clamp: 1 !important;    width: calc(100% - 190px);}

/* 개인예약*/
.edu_list > li > .e_img {       overflow: hidden;        width: 300px;    object-fit: cover;    text-align: center;    padding: 20px 0 20px 20px;    vertical-align: middle !important;}
.edu_list > li > .e_img img{border-radius: 10px;}
@media (max-width: 768px) {
 .edu_list > li > .e_img {   margin: 0 auto;}
}


.calendar table tbody td a.today {line-height:38px !important;}