@charset "utf-8";

html{
  font-size: 1rem;
}

body{
  font-family: Pretendard;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;

  padding: 0;
  margin: 0 auto;
  color: #000;

  width: 100%;
}

input,
select,
textarea,
body,
code,
a {
  font-family: Pretendard;
  color: #000;
  text-decoration: none;
}

ul{
  list-style: none;
  padding: 0;
  margin: 0;
}

.one_line{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    line-clamp: 1;
}

.word-break{
    word-break: keep-all;/* 단어 단위 줄바꿈 */    
    white-space: normal;
}

.alert{
    font-size: 0.8rem;
    margin-bottom: 0.7rem;
}

.red{
    color: #f00;
}

header .header{
    width: 100%;
    max-width:  1272px;
    /*height: 84px;*/
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .header .menu_list{
    display: flex;
    justify-content: space-between;
    align-items: start;
    width: 50%;
    max-width: 1200px;
    position: relative;
    font-weight: 400;
    margin: 0 auto;
}

header .header .menu_list .dept1 a.menu{
    font-weight: 700;
    font-size: 1.1rem;
}

header .header .menu_list .dept1 a.menu img{
    margin-left: 10px;
}

header .header .menu_icon{
    display: flex;
    align-items: center;
}

header .header .menu_icon.m_ver{
    display: none;
}

header .header .menu_icon a{
    margin-right: 10px;
    display: flex;
    align-items: center;
}

header .header .menu_icon a img{
    margin-right: 3px;
}

header .header .menu_list .dept1.active a img{
    transform: rotate(180deg);
}

header .header .menu_list .dept1 .submenu {
    display: none;
    position: absolute;
    top: 103%;
    left: 50%;
    width: 100%;
    height: 147px;
    transform: translateX(-50%);
    z-index: 3;
    background-color: #fff;
    list-style: none;
    padding: 10px 0;
    /* transition: all 0.5s ease; */
}

header .header .menu_list .dept1 .submenu li{
    padding: 8px 20px;
}

  
header .header .menu_list .dept1{
    position: relative;
    width: 25%;
    padding: 31px 20px;
}

header .header .menu_list .dept1 .submenu li:hover a,
header .header .menu_list .dept1 .submenu li.active a{
    font-weight: 600;
    color: #1A2B7F;
    border-bottom: 1px solid #1A2B7F;
}

header .header .menu_list .dept1 .submenu li:hover{
    transform: scale(1.1);
    transform-origin: top left ;
}

header .header .submenu_back{
    display: none;
    position: absolute;
    top: 84px;
    left: 0;
    width: 100%;
    height: 152px;
    z-index: 2;
    padding: 10px 0;
    background-color: #fff;
    border-top: 1px solid #E7E7E7;
    /* transition: all 0.5s ease; */
}

header .header .search_drop_page {
    position: absolute;
    top: 83px;
    left: 0;
    width: 100%;
    height: 0; /* 초기 높이 0 설정 */
    overflow: hidden; /* 넘치는 내용 숨김 */
    z-index: 2;
    padding: 0; /* 초기 패딩 설정 */
    background-color: #fff;
    border-top: 1px solid #E7E7E7;
    transition: height 0.5s ease, padding 0.5s ease; /* 트랜지션 */
    /*opacity: 0; !* 보이지 않도록 설정 *!*/
    /*pointer-events: none; !* 클릭 이벤트 방지 *!*/
}

header .header .search_drop_page.active {
    /*opacity: 1; !* 활성화 시 보이기 *!*/
    /*pointer-events: all; !* 클릭 이벤트 허용 *!*/
    /*!* height는 JavaScript로 동적 설정 *!*/
    height: 100vh;
}


header .header .search_drop_page .search_result_area{
    width: 90%;
    max-width: 1272px;
    margin: 0 auto;
}

header .header .search_drop_page .search_result_area .result_count{
    color: #999999;
    text-align: center;
    margin: 1rem    0;
}

header .header .search_drop_page .search_result_area .result_count .r_word,
header .header .search_drop_page .search_result_area .result_count .r_cnt{
    color: #007EBF;
}

header .header .search_drop_page .search_box{
    display: flex;
    align-items: center;
    width: 80%;
    max-width: 500px;
    margin: 0.5rem auto;
}

header .header .search_drop_page .search_box input{
    border: none;
    margin-left: 1rem;
    width: 100%;
    height: 2rem;
}

header .header .search_drop_page .search_result_area .result_area{
    margin: 3rem 0;
}

header .header .search_drop_page .search_result_area .result_area .section_box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #D7D8D9  ;
}

header .header .search_drop_page .search_result_area .result_area .section_box .sec_tit{
    font-size: 1.2rem;
}

header .header .search_drop_page .search_result_area .result_area .section_box .sec_tit .sec_cnt{
    color: #007EBF;
}

header .header .search_drop_page .search_result_area .result_area .section_box .sec_more{
    font-size: 0.9rem;
    cursor:pointer;
}

header .header .search_drop_page .search_result_area .result_list li{
    padding: 1.4rem 0.8rem;
    border-bottom: 1px solid #D7D8D9;
}

