@charset "utf-8";

/* ----------------------------- */
/* 개인정보처리방침, 이용약관
/* ----------------------------- */
#info_wrap {
	background: #f2f5f6;
	padding: 2rem 0;
}

#info_wrap .inner_wrap {
	background: #fff;
	padding:2rem;
	border-radius: 10px;
}

#info_wrap > * {
	word-break:keep-all;
}

#info_wrap .title {
	font-size: 2rem;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
	margin-bottom: 2rem;
	padding-bottom: 1rem;
}

#info_wrap h5 {
	margin-top: 3rem;
	line-height: 1.5;
}

#info_wrap h5:first-child {
	margin-top:0;
}

#info_wrap p {
	font-size: 1.1rem;
	font-weight: 600;
}

/* ----------------------------- */
/* 회원가입
/* ----------------------------- */
#member_wrap {
	background: #f2f5f6;
	padding: 6rem 2rem;
}

.center_container {
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	display: block;
	background: #fff;
	border-radius: 10px;
}

.center_container.login {
	max-width: 600px;
}

.center_container .center_title {
	text-align: center;
}

.cc_inner {
	width: 100%;
	display: block;
	padding: 3rem 5rem;
}

.cc_inner ul>li {
	margin-bottom: 20px;
}

.cc_inner button {
	height: 48px;
}

/*
.cc_inner .btn_wrap {
	text-align: center;
}
.cc_inner .btn_wrap button {
	width: 40%; margin-left: 2%;

}
.cc_inner .btn_wrap button:first-child {
	margin-left: 0%;
}
*/

/*로그인*/
.cc_inner .title {
	text-align: center;
	padding: 1rem 0;
	font-size: 1.5rem;
	font-weight: 800;
}

.cc_inner .title img {
	margin-bottom: 10px;
	width: 100px;
}

.cc_inner .cc_form_input label {
	display: block;
	text-align: left;
	margin-bottom: 10px;
}

.cc_inner .cc_form_input input {
	width: 100%;
}

.cc_inner .center_form_btn button {
	width: 100%;
}

.sns_login_wrap {
	text-align: center;
}

.sns_login_wrap>ul {
	display: inline-flex;
	justify-content: space-between;
	text-align: center;
	margin: 0 auto 1rem auto;
}

.sns_login_wrap>ul li {
	/* margin-left: 1rem; */
	/* margin-right: 1rem; */
	padding: 1rem;
}

/*약관동의*/
.cc_inner .sub_tit {
	text-align: center;
	border-bottom: 1px solid #e11837;
	color: #000;
	padding-bottom: 20px;
	font-size: 1.2rem;
}

.cc_inner .chk_all {
	text-align: left;
}

.cc_inner .chk_all .txt_v {
	font-weight: bold;
	font-size: 1rem;
}

.cc_inner .chk_all input {
	width: 20px;
	height: 20px;
	margin-right: 5px;
}

