@charset "utf-8";
/* CSS Document */
/* 기본폰트 : Spoqa Han Sans (고딕)
font-family: 'Noto Sans KR', sans-serif;
굵기 : 300-light,400-normal,700-bold
폰트는 서버 세팅 완료 후 서버 내에서 사용하도록 세팅예정
*/
/*
이 css는 리셋, 폰트, 기본 태그만 다룹니다.
*/
/* reset - global defaults */
/* 베트남어 표현 이슈로 noto sans 추가 */
* {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: none;
  word-break: keep-all;
  box-sizing: border-box;
}
*,
:after,
:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  position: relative;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  word-break: keep-all;
  scroll-behavior: auto;
}
/* html, body 기본 흰배경의 사이트일때 */
html,
body {
  width: 100%;
  min-height: 100%;
  background-color: #fff;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  word-break: keep-all;
  scroll-behavior: auto;
  font-family: Pretendard, sans-serif;
  font-size: 16px;
  color: #1D1F25;
  font-weight: 400;
}
a, button {
  font-family: 'Pretendard';
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="submit"],
input[type="password"],
input[type="image"],
input[type="button"],
textarea {
  -webkit-border-radius: 0;
  -webkit-appearance: none;
}
button,
input,
input[type="radio"],
input[type="checkbox"],
select,
textarea {
  vertical-align: middle;
  border: none;
  border-radius: 0;
  -webkit-border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
img,
video,
audio,
object,
embed,
iframe {
  max-width: 100%;
}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
blockquote,
table,
th,
td,
legend,
button,
code,
p,
select {
  margin: 0;
  padding: 0;
}
fieldset,
img,
abbr,
acronym {
  border: 0 none;
}
fieldset {
  display: block;
}
label {
  vertical-align: middle;
}
textarea {
  width: 100%;
  border: 0;
  overflow-y: auto;
  resize: none;
}
ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
  list-style: none outside;
}
li {
  text-decoration: none;
}
h1,
h2,
h3,
h4,
h5,
h6,
address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-size: 100%;
  font-weight: bold;
}
hr,
legend,
caption,
hr {
  visibility: hidden;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  text-indent: -1000em;
}
/* 추가 리셋 */
a,
a:focus,
a:hover {
  text-decoration: none;
  outline: 0;
  color:inherit;
}

a[href^="tel:"] {
  cursor: text;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
  margin: 0;
  padding: 0;
}
figure {
  margin: 0;
}
button {
  border: 0 none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  color:#1d1f25;
}
button:active,
button:focus {
  border: none;
  outline: none;
}
img {
  max-width: 100%;
  vertical-align: middle;
  display: inline-block;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  -ms-interpolation-mode: nearest-neighbor;
  /* z축을 0으로 초기화, 입체감 삭제 */
  transform: translateZ(0);
  /* 뒷면 숨기기, 입체감 삭제 */
  backface-visibility: hidden;
}
table {
  width: 100%;
  vertical-align: middle;
  border-collapse: collapse;
}
input::-ms-clear {
  display: none;
}
section {
  position: relative;
}
.text-center {
  text-align: center;
}

/* IE10 이상을 위한 css */
input::placeholder,
textarea::placeholder {
  color: #b6b6b6;
  opacity: 1;
} /* 파이어폭스에서 뿌옇게 나오는 현상을 방지하기 위한 css */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #b6b6b6;
}
/* IE */
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #b6b6b6;
}
/* Firefox */
input:-mos-input-placeholder {
  color: #b6b6b6;
}
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: transparent;
} /* WebKit browsers */
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: transparent;
}
/* Mozilla Firefox 4 to 18 */
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: transparent;
}
/* Mozilla Firefox 19+ */
input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: transparent;
} /* Internet Explorer 10+ */
/* IE9 이하를 위한 css */
.placeholder {
  color: #ddd;
}

.radio_chk {
  font-size: 18px;
  padding: 0.2em 0.4em;
}

.radio_chk [type="radio"], span {
  vertical-align: middle;
}

.radio_chk [type="radio"] {
  appearance: none;
  border: 1px solid rgba(29, 31, 37, 0.20);
  border-radius: 50%;
  width: 24px;
  height: 24px;
}

.radio_chk [type="radio"]:checked {
  background-image: url(../img/icn/btn_radio_on.png);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

.radio_chk [type="radio"]:hover + span {
  cursor: pointer;
}

.radio_chk [type="radio"]:disabled {
  background-color: lightgray;
  box-shadow: none;
  opacity: 0.7;
  cursor: not-allowed;
}

.radio_chk [type="radio"]:disabled + span {
  opacity: 0.7;
  cursor: not-allowed;
}

/* ios pinch-zoom */
body {
  touch-action: pan-x pan-y;
}
body.pinch-zoom {
  touch-action: auto;
}
/* 웹접근성을 위한 글자 숨김 css */
.blind,
legend,
caption {
  position: absolute;
  z-index: -10;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  font-size: medium;
  line-height: normal;
  word-break: break-all;
}

/* font */
/* 기본폰트 : LG폰트로 세팅 */
/* font-family : "Spoqa"; */
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  src: local("Pretendard-Bold"), local("Pretendard-Bold"),
    url("./fonts/Pretendard-Bold.woff2") format("woff2"),
    url("./fonts/Pretendard-Bold.woff") format("woff"),
}

