@charset "utf-8";

/* #################################### Font #################################### */

/* Pretendard - KR */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css');

/* 나눔명조 - KR */
@font-face {
    font-family: 'BonmyeongjoSourceHanSerif';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NotoSerifKR.woff') format('woff');
    font-weight: normal;
    font-display: swap;
}

/* #################################### HTML Basic Set #################################### */


*,
body {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: var(--font-KR-base);
    color: var(--base-color-black);
    scroll-behavior: smooth;

    -webkit-text-size-adjust : none;  /* 크롬, 사파리, 오페라(신) */
    -ms-text-size-adjust : none;  /* IE */
    -moz-text-size-adjust : none;  /* 파이어폭스 */
    -o-text-size-adjust : none;  /* 오페라(구)*/
}

body {
    -ms-overflow-style: none;
}

::-webkit-scrollbar {
    display: none;
}

*,
:before,
:after {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

html {
    overflow-y: scroll;
}

html,
body {
    margin: 0 auto;
    width: 100vw;
    height: auto;
    min-height: 100vh;
    color: var(--font-color-base);
    font-family: var(--font-KR-base-2);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-base);
    background: var(--background-color-base);
    color: var(--base-color-white);
    /* border: 1px solid red; */
}

body {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: var(--font-KR-base);
    background: var(--background-color-base);
    color: var(--base-color-white);
}

html,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
img {
    margin: 0;
    padding: 0;
    border: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
a {
    display: block;
}

ul,
ol,
li,
dt,
dd,
dl {
    list-style: none;
}

a,
a:link,
a:visited,
a:hover,
a:active {
    color: var(--base-color-white);
    text-decoration: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none;
}

select::-ms-expand {
    display: none;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /* 화살표 모양의 이미지 삽입가능 */
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type='number'] {
    -moz-appearance: textfield;
}

textarea {
    resize: none;
}

/* #################################### Contents fixed #################################### */
.fixed-init {
    position: fixed;
    height: 100svh;
    overflow: hidden;
}

/* #################################### Text Word Align#################################### */
h1,
h2,
h3,
h4,
h5,
h6,
p,
input,
textarea {
    word-break: keep-all;
}

/* #################################### 공통 스타일 #################################### */

/* --------------------max width------------------ */
.max_width {
    max-width: var(--max-width);
}

/* --------------------섹션 마진------------------ */

.section_margin {
    margin: var(--all-sec-margin);
}

.section_padding_mo {
    padding: var(--all-sec-padding_mo);
}

/* -------------------- 텍스트 효과------------------ */

.ko_font {
    font-family: var(--font-KR-base);
}

.ko_font_point {
    font-family: var(--font-KR-point);
    font-weight: 200;
}

.color_white {
    color: var(--base-color-white);
}

.color_point {
    color: var(--signature-color);
}

.max_width-h {
    padding: 0 15px;
    max-width: var(--max-width);
    margin: 0 auto;
    /* overflow: hidden; */
}
/* -------------------- 메뉴 호버 시 나타나는 원 ------------------ */

.menu_circle {
    position: absolute;
    display: inline-block;
    width: 7px;
    height: 7px;
    background-color: var(--signature-color);
    margin-top: 15px;
    border-radius: 50%;
    transition: 0.5s;
    bottom: 20px;
    opacity: 0;
}
