@charset "utf-8";

@font-face {
    font-family: 'Gmarket Sans';
    font-weight: 300;
    font-style: normal;
    font-display: swap;
    src: url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansLight.woff2') format('woff2'), 
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansLight.woff') format('woff'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansLight.otf') format('opentype'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansLight.ttf') format('truetype');
}
@font-face {
    font-family: 'Gmarket Sans';
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    src: url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansMedium.woff2') format('woff2'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansMedium.woff') format('woff'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansMedium.otf') format('opentype'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansMedium.ttf') format('truetype');
}
@font-face {
    font-family: 'Gmarket Sans';
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    src: url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansBold.woff2') format('woff2'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansBold.woff') format('woff'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansBold.otf') format('opentype'),
         url('https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSansBold.ttf') format('truetype');
}
html {
    font-size: 16px; /* 1rem = 16px */
}

/* 태블릿 화면 크기 */
@media (max-width: 768px) {
    html {
        font-size: 14px; /* 1rem = 14px */
    }
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	/* font-size: 100%; */
	font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  	font-style: normal;
  	font-weight:300;
	vertical-align: baseline;
  	letter-spacing:-0.3pt;
	box-sizing: border-box;
	word-break: keep-all;
	word-wrap: break-word;
	white-space: normal;
	color:#333;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1.5;
}
ol, ul {
	list-style: none;
    padding:0;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

p{margin-bottom:0;}

html a{display:inline-block;text-decoration: none;cursor:pointer;}
/* div, p, span{cursor:inherit;user-select: none;} */

/* 스크롤바 설정*/
header *::-webkit-scrollbar{width: 6px;height:6px;}
/* 스크롤바 막대 설정*/
header *::-webkit-scrollbar-thumb{height:auto;background-color:#b4b7bd;/* 스크롤바 둥글게 설정*/border-radius: 10px;    }
/* 스크롤바 뒷 배경 설정*/
header *::-webkit-scrollbar-track{background-color: rgba(0,0,0,0);}
/* textarea:disabled 스크롤바 뒷 배경 설정*/
textarea:disabled::-webkit-scrollbar-track, 
input:disabled::-webkit-scrollbar-track, 
textarea:read-only::-webkit-scrollbar-track, 
input:read-only::-webkit-scrollbar-track {
  background-color: #efefef;
}


:root {
    --bs-primary: #00479d; 
}
.btn-primary {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.btn-primary:hover, .btn-primary:focus {
    background-color: #003b8e; 
    border-color: #003b8e; 
}
.btn-outline-primary{
    border-color: var(--bs-primary);
}
.btn-outline-primary:hover, .btn-outline-primary:focus {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.btn-check:active+.btn-outline-primary, .btn-check:checked+.btn-outline-primary, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show, .btn-outline-primary:active{
    background-color: #003b8e;
    border-color: #003b8e
}
.btn-outline-primary{
    color: #003b8e
}
.text-primary {
    color: #003b8e !important;
}
.bg-primary {
    background-color: #003b8e !important;
}

a.btn, label.btn, span.btn{display:flex;align-items:center;justify-content:center;}
.form-control[type=file]{line-height: 2;}
.btn{min-height:45px;}
input, select{min-height:45px}
input[type=radio], input[type=checkbox]{min-height:auto;}
.list-txt{margin-top:0.8rem}
.list-txt > li {position: relative;padding-left:14px;font-size:1rem;word-break: keep-all;}
.list-txt > li + li{margin-top:4px}
.list-txt > li:before {content:'-';display: inline-block;position: absolute;top:0px;left:0px;}
.list-txt.dot > li {position: relative;padding-left:14px;font-size:1rem;word-break: keep-all;}
.list-txt.dot > li + li{margin-top:4px}
.list-txt.dot > li:before {content:'';display: inline-block;width:4px;height:4px;background:#00479d;border-radius:50%;position: absolute;top: 10px;left:4px;}
/*input type number 스핀 제거*/
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] {
  -moz-appearance: textfield;
}
.file-upload-wrap{width:100%;display:inline-flex;align-items:center;cursor:pointer;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}
.file-upload-wrap input[type="file"] {display: none;}
.file-upload-button{font-weight:400;min-width:100px;border-right:1px solid #ddd;border-top-right-radius:0;border-bottom-right-radius:0;
font-weight:500;background:#f4f4f4}
.file-upload-wrap.disabled, .file-upload-wrap.readonly {background:#e9ecef;pointer-events: none;}
.file-name-wrap{display:flex;align-items:center;min-width:0;flex:1}
.file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:0.8rem}
.clear-file{margin-right:1rem;font-size:1.25rem;background:none;border:none;color:#888;cursor:pointer;flex-shrink:0}
select:has(option[value=""]:checked) {color: #777777;}
select:invalid {color: #777777;}
.form-select:disabled{background-image:none}