header .header .search_drop_page .search_result_area .result_list li .path_reg{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .header .search_drop_page .search_result_area .result_list li .path_reg .path{
    display: flex;
    align-items: center;
    font-size: 0.8rem;
    color: #5F6165;
}

header .header .search_drop_page .search_result_area .result_list li .path_reg .reg{
    color: #142342;
    font-size: 0.8rem;
}

header .header .search_drop_page .search_result_area .result_list li .list_tit{
    font-size: 1rem;
    color: #142342;
    margin: 0.5rem 0;
}

header .header .search_drop_page .search_result_area .result_list li .list_desc{
    width: 80%;
    font-size: 0.8rem;
    color: #5F6165;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    line-clamp: 1;
}

/*header .header .search_drop_page .result_count*/

header .header .m_menu_list.m_ver {
    position: absolute;
    top: 83px;
    left: 0;
    width: 100%;
    height: 0; /* 초기 높이 0 설정 */
    overflow: hidden; /* 내용이 넘치지 않도록 설정 */
    z-index: 2;
    padding: 0; /* 애니메이션에서 패딩을 포함하면 문제가 생길 수 있으므로 초기값 설정 */
    background-color: #fff;
    border-top: 1px solid #E7E7E7;
    transition: height 0.5s ease, padding 0.5s ease;
}

header .header .m_menu_icon.m_ver{
    display: none;
}


footer{
    background-color: #767676;
    width: 100%;
    position: absolute;
}

footer .footer{
    /*width: 100%;*/
    max-width: 1272px;
    margin: 0 auto;
    padding: 3rem 4rem;
    display: flex;
    justify-content: space-between;
    align-items: start;
    color: #fff;
}

footer .footer .logo_info{
    display: flex;
    align-items: start;
}

footer .footer .logo_info .info{
    margin-left: 2rem;
}

footer .footer .logo_info .info .corp_name{
    font-size: 1.5rem;
    margin-top: 0;
}

footer .footer .policy_more{
    display: flex;
    flex-direction: column;
    align-items: end;
}

footer .footer .policy_more a{
    margin-bottom: 1rem;
    color: #fff;
    font-size: 0.9rem;
}

footer .footer .policy_more select{
    border: 1px solid #fff;
    padding: 10px 30px;
    color: #fff;
    font-size: 0.9rem;
    background-color: transparent;
  }

footer .footer .policy_more select option{
    color: #000;
    font-size: 0.9rem;
    background-color: #fff;
}

footer .footer .policy_more select option:hover{
    color: #fff;
}


#main_slide .mainSwiper{
    width: 100vw;
    /* max-width: 1271px; */
    height: 646px;
    margin: 0 auto;
}

#main_slide .mainSwiper img{
    width: 100%;
    height: 646px;
    object-position: center;
  object-fit: cover;
}

/* #main_slide .mainSwiper .swiper-slide{
    background-image: url(../img/main_slide_img1.svg);    
    background-position: center;
    background-repeat: no-repeat;
} */

#main_slide .swiper-slide .slide_box .text_area{
    position: relative;
    top: -646px;
    z-index: 1;
    width: 95%;
    max-width: 1272px;
    margin: 0 auto;
    height: 646px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
}

#main_slide .swiper-slide .slide_box .text_area .sub_tit{
    font-size: 1.5rem;
    font-weight: 600;
}

#main_slide .swiper-slide .slide_box .text_area .main_tit{
    font-size: 6rem;
    font-weight: 600;
    margin: 1.5rem 0;
}

#main_slide .swiper-slide .slide_box .text_area .desc{
    line-height: 160%;
}

#main_slide .slider_navi{
    position: relative;
    top: -80px;
    left: 0 ;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

#main_slide .slider_navi .main_slider_bar{
    display: flex;
    align-items: center;
}

#main_slide .slider_navi .num{
    color: #fff;
    font-size: 0.8rem;
    margin: 0 5px;
}

#main_slide .slider_navi .main_slider_bar .bar{
    width: 30px;
    border-bottom: 1px solid #fff;
    opacity: 0.5;
}
#main_slide .slider_navi .main_slider_bar .bar.active{
    opacity: 1;
}

#main_slide .slider_navi .main_slider_prev,
#main_slide .slider_navi .main_slider_next{
    margin : 0 10px;
}


#main_slide .slider_navi .main_slider_prev img,
#main_slide .slider_navi .main_slider_next img {
    height: 10px;
    display: block;
}

#main_edu_slide{
    margin: 5rem auto;
}

#main_edu_slide .tit_btns{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 95%;
    max-width: 1232px;
    margin: 0 auto;
}

#main_edu_slide .tit_btns .main_edu_tit{
    font-size: 3rem;
    font-weight: 600;
}

#main_edu_slide .tit_btns .btns{
    display: flex;
    align-items: center;
}

#main_edu_slide .tit_btns .btns .btn{
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 2px;
    cursor: pointer;
    border: 1px solid #E7E7E7;
  }

#main_edu_slide .eduSwiper{
    width: 100%;
    max-width: 1600px;
    margin: 2rem auto;
}  

#main_edu_slide .eduSwiper .swiper-container {
    width: 100%;
    overflow: visible; /* 슬라이드 앞뒤가 보이게 설정 */
}

#main_edu_slide .eduSwiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    border-radius: 8px;
    max-width: 408px;
    max-height: 475px;
    position: relative;
}

#main_edu_slide .eduSwiper .swiper-slide img{
    width: 100%;
    max-width: 408px;
    max-height: 475px;
    object-fit: contain;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box{
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: #fff;
    margin: 40px;
    height: calc(100% - 80px);
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box.black{
    color: #000;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .box .year_status{
    display: flex;
    align-items: center;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .box .year_status div{
    padding: 4px 8px;
    background-color: #000;
    opacity: 0.4;
    margin-right: 10px;
    font-size: 0.8rem;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box.black .box .year_status div{
    opacity: 1;
    color: #fff;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .box .con_tit{
    margin: 32px 0 16px 0;
    font-size: 1.6rem;
    font-weight: 600;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .box .reg_box{
    font-size: 1rem;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .box .reg_box .reg_tit{
    font-weight: 500;
    margin-bottom: 0.5rem;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .detail_btn{
    display: flex;
    align-items: center;
    font-size: 1rem;
    padding: 10px 18px;
    border: 1px solid #fff;
    width: 92px;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box.black .detail_btn{
    border: 1px solid #000;
}

#main_edu_slide .eduSwiper .swiper-slide .con_btn_box .detail_btn img{
    display: block;
    margin-left: 10px;
    width: 8px;
    height: 16px;
}

#notice_banner_area{
    background-color: #F8F8F8;
    padding: 5rem 0;
}

#notice_banner_area .notice_banner {
    width: 95%;
    max-width: 1272px;
    margin: auto;
    display: flex;
    /*align-items: center;*/
}

#notice_banner_area .notice_banner .notice{
    width: 60%;
}

#notice_banner_area .notice_banner .notice .notice_table{
    width: 95%;
}

#notice_banner_area .notice_banner .notice .notice_table li{
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#notice_banner_area .notice_banner .notice .notice_table li{
    border-bottom: 1px dotted #000;
}

#notice_banner_area .notice_banner .notice .notice_table li:first-child{
    font-weight: 600;
    border-bottom: 2px solid #000;
}