@font-face {
  font-family: "Pretendard";
  font-weight: 500;
  src: local("Pretendard Regular"), local("Pretendard-Medium"),
    url("./fonts/Pretendard-Medium.woff2") format("woff2"),
    url("./fonts/Pretendard-Medium.woff") format("woff"),
}

@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  src: local("Pretendard-Regular"), local("Pretendard-Regular"),
    url("./fonts/Pretendard-Regular.woff2") format("woff2"),
    url("./fonts/Pretendard-Regular.woff") format("woff"),
}

@font-face {
  font-family: 'Gmarket';
  font-weight: 700;
  src: local("GmarketSansBold"), local("GmarketSansBold"),
    url("./fonts/GmarketSansBold.woff2") format("woff2"),
    url("./fonts/GmarketSansBold.woff") format("woff"),
} 
@font-face {
  font-family: 'Gmarket';
  font-weight: 400;
  src: local("GmarketSansLight"), local("GmarketSansLight"),
    url("./fonts/GmarketSansLight.woff2") format("woff2"),
    url("./fonts/GmarketSansLight.woff") format("woff"),
} 


.inner_1440 {
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
}

.inner_1920 {
  max-width: 1920px;
  margin: 0 auto;
  width: 100%;
}

.util_more {
  padding-right: 40px;
  position: relative;
}
.util_more::after {
  content: "";
  background-image: url(../img/icn/icn_arrow_go.png);
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: 0.3s;
}
.util_more:hover::after {
  right: -10px;
}

