
.pd24{padding: 24px 0;}
.pdt24{padding-top: 24px;}
.pdb24{padding-bottom: 24px;}

.container{padding: 0px 16px;}
.container-half{padding-left: 16px;}

#main{overflow: hidden;}
#main .swiper{overflow:visible;}
#main .titleArea{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 24px;
}
#main .titleArea h5{font-size: 20px; font-weight: 700;}
#main .titleArea .btn-more{padding: 5px;}
#main .titleArea .btn-more .ico{
	width: 20px; height: 20px;
	stroke-width:1px;
	fill: none;
	stroke: var(--Primary-color);
}


.lec-slide .swiper-slide{height: auto;}
.lec-slide .lec-card{height: 100%;}

.lec-card{
	display: block;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0 4px 15px -2px rgba(0, 0, 0, .2);
	border-radius: 8px;
}
.lec-card .thmb{display: block; overflow: hidden; position: relative; width: 100%; height: 0; padding-bottom: 65%;}
.lec-card .thmb img{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit:cover;}
.lec-card .txt-cnt{
	min-height: 88px;
	padding: 16px;	
	box-sizing: border-box;
}
.lec-card .txt-cnt .cate{
	display: block;
	color: var(--Primary-color);
	font-size: 12px;
	margin-bottom: 8px;
}
.lec-card .txt-cnt h3{
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3em;
}
.lec-card .txt-cnt .summary{
	color: #4D4D4D;
	font-size: 12px;
	line-height: 1.3em;
	margin-top: 8px;
}



.modal-dummy{
	position: fixed; top: 0; left: 0; right: 0; bottom: 0;
	background-color: rgba(0,0,0,.6);
	transition: opacity 0.4s;
	opacity: 0;
	visibility: hidden;
	z-index: 100;
}
.modal-dummy.act{opacity: 1; visibility: visible;}
.btmfix-modal-wrap.act{opacity: 1; bottom:0; visibility: visible;}
.btmfix-modal-wrap{
	position: fixed; bottom: -80px; left: 50%; transform: translateX(-50%);
	width: 100%;
	max-width:720px;
	z-index: 101;
	opacity: 0; visibility: hidden;
	transition: bottom 0.4s , opacity 0.4s , visibility 0.4s;
}
.btmfix-modal{		
	background-color: #fff;
	border-top-left-radius: 24px;
	border-top-right-radius: 24px;
}
.btmfix-modal .titleArea{
	padding: 28px 24px;
	margin-bottom: 16px;
	border-bottom: 1px solid #F5F5F5;
}
.btmfix-modal .titleArea .btn-clse .ico{
	width: 18px; height: 18px;
	stroke: #000; stroke-width: 2px; fill:none;
}
.btmfix-modal .cnt-wrap{
	padding-bottom: 28px;
}
.btmfix-modal .cnt-wrap .inner{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	max-height: 70vh;
	min-height: 55vh;
}
.btmfix-modal .cnt-wrap .cnt{
	overflow-y: auto;
	max-height: calc(100% - 46px);
}
.btmfix-modal .cnt-wrap .sub-list{
	display: flex;
	flex-wrap: wrap;
	gap:8px;
}
.btmfix-modal .cnt-wrap .sub-list li{
	width: calc(100%/3 - 16px/3);
	border: 1px solid #E0E0E0;
	border-radius: 8px;
	box-sizing: border-box;
}
.btmfix-modal .cnt-wrap .sub-list li a{
	display: block;
	width: 100%;
	padding: 12px;
	box-sizing: border-box;
}
.btmfix-modal .cnt-wrap .sub-list li .ico{
	display: block;
	margin: 0 auto;
}
.btmfix-modal .cnt-wrap .sub-list li .txt{
	display: block;
	margin-top: 8px;
	font-size: 14px;
	text-align: center;
}
.btmfix-modal .cnt-wrap .btm{
	display: flex;
	margin-top: 16px;
	flex-shrink: 0;
	gap:8px;
}
.btmfix-modal .cnt-wrap .btm a{
	color: var(--Primary-color);
	font-size: 14px;
	line-height: 44px;
	font-weight: 700;
	text-align: center;
	border: 1px solid var(--Primary-color);
	border-radius: 24px;
	flex: 1;
}



.main-header .container{
	display: flex; align-items:center; justify-content:space-between;
	height: 72px;
}
.main-header h1{width: 154px;}
.main-header h1 a{display: block; width: 100%;}
.main-header h1 a img{display: block;}
.main-header .rgt{display: flex;}
.main-header .rgt a{display: block; width: 48px; margin-left: 4px;}
.main-header .rgt a img{display: block; margin: 0 auto;}
.main-header .rgt a .txt{font-size: 12px; text-align: center; margin-top: 5px;}