.cc_inner .chk_all {
	border-bottom: 1px solid #eee;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.cc_inner .rule_detail {}

.cc_inner .rule_detail textarea {
	width: 100%;
	border: 1px solid #ccc;
	height: 100px;
	line-height: 1.6;
}

.cc_inner table {
	text-align: center;
	font-size: 0.9rem;
	border-collapse: collapse;
}

.cc_inner .table thead th {
	background: #eee;
	padding: 10px;
	border: 1px solid #ddd;
}

.cc_inner .table tbody td {
	padding: 10px;
	border: 1px solid #ddd;
}

/*회원정보입력*/
.join_info li {
	display: block;
	text-align: left;
}

.join_info h3 {
	font-size: 1rem;
	width: 20%;
	display: inline-block;
}

.join_info .con {
	width: 78%;
	display: inline-flex;
	justify-content: space-between;
}

.join_info .con input {}

.join_info li .idcon input {}

/*회원가입완료*/
.join_Uinfo {
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
	text-align: left;
	padding: 20px;
}

.join_Uinfo dt {
	line-height: 30px;
}

.join_Uinfo dt b {
	width: 68%;
	display: inline-block;
	font-weight: normal;
}

.join_Uinfo dt span {
	/* width: 30%; */
	/* color: #666; */
	/* display: inline-block; */
}

/*아이디, 비밀번호찾기*/

.find_wrap {
	width: 80%;
	margin: 0 auto;
	padding: 1rem 0 2rem 0;
}

.find_con {
	display: none;
}

.find_con.on {
	display: block;
}

.find_con .fd_tit {
	text-align: center;
	/* border-bottom: 1px solid #eee; */
	padding: 1.5rem 0;
}

.find_con .fd_tit h4 {
	font-size: 1.5rem;
	margin: 10px 0 20px 0;
}

.find_con .fd_tit .material-symbols-outlined {
	display: block;
	font-size: 5rem;
}

.find_con .fd_tit > p {
	margin:1rem
}

.find_con li {
	margin: 10px 0;
}

.find_wrap li b {
	width: 20%;
	display: inline-block;
}

.find_wrap li input {
	width: 78%;
	display: inline-block;
}

.find_wrap .btn_wrap {
	margin-top: 30px;
}

.find_wrap .btn_wrap button {
	width: 100%;
	height: 60px;
}

/* 강좌 목록 */
ul.classes_list {
	display: flex;
	flex-wrap: wrap;
}

ul.classes_list li {
	position: relative;
	width: 23.8%;
	/* min-width: 282px; */
	/* min-width: 332px; */
	/* height: 440px; */
	border: 1px solid #e0e0e0;
	background: #fff;
	/* margin-bottom: 1rem;
	margin-left: 1.6%; */
	margin: 0.5%;
}

ul.classes_list li:nth-child(4n+1) {
	margin-left: 0.5%!important;
}

.classes_img {
	width: 100%;
	position: relative;
	aspect-ratio: 16/9;
	background:#000;
	height: 11rem;
}

.classes_img img {
	width: 100%;
}

.classes_img .labels,
.classes_img .heart {
	position: absolute;
	top: 1rem;
	z-index: 10;
	color: #fff;
}

.classes_img .labels {
	left: 1rem;
	padding: 0.2rem 1rem;
	font-size: 0.75rem;
	background: #e11837;
	border-radius: 20px;
}

.classes_img .heart {
	right: 1rem;
	font-size: 0.75rem;
}

ul.classes_list li .classes_hover {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 11;
	background: hsl(0deg 0% 0% / 70%);
	color: #fff;
}

ul.classes_list li.on .classes_hover,
ul.classes_list li:hover .classes_hover {
	display: flex;
	align-items: center;
}

ul.classes_list li .classes_hover button {
	color: #fff;
	width: 50%;
	text-align: center;
	padding: 0;
	height: 100%;
	min-width: auto;
}

ul.classes_list li .classes_hover button:first-child:after {
	content: '';
	width: 1px;
	height: 60%;
	background-color: #eee;
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 12;
	opacity: 1;
}

ul.classes_list li .classes_hover button i {
	display: block;
}

ul.classes_list li .classes_hover button span {
	font-size: 1.2rem;
	line-height: 2.5rem;
}

.classes_desc {
	padding:  1rem 1.2rem 0.5rem 1.2rem;
}

.btn_reset {
	min-width: auto!important;
	width: 100%;
	height: 100%;
	text-align: left;
	padding: 0;
}



.classes_title {
	font-size: 1.2rem;
	font-weight: 500;
	word-break: keep-all;
	margin-bottom: 0.5rem;
	white-space: normal;
	text-align: left;
	word-break: break-word;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	line-height: 1.5rem;
	min-height: 3rem;
}

.classes_teacher {
	font-size: 0.875rem;
	color: #666;
}

.classes_price {
	font-size: 1.3em;
	color: #e11837;
	font-weight: 700;
	margin-top:0.7rem;
	margin-bottom: 0.5rem;
}

.classes_tag {
	overflow: hidden;
	word-break: keep-all;
}

.class_tag {
	border-radius: 20px;
	padding: 0.1rem 0.75rem;
	margin-right: 0.2rem;
	border: 1px solid #d7d7d7;
	display: inline-block;
	margin-bottom: 0.5rem;
	word-break: keep-all;
	font-size: 0.875rem;
	color: #666;
}

.class_head_top .title {
	font-size: 2.5rem;
	font-weight: 900;
}

.class_head_top {
	display: flex;
	justify-content: space-between;
	align-items: end;
}

.class_head .class_category {
	background: #edf1f3;
	margin: 1.5rem 0;
}

.class_head .class_category .btn,
.class_head .class_category button {
	
}

.class_head .class_category .active .btn,
.class_head .class_category .active button {
	background: #e11837;
	color: #fff;
	border: none;
}

.class_body_top {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding-bottom: 1rem;
	border-bottom: 1px solid #aaaaaa;
	margin-bottom: 1.5rem;
}

.class_count {
	font-weight:400;
}

/* 강좌 상세 */
.breadcrumb {
	display: flex;
	/* align-items: end; */
}

.breadcrumb li {
	line-height:1;
}

.breadcrumb li a {
	font-size: 1rem;
	font-weight: 400;
	color: #666;
}

.breadcrumb li:first-child i {
	font-size:1.5rem;
}

.breadcrumb li a:before {
	/* content: '>'; */
	padding: 0 0.5rem;
	font-weight: 700;
	font-size: 1.25rem;
	vertical-align: bottom; 
	
}

.breadcrumb li:first-child a:before {
	content: '';
	padding: 0;
}

.class_view_top {
	display: flex;
	min-height: 26rem;
	border: 1px solid #dadfe1;  
	background: #edf1f3;
}

.class_view_top .img_wrap {
	width: 60%;
	background: #edf1f3;
 	height: 26rem!important;

}

.class_view_top .img_wrap img {
	max-width: 100%;

}


.class_view_top .text_wrap {
	width: 50%;
	padding: 2rem 2.5rem;
	position: relative;
	border-left: 1px solid #dadfe1;  
}

.class_view_top .text_wrap .class_category {
	background: #666;
	display: inline-block;
	padding: 0.2rem 0.5rem;
	font-size: 0.9rem;
	color:#fff;
}

.class_view_top .text_wrap .btn_share  {
	position: absolute;
	top:29px;
	right:0;
}

.class_view_top .text_wrap .class_title {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.25;
	margin-top: 0.5rem;
	margin-bottom: 1rem;
}

.class_view_top .text_wrap .price {
	background: #fff;
	border-radius: 5px;
	padding: 0.5rem 1rem;
	display: flex;
	margin-bottom: 1rem;
}

.class_view_top .text_wrap .price small {
	color: #222;
	font-size: 1rem;
	padding-top: 10px;
}
.class_view_top .text_wrap .price > span  {
	color: #e11837;
	font-weight: 700;
	text-align: right;
	font-size: 1.7rem;
	margin-left: auto;
	padding-right: 1rem;
}




.class_view_top .text_wrap .class_info {
	margin: 1rem 0 1rem 0;
}

.class_view_top .text_wrap .class_info h3  {
	font-size: 1.1rem;
	font-weight: 700;
}
.class_view_top .text_wrap .class_info ul {
	border-radius: 5px;
}

.class_view_top .text_wrap .class_info ul li  {
	font-size:0.9rem;
	width: 50%;
	display: inline-block;
}
.class_view_top .text_wrap .class_info .title {
	width: 40%;
  display: inline-block;
}
.class_view_top .text_wrap .class_info .title svg  {
	margin-right: 0.5rem;
}


.info-teacher  {
	background: #fff;
	padding: 0.5rem;
	border-radius: 5px;
	margin-bottom:0.5rem;
}
.info-teacher h6  {
	margin-bottom:0
}
.info-teacher h6 span  {
	margin: 0 3px;
}
.info-teacher h6 b {
}



.class_view_top .text_wrap .class_info .content {
	width: auto;
  display: inline-block;
}

.class_view_top .text_wrap .class_tags b {
	vertical-align: middle; 
	margin-right: 5px;
}

.class_view_top .text_wrap .class_tags .tag {
	margin-left: 0.25rem;
	background: #fff;
	color: #666;
	border-radius: 20px;
	padding: 0.1rem 0.5rem;
	display: inline-block;
	font-size: 0.9rem;
}

.class_view_top .text_wrap .class_tags .tag:first-child {
	margin-left: 0;
}

.class_view_top .text_wrap .class_teacher {
	font-weight: 600;
}

.class_view_body {
	margin-top: 4rem;
	/* display: flex; */
	/* justify-content: space-between; */
}

.class_view_desc {
	float: left;
	width: calc(95% - 270px);
}

.class_view_desc > ul {
	display: flex;
}

.class_view_desc > ul li {
	width: 50%;
}

.class_view_desc > ul li button {
	display: block;
	background: #edf1f3;
	border: 1px solid #dadfe1;
	padding: 1rem;
	text-align: center;
	font-weight: 500;
	font-size: 1.2rem;
	height: 60px;
}

.class_view_desc > ul li button.on,
.class_view_desc > ul li button:hover {
	background: #fff;
	border-top:2px solid #e11837;
}

.class_view_menu {
	float: right;
	width: 270px;
	border: 2px solid #e11837;
}

.class_view_menu_inner {
}

button {}

.class_view_register>* {
	display: block;
	width: 100%;
	background: #e00;
	font-size: 1.25rem;
	color: #fff !important;
	padding: 1.25rem 1rem;
	height: auto;
	text-align: center;
}

.class_view_desc .desc {
	padding: 3rem 0;
}
.class_view_desc .desc > * {
	display:none;
}
.class_view_desc .desc > *.on {
	display:block;
}

.class_view_desc .desc #desc1 h3,
.movie_desc h3 {
	margin-bottom: 1rem;
	font-size:1.5rem;
	font-weight: 600;
}


.class_view_desc .desc #desc1 h3 i,
.movie_desc h3 i {
	/* color:#e11837; */
	margin-right: 1rem;
}

.class_view_desc .desc #desc1 .hr_contnet  {
	border: 1px solid #eee;
	padding: 2rem;
	border-radius: 5px;
	margin-bottom: 3rem;
}

.class_view_desc .desc #desc2 h3 {
	margin-bottom: 1rem;
	font-size: 1.5rem;
	font-weight: 600;
	margin: 8px 0px 1rem 0px;
}





.class_view_menu .title {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	word-break: keep-all;
	padding:1.5rem;
}

.class_view_menu .price {
	font-weight: 700;
	color: #e11837;
	padding:0 1.5rem 1.5rem 1.5rem;
}

.class_view_menu .class_button{
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	padding:0 1rem;

}
.class_view_menu .class_button li  {
	flex-grow: 1;
	padding-left: 0.5rem;
}
.class_view_menu .class_button li:first-child {
	padding-left: 0;
}

.class_view_menu .class_button button {
border: 1px solid #ccc;
min-width: auto;
width: 100%;
border-radius: 5px;
}



.class_view_summary {
	padding: 1rem ;
	background: #edf1f3;
}

.class_view_summary dl {
	display: flex;
	color: #222;
}

.class_view_summary dl dt {
	width: 100px;
}

.class_view_summary dl dt:before {
	content: "ㆍ";
}

.class_view_summary dl dd:before {
	content: ": ";
	margin-right: 0.5rem;
}

.class_view_summary dl dt,
.class_view_summary dl dd {
	font-weight: 400;
	font-size: 1rem;
}

.class_view_summary  p  {
	font-size: 0.9rem;
	margin-top: 1rem;
	padding: 0.5rem;
	border-radius: 10px;
}

.class_view_btns {
	display: flex;
	justify-content: space-between;
	padding: 0 1.5rem  1.5rem 1.5rem;
}

.class_view_btns button {
	border: 1px solid #ccc;
	width: 49%;
	border-radius: 5px;
	margin-left: 2%;
}
.class_view_btns button:first-child{
	margin-left: 0;
}

.class_view_btns button i  {
	margin-right: 5px;
}

/* 강좌 시청 */
.class_see_head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1.5rem;
	background: #31343d;
	color: #fff;
	box-shadow: 0 6px 16px -15px rgba(0,0,0,.3);
}

.class_see_head>a {
	padding: 0.5rem 2rem;
	border: 1px solid #ccc;
	display: block;
	border-radius: 5px;
	background: #fff;
	color: #222;
}

.class_see_head a i {
	font-size: 1.5rem;
	vertical-align: middle;
	margin-left: 0.5rem;
}

.class_see_head .title {
	font-size: 1.8rem;
	font-weight: 700;
}
.class_see_head > .title > .title_btn {
	padding: 0.5rem 1rem;
	font-size: 1rem;
	border: 1px solid #ccc;
	margin-right: 1rem;
	border-radius: 5px;
	min-width: auto;
}

.class_see_body {
	display: flex;
}

