@charset "utf-8";

@import 'custom.css?ver=210416001';
@import 'sub-cont.css?ver=21101901';

/*서브 공통*/
.sub-bg{
	background: url(../img/sub/bg-sub.png) no-repeat top center;
	background-size: auto 450px;
	position:sticky
}
.sub-bg2{
	background: url(../img/sub/bg-sub2.png) no-repeat top center;
	background-size: auto 754px;
	position:sticky
}
.sub-bg-full{
	background: #ebf3f9 url(../img/sub/sub-bg-comm.png) repeat center;
	background-size: 205px auto;
}
.sub-video{
	background: url(../img/sub/sub-bg-video.png) repeat center;
	background-size: 200px auto;
}
.gnb{
	z-index: 1;
	box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.08);
	background:#fff;
	position: relative;
}
.gnb.icon{
	box-shadow: none;
	background:transparent;
}
.header-inner{
	display: flex;
	height: 79px
}
.header-inner.flex{
	justify-content: center;
}
.header-inner.flex .btn-prev{
	position:absolute;
	left:0
}
.btn-prev button{
	width: 79px;
	height: 79px;
	background:url(../img/common/btn-prev.png) no-repeat center;
	background-size: 24px 24px;
}
.icon .btn-prev button{
	background:url(../img/common/btn-prev-w.png) no-repeat center;
	background-size: 24px 24px;
}
.nav{
	align-items: center;
	height: 79px;
}
.nav-link{
	font-size: 16px;
	text-align: center;
	font-weight: 600;
	padding: 0 13px;
}
.nav-item{
	height:100%;
	display:flex;
	align-items: center;
}
.nav-item.active a{
	color:#0254a2
}
.nav-item.active{
	border-bottom: 3px solid #0254a2;
	border-radius: 2px;
}
.nav-item.line{
	position:relative
}
.nav-item.line::before{
	content:'';
	width:1px;
	height:50%;
	display:block;
	border-left: 1px dashed #d2d0d0;
	margin:0 10px
}
.nav-icon{
	display:flex;
	align-items: center;
	width: 100%;
	justify-content: flex-end;
	padding-right: 20px;
}
.nav-icon .menu{
	display:flex;
	width: 45%;
	padding-top: 10px;
}
.nav-icon .menu>li:first-child{
	width: 25%;
	margin: 0 10px 0 0;
}
.nav-icon .menu>li>a{
	font-size: 14px;
	color: #374853;
	background-size: 50px auto;
	background-repeat: no-repeat;
	background-position: top center;
	display:block;
	padding-top: 60px;
	text-align: center;
	font-weight: 500;
}
.nav-icon .menu .m1{
	background-image:url(../img/sub/menu-video1.png)
}
.nav-icon .menu .m2{
	background-image:url(../img/sub/menu-video2.png)
}
.nav-icon .smenu{
	display: flex;
	margin-right: 15px;
}
.nav-icon .smenu>li>a{
	display:block;
	border-radius: 31px;
	background:#9adfff;
	border: 2px solid #5694b0;
	font-size: 13px;
	color:#374853;
	padding: 8px 10px;
	position: relative;
	overflow: hidden;
}
.nav-icon .smenu>li{
	margin: 0 2px;
}
.nav-icon .smenu>li a:after{
	content:'';
	width: 100%;
	height: 27px;
	border-bottom-right-radius: 15px;
	display: block;
	background: #b9e9ff;
	position: absolute;
	left: 0;
	top: 0;
}
.nav-icon .smenu>li b{
	z-index: 1;
	position: relative;
}
.bu-list{
	margin-top: 20px;
}
.bu-list li,
div.bu-list{
	font-size: 16px;
	position:relative;
	padding-left: 15px;
}
.bu-list li::before,
div.bu-list::before{
	content:'';
	width:7px;
	height:7px;
	display:block;
	background:#00adef;
	border-radius: 50%;
	box-shadow: inset -3px -3px 0px 0px rgba(0,149,206,1);
	position:absolute;
	left:0;
	top: 7px;
}
.bu-list li + li{
	margin-top: 10px;
}
.bu-list2{
	margin-top: 15px;
}
.bu-list2 li{
	font-size: 17px;
	position:relative;
	padding-left: 15px;
	color:#686868
}
.bu-list2 li::before{
	content:'';
	width:5px;
	height:5px;
	display:block;
	background:#1e1e1e;
	position:absolute;
	left:0;
	top: 9px;
}
.bu-list2 li + li{
	margin-top: 10px;
}
.bu-list .bar{
	position:relative
}
.bu-list .bar:after{
	content:'';
	width:1px;
	height:10px;
	background:#d9dada;
	margin:0 15px;
	display:inline-block;
	position:absolute;
	right:0;
	top:8px
}
.bu-list-bd{
	margin-top: 20px;
}
.bu-list-bd li{
	font-size: 18px;
	position:relative;
	padding-left: 20px;
	font-weight: 500;
	color: #111;
}
.bu-list-bd li::before{
	content:'';
	width:13px;
	height:13px;
	display:block;
	background:#fff;
	border-radius: 50%;
	position:absolute;
	left:0;
	top: 9px;
	border: 4px solid #00aaf0;
}
.bu-list-bd li.bu2::before{
	border: 4px solid #fea602;
}
.bu-list-bd li + li{
	margin-top: 10px;
}
.bg-re{
	position:relative;
	z-index: 1
}
.ol-list{
	padding: 10px 0 0 5px;
	counter-reset: count 0;
}
.ol-list>li{
	position: relative;
	padding: 0 0 12px 30px;
	font-size: 17px;
	font-weight: 500;
}
.ol-list>li:before{
	counter-increment:count 1;
	content:counter(count);
	margin-left: -30px;
	margin-right: 5px;
	width: 28px;
	height: 28px;
	background: #0b9cfa;
	border-radius: 50%;
	color: #fff;
	display: inline-block;
	text-align: center;
	line-height: 26px;
	font-weight: 600;
	font-family: 'Roboto';
	box-shadow: inset -3px -3px 0px 0px rgb(10 139 223);
}
.ol-list>li.warning:before{
	background: #fa8144;
	box-shadow: inset -3px -3px 0px 0px rgb(231 100 34);
}
.ol-list>li.success:before{
	background: #10b3b9;
	box-shadow: inset -3px -3px 0px 0px rgb(2 153 159);
}
.ol-list.type2{
	counter-reset: li;
	padding-left: 0;
}
.ol-list.type2>li{
	position: relative;
	padding: 0 0 12px 30px;
	font-size: 18px;
	font-weight: 500;
}
.ol-list.type2>li:before{
	counter-increment: li;
  	content: counter(li, decimal-leading-zero);
	width: 32px;
	height: 32px;
	line-height: 32px;
	font-size: 16px;
}
.list-type li + li{
	margin-top: 15px;
}
.list-type li h4{
	font-size: 20px;
	font-weight: 600;
	margin-bottom:5px
}
.list-type li .color1{
	color:#0b9273
}
.list-type li .color2{
	color:#069ca7
}
.list-type li .color3{
	color:#3d8ce3
}
.list-type li .color4{
	color:#645fec
}
.list-type li>p{
	font-size: 16px;
}
.info-list{
	font-size: 14px;
	font-weight: 400;
	margin-top: 10px;
}
.info-list li{
	position:relative;
	margin-bottom: 5px;
	padding-left: 15px;
}
.info-txt{
	position:relative;
	margin-top: 10px;
	padding-left: 15px;
}
.info-txt:before,
.info-list li:before{
	content:'※';
	position:absolute;
	top:0;
	left:0
}
.info-list.lg li{
	font-size: 17px;
}

