@charset "utf-8";

/* ### 기본 스타일 커스터마이징 시작 ### */

/* 버튼 */
.mbskin a.btn01 {}
.mbskin a.btn01:focus, .mbskin .btn01:hover {}
.mbskin a.btn02 {}
.mbskin a.btn02:focus, .mbskin .btn02:hover {}
.mbskin .btn_confirm {} /* 서식단계 진행 */
.mbskin .btn_submit {}
.mbskin button.btn_submit {}
.mbskin fieldset .btn_submit {}
.mbskin .btn_cancel {}
.mbskin button.btn_cancel {}
.mbskin .btn_cancel:focus, .mbskin .btn_cancel:hover {}
.mbskin a.btn_frmline, .mbskin button.btn_frmline {} /* 우편번호검색버튼 등 */
.mbskin button.btn_frmline {}
.mbskin .win_btn {} /* 새창용 */
.mbskin .win_btn button {}
.mbskin .win_btn input {}
.mbskin .win_btn a {}
.mbskin .win_btn a:focus, .mbskin .win_btn a:hover {}

/* 게시판용 버튼 */
.mbskin a.btn_b01 {}
.mbskin a.btn_b01:focus, .mbskin .btn_b01:hover {}
.mbskin a.btn_b02 {}
.mbskin a.btn_b02:focus, .mbskin .btn_b02:hover {}
.mbskin a.btn_admin {} /* 관리자 전용 버튼 */
.mbskin a.btn_admin:focus, .mbskin a.btn_admin:hover {}



/* 기본테이블 */

.mbskin .tbl_head01 {}
.mbskin .tbl_head01 caption {}
.mbskin .tbl_head01 thead th {}
.mbskin .tbl_head01 thead a {}
.mbskin .tbl_head01 thead th input {} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.mbskin .tbl_head01 tfoot th {}
.mbskin .tbl_head01 tfoot td {}
.mbskin .tbl_head01 tbody th {}
.mbskin .tbl_head01 td {}
.mbskin .tbl_head01 a {}
.mbskin td.empty_table {}

/* 폼 테이블 */
.mbskin table {}
.mbskin caption {}
.mbskin .frm_info {}
.mbskin .frm_file {}

.mbskin .tbl_frm01 {}
.mbskin .tbl_frm01 th {width:85px;}
.mbskin .tbl_frm01 td {}
.mbskin .tbl_frm01 textarea, .mb_skin tbl_frm01 .frm_input {}
.mbskin .tbl_frm01 textarea {}
/*
.mbskin .tbl_frm01 #captcha {}
.mbskin .tbl_frm01 #captcha input {}
*/
.mbskin .tbl_frm01 a {}

/* 필수입력 */
.mbskin .required, .mbskin textarea.required {}

/* 테이블 항목별 정의 */
.mbskin .td_board {}
.mbskin .td_chk {}
.mbskin .td_date {}
.mbskin .td_datetime {}
.mbskin .td_group {}
.mbskin .td_mb_id {}
.mbskin .td_mng {}
.mbskin .td_name {}
.mbskin .td_nick {}
.mbskin .td_num {}
.mbskin .td_numbig {}

.mbskin .txt_active {}
.mbskin .txt_expired {} 

/* ### 기본 스타일 커스터마이징 끝 ### */

/* 회원가입 약관 (bbs/register.php) */
/* SNS 가입 버튼(#sns_register)은 skin/social/style.css 에 있음 */
.sConBox #fregister {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
}

#fregister_private table caption {position:absolute;font-size:0;line-height:0;overflow:hidden}
/* 안내 문구 */
.sConBox #fregister > p {
  margin: 0 0 20px;
  padding: 0;
  color: #666;
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
  word-break: keep-all;
  background: none;
  border: 0;
}

/* 전체선택 */
.sConBox #fregister_chkall {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

.sConBox #fregister_chkall #chk_all {
  order: -1;
}

.sConBox #fregister_chkall label {
  color: #111;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
}

.sConBox #fregister input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--main-color);
  cursor: pointer;
}

