@charset "utf-8";

#offset {position:fixed; left:50%; top:50%; display:inline; background-color:#000; color:#fff; font-weight:600; padding:1%; transform:translate(-50%, -50%); z-index:99999;}

.dp-flex {display:flex;}
.dp-flex-middle {display:flex; align-items:center;}
.dp-flex-center {display:flex; justify-content:center;}
.bbs_message {display:flex; align-items:center; justify-content:center; height:180px; font-size:2.0rem; color:#616161; font-weight:400;}
.bbs_message i {font-size:4.0rem; color:#444; margin-right:4px;}

.t-center {text-align:center;}
.t-left {text-align:left;}
.t-right {text-align:right;}

.is_pc {}
.is_mobile {display:none;}

/* Firefox */
@-moz-document url-prefix() {
}

/* Chrome & Safari */
@media screen and (-webkit-min-device-pixel-ratio:0) {
}

/* Container */
#container {width:100%; height:auto; position:relative; padding-top:180px; box-sizing:border-box;}

figure.sub_visual {display:block;}
figure.sub_visual h1.public-title {font-size:3.2rem; font-weight:500; color:#000; letter-spacing:-1px;}

article.contents,
article.bbs_contents {margin-top:50px; min-height:508px; padding:20px 0 40px; box-sizing:border-box;}

/* 텝 컨텐츠 */
#container #tab_area {}
#container #tab_area .tab_nav {font-size:0; border-bottom:1px solid #ddd;}
#container #tab_area .tab_nav li {display:inline-block; height:45px; text-align:center; border:1px solid #ddd; border-bottom:none;}
#container #tab_area .tab_nav li a:before {content:""; position:absolute; left:0; top:0px; width:100%; height:2px;}
#container #tab_area .tab_nav li a.active:before {background:#ff9c08;}
#container #tab_area .tab_nav li a.active {border-bottom:1px solid #fff;}
#container #tab_area .tab_nav li a {position:relative; display:block; background:#f8f8f8; font-size:1.5rem; color:#515151; font-weight:400; padding:0 6vh; line-height:50px; text-decoration:none;}
#container #tab_area .tab_nav li a:hover {background:#fff; color:#1b1b1b;}
#container #tab_area .tab_nav li a.active {background:#fff; color:#1b1b1b; font-weight:500;}
#container #tab_area .tab_content {width:100%; padding:40px 20px 60px; height:auto; box-sizing:border-box;}

/* 회사소개 */
#container .about_us h2.slogan {margin:60px 0 120px; font-size:3.8rem; color:#313131; font-weight:600; letter-spacing:-2px;}
#container .about_us dl.aside {width:100%; display:grid; grid-template-columns:35% calc(65% - 60px); column-gap:60px;}
#container .about_us dl.aside dt {background:url(../images/sub/elga_maly.jpg) no-repeat center; background-size:cover;}
#container .about_us dl.aside dd {}
#container .about_us dl.aside dd hr {display:block; border:none; width:100%; height:1px; background:#ebebeb; margin:30px 0;}
#container .about_us dl.aside dd h3 {font-size:2.6rem; color:#212121; font-weight:500; letter-spacing:-1px;}
#container .about_us dl.aside dd h4 {font-size:1.6rem; color:#414141; font-weight:400; line-height:2.4rem;}

/* 상담문의 */
#container .contact_us dl.aside {width:100%; display:grid; grid-template-columns:35% calc(65% - 60px); column-gap:60px;}
#container .contact_us dl.aside dt {}
#container .contact_us dl.aside dt h3 {font-family:'Khand', sans-serif; font-size:4.6rem; font-weight:500; font-style:normal; color:#000;}
#container .contact_us dl.aside dt h5 {
    margin-top:20px; font-size:1.4rem; line-height:18px; font-weight:500; color:#313131;
}
#container .contact_us dl.aside dt p {margin-top:40px; font-size:1.3rem; font-weight:400; color:#313131; line-height:18px;}
#container .contact_us dl.aside dd {}

/*이용약관*/
#container .access_terms .contents h3 {font-size:1.8rem; margin-top:2%; padding:1% 0; color:#313131; font-weight:500;}
#container .access_terms .contents h4 {font-size:1.6rem; line-height:2.4rem; margin:2% 0 1%; padding:1% 0; color:#414141; font-weight:400;}
#container .access_terms .contents p {font-size:1.2rem; line-height:1.4rem; padding:2px 3px; margin-top:5px; color:#515151; font-weight:400;}

/*개인정보보호정책*/
#container .privacy_policy .contents h4 {font-size:1.6rem; line-height:2.4rem; margin:2% 0 1%; padding:1% 0; color:#414141; font-weight:400;}
#container .privacy_policy .contents p {font-size:1.2rem; line-height:1.4rem; padding:2px 3px; margin-top:5px; color:#515151; font-weight:400;}

/* Container End */

@media screen and (max-width:1920px) {
}

@media screen and (max-width:1680px) {
}

@media screen and (max-width:1440px) {
}

@media screen and (max-width:1280px) {
}

@media screen and (max-width:1152px) {
}

@media screen and (max-width:1024px) {
    #container .about_us h2.slogan {margin:60px 0 90px;}

    article.contents,
    article.bbs_contents {width:calc(100%); margin-top:45px; padding:20px 25px 40px !important;}

    #container .about_us dl.aside {grid-template-columns:repeat(1, 1fr);}
    #container .about_us dl.aside dt {height:460px;}
    #container .about_us dl.aside dd {margin-top:50px;}

    #container .contact_us dl.aside {display:block; width:100%;}
    #container .contact_us dl.aside dt {}
    #container .contact_us dl.aside dt h5 {margin-top:10px;}
    #container .contact_us dl.aside dt p {margin-top:20px;}
    #container .contact_us dl.aside dd {margin-top:20px;}
}

@media screen and (max-width:840px) {
    #container {padding-top:160px;}
    article.contents,
    article.bbs_contents {width:calc(100%); margin-top:45px; padding:20px 20px 40px !important;}

    #container #tab_area .tab_content {padding:40px 10px 60px;}

    #container .about_us h2.slogan {margin:60px 0 80px; font-size:3.6rem;}
}

@media screen and (max-width:768px) {
    #container {padding-top:150px;}
    article.contents,
    article.bbs_contents {width:calc(100%); margin-top:40px; padding:20px 15px 30px !important;}

    #container .contact_us dl.aside dt h3 {font-size:4.4rem;}
}

@media screen and (max-width:640px) {
    #container {padding-top:140px;}
    article.contents,
    article.bbs_contents {margin-top:35px;}
}

@media screen and (max-width:540px) {
    #container {padding-top:130px;}
    article.contents,
    article.bbs_contents {margin-top:30px;}

    #container .about_us h2.slogan {margin:50px 0 50px;}
    #container .contact_us dl.aside dt h3 {font-size:4.2rem;}

    #container #tab_area .tab_nav li a {font-size:1.4rem; padding:0 50px !important;}
}

@media screen and (max-width:420px) {
    #container {padding-top:120px;}
    article.contents,
    article.bbs_contents {width:calc(100%); margin-top:20px;}

    #container .about_us h2.slogan {margin:40px 0 40px; font-size:3.4rem; letter-spacing:-1px;}
    #container .about_us dl.aside dt {height:380px;}

    #container .contact_us dl.aside dt h3 {font-size:3.4rem;}
    #container .contact_us dl.aside dt h5 {margin-top:0px;}
    #container .contact_us dl.aside dt p {margin-top:10px;}

    #container #tab_area .tab_nav li a {font-size:1.4rem; padding:0 35px !important;}
}

@media screen and (max-width:380px) {
    #container #tab_area .tab_nav li a {font-size:1.4rem; padding:0 30px !important;}
}