.info-list.list2 li::before{
	content:'';
	width:4px;
	height:4px;
	background: #bababa;
	border-radius: 50%;
	left:5px;
	top: 9px;
}
.info-list.list2.lg li::before{
	width:6px;
	height:6px;
	color:#aaaaaa;
	left:0
}
.btn-more-right{
	z-index: 10;
	text-align: right;
	margin:20px 40px 0 0
}
.list-cont{
	padding: 0;
}
.ol-type > li{
	position:relative;
	padding: 50px 0 0;
	border-top: 1px solid #ededed;
	margin-top: 50px;
}
.ol-type .num{
	font-family: 'Gotham';
	font-size: 24px;
	color:#fff;
	background:#1483e5;
	border-radius: 50%;
	width:50px;
	height:50px;
	display:inline-block;
	text-align: center;
	line-height: 48px;
	position: absolute;
	left:0;
	top: 42px;
	font-weight: 600;
}
.ol-type .ol-inner{
	margin:0 0 30px 60px
}
.ol-type .ol-inner .tit{
	font-size: 25px;
	font-weight: 600;
}
.ol-type .ol-inner .txt{
	padding:20px 0;
	font-size: 14px;
	line-height: 20px;
}
.ol-type.type2>li{
	border:none;
	padding: 0;
	margin: 20px 0 0;
}
.ol-type.type2 li.dash-line .ol-inner{
	border-top: 2px dashed #cacaca;
	padding-top: 20px;
	margin-bottom: 20px;
}
.ol-type.type2 li.dash-line .num{
	top:20px
}
.ol-type.type2 li.dash-line2{
	border-top: 2px dashed #becedd;
	padding-top: 20px;
	margin-bottom: 20px;
}
.ol-type.type2 li.dash-line2 .num{
	top:20px
}
.ol-type.type2 .num{
	width:45px;
	height:45px;
	line-height: 43px;
	background:#00aaf0;
	box-shadow: inset -3px -3px 0px 0px #1398ed;
	font-size: 21px;
	top: 0;
}
.ol-type.type2 .num2{
	background:#10b3b9;
	box-shadow: inset -3px -3px 0px 0px #02999f;
}
.ol-type.type2 .num3{
	background:#fa8144;
	box-shadow: inset -3px -3px 0px 0px #e76422;
}
.ol-type.type2 .num4{
	background:#1483e5;
	box-shadow: inset -3px -3px 0px 0px #0f5b9f;
}
.ol-type.type2 .ol-inner{
	padding-bottom: 0;
}
.ol-type.type2 .ol-inner .tit{
	font-size: 20px;
}
.ol-type.type2 .ol-inner .txt{
	padding:10px 0;
	font-size: 16px;
}
.ol-type.type2 .ol-inner .tit.lg{
	font-size: 24px;
}
.ol-type.type2 .ol-inner .txt.outline{
	font-size: 17px;
	padding:0 0 5px;
	position:relative;
	font-weight: 600;
	z-index: 1;
}
.ol-type.type2 .ol-inner .txt.outline:before{
	content:attr(title);
	-webkit-text-stroke: 3px #fff;
	position:absolute;
	left:0;
	top:0;
	z-index: -1;
}
.ol-type.type2 .border-top{
	border-top: 1px solid #ededed;
	padding-top: 35px;
}
.ol-type.type2 .border-top .num{
	top:35px
}
.ol-type.type2.grid{
	display:grid;
	grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(auto-fill, min-height);
    grid-row-gap: 70px;
    grid-column-gap: 20px;
}
.sub-bg-cont{
	background:#d6d5f7 url(../img/sub/sub-bg2.png) repeat center;
	background-size: 460px auto;
	margin: 50px -60px 40px;
	padding: 40px 60px;
}
.sub-bg-cont.gray{
	background-color:#e6e6e6
}
.sub-bg-cont.gray2{
	background-color:#eff3f6
}
.sub-bg-cont.mint{
	background-color:#ace9eb
}
.sub-bg-cont.yellow{
	background-color:#ffe575
}
.sub-bg-cont.bg-cont2{
	margin: 50px -124px 50px;
	padding: 40px 124px 60px;
}
.div-sec + .div-sec{
	padding-top:30px;
	margin-top:30px;
	border-top: 1px solid #ededed;
}
.strong-text{
	font-size: 19px;
	font-weight: bold;
}