.movie_section {
	width: 70%;
	border-right: 1px solid #ccc;
}

.movie_section .movie_none  {
	text-align: center;
	width: 100%;
	min-height: 748px;
	padding-top: 17rem
}
.movie_section .movie_none span  {
	display: block;
	font-size: 1.5rem;
	margin-top: 1.5rem;
	color: #666;
}


.curriculum_section {
	width: 30%; 
	background: #fff;
}




.curriculum_section .curriculum  {
	height: 540px;
	overflow-x: hidden;
	overflow-y: scroll;
}

.curriculum_section .curriculum li {
	border:0px; 
	border-bottom: 1px solid #eee;
	border-radius: 0;;
	margin-bottom: 0;
	border-left: 10px solid #fff;
}
.curriculum_section .curriculum li .title svg {
	left:0.5rem;
}


.movie_desc {
	position: relative;
	padding: 2rem;
	display: none;
}

.curriculum_section .desc {
	padding: 1.5rem;
	border-bottom: 1px solid #ccc;
	background: #fff;
}

.curriculum_section .desc .title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
}

.curriculum_section .desc dl {
	display: flex;
}

.curriculum_section .desc dl dt {
	width:25%;
	font-weight: normal;
	display: inline-block;
}

.curriculum_section .desc dl dt:before {
	content: "ㆍ"
}
.curriculum_section .desc dl dt span{
	width: 100%;
}
.curriculum_section .desc dl dt:after {
	content: ":";
	padding: 0 0.4rem;
}
.curriculum_section .desc .progressbar {
	margin:1rem 0 0.5rem 0 ;
}

.progress_wrap {
	display: flex;
	justify-content: space-between;
}

.progress_wrap .timeline {
	color: #666;
}

.progress_wrap .progress_per {
	font-weight: 600;
	margin-top: 0.5rem;
}
.curriculum_total  {
	width: 100%;
	background: #edf1f3;
	padding: 1rem;
	margin-bottom: 1rem;
	border-radius: 5px;
}
.curriculum_total p  {
	display: inline-block;
}
.curriculum_total p b  {
	margin-left: 0.5rem;
}

.curriculum_total p:after {
	content: '/';
	padding: 0.5rem;
}
.curriculum_total p:last-child:after {
	content: '';
	padding: 0;
}
.curriculum_total p svg {
	margin-right:5px;
}



ul.curriculum li {
	position: relative;
	padding: 1rem 2rem 1rem 3.5rem;
	border: 1px solid #dee2e3;
	border-radius: 5px;
	margin-bottom: 0.5rem;
}

ul.curriculum li.complete {
	border-left: 10px solid #6e6e6e;
}

ul.curriculum li.ing {
	border-left: 10px solid #e11837;
	background: #e118360d;
}



ul.curriculum li .title {
	color: #000000;
	font-weight: 600;
	text-align: left;
	font-size: 1.1rem;
}
ul.curriculum li .title svg {
	content: "aa";
	position: absolute;
	left: 1.5rem;
	top: 1.2rem;
	z-index: 11;
}

ul.curriculum li .time {
	color: #666;
	margin-top: 0.5rem;
	display: flex;
}

ul.curriculum li .time svg {
	vertical-align: bottom;
	margin-top: 2px;
}


/* 커뮤니티 목록 */
.board_list_wrap {
	margin-top: 3rem;
}

.board_list_top {
	display: block;
}

.board_list_top .search_wrap {
	float: right;
	margin-bottom: 1rem;
}

.board_list_top .search_wrap.only1 {
	float: left;
	width: auto;
}


.board_list_top .board_count {
	float: left;
	height: 40px;
	line-height: 40px;
}

.board_list_top .board_count .red  {
	vertical-align: top;
}

.board_list_top .board_btn {
	float: right;
	color: #e11837;
	padding: 0.5rem 1rem;
	border: 1px solid #e11837;
	margin-bottom: 1rem;
}

.article_list_body {
	width: 100%;
	border-top: 2px solid #e11837;
}

.article_list_body .article_head {
	background: #edf1f3;
}

.article_list_body .article_head li,
.article_list_body .article_body li a {
	display: flex;
	width: 100%;
	padding: 1.5rem 0rem;
	position: relative;
	z-index: 9;
	padding: 1.5rem 2rem 1.5rem 0;
}

.article_list_body .article_head li>*,
.article_list_body .articles li>a>* {
	text-align: center;
	padding: 0 0.5rem;
}

.article_list_body .article_head li * {
	color: #000000;
	font-weight: 500;
}

.article_list_body .articles li .no,
.article_list_body .articles li .qna_label {
	width: 5%;
}

.article_list_body .articles li .subject {
	width: 70%;
	word-break: keep-all;
}

.article_list_body .articles li .attach_file {
	width: 5%;
}

.article_list_body .articles li .date {
	width: 10%;
}

.article_list_body .articles li .count {
	width: 10%;
}

.article_body li>a {
	border-bottom: 1px solid #ccc;
}

.article_list_body.faq li a,
.article_list_body.req11 li a {

	padding: 1.5rem 2rem 1.5rem 0;
}

.article_list_body.faq li a:after,
.article_list_body.req11 li a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1.5rem;
	transform: translate(0, -50%) rotate(225deg);
	z-index: 11;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #666;
	border-left: 2px solid #666;
	color: #555;
	transition: all ease 0.2s;
}

.article_list_body.faq li a.on:after,
.article_list_body.req11 li a.on:after {
	transform: translate(0, -50%) rotate(45deg);
}

.article_list_body.req11 .article_body li>.reply {
	padding-left: 4.5rem;
}

.article_body li a>* {
	color: #555;
}

.article_body li .no,
.article_body li .subject,
.article_body li .subject11,
.article_body li .subject_faq {
	color: #000000;
}

.article_list_body .articles li .type {
	width: 10%;
}

.article_list_body .articles li .subject11 {
	width:60%;
}

.article_list_body .articles li .status {
	width: 10%;
}

.article_list_body .articles li .subject_faq {
	width: 75%;
}

@-webkit-keyframes slide {
	100% {
		top: 200px;
	}
}

@keyframes slide {
	100% {
		top: 300px;
	}
}

.article_list_body .article_body li>.reply {
	background: #f2f5f6;
	padding: 2rem 3rem;
	margin-bottom: 40px;
	height: 0;
	display: none;
	/* -webkit-animation: slide 0.5s forwards; */
	/* -webkit-animation-delay: 2s; */
	/* animation: slide 0.5s forwards; */
	/* animation-delay: 2s; */
	/* top: -1000px; */
	position: relative;
	/* transition: 1s; */
}

.article_list_body .article_body li>a.on+.reply {
	display: block;
	height: auto;
	/* top: 0; */
	margin-bottom: 0!important;
}

.article_list_body .article_body li>a.on+.reply p  {
	background: transparent!important;
}
.article_list_body .article_body li>a.on+.reply span  {
	background: transparent!important;
}

.article_list_body .article_body li>a.on+.reply strong  {
	background: transparent!important;
}

.article_list_body .article_body li>a.on+.reply hr  {
	height: 1px!important;
	background:#999!important

}
.article_list_body .article_body li>a.on+.reply  em {
	color:#222
}


.article_list_body.faq .article_body li>.reply {
	padding-left: 5.5rem;
}

.article_list_body.faq .article_body li .qna_label:before,
.article_list_body.faq .article_body li>.reply:before {
	position: absolute;
	left: 2.5rem;
	z-index: 11;
	padding: 1rem;
	border-radius: 100%;
	width: 28px;
	height: 28px;
	line-height: 28px;
	text-align: center;
	display: table-cell;
	border: 1px solid #e11837;
	padding: 0;
}

.article_list_body.faq .article_body li .qna_label:before {
	content: 'Q';
	color: #e11837;
}

.article_list_body.faq .article_body li .reply:before {
	content: 'A';
	background: #e11837;
	color: #fff;
}

/* 커뮤니티 상세 */
.board_view_wrap {
	margin-top: 2rem;
}

.article_view_body .article_head {
	border-top: 2px solid #e11837;
	background: #f2f5f6;
	padding: 1rem;
}

.article_view_body .article_head .subject {
	font-size: 1.25rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
}

.article_view_body .article_head .info {
	display: flex;
	color: #666;
	font-size: 0.9rem;
}
.article_view_body .article_head .info strong {
	font-weight: normal;
}

.article_view_body .article_head .info>*:before {
	content: '|';
	margin: 0 0.5rem;
}

