@charset "UTF-8";
.utf-8 {
  content: "Für charset";
  /* 절대 지우지 마세요. - scss 컴파일 시 css에 utf-8 누락 방지 */
}

@font-face {
  font-family: "Pretendard";
  font-weight: 900;
  font-display: swap;
  src: url("../font/Pretendard-Black.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 800;
  font-display: swap;
  src: url("../font/Pretendard-ExtraBold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  font-display: swap;
  src: url("../font/Pretendard-Bold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 600;
  font-display: swap;
  src: url("../font/Pretendard-SemiBold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 500;
  font-display: swap;
  src: url("../font/Pretendard-Medium.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  font-display: swap;
  src: url("../font/Pretendard-Regular.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 300;
  font-display: swap;
  src: url("../font/Pretendard-Light.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 200;
  font-display: swap;
  src: url("../font/Pretendard-ExtraLight.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 100;
  font-display: swap;
  src: url("../font/Pretendard-Thin.woff") format("woff");
}
html,
body {
  display: block;
  height: 100%;
  width: 100%;
  line-height: 1;
  font-family: "Pretendard", "Malgun Gothic", sans-serif;
  letter-spacing: -0.05em;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
div,
p,
blockquote,
pre,
address,
ul,
ol,
li,
dl,
dt,
dd,
table,
caption,
th,
td,
form,
fieldset,
legend,
hr,
label,
button,
input,
label,
select,
textarea {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-family: "Pretendard", "Malgun Gothic", sans-serif;
  color: #454753;
  font-weight: 400;
}

ul,
ol,
dl {
  list-style: none;
}

table {
  width: 100%;
  margin: 0;
  padding: 0;
  border-spacing: 0;
  border: 0;
  border-collapse: collapse;
}

img,
button,
fieldset,
abbr,
acronym {
  border: 0;
}

/* img {display: block;} 이미지 기본속성으로 사용 */
address,
caption,
cite,
code,
dfn,
em,
var {
  font-style: normal;
}

q:before,
q:after {
  content: "";
}

/* a, input, select, button, img, label, span, strong {vertical-align: middle;} */
body.no_scroll {
  position: fixed;
}

/* Chrome, Safari용 스크롤 바 */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-button:start:decrement,
::-webkit-scrollbar-button:end:increment {
  display: none;
  width: 12px;
  height: 12px;
  background: rgba(0, 0, 0, 0.05);
}

::-webkit-scrollbar-track {
  background: rgb(255, 255, 255);
  background: #ededed;
}

::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.2);
}

:hover::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.3);
}

​::-webkit-input-placeholder {
  color: #b0b0b0;
}

:-moz-placeholder {
  color: #b0b0b0;
}

::-moz-placeholder {
  color: #b0b0b0;
}

:-ms-input-placeholder {
  color: #b0b0b0;
}

::-webkit-input-placeholder {
  color: #b0b0b0;
}

:-moz-placeholder {
  color: #b0b0b0;
}

::-moz-placeholder {
  color: #b0b0b0;
}

:-ms-input-placeholder {
  color: #b0b0b0;
}

/* input */
input[type=checkbox] {
  width: 18px;
  height: 18px;
}

input[type=radio] {
  width: 18px;
  height: 18px;
}

label,
button {
  cursor: pointer;
}

label,
input {
  vertical-align: middle;
}

.label_box_wrap {
  display: flex;
  align-items: center;
  gap: 5px;
}

.label_box_wrap.center {
  justify-content: center;
}

.label_box_wrap.left {
  justify-content: flex-start;
}

.label_box_wrap.right {
  justify-content: flex-end;
}

.label_box {
  display: inline-flex;
  flex-flow: row nowrap;
  gap: 5px;
}

.label_box.center {
  align-items: center;
}

.label_box.left {
  justify-content: flex-start;
}

.label_box.right {
  justify-content: flex-end;
}

.label_box_ac {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
  line-height: 1.2em;
  align-items: center;
  gap: 6px;
}

table + .label_box_wrap {
  padding: 20px 0 0;
}

input[type=text]:disabled,
input[type=password]:disabled,
input[type=number]:disabled {
  background: #d8d8d8;
}

input[type=text]:-moz-read-only:focus, input[type=password]:-moz-read-only:focus, input[type=number]:-moz-read-only:focus {
  border-color: #ddd;
}

input[type=text]:disabled:focus,
input[type=password]:disabled:focus,
input[type=number]:disabled:focus,
input[type=text]:read-only:focus,
input[type=password]:read-only:focus,
input[type=number]:read-only:focus {
  border-color: #ddd;
}

th .label_box {
  justify-content: center;
}

a {
  color: #3e94cb;
  text-decoration: none;
  transition: color 0.15s ease 0s;
}

a.skip {
  position: fixed;
  left: -9999px;
  top: -9999px;
  display: block;
  line-height: 3em;
  background: #40b2cd;
  color: #fff;
  text-align: center;
}

a.skip:hover,
a.skip:focus {
  position: static;
  left: 0;
  top: 0;
}

input[type=text]:disabled,
input[type=password]:disabled {
  background: #f2f2f2;
}

.container {
  margin: 0 auto;
}

/* commom start */
.hidden,
.none {
  position: fixed;
  left: -9999px;
}

.float_left {
  float: left;
}

.float_right {
  float: right;
}

/* common end */
/* text-align start */
.text_center {
  text-align: center;
}

.text_right {
  text-align: right;
}

.text_left {
  text-align: left;
}

/* text-align end */
/* input */
input[type=button] {
  cursor: pointer;
}

input[type=text],
input[type=password],
input[type=number],
input[type=file],
input[type=date],
input[type=month],
input[type=time],
input[type=datetime-local],
select,
.input,
textarea {
  height: 40px;
  border: solid 1px #dbdbdb;
  border-radius: 4px;
  background: #fff;
  padding: 0 10px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

textarea {
  overflow: auto;
  padding: 10px;
  line-height: 1.3em;
  resize: none;
}

.js-elasticArea {
  transition: all 0.3s ease 0s;
}

input[type=date],
input[type=time],
input[type=month],
input[type=datetime-local] {
  padding: 0 38px 0 10px;
  position: relative;
  box-sizing: border-box;
}

input[type=date],
input[type=month],
input[type=datetime-local] {
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(153,153,153,1)'%3E%3Cpath d='M9 1V3H15V1H17V3H21C21.5523 3 22 3.44772 22 4V20C22 20.5523 21.5523 21 21 21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3H7V1H9ZM20 11H4V19H20V11ZM8 13V15H6V13H8ZM13 13V15H11V13H13ZM18 13V15H16V13H18ZM7 5H4V9H20V5H17V7H15V5H9V7H7V5Z'%3E%3C/path%3E%3C/svg%3E");
}
input[type=date]::-webkit-calendar-picker-indicator,
input[type=month]::-webkit-calendar-picker-indicator,
input[type=datetime-local]::-webkit-calendar-picker-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0 8px;
  margin: 0;
  border-radius: 4px;
  cursor: pointer;
  box-sizing: border-box;
  background-color: transparent;
  color: transparent;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  background-image: none;
}
input[type=date]:hover, input[type=date]:focus,
input[type=month]:hover,
input[type=month]:focus,
input[type=datetime-local]:hover,
input[type=datetime-local]:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(0,0,0,1)'%3E%3Cpath d='M9 1V3H15V1H17V3H21C21.5523 3 22 3.44772 22 4V20C22 20.5523 21.5523 21 21 21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3H7V1H9ZM20 11H4V19H20V11ZM8 13V15H6V13H8ZM13 13V15H11V13H13ZM18 13V15H16V13H18ZM7 5H4V9H20V5H17V7H15V5H9V7H7V5Z'%3E%3C/path%3E%3C/svg%3E");
}

input[type=time] {
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(153,153,153,1)'%3E%3Cpath d='M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM13 12H17V14H11V7H13V12Z'%3E%3C/path%3E%3C/svg%3E");
}
input[type=time]::-webkit-calendar-picker-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0 8px;
  margin: 0;
  border-radius: 4px;
  cursor: pointer;
  box-sizing: border-box;
  background-color: transparent;
  color: transparent;
  background-image: none;
}
input[type=time]:hover, input[type=time]:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(0,0,0,1)'%3E%3Cpath d='M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM13 12H17V14H11V7H13V12Z'%3E%3C/path%3E%3C/svg%3E");
}

/* 에러 start */
.errorContentWrap {
  display: flex;
  height: 100%;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #f9f9f9;
  line-height: 1.4;
}
.errorContentWrap .error_img {
  font-size: 0;
  height: 300px;
  max-width: 100%;
  width: 600px;
}
.errorContentWrap h1 {
  padding: 20px 20px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: 500;
}
.errorContentWrap .errorInfo1 {
  font-weight: 500;
  padding: 10px 0;
  color: #333;
  font-size: 20px;
}
.errorContentWrap a {
  display: inline-block;
  border-bottom: #0066C3 solid 1px;
  margin-top: 30px;
  padding: 16px 0;
}

/* 에러 end */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  select {
    padding: 0 0 0 5px;
  }
}
.input02,
.width02 {
  width: 2%;
}

.input03,
.width03 {
  width: 3%;
}

.input04,
.width04 {
  width: 4%;
}

.input05,
.width05 {
  width: 5%;
}

.input06,
.width06 {
  width: 6%;
}

.input07,
.width07 {
  width: 7%;
}

.input08,
.width08 {
  width: 8%;
}

.input09,
.width09 {
  width: 9%;
}

.input10,
.width10 {
  width: 10%;
}

.input15,
.width15 {
  width: 15%;
}

.input17,
.width17 {
  width: 17%;
}

.input20,
.width20 {
  width: 20%;
}

.input25,
.width25 {
  width: 25%;
}

.input30,
.width30 {
  width: 30%;
}

.input33,
.width33 {
  width: 33%;
}

.input35,
.width35 {
  width: 35%;
}

.input40,
.width40 {
  width: 40%;
}

.input45,
.width45 {
  width: 45%;
}

.input50,
.width50 {
  width: 50%;
}

.input55,
.width55 {
  width: 55%;
}

.input60,
.width60 {
  width: 60%;
}

.input65,
.width65 {
  width: 65%;
}

.input70,
.width70 {
  width: 70%;
}

.input75,
.width75 {
  width: 75%;
}

.input80,
.width80 {
  width: 80%;
}

.input85,
.width85 {
  width: 85%;
}

.input86,
.width86 {
  width: 86%;
}

.input87,
.width87 {
  width: 87%;
}

.input88,
.width88 {
  width: 88%;
}

.input89,
.width89 {
  width: 89%;
}

.input90,
.width90 {
  width: 90%;
}

.input92,
.width92 {
  width: 92%;
}

.input94,
.width94 {
  width: 94%;
}

.input95,
.width95 {
  width: 95%;
}

.input97,
.width97 {
  width: 97%;
}

.input98,
.width98 {
  width: 98%;
}

.input99,
.width99 {
  width: 99%;
}

.input100,
.width100 {
  width: 100%;
}

.w10 {
  width: 10px;
}

.w20 {
  width: 20px;
}

.w30 {
  width: 30px;
}

.w40 {
  width: 40px;
}

.w50 {
  width: 50px;
}

.w60 {
  width: 60px;
}

.w70 {
  width: 70px;
}

.w80 {
  width: 80px;
}

.w90 {
  width: 90px;
}

.w100 {
  width: 100px;
}

.fr {
  float: right;
}

.fl {
  float: left;
}

.flex1 {
  flex: 1;
}

.flex1_100 {
  flex: 1;
  width: 100%;
}

.flex_auto {
  flex: 1 1 auto;
}

.flex_auto_100 {
  flex: 1 1 auto;
  width: 100px;
}

/* margin start */
.margin_0 {
  margin: 0;
}

.margin_10 {
  margin: 10px;
}

.margin_20 {
  margin: 20px;
}

.margin_30 {
  margin: 30px;
}

.margin_40 {
  margin: 40px;
}

.margin_50 {
  margin: 50px;
}

.margin_60 {
  margin: 60px;
}

.margin_70 {
  margin: 70px;
}

.margin_80 {
  margin: 80px;
}

.margin_90 {
  margin: 90px;
}

.margin_100 {
  margin: 100px;
}

.margin_t10 {
  margin-top: 10px;
}

.margin_t20 {
  margin-top: 20px;
}

.margin_t30 {
  margin-top: 30px;
}

.margin_t40 {
  margin-top: 40px;
}

.margin_t50 {
  margin-top: 50px;
}

.margin_t60 {
  margin-top: 60px;
}

.margin_t70 {
  margin-top: 70px;
}

.margin_t80 {
  margin-top: 80px;
}

.margin_t90 {
  margin-top: 90px;
}

.margin_t100 {
  margin-top: 100px;
}

.margin_r10 {
  margin-right: 10px;
}

.margin_r20 {
  margin-right: 20px;
}

.margin_r30 {
  margin-right: 30px;
}

.margin_r40 {
  margin-right: 40px;
}

.margin_r50 {
  margin-right: 50px;
}

.margin_r60 {
  margin-right: 60px;
}

.margin_r70 {
  margin-right: 70px;
}

.margin_r80 {
  margin-right: 80px;
}

.margin_r90 {
  margin-right: 90px;
}

.margin_r100 {
  margin-right: 100px;
}

.margin_b10 {
  margin-bottom: 10px;
}

.margin_b20 {
  margin-bottom: 20px;
}

.margin_b30 {
  margin-bottom: 30px;
}

.margin_b40 {
  margin-bottom: 40px;
}

.margin_b50 {
  margin-bottom: 50px;
}

.margin_b60 {
  margin-bottom: 60px;
}

.margin_b70 {
  margin-bottom: 70px;
}

.margin_b80 {
  margin-bottom: 80px;
}

.margin_b90 {
  margin-bottom: 90px;
}

.margin_b100 {
  margin-bottom: 100px;
}

.margin_l10 {
  margin-left: 10px;
}

.margin_l20 {
  margin-left: 20px;
}

.margin_l30 {
  margin-left: 30px;
}

.margin_l40 {
  margin-left: 40px;
}

.margin_l50 {
  margin-left: 50px;
}

.margin_l60 {
  margin-left: 60px;
}

.margin_l70 {
  margin-left: 70px;
}

.margin_l80 {
  margin-left: 80px;
}

.margin_l90 {
  margin-left: 90px;
}

.margin_l100 {
  margin-left: 100px;
}

.margin_tb10 {
  margin: 10px 0;
}

.margin_tb20 {
  margin: 20px 0;
}

.margin_tb30 {
  margin: 30px 0;
}

.margin_tb40 {
  margin: 40px 0;
}

.margin_tb50 {
  margin: 50px 0;
}

.margin_tb60 {
  margin: 60px 0;
}

.margin_tb70 {
  margin: 70px 0;
}

.margin_tb80 {
  margin: 80px 0;
}

.margin_tb90 {
  margin: 90px 0;
}

.margin_tb100 {
  margin: 100px 0;
}

/* margin end */
/* padding start */
.padding_0 {
  padding: 0;
}

.padding_10 {
  padding: 10px;
}

.padding_20 {
  padding: 20px;
}

.padding_30 {
  padding: 30px;
}

.padding_40 {
  padding: 40px;
}

.padding_50 {
  padding: 50px;
}

.padding_60 {
  padding: 60px;
}

.padding_70 {
  padding: 70px;
}

.padding_80 {
  padding: 80px;
}

.padding_90 {
  padding: 90px;
}

.padding_100 {
  padding: 100px;
}

.padding_t10 {
  padding-top: 10px;
}

.padding_t20 {
  padding-top: 20px;
}

.padding_t30 {
  padding-top: 30px;
}

.padding_t40 {
  padding-top: 40px;
}

.padding_t50 {
  padding-top: 50px;
}

.padding_t60 {
  padding-top: 60px;
}

.padding_t70 {
  padding-top: 70px;
}

.padding_t80 {
  padding-top: 80px;
}

.padding_t90 {
  padding-top: 90px;
}

.padding_t100 {
  padding-top: 100px;
}

.padding_r10 {
  padding-right: 10px;
}

.padding_r20 {
  padding-right: 20px;
}

.padding_r30 {
  padding-right: 30px;
}

.padding_r40 {
  padding-right: 40px;
}

.padding_r50 {
  padding-right: 50px;
}

.padding_r60 {
  padding-right: 60px;
}

.padding_r70 {
  padding-right: 70px;
}

.padding_r80 {
  padding-right: 80px;
}

.padding_r90 {
  padding-right: 90px;
}

.padding_r100 {
  padding-right: 100px;
}

.padding_b10 {
  padding-bottom: 10px;
}

.padding_b20 {
  padding-bottom: 20px;
}

.padding_b30 {
  padding-bottom: 30px;
}

.padding_b40 {
  padding-bottom: 40px;
}

.padding_b50 {
  padding-bottom: 50px;
}

.padding_b60 {
  padding-bottom: 60px;
}

.padding_b70 {
  padding-bottom: 70px;
}

.padding_b80 {
  padding-bottom: 80px;
}

.padding_b90 {
  padding-bottom: 90px;
}

.padding_b100 {
  padding-bottom: 100px;
}

.padding_l10 {
  padding-left: 10px;
}

.padding_l20 {
  padding-left: 20px;
}

.padding_l30 {
  padding-left: 30px;
}

.padding_l40 {
  padding-left: 40px;
}

.padding_l50 {
  padding-left: 50px;
}

.padding_l60 {
  padding-left: 60px;
}

.padding_l70 {
  padding-left: 70px;
}

.padding_l80 {
  padding-left: 80px;
}

.padding_l90 {
  padding-left: 90px;
}

.padding_l100 {
  padding-left: 100px;
}

.padding_tb10 {
  padding: 10px 0;
}

.padding_tb20 {
  padding: 20px 0;
}

.padding_tb30 {
  padding: 30px 0;
}

.padding_tb40 {
  padding: 40px 0;
}

.padding_tb50 {
  padding: 50px 0;
}

.padding_tb60 {
  padding: 60px 0;
}

.padding_tb70 {
  padding: 70px 0;
}

.padding_tb80 {
  padding: 80px 0;
}

.padding_tb90 {
  padding: 90px 0;
}

.padding_tb100 {
  padding: 100px 0;
}

/* padding end */
/* flex_box start */
.flex {
  display: flex;
}

.flex_jcac {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex_jc {
  display: flex;
  justify-content: center;
}

.flex_ac {
  display: flex;
  align-items: center;
}

.flex_ae {
  display: flex;
  align-items: flex-end;
}

.flex_col {
  display: flex;
  flex-flow: column nowrap;
}

.flex_col_jcac {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}

.flex_col_jc {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}

.flex_col_ac {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
}

.flex_jsb {
  display: flex;
  justify-content: space-between;
}

.flex_jsb_ac {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.flex_jsb_ab {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.flex_jsb_ab .h4_deco {
  padding: 0 0 10px 25px;
}

.flex_col_jsb {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
}

.flex_rowwrap {
  display: flex;
  flex-flow: row wrap;
}

.flex_colwrap {
  display: flex;
  flex-flow: column wrap;
}

.flex1 {
  flex: 1;
}

.flex1_100 {
  flex: 1;
  width: 100%;
}

.flex_auto {
  flex: 1 1 auto;
}

.flex_auto_100 {
  flex: 1 1 auto;
  width: 100%;
}

.gap5 {
  gap: 5px;
}

.gap10 {
  gap: 10px;
}

.gap15 {
  gap: 15px;
}

.gap20 {
  gap: 20px;
}

.gap25 {
  gap: 25px;
}

.gap30 {
  gap: 30px;
}

.gap35 {
  gap: 35px;
}

.gap40 {
  gap: 40px;
}

.gap45 {
  gap: 45px;
}

.gap50 {
  gap: 50px;
}

.gap55 {
  gap: 55px;
}

.gap60 {
  gap: 60px;
}

.gap65 {
  gap: 65px;
}

.gap70 {
  gap: 70px;
}

.gap75 {
  gap: 75px;
}

.gap80 {
  gap: 80px;
}

.gap85 {
  gap: 85px;
}

.gap90 {
  gap: 90px;
}

.gap95 {
  gap: 95px;
}

.gap100 {
  gap: 100px;
}

/* flex_box end */
/* 리스트 start */
.dash_list {
  padding: 10px 0 0;
}

.dash_list > li {
  color: #777;
  padding-left: 10px;
  position: relative;
  line-height: 1.2em;
}

.dash_list > li::before {
  display: block;
  content: "";
  width: 5px;
  height: 1px;
  background: #777;
  position: absolute;
  left: 0;
  top: 9px;
}

.dash_list > li + li {
  margin-top: 10px;
}

.num_list1 > li {
  padding: 0 0 0 18px;
  position: relative;
  line-height: 1.2em;
  counter-increment: steps;
}

.num_list1 > li + li {
  margin: 8px 0 0;
}

.num_list1 > li::before {
  display: inline-block;
  content: counter(steps) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: #034992;
  font-weight: 600;
}

.num_list1 .list_wrn {
  padding: 0;
}

.num_list1 .list_wrn::before {
  display: none;
}

.num_list1.black li::before {
  color: #555;
}

.num_list2 {
  padding: 14px 0 0;
  line-height: 1.2em;
}

.num_list2 > li {
  color: #777;
  font-size: 15px;
  padding: 0 0 0 18px;
  position: relative;
  counter-increment: steps2;
}

.num_list2 > li + li {
  margin: 8px 0 0;
}

.num_list2 > li::before {
  display: inline-block;
  content: counter(steps2) ".";
  font-size: 15px;
  position: absolute;
  left: 0;
  top: 0;
  color: #777;
  font-weight: 500;
}

.circle_num_list1 {
  counter-reset: circle 0;
  line-height: 1.2em;
}

.circle_num_list1 li {
  position: relative;
  padding-left: 30px;
  font-size: 20px;
  font-weight: 500;
}

.circle_num_list1 li::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-size: 14px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #252525;
  font-weight: 600;
  position: absolute;
  left: 0;
  top: 2px;
  counter-increment: circle 1;
  content: counter(circle);
}

.circle_num_list1 li + li {
  margin-top: 12px;
}

.circle_num_list2 {
  counter-reset: circle 0;
  line-height: 1.2em;
}

.circle_num_list2 li {
  position: relative;
  padding-left: 24px;
}

.circle_num_list2 li::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-size: 12px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid #252525;
  font-weight: 600;
  position: absolute;
  left: 0;
  top: 2px;
  counter-increment: circle 1;
  content: counter(circle);
}

.circle_num_list2 li + li {
  margin-top: 20px;
}

.explain_list {
  padding: 10px 0 0;
}

.explain_list + .input_form {
  margin-top: 8px;
}

.explain_list > li {
  color: #777;
  position: relative;
  line-height: 1.3em;
  padding-left: 16px;
  word-break: keep-all;
}

.explain_list > li::before {
  display: inline-block;
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

.explain_list > li + li {
  margin-top: 10px;
}

.explain_list > li.wrn {
  color: #eb0000;
}

.explain.wrn {
  color: #EB0000;
}

.explain.wrn::before {
  color: #EB0000;
}

/* 리스트 end */
/* file_ico start */
.file_ico {
  font-size: 0;
  display: block;
  width: 18px;
  height: 18px;
  margin: 0 auto;
}

.file_ico::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(204,204,204,1)'%3E%3Cpath d='M18 19H19V6.82843L17.1716 5H16V9H7V5H5V19H6V12H18V19ZM4 3H18L20.7071 5.70711C20.8946 5.89464 21 6.149 21 6.41421V20C21 20.5523 20.5523 21 20 21H4C3.44772 21 3 20.5523 3 20V4C3 3.44772 3.44772 3 4 3ZM8 14V19H16V14H8Z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center center;
}

/* file_ico end */
/* 체크 icon start*/
.check_ico {
  font-size: 0;
  display: inline-block;
  vertical-align: text-top;
  line-height: 1;
}

.check_ico::before {
  display: block;
  content: "✔";
  font-size: 18px;
  font-weight: 500;
  color: #0066C3;
}

/* 체크 icon end*/
/* 로딩 이미지 */
.loadingWrap {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.9);
  z-index: 1000;
  text-align: center;
}

.loadingWrap p {
  margin-top: 15px;
  font-weight: 300;
  font-size: 38px;
  opacity: 0.8;
  color: #fff;
  letter-spacing: 0;
}

.loadingWrap #loading {
  margin-top: 800px;
}

