@charset "utf-8";

@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')
}

@font-face {
	font-family: 'HakgyoansimBareondotum';
	font-weight: 400;
	font-display: swap;
	src: local('HakgyoansimBareondotumR'), url(../../fonts/HakgyoansimBareondotumR.woff2) format('woff2')
}
@font-face {
	font-family: 'HakgyoansimBareondotum';
	font-weight: 600;
	font-display: swap;
	src: local('HakgyoansimBareondotumB'), url(../../fonts/HakgyoansimBareondotumB.woff2) format('woff2')
}

:root{
	--color-m:#6B43FA;
	--color-s:#F4F2FF;
	--color-d: #28117B;
	--color-guide: #d0131c;
	--color-guide-20: rgba(208, 19, 28, 0.2);
	--line-g: #d9d8d5;
	--color-none: #EBEBEB;
}

body{margin:0;padding:0;font-family:'Pretendard', sans-serif;color:#333; font-size: 16px;}
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}
/* {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;line-height: 1.2;}
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{color: #999999; background-color:var(--color-none)}
input:read-only{color: #999999; background-color:var(--color-none)}
input[type="text"],input[type="password"], textarea{transition:.3s ease-in-out;outline:none}

/* UI */
.txt-under{border-bottom:1px solid #000;padding-bottom:3px}
.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}

.check-box{position:relative;margin: 0 4px;padding-left:20px;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:#f5f5f3;top:50%;transform:translateY(-50%);left:0;display:inline-block;cursor:pointer;width:16px;height:16px;border-radius:0;border:1px solid #dddddc;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)}
.check-box input[type="checkbox"]:disabled ~ label:before{background-color: #f3f3f3;}
.check-box input[type="checkbox"]:disabled:checked ~ label:before{background-color: var(--color-b); border-color: var(--color-b);}


.radio-box{position:relative; margin: 0 8px;}
.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; font-size: 14px; color:#333;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: #f5f5f3;border:1px solid #dddddc;border-radius:50%}
.radio-box input[type="radio"]:checked + label:before{background-color: var(--color-m); border-color: var(--color-m);}
.radio-box input[type="radio"]:checked + label:after{content:'';position:absolute;top:7px;left:5px;width:6px;height:6px;background:white;border-radius:50%}


.radio-box input[type="radio"] + label.icon{padding-left: 32px; background-position: 16px center; background-repeat: no-repeat;}
.check-box input[type="checkbox"] ~ label.icon{padding-left: 20px; background-position: 0 center; background-repeat: no-repeat;}
label.icon1{background-image: url(../../images/home/ico-male.png);}
label.icon2{background-image: url(../../images/home/ico-female.png);}
label.icon3{background-image: url(../../images/home/ico-home.png);}
label.icon4{background-image: url(../../images/home/ico-building.png);}
label.icon5{background-image: url(../../images/home/ico-visit.png);}


.input-text{border:1px solid #00000021;padding:10px;width:100%;height:28px; font-size: 14px; color: #212D43; border-radius: 4px;}
select.input-text{border:1px solid #00000021;padding:4px 10px;width:100%;height:28px;font-size: 14px; -webkit-appearance:none;-moz-appearance: none;appearance:none;background: url('../../images/home/ico-dropdownArrow.png') #fff calc(100% - 10px) center no-repeat; border-radius: 4px;}
select.input-text:focus-visible{outline: none;}

/*라벨 비활성화*/
.label-hidden{position: absolute; width: 1px !important; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;}
.label-view{width: 56px;}
.label-full{width: 100%;}

.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)}

/* 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}

/*img-object-fit*/
.img-cover{width: 100%; height: 100%; object-fit: cover;}
.img-contain{width: 100%; height: 100%; object-fit: contain;}

/*말줄임표*/
.ellipsis{overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;}

/*버튼*/
.btn-full-wrap{display: flex; flex-direction: column; gap: 12px; margin-top: 12px;}
.btn-common{font-weight: 500; display: flex; align-items: center; justify-content: center; position: relative; padding: 12px 15px; flex: 1; height: 52px; color: #333; background-color: white; border: 1px solid #d5d7d7; border-radius: 4px; transition: 0.3s;}
.btn-common:hover{background-color: #f7f7f7;}
.btn-common.bg-main{background-color: var(--color-m); border-color: var(--color-m); color: white;}
.btn-common.bg-main:hover{background-color: #502bd3; border-color: #502bd3;}
.btn-common.bg-gray{background-color: #AAA2C4; border-color: #AAA2C4; color: white;}
.btn-common.bg-gray:hover{background-color: #948bb1; border-color: #948bb1;}

/*map-hover*/
.map-hover{position: fixed; top: 50%; left: 50%;}
.map-hover-inner{position: relative; z-index: 50; width: fit-content; color: #303030; background-color: white; border-radius: 8px; overflow: hidden;}
.map-hover-title{padding: 3px; font-weight: 700; text-align: center;}
.map-hover-hr{width: 100%; height: 1px; margin: 0; background-color: #d0d0d0;}
.map-hover-cont{padding: 3px;}
.leaflet-container a{color: #333;}

.jconfirm .jconfirm-holder{max-width: 500px; width: calc(100% - 40px); margin: auto;}
.jconfirm .jconfirm-box div.jconfirm-title-c {padding-bottom: 5px !important; border-bottom: 1px solid #ccc}
.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content {padding-top: 5px !important;}

.height-500{max-height: 500px; overflow-y: auto;}
.height-150{max-height: 150px; overflow-y: auto;}

@media (max-width:1400px){
	.radio-box {margin: 0 4px;}
}
@media (max-width:1200px){
	.radio-box {margin: 0;}
}
@media (max-width:640px){
	body{font-size: 14px;}
}