.article_view_body .article_head .info>*:first-child:before {
	content: '';
	margin: 0;
}

.article_view_body .article_file {
	padding: 1rem;
}

.article_view_body .article_file i {
	margin-right: 1rem;
	vertical-align: baseline;
}

.article_view_body .article_body {
	padding: 2rem;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.bottom_btns {
	margin-top: 1rem;
	display: flex;
	justify-content: center;
}

.bottom_btns > * {
	margin-left: 1.5rem;
	display: block;
	min-width: 12rem;
	text-align: center;
	padding: 0.75rem 4rem;
	border: 1px solid #666;
	background-color: #fff;
	color: inherit;
	height: auto;
}

.bottom_btns > *.submit {
	border: 1px solid #e11837;
	color: #fff;
	background-color: #e11837;
}

.bottom_btns > *:first-child {
	margin-left: 0;
}

/* 커뮤니티 쓰기 */
.article_write_body .article_head {
	border-top: 1px solid #e11837;
	background: #f2f5f6;
	padding: 1rem;
	font-size: 1.25rem;
	font-weight: 600;
}

.article_write_body ul li {
	display: flex;
	padding: 1rem;
	align-items: center;
	justify-content: left;
	border-bottom: 1px solid #ccc;
}

form ul li .field_label {
	width: 30%;
}

form ul li .field_input {
	width: 50%;
}

form ul li .field_input input[type="text"],
form ul li .field_input input[type="password"],
form ul li .field_input input[type="tel"],
form ul li .field_input input[type="email"],
form ul li .field_input input[type="file"]{
	width: 100%;
}


form ul li .field_input.half {
	width: 35%;
}

form ul li .field_label span {
	font-size: 1rem;
}

.field_input.many {
	display: flex;
	justify-content: space-between;
}

.field_input.double37>*:first-child {
	width: 28%;
}

.field_input.double37>*:last-child {
	width: 69%;
}

.field_input.double73>*:first-child {
	width: 69%;
}

.field_input.double73>*:last-child {
	width: 28%;
}

.field_input textarea {
	border-radius: 0;
	border: 1px solid #cccccc;
}

.field_input  select {
	width: 100%;
}



/* 개인정보 수정 */
.my_info_body ul li {
	display: flex;
	padding: 0.5rem 1rem;
	align-items: center;
	justify-content: left;
}


.my_info_body {
	padding: 2rem;
	border: 1px solid #ccc;
}

.my_info_body .title {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
}

.field_input button {
	border: 1px solid #e11837;
	color: #e11837;
}

.my_info_head {
	margin-bottom: 1.5rem;
	background: #f2f5f6;
	padding: 2rem 0;
}

.my_info_profile .img_wrap {
	position: relative;
	width: 100px;
	height: 100px;
	border-radius: 100%;
	background: #ccc;
	text-align: center;
	margin: 0 auto;
	line-height: 100px;
	color: #fff;
}

.my_info_profile button {
	position: absolute;
	bottom: 1rem;
	right: 0;
	z-index: 11;
	min-width: 26px;
	height: 26px;
	border-radius: 100%;
	background: #cccccc;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	line-height: 1;
}

.my_info_welcome {
	text-align: center;
	font-size: 1.25rem;
	font-weight: 700;
	margin-top: 1rem;
}

.sns_group {
	display: inline-flex;
	width: 100%;
}

.sns_group .snsbox {
	width: 100%;
	color:#666;
	box-sizing: border-box;
	text-align: left;
	border: 1px solid #666;
	font-weight: 900;
	font-size: 1.5rem;
	padding: 0;
	overflow: hidden;
	max-width: 160px;
	padding:10px;
	height: auto!important;
	line-height: 0.8;
	
}
.sns_group .snsbox svg {
	vertical-align: inherit;	
}
.sns_group .snsbox svg path {
	fill: #666!important;
}


.sns_group .snsbox.on {
	opacity:1;
}

.snsbox.snsbox_k.on {
	color: #31343d;
	background: #ffe600 !important;
	border-color: #ffe600 !important;
}
.snsbox.snsbox_k.on svg path {
	fill: #391b1b!important;
}

.snsbox.snsbox_n.on {
	color: #fff!important;
	background: #03c75a !important;
	border-color: #03c75a !important;
}

.snsbox.snsbox_n.on svg path {
	fill: #fff!important;
}

.snsbox.snsbox_g.on {
	background: #4175df!important;
	color: #fff!important;
}

.snsbox.snsbox_g.on svg path {
	fill: #fff!important;
}

.classes_myroom {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.my_room_wrap .my_info_head   {
padding: 0;
}

.my_room_wrap .my_info_head li {
	display: inline-block;
}
.my_room_wrap .my_info_head .lgray_box  {
	display: block;
}
.my_room_wrap .my_info_head .search_wrap {
	padding: 0;
}


.classes_process {
	text-align: right;
	font-size: 1.1rem;
	font-weight: 700;
	word-break: keep-all;
	white-space: nowrap;
}

.classes_period {
	font-size: 0.95em;
	color: #000;
}

.classes_period span {
	white-space: nowrap;
	word-break: keep-all;
}

button.classes_play {
	width: 100%;
	color: #e11837;
	border: 1px solid #e11837;
	margin-bottom: 0.5rem;
	padding: 1rem;
	height: auto;
	border-radius: 5px;
	font-size: 1rem;
	font-weight: 700;
}

button.classes_play.disable {
	width: 100%;
	color: #fff;
	background: #aaa;
	border: #aaa;
}

button.classes_play i {
	font-size: 1.35rem;
	vertical-align: middle;
	margin-right: 6px;
}


.class_see_wrap {
background: #eee;
min-height: 53vh;
}


.progressbar {
	position: relative;
	width: 100%;
	height: 8px;
	background: #ccc;
	border-radius: 20px;
	margin-top: 0.3rem;
	margin-bottom: 0.3rem;
}

.progressbar span {
	position: absolute;
	top: 0;
	height: 100%;
	background: #e11837;
	border-radius: 20px 0 0 20px;
	z-index: 12;
}


.my_cart_head {
	color: #e11837;
	font-size: 0.9rem,;
	margin-bottom: 1rem;
}
.my_cart_head i  {
	margin-right: 0.5rem;
	vertical-align: middle;
}

.my_cart_body {
	display: flex;
}

.my_cart_body_top {
	width: 70%;
	margin-right: 5%;
}
.my_cart_body_top button {
	border-radius: 5px;
}

.my_cart_body_top button i {
	margin-right:5px;
}

.cart_info {
	width: 27%;
	/* border: 1px solid #e11837; */
	float: right;
	min-width: 220px;
}

.lgray_box {
	display: flex;
	justify-content: space-between;
	background: #edf1f3;
	align-items: center;
	padding: 1rem 1.5rem;
	border-radius: 5px;
}

.my_cart_check {
	display: flex;
	justify-content: space-between;
	background: #edf1f3;
	align-items: center;
	padding: 1rem;
}

.check_del {
	background: #fff;
	border: 1px solid #ddd;
}

.check_del button {}

ul.cart_list li {
	padding: 1rem;
	border: 1px solid #ccc;
	margin-bottom: 1rem;
	border-radius: 5px;
}

ul.cart_list li a {
	display: flex;
}

ul.cart_list li .cart_detail {
	position: relative;
	display: flex;
	/* align-items: center; */
	width: 100%;
	padding-right: 3rem;
	padding-left: 2rem;
}


ul.cart_list li .cart_detail>* {
	display: inline-block;
}



ul.cart_list li .cart_price {
	width: 22%;
	border-left: 1px solid #edf1f3;
	padding: 0.2rem 0 0.2rem 1rem;
	margin-left: auto;
}

ul.cart_list li .cart_price .price {
	color: #e11837;
	font-weight: 700;
	text-align: right;
}

ul.cart_list li .cart_price .origin {}

ul.cart_list li .cart_detail .cart_check {
	position: absolute;
	top:0;
	left: 0;
}

ul.cart_list li .cart_detail .img_wrap {
	width: 20%;
	height: 6rem!important;
	border-radius: 5px;
}

ul.cart_list li .cart_detail .img_wrap img {
	max-width: 100%;
}

ul.cart_list li .cart_detail .cart_desc {
	padding: 0.15rem 1rem;
}

.cart_desc .title {
	font-size: 1.2rem;
	font-weight: 700;
	word-break: keep-all;
}

.cart_desc .teacher {
	font-size: 0.8rem;
	color: #666;
	margin-bottom:  0.5rem ;
}


.cart_desc .period {
	font-size: 0.875rem;
}
.cart_desc .period svg  {
	margin-right: 0.2rem;
}



ul.cart_list li .cart_detail .cart_uncheck {
	position: absolute;
	top: 0;
	right: 0rem;
	z-index: 11;
	float: none !important;
	display: block !important;
}

ul.cart_list li .cart_detail .cart_uncheck button {
	padding: 0;
	min-width: 22px;
	height: 22px;
}

.cart_summary {
	border-top: 1px solid #ccc;
	margin-top: 1rem;
	padding-top: 1rem;
}

.cart_summary:first-child {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}

.cart_summary .title {
	font-weight: 700;
}

.cart_summary .text {
	font-size: 0.9rem;
}

.my_cart_body_inner {
	padding: 1.5rem;
	border: 2px solid #e11837;
}

.cart_summary .price {
	font-weight: 700;
	color: #e11837;
	margin-top: 2rem ;
	margin-bottom: 0.5rem;
}

.cart_agree {
	display: flex;
	margin-top: 1rem;
	border-top: 1px solid #eae8dc;
	padding-top: 1rem;
}
.cart_agree_m {
	display: none;
}

.cart_agree input[type="checkbox"] {
	width: 20px;
}

.cart_agree span {
	width: calc(100% - 20px);
	font-size: 0.9rem;
}

.cart_submit {
	background: #e11837;
	text-align: center;
}

.cart_submit button {
	color: #fff;
	width: 100%;
	padding: 1.5rem;
	height: auto;
	font-size: 1.2rem;
}

.scround {
	border-radius: 20px;
	text-align: center;
	font-size: 0.875rem;
	padding: 0.5rem 1rem;
	margin-right: 0.5rem;
}

.my_purchase_detail_head .flex1 .title {
	margin-left: 1rem;
	font-size: 1.2rem;
	font-weight: 700;
}

.pay_no {
	font-size: 0.9rem;
	color: #666;
	margin-left: 1rem;
}

.my_purchase_detail_head {
	margin-bottom: 1.5rem;
}

.my_purchase_detail_body {}

.my_purchase_detail_body_top {
	width: 68%;
	float: left;
}

.my_purchase_detail_body_inner {
	padding: 1.5rem;
}

.cart_btns {
	margin-top: 1.5rem;
	display: flex;
	justify-content: space-between;
}

.cart_btns.btn2 button {
	border: 1px solid #ccc;
	width: 49%;
	min-width: 1px;
	padding: 1rem;
	font-size: 0.9rem;
	height: auto;
	overflow: hidden;
	text-overflow: ellipsis;
}

.my_like_head {
	margin-bottom: 1.5rem;
}

ul.cart_list.type2 li {
	display: block;
	width: 49%;
}

ul.cart_list.type2 li a {
	display: block;
	position: relative;
}

ul.cart_list.type2 li a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%) rotate(135deg);
	z-index: 11;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #999;
	border-left: 2px solid #999;
	color: #666;
	transition: all ease 0.2s;
}