.date-pick{
	display:flex;
	align-items: center;
	font-size: 25px;
	font-weight: 600;
	font-family: 'Roboto';
	text-align: center;
	justify-content: center;
}
.date-pick button{
	border:1px solid #e9e9e9;
	border-radius: 50%;
	width: 44px;
	height: 44px;
	text-align: center;
	font-size: 20px;
	padding-right: 3px;
	margin:0 20px
}
.date-pick .next{
	padding:0;
	padding-left: 3px;
}


.chg-col-group div {
    float: left; position: relative;
}
.chg-col-4 {
    width: 33.33333333333333%;
}
.chg-col-8 {
    width: 66.66666666666666%;
}
.chg-col-group div:after {
  clear: both;
}
.modal-title-chg {
	display:flex;
	align-items: center;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	justify-content: left;
	padding: 3px 0 5px 0;
}

.date-pick-chg{
	display:flex;
	align-items: center;
	font-size: 18px;
	font-weight: 600;
	font-family: 'Roboto';
	text-align: center;
	justify-content: right;
}
.date-pick-chg button{
	border:1px solid #e9e9e9;
	border-radius: 50%;
	width: 28px;
	height: 28px;
	text-align: center;
	font-size: 16px;
	padding-right: 3px;
	margin:0 20px
}
.date-pick-chg .next{
	padding:0;
	padding-left: 3px;
}

