.error{
    color: #ff722c;
}
input[type='date'].form-control,input[type='date'].size-sm{
    width: unset;
}
.pt0 { padding-top: 0 !important; }
.pb0 { padding-bottom: 0 !important; }
.pr0 { padding-right: 0 !important; }
.pl0 { padding-left: 0 !important; }
.mr0 { margin-right: 0 !important; }
.mb0 { margin-bottom: 0 !important; }
.ml0 { margin-left: 0 !important; }

/**aos 때문에 메뉴가 뒤로가는 현상 -> position relative 로 변경*/
header{
    position: relative;
    z-index: 5;
}
.sub-head{
    position: relative !important;
    z-index: 4;
}
/***/

/**알림 준비안됨 */
.not-ready{
    width: 100px;
    background-color: #333;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 8px 8px;
    font-size: 1.4rem;
}
/**알림 준비안됨 끝*/
/**swal custom 시작*/
.swal2-show{
    font-size:1.5rem;
}

.swal2-styled.swal2-cancel{
    border: 1px solid #ff722c;
    background-color: unset;
    color: #454545;
}
/**swal custom 끝*/
.m_search_Bx .m_s_bx div{
    display: flex;
}
.d-none{
    display: none;
}
.d-flex{
    display: flex;
    flex-wrap: wrap;
}
.d-block{
    display: block;
}
.d-inline-flex{
    display: inline-flex;
}
.d-inline-block{
    display: inline-block;
}
.m_row {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
/*버튼*/
.m_btn {
    display: inline-block;
    margin: 0 5px;
    border-radius: 50px;
    padding: 0.2rem 0.8rem;
    text-align: center;
    color: #fff;
    font-weight: 600;
    font-size: 1.5rem;
}
.m_btn.btn-sm{
    font-size:1.2rem;
}
.m_btn.btn-lg{
    font-size:2.0rem;
}
.btn-outline-info {
    color: #17a2b8;
    background-color: transparent;
    border: 1px solid #17a2b8;
}
/*버튼 끝*/

.justify-between {
    justify-content: space-between;
}
.justify-around {
    justify-content: space-around;
}
.justify-end{
    justify-content: end;
}
.justify-center {
    justify-content: center;
}
.justify-flex-end{
    justify-content: flex-end;
}
.justify-flex-start{
    justify-content: flex-start;
}
.align-self-center{
    align-self: center;
}
.align-item-center{
    align-items: center;
}
.align-content-center{
    align-content: center;
}

/** 커스텀 로딩 화면 */
.custom-loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6); /* 어두운 배경 */
    display: none; /* 기본적으로 숨김 */
    justify-content: center;
    align-items: center;
    z-index: 99999999; /* 최상위 표시 */
}
.custom-loading-overlay.active {
    display: flex;
}
 /*로딩 애니메이션 */
.custom-loading-svg {
    width: 80px;
    height: 100px;
    color: #FF6700; /* fill 색상 변경 */
}
.custom-preloader{
    display: flex;
    animation: hideLoader 1s linear 1s forwards; /* 1초 후 사라짐 */
}
/* 1초 후 서서히 사라지는 애니메이션 */
@keyframes hideLoader {
    0% {
        opacity: 0.6;
    }
    100% {
        opacity: 0.6;
    }
}
/** 커스텀 로딩 화면 끝 */

/* number input 화살표 제거 */
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
/* Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}
/* number input 화살표 제거 끝 */


/* diabled btn*/
.disabled,.checkDisabled:disabled,button:disabled{
    cursor: default;
    opacity: 0.65;
}

input:disabled{
    background: #d0d0d0;
}

/** GNB 메뉴바 커스텀*/
.header .gnb .de1_ul .de1_li .de1_a.menu-active{
    font-size: 2.0rem;
    color: #ff7934;
}
.header .gnb .de1_ul .de1_li .de2_ul .de2_li .de2_a.menu-active{
    font-size: 1.5rem;
    color: #ff7934;
}
.header .m_gnb .all_gnb .inner .de1_ul .de1_li .de1_a.menu-active{
    color:darkslategrey;
}
.header .m_gnb .all_gnb .inner .de1_ul .de1_li .de2_ul .de2_li .de2_a.menu-active{
    font-size: 1.8rem;
    color:darkslategrey;
    font-weight: 700;
}

/*sub top*/
.sub-head .nav .slide_down ul li a.menu-active{
    color: #565656;
    font-weight: 600;
}