ul.cart_list.type2 li a.on:after {
	/* transform: translate(0, -50%) rotate(45deg); */
}


ul.cart_list.type2 li .cart_detail {
	width: 100%;
}

.cart_pay_info {
	margin-bottom: 0.5rem;
}

.my_purchase_head {
	margin-bottom: 1.5rem;
}

ul.cart_list.type2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.search_wrap.full {
	width: 70%;
}

.search_wrap.full input {
	width: calc(100% - 114px);
}


/*시스템소개*/

.intro_wrap  {
	margin-top: 2rem;
}


.intro_wrap .img_wrap {
	position: relative;
	color: #fff;
	background:url("http://192.168.219.136:3002/attaches/1695270578831_IqDyYmfa4p.jpeg");
	height: 500px;
	background-size: cover;
}

.intro_wrap .img_wrap h3 {
	font-size: 4rem;
	font-weight: 600;
	position: absolute;
	top:35%;
	width: 100%;
	text-align: center;
	padding: 2rem;
}
.intro_wrap h4 {
	font-size: 2rem;
	font-weight: 600; 
	padding-bottom: 2rem;
}
.intro_wrap h6 {
	font-size: 1.5rem;
	font-weight: 400; 
	color: #FF9996;
	width: 100%;
	padding: 3rem 0;
	line-height: 1.5;
}

.intro_wrap .text_wrap {
	background: #5F4C8C;
	padding: 4rem;
	font-size: 1.2rem;
	color: #fff;
	font-weight: 200;
	line-height: 1.5;
}

/* ----------------------------- */
/* 시스템소개 
/* ----------------------------- */
.red_lable {
	background: #e11837;
	border-radius: 30px;
	max-width: 300px;
	padding: 0.5rem;
	margin: 0 auto;
	color: #fff;
	font-weight: 300;
	text-align: center;
}
.intro_warp  {
	margin-top: 3rem;
}

.intro_head  {
	width: 100%;
	color: #fff;
	background:url("../img/main/intro_bg01.jpg") no-repeat;
	background-size: cover !important;
	text-align: center;
	padding: 6rem 0;
}
.intro_head h2  {
	font-size: 2rem; ;
	line-height: 2rem;
	margin-top: 1.5rem;
}
.intro_head h2 strong {
	display: block;
	font-size: 2.3rem;
	margin-top: 2rem;
}

.intro_warp .sub_txt  {
	text-align: center;
	padding: 5rem 0;
	max-width: 700px;
	margin: 0 auto;
}
.intro_warp .sub_txt h3  {
	margin-top: 1rem;
}
.intro_warp .sub_txt p  {
	font-size: 1rem;
}

.intro_warp .sub_info  {
	background: #eee;
	text-align: left;
	padding: 3rem 5rem;
}
.intro_warp .sub_tit {
	font-weight: 600;
}
.intro_warp .sub_tit .red_bar  {
	width: 10px;
	height: 25px;
	background: #e11837;
	display: inline-block;
	margin-right: 10px;
}

.intro_warp .sub_info h3 {
	margin-bottom: 1rem;
}
.intro_warp .sub_info  .info_list li {
	margin-bottom: 0.3rem;
}

.sub_point  {
	background:url("../img/main/intro_bg02.jpg");
	background-size: cover!important;
	text-align: center;
	padding: 4rem 5rem;
}

.sub_point ul  {
	display: flex;
}

.sub_point ul li  {
	display: inline-block;
	color: #fff;
	flex-grow: 1;
	border-left: 1px solid #eee;
}
.sub_point ul li:first-child {
	border-left: 0; 
}

.sub_point ul li svg  {
	display: block;
	text-align: center;
	margin: 0 auto;
}
.sub_point ul li b {
	display: block;
	font-size: 1.5rem;
}

.intro_warp .sub_main {
	margin:5rem 5rem ;
}

.intro_warp .sub_main .red_bar  {
	width: 10px;
	height: 25px;
	background: #e11837;
	display: inline-block;
	margin-right: 10px;
}

.intro_warp .sub_main h3 {
	margin: 1rem 0;
}

.intro_warp .sub_main ul{
 display:flex;
}

.intro_warp .sub_main ul li   {
	background: #eee;
	border-radius: 10px;
	display: inline-block;
	flex-grow: 1;
	margin-left: 1rem;
	padding: 3rem;
	flex-grow: 1;
}

.intro_warp .sub_main ul li svg {
	display: block;
	margin-bottom: 0.5rem;
}

.intro_warp .sub_main ul li b {
	margin-bottom: 2rem;
	font-size: 1.23rem;
}

.intro_warp .btn_warp  {
	width: 100%;
	color: #fff;
	background:url("../img/main/intro_bg03.jpg");
	background-size: cover!important;
	text-align: center;
	padding: 4rem 0;
	font-size: 1.2rem;
}

.intro_warp .btn_warp button  {
	background: #e11837;
	color: #fff;
	display: flex;
	margin: 0 auto;
	border-radius: 5px;
	padding: 1rem 2rem;
	margin-top: 1rem;
	height: 4rem;
	font-size: 1.2rem;
}
.intro_warp .btn_warp button span {
	padding-top: 6px;
	padding-right: 2rem;
}
.intro_warp .btn_warp button svg  {
	margin-left: auto;
}


