
div.dim {display:none;}
div.dim.on {position:fixed; display:block; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.7);}
/* 메인 배너 */
main {box-sizing:border-box; width:100%;}
main > div.visual {position:relative; visibility:visible; height:400px;}
main > div.visual ul.visual_list {position:relative; width:100%; opacity:0;}
main > div.visual ul.visual_list.slick-initialized {visibility:visible; opacity:1;}
main > div.visual ul.visual_list li.item {box-sizing:border-box; height:400px;}
main > div.visual ul.visual_list li.item div.container-fluid {height:100%; }
/*main > div.visual ul.visual_list li.item a.visual_inner {box-sizing:border-box; display:block; width: 100%; height: 100%;  background: url(../images/index_banner.png) no-repeat center; background-size:cover;}*/
main > div.visual ul.visual_list li.item a.visual_inner {box-sizing:border-box; display:block; width:100%; height:100%;  background:no-repeat center; background-size:cover;}
main > div.visual ul.visual_list li.item strong.title {display:block; margin-bottom:30px; color:#fff; font-size:38px; font-weight:700; line-height:45px; word-break:keep-all; }
main > div.visual ul.visual_list li.item p { color:rgba(255,255,255,0.8); font-size:18px; word-break:keep-all; }
main > div.visual div.visual_indicator {position:absolute; left:0; bottom:40px; width:100%; text-align:right; font-size:0;}
main > div.visual div.visual_indicator div.wrap_dots {float:left;}
main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots:after {content:''; display:block; clear:both; }
main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots {font-size:0; list-style:none; vertical-align:middle;}
main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {display:inline-block; margin-right:10px; vertical-align:bottom; line-height:58px; font-size:0; }
main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li > button {width:10px; height:10px; padding:0; background:rgba(255,255,255,0.6); border-radius:50%; cursor:pointer; transition:all 0.3s; transform:rotate(0.001deg); font-size:0; }
main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li.slick-active > button {width:40px; background:#fff; border-color:#fff; border-radius:10px;}
main > div.visual div.visual_indicator div.box_btn button {height:100%; padding:20px; background:rgba(255,255,255,0.9); color:rgba(0,0,0,0.6); font-size:16px; }
main > div.visual div.visual_indicator div.box_btn button.visual_prev {border-top-left-radius:5px; border-bottom-left-radius:5px;}
main > div.visual div.visual_indicator div.box_btn button.visual_next {border-top-right-radius:5px; border-bottom-right-radius:5px;}

/* 2023.01.06 메인배너 반응형 처리 { */
@media screen and (max-width:1100px) {
	main > div.visual div.visual_indicator {bottom:30px;}
	/* main > div.visual {height:380px;}
	main > div.visual ul.visual_list li.item {height:380px;}
	main > div.visual div.visual_indicator {bottom:30px;} */
}

@media screen and (max-width:985px) {
	main > div.visual {height:360px;}
	main > div.visual ul.visual_list li.item {height:360px;}
	main > div.visual div.visual_indicator {bottom:10px;}
	main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {line-height:60px;}
	main > div.visual div.visual_indicator div.box_btn button {padding:16px;}
}

@media screen and (max-width:920px) {
	main > div.visual {height:340px;}
	main > div.visual ul.visual_list li.item {height:340px;}
}

@media screen and (max-width:875px) {
	main > div.visual {height:320px;}
	main > div.visual ul.visual_list li.item {height:320px;}
}

@media screen and (max-width:768px) {
	main > div.visual {height:310px;}
	main > div.visual ul.visual_list li.item {height:310px;}
	main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {line-height:58px;}
}

@media screen and (max-width:700px) {
	main > div.visual {height:300px;}
	main > div.visual ul.visual_list li.item {height:300px;}
}

@media screen and (max-width:670px) {
	main > div.visual {height:260px;}
	main > div.visual ul.visual_list li.item {height:260px;}
}

@media screen and (max-width:580px) {
	main > div.visual div.visual_indicator {bottom:10px;}
	main > div.visual div.visual_indicator div.container {padding:0 10px 0 25px;}
	main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {line-height:38px;}
	main > div.visual div.visual_indicator div.box_btn button {padding:10px;}
}

@media screen and (max-width:500px) {
	main > div.visual {height:240px;}
	main > div.visual ul.visual_list li.item {height:240px;}
}

/* 23.04.12 oz15 스타일 추가 { */
@media screen and (max-width:450px) {
	main > div.visual {height:200px;}
	main > div.visual ul.visual_list li.item {height:200px;}
}
/* } 23.04.12 oz15 스타일 추가 */

@media screen and (max-width:425px) {
	main > div.visual ul.visual_list li.item {height:200px;}
	main > div.visual ul.visual_list li.item:nth-of-type(2n+1) a.visual_inner {background-image:url(../image/index_banner_425.png);}
	main > div.visual ul.visual_list li.item:nth-of-type(2n) a.visual_inner {background-image:url(../image/index_banner2_425.png);}
}
/* } 2023.01.06 메인배너 반응형 처리 */

@media screen and (max-width:390px) {
	main > div.visual ul.visual_list li.item {height:200px;}
	main > div.visual div.visual_indicator div.box_btn button {padding:7px; font-size:14px;}
	main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {line-height:30px;}
	main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li > button {width:7px; height:7px;}
}

@media screen and (max-width:320px) {
	main > div.visual {height:180px;}
	main > div.visual ul.visual_list li.item {height:180px;}
	main > div.visual div.visual_indicator div.box_btn button {padding:5px;}
}

@media screen and (max-width:300px) {
	main > div.visual {height:170px;}
	main > div.visual ul.visual_list li.item {height:170px;}
}

/* 공지 슬라이드 */
main > div.notice_roll {box-sizing:border-box; height:70px; background:#fff; border-bottom:1px solid #e5e5e5; overflow:hidden;}
main > div.notice_roll .container-fluid {height:100%; font-size:0; }
main > div.notice_roll .container {display:flex;}
main > div.notice_roll h4.title {box-sizing:border-box; position:relative; display:inline-block; width:100px; height:100%; padding-left:40px; background:url(../image/ico_rolling_banner.png)no-repeat left center ; font-size:18px; color:#000; vertical-align:middle; line-height:70px; font-weight:bold;}
/* main > div.notice_roll h4.title:after {content:''; position:absolute; right:0; top:50%; transform:translateY(-50%); width:1px; height:18px; background:#e5e5e5; display:inline-block; } */
main > div.notice_roll ul.notice_list {box-sizing:border-box; display:inline-block; width:-webkit-calc(100% - 146px); width:calc(100% - 146px);  overflow:hidden; vertical-align:middle; overflow:hidden; }
main > div.notice_roll ul.notice_list li {box-sizing:border-box; height:70px; vertical-align:middle; }
main > div.notice_roll ul.notice_list li a {box-sizing:border-box; display:block; width:100%; height:100%; padding-left:20px; padding-right:40px; line-height:70px; font-size:0; }
main > div.notice_roll ul.notice_list li a > strong {display:inline-block; width:-webkit-calc(100% - 80px); width:calc(100% - 80px); font-size:16px; color:#000; font-weight:500; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; vertical-align:middle;}
main > div.notice_roll ul.notice_list li a > span {display:inline-block; width:80px; font-size:16px; color:#808080; vertical-align:middle; }

main > div.notice_roll div.box_btn {box-sizing:border-box; display:inline-block; width:37px; border-left:1px solid #e5e5e5; border-right:1px solid #e5e5e5; vertical-align:middle; }
main > div.notice_roll div.box_btn button {box-sizing:border-box; width:100%; height:35px; line-height:35px; text-align:center;}
main > div.notice_roll div.box_btn button ~ button {border-top:1px solid #e5e5e5;}

/* 검색 박스 */
main > div.box_search { padding:40px 0; background:#fff; }
main > div.box_search div.search {box-sizing:border-box; display:-ms-flexbox; display:-moz-box; display:-webkit-box; display:flex; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap:wrap; -webkit-flex-wrap:wrap; justify-content:space-between; align-items:center; padding:40px 40px 40px 20px; border-radius:10px; overflow:hidden; background:url(../image/search_bg01.png)no-repeat 14% center #0036ce;}
main > div.box_search div.search h3 {flex-grow:1; color:#fff; font-size:30px; font-weight:700; text-align:center;}
main > div.box_search div.search > div {flex-grow:3; }
main > div.box_search div.search div.search_form {position:relative; width:100%; height:50px; line-height:50px; font-size:0; }
main > div.box_search div.search div.search_form input {box-sizing:border-box; width:calc(100% - 50px); height:50px; padding-left:15px; background:#fff; line-height:50px; font-size:16px; font-size:14px; vertical-align:middle; border:none; border-radius:0; }
main > div.box_search div.search div.search_form input::placeholder {font-size:16px; color:#808080;}
main > div.box_search div.search div.search_form button.btn_search {width:50px; height:50px; background:#00A85D; text-align:center; color:#fff; font-size:20px; vertical-align:middle; }
main > div.box_search div.search div ul.tag_list:after {content:''; display:block; clear:both;}
main > div.box_search div.search div ul.tag_list li {float:left; margin:20px 30px 0 0; }
main > div.box_search div.search div ul.tag_list li a {display:block; width:100%; height:100%; color:#fff; font-size:14px;}

/* intro */
main > div.intro {padding:50px 0; background:#e8f3fc; }
main > div.intro strong.title {display:block; font-size:24px; line-height:1.5; text-align:center; word-break:keep-all; color:#0b0c16; font-weight:500;}
main > div.intro strong.title > span.blue {font-size:24px; color:#002479; font-weight:600;}
main > div.intro div.list {margin-top:25px;  display:-ms-flexbox; display:-moz-box; display:-webkit-box; display:flex; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap:wrap; -webkit-flex-wrap:wrap; justify-content:flex-start;}
main > div.intro div.list a.item { display:inline-block; width:calc(25% - 18px); height:65px; margin-right:24px; margin-top:15px; background-color:#fff; background-repeat:no-repeat; background-position:center;}
main > div.intro div.list a.item:nth-child(4n) {margin-right:0; }
/* main > div.intro div.list a.item:nth-child(n+5) { margin-right:15px; } */

/* 강좌 program */
main > div.box_program {background:#fff;}
main > div.box_program div.wrap_program.line {padding-bottom:50px; border-bottom:1px solid #f0f0f0;}
main > div.box_program div.wrap_program h3.program_tit {padding:50px 0 20px 0; font-size:24px; line-height:28px; font-weight:700; word-break:keep-all; }
main > div.box_program div.wrap_program h3.program_tit strong {font-weight:bold; }
main > div.box_program div.wrap_program div.program {position:relative;}

/* 프로그램 paging 스타일 */
div.program div.paging-container {display:none;}

/* 공통스타일로 빼기 */
main > div.box_program div.wrap_program div.program ul.card_list {box-sizing:border-box; margin-left:-12px; margin-right:-12px;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item {box-sizing:border-box;position:relative;width:260px;height:320px;margin:0 12px;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a {box-sizing:border-box; position:relative; width:100%; height:100%; display:block; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img {box-sizing:border-box; position:relative; width:100%; height:160px; padding-top:14px; padding-left:14px;background-repeat:no-repeat; background-position:center; background-size:cover; overflow:hidden; background-size:100% 100%;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img span.ico_year { position:absolute; display:inline-block; right:-45px; bottom:-45px; width:94px; height:94px; background-color:#0036ce; transform:rotate(45deg);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img span.ico_year i { position:absolute; display:inline-block; width:33px; height:32px; left:0; top:30%; background:url(../image/program_ico_year.png) no-repeat center; transform:rotate(-45deg); z-index:2;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.class {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.class.prev {background:rgba(0,182,98,0.9);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.class.ing {background:rgba(8,119,240,0.9);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.class.end {background:rgba(126,129,140,0.9);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.class.audit {background:rgba(140,42,108,0.9);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_img small.certificate {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; padding-left:15px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px; background:url(../image/program_ico_certificate.png)no-repeat 5px center rgba(69,69,76,0.9);}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content {box-sizing:border-box; height:160px; padding-top:15px; }
/* 23.06.30 스타일 추가 { */
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content strong.title {display:block; display:-webkit-box; width:100%; height:40px; margin-bottom:13px; font-size:16px; color:#000; line-height:1.3; font-weight:700; text-overflow:ellipsis; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; vertical-align:middle;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content p.name { margin-bottom:7px; min-height:14px; font-size:14px; line-height:14px; font-weight:bold; color:#555;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content p.institution {margin-bottom:9px; min-height:14px; font-size:14px; line-height:14px; color:#808080; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content div.date { margin-bottom:20px; line-height:20px; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content p.institution + div.date { margin-bottom:6px;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content div.date i.dday {display:inline-block; box-sizing:border-box; height:20px; margin-right:9px; padding:0 5px; color:#ee137b; font-size:12px; line-height:15px; font-weight:700; font-style:normal; border-radius:2px; vertical-align:top; border:1px solid #ee137b; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content div.date span {color:#808080; font-size:14px; vertical-align:top;}
/* } 23.06.30 스타일 추가 */
/* 23.01.05 태그스타일 수정 { */
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content div.tag_wrap {display: flex; flex-wrap: wrap; gap: 4px; height:22px; width:100%; overflow:hidden;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_content div.tag_wrap span.tag {display:inline-block; padding:5px 8px; background:#f2f2f2; border-radius:2px; color:#808080; font-size:12px; }
/* } 23.01.05 태그스타일 수정 */

main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover {display:none; box-sizing:border-box; position:absolute; left:0; top:0; width:100%; height:100%; padding:20px 20px; background:rgba(0,0,0,0.8); color:#fff; z-index:2;  box-shadow:3px 15px 20px 0px #8080804d; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li {width:100%; display:table; padding-bottom:30px; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li span.icon {display:table-cell; width:40px;vertical-align:top; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li span.icon i.icon {display:block; width:40px; height:40px; background:url(../image/program_ico_operate_01.png)no-repeat center #00A85D; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li.week span.icon i.icon {background-image:url(../image/program_ico_operate_02.png); }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li.time span.icon i.icon {background-image:url(../image/program_ico_operate_03.png); }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li p {display:table-cell; padding-left:10px; vertical-align:top; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li p span.info {display:block; padding-bottom:10px; font-size:12px; color:rgba(255,255,255,0.6); }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li p strong {display:block; font-size:16px; font-weight:700; color:#fff; line-height:20px; word-break:keep-all; }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item > a > div.card_cover ul.info > li p strong > span {display:block; font-size:16px; font-weight:normal; color:#fff; word-break:keep-all; }

main > div.box_program div.wrap_program div.program ul.card_list li.card_item button.favorite {position:absolute; top:10px; right:12px; width:33px; height:33px; line-height:33px; font-size:22px; color:#fff; text-align:center; border-radius:50%; background:rgba(0,0,0,0.2); }
main > div.box_program div.wrap_program div.program ul.card_list li.card_item button.favorite > i {display:block; width:33px; height:33px; line-height:33px; text-align:center;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item button.favorite > i:before {display:block; width:33px; height:33px; line-height:36px; text-align:center;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item button.favorite.favorite_select {color:#ee137b;}
main > div.box_program div.wrap_program div.program ul.card_list li.card_item button.favorite.favorite_select > i:before {content:"\ea10";}
main > div.box_program div.wrap_program div.program button.program_prev {position:absolute; left:-20px; top:100px; transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; z-index: 1;}
main > div.box_program div.wrap_program div.program button.program_next {position:absolute; right:-20px; top:100px; transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; }

/* 테마 */
main > div.thema {padding:50px 0; background:#fff; border-bottom:1px solid #f0f0f0;}
main > div.thema ul.thema_list { font-size:0;display: flex;}
/* 23.05.02 oz10 스타일 수정 { */
main > div.thema ul.thema_list li {box-sizing:border-box; display:inline-block; width:108px; max-width:108px; height:124px; background:url(../image/thema_ico_engineering.png)no-repeat right 20px bottom 20px; border-radius:5px; background-repeat:no-repeat; }
main > div.thema ul.thema_list li+li {margin-left:16px;}
main > div.thema ul.thema_list li.liberal {background-image:url(../image/thema_liberal.png); background-color:#A31BB3;}
main > div.thema ul.thema_list li.social {background-image:url(../image/thema_social.png); background-color:#731BB3;}
main > div.thema ul.thema_list li.education {background-image:url(../image/thema_ico_education.png); background-color:#0A8A0A;}
main > div.thema ul.thema_list li.physical {background-image:url(../image/thema_ico_physical.png); background-color:#008559;}
main > div.thema ul.thema_list li.engineering {background-image:url(../image/thema_ico_engineering.png); background-color:#007E97;}
main > div.thema ul.thema_list li.medical {background-image:url(../image/thema_ico_medical.png); background-color:#305ABB;}
main > div.thema ul.thema_list li.entertainment {background-image:url(../image/thema_ico_entertainment.png); background-color:#D63939;}
main > div.thema ul.thema_list li.convergence {background-image:url(../image/thema_ico_convergence.png); background-color:#CA4900;}
main > div.thema ul.thema_list li.ETC {background-image:url(../image/thema_ico_etc.png); background-color:#DD214A;}
/* } 23.05.02 oz10 스타일 수정 */
main > div.thema ul.thema_list li > a {box-sizing:border-box; display:block; width:100%; height:100%; padding:20px;}
main > div.thema ul.thema_list li span {display:block; color:#fff; font-size:16px; font-weight:500; }

/* 인기강좌 */
main > div.favor {padding-bottom:50px; background:#fff;}
main > div.favor h3.favor_tit {padding:50px 0 20px 0; font-size:24px; line-height:28px; font-weight:700; word-break:keep-all;}
main > div.favor div.favor_list div.slick-slide > div +div {padding-top:10px;}
main > div.favor div.favor_list div.slick-slide > div:after {display:block; content:''; clear:both;}
main > div.favor div.favor_list:after {content:''; display:block; clear:both;}
main > div.favor div.favor_list div.favor_item {float:left; width:33.3333%;}
main > div.favor div.favor_list div.favor_item:nth-child(n+4) {margin-top:20px;}
main > div.favor div.favor_list div.favor_item a {display:block;}
main > div.favor div.favor_list div.favor_item a:after {content:''; display:block; clear:both;}
main > div.favor div.favor_list div.favor_item a div.box_img {float:left; width:130px; height:80px; background-repeat:no-repeat; background-position:center; background-size:cover; vertical-align:middle;}
main > div.favor div.favor_list div.favor_item a div.box_content {box-sizing:border-box; float:left; width:-moz-calc(100% - 130px);  width:-webkit-calc(100% - 130px); width:calc(100% - 130px); height:80px; padding-left:15px; padding-right:20px; vertical-align:middle; }
main > div.favor div.favor_list div.favor_item a div.box_content strong.title {display:block; width:100%; padding-bottom:10px; font-size:16px; color:#000; font-weight:600; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; vertical-align:middle;}
main > div.favor div.favor_list div.favor_item a div.box_content div.date i.dday {display:inline-block; padding:2px 5px; font-size:11px; color:#ee137b; font-weight:600; border:1px solid #ee137b; border-radius:2px; font-style:normal;}
main > div.favor div.favor_list div.favor_item a div.box_content div.date span {display:inline-block; font-size:14px; color:#808080; }

main div.paging-container {display:none; position:relative; left:50%; transform:translateX(-50%); bottom:0px; }
main div.paging-container div.paging {font-size:0; text-align:center; }
main div.paging-container div.paging span.now {display:inline-block; margin:15px 15px; font-size:16px; text-align:center; color:#000; vertical-align:middle; }
/* main div.paging-container div.paging span.now > i {font-style:normal;}
main div.paging-container div.paging span.now > b {font-weight:normal;} */
main div.paging-container div.paging button {display:inline-block; width:40px; height:40px;  border-radius:50%; font-size:14px; background:#fff; cursor:pointer; vertical-align:middle; border: 1px solid #f1f1f1; box-shadow:3px 5px 5px 0px #8080804d;}

/* 22.12.26 허만우 배너추가 { */
main > div.banner a.bg {box-sizing:border-box; display:block; padding:30px 50px; background:url(../image/index_banner01.png)no-repeat center; background-size:cover;}
main > div.banner a.bg strong.title {display:block; margin-bottom:12px; font-size:24px; color:#fff; line-height:24px; word-break:keep-all;}
main > div.banner a.bg p {color:#fff; word-break:keep-all; line-height:24px;}
main > div.banner {margin-bottom: 50px;}
/* } 22.12.26 허만우 배너추가 */

/* 종류별 프로그램 */
main > div.field {background:#fff;}
/* 22.12.26 허만우 소스수정 { */
main > div.field div.wrap_field {overflow:hidden; padding-bottom:50px;}
/*main > div.field div.wrap_field + div.wrap_field { border-top:1px solid #f0f0f0;}*/
/* } 22.12.26 허만우 소스수정 */
main > div.field div.wrap_field h3.program_tit {padding:50px 0 20px 0; font-size:24px; line-height:28px; font-weight:700; word-break:keep-all;}
main > div.field div.wrap_field a.info {box-sizing:border-box; float:left; display:block; position:relative; width:257px; height:320px; padding:30px 15px 30px 30px; }
main > div.field div.wrap_field a.info:before,
main > div.field div.wrap_field a.info:after {content:''; position:absolute;  left:50%; transform:translateX(-50%); height:4px;}
main > div.field div.wrap_field a.info:before {top:-4px; width:249px; background: #e0e0e0;}
main > div.field div.wrap_field a.info:after {top:-8px; width:241px; background: #f2f2f2;}
main > div.field div.wrap_field.professional a.info {background:url(../image/lecture_bg_01.png)no-repeat right 20px bottom -32px #cf4261;}
main > div.field div.wrap_field.info a.info {background:url(../image/lecture_bg_01.png)no-repeat right bottom #2a6fd8;}
main > div.field div.wrap_field.ai a.info {background:url(../image/lecture_bg_02.png)no-repeat right 20px bottom 20px #2a6fd8;}
main > div.field div.wrap_field.math a.info {background:url(../image/lecture_bg_03.png)no-repeat right bottom #973ba3;}
main > div.field div.wrap_field a.info h4 {margin-bottom:25px; color:#fff; font-size:20px; line-height:1.3; font-weight:bold; word-break:keep-all; }
/* 23.01.05 말줄임 스타일 { */
main > div.field div.wrap_field a.info p {display: -webkit-box; height:100px; margin-bottom:25px; font-size:15px; line-height:20px; color:rgba(255,255,255,0.8); word-break:keep-all; overflow:hidden; text-overflow:ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp:5;}
/* } 23.01.05 말줄임 스타일 */
main > div.field div.wrap_field a.info i {position:absolute; left:30px; bottom:30px; box-sizing:border-box; width:32px; height:32px; border-radius:50%; border:2px solid #fff; font-size:20px; color:#fff; line-height:30px; text-align:center; }

/* main > div.field div.wrap_field ul.field_list {float:right;  display:-ms-flexbox; display:-moz-box; display:-webkit-box; display:flex; justify-content:flex-start; -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap:wrap; width:-moz-calc(100% - 257px); width:-webkit-calc(100% - 257px); width:calc(100% - 257px); margin-left:12px; margin-right:-12px; } */
main > div.field div.wrap_field ul.field_list {float:right; width:-moz-calc(100% - 257px); width:-webkit-calc(100% - 257px); width:calc(100% - 257px); margin-left:-12px; margin-right:-12px; }
main > div.field div.wrap_field ul.field_list:after {content:''; display:block; clear:both;}
/* 23.07.07 썸네일비율 스타일 수정 { */
main > div.field div.wrap_field ul.field_list li.field_item {box-sizing:border-box; position:relative; max-height:320px; max-width:260px; width:-moz-calc(33.333% - 24px); width:-webkit-calc(33.333% - 24px); width:calc(33.333% - 24px); margin:0 12px;}
main > div.field div.wrap_field ul.field_list li.field_item > a {box-sizing:border-box; display:block; position:relative; width:100%; height:100%; }
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img {box-sizing:border-box; position:relative; width:100%; max-height:160px; padding-bottom:47.86%; padding-top:14px; padding-left:14px; background-repeat:no-repeat; background-position:center; background-size:cover;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.class {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.certificate {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; padding-left:15px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px; background:url(../image/program_ico_certificate.png)no-repeat 5px center rgba(69,69,76,0.9);}
/* } 23.07.07 썸네일비율 스타일 수정 */
/* 23.06.29 허만우 스타일 수정 { */
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.class.prev {background:rgba(0,182,98,0.9);}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.class.ing {background:rgba(8,119,240,0.9);}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.class.end {background:rgba(126,129,140,0.9);}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_img small.class.audit {background:rgba(140,42,108,0.9);}
/* } 23.06.29 허만우 스타일 수정 */
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content {box-sizing:border-box; padding-top:15px; padding-bottom:15px; }
/* 23.07.10 스타일 수정 { */
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content strong.title {display:block; display:-webkit-box; width:100%; height:40px; margin-bottom:13px; font-size:16px; color:#000; font-weight:700; line-height:1.3; text-overflow:ellipsis; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; vertical-align:middle;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content p.name { margin-bottom:7px; min-height:14px; font-size:14px; line-height:14px; font-weight:bold; color:#555;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content p.institution {margin-bottom:9px; min-height:14px; font-size:14px; line-height:14px; color:#808080; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content p.institution + div.date { margin-bottom: 6px; }
/* } 23.07.10 스타일 수정 */
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content div.date {margin-bottom:20px; line-height:20px; }
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content div.date i.dday {height:20px; padding:0 5px; color:#ee137b; font-size:12px; line-height:12px; font-weight:700; font-style:normal; border-radius:2px; border:1px solid #ee137b; }
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content div.date span {color:#808080; font-size:14px; }
/* 23.01.05 태그스타일 수정 { */
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content div.tag_wrap {height:22px; width:100%; overflow:hidden;}
main > div.field div.wrap_field ul.field_list li.field_item > a > div.box_content div.tag_wrap span.tag {display:inline-block; padding:5px 8px; background:#f2f2f2; border-radius:2px; color:#808080; font-size:12px;}
/* } 23.01.05 태그스타일 수정 */
main > div.field div.wrap_field ul.field_list li.field_item button.favorite  {position:absolute; top:10px; right:12px; width:33px; height:33px; line-height:33px; font-size:22px; color:#fff; text-align:center; border-radius:50%; background:rgba(0,0,0,0.2); }
main > div.field div.wrap_field ul.field_list li.field_item button.favorite > i {display:block; width:33px; height:33px; line-height:33px; text-align:center;}
main > div.field div.wrap_field ul.field_list li.field_item button.favorite > i:before {display:block; width:33px; height:33px; line-height:36px; text-align:center;}
main > div.field div.wrap_field ul.field_list li.field_item button.favorite.favorite_select {color:#ee137b;}
main > div.field div.wrap_field ul.field_list li.field_item button.favorite.favorite_select > i:before {content:"\ea10";}

/*수요맞춤강좌 리스트*/
/*main > div.demand-list {*/
/*	display: flex;*/
/*}*/
main > div.field.demand div.wrap_field a.info {
	/*position: absolute;*/
	background: #e69138;
}
main > div.field.demand div.wrap_field a.info p {
	overflow: initial;
	-webkit-box-orient: initial;
	-webkit-line-clamp: initial;
}
div.demand-list {
	position: relative;
}
div.demand-list button.slick-arrow {
	position: absolute;
	top: 100px;
	width: 40px;
	height: 40px;
	border: 1px solid #f1f1f1;
	border-radius: 50%;
	background: #fff;
	font-size: 14px;
	color: #000;
	font-size: 14px;
	box-shadow: 3px 5px 5px 0px #8080804d;
	z-index: 1;
}
main > div.field button.demand-prev {}
main > div.field button.demand-next {
	right: 0;
}

/*수요맞춤강좌 리스트*/

/* 교육강의영상 */
main > div.video {padding:60px 0 65px; background:#e4f7ea; box-sizing:border-box;}
main > div.video h4 {font-size:24px; line-height:25px; font-weight:bold; word-break:keep-all;}
/* 23.01.05 태그여백 수정 { */
main > div.video div.tag {margin:25px 0 20px;}
main > div.video div.tag > span {display:inline-block; margin-bottom:5px; padding:10px 15px; margin-right:5px; font-size:16px; border:1px solid #ccc; border-radius:30px; background:#fff; box-sizing:border-box; vertical-align:middle; color:#000;}
/* } 23.01.05 태그여백 수정 */
main > div.video div.tag > span:last-child {margin-right:0;}
main > div.video div.tag > span:hover {border-color:#0036ce; background:#0036ce; color:#fff;}
/* 22.12.03 허만우 추가 { */
main > div.video ul.box_item {margin:0 -10px;}
/* } 22.12.03 허만우 추가 */
main > div.video ul.box_item li {box-sizing:border-box; position:relative; width:260px; height:249px; margin:0 12px;}
main > div.video ul.box_item li > a {box-sizing:border-box; position:relative; width:100%; height:100%; display: flex; flex-direction: column;}
main > div.video ul.box_item li > a > div.box_img {box-sizing:border-box; position:relative; width:100%; height:160px; padding-top:14px; padding-left:14px; background-repeat:no-repeat; background-position:center; background-size:cover;}
main > div.video ul.box_item li > a > div.box_img small.certificate {box-sizing:border-box; display:inline-block; width:64px; height:23px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:3px; background:#b030c5;}
main > div.video ul.box_item li > a > div.box_content {box-sizing:border-box; padding-top:15px;}
main > div.video ul.box_item li > a > div.box_content strong.title {display:block; display:-webkit-box; width:100%; height:40px; margin-bottom:15px; font-size:16px; color:#000; font-weight:700; line-height:1.3; text-overflow:ellipsis; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; vertical-align:middle;}
main > div.video ul.box_item li > a > div.box_content div.view strong {display:inline-block; margin-right:10px; font-size:14px; font-weight:500; color:#000; vertical-align:middle;}
main > div.video ul.box_item li > a > div.box_content div.view span {display:inline-block; font-size:14px; font-weight:500; color:#808080; vertical-align:middle;}
main > div.video ul.box_item li > a > div.box_content div.view span:nth-of-type(1) {position:relative; margin-right:33px;}
main > div.video ul.box_item li > a > div.box_content div.view span:nth-of-type(1):after {content:''; display:inline-block; position:absolute; top:0; right:-18px; width:1px; height:14px; background:#bbcbc0;}
main > div.video ul.box_item li > a > div.box_content div.view span > i {display:inline-block; width:18px; height:17px; margin-right:7px; background:url(../image/video_ico_01.png) no-repeat center; vertical-align:middle;}
main > div.video ul.box_item li > a > div.box_content div.view span > b {display:inline-block; margin-top:-1px; font-weight:500; vertical-align:middle;}
/* 23.01.05 태그스타일 수정 { */
main > div.video ul.box_item li > a > div.box_content div.tag_wrap {height:22px; width:100%; overflow:hidden;}
main > div.video ul.box_item li > a > div.box_content div.tag_wrap span.tag {display:inline-block; padding:5px 8px; background:#f2f2f2; border-radius:2px; color:#808080; font-size:12px;}
/* } 23.01.05 태그스타일 수정 */
main > div.video ul.box_item li button.favorite  {position:absolute; top:10px; right:12px; width:33px; height:33px; line-height:33px; font-size:22px; color:#fff; text-align:center; border-radius:50%; background:rgba(0,0,0,0.2); }
main > div.video ul.box_item li button.favorite > i {display:block; width:33px; height:33px; line-height:33px; text-align:center;}
main > div.video ul.box_item li button.favorite > i:before {display:block; width:33px; height:33px; line-height:36px; text-align:center;}
main > div.video ul.box_item li button.favorite.favorite_select {color:#ee137b;}
main > div.video ul.box_item li button.favorite.favorite_select > i:before {content:"\ea10";}

/* 강좌소개 */
main > div.special {padding:60px 0; background:url(../image/special_bg.png)no-repeat center; background-size:cover; }
main > div.special div.box_title:after {content:''; display:block; clear:both;}
main > div.special div.box_title h3.title {display:inline-block; font-size:24px; line-height:28px; font-weight:700; color:#fff; }
main > div.special div.box_title div.box_link {float:right; font-size:0; }
main > div.special div.box_title div.box_link a.more {box-sizing:border-box; position:relative; display:inline-block; width:125px; padding:13px 15px; background:#fff; color:#000; font-size:14px; font-weight:700; border-radius:5px; }
main > div.special div.box_title div.box_link a.more > i {position:absolute; right:15px; top:50%; transform:translateY(-50%); }
main > div.special div.box_title div.box_link a.more + a.more {margin-left:5px; }

main > div.special div.program {position:relative; margin-top:30px; }
main > div.special div.program ul.card_list {box-sizing:border-box; margin-left:-12px; margin-right:-12px; }
main > div.special div.program ul.card_list li.card_item {box-sizing:border-box; position:relative; width:260px; height:320px; margin:0 12px; }
main > div.special div.program ul.card_list li.card_item > a {box-sizing:border-box; position:relative; width:100%; height:100%; display: flex; flex-direction: column;}
main > div.special div.program ul.card_list li.card_item > a > div.card_img {box-sizing:border-box; position:relative; width:100%; height:160px; padding-top:14px; padding-left:14px; background-position:center; background-repeat:no-repeat; background-size:cover;}
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.class {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px; }
/* 23.06.29 허만우 스타일 수정 { */
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.class.prev {background:rgba(0,182,98,0.9);}
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.class.ing {background:rgba(8,119,240,0.9);}
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.class.end {background:rgba(126,129,140,0.9);}
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.class.audit {background:rgba(140,42,108,0.9);}
/* } 23.06.29 허만우 스타일 수정 */
main > div.special div.program ul.card_list li.card_item > a > div.card_img small.certificate {box-sizing:border-box; display:inline-block; min-width:58px; padding:0 4px; height:23px; padding-left:15px; font-size:12px; color:#fff; line-height:23px; text-align:center; border-radius:2px; background:url(../image/program_ico_certificate.png)no-repeat 5px center rgba(69,69,76,0.9);}
main > div.special div.program ul.card_list li.card_item > a > div.card_content {box-sizing:border-box; height:160px; padding-top:15px; }
/* 23.07.07 수타일 수정 { */
main > div.special div.program ul.card_list li.card_item > a > div.card_content strong.title {display:block; display:-webkit-box; width:100%; height:40px; margin-bottom:12px; font-size:16px; color:#fff; font-weight:500; line-height:1.3; text-overflow:ellipsis; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; vertical-align:middle;}
main > div.special div.program ul.card_list li.card_item > a > div.card_content p.name { margin-bottom:7px; min-height:14px; font-size:14px; line-height:14px; font-weight:bold; color:#eee;}
main > div.special div.program ul.card_list li.card_item > a > div.card_content p.institution {margin-bottom:9px; min-height:14px; font-size:14px; line-height:14px; color:#e1e1e1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
main > div.special div.program ul.card_list li.card_item > a > div.card_content p.institution + div.date { margin-bottom: 6px; }
/* } 23.07.07 수타일 수정 */
main > div.special div.program ul.card_list li.card_item > a > div.card_content div.date {margin-bottom:20px; line-height:20px; }
main > div.special div.program ul.card_list li.card_item > a > div.card_content div.date i.dday {height:20px; padding:0 5px; color:#ee137b; font-size:12px; line-height:12px; font-weight:700; border-radius:2px; font-style:normal; border:1px solid #ee137b; }
main > div.special div.program ul.card_list li.card_item > a > div.card_content div.date span {color:#fff; font-size:14px; }
/* 23.01.05 태그스타일 수정 { */
main > div.special div.program ul.card_list li.card_item > a > div.card_content div.tag_wrap {height:22px; width:100%; overflow:hidden;}
main > div.special div.program ul.card_list li.card_item > a > div.card_content div.tag_wrap span.tag {display:inline-block; padding:5px 8px; background:rgba(255,255,255,0.2); border-radius: 2px; color:rgba(255,255,255,0.8); font-size:12px; }
/* } 23.01.05 태그스타일 수정 */
main > div.special div.program ul.card_list li.card_item button.favorite {position:absolute; top:10px; right:12px; width:33px; height:33px; line-height:33px; font-size:22px; color:#fff; text-align:center; border-radius:50%; background:rgba(0,0,0,0.2); }
main > div.special div.program ul.card_list li.card_item button.favorite > i {display:block; width:33px; height:33px; line-height:34px; text-align:center;}
main > div.special div.program ul.card_list li.card_item button.favorite.favorite_select {color:#ee137b;}
main > div.special div.program ul.card_list li.card_item button.favorite.favorite_select > i:before {content:"\ea10";}

main > div.special div.category {margin-top:60px;}
main > div.special div.category div.container {display: flex;}
main > div.special div.category ul {display:flex; flex-wrap:wrap; width: 100%;}
main > div.special div.category ul > li {width:calc(100% / 3); font-size:18px; line-height:24px; background-color:#fff; background-repeat:no-repeat; background-position:center right 40px; box-sizing:border-box;}
main > div.special div.category h4.category_title {width: calc(100% / 4); padding:35px 40px; border-radius:5px 0 0 5px;background-color:#00A85D; font-size:20px; font-weight:bold; line-height:28px; color:#fff;}
/*main > div.special div.category ul > li:first-child > h4 {font-size:20px; font-weight:bold; line-height:28px; color:#fff;}*/
/*main > div.special div.category ul > li:first-child {padding:35px 40px; border-radius:5px 0 0 5px;background-color:#00A85D;}*/
/*main > div.special div.category ul > li:first-child > h4 {font-size:20px; font-weight:bold; line-height:28px; color:#fff;}*/
main > div.special div.category ul > li:nth-of-type(1) {background-image:url(../image/category_img_01.png);}
main > div.special div.category ul > li:nth-of-type(2) {border-left:1px solid #d9d9d9; border-right:1px solid #d9d9d9; background-image:url(../image/category_img_02.png);}
main > div.special div.category ul > li:last-child {border-radius:0 5px 5px 0; background-image:url(../image/category_img_03.png);}
main > div.special div.category ul > li > a {display:inline-block; width:100%; height:100%; padding:40px; box-sizing:border-box;}
/* 2023.06.09 oz15 스타일 수정 { */
main > div.special div.category ul > li > a > p {display: flex; align-items: center; width:calc(100% - 52px); height: 100%; line-height:1.3; word-break: auto-phrase;}
/* } 2023.06.09 oz15 스타일 수정 */

main > div.special div.program button.program_prev.pc {position:absolute; left:-20px; top:100px; transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; z-index: 1;}
main > div.special div.program button.program_next.pc {position:absolute; right:-20px; top:100px; transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; }

/* 서비스 안내 */
main div.service {padding:60px 0 85px 0; background:url(../image/bg_main_service.png)no-repeat bottom center #e6f0fa;}
main div.service h3 {margin-bottom:60px; text-align:center; line-height:34px; font-size:24px; word-break:keep-all;}
main div.service h3 span.text_blue {color:#0036ce;}
main div.service ul {font-size:0;}
main div.service ul li {box-sizing:border-box; position:relative; display:inline-block; padding-left:25px; padding-right:25px; padding-top:22px; padding-bottom:25px; width:calc(25% - 30px); height:180px;/*padding-bottom:12.546%;*/ background-color:#fff; border-radius:5px; box-shadow:3px 15px 20px 0px #8080804d; vertical-align:middle; background-repeat:no-repeat ;}
main div.service ul li+li {margin-left:40px;}
main div.service ul li:after {content:''; position:absolute; left:25px; top:22px; display:inline-block; width:27px; height:25px; background:url(../image/ico_main_service_01.png)no-repeat center; background-size:contain;}
main div.service ul li.company:after {background-image:url(../image/ico_main_service_02.png);}
main div.service ul li.global:after {background-image:url(../image/ico_main_service_03.png);}
main div.service ul li.etc:after {background-image:url(../image/ico_main_service_04.png);}
main div.service ul li strong.title {display:block; padding-left:40px; font-size:20px; color:#000; word-break:keep-all;}
main div.service ul li p.num {position:absolute; right:22px; bottom:25px; font-size:54px; font-weight:500; color:#0036ce;}

/*숏폼 리스트*/
main div.short-form { padding: 48px 0; box-sizing: border-box; background: #E5F0FB; display: none;}
main a.short-form_header { display: flex; align-items: center; gap: 8px;}
main i.short-form_logo { display: block; width: 40px; height: 40px; background: url("../image/ico_shorts_logo.svg") no-repeat center; }
main div.short-form h3 { font-size: 24px; font-weight: 500; }
main div.short-form_slick-wrap { padding-top: 24px; box-sizing: border-box; position: relative; }
main div.short-form .slick-slide { margin: 0 12px; }
main div.short-form .slick-list { margin: 0 -12px; }
main li.short-form_item {}
main div.short-form div.short-form_list a {	display: block; width: 100%; }
main .vjs-fluid { width: 100% !important; padding-top: 0 !important; height: 100% !important; aspect-ratio: 9 / 16; border-radius: 10px; overflow: hidden; }
main div.vjs video{ width: 100%; height: 100%; object-fit: fill; }
main img.short-form_thumbnail { width: 100%; aspect-ratio: 9/16; border-radius: 10px; overflow: hidden; }
main div.short-form_text-area { padding: 16px 4px 0 4px; }
main p.short-form_title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 44px; font-size: 16px; text-overflow: ellipsis; overflow: hidden; line-height: 1.4; color: #1A1A1A;}
main p.short-form_info { display: flex; align-items: center; box-sizing: border-box; padding-top: 16px; color: #666; }
main span.short-form_v-bar { width: 1px; height: 12px; background: #C6D0DB; margin: 0 8px; }
main i.short-form_like { display: flex; width: 16px; height: 16px; background: url("../image/ico_shorts_like.svg") no-repeat center; margin-right: 4px; }
main button.short-form_prev {position:absolute; left:-20px; top:calc(50% - 20px); transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; z-index: 1;}
main button.short-form_next {position:absolute; right:-20px; top:calc(50% - 20px); transform:translateY(-40px); width:40px; height:40px; border:1px solid #f1f1f1; border-radius:50%; background:#fff; font-size:14px; color:#000; font-size:14px; box-shadow:3px 5px 5px 0px #8080804d; }
main button.slick-disabled {display: none !important;}

/* 게시판 공지사항 */
main > div.notice { padding:50px 0 80px; background:#fff;}
main > div.notice:after {content:''; display:block; clear:both; }
/* main > div.notice div.container-fluid {} */
main > div.notice div.board {float:left; width:-moz-calc(50% - 12px); width:calc(50% - 12px); }
main > div.notice div.board h3.title { color:#000; font-size:24px; font-weight:700;}
main > div.notice div.board div.box_board {margin:15px 0;}
main > div.notice div.board div.box_board ul.list {width:100%; }
main > div.notice div.board div.box_board ul.list li.item {width:100%; padding-top:10px; }
main > div.notice div.board div.box_board ul.list li.item a {display:block; width:100%; font-size:0; line-height:30px; }
main > div.notice div.board div.box_board ul.list li.item a span {display:inline-block; width:65px; font-size:16px; color:#808080; vertical-align:middle; }
main > div.notice div.board div.box_board ul.list li.item a strong.title {box-sizing:border-box; display:inline-block; width:-moz-calc(100% - 65px); width:calc(100% - 65px); padding-left:40px; font-size:16px; font-weight:500; color:#000; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; vertical-align:middle; }
main > div.notice div.board div.box_board ul.list li.item span.mobile_date {display:none; line-height:12px;}

main > div.notice ul.link {box-sizing:border-box; float:right; width:-moz-calc(50% - 24px); width:calc(50% - 24px); padding:30px 40px 30px; border-radius:10px; background:#f7f0e4;}
main > div.notice ul.link:after {content:''; display:block; clear:both;}
main > div.notice ul.link li {box-sizing:border-box; float:left; width:-moz-calc(50% - 10px); width:calc(50% - 10px); padding-top:20px;}
main > div.notice ul.link li:nth-of-type(-n+2) {padding-top: 0;}
main > div.notice ul.link li:nth-child(2n) {margin-left:20px;}
main > div.notice ul.link li a {display:block; width:100%; height:100%;}
main > div.notice ul.link li a i.icon {display:inline-block; width:60px; height:60px; margin-right:15px; vertical-align:middle; border-radius:50%; background:url(../image/link_ico_faq.png)no-repeat center #fff; }
main > div.notice ul.link li.news a i.icon { background-image:url(../image/link_ico_notice.png);}
main > div.notice ul.link li.inquiry a i.icon { background-image:url(../image/link_ico_inquiry.png);}
main > div.notice ul.link li.dataroom a i.icon { background-image:url(../image/link_ico_dataroom.png);}
main > div.notice ul.link li.guide a i.icon { background-image:url(../image/link_ico_guide.png);}
main > div.notice ul.link li.blog a i.icon { background-image:url(../image/link_ico_blog.png);}
main > div.notice ul.link li a span {display:inline-block; vertical-align:middle;  font-size:14px; font-weight:600; }

/* 스페셜강좌 */
main.special div.page_title_wrap.type_bg strong {display:inline-block; width:100%; margin-bottom:15px; font-size:20px; font-weight:bold; line-height:26px; color:#fff; word-break:keep-all;}
main.special div.page_title_wrap.type_bg p.text {margin-bottom:25px; font-size:16px; line-height:26px; color:rgba(250,250,250,0.8); word-break:keep-all;}
main.special ul {display:flex; flex-wrap:wrap; padding-top:40px;}
main.special ul > li {width:calc((100% - 80px) / 3); margin-right:40px; margin-bottom:40px;}
main.special ul > li:nth-of-type(3n) {margin-right:0;}
main.special ul > li > a {display:inline-block; width:100%; box-sizing:border-box;}
main.special ul > li div.image {width:100%; padding-bottom:62%; background-image:url(../image/special_img_01.png); background-position:top center; background-repeat:no-repeat; background-size:100%; box-sizing:border-box;}
main.special ul > li.margin_b {margin-bottom:0;}
main.special ul > li p.title {margin-top:20px; font-size:16px; font-weight:bold; line-height:22px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
main.special ul > li p.text {margin:25px 0 15px; height:28px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
main.special ul > li p.date {color:#808080;}

/* 팁 */
main.subpage div.tip > strong {display:block; margin-bottom:12px; font-size:16px; color:#0036ce; font-weight:bold;}
main.subpage div.tip > p {font-size:15px; color:#000; line-height:1.3}

@media screen and (max-width:1199px) {
	/* 묶음강좌 리스트 */
	main > div.field div.wrap_field ul.field_list {width:calc(100% - 269px); margin-right:0;}
	main > div.field div.wrap_field ul.field_list li.field_item {margin:0 12px 0 0;}

	/* 마이크로러닝 리스트 */
	main > div.video ul.box_item {margin:0;}

	/* 교양강좌 리스트 */
	main > div.special div.program ul.card_list {margin-left:0; margin-right:0;}

	/* 교육강의영상 */
	main > div.video div.tag > span {margin-bottom:10px;}
	/*main > div.special div.category ul > li:first-child {padding:35px;}*/

	/* 스페셜 강좌 */
	main.special ul > li {display:flex; flex-direction:column;}
}

@media screen and (max-width:1020px) {
	/* 서비스 안내 */
	main div.service h3 br {display:none;}
	main div.service ul li {width:calc(50% - 5px);}
	main div.service ul li:nth-child(-n+2) {margin-bottom:10px;}
	main div.service ul li+li {margin-left:10px;}
	main div.service ul li.global{margin:0;}

	/* 교육강의영상 */
	main > div.special div.category div.container {flex-direction: column;}
	main > div.special div.category div.container > h4 {width: 100%; box-sizing: border-box; border-radius:0;}
	main > div.special div.category ul > li {width:100%;}
	main > div.special div.category ul > li:nth-of-type(0) {border-radius:0;}
	main > div.special div.category ul > li:nth-of-type(2) {border-left:none; border-right:none; border-top:1px solid #d9d9d9; border-bottom:1px solid #d9d9d9;}
	main > div.special div.category ul > li:nth-of-type(3) {border-radius:0;}

	/* 23.04.12 oz15 스타일 추가 { */
	main > div.notice ul.link {padding:20px;}
	/* } 23.04.12 oz15 스타일 추가 */
}

@media screen and (max-width:991px) {
	/* 테마 */
	/* main > div.thema ul.thema_list li:nth-child(n+5) {margin-top:15px; } */

	main > div.favor div.favor_list > div.favor_item {width:50%; }
	main > div.favor div.favor_list > div.favor_item:nth-child(n+3) {margin-top:20px; }

	/* 종류별 프로그램 */
	/* 23.01.10 소스 수정 { */
	main > div.field div.wrap_field a.info {float:none; width:100%; height:auto; margin-bottom:30px; padding-bottom:60px; min-height:262px;}
	/* } 23.01.10 소스 수정 */
	main > div.field div.wrap_field a.info:before,
	main > div.field div.wrap_field a.info:after {display:none;}
	main > div.field div.wrap_field a.info p {height:100px;}
	/* 23.09.08 스타일 수정 { */
	main > div.field div.wrap_field ul.field_list {float:none; width:100%; margin-left:0;}
	main > div.field div.wrap_field ul.field_list li.field_item {margin:0 24px 0 0;}
	/* } 23.09.08 스타일 수정 */

	/* 특별 강좌 추천 */
	/* main > div.special div.box_title h3.title {margin-bottom:30px;} */

	/* 프로그램 paging 스타일 */
	main div.program button.program_prev.pc {display:none !important;}
	main div.program button.program_next.pc {display:none !important;}

	/* 공지사항 notice */
	main > div.notice div.board {width:100%; }
	main > div.notice ul.link {width:100%; margin-left:0; margin-top:20px; }

	/* 스페셜 강좌 */
	main.special ul > li {width:calc((100% - 40px) / 2);}
	main.special ul > li:nth-of-type(2n) {margin-right:0;}
	main.special ul > li:nth-of-type(3n) {margin-right:40px;}

	/*숏폼 리스트*/
	main button.short-form_prev { display: none !important; }
	main button.short-form_next { display: none !important; }
}

@media screen and (max-width:768px) {
	/*main > div.visual {height:310px;}*/
	/*main > div.visual ul.visual_list li.item {height:310px;}*/
	/*main > div.visual div.visual_indicator div.wrap_dots ul.slick-dots > li {line-height:58px;}*/

	/* 공지사항 notice-roll */
	main > div.notice_roll {height:90px;}
	main > div.notice_roll .container-fluid {padding-right:0;}
	main > div.notice_roll h4.title {width:80px; margin-top:15px; font-size:14px; line-height:26px; vertical-align:top;}
	main > div.notice_roll div.box_btn {display:none;}
	main > div.notice_roll ul.notice_list {width:-moz-calc(100% - 83px); width:-webkit-calc(100% - 83px); width:calc(100% - 83px); }
	main > div.notice_roll ul.notice_list li {height:90px;}
	main > div.notice_roll ul.notice_list li a {padding:5px 15px 5px 15px; line-height:18px;display:flex;flex-direction:column;justify-content:center;}
	main > div.notice_roll ul.notice_list li a > strong {width:100%;white-space:unset; font-size:13px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
	main > div.notice_roll ul.notice_list li a > span {display:block; padding-top:7px; width:100%; font-size:12px; }

	/* 검색박스 */
	main > div.box_search div.search h3 {display:none;}
	main > div.box_search div.search {padding-top:20px; padding-left:20px; padding-right:20px; padding-bottom:18px;}
	main > div.box_search div.search div ul.tag_list li {margin-left:0;}
	/* main > div.box_search div.search div ul.tag_list li + li {margin-left:20px;} */

	/* intro */
	main > div.intro strong.title {font-size:18px; line-height:28px; }
	main > div.intro strong.title > span.blue {font-size:18px; line-height:28px; }
	main > div.intro strong.title > br {display:none; }
	main > div.intro div.list {justify-content:space-between;}
	main > div.intro div.list a.item {width:-moz-calc(50% - 5px); width:-webkit-calc(50% - 5px); width:calc(50% - 5px); margin-right:0; }

	/* 추천강좌/관심강좌 리스트 */
	main > div.box_program div.wrap_program h3.program_tit {font-size:19px; }
	main > div.box_program div.wrap_program div.program {overflow:hidden;}
	main > div.box_program div.wrap_program div.program ul.card_list li.card_item {margin:0 24px 0 0;}

	/* 인기강좌 리스트 */
	main > div.favor h3.favor_tit {font-size:18px; }
	main > div.favor div.favor_list > div.favor_item {width:100%; }
	main > div.favor div.favor_list > div.favor_item:nth-child(n+2) {margin-top:20px;}
	main > div.favor div.favor_list div.favor_item a div.box_img {width:100px; height:70px;}
	main > div.favor div.favor_list div.favor_item a div.box_content {width:calc(100% - 100px);}
	main > div.favor div.favor_list div.favor_item a div.box_content strong.title {font-size:14px; }
	main > div.favor div.favor_list div.favor_item a div.box_content div.date span {font-size:11px;}

	/* 묶음강좌 리스트 */
	/* 23.09.08 스타일 수정 { */
	main > div.field div.wrap_field ul.field_list {width:100%;}
	/* } 23.09.08 스타일 수정 */
	main > div.field div.wrap_field h3.program_tit {font-size:19px; }
	main > div.field div.wrap_field a.info h4 {font-size:17px;}
	main > div.field div.wrap_field ul.field_list li.field_item {width:100%;}

	/* 마이크로러닝 리스트 */
	/* 23.09.08 스타일 추가 { */
	main > div.video ul.box_item li {margin:0 24px 0 0;}
	/* } 23.09.08 스타일 추가 */

	/* 교양강좌 리스트 */
	main > div.special div.box_title h3.title {font-size:19px; }
	main > div.special div.box_title div.box_link {width:100%; float:none;}
	main > div.special div.box_title div.box_link a.more {width:calc(50% - 2.5px);}
	main > div.special div.program {overflow:hidden;}
	/* 23.09.08 스타일 추가 { */
	main > div.special div.program ul.card_list li.card_item {margin:0 24px 0 0;}
	/* } 23.09.08 스타일 추가 */
	main > div.special div.program ul.card_list li.card_item > a > div.card_content strong.title {margin-bottom:16px;}

	/* 서비스 안내 */
	main div.service h3 {font-size:16px; line-height:22px;}
	main div.service ul li {height:130px;}
	main div.service ul li:after {top:20px;}
	main div.service ul li strong.title {font-size:14px;}
	main div.service ul li p.num {bottom:20px; font-size:36px;}

	/* 공지사항 notice */
	main > div.notice div.board h3.title {font-size:19px; }
	main > div.notice div.board div.box_board ul.list li.item {padding-top:24px; }
	main > div.notice div.board div.box_board ul.list li.item a span {width:55px; font-size:14px; }
	main > div.notice div.board div.box_board ul.list li.item a strong.title {width:-moz-calc(100% - 55px); width:-webkit-calc(100% - 55px); width:calc(100% - 55px); padding-left:20px; font-size:17px; }

	main > div.notice ul.link li a i.icon {width:50px; height:50px; margin-right:5px; }
	main > div.notice ul.link li a span {font-size:13px; }

}

@media screen and (max-width:620px) {
	/* paging */
	main > div.box_program div.wrap_program div.program button.program_prev.mobile {position:static; top:auto; left:auto; transform:translateY(0); margin:0;}
	main > div.box_program div.wrap_program div.program button.program_next.mobile {position:static; top:auto; left:auto; transform:translateY(0); margin:0;}

	main div.program div.paging-container {display:block; position:relative; left:50%; transform:translateX(-50%); bottom:0px; padding-top:24px; padding-bottom:5px; }
	main div.program div.paging-container div.paging {font-size:0; text-align:center; }
	main div.program div.paging-container div.paging span.now {display:inline-block; margin:15px 15px; font-size:16px; text-align:center; color:#000; vertical-align:middle; }
	main div.program div.paging-container div.paging span.now > b {color:#afa7a4;}
	main div.program div.paging-container div.paging button {display:inline-block; width:40px; height:40px; border-radius:50%; background:#fff; cursor:pointer; vertical-align:middle; border:1px solid #f1f1f1; }

	/* 특별강좌추천 paging */
	main div.special div.program div.paging-container div.paging span.now {letter-spacing:2px; color:#fff; font-weight:bold;}

	/* 인기강좌 */
	main > div.favor div.paging-container {display:block;}
	main > div.favor div.paging-container {display:block; position:relative; left:50%; transform:translateX(-50%); bottom:0px; padding-top:24px; padding-bottom:5px; }
	main > div.favor div.paging-container div.paging {font-size:0; text-align:center; }
	main > div.favor div.paging-container div.paging span.now {display:inline-block; margin:15px 15px; font-size:16px; text-align:center; color:#000; vertical-align:middle; }
	main > div.favor div.paging-container div.paging span.now > b {color:#afa7a4;}
	main > div.favor div.paging-container div.paging button {display:inline-block; width:40px; height:40px; border-radius:50%; background:#fff; cursor:pointer; vertical-align:middle; border:1px solid #f1f1f1; }
	main > div.field div.paging-container {display:block; position:relative; left:50%; transform:translateX(-50%); bottom:0px; padding-top:24px; padding-bottom:5px; }
	main > div.field div.paging-container div.paging {font-size:0; text-align:center; }
	main > div.field div.paging-container div.paging span.now {display:inline-block; margin:15px 15px; font-size:16px; text-align:center; color:#000; vertical-align:middle; }
	main > div.field div.paging-container div.paging span.now > b {color:#afa7a4;}
	main > div.field div.paging-container div.paging button {display:inline-block; width:40px; height:40px; border-radius:50%; background:#fff; cursor:pointer; vertical-align:middle; border:1px solid #f1f1f1; }

	/* 공지사항 notice */
	main > div.notice div.board div.box_board ul.list li.item a strong.title {padding-left:0;}
	main > div.notice div.board div.box_board ul.list li.item span.pc {display:none;}
	main > div.notice div.board div.box_board ul.list li.item span.mobile_date {display:block;}
}

@media screen and (max-width:500px) {
	main > div.video div.tag > span {padding:5px 10px; font-size:14px;}
}

@media screen and (max-width:480px) {
	/* 스페셜 강좌 */
	main.special ul > li {width:100%; margin-right:0; margin-bottom:40px;}
	main.special ul > li:nth-of-type(3n) {margin-right:0;}
	main.special ul > li.margin_b {margin-bottom:40px;}
	main.special ul > li:last-child {margin-bottom:0;}
	main.special ul > li p.text {height:auto;}
}

@media screen and (max-width:380px) {
	/* 공지사항 notice-roll */
	main > div.notice_roll div.box_btn {display:none;}

	/* 검색박스 */
	main > div.box_search div.search {padding-left:10px; padding-right:10px; }
	main > div.box_search div.search h3 {font-size:22px; }
	main > div.box_search div.search div form.search_form input {font-size:13px; }
	main > div.box_search div.search div ul.tag_list li > a {font-size:12px; }

	/* 공지사항 notice */
	main > div.notice ul.link {padding:10px 15px;}
	main > div.notice ul.link li {width:-moz-calc(50% - 10px); width:-webkit-calc(50% - 10px); width:calc(50% - 10px);}

	/* 서비스 안내 */
	main div.service ul li strong.title {font-size:13px;}
	main div.service ul li p.num {font-size:36px;}
}

/* 23.04.12 oz15 스타일 수정 { */
@media screen and (min-width:280px) and (max-width:319px){
	main > div.notice ul.link li a i.icon {width:33px; height:33px; background-size:16px 14px;}
	main > div.notice ul.link li a span {font-size:12px;}
}
/* } 23.04.12 oz15 스타일 수정 */

@media screen and (max-width:1199px) {
	main.index div.program.course-1 > ul.card_list, main.index div.program.course-2 > ul.card_list {margin-left:0 !important; margin-right:0 !important;}
}

div[data-role=mainPopup] div.popup > div.popup_inner {background:#fff; box-sizing:border-box; height:50%; flex-grow:1;}
div[data-role=mainPopup] div.popup > div.popup_inner :is(p, b, span) {line-height:1.5; letter-spacing:-0.2px;}
div[data-role=mainPopup] div.popup > div.popup_inner p + p {margin-top:10px;}
div[data-role=mainPopup] div.popup > div.popup_inner > div.wrap_scroll {height:100%; box-sizing:border-box; overflow-y:auto; line-height: 1.2;}

form.search_form > input[type="search"] {padding:0 20px !important;}
div.video ul.box_item li small.num {display:inline-block; width:28px; height:27px; font-size:12px; font-weight:bold; line-height:24px; text-indent:-4px; background:url(../image/ico_open_num.png) no-repeat center; text-align:center; color:#fff; box-sizing:border-box; vertical-align:top;}

.visual ul.visual_list {height:400px; opacity:0; visibility:visible; transition:opacity 1s ease; -webkit-transition:opacity 1s ease;}
.visual ul.slick-initialized {opacity:1;}
.course-1 ul.card_list, .course-2 ul.card_list {height:320px; visibility:visible;}