/*table*/
.tbl-type{
	border:1px solid #d2d2d2;
	border-radius: 20px;
	overflow: hidden;
}
.tbl-type table{
	margin:0
}
.tbl-type table tr:first-child td {
	font-weight: 700;
	border:none;
	text-align: center;
}
.tbl-type table tr:first-child td + td {
	background-color: #00aaf0;
	color: #fff;
	font-weight: 700;
	border-left: 1px solid #098dc3;
	text-align: center;
}
.tbl-type table tr + tr td {
	color: #00aaf0;
	font-weight: 700;
	text-align: center;
}
.tbl-type table tr + tr + tr td:first-child {
	font-weight: 700;
	text-align: center;
}
.tbl-type table tr + tr + tr td {
	color: #333;
	font-weight: normal;
}
.tbl-type table td{
	border-left:1px solid #d2d2d2
}
.tbl-type table td.b-left{
	border-left:1px solid #d2d2d2 !important
}
.tbl-type table td:first-child{
	border-left:none
}
.tbl-type table td.info{
	background:#f2fcfe
}
.tbl-type table td.info2{
	background:#e2f6ff
}
.tbl-type2{
	border:1px solid #d2d2d2;
	border-radius: 15px;
	overflow: hidden;
	margin-top: 10px;
}
.tbl-type2 table tbody th {
	font-size: 17px;
	background:#f9f9f9;
	padding:15px;
	font-weight: 400	
}
.tbl-type2.bg-w table tbody th{
	background:#fff
}
.tbl-type2 table tr + tr th {
	border-top:1px solid #d2d2d2;	
}
.tbl-type2 table td{
	text-align: right;
	padding:15px;
	font-size: 17px;
}
.tbl-type2 table tr + tr td {
	border-top:1px solid #d2d2d2;
}
.tbl-type2 table th + td,
.tbl-type2 table td + th{
	border-left:1px solid #d2d2d2;
}
.tbl-style table {
    border-collapse: separate;
    border-spacing: 0 6px;
}