/* 약관 박스 */
.sConBox #fregister section {
  position: relative;
  margin: 0 0 24px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e2ddd7;
  border-radius: 20px;
  box-shadow: none;
}

.sConBox #fregister section h2 {
  margin: 0;
  padding: 20px 28px;
  color: #111;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -.03em;
  text-align: left;
  background: var(--bg-color);
  border-bottom: 1px solid #e2ddd7;
}

.sConBox #fregister section h2 .fa {
  margin-right: 4px;
  color: var(--main-color);
}

.sConBox #fregister textarea {
  display: block;
  width: 100%;
  height: 220px;
  padding: 24px 28px;
  color: #555;
  font-size: 14px;
  line-height: 1.7;
  background: #fff;
  border: 0;
  resize: none;
}

.sConBox #fregister textarea:focus {
  border: 0 !important;
  box-shadow: none !important;
}

.sConBox #fregister_private > div {
  padding: 24px 28px;
  background: #fff;
}

.sConBox #fregister_private table {
  width: 100%;
  border-collapse: collapse;
}

.sConBox #fregister_private table th {
  width: 33.33%;
  padding: 14px 10px;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  background: var(--main-color);
  border: 1px solid var(--main-color);
}

.sConBox #fregister_private table td {
  padding: 14px 10px;
  color: #555;
  font-size: 15px;
  line-height: 1.5;
  text-align: center;
  word-break: keep-all;
  border: 1px solid #ebe6e0;
}

/* 동의 체크 */
.sConBox #fregister .fregister_agree {
  position: static;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 16px 28px;
  background: #fff;
  border-top: 1px solid #ebe6e0;
}

.sConBox #fregister .fregister_agree input[type="checkbox"] {
  order: -1;
}

.sConBox #fregister .fregister_agree label {
  color: #444;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

/* 가입 버튼 */
.sConBox #fregister .btn_confirm {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 40px;
}

.sConBox #fregister .btn_confirm input[type="button"] {
  min-width: 220px;
  height: 56px;
  margin: 0;
  padding: 0 30px !important;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.02em;
  border-radius: 12px;
  cursor: pointer;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.sConBox #fregister .btn_confirm #general-menber {
  color: #fff;
  background: var(--main-color);
  border: 1px solid var(--main-color);
}

.sConBox #fregister .btn_confirm #general-menber:hover,
.sConBox #fregister .btn_confirm #general-menber:focus {
  background: #b9583f;
  border-color: #b9583f;
}

.sConBox #fregister .btn_confirm #corp-menber {
  color: var(--main-color);
  background: #fff;
  border: 1px solid var(--main-color);
}

.sConBox #fregister .btn_confirm #corp-menber:hover,
.sConBox #fregister .btn_confirm #corp-menber:focus {
  color: #fff;
  background: var(--main-color);
}

/* 회원가입 약관 반응형 */
@media (max-width: 790px) {
  .sConBox #fregister section {
    margin: 0 0 20px !important;
    border-radius: 16px;
  }
  .sConBox #fregister section h2 {
    padding: 18px 22px;
    font-size: 17px;
  }
  .sConBox #fregister textarea {
    height: 200px;
    padding: 20px 22px;
  }
  .sConBox #fregister_private > div {
    padding: 20px 22px;
  }
  .sConBox #fregister .fregister_agree {
    padding: 14px 22px !important;
  }
  .sConBox #fregister .btn_confirm input[type="button"] {
    flex: 1;
    min-width: 0;
  }
}

