@charset "UTF-8";

/* 1. Thin (Th) - 굵기 100 또는 300 */
@font-face {
  font-family: 'line_seed';
  src: url('../fonts/line_seed/LINESeedKR-Th.woff2') format('woff2'),
    url('../fonts/line_seed/LINESeedKR-Th.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
/* 2. Regular (Rg) - 굵기 400 */
@font-face {
  font-family: 'line_seed';
  src: url('../fonts/line_seed/LINESeedKR-Rg.woff2') format('woff2'),
    url('../fonts/line_seed/LINESeedKR-Rg.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* 3. Bold (Bd) - 굵기 700 */
@font-face {
  font-family: 'line_seed';
  src: url('../fonts/line_seed/LINESeedKR-Bd.woff2') format('woff2'),
    url('../fonts/line_seed/LINESeedKR-Bd.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --yellow1: #FFE68B;
  --yellow69: #FCCA69;
  --blue: #387AFC;
  --blue8per: #eff5ff;
  --graySe: #F3F6FA;
  --grayDsb: #ABADB1;
  --grayTxt: #67696D;
  --grayBg1: #F2F3F7;
  --grayBg2: #FAFAFC;
  --line1: #E0E3E8;

  --bluef1: #1786F1;
  --blued1: #0161D1;
  --blue976: #043976;
  --blue6ff: #0076FF;
  --blackc60: #585C60;
  --black122: #202122;
  --blackb55: #434B55;
  --gray69: #5E6469;
  --gray895: #7D8895;
  --graydb6: #A1ADB6;
  --gray85f: #52585F;
  --gray894: #758894;
  --gray76: #6A6F76;
  --graye4: #C4D3E4;
  --redb57: #EC5B57;
  --red3a: #F03E3A;
  --btn189: #7B8189;
  --borderf1: #E1E9F1;
  --pgn97: #899097;
  --yellow2d: #FDCC2D;
}
html {
  min-width: 1280px;
  overflow-x: unset;
}
body {
  overflow-x: unset;
}
/* ************공통header************ */
.loading_overlay {
  position: absolute;
  top: 175px;
  left: 0;
  width: 100%;
  height: 380px;
  background-color: #fff;
  z-index: 1000;
  display: none;
}
#header {
  height: 80px;
  box-sizing: border-box;
  border-bottom: 1px solid #E5E8EB;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 1000;
}
#header.is_sticky {
  box-shadow: 0 3px 10px 0 rgba(16, 40, 88, 0.06);
}
#header .area {
  max-width: 1400px;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  box-sizing: border-box;
}
#header .hd_logo a {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: 0;
  color: #000;
}
#header .hd_logo a img {
  width: 40px;
  height: auto;
  object-fit: cover;
}
.logo_box {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0;
  color: #00336e !important;
}
.logo_box>img {
  height: auto;
  object-fit: cover;
}
.logo_box .logo_txt {
  line-height: 1;
  padding-top: 3px;
}
.logo_box .logo_bt {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 1px;
  padding-left: 3px;
}
.logo_box .logo_txt strong {
  font-weight: 700;
  color: #000;
  font-family: 'line_seed', sans-serif;
}
.logo_box .logo_txt .logo_bt strong {
  letter-spacing: -1.4px;
  font-size: 17px;
}
.logo_box .logo_bt span {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
  color: #000;
  text-align: left;
}
.logo_box .logo_bt em {
  font-size: 7.2px;
  font-weight: 400;
  font-style: normal;
  color: #000005;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.newSearchLogo .logo_bt {
  margin-top: 0;
}
.hd_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;
}
#header #gnb ul {
  display: flex;
}
#gnb li {
  padding: 9px 16px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
#header #gnb .enrolmenu {
  position: relative;
}
#header #gnb .enrolmenu .badge_dot {
  border-radius: 50px;
  background: #EDF4FF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  color: #0B57D0;
  height: 30px;
  padding: 0 12px;
}
#header #gnb .enrolmenu .b_dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #0B57D0;
  position: relative;
  flex: none;
}
#header #gnb .enrolmenu .b_dot:after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #0B57D0;
  opacity: .55;
  animation: badgeDot 1.8s ease-out infinite;
}

