@charset "UTF-8";

:root {
    --color-white01: #FEF8FF;
    --color-black01: #555;
    --color-main: #894CB8;
    --color-sub01: #894CB8;
    --color-sub02: #FEF8FF;
    --color-sub03: #ECD2FF;
    --table-line01: #ddd;
    --input-border: #dadada;
    --input-background: #fff;
}

*::-webkit-scrollbar {
    width: 10px;
    height: 10px;   
}

*::-webkit-scrollbar-thumb:hover {
    background-color: #aaa;
    /*cursor: crosshair; */
}

*::-webkit-scrollbar-thumb:active {
    background-color: #aaa;
    /*cursor: crosshair; */
}

*::-webkit-scrollbar-thumb {
    background-color: #d3d3d3;
    border-radius: 7px;
    border: 1px solid #ffff;
}

*::-webkit-scrollbar-track {
    background-color: #fff;
    border-radius: 0px;
}

* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*::after,
*::before {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    width: 100%;
    height: auto;
    min-height: 100%;
    font-family: 'EliceDXNeolli','Pretendard GOV', 'Montserrat', 'SCDream', sans-serif;
    font-weight: 500;
    color: var(--color-black01);
    letter-spacing: 0em;
}

img {
    vertical-align: middle;
    width: auto;
    max-width: 100%;
    margin: 0 auto;
}

a {
    font-size: 1rem;
    font-weight: 400;
    text-decoration: none;
    color: var(--color-black01);
}

p {
    line-height: 1.5;
}

ul {
    list-style: none;
}

input {
    font-size: 0.875rem;
    font-weight: 400;
    font-family:'EliceDXNeolli', 'Pretendard GOV', 'SCDream', 'Montserrat', sans-serif;
    color: var(--color-black01);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}

input::-webkit-input-placeholder,
input:-moz-placeholder,
input::-moz-placeholder,
input:-ms-input-placeholder,
input::-ms-input-placeholder,
input::placeholder {
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--color-black01);
}

button {
    all: unset;
}

table {
    font-size: 1rem;
    border-collapse: collapse;
    border-spacing: 0;
}

label {
    vertical-align: middle;
}

select::-ms-expand {
    display: none;
}

select {
    font-family: 'EliceDXNeolli','Pretendard GOV', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    background: url(../images/select.png) no-repeat 95% 50%;
    -webkit-background-size: 6px 6px;
    background-size: 6px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: var(--color-black01);
}


textarea {
    font-family: 'Pretendard GOV', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--color-black01);
}

textarea::-webkit-input-placeholder,
textarea:-moz-placeholder,
textarea::-moz-placeholder,
textarea:-ms-input-placeholder,
textarea::-ms-input-placeholder,
textarea::placeholder {
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--color-black01);
}

@media all and (max-width: 376px) {
    select {
        font-size: 0.8125rem;
    }

    input,
    input::-webkit-input-placeholder,
    input:-moz-placeholder,
    input::-moz-placeholder,
    input:-ms-input-placeholder,
    input::-ms-input-placeholder,
    input::placeholder {
        font-size: 0.8125rem;
    }

    textarea,
    textarea::-webkit-input-placeholder,
    textarea:-moz-placeholder,
    textarea::-moz-placeholder,
    textarea:-ms-input-placeholder,
    textarea::-ms-input-placeholder,
    textarea::placeholder {
        font-size: 0.8125rem;
    }
}

@media all and (max-width: 321px) {
    select {
        font-size: 0.75rem;
    }

    input::-webkit-input-placeholder,
    input:-moz-placeholder,
    input::-moz-placeholder,
    input:-ms-input-placeholder,
    input::-ms-input-placeholder,
    input::placeholder {
        font-size: 0.75rem;
    }
    
    textarea,
    textarea::-webkit-input-placeholder,
    textarea:-moz-placeholder,
    extarea::-moz-placeholder,
    textarea:-ms-input-placeholder,
    textarea::-ms-input-placeholder,
    textarea::placeholder {
        font-size: 0.75rem;
    }
}


/* CONTAINER BOX */

.container {
    width: 1520px;
    margin: 0 auto;
}

@media all and (max-width: 1440px) {
    .container {
        width: 100%;
        padding: 40px 10px;
        margin: 0 auto;

    }
}

@media all and (max-width: 481px) {
    .container {
        width: 100%;
        padding: 15px 15px;
        margin: 0 auto;
    }
}

/* CONTAINER BOX END */

i {
    vertical-align: middle;
}

svg[class*='fa'] {
    vertical-align: middle;
}

img {
    vertical-align: middle;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff url(../images/select.png) no-repeat 95% 50%;
    min-width: 10px;
    padding: 2px 20px 2px 5px;
    box-sizing: border-box;
    min-height: 28px;
    margin: 0px;
    vertical-align: middle;
    border-radius: 0px;
    box-sizing: border-box;
    text-overflow: ellipsis;
}

select::-ms-expand {
    display: none;
}

button {
    border: 0;
}

a,
button {
    cursor: pointer;
}

button:active,
a:active,
button:hover,
a:hover {
    opacity: 1;
}



/* 키보드로 버튼에 포커스 시 */
button:focus-visible,
a:focus-visible, 
select:focus-visible, 
input:focus-visible 
textarea:focus-visible {
  outline: 2px solid #5f5f5f;
}       

/* 마우스, 터치로 버튼에 포커스 시 */
button:focus:not(:focus-visible),
a:focus:not(:focus-visible), 
select:focus:not(:focus-visible), 
input:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
  outline: none;
  /*box-shadow: 1px 1px 5px rgba(1, 1, 0, .7);*/
}