@media (max-width: 490px) {
  .sConBox #fregister > p {
    font-size: 14px;
  }
  .sConBox #fregister section h2 {
    padding: 16px 18px;
    font-size: 16px;
  }
  .sConBox #fregister textarea {
    height: 180px;
    padding: 18px;
    font-size: 13px;
  }
  .sConBox #fregister_private > div {
    padding: 16px 18px;
  }
  .sConBox #fregister_private table th,
  .sConBox #fregister_private table td {
    padding: 10px 6px;
    font-size: 13px;
  }
  .sConBox #fregister .fregister_agree {
    justify-content: flex-start;
    padding: 14px 18px !important;
  }
  .sConBox #fregister .fregister_agree label {
    font-size: 14px;
  }
  .sConBox #fregister .btn_confirm {
    flex-direction: column;
    gap: 8px;
    margin-top: 30px;
  }
  .sConBox #fregister .btn_confirm input[type="button"] {
    flex: none;
    width: 100%;
    height: 52px;
    font-size: 16px;
  }
}
/* 회원가입 입력 */
#register_form{background:#fff;padding:20px;margin-bottom:20px}
#fregisterform #msg_certify {margin:5px 0 0;padding:5px;border:1px solid #dbecff;background:#eaf4ff;text-align:center}
#fregisterform .frm_address {margin:5px 0 0}
#fregisterform #mb_addr3 {display:inline-block;margin:5px 0 0;vertical-align:middle}
#fregisterform #mb_addr_jibeon {display:block;margin:5px 0 0}
#fregisterform .btn_confirm{text-align:center}
#fregisterform .btn_confirm .btn_submit{line-height:1;font-weight:bold;font-size:1.083em}
#fregisterform .btn_confirm .btn_cancel{line-height:1;padding:0 30px;font-weight:bold;font-size:1.083em}
#fregisterform .frm_info{display:block;color:#3497d9;font-size:0.92em;padding:10px 0;}
#fregisterform .form_01 div{margin: 0 0 50px}
#fregisterform .captcha{display:block;margin:5px 0 0}
#fregisterform .reg_mb_img_file img{max-width:100%;height:auto}
/* 회원가입 완료 */
#reg_result {padding:100px 0 40px;text-align:center;background:#fff}
#reg_result h2{font-size:2em;margin:0 0 20px}
#reg_result h2 strong{color:#ed6478}
#reg_result #result_email {margin:20px 0;padding:10px 50px;border-top:1px solid #e9e9e9;border-bottom:1px solid #dde4e9;background:#fff;line-height:2em}
#reg_result #result_email span {display:inline-block;width:150px}
#reg_result #result_email strong {color:#e8180c;font-size:1.2em}
#reg_result p {line-height:1.8em}
#reg_result .btn_confirm {margin:50px 0}
#reg_result .reg_result_p{font-size:1.25em;margin:0 0 10px;}
#reg_result .reg_result_p strong{color:#3497d9}
#reg_result .btn_submit{padding: 0 30px;font-weight:bold;height:40px;line-height:40px;display:inline-block;margin:30px 0 0 ;font-size:1.083em}

/* 아이디/비밀번호 찾기 */
#find_info #mb_hp_label {display:inline-block;margin-left:10px}
#find_info p {line-height:1.5em}
#find_info #mb_email{margin:10px 0;}

/* 로그인 */
#mb_login {margin-bottom:50px}
#login_fs{}
#login_fs li {padding: 10px;position:relative;border:#ddd 1px solid;overflow:hidden;margin-top:10px;}
#login_fs li:first-child {margin-top:0;}
#login_fs li label {display: inline-block;width: 30px;height: 23px;overflow: hidden;text-indent: -999px;position: absolute;left: 10px;top: 16px;}
#login_fs li div {width:calc(100% - 30px);float:right;}
#login_fs li:nth-child(1) label {background: url(/maps/img/sub/login_ico.png) 0 0 no-repeat;}
#login_fs li:nth-child(2) label {background: url(/maps/img/sub/login_ico.png) -34px 0 no-repeat;}
#mb_login #login_fs .frm_input{margin:0 0 10px}
#mb_login #login_fs .btn_submit {margin:0 0 20px}
#mb_login #login_info{background:#f6f6f6;padding:25px 10px;border-top:1px solid #e8e8e8;margin:40px 0 0 }
#mb_login #login_info:after {display:block;visibility:hidden;clear:both;content:""}
#mb_login #login_info h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#mb_login #login_info a{display:inline-block;width:50%;float:left}
#login_password_lost{border-right:1px solid #ddd}