#notice_banner_area .notice_banner .notice .notice_table li:first-child div:first-child{
    font-size: 2rem;
}

#notice_banner_area .notice_banner .notice .notice_table .left{
    text-align: left;
}

#notice_banner_area .notice_banner .notice .notice_table .right{
    text-align: right;
}
    

#notice_banner_area .notice_banner .banner{
    width: 40%;
}

#notice_banner_area .notice_banner .banner img{
    width: 100%;
}

#partner_slide{
    margin: 2.5rem 0;
    overflow: hidden;
}


#partner_slide .partnerSwiper a{
    padding-top:15px;
}

#partner_slide .partnerSwiper img{
    height: 30px;
    /*margin: auto 1rem; 임시조정 */
    margin: auto 3rem;
    object-fit: contain;
}


/*
    임시조정
   #partner_slide .partnerSwiper{
    display: flex;
    animation: flow 20s linear infinite;  !* 20초 동안 반복되는 흐름 애니메이션 *!
}*/

.container .page_top_img_area{
    position: relative;
}

.container .page_top_img_area img{
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: center;
}

.container .page_top_img_area .page_tit{
    font-size: 2.5rem;
    font-weight: 600;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
}

.container .page_tab_box_area{
    background-color: #F6F6F6;
    margin-top: -4px;
}

.container .page_tab_box_area .page_tab_box{
    width: 100%;
    max-width: 1272px;
    margin: 0  auto;
    display: flex;
    align-items: center;
    top: 90%;
}

.container .page_tab_box_area .page_tab_box .home{
    padding: 20px;
    border: 1px solid #ccc;
    cursor: pointer;
}

.container .page_tab_box_area .page_tab_box .home img{
    display: block;
}

.custom-select {
    position: relative;
    width: 320px;
    user-select: none;
  }
  
  .select-trigger {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    cursor: pointer;
    border: 1px solid #ccc;
    height: 40px;
  }

  .select-trigger.none-border{
    border-left: none;
    border-right: none;
  }
  
  .arrow {
    font-size: 12px;
  }
  
  .options {
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    border: 1px solid #ccc;
    display: none;
    z-index: 3;
  }
  
  .options li {
    padding: 20px 15px;
    cursor: pointer;
    transition: background 0.2s;
    border-bottom: 1px solid #E7E7E7;
  }
  
  .options li:hover {
    background-color: #f0f0f0;
  }
  
  /* Show dropdown when active */
  .custom-select.open .options {
    display: block;
  }

  .custom-select.open .select-trigger{
    background-color: #328FFB;
    color: #fff;
  }

  .custom-select.open .select-trigger .arrow{
    transform: rotate(180deg);
  }

  .container .content{
    width: 95%;
    max-width: 1272px;
    min-height: calc(100vh / 2);
    margin: 3rem auto;
  }

    .container .min-h-100{
        min-height: calc(100vh / 1.5);
    }
    .container .min-h-80{
        min-height: calc(100vh / 1.8);
        padding-top: calc(21vh / 1.5);
    }

  .container .content.flex{
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .container .content img{
    display: block;
    width: 95%;
    margin: 0 auto;
  }

  .container .main_tit{
    font-size: 2.5rem;
    font-weight: 600;
  }
 
  .container .sub_tit {
    font-size: 1.5rem;
    margin: 1.5rem 0;
    font-weight: 600;
}

  .container .main_tit.border-bottom{
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #000;
  }

  .container #edu_class_list_area .tag_box{
    display: flex;
    align-items: center;
    margin: 2.5rem 0;
  }

  .container #edu_class_list_area .tag_box li{
    padding: 0.8rem 2.5rem;
    margin-right: 1rem;
    color: #767676;
    background-color: #E7E7E7;
    border-radius: 2rem;
    cursor: pointer;
  }

  .container #edu_class_list_area .tag_box li.active{
    color: #fff;
    background-color: #328FFB;
  }

  .container #edu_class_list_area .edu_classList{
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }

  .container #edu_class_list_area .edu_classList li{
    margin: 1rem 0;
  }

  .container #edu_class_list_area .edu_classList .edu_class .thumb_img img{
    width: 100%;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info .class_tag{
    padding: 0.3rem 1.5rem;
    color: #767676;
    background-color: #E7E7E7;
    border-radius: 0.8rem;
    max-width: 3.5rem;
    text-align: center;
    margin: 1.2rem 0;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info .class_tag.ing{
    color: #fff;
    background-color: #328FFB;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info .class_tit{
    font-size: 1.3rem;
    font-weight: 500;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info ul{
    margin-top: 1.2rem;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info ul li{
    margin: 0.5rem 0;
  }

  .container #edu_class_list_area .edu_classList .edu_class .class_info ul li span{
    font-weight: 600;
    margin-right: 1rem;
  }

  .container #edu_class_detail_area .class_thumb_info{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 2rem 0;
  }

  .container #edu_class_detail_area .class_thumb_info .thumb_img{
    width: 40%;
  }

  .container #edu_class_detail_area .class_thumb_info .info{
    width: 55%;
  }

  .container #edu_class_detail_area .class_thumb_info .info .tit_addr{
    padding: 1rem 0;
    border-bottom: 1px solid #E7E7E7;
  }

  .container #edu_class_detail_area .class_thumb_info .info .tit_addr .info_tit{
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
  }

  .container #edu_class_detail_area .class_thumb_info .info .class_info{
    padding: 1rem 0;
    display: flex;
    justify-content: space-between;
    align-items: start ;
  }

  .container #edu_class_detail_area .class_thumb_info .info .class_info ul{
    width: 50%;
  }

  .container #edu_class_detail_area .class_thumb_info .info .class_info ul li{
    margin: 0.8rem 0;
  }
  
  .container #edu_class_detail_area .class_thumb_info .info .class_info ul li span{
    font-weight: 600;
    margin-right: 1rem;
  }

  .container #edu_class_detail_area .class_thumb_info .desc{
    font-size: 0.9rem;
  }

  .container #edu_class_detail_area .class_thumb_info .class_req_btn{
    color: #fff;
    font-weight: 600;
    text-align: center;
    padding: 1rem;
    margin: 2rem 0;
    background-color: #328FFB;
    cursor: pointer;
  }

  .container #edu_class_detail_area .detail_tab{
    display: flex;
    align-items: center;
    border-bottom: 2px solid #E7E7E7;
  }

  .container #edu_class_detail_area .detail_tab .tab{
    padding: 1rem 2.5rem;
    color: #767676;
    cursor: pointer;
  }

  .container #edu_class_detail_area .detail_tab .tab.active{
    border-bottom: 2px solid #000;
    color: #000;
  }

  .container #edu_class_detail_area .detail_page div{
    margin: 2rem 0;
    margin-bottom: 60px;
    margin-top:10px;
  }

  .container #edu_class_detail_area .list_btn{
    width: 100px;
    text-align: center;
    padding: 1rem 3rem;
    border: 1px solid #000;
    margin: 0   auto;
  }


    /* 카드 전체 스타일 */
    .syllabus-card {
        margin-top: 20px;
        border-radius: 4px;
        overflow: hidden;
        background-color: #fff;
    }

    /* 카드 헤더 */
    .syllabus-card-header {
        background-color: #0056b3;  /* 사이트 메인 컬러에 맞게 조정 가능 */
        padding: 12px 20px;
        color: #fff;
    }

    .syllabus-card-header h5 {
        margin: 0;
        font-size: 18px;
    }

    /* 카드 바디와 테이블 */
    .syllabus-card-body {
        padding: 0;
    }

    .syllabus-table {
        width: 100%;
        border-collapse: collapse;
    }

    .syllabus-table thead {
        background-color: #f8f9fa;
    }

    .syllabus-table th,
    .syllabus-table td {
        text-align: center;
        padding: 10px;
        border: 1px solid #e0e0e0;
    }

    .syllabus-table th {
        font-weight: bold;
    }



  .container #class_req_area .req_tit{
    font-size: 1.3rem;
    font-weight: 600;
    padding: 1rem 0;
    border-bottom: 1px solid #000;
  }

  .container #class_req_area .class_info{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
  }

  .container #class_req_area .class_info ul{
    width: 50%;
  }

  .container #class_req_area .class_info ul li{
    display: flex;
    align-items: center;
    border-bottom: 1px solid #E7E7E7;
  }

  .container #class_req_area .class_info .info_tit{
    width: 20%;
    text-align: center;
    font-weight: 600;
    background-color: #F6F6F6;
    padding: 2rem 0;
  }

  .container #class_req_area .class_info .info_desc{
    width: 80%;
    margin-left: 1rem;
  }

  .container #class_req_area .input_area .input_box{
    display: flex;
    align-items: center;
    border-bottom: 1px solid #E7E7E7;
  }

  .container #class_req_area .input_area .input_box .input_tit{
    width: 20%;
  }

  .container #class_req_area .input_area .input_box .sex_box{
    margin: 0.7rem 0;
  }

  .container #class_req_area .input_area .input_box .sex_box label{
      margin-right: 1rem;
  }


  .container #class_req_area .input_area .input_box .input_p{
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-grow: 1;
  }

  .container #class_req_area .input_area .input_box .input_p .input{
    display: flex;
    align-items: center;
    flex-grow: 1;
  }

  .container #class_req_area .input_area input[type=text],
  .container #class_req_area .input_area input[type=number],
  .container #class_req_area .input_area input[type=email]{
    border: 1px solid #DEDEDE;
    height: 40px;
    margin: 0.7rem 0;
    flex-grow: 1;
    padding-left:10px;
    padding-right: 10px;
  }

