#site_main{padding: 0;}
.portlet_wrap{height: 100%;}

/*헤더*/
header{}

.t_wrap{max-width: 1650px; margin: 0 auto; padding: 0 20px; position: relative;z-index: 9990;}

.top_icon{display: flex; align-items: center; justify-content: space-between; height: 80px;}
.top_icon .logo{margin-right: 30px;}
.top_icon_right{}
.top_icon_right a{font-weight: 600;	color: #666666;	padding-right: 24px; font-size: 15px;}
.top_icon_right a:hover{font-weight: 700;}
.top_icon_right button{border-radius: 20px;	color: #ffffff;	background-color: #8a8a8a; font-size: 15px; font-weight: 600; padding: 2px 10px;}

.header_bar{align-items: center;	width: 100%;	height: 50px;	background-color: #0a3071;}

.gnb_list{display: flex; height: 100%;}
.gnb_list > li{float: none; width: auto; display: inline-block; padding: 0;}
.gnb_list > li > a{font-size: 17px; line-height: 50px; font-weight: 500; color: #fff; height: 50px; display: inline-block; width: 100%;}
.gnb_list > li > a:hover{font-weight: 700;}
.gnb_list > li:not(:first-of-type){margin-left: 100px;}

.serchDiv{padding-left: 390px;}
.search_box2{	width: 118px;	height: 38px;	border-radius: 7px;}
.serchDiv input{padding-left: 18px;}
.search_box3{	width: 250px;	height: 38px;	border-radius: 7px;}


/*기본 틀*/
.portlet_frame_1{width: 100%; height: 100%;	/*border: 1px solid grey; */ background-color: #f7fafe; overflow: hidden;}
.portlet_frame_2{width: 100%;	height: 100%;	/*border: 1px solid #884488;*/				}
.portlet_frame_3{width: 100%;	height: 100%;	/*border: 1px solid blue;*/					}

/* 첫번째 줄 배경 */
.portlet_frame_1 .bg-top{position: relative; z-index: 1;}
.portlet_frame_1 .bg-top:before {content: url('/images/common/new/bg_top.png'); position: absolute; left: -110px; bottom: -40px; z-index: -1;}

.portlet_frame_1 section{box-sizing: border-box;	/*border: 1px solid #ccc;*/	}
.portlet_frame_2 section{/*float: left;	box-sizing: border-box;	border: 1px solid #ccc; width: 306px;*/}
.portlet_frame_3 section{/*float: left;	box-sizing: border-box; border: 1px solid #ccc;	width: 306px;*/}

.p_wrap{display: flex; justify-content: flex-start; flex-wrap: nowrap; gap: 30px;}
.portlet_inner{max-width: 1690px; margin: 0 auto; padding: 30px 20px; box-sizing: border-box;}
.portlet_box{width: 306px; height: 300px; border: 1px solid #ccc; box-sizing: border-box;}
.portlet_box02{width: 642px; height: 300px; border: 1px solid #ccc; box-sizing: border-box;}
.portlet_box03{width: 60%; height: 300px; border: 1px solid #ccc; box-sizing: border-box;}

.portlet_frame_3 .portlet_inner{padding-top: 0;}

	/**타이틀**/
.p_title{height: 48px;	display: flex; align-items: center; justify-content:space-between; padding: 0 20px;}
.p_title h3{font-size: 18px; color: #222; font-weight: 500;}
.p_title h3 strong{color: #0f3e8e; font-size: 18px;}
.expand_img{display: contents;}

/*첫번째줄*/
	/**마이페이지**/
.portlet_frame_userInfo{width: 306px !important; height: 280px;	background: #fff; position: relative; z-index: 1; overflow: hidden;}
.portlet_frame_userInfo > div{padding: 18px 15px 0;}
.portlet_frame_userInfo.bg-btm:after{content: url('/images/common/new/bg_mypage.png'); position: absolute; bottom:30px; right: -15px; z-index: -1;}

.user_wrap{padding: 0 10px;}

.name_zone{display: flex; align-items: center;}
.name_zone .user_name{font-size:  16px; margin-left: 8px;}
.name_zone .user_name b{font-size: 18px; margin-right: 5px;}

.major_zone{margin-top: 10px; display: flex; /* flex-direction: column;  align-items: stretch; */ justify-content: space-between; align-items: center; gap: 2px; padding-right: 2px;}
.major_zone > span{font-size: 16px; font-weight: 500; vertical-align: -2px;}
.major_zone > button{padding: 2px 8px; background: #eee; border: 1px solid #ccc; font-size: 14px; border-radius: 5px; font-weight: 500; float: right; cursor: pointer;}
.major_zone a.logout{width: auto; text-align: center; padding: 1px 8px; font-weight: 500; background-color: #eee; border: 1px solid #ccc; display: block; border-radius: 5px; /* flex: 1 1 0; */flex-shrink: 0;}
.major_top { display: flex; }

.list_zone{margin-top: 8px; font-size: 15px; border-bottom: 2px dotted #ccc; padding-bottom: 10px;}
.list_zone > p{position: relative; padding-left: 12px; line-height: 1.1rem;}
.list_zone > p::before{content:''; width: 5px; height: 5px; background: #898c8f; position: absolute; top: 9px; left: 0; border-radius: 50%;}
.list_zone > p > span:first-child{font-weight: 500;}
.list_zone > p > span:first-child::after{content: '|'; font-size: 12px; color: #8a8a8a; display: inline-block; padding: 0 10px;}
.list_zone > p > strong{color: #ee5622; font-weight: 600; margin-right: 5px; }

.ip_zone{margin-top: 5px;}
.ip_zone > p{font-size: 15px;}
.ip_zone > p > span{margin-left: 8px;}

.pwCertButton{display: flex; align-items: center;	justify-content: space-around;	background-color: #0f3e8e;	width: 100%; height: 48px;	border-radius: 5px;	margin-top: 5px;
		position: relative;}
.pwCertButton > a{color : #fff; font-size: 15px; font-weight: 600;}
.pwCertButton::after{content:''; display: inline-block; width: 1px; height: 23px; background: #839cc6; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}

	/**공지사항**/
.portlet_frame_notice{width: 642px; height: 280px; background: #fff; box-sizing: border-box; border: 1px solid #ccc;}

.multi_board{padding-bottom: 0px; display: flex;}
.multi_board > ul{background: #eee; height: 48px; /* width: 100%; */ width: calc(100% - 48px); white-space: nowrap; overflow-x: auto; display: flex;}
.multi_board > ul > li{padding: 0 16px; float: unset; display: inline-block; width: 100%; }
.multi_board > ul > li > a{display: block;}
.multi_board > ul > li:hover{background: rgba(0,0,0,.1); transition: all .2s;}
.multi_board > ul > li.active{background: #fff; border-top: 2px solid #0f3e8e;}
.multi_board > ul > li.active > a > span{font-size: 18px; font-weight: 600;}

.multi_board > ul.tab > li{text-align: center;}

.notice_plus{width: 48px; height: 48px; background: #e4e4e4; font-weight: 300; font-size: 30px; color: #444; line-height: 1;}
.notice_plus:hover{background: rgba(0,0,0,.2); transition: all .2s;}

	/**공지사항 리스트**/
.multi_board .list{position: absolute; top: 48px; left: 0; padding: 22px 25px 0; width: 100%; box-sizing: border-box;}
.multi_board .list ul li + li{margin-top:16px;}
.multi_board .list > ul > li:before{content: ''; width: 4px; height: 4px; background: #a6d1e9; border-radius: 50%; position: absolute; /* top: 10px; */ top: 6px; left: 0;}
.multi_board .list > ul > li > a:hover{text-decoration: underline;}

.multi_board .list ul li{line-height: 1; padding-right: 0; width: 100%; text-align: left;}
.multi_board .list > ul > li > a{line-height: 1;}


	/*퀵메뉴*/
.portlet_frame_link{width: 642px;height: auto;}
.portlet_frame_link ul{display: flex; flex-wrap: wrap; margin-top: 50px;}
.icon_1 li{display: flex; width: calc(100% / 6); height: 100%; padding-bottom: 50px; flex-direction: column; flex-wrap: wrap; align-content: center; text-align: center;}
.icon_2 div{ }
.icon_2 li{float: left; align-content: center; margin: 30px 10px 30px 30px;}
.icon_1 div > a{font-size: 15px; text-align: center;}
.icon_1 div > a:hover{text-decoration: underline; color: #0a3071;}
.iconText .img_block{margin-bottom: 8px;}
.iconText > a > span{font-size: 14px; font-weight: 500;}


/*두번쨰줄*/
.gray_box{margin: 0 auto;	background-color: #f4f5f6;	width: calc(100%  - 30px); height: 237px;}
.gray_box .inner_content{padding: 8px 15px;}
.portlet_frame_banner{height: 300px; border: solid 1px grey;}
.floatRight{margin-left: auto;	align-self: center;}
.portlet_frame_banner img{padding-right: 16px;}
.portlet_frame_banner2{margin: 0 auto;	width: 302px;}

.inner_content > .request{overflow-y: auto; height: 220px;}
.inner_content > ul > li{position: relative; font-size: 15px; display: flex; justify-content: space-between; padding: 0 0 0 13px; line-height: 30px;}
.inner_content > ul > li::before{position: absolute; content:''; width: 5px; height: 5px; background: #a6d1e9; border-radius: 5px; top:12px; left: 0;}
.inner_content .btn_r01, .inner_content .btn_r02{color: #fff; width: 60px; height: 24px; text-align: center; font-size: 15px; font-weight: 600; border-radius: 5px;}
.inner_content .btn_r01{background: #ee5622;}
.inner_content .btn_r02{background: #007cbe;}
	/*R&D공고*/
.rnd_notice .gray_box{position: relative;}	
.rnd_notice .inner_content{position: absolute; width: 100%; box-sizing: border-box;}	
	
.inner_content .rnd{display: block;}
.inner_content .rnd > li{display: block; line-height: 32px;}
.inner_content .rnd > li:hover{text-decoration: underline;}
.inner_content .rnd > li a{display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%;}

.con_text1{display: inline-block; }
.con_text2{display: inline-block; float: right; font-weight: 600; font-size: 15px; width: 60px; height: 24px; background-color: #ee5622; color: #FFFFFF;	border-radius: 5px; text-align: center;}

	/**시간표**/
.table_leacture{margin: 0 auto;	width: calc(100% - 30px);	height: 245px; overflow:hidden;	overflow-y: auto;}
.table_leacture table{width: 100%;table-layout: fixed;}
.table_leacture th{border-top: 2px solid #0f3e8e; border-bottom: 1px solid #ccc;	background-color: #f4f5f6; padding: 5px 0; font-size: 16px;	font-weight: 600;	text-align: center;}
.table_leacture th:not(:last-of-type){border-right: 1px solid #ccc;}
.table_leacture tbody td{border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; /* padding: 5px 2px; */ padding: 5px; font-size: 15px; text-align: center;max-width: 100%;text-overflow: ellipsis;overflow: hidden;white-space: nowrap;}
.table_leacture tbody td:last-child{border-right: none;}
.test123{	white-space: nowrap;}

	/*나의 unit 취득현황*/
.unit_box{width: 100%; height: 70px; border-radius: 5px; display: flex; align-items: center; background: #f4f5f6;}
.unit_box.yel{background: #fff1e6;}
.unit_box.blue{background: #eaf2f2;}
.unit_box.red{background: #faeaea;}
.unit_box:nth-child(2){margin: 10px 0;}
.unit_icon{width: 50px; height: 50px; margin: 0 20px 0 15px;}
.unit_text b{font-weight: 600; font-size: 24px; }


/*세번째줄*/
.inner_content{padding: 0 15px;}
/*
.date_pick_bar{display: flex; margin: 0 auto; border: solid 1px #bdcee5; background-color: #f7fafe;	width: 100%; height: 40px; border-radius: 5px;}
.date_pick_bar p{align-self: center;	font-weight: 600;	font-size: 18px; color: #0f3e8e;	padding-left: 20px;	}
.date_pick_bar input{align-self: center;	font-weight: 600;	font-size: 18px; color: #0f3e8e;	padding-left: 20px;	}
.date_pick_bar a{margin-left: auto;	align-self: center;	padding-right: 20px;	}
*/

.inner_content .sch_list{/* padding: 12px 0; */ margin: 12px 0; overflow-y: auto;}
.inner_content .sch_list > li{display: block;}
.inner_content .sch_list > li:not(:first-of-type){margin-top: 8px;}
.inner_content .sch_list > li .sch_date{font-size: 15px; font-weight: 600; margin-right: 15px;display: inline-block; vertical-align: middle; width: 90px;}
.inner_content .sch_list > li .sch_con{overflow: hidden; text-overflow: ellipsis; display: inline-block; /* width: 50%; */ white-space: nowrap; vertical-align: middle; width: calc(100% - 115px);}
.detail_sch{float: left; width: 306px;}

.table_dateSch tr{height: 38px;}
.table_dateSch td{font-weight: 600;	font-size: 15px;	word-break:break-all;}
.table_dateSch th{font-family: 나눔고딕;	font-weight: 500;	font-size: 15px;}

	/**금주의 식단**/
.food_link{display: block; width: 100%; height: 100%;}
.food_link_emp, .food_link_std{display: flex; align-items: center; height: 58px; border-radius: 5px; padding: 0 30px; position: relative;
	background: url('/images/common/new/food_arrow.png') no-repeat center right 30px; background-size: 7px 13px;}
.food_link_emp{background-color: #60992d; }
.food_link_std{background-color: #38aecc; margin-top: 10px; }
.food_link_emp img, .food_link_std img{width: 16px; height: 16px; max-width: 100%; }
.food_link_emp span, .food_link_std span{font-weight: 600; font-size: 17px; color: #FFFFFF; margin-left: 8px; position: relative; }


/*
	.inner_content img{width: 100%;	height: 100%;	object-fit: fill;}
*/


/*햄버거메뉴*/
.ham{display: none;}


.layout2 {width: 100%; height: 768px; display: grid; grid-template-rows: repeat(auto-fit, 1fr); grid-template-columns: repeat(4, 1fr); gap: 30px; grid-column: 3 /5 ;}
.box2 {width: 642px; background: yellow; grid-column: span 2;}
.box4 {width: 642px;}
.datepicker-trigger{display: none;}



/* 250723  추가 */
.tab_title{display: flex; align-items: center; gap: 64px; }
.tab_title .info_tab{display: flex; align-items: center; gap: 12px; height: 80px;}
.tab_title .info_tab li a{padding: 8px 30px; background: #dadada; color: #444; border-radius: 25px; transition: all .3s ease-in-out; display: block; white-space: nowrap;}
.tab_title .info_tab li.active a{background: #296B9B; color: #fff;}
.tab_title .info_tab li button{padding: 8px 30px; background: #dadada; color: #444; border-radius: 25px; transition: all .3s ease-in-out; display: block; white-space: nowrap;}
.tab_title .info_tab li.active button{background: #296B9B; color: #fff;}

/* 개인정보변경 */
.info_modify_wrap{width: 100%; height: 100%; overflow: hidden; background: #F7F8FA; border-top: 2px solid #0a3071; border-bottom: 1px solid #cecece;}
.info_modify_wrap .info_modify{padding: 24px 32px;}
.info_modify_wrap .info_modify ul{display: flex; align-items: center; flex-wrap: wrap; row-gap: 16px;}
.info_modify_wrap .info_modify ul li{flex: 1 1 50%;}
.info_modify_wrap .info_modify ul li strong{position: relative; padding-left: 10px; width: 140px; display: inline-block;}
.info_modify_wrap .info_modify ul li strong::before{content: ''; width: 4px; height: 4px; background: #0A3071; border-radius: 50%; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
.info_modify_wrap .info_modify ul li span{display: inline-block;}

.point-red{color: #FF0000; margin-top: 8px; display: block; font-size: 15px; word-break: keep-all;}

.sc_certify{width: 100%; height: 100%; margin-top: 32px;}
.sc_certify table{border-top: 1px solid #cecece; border-bottom: 1px solid #cecece; width: 100%;}
.sc_certify table tr th{background: #F7F8FA; text-align: center;  border-right: 1px solid #cecece; min-width: 60px;}
.sc_certify table tr th, .sc_certify table tr td{padding: 14px 10px;}
.sc_certify table tr + tr{border-top: 1px solid #cecece;}
.sc_certify table .tb_chk{ text-align: left; }
.sc_certify table .tb_chk input[type="checkbox"]{-webkit-appearance: none;  width: 18px;  height: 18px; background: #fff;  border: 1px solid #cecece;  border-radius: 4px; transition: all 0.2s;  position: relative; margin-right: 8px;}
.sc_certify table .tb_chk input[type="checkbox"]:checked{background-color: #0A3071; }
.sc_certify table .tb_chk input[type="checkbox"]::after{content: ''; position: absolute;  top: 2px;  left: 7px;  width: 3px;  height: 9px;  border: solid #fff;  border-width: 0 2px 2px 0;  opacity: 0;  transform: rotate(45deg); transition: opacity 0.2s;}
.sc_certify table .tb_chk input[type="checkbox"]:checked::after{opacity: 1;}
.sc_certify table .download_btn{color: #0A3071;}
.sc_certify table .download_btn a{display: flex; align-items: center; justify-content: flex-end; gap: 8px;}
.sc_certify table .download_btn:hover a{text-decoration: underline;}

.info_btn_wrap{text-align: center; margin-top: 64px; display: flex; justify-content: center; padding-top: 20px;}
.info_btn_wrap .info_btn{max-width: 160px; width: 100%; padding: 12px 0; display: inline-block; border-radius: 6px; transition: all .3s ease-in-out;}
.info_btn_wrap .info_btn.navy{background: #0F3E8E; color: #fff; margin-right: 10px;}
.info_btn_wrap .info_btn.navy:hover{background: #0D3579;}
.info_btn_wrap .info_btn.gray{background: #8A8A8A; color: #fff;}
.info_btn_wrap .info_btn.gray:hover{background: #666;}

.info_pw{display: block; margin-top: 8px;}
.info_pw p{font-weight: 600;}
.info_pw span{padding-left: 12px; display: block;}
.info_pw span b{color: #FF6D09;}



/* 모달팝업 */
.modal{position: fixed; top: 0; left: 0; z-index: 99; width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; outline: 0; display: none;}
.modal.show{display: block;}
.modal-backdrop {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.6); z-index: -1;}
.fade {transition: opacity .15s linear;}
.modal-dialog {position: relative; width: auto; margin: 30px auto; pointer-events: none; max-width: 450px; margin-right: auto; margin-left: auto; padding: 0 20px;}
.modal.show .modal-dialog { transform: none;}
.modal-dialog-centered {display: flex; align-items: center; min-height: calc(100% - 56px);}
.modal-content {position: relative; display: flex; flex-direction: column; width: 100%; pointer-events: auto;  background-color: #fff; background-clip: padding-box; outline: 0; border-radius: 8px; }

.modal-header{display: flex; justify-content: space-between; align-items: center; margin: 24px 24px 0;}
.modal-header h1{font-size: 18px;}
.modal-header .btn-close{background: transparent; width: 24px; height: 24px; display: block;}
.modal-header .btn-close:hover{background: #f4f5f6; border-radius: 50%;}

.modal-body{margin: 16px 24px 24px; }
.top_download{width: 100%; display: inline-block;}
.top_download a{color: #296B9B; font-size: 14px; text-decoration: underline; padding: 4px; transition: all .2s ease-in-out; float: right;}
.top_download a:hover{background: #f1f2fa;}
.certify_btnZone{display: flex; align-items: stretch; gap: 10px; margin-bottom: 10px;}
.certify_btnZone .ct_btn{border: 1px solid #cecece; border-radius: 6px; flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; height: 120px; transition: all .3s ease-in-out;} 
.certify_btnZone .ct_btn:hover{background: #f4f5f6;}

.popup_info{font-size: 14px; color: #717171; display: block;}
.code_info{}
.code_info ul{display: flex; align-items: center; gap: 20px; margin-top: 10px;}
.code_info ul li{font-size: 14px;}
.code_info ul li strong{font-weight: 400;}
.code_info ul li span{color: #296B9B; font-weight: 600;}

.code_wrap{width: 100%; text-align: center; margin: 14px 0 8px;}
.code_wrap .code{background: #f0f0f0; border: 1px solid #cecece; font-size: 20px; font-weight: 600; padding: 8px 0; border-radius: 4px;}

.popup_btn{width: 100%; height: 100%; display: block; text-align: center;}
.popup_btn .btn{padding: 12px 0; display: block; border-radius: 4px; transition: all .3s ease-in-out;}
.popup_btn .btn + .btn{margin-top: 8px;}
.popup_btn .btn.blue{background: #0f3e8e; color: #fff;}
.popup_btn .btn.blue:hover{background: #0D3579;}
.popup_btn .btn.basic{background: #fff; border: 1px solid #cecece;}
.popup_btn .btn.basic:hover{background: #f4f5f6;}

/* hsj_250730 이메일 otp */
.otp-wrap {
  max-width: 400px;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.otp-wrap label {
  font-size: 14px;
  font-weight: bold;
  color: #333;
}
.otp-wrap input[type="text"] {
  padding: 12px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  outline: none;
}
.otp-wrap input[type="text"]:focus {
  border-color: #007bff;
  box-shadow: 0 0 0 2px rgba(0,123,255,0.2);
}
.btn-resend {
  align-self: flex-start;
  padding: 8px 16px;
  font-size: 14px;
  background-color: #f5f5f5;
  border: 1px solid #aaa;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn-resend:hover {
  background-color: #e0e0e0;
}
.otp-helper {
  font-size: 13px;
  color: #666;
	margin-bottom: 5px;
}

/* kyj_250911 */
.truncate {
    max-width: 120px;
    width: auto;
    white-space: nowrap;
    vertical-align: middle;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}