/** GNB 메뉴바 커스텀 끝*/
/*테이블 시작*/
.table-bordered td, .table-bordered th {
    border: 1px solid #dee2e6;
}
.table td, .table th {
    padding: 1rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6;
}
.bg-gradient-light {
    background: #f8f9fa linear-gradient(180deg, #f9fafb, #f8f9fa) repeat-x !important;
    color: #1f2d3d;
}
.text-sm {
    font-size: 1.2rem !important;
}

/*테이블 끝*/

/*데이터 없음 박스*/
.no-data-box {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 200px; /* 필요에 따라 조절 */
    border: 2px dashed #ddd; /* 점선 테두리 */
    border-radius: 15px;
    background-color: #f9f9f9;
    color: #666;
    font-size: 1.2rem;
    font-weight: 500;
    flex-direction: column;
}
.no-data-box p{
    font-size: 2.0rem;
    font-weight: 600;
}
/*데이터 없음 박스 끝*/

/*페이지네이션 조정*/
.pg_wrap .pg_arrow{
    min-width: 40px;
    width: fit-content;
    padding: 5px;
}
.pg_wrap .pg_num{
    font-weight: 700;
}
/*페이지네이션 조정 끝*/

/*메일박스 추가*/
.mailbox-messages > .table {
    margin: 0;
}

.mailbox-controls {
    padding: 5px;
}

.mailbox-controls.with-border {
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.mailbox-read-info {
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
    padding: 10px;
}

.mailbox-read-info h3 {
    font-size: 20px;
    margin: 0;
}

.mailbox-read-info h5 {
    margin: 0;
    padding: 5px 0 0;
}

.mailbox-read-time {
    color: #999;
    font-size: 13px;
}

.mailbox-read-message {
    padding: 10px;
}

.mailbox-attachments {
    padding-left: 0;
    list-style: none;
}

.mailbox-attachments li {
    border: 1px solid #eee;
    float: left;
    margin-bottom: 10px;
    margin-right: 10px;
    width: 200px;
}

.mailbox-attachment-name {
    color: #666;
    font-weight: 700;
}

.mailbox-attachment-icon,
.mailbox-attachment-info,
.mailbox-attachment-size {
    display: block;
}

.mailbox-attachment-info {
    background-color: #f8f9fa;
    padding: 10px;
}

.mailbox-attachment-size {
    color: #999;
    font-size: 12px;
}

.mailbox-attachment-size > span {
    display: inline-block;
    padding-top: .75rem;
}

.mailbox-attachment-icon {
    color: #666;
    font-size: 65px;
    max-height: 132.5px;
    padding: 20px 10px;
    text-align: center;
}

.mailbox-attachment-icon.has-img {
    padding: 0;
}

.mailbox-attachment-icon.has-img > img {
    height: auto;
    max-width: 100%;
}
.mailbox-attachments li{
    background-color:rgba(0, 0, 0, .03);
}
.mailbox-attachment-info a.mailbox-attachment-name {
    display: -webkit-box; /* flex 기반 블록 */
    -webkit-line-clamp: 2; /* 최대 2줄 */
    -webkit-box-orient: vertical; /* 수직 정렬 */
    overflow: hidden; /* 넘치는 텍스트 숨김 */
    text-overflow: ellipsis; /* 말줄임 적용 */
    white-space: normal; /* 여러 줄 가능하도록 설정 */
    width: 100%; /* 부모 기준 크기 */
}

.mailbox-attachment-icon img{
    max-height: 140px;
}
/*메일박스 끝*/

/*코멘트 등록 버튼*/
.je_form_btn .je_btn_register .comment-reg-btn {
    padding: 8px 20px;
    margin-left: 5px;
    font-size: 1.45rem;
    color: #ffffff;
    line-height: 1.5;
    font-weight: 600;
    border: 1px solid #f98d3c;
    background-color: #f98d3c;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}
/*코멘트 등록 버튼 끝*/

/*달력 수정사항*/
.M_days li.today{
    min-width: 4rem;
}
.M_days li span.today{
    padding: 0.5rem;
    border-radius: 50%;
    background-color: #ffb17f;
}
.MS_days .day.weekend li{
    color: #fd3e3e;
}
.o_View_con_t span.today{
    display: unset;
    font-size: unset;
    color: unset;
    text-align: unset;
    border-radius: unset;
    padding: unset;
}
/*//달력 수정사항 끝*/

/**마이페이지 선택 버튼*/
.select-btn{
    font-size: 1.5rem;
    border-radius: 4px;
    padding: 12px 15px;
    box-shadow: none;
    background: #f9f9f9;
    color: #454545;
    border: 1px solid #bebebe;
    height: 45px;
    min-width: 95px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-bottom: 2px;
}
/**마이페이지 선택 버튼끝*/

/**모달 수정사항*/
.modal .modal-header{
    margin: 0 5rem 0 5rem;
    padding-top: 2.5rem;
}
.modal .modal-header .modal-title {
    text-align: center;
    font-size: 3.5rem;
    font-weight: 600;
    color: #515151;
}
/**모달 수정사항 끝*/

/**select2 수정사항*/
.select2-results{
    font-size: 1.3rem;
}
/* Select2 높이 및 스타일 맞추기 */
.select2-container--default .select2-selection--single {
    height: 45px !important;
    padding: 12px 15px !important;
    border-radius: 4px !important;
    border: 1px solid #bebebe !important;
    background: #f9f9f9 !important;
    display: flex !important;
    align-items: center !important;
}
/* Select2 내부 텍스트 정렬 */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 45px !important;
    padding-left: 0 !important;
    color: #454545 !important;
    font-size: 1.3rem !important;
}
/* Select2 화살표 위치 조정 */
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 45px !important;
    right: 10px !important;
}

