@charset "utf-8";

/*
 *
 * file : 기본 설정 및 초기화
 * date : 251024
 * writer : eun
 *
 */

@font-face {
	font-family: 'Pretendard';
	font-weight: 900;
	font-display: swap;
	src: local('Pretendard Black'), url(./fonts/Pretendard-Black.woff2) format('woff2');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 800;
	font-display: swap;
	src: local('Pretendard ExtraBold'), url(./fonts/Pretendard-ExtraBold.woff2) format('woff2');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 700;
	font-display: swap;
	src: local('Pretendard Bold'), url(./fonts/Pretendard-Bold.woff2) format('woff2');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 600;
	font-display: swap;
	src: local('Pretendard SemiBold'), url(./fonts/Pretendard-SemiBold.woff2) format('woff2');
}

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

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

@font-face {
	font-family: 'Pretendard';
	font-weight: 300;
	font-display: swap;
	src: local('Pretendard Light'), url(./fonts/Pretendard-Light.woff2) format('woff2');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 200;
	font-display: swap;
	src: local('Pretendard ExtraLight'), url(./fonts/Pretendard-ExtraLight.woff2) format('woff2');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 100;
	font-display: swap;
	src: local('Pretendard Thin'), url(./fonts/Pretendard-Thin.woff2) format('woff2');
}