#mb_login_notmb{margin:30px auto;padding:20px 30px;margin-top:0;padding:20px 30px 0;border-top:1px solid #ddd}
#mb_login_notmb h2{font-size:1.25em;margin:20px 0 10px}
#guest_privacy{border:1px solid #ccc;text-align:left;line-height:1.6em;color:#666;background:#fafafa;padding:10px;height:150px;margin:10px 0;overflow-y:auto}
#mb_login_notmb .btn_submit{display:block;text-align:center;line-height:45px}

#mb_login_od_wr{margin:30px auto;padding:20px 30px;margin-top:0;padding:20px 30px 0;border-top:1px solid #ddd}
#mb_login_od_wr h2{font-size:1.25em;margin:20px 0 10px}
#mb_login_od_wr .frm_input{margin:10px 0 0 }
#mb_login_od_wr p{background:#f3f3f3;margin:20px 0 0 ;padding:15px 20px;line-height:1.5em}

/* 쪽지 */
#memo_list .memo_name,#memo_list .memo_name .sv_wrap{font-weight:bold}
#memo_list .memo_datetime{float:right;font-size:0.92em;color:#777;font-style:italic}
#memo_list .memo_del{margin-left: 5px; color: #49857c;font-size: 15px;}

#memo_view_contents {margin:10px 0;border:1px solid #ddd;}
#memo_view_contents h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#memo_view_ul {margin:0;border-bottom:1px solid #eee;list-style:none;background:#f3f3f3;}
#memo_view_ul:after {display:block;visibility:hidden;clear:both;content:""}
.memo_view_li {position:relative;padding:10px;float:left;width:50%;}
.memo_view_name strong,.memo_view_name .sv_wrap{font-weight:bold !important}
.memo_view_subj{display: inline-block;height: 20px;line-height: 18px;border: 1px solid #3497d9;color: #3497d9;padding: 0 5px;border-radius: 15px;font-size: 11px;}
.memo_view_li .profile_img img{border-radius:50%}
.memo_view_date{text-align:right;color:#555;font-style:italic}
.memo_view_date strong{font-weight:normal}
#memo_view .btn_b02{float:right}
#memo_view .btn_b02.reply_btn{margin-left:4px}
#memo_view p {padding:10px;border-top:1px solid #ddd;min-height:150px;height:auto !important;height:150px;background:#fff;line-height:1.8em}

#memo_write textarea {height:100px}

/* 스크랩 */
#scrap .scrap_tit{font-weight:bold;display:block;font-size:1.083em;margin-bottom:5px;line-height:1.3em}
#scrap .scrap_cate{ display:block;color:#3598db ;font-size:0.92em;float:left}
#scrap .scrap_datetime{;color:#777;font-style:italic;float:right}
#scrap .scrap_del{position:absolute;top:5px;right:10px;font-size:18px;color:#49857c}
#scrap .scrap_del:hover{color:#98ca69}
#scrap_do table {margin:0 0 10px;width:100%}
#scrap_do textarea {height:100px}
#scrap_do .scrap_tit{background:#f3f3f3;padding:10px 15px;font-size:1.083em;font-weight:bold}
#scrap_do label{display:block;margin:0 0 5px;font-size:0.92em}
/*포인트*/
#point .point_top{line-height:15px;margin:0 0 5px}
#point .point_top:after {display:block;visibility:hidden;clear:both;content:""}
#point .point_tit{font-weight:bold;float:left;font-size:1.083em;display:block;}
#point .point_num{font-size:1.25em;color:#00c4ac;font-weight:bold;float:right;}
#point .point_date1{float:left;color:#555;font-style:italic}
#point .point_date{float:right;color:#555;font-style:italic}
#point .txt_expired {color:#aaa;}
#point .point_all{background:#ae99da;border:0;border-bottom:2px solid #9781c5;color:#fff;font-weight:bold;font-size:1.083em}
#point .point_all span,#point .point_status span{float:right;}
#point .point_status{background:#737373;border:0;color:#fff;font-weight:bold;font-size:1.083em}
#point .point_status  span{margin-left:10px}

/* 회원 비밀번호 확인 */
#mb_confirm {}
#mb_confirm h1 {margin:60px 0 30px;font-size:2em}
#mb_confirm p {padding:0 20px 40px;border-bottom:1px solid #e9e9e9;font-size:1.083em;line-height:1.4em;color:#656565; text-align: center;}
#mb_confirm p strong {display:block;color:#3ca1ff;font-size:1.167em;margin:0 0 5px}
#mb_confirm fieldset {;padding:50px;text-align:left}
#mb_confirm fieldset .frm_input {background-color:#fff !important}
#mb_confirm label {letter-spacing:-0.1em}
#mb_confirm_id {display:block;margin:5px 0 10px;font-weight:bold}
#mb_confirm .confirm_id{font-size:0.92em;color:#666}

/* 비밀글 비밀번호 확인 */
#pw_confirm h1 {margin:60px 20px 30px;font-size:2em}
#pw_confirm p {padding:0 20px 40px;border-bottom:1px solid #e9e9e9;font-size:1.083em;line-height:1.4em;color:#656565}
#pw_confirm p strong {display:block;color:#3ca1ff;font-size:1.167em;margin:0 0 5px}
#pw_confirm fieldset {;padding:50px;text-align:center}
#pw_confirm fieldset .frm_input {background-color:#fff !important}
#pw_confirm label {letter-spacing:-0.1em}
#pw_confirm_id {display:inline-block;margin-right:20px;font-weight:bold}
#mb_confirm_id{}

/* 폼메일 */
#formmail textarea {height:100px}
#formmail .formmail_flie{position:relative}
#formmail .formmail_flie .file_wr {border: 1px solid #ccc;background: #fff;color: #000;vertical-align: middle;border-radius: 3px;padding: 5px;height: 40px;margin: 0;}
#formmail .lb_icon {position: absolute;top: 1px;left: 1px;border-radius: 3px 0 0 3px;height: 38px;line-height: 38px;width: 40px;background: #eee;text-align: center;color: #888;}
#formmail .frm_file {padding-left: 50px;}
#formmail .frm_info{color: #3497d9;font-size: 0.92em;}

/* 자기소개 */
#profile h1 a{color:#fff}
#profile table {margin-bottom:0}
#profile table th{text-align:left;padding:10px;width:100px}
#profile section {color: #2d4c7b;background: #eff9f9;padding: 10px;border: 1px solid #bfd4dc;margin: 10px 0;}
#profile h2 {margin:0 0 5px}
#profile .profile_name{text-align:center;font-weight:bold}
#profile .my_profile_img{display:block;margin:20px 0 5px;}
#profile .my_profile_img img{border-radius:50%;border:1px solid #aaa}
#profile .profile_img img{border-radius:50%}
#profile .profile_name .sv_wrap{font-weight:bold;text-align:left}


/* ===== 회원가입 입력 / 정보수정 (bbs/register_form.php) ===== */
#fregisterform .sConBox {
  max-width: 760px;
  margin: 0 auto;
  overflow: visible;
}

#fregisterform #register_form {
  margin: 0;
  padding: 0;
  background: none;
}

