@charset "utf-8";

/* ==========================================================================
    Reset
   ========================================================================== */
*, *::before, *::after {margin: 0; padding: 0; box-sizing: border-box;}
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;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
html{scroll-behavior: smooth;}
body{-webkit-font-smoothing: antialiased;  -moz-osx-font-smoothing: grayscale; -webkit-tap-highlight-color: transparent;}
input, textarea, select, button, fieldset, img {border: 0;}
em, i, cite, dfn{font-style: normal;}
h1, h2, h3, h4, h5, h6 {font-weight: normal; font-size: 100%; line-height: normal;}
img {max-width: 100%; vertical-align:middle; -webkit-tap-highlight-color: rgba(0,0,0,0);}
legend, caption {visibility: hidden; overflow: hidden; position: absolute; width: 0; height: 0; line-height: 0;}
blockquote, q {quotes: none;}
blockquote::before, blockquote::after,
q::before, q::after {content: none;}
a, a:hover{color: inherit;}
a, a:link, a:visited, a:hover, a:active {text-decoration: none;}
select {-webkit-border-radius: 0; appearance:menulist-text;}
input[type=text], input[type=password], input[type=submit], select {-webkit-border-radius: 0; -webkit-appearance: none; appearance: none;}
input[type="checkbox"], input[type="radio"]{-webkit-appearance: none;}
input[type=checkbox], input[type=radio] {vertical-align: middle;}
input[type=image] {height: auto;}
input[type=file] {border: 0; background: none;}
textarea {overflow-y: auto;}
input[type="checkbox"], input[type="radio"], label{cursor:pointer}
ol, ul, li {padding: 0; margin: 0; list-style: none;}
label, select, input, button {font-family: inherit;}
input, textarea, select {color: inherit; font-family: inherit;}
table {border-collapse: collapse; border-spacing: 0;}
a, button, input, select{line-height: normal;}
b, strong{font-weight: bold;}
button {background: none; border: 0; padding: 0; margin:0; color: inherit; text-align: left; cursor: pointer; overflow:visible; white-space:nowrap;}
iframe, video {max-width: 100%; display: block;}

/* ==========================================================================
    Variable
   ========================================================================== */
:root {
    --main-gap: 130px;
    --gap01: 60px;
    --small-gap: 14px;
    --main-width: 1300px;
    --board-width: 925px;
    --basic-color: #000;
    --bb-color: #222;
    --basic-color01: #1e1e1e;
    --basic-color02: #FFF5F5;
    --black-color: #292E41;
    --desc-color: #697385;
    --bg-color: #fff;
    --bg-color01: #F8F4F4;
    --point-color01: #860000;
    --point-color0101: #470303;
    --border-color01: #e4e4e4;
    --border-color02: #e8e8e8;
    --border-color03: #F6E6E6;
    --header-height: 110px;
    --fixed-header-height: 80px;
    --topbar-height: 41px;
    --radius01: 10px;
    --radius02: 8px;
    --filter-white: brightness(0) invert(1);

    --form-bg: #f9f9f9;
    --form-point: #860000;
    --form-border: #e4e4e4;
    --form-gray: #f5f5f5;
    --form-focus: #222;
    --form-basic: #222;
    --form-desc: #697385;
    --form-chk: #860000;
    --form-radius: 5px;
    --form-lineheight: 22px;
    --form-fontcolor: #222;
    --form-placeholder: #bbb;
    --form-padding: 14px;
    --form-padding1: 14px 16px;
    --input-height: 40px;
    --form-gap: 10px;
    --textarea-height: 180px;
}
@media (width <= 1720px) {
    :root {
        --main-gap: 80px;
    }
}
@media (width <= 1420px) {
    :root {
        --main-gap: 60px;
        --header-height: 98px;
    }
}
@media (width <= 1280px) {
    :root {
        --main-gap: 40px;
    }
}
@media (width <= 1024px) {
    :root {
        --fixed-header-height: 76px;
    }
}
@media (width <= 860px) {
    :root {
        --main-gap: 20px;
    }
}
@media (width <= 640px) {
    :root {
        --fixed-header-height: 70px;
        --radius01: 6px;
        --form-padding : 12px;
        --form-gap: 8px;
    }
}

/* ==========================================================================
    Common Text
   ========================================================================== */
