@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');
}

:root{
	--color-m:#2e3192;
	--color-s:#00aeef;
	--color-p:#f37739;
	--color-h:#252767;
	--color-font:#333;
	--color-red:#ff0000;
	--color-blue:#4374d1;
	--color-none:#f5f5f5;
	--color-border:#e7e4e4;
	--color-light:#e0dcdc;
	--bg-blue:#e9f9ff;
	--bg-point:#fdf4ec;
	--bg-info:#fdf4ec;
	--bg-modify:#faab00;
  	--bg-modify-hover:#e29c04;
  	--bg-delete-hover:#d13737;
	--radius:10px;
	--btn-height:45px;
	--btn-radius:5px;
	--gap:5px;
}

html{min-width:320px}
body{margin:0;padding:0;font-family:'Pretendard', sans-serif;color:var(--color-font)}
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}
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:var(--color-font);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:var(--color-light);font-size:.875rem;font-weight:normal}
input:disabled,
select:disabled{background-color:var(--color-none)}
input: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 #9ed4ff;border: 1px solid var(--color-m)}

.txt-under{border-bottom:1px solid var(--color-font);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}
.txt-warning{display:block;margin:5px 0;position:relative;padding-left:20px;color:var(--color-p)}
.txt-warning::before{position:absolute;font-family:'xeicon';content:"\ea2d";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:var(--color-border);font-size:13px;color:var(--color-m);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-basic{background-color:var(--color-m);color:#fff;border-radius:var(--btn-radius);height:var(--btn-height);min-width:150px;display:flex;align-items:center;justify-content:center;transition:.3s}
.btn-basic:hover{background-color:var(--color-hover)}

.btn-bg{position:relative;cursor:pointer;display:inline-block;border:1px solid var(--color-m);padding:5px;min-width:150px;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-skew{position:relative;cursor:pointer;display:inline-block;border:1px solid var(--color-m);padding:5px;min-width:150px;color:var(--color-m);font-size:1rem;overflow:hidden;transition:.3s;height:var(--btn-height);border-radius:var(--btn-radius)}
.btn-skew::after{position:absolute;transition: all 0.3s;height: 100%;left: -35%;top: 0;transform: skew(-50deg);transition-duration:.6s;transform-origin: top left;width:0;content:""}
.btn-skew:hover span{position:relative;z-index:1;color:#fff}
.btn-skew:hover::after{background:var(--color-m);height:120%;width:185%}

.btn-border{position:relative;cursor:pointer;display:inline-block;border:1px solid var(--color-m);padding:5px;min-width:150px;background-color:var(--color-m);font-size:1rem;transition:.3s;height:var(--btn-height);border-radius:var(--btn-radius);color:#fff}
.btn-border span{display:flex;gap:5px;align-items:center;justify-content:center}
.btn-border::after{position:absolute;width:calc(100% + 8px);height:calc(100% + 8px);content:"";border:2px solid var(--color-m);top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:.3s;border-radius:var(--btn-radius);}
.btn-border:hover::after{opacity:1}
.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:50%;transform:translateY(-50%);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:1em;color:#fff;background-color:var(--color-m);border-color:var(--color-m);text-align:center}
.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-border);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-border);padding:5px;width:100%;height:var(--btn-height);font-size:1rem}
select.input-text{border:1px solid var(--color-border);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*/}

.item-dot{text-align:left}
.item-dot > li{position:relative;padding-left:10px;margin:5px 0}
.item-dot > li:before{display:block;content:"";position:absolute;top:.45em;width:4px;height:4px;background-color:var(--color-m);left:0;border-radius:50%}

.item-hipen{text-align:left}
.item-hipen > li{position:relative;padding-left:15px;margin:10px 0}
.item-hipen > li:before{display:block;content:"-";position:absolute;top:-.05em;left:0}

.item-square{text-align:left}
.item-square > li{position:relative;padding-left:10px;margin:10px 0}
.item-square > li:before{width:4px;height:4px;background-color:var(--color-m);position:absolute;display:block;content:"";left:0;top:.4em}

.item-num{counter-reset:section;text-align:left}
.item-num > li{position:relative;padding-left:35px;margin:10px 0}
.item-num > li::before{position:absolute;top:-4px;left:0;border:1px solid var(--color-m);font-weight:300;font-size:.875rem;background-color:var(--color-m);color:#fff;counter-increment:section;content: "0" counter(section);padding:2px;display:flex;align-items:center;justify-content:center;width:28px;aspect-ratio:1/1;border-radius:5px}

.item-num-one{counter-reset:section;text-align:left}
.item-num-one > li{position:relative;padding-left:35px;margin:10px 0}
.item-num-one > li::before{position:absolute;top:-4px;left:0;border:1px solid var(--color-m);font-weight:300;font-size:.875rem;background-color:var(--color-m);color:#fff;counter-increment:section;content: "0" counter(section);padding:2px;display:flex;align-items:center;justify-content:center;width:28px;aspect-ratio:1/1;border-radius:5px;border-radius:50%}

.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-btn{cursor:pointer}

/* 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;gap:5px;margin:20px 0}
.layout-flex.align-start{align-items:flex-start}
.layout-flex.align-end{align-items:flex-end}
.layout-flex.justify-start{justify-content:flex-start}
.layout-flex.justify-center{justify-content:center}
.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-p)}
.c-light{color:var(--color-light)}
.c-black{color:#000}
.c-red{color:var(--color-red)}

/* 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}
 
@media (max-width:1024px){
	:root{
		--btn-height:40px;
	}

	.btn-bg{min-width:80px}
	.item-num > li::before{width:24px}
}