/* ----------------------------- */
/* 이용가이드 
/* ----------------------------- */
.guide_warp {
	margin-top: 3rem;
}
.guide_warp .intro_head  {
	width: 100%;
	color: #fff;
	background:url("../img/main/guide_bg01.jpg");
	background-size: cover !important;
	text-align: center;
	padding: 6rem 0;
}

.intro_head h2 strong {
	margin-top: 1rem;
}
.guide_info  {
	padding: 3rem;
}

.guide_info .red_lable {
font-size: 1.2rem;
}

.guide_info p  {
	margin: 1.5rem 0;
	text-align: center;
}
.guide_info ul {
	display: block;
}
.guide_info ul li  {
	display: inline-block;
	background: #eee;
	width: 47%;
	margin:0.5rem;
	position: relative;
	padding: 2rem;
	border-radius: 5px;
}
.guide_info ul li:first-child {
	margin-left: 0.5rem!important;
}
.guide_info ul li b {
	display: block;
	margin-bottom: 1rem;
	font-size: 1.5rem;
}
.guide_info li svg  {
 position: absolute;
 right: 2rem;
 top:2rem;
}

.class_cate {
	padding: 5rem;
	background: #eee;
	text-align: center;
}
.class_cate h3  {
	margin-bottom: 1rem;
	font-weight: 700;
}
.class_cate p  {
	margin-bottom: 1.5rem;
}
.class_cate ul li  {
	width: 25%;
	display: inline-block;
	padding: 0.5rem;
}
.class_cate ul li button {
	background: #e11837;
	text-align: center;
	padding: 2rem;
	border-radius: 5px;
	min-height: auto;
	height: 271px;
	width: 100%;
	color: #fff;
	white-space: normal!important;
}
.class_cate ul li button img  {
	display: block;
	margin: 0 auto;
	margin-bottom: 1rem;
}
.class_cate ul li button b {
	font-size: 1.2rem;
	display: block;
	margin-bottom: 1rem;
}
.guide_warp .btn_warp button svg  {
	margin-left: auto;
}



.guide_warp .btn_warp  {
	width: 100%;
	color: #fff;
	background:url("../img/main/guide_bg02.jpg");
	background-size: cover!important;
	text-align: center;
	padding: 4rem 0;
	font-size: 1.2rem;
}

.guide_warp .btn_warp button  {
	background: #e11837;
	color: #fff;
	display: flex;
	margin: 0 auto;
	border-radius: 5px;
	padding: 1rem 2rem;
	margin-top: 1rem;
	height: 4rem;
	font-size: 1.2rem;
}
.guide_warp .btn_warp button span {
	padding-top: 6px;
	padding-right: 2rem;
}
.guide_warp .btn_warp button svg  {
	margin-left: auto;
}









/* ----------------------------- */
/* 구매내역  
/* ----------------------------- */
.my_buy_wrap  {
	
}
.my_buy_wrap .my_buy_head {
	margin-bottom: 1rem;
}
.my_buy_wrap .my_buy_body  .cart_detail {
	padding-left: 0;
} 
.my_buy_body .cart_list  li .buy_content  {
	width: 100%!important;
	height: auto!important;
	max-width:100%!important ;
	text-align:left;
	padding: 0;
	position: relative;
}
.my_buy_body .cart_list  li .buy_content .title  {
	margin-bottom: 0.5rem;
}

.my_buy_body .cart_list  li .buy_content .period  {
	margin-bottom: 0.5rem;
}
.my_buy_body .cart_list  li .buy_content .arrow  {
 position: absolute;
 top:1rem; 
 right: 1rem;
}
/* ----------------------------- */
/* 구매상세내역  
/* ----------------------------- */

.my_buy_detail_body_top {
	width: 70%;
	/* margin-right: 5%; */
	float: left;
}

.my_buy_detail_body_top .cart_detail {
	padding-left: 0!important;
}

.my_buy_detail_body.has_float {
	margin-top: 1.5rem;
}

.my_buy_detail_body_inner {
	padding: 1.5rem;
}

.pagination li button  {
background-color: #fff!important;
}

.my_buy_detail_body_inner {
border:1px solid #ccc;
border-radius: 5px;
}




/* ----------------------------- */
/* 결제완료 
/* ----------------------------- */
.pay_result_warp  {
	 border: 1px solid #ccc; 
	 padding: 5rem;
	 margin: 0 auto;
}

.pay_result_warp .result_head  {
	display: block;
	text-align: center;
	margin-bottom: 3rem;
}
.pay_result_warp .result_head span {
	display: block;
	font-size: 2rem;
}
.pay_result_warp .result_head p{
	margin-top: 1rem;
}
.pay_result_warp .result_head p span{
	font-size: 1.2rem;
}

.pay_result_warp .result_title  {
font-size: 1.2rem;
}

.pay_result_warp .result_title .red_bar  {
	width: 10px;
	height: 25px;
	background: #e11837;
	display: inline-block;
	margin-right: 10px;
}

.result_list {
	border-top: 2px solid #000 ;
	margin-bottom: 3rem;
}
.result_list li {
	padding: 0.7rem;
	border-bottom: 1px solid #eee;
}
.result_list li .title  {
	width: 25%; 
	display: inline-block;

}

.result_list li .con  {
	width: 75%; 
	display: inline-block;
}
.result_list .total  {
	background: #eee;
	padding: 1.5rem 0.5rem;

}

.result_list .btn_warp  {
	width: 100%;
	color: #fff;
	background:url("../img/main/guide_bg02.jpg");
	background-size: cover!important;
	text-align: center;
	padding: 4rem 0;
	font-size: 1.2rem;

}

.pay_result_warp .btn_warp button {
	background: #e11837;
	color: #fff;
	display: flex;
	margin: 0 auto;
	border-radius: 5px;
	padding: 1rem 2rem;
	margin-top: 1rem;
	height: 4rem;
	font-size: 1.2rem;
}
.pay_result_warp .btn_warp button span {
	padding-top: 6px;
	padding-right: 2rem;
	vertical-align: middle;
}
.pay_result_warp .btn_warp button svg  {
	margin-left: auto;
}

/*결제 상세*/
.M_listgo  {
	display: none;
	margin: 0 auto;
	margin: 1rem 0;
}


.classes_desc .progressbar {
	margin-bottom: 1rem;
}

@media (max-width:1000px) {
	#my_info_form ul li  {
		display: flex;
		flex-flow: column;
	}
	#my_info_form ul li .field_label  {
		width: 100%;
		text-align: left;
	}
	#my_info_form ul li .field_input {
		width: 100%;
	}

	form ul li .field_label label span  {
		font-size: 0.9rem;
	}
	form ul li .field_label .red span {
		font-size: 0.9rem;
	}

	form ul li .field_label .red span:nth-child(2) {
		display: none;
	}


	form ul li .field_input {
		width: 80%;
	}

	form ul li .field_input.half {
		width: 40%;
	}

}

@media (max-width:840px) {
	ul.classes_list li {
		width: 49%;
	}

	ul.classes_list li {
		width: 49%;
	}

	ul.classes_list li:nth-child(n+3) {
		/* display: none; */
	}
}