@keyframes badgeDot {
  0% {
    transform: scale(1);
    opacity: .55;
  }

  70%,
  100% {
    transform: scale(2.6);
    opacity: 0;
  }
}

#header #gnb li a {
  font-size: 18px;
  font-weight: 700;
  color: #191F28;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 8px;
}
.hd_sch {
  display: flex;
  position: relative;
}
#header .sch_btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14.5px;
  box-sizing: border-box;
  outline: none;
  color: #4E5968;
  font-size: 16px;
  font-weight: 600;
  margin-right: 4px;
}
/* 검색창 열림 상태: 검색 버튼 → 닫기 버튼 */
#header .sch_btn .sch_x,
#header .sch_btn .sch_txt_close {
  display: none;
}
#header.search_open .sch_btn {
  justify-content: center;
  gap: 8px;
  min-width: 90px;
  height: 48px;
  margin-right: 12px;
  padding: 0 18px;
  border: 1px solid #DAE7FF;
  border-radius: 24px;
  background: #EDF4FF;
  font-size: 16px;
  font-weight: 700;
  color: #0B57D0;
  cursor: pointer;
}
#header.search_open .sch_btn .ico_sch,
#header.search_open .sch_btn .sch_txt {
  display: none;
}
#header.search_open .sch_btn .sch_x {
  display: block;
  flex: none;
}
#header.search_open .sch_btn .sch_txt_close {
  display: inline;
}
.smallFlex {
  display: flex;
}
.short {
  width: 331px;
}
.short img {
  width: 100%;
}
.util {
  display: flex;
  align-items: center;
  gap: 12px;
}

.util a {
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  font-size: 15px;
}
.util [class^="btn_"] {
  color: #222;
  height: 48px;
  padding: 0 24px;
  font-weight: 700;
  font-size: 16px;
  border-radius: 10px;
  background: #ecedf0;
  gap: 8px;
}
.util .btn_navy {
  background: #0D2348;
  color: #fff;
}
.util .btn_navy.class {
  padding: 0 16px;
}
.btn_mypage {
  width: 29px;
  height: 29px;
  display: flex;
  background: url(../img/ver2412/ico_mypagae.svg) no-repeat center / 100%;
}

/* util 드롭다운 */
.util .account_wrap {
  position: relative;
}
.util .account_toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #f2f4f6;
  border: 0;
  border-radius: 999px;
  padding: 6px 14px 6px 6px;
  cursor: pointer;
  font-family: inherit;
  line-height: 1;
}
.util .account_toggle .account_avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #1a6dff;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
}
.util .account_toggle .account_name {
  color: #191f28;
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
}
.util .account_toggle .account_arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .2s ease;
}
.util .account_toggle .account_arrow svg {
  display: block;
}
.util .account_wrap.active .account_toggle .account_arrow {
  transform: rotate(180deg);
}
.util .account_dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 110px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
  padding: 6px;
  z-index: 50;
}
.util .account_wrap.active .account_dropdown {
  display: block;
}
.util .account_dropdown a {
  display: block;
  padding: 8px 12px;
  font-size: 16px;
  font-weight: 600;
  color: #191f28;
  border-radius: 8px;
  text-align: center;
}
.util .account_dropdown a:hover {
  background: #f2f4f6;
}

