@charset "utf-8";

#header a.btn_alram {display:block;float:left;position:relative;width:30px;}
#header a.btn_alram i {font-size:24px;}
#header a.btn_alram span.dot {display:block;position:absolute;right:6px;top:34px;width:6px;height:6px;background:#f00001;border-radius:50%;}

@media screen and (max-width:980px) {
#header a.btn_alram span.dot {right:6px;top:14px;}
}

#pro_wrap {position:relative;width:100%;max-width:1200px;margin:0 auto;letter-spacing:0;}
#pro_wrap:after {display:block;visibility:hidden;clear:both;content:""}
#pro_wrap h3 {display:block;margin:0 0 30px 0;font-size:16px;font-weight:500;}

#pro_nav {display:block;position:sticky;float:left;left:0;top:100px;width:220px;padding:30px 30px;}
#pro_nav:after {display:block;visibility:hidden;clear:both;content:""}
#pro_nav a {display:block;margin:0 0 30px 0;color:#999;font-size:16px;line-height:24px;}
#pro_nav a:last-child {margin:0;}
#pro_nav a i {display:inline-block;width:24px;height:24px;margin:0 6px 0 0;color:#999;font-size:16px;text-align:center;line-height:22px;border:solid 1px #ddd;border-radius:3px;}
#pro_nav a .num {display:inline-block;width:24px;height:24px;margin:0 6px 0 0;color:#999;font-size:16px;text-align:center;line-height:22px;border:solid 1px #ddd;border-radius:3px;}
#pro_nav a .check {display:inline-block;width:24px;height:24px;margin:0 6px 0 0;color:#f4c33a;text-align:center;line-height:24px;background:#fffcd7;border:solid 1px #fffcd7;border-radius:3px;}
#pro_nav a .check i {font-size:16px;}
#pro_nav a .info {display:inline-block;width:24px;height:24px;margin:0 6px 0 0;color:#ff402b;text-align:center;line-height:24px;background:#ffedeb;border:solid 1px #ffedeb;border-radius:3px;}
#pro_nav a .info i {font-size:16px;}
#pro_nav a.active {color:#111}
#pro_nav a.active .num {color:#fff;background:#57586c;border:solid 1px #57586c;}

#pro_nav .pro_photo {display:block;margin-bottom:20px;}
#pro_nav .pro_photo .profile_img {display:block;width:100px;margin:0 auto 12px auto;}
#pro_nav .pro_photo .profile_img img {width:100%;height:auto;}
#pro_nav .pro_photo a {display:block;width:100%;font-size:14px;text-align:center;line-height:34px;background:#fff;border:solid 1px #ddd;border-radius:8px;}


#pro_cont {display:block;position:relative;float:right;width:calc(100% - 220px);min-height:540px;padding:30px 30px;border-left:solid 1px #ddd;}

#pro_cont h4 {position: relative; margin:10px 0; font-size:14px;}
#pro_cont h4 .char_right {
    display: block;
    position: absolute;
    right: 15px;
    top: -10px;
    color: #999;
    font-size: 12px;
    font-weight: 400;
    line-height: 48px;
    cursor: pointer;
}

#pro_cont h4 {
    position: relative;
    margin: 10px 0;
    font-size: 14px;
    line-height: 30px; /* 버튼 높이에 맞춰 타이틀 높이 조절 */
}

/* 에디터 사용 버튼 스타일 */
.btn_editor_open {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%); /* 세로 중앙 정렬 */
    background-color: #4a90e2; /* 버튼 색상 */
    color: #fff;
    border: none;
    padding: 5px 12px;
    font-size: 12px;
    border-radius: 3px;
    cursor: pointer;
    font-weight: bold;
    transition: background 0.2s;
}

.btn_editor_open:hover {
    background-color: #357abd;
}



@media screen and (max-width:980px) {
#pro_nav {float:none;top:56px;width:100%;padding:20px 10px;background:#fff;border-bottom:solid 1px #eee;z-index:1;}
#pro_nav a {float:left;margin:0 8px 8px 0;font-size:14px;}
#pro_nav a:last-child {margin:0;}
#pro_nav a .num {width:22px;height:22px;font-size:14px;line-height:22px;}
#pro_nav a .check {width:22px;height:22px;font-size:14px;line-height:22px;}
#pro_nav a .info {width:22px;height:22px;font-size:14px;line-height:22px;}

#pro_cont {float:none;width:100%;padding:30px 20px;border-left:none;}
}


