@charset "utf-8";
:root { --main-color:#3572EF; --border-color:#e5e7eb; --border-hover-color:#0994c8; --btn-bg-color:#0994c8; --box-shadow:2px 3px 7px -2px rgba(0, 0, 0, 0.1); } 
:focus { outline:1px dashed #333; } 

/* CSS Document */
 * { box-sizing: border-box; } 
html,body,div,span,object,h1,h2,h3,h4,h5,h6,p,a,abbr,address,cite,em,img,strong,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,hgroup,menu,nav,section,summary,audio,video { margin:0; padding:0; border:0; font-size:inherit; font-family:inherit; vertical-align:baseline; } 

html { overflow-y:scroll; } 
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,label { margin:0px; padding:0px; } 
body,input,div,dt,dd,li,th,td,textarea,p,select,option,span { font-family:'Pretendard', 'AppleGothic', 'sans-serif'; font-size: 16px; font-weight: 400; text-decoration:none; color:#333; } 
strong { font-weight:bold; } 

/* link */
a { color:#222; text-decoration:none; transition:all .3s; } 

address, caption, cite, code, dfn, em, th, var { font-style:normal; font-weight:normal; } 
dl, dt, dd, ul, ol, li { list-style-type:none; list-style-image:none; } 
fieldset,legend { border-bottom:0px; border-left:0px; border-top:0px; border-right:0px; } 
input, select, textarea, label { vertical-align:middle; font-family:'Pretendard'; font-size:15px; } 
img { border-bottom:medium none; border-left:medium none; border-top:medium none; border-right:medium none; vertical-align:top; } 
caption { position:absolute; padding-bottom:0px; margin:0px; padding-left:0px; width:0px; padding-right:0px; height:0px; font-size:0px; overflow:hidden; padding-top:0px; } 
br { letter-spacing:0px; } 
fieldset { border:0; } 
hr { display:none; } 
button { border:0; cursor:pointer; overflow:visible; background:none; } 
table { border-collapse: collapse; border-spacing:0; } 
table.separate { border-collapse: separate; } 
table.separate td { border-left: 0 !important; } 
table.separate th, table.separate td { border-left: 0; } 

/* 기타태그*/
big, s, small, strike, tt, center, header, nav, article, footer, address , aside ,menu ,section, i { display:block; } 
comment { display:none; } 
legend { position:absolute; width:0; height:0; font-size:0; line-height:0; text-indent:-9999px; overflow:hidden; } 
fieldset { border:none; } 

.blind, .hidden, .hidd { position:absolute; width:0; height:0; font-size:0; line-height:0; text-indent:-9999px; overflow:hidden; } 

input.textbox, textarea.textbox { margin:3px 0; padding:3px; } 
input, textarea, select { font-family:inherit; line-height:22px; padding:3px; /*margin:1px 0; */ } 
input::-ms-input-placeholder { color:#ddd; } 
input::-webkit-input-placeholder { color:#ddd; } 
input::-moz-placeholder { color:#ddd; } 
textarea::-webkit-input-placeholder { color:#ddd; } 

input[type=text]::placeholder { color:#777 } 
input[type=text], input[type=password] { background:#fff; width:250px; height: 40px; padding:2px 0; color:#454545; text-indent:7px; border:1px solid #a7a9ac; border-radius:5px; transition:all .3s; } 
input[type=number]{ background:#fff; width:100px; height: 40px; padding:2px 0; color:#454545; text-indent:7px; border:1px solid #a7a9ac; border-radius:5px; transition:all .3s; } 
input[type=text]:hover, input[type=password]:hover ,input[type=number]:hover, textarea:hover { border:1px solid #32798f; } 
input[type=submit] { cursor:pointer; background: radial-gradient(120% 120% at 0% 0%, rgba(37, 161, 233, .25) 0%, rgba(35, 129, 132, .0) 50%), linear-gradient(135deg, #006a67, #092c2b);color:#fff; border:0; padding:9px 25px; font-weight:bold; border-radius:5px; transition:all .3s; } 
input[type=submit]:hover { background:#505c68; } 
textarea { border:1px solid #a7a9ac; border-radius:5px; padding:6px; transition:all .3s; } 
input[type=number] { -moz-appearance: textfield; /* Firefox */}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; /* Chrome, Safari, Edge */
 margin: 0; } 

/* ========== CHECKBOX (label 안에 input) ========== */
/* 진짜 체크박스 숨김 */
label > input[type="checkbox"] { position: absolute; opacity: 0; width: 0; height: 0; } 
/* 체크박스를 '포함하는' 라벨에만 스타일 적용 */
label:has(> input[type="checkbox"]) { display: inline-flex; align-items: center; position: relative; cursor: pointer; user-select: none; padding-left: 28px; /* 가짜 박스 자리 */
 font-size: 0.95rem; line-height: 1.4; margin-right: 12px; } 
/* 가짜 박스도 '체크박스를 포함하는 라벨'에만 */
label:has(> input[type="checkbox"])::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; border-radius: 5px; border: 1px solid #c8cad2; background: #fff url('../images/common/check_icon.png') no-repeat 0 0; box-sizing: border-box; transition: border-color .12s ease, background-color .12s ease; } 
/* 체크됨 */
label:has(> input[type="checkbox"]:checked)::before { border-color: #4876ef; background-color: #4876ef; background-position: -18px 0; /* 스프라이트 좌표(필요시 조정) */ } 
/* 포커스/비활성 */
label:has(> input[type="checkbox"]:focus)::before { outline: 2px dashed #333; outline-offset: 2px; } 
label:has(> input[type="checkbox"]:disabled) { opacity: .5; cursor: not-allowed; } 

/* ========== RADIO (input 다음 형제 label) ========== */
/* 진짜 라디오 숨김 */
input[type="radio"] { position: absolute; opacity: 0; width: 0; height: 0; } 
/* 라디오 전용 라벨(체크박스 라벨과 전혀 겹치지 않음) */
input[type="radio"] + label { font-size: 0.95rem; display: inline-block; min-height: 24px; padding-left: 28px; /* 아이콘 자리 */
 line-height: 24px; background: url('../images/common/radio_btn.png') no-repeat 0 50%; cursor: pointer; user-select: none; margin-right: 12px; } 
/* 체크됨 */
input[type="radio"]:checked + label { background-image: url('../images/common/radio_btn_check.png'); } 
/* 포커스/비활성 */
input[type="radio"]:focus + label, input[type="radio"]:focus-visible + label { outline: 2px dashed #333; outline-offset: 2px; } 
input[type="radio"]:disabled + label { opacity: .5; cursor: not-allowed; } 
label+input, label+select { margin-left: 10px; } 
select { width:100px; height:40px; /*background:url('/images/common/btn_arr_down.gif') no-repeat 85% 50% #fff; background-size:10px; */border:1px solid #a7a9ac; border-radius:5px; transition:all .3s; /*-webkit-appearance:none; -moz-appearance:none; appearance:none; */ } 
select:hover, select:focus { border:1px solid #32798f; } 
input::placeholder { color:#686868; } 
label.blind { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); } 

/*사파리기본스타일 제거*/
input, textarea, button { appearance: none; -moz-appearance: none; -webkit-appearance: none; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; } 
input[type='radio'] { appearance:auto; } 



/* Pretendard */
@font-face { font-family: 'Pretendard'; font-weight: 100; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Thin.eot'); src: url('../fonts/Pretendard/Pretendard-Thin.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Thin.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Thin.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Thin.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 200; font-style: normal; src: url('../fonts/Pretendard/Pretendard-ExtraLight.eot'); src: url('../fonts/Pretendard/Pretendard-ExtraLight.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-ExtraLight.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-ExtraLight.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-ExtraLight.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 300; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Light.eot'); src: url('../fonts/Pretendard/Pretendard-Light.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Light.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Light.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Light.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 400; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Regular.eot'); src: url('../fonts/Pretendard/Pretendard-Regular.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Regular.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Regular.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Regular.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 500; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Medium.eot'); src: url('../fonts/Pretendard/Pretendard-Medium.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Medium.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Medium.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Medium.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 600; font-style: normal; src: url('../fonts/Pretendard/Pretendard-SemiBold.eot'); src: url('../fonts/Pretendard/Pretendard-SemiBold.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-SemiBold.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-SemiBold.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-SemiBold.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 700; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Bold.eot'); src: url('../fonts/Pretendard/Pretendard-Bold.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Bold.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Bold.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Bold.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 800; font-style: normal; src: url('../fonts/Pretendard/Pretendard-ExtraBold.eot'); src: url('../fonts/Pretendard/Pretendard-ExtraBold.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-ExtraBold.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-ExtraBold.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-ExtraBold.ttf') format("truetype"); font-display: swap; } 
 @font-face { font-family: 'Pretendard'; font-weight: 900; font-style: normal; src: url('../fonts/Pretendard/Pretendard-Black.eot'); src: url('../fonts/Pretendard/Pretendard-Black.eot?#iefix') format('embedded-opentype'),
 url('../fonts/Pretendard/Pretendard-Black.woff2') format('woff2'),
 url('../fonts/Pretendard/Pretendard-Black.woff') format('woff'),
 url('../fonts/Pretendard/Pretendard-Black.ttf') format("truetype"); font-display: swap; } 

 
/* 어그로체 */
@font-face { font-family: 'SBAggro'; font-weight: 300; font-style: normal; src: url('../fonts/SBAggro/SBAggro_Light.eot'); src: url('../fonts/SBAggro/SBAggro_Light.eot?#iefix') format('embedded-opentype'),
 url('../fonts/SBAggro/SBAggro_Light.woff2') format('woff2'),
 url('../fonts/SBAggro/SBAggro_Light.woff') format('woff'),
 url('../fonts/SBAggro/SBAggro_Light.ttf') format("truetype"); font-display: swap; } 
@font-face { font-family: 'SBAggro'; font-weight: 500; font-style: normal; src: url('../fonts/SBAggro/SBAggro_Medium.eot'); src: url('../fonts/SBAggro/SBAggro_Medium.eot?#iefix') format('embedded-opentype'),
 url('../fonts/SBAggro/SBAggro_Medium.woff2') format('woff2'),
 url('../fonts/SBAggro/SBAggro_Medium.woff') format('woff'),
 url('../fonts/SBAggro/SBAggro_Medium.ttf') format("truetype"); font-display: swap; } 
@font-face { font-family: 'SBAggro'; font-weight: 700; font-style: normal; src: url('../fonts/SBAggro/SBAggro_Bold.eot'); src: url('../fonts/SBAggro/SBAggro_Bold.eot?#iefix') format('embedded-opentype'),
 url('../fonts/SBAggro/SBAggro_Bold.woff2') format('woff2'),
 url('../fonts/SBAggro/SBAggro_Bold.woff') format('woff'),
 url('../fonts/SBAggro/SBAggro_Bold.ttf') format("truetype"); font-display: swap; } 