#gnb {
  display: flex;
  position: relative;
  align-items: center;
  gap: 6px;
  gap: 12px;
}
#gnb .btn_ham {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
  color: #4E5968;
  display: flex;
  gap: 8px;
  align-items: center;
  border-radius: 50px;
  border: 1px solid #EEF2F7;
  background: #F2F4F6;
  letter-spacing: -.15px;
  box-sizing: border-box;
  padding: 0 17px;
  height: 44px;
}
.allCategory {
  display: none;
  position: absolute;
  top: 118px;
  left: 0;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 7px 10px 1px rgba(0, 0, 0, .1);
  z-index: 5555;
}
.allCategory .list_menu {
  display: flex;
  justify-content: center;
}
.allCategory .list_menu>li {
  min-width: 180px;
  border-left: 1px solid #ebebeb;
  padding: 20px;
  box-sizing: border-box;
}
.allCategory .list_menu>li:last-child {
  border-right: 1px solid #ebebeb;
}
.allCategory .list_menu>li .link_menu {
  display: inline-block;
  font-size: 15px;
  line-height: 17px;
  color: #444;
  padding: 7px 0;
  letter-spacing: -1px;
  position: relative;
  transition: all 0.3s;
}
.allCategory .list_menu>li .link_menu::after {
  content: '';
  position: absolute;
  width: 0;
  height: 1px;
  left: 0;
  bottom: 5px;
  background: #223cb5;
  transform-origin: left;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.allCategory .list_menu>li .link_menu:hover {
  color: #223cb5;
}
.allCategory .list_menu>li .link_menu:hover::after {
  width: 100%;
  left: 0;
}
.allCategory .list_menu li .title2 {
  display: block;
  font-size: 16px;
  line-height: 16px;
  font-weight: 800;
  color: #222;
  padding: 16px 0;
  letter-spacing: -1px;
}


/* ************mainSearchBg (헤더 검색창 · .active 열림 상태)*********** */
.mainSearchBg {
  position: fixed;
  top: 80px; /* 열릴 때 JS가 헤더 하단 좌표로 다시 지정 */
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000001;
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility 0s linear .18s;

  display: flex;
  flex-direction: column;
  min-width: 1280px;
}
.mainSearchBg.active {
  opacity: 1;
  visibility: visible;
  transition: opacity .18s ease, visibility 0s;
}
.mainSearch {
  /* position: relative;
  width: 100%;
  padding: 36px 0 56px;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 0 12px 34px 0 rgba(16, 40, 88, 0.10);
  border-bottom: 1px solid #E5E8EB; */
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  min-height: 0;
  max-height: 100%;
  padding: 36px var(--sbw, 0px) 0 0; /* 기존 padding: 36px 0 56px; 대체 */
  padding-bottom: 20px;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 0 12px 34px 0 rgba(16, 40, 88, 0.10);
  border-bottom: 1px solid #E5E8EB;
}
.mainSearch .searchInner {
  /* width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
  box-sizing: border-box; */
  display: flex;
  flex-direction: column;
  min-height: 0;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
  box-sizing: border-box;
}

/* 검색 입력창 */
.mainSearch .searchWraper {
  position: relative;
  width: 100%;
  height: 72px;
  margin: 0;
}
.mainSearch .searchField {
  display: flex;
  min-width: 0;
  align-items: center;
  width: 100%;
  height: 72px;
  margin: 0;
  padding: 0 12px 0 28px;
  border: 2px solid #1A6DFF;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 20px 0 rgba(26, 109, 255, 0.10);
  box-sizing: border-box;
}
.mainSearch .searchField .ico_search {
  display: block;
  flex: none;
  width: 24px;
  height: 24px;
  margin: 0 18px 0 -2px;
}
.mainSearch .searchField .typeahead {
  flex: 1;
  min-width: 0;
  width: auto;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -.03em;
  color: #191F28;
  caret-color: #1A6DFF;
  outline: none;
}
.mainSearch .searchField .typeahead::placeholder {
  color: #8B95A1;
  font-weight: 500;
  opacity: 1;
}
.mainSearch .searchField .typeahead::-ms-clear,
.mainSearch .searchField .typeahead::-ms-reveal {
  display: none;
}
.mainSearch .searchField .typeahead::-webkit-search-decoration,
.mainSearch .searchField .typeahead::-webkit-search-cancel-button,
.mainSearch .searchField .typeahead::-webkit-search-results-button,
.mainSearch .searchField .typeahead::-webkit-search-results-decoration {
  display: none;
}
.mainSearch .searchField .btnClear {
  display: none;
  flex: none;
  width: 22px;
  height: 22px;
  margin-right: 12px;
  padding: 0;
  border: 0;
  background: url(../img/circleClose.png) no-repeat center / 100% auto;
  cursor: pointer;
}
.mainSearch .searchField.has_val .btnClear {
  display: block;
}
.mainSearch .searchField .btnSubmit {
  flex: none;
  width: 90px;
  height: 50px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #1A6DFF;
  font-size: 17px;
  font-weight: 700;
  color: #fff;
  cursor: pointer;
  transition: background .15s;
}
.mainSearch .searchField .btnSubmit:hover {
  background: #0F5CE6;
}

/* 본문 : 최근 검색어 / 인기 검색어 / 분야로 찾기 */
/* .mainSearch .searchBody {
  display: block;
  width: 100%;
  max-height: calc(100vh - 80px - 36px - 72px - 40px - 56px);
  margin-top: 43px;
  padding: 0;
  border: 0;
  overflow-y: auto;
  text-align: left;
}
.mainSearch .searchBody::-webkit-scrollbar {
  display: none;
} */
 .mainSearch .searchTop {
  flex: none;
}

.mainSearch .searchBody {
  display: block;
  flex: 0 1 auto;
  width: 100%;
  min-height: 0;
  margin-top: 43px;
  padding: 0 0 36px;
  border: 0;
  overflow-x: hidden;
  overflow-y: auto; /* 내용이 넘칠 때만 스크롤바 표시 */
  overscroll-behavior: contain;
  text-align: left;
}

/* 검색창 내부 스크롤바 */
.mainSearch .searchBody::-webkit-scrollbar {
  width: 8px;
}
.mainSearch .searchBody::-webkit-scrollbar-track {
  background: transparent;
}
.mainSearch .searchBody::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: #C5CCD6;
}
.mainSearch .searchBody::-webkit-scrollbar-thumb:hover {
  background: #8B95A1;
}

