#sub_menu_wrap{
    position: fixed;
    top: -161vh;
    padding: 0;
    z-index: 11111;
    transition: 0.3s;
}
#sub_menu_wrap.active{
	top: 0;
}
.sub_menu_wrap{
    max-width: 1440px;
    margin: 0 auto;
    padding: 30px 0 0;
    position: relative;
}
.sub_menu_wrap .close_wrap{
    text-align: right;
    padding: 0 0 25px;
    position: relative;
}
.sub_menu_wrap .close_wrap:after{
	content: '';
	position: absolute;
    width: 100%;
    height: 2px;
    background: #fff;
    opacity: .3;
    left: 0;
    bottom: 0;
}
.sub_menu_wrap .close_wrap button{
    border: none;
    background: none;
    cursor: pointer;
}
.sub_menu_wrap .close_wrap button img{
	
}
.menu_btn_wrap{
    position: absolute;
    right: 0;
    bottom: 0;
}
.menu_btn_wrap ul{
	margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    list-style: none;
    width: 380px;
}
.menu_btn_wrap ul li{
    flex: 0 0 100%;
    display: flex;
    align-items: center;
}
html body .menu_btn_wrap ul li a{
    display: block;
    padding: 35px 25px;
    width: 100%;
    color: #FFF;
    font-size: 20px;
    font-weight: normal;
    line-height: normal;
    opacity: .7;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background: url('/wp-content/uploads/2025/08/arrow.png') no-repeat !important;
    background-position: 90% center !important;
}
html body .menu_btn_wrap ul li a:hover{
	background-color: rgba(255, 255, 255, 0.10) !important;
}
.sub_menu_wrap .sub_menu{
    margin: 70px 0 0;
    padding: 0;
    position: relative;
    display: inline-block;
}
.sub_menu_wrap .sub_menu > li{
    min-width: 300px;
    list-style: none;
    margin: 0 0 50px;
}
.sub_menu_wrap .sub_menu > li > a{
	color: #FFF;
    font-size: 24px;
    font-weight: 500;
    opacity: .8;
    position: relative;
}
.sub_menu_wrap .sub_menu > li > a::after {
    content: "";
    position: absolute;
    left: 0;
        bottom: -10px;
    width: 0;                  /* 처음엔 안 보이게 */
    height: 2px;               /* border 두께 */
    background: #fff;          /* 원하는 색 */
    transition: width 0.3s ease;  /* 애니메이션 */
}
.sub_menu_wrap .sub_menu > li > a:hover::after,
.sub_menu_wrap .sub_menu > li > a.active::after {
    width: 100%;
}
.sub_menu_wrap .sub_menu > li .sub-menu{
	padding: 0;
    position: absolute;
    list-style: none;
    left: 100%;
    top: 0;
    min-width: 300px;
    height: 100%;
    display: none;
}
.sub_menu_wrap .sub_menu > li .sub-menu.active{
	display: block;	
}
.sub_menu_wrap .sub_menu > li .sub-menu li{
	margin: 0 0 40px;
}
.sub_menu_wrap .sub_menu > li .sub-menu li a{
	color: #FFF;
    font-size: 23px;
    font-weight: 400;
    opacity: .6;
    position: relative;
}
.sub_menu_wrap .sub_menu > li .sub-menu li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 0;                  /* 처음엔 안 보이게 */
    height: 1px;               /* border 두께 */
    background: #fff;          /* 원하는 색 */
    transition: width 0.3s ease;  /* 애니메이션 */
}
.sub_menu_wrap .sub_menu > li > a:hover,
.sub_menu_wrap .sub_menu > li > a.active,
.sub_menu_wrap .sub_menu > li .sub-menu li a:hover,
.sub_menu_wrap .sub_menu > li .sub-menu li a.active{
	opacity: 1;
}
.sub_menu_wrap .sub_menu > li .sub-menu li a:hover::after,
.sub_menu_wrap .sub_menu > li .sub-menu li a.active::after {
    width: 100%;
}
.hfe-nav-menu .sub-menu{
	display: none !important;
}
@media screen and (max-height: 1024px) {
	.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) .menu_btn_wrap ul li a{
	    background: url('/wp-content/uploads/2025/08/arrow.png') no-repeat !important;
	    background-position: 90% center !important;
	}
	.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) .menu_btn_wrap ul li a:hover{
		background-color: rgba(255, 255, 255, 0.10) !important;
	}
}

.flex-wrap-wrap { flex-wrap: wrap; }

