@charset "utf-8";

/*
 *
 * file : 기본 설정 및 초기화
 * date : 251024
 * writer : eun
 *
 */
@font-face { font-family: 'yangjin'; src: url('./fonts/yangjin.woff') format('woff'); font-weight: normal; font-style: normal}
@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');
}

/* dm-sans-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: 'DM Sans';
font-style: normal;
font-weight: 400;
src: url('./fonts/dm-sans.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: 'DM SansI';
font-style: normal;
font-weight: 900;
src: url('./fonts/dm-sans-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root{
	--color-m:#022569;
	--color-hover:#02163d;
	--color-s:#004592;
	--color-w:#0060C3;
	--color-ww:#2FC7FF;
	--color-point:#fefefe;
	--color-light:#f9f9f9;
	--color-none:#f5f5f5;
	--color-b:#e7e4e4;
	--font-point:'yangjin';
	--bg-grd:linear-gradient(to right, #e92e96, #7d439d);
	--color-border:#c9d5f7;
	--color-line:#d6e0ff;
	--color-p:#ff6363;
}

html{min-width:320px}
body{margin:0;padding:0;font-family:'Pretendard', sans-serif;color:#111}
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}
label, 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)}
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)}

/* UI */
.txt-under{border-bottom:1px solid #000;padding-bottom:3px}
.txt-info{color:var(--color-w);position:relative;padding-left:20px;text-align:left;margin:5px 0;display:block}
.txt-info::before{font-family:'xeicon';content:"\e9a7";position:absolute;left:0;top:1px}
.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:10px 15px;color:#004b9f;font-size:1rem;overflow:hidden;transition:.2s;border-radius:10px 0}
.btn-bg:after{position: absolute;transition: all .2s;height: 100%;left:-15%;top: 0;transform: skew(-50deg);transition-duration:.4s;transform-origin: top left;width: 0;content: ''}
.btn-bg:hover span{position:relative;z-index:1;color:#fff}
.btn-bg:hover:after{background:var(--color-m);height:120%;width:185%}
.btn-bg span{display:flex;align-items:center;gap:5px;justify-content:center}
.btn-big{font-size:1.25rem;font-weight:bold;padding:20px 45px}
.btn-bg.btn-cancel{background-color:#babdbf;color:#fff;border-color:#babdbf}
.btn-bg.btn-cancel:hover::after{background-color:#9d9fa1}
.btn-bg.bg-white{background-color:#fff}

.check-wrap{display:flex;align-items:center;flex-wrap:wrap}
.check-wrap .check-box{margin:2px 20px 2px 0}
.check-box{position:relative;padding-left:30px;text-align:left}
.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:20px;height:20px;border-radius:0;border:1px solid #d2d2d2;content:""}
.check-box input[type="checkbox"]:checked + label:before{content:"\e929";font-family:'xeicon';font-size:1.1em;color:#fff;background-color:var(--color-m);border-color:var(--color-m)}
.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}
.radio-wrap .radio-box{margin:2px 20px 2px 0}
.radio-box{position:relative}
.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;color:#555;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:4px;width:16px;height:16px;text-align:center;background: #fff;border:1px solid #a2a2a2;border-radius:50%}
.radio-box input[type="radio"]:checked + label:after{content:'';position:absolute;top:9px;left:5px;width:6px;height:6px;background:#000;border-radius:50%}

.input-text{border:1px solid var(--color-b);padding:5px;width:100%;height:45px}
select.input-text{border:1px solid var(--color-b);padding:5px;width:100%;-webkit-appearance:none;-moz-appearance: none;appearance:none;background: url('/frame/img/comm/ico-select.png') #fff calc(100% - 5px) center no-repeat}
.textarea2{border:1px solid var(--color-b);padding:5px;width:100%;height:80px}
.textarea3{border:1px solid var(--color-b);padding:5px;width:100%;height:120px}

.item-dot > li{position:relative;padding-left:15px;margin:10px 0;text-align:left;word-break:keep-all}
.item-dot > li:before{display:block;content:"";position:absolute;top:8px;width:4px;height:4px;background-color:var(--color-m);left:0;border-radius:50%}

.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;text-align:left;margin:10px 0}
.item-square > li:before{width:4px;height:4px;background-color:var(--color-m);position:absolute;display:block;content:"";left:0;top:6px}

.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}
.layout-flex.justify-end{justify-content:flex-end}
.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 !important}
.txt-r{text-align:right}

/* response */
.mode-mobile{display:none}
.mode-pc{display:block}

@media (max-width:720px){
	.btn-big{padding:10px 15px}
	.sub-con .root_daum_roughmap{height:300px}
}