#loading {
  display: inline-block;
  width: 70px;
  height: 70px;
  border: 8px solid rgba(102, 169, 232, 0.534);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
  -webkit-animation: spin 1s ease-in-out infinite;
}

#loading p {
  font-size: 24px;
  font-weight: 600;
}

@keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}
/* 2 초씩 바운스 효과 */
.main_banner01.swiper-slide-active .deco_img {
  transition: all 0.7s ease 2.8s;
}

.bounce {
  position: relative;
  /* 파폭 */
  /* 크롬 */
  animation: bounce 4s infinite ease;
}
@keyframes bounce {
  0% {
    top: 15%;
  }
  50% {
    top: 20%;
  }
  100% {
    top: 15%;
  }
}
/* 파일 start */
.write_file_upload {
  margin: 20px 0 30px;
  border: 1px solid #ddd;
  border-radius: 3px;
  overflow: hidden;
  background: #fafafa;
  position: relative;
}

.upload_list {
  padding: 24px 24px 14px;
  position: relative;
}

.upload_list .file_drag {
  width: 100%;
  height: 120px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  color: #999;
  position: absolute;
  left: 50%;
  top: 24px;
  transform: translateX(-50%);
  width: calc(100% - 48px);
  height: 120px;
  box-sizing: border-box;
  background: #fefefe;
  border: 1px dashed #ddd;
  border-radius: 5px;
  transition: all 0.2s ease;
}