html {min-width: 320px; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; font-size: 16px;}
html:lang(ko){word-break: keep-all;}
body {font-family: 'Pretendard', 'Malgun Gothic', 'Apple SD Gothic Neo', sans-serif; line-height: 1.6; color: var(--basic-color); text-rendering: optimizeLegibility; background-color: var(--bg-color); }
::selection {background: var(--basic-color); color: #fff; }

/* ==========================================================================
    Form Setting
   ========================================================================== */
input, select, textarea{font-size: 16px;}
input[type="text"], input[type="password"], input[type="email"],
input[type="search"], input[type="tel"], input[type="url"],
input[type="number"], select, textarea{width: 100%; height: var(--input-height); padding: 0 var(--form-padding); outline: none; border: 1px solid var(--form-border); border-radius: var(--form-radius); background: #fff; box-sizing: border-box; vertical-align: middle;}
select{background: #fff url('/assets/site/img/board/arr-sel.svg') no-repeat calc(100% - 15px) center;}
textarea{height: auto; padding: 12px 14px; resize: none;}
select:focus,
textarea:focus,
input[type=text]:focus,
input[type=password]:focus {outline: none; border: 1px solid var(--form-focus); box-shadow: none;}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {-webkit-box-shadow: 0 0 0px 1000px rgba(0,0,0,0) inset !important;}
input:focus,
input:focus + label,
select:focus,
textarea:focus{border-color: var(--form-focus); background-color: #fff;}
input::placeholder,
textarea::placeholder{color: #D4D8E1;}
input:disabled,
input[readonly]:focus,
input[readonly]{border-color: var(--form-border); color: #777; background-color: #F3F3F3;}
/* ==========================================================================
  BOOTSTRAP & PLUGIN SETTING
   ========================================================================== */
.btn:focus,
button:focus{box-shadow: none !important; outline: none !important;}
.form-check-input:focus,
.form-control:focus,
.form-select:focus{box-shadow:none;}
.tab-pane{outline: 0;}
.accordion-button:not(.collapsed)::after{transform: rotate(-180deg);}
.form-label{margin-bottom: 0;}
/*Swiper*/
.swiper{user-select: none;}
.swiper-wrapper{transition-timing-function: ease-out;}
.swiper-slide{transform: translateZ(0); backface-visibility: hidden;}
.swiper-button-next:after,
.swiper-button-prev:after{content:""}
.swiper-button-next,
.swiper-button-prev{width: 35px; height: 70px;}
.swiper-button-next{right: var(--main-gap); background: url('/assets/site/img/common/mv_arr_next_w.png') no-repeat right center / 25px auto;}
.swiper-button-prev{left: var(--main-gap); background: url('/assets/site/img/common/mv_arr_prev_w.png') no-repeat left center / 25px auto;}
.swiper-button-prev:hover,
.swiper-button-prev:focus,
.swiper-button-next:hover,
.swiper-button-next:focus,
.swiper-pagination-bullet,
.swiper-pagination-bullet:hover,
.swiper-pagination-bullet:focus{outline:none}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled{opacity: .5;}
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal{bottom: 24px; display: flex; justify-content: center; gap: 8px;}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin: 0; width: 13px; height: 13px; border: 1px solid #fff; background-color: transparent; opacity: .6;}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active{background-color: #fff; opacity: 1;}
/*Aos*/
[data-aos=fade-up]{transform:translate3d(0,50px,0)}
[data-aos=fade-left]{transform:translate3d(50px,0,0)}
[data-aos=fade-right]{transform:translate3d(-50px,0,0)}

/* ==========================================================================
  COMMON RESPONSIVE
   ========================================================================== */
.dsp, .p-dsp, .tl-dsp, .tp-dsp, .m-dsp, .m-dspi{display: none}
.show-mobile{display: none;}

@media only screen and (max-width: 1200px) {
    .p-dsp{display: block}
    .p-dspn{display: none;}
}

@media (width <= 1024px) {
    .tl-dsp{display: block}
    .tl-dspn{display: none;}
}

@media (width <= 860px) {
    .tp-dsp{display: block}
    .tp-dspn{display: none;}
}

@media (width <= 640px) {
    .m-dsp{display: block}
    .m-dspn{display: none;}
    .show-mobile{display: block;}
}

/* ==========================================================================
    Scroll bar
   ========================================================================== */
.scrollbar-custom{overflow-y: auto;}
.scrollbar-custom::-webkit-scrollbar{width:3px;}
.scrollbar-custom::-webkit-scrollbar-track{background: #eee; border-radius: 2px;}
.scrollbar-custom::-webkit-scrollbar-thumb{background: #000; border-radius: 2px;}
.scrollbar-custom:hover::-webkit-scrollbar-thumb{background: #000;}

/* ==========================================================================
    Utility Class
   ========================================================================== */
/*Screen Reader Only*/
.sr-only {position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important;}
/* scr-none : 모바일 메뉴 사용 시, body scroll 금지 */
.scr-none {overflow-y: hidden; -ms-overflow-style: none; scrollbar-width: none; /* Firefox */}
.scr-none::-webkit-scrollbar {display: none;}
[hidden] {display: none;}
.clearfix::after{ content: ''; display: block; clear: both; }
.pre-box{white-space:pre-wrap; word-break:break-all;}
.fit-img{width: 100%; height: 100%; object-fit: cover}
.fit-wimg{width: 100%}
.line-break {flex-basis: 100%; height: 0;}
.ellips{text-overflow: ellipsis; white-space: nowrap; overflow: hidden; text-align: left}
.ellips-multi{display: -webkit-box; text-overflow: ellipsis; -webkit-box-orient: vertical; overflow: hidden; -webkit-line-clamp: 1;}
/*유튜브 반응형*/
.video-responsive{position: relative; height: 0; padding-bottom: 56.25%; overflow: hidden;}
.video-responsive iframe{position: absolute; left: 0; top: 0; height: 100%; width: 100%;}

.text_c {text-align:center;}
.text_l {text-align:left;}
.text_r {text-align:right;}
.float_r {float:right;}
.float_l {float:left;}

.clear {clear:both !important;}
.pat0{ padding-top:0 !important;}
.pab0{ padding-bottom:0 !important;}
.mat0{ margin-top:0 !important;}
.mab0{ margin-bottom:0 !important;}

.mat5{ margin-top:5px !important;}
.mar5{ margin-right:5px !important;}
.mab5{ margin-bottom:5px !important;}
.mal5{ margin-left:5px !important;}

.mat10{ margin-top:10px !important;}
.mar10{ margin-right:10px !important;}
.mab10{ margin-bottom:10px !important;}
.mal10{ margin-left:10px !important;}

.mat20{ margin-top:20px !important;}
.mar20{ margin-right:20px !important;}
.mab20{ margin-bottom:20px !important;}
.mal20{ margin-left:20px !important;}

.mat30{ margin-top:30px !important;}
.mar30{ margin-right:30px !important;}
.mab30{ margin-bottom:30px !important;}
.mal30{ margin-left:30px !important;}

.mat40{ margin-top:40px !important;}
.mar40{ margin-right:40px !important;}
.mab40{ margin-bottom:40px !important;}
.mal40{ margin-left:40px !important;}

.mat50{ margin-top:50px !important;}
.mar50{ margin-right:50px !important;}
.mab50{ margin-bottom:50px !important;}
.mal50{ margin-left:50px !important;}

.mat60{ margin-top:60px !important;}
.mar60{ margin-right:60px !important;}
.mab60{ margin-bottom:60px !important;}
.mal60{ margin-left:60px !important;}

.mat70{ margin-top:70px !important}
.mar70{ margin-right:70px !important}
.mab70{ margin-bottom:70px !important}
.mal70{ margin-left:70px !important}

.mat80{ margin-top:80px !important}
.mar80{ margin-right:80px !important}
.mab80{ margin-bottom:80px !important}
.mal80{ margin-left:80px !important}

.mat90{ margin-top:90px !important}
.mar90{ margin-right:90px !important}
.mab90{ margin-bottom:90px !important}
.mal90{ margin-left:90px !important}

.mat100{ margin-top:100px !important}
.mar100{ margin-right:100px !important}
.mab100{ margin-bottom:100px !important}
.mal100{ margin-left:100px !important}
@media screen and (max-width:1024px){
    .mat20{ margin-top:10px !important}
    .mab20{ margin-bottom:10px !important}

    .mat30{ margin-top:15px !important}
    .mab30{ margin-bottom:15px !important}

    .mat40{ margin-top:20px !important}
    .mab40{ margin-bottom:20px !important}

    .mat50{ margin-top:20px !important}
    .mab50{ margin-bottom:20px !important}

    .mat60{ margin-top:30px !important}
    .mab60{ margin-bottom:30px !important}

    .mat70{ margin-top:35px !important}
    .mab70{ margin-bottom:35px !important}

    .mat80{ margin-top:40px !important}
    .mab80{ margin-bottom:40px !important}

    .mat90{ margin-top:45px !important}
    .mab90{ margin-bottom:45px !important}

    .mat100{ margin-top:50px !important}
    .mab100{ margin-bottom:50px !important}
}



/* 너비 */
.w100{width:100% !important;}
.w80{width:80% !important;}
.w75{width:75% !important;}
.w70{width:70% !important;}
.w65{width:65% !important;}
.w60{width:60% !important;}
.w55{width:55% !important;}
.w50{width:50% !important;}
.w45{width:45% !important;}
.w40{width:40% !important;}
.w35{width:35% !important;}
.w30{width:30% !important;}
.w25{width:25% !important;}
.w20{width:20% !important;}
.w15{width:15% !important;}
.w10{width:10% !important;}