/* outfit-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 100;
  src: url('./fonts/outfit-v15-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 200;
  src: url('./fonts/outfit-v15-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 300;
  src: url('./fonts/outfit-v15-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/outfit-v15-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
    unicode-range: U+30-39; /* 숫자 0~9 */
  font-weight: 500;
  src: url('./fonts/outfit-v15-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  src: url('./fonts/outfit-v15-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 700;
  src: url('./fonts/outfit-v15-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 800;
  src: url('./fonts/outfit-v15-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 900;
  src: url('./fonts/outfit-v15-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root{
	--color-m:#00B86E;
	--color-s:#2F9A78;
  --color-ss:#1d7d93;
  --color-d:#06573d;
  --color-bg:#edfbf6;
	--color-point:#EF559F;
	--color-light:#f9f9f9;
	--color-none:#f5f5f5;
	--color-b:#e7e4e4;
  --color-border:#e7e4e4; /* 이 변수로 사용 */
  --color-red:#FF4040;
  --bg-blue:#e9f9ff;
  --bg-kakao:#FAE100;
  --bg-modify:#faab00;
  --bg-modify-hover:#e29c04;
  --bg-delete-hover:#d13737;
  --bg-gray:#aaa;
  --bg-gray-hover:#777;
  --radius:18px;
  --btn-height:40px;
  --btn-radius:5px;
  --gap:5px;
}

html{min-width:320px}
body{margin:0;padding:0;font-family:'Pretendard', sans-serif;color:#222;overflow-x:hidden}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family:'Pretendard', sans-serif}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
address{font-style:normal}
sub{font-size:1em}
ul, ol, dl, dt, dd{margin:0;padding:0;list-style:none}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle;font-size:1em}
input, button {margin:0;padding:0;font-family: 'Pretendard', sans-serif;font-size:1em}
input[type="submit"]{cursor:pointer}
button{cursor:pointer;background-color:transparent;border:0;color: #333;}
button:focus{outline:0}
button{cursor:pointer}
img{max-width:100%}
textarea, select{font-family:'Pretendard', sans-serif;font-size:1em}
select{margin:0}
table{border-collapse:collapse}
table caption{display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0 !important;line-height:0;border:0 !important;overflow:hidden !important}
table,td,th{border-spacing:0}
em, address{font-style:normal}
/*select::-ms-expand{display:none} select design 시에만 풀기 */
p {margin:0;padding:0;word-break:keep-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#333;text-decoration:none;transition:.3s}
a:hover{text-decoration:none}
*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
input::placeholder,
textarea::placeholder{color:#a4a4a4}
input:disabled,
select:disabled{background-color:var(--color-none)}
input:read-only{background-color:var(--color-none)}
textarea:read-only{background-color:var(--color-none)}
select:read-only{background-color:var(--color-none)}
input[type="text"],input[type="password"], textarea{transition:.3s ease-in-out;outline:none}
input[type="text"]:focus,
input[type="password"]:focus,textarea:focus,select:focus{box-shadow: 0 0 5px #a7dfc8;border: 1px solid var(--color-m)}

/* UI */
.txt-under{border-bottom:1px solid #000;padding-bottom:3px}
.txt-info{margin:10px 0}
.txt-info.bg{background-color:var(--bg-blue);padding:10px}
.txt-info p{position:relative;padding-left:20px;color:var(--color-blue)}
.txt-info p::before{position:absolute;font-family:'xeicon';content:"\e9a7";left:0;top:.05em;font-size:1.1em}
.list-data-none{text-align:center;display:flex;align-items:center;justify-content:center}
.ico-new{color:#ff4582;font-size:14px;font-weight:200}
.ico-badge{display:inline-block;background-color:#f0f5fb;font-size:13px;color:#0091ea;padding:2px 15px 3px 15px;border-radius:20px;text-align:center}
.ico-scroll{z-index:20;text-align:center;animation:scrollUp 1s ease infinite;transition:.3s}

.btn-bg{position:relative;cursor:pointer;display:inline-block;border:1px solid var(--color-m);padding:5px;min-width:120px;color:var(--color-m);font-size:1rem;overflow:hidden;transition:.3s;height:var(--btn-height);border-radius:var(--btn-radius)}
.btn-bg::before,
.btn-bg::after{position:absolute;display:block;content:''}
.btn-bg,
.btn-bg::before,
.btn-bg::after{transition:.3s}
.btn-bg:hover{color:#fff}
.btn-bg::after{top:0;left:0;width:100%;height:100%;-webkit-transform: scale(.5);transform:scale(.5)}
.btn-bg:hover::after{background-color:var(--color-m);-webkit-transform:scale(1);transform:scale(1)}
.btn-bg span{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:5px;position:relative;z-index:10}
.btn-bg.btn-save{background-color:var(--color-m)}
.btn-bg.btn-save span{color:#fff}
.btn-bg.btn-save:hover{border-color:var(--color-d)}
.btn-bg.btn-save:hover::after{background-color:var(--color-d)}
.btn-bg.btn-modify{background-color:var(--bg-modify);border-color:var(--bg-modify)}
.btn-bg.btn-modify span{color:#fff}
.btn-bg.btn-modify:hover{background-color:var(--bg-modify-hover)}
.btn-bg.btn-modify:hover::after{background-color:var(--bg-modify-hover)}
.btn-bg.btn-delete{background-color:var(--color-red);border-color:var(--color-red)}
.btn-bg.btn-delete span{color:#fff}
.btn-bg.btn-delete:hover{border-color:var(--bg-delete-hover)}
.btn-bg.btn-delete:hover::after{background-color:var(--bg-delete-hover)}
.btn-bg.btn-gray{background-color: var(--bg-gray); border-color: var(--bg-gray); color: white;}
.btn-bg.btn-gray:hover::after{background-color:var(--bg-gray-hover)}
.btn-bg.btn-gray.disabled{pointer-events: none;}

.check-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.check-box{position:relative;padding-left:25px;text-align:left;flex-shrink:0}
.check-box input[type="checkbox"]{display:none}
.check-box input[type="checkbox"] + label{cursor:pointer}
.check-box input[type="checkbox"] + label:before{position:absolute;background-color:#fff;top:6px;left:0;display:inline-block;cursor:pointer;width:16px;height:16px;border-radius:0;border:1px solid var(--color-b);content:""}
.check-box input[type="checkbox"]:checked + label:before{content:"\e929";font-family:'xeicon';font-size:0.9rem;color:#fff;background-color:var(--color-m);border-color:var(--color-m);text-align:center}
.check-box input[type="checkbox"]:disabled + label:before{background-color: var(--color-none);}
.check-box.txt-none{text-align:center;padding:0;width:20px;height:20px;margin:0 auto}
.check-box.txt-none label{text-indent:-999%;overflow:hidden;font-size:0}
.check-box.txt-none input[type="checkbox"]:checked + label:before{font-size:1rem;text-indent:0}


.radio-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.radio-box{position:relative;flex-shrink:0}
.radio-box input[type="radio"]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.radio-box input[type="radio"] + label{display:block;position:relative;padding-left:20px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}
.radio-box input[type="radio"] + label:before{content:'';position:absolute;left:0;top:2px;width:16px;height:16px;text-align:center;background: #fff;border:1px solid var(--color-b);border-radius:50%}
.radio-box input[type="radio"]:checked + label:after{content:'';position:absolute;top:7px;left:5px;width:6px;height:6px;background:var(--color-m);border-radius:50%}

.input-text{border:1px solid var(--color-b);padding:5px;width:100%;height:45px;border-radius:var(--btn-radius)}
select.input-text{border:1px solid var(--color-b);padding:5px;width:100%;-webkit-appearance:none;-moz-appearance: none;appearance:none;background: url('../img/comm/ico-select.png') #fff calc(100% - 5px) center no-repeat}
textarea.input-text{height:120px}
/*
.item-dot > li{position:relative;padding-left:15px}
.item-dot > li:not(:last-child){margin:5px 0}
.item-dot > li:before{display:block;content:"";position:absolute;top:10px;width:4px;height:4px;background-color:#fff;left:0;border-radius:50%}
.item-dot > li:last-child{margin-bottom:0}

.item-hipen > li{position:relative;padding-left:15px}
.item-hipen > li:not(:last-child){margin:5px 0}
.item-hipen > li:before{display:block;content:"-";position:absolute;top:0;left:0}

.item-square > li{position:relative;padding-left:15px}
.item-square > li:not(:last-child){margin:5px 0}
.item-square > li:before{width:4px;height:4px;background-color:#a2a2a2;position:absolute;display:block;content:"";left:0;top:10px}
*/
.board-subject{width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.board-con{display:block;text-overflow:ellipsis;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}
.board-img{position:relative;overflow:hidden}
.board-img img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:.3s;object-fit:cover;width:100%;min-width:100%;min-height:100%}

.hexagon{width:100px;height:55px;background:pink;position:relative}
.hexagon:before{content:"";position:absolute;top:0px;left:-16px;width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-right:16px solid pink}
.hexagon:after{content:"";position:absolute;top:0;right:-16px;width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-left:16px solid pink}

/* swiper */
.swiper-button-prev,
.swiper-button-next{background:none;width:auto;height:auto;margin-top:0;transform:translateY(-50%)}

/* layout */
.sub-con .root_daum_roughmap .wrap_controllers{display:none}
.sub-con .root_daum_roughmap{width:100%;height:580px}
.sub-con .root_daum_roughmap .wrap_map{height:100%}
.layout-flex{display:flex;align-items:center;justify-content:space-between}
.layout-flex.align-start{align-items:flex-start}
.layout-flex.align-end{align-items:flex-end}
.layout-flex.justify-start{justify-content:flex-start}
.bg-cover{background:url('') center no-repeat;background-size:cover}

.sound-only{display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0 !important;line-height:0;border:0 !important;overflow:hidden !important}

/* color */
.c-main{color:var(--color-m)}
.c-sub{color:var(--color-s)}
.c-point{color:var(--color-point)}
.c-light{color:var(--color-light)}
.c-black{color:#000}
.c-red{color:#ff0000}

/* sort */
.txt-c{text-align:center}
.txt-l{text-align:left}
.txt-r{text-align:right}

/* response */
.mode-mobile{display:none}
.mode-pc{display:block}

/*btn-wrap*/
.btn-wrap{display: flex; flex-wrap: wrap; gap: 8px;}
.btn-center-flex{display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 20px;}

.flex-1{flex: 1;}

@media (max-width:1024px){
  :root{
    --radius:12px;
    --btn-height:40px
  }

  .btn-bg{min-width:80px}

  .check-box input[type="checkbox"] + label:before{top: 2px;}
}

.calcAmt {text-align: right !important;}