.upload_list .file_drag::before {
  display: inline-block;
  content: "";
  width: 24px;
  height: 24px;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center center;
  margin-bottom: 10px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='rgba(153,153,153,1)'%3E%3Cpath d='M16 13L22.9641 17.0622L19.9913 17.9129L22.116 21.5933L20.384 22.5933L18.2592 18.9129L16.0359 21.0622L16 13ZM14 6H16V8H21C21.5523 8 22 8.44772 22 9V13H20V10H10V20H14V22H9C8.44772 22 8 21.5523 8 21V16H6V14H8V9C8 8.44772 8.44772 8 9 8H14V6ZM4 14V16H2V14H4ZM4 10V12H2V10H4ZM4 6V8H2V6H4ZM4 2V4H2V2H4ZM8 2V4H6V2H8ZM12 2V4H10V2H12ZM16 2V4H14V2H16Z'%3E%3C/path%3E%3C/svg%3E");
  transition: all 0.2s ease;
}

.upload_list .file_drag.dragging {
  border-color: #23ABAF;
  background: #F2F9FA;
  color: #23ABAF;
}

.upload_list .file_drag.dragging::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='rgba(35,171,175,1)'%3E%3Cpath d='M14 6H16V8H21C21.5523 8 22 8.44772 22 9V16.5L16 13L16.0359 21.0622L18.2592 18.9129L20.041 22H9C8.44772 22 8 21.5523 8 21V16H6V14H8V9C8 8.44772 8.44772 8 9 8H14V6ZM22 17.338V21C22 21.107 21.9832 21.2101 21.9521 21.3068L19.9913 17.9129L22 17.338ZM4 14V16H2V14H4ZM4 10V12H2V10H4ZM4 6V8H2V6H4ZM4 2V4H2V2H4ZM8 2V4H6V2H8ZM12 2V4H10V2H12ZM16 2V4H14V2H16Z'%3E%3C/path%3E%3C/svg%3E");
}