/* Firefox 대응 */
@supports not selector(::-webkit-scrollbar) {
  .mainSearch .searchBody {
    scrollbar-width: thin;
    scrollbar-color: #C5CCD6 transparent;
  }
}

/* 검색창이 열렸을 때 바깥 스크롤 잠금 (body에 걸면 sticky 헤더 위치가 틀어질 수 있음) */
html.search_lock {
  overflow-y: hidden !important;
}
/* ----------------------//end */
.mainSearch .popularSearch.newPopularSearch {
  display: grid;
  grid-template-columns: 392fr 488fr 392fr;
  column-gap: 64px;
  align-items: start;
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
}
.mainSearch .srchCol {
  min-width: 0;
  flex: 1;
}
.mainSearch .srchRecent, .mainSearch .srchPopular {
  flex: .9;
}
.mainSearch .srchTit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 26px;
  margin-bottom: 19px;
}
.mainSearch .srchTit h3 {
  position: relative;
  top: 1px;
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.22;
  letter-spacing: -.5px;
  color: #191F28;
}
.mainSearch .srchTit .ico_trend {
  display: block;
  flex: none;
  width: 20px;
  height: 20px;
}
.mainSearch .srchTit .btnClearAll,
.mainSearch .srchTit .srchTime {
  position: relative;
  top: 1px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 14px;
  font-weight: 400;
}
.mainSearch .srchTit .btnClearAll {
  font-size: 15px;
  letter-spacing: -.2px;
}
.mainSearch .srchTit .btnClearAll {
  color: #6B7684;
  cursor: pointer;
}
.mainSearch .srchTit .btnClearAll:hover {
  color: #191F28;
  text-decoration: underline;
}
.mainSearch .srchTit .srchTime {
  color: #8B95A1;
}

/* 최근 검색어 */
.mainSearch .recentList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 1px 0 0;
  list-style: none;
}
.mainSearch .recentList li {
  display: inline-flex;
  align-items: center;
  height: 40px;
  padding: 0 12px 0 16px;
  border-radius: 20px;
  background: #F4F6F9;
}
.mainSearch .recentList li a {
  font-size: 15px;
  font-weight: 600;
  line-height: 40px;
  color: #4E5968;
  cursor: pointer;
}
.mainSearch .recentList li a:hover {
  color: #1A6DFF;
}
.mainSearch .recentList li .btnDel {
  width: 16px;
  height: 16px;
  margin-left: 10px;
  padding: 0;
  border: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath d='M1 1l6 6M7 1L1 7' stroke='%238B95A1' stroke-width='1.3' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center;
  cursor: pointer;
}
.mainSearch .recentEmpty {
  margin: 0;
  padding-top: 6px;
  font-size: 15px;
  line-height: 24px;
  letter-spacing: -.3px;
  color: #8B95A1;
}

