@charset "utf-8";

@font-face {
    font-family: 'Pretendard';
    font-weight: 900;
    font-display: swap;
    src: local('Pretendard Black'), url('../fonts/woff2-subset/Pretendard-Black.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Black.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 800;
    font-display: swap;
    src: local('Pretendard ExtraBold'), url('../fonts/woff2-subset/Pretendard-ExtraBold.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-ExtraBold.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 700;
    font-display: swap;
    src: local('Pretendard Bold'), url('../fonts/woff2-subset/Pretendard-Bold.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Bold.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 600;
    font-display: swap;
    src: local('Pretendard SemiBold'), url('../fonts/woff2-subset/Pretendard-SemiBold.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-SemiBold.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 500;
    font-display: swap;
    src: local('Pretendard Medium'), url('../fonts/woff2-subset/Pretendard-Medium.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Medium.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 400;
    font-display: swap;
    src: local('Pretendard Regular'), url('../fonts/woff2-subset/Pretendard-Regular.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Regular.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 300;
    font-display: swap;
    src: local('Pretendard Light'), url('../fonts/woff2-subset/Pretendard-Light.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Light.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 200;
    font-display: swap;
    src: local('Pretendard ExtraLight'), url('../fonts/woff2-subset/Pretendard-ExtraLight.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-ExtraLight.subset.woff') format('woff');
}
@font-face {
    font-family: 'Pretendard';
    font-weight: 100;
    font-display: swap;
    src: local('Pretendard Thin'), url('../fonts/woff2-subset/Pretendard-Thin.subset.woff2') format('woff2'), url('../fonts/woff-subset/Pretendard-Thin.subset.woff') format('woff');
}
:root {
    --ts-pr-clear-button:0px;--ts-pr-caret:0px;--ts-pr-min:.75rem;
    --swiper-theme-color:#007aff;--swiper-navigation-size:44px;

    --inner: 1640px;
    --inner-sm: 1560px;
    --inner-lg: 1720px;
    --border: #E5E5E5;
    --background: #F7F7F7;
    --background-dark: #060606;
    --clr-black: #101010;
    --clr-dark: #22272B;
    --clr-gray: #666666;
    --clr-sub: #51585E;
    --clr-primary: #8dc440;
    --clr-primary-hover: #82be2f;
    --clr-secondary: #57C5C7;
    --clr-red: #D72638;
    --clr-blue: #0657A3;
    --clr-hover: #fafafa;
    --placeholder: #ACACAC;
    --scrollbar: var(--clr-black);
    --font-display: "Montserrat", sans-serif;
    --max-width: 1920px;
    --header-height: 80px;
    --section-top: 120px;
    --section-bottom: 200px;
    --border-radius: 16px;
    --gap: 30px;
}
*, ::before, ::after { box-sizing: inherit; }
html {
    overflow-x: hidden;
    box-sizing: border-box;
    overscroll-behavior: none;
    line-height: 1.45;
    font-family: "Pretendard", sans-serif;
    font-size: 62.5%;
    font-weight: 400;
    color: var(--clr-sub);
    /* letter-spacing: -0.02em; */
    background: #fff;
    word-break: keep-all;
    overflow-wrap: break-word;
    -webkit-text-size-adjust: 100%;-moz-text-size-adjust: 100%;-ms-text-size-adjust: 100%;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;
    scrollbar-width: none;
}
body { margin: 0; font-size: 1.8rem; }
h1, h2, h3, h4, h5, h6, p { margin: 0; }
blockquote { margin: 0 }
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, summary { display: block; }
ul, ol { margin: 0; padding: 0; list-style: none; }
dl, dd { margin: 0; }
figure { margin: 0; }
img { display: inline-block; vertical-align: top; max-width: 100%; height: auto; pointer-events: none; }
fieldset { margin: 0; padding: 0; border: none; }
caption { text-align: left; color: #151515; font-weight: 500; }
a { text-decoration: none; color: inherit; }
a:hover, a:focus, a:active { text-decoration: none; }
b { font-weight: 600; }
table { width: 100%; border-collapse: collapse; }
button { overflow: visible; vertical-align: middle; padding: 0; margin: 0; line-height: inherit; font-size: inherit; font-weight: 600; color: #111111; white-space: nowrap; letter-spacing: inherit; background: none; border: none; border-radius: 8px; cursor: pointer; }
button:active { outline: none; }
button::-moz-focus-inner { padding: 0; border: 0; }
button:disabled { cursor: default; }
input { padding: 16px 20px; height: 60px; font-family: inherit; font-size: 1.6rem; color: #333333; background-color: #F7F7F7; border: 0 solid #dddddd; border-radius: 4px; -webkit-transition: all ease 0.1s, outline ease 0s; transition: all ease 0.1s, outline ease 0s; scroll-margin-top: calc(var(--header-height) + 45px); }
textarea { vertical-align: middle; padding: 16px 20px; line-height: inherit; font-family: inherit; font-size: 1.6rem; color: #333333; background-color: #F7F7F7; border: 0 solid #dddddd; border-radius: 4px; -webkit-transition: all ease 0.1s, outline ease 0s; transition: all ease 0.1s, outline ease 0s; resize: none; overflow-y: auto; -ms-overflow-style: auto; scroll-margin-top: calc(var(--header-height) + 45px); }
select { margin: 0; padding: 0 60px 0 20px; height: 60px; font-family: inherit; font-size: 1.6rem; color: #333333; -moz-appearance: none; -webkit-appearance: none; appearance: none; -webkit-appearance: none; background-image: url('/images/chevron-down.svg'); background-color: #F7F7F7; background-size: auto 44%; background-repeat: no-repeat; background-position: right 14px center; border: 1px solid #dddddd; border-radius: 4px; box-shadow: none; scroll-margin-top: calc(var(--header-height) + 45px); }
select::-ms-expand { display: none; }
select:disabled { color: #888; background-color: #f1f1f1; }
select:focus { outline: 2px solid var(--clr-primary); }
input:focus { outline: 2px solid var(--clr-primary); }
textarea:focus { outline: 2px solid var(--clr-primary); }
textarea:disabled { color: #888; background-color: #f1f1f1; }
input[type=number] { -moz-appearance: textfield; }
/* input:-moz-read-only, textarea:-moz-read-only { background-color: #f8f8f8; } */
/* input:read-only, textarea:read-only { background-color: #f8f8f8; } */
input:read-only:focus,
textarea:read-only:focus { outline: none; }
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input:disabled { color: #888; background-color: #f1f1f1; }
input.is-invalid { border-color: #FF692D; }
input.is-invalid::placeholder { color: #FF692D; }
select.is-invalid { color: #fff; background-color: #FF692D; border-color: #FF692D; background-image: url("/images/icon-select-arrow-light.svg"); }
textarea.is-invalid { border-color: #FF692D; }
textarea.is-invalid::placeholder { color: #FF692D; }
::placeholder { color: #999999; }
@media screen and (max-width: 1024px) {
    :root {
        --header-height: 64px;
        --section-top: 100px;
        --section-bottom: 120px;
        --border-radius: 12px;
        --gap: 5%;
        --border-radius: 10px;
    }
    body { font-size: 1.6rem; }
    input, select { height: 45px; font-size: 1.5rem; }
}
@media screen and (max-width: 768px) {
    :root {
        --section-top: 80px;
        --section-bottom: 100px;
        --border-radius: 8px;
    }
    html { line-height: 1.5; }
    body { font-size: 1.5rem; }
    select { padding-top: 11px; padding-bottom: 11px; padding-left: 16px; padding-right: 40px; background-size: auto 42%; background-position: right 14px center; border-radius: 4px; }
    input, textarea { padding-top: 11px; padding-bottom: 11px; padding-right: 16px; padding-left: 16px; border-radius: 4px; }
    input, select { font-size: 1.4rem; }
}