.TopNav{
	overflow: hidden;
	position: relative;
	width: calc(100% - 16px);
}
.TopNav a {
	display: block; font-size: 16px; line-height: 52px;
}
.TopNav a.PointMenu_01 {
	font-weight: 600;
	color: var(--point-color);
}
.TopNav a.PointMenu_blue {
	font-weight: 600;
	color: var(--Primary-color);
}
.TopNav .swiper{padding-right: 40px;}
.TopNav .swiper-slide {
	width: initial;
}
.TopNav .btn-more{
	position: absolute; right: 0; top:50%; transform: translateY(-50%);
	width: 28px; height: 28px;
	background: #fff url('/images/2024/main/icon_more.png'); border-radius:4px; z-index: 1;
	box-shadow: -5px 0px 15px 5px #fff;
}
.swiper-progress-bar {
	display: block;
	width: 100%;
	height: 2px;
	position: relative;
	z-index: 100;
}
.swiper-progress-bar .slide_progress-bar {
	position: absolute;
	height: 2px;
	background: rgba(255,255,255,0.3);
	width: auto;
	clear: both;
	opacity: 0;
	left: 0;
	right: 0;
}
.swiper-progress-bar .slide_progress-bar:after {
	position: absolute;
	top: 0;
	left: 0;
	background: #fff;
	height: 100%;
	width: 0;
	content: "";
}
.swiper-progress-bar.active .slide_progress-bar {
	opacity: 1;
}
.swiper-progress-bar.animate .slide_progress-bar:after {
	transition: width linear;
	transition-delay: unset;
	width: 100%;
	transition-duration: 3.9s;
}


.TopVisulBanner .act{
	display: flex; align-items:center;
	position: absolute; left:5%; bottom: 7%;
	width: 90%; 
}
.TopVisulBannerSwiper .swiper-pagination{
	position: unset; flex-shrink:0; color: #999; letter-spacing: -0.05em;
	width: 52px; height:auto; line-height: 22px; background-color: rgba(0,0,0,.6); border-radius:12px; margin-left: 8px;
}
.TopVisulBannerSwiper .swiper-pagination span{
	display: inline-block; width: 15px; text-align: center; font-size: 12px;
}
.TopVisulBannerSwiper .swiper-pagination .swiper-pagination-current{color: #fff;}


.Categories{
	padding: 25px 0;
	border-bottom: 8px solid #F5F5F5;
}
.Categories .swiper-wrapper{
	transition-timing-function: linear;
}
.Categories .swiper-slide{
	width: 72px;
}
.Categories .itemWrap{text-align: center;}
.Categories .itemWrap dd{
	color:#1A1A1A;
	font-size: 12px;
	line-height: 1.4em;
	margin-top: 5px;
}


.itLive{
	background: url('/images/2024/main/IT_Live_bg.png') top center no-repeat;
	background-size: 101%;
	padding-bottom: 16px;
}
.itLive .tit{
	display: inline-block;
	position: relative;
	margin-bottom: 16px;
}
.itLive .tit::after{
	display: block; position: absolute; top: 0; right: -7px;
	width: 4px; height: 4px; background-color: #FF475A; border-radius: 50%;
	animation: blink 1s step-end infinite;
	content: '';
}
.itLive .inner-wrap{
	overflow: hidden;
	background-color: rgba(255,255,255,.4);
	border-top-left-radius: 30px;
}
.itLive .btn-more .ico{stroke: #4949CC !important;}
@keyframes blink{50%{opacity: 0;}}


/* 오마이스쿨 TV */
.omstv {
	background: linear-gradient(180deg, #1A1A1A 70%, transparent 0);
	border-bottom: 8px solid #F5F5F5;
}
.omstv .titleArea h5{color: #fff;}
.omstv .titleArea h5 .ico{vertical-align: bottom;}

.omstv .swiper{padding-left: 16px;}
.omstv .swiper .thmb{
	position: relative;
	box-shadow: 0 5px 16px 0 rgba(0, 0, 0, .2);
}
.omstv .swiper .thmb::after{
	display: block; position: absolute; bottom: -16px; right: 16px;
	width: 48px; height: 48px;
	background: url('/images/2024/main/icon_omstv_play.png') no-repeat;
	content: '';
}
.omstv .swiper .thmb img{
	display: block;
	width: 100%;
}
.omstv .swiper .txt-cnt{
	margin-top: 8px;
	padding-left: 16px;
	box-sizing: border-box;
}
.omstv .swiper .txt-cnt .tit{
	width: calc(100% - 64px);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4em;
}

.omstv .swiper-pagination{
	width: unset;
	position: unset;
}
.omstv .swiper-pagination .swiper-pagination-bullet{
	width: 4px; height: 4px;
	background: #999;
	opacity: 1;
}
.omstv .swiper-pagination .swiper-pagination-bullet-active{
	background: var(--Primary-color);
	width: 12px;
	border-radius: 2px;
}

 .video_popup {
	position: fixed;
	top: 0;
	left: 50%;
	width: 100%;
	max-width: 720px;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.9);
	z-index: 101;
	transform: translateX(-50%);
	display: none;
 }
 .video_popup .container {
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
	margin: 0 16px;
 }
 .video_popup .container .video iframe {
	position: absolute;
	top: 100%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform: translateX(-50%);
	border: none;
 }
 .video_popup .video_popup_Close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 32px;
	height: 32px;
	background: url("/images/video_popup_Close.svg") no-repeat center center;
	text-indent: -999em;
	overflow: hidden;
 }
 
 .video_popup .btn_allVodView {
	display: block;
	background-color: var(--Primary-color);
	color: #fff;
	border-radius: 8px;
	position: absolute;
	z-index: 9;
	width: 96%;
	font-size: 16px;
	font-weight: 600;
	bottom: 24px;
	padding: 14px 0;
	text-align: center;
	margin: 0 auto;
	box-sizing: border-box;
	left: 50%;
	transform: translateX(-50%);
 }


.lec-cont-wrap .lec-cont:not(:first-of-type){
	border-top: 8px solid #F5F5F5;
}