@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');
@font-face {
    font-family: 'NanumSquareRound';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NanumSquareRound.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

* {padding: 0; margin: 0; border: 0; box-sizing: border-box;}
li {list-style: none;}
a {text-decoration: none; color: inherit;}
img {vertical-align: top; max-width: 100%; filter: none;}
button {background-color: inherit; cursor: pointer;}
body {font-family: 'Noto Sans KR', sans-serif; color: #000; overflow-x: hidden;}


.title {width: 280px; height: 50px; border-radius: 15px; font-size: 24px; line-height: 50px; font-weight: 900; background-color: #f7cd00; color: #000; text-align: center; margin: 0 auto; font-family: 'NanumSquareRound', sans-serif;}
.black_title {color: #f7cd00; background-color: #000;}


/* header */
header {position: fixed; top: 0; left: 0; width: 100%; height: 80px; background-color: #000; display: flex; justify-content: space-between; align-items: center; padding: 0 30px; box-shadow: 0px 5px 5px rgba(0,0,0,0.25); z-index: 1000;}
header .left {display: flex; align-items: center; gap: 20px;}
header .left a {display: flex; justify-content: center; align-items: center;}
header .left a img {width: 30px;}
header .center {display: flex; align-items: center; gap: 160px;}
header .center > img {cursor: pointer;}
header .center .gnb {display: flex; gap: 80px;}
header .center .gnb a {font-size: 18px; line-height: 18px; color: #fff;}
header .ham {cursor: pointer; width: 30px;}


/* aside */
aside {position: fixed; top: 80px; right: -360px; width: 340px; height: calc(100vh - 80px); background-color: #333 ; padding: 35px 45px 35px 25px; box-shadow: -7px 7px 15px rgba(0,0,0,0.25); z-index: 9999;}
aside > img {display: block; margin: 0 0 30px auto; cursor: pointer;}
aside .gnb {display: flex; flex-direction: column;}
aside .gnb a {display: flex; justify-content: flex-end; align-items: center; width: 100%; height: 60px; border-bottom: 2px solid #fff; font-size: 21px; color: #fff;}
aside .bottom {position: absolute; bottom: 120px; left: 0; width: 100%;}
aside .bottom p {font-size: 14px; line-height: 14px; color: #fff; margin-bottom: 10px; text-align: right; padding-right: 45px;}
aside .bottom i {display: block; font-size: 14px; line-height: 14px; color: #fff; text-align: right; padding-right: 45px; font-style: normal; cursor: pointer;}
aside span {position: absolute; bottom: 35px; left: 25px; width: 130px; height: 40px; border: 2px solid #fff; font-size: 14px; line-height: 36px; font-weight: 700; color: #fff; text-align: center; cursor: pointer;}
.aside_bg {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; opacity: 0.5; z-index: 9998; display: none;}


/* main_slide */ 
.main_slide {width: 100%; height: 1000px; margin: 80px auto 0; overflow: hidden;}
.main_slide .swiper-slide {width: 100%; height: 100%;}

.main_slide .swiper-pagination {bottom: 50px; left: 50%; transform: translateX(-50%);}
.main_slide .swiper-pagination-bullet {width: 15px; height: 15px; border: 2px solid #fff; background-color: transparent; margin-right: 10px; opacity: 1;}
.main_slide .swiper-pagination-bullet:last-child {margin-right: 0px;}
.main_slide .swiper-pagination-bullet-active {background-color: #fff;}

/* banner */
.banner {width: 100%; height: 840px; background: url(../img/main-slide01.png) no-repeat center/cover; margin-top: 80PX;}

/* intro */
#intro {width: 100%; padding: 120px 0 0;}
#intro .intro_contents {max-width: 1045px; margin: 0 auto;}
#intro .intro_contents > div {display: flex; justify-content: space-between; padding: 60px 0; border-bottom: 2px dashed #b3b3b3;}
#intro .intro_contents > div:last-child {border-bottom: none;}
#intro .intro_contents > div .right {max-width: 525px; width: 100%;}

#intro .intro_contents .top .left {font-size: 60px; font-weight: 900;}
#intro .intro_contents .top .left span {font-weight: 300;}
#intro .intro_contents .top .right {font-size: 21px; line-height: 48px; font-weight: 300; letter-spacing: -1.5px; word-break: keep-all;}

#intro .intro_contents .middle .left {font-size: 60px; font-weight: 900;}
#intro .intro_contents .middle .right .ttop {padding-bottom: 40px; border-bottom: 2px dashed #b3b3b3;}
#intro .intro_contents .middle .right .ttop div {display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px;}
#intro .intro_contents .middle .right .ttop div:last-child {margin-bottom: 0;}
#intro .intro_contents .middle .right .ttop div p {font-size: 21px; line-height: 21px;}
#intro .intro_contents .middle .right .ttop div p:nth-child(1) {width: 130px;}
#intro .intro_contents .middle .right .ttop div p:nth-child(2) {width: 100px; text-align: right;}
#intro .intro_contents .middle .right .mmid {padding: 40px 0; border-bottom: 2px dashed #b3b3b3;}
#intro .intro_contents .middle .right .mmid div {display: flex; align-items: flex-end; justify-content: space-between;}
#intro .intro_contents .middle .right .mmid div:first-child {margin-bottom: 30px;}
#intro .intro_contents .middle .right .mmid div p {font-size: 21px; line-height: 21px;}
#intro .intro_contents .middle .right .mmid div h2 {font-size: 36px; line-height: 36px; color: #808080;}
#intro .intro_contents .middle .right .bbot {padding-top: 40px; display: flex; align-items: flex-end; justify-content: space-between;}
#intro .intro_contents .middle .right .bbot h3 {font-size: 21px; line-height: 21px; font-weight: 900;}
#intro .intro_contents .middle .right .bbot h2 {font-size: 36px; line-height: 36px; font-weight: 900;}

#intro .intro_contents .top .right_contents {max-width: 525px; width: 100%;}
#intro .intro_contents .top .right_contents > p {font-size: 30px; line-height: 40px; font-weight: 300; margin-bottom: 50px; word-break: keep-all;}
#intro .intro_contents .top .right_contents .contents {display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
#intro .intro_contents .top .right_contents .contents p {font-size: 21px; line-height: 21px;}
#intro .intro_contents .top .right_contents .contents h2 {font-size: 36px; line-height: 36px; font-weight: 900;}
#intro .intro_contents .top .right_contents > span {display: block; font-size: 20px; line-height: 36px; margin-top: 50px; word-break: keep-all;}



/* information */
#information {width: 100%; padding: 120px 0; background-color: #f7cd00;}
.information {max-width: 1150px; width: 100%; margin: 0 auto;}
.information .contents {display: flex; align-items: flex-start; margin-bottom: 80px;}
.information .contents:first-child {margin-top: 80px;}
.information .contents:last-child {margin-bottom: 0;}
.information .contents .left {width: 37%;}
.information .contents .right {width: 63%;}

.information .contents .left h2 {font-size: 48px; line-height: 48px; font-weight: 900;}
.information .contents .left h3 {font-size: 48px; line-height: 56px; font-weight: 900;}

.information .contents .right > h2 {font-size: 28px; font-weight: 900; margin-bottom: 30px; word-break: keep-all;}
.information .contents .right > h2 span {font-size: 18px; line-height: 18px; font-weight: 300;}
.information .contents .right > p {font-size: 21px; line-height: 36px; font-weight: 300; word-break: keep-all;}
.information .contents .right .con_detail {margin-top: 30px; display: flex; flex-wrap: wrap; flex-direction: row;}
.information .contents .right .con_detail i {font-size: 16px; line-height: 16px; font-weight: 300; font-style: normal; letter-spacing: -1px; width: 200px; margin-bottom: 15px;}


/* portfolio */
#portfolio {width: 100%; padding: 120px 0;}
#portfolio > p {font-size: 21px; line-height: 36px; font-weight: 300; text-align: center; margin: 80px auto 50px;}

#portfolio .number_ani {display: flex; flex-direction: column; gap: 15px; align-items: center; margin-bottom: 120px;}
#portfolio .number_ani div {display: flex; justify-content: center; align-items: flex-end; gap: 20px;}
#portfolio .number_ani div h2 {font-size: 145px; line-height: 145px; font-weight: 900; letter-spacing: -10px;}
#portfolio .number_ani div p {font-size: 100px; line-height: 100px; font-weight: 900; position: relative; top: -15px; letter-spacing: -6px;}

.portfolio_inner {position: relative; max-width: 1350px; height: 640px; margin: 0 auto;}
.portfolio_inner .contents {width: 100%; display: none;}
.portfolio_inner .contents.on {display: block;}
.portfolio_inner .contents .swiper-container {max-width: 1200px; margin: 0 auto; overflow: hidden;}
.portfolio_inner .contents .swiper-container .swiper-slide {width: 360px !important;}
.portfolio_inner .contents .swiper-container .swiper-slide img {width: 100%;}
.portfolio_inner .contents .swiper-container .swiper-slide h2 {font-size: 18px; line-height: 18px; font-weight: 700; text-align: center; margin: 20px auto; word-break: keep-all; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
.portfolio_inner .contents .swiper-container .swiper-slide a {display: block; width: 100px; height: 25px; border-radius: 25px; font-size: 14px; line-height: 28px; font-weight: 900; color: #754c24; background-color: #fff; text-align: center; margin: 0 auto;}
.prev_btn {position: absolute; top: 50%; left: 0; cursor: pointer;}
.next_btn {position: absolute; top: 50%; right: 0; cursor: pointer;}
.swiper-button-lock {display: block;}


/* faq */
#faq {width: 100%; padding: 120px 0;}
#faq .inner {max-width: 1200px; width: 100%; margin: 0 auto;}
#faq .inner .faq_category {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; flex-direction: row; margin: 50px auto 40px;}
#faq .inner .faq_category li {width: 15%; height: 40px; border-radius: 40px; border: 1px solid #000; font-size: 18px; line-height: 36px; text-align: center; font-weight: 300; cursor: pointer;}
#faq .inner .faq_category li.on {background-color: #000; color: #fff; font-weight: 500;}

#faq .inner .contents {display: none;}
#faq .inner .contents.on {display: block;}
#faq .inner .contents ul:first-child {border-top: 2px solid #333;}
#faq .inner .contents ul li {display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 25px 20px 25px 30px; border-bottom: 1px solid #dbdbdb;}
#faq .inner .contents ul li:first-child {cursor: pointer;}
#faq .inner .contents ul li:last-child {padding: 30px 20px 20px 30px; background-color: #f5f5f5; display: none;}
#faq .inner .contents ul li div {display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 20px; width: calc(100% - 40px);}
#faq .inner .contents ul li:last-child div {align-items: flex-start;}
#faq .inner .contents ul li div img {width: 43px; height: 43px;}
#faq .inner .contents ul li span {display: block; width: 20px; height: 20px; background: url(../img/arrow.png) no-repeat center/cover;}
#faq .inner .contents ul li span.on {background: url(../img/arrow_down.png) no-repeat center/cover;}
#faq .inner .contents ul li div > div {display: block; width: calc(100% - 63px);}
#faq .inner .contents ul li div p {font-size: 14px; color: #626262; font-weight: 700; word-break: keep-all; width: calc(100% - 70px);}
#faq .inner .contents ul li:last-child div p {color: #1a1a1a; line-height: 30px; width: calc(100% - 80px);}



/* bottom_fix */
.bottom_fix {width: 100%; height: 90px; background-color: #000; position: fixed; left: 0; bottom: 0; box-shadow: 7px 5px 15px rgba(0,0,0,0.25); z-index: 9997;}
.bottom_fix .inner {max-width: 1200px; width: 100%; height: 100%; display: flex; justify-content: space-between; align-items: center; margin: 0 auto;}
.bottom_fix .inner .left {display: flex; align-items: center; gap: 50px;}
.bottom_fix .inner .left div {display: flex; align-items: center; gap: 20px;}
.bottom_fix .inner .left div h2 {font-size: 21px; line-height: 21px; font-weight: 700; color: #fff;}
.bottom_fix .inner .left div input {width: 160px; height: 40px; border-radius: 5px; border: 1px solid #896239; outline: none; padding-left: 10px;}
.bottom_fix .inner .left div:last-child input {width: 200px;}
.bottom_fix .inner .right {display: flex; justify-content: center; align-items: center; gap: 30px;}
.bottom_fix .inner .right div {display: flex; align-items: center;}
.bottom_fix .inner .right div input {position: absolute; left: 3000%;}
.bottom_fix .inner .right div span {display: flex; justify-content: center; align-items: center; width: 16px; height: 16px; border: 1px solid #fff; cursor: pointer; position: relative; top: 1px;}
.bottom_fix .inner .right div span i {display: none;}
.bottom_fix .inner .right div span i img {position: relative; top: 3px;}
.bottom_fix .inner .right div p {font-size: 18px; line-height: 18px; color: #fff; margin: 0 5px; cursor: pointer;}
.bottom_fix .inner .right div a {font-size: 18px; line-height: 18px; color: #fff;}
.bottom_fix .inner .right button {width: 200px; height: 50px; background-color: #1a1a1a; font-size: 21px; font-weight: 700; color: #fff; border-radius: 5px;}


/* bottom_fix_mob */
.bottom_fix_mob {display: none; width: 100%; height: 80px; background-color: #000; position: fixed; left: 0; bottom: 0; box-shadow: 7px 5px 15px rgba(0,0,0,0.25); z-index: 9994; transition: all 0.3s;}
.bottom_fix_mob.on {height: 310px;}
.bottom_fix_mob .inner {width: 100%;}
.bottom_fix_mob .inner .top {display: flex; justify-content: space-between; align-items: center; height: 80px; padding: 0 16px;}
.bottom_fix_mob .inner .top h2 {font-size: 21px; line-height: 21px; font-weight: 900; color: #fff;}
.bottom_fix_mob .inner .top img {transform: rotate(-90deg); width: 20px;}
.bottom_fix_mob .inner .bottom {width: 100%; padding: 30px 16px; border-top: 1px solid #fff; display: none;}
.bottom_fix_mob.on .inner .bottom {display: block;}
.bottom_fix_mob .inner .bottom > div {margin-bottom: 20px;}
.bottom_fix_mob .inner .bottom > div:last-child {margin-bottom: 0;}
.bottom_fix_mob .inner .bottom > div:nth-child(1) {display: flex; align-items: center;}
.bottom_fix_mob .inner .bottom > div:nth-child(1) h2 {font-size: 21px; line-height: 21px; color: #fff; width: 100px;}
.bottom_fix_mob .inner .bottom > div:nth-child(1) input {width: calc(100% - 100px); height: 40px; outline: none; border: 1px solid #896239; padding-left: 10px;}
.bottom_fix_mob .inner .bottom > div:nth-child(2) {display: flex; align-items: center;}
.bottom_fix_mob .inner .bottom > div:nth-child(2) h2 {font-size: 21px; line-height: 21px; color: #fff; width: 100px;}
.bottom_fix_mob .inner .bottom > div:nth-child(2) input {width: calc(100% - 100px); height: 40px; outline: none; border: 1px solid #896239; padding-left: 10px;}

.bottom_fix_mob .inner .pri_contents {display: flex; justify-content: space-between; align-items: center;}
.bottom_fix_mob .inner .pri_contents .pri {display: flex; align-items: center;}
.bottom_fix_mob .inner .pri_contents .pri div {display: flex; align-items: center;}
.bottom_fix_mob .inner .pri_contents .pri div input {position: absolute; left: -3000%;}
.bottom_fix_mob .inner .pri_contents .pri div span {display: flex; justify-content: center; align-items: center; width: 16px; height: 16px; border: 1px solid #fff; cursor: pointer; position: relative; top: 1px; color: #fff;}
.bottom_fix_mob .inner .pri_contents .pri div span i {display: none;}
.bottom_fix_mob .inner .pri_contents .pri div span i img {position: relative; top: 3px;}
.bottom_fix_mob .inner .pri_contents .pri div p {font-size: 18px; line-height: 18px; color: #fff; margin: 0 5px; cursor: pointer;}
.bottom_fix_mob .inner .pri_contents .pri a {font-size: 18px; line-height: 18px; color: #fff;}
.bottom_fix_mob .inner .pri_contents button {width: 200px; height: 50px; background-color: #1a1a1a; font-size: 21px; font-weight: 700; color: #fff; border-radius: 5px;}


/* footer */
footer {position: relative; width: 100%; padding: 50px 0; background-color: #1a1a1a; z-index: 9997; font-family: 'NanumSquareRound', sans-serif;}
footer .inner {max-width: 1200px; margin: 0 auto;}
footer .inner .top {display: flex; justify-content: space-between; align-items: center;}
footer .inner .top div {display: flex; align-items: center; gap: 30px;}
footer .inner .top div a {position: relative; font-size: 16px; line-height: 16px; color: #fff;}
footer .inner .top div a::before {content: ''; position: absolute; top: 50%; right: -15px; transform: translateY(-50%); width: 2px; height: 16px; background-color: #fff; border-radius: 2px;}
footer .inner .top div a:last-child::before {display: none;}
footer .inner .middle {display: flex; justify-content: space-between; align-items: center; margin: 25px 0;}
footer .inner .middle .left p {font-size: 14px; line-height: 14px; color: #fff; margin-bottom: 10px;}
footer .inner .middle .left p:last-child {margin-bottom: 0;}
footer .inner .middle .left i {display: block; font-size: 14px; line-height: 14px; color: #fff; font-style: normal; cursor: pointer;}
footer .inner .middle .right {display: flex; align-items: center; gap: 15px;}
footer .inner .bottom {font-size: 21px; line-height: 21px; color: #fff; text-align: right;}


.news-view{width: 100%; height:50px; line-height: 50px; box-sizing: border-box; border-top: 1px solid #999; border-bottom: 1px solid #ccc;  padding-left: 15px; color: #666;font-size: 14px;margin-top: 25px;}
.news-view::after{clear: both;content: '';display: block;}
.news-view .title{float: left; width: 70%; font-weight: 900; font-size: 14px; color: #1a1a1a; background-color: inherit; margin-bottom: 0; line-height: 50px; text-align: left;}
.info_wrap01{text-align: left; width: 650px;height: 605px; position: fixed;margin-left: -325px;margin-top: -300px;top: 50%;left: 50%;background: #fff;padding: 5px 15px;border-radius: 25px;z-index: 9999;background: #fff;display: none;border: 1px solid #333;box-sizing: border-box;}
.info_wrap02{text-align: left; width: 650px;height: 605px; position: fixed;margin-left: -325px;margin-top: -300px;top: 50%;left: 50%;background: #fff;padding: 5px 15px;border-radius: 25px;z-index: 9999;background: #fff;display: none;border: 1px solid #333;box-sizing: border-box;}
.info_wrap03{text-align: left; width: 650px;height: 605px; position: fixed;margin-left: -325px;margin-top: -300px;top: 50%;left: 50%;background: #fff;padding: 5px 15px;border-radius: 25px;z-index: 9999;background: #fff;display: none;border: 1px solid #333;box-sizing: border-box;}
.view-detail {width: 100%}
.info_close_btn {width: 20px; height: 20px; position: absolute; right: 25px; top: 47px; cursor: pointer;}
.info_close_btn img{ display: block;}















/* 반응형 시작 */
@media(max-width:1600px){

    

}

@media(max-width:1500px){

    

}

@media(max-width:1440px){

    .portfolio_inner {max-width: 100%;}
    .prev_btn {left: 16px;}
    .next_btn {right: 16px;}

}

@media(max-width:1350px){

    .main_slide {height: 700px;}

    header {padding: 0 16px;}
    header .left {gap: 25px;}
    header .center > img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
    header .center .gnb {display: none;}

    .bottom_fix {display: none;}
    .bottom_fix_mob {display: block;}

    footer .inner {max-width: 100%; width: 100%; padding: 0 30px;}

    .portfolio_inner .contents .swiper-container {max-width: 780px;}

}

@media(max-width:1240px){

    #intro .intro_contents {padding: 0 16px;}

    #career .career_category {max-width: 100%; padding: 0 16px; gap: 2%;}
    #career .career_category li {width: 15%; font-size: 16px;}

    #career .career_contents {max-width: 100%; padding: 0 16px;}

    #client .inner {flex-direction: column-reverse;}
    #client .client_contents {max-width: 780px; width: 100%; gap: 20px;}
    #client .number_ani {margin-bottom: 60px; display: flex; flex-direction: column; gap: 15px; align-items: center;}
    #client .number_ani div {display: flex; justify-content: center; align-items: flex-end; gap: 20px;}
    #client .number_ani div h2 {font-size: 72px; line-height: 72px; font-weight: 900; color: #754c24; letter-spacing: 0;}
    #client .number_ani div p {font-size: 48px; line-height: 48px; font-weight: 900; position: relative; top: -8px; color: #754c24; letter-spacing: 0;}

    #portfolio .portfolio_category {max-width: 100%; padding: 0 16px; gap: 2%;}
    #portfolio .portfolio_category li {width: 15%; font-size: 16px;}

    #faq .inner {padding: 0 16px;}

}

@media(max-width:1200px){

    .information {padding: 0 16px;}

}

@media(max-width:1100px){

    .information .contents .right > h2 {font-size: 24px;}
    .information .contents .right > p {font-size: 18px; line-height: 32px;}

}

@media(max-width:1024px){

    aside {height: 100vh; top: 0;}
    aside .bottom {position: unset; margin-top: 50px;}
    aside .bottom p {padding-right: 0;}
    aside .bottom i {padding-right: 0;}
    aside span {position: unset; display: block; margin-top: 30px;}

    .banner {width: 100%; height: 1320px; background: url(../img/main-slide-mob01.png) no-repeat center/cover;}

    #intro .intro_contents > div {flex-direction: column; align-items: center;}
    #intro .intro_contents > div .left {text-align: center; margin-bottom: 40px;}

    #portfolio .portfolio_category li {font-size: 14px;}

    #client .number_ani div {gap: 10px;}
    #client .number_ani div h2 {font-size: 60px; line-height: 60px;}
    #client .number_ani div p {font-size: 36px; line-height: 36px;}
    #intro .intro_contents .top .right {text-align: center;}
    #intro .intro_contents .top .right_contents > p {text-align: center;}
    #intro .intro_contents .top .right_contents > span {text-align: center;}

    #portfolio {padding: 120px 0 160px;}

    .information .contents {flex-direction: column;}
    .information .contents .left {max-width: 525px; width: 100%; margin: 0 auto;}
    .information .contents .right {max-width: 525px; width: 100%; margin: 0 auto; text-align: center;}

    .information .contents .left h2 {display: none;}
    .information .contents .left h3 {text-align: center; margin-bottom: 30px;}
    .information .contents .left h3 br {display: none}

    .information .contents .right .con_detail {text-align: left; justify-content: center; max-width: 343px; margin: 30px auto 0;}
    .information .contents .right .con_detail i:nth-child(2n-1) {width: 143px;}

}

@media(max-width:930px){

    .portfolio_inner .contents .swiper-container {max-width: 343px;}
    .portfolio_inner .contents .swiper-container .swiper-slide {width: 343px !important;}
    .prev_btn {width: 20px;}
    .next_btn {width: 20px;}

} 

@media(max-width:854px){

    #portfolio > p {padding: 0 16px; font-size: 18px; line-height: 30px; margin: 60px auto 40px; word-break: keep-all;}

}

@media(max-width:810px){

    #client .client_contents {max-width: 580px;}

}

@media(max-width:768px){

    .info_wrap01 {width: 343px; margin: 0; transform: translate(-50%, -50%);}
    .info_wrap02 {width: 343px; margin: 0; transform: translate(-50%, -50%);}
    .info_wrap03 {width: 343px; margin: 0; transform: translate(-50%, -50%);}

    header {height: 80px;}
    header .left {gap: 15px;}
    header .left a img {width: 20px;}
    header .center > img {transform: translate(-50%, -50%) scale(60%);}
    header .ham {width: 20px;}

    aside {top: 0px; height: 100vh;}
    aside .gnb a {height: 50px; font-size: 18px;}

    .bottom_fix_mob {height: 60px;}
    .bottom_fix_mob.on {height: 290px;}
    .bottom_fix_mob .inner .top {height: 60px;}
    .bottom_fix_mob .inner .top h2 {font-size: 16px; line-height: 16px;}
    .bottom_fix_mob .inner .top img {width: 15px;}
    .bottom_fix_mob .inner .bottom > div:nth-child(1) h2 {font-size: 16px; line-height: 16px; width: 90px;}
    .bottom_fix_mob .inner .bottom > div:nth-child(1) input {width: calc(100% - 90px);}
    .bottom_fix_mob .inner .bottom > div:nth-child(2) h2 {font-size: 16px; line-height: 16px; width: 90px;}
    .bottom_fix_mob .inner .bottom > div:nth-child(2) input {width: calc(100% - 90px);}

    footer .inner .top {flex-direction: column; gap: 20px;}
    footer .inner .top div a {font-size: 14px; line-height: 14px;}
    footer .inner .top div a::before {height: 14px;}
    footer .inner .middle {flex-direction: column; text-align: center; gap: 20px;}
    footer .inner .bottom {text-align: center; word-break: keep-all; font-size: 16px; line-height: 16px;}

    .main_slide .swiper-pagination-bullet {width: 10px; height: 10px; border: 1px solid #fff; background-color: transparent; margin-right: 8px; opacity: 1;}
    .main_slide .swiper-pagination-bullet-active {background-color: #fff;}

    .banner {height: 800px;}

    #portfolio .portfolio_category {max-width: 343px; flex-direction: row; flex-wrap: wrap; gap: 6px; padding: 0;}
    #portfolio .portfolio_category li {width: 110px; font-size: 13px;}

    #faq .inner .faq_category li {width: 32%; margin-bottom: 15px; font-size: 14px;}

    #client .number_ani {margin-bottom: 40px; gap: 10px;}
    #client .number_ani div h2 {font-size: 48px; line-height: 48px;}
    #client .number_ani div p {font-size: 24px; line-height: 24px;}

    #portfolio {padding: 100px 0 120px;}

}

@media(max-width:710px){

    

}

@media(max-width:676px){

    .main_slide .swiper-pagination {bottom: 25px;}

}

@media(max-width:600px){

    .main_slide {height: 500px;}

    .bottom_fix_mob.on {height: 320px;}
    .bottom_fix_mob .inner .bottom > div:last-child {flex-direction: column; gap: 10px;}

    .banner {height: 600px;}

    #intro .intro_contents .top .right_contents > span br {display: none;}

    #portfolio .number_ani {margin-bottom: 60px;}
    #portfolio .number_ani div {gap: 10px;}
    #portfolio .number_ani div h2 {font-size: 90px; letter-spacing: -4px;}
    #portfolio .number_ani div p {font-size: 60px;}

}

@media(max-width:540px){

    #intro .intro_contents .top .left {font-size: 40px;}
    #intro .intro_contents .top .right {font-size: 18px; line-height: 36px;}
    #intro .intro_contents .middle .left {font-size: 40px;}
    #intro .intro_contents .middle .right .mmid div p {font-size: 18px; line-height: 18px;}
    #intro .intro_contents .middle .right .mmid div h2 {font-size: 28px; line-height: 28px;}
    #intro .intro_contents .middle .right .bbot h3 {font-size: 18px; line-height: 18px;}
    #intro .intro_contents .middle .right .bbot h2 {font-size: 28px; line-height: 28px;}
    #intro .intro_contents .top .right_contents > p {font-size: 20px; line-height: 30px;}
    #intro .intro_contents .top .right_contents .contents p {font-size: 16px;}
    #intro .intro_contents .top .right_contents .contents h2 {font-size: 28px;}

    .information .contents .left h3 {font-size: 36px; margin-bottom: 15px;}
    .information .contents .right > h2 {font-size: 21px; margin-bottom: 20px;}
    .information .contents .right > h2 span {display: block;}
    .information .contents .right > p {font-size: 16px; line-height: 30px;}
    .information .contents:first-child {margin-top: 50px;}

}

@media(max-width:500px){

    #portfolio > p br {display: none;}

}

@media(max-width:480px){

    .main_slide {height: 450px;}

    #faq .inner .faq_category li {width: 32%;}

    #faq .inner .contents ul li {padding: 20px 15px;}
    #faq .inner .contents ul li div {gap: 15px;}
    #faq .inner .contents ul li div img {width: 35px; height: 35px;}
    #faq .inner .contents ul li div p {width: calc(100% - 70px);}

    #faq .inner .contents ul li:last-child div {width: 100%;}
    #faq .inner .contents ul li:last-child {padding: 20px 15px;}
    #faq .inner .contents ul li:last-child div > div {width: calc(100% - 50px);}

    .prev_btn {display: none;}
    .next_btn {display: none;}

}

@media(max-width:440px){

    

}

@media(max-width:390px){



}