/*회원 정보 수정*/
#wpmem_profile_form input[readonly] {
  background-color: #f5f5f5;
  color: #666;
  border: 1px solid #ccc;
  cursor: not-allowed;
}

/*브레드크럼*/
#bread_wrap a { cursor: auto; }

/*드롭다운 메뉴바*/
.dropdown { display: none; position: fixed; top: 5.931em; background-color: white; z-index: 50; width: 100%; box-shadow: 0px 2px 7px 0px #0000001A; }
.dropdown > div { display: flex; }
.dropdown .menu-title { width: 30.5%; position: relative; height: fit-content; display: flex; }
.dropdown .menu-title p { font-size: 2.8rem; color: white; font-weight: 700; line-height: 100%; position: absolute; top: 2em; left: 2.3em; }
.dropdown ul.menu-sub { list-style: none; width: 69.5%; padding-left: 2.5em; }
.dropdown ul.menu-sub li { display: inline-block; width: 25%; border-left: 2px solid #D9D9D9; padding-left: 1.5em; height: 4em; margin-bottom: 4em; }
.dropdown ul.menu-sub li a { font-size: 1.25rem; line-height: 100%; color: #444; font-weight: 600; padding-right: 3em; padding-bottom: 2em; }

/*모바일 메뉴 바*/
#mobile-menu-div { position: fixed; top: -161vh; padding: 0; z-index: 11111; transition: 0.3s; }
#mobile-menu-open { cursor: pointer; display: none; }
#mobile-menu-close { display: none; cursor: pointer; }

.mobile-menu-bar { height: 100vh; }
.mobile_menu_head { justify-content: space-between; background-color: #277546; padding: 17px 21px; align-items: center; }
.mobile_menu_head { font-size: 15px; line-height: 15px; letter-spacing: 0px; color: white; font-weight: 500; }
.mobile_menu_body { height: 86vh; }
.mobile_menu_body ul { list-style: none; }
.mobile_menu_body > ul { margin: 0px; width: 45%; padding-top: 44px; padding-left: 26px; background-color: white; }
.mobile_menu_body > div { width: 55%; background-color: #F5F5F5; padding-top: 44px; padding-left: 26px; z-index: 0; }
.mobile_menu_body .mobile-menu-title { margin-bottom: 32px; }
.mobile_menu_body .mobile-menu-title p { font-size: 16px; line-height: 16px; letter-spacing: 0; font-weight: 600; color: #444444; }
.mobile_menu_body ul li .mobile-sub-menu li { margin-bottom: 22px; }
.mobile_menu_body ul li .mobile-sub-menu li a { font-size: 16px; line-height: 16px; letter-spacing: 0; font-weight: 600; color: #A2A2A2;}
.mobile_menu_body ul li .mobile-sub-menu { display: none; }
.mobile_menu_body ul { position: relative; }
.mobile_menu_body ul li { position: static; }
.mobile_menu_body .mobile-menu-title.active p { color: #277546; }
/*.mobile_menu_body .mobile-menu-title:hover p { color: #277546; }
.mobile_menu_body .mobile-menu-title:hover + .mobile-sub-menu { display: block; position: absolute; top: 38px; left: 178px; padding: 0; z-index: 5; width: 100%; }*/

/*교육*/
.pagination-ul span.current { display: inline-block; border-radius: 999px; background-color: #277546; font-weight: 400; font-size: 18px; line-height: 100%; letter-spacing: -0.03em;
						text-align: center; text-transform: uppercase; color: white; width: 42px; height: 42px; align-content: center; }

/*평가 / 만족도조사*/
a.eve_a { background-color: #277546; color: white; text-decoration: none; padding: 0.3em 0.7em; display: inline-block; border-radius: 0.4em; }
.evaluation-div label { display: block; }
.evaluation-div label, .evaluation-div p { color: #444; font-weight: 400; }
.evaluation-div .objective-div { display: flex; }
.evaluation-div > div { margin-bottom: 2em; padding: 0.4em; }

/*내정보 신청*/
.file-input-wrapper { margin-bottom: 0.3em; display: flex; }
.file-input-wrapper label { width: fit-content; }
.file-input-wrapper label input { width: 13em; }
.file-info-div { margin-bottom: 0.3em; }
.file-info-div a { color: #74add1; }
.file-info-div button { border: none; color: #E57373; background: none; cursor: pointer; }

/*마일리지 메인페이지*/
.my_info_img img { width: 8em; height: 10em; border: none; border-radius: 25px; object-fit: cover; transition: border 0.3s; overflow: hidden; }
.my_info_content .info_title { color: black; font-weight: 600; font-size: 19px; letter-spacing: -0.01em; margin: 0px; }
.my_info_content { display: grid; column-gap: 45px; grid-template-columns: repeat(2, 1fr); row-gap: 33px; padding: 1em 0; }
.my_info_content span { color: black; font-weight: 400; font-size: 19px; letter-spacing: -0.01em; }
.my_mileage_table_head h2 { font-size: 25px; font-weight: 600; line-height: 25px; letter-spacing: -0.01em; color: #333; align-content: center; }
.my_mileage_table_body .tb-sty-2 tbody td:nth-child(4) { text-align: center; }

/*신청 목록 모바일 검색 필터*/
.edu-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 1999; }
.edu-fil { display: none; position: fixed; bottom: -100%; left: 0; width: 100%; height: 50vh; background: #fff; border-radius: 16px 16px 0 0; padding: 20px; box-shadow: 0 -2px 10px rgba(0,0,0,0.2); z-index: 2000; transition: bottom 0.3s ease; overflow-y: auto; }
.edu-fil.show { bottom: 0; }
.edu-fil > span { font-size: 30px; line-height: 18px; color: #CCCCCC; }
.edu-fil h4 { text-align: center; font-size: 18px; line-height: 18px; letter-spacing: 0px; font-weight: 700; color: #444; margin: 0; }
.edu-fil .filter-title { font-size: 17px; line-height: 17px; letter-spacing: 0px; font-weight: 700; color: #444; margin-top: 24px; margin-bottom: 16px; }
.edu-fil .d-flex { flex-wrap: wrap; row-gap: 1.2em; column-gap: 1em; }
.edu-fil label input[type="radio"] { display: none; }
.edu-fil label input[type="checkbox"] { display: none; }
.edu-fil label span { cursor: pointer; user-select: none; }
.edu-fil label input[type="radio"] + span { background: #EEEEEE; border-color: #EEEEEE; color: #555555; font-weight: 400; font-size: 15px; line-height: 20.29px; letter-spacing: -0.01em; padding: 8px 24px; border-radius: 999px; }
.edu-fil label input[type="radio"]:checked + span { background: #277546; border-color: #277546; color: white; }
.edu-fil label input[type="checkbox"] + span { background: #EEEEEE; border-color: #EEEEEE; color: #555555; font-weight: 400; font-size: 15px; line-height: 20.29px; letter-spacing: -0.01em; padding: 8px 24px; border-radius: 999px; }
.edu-fil label input[type="checkbox"]:checked + span { background: #277546; border-color: #277546; color: white; }

/*회원가입 오른쪽 패딩 없애기*/
.signup-form label[for="join1"] + div.div_select select, .signup-form label[for="join2"] + div.div_select select,
.signup-form label[for="job_title"] + div.div_text input, .signup-form label[for="business_number"] + div.div_text input, 
.signup-form label[for="user_url"] + div.div_text input, .signup-form label[for="company_1"] + div.div_text input { padding-left: 1rem; }
.signup-form label[for="company_1"], .signup-form label[for="company_1"] + div.div_text { display: none; }

button[type="submit"].custom-btn-search { cursor: pointer; }

/*메인 교육 트랙 링크*/
#major_link, #fusion_link, #basic_link { cursor: pointer; }

/*만족도 조사*/
.evaluation-div label .req, .evaluation-div p .req  { color: #FF5454; }
.evaluation-div button[type="submit"]  { cursor: pointer; }

/*아이디찾기*/
.p_find_div, .p_find_res { 
	text-align: -webkit-center;
}
.p_find_div form { 
	width: 32%;
}
.p_find_div form input { 
	display: block;
	width: 100%;
	margin-bottom: 12px;
}
.p_find_div form input[name="student_phone"] { 
	margin-bottom: 0px;
}
.p_find_div form input::placeholder  { 
	font-size: 19px; line-height: 25px; letter-spacing: -0.01em; color: #888;
}
.p_find_div div { margin-bottom: 17px; text-align: left; } 
.p_find_div div span.find_note { font-size: 17px; line-height: 25px; letter-spacing: -0.01em; color: #888; } 
.p_find_div input[type="text"] { 
	border: none;
    background-color: #eee;
    border-radius: 7px;
    padding: 0.7rem 0 0.6rem 2rem;
    height: auto;
    min-height: 4em;
}
.p_find_div input[type="submit"], .p_find_res a.find_link { 
	color: white;
    border: 0;
    background: none;
    background-color: #277546;
    box-shadow: none;
    font-size: 19px;
    line-height: 25px;
    letter-spacing: -0.01em;
    font-weight: 600;
    padding-top: 17px !important;
    padding-bottom: 17px !important;
    height: auto;
    cursor: pointer;
}
.p_find_res div.find_first_div { font-size: 1.5rem; padding: 1em; margin-bottom: 1.5em; }
.p_find_res span { font-weight: 600; }
.p_find_res a.find_link { width: 32%; display: block; }

/*반응*/
@media (max-width: 767px) {
	.p_find_div { width: 100%;}
	.company-img-div { border: 1px solid #F0F0F0; padding: 24px; align-content: center; width: 37.8%; }
	.company-content1 { margin-bottom: 7px; }
	.company-content1 h3 { font-size: 16px; line-height: 16px; letter-spacing: 0px; color: #333; font-weight: 600; }
	.company-content1 span, .company-content2 span { font-size: 14px; line-height: 14px; letter-spacing: -0.01em; font-weight: 400; }
	.company-content1 span { color: #666; }
	.company-content2 span { color: #444; }
	
	#navigation-menu.top-nav { background-color: transparent; box-shadow: none; }
	#navigation-menu.top-nav svg { fill: transparent; }
	#navigation-menu.top-nav svg path { stroke: white; }
	
	#mobile-menu-div.active { top: 9vh; }
	#mobile-menu-open.active { display: block; }
	#mobile-menu-close.active { display: block; }
	.mobile_menu_body .mobile-menu-title.active + .mobile-sub-menu { display: block; position: absolute; top: 38px; left: 11em; padding: 0; z-index: 5; width: 100%; }
	
	.mobile-list-k { display: block; }
	.pc-list-k { display: none; }
	
	.over-scroll { overflow-x: scroll; }
	.over-scroll table { width: 80em !important; }
	.over-scroll .elementor-shortcode { width: 80em !important; }
	.over-scroll img { width: 800px; max-width: 800px; }
	
	h1 { font-size: 25px; font-weight: 700; }
	.qw-h2 h2 { font-weight: 700 !important; } 
	
	.hfe-breadcrumbs-first span.hfe-breadcrumbs-home-icon { font-size: 17px; margin-right: 17px; }
	
	.mb-none { display: none; }
	.mb-block { display: block; }
	.mb-16 { margin-bottom: 8px; }
	.mb-12 { margin-bottom: 6px !important; }
	
	.elementor-widget-n-tabs .e-n-tabs-heading { display: flex; flex-direction: row; flex-wrap: nowrap; }
	.elementor-widget-n-tabs .e-n-tabs-heading button { max-width: 50%; }
	
	.open-p-sty p, .linkage-title-p p { font-size: 16px; line-height: 22px; letter-spacing: -0.01em; font-weight: 600; color: #555555; }
	.linkage-h4 h4 { font-size: 20px; line-height: 25px; letter-spacing: -0.01em; color: #333333; }
	
	.selectBox2 .label, .selectBox2 .optionItem, .selected-op { font-size: 14px; }
	
	.col-3 { width: 44.5%; }
	
	.edu-box { margin-bottom: 20px; margin-right: 15px; height: 19em; position: relative; }
	.edu-box .info-box { position: absolute; bottom: 0px; width: 100%; }
	.edu-head-div { min-height: 160px; }
	.edu-content a span { font-size: 14px; line-height: 14px; letter-spacing: 0px; color: #FC9038; }
	.edu-content a h3 { font-size: 16px; line-height: 16px; letter-spacing: 0px; color: #333; }
	.edu-date { width: 65%; }
	.edu-date span { font-size: 14px; line-height: 14px; letter-spacing: 0px; color: #888; }
	
	.mobile-edu-serach .custom-btn-search { border: none; background: none; }
	.mobile-edu-serach input { border: none; font-size: 18px; line-height: 18px; letter-spacing: 0px; color: #aaa; margin-bottom: 6px; width: 76%; }
	.mobile-edu-serach input:focus { outline: none; }
	.mobile-edu-serach div.p-0 { border-bottom: 1px solid #AAAAAA; }
	.mobile-edu-serach a { cursor: pointer; }
	.member_type_div { width: 100%; }
	
	.bx-viewport, .bx-viewport .slider, .bx-viewport .slider .img-card { height: 100%; }
	.bx-viewport .slider .img-card img { height: 100%; width: 100%; object-fit: cover; }
	
	.company-box { gap: 13px; padding: 14px 0 14px 14px; }
	.company-img-div { width: 40%; }
	.company-content1 { margin-bottom: 7px; }
	.company-content1 span, .company-content2 span { font-size: 14px; line-height: 14px; letter-spacing: -0.01em; color: #666; }
	.company-content1 span { color: #666; }
	.company-content2 span { color: #444; }
	
	.company-tab .pagination, .company-serch-div { display: none; }
	
	.bx-wrapper .img-card p { font-size: 16px; line-height: 16px; color: white; font-weight: 500; }
	.bx-wrapper .img-card h2 { font-size: 34px; line-height: 34px; font-weight: 700; color: white; }
	
	.edu_main_a { flex: 0 0 100%; }
	
	#form-seach .custom-keyword-input { width: 55%; }
	
	#main-img-cnt { justify-content: flex-end; }
	.slider-controll-box { justify-content: flex-start; align-items: center; }
	#main-img-cnt a, #start-stop-control a, #prev_selector a, #next_selector a, #main-num-cnt { color: white; }
	#prev_selector, #start-stop-control, #next_selector { width: 20%; }
	#start-stop-control { align-content: flex-start; margin-left: 0.3em; }
	#main-num-cnt { align-content: flex-end; }
	
	.application_form table { width: 100%; border-collapse: separate; border-spacing: 0 20px; }
	.application_form tbody td:first-child { font-weight: 600; font-size: 20px; line-height: 25px; letter-spacing: -0.01em; width: 20%; }
	.application_form tbody td input, .application_form tbody td select { border: 1px solid #DDDDDD; padding: 18px; auto 18px; 28px; width: 100%; font-size: 15px; }
}
@media (max-width: 1024px) and (min-width: 767px) {
	.application_form table { width: 100%; border-collapse: separate; border-spacing: 0 20px; }
	.application_form tbody td:first-child { font-weight: 600; font-size: 20px; line-height: 25px; letter-spacing: -0.01em; width: 20%; }
	.application_form tbody td input, .application_form tbody td select { border: 1px solid #DDDDDD; padding: 18px; auto 18px; 28px; width: 100%; font-size: 15px; }
	
	.company-img-div { border: 1px solid #F0F0F0; padding: 24px; align-content: center; width: 37.8%; }
	.company-content1 { margin-bottom: 15px; }
	.company-content1 h3 { font-size: 16px; line-height: 16px; letter-spacing: 0px; color: #333; font-weight: 600; }
	.company-content1 span, .company-content2 span { font-size: 14px; line-height: 14px; letter-spacing: -0.01em; font-weight: 400; }
	.company-content1 span { color: #666; }
	.company-content2 span { color: #444; }
	
	.mobile-edu-serach .custom-btn-search { border: none; background: none; }
	.mobile-edu-serach input { border: none; font-size: 18px; line-height: 18px; letter-spacing: 0px; color: #aaa; margin-bottom: 6px; width: 87%; }
	.mobile-edu-serach input:focus { outline: none; }
	.mobile-edu-serach div.p-0 { border-bottom: 1px solid #AAAAAA; }
	.mobile-edu-serach a { cursor: pointer; }
	.member_type_div { width: 100%; }
	
	#navigation-menu.top-nav { background-color: transparent; box-shadow: none; }
	#navigation-menu.top-nav svg { fill: transparent; }
	#navigation-menu.top-nav svg path { stroke: white; }
	
	#mobile-menu-div.active { top: 15vh; }
	#mobile-menu-open.active { display: block; }
	#mobile-menu-close.active { display: block; }
	.mobile_menu_body .mobile-menu-title.active + .mobile-sub-menu { display: block; position: absolute; top: 38px; left: 21em; padding: 0; z-index: 5; width: 100%; }
	
	.bx-wrapper .img-card p { font-size: 20px; line-height: 16px; color: white; font-weight: 500; margin-bottom: 10px; }
	.bx-wrapper .img-card h2 { font-size: 50px; line-height: 50px; font-weight: 700; color: white; }
	
	.mobile-list-k { display: block; }
	.pc-list-k { display: none; }
	
	.tablet-scroll { overflow-x: scroll; }
	.tablet-scroll table { width: 80em !important; }
	.tablet-scroll .elementor-shortcode { width: 80em !important; }
	
	.col-3 { width: 47% !important; }
	
	.bx-viewport, .bx-viewport .slider, .bx-viewport .slider .img-card { height: 100%; }
	.bx-viewport .slider .img-card img { height: 100%; width: 100%; object-fit: cover; }
	
	.edu-box { height: 20em; }
	.edu-box .info-box { position: absolute; width: 100%; top: 100%; }
}

@media (max-width: 376px) {
    #form-seach .custom-keyword-input {
        width: 60%;
    }
    #form-seach .custom-target-select { margin-right: 0px !important; }
}