.container #class_req_area .input_area input[type=password]{
    border: 1px solid #DEDEDE;
    height: 40px;
    margin: 0.7rem 0;
    flex-grow: 1;
}

  .container #class_req_area .input_area select{
    border: 1px solid #DEDEDE;
    height: 44px;
    margin: 0.7rem 0;
    flex-grow: 1;
  }

  .container #class_req_area textarea{
    width: 100%;
    height: 100px;
    resize: none;
    border: none;
    padding: 2rem 0;
    margin-bottom: 2rem;
    border-bottom: 1px solid #E7E7E7;
  }

  .container #class_req_area .input_area.blue_back{
    background-color: #F4FAFF;
    border: 1px solid #C7E3FE;
    padding: 1.3rem;
    margin: 1.3rem 0;
  }

  .container #class_req_area .input_area.blue_back .input_box{
    border-bottom: none;
  }

  .container #class_req_area .input_area.blue_back .input_tit{
    text-align: center;
  }

  .container #class_req_area .req_btn{
    width: 35%;
    color: #fff;
    font-weight: 600;
    text-align: center;
    margin: 2rem auto;
    cursor: pointer;
  }

  .container #qna_detail_area .question_tit,
  .container #gallery_detail_area .gallery_tit{
    font-size: 1.4rem;
    font-weight: 600;
  }

  .container #qna_detail_area .question_info,
  .container #gallery_detail_area .gallery_info{
    margin: 2rem 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }

  .container #qna_detail_area .question_info .q_info_box,
  .container #gallery_detail_area .gallery_info .g_info_box{
    display: flex;
    align-items: center;
    margin-right: 2rem;
  }

  .container #qna_detail_area .question_info .q_info_box .info_tit,
  .container #gallery_detail_area .gallery_info .g_info_box .info_tit{
    font-weight: 600;
    margin-right: 1rem;
  }

  .container #qna_detail_area .question{
    padding: 2rem 0;
    border-top: 1px solid #131313;
  }

  .container #qna_detail_area .answer{
    padding: 2rem 0;
    border-top: 1px dotted #131313;
  }

  .container #qna_detail_area .list_btn,
  .container #gallery_detail_area .list_btn{
    width: 20%;
    margin: 1rem auto;
    font-size: 1.1rem;
    text-align: center;
    padding: 1rem 3rem;
    border: 1px solid #131313;
  }

  .container #gallery_area .gallery_list{
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    border-top: 1px solid #111928;
    padding: 2rem 0;
  }

  .container #gallery_area .gallery_list li{
    display: flex;
    flex-direction: column;
    align-items: start;
  }

  .container #gallery_area .gallery_list li img{
    width: 100%;
  }

  .container #gallery_area .gallery_list li .tit{
    margin: 1rem 0;
    font-weight: 600;
  }

  .container #gallery_area .gallery_list li .reg_date{
    font-size: 0.8rem;
    color: #767676;
  }

  .container #gallery_detail_area .img_box{
    border-top: 1px solid #111928;
    padding: 2rem 0;
  }

  .container #gallery_detail_area .img_box img{
    width: 100%;
  }

  .container #faq_area .sub_tit{
    margin-top: 3rem;
  }

  .container #faq_area .faq_list{
    border-top: 2px solid #000;
    margin-bottom: 5rem;
  }

  .container #faq_area .faq_list .faq .faq_q{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 0;
    border-bottom: 1px solid #E7E7E7;
  }

  .container #faq_area .faq_list .faq .faq_q .faq_num_tit{
    display: flex;
    align-items: center;
  }

  .container #faq_area .faq_list .faq .faq_q .faq_num_tit .faq_num{
    margin-right: 2rem;
  }

  .container #faq_area .faq_list .faq .faq_q img{
    width: 10px;
    margin: 0 2rem;
  }

  .container #faq_area .faq_list .faq.active .faq_q{
    color: #328FFB;
  }

  .container #faq_area .faq_list .faq.active .faq_q img{
    transform: rotate(180deg);
    filter: invert(43%) sepia(92%) saturate(2969%) hue-rotate(180deg) brightness(93%) contrast(96%);
  }

  .container #faq_area .faq_list .faq .faq_a{
    display: none;
  }

  .container #faq_area .faq_list .faq.active .faq_a{
    display: block;
    padding: 2rem;
    background-color: #F6F6F6;
  }

  .container .cnt_search{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 1rem 0 0.5rem 0;
  }

  .container .cnt_search .search_box{
    display: flex;
    align-items: center;
    width: 40%;
  }

  .container .cnt_search .search_box input{
    border: 1px solid #DEDEDE;
    height: 40px;
    margin: 0.7rem 0;
    flex-grow: 1;
    padding-left:10px;
    padding-right: 10px;
  }

  .container .cnt_search .search_box .search_button{
    color: #fff;
    background-color: #000;
    font-weight: 500;
    padding: 0.7rem 2.5rem;
    margin-left: 1rem;
    cursor: pointer;
  }

  .container .join_step_area{
    margin: 2rem 0;
  }

  .container .join_step_area .tit_stepSet.center{
    font-size: 2rem;
    text-align: center;
  }

  .container .join_step_area .tit_stepSet.border-bottom{
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #000;
  }

  .container .join_step_area .tit_stepSet .m_stepSet{
    display: none;
  }

  .container .join_step_area .stepSet{
    margin: 3rem auto;
    width: 70%;
  }

  .container .join_step_area .step1_alram{
    text-align: center;
    margin-bottom: 1.8rem;
  }

  .container .join_step_area .sub_tit{
    font-size: 1.3rem;
    padding: 1.2rem 0;
    border-bottom: 1px solid #000;
  }

  .container .join_step_area .input_area li{
    display: flex;
    flex-direction: column;
    padding: 0.3rem 0;
    margin-top: 0.3rem;
    border-bottom: 1px solid #DEDEDE;
  }

  .container .join_step_area .input_area li.flex_rows{
    flex-direction: row;
    align-items: center;
  }


  .container .join_step_area .input_area li .label{
    font-size: 0.9rem;
    margin-bottom: -0.5rem;
  }

  .container .join_step_area .input_area li.flex_rows .label{
    width: 15%;
    margin-bottom: 0;
  }

  .container .join_step_area .input_area li.flex_rows .input_box{
    display: flex;
    width: 100%;
  }

  .container .join_step_area .input_area li .input_box{
    display: flex;
  }

  .container .join_step_area .input_area li .flex_cols{
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  .container .join_step_area .input_area li .flex_cols input{
    margin: 0.3rem 0;
    padding: 0;
  }

  .container .join_step_area .input_area li .flex_cols button{
    margin: 0.3rem 0;
  }

  .container .join_step_area .input_area li select{
    border: 1px solid #DEDEDE;
    height: 44px;
    margin: 0.7rem 0;
    flex-grow: 1;
  }

  .container .join_step_area .input_area li .radio_box{
    margin: 1rem 0;
  }
  .container .join_step_area .input_area li .radio_box label{
    margin-right: 1rem;
    font-size: 0.8rem;
  }

  .container .join_step_area .input_area input{
    border: 1px solid #DEDEDE;
    height: 40px;
    margin: 0.7rem 0;
    flex-grow: 1;
    padding: 0 1rem;
  }

  .container .join_step_area .input_area input.fail{
    border: 1px solid #F63D68;
    color: #F63D68;
  }

  .container .join_step_area .input_area .input_box button{
    height: 42px;
    /*padding: 0 2rem;*/
    margin: 0.7rem 0;
    background-color: #fff;
    border: 1px solid #328FFB;
    color: #328FFB;
    cursor: pointer;
  }

  .container .join_step_area .input_area .input_box button.disabled{
    color: #CCCCCC;
    border: 1px solid #CCCCCC;
  }

  .container .join_step_area .alarm{
    margin-top: -0.6rem;
    font-size: 0.8rem;
  }

  .container .join_step_area .next_step_btn{
    display: block;
    color: #CCCCCC;
    background-color: #fff;
    border: 1px solid #CCCCCC;
    padding: 1rem 2rem;
    margin: 1rem auto;
    cursor: pointer;
  }

  .container .join_step_area .prev_step_btn{
    display: block;
    color: #328FFB;
    background-color: #fff;
    border: 1px solid #328FFB;
    padding: 1rem 2rem;
    margin: 1rem auto;
    cursor: pointer;
  }

  .container .join_step_area .next_step_btn.done_btn{
    background-color: #CCCCCC;
    color: #fff;
  }

  .container .join_step_area .btn_box{
    display: flex;
    align-items: center;
  }
  .container .join_step_area .btn_box button{
    width: 49%;
    cursor: pointer;
  }

  .container .join_step_area .btn_box button.visibled{
    background-color: #328FFB;
    color: #fff;
  }

  .container .join_step_area .policy_list li{
    padding: 1rem;
  }

  .container .join_step_area .policy_list li .policy_content textarea{
    background-color: #F6F6F6;
    margin: 1rem 0;
    padding: 1.5rem;
    overflow-x: auto;
    height: 300px;
    width:100%;
    font-size:1rem;
    line-height: 1.5;
  }

  .container .join_step_area .policy_list li .policy_table{
    text-align: center;
    margin: 1rem 0;
  }

  .container .join_step_area .policy_list li .policy_table th{
    background-color: #F6F6F6;
    padding: 1rem 0;
    border-top: 1px solid #E7E7E7;
    border-bottom: 1px solid #E7E7E7;
  }

  .container .join_step_area .policy_list li .policy_table td{
    padding: 1rem 0;
    border-bottom: 1px solid #E7E7E7;
  }

 
.container .join_step_area  input[type="checkbox"],
.container .join_step_area  input[type="radio"]{
    display: none; /* 기본 체크박스를 숨김 */
}

.container .join_step_area  label {
    position: relative;
    padding-left: 32px; /* 체크박스 오른쪽 간격 */
    cursor: pointer;
}

.container .join_step_area  label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border: 2px solid #aaa;
    border-radius: 4px; /* 모서리를 둥글게 */
    background: #fff;
    transition: border-color 0.3s ease, background-color 0.3s ease;
}