.upload_list ul {
  background: #fff;
  height: 120px;
  overflow-y: auto;
  border-radius: 5px;
  border: 1px solid #e1e1e0;
  display: flex;
  flex-flow: column nowrap;
  position: relative;
  box-sizing: border-box;
  width: 100%;
}

.upload_list ul li {
  border-bottom: 1px dashed #e1e1e0;
  position: relative;
}

.upload_list ul li:last-child {
  border: 0 none;
}

.upload_list ul li label {
  font-size: 15px;
  display: block;
  padding: 10px 16px 10px 40px;
  transition: all 0.2s ease;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(15,169,255,1)'%3E%3Cpath d='M5 5V19H19V7.82843L16.1716 5H5ZM4 3H17L20.7071 6.70711C20.8946 6.89464 21 7.149 21 7.41421V20C21 20.5523 20.5523 21 20 21H4C3.44772 21 3 20.5523 3 20V4C3 3.44772 3.44772 3 4 3ZM12 18C10.3431 18 9 16.6569 9 15C9 13.3431 10.3431 12 12 12C13.6569 12 15 13.3431 15 15C15 16.6569 13.6569 18 12 18ZM6 6H15V10H6V6Z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 15px center;
}

.upload_list ul li label:hover {
  background-color: #f2f9f4;
}