.icon {
  width: 16px;
  height: 16px;
  display: inline-block;
  background-position: center;
  background-size: 100%;
  vertical-align: middle;
}
.icon.icn48 {
  width: 48px;
  height: 48px;
}
.icon.icn24 {
  width: 24px;
  height: 24px;
}
.icon.icn40 {
  width: 40px;
  height: 40px;
}
.icn_call {
  background-image: url(../img/icn/icn_call.png);
}
.icn_fax {
  background-image: url(../img/icn/icn_fax.png);
}
.icn_mail {
  background-image: url(../img/icn/icn_mail.png);
}
.icn_pin {
  background-image: url(../img/icn/icn_pin.png);
}
.icn_youtube {
  background-image: url(../img/icn/icn_sns_youtube.png);
}
.icn_blog {
  background-image: url(../img/icn/icn_sns_blog.png);
}
.icn_instargram {
  background-image: url(../img/icn/icn_sns_instagram.png);
}
.icn_sch {
  background-image:url(../img/icn/icn_search.png); ;
}
.icn_home {
  background-image:url(../img/icn/icn_home.png); ;
}
.icn_del {
  background-image:url(../img/icn/icn_delete.png); ;
}
.green {color:#00854A}
.blue {color:#0F3323;}
/* input */
.input_wrap {
  position: relative;
}
.input_wrap .bytes {
  position: absolute;
  font-size: 14px;
  color:#888;
  bottom:16px;
  right:24px;
}

.input_wrap textarea {
  border-radius: 4px;
  font-size: 18px;
  font-family: Pretendard;
  border:1px solid rgba(29, 31, 37, 0.20);
  padding:16px;
  padding-bottom: 40px;
  height:150px;
}
.input_wrap select {
  width:100%;
  padding:0px 74px 0px 24px;
  color:#1d1f25;
  font-size: 18px;
  background-image: url(../img/icn/icn_drop_down.png);
  background-size: 24px 24px;
  background-position: 95% center;
  border-radius: 4px;
  border:1px solid rgba(29, 31, 37, 0.20);
  background-repeat: no-repeat;
  max-width: 428px;
  font-family: Pretendard;
  font-weight: 400;
  height: 50px;
  line-height: 50px;
}
select:disabled {
  background-color: rgba(29, 31, 37, 0.05);
}
.input_wrap input {
  padding:0px 24px;
  border-radius: 4px;
  border:1px solid rgba(29, 31, 37, 0.20);
  max-width: 428px;
  font-family: Pretendard;
  font-weight: 400;
  height: 50px;
  line-height: 50px;
  color:#1d1f25;
  font-size: 18px;
  box-sizing: border-box;
}
input:disabled {
  background-color: rgba(29, 31, 37, 0.05);
}
.input_wrap.sch input {
  padding:0px 74px 0px 24px;
}
.input_wrap .icn_sch {
  width:50px;
  height: 50px;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right:0;
  top:0;
}

.input_wrap .icn_del {
  width:50px;
  height: 50px;
  background-size: 16px 16px;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right:0;
  top:0;
}

.input_wrap.error input {
  border:1px solid #E90C0C;
}
.form label {
  font-size: 18px;
  display: block;
  margin-bottom: 16px;
  font-weight: 700;
}

.input_wrap .input_date {
  padding:0px 24px;
  border-radius: 4px;
  border:1px solid rgba(29, 31, 37, 0.20);
  max-width: 428px;
  font-family: Pretendard;
  font-weight: 400;
  height: 50px;
  line-height: 50px;
  color:#1d1f25;
  font-size: 18px;
  box-sizing: border-box;
  background-image: url(../img/icn/icn_date.png);
  background-size: 24px 24px;
  background-position: 95% center;
  background-repeat: no-repeat;
}
.input_wrap.del input {
  padding:0px 50px 0px 24px;
}
.input_wrap.del .icn_del {
  display: none;
}
.has_btn.flex {
  display: flex;
  gap:16px;
}
.has_btn .input_wrap {
  flex:1;
}
.has_btn .input_wrap input {
  width:100%;
  max-width:none
}
.has_btn .input_btn {
  border:1px solid #1D1F25;
  min-width: 147.5px;
  height: 50px;
  border-radius: 4px;
  padding:0px 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}
.has_btn .input_btn span {
  color:#1D1F25;
  font-size: 18px;
  font-weight: 700;
}
.has_btn .input_btn:hover {
  background: #1d1f25;
}
.has_btn .input_btn:hover span {
  color:#fff;
}
@media screen and (max-width:768px) {
  .has_btn .input_btn {
    min-width: 106px;
    height: 50px;
    border-radius: 4px;
    padding:0px 16px;
  }
  .has_btn .input_btn span {
    font-size: 14px;
  }
  .input_wrap textarea {
    font-size: 14px;
  }
  .input_wrap select {
    font-size: 14px;
    width:100%;
    max-width: none;
  }
  .input_wrap input {
    font-size: 14px;
    width:100%;
    max-width: none;
  }
  .radio_chk {
    font-size: 14px;
  }
}
.chkmark {
  display: inline-block;
  width: 24px;
  height: 24px;
  border: solid 1px rgba(29, 31, 37, 0.20);
  border-radius: 4px;
  position: relative;
  top: 1px;
  background-color: #fff;
  cursor: pointer;
}

.chkmark::after {
  content: "";
  position: absolute;
  display: none;
  left: 6.5px;
  top: 3px;
  width: 9px;
  height: 12px;
  border: solid #fff;
  border-width: 0px 2px 2px 0;
  transform: rotate(45deg);
}

.chk input:checked ~ .chkmark {
  background-color: #026442;
  border-color: #026442;
}

.chk input:checked ~ .chkmark::after {
  display: block;
}

.chkText {
  padding-left: 8px;
  line-height: 1em;
  font-size: 16px;
  text-align: left;
  color: #000;
  letter-spacing: -0.32px;
  cursor: pointer;
}

.chk input:disabled ~ .chkmark {
  opacity: 0.4;
  cursor: default;
}

.chk input:disabled ~ .chkText {
  opacity: 0.4;
  cursor: default;
}

.chk input:checked:disabled ~ .chkmark {
  opacity: 1;
}

.chk input:checked:disabled ~ .chkText {
  opacity: 1;
}


/* 체크박스(기본형태) */
.chk {
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: flex !important;
  align-items: center;
  
  cursor: default;

}
.chk * {
  display: inline-block;
  vertical-align: top;
}
.chk input {
  position: absolute;
  opacity: 0;
  height: 0;
  width: 0;
  display: inline-block;
}
.from label {
  margin-bottom: 0;
}

.input_noti {
  margin-top: 16px;
  color:#888;
  font-size: 14px;
  text-align: left;
}

.input_error {
  margin-top: 16px;
  color:#E90C0C;
  font-size: 14px;
  display: none;
  text-align: left;
}

.border_btn {
  padding:16px 24px;
  border:1px solid rgba(29, 31, 37, 0.20);
  border-radius: 4px;
  color:#1d1f25;
  font-size: 18px;
  font-weight: 700; 
}

@media screen and (max-width:768px) {
  .inner_1440 {
    padding:0px 16px;
  }
  .inner_1920 {
    padding:0px 16px;
  }
  .inner_1920.m_padding_0 {
    padding:0;
  }
  .mt40 {
    margin-top:24px !important;
  }
}
.wrap.pb0 {padding-bottom: 0;}
.btn_wrap {
  justify-content: center;
  display: flex;
  gap:16px;
}
.btn_wrap a, .btn_wrap button {
  height: 50px;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex:1;
}
.btn_wrap a.sm_btn, .btn_wrap button.sm_btn {
  width:280px;
  flex:none;
}

.btn_wrap .bg_gray {
  background-color: #f3f4f4;
}
.btn_wrap .bg_bk {
  background-color: #1D1F25;
  color:#fff;
}

.pop_btn.on{
  background-color: #1D1F25;
  color:#fff;
}

.pop_btn{
  background-color: #f3f4f4;
}

.btn_wrap .bg_bk:hover {
  background-color: #00854A;
}

@media screen and (max-width:768px) {

  .btn_wrap {
    padding:0px 16px;
    flex-wrap:wrap;
  }
  .btn_wrap a, .btn_wrap button {
    width:100% !important;
    flex:auto !important;
    font-size: 14px;
  }
  .btn_wrap a.sm_btn, .btn_wrap button.sm_btn {
    width:100%;
    flex:1;
  }
}


/* 공지사항 리스트 */
.board_list_wrap {
  margin-top:40px;
}
.board_list  {
  border-top: 2px solid #1D1F25;
  min-height: 553px;
}
.board_list li {
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
  padding:16px 24px;
}
.board_list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.board_list li a .list_title {
  display: flex;
  gap:16px;
  align-items: center;
}
.board_list li a .list_title > span {
  width:72px;
  height: 30px;
  border-radius: 4px;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.board_list li a .list_title > span.ing {
  color:#00854A;
  border: 1px solid #00854A;
  background: #F5F9E8;
}
.board_list li a .list_title > span.nomal {
  border: 1px solid #0061AF;
  background: #EFFBFF;
  color: #0061AF;

}
.board_list li a .list_title > span.end {
  border: 1px solid  rgba(29, 31, 37, 0.20);
  background: rgba(29, 31, 37, 0.05);
  color:#888;
}
.board_list li a .list_title {
  flex:1;
  overflow: hidden;
}
.board_list li a .list_title:has(span) p {
  max-width:calc(100% - 150px);
}
.board_list li a .list_title p {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width:calc(100% - 100px);
  overflow: hidden;
}
.board_list li a .w_date {
  color:#888;
  font-size: 14px;
}
.board_list li a:hover .list_title p {
  border-bottom: 1px solid #1D1F25;
  font-weight: 700;
}
.board_list .highlight {
  background-color: #f3f4f4;
}
.pagination_box {
  margin-top:40px;
  text-align: center;
}
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination a {
  width:40px;
  height:40px;
  display: inline-block;
  border-radius: 4px;
  font-size: 14px;
  line-height: 40px;
}
.pagination a.current_page {
  font-weight: 700;
  color:#fff;
  background-color: #0F3323;
}

.pagination .prev_page, .pagination .next_page {
  background: rgba(29, 31, 37, 0.05);
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
}

.pagination .prev_page {
  background-image: url(../img/icn/icn_arr_prev_s.png);
  margin-right:16px;
}
.pagination .next_page {
  background-image: url(../img/icn/icn_arr_next_s.png);
  margin-left: 16px;
}
.board_list.arc li {
  padding:0;
}
.board_list.arc li a {
  padding:16px 24px;
  position: relative;
}
.board_list.arc li a::after {
  content: '';
  background-image: url(../img/icn/icn_drop_down.png);
  width:24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px 24px;
}
.board_list.arc li a .list_title p {
  font-size: 18px;
}
.board_list.arc li a .type {
  color:#888;
  font-weight: 700;
  font-size: 18px;
}
.board_list.arc .arc_con {
  background-color: rgba(29, 31, 37, 0.05);
  padding:16px 24px;
  display: none;
}
.board_list.arc .arc_con .title {
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  margin-bottom: 16px;
}

.board_list.arc .arc_con p {
  white-space: pre-line;
  font-size: 18px;
  font-weight: 400;
  line-height: 26px;
}
.board_list.arc li.open a::after {
  background-image: url(../img/icn/icn_drop_up.png);
}
.board_list.arc li.open a p {
  border-bottom: 1px solid #1d1f25;
}
@media screen and (max-width:768px) {
  .board_list li a .list_title {
    gap:8px;
  }
  /* 공지사항 리스트 */
  .board_list li {
    padding:16px 16px;
  }
  .board_list li a .list_title:has(span) p {
    max-width:calc(100% - 100px);
  }
  .board_list li a .list_title p {
    max-width:calc(100% - 50px);
  }
  
  .board_list.arc li a {
    padding:10px 16px;
    position: relative;
  }

  .board_list.arc li a .list_title p {
    font-size: 14px;
  }
  .board_list.arc li a .type {
    font-size: 14px;
  }
  .board_list.arc .arc_con {
    background-color: rgba(29, 31, 37, 0.05);
    padding:16px 24px;
    display: none;
  }
  .board_list.arc .arc_con .title {
    font-size: 14px;
    line-height: 22px;
  }

  .board_list.arc .arc_con p {
    font-size: 14px;
    line-height: 22px;
  }
}
.board_detail {
  margin-bottom:40px;
}
.board_detail .detail_info {
  border-top:2px solid #1d1f25;
}

.board_detail .detail_info .top {
  padding:24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.board_detail .detail_info .top .txt_box {
  display: flex;
  gap:16px;
}

.board_detail .detail_info .top .txt_box > span {
  width:72px;
  height: 30px;
  border-radius: 4px;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}
.board_detail .detail_info .top .txt_box > span.ing {
  color:#00854A;
  border: 1px solid #00854A;
  background: #F5F9E8;
}
.board_detail .detail_info .top .txt_box > span.end {
  border: 1px solid  rgba(29, 31, 37, 0.20);
  background: rgba(29, 31, 37, 0.05);
  color:#888;
}
.board_detail .detail_info .top .txt_box {
  flex:1;
  overflow: hidden;
}
.board_detail .detail_info .top .txt_box:has(span) p {
  max-width:calc(100% - 150px);
}
.board_detail .detail_info .top .txt_box p {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width:calc(100% - 100px);
  overflow: hidden;
  font-size: 24px;
  font-weight: 700;
}
.board_detail .detail_info .top .w_date {
  color:#888;
  font-size: 14px;
}

.board_detail .detail_info .content {
  border-top:1px solid rgba(29, 31, 37, 0.20);
  border-bottom:1px solid rgba(29, 31, 37, 0.20);
  padding:24px;
  min-height: 500px;
}

.board_detail .detail_info .content p {
  font-size: 18px;
  line-height: 26px;
  white-space: pre-line;
}

.board_detail .detail_info .content .img_box {
  margin:20px 0;
}
.board_detail .detail_info .content .report_btn {
  margin-top: 16px;
  justify-content: flex-end;
}
.board_detail .detail_info .content .report_btn .report {
  display: inline-block;
  border-radius: 0;
  flex:none;
  font-size: 18px;
  color:#888;
  border-bottom: 1px solid #888;
  height:auto;
  font-weight: 400;
}
.board_detail .download_btn {
  margin-top:24px;
}
.board_detail .download_btn a {
  border-radius: 4px;
  border: 1px solid  rgba(29, 31, 37, 0.20);
  padding:8px 16px 8px 50px;
  background-image: url(../img/icn/icn_download.png);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: 16px center;
  font-size: 18px;
  font-weight: 700;
}


@media screen and (max-width:768px) {
  .board_detail .detail_info .top {
    padding:16px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    gap:8px;
  }

  .board_detail .detail_info .top .txt_box {
    display: flex;
    gap:16px;
    flex-direction: column;
  }

  .board_detail .detail_info .top .txt_box > span {
    width:56px;
    height: 28px;
    font-size: 12px;
  }
  .board_detail .detail_info .top .txt_box {
    flex:1;
    overflow: hidden;
  }
  .board_detail .detail_info .top .txt_box:has(span) p {
    max-width:none
  }
  .board_detail .detail_info .top .txt_box p {
    max-width:none;
    font-size: 16px;
    line-height: 24px;
    white-space: wrap;
  }
  .board_detail .detail_info .top .w_date {
    color:#888;
    font-size: 14px;
  }

  .board_detail .detail_info .content {
    padding:16px;
    min-height: 300px;
  }

  .board_detail .detail_info .content p {
    font-size: 14px;
    line-height: 22px;
    white-space: pre-line;
  }

  .board_detail .detail_info .content .img_box {
    margin:20px 0;
  }

  .board_detail .download_btn {
    margin-top:24px;
  }
  .board_detail .download_btn a {
    font-size: 14px;
  }
  .board_detail .detail_info .content .report_btn {
    margin-top: 16px;
    justify-content: flex-end;
  }
  .board_detail .detail_info .content .report_btn .report {
    display: inline-block;
    border-radius: 0;
    flex:none !important;
    font-size: 14px;
    width:auto !important;
  }
}

.dimm {
  display: none;
  position: fixed;
  top:0;
  left: 0;
  width:100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 103;
}

html.fixed {
  overflow: hidden;
}
.pop_close {
  width:24px;
  height: 24px;
  background-image: url(../img/icn/btn_close.svg);
  background-size: 100%;
}
.landing_tab {
  display: flex;
  margin-bottom: 76px;
}

.landing_tab a {
  flex:1;
  padding-bottom: 16px;
  font-size: 24px;
  color:#888;
  font-weight: 700;
  text-align: center;
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
}
.landing_tab a.current {
  border-bottom: 2px solid #1d1f25;
  color:#1d1f25;
}
.landing_tab.mypage {
  justify-content: center;
  align-items: center;
  display: flex;
  width:40%;
  margin: 0 auto 80px;
}
.landing_tab.mypage a.current {
  color: black;
}

.landing_tab.mypage a {
  flex: none;
  display: inline-block;
  width: auto;
  color: #888;
  text-align: center;
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 18px;
  border-bottom: none;
}
.landing_tab.mypage a.active {
  border-bottom: 2px solid #1d1f25;
  color:#1d1f25;
}

.landing_tab.mypage a:not(:last-child)::after {
  content: '|';
  margin: 0 10px;
  color: #888;
  font-weight: 300;
}

.board_table table {
  border-top: 2px solid var(--Main_black, #1D1F25);
}

.board_table thead {
  height: 62px;
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
  background: rgba(29, 31, 37, 0.05);
  font-size: 18px;
  font-weight: 400;
  color: #888;
}

.board_table tr {
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
}

.board_table td {
  text-align: center;
  padding:16px 0;
  font-size: 18px;
}

.board_table tbody td a {
  display: block;
  text-align: left;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width:100%;
}

.board_table tbody td a:hover {
  text-decoration: underline;
}
.board_table table a , .board_table table button {
  font-weight: 700;
  font-size: 18px;
}
.board_table table button {
  width:112px;
  padding:8px 16px;
  border-radius: 4px;
  border: 1px solid rgba(29, 31, 37, 0.20);
}
.board_table .mo_desc {
  font-size: 14px;
  line-height: 22px;
  color:#888;
  text-align: center;
}
.txt_hidden {
	display: table;
	table-layout: fixed;
	width: 100%;
	white-space: nowrap;
}

.txt_hidden > * {
	display: table-cell;
	overflow: hidden;
	text-overflow: ellipsis;
}
.board_table.list td {
  color:#888;
}
.board_table.list a {
  font-weight: 400;
  color:#1d1f25;
}
.board_table .link {
  display:flex;
  align-items: center;
  gap:8px;
}
.board_table .link a {
  text-align: left;
}
.board_table .link span {
  width:72px;
  height: 30px;
  border-radius: 4px;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}
.board_table .link span.ing {
  color:#00854A;
  border: 1px solid #00854A;
  background: #F5F9E8;
}
.board_table .link span.end {
  border: 1px solid  rgba(29, 31, 37, 0.20);
  background: rgba(29, 31, 37, 0.05);
  color:#888;
}
.mo_table_scroll {
  overflow: auto;
}
.mo_table_scroll table {
  min-width: 700px;
}
@media screen and (max-width:768px) {
  .landing_tab {
    margin-bottom: 40px;
  }
  .landing_tab a {
    font-size: 16px;
  }
  .mo_table_scroll {
    overflow: auto;
  }
  .mo_table_scroll table {
    min-width: 700px;
  }
  .board_table thead th {
    font-size: 14px;
  }
  .board_table tbody td {
    font-size: 14px;
  }
  .board_table tbody td a {
    font-size: 14px;
  }
  .board_table table a , .board_table table button {
    font-size: 14px;
  }
}

.category_filter {
  display: flex;
  justify-content: center;
}

.category_filter button {
  padding:0px 16px;
  position: relative;
}
.category_filter button span {
  color:#888;
  font-size: 18px;
  font-weight: 700;
}

.category_filter button.active span {
  color:#1d1f25;
}

.category_filter button::after {
  content: '';
  position: absolute;
  background-color: #1d1f25;
  opacity: .2;
  width:2px;
  height: 100%;
  right:0;
  top:0;
}
.category_filter button:last-child::after {
  display: none;
}

/* 공통 팝업 */
.common_pop {
  position: fixed;
  min-width:576px;
  /* min-height: 600px; */
  padding:40px;
  border-radius: 4px;
  z-index: 110;
  background-color: #fff;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
  display: none;
  max-height: calc(100vh - 100px);
  overflow: auto;
}
.common_pop.alert {
  min-height: 200px;
}
.common_pop .pop_title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 16px;
  text-align: center;
}

.common_pop .ex {
  margin-bottom: 16px;
  font-size: 18px;
  text-align: center;
}
.common_pop .btn_wrap {
  margin-top: 40px;
}
.common_pop .pop_scroll_inner {
  max-height:390px;
  overflow: auto;
}

.sch_school_pop .sch_result_box {
  margin-top:16px;
}
.sch_school_pop .sch_result_box > p {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 18px;
}
.sch_school_pop .sch_result_box .result_list {
  padding:16px;
  display: flex;
  flex-direction: column;
  gap:16px;
  border-radius: 4px;
  background: rgba(29, 31, 37, 0.05);
  justify-content: flex-start;
  align-items: flex-start;
  max-height: 200px;
  overflow: auto;
}

.sch_school_pop .sch_result_box .result_list button {
  color:#1D1F25;
  font-size: 18px;
}
.sch_school_pop .sch_result_box .result_list button:hover {
  font-weight: 700;
  border-bottom: 1px solid #000;
}
.sch_school_pop .empty_list {
  border-radius: 4px;
  background: rgba(29, 31, 37, 0.05);
  padding:16px;
  color:#888;
}
.sch_school_pop .empty_list .empty_title {
  font-size: 18px;
  font-weight: 700;
  color:#888;
}
.sch_school_pop .empty_list .desc {
  margin-top:16px;
  font-size: 18px;
  line-height: 26px;
  font-weight: 400;
  margin-bottom: 16px;
}
.sch_school_pop .empty_list .input_wrap {
  width:100%;
}
.sch_school_pop .empty_list .input_wrap input {
  max-width: none;
  width:100%;
}

@media screen and (max-width:768px) {
  /* 공통 팝업 */
  .common_pop {
    position: fixed;
    min-width:auto;
    width:calc(100% - 32px);
    min-height: 300px;
    padding:24px 16px;
    max-height: 600px;
    overflow: auto;
  }
  .common_pop .pop_title {
    font-size: 20px;
  }

  .common_pop .ex {
    margin-bottom: 16px;
    font-size: 14px;
  }
  .common_pop .btn_wrap {
    margin-top: 24px;
  }
  .common_pop .pop_scroll_inner {
    max-height:300px;
  }
  .sch_school_pop .sch_result_box > p {
    font-size: 14px;
  }

  .sch_school_pop .sch_result_box .result_list button {
    font-size: 14px;
  }
  .sch_school_pop .empty_list .empty_title {
    font-size: 14px;
    font-weight: 700;
    color:#888;
  }
  .sch_school_pop .empty_list .desc {
    margin-top:16px;
    font-size: 14px;
    line-height: 22px;
  }
  .sch_school_pop .empty_list .input_wrap {
    width:100%;
  }
  .sch_school_pop .empty_list .input_wrap input {
    max-width: none;
    width:100%;
  }
}
.filebox input[type="file"] {
    position: absolute;
    width: 0;
    height: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
}
.common_pop .radio_list {
  background-color: #f3f4f4;
  padding:16px;
  border-radius: 4px;
}
.common_pop .radio_list > label {
  font-size: 18px;
  font-weight: 700;
  margin-bottom:20px;
  display:block;
}
.common_pop .radio_list .item .radio_chk {
  display: block;
  padding-left:0;
}
.common_pop .radio_list .item .radio_chk + .radio_chk {
  margin-top:10px;
}
.common_pop .radio_list .item .chk + .chk {
  margin-top:10px;
}
.chartjs-tooltip {
    z-index: 9999;
    background-color: white;
    border: 5px solid red;
    border-radius: 5px;
    padding: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    font-size: 12px;
    transform: translate(-50%, -100%);
}

.line_txt span {
    padding-right:16px;
    font-size: 14px;
    position: relative;
}
.line_txt span::after {
    content: '';
    width:1px;
    height: 100%;
    background-color: rgba(29, 31, 37, 0.20);
    position: absolute;
    top:0;
    right:8px;
}
.line_txt span:last-child::after {
    display: none;
}

.common_pop .pop_user_info {
  display: flex;
  justify-content: center;
  gap:8px;
  align-items: center;
}
.common_pop .pop_user_info > em {
  font-size: 14px;
}
.common_pop .pop_tab {
  margin-top:24px;
  display: flex;
}
.common_pop .pop_tab button {
  flex:1;
  padding-bottom: 10px;
  color:#888;
  font-size: 18px;
  font-weight: 700;
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
}
.common_pop .pop_tab button.active {
  color:#1d1f25;
  border-bottom: 2px solid #1d1f25;
}
.common_pop .pop_tab button span {
  vertical-align: text-bottom;
}
.common_pop .follow_list li {
  padding:16px 0;
  border-bottom: 1px solid rgba(29, 31, 37, 0.20);
  display:flex;
  align-items: center;
  justify-content: space-between;
}
.common_pop .follow_list .user_detail .name {
  font-size: 18px;
  margin-bottom: 16px;
  font-weight: 700;
}

.common_pop .follow_list .user_detail .pop_user_info {
  justify-content: flex-start;
}
.common_pop .follow_list .follow_btn {
  width:96px;
  height:34px;
  font-weight: 700;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100px;
  background: rgba(29, 31, 37, 0.05);
} 
.common_pop .follow_list .follow_btn.on {
  color:#fff;
  background-color:#026442;
}

@media screen and (max-width:768px) {

  .common_pop .pop_user_info > em {
    font-size: 12px;
  }
  .common_pop .pop_tab button {
    font-size: 14px;
  }

  .common_pop .follow_list .user_detail .name {
    font-size: 14px;
    margin-bottom: 8px;
  }

  .common_pop .follow_list .follow_btn {
    width:96px;
    height:30px;
    font-size: 14px;
  } 
}

/* 마이페이지 장학금 신청정보 팝업 */
#user_info_pop {max-width:1250px; width:100%;}
#user_info_pop .pop_scroll_inner {max-height:500px;}
.common_pop .arc_list {
  display: flex;
  flex-direction: column;
  gap:80px;
}
.common_pop .arc_item > h4 {
  position: relative;
  cursor: pointer;
  font-size: 24px;
  margin-bottom:24px;
}

.common_pop .arc_item > h4::after {
  content: '';
  background-image: url(../img/icn/icn_drop_up.png);
  background-size: 24px 24px;
  background-position: 95% center;
  border-radius: 4px;
  width:24px;
  height: 24px;
  position: absolute;
  display: inline-block;
  top:50%;
  transform: translateY(-50%);
}
.common_pop .arc_item.close > h4::after {
  background-image: url(../img/icn/icn_drop_down.png);
}
.common_pop .arc_con {
  padding-top:40px;
  border-top:2px solid #1d1f25;
}
.common_pop .arc_con .profile_flex {
  display: flex;
  gap:24px;
}

.common_pop .arc_con .profile_flex .img_box {
  max-width:428px;
  width:100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background:  rgba(29, 31, 37, 0.05);
  overflow:hidden
}
.common_pop .arc_con .profile_flex .txt_info {
  display: flex;
  flex-direction: column;
  gap:24px;
}
.common_pop .arc_con .profile_flex .txt_info li {
  display: flex;
}
.common_pop .arc_con .profile_flex li span {
  min-width:160px;
  font-size: 18px;
  color:#888;
}
.common_pop .arc_con .profile_flex li p {
  font-size: 18px;
}
.common_pop .arc_con .board_table table {
  border-top:1px solid rgba(29, 31, 37, 0.20);
  min-width:1000px;
}
.common_pop .arc_con .board_table table tbody td {
  padding:16px 10px;
}
.common_pop .arc_con .board_table table tbody th {
  background: rgba(29, 31, 37, 0.05);
  font-weight: 700;
  color:#888;
}
.common_pop .arc_con .board_table + .board_table {
  margin-top:24px;
}
.common_pop .arc_con .board_table .text-left td {
  text-align: left;
}

@media screen and (max-width:768px) {
  #user_info_pop {
    width:calc(100% - 32px);
  }
  #user_info_pop .pop_scroll_inner {
    max-height: 300px;
  }
  .common_pop .arc_list {
    gap:24px;
  }
  .common_pop .arc_item > h4 {
    font-size: 16px;
    margin-bottom:16px;
  }

  .common_pop .arc_con {
    padding-top:16px;
  }
  .common_pop .arc_con .profile_flex {
    gap:16px;
    flex-direction: column;
  }

  .common_pop .arc_con .profile_flex .img_box {
    max-width:none;
    width:100%;
    min-height: 300px;
  }
  .common_pop .arc_con .profile_flex .txt_info {
    gap:16px;
  }
  .common_pop .arc_con .profile_flex li span {
    min-width:60px;
    font-size: 14px;
  }
  .common_pop .arc_con .profile_flex li p {
    font-size: 14px;
  }
  .common_pop .arc_con .board_table + .board_table {
    margin-top:16px;
  }
}

#type_b_info_pop .arc_con .board_table table tbody th {
  background-color:#EFFBFF;
  color:#1d1f25;
}

.com_download {
  padding:8px 16px 8px 56px;
  border-radius: 4px;
  border: 1px solid  rgba(29, 31, 37, 0.20);
  font-size: 18px;
  font-weight: 700;
  background-image: url(../img/icn/icn_download.png);
  background-size: 24px 24px;
  background-position: 16px center;
  background-repeat: no-repeat;
  display: block;
  width:206px;
  margin-top:10px;
}

.nodata{
  text-align: center;
  list-style: none;
  font-weight: bold;
  font-size: 20px;
  width: 100%;
  margin: 10%;

}

/* 20250211 팝업 템플릿 추가 */
.notice_pop {
  position: fixed;
  max-width:576px;
  width:100%;
  padding:40px;
  border-radius: 4px;
  z-index: 110;
  background-color: #fff;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
  display: none;
  max-height: calc(100vh - 100px);
  overflow:auto;
}

.notice_pop .btn_wrap {
  margin-top:40px;
}
.notice_pop .btn_wrap.column_row {
  flex-direction: column;
  justify-content: baseline;
}
.notice_pop .btn_wrap.column_row button {
  flex:auto;
}
.notice_pop .img_box {
  height: 452px;
  overflow:hidden;
  position: relative;
  width: 100%;
}
.notice_pop .img_box img {
  position: absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
}
.notice_pop .swiper_control {
  margin-top:40px;
  display: flex;
  gap:4px;
  align-items: center;
  justify-content: center;
  /* position: absolute;
  top:500px;
  left:50%;
  transform: translateX(-50%);
  z-index:120; */
}
.notice_pop .swiper_control button {
  width:20px;
  height:20px;
  background-size: 20px 20px;
  background-position: center;
}
.notice_pop .chk {
  margin-top:16px;
}
.notice_pop .chk .chkText {
  font-size:14px;
}
.notice_pop .swiper_control button.prev_btn {
  background-image: url(../img/icn/icn_arr_prev_s.png);
}
.notice_pop .swiper_control button.next_btn {
  background-image: url(../img/icn/icn_arr_next_s.png);
}
.notice_pop .swiper_control span {
  font-size: 14px;
  color:#888;
  width:auto;
}
.notice_pop .swiper-slide .txt_box {
  text-align: center;
  height: 452px;
  overflow:auto;
}
.notice_pop .swiper-slide .txt_box .title {
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
}
.notice_pop .swiper-slide .txt_box p {
  white-space: pre-line;
  font-size: 18px;
  line-height: 26px;
}


@media screen and (max-width:768px) {
  /* 20250211 팝업 템플릿 추가 */
  .notice_pop {
    width:calc(100vw - 40px);
    padding:20px;
  }
  .notice_pop .btn_wrap {
    margin-top:20px;
  }
  .notice_pop .swiper_control {
    top:297px;
  }
  .notice_pop .img_box, .notice_pop .swiper-slide .txt_box {
    height:268px;

  }
  .notice_pop .swiper-slide .txt_box .title {
    font-size: 18px;
    line-height: 24px;
  }
  .notice_pop .swiper-slide .txt_box p {
    font-size: 14px;
    line-height: 22px;
  }
  .notice_pop .btn_wrap {
    margin-top:40px;
  }

}

#pwChangePop {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10001;
  background: #fff;
  padding: 30px;
  width: 420px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}