.container .join_step_area  label::after {
    content: '✔';
    position: absolute;
    left: 3px;
    top: 50%;
    transform: translateY(-50%) scale(0); /* 비활성화 상태 */
    font-size: 16px;
    color: #328FFB;
    transition: transform 0.3s ease;
}

.container .join_step_area  input[type="checkbox"]:checked + label::after,
.container .join_step_area  input[type="radio"]:checked + label::after {
    transform: translateY(-50%) translateX(20%) scale(1); /* 체크됐을 때 표시 */
}

.container .join_step_area  input[type="checkbox"]:checked + label::before,
.container .join_step_area  input[type="radio"]:checked + label::before {
    border-color: #328FFB; /* 체크 시 테두리 색 변경 */
    background-color: #e0f4ff; /* 선택 시 배경 색 */
}

#withdrawal-dialog .tit{
    font-size: 1.3rem;
    font-weight: 600;
    text-align: center;
}

#withdrawal-dialog .ask{
    text-align: center;
    margin: 1rem 0;
}

#withdrawal-dialog .btn_box{
    display: flex;
    justify-content: space-around;
    align-items: center;
}

#withdrawal-dialog .btn_box .btn{
    width: 40%;
    text-align: center;
    padding: 1rem 3rem;
    margin: 2rem 0 0 0;
    cursor: pointer;
}