/* 인기 검색어 */
.mainSearch .popular-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 32px;
  width: 100%;
  margin-top: -7px;
}
.mainSearch .popular-list ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}
.mainSearch .popular-list ul li {
  margin: 0;
  text-align: left;
}
.mainSearch .popular-list ul li a {
  display: flex;
  align-items: center;
  height: 33px;
  font-size: 15px;
  line-height: 1.2;
}
.mainSearch .popular-list .num {
  display: block;
  flex: none;
  width: 32px;
  height: auto;
  margin: 0;
  border-radius: 0;
  background: none;
  font-size: 16px;
  font-weight: 800;
  text-align: left;
  color: #8B95A1;
}
.mainSearch .popular-list .left li:nth-child(-n+3) .num {
  background: none;
  color: #1A6DFF;
}
.mainSearch .popular-list .text {
  min-width: 0;
  overflow: hidden;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.18;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #191F28;
}
.mainSearch .popular-list ul li a:hover .text {
  color: #1A6DFF;
  text-decoration: underline;
}

/* 분야로 찾기 */
.mainSearch .fieldList {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mainSearch .fieldList li a {
  display: flex;
  align-items: center;
  height: 54px;
  padding: 0 14px;
  border-radius: 12px;
  background: #F4F6F9;
  box-sizing: border-box;
  transition: box-shadow .15s;
}
.mainSearch .fieldList li a:hover {
  box-shadow: inset 0 0 0 1px #BFD6FF;
}
.mainSearch .fieldList .ico {
  display: block;
  flex: none;
  width: 34px;
  height: 34px;
  margin-right: 8px;
}
.mainSearch .fieldList .name {
  flex: 1;
  min-width: 0;
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
  color: #191F28;
}
.mainSearch .fieldList .cnt {
  flex: none;
  margin-left: 6px;
  font-size: 14px;
  font-weight: 500;
  color: #6B7684;
}

/* 검색 결과 (입력 시 .newSearch 에 JS로 출력) */
.mainSearch .newSearch {
  display: none;
  width: 100%;
  height: auto;
}
.mainSearch .newSearch .group {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0 24px;
  margin: 0;
  padding: 22px 0;
  border-top: 1px solid #EEF1F5;
}
.mainSearch .newSearch .group:first-child {
  padding-top: 0;
  border-top: 0;
}
.mainSearch .newSearch .group h3 {
  flex: none;
  width: 130px;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  color: #191F28;
}
.mainSearch .newSearch .group ul {
  display: grid;
  flex: 1;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px 24px;
  width: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mainSearch .newSearch .group ul li {
  display: block;
  width: auto;
  font-size: 15px;
  line-height: 24px;
}
.mainSearch .newSearch .group ul li a {
  font-weight: 500;
  letter-spacing: -.3px;
  color: #333D4B;
}
.mainSearch .newSearch .group ul li a:hover {
  color: #1A6DFF;
  text-decoration: underline;
}

@media screen and (max-width: 1367px) {
  .mainSearch .searchInner {
    max-width: 1200px;
  }
  .mainSearch .popularSearch.newPopularSearch {
    /* grid-template-columns: 280px minmax(0, 1fr) 372px;
    column-gap: 40px; */
  }
}

/* typeahead (현재 미사용 · 필요 시 삭제 가능) */
.tt-hint {
  color: #999
}
.tt-menu {
  width: 598px;
  margin: 0px auto;
  padding: 10px 0px;
  background: #FFF;
  border: 2px solid #5695FF;
  box-shadow: 0px 4px 14px rgba(169, 180, 221, 0.25);
  border-radius: 7px;
  transform: translateY(8px);
  position: relative;
  z-index: 10000;
  max-height: 400px;
  overflow-y: scroll;
}
input:focus {
  outline: none;
}
.tt-highlight {
  color: #2E68FF;
  font-weight: normal;
}
.tt-suggestion {
  padding: 0px 51px;
  line-height: 48px;
  font-weight: 400;
  font-size: 16px;
  color: #333;
  background: url('../img/search_light_blue.png') left 23px top 14px no-repeat;
  background-size: 24px 24px;
}
.tt-suggestion:hover {
  cursor: pointer;
  color: #333;
  background-color: #F3F6FB;
}
.tt-suggestion.tt-cursor {
  color: #333;
  background-color: #F3F6FB;
}
.tt-suggestion p {
  margin: 0;
}

.highlight {
  background-color: yellow;
  font-weight: bold;
}



/* ************footer************ */
.footerFlex{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
}
#footer .logo_box {
  font-size: 22px;
  gap: 9px;
}
#footer .ft_logo a {
  display: block;
}
#footer .ft_logo img {
  display: block;
  width: 62px;
}
#footer .ft_logo p{
  font-size: 20px;
  color: #00336e;
  letter-spacing: -.6px;
  font-weight: 600;
}
#footer .logo_box .logo_txt .logo_bt strong {
  font-size: 12px;
}
#footer .logo_box .logo_txt strong {
  font-weight: 700;
  font-size: 32px;
  color: #000;
  line-height: 1.1;
}
#footer .down_btn {
  width: 20px;
  height: 20px;
}
#footer .down_btn img {
  width: 100%;
  height: auto;
  transition: 0.5s;
}
#footer .active .down_btn img {
  transform: rotate(180deg);
}
#footer .ft_util {
  display: none;
  margin-top: 12px;
}
#footer .ft_util ul {
  display: flex;
  justify-content: center;
}
#footer .ft_util li {
  padding-left: 9px;
  margin-left: 8px;
  background-image: url("../img/ft_bar.png");
  background-repeat: no-repeat;
  background-position: left center;
}
#footer .ft_util li:first-child {
  padding-left: 0;
  margin-left: 0;
  background-image: none;
}
#footer .ft_util li a {
  font-size: 13px;
  font-weight: 700;
  color: #ABADB1;
}
#footer .ft_info {
  display: none;
  margin-top: 16px;
}