.upload_list ul li input[type=checkbox]:checked + label {
  background: #f2f9f4;
}

.upload_list ul li .file_del {
  font-size: 0;
  background-color: transparent;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(153,153,153,1)'%3E%3Cpath d='M11.9997 10.5865L16.9495 5.63672L18.3637 7.05093L13.4139 12.0007L18.3637 16.9504L16.9495 18.3646L11.9997 13.4149L7.04996 18.3646L5.63574 16.9504L10.5855 12.0007L5.63574 7.05093L7.04996 5.63672L11.9997 10.5865Z'%3E%3C/path%3E%3C/svg%3E");
  position: absolute;
  right: 16px;
  top: 6px;
  transition: all 0.2s ease;
  border-radius: 2px;
}

.upload_list ul li .file_del:hover {
  background-color: #f2f2f2;
}

.write_file_upload .btn_wrap {
  padding: 0px 24px 24px;
  display: flex;
  flex-flow: row wrap;
  box-sizing: border-box;
  justify-content: center;
  gap: 5px;
}

.write_file_upload .btn_wrap .file_count {
  margin-right: auto;
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.write_file_upload .btn_wrap .file_count strong {
  display: inline-block;
  margin-right: 6px;
  color: #555;
}

.write_file_upload .btn_wrap .file_count span {
  color: #777;
}

/* 파일 end */
.cmt_area {
  box-sizing: border-box;
  background-color: #fafafa;
  padding: 0 20px;
  height: 0;
  overflow: hidden;
  transition: all 0.2s ease;
  margin: 30px 0 0;
}
.cmt_area h4 {
  font-size: 18px;
  font-weight: 700;
  padding: 0 10px 20px;
}
.cmt_area .cmt_wrap {
  margin: 0 0 20px;
}
.cmt_area .cmt_wrap li {
  padding: 20px 10px;
  border-top: 1px solid #ddd;
  position: relative;
}
.cmt_area .cmt_wrap li .cmt_writer {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 15px;
  padding-left: 22px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='16' height='16' fill='rgba(34,34,34,1)'%3E%3Cpath d='M20 22H18V20C18 18.3431 16.6569 17 15 17H9C7.34315 17 6 18.3431 6 20V22H4V20C4 17.2386 6.23858 15 9 15H15C17.7614 15 20 17.2386 20 20V22ZM12 13C8.68629 13 6 10.3137 6 7C6 3.68629 8.68629 1 12 1C15.3137 1 18 3.68629 18 7C18 10.3137 15.3137 13 12 13ZM12 11C14.2091 11 16 9.20914 16 7C16 4.79086 14.2091 3 12 3C9.79086 3 8 4.79086 8 7C8 9.20914 9.79086 11 12 11Z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
}
.cmt_area .cmt_wrap li .cmt_contents {
  display: block;
  line-height: 1.2em;
}
.cmt_area .cmt_wrap li .cmt_date {
  display: inline-block;
  vertical-align: middle;
  color: #999;
  font-weight: 300;
  font-size: 15px;
  line-height: 1;
}
.cmt_area .cmt_wrap li .cmt_write {
  margin: 15px 0 0;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap {
  position: absolute;
  right: 10px;
  top: 15px;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap button {
  background: transparent;
  color: #999;
  font-size: 15px;
  transition: all 0.2s ease;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap button:hover {
  font-weight: 500;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap button + button {
  margin-left: 6px;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap button + button::before {
  display: inline-block;
  content: "";
  margin-right: 8px;
  width: 1px;
  height: 10px;
  background: #ccc;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap .btn_recmt {
  padding: 4px 8px;
  border: 1px solid #ddd;
  background-color: #fff;
  border-radius: 2px;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap .btn_recmt:hover {
  background-color: #f5f5f5;
  font-weight: 400;
}
.cmt_area .cmt_wrap li .cmt_mod_wrap .btn_recmt::before {
  display: none;
}
.cmt_area .cmt_wrap .recmt_wrap {
  padding: 0 0 0 30px;
}
.cmt_area .cmt_wrap .recmt_wrap li {
  border: 0 none;
  margin: 15px 0 0;
  border: 1px dashed #ddd;
  padding: 15px 15px;
  position: relative;
}
.cmt_area .cmt_wrap .recmt_wrap li::before {
  display: block;
  content: "";
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='rgba(204,204,204,1)'%3E%3Cpath d='M4.99989 13.9999L4.99976 5L6.99976 4.99997L6.99986 11.9999L17.1717 12L13.222 8.05024L14.6362 6.63603L21.0001 13L14.6362 19.364L13.222 17.9497L17.1717 14L4.99989 13.9999Z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
}
.cmt_area .cmt_wrap .recmt_wrap li .cmt_mod_wrap {
  right: 15px;
}
.cmt_area .cmt_write {
  display: flex;
}
.cmt_area .cmt_write input[type=text] {
  margin: 0;
  height: 46px;
  border-radius: 3px 0 0 3px;
  flex: 1;
  width: 100%;
  border-right: 0 none;
}
.cmt_area .cmt_write .btn {
  border-radius: 0 3px 3px 0;
  height: 46px;
  word-break: keep-all;
}
.cmt_area .page_wrap {
  margin: 30px 0;
}

.cmt_area.on {
  padding: 30px 20px;
  height: auto;
  overflow: visible;
}

.cmt_area + .list_updown {
  margin-top: 30px;
}

/* 모달 start */
/* 모달 end *//*# sourceMappingURL=common.css.map */