/*메인 슬라이드*/
.wrap{overflow: hidden;}
.bd-lg {width: 1440px;}
.slide {width: 100%; position: relative;}
.slide .main_slide{height: 100vh; overflow: hidden;}

.main-logo{position: absolute; left: 60px; top: 40px; width: 85px; z-index: 2;}


.ing_cr {position: relative;}
.ing_cr > p {position: absolute; left: 50%; transform: translateX(-50%); display: block; font-size: 1.4em; box-sizing: border-box; border-bottom: 1px solid #fff;}
.ing_cr > p > b {color: #E92626; font-size: 1.1em}

.slide .main_slide > i{display: block; width: 100%; height: 100%; position: relative; overflow: hidden;}
.slide .main_slide > i img{position: absolute; width: 100%; height:100%; left:50%; top:50%;transform: translate(-50%, -50%); object-fit: cover; transition: ease-out 3.5s; scale: 1;}
.slide .main_slide > i::after {content: ''; display: block; position: absolute; width: 100%; height: 100%; background-color: hsla(0, 0%, 0%, 0.6);}
.slide .main_slide > i > video { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); object-fit: cover;}
.slide .txtbox{position: absolute; z-index: 99; left:50%; top:50%;transform: translate(-50%,-65%); color: #fff;text-align: center; width: max-content;}

.slide .txtbox em{font-size: 52px; font-weight: 800; text-shadow: 0 0 12px rgba(0,0,0,.1);}
.slide .txtbox em i{ font-weight: 800;}
.slide .txtbox > p{font-size:24px; margin-top: 20px; color: #fff; font-weight: 400; line-height: 1.5;text-shadow: 0 0 12px rgba(0,0,0,.1);}
 
.service_nav_wrap {width: 1400px; margin: 0 auto; position: absolute; bottom: 0; left: 50%; transform: translate(-50%, 50%); z-index: 1; transition: 0.3s all;}
.service_nav_wrap > ul {width: 100%; display: flex; justify-content: center; overflow: hidden; border-radius: 20px; background-color: #222;}
.service_nav_wrap > ul > li {width: calc(100% / 4); padding: 35px 50px; background-color: #222; transition: 0.3s;}
.service_nav_wrap > ul > li:hover {background-color: #E92626; cursor: pointer ; transition: 0.3s;}
.service_nav_wrap > ul > li > div {display: flex; justify-content: space-between; align-items: center;}
.service_nav_wrap > ul > li > div > div, 
.service_nav_wrap > ul > li > div > p, 
.service_nav_wrap > ul > li > div > p > span {color: #fff;}
.service_nav_wrap > ul > li > div > div > b {font-size: 20px;}
.service_nav_wrap > ul > li > div > p {display: block; font-size: 20px;}
.service_nav_wrap > ul > li > div > p > span {display: inline-block; font-size: 28px;}
.service_nav_wrap > ul > li > div > div {position: relative;}
.service_nav_wrap > ul > li > div > div > span {position: absolute; top: 0; right: 0; transform: translateX(24px); background-color: #E92626; width: 20px; height: 20px; text-align: center; border-radius: 100%; font-size: 14px; line-height: 20px;}

.title {display: flex; justify-content: space-between;}
.title_wrap {text-align: left; display: flex; gap: 5em;}
.title_wrap > strong { display: inline; font-size: 28px; color: #b5b5b5;}
.mv_btn_wrap {height: 80px; position: relative; display: flex; flex-direction: column; align-items: flex-end;}
.mv_btn {position: relative; display: block; width: 4em; height: 4em;}
.mv_btn > img {position: absolute; width: 100%; height: 100%; object-fit: cover; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.mv_btn_wrap > small {display: block; font-weight: 400; font-size: 1.1em; color: #333; margin-right: 2em; margin-top: .5em;}

/* .title_wrap > em {margin-top: 20px;} */
.title em{ font-size: 42px; color: #222; display: block; font-weight: 700; line-height: 1.3; letter-spacing: -.02em;}
.sec01_nav_wrap {position: relative; width: 100%; margin-top: 40px;}
.sec01_nav_wrap > ul {width: 100%; display: flex; gap: 12px;}
.sec01_nav_wrap > ul > li {width: calc(100% / 4); padding: 16px 45px; border: 1px solid #ddd; background-color: #fff; border-radius: 36px; transition: 0.3s all;}
.sec01_nav_wrap > ul > li.on {background-color: #E92626; border: 1px solid #0E45A4;} 
.sec01_nav_wrap > ul > li.on > div {color: #fff;} 
.sec01_nav_wrap > ul > li:hover {background-color: #fff; border: 1px solid #E92626; transition: 0.3s all; cursor: pointer;}
.sec01_nav_wrap > ul > li:hover > div {color: #E92626; transition: 0.3s all;}
.sec01_nav_wrap > ul > li > div {font-size: 18px; color: #555; transition: 0.3s all;}

.sec01 .contents > .office_list_wrap > ul {display: flex; width: 100%; flex-wrap: wrap; gap: 24px;}
.sec01 .contents > .office_list_wrap > ul > li {width: calc((100% - 48px) / 3); background-color: #f9f9f9; border: 1px solid #ddd; overflow: hidden; border-radius: 20px; padding: 30px; transition: 0.3s all;}
.sec01 .contents > .office_list_wrap > ul > li:hover {border: 1px solid #E92626; box-shadow: 0px 0px 8px 0px #eee; transition: 0.3s all; cursor: pointer;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top {display: flex; align-items: center; gap: 10px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > .official_date {color: #fff; background-color: #E92626; border-radius: 50px; padding:5px 15px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > .official_date.offical_date_end {background-color: #bbb;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > p {display: block;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > p > span {display: inline; font-size: 16px; font-weight: 700; margin-right: 3px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > p > span::after {content: '·'; display: inline; font-size: 16px; margin-left: 3px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > p > span:last-child:after{content: none;}

.sec01 .contents > .office_list_wrap > ul > li .office_list_item_cen {width: 100%; overflow: hidden; margin-top: 10px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_cen > h3 {font-size: 1.4em; text-overflow: ellipsis;  display: -webkit-box; -webkit-line-clamp: 2; /* 최대 2줄까지 표시 */ -webkit-box-orient: vertical; word-break: keep-all; /* 단어 단위 줄바꿈 */ overflow: hidden;/* 넘친 내용 숨기기 */ color: #111; font-weight: 600;}

.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot {margin-top: 45px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_tag > p > span {font-size: 16px; font-weight: 400; margin-right: 5px; color: #222;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_tag > p > span::after{content:'|'; display: inline; margin-left: 5px; font-size: 14px; color: #222;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_tag > p > span:last-child:after {content: none;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_date {margin-top: 10px;}
.sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_date > p > span {font-size: 16px; font-weight: 400;}
.sec01 .contents > .office_list_wrap > ul > li.baro_card_wrap {background-image: url(../img/main/card_bg.png); background-repeat: no-repeat; background-size: cover; background-position: top;}
.sec01 .contents > .office_list_wrap > ul > li.baro_card_wrap > div {display: flex; justify-content: space-between;}
.sec01 .contents > .office_list_wrap > ul > li.baro_card_wrap > div > h4 {font-size: 26px; color: #fff;}
.sec01 .contents > .office_list_wrap > ul > li.baro_card_wrap > div > i {display: inline; width: 3em; height: 3em; overflow: hidden;}

.sec02 {width: 100%; background-image: url(../img/main/sec02_bg.png); background-repeat: no-repeat; background-size: cover; background-position-x: center; background-position-y: top;}
.sec02.recruitment .title .top {margin-bottom: 150px;}
.sec02 .title em,
.sec02 .title div > span {color: #fff;}
/* .sec02 .title div {margin-top: 30px;} */
.sec02 .title .title_wrap > div {margin-top: 16px;}
.sec02 .title div > span{font-size: 26px; font-weight: 400;}
.sec02 .development_box_wrap {margin-top: 20px;}
.sec02 .development_box_wrap > ul {display: flex; gap: 40px;}
.sec02 .development_box_wrap > ul > li {width: calc(100% / 4); height: auto; padding: 30px; border-radius: 20px; background-color: #222222a4; border: 1px solid #fff; overflow: hidden; cursor: pointer;}
.sec02 .development_box_wrap > ul > li:hover {background-color: #E92626; background-color: #0e45a49d; transition: 0.3s all;} 
.sec02 .development_box_wrap > ul > li > div > h4,
.sec02 .development_box_wrap > ul > li > div > div > p{color: #fff;}
.sec02 .development_box_wrap > ul > li > div > h4 {font-size: 35px;}
.sec02 .development_box_wrap > ul > li > div > div {margin-top: 120px; display: flex; align-items: center; justify-content: space-between;}
.sec02 .development_box_wrap > ul > li > div > div > p {font-size: 24px; font-weight: 400;}

                                 

.sec03 .bd-lg.sec03-bdlg {display: flex; gap: 30px;}
.sec03::after {content: ''; position: absolute; display: block; width: 500px; height: 140px; background-image: url(../img/main/sec03_deco.png); background-repeat: no-repeat; background-size: cover; right: 0; bottom: 0; transform: translateY(-100%); z-index: -1;}
.sec03 .sec03_img_box {width: 650px; height: 650px; background-color: #ddd; border-radius: 20px; overflow: hidden;}
.sec03 .sec03_img_box > img {width: 100%; height: 100%; object-fit: cover;} 
.sec03 .sec03_img_box > video {width: 100%; height: 100%; object-fit: cover;}
.recruitment.sec03 .title .top {height: 100%;}
.sec03 .title_wrap {height: 100%; display: flex; flex-direction: column; justify-content: space-between; margin: unset; text-align: left;}
.sec03 .title em {font-size: 40px;}
.sec03 .title_wrap > div > strong { display: inline; font-size: 24px; color: #E92626;}
.sec03 .title_wrap > div > em {margin-top: 20px;}
.sec03 .title_wrap > .title_bot > span {display: inline; font-size: 22px; font-weight: 400; line-height: 150%;}
.sec03 .title_wrap > .title_bot > div.baro_button {margin-top: 50px;}
.sec03 .baro_button {width: 250px; padding: 16px 25px; border-radius: 50px; display: flex; justify-content: space-between; align-items: center; background-color: #E92626; cursor: pointer;}
.sec03 .baro_button > p {display: block; color: #fff; font-size: 18px; font-weight: 600;}
.sec03 .sec03_img_box.sec03_img_box2 {width: 280px; height: 285px; background-color: #333; border-radius: 20px; overflow: hidden;}

.sec04 {width: 100%; position: relative; background-image: url(../img/main/sec04_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position-x: center; background-position-y: center; overflow: hidden; border-top-left-radius: 120px;  transition: 0.3s all;}
.recruitment.sec04 .title .top {margin-bottom: 0;}
.sec04::before {content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #0f0f0fa1;}

.sec04 .baro_button {margin: 0 auto; width: 250px; padding: 10px 25px; border-radius: 50px; display: flex; justify-content: space-between; align-items: center; background-color: #fff; cursor: pointer;}
.sec04 .baro_button > p {display: block; color: #111; font-size: 18px; font-weight: 600;}
.sec04 .title strong {color: #E92626; display: inline; font-size: 24px;}
.sec04 .title em,
.sec04 .title div > span {color: #fff;}


.cop_img_wrap {display: block; position: relative; width: 100%; aspect-ratio: 2/.7; border-radius: 20px; overflow: hidden;} 
.cop_img_wrap > img {position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: bottom; top: 50%; left: 50%; transform: translate(-50%, -50%); filter: brightness(.6);}
.cop_con_wrap {position: relative; width: 100%; height: 100%; display: flex; align-items: center;}
.cop_con_wrap > div.cop_con {display: flex; gap: .2em; flex-direction: column; align-items: center; justify-content: center; width: calc(100% / 3); height: 100%;  text-align: center; color: #fff;}
.cop_con_wrap > div.cop_con:nth-child(2) {border-left: 1px solid #ddd; border-right: 1px solid #ddd;}
.cop_con_wrap > div.cop_con > h4 {line-height: 1; font-size: 3em; font-weight: 600; color: #fff;}
.cop_con_wrap > div.cop_con > small {font-size: 1.2em; font-weight: 500; color: #ffffffa1;}
.cop_con_wrap > div.cop_con > p {margin-top: .5em; font-size: 1.2em; font-weight: 400;}

.posting_tag,
.posting_date {display: flex; gap: .5em;}
.posting_tag > i,
.posting_date > i {display: block; position: relative; width: 1.1em; height: 1.1em;}
.posting_tag > i > img,
.posting_date > i  > img {position: absolute; width: 100%; height: 100%; object-fit: cover; top: 50%; left: 50%; transform: translate(-50%, -50%);}
 
.sec_ptb2 {padding-top: 200px; padding-bottom:200px;}

.sticky-content {display: flex; flex-direction: column; gap: 60px;}

.rec_con_wrap {
  position: relative;
  /* top: 0; */
  /* left: 0; */
  width: 100%;

  transition: opacity 0.5s ease, visibility 0.5s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* top: 50%; */
  /* left: 50%; */
  /* transform: translate(-50%, -50%); */
  padding: 80px 80px 160px;
  /* background: #f9f9f9; */
  /* border-radius: 20px; */
  border-bottom: 1px solid #ddd;
}

.rec_con_wrap:last-child {border: none;}

.rec_con_wrap.active {
  opacity: 1;
  visibility: visible;
}

.rec_text_box {
  flex: 1;
  padding-right: 60px;
}

.eng_deco {
  display: block;
  font-size: 24px;
  color: #E92626;
  margin-bottom: 18px;
  font-weight: 300;
}

.rec_text_box h4 {
  font-weight: 400;
  font-size: 30px;
  color: #111;
  line-height: 1.4;
  margin-bottom: 24px;
}

.rec_text_box h4 b {
  font-size: 35px;
  font-weight: bold;
  display: block;
  margin-top: 8px;
}

.rec_text_box p {
  font-weight: 500;
  font-size: 20px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 32px;
}

.rec_mv_btn {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  color: #333;
}

.rec_mv_btn p {
  font-size: 1.3em;
  margin: 0;
  margin-right: 12px;
  color: currentColor;
}

.mv_btn {
  width: 2.5em;
  height: 2.5em;
  display: flex;
  align-items: center;
  transition: transform 0.3s ease-in-out;
}


.rec_mv_btn:hover .mv_btn {transform: rotate(45deg);}
.rec_mv_btn:hover > p {color: #E92626; font-weight: bold;}

.mv_btn_wrap {cursor: pointer;}
.mv_btn_wrap:hover .mv_btn {transform: rotate(45deg);}
.mv_btn_wrap:hover.mv_btn_wrap > small {color: #E92626; font-weight: bold;}


.rec_img_box {
  flex: 1;
  width: 60%;
}

.rec_img_box img {
  width: 100%;
  height: 350px;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}


.about_img_wrap {display: flex; width: 100%; gap: 16px;}
.about_img_wrap > div.about_con {position: relative; width: calc(100% / 3); padding-bottom: 25%; transition: all 0.3s; border-radius: 20px; cursor: pointer; overflow: hidden;}
.about_img_wrap > div.about_con:hover {width: calc((100% / 3) + 250px);  overflow: hidden;}
.about_img_wrap > div.about_con > img {position: absolute; width: 100%; height: 100%; object-fit: cover; top: 50%; left: 50%; transform: translate(-50%, -50%); object-position: center; filter: brightness(.7);}
.about_con_txt > div > i.mb_btn {width: 2em; height: 2em;  transition: transform 0.3s ease-in-out;}
.about_img_wrap > div.about_con:hover .mb_btn {transform: rotate(45deg);}

.about_cont_txt_bt {font-size: 0; font-weight: 300; color: #fff; opacity: 0; visibility: hidden; transition: opacity 0.3s ease-in-out;}
.about_img_wrap > div.about_con:hover .about_cont_txt_bt {visibility: visible; opacity: 1; font-size: 20px;} 

.about_con_txt {width: 100%; display: flex; flex-direction: column; position: absolute; bottom: 0; left: 0; padding: 50px; color: #fff; cursor: pointer;}
.about_con_txt > div {width: 100%; display: flex; align-items: center; gap: .8em;}
.about_con_txt > div > h5 {font-size: 27px;}


.sec04 .title {justify-content: center; text-align: center;}
.sec04 .title_wrap {flex-direction: column;}
.sec04 .title_wrap em {text-align: center; display: block;}
.sec04 .title_wrap strong {text-align: center; display: block;}
.sec04 .title_wrap .title_top > p {text-align: center; color: #fff; margin-top: 1em;}
.sec04 i.mb_btn {width: 2.5em; height: 2.5em; transition: transform 0.3s ease-in-out;}
.sec04 .baro_button:hover .mb_btn {transform: rotate(45deg);}
 













@media (max-width: 1024px) {

}




@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}


.sec_pt{padding-top: 160px;}
.sec_pb{padding-bottom: 160px;}
.sec_ptb{padding: 200px 0 0;}
.sec_ptb3 {padding-top: 0; padding-bottom: 200px;}
.sec_ptb4 {padding-top: 160px; padding-bottom: 160px;}
section.demo *{ text-align: left;}
.title b{font-size: 24px; color: #777;font-weight: 500; display: block; overflow: hidden;}
.title b span{display: block;}
.title em + b{margin-top: 20px;}
.title .tabs + em{margin-top: 40px;}
.title b + .top{margin-top: 20px;}
.title .top + p{margin-top: 60px;}
.title p{ font-size: 24px; color: #666; font-weight: 200;}

.tabs ul{display: flex;}

.tabs li+ li{margin-left: 12px;}
.tabs li.on a{background: var(--main-color); color: #fff;font-weight: 400;border-color:var(--main-color);}
.tabs li a{padding:12px 25px;border-radius: 30px;border:1px solid #eee;background: #f9f9f9; color: #333;}
.tabs li:hover a{background: var(--main-color); color: #fff;font-weight: 400;border-color:var(--main-color);}

.but{height: max-content;}
.but button{padding: 20px; width: 190px; border:1px solid #eee; color: #777; display: flex; justify-content: center; font-size: 18px; align-items: center; border-radius: 2px;}



.recruitment{position: relative;}
.recruitment .title .top{display: flex; justify-content: space-between; align-items: center; margin-bottom: 120px;}

.recruitment .tabs_but{display: flex; align-items: center; justify-content: space-between; margin-top: 40px;}


.main_point_sec .title{padding-bottom: 80px;}

.main_point_sec .panel {position: relative;}
.main_point_sec .panel .txtbox::before{content:'';display: block;width: 60%;height: 390%;background: url(../img/main/txt_bg.png) center/cover; position: absolute;left:50%;transform: translate(-50%,-50%);top:50%; opacity: 0.2; z-index: -1;}
.main_point_sec .panel .txtbox{position: absolute; left:50%;top:50%;transform: translate(-50%,-50%); z-index: 999; text-align: center; width: 100%; }
.main_point_sec .panel .txtbox b{display: block; font-size: 24px; color: var(--main-color); font-weight: bold; text-align: center;}
.main_point_sec .panel .txtbox em{display: block; font-size: 50px; color: #fff; font-weight: 300; line-height: 1.2; text-align: center; margin-top: 20px;}
.cus-tab {padding-top: 50px;}






/* ********************************************* *
* 1500px
* ********************************************* */
@media screen and (max-width: 1500px){
    
  .recruitment .title .top em + p {margin-left: 0px !important;}
  .recruitment .title .top {gap: 80px;}

} 



/* ********************************************* *
* 1400px
* ********************************************* */
@media screen and (max-width: 1400px){
  
  .slide .main_slide,
  .slide .main_slide > i{border-radius: 0;}
  .service_nav_wrap {width: 1200px; padding: 0 16px;}
  .bd-lg {width: 1200px;}
  
} 



/* ********************************************* *
* 1350px
* ********************************************* */
@media screen and (max-width: 1350px){
    
  .recruitment .title .top em + p {margin-left: 0px !important; margin-top: 30px;}
  .recruitment .title .top {gap: 80px;}

}  

/* ********************************************* *
* 1240px
* ********************************************* */
@media screen and (max-width: 1240px){


}  


/* ********************************************* *
* 1200px
* ********************************************* */
@media screen and (max-width: 1200px){
  
  .service_nav_wrap {width: 100%;}
  .service_nav_wrap > ul > li {padding: 30px 15px;}
  .service_nav_wrap > ul > li > div {flex-direction: column; height: 100%;}

  .slide .txtbox {transform: translate(-50%, -50%);}

  .title em {font-size: 45px;}
  .title_wrap > strong,
  .sec03 .title_wrap > div > strong { font-size: 20px;}
  .sec02 .title div > span {font-size: 22px;}
  .sec03 .title em {font-size: 36px;}
  .sec03 .title_wrap > .title_bot > span {font-size: 20px;}
  .sec02 .development_box_wrap > ul > li > div > h4 {font-size: 30px;}
  .sec02 .development_box_wrap > ul > li > div > div > p {font-size: 20px;}

  .sec02 .development_box_wrap > ul > li > div > div > i {width: 2em; height: 2em; overflow: hidden;}
}  

/* ********************************************* *
* 1199px
* ********************************************* */
@media screen and (max-width: 1199px){

  .bd-lg {max-width: 1200px; width: auto;}
  .office_list_wrap {overflow-x: auto; scroll-snap-type: x mandatory;}
  .office_list_wrap::-webkit-scrollbar { width: 8px;  /* 가로 스크롤바 높이 */ height: 8px; /* 세로 스크롤바 너비 */}
  .office_list_wrap::-webkit-scrollbar-track {background: #f1f1f1; /* 연한 회색 */ border-radius: 10px;}
  .office_list_wrap::-webkit-scrollbar-thumb {background: #E92626; /* 중간 회색 */border-radius: 10px;}
  .office_list_wrap::-webkit-scrollbar-thumb:hover {background: #E92626/* 어두운 회색 */}
  .sec01 .contents > .office_list_wrap > ul {flex-wrap: nowrap; width: calc(100% + 1920px); }
  .sec01 .contents > .office_list_wrap > ul > li { scroll-snap-align: start; padding: 22px;}

}  



/* ********************************************* *
* 1024px
* ********************************************* */
@media screen and (max-width: 1024px){

  .title em { font-size: 38px;}
  .sec02 .development_box_wrap > ul {flex-wrap: wrap; width: 100%; transition: 0.3s all;}
  .sec02 .development_box_wrap > ul > li {width: calc((100% - 40px)/ 2);} 
  .sec02 .development_box_wrap > ul > li > div > div {margin-top: 60px;}
  .sec02 .development_box_wrap > ul > li > div > h4 {font-size: 28px;}

  .sec03 .sec03_img_box.sec03_img_box2 {display: none;}
  .sec03 .bd-lg.sec03-bdlg {justify-content: space-between;}

  .sec04 {border-top-left-radius: 20px; border-top-right-radius: 20px;}

}  

/* ********************************************* *
* 960px
* ********************************************* */
@media screen and (max-width: 960px){
  .col-md-3 {width: calc((100% - 20px) / 2) !important; margin-right: 20px !important;}

  .recruitment .but button {width: 180px; font-size: 17px;}
}

/* ********************************************* *
* 880px
* ********************************************* */
@media screen and (max-width: 880px){

  .title_wrap {flex-direction: column;}
  .cop_con_wrap > div.cop_con > h4 {font-size: 3em;} 
  .cop_con_wrap > div.cop_con > p {font-size: 1.1em;}
  .culture li.con > div .txtbox {left: 30px; bottom: 34px;}
  .culture li.con > div .txtbox em {font-size: 40px;}

  .rec_text_box h4 {font-size: 24px;}
  .rec_text_box h4 b {font-size: 28px;}
  .rec_con_wrap {padding: 40px;}
  .rec_text_box p {font-size: 17px; font-weight: 400;}
  .eng_deco {font-size: 20px;}

  .rec_mv_btn p {font-size: 1.1em;}
  .mv_btn {width: 2em; height: 2em;}

  .rec_img_box img {height: 245px;}
  .rec_text_box {padding-right: 15px;}
  .rec_text_box br {display: none;}

  .sec_ptb {padding: 160px 0 0;}
  .sec_ptb2 {padding-top: 160px; padding-bottom: 160px;}
  .sec_ptb3 {padding-top: 0; padding-bottom: 160px;}

  .about_img_wrap {flex-wrap: wrap;}
  .about_img_wrap > div.about_con {width: calc((100% - 16px) / 2); padding-bottom: 35%;}
  .about_img_wrap > div.about_con:hover {width: calc((100% - 16px) / 2);}
  .about_img_wrap > div.about_con> img {transition: all 0.5s;}
  .about_img_wrap > div.about_con:hover > img {width: 200%; height: 200%; transition: all 0.5s;}
  .about_img_wrap > div.about_con:hover .about_cont_txt_bt {visibility: visible; opacity: 0; font-size: 0;} 
}

@media (max-width: 768px) {

  .sub_font02 {font-size: 28px;}

  .rec_con_wrap {flex-direction: column-reverse;}
  .rec_img_box {width: 100%;}
  .rec_img_box img {height: 320px;}
  .rec_text_box {padding-right: 0; margin-top: 20px;}
  .rec_text_box h4 {margin-bottom: 20px; display: inline;}
  .rec_text_box h4 > br {display: none;}
  .rec_text_box h4 > b {display: inline; margin-left: 8px;}
  .rec_text_box p {margin-bottom: 0;}
  .rec_mv_btn {margin-top: 16px;}
  .eng_deco {margin-bottom: 0;}
  .rec_text_box > p {margin-top: 16px;}

  .cop_con_wrap > div.cop_con > h4 {font-size: 2.5em;}

}





/* ********************************************* *
* 690px
* ********************************************* */
@media screen and (max-width:690px){
  .title em,
  .sec03 .title em {font-size: 35px;}
  .sec02 .title div > span,
  .sec03 .title_wrap > .title_bot > span {display: block; margin-top: 1em; font-size: 18px;}

}


/* ********************************************* *
* 680px
* ********************************************* */
@media screen and (max-width:680px){

  .rec_text_box h4 > br {display: block;}
  .rec_text_box h4 > b {margin-left: 0;}
}


@media screen and (max-width:600px){

  .title em {font-size: 30px !important;}
  .title_wrap > strong, .sec03 .title_wrap > div > strong {font-size: 18px;}
  .slide .txtbox em { font-size: 38px !important;}
  .sec02 .development_box_wrap > ul > li > div > h4 {font-size: 25px;}
  .sec02 .development_box_wrap > ul > li > div > div > p {font-size: 18px;}

  .sec03 .sec03_img_box {width: 100%; height: 300px;}

  .sec04 {border-radius: 0;}
  .sec02.recruitment .title .top {margin-bottom: 80px;}
  .sec03 .bd-lg.sec03-bdlg {flex-direction: column;}
  .sec02 .development_box_wrap > ul  {gap: 16px;}
  .sec02 .development_box_wrap > ul > li {width: calc((100% - 16px) / 2);}

  .sec03::after {width: 390px; height: 105px; transform: translateY(-195%); z-index: -1;}



}

@media screen and (max-width:550px){
  .slide .main_slide {height: 100vh;}
  .slide .main_slide > i {height: 100%;}
  .service_nav_wrap {padding: 0; transform: translate(-50%, 0%);}
  .service_nav_wrap > ul {border-radius: 0;}
  .sec01_nav_wrap > ul > li {padding: 8px 0;}
  .sec01_nav_wrap > ul > li > div {font-size: 16px}
  .sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_date > p > span {font-size: 13px;}
  .sec01 .contents > .office_list_wrap > ul > li .office_list_item_top > .official_date,
  .sec01 .contents > .office_list_wrap > ul > li .office_list_item_bot > div.posting_tag > p > span {font-size: 14px;}
  .title b {font-size: 21px;}
  .title b + .top {margin-top: 10px !important;}



  .about_img_wrap > div.about_con {width: 100%; padding-bottom: 45%;}
  .about_con_txt > div {justify-content: space-between;}
  .about_img_wrap > div.about_con:hover {width: 100%; height: 100%;}
  .about_img_wrap > div.about_con> img {transition: all 0.5s;}
  .about_img_wrap > div.about_con:hover > img {width: 200%; height: 200%; transition: all 0.5s;}
  .about_img_wrap > div.about_con:hover .about_cont_txt_bt {visibility: unset; opacity: 0; font-size: 0;} 
  .about_con_txt {padding: 25px;}
  .about_con_txt > div > h5 {font-size: 24px;}

  .rec_img_box img {height: 220px;}

  .cop_img_wrap {aspect-ratio: 1 / 1.5;}
  .cop_con_wrap {flex-direction: column;}
  .cop_con_wrap > div.cop_con {width: 100%;}
  .cop_con_wrap > div.cop_con:nth-child(2) {border-right: 0; border-left: 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd;}
  .cop_con_wrap > div.cop_con > h4 {font-size: 2em;}
  .cop_con_wrap > div.cop_con > p,
  .cop_con_wrap > div.cop_con > small {font-size: 1em;}

  .rec_con_wrap {padding: 22px;}

  .title {flex-direction: column; align-items: flex-start;}
  .recruitment .title .top {gap: 20px; margin-bottom: 20px;}
  .mv_btn_wrap {flex-direction: row-reverse;}
  .mv_btn_wrap > small {margin-right: .5em;}
  .mv_btn_wrap {height: auto; margin-bottom: 35px;}

  .eng_deco {font-size: 16px;}
  .rec_text_box h4 {font-size: 20px;}
  .rec_text_box h4 > b{font-size: 24px;}

  .sec_ptb {padding: 100px 0 0;}
  .sec_ptb2 {padding-top: 160px; padding-bottom: 100px;}
  .sec_ptb3 {padding-top: 0; padding-bottom: 100px;}

  .sec01 .contents > .office_list_wrap > ul > li .office_list_item_cen > h3 {font-size: 1.2em;}

  .title em {font-size: 24px !important;}
  .title_wrap {gap: 1em;}
}

@media screen and (max-width:500px){

  .slide .txtbox {width: 100%; transform: translate(-50%, -100%);}
  .slide .txtbox em {font-size: 30px !important;}
  .slide .txtbox > p {font-size: 20px; margin-top: 0;}
  .service_nav_wrap > ul {flex-wrap: wrap; background-color: #222222b8;}
  .service_nav_wrap > ul > li {width: calc(100% /2); background-color: #222222b8;}

  .sec02 .development_box_wrap > ul > li > div > h4 {font-size: 22px;}
  .sec02 .development_box_wrap > ul > li > div > div > p {font-size: 14px;}
  .sec02 .title div > span, .sec03 .title_wrap > .title_bot > span {font-size: 16px;}
  .sec02 .title div > span > br, .sec03 .title_wrap > .title_bot > span > br {display: none;}


}

@media screen and (max-width:470px){

  .tabs {width: 100%; overflow-x: scroll;}
  .tabs ul {height: 42px; overflow-x: scroll; align-items: center;}
  .recruitment .tabs_but {gap: 35px;}

  .main_point_sec .panel .txtbox em {font-size: 24px; margin-top: 12px;}
  .main_point_sec .panel .txtbox b {font-size: 18px;}
  .main_point_sec .blue::after {content: ""; display: block; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: rgba(0, 0, 0, 0.3);}
  .main_point_sec .panel .txtbox em br {display: none;}
  

}

@media screen and (max-width:380px){

  .slide .txtbox > p {font-size: 16px;}
  .slide .txtbox em {font-size: 28px !important; margin-top: 8px; display: block;}
  
  
  .sec01 .contents > .office_list_wrap > ul { width: calc(100% + 1380px);}
  .sec01 .contents > .office_list_wrap > ul > li .office_list_item_cen > h3 {font-size: 1em;}

  .title em {font-size: 24px !important;}
  .title b {font-size: 20px;}
  .title .top + p {margin-top: 30px;}
  .title p {font-size: 16px !important;}

  .rec_img_box img {height: 170px;}
  .rec_text_box p {font-size: 14px;}

  .about_con_txt > div > h5 {font-size: 19px;}

  .eng_deco {font-size: 14px;}
  .rec_mv_btn p {margin-right: 8px;}
  .rec_text_box h4 {font-size: 18px;}
  .rec_text_box h4 > b { font-size: 20px;}
  
  .about_img_wrap > div.about_con {border-radius: 10px;}

}

@media screen and (max-width:350px){

  .rec_img_box img {height: 115px;}

  .title em {font-size: 19px !important;}
  .title_wrap > strong {font-size: 16px;}
  .title_wrap {gap: .5em;}


}