.sns_box {
  background: #f5f5f5;
  border-top: 1px solid #ddd;
  box-sizing: border-box;
}

.sns_box_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 430px;
  width: 100%;
  margin: 0 auto;
  padding: 15px;
  box-sizing: border-box;
}

.sns_box a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: min(3.26vw, 14px);
  font-weight: 600;
  color: #191C1F;
  box-sizing: border-box;
  width: 144px;
}

.sns_box a:first-child {
  margin-right: 18px;
  width: auto;
}

.sns_box a img {
  width: min(5.58vw, 24px);
  aspect-ratio: 1;
  margin-right: 7px;
}

.sns_box a+a {
  margin-left: -12px;
}

.sns_box a+a:before {
  content: "";
  width: 1px;
  height: 17px;
  background: #ddd;
  margin-right: 20px;
  box-sizing: border-box;
}

@media screen and (max-width: 1401px) {
  #header .hd_logo a img {
    width: 36px;
  }
  #header #gnb li a {
    font-size: 17px;
  }
  #gnb li {
    padding: 9px 12px;
  }
  #header.search_open .sch_btn {
    gap: 7px;
    padding: 0 12px;
    min-width: 40px;
    font-size: 14px;
  }
  #header.search_open .sch_btn .sch_x {
    width: 12px;
  }
  #header.search_open .sch_btn .sch_txt_close {
    white-space: nowrap;
  }
  #gnb .btn_ham {
    font-size: 0;
    gap: 0;
    padding: 0 10px;
    border-radius: 10px;
  }
  .util [class^="btn_"] {
    padding: 0 12px;
    font-size: 14px;
  }
  #header .sch_btn {
    gap: 3px;
    padding: 14px;
    font-size: 17px;
  }
}

@media screen and (max-width:1367px) {
  #header .area {
    max-width: 1200px;
  }
  .hd_sch:after {
    background-size: 88%;
    left: 95%;
  }
}


/* 서브페이지 타이틀영역 */
.page_tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  position: relative;
}
.page_tit:after {
  content: "";
  height: 2px;
  background: rgba(23, 134, 241, .3);
  flex-grow: 1;
}
.page_tit .title2 {
  color: #1786F1;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0;
}

.location_box {
  position: absolute;
  right: 23px;
  background: #fff;
  z-index: 1;
  padding: 0 20px;
}
.location_box ul {
  display: flex;
  align-items: center;
}
.location_box .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25px;
  height: 25px;
  margin-bottom: 2px;
  user-select: none;
}
.location_box .home a, .location_box li p {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--gray894);
  letter-spacing: 0;
  display: flex;
  align-items: center;
}
.location_box .home img {
  margin-right: 7px;
  width: 19px;
  height: 19px;
}
.location_box li:last-child p {
  color: var(--bluef1) !important;
}

