@charset "UTF-8";

/* 웹폰트 시작 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap');

/* 웹폰트 끝 */

html, body {
    margin: 0;
    padding: 0;
}

body {
    font-family: "Noto Sans KR", sans-serif;
    font-optical-sizing: auto;
    
    background-color: #000015;
    color: #fff;
}

.maxwidth {
    max-width: 1240px !important;
    width: 100%;
    margin: 0 auto;
}
hr.antimargin {
    border: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 0;
    background-color: transparent;
}

a:link, a:visited, a:active {
    color: #7f7fff;
    text-decoration: none;
}


ul.five, ul.four, ul.three, ul.two {
	list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
}
ul.five { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
ul.four { grid-template-columns: 1fr 1fr 1fr 1fr; }
ul.three { grid-template-columns: 1fr 1fr 1fr; }
ul.two { grid-template-columns: 1fr 1fr; }
ul.five li, ul.four li, ul.three li, ul.two li {
    text-align: center;
    box-sizing: border-box;
}


#SiteHeader {
    background-color: #000;
    color: #fff;
    padding: 20px 0;
}
#SiteHeader .logochar b {
    background: #7f7fFF;
    background: linear-gradient(120deg,rgba(0, 255, 255, 1) 0%, rgba(255, 0, 255, 1) 100%);
    background-clip: text;
    color: transparent;
}

#SiteHeader .maxwidth,
#SiteFooter .maxwidth,
.p-section > .maxwidth, .lr-padding {
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}

#SiteHeader ul.two {
    grid-template-columns: 200px auto;
}
#SiteHeader .logochar {
    line-height: 40px;
    font-size: 34px;
    font-weight: bold;
}

#SiteFooter {
    background-color: #000;
    color: #fff;
    padding: 20px 0;
    font-size: 14px;
}

ul.topmenu {
	list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    float: right;
    
    flex-direction: column;
    position: absolute;
    width: 180px;
    right: 10px;
    top: 70px;
}
ul.topmenu:not(.show) { display: none; }
ul.topmenu a:link, ul.topmenu a:visited, ul.topmenu a:active {
    color: #fff;
}
ul.topmenu > li {
    /* padding: 10px 20px; */
    padding: 0; background-color: #000055;
}
    #SiteHeader ul.topmenu li a {
        text-align: left;
        width: 100%;
        padding: 10px 20px;
        display: block;
        box-sizing: border-box;
    }

.hamburger {
    display: unset;
    float: right;
}

@media (min-width: 1240px) {
    ul.topmenu {
        right: calc(50vw - 610px);
    }
}