@media (max-width:768px) {
	.sub_page_top {
		display: block;
	}

	.sub_page_top .title {
		text-align: center;
		margin-bottom: 1rem;
		font-size: 1.8rem;
	}

	.class_head_top .search_wrap {
		width: 100%;
	}

	.class_head_top .search_wrap input {
		width: calc(100% - 114px);
	}

	.class_view_top {
		display: block;
	}

	.class_view_top .img_wrap,
	.class_view_top .text_wrap {
		width: 100%;
	}

	.class_view_top .text_wrap {
		padding: 1rem;
	}
	.class_view_top .text_wrap .class_title {
		font-size: 1.3rem;
	}

	.class_view_body {
		/* display:block; */
		margin-top: 0;
	}

	.class_view_desc {
		float: none;
		width: 100%;
		margin: 1rem auto;
	}

	.class_view_desc .desc #desc1 .hr_contnet {
		padding: 1rem;
	}

	.class_view_menu.class_view_menu {
		float: none;
		min-width: 100%;
	}

	.class_view_menu .title {
		display: none;
	}


	.class_see_head>a span {
		padding: 0.2rem 0.3rem;
	}

	.class_see_head>a {
		padding: 0.5rem;
	}

	.class_see_body {
		display: block;
	}

	.class_see_body .curriculum li {
		border-radius: 0px!important;
		border:0; 
		border-bottom:1px solid #dee2e3;
		margin-bottom:0;
		padding-left: 2rem;
	}
	.class_see_body .curriculum li .title {
		font-size: 1rem;
	}
	ul.curriculum li .time {
		margin-top: 0;
		font-size: 0.8rem;
	}
	ul.curriculum li .time svg {
		width: 15px;
		margin-top: 0px;
	}

	.movie_section {
		width: 100%;
	}

	.movie_desc {
		height: 100px;
		overflow: hidden;
		border-bottom: 1px solid #ccc;
		display: none;
	}

	.movie_desc.on {
		height: auto;
		overflow: overlay;
	}

	.movie_desc:after {
		content: '';
		position: absolute;
		top: 3rem;
		right: 2rem;
		transform: translate(0, -50%) rotate(225deg);
		z-index: 11;
		display: block;
		width: 10px;
		height: 10px;
		border-top: 2px solid #666;
		border-left: 2px solid #666;
		color: #666;
		transition: all ease 0.2s;
	}

	.movie_desc.on:after {
		transform: translate(0, -50%) rotate(45deg);
	}

	.curriculum_section {
		width: 100%;
	}

	.progressbar {
		height: 10px;
	}
	.classes_desc .classes_myroom .classes_period{
		font-size: 0.9rem;
	}
	.classes_desc .classes_myroom .classes_process{
		font-size: 0.9rem;
	}

	.board_list_top .board_btn {
		flex: left;
		width: 100%;
		margin-bottom: 20px;
	}
	.board_list_top .search_wrap.only1  {
		width: 100%;
	}

	.board_list_top .search_wrap.only1 select{
		width: 100%;
	}


	#member_wrap {
		padding: 0;
	}

	.my_cart_body {
		display: block;
	}

	.my_cart_body_top,
	.cart_info {
		width: 100%;
		float: none;
		margin: 0 auto;
	}	
	.my_cart_body_inner  {
		display: none;
	}


	ul.cart_list li a {
		display: block;
	}

	ul.cart_list li .cart_detail {
		display: block;
	}

	ul.cart_list li .cart_detail>* {
		display: inline-block;
		float: left;
	}

	ul.cart_list li .cart_detail:after {
		display: block;
		height: 0;
		clear: both;
		float: none;
		content: "";
	}

	ul.cart_list li .cart_price {
		display: block;
		float: none;
		clear: both;
		margin-left: 31%;
		border-left: 0;
	}

	ul.cart_list li .cart_price>* {
		display: inline-block;
	}

	.my_purchase_detail_body_top ul.cart_list li .cart_price {
		margin-left: 25%;
	}

	.cart_agree_m {
    background: #fff;
    border-top: 1px solid #ccc;
    padding: 1rem;
    font-size: 0.8rem;
    text-align: left;
		display: block;
	}

	.cart_agree_m > div {
		display: flex;
	}



	.cart_submit {
		position: fixed;
		bottom: 0;
		width: 100%;
		left: 0;
		z-index: 11;
	}

	ul.cart_list.type2 li {
		width: 100%;
	}

	ul.cart_list.type2 li .cart_detail .cart_desc {
		width: 75%
	}

	.my_purchase_detail_body_top {
		width: 100%;
		float: none;
		clear: both;
	}

	.board_list_top .search_wrap {
		float: none;
		width: 100%;
		position: relative;
	}

	.m_fl_1f1>*:first-child {
		width: 100%;
		float: left;
	}

	.m_fl_1f1>*:nth-child(2) {
		width: calc(100% - 230px);
		position: absolute;
		right: 0;
		/*
		left: 50%;
		transform: translate(-50%, 0);
		*/
		z-index: 9;
	}

	.m_fl_1f1>*:last-child {
		width: 110px;
		float: right;
	}

	.board_list_top .board_count {
		float: none;
		height: auto;
		line-height: inherit;
		width: 100%;
		margin-bottom: 0.5rem;
	}



	.article_list_body .article_head {
		display: none;
	}

	.article_list_body .article_head li,
	.article_list_body .article_body li a {
		display: block;
		padding: 1rem 3rem 1rem 0;
	}

	.article_list_body .articles li .no {
		display: none;
	}

	.article_list_body .articles li .subject,
	.article_list_body .articles li .subject11 {
		width: calc(100% - 62px);
		font-size: 1.1rem;
	}

	.article_list_body .articles li .attach_file {
		position: absolute;
		right:3.3rem;
		top: 50%;
		transform: translate(0, -50%);
		z-index: 11;
		width: auto;
	}

	.article_list_body.notice .articles li .attach_file {
		right: 1rem;
	}




	.article_list_body .articles li .attach_file .fa-download  {
		font-size: 1.3rem;
	}

	.article_list_body.req11 .articles li .attach_file {
		right: 5rem;
	}
	.article_list_body.req11 .article_body li>.reply {
		padding: 1rem;
	}

	.article_list_body .articles li .date,
	.article_list_body .articles li .status {
		width: auto;
		display: inline-block;
		font-size: 0.9rem;
	}

	.article_list_body .articles li .count {
		width: auto;
		display: inline-block;
		padding: 0;
		font-size: 0.9rem;
	}

	.article_list_body .articles li .count:before {
		content: "·";
		padding-right: 0.5rem;
		color: #ccc;
		font-size: 0.9rem;
	}

	.article_list_body .articles li .type {
		width: 100%;
		text-align: left;
		font-size: 0.9rem;
	}

	.article_list_body.faq .articles li .type {
		margin-left: 15%;
		font-size: 0.9rem;
	}

	.article_list_body.faq .article_body li .qna_label:before,
	.article_list_body.faq .article_body li>.reply:before {
		left: 4%;
	}

	.article_list_body .articles li .subject_faq {

		width: 90%;
		margin-left: 15%;
		font-size: 1rem;
	}

	
	.article_list_body.faq .article_body li>a.on+.reply {
		padding:1rem 1rem 1rem 15%;
	}

	

	.article_list_body .article_body li>a.on+.reply > p  {
		margin-bottom: 0.5rem!important;
	}


	.article_list_body.faq .article_body li>.reply {
		padding-left: 10%;
	}


	.class_head .class_category .btn, .class_head .class_category button {
		min-width: auto;
    height: 2rem;
	}

	.classes_title {
		font-size: 1rem;
	}

	/*회원가입*/
	.join_info h3 {
		width: 100%;
	}
	.join_info .con {
		width: 100%;
    display: flex;
    flex-flow: column;
	}

	.join_info .idcon button{
		margin: 0;
		margin-top: 5px;
		width: 100%;
	}

	.guide_info  {
		padding: 2rem;
	}

	.curriculum_section .curriculum {
		height: 302px;
	}

}

