.w100 {width:100% !important;}
.tc {text-align:center;}
.onLineSection {border-radius:15px;box-shadow: 0 4px 34px rgba(0, 0, 0, .1); -webkit-box-shadow: 0 4px 34px rgba(0, 0, 0, .1);overflow:hidden; padding:45px; }
.onlineBox {font-weight: bold;margin-bottom: 10px;letter-spacing: -0.02em;line-height: 150%;}
.onlineBox>h4 {padding:30px 0;}
.onlineBox>p {margin-top:20px; line-height:1.5em;}
.onlineField {display:flex; gap:30px;}
.onlineField .onWriteBox {width:100%; margin-top:25px}
.onWrText {font-weight:600; display:flex; font-size: var(--font-size-18); margin-bottom:8px; }
.onWrText i {color: #F00; margin-left:5px;}
.onRadioBox { display: flex;align-items: center; gap: 10px;}
.b_input_chk {appearance: none;position: relative;padding-left: 25px;width: 20px;height: 20px;cursor: pointer;}
.b_input_chk:after {content: '';width: 20px;height: 20px;border-radius: 50%;border: 1px solid #ccc;position: absolute;left: 0;top: 0px;z-index: -1;}
.b_input_chk:checked:after {background-color: #254297;border-color: #254297;}
.b_input_chk:checked:before {    display: block;}
.b_input_chk:before {content: '';width: 12px;height: 12px;background: url(/img/icon/b_check.png) no-repeat center / 100%;position: absolute;left: 4px;top: 50%;transform: translateY(-50%);display: none;z-index: 1;}
.onwrInput {    background-color: #f7f7f7;}


.onLineTbWrap {overflow:hidden; overflow-x:auto;}

.onLineTb {width:100%; min-width:815px;}

.onLineTb thead{border-top: 2px solid #000; background: #f7f7f7; border-right:1px solid #ccc;}   
.onLineTb thead tr th {padding:20px; }
.onLineTb tbody tr {border-bottom:1px solid #ccc;}
.onLineTb tbody tr td {padding:20px 20px; word-break:keep-all; border-right:1px solid #ccc; box-sizing:border-box;}
.border_r {border-right:1px solid #ccc;}
.border_l {border-left:1px solid #ccc;}

.b_radio_box {display:flex; align-items:center;}

.onLineSele {width: 100%;padding: 6px 10px;border: 1px solid #ccc;border-radius: 6px;background-color: #f7f7f7;color: #333;font-size: 14px;transition: border 0.3s ease, box-shadow 0.3s ease;}
.onLineSele:focus {border-color: #66afe9;outline: none;box-shadow: 0 0 5px rgba(102, 175, 233, 0.4);}

.k_new_btn {justify-content:center;}
.k_btn_00 {width:180px}

.onlineTextarea {outline: none; line-height:1; padding:15px;resize:none; overflow:auto; border: 1px solid #ddd; width:100%;}
.onlineTextarea:focus {outline: none;}

@media screen and (max-width: 960px) {
.onLineSection {padding:20px 10px;}
.onlineField {flex-wrap:Wrap; gap:0;}
#bo_w .frm_input {height:35px;}
.onlineField .onWriteBox {margin-top:15px;}
}


/* 250620 견적서 추가 관련 커스텀 */
.onLineSection .write_div_wrap{display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;}
.onLineSection .write_div_wrap .estimate_wrap button{padding: 10px 30px; background: #f7f7f7; border: 1px solid #ccc;}

/* 250708 모바일 조정 */
@media screen and (max-width: 512px){
  .onLineTbWrap{font-size: 11px;}
  .onLineTbWrap colgroup col{width: auto !important;}
  .onLineTb{min-width: unset;}
  .onLineTb tbody tr td{padding: 4px;}
  .onLineTb thead tr th{padding: 12px;}
  .b_input_chk:before{
      width: 10px;
      height: 10px;
      left: 3px;
      top: 40%;
  }
  .b_input_chk:after{
      width: 16px;
      height: 16px;
  }

  .onLineSele{padding: 2px 6px; font-size: 11px;}
  .b_input_chk{padding-left: 10px;}
}