#pw_change_inner h2 {
  font-size: 22px;
  margin-bottom: 20px;
  text-align: center;
}
#pw_change_inputs {
  margin-bottom: 20px;
}
.pw_input_group {
  margin-bottom: 15px;
}
.pw_input_group label {
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
}
.pw_input_group input {
  width: 100%;
  padding: 10px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.pw_error_message {
  color: red;
  font-size: 12px;
  margin-top: 5px;
}
#pw_change_buttons {
  text-align: right;
}
#pw_change_buttons button {
  padding: 8px 15px;
  margin-left: 5px;
  font-size: 14px;
  cursor: pointer;
  border: none;
  border-radius: 4px;
  background: #0061AF;
  color: #fff;
}
#pw_change_buttons button:last-child {
  background: #888;
}
#pw_change_dimm {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 10000;
}

#loading-overlay {
  display: none;                /* JS로 토글합니다 */
  position: fixed;              /* 화면에 고정 */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;                    /* 좌우·상하 모두 0으로 꽉 채움 */
  align-items: center;          /* 수직 가운데 정렬 */
  justify-content: center;      /* 수평 가운데 정렬 */

  z-index: 10000;
}
#loading-overlay img {
  width: 100px;
  height: auto;
}

#loading-overlay.show {
  display: flex;
}

.kv_dimm {
  position: absolute;
  top:0;
  left:0;
  z-index: 30;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.6) 80%);
  width:100%;
  height:100%;
}