.tbl-style thead th {
    background-color: #00aaf0;
    color: #fff;
    border-bottom: 2px solid #098dc3;
    text-align: center;
    padding:20px 10px;
    box-shadow: 0px 4px 3px 0px rgb(0 0 0 / 16%);
    border-left: 1px solid #098dc3;
    font-size: 16px;
}
.tbl-style.type2 thead th{
	background:#858686;
	border-bottom-color:#6a6a6a;
	border-left-color:#6a6a6a;
}
.tbl-style.type2 thead th.select{
	background:#ff7e00;
	border-color: #ff7e00;
	position: relative;
	box-shadow: none;
}
.tbl-style.type2 thead th.select.be::before{
	content:none
}
.tbl-style.type2 thead th.select::before{
	content:'';
	display:block;
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	width: 0px;
	height: 0px;
	border-top: 10px solid #ff7e00;
	border-right: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 8px solid transparent;
}
.tbl-style.type3{
	border:1px solid #d2d2d2;
	border-radius: 20px;
}
.tbl-style.type3 thead th{
	background:#fafafa;
	border:none;
	border-left:1px solid #b9b9b9;
	border-bottom:2px solid #b9b9b9;
	color:#1a1a1a;
	box-shadow: none;
}
.tbl-style.type3 thead th:first-child{
	border-left:none
}
.tbl-style.type3 tbody td{
	border:none;
	border-left:1px solid #e8e8e8;
	border-bottom:1px solid #e8e8e8;
	text-align: left;
}
.tbl-style.type3 tbody td:first-child{
	border-left:none;	
}
.tbl-style.type3 tbody tr:last-child td{
	border-bottom: none;
}
.tbl-style.type4 thead th{
	background:#827ff4;
	border-top:1px solid #827ff4;
	border-left:1px solid #6461dc;
	border-bottom-color:#6461dc;
}
.tbl-style.type4 thead th:first-child{
	border-left:1px solid #827ff4;
}
.tbl-style.type4 thead th.no-first{
	border-left:1px solid #6461dc;
	border-top-left-radius: unset;
}
.tbl-style.type4 thead th.no-last{
	border-top-right-radius: unset;
}
.tbl-style.no-sp table{
	border-spacing: 0;
}
.tbl-style.no-sp tbody td{
	border-radius: 0;
	box-shadow: none;
	border-top: 0;
	background: #fff;
}
.tbl-style.no-sp tbody td.select{
	border-color:#ff7e00;
	border:2px solid #ff7e00 !important;
	border-top: 0 !important;
}
.tbl-style.no-sp tbody tr.no-first td:first-child,
.tbl-style.no-sp tbody tr:last-child td:first-child{
	border-bottom-left-radius: 20px;
}
.tbl-style.no-sp tbody td.last,
.tbl-style.no-sp tbody tr:last-child td:last-child{	
	border-bottom-right-radius: 20px;
}
.tbl-style.no-sp .row-first {
	border-bottom-left-radius: 20px;
}
.tbl-style.no-sp tbody td.td-no-first{
	border-bottom-left-radius: 0 !important;
	border-left: 1px solid #DDDDDD;
}
.tbl-style.no-sp .row-line {
	border-radius: 0 !important;
	border-right: none !important;
}

.tbl-style.no-sp tbody tr.no-last td:last-child{
	border-bottom-right-radius: 0;
}