ul.form {}
ul.form li {display:block;position:relative;margin:0 0 40px 0;padding:0 0 0 140px;}
ul.form li:last-child {margin:0;}
ul.form li.gap {margin:0 0 60px 0;padding:0 0 60px 140px;border-bottom:solid 1px #eee;}
ul.form li label {display:block;position:absolute;left:0px;top:0px;font-size:14px;font-weight:500;}
ul.form li .pro_photo {display:block;position:absolute;left:0;top:0;}
ul.form li .pro_photo .profile_img {display:block;width:100px;margin:0 auto 12px auto;}
ul.form li .pro_photo .profile_img img {width:100%;height:auto; border-radius:50%;}
ul.form li .pro_photo a {display:block;width:100%;font-size:14px;text-align:center;line-height:34px;background:#fff;border:solid 1px #ddd;border-radius:8px;}
ul.form li .pro_photo label {display:block;margin-top: 120px;width:100%;font-size:14px;text-align:center;line-height:34px;background:#fff;border:solid 1px #ddd;border-radius:8px;}
ul.form li .frm_info {margin:8px 0 0 0;color:#999;font-size:12px;font-weight:400;}


@media screen and (max-width:980px) {
ul.form li {padding:0;}
ul.form li.gap {padding:0 0 60px 0;}
ul.form li label {position:relative;margin:0 0 12px 0;}
ul.form li .pro_photo {position:relative;width:100px;margin:0 auto 20px auto;}

ul.form li .pro_photo label {margin:0;}
}


.w_div {display:block;position:relative;padding:0 0 0 140px;border:solid 1px #eee;border-radius:5px;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.w_div:after {display:block;visibility:hidden;clear:both;content:""}
.w_div.w_padd {}
.w_div.w_padd2 {padding:0 50px 0 580px}
.w_div:hover {border:solid 1px #aaa}
.w_div.w_mgn {margin:0 0 5px 0;}
.w_div.w_error {margin:0 0 40px 0;border:solid 1px #f00001;}
.w_div .label {display:block;position:absolute;left:15px;top:0;font-size:12px;font-weight:400;line-height:48px;}
.w_div .f_input {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div .f_input.disabled {
  background-color: #f0f0f0; /* 회색 배경 */
  color: #999;              /* 흐린 글자색 */
  cursor: not-allowed;      /* 금지 표시 커서 */
  border-color: #ddd;
  opacity: 0.7;             /* 약간 투명하게 */
}
.w_div .text {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div .textarea {display:block;width:100%;height:140px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div textarea {display:block;width:100%;height:140px !important;padding:10px;font-size:14px;font-weight:300;line-height:140%;background:none;border:none;resize:none;}
.w_div select {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div .sns {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div .won {display: inline-block;font-size: 14px; line-height: 48px;}
.w_div .f_input.txt_time{display: inline-block; width:80px;}
.w_div .f_input.txt_pay{display: inline-block; width:100px;}
.w_div .f_input.txt_day{display: inline-block; width:100px;}
.w_div .issued {
	display: flex;
	align-items: center;      /* 세로 정중앙 정렬 */
	padding: 15px;            /* 적절한 안쪽 여백 */
	min-height: 45px;         /* 최소 높이 설정 */
	font-size: 12px;
}

.w_div.chk_box {
	display: flex;
	align-items: center;    /* 세로 정중앙 정렬 */
	gap: 20px;               /* 요소 사이 간격 */
	height: 45px;           /* 부모 박스 높이에 맞춤 */
	font-size: 12px;
}

.w_div.chk_box input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.w_div.chk_box label {
  display: flex;
  align-items: center;    /* 아이콘과 텍스트 세로 정렬 */
  cursor: pointer;
  gap: 4px;
  font-size: 16px;
}

.w_div .arim {display:block;width:100%;min-height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div .arim .setting {margin-right:50px;}
.error {display:block;position:absolute;left:0;right:0;bottom:-25px;color:#f00001;font-size:12px;}
.none {display:none;}



.w_div2 {display:block;position:relative;padding:0 0 0 0;border:solid 1px #eee;border-radius:5px;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.w_div2:after {display:block;visibility:hidden;clear:both;content:""}
.w_div2.w_padd {}
.w_div2.w_padd2 {padding:0 50px 0 580px}
.w_div2:hover {border:solid 1px #aaa}
.w_div2.w_mgn {margin:0 0 20px 0;}
.w_div2.w_error {margin:0 0 40px 0;border:solid 1px #f00001;}
.w_div2 .label {display:block;position:absolute;left:15px;top:0;font-size:14px;font-weight:400;line-height:48px;}
.w_div2 .f_input {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:25px;background:none;border:none;}
.w_div2 .text {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div2 .textarea {display:block;width:100%;height:140px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div2 textarea {display:block;width:100%;height:140px;padding:10px;font-size:14px;font-weight:300;line-height:120%;background:none;border:none;resize:none;}
.w_div2 .sns {display:block;width:100%;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}

.w_div2 .arim {display:block;width:100%;min-height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.w_div2 .arim .setting {margin-right:50px;}

.w_div2.content {margin:20px 0;padding:20px;}

.w_div2 .f_input.small {height:100px;}


.char_count {display:block;position:absolute;right:15px;bottom:0;color:#999;font-size:12px;font-weight:400;line-height:48px;cursor:pointer;}
.char_count2 {display:block;position:relative;margin:10px 0;color:#666;font-size:12px;font-weight:400;text-align:right}
.char_count3 {display:block;position:absolute;right:45px;bottom:0;color:#999;font-size:12px;font-weight:400;line-height:48px;cursor:pointer;}

.char_right {display:block;position:absolute;right:15px;bottom:0;color:#999;font-size:12px;font-weight:400;line-height:48px;cursor:pointer;}
.char_right button {color:#000;}

.char_right2 {display:block;position:absolute;right:5px;bottom:0;color:#999;font-size:12px;font-weight:400;line-height:48px;cursor:pointer;}
.char_right2 button {color:#000;}


.btn_auth  {display:block;position:absolute;right:0;bottom:0;color:#666;height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}

ul.form li.full {padding:0;}
ul.form li.full textarea {height:320px;}
ul.form li.full .char_count2 {padding:0 10px;}

ul.form li.full .w_full textarea {
	padding:5px;
	height:320px !important;
	line-height: 150%;
	}

.pc {display:;}
.mobile {display:none;}

@media screen and (max-width:480px) {
	.mobile {display:block;}
	.pc {display:;}
}



@media screen and (max-width:980px) {
.w_div {padding:10px;}
.w_div.w_padd {/*padding:10px 50px 10px 10px*/}
.w_div.w_padd2 {padding:10px 50px 10px 10px}
.w_div .label {position:relative;left:0;margin:0 0 12px 0;line-height:normal;}
.w_div .arim .setting {margin-right:50px;display: inline-block;}
}

/* select */
.selec {display:block;position:relative;width:100%;}
.selec.half {float:left;width:50%;}
.selec a {display:block;width:100%;padding:0 10px;color:#999;font-size:14px;line-height:48px;}
.selec:after {content:"\e941";display:block;position:absolute;right:10px;top:0px;width:40px;height:48px;font-family:"xeicon";color:#ccc;font-size:14px;text-align:center;line-height:48px;background:none;z-index:1;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.selec.selected:after {
-webkit-transform:rotate(-180deg);-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-o-transform:rotate(-180deg);transform:rotate(-180deg);
}

.selec_layer {display:none;position:absolute;left:0;right:0;top:52px;/*height:240px;*/overflow-y:auto;padding:5px 0;background:#fff;border-radius:10px;box-shadow:0 0 10px rgba(0,0,0,0.1);z-index:3;}
.selec_layer a {display:block;padding:0 10px;color:#111;font-size:14px;line-height:40px;}
.selec_layer a:hover {background:#eee;}
.selec_layer a.chk {font-weight:700;}


.selec2 {display:block;position:relative;width:100%;}
.selec2.half {float:left;width:50%;}
.selec2 a {display:block;width:100%;padding:0 10px;color:#999;font-size:14px;line-height:48px;}
.selec2:after {content:"\e941";display:block;position:absolute;right:10px;top:0px;width:40px;height:48px;font-family:"xeicon";color:#ccc;font-size:14px;text-align:center;line-height:48px;background:none;z-index:1;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.selec2.selected:after {
-webkit-transform:rotate(-180deg);-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-o-transform:rotate(-180deg);transform:rotate(-180deg);
}


.selec3 {display:block;position:relative;width:100%;}
.selec3.half {float:left;width:50%;}
.selec3 a {display:block;width:100%;padding:0 10px;color:#999;font-size:14px;line-height:48px;}
.selec3:after {content:"\e941";display:block;position:absolute;right:10px;top:0px;width:40px;height:48px;font-family:"xeicon";color:#ccc;font-size:14px;text-align:center;line-height:48px;background:none;z-index:1;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.selec3.selected:after {
-webkit-transform:rotate(-180deg);-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-o-transform:rotate(-180deg);transform:rotate(-180deg);
}


.tip {display:block;position:relative;margin:15px 0 15px 0;padding:10px 10px 10px 40px;color:#2d65e0;font-size:12px;line-height:160%;background:#f7faff;border:solid 1px #b6cefe;border-radius:10px;}
.tip:after {display:block;visibility:hidden;clear:both;content:""}
.tip .label {display:block;position:absolute;left:13px;top:50%;margin:-10px 0 0 0;color:#2d65e0;font-size:12px;font-weight:500;line-height:20px;} 
.tip .label.top {top:10px;margin:0;}
.tip p {display:block;position:relative;padding:0 0 0 8px;color:#2d65e0;font-size:12px;line-height:160%;}
.tip p:after {content:'•';display:block;position:absolute;left:0;top:0px;color:#2d65e0;font-size:12px;line-height:160%;}
.tip.addimg {}
.tip.addimg .img {display:block;float:left;margin:0 10px 0 0;}
.tip.addimg .cont {float:left;}

.info {margin:0 0 15px 0;font-size:12px;font-weight:400;}
.info strong {color:#f00001;font-weight:400;}

.selec_list {margin:10px 0 10px 0}
.selec_list h4 {display:block;margin:0 0 12px 0;font-size:15px;font-weight:600;}
.selec_list h4 a {color:#1398d9;font-size:12px;font-weight:600;}

.selec_list ul {}
.selec_list ul:after {display:block;visibility:hidden;clear:both;content:""}
.selec_list ul li {display:block;float:left;margin:0 10px 0 0;padding:0 12px;font-size:13px;font-weight:300;line-height:30px;border:solid 1px #ddd;border-radius:40px;}
.selec_list ul li:last-child {margin:0;}
.selec_list ul li i {display:inline-block;margin:0 0 0 4px;color:#444;font-size:12px;cursor:pointer;}
.selec_list ul li i.xi-paperclip {color:#999;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.btn_add_career {display:block;position:relative;}
.btn_add_career:after {content:"\e913";display:block;position:absolute;right:10px;top:0px;width:40px;height:48px;font-family:"xeicon";color:#ccc;font-size:14px;text-align:center;line-height:48px;background:none;z-index:1;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}


.skill_div {display:block;position:relative;border:solid 1px #eee;}
.skill_div:after {display:block;visibility:hidden;clear:both;content:""}
.skill_div:hover {border:solid 1px #bbb;}
.skill_div .f_input {display:block;width:100%;height:40px;padding:0 10px 0 50px;font-size:14px;font-weight:300;line-height:40px;background:none;border:none;border-bottom:solid 1px #eee;}
.skill_div .f_input:focus {border-bottom:solid 1px #222;}
.skill_div .btn_sch {display:block;position:absolute;left:0;top:0;width:50px;height:40px;color:#222;background:none;border:none;}
.skill_div .btn_sch i {font-size:20px;}

.skill_div dl {}
.skill_div dl:after {display:block;visibility:hidden;clear:both;content:""}
.skill_div dl dd {display:block;float:left;width:33.33%;height:400px;overflow-x:hidden;overflow-y:auto;border-right:solid 1px #eee;}
.skill_div dl dd:last-child {border-right:none;}
.skill_div dl dd:nth-child(2) {padding:10px;}
.skill_div dl dd:nth-child(3) {padding:20px;}
.skill_div dl dd a.career {display:block;padding:0 15px;font-size:14px;font-weight:400;line-height:44px;border-bottom:solid 1px #eee;}
.skill_div dl dd a.career.active {background:#f6f6f6;}
.skill_div dl dd a.career:hover {background:#f6f6f6;border-bottom:solid 1px #bbb;}

.skill_div dl dd a.career2 {display:block;position:relative;margin:0 0 4px 0;padding:0 12px;font-size:14px;font-weight:400;line-height:40px;background:#fff;border:solid 1px #fff;border-radius:5px;}
.skill_div dl dd a.career2:last-child {margin:0;}
.skill_div dl dd a.career2.active {background:#fffad2;border:solid 1px #ffd200}
.skill_div dl dd a.career2.active:after {content:'\e928';display:block;position:absolute;right:15px;top:0;color:#ffd200;font-family:'xeicon';font-size:20px;line-height:40px;}
.skill_div dl dd a.career2:hover {background:#f6f6f6;border:solid 1px #ddd;}

.skill_div dl dd .career_top {display:block;margin:0 0 30px 0;font-size:12px;}
.skill_div dl dd .career_top:after {display:block;visibility:hidden;clear:both;content:""}
.skill_div dl dd .career_top a {display:block;float:right;color:#1398d9;font-size:14px;font-weight:500;}

.skill_div .selec_list ul li {margin:0 10px 8px 0;}
.skill_div .selec_list ul li a {color:#999;}
.skill_div .selec_list ul li a i {font-size:12px;}


@media screen and (max-width:980px) {
.skill_div dl dd {width:50%;}
.skill_div dl dd:nth-child(2) {border-right:none;}
.skill_div dl dd:last-child {width:100%;border-top:solid 1px #eee;}
}

.overlay {display:none;position:fixed;left:0;right:0;top:0;width:100%;height:100vh;background:rgba(0,0,0,0.6);z-index:99;}

.career_layer {display:none;position:fixed;left:50%;top:50%;width:90%;max-width:560px;padding:40px;background:#fff;border-radius:15px;z-index:100;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
.career_layer .btn_close {display:block;position:absolute;right:40px;top:40px;background:none;border:none;}
.career_layer .btn_close i {font-size:20px;}
.career_layer h3 {display:block;margin:0 0 30px 0;font-size:20px;font-weight:600;text-align:center;}


@media screen and (max-width:980px) {
.career_layer {height:90vh;padding:20px;overflow-y:auto;}
.career_layer .btn_close {right:20px;top:20px;}
}

/* file */
.file_wr {border:none;}
.file_wr:hover {border:none;}
.file_wr .f_file {border:none;}
.file_wr .f_file::file-selector-button {display:none;}
.file_wr .f_file:after {content:'+ 증빙 자료 첨부(선택사항)';display:block;position:absolute;left:0px;top:0px;right:0px;bottom:0px;padding:0 10px;font-size:14px;line-height:48px;background:#fff;border:solid 1px #bbb;border-radius:5px;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.file_wr .f_file:hover:after {background:#f6f6f6;}
.file_wr .f_file.f_off:after {color:#bbb}

.career_layer .btn_submit {display:block;width:100%;height:50px;color:#999;font-size:16px;font-weight:600;text-align:center;background:#eee;border:none;border-radius:5px;}
.career_layer .btn_submit.active {color:#fff;background:#17393c}


.selec_chk {position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;opacity:0;outline:0;z-index:-1;}

.career_layer .chk_box {position:relative;}
.career_layer .chk_box input[type="checkbox"] + label {display:block;position:relative;width:100%;padding:0 15px;color:#999;font-size:14px;line-height:48px;border:solid 1px #eee;border-radius:5px;vertical-align:baseline;cursor:pointer;
-webkit-transition: all 0.3s ease-out;-moz-transition: all 0.3s ease-out;-o-transition: all 0.3s ease-out;transition: all 0.3s ease-out;
}
.career_layer .chk_box input[type="checkbox"] + label:hover {border:solid 1px #aaa;}
.career_layer .chk_box input[type="checkbox"] + label span {display:block;position:absolute;right:40px;top:0px;height:48px;background:none;border:none;}
.career_layer .chk_box input[type="checkbox"] + label:hover span {}
.career_layer .chk_box input[type="checkbox"] + label span:after {content:"\e928";display:block;position:absolute;left:0px;top:0px;font-family:"xeicon";color:#ddd;font-size:20px;text-align:center;line-height:48px;background:none;z-index:1;cursor:pointer;}

.career_layer .chk_box input[type="checkbox"]:checked + label {color:#111;background:#fffad1;border:solid 1px #fae57c;}
.career_layer .chk_box input[type="checkbox"]:checked + label span:after {color:#ffd60c;}


.pack {margin:0 0 30px 0;font-size:12px;text-align:right;}

.pack_serv {width:100%;margin:0 0 60px 0;}
.table {display:table;table-layout:fixed;width:100%;}
.table .row {display:table-row;}
.table .cell {display:table-cell;width:28%;padding:5px 10px;font-size:12px;border-bottom:solid 1px #eee;vertical-align:middle;}
.table .cell.label {width:16%;font-weight:400;background:#f6f6f6;}
.table .cell.label .req {color:#f00001;}
.table .cell.title {padding:8px 0;}
.table .cell strong {display:block;padding:0 10px;font-size:15px;font-weight:600;line-height:40px;border-bottom:solid 1px #222;}
.table .cell textarea {display:block;width:100%;font-size:14px;line-height:140%;background:#fff;border:none;resize:none;}
.table .cell .char_count {position:relative;right:auto;bottom:auto;line-height:normal;}
.table .cell .f_input {display:block;float:left;width:calc(100% - 36px);height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.table .cell .won {display:block;float:left;font-size:14px;line-height:48px;}


.table .cell2 {display:table-cell;width:84%;padding:5px 10px;font-size:12px;border-bottom:solid 1px #eee;vertical-align:middle;}
.table .cell2.label {width:16%;font-weight:400;background:#f6f6f6;}
.table .cell2.label .req {color:#f00001;}
.table .cell2.title {padding:8px 0;}
.table .cell2 strong {display:block;padding:0 10px;font-size:15px;font-weight:600;line-height:40px;border-bottom:solid 1px #222;}
.table .cell2 textarea {display:block;width:100%;font-size:14px;line-height:140%;background:#fff;border:none;resize:none;}
.table .cell2 .char_count {position:relative;right:auto;bottom:auto;line-height:normal;}
.table .cell2 .f_input {display:block;float:left;width:calc(100% - 36px);height:48px;padding:0 10px;font-size:14px;font-weight:300;line-height:48px;background:none;border:none;}
.table .cell2 .won {display:block;float:left;font-size:14px;line-height:48px;}


@media screen and (max-width:980px) {
.table .cell {width:33.33%;padding:10px 5px;}
.table .cell.label {display:none;}
.table .cell .f_input {width:calc(100% - 14px);}
.table .cell .selec:after {right:0px;top:0px;width:auto;}

.table .cell2 {width:33.33%;padding:10px 5px;}
.table .cell2.label {display:none;}
.table .cell2 .f_input {width:calc(100% - 14px);}
.table .cell2 .selec:after {right:0px;top:0px;width:auto;}
}

.selec_layer {display:none;position:absolute;left:0;right:0;top:52px;/*height:240px;*/overflow-y:auto;padding:5px 0;background:#fff;border-radius:10px;box-shadow:0 0 10px rgba(0,0,0,0.1);z-index:3;}
.selec_layer a {display:block;padding:0 10px;color:#111;font-size:14px;line-height:40px;}
.selec_layer a:hover {background:#eee;}
.selec_layer a.chk {font-weight:700;}
}



#pro_upload h4 {display:block;margin:0 0 10px 0;font-size:14px;font-weight:500;}
#pro_upload h4 span {display:inline-block;margin:0 0 0 10px;color:#999;font-size:12px;}
#pro_upload h4 span strong {color:#f00001;font-weight:400;}


ul.upload_img {margin:0 0 20px 0;}
ul.upload_img:after {display:block;visibility:hidden;clear:both;content:""}
ul.upload_img li {display:block;float:left;position:relative;width:32%;margin:0 2% 20px 0;}
ul.upload_img li:nth-child(3n) {margin:0 0 20px 0;}
/*ul.upload_img li .thumb {display:block;position:relative;width:100%;height:180px;border:solid 1px #eee;border-radius:5px;overflow:hidden;}*/

ul.upload_img li .thumb {
    display: block;
    position: relative;
    width: 100%;             /* 부모(li)의 너비를 꽉 채움 */
    aspect-ratio: 4 / 3;     /* 고정 높이(180px) 대신 4:3 비율 적용 */
    border: solid 1px #eee;
    border-radius: 5px;
    overflow: hidden;
}

/* 내부 이미지 설정 (이미지가 꽉 차게 보이도록) */
ul.upload_img li .thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;       /* 비율 유지하며 영역 채우기 */
}



ul.upload_img li .thumb span {display:block;position:absolute;left:50%;top:50%;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
ul.upload_img li .thumb span img {width:80px;height:auto;}
ul.upload_img li img {

	width: 100%;             /* 부모 요소 너비에 맞춤 */
    aspect-ratio: 4 / 3;     /* 어떤 이미지든 강제로 4:3 비율 유지 */
    object-fit: cover;       /* 비율을 맞추느라 이미지가 찌그러지지 않게 중심부 커팅 */
    
     display: block;          /* 하단 미세한 공백 제거 */

	
}

ul.upload_img li a:nth-child(2) {position:absolute;right:5px;top:10px;}
ul.upload_img li a:nth-child(3) {position:absolute;left:5px;top:10px;}
ul.upload_img li a:nth-child(4) {position:absolute;left:30px;top:10px;}

ul.upload_img li p {font-size:16px;padding:5px 0;}

ul.upload_img li .thumb .play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor:pointer;
  
  /* ── 핵심: 평상시 상태 ── */
  opacity: 0;              /* 투명하게 숨김 */
  visibility: hidden;      /* 클릭 방지 및 완전히 숨김 */
  transition: all 0.3s ease; /* 부드러운 전환 */
}

/* ── 마우스 오버 시 스타일 ── */
ul.upload_img li .thumb:hover .play-button {
  opacity: 1;              /* 선명하게 나타남 */
  visibility: visible;     /* 활성화 */
}

/* (선택사항) 마우스 오버 시 이미지를 살짝 어둡게 만들어 버튼을 더 강조함 */
ul.upload_img li .thumb:hover .thumbnail {
  filter: brightness(0.7);
}


/* file */
.file_img {display:block;position:absolute;left:0;top:0;right:0;bottom:0;opacity:0;
-webkit-transition: all .3s ease-out;
transition: all .3s ease-out;
}
.file_img .f_file {width:100%;height:100%;}
.file_img .f_file::file-selector-button {display:none;}
.file_img label {display:block;position:absolute;left:0;top:0;width:100%;height:100%;background:#fff;border:solid 1px #eee;border-radius:5px;cursor:pointer;
-webkit-transition: all .3s ease-out;
transition: all .3s ease-out;
}
.file_img label span {display:block;position:absolute;left:30px;right:30px;top:50%;font-size:14px;text-align:center;line-height:53px;background:#fff;border:solid 1px #eee;border-radius:5px;
-webkit-transform:translate(0,-50%);
-moz-transform:translate(0,-50%);
-ms-transform:translate(0,-50%);
-o-transform:translate(0,-50%);
transform:translate(0,-50%);
}
.file_img label span i {font-size:20px;}
.file_img:hover {opacity:1;}
.file_img:hover label {border:solid 1px #bbb}


@media screen and (max-width:980px) {
ul.upload_img li {margin:0 2% 10px 0;}
ul.upload_img li:nth-child(3n) {margin:0 0 10px 0;}

ul.upload_img li .thumb {height:120px;}
ul.upload_img li .thumb span img {width:60px;height:auto;}
}


@media screen and (max-width:480px) {
ul.upload_img li {width:49%;margin:0 2% 10px 0;}
ul.upload_img li:nth-child(3n) {margin:0 2% 10px 0;}
ul.upload_img li:nth-child(2n) {margin:0 0 10px 0;}
}


/* file */
.file_video {display:block;position:relative;border:none;}
.file_video .f_file {width:240px;height:55px;border:none;}
.file_video .f_file::file-selector-button {display:none;}
.file_video label {display:block;position:absolute;left:0;top:0;width:240px;height:100%;font-size:14px;text-align:center;line-height:53px;background:#fff;border:solid 1px #eee;border-radius:5px;cursor:pointer;
-webkit-transition: all .3s ease-out;
transition: all .3s ease-out;
}
.file_video label i {font-size:20px;}
.file_video label:hover {border:solid 1px #bbb;}

ul.upload_video {margin:20px 0 0 0;}
ul.upload_video:after {display:block;visibility:hidden;clear:both;content:""}
ul.upload_video li {display:block;float:left;width:32%;margin:0 2% 10px 0;}
ul.upload_video li:nth-child(3n) {margin:0 0 10px 0;}
ul.upload_video li span {display:block;position:relative;padding:0 40px 0 15px;;color:#999;font-size:14px;font-weight:400;line-height:40px;background:#f6f6f6;border-radius:5px;
overflow:hidden;
white-space:nowrap;
text-overflow:ellipsis; 
-o-text-overflow:ellipsis;
-moz-binding: url('ellipsis.xml#ellipsis');
}
ul.upload_video li span a {display:block;position:absolute;right:15px;top:0;color:#bbb;}
ul.upload_video li span a i {font-size:20px;}


@media screen and (max-width:980px) {
.file_video .f_file {width:180px;}
.file_video label {width:180px;}

ul.upload_video li span {font-size:13px;}
ul.upload_video li span a i {font-size:18px;}
}

ul.upload_data {margin:20px 0 0 0;}
ul.upload_data:after {display:block;visibility:hidden;clear:both;content:""}
ul.upload_data li {display:block;float:left;width:32%;margin:0 2% 10px 0;}
ul.upload_data li:nth-child(3n) {margin:0 0 10px 0;}
ul.upload_data li span {display:block;position:relative;padding:0 40px 0 15px;;color:#999;font-size:14px;font-weight:400;line-height:40px;background:#f6f6f6;border-radius:5px;
overflow:hidden;
white-space:nowrap;
text-overflow:ellipsis; 
-o-text-overflow:ellipsis;
-moz-binding: url('ellipsis.xml#ellipsis');
}
ul.upload_data li span a {display:block;position:absolute;right:15px;top:0;color:#bbb;}
ul.upload_data li span a i {font-size:20px;}


@media screen and (max-width:980px) {
.file_video .f_file {width:180px;}
.file_video label {width:180px;}

ul.upload_data li span {font-size:13px;}
ul.upload_data li span a i {font-size:18px;}
}

.btn_confirm{margin:20px auto;} .btn_confirm .btn_submit{height:50px;padding:0 
40px;color:#fff;background:#165331;border-radius: 10px;}

@media screen and (max-width:980px) {
.btn_confirm .btn_submit{width:100%;}
}

#reg_mb_img {width:0;height:0;overflow:hidden;border:none;}
#reg_mb_img:hover input {border:none;}

.txt-center {text-align:center !important;}

.agree label {font-size:0.8em;font-weight:normal;}

.lecture-item {margin:10px 0;}

.cal_layer {display:none;position:fixed;left:50%;top:50%;width:90%;max-width:480px;padding:40px;background:#fff;border-radius:15px;z-index:100;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
.cal_layer .btn_cal_profit_close {display:block;position:absolute;right:40px;top:40px;background:none;border:none;}
.cal_layer .btn_cal_profit_close i {font-size:20px;}
.cal_layer h3 {display:block;margin:0 0 40px 0;font-size:20px;font-weight:600;text-align:left;}
.cal_layer ul {margin:0 0 40px 0;}
.cal_layer ul li {display:block;position:relative;margin:0 0 40px 0;}
.cal_layer ul li:last-child {margin:0;}
.cal_layer ul li:last-child:after {display:block;position:absolute;right:15px;bottom:0;font-size:14px;line-height:50px;}
.cal_layer ul li label {display:block;margin:0 0 8px 0;color:#666;font-size:12px;font-weight:300;}
.cal_layer ul li .f_input {display:block;width:100%;height:50px;padding:0 10px 0 10px;font-size:15px;font-weight:300;line-height:48px;background:#fff;border:solid 1px #eee;border-radius:5px;}
.cal_layer ul li p {font-size:14px;}
.cal_layer .btn_confirm{text-align:center;}
.cal_layer .btn_submit {
	display: block;
	margin:0px auto;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 30px;
    text-align: center;
    border: solid 1px #ddd;
    border-radius: 5px;
}

.cal_layer .row {display:table-row; font-size:12px;}
.cal_layer .row .cell {display:table-cell;width:25%;padding:5px 10px;font-size:12px;}
.cal_layer .row .cell span {display: block;
    padding: 5px 8px;
	text-align:center;
    background: #eee;
    border-radius: 3px;
}
.cal_layer .row .cell2 {display:table-cell;width:75%;padding:5px 10px;font-size:12px;line-height:150%;font-weight:normal !important;vertical-align:middle;}


.cal_layer2 {display:none;position:fixed;left:50%;top:50%;width:90%;max-width:480px;padding:40px;background:#fff;border-radius:15px;z-index:100;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
.cal_layer2 .btn_cal_profit_close {display:block;position:absolute;right:40px;top:40px;background:none;border:none;}
.cal_layer2 .btn_cal_profit_close i {font-size:20px;}
.cal_layer2 h3 {display:block;margin:0 0 40px 0;font-size:20px;font-weight:600;text-align:left;}
.cal_layer2 ul {margin:0 0 40px 0;}
.cal_layer2 ul li {display:block;position:relative;margin:0 0 40px 0;}
.cal_layer2 ul li:last-child {margin:0;}
.cal_layer2 ul li:last-child:after {display:block;position:absolute;right:15px;bottom:0;font-size:14px;line-height:50px;}
.cal_layer2 ul li label {display:block;margin:0 0 8px 0;color:#666;font-size:12px;font-weight:300;}
.cal_layer2 ul li .f_input {display:block;width:100%;height:50px;padding:0 10px 0 10px;font-size:15px;font-weight:300;line-height:48px;background:#fff;border:solid 1px #eee;border-radius:5px;}
.cal_layer2 ul li p {font-size:14px;}
.cal_layer2 .btn_confirm{text-align:center;}
.cal_layer2 .btn_submit {
	display: block;
	margin:0px auto;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 30px;
    text-align: center;
    border: solid 1px #ddd;
    border-radius: 5px;
}

.cal_layer2 .row {display:table-row; font-size:12px;}
.cal_layer2 .row .cell {display:table-cell;width:25%;padding:5px 10px;font-size:12px;}
.cal_layer2 .row .cell span {display: block;
    padding: 5px 8px;
	text-align:center;
    background: #eee;
    border-radius: 3px;
}
.cal_layer2 .row .cell2 {display:table-cell;width:75%;padding:5px 10px;font-size:12px;line-height:150%;font-weight:normal !important;vertical-align:middle;}


@media screen and (max-width:980px) {
.career_layer {height:90vh;padding:20px;overflow-y:auto;}
.career_layer .btn_close {right:20px;top:20px;}
}


.vod_layer {display:none;position:fixed;left:50%;top:50%;width:90%;padding:40px;border-radius:15px;z-index:100;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
.vod_layer .btn_vod_close {display:block;position:absolute;right:40px;top:40px;background:none;border:none;}
.vod_layer .btn_vod_close i {font-size:20px;}


.loading-container {
    width: 80px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: transparent; /* 배경이 필요하면 색상 지정 */
}

/* 로딩 스피너 본체 */
.loader {
    width: 30px;         /* 스피너 크기 */
    height: 30px;        /* 스피너 크기 */
    border: 4px solid #f3f3f3; /* 바탕 선 색상 */
    border-top: 4px solid #3498db; /* 회전하는 포인트 선 색상 */
    border-radius: 50%;  /* 원형 만들기 */
    animation: spin 1s linear infinite; /* 무한 회전 애니메이션 */
}

/* 회전 애니메이션 정의 */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


#pro_cont .option{padding:20px 0;border-top:1px solid #b7b7b7;}
#pro_cont .option .tit{margin-bottom:12px;line-height:1;font-size:18px;font-weight:700;}
#pro_cont .option .con{}
#pro_cont .option .con ul{display:flex;flex-direction:column;gap:12px;}
#pro_cont .option .con .option-btn{position: relative; padding:18px 15px;border-radius:8px;border:1px solid #b7b7b7;display:flex;align-items:flex-start;flex-direction:column;gap:8px;cursor:pointer;}
#pro_cont .option .con .option-btn.on{border-color:#000;}
#pro_cont .option .con .option-btn .opt-label{line-height:15px;font-size:10px;background:#e9e9e9;padding:0 4px;}
#pro_cont .option .con .option-btn .opt-name{line-height:1;font-size:15px;font-weight:600;}
#pro_cont .option .con .option-btn .opt-desc{line-height:1;font-size:12px;}
#pro_cont .option .con .option-btn .opt-price{margin-top:10px;display:flex;align-items:flex-end;font-size:15px;font-weight:600;}
#pro_cont .option .con .option-btn .opt-price small{font-size:12px;font-weight:500;margin:2px 0 2px 2px;}

#pro_cont .option .con .option-btn a.del_opt {position: absolute;right: 5px;top: 5px;}
#pro_cont .option .con .option-btn a.modify_opt {position: absolute;right: 30px;top: 5px;}

#pro_cont .option .con .option-btn .updown {position: absolute;right: 5px;bottom: 0px;}


#pro_cont .schedule{padding:20px 0;border-top:1px solid #b7b7b7;}
#pro_cont .schedule .tit{margin-bottom:12px;line-height:1;font-size:18px;font-weight:700;}
#pro_cont .schedule .con{}
#pro_cont .schedule .con ul{display:flex;flex-direction:column;gap:12px;}
#pro_cont .schedule .con .schedule-btn{position: relative; padding:18px 15px;border-radius:8px;border:1px solid #b7b7b7;display:flex;align-items:flex-start;gap:12px;cursor:pointer;}
#pro_cont .schedule .con .schedule-btn.on{border-color:#000;}
#pro_cont .schedule .con .schedule-btn.on .sche-icon{background:url("../img/ic_check_on.svg") no-repeat center / contain;}
#pro_cont .schedule .con .schedule-btn .sche-icon{flex:0 0 auto;width:11px;height:11px;background:url("../img/ic_check_off.svg") no-repeat center / contain;}
#pro_cont .schedule .con .schedule-btn .sche-info{flex:1;display:flex;flex-direction:column;gap:18px;}
#pro_cont .schedule .con .schedule-btn .sche-info dl{display:flex;gap: 6px;align-items: flex-start;}
#pro_cont .schedule .con .schedule-btn .sche-info dl dt{display:flex;align-items:center;justify-content:center;}
#pro_cont .schedule .con .schedule-btn .sche-info dl dt img{width:12px;height:auto;}
#pro_cont .schedule .con .schedule-btn .sche-info dl dd{flex: 1;display: flex;flex-direction: column;}
#pro_cont .schedule .con .schedule-btn .sche-info dl dd strong{line-height:1;font-size:15px;font-weight:600;}
#pro_cont .schedule .con .schedule-btn .sche-info dl dd span{margin-top:6px;line-height:1;font-size:12px;}

#pro_cont .schedule .con .schedule-btn a.del_opt {position: absolute;right: 5px;top: 5px;}
#pro_cont .schedule .con .schedule-btn a.modify_opt {position: absolute;right: 30px;top: 5px;}

/* 과거 일정 스타일 */
.schedule-btn.is_past {
    background-color: #f2f2f2 !important; /* 연한 회색 배경 */
    border-color: #ddd !important;
    cursor: not-allowed !important; /* 중지(금지) 아이콘 커서 */
    position: relative;
    
    /* 내부의 모든 색상을 무채색으로 변경 (아이콘, 텍스트 포함) */
    filter: grayscale(1); 
    opacity: 0.7;
}

/* 내부 텍스트 색상 추가 조정 */
.schedule-btn.is_past strong,
.schedule-btn.is_past span {
    color: #888 !important;
}

/* 클릭 방지 (JS 클릭 이벤트가 실행되지 않도록 막고 싶을 때) */
.schedule-btn.is_past a.del_opt,
.schedule-btn.is_past a.modify_opt {
    pointer-events: none; /* 클릭 불가 */
    opacity: 0.3;
}


/* 1. 모달 기본창 너비 설정 */
#vod_content {
    position: relative;
    margin: 5% auto;
    padding: 0;
    width: 90%;
    max-width: 800px;
    background: #000;
    overflow: hidden; /* 모서리 삐져나옴 방지 */
}

/* 2. 동영상 컨테이너 (16:9 비율 유지) */
#my-vimeo-player {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%; 
    overflow: hidden;
    background: #000;
}

/* 3. 내부 iframe을 컨테이너에 꽉 채우기 */
#my-vimeo-player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* 모바일 전용 미세 조정 (상단 밀착형) */
@media (max-width: 768px) {
    .vod_layer {
        padding: 0 !important; /* 부모 레이어 여백 제거 */
    }

    #vod_content {
        width: 100%;     /* 모바일 가로 꽉 채우기 */
        margin: 0 auto;  /* 상단 마진 0으로 밀착 */
        max-width: none;
        border-radius: 0; /* 테두리 굴곡 제거하여 밀착감 상승 */
    }

    /* 닫기 버튼이 있다면 위치 재조정 (동영상 위로) */
    .close_btn_class { 
        position: absolute;
        top: 10px;
        right: 10px;
        z-index: 999;
        color: #fff;
    }
}


/* 에디터가 들어갈 레이어 설정 */
.editor_layer {
    display: none; /* 초기 상태는 숨김 */
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* 화면 정중앙 배치 */
    width: 95%;
    max-width: 1250px;
    height: 90vh;
    background: #fff;
    z-index: 9999;
    border-radius: 10px;
    box-shadow: 0 0 30px rgba(0,0,0,0.5);
    overflow: hidden; /* 내부 스크롤은 에디터 안에서 처리 */
}

/* 배경 어둡게 처리 */
.overlay {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.7);
    z-index: 9998;
}



	.editor-view-container { border: 1px solid #ddd; border-radius: 8px; background: #fff; margin-bottom: 20px; overflow: hidden; }
    .editor-tabs { background: #f8f9fa; padding: 10px; border-bottom: 1px solid #ddd; display: flex; gap: 5px; }
    .tab-btn { padding: 6px 15px; border: 1px solid #ccc; background: #fff; cursor: pointer; border-radius: 4px; font-size: 13px; }
    .tab-btn.active { background: #333; color: #fff; border-color: #333; }
    .btn-open-modal { margin-left: auto; background: #007bff; color: #fff; border: none; padding: 6px 15px; border-radius: 4px; cursor: pointer; font-size: 13px; font-weight: bold; }
    .editor-preview-box { padding: 20px; min-height: 200px; max-height: 500px; overflow-y: auto; background: #fff; }

	/* 태그창은 처음에 절대 보이지 않게 처리 */
    .editor-code-view { width: 100%; height: 400px; padding: 15px; font-family: 'Courier New', monospace; font-size: 13px; border: none; background: #fafafa; display: none; outline: none; resize: vertical; box-sizing: border-box; line-height: 1.5; }
    /* 스크린샷처럼 이미지가 깨져 보이지 않도록 미리보기 박스 스타일 보정 */
    .editor-preview-box img { max-width: 100%; height: auto; }