@media (max-width:576px) {
	.my_info_body {
		padding: 1rem;
	}

	.my_info_body ul li {
		padding: 0.5rem 0;
	}

	form ul li .field_input,
	form ul li .field_input.half {
		width: 78%;
	}

	.bottom_btns > * {
		min-width: 6rem;
	
		padding: 0.5rem 2.5rem;
	}

	.article_list_body .articles li .subject {
		width: calc(100% - 40px);
		font-size: 1rem;
	}

	.sns_group button > span  {
		display:none;
	}
	.sns_group button {
		min-width: auto!important;
	}
	.sns_group .snsbox {
		text-align: center;
	}
	.classes_price {
		font-size: 1rem;
	}
	.classes_desc {
		padding: 0.7rem;
	}
	
.class_tag {
	padding: 0.3rem 0.35rem;
	font-size: 0.7rem;
	}

	.my_room_wrap .my_info_head .lgray_box li:first-child  {
		padding-right: 10px!important;
	}

	.classes_list li .classes_hover button .fa-2x {
		font-size: 1.5rem;
	}

	.classes_list li .classes_hover button span {
		font-size: 1rem!important;
	}
	.class_view_menu_inner  {
		padding: 1rem;
	}

	.breadcrumb li a {
		font-size: 0.8rem;
		margin-top: 5px;
	}
	.breadcrumb li a:before {
		font-size: 0.8rem;
	}

	.class_view_top .text_wrap .btn_share {
		min-width: auto;
		top: 12px;
	}

	.class_view_top .text_wrap .class_info .title {
		width: 55%;
	}

	.class_view_top .text_wrap .price > span {
		font-size: 1.3rem;
	}
	.class_view_top .text_wrap .price small {
		padding-top:4px;
	}
	.class_view_desc .desc #desc1 h3, .movie_desc h3 {
		font-size: 1.2rem;
	}
	.class_view_desc .desc #desc2 h3 {
		font-size: 1.2rem;
	}
	

	.class_view_register  {
		position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
		z-index: 10;
	}

	.class_view_menu_inner  {
		display: none;
	}
	.class_view_menu.class_view_menu {
		border:0;
	}
	.class_see_head {
		padding:1rem;
	}

	.class_see_head > .title > .title_btn {
		display: none;
	}
	.class_see_head>a {
		display: none;
	}
	.curriculum_section .desc dl {
		font-size: 0.9rem;
	}
	.curriculum_section .desc dl dt {
		width: 40%;
	}


	.class_view_desc > ul li button {
		font-size: 1rem;
	}

	.class_view_top .text_wrap .class_category {
		padding: 0.3rem 0.5rem;
		font-size: 0.8rem;
	}
	
	.class_view_top .text_wrap .class_tags {
		margin-top:1rem;
	}

	.class_view_top .text_wrap .class_tags .tag {
		padding: 0.1rem 0.35rem;
    font-size: 0.8rem;
		margin-bottom: 0.5rem;
	}

	.classes_img  {
		height: 100px;
	}

	.classes_img .heart {
		top:0.5rem;
		right: 0.5rem;
	}

	.board_list_wrap {
		margin-top: 1.5rem;
	}

	.qna .board_count  {
		padding-top: 11px;
	}

	.board_view_wrap {
		margin-top: 1.5rem;
	}
	.article_view_body .article_body{
		padding: 1rem;
	}

	.intro_wrap .img_wrap {
		height: 400px;
	}

	.intro_wrap .img_wrap h3 {
		font-size: 2rem;
		font-weight: 600;
		top: 26%;
		width: 100%;
	}
	.intro_wrap h4 {
		font-size: 2rem;
		font-weight: 600; 
		padding-bottom: 1rem;
	}
	.intro_wrap h6 {
		font-size: 1.2rem;
		font-weight: 200; 
		color: #FF9996;
		width: 100%;
		padding: 1.5rem 0;
		line-height: 1.5;
	}
	
	.intro_wrap .text_wrap {
		background: #5F4C8C;
		padding: 2rem;
		font-size:1rem;
		color: #fff;
		font-weight: 200;
		line-height: 1;
	}

	.cart_list li {

	}
	
	.class_view_top .img_wrap {
		height: 14rem!important;
	}
	.class_see_head .title {
		font-size: 1.2rem;
	}

	.class_see_head .title span {
		margin-right: 1rem;
    display: block;
	}

	.movie_section .movie_none {
		min-height: auto;
		height: 14rem!important;
		padding-top: 3rem;
	}
	.movie_section .movie_none svg {
		width: 60px;
	}

	.movie_section .movie_none span {
		font-size: 1.1rem;
		margin-top: 0px;
	}

	.cart_detail .img_wrap {
		width: 33%!important;
	}	
	.cart_detail .cart_desc {
		width: 67%!important;
	}	
	.cart_detail .cart_price {
		width: 67%!important;
	}	




/* ----------------------------- */
/* 시스템소개 
/* ----------------------------- */
.intro_head {
	padding: 3rem;
}
.intro_head h2 {
	font-size: 1.4rem;
}
.intro_head h2 strong {
	font-size: 2rem;
	margin-top: 1rem;
}
.intro_warp .sub_txt {
	padding: 3rem;
}
.intro_warp .sub_info {
	padding: 3rem;
}
.sub_point {
	padding: 1rem 0.5rem 1rem 2rem;
}

.sub_point ul {
	display: block;
}
.sub_point ul li  {
	display: inline-block;
	width: 44%;
	border: 0;
	margin: 0.5rem 1rem 0.5rem 0;
	padding: 0.5rem;
	border-radius: 10px;
	border: 1px solid #eee;
}

.sub_point ul li:first-child {
	border:1px solid #eee
}

.sub_point ul li b  {
	font-size: 1rem;
}
.sub_point ul li span {
	font-size: 0.9rem;
}

.intro_warp .btn_warp > p {
	font-size: 1rem;
	padding: 0px 2.5rem;
}

.intro_warp .sub_main {
	margin:3rem 1rem;
}

.intro_warp .sub_main ul {
	display: block;
	width: 100%;
}
.intro_warp .sub_main ul li  {
	display: block;
	margin: 0;
	margin-bottom: 0.5rem;
	padding: 1rem 1rem 1rem 6rem;
	position: relative;

}
.intro_warp .sub_main ul li svg {
	position: absolute;
	top:1.5rem;
	left: 1.5rem;
}

.btn_warp {
	padding: 3rem;
}


/* ----------------------------- */
/* 이용가이드
/* ----------------------------- */

.guide_warp .intro_head{
	padding: 3rem;
}

.guide_info ul li {
	width: 100%;
	padding: 1rem 5rem 1rem 2rem;
}
.class_cate {
	padding: 2rem;
}
.class_cate p  {
	margin-bottom: 1rem;
}
.class_cate ul li {
	width: 100%;
}

.class_cate ul li button{
	text-align: center;
	position: relative;
	padding: 2rem 3rem 2rem 2rem;
	height: auto;
}
.class_cate ul li button img {
	display:block;
	width: 56px;
	margin-bottom: 0;
}
.class_cate ul li button b {
	display: inline-block;
	margin-bottom: 0;
	width: 100%;
	margin-top: 0.5rem;
}
.class_cate ul li button svg  {
	position: absolute;
	top: 3rem;
	right: 1rem;
	width: 25px;
}

/* ----------------------------- */
/* 결제완료 
/* ----------------------------- */

.pay_result_warp  {
	padding: 3rem 2rem;
}
.pay_result_warp .result_head {
	margin-bottom: 1.5rem;
}
.pay_result_warp .result_head span {
	font-size: 1.5rem;
}
.pay_result_warp .result_head p {
	margin-top: 0.5rem;
}

.pay_result_warp .result_list  {
	margin-bottom: 1.5rem;
}
.pay_result_warp .btn_warp {
	padding: 0rem;
}
.pay_result_warp .btn_warp button {
	margin: 0;
	width: 100%;
}


/* ----------------------------- */
/* 구매내역
/* ----------------------------- */
.my_buy_head .lgray_box   {
	display: block;
}
.my_buy_head select{
display: block;
width: 100%;
margin-bottom: 0.5rem;
}

.my_buy_head .search_wrap  input  {
	display: block;
	width: 100%;
	margin-bottom: 0.5rem;
}
.my_buy_head .search_wrap button {
	display: block;
	width: 100%;
}
.my_buy_body .cart_list.type2 li {
	padding: 1rem;

}
.my_buy_body .cart_list li .cart_detail .img_wrap {
	width: 33%!important;
}
.my_buy_body .cart_list.type2 li .cart_detail .cart_desc {
	width:67%!important;
}
.my_buy_body .cart_list li .buy_content .arrow {
	right: 0;
}

/* ----------------------------- */
/* 결제상세보기
/* ----------------------------- */
.M_listgo  {
	display: inline-block;
}

.my_buy_detail_head .lgray_box   {
	display: block;
}
.my_buy_detail_head .lgray_box .flex2 {
	display: none;
}
.my_buy_detail_wrap .my_buy_detail_body_top {
	float: none;
	width: 100%;
}
.my_buy_detail_wrap .cart_price  {
	width:69%!important
}


/* ----------------------------- */
/* 강좌시청
/* ----------------------------- */
.curriculum_section .desc{
	padding: 1rem;
}


.curriculum_section .desc .title {
font-size: 1.2rem;
margin-bottom: 0;
}
.progress_wrap {
	margin-top:0.2rem;
}
.progress_wrap .timeline {
	font-size: 0.9rem;
}
.progress_wrap .timeline span {
	margin-left: -5px;
}
.progress_wrap .progress_per {
	margin-top: 0px;
	font-size: 0.9rem;
}


/* ----------------------------- */
/* 수강바구니
/* ----------------------------- */

.cart_desc .title {
	font-size: 1.1rem;
}
.cart_desc .teacher {
	margin-bottom: 0;
}
ul.cart_list li .cart_price {
	margin-left: 32%;
}

ul.cart_list li .cart_detail .img_wrap {
	height: 5rem!important;
}
.lgray_box {
	padding: 0.5rem 1em;
	margin-bottom: 1rem!important;
}
.lgray_box .flex2 button > span{
	display: none;
	margin-bottom: 2px;
}




}