/* 다중 선택 시 높이 조정 */
.select2-container--default .select2-selection--multiple {
    min-height: 45px !important;  /* 기존 높이와 맞추기 */
    padding: 12px 15px !important;
    border-radius: 4px !important;
    border: 1px solid #bebebe !important;
    background: #f9f9f9 !important;
    display: flex !important;
    align-items: center !important;
}
/* 선택된 아이템 스타일 조정 */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background: #e9ecef !important;
    border-radius: 4px !important;
    padding: 5px 10px !important;
    font-size: 1.3rem !important;
}
/* 선택된 태그 내부 글씨 정렬 */
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    /*display: flex !important;*/
    /*flex-wrap: wrap !important;*/
    gap: 5px !important;
    align-items: center !important;
}
/* placeholder 스타일 조정 */
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    font-size: 1.5rem !important;
    color: #9e9e9e !important;
}
/*select2 클리어 x 버튼*/
.select2-container--default .select2-selection--multiple .select2-selection__clear{
    font-size: 1.2rem !important;
    margin-left: 5px !important;
}
/*select2 클리어 x 버튼*/
.select2-container--default .select2-selection--single .select2-selection__clear{
    font-size: 1.2rem !important;
    margin-left: 5px !important;
}
/**select2 수정사항 끝*/

/**자격증카드*/
.img-fluid {
    max-width: 100%;
    height: auto;
}
.care-cert-div {
    display: flex;
    flex-wrap: wrap;  /* 카드가 너무 많으면 자동 줄바꿈 */
    gap: 10px;  /* 카드 사이 간격 추가 */
    justify-content: flex-start; /* 왼쪽 정렬 */
}

.cert-card {
    width: 150px;  /* 카드 크기 고정 */
    min-height: 200px;  /* 최소 높이 설정 */
    text-align: center;
    padding: 10px;
    border: 1px solid #ddd;
    background: #fff;
}
.cert-card .card-header{
    display: flex;
    justify-content: end;
}
.cert-card .cert-card-title{
    font-weight: 600;
    font-size: 1.8rem;
    margin-top: 0.5rem;
    color: #626262
}
.cert-card .cert-card-label{
    font-size: 1.5rem;
    font-weight: 600;
}
.card-form .form-card-title{
    padding: 2rem 0 1rem 0;
    color: #787878;
}
.card-form .form-card-title h5{
    font-size: 2rem;
}
.card-form .form-card-title i{
    margin-right: 1rem;
}
/**자격증카드 끝*/

/**게시물 css 클래스 변환*/
.board-content-div.reply-div{
    background: aliceblue;
}
.board-content-div{
    margin-bottom: 20px;
    background: #fff;
    box-sizing: border-box;
    border-top: 2px solid #333;
}
.board-content-div .board-content-title{
    padding-top: 25px;
    margin-bottom: 5px ! important;
}
.board-content-div .board-content-title .board-v-title{
    display: block;
    font-size: 2.0rem;
    margin: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-wrap: normal;
    width: 100%;
    padding-bottom: 20px;
    overflow: hidden;
    color: #353535;
    border-bottom: 1px solid #757575;
    word-break: break-all;
}
.board-content-div .board-content-info{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 0;
    border-bottom: 1px solid #f1f1f1;
    color: #666;
}
.board-content-div .writer-info{
    display: flex;
    align-items: center;
    margin-left: 0;
    padding: 0.5rem 0 1rem;
    box-sizing: border-box;

}
.board-content-div .writer-info .sv-member {
    color: #999;
    margin-right: 5px;
    font-weight: bold;
}
.board-content-div .writer-info .bo_Vr_bx{
    float: right;
    width: 30%;
    text-align: right;
}
.board-content-div .writer-info li {
    margin: 1rem 2rem 0 1rem;
    color: #000;
    font-weight: 500;
}
.board-content-div .writer-info li span {
    color: #999;
    margin-right: 5px;
}
.board-content-div .board-content-atc{
    min-height: 200px;
    height: auto !important;
    border-bottom: 1px solid #333;
    margin-bottom: 30px;
    padding-bottom: 30px;
}
.board-content-div .board-content-atc .board-v-atc-title{
    position: absolute;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
}
.board-content-div .board-content-atc .board-v-content{
    white-space: pre-line;
    word-wrap: break-word;
    margin: 10px 0 30px 10px;
    width: 100%;
    line-height: 1.7em;
    min-height: 200px;
    word-break: break-all;
    overflow: hidden;
}
/**게시물 css 클래스 변환 끝*/

/**접히는 텍스트*/
.collapsable-text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    cursor: pointer;
    transition: all 0.1s ease;
    -webkit-line-clamp: 3;
}
.collapsable-text.line-1 { -webkit-line-clamp: 1; }
.collapsable-text.line-2 { -webkit-line-clamp: 2; }
.collapsable-text.line-3 { -webkit-line-clamp: 3; }
.collapsable-text.line-4 { -webkit-line-clamp: 4; }
.collapsable-text.line-5 { -webkit-line-clamp: 5; }
.collapsable-text.line-6 { -webkit-line-clamp: 6; }
.collapsable-text.line-7 { -webkit-line-clamp: 7; }
.collapsable-text.line-8 { -webkit-line-clamp: 8; }


.expand.collapsable-text {
    -webkit-line-clamp: unset;
    display: block;
    white-space: normal;
    height: auto;
}
/**접히는 텍스트 끝*/

/**마이페이지 결제내역 상자*/
.amount-box{
    display: flex;
    gap:1rem;
}
.info-box {
    box-shadow: rgba(0, 0, 0, 0.125) 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 1px 3px;
    background-color: rgb(255, 255, 255);
    display: flex;
    margin-bottom: 1rem;
    min-height: 80px;
    position: relative;
    width: 100%;
    border-radius: 0.25rem;
    padding: 0.5rem;
    min-width: 100px;
    color:#454545;
}
.info-box .info-box-icon {
    align-items: center;
    display: flex;
    font-size: 1.875rem;
    justify-content: center;
    text-align: center;
    width: 70px;
    border-radius: 0.25rem;
}
.info-box .info-box-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.8;
    flex: 1 1 0%;
    padding: 0px 10px;
}
.info-box .info-box-text, .info-box .progress-description {
    display: block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.info-box .info-box-number {
    display: block;
    margin-top: 0.25rem;
    font-weight: 700;
}
.bg-info {
    background-color: rgb(23, 162, 184) !important;
}
.bg-success {
    background-color: rgb(40, 167, 69) !important;
}
.bg-warning {
    background-color: rgb(255, 193, 7) !important;
}
.bg-black {
    background-color: rgb(0, 0, 0);
    color: rgb(255, 255, 255) !important;
}
.elevation-1 {
    box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px !important;
}
/**마이페이지 결제내역 상자 끝*/

/**리스트 커스텀*/
.list-title{
    font-weight: bold;
    font-size: 2.0rem;
    color:#454545;
}
/**리스트 커스텀 끝*/

@media (max-width: 992px) {
    /*페이지네이션 조정*/
    .pg_wrap .pg_arrow{
        min-width: 35px;

    }
}

@media (max-width: 768px){
    /*페이지네이션 조정*/
    .pg_wrap .pg_arrow{
        min-width: 30px;

    }
}

@media (max-width:560px){
    /**게시판 상세보기*/
    .board-content-div .writer-info { flex-wrap:wrap;padding:10px 10px }
    .board-content-div .writer-info li { margin-left:0;width:100%;display:inline-block}
    .board-content-div .writer-info  input{width:100%;text-align:left;}

}