/* 입력 카드 */
#fregisterform #register_form > div {
  margin: 0 0 24px;
  padding: 36px 40px;
  background: #fff;
  border: 1px solid #e2ddd7;
  border-radius: 20px;
}

#fregisterform #register_form > div:nth-child(2)::before,
#fregisterform #register_form > div:nth-child(3)::before {
  display: block;
  margin-bottom: 10px;
  color: var(--main-color);
  font-size: 16px;
  font-weight: 800;
  letter-spacing: -.02em;
}

#fregisterform #register_form > div:nth-child(2)::before { content: "개인정보 입력"; }
#fregisterform #register_form > div:nth-child(3)::before { content: "기타 정보"; }

/* 타이틀 (일반/기업 회원가입) */
#fregisterform #register_form h2 {
  margin: 0 0 10px;
  color: #111;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -.04em;
  text-align: left !important;
}

#fregisterform #register_form h2::before {
  display: block;
  width: 50px;
  height: 3px;
  margin-bottom: 20px;
  background: var(--main-color);
  content: "";
}

/* 항목 줄 */
#fregisterform .form_01 li {
  position: relative;
  padding: 16px 0;
  border-bottom: 1px solid #f0ece7;
}

#fregisterform .form_01 li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

#fregisterform .form_01 .frm_label {
  display: block;
  width: 100%;
  margin-bottom: 12px;
  color: #111;
  font-size: 15px;
  font-weight: 700;
}