#withdrawal-dialog .btn_box .btn.cancel{    
    background-color: #E7ECEF;
}

#withdrawal-dialog .btn_box .btn.withdrawal_btn{
    background-color: #263238;
    color: #fff;
}

.container #login{
    width: 40%;
    margin: 0 auto;
}

.container #login .login_sub_btn{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 1rem 0 2rem 0;
    font-size: 0.8rem;
}

  .board_table {
    width: 100%;
    max-width: 1272px;
    border-collapse: collapse;
    /* margin: 20px auto;*/
    overflow: hidden; 
    /* box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);  */
  }

  col.m_board,
  col.m_col {
    display: table-column; /* 기본적으로 표시 */
  }
  
  .board_table th,
  .board_table td {
    padding: 1.4rem;
    text-align: center;
    border-bottom: 1px solid #E7E7E7; /* 구분선 */
  }
  
  .board_table th {
    background-color: #F2F2F3; /* 헤더 배경색 */
    color: #131313; /* 헤더 글자색 */
    border-top: 2px solid #131313;
    font-weight: bold;
  }
  
  .board_table tr:hover {
    background-color: #F4FAFF; /* 호버 시 배경 색상 */
  }
  
  .board_table td{
    font-weight: 400;
  }
  
  .board_table td.tit{
    text-align: left;
  }

  .board_table .qna_done{
    color: #fff;
    background-color: #000;
    padding: 8px;
  }
  
  .board_table a {
    text-decoration: none; /* 링크 밑줄 제거 */
  }
  
  .board_table a:hover {
    text-decoration: underline; /* 링크 호버 시 밑줄 */
  }
  
  .board_table a .table_list_tit,
  .board_table a .table_list_desc{
    text-align: left;
    color: #5F6165;
  }
  
  .board_table a .table_list_tit{
    color: #142342;
    margin-bottom: 20px;
    font-size: 1.3rem;
  }
  
  .board_table a .table_list_desc{
    font-size: 0.9rem;
  }

  .pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
  }
  
  .pagination a {
    padding: 8px 12px;
    margin: 10px 5px;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
  }
  
  .pagination a:hover {
    background-color: #B8BECB;
    color: white;
  }
  
  .pagination .prev, .pagination .next {
    font-weight: bold;
  }

  .pagination .num.active {
    background-color: #B8BECB;
    color: white;
    pointer-events: none;
  }

  