.tbl-style.no-bd th{
	box-shadow: none;
	padding:15px 10px;
	border-bottom:0
}
.tbl-style.no-bd tbody td{
	padding:15px 10px;
}
.tbl-style.no-bd.br-n th{
	border:none
}
.tbl-style.no-bd.br-n tbody td{
	border-left: 0;
}
.tbl-style.no-bd.br-n tbody td:first-child{
	border-left: 1px solid #dfdfdf;
}
.tbl-style.no-bd tbody td:last-child{
	border-right:1px solid #dfdfdf
}
.tbl-style.no-bd tr.notice td{
	background:#f2fcfe
}
.tbl-style tbody td {
    border:1px solid #dfdfdf;
    border-right: none;
    text-align: center;
    padding: 17px 10px;
    font-size: 16px;
    box-shadow: inset 0px -5px 0px 0px rgba(243,243,243,1);
}
.tbl-style.td-lg tbody td{
	padding: 17px 20px;
	box-shadow: inset 0px -7px 0px 0px rgba(243,243,243,1);
}
.tbl-style th:first-child {
    border-top-left-radius: 20px;
	border-left: none;
}
.tbl-style th:last-child {
    border-top-right-radius: 20px;
}
.tbl-style td:first-child{
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
}
.tbl-style td:last-child{
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	border-right:1px solid #dfdfdf;
}
.tbl-style .thumb{
	width:50px;
	height:50px;
	border-radius: 50%;
	overflow:hidden;
	display:inline-block;
	vertical-align: middle;
}
.tbl-style .thumb img{
	object-fit: cover;
	width: 100%;
}
.tbl-style .img-thumb{
	width:120px;
	height:75px;
	border-radius: 5px;
	overflow:hidden;
	margin:auto
}
.tbl-type.row .table td, .tbl-type.row .table th,
.table td, .table th{
	vertical-align: middle;
	padding:.75rem 0
}
.tbl-style .btn-r{
	padding: 7px 23px 9px 23px;
}
.tbl-style .btn-r.btn-sm{
	padding:4px 15px 5px 15px;
}
.tbl-style .btn + .btn{
	margin-left: 10px;
}
.grammar-test .result-label span {
	font-size: 12px;
	margin-left: 5px;
	border: 1px solid #dbdbdb;
	padding: 2px 10px;
	border-radius: 50px;
	line-height: 1;
	overflow: hidden;
}
.grammar-test .result-label span.fail {
	color: #FF3366;
	border-color: #FF3366;
}
.grammar-test .result-label span.pass {
	color: #1483e5;
	border-color: #1483e5;
}
/*//table*/


.calendar{
	border:1px solid #d9d9d9;
	border-radius: 25px;
	overflow:hidden;
	margin: 17px 0 30px;
	font-family: 'Roboto';
	font-weight: 600;
}
.calendar .label-round{
	width: 42px;
	height: 42px;
	box-shadow: inset -3px -3px 0px 0px rgb(3 166 234);
	display: inline-block;
	text-align: center;
	line-height: 40px;
}
.calendar .label-round.color2{
	box-shadow: inset -3px -3px 0px 0px rgba(235,76,72,1);
}
.calendar .label-round.color3{
	box-shadow: inset -3px -3px 0px 0px rgba(236,161,1,1);
}
.calendar .weeks,
.calendar .days{
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	grid-column-gap: 0;
	grid-row-gap: 0;
	grid-gap: 0;
}
.calendar .weeks li,
.calendar .days li{
	text-align: center;
}
.calendar .weeks{
	font-size: 17px;
	background:#f9f9f9;
	border-bottom:1px solid #d9d9d9;
	padding:15px 0;
}
.calendar .weeks .sun,
.calendar .days .sun{
	color:#ff1515
}
.calendar .weeks .sat,
.calendar .days .sat{
	color:#1483e5
}
.calendar .days li{
	border:1px solid #e9e9e9;
	min-height: 90px;
	border-top:none;
	border-right: none;
	text-align: left;
	padding:7px;
	margin-bottom: -1px;
}
.calendar .days .badge{
	width:100%
}
.calendar .days .badge + .badge{
	margin-top: 5px;
}
.calendar .days li:first-child,
.calendar .days li:nth-child(7n+1){
	border-left: none;
}
.calendar .days li.active{
	border:1px solid #1ba5ff
}
.calendar .days li.bg-warning-point {
	background: #fff3f1;
}
.calendar .date{
	font-size:16px;	
	color:#1a1a1a;	
}
.calendar .outside .date{
	color:#b4b4b4
}
.calendar-label{
	position:absolute;
	font-size: 17px;
	top: 40px;
}


.modal {
	z-index: 100040;
}