/* 입력칸 */
#fregisterform .frm_input,
#fregisterform .form_01 textarea {
  width: 100%;
  max-width: none;
  height: 52px;
  padding: 0 16px;
  color: #111;
  font-size: 15px;
  background: #fff;
  border: 1px solid #e2ddd7;
  border-radius: 12px;
  transition: border-color .2s ease, box-shadow .2s ease;
}

#fregisterform .form_01 textarea {
  height: 120px;
  padding: 14px 16px;
}

#fregisterform .frm_input::placeholder,
#fregisterform .form_01 textarea::placeholder {
  color: #aaa;
}

#fregisterform .frm_input:focus,
#fregisterform .form_01 textarea:focus {
  border: 1px solid var(--main-color) !important;
  box-shadow: 0 0 0 4px rgba(207, 105, 81, .12) !important;
}

#fregisterform .frm_input[readonly] {
  color: #777;
  background: #faf8f5;
}

#fregisterform #reg_mb_password_re,
#fregisterform .frm_address {
  margin-top: 8px;
}

#fregisterform br { display: none; }

/* 안내 문구 */
#fregisterform .frm_info {
  display: block;
  padding: 0;
  margin-top: 8px;
  color: #888;
  font-size: 13px;
  line-height: 1.5;
  word-break: keep-all;
}

#fregisterform #msg_mb_id,
#fregisterform #msg_mb_nick {
  display: block;
  color: var(--main-color);
  font-size: 13px;
}

#fregisterform #msg_certify {
  margin: 10px 0 0;
  padding: 12px 16px;
  color: #444;
  font-size: 14px;
  background: var(--bg-color);
  border: 0;
  border-radius: 10px;
}

/* 주소 / 기업 검색 */
#fregisterform #reg_mb_zip {
  width: 160px;
}

#fregisterform #reg_mb_company {
  width: calc(100% - 118px);
}

#fregisterform .btn_frmline,
#fregisterform input.btn_03 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 110px;
  height: 52px;
  margin-left: 4px;
  padding: 0 18px;
  color: var(--main-color);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.02em;
  vertical-align: middle;
  background: #fff;
  border: 1px solid var(--main-color);
  border-radius: 12px;
  cursor: pointer;
  transition: color .2s ease, background-color .2s ease;
}

#fregisterform .btn_frmline:hover,
#fregisterform input.btn_03:hover {
  color: #fff;
  background: var(--main-color);
}

#fregisterform input.js-company-reset-btn {
  color: #666;
  border-color: #e2ddd7;
}

#fregisterform input.js-company-reset-btn:hover {
  color: #111;
  background: #f5f2ed;
}

/* 체크박스 (담당업무, 관심사항, 수신동의) */
#fregisterform .form_01 input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0 6px 0 0;
  accent-color: var(--main-color);
  vertical-align: -3px;
  cursor: pointer;
}

#fregisterform .form_01 input[type="checkbox"] + label {
  margin-right: 14px;
  color: #444;
  font-size: 15px;
  line-height: 2.2;
  cursor: pointer;
}

/* 담당업무·관심사항: 체크박스+글자를 한 덩어리로 (줄 끝에서 분리/글자 끊김 방지) */
#fregisterform .form_01 li > input[type="checkbox"] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

#fregisterform .form_01 li > input[type="checkbox"] + label {
  position: relative;
  display: inline-block;
  margin: 0 14px 10px 0;
  padding-left: 26px;
  color: #444;
  font-size: 15px;
  line-height: 20px;
  white-space: nowrap;
  cursor: pointer;
}

