@charset "UTF-8";


/* visual_wrap */
.visual_wrap {position: relative; height: 330px;  overflow:hidden;}
.visual_wrap .big_container {position: relative; width: 100%; max-width: 1200px; margin: 0 auto; height: 100%;}

.visual_wrap .visual_txt {padding-top: 80px; font-family: "BMDOHYEON" ,  sans-serif !important;}
.visual_wrap .visual_txt p.txt1 {margin-bottom: 10px; font-size: 2.188em; color: #353535; animation: fadeInUp 1.3s 1s backwards;}
.visual_wrap .visual_txt p.txt1 .highlight {display: inline-block;  color: #3d37c2;/*  animation: pulse 1s 2.5s linear; */}
.visual_wrap .visual_txt p.txt1 .highlight .dot_pnt {position: relative; padding-top: 13px;}
.visual_wrap .visual_txt p.txt1 .highlight .dot_pnt:before {content:""; display: block; position: absolute; top: 0; left: 50%; margin-left: -2.5px; width: 5px; height: 5px; border-radius: 50%; background: #3d37c2;}

.visual_wrap .visual_txt p.txt1 .highlight2 {display: inline-block;  color: #4f30af;/*  animation: pulse 1s 2.5s linear; */}
.visual_wrap .visual_txt p.txt1 .highlight2 .dot_pnt2 {position: relative; padding-top: 13px;}
.visual_wrap .visual_txt p.txt1 .highlight2 .dot_pnt2:before {content:""; display: block; position: absolute; top: 0; left: 50%; margin-left: -2.5px; width: 5px; height: 5px; border-radius: 50%; background: #4f30af;}


.visual_wrap .visual_txt p.txt2 {font-size: 3.313em; color: #3d37c2; animation:fadeInUp 1.5s 1.5s backwards;} 


/* visual shutter */
.visual_wrap .shutter {display:block; position:absolute; top:-45%; left:0; width:100%; height:185%; opacity:0.8; z-index:20;}
.visual_wrap .shutter {transform:rotate(45deg);}
.visual_wrap .shutter:before,
.visual_wrap .shutter:after {content:""; position:absolute; left:0; width:100%; height:200%;}
.visual_wrap .shutter:before {bottom:220%; animation:shutterT 2s;}
.visual_wrap .shutter:after {top:220%; animation:shutterB 2s;}


/* keyframes */
@keyframes shutterT { 0% {bottom:50%;}  100% {bottom:220%;} }
@keyframes shutterB { 0% {top:50%;}  100% {top:220%;} }
@keyframes bounce { 0% {transform:translateY(0);}  50% {transform:translateY(-10px);}  100% {transform:translateY(0);} }



/* main_quick_wrap */
.main_quick_wrap {position: relative; font-family:"SCDream", sans-serif;}
.main_quick_wrap .row {height: 250px;}
.main_quick_wrap .row .inner {height: 100%;}
.main_quick_wrap .row:nth-child(even) {background: #f6f7fd;}
.main_quick_wrap .row .container {height: 100%;}
.main_quick_wrap .row .ech {float: left; display: table; height: 100%;}
.main_quick_wrap .row .ech .va_m {display: table-cell; width: 100%; height: 100%; vertical-align: middle;}
.main_quick_wrap .row .ech1 {width: 33.9%;}
.main_quick_wrap .row .ech2 {width: 36.875%;}
.main_quick_wrap .row .ech3 {float: right;width: 29.2187%; text-align: right;}
.main_quick_wrap .row .ech3 .va_m.on {animation: bounce 2.5s infinite;}
.main_quick_wrap .tit {display: inline-block; color: #333333; font-size: 2.063em; margin-bottom: 20px;}
.main_quick_wrap .row4 .tit {padding-right: 60px; background: url("/images/main/row4_tit_bg.png") no-repeat right top;}
.main_quick_wrap .qck_btn {position: relative; display: block; font-family: "Noto Sans KR" , sans-serif !important; width: 218px; height: 50px; text-align: center;
color: #fff; line-height: 50px; background: #3d37c2; font-weight: 300; font-size: 1.250em; border-radius: 5px;}
.main_quick_wrap .qck_btn i {position: absolute; top: 16px; right: 0; opacity: 0; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_quick_wrap .qck_btn:hover i {position: absolute; top: 16px; right: 13px; opacity: 1; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_quick_wrap .qck_btn span {padding-right: 0;  -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_quick_wrap .qck_btn:hover span {padding-right: 15px;  -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_quick_wrap .row:nth-child(even) .qck_btn {background: #4385ff;}
.main_quick_wrap .ech_txt {font-size: 1.563em; color: #000; line-height: 150%; word-break: keep-all;}
.main_quick_wrap .ech_txt .fw_bold {font-weight: 500;}

/* main_news_wrap */
.main_news_wrap {padding: 80px 0 0px 0px;}
.main_news_wrap .left_wrap {float: left; width:100%; height: 305px;}
.main_news_wrap .left_wrap .tab {float: left; width: 21%; height: 100%;}
.main_news_wrap .left_wrap .tab ul {height: 100%;}
.main_news_wrap .left_wrap .tab ul li {display: table; position: relative; width: 100%; height: 33.3333%;}
.main_news_wrap .left_wrap .tab ul li a {position: relative; z-index: 3; display: table-cell; width: 100%; height: 100%; vertical-align: middle; text-align: center; font-size: 1.250em; color: #fff;  font-family:"SCDream", sans-serif;}
.main_news_wrap .left_wrap .tab ul li:nth-child(1) {background: #adb1c3;}
.main_news_wrap .left_wrap .tab ul li:nth-child(1).on {background: #2a2968;}
.main_news_wrap .left_wrap .tab ul li:nth-child(1):after {content:""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("/images/main/noti_bg.png") no-repeat right -55px bottom -54px; opacity: 0.2;}
.main_news_wrap .left_wrap .tab ul li:nth-child(2) {background: #9498a8;}
.main_news_wrap .left_wrap .tab ul li:nth-child(2).on {background: #ef6dc6;}
.main_news_wrap .left_wrap .tab ul li:nth-child(2):after {content:""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("/images/main/insta_bg.png") no-repeat right -15px bottom -30px; opacity: 0.2;}
.main_news_wrap .left_wrap .tab ul li:nth-child(3) {background: #adb1c3;}
.main_news_wrap .left_wrap .tab ul li:nth-child(3).on {background: #4385ff;}
.main_news_wrap .left_wrap .tab ul li:nth-child(3):after {content:""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("/images/main/fb_bg.png") no-repeat right -5px bottom -20px; opacity: 0.2;}

.main_news_wrap .left_wrap .con {float: right; width: 75%; height: 100%;}
.main_news_wrap .left_wrap .con .each_con .list > li {position: relative; padding: 17.5px 103px 17.5px 50px; border-bottom: 1px dashed #c8c8c8;}
.main_news_wrap .left_wrap .con .each_con {display: none;}
.main_news_wrap .left_wrap .con .each_con.on {display: block;}
.main_news_wrap .left_wrap .con .each_con .list > li:last-child {border-bottom: 0;}
.main_news_wrap .left_wrap .con .each_con .list > li a {display:inline-block; vertical-align:middle; color: #000; font-size: 1.125em; font-family: "Noto Sans KR" , sans-serif !important;}
.main_news_wrap .left_wrap .con .each_con .list > li a span.dotdot {display: inline-block; max-width: 100%; border-bottom: 1px solid transparent;  -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_news_wrap .left_wrap .con .each_con .list > li a:hover span.dotdot {border-bottom: 1px solid #000;  -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.main_news_wrap .left_wrap .con .each_con .list > li span.ico {position: absolute; top: 12px; left: 0; width: 37px; height: 37px;}
.main_news_wrap .left_wrap .con .each_con.noti .list > li.top {position: relative; padding-left: 0px;}
/*.main_news_wrap .left_wrap .con .each_con.noti .list > li.top:before {content: "주요"; display: block; position: absolute; top: 17px;
    left: 0; width: 44px; height: 23px; border: 1px solid #ff035c; color: #ff035c; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center;}*/
.icon_major{display: inline-block; width: 44px; height: 23px; border: 1px solid #ff035c; color: #ff035c; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center; margin-right:5px; vertical-align:middle;}    
.icon_board1{display: inline-block; width: auto; padding:0px 10px; height: 23px; border: 1px solid #0d5cb5; color: #0d5cb5; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center; vertical-align:middle;} 
.icon_board2{display: inline-block; width: auto; padding:0px 10px; height: 23px; border: 1px solid #000000; color: #000000; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center; vertical-align:middle;} 
.icon_board3{display: inline-block; width: auto; padding:0px 10px; height: 23px; border: 1px solid #7a2d8d; color: #7a2d8d; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center; vertical-align:middle;} 
.icon_board4{display: inline-block; width: auto; padding:0px 10px; height: 23px; border: 1px solid #ff4027; color: #ff4027; font-size: 0.8em; letter-spacing: 1px; border-radius: 25px;
    line-height: 22px; text-align: center; vertical-align:middle;} 
    
.main_news_wrap .left_wrap .con .each_con.insta .list > li {background: url("/images/main/inasta_ico.png") no-repeat left center;}
.main_news_wrap .left_wrap .con .each_con.fbk .list > li {background: url("/images/main/fb_ico.png") no-repeat left center;}
.main_news_wrap .left_wrap .con .each_con.noti .list > li {padding: 17.5px 103px 17.5px 5px;}
.main_news_wrap .left_wrap .con .each_con .list > li span.date {position: absolute; display: inline-block; top: 21px; right: 3px; color: #898989; font-family: "Spoqa Han Sans", "sans-serif" !important;}
.contents .right_wrap {position: relative; width: 100%; height: 540px; overflow:hidden; background-color:#f4f8fe;}
.contents .arr_btn {position: absolute; top: 140px; width: 24px; height: 42px;}
.contents .arr_btn a {display: block; width: 100%;  height: 100%;}
.contents .arr_btn.prev_btn {left:0px; background: url("/images/main/pop_prev1.png") no-repeat center center;}
.contents .arr_btn.next_btn {right:0px; background: url("/images/main/pop_next1.png") no-repeat center center;}
.contents .right_wrap .item .va_m{display: flex; justify-content: center; width:1200px; height:500px; overflow:hidden; margin:20px auto; border-radius:50px; border:1px solid #2457c1;}
.contents .right_wrap .item .va_m img{width:auto; height:500px;}/*1280-330*/
.pc_o{display:block;}
.mo_o{display:none !important;}

/* 전체 배경 느낌 (페이지에 맞게 조정 가능) */
.main-visual {
  padding: 24px 16px;
  background: #f2f5fb;
}

/* 안쪽 카드 (파란 라운드 테두리) */
.main-visual-inner {
  max-width: 1200px;
  max-height:500px;
  height:auto;
  margin: 0 auto;
  background: #e9eef7;
  border-radius: 32px;
  border: 1px solid #2a65d6;
  padding: 0px;
  box-sizing: border-box;
  overflow: hidden;
}

/* 슬라이더 영역 */
.slider-frame {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  
}

/* 트랙: 가로로 이어붙여서 translateX로 움직임 */
.slider-track {
 display: flex;
  transition: transform 0.5s ease;
}

/* 슬라이드 한 장 */
.slide {
  flex: 0 0 100%;
  width:100%;
  max-height:500px;
  overflow:hidden;
}
.slide img {
  width: 100% !important;
  overflow:hidden;
  display: block;
  object-fijt:cover;
  height:100% !important;
  border-radius: 32px;
}

/* 컨트롤 영역 */
.slider-controls {
position: absolute;
  right: 24px;
  bottom: 24px;
  margin-top: 0;          /* 이건 이제 필요 없음 */
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  z-index: 5;            /* 혹시 몰라서 위로 올리기 */
}

/* 1 / 3 표시 */
.page-indicator {
  font-size: 14px;
  font-weight: 600;
  color: #003c8b;
  padding: 4px 10px;
  background: #ffffff;
  border-radius: 999px;
}

/* 버튼 공통 스타일 */
.control-buttons {
  display: flex;
  gap: 8px;
}
.ctrl-btn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: none;
  background: #ffffff;
  color: #003c8b;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  cursor: pointer;
}
.ctrl-btn:hover {
  background: #f3f7ff;
}

/* 일시정지/재생 버튼만 살짝 굵게 */
.play-pause {
  font-weight: 700;
}

.elite-slider-wrapper {
      max-width: 1200px;
      margin: 70px auto;
      position: relative;
    }

    .elite-slider-title {
      font-size: 40px;
      color:#05367b;
      font-family: 'Elice DX Neolli';
	font-weight: 700;
	font-style: normal;
      margin-bottom: 20px;
    }
    .elite-slider-title i{
    	vertical-align:middle;
      color:#05367b;
    	margin-left:5px;
    }

    /* 슬라이더 영역 */
    .elite-slider-frame {
      position: relative;
      overflow: hidden;
      padding: 0px 0px 60px 0px; /* 아래쪽 컨트롤 자리 확보 */
    }

    .elite-slider-track {
      display: flex;
      transition: transform 0.5s ease;
      width: 100%;
    }

    .elite-slide {
      flex: 0 0 100%;
      padding: 0 4px;
    }

    /* 카드 그리드 */
    .elite-card-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }

    /* 카드 스타일 */
    .elite-job-card {
      position: relative;
      border-radius: 0px 60px 0px 0px;
      border: 1px solid #e9e9e9;
      padding: 20px 30px 20px;
      min-height:257px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.03);
      display: flex;
      flex-direction: column;
      gap: 14px;
      background-color:#fff;
    }
    

    .elite-job-badges {
      display: flex;
      gap: 8px;
      align-items: center;
      margin-bottom: 8px;
    }

    .elite-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 40px;
      padding: 4px 10px;
      border-radius: 999px;
      font-size: 14px;
      font-weight: 400;
      color: #fff;
    }
    .elite-badge-exp { background: #ffaf2f; }
    .elite-badge-new { background: #22c55e; }
    .elite-badge-exp2{ background: #696969; }
    .elite-badge-d{ background: #d85555;}

    .elite-logo-box {
      height: 70px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .elite-logo-box img {
      max-width: 100%;
      max-height: 60px;
      object-fit: contain;
    }

    .elite-company-name {
      font-size: 16px;
      color: #5b5b5b;
      font-weight:700;
    }

    .elite-job-title {
      font-size: 20px;
      font-weight: 800;
      color: #000;
      display: -webkit-box;
  -webkit-line-clamp: 2;      /* 표시할 줄 수 */
  -webkit-box-orient: vertical;
  overflow: hidden;
      line-height: 1.45;
    }

    .elite-heart-btn {
      position: absolute;
      top: 0px;
      right: 0px;
      width: 35px;
      height: 35px;
      border:1px solid #e9e9e9;
      border-radius: 999px;
      background: #fff;
      box-sizing:border-box;
      box-shadow: 0 4px 10px rgba(0,0,0,0.12);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }
    .elite-heart-btn span {
      color: #f97373;
      font-size: 18px;
    }

    /* 아래 컨트롤 영역 */
    .elite-controls-bottom {
      position: absolute;
      bottom: 14px;
      left: 50%;
      transform: translateX(-50%);
      width: calc(100% - 48px); /* 좌우 padding 24px */
      display: flex;
      align-items: center;
      justify-content: space-between;
      pointer-events: none; /* 안쪽 버튼/도트만 클릭되게 */
    }

    .elite-pagination {
      pointer-events: auto;
    }

    .elite-pagination-pill {
      background: #e5e7eb;
      border-radius: 999px;
      padding: 6px 14px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .elite-dot {
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: #9ca3af;
      opacity: 0.6;
      transition: all 0.2s;
      cursor: pointer;
    }
    .elite-dot.active {
      width: 18px;
      opacity: 1;
      background: #111827;
    }

    /* 오른쪽 아래 화살표 */
    .elite-arrows {
      display: flex;
      gap: 8px;
      pointer-events: auto;
    }

    .elite-arrow-btn {
      width: 36px;
      height: 36px;
      border-radius: 999px;
      border: 1px solid #e5e7eb;
      background: #ffffff;
      box-shadow: 0 4px 8px rgba(0,0,0,0.12);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      font-size: 18px;
    }

/*.center-banner1{max-width:1200px; margin:50px auto; height:142px; background-color:#1b21a0; border-radius:30px; padding:0px 40px; color:#fff; display: flex;
      align-items: center;
      justify-content: space-between;}
.center-banner1 h2{display:inline-block; font-size:20px; font-family: 'Elice DX Neolli'; font-weight: 500; font-style: normal; line-height:65px;}
.center-banner1 h2 span{display:inline-block; font-size:30px; font-family: 'Elice DX Neolli'; font-weight: 700; margin-left:15px;}
.center-banner1 div{display:inline-block;}

.center-banner2{max-width:1200px; margin:50px auto; height:142px; background-color:#1eba55; border-radius:30px; padding:0px 40px; color:#fff; display: flex;
      align-items: center;
      justify-content: space-between;}
.center-banner2 h2{display:inline-block; font-size:20px; font-family: 'Elice DX Neolli'; font-weight: 500; font-style: normal; line-height:65px;}
.center-banner2 h2 span{display:inline-block; font-size:30px; font-family: 'Elice DX Neolli'; font-weight: 700; margin-left:15px;}
.center-banner2 div{display:inline-block;}

.center-banner3{max-width:1200px; margin:50px auto; height:142px; background-color:#1e64ba; border-radius:30px; padding:0px 40px; color:#fff; display: flex;
      align-items: center;
      justify-content: space-between;}
.center-banner3 h2{display:inline-block; font-size:20px; font-family: 'Elice DX Neolli'; font-weight: 500; font-style: normal; line-height:65px;}
.center-banner3 h2 span{display:inline-block; font-size:30px; font-family: 'Elice DX Neolli'; font-weight: 700; margin-left:15px;}
.center-banner3 div{display:inline-block;}*/

/* 공통 */
.center-banner{
  max-width:1200px;
  margin:50px auto;
  border-radius:30px;
  padding:0 40px;
  color:#fff;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;

  min-height:142px;     /* height 고정 대신 */
  height:auto;          /* 반응형에서 자동 높이 */
  box-sizing:border-box;
}
}

.center-banner h2{
  display:block;        /* flex 안에서는 inline-block 불필요 */
  font-size:20px;
  font-family:'Elice DX Neolli';
  font-weight:500;
  font-style:normal;
  line-height:1.3;      /* 65px 고정 제거 */
  margin:0;
  min-width:0;          /* 줄바꿈/말줄임 대응 */
}

.center-banner h2 span{
  display:inline-block;
  font-size:30px;
  font-family:'Elice DX Neolli';
  font-weight:700;
  margin-left:15px;
}

.center-banner .banner-right{
  flex:0 0 auto;
  white-space:nowrap;   /* 오른쪽 요소 줄바꿈 방지(버튼/링크라면) */
}

/* 색상만 분리 */
.center-banner1{ background-color:#1b21a0; }
.center-banner2{ background-color:#1eba55; }
.center-banner3{ background-color:#1e64ba; }
/* 오른쪽 영역(아이콘 컨테이너) */
.center-banner .banner-right{
  flex: 0 1 240px;   /* 최대 240, 상황에 따라 줄어듦 */
  max-width: 240px;
  height: 142px;
  display:flex;
  align-items:center;
  justify-content:flex-end;

}

/* 아이콘 이미지 */
.center-banner .banner-right img{
  max-width: 240px;
  max-height: 142px;
  width: 100%;
  height: auto;
  object-fit: contain;   /* 비율 유지, 잘림 없음 */
  display:block;
}


/* 전체 가로형 카드 */
.foreign-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  min-height:160px;
  border-radius:0px 70px 0px 0px;
  border: 1px solid #e7e7e7;
  background: #fff;
}

/* 상단 태그 */
.foreign-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
/* 버튼을 오른쪽 위에 고정 */
.foreign-heart-btn {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 38px;
  height: 38px;
  border: none;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  cursor: pointer;
  z-index: 10;
}

/* 내부 ASP 아이콘 크기 보정 */
.foreign-heart-btn .heart_ico {
  width: 20px;
  height: 20px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.foreign-tags .tag {
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 20px;
  font-weight: 600;
  color: #fff;
}
.tag.new { background:#00c853; }
.tag.exp { background:#ffb300; }
.tag.both { background:#5c6bc0; }
.tag.d-day { background:#e53935; }

/* 카드 본문 부분 (로고 + 텍스트) */
.foreign-card-body {
  display: flex;
  gap: 20px;
  align-items: center;
}

.foreign-card-logo {
  flex: 0 0 200px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.foreign-card-logo img {
  width: 200px;
  height:80px;
  object-fit: contain;
}

/* 오른쪽 텍스트 */
.foreign-card-text {
  flex: 1;
}
.foreign-card-company {
  font-size: 14px;
  color: #555;
  margin-bottom: 4px;
}
.foreign-card-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6px;
  color: #212121;
}
.foreign-card-location {
  font-size: 14px;
  color: #777;
}

/* 슬라이드 내부 Grid (2 × 2) */
.foreign-card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px 24px;
}


.dnone{display:none !important;}

/* 전체 레이아웃 */
.main-section {
  padding: 40px 20px;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  font-family: "Pretendard", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

.main-grid {
  display: grid;
  grid-template-columns: 1.1fr 1.1fr;
  gap: 32px;
}

.block {
  margin-bottom: 32px;
}

.block-title {
  font-size: 26px;
  font-weight: 500 !important;
  margin-bottom: 18px;
  font-family: 'Elice DX Neolli';
}

/* 전체 레이아웃 */
.home-main-wrap {
  padding: 40px 20px;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  font-family: "Pretendard", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

.main-grid {
  display: grid;
  grid-template-columns: 1.1fr 1.1fr;
  gap: 32px;
}

.block {
  margin-bottom: 60px;
}

.block-title {
  font-size: 40px;
  font-weight: 700;
  margin-bottom: 18px;
  color:#000
}

/* ===== 자주찾는 서비스 ===== */
.service-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px 12px;
}

.service-item {
  border: none;
  background: #ededed;
  border-radius: 50%;
  width: 133px;
  height: 133px;
  margin: 0 auto;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 18px;
  line-height: 1.3;
  color:#353131;
  font-weight:700;
  letter-spacing:-0.05rem;
    overflow:hidden;
}

.service-icon {
  font-size: 20px;
}

/* ===== 우수취업수기 ===== */
.story-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.story-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0 13px 0;
}

.story-title {
	color:#242424;
  font-size: 20px;
}

.story-date{color:#949494; font-size:20px;}



/* ===== 행사갤러리 ===== */
/* 행사갤러리 레이아웃 */
.gallery-row {
  display: flex;
  gap: 16px;
}

/* 카드 공통 */
.gallery-card {
  position: relative;
  display: block;
  flex: 1;
  border-radius: 24px;
  overflow: hidden;
  text-decoration: none;
  color: #fff;
}

/* 이미지 */
.gallery-card img {
  display: block;
  width: 100%;
  height: 262px;      /* 필요하면 높이 조절 */
  object-fit: cover;
}

/* 아래쪽 그라데이션 오버레이 */
.gallery-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 14px 16px 18px;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.8) 100%
  );
  box-sizing: border-box;
}

/* 날짜 */
.gallery-date {
  display: block;
  font-size: 16px;
  opacity: 0.85;
  margin-bottom: 4px;
}

/* 제목 (2줄 말줄임) */
.gallery-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;      /* 2줄까지 표시 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}




/* ===== 주간 채용공고 ===== */
/* 탭 콘텐츠 숨김/노출: 스코프를 job-tabbox로 제한 */
.job-tabbox .job-list {
  min-height: 200px;
  display: none;
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.job-tabbox .job-list.active {
  display: block;
}
/* 탭 스타일 */
.job-tabs {
  display: flex;
  background: #05367b;
  border-radius: 15px;
  overflow: hidden;
}

.job-tab {
  flex: 1;
  padding: 10px 0;
  border: none;
  background: transparent;
  color: #fff;
  font-weight:700;
  cursor: pointer;
  font-size: 20px;
}

.job-tab.active {
  background: #000;
  color: #fff;
}

/* 탭 콘텐츠 숨김 */
.job-list {
  min-height:200px;
  display: none;
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.job-list.active {
  display: block;
}
.job-list li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 6px 0 10px 30px;
  background:url("/images/common/board_icon.png") 0px 7px no-repeat;
}

.job-list .title {
  flex: 1;
}

.job-list .sns {
  display: flex;
  gap: 6px;
}

.job-list .sns img {
  width: 30px;
}

/*.job-tabs {
  display: flex;
  border-radius: 999px;
  overflow: hidden;
  background: #05367b;
  margin-bottom: 18px;
}

.job-tab {
  flex: 1;
  padding: 10px 0;
  font-size: 20px;
  border: none;
  cursor: pointer;
  font-weight:700;
  background: transparent;
  color: #fff;
}

.job-tab.active {
  background: #000;
  color: #fff;
  display: block;
}

.job-list {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 20px;
}

.job-list li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 6px 0 10px 30px;
  background:url("/images/common/board_icon.png") 0px 7px no-repeat;
}*/

/* 전체 래퍼 */
.notice-video-wrap {
  padding: 40px 20px;
}

.notice-video-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  gap: 80px;
}

/* 공통 섹션 타이틀 */
.section-title {
  font-size: 40px;
  color:#232323;
  margin: 0 0 24px;
  font-weight: 500 !important;
  font-family: 'Elice DX Neolli';
}

.section-title i {
  color:#232323;
  margin-left:5px;
  vertical-align:middle;
}
/* ===== PC 기본: 좌/우 2컬럼 ===== */
.home-main-wrap .main-grid{
  display:flex;
  gap:32px;
  align-items:flex-start;
}

.home-main-wrap .left-col{ flex: 1.2; min-width: 0; }
.home-main-wrap .right-col{ flex: 1;   min-width: 0; }


/* ========== 공지사항 ========== */

.notice-box {
  flex: 1.2;
}

.notice-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.notice-list li {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 6px 0 10px 30px;
  background: url("/images/common/board_icon.png") 0px 7px no-repeat;
}

.notice-left {
display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;         
  min-width: 0;   
}
.notice-left a { 
  display: block;  /* 너비 조절을 위해 block 설정 */
  max-width: 400px; 
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.strTitle{font-weight:900; padding:20px 20px 20px 20px; margin:0px; box-sizing: border-box; font-size:18px; min-height:80px; line-height:110%;}
.strTitle span{float:right;}

/* 공지 텍스트 */
.notice-text {
  font-size: 20px;
  color: #242424;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 날짜 */
.notice-date {
  font-size: 20px;
  color: #6d6d6d;
  flex-shrink: 0;
}

/* ========== 홍보영상 ========== */

.video-box {
  flex: 1;
}

.video-card-wrap {
  display: flex;
  gap: 24px;
  margin-top: 12px;
}

.video-card {
  flex: 1;
  height: 200px;
  border-radius: 32px;
  background: #003b80; /* 진한 파란색 */
  display: block;
  overflow:hidden;
}

/* 나중에 실제 영상 썸네일 들어가면 이렇게 사용
.video-card {
  background: url(/images/main/video01.jpg) center/cover no-repeat;
}
*/






/* popup_box */
.popup_box {position: relative;}
/* .popup_box .popup_slider_wrap {min-height: 226px;} */
.popup_box .popup_slider {border-top: 1px solid #e7e7e7; }
.popup_box .popup_slider .item a {display: block;}
.popup_box .popup_slider.owl-theme .owl-dot {display: none !important;}
.popup_box .nav_box {position: absolute; right: 0; top: 0;}
.popup_box .nav_box button {margin: 0 5px;}
.popup_box .nav_box .prev {width: 7px; height: 11px; background: url('/images/main/popup_prev.png') no-repeat 0 0;}
.popup_box .nav_box .next {width: 7px; height: 11px; background: url('/images/main/popup_next.png') no-repeat 0 0;}
.popup_box .nav_box .stop {width: 6px; height: 12px; background: url('/images/main/popup_stop.png') no-repeat 0 0;}
.popup_box .nav_box .play {display: none; width: 6px; height: 12px; background: url('/images/main/popup_play.png') no-repeat 0 0;}
.popup_box .total_box {position: absolute; right: 70px; top: 0;}
.popup_box .total_box span {color: #6d7275;}
.popup_box .total_box .now {color: #ea1401;}





/* 팝업 */
.pop_wrap {z-index: 9999; position: absolute; top: 0; left: 0;}



.heart_ico {display: inline-block; width: 17px; height: 17px; background: url('/images/sub/interest_ico.png') no-repeat; margin-left:0px; vertical-align: middle; margin-top:-2px;}
.heart_ico.on {background-image: url('/images/sub/interest_ico_on.png');}

/* sub_qck_wrap */
.sub_qck_wrap {position: relative; background: #003aac; z-index:21;}
.sub_qck_wrap:before {content:""; display: block; position: absolute; top: 0; left: -300%; width: 300%; height: 100%; background: #003aac;}
.sub_qck_wrap:after {content:""; display: block; position: absolute; top: 0; right: -300%; width: 300%; height: 100%; background: #003aac;}

.sub_qck_wrap .sub_qck_ul > li {float: left; text-align: center; z-index:990;}
.sub_qck_wrap .sub_qck_ul > li:first-child{width: 5% !important; text-align: left;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(2){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(3){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(4){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(5){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(6){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:nth-child(7){width: 13.33333333333333% !important; text-align: center;}
.sub_qck_wrap .sub_qck_ul > li:last-child{width: 5% !important; text-align: right;}
.sub_qck_wrap .sub_qck_ul > li > a{position: relative; display: inline-block; font-size: 22px; color: #05367b; height: 50px; overflow:hidden; line-height: 50px;}
.sub_qck_wrap .sub_qck_ul > li > a:after {display: block; content:""; position: absolute; display: block; bottom: -3px; left: 0; width: 100%; height: 2px; background: #fff; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.sub_qck_wrap .sub_qck_ul > li > a:hover:after {bottom: 10px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}
.sub_qck_wrap .sub_qck_ul > li > .sub_1{width:13.33333333333333% !important; display:none; background-color:#cce3ff; z-index:9999; position:absolute; left:0px !important; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_1 > li{margin:10px 10px;}
.sub_qck_wrap .sub_qck_ul > li > .sub_2{width:13.33333333333333%; display:none; background-color:#cce3ff; z-index:9999; position:absolute; left:220px; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_2 > li{margin:10px 10px;}
.sub_qck_wrap .sub_qck_ul > li > .sub_3{width:13.33333333333333%; display:none; background-color:#cce3ff; z-index:9999; position:absolute; right:520px; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_3 > li{margin:10px 10px;}
.sub_qck_wrap .sub_qck_ul > li > .sub_4{width:13.33333333333333%; display:none; background-color:#cce3ff; z-index:9999; position:absolute; right:220px; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_4 > li{margin:10px 10px;}
.sub_qck_wrap .sub_qck_ul > li > .sub_5{width:13.33333333333333%; display:none; background-color:#cce3ff; z-index:9999; position:absolute; right:0px; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_5 > li{margin:10px 10px;}
.sub_qck_wrap .sub_qck_ul > li > .sub_6{width:13.33333333333333%; display:none; background-color:#cce3ff; z-index:9999; position:absolute; right:0px; padding:10px; text-align:left; !important;}
.sub_qck_wrap .sub_qck_ul > li > .sub_6 > li{margin:10px 10px;}
/* sub_top */
.sub_top {padding:50px 0 10px; margin-bottom:50px; border-bottom:1px solid #ccc;}
.sub_top_tit {margin-bottom:30px; font-size:2.2em; font-weight:500; text-align:center;}
