@charset "utf-8";

/**
 * Filename : base.css
 * Description : root, fonts, reset styles
 **/

 /* ==========================================================================
   root
========================================================================== */

:root {
    --primary_blue: #0032A0;

    --secondary_blue_01: #0055E9;
    --secondary_blue_02: #569DFF;
    --secondary_blue_03: #317CFF;
    --secondary_orange: #FF3A00;
    --secondary_mint: #80DEBC;

    --system-danger: #EB003B;
    --system-warning: #FFB724;
    --system-success: #008A1E;
    --system-information: #2768FF;

    --text-900_title: #161616;
    --text-800_text: #333;
    --text-700: #4A4A4A;
    --text-600: #777;
    --text-500: #AAA;
    --text-400_disable: #BEBEBE;
    --text-white: #FFF;

    --text-80: #2D2D2D;

    --bg-01: #FBFBFB;
    --bg-02: #F5F5F5;
    --bg-03: #949494;

    --border-01: #F4F4F4;
    --border-02: #E7E7E7;
    --border-03: #CCC;
    --border-04: #232527;

    --font-120: 120px;
    --font-80: 80px;
    --font-64: 64px;
    --font-54: 54px;
    --font-48: 48px;
    --font-40: 40px;
    --font-32: 32px;
    --font-28: 28px;
    --font-24: 24px;
    --font-20: 20px;
    --font-18: 18px;
    --font-16: 16px;
    --font-14: 14px;
    --font-12: 12px;
    --font-10: 10px;

    --aosPlus: 30px;
}

/* ==========================================================================
 fonts
========================================================================== */

@font-face {
    font-family: "SUIT";
    font-weight: 100;
    font-style: normal;
    src: url("../fonts/SUIT-Thin.otf") format("opentype"),
        url("../fonts/SUIT-Thin.woff2") format("woff2"),
        url("../fonts/SUIT-Thin.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 200;
    font-style: normal;
    src: url("../fonts/SUIT-ExtraLight.otf") format("opentype"),
        url("../fonts/SUIT-ExtraLight.woff2") format("woff2"),
        url("../fonts/SUIT-ExtraLight.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 300;
    font-style: normal;
    src: url("../fonts/SUIT-Light.otf") format("opentype"),
        url("../fonts/SUIT-Light.woff2") format("woff2"),
        url("../fonts/SUIT-Light.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/SUIT-Regular.otf") format("opentype"),
        url("../fonts/SUIT-Regular.woff2") format("woff2"),
        url("../fonts/SUIT-Regular.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 500;
    font-style: normal;
    src: url("../fonts/SUIT-Medium.otf") format("opentype"),
        url("../fonts/SUIT-Medium.woff2") format("woff2"),
        url("../fonts/SUIT-Medium.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 600;
    font-style: normal;
    src: url("../fonts/SUIT-SemiBold.otf") format("opentype"),
        url("../fonts/SUIT-SemiBold.woff2") format("woff2"),
        url("../fonts/SUIT-SemiBold.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/SUIT-Bold.otf") format("opentype"),
        url("../fonts/SUIT-Bold.woff2") format("woff2"),
        url("../fonts/SUIT-Bold.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 800;
    font-style: normal;
    src: url("../fonts/SUIT-ExtraBold.otf") format("opentype"),
        url("../fonts/SUIT-ExtraBold.woff2") format("woff2"),
        url("../fonts/SUIT-ExtraBold.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "SUIT";
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/SUIT-Heavy.otf") format("opentype"),
        url("../fonts/SUIT-Heavy.woff2") format("woff2"),
        url("../fonts/SUIT-Heavy.ttf") format("truetype");
    font-display: swap;
}

/* ==========================================================================
 reset
========================================================================== */

html, body, div, span, h1, h2, h3, h4, h5, h6, p, 
blockquote, pre, abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,  
footer, header, menu, nav, section, main, summary, 
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
    font-size: 100%;
} 
html {
    -webkit-text-size-adjust: 100%;
}
body {
    color: var(--text-700); 
    font-size: var(--font-18); 
    font-weight: 400; 
    line-height: 1.5;
    letter-spacing: -0.72px; 
    font-family: 'SUIT', sans-serif;
    
}
ul, ol {
    list-style-type: none;
}
img {
    vertical-align: top; 
    border-style: none;
}
a {
    box-sizing: border-box; 
    color: inherit; 
    text-decoration: none;
    outline: none;
}
a:focus {
    outline: 0px solid var(--secondary_blue_02);
}
strong, b {
    font-weight: 700;
}
small {
    font-size: 80%;
}
figcaption {
    font-size: var(--font-18); 
    font-weight: 400; 
    line-height: 1.5; 
    letter-spacing: -0.72px;
}
sub, sup {
    position: relative; 
    vertical-align: baseline; 
    font-size: 75%; 
    line-height: 0;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
hr {
    box-sizing: content-box; 
    height: 0;
}
q {
    quotes: none;
}
q::before, q::after {
    content: '';
}

/* table */
table {
    border-spacing: 0; 
}
th, td {
    vertical-align: middle;
}
caption {
    position: absolute;
    overflow: hidden;
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

/* form */
input, select, textarea {
    box-sizing: border-box; 
    border-radius: 0; 
    border: 0; 
    background-color: transparent; 
    vertical-align: middle; 
    outline: none;
    color: var(--text-700);
    font-size: var(--font-16); 
    font-weight: 500;
    line-height: 1.5; 
    letter-spacing: -0.64px; 
    font-family: 'SUIT', sans-serif;
    
}
textarea {
    resize: none;
}
button {
    box-sizing: border-box; 
    margin: 0; 
    padding: 0; 
    border: 0 none; 
    background-color: transparent; 
    text-align: left;
    vertical-align: middle; 
    cursor: pointer; 
    outline: none;
    color: var(--text-700); 
    font-size: var(--font-18); 
    font-weight: 400; 
    line-height: 1.5;
    letter-spacing: -0.72px; 
    font-family: 'SUIT', sans-serif;
}
button::-moz-focus-inner {
    padding: 0; 
    border-style: none;
}
button:focus {
    outline: 3px solid var(--secondary_blue_02);
}

/* tablet ============================ */

@media screen and (max-width: 1024px) {

    img {
        width: 100%; 
        height: auto;
    }    
}

/* mobile ============================ */

@media screen and (max-width: 768px) {

    body {
        font-size: var(--font-16); 
        line-height: 1.2;
        letter-spacing: -0.64px;
    }
}