#fregisterform .form_01 li > input[type="checkbox"] + label::before {
  position: absolute;
  top: 1px;
  left: 0;
  width: 18px;
  height: 18px;
  background: #fff;
  border: 1px solid #c9c2ba;
  border-radius: 4px;
  content: "";
  transition: background-color .2s ease, border-color .2s ease;
}

#fregisterform .form_01 li > input[type="checkbox"]:checked + label::before {
  background: var(--main-color);
  border-color: var(--main-color);
}

#fregisterform .form_01 li > input[type="checkbox"]:checked + label::after {
  position: absolute;
  top: 4px;
  left: 6px;
  width: 6px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  content: "";
  transform: rotate(45deg);
}

#fregisterform .form_01 li > input[type="checkbox"]:focus-visible + label::before {
  outline: 2px solid var(--main-color);
  outline-offset: 2px;
}

#fregisterform .form_01 li > input[type="checkbox"]:disabled + label {
  opacity: .45;
  cursor: default;
}

#fregisterform #reg_mb_job_etc,
#fregisterform #reg_mb_interest_etc {
  display: block;
  width: 100% !important;
  margin-top: 10px;
}

#fregisterform .member_info_txt {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
}

#fregisterform .member_info_txt input[type="checkbox"] {
  flex: 0 0 auto;
  margin-top: 3px;
}

#fregisterform .form_01 .member_info_txt input[type="checkbox"] + label {
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.6;
  word-break: keep-all;
}

/* 자동등록방지 */
#fregisterform .is_captcha_use {
  color: #111;
  font-size: 15px;
  font-weight: 700;
}

#fregisterform #captcha {
  display: block;
  margin-top: 12px;
  font-weight: 400;
}

#fregisterform #captcha #captcha_img {
  height: 52px;
  border: 1px solid #e2ddd7;
  border-radius: 10px;
}

#fregisterform #captcha #captcha_mp3,
#fregisterform #captcha #captcha_reload {
  vertical-align: middle;
}

#fregisterform #captcha #captcha_key {
  width: 140px;
  height: 52px;
  margin: 0 0 0 4px;
  font-size: 18px;
  border: 1px solid #e2ddd7;
  border-radius: 12px;
}

#fregisterform #captcha #captcha_info {
  margin-top: 8px;
  color: #888;
  font-size: 13px;
  letter-spacing: -.02em;
}

/* 하단 버튼 */
#fregisterform .btn_confirm {
  display: flex;
  justify-content: center;
  gap: 10px;
  max-width: 760px;
  margin: 40px auto 0;
}

#fregisterform .btn_confirm .btn_cancel,
#fregisterform .btn_confirm #btn_submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.02em;
  border-radius: 12px;
  cursor: pointer;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

#fregisterform .btn_confirm .btn_cancel {
  min-width: 160px;
  padding: 0 30px !important;
  color: #666;
  background: #fff;
  border: 1px solid #e2ddd7;
}

#fregisterform .btn_confirm .btn_cancel:hover {
  color: #111;
  border-color: #c9c2ba;
}

#fregisterform .btn_confirm #btn_submit {
  min-width: 220px;
  padding: 0 30px;
  color: #fff;
  background: var(--main-color);
  border: 1px solid var(--main-color);
}

#fregisterform .btn_confirm #btn_submit:hover {
  background: #b9583f;
  border-color: #b9583f;
}

/* 회원가입 입력 반응형 */
@media (max-width: 790px) {
  #fregisterform #register_form > div {
    padding: 28px 24px;
    border-radius: 16px;
  }
  #fregisterform #register_form h2 {
    font-size: 23px;
  }
  #fregisterform .btn_confirm .btn_cancel,
  #fregisterform .btn_confirm #btn_submit {
    flex: 1;
    min-width: 0;
  }
}

