@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');

/* reset */
@media all {
    .clear:after { 
        content:""; 
        display:block; 
        clear:both;
    }
    * { margin:0; padding:0; outline:none; box-sizing:border-box; }
    body {
    line-height:1; font-size:14px; font-weight:400; color:#000; font-family: 'Noto Sans KR', sans-serif !important; 
    word-wrap: break-word; word-break: keep-all;
    }
    h1, h2, h3, h4, h5, h6 { margin:0; font-family: 'Noto Sans KR', sans-serif !important; line-height:1; font-size: 1em; }
    ul, ol { list-style:none; margin:0; padding: 0; }
    a { outline:0; text-decoration:none; color: #000; font-family: 'Noto Sans KR', sans-serif !important; }
    a:focus { outline:none; }
    figure,dl,dd,input[type=radio], input[type=checkbox]  { margin: 0; padding: 0; }
    img { border:none; outline:none; max-width: 100%; }
    p { margin:0; padding:0; word-wrap: break-word; word-break: keep-all;  }
    button, input, submit { border: none; background: none; }
    dt { font-weight: normal; }
    ::placeholder { font-family: 'Noto Sans KR', sans-serif !important; }
    input:-webkit-autofill,
    input:-webkit-autofill:hover,
    input:-webkit-autofill:focus,
    input:-webkit-autofill:active {
        transition: background-color 5000s ease-in-out 0s;
        -webkit-transition: background-color 9999s ease-out;
        box-shadow: none !important;
        -webkit-text-fill-color: none !important;
    }
}   

@keyframes intro_ani_move1 {
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes intro_ani_move2 {
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.intro_frame {
    font-size: min(calc(10 / 600 * 100vw), 10px);
    position: relative; width: 100%; height: 100vh;
} 
.intro_frame .logo {
    width: 31.4em; position: absolute; top: 5em; left: 9em;
    animation: intro_ani_move2 1s 0.5s forwards;
    transform: translateY(-5%); opacity: 0;
}

.intro_frame .main_title {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 100%; display: flex; align-items: center; justify-content: center;
}

.intro_frame .main_title > article {position: relative; width: 100%; max-width: 707px;}
.intro_frame .main_title > article img {width: 33.8em; height: 33.8em;}
.intro_frame .main_title .textBox h1 {
    font-size: 4.5em; font-weight: bold; line-height: 1.2;
    color: #000; margin-bottom: 10px;
}
.intro_frame .main_title .textBox h1 .color-tag {color: #0d4d97;}
.intro_frame .main_title .textBox p.text1 {font-size: 1.8em; color: #707070; line-height: 1.6;}


@media (min-width: 851px) {
    .intro_frame .main_title > article {padding-bottom: 36em;}
    .intro_frame .main_title > article img {
        position: absolute; top: 0; left: 0; z-index: 1;
        animation: intro_ani_move1 1s 0.3s forwards;
        transform: translateX(-5%); opacity: 0;
    }
    .intro_frame .main_title .textBox {
        position: absolute; bottom: 0; right: 0;
        animation: intro_ani_move1 1s 0.3s forwards; transform: translateX(5%); opacity: 0;
    }
}


@media (max-width: 850px) {
    .intro_frame .main_title > article {
        display: flex; flex-direction: column ;align-items: center;
        gap: 20px; 

        animation: intro_ani_move2 1s 0.3s forwards;
        transform: translateY(-5%); opacity: 0;
    }
    .intro_frame .main_title > article img {width: 20.8em; height: 20.8em;}
    .intro_frame .main_title .textBox {text-align: center;}
    .intro_frame .logo {width: 20em; min-width: 150px; top: 10px; left: 10px;}
}


@media (max-height: 930px) {
    .intro_frame .logo {
        font-size: min(calc(10 / 930 * 100vh), 10px);
    }
}