/* new footer */
#footer {
  background: #fafbfc;
  border-top: 1px solid var(--line1);
  color: var(--blackb55);
}
#footer .area {
  max-width: 1440px;
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.footer_inner {
  width: 100%;
  padding-top: 64px;
}
#footer h3 {
  font-size: 16px;
  font-weight: 700;
  color: #191F28;
  margin-bottom: 17px;
  line-height: 1;
}
#footer .ft_left {
  flex: 0 0 300px;
}
.ft_logo_area {
  flex-basis: 500px;
}
#footer .ft_logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  text-decoration: none;
}
#footer .ft_logo .logo_txt {
  display: flex;
  flex-direction: column;
}
#footer .ft_logo .logo_txt em {
  font-size: 10px;
  font-weight: 400;
  font-style: normal;
  color: #666;
  text-transform: uppercase;
  letter-spacing: .6px;
}
.ft_info_area {
  margin-top: 32px;
}
.ft_info_area p {
  font-size: 15px;
  line-height: 2;
  color: #6B7684;
  font-weight: 500;
}
.ft_info_area span {
  color: #E5E8EB;
}
.ft_right {
  display: flex;
  gap: 70px;
}
.ft_menu_group li + li {
  margin-top: 10px;
}
#footer .ft_center {
  flex: 1;
  display: flex;
  justify-content: center;
  gap: 50px;
  padding: 0 20px;
}
.ft_menu_area {
  display: flex;
  gap: 60px;
}
.ft_menu_group a {
  font-size: 15px;
  display: block;
  color: #4E5968;
  font-weight: 500;
}
.ft_cs_area {
  font-size: 15px;
  color: #4E5968;
  font-weight: 500;
  line-height: 1.9;
}
#footer .ft_cs_area h3 {
  margin-bottom: 10px;
}
.ft_cs_area .cs_phone {
  color: #1A6DFF;
  font-weight: 800;
  font-size: 23.8px;
  line-height: 1;
  margin-bottom: 8px;
  letter-spacing: -.48px;
}
#footer .sns_box {
  background-color: var(--grayBg2);
  border-top: 1px solid var(--line1);
}
#footer .sns_box_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#footer .ft_bottom_left {
  display: flex;
  align-items: center;
  gap: 30px;
}
#footer .ft_links {
  display: flex;
  gap: 15px;
  align-items: center;
}
.ft_util_links {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  font-size: 15px;
  font-weight: 700;
  color: #4E5968;
}
#footer .ft_links a,
#footer .ft_links span {
  font-size: 13px;
  color: var(--grayTxt);
  text-decoration: none;
}
#footer .ft_links a.bold {
  font-weight: 700;
  color: #000;
}
.ft_content_top {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
#footer .copyright {
  margin-top: 14px;
  font-weight: 400;
}
.ft_banner {
  border-top: 1px solid #F1F3F5;
  padding: 26px 0;
  box-sizing: border-box;
  margin-top: 36px;
  background: #FAFBFC;
}
.ft_banner_box {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #4E5968;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}
.ft_bottom {
  margin-top: 32px;
}
.ft_bottom .bold {
  font-weight: 800 !important;
}
#footer .ft_bottom .area {
  padding: 0;
}
#footer .ft_socials {
  display: flex;
  gap: 10px;
  align-items: center;
}
#footer .ft_socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: var(--graydb6);
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  transition: background-color 0.2s;
}
#footer .ft_socials a:hover {
  background-color: var(--gray69);
}
#footer .ft_socials a.btn_blog {
  font-size: 11px;
  font-weight: 700;
  font-family: Arial, sans-serif;
}
.sns_blog {
  border-radius: 50%;
  background: #F2F4F6;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  aspect-ratio: 1;
  font-weight: 800;
  font-size: 15px;
  color: #4E5968 !important;
  letter-spacing: -.3px;
}


/* @media screen and (max-width:1240px) {
  .mainSearch .popularSearch.newPopularSearch {
    gap: 30px;
    grid-template-columns: 1fr 1.4fr 1fr;
  }
  .mainSearch .fieldList .cnt {
    display: none;
  }
} */