@media (max-width: 490px) {
  #fregisterform #register_form > div {
    margin-bottom: 16px;
    padding: 24px 18px;
  }
  #fregisterform #register_form h2 {
    font-size: 21px;
  }
  #fregisterform #register_form h2::before {
    width: 42px;
    height: 2px;
    margin-bottom: 16px;
  }
  #fregisterform .frm_input {
    height: 48px;
    font-size: 14px;
  }
  #fregisterform .btn_frmline,
  #fregisterform input.btn_03 {
    min-width: 96px;
    height: 48px;
    padding: 0 12px;
    font-size: 14px;
  }
  #fregisterform #reg_mb_zip {
    width: calc(100% - 104px);
  }
  #fregisterform #reg_mb_company {
    width: calc(100% - 104px);
  }
  #fregisterform .form_01 li > input[type="checkbox"] + label {
    margin-right: 10px;
    font-size: 14px;
  }
  #fregisterform #captcha #captcha_img {
    height: 46px;
  }
  #fregisterform #captcha #captcha_key {
    display: block;
    width: 100%;
    height: 48px;
    margin: 8px 0 0;
  }
  #fregisterform .btn_confirm {
    flex-direction: column-reverse;
    gap: 8px;
    margin-top: 30px;
  }
  #fregisterform .btn_confirm .btn_cancel,
  #fregisterform .btn_confirm #btn_submit {
    flex: none;
    width: 100%;
    height: 52px;
    font-size: 16px;
  }
}

/* ===== 회원가입 완료 (bbs/register_result.php) ===== */
.sConBox #reg_result {
  max-width: 640px;
  margin: 0 auto;
  padding: 60px 44px 50px;
  text-align: center;
  background: #fff;
  border: 1px solid #e2ddd7;
  border-radius: 24px;
}

.sConBox #reg_result h2 {
  margin: 0 0 14px;
  color: #111;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -.04em;
}

.sConBox #reg_result h2::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 24px;
  color: var(--main-color);
  font-size: 28px;
  font-weight: 800;
  background: rgba(207, 105, 81, .1);
  border-radius: 50%;
  content: "✓";
}

.sConBox #reg_result h2 strong { color: var(--main-color); }

.sConBox #reg_result .reg_result_p {
  margin: 0 0 28px;
  color: #333;
  font-size: 17px;
  text-align: center;
}

.sConBox #reg_result .reg_result_p strong {
  color: var(--main-color);
  font-weight: 700;
}

.sConBox #reg_result p {
  color: #777;
  font-size: 15px;
  line-height: 1.8;
  word-break: keep-all;
}

.sConBox #reg_result p + p {
  margin-top: 12px; 
  text-align: center;
}

.sConBox #reg_result #result_email {
  margin: 20px 0;
  padding: 16px 20px;
  line-height: 2;
  text-align: left;
  background: var(--bg-color);
  border: 0;
  border-radius: 12px;
}

.sConBox #reg_result #result_email span {
  width: 90px;
  color: #777;
  font-size: 14px;
}

.sConBox #reg_result #result_email strong {
  color: #111;
  font-size: 15px;
}

.sConBox #reg_result .btn_submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  height: 56px;
  margin: 36px 0 0;
  padding: 0 30px;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  background: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: 12px;
  transition: background-color .2s ease, border-color .2s ease;
}

.sConBox #reg_result .btn_submit:hover {
  background: #b9583f;
  border-color: #b9583f;
}

@media (max-width: 790px) {
  .sConBox #reg_result {
    padding: 50px 30px 40px;
    border-radius: 20px;
  }
}

@media (max-width: 490px) {
  .sConBox #reg_result {
    padding: 40px 20px 32px;
    border-radius: 16px;
  }
  .sConBox #reg_result h2 { font-size: 22px; }
  .sConBox #reg_result h2::before {
    width: 56px;
    height: 56px;
    margin-bottom: 20px;
    font-size: 24px;
  }
  .sConBox #reg_result .reg_result_p { font-size: 16px; }
  .sConBox #reg_result p { font-size: 14px; }
  .sConBox #reg_result p br { display: none; }
  .sConBox #reg_result .btn_submit {
    width: 100%;
    height: 52px;
    font-size: 16px;
  }
}