.ui-dialog {
    border-radius: 20px;
    overflow: hidden;
    max-width: 800px;
  }
  
  .ui-dialog .ui-dialog-titlebar {
    height: 77px;
    padding: 0;
    border: none;
    /* border-bottom: 1px solid #e3e3e3; */
    background-color: #fff;
    border-radius: 0;
  }
  #view-dialog {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
  }
  .ui-dialog .ui-dialog-title {
    display: block;
    margin: 0;
    padding-top: 25px;
    padding-left: 30px;
    float: none;
    font-size: 1.9rem;
    font-weight: 400;
  }
  
  .ui-dialog .corp_detail_info li{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    border-bottom: 1px solid #7F8186;
    font-size: 1rem;
  }
  
  .ui-dialog .corp_detail_info li .th{
    width: 15%;
    color: #1B2E58;
  }
  
  .ui-dialog .corp_detail_info li .td{
    width: 85%;
    color: #5F6165;
  }
  
  .ui-widget.ui-widget-content {
    border-radius: 20px;
    /* border: 1px solid #c2c2c2; */
    padding: 0;
  
  }
  .ui-dialog .ui-dialog-content {
    padding: 20px 30px 50px;
  }
  .table-file-title {
    width: 100%;
    /* border-top: 1px dashed #b5b5b5; */
    padding-top: 10px;
    cursor: pointer;
  }
  .ui-dialog .ui-dialog-titlebar-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 76px;
    height: 76px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: transparent;
    /* border-left: 1px solid #e3e3e3; */
    font-size: 0;
  }
  .ui-dialog .ui-dialog-titlebar-close::before {
    content: '';
    display: block;
    position: absolute;
    top: 25px;
    left: 25px;
    width: 26px;
    height: 26px;
    background-image: url(/static/images/close.svg);
    background-repeat: no-repeat;
    background-position: 0 6px;
  }
  .ui-dialog .ui-dialog-titlebar-close:focus{
    outline: none;
  }
  .ui-dialog .ui-dialog-titlebar-close span {
    display: none;
  }
  .ui-dialog .ui-dialog-titlebar-close span {
    display: none;
  }
  .ui-dialog .ui-dialog-buttonset button {
    font-size: 1.143rem;
  }
  
  .ui-widget-content{
    border-top: none;
  }

@keyframes flow {
    from {
        transform: translateX(0);  /* 처음에는 제자리 */
    }
    to {
        transform: translateX(-100%); /* 마지막에는 왼쪽으로 이동 */
    }
}

@media (max-width: 1024px)  {
    header .header .main_logo {
        margin-left: 0.5rem;
    }

    footer .footer{
        padding: 2rem;
    }
    footer .footer .logo_info{
        flex-direction: column;
    }

    .container .content.flex{
        flex-direction: column;
    }
}

@media (max-width: 768px) {
    header .header{
        height: 4rem;
    }
    header .header .main_logo{
        margin-left: 0.9rem;
        height: 3rem;
    }
    header .header .menu_list.pc_ver,
    header .header .menu_icon.pc_ver{
        display: none;
    }

    header .header .m_menu_icon.m_ver{
        display: flex;
        align-items: center;
        margin-right: 1rem;
    }


    header .header .m_menu_icon.m_ver a {
        margin-left: 0.5rem;
    }
    header .header .m_menu_icon.m_ver a img{
        display: block;
    }
    /*header .header .m_menu_list.m_ver {*/
    /*    position: absolute;*/
    /*    top: 64px;*/
    /*    left: 0;*/
    /*    width: 100%;*/
    /*    height: 0; !* 초기 높이 0 설정 *!*/
    /*    overflow: hidden; !* 내용이 넘치지 않도록 설정 *!*/
    /*    z-index: 2;*/
    /*    padding: 0; !* 애니메이션에서 패딩을 포함하면 문제가 생길 수 있으므로 초기값 설정 *!*/
    /*    background-color: #fff;*/
    /*    border-top: 1px solid #E7E7E7;*/
    /*    transition: height 0.5s ease, padding 0.5s ease;*/
    /*}*/
    header .header .search_drop_page,
    header .header .m_menu_list.m_ver {
        top: 64px;
    }

    header .header .m_menu_list.m_ver.active {
        height: 100vh; /* 활성화 상태에서 전체 화면 높이 */
        padding: 10px 0; /* 활성화 시 패딩 추가 */
    }

    header .header .m_menu_list.m_ver .login_join_box{
        margin: 1.5rem;
    }

    header .header .m_menu_list.m_ver .login_join_box .login .user{
        font-size: 1.3rem;
        font-weight: 600;
    }

    header .header .m_menu_list.m_ver .login_join_box .login .btns_box{
        display: flex;
        justify-content: space-between;
    }

    header .header .m_menu_list.m_ver .login_join_box .blue_btn{
        font-size: 1rem;
        color: #fff;
        background-color: #328FFB;
    }

    header .header .m_menu_list.m_ver .login_join_box .half{
        width: calc((100% - 3.3rem) / 2.1);
    }

    header .header .m_menu_list.m_ver .login_join_box .silver_btn{
        font-size: 1rem;
        color: #000;
        background-color: #E7ECEF;
    }

    header .header .m_menu_list.m_ver .login_join_box .btn{
        text-align: center;
        padding: 1rem 0rem;
        margin: 0.4rem 0;
        border-radius: 0.5rem;
    }

    header .header .m_menu_list.m_ver .login_join_box .list{
        padding: 1rem 0;
    }

    header .header .m_menu_list.m_ver .login_join_box .list .list_tit{
        font-size: 1.2rem;
        font-weight: 500;
    }

    header .header .m_menu_list.m_ver .login_join_box .list .list_menu{
        padding-top: 1rem;
        font-size: 1rem;
        display: grid;
        grid-auto-rows: auto;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;
    }

    header .header .m_menu_list.m_ver .login_join_box .list .list_menu li{
        /*padding: 0.5rem 0;*/
    }

    header .header .m_menu_list.m_ver .login_join_box .list .div_line{
        border-bottom: 1px solid #DEDEDE;
        margin: 1.5rem 0;
    }

    .container .page_top_img_area .page_tit{
        font-size: 2rem;
    }

    .container .page_tab_box_area{
        display: none;
    }

    .container .join_step_area .input_area li.flex_rows .label{
        width: 25%;
    }

    #main_slide .swiper-slide .slide_box .text_area .sub_tit{
        font-size: 1rem;
    }

    #main_slide .swiper-slide .slide_box .text_area .main_tit{
        font-size: 3rem;
    }

    #notice_banner_area .notice_banner{
        flex-direction: column;
    }

    #notice_banner_area .notice_banner .notice,
    #notice_banner_area .notice_banner .notice .notice_table,
    #notice_banner_area .notice_banner .banner{
        width: 100%;
    }

    #notice_banner_area .notice_banner .banner{
        margin-top: 1rem;
    }

    .container .cnt_search .search_box .search_btn{
        padding: 0.7rem 1.5rem;
    }

    .board_table th, .board_table td{
        font-size: 0.9rem;
        padding: 1rem;
    }

    #partner_slide{
        margin: 0.5rem 0;
        overflow: hidden;
    }


    #partner_slide .partnerSwiper a{
        padding-top:15px;
    }

    #partner_slide .partnerSwiper img{
        height: 30px;
        /*margin: auto 1rem; 임시조정 */
        margin: auto 3rem;
        object-fit: contain;
        width:75%;
    }
}


@media (max-width: 480px)  {
    html{
        font-size: 14px;
    }

    header .header .search_drop_page,
    header .header .m_menu_list.m_ver {
        top: 55px;
    }

    header .header .m_menu_list.m_ver .login_join_box .list .list_menu{
        grid-template-columns: repeat(2, 1fr);
        /*gap: 20px;*/
    }

    footer .footer{
        padding: 1rem;
        flex-direction: column;
    }

    footer .footer .logo_info{
        flex-direction: column;
    }

    footer .footer .logo_info img{
        width: 40%;
        margin-bottom: 1rem;
    }

    footer .footer .logo_info .info{
        margin-left: 0;
    }

    footer .footer .policy_more{
        align-items: start;
    }

    .container .page_tab_box_area{
        display: none;
    }

    #main_slide .swiper-slide .slide_box .text_area{
        top: -800px;
        text-align: center;
    }

    /* #main_edu_slide .tit_btns{
        width: auto;
        margin: 2rem 1rem;
    } */
    #main_edu_slide .eduSwiper .swiper-slide{
        max-width: 100vw
    }

    #main_edu_slide .tit_btns .main_edu_tit{
        font-size: 1.5rem;
    }

    .container .content.flex{
        flex-direction: column;
    }


    .container .main_tit{
        font-size: 1.5rem;
    }

    .container .main_tit.m_full{
        width: 100%;
    }

    .container .sub_tit{
        font-size: 1.2rem;
    }

    .container .content.margin{
        width: 95%;
        margin: 3rem auto;
    }

    .container #edu_class_list_area .tag_box{
        margin: 2rem 0;
    }

    .container #edu_class_list_area .tag_box li{
        padding: 0.5rem 1.5rem;
    }

    .container #edu_class_list_area .edu_classList{
        display: grid;
        grid-auto-rows: auto;
        grid-template-columns: repeat(1, 1fr);
        gap: 30px;
    }

    .container #edu_class_detail_area .class_thumb_info,
    .container #edu_class_detail_area .class_thumb_info .info .class_info,
    .container #class_req_area .class_info{
        flex-direction: column;
    }

    .container #edu_class_detail_area .class_thumb_info .thumb_img,
    .container #edu_class_detail_area .class_thumb_info .info,
    .container #edu_class_detail_area .class_thumb_info .info .class_info ul,
    .container #class_req_area .class_info ul{
        width: 100%;
    }

    .container #class_req_area .input_area .input_box .input_p .input{
        flex-direction: column;
        align-items: start;
    }

    .container #class_req_area .input_area .input_box .input_p .input input{
        width: 93%;
    }

    .container #class_req_area .input_area.blue_back .input_box.m_flex_col{
        flex-direction: column;
        align-items: start;
    }
    .container #class_req_area .input_area .input_box.m_flex_col .input_tit{
        width: 100%;
        text-align: start;
        margin-top: 1rem;
    }

    .container #class_req_area .input_area.blue_back .input_box.m_flex_col input{
        width: 100%;
    }


    .container .cnt_search{
        flex-direction: column;
        align-items: start;
    }

    .container .cnt_search .search_box{
        width: 100%;
    }

    .container #gallery_area .gallery_list{
        grid-template-columns: repeat(1, 1fr);
    }

    
    .container .join_step_area .tit_stepSet.flex{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .container .join_step_area .tit_stepSet.border-bottom{
        border-bottom: none;
    }

    .container .join_step_area .tit_stepSet .m_stepSet{
        display: block;
    }

    .container .join_step_area .stepSet{
        display: none;
    }

    #withdrawal-dialog .btn_box .btn{
        padding: 1rem;
    }

    .container #login{
        width: 100%;
    }

    .container .join_step_area .input_area li.flex_rows .input_box.col{
        flex-direction: column;
    }

    .container .join_step_area .input_area li.flex_rows .input_box.flex_center{
        align-items: center;
    }

    .container .join_step_area .input_area li.flex_rows .input_box input[type="text"].email{
        width: 35%;
    }


    .board_table col.m_board {
        display: none; /* m_board 컬럼 숨기기 */
    }

    .board_table col.m_col {
        width: 100%; /* m_col 컬럼을 전체 폭으로 변경 */
    }

    .board_table th.m_board{
        display: none;
    }

    .board_table td.m_board{
        display: none;
    }

    .board_table th, .board_table td{
        font-size: 1rem;
    }

    #partner_slide{
        margin: 0.5rem 0;
        overflow: hidden;
    }


    #partner_slide .partnerSwiper a{
        padding-top:15px;
    }

    #partner_slide .partnerSwiper img{
        height: 30px;
        /*margin: auto 1rem; 임시조정 */
        margin: auto 3rem;
        object-fit: contain;
        width:75%;
    }

    .container .join_step_area .policy_list li .policy_content textarea{
        background-color: #F6F6F6;
        margin: 1rem 0;
        padding: 1.5rem 0rem;
        overflow-x: auto;
        height: 300px;
        width:100%;
        font-size:1rem;
        line-height: 1.5;
    }
}

/* css 추가 */
.join-result-btn {
    background-color: #5da9e9;
    padding: 20px 40px;
    font-size: 16px;
    border: 1px solid #b2b2b2;
    color: #fff;
    cursor: pointer;
}

.join-result-btn:hover {
    background-color: #328FFB;
    font-weight: bold;
}