@charset "utf-8";


/* header */
#gloriasoft_header {width:100%; height:130px; padding:0 50px; position:fixed; left:0; top:0; z-index:300; transition:all 0.5s; transition-property:height, background;}

#gloriasoft_logo {width:218px; height:32px; background:url(../images/logo_w.svg) no-repeat center center; background-size:contain; margin-top:49px; position:relative; z-index:10; transition:margin 0.5s;}
#gloriasoft_logo a {display:block; width:100%; height:100%;}

#gloriasoft_gnb {width:100%; position:absolute; left:0; top:0;}
#gloriasoft_gnb > ul {display:flex; justify-content:center;}
#gloriasoft_gnb > ul > li > a {display:block; font-size:1.125em; color:#fff; line-height:130px; font-weight:700; text-transform:uppercase; padding:0 35px; transition:line-height 0.5s;}
#gloriasoft_gnb > ul > li > a span {position:relative;}
#gloriasoft_gnb > ul > li > a span:before {content:''; display:block; width:0; height:3px; background:#fff; position:absolute; left:50%; bottom:-7px; transform:translateX(-50%); transition:width 0.5s}
#gloriasoft_gnb > ul > li:hover > a span:before {width:100%;}

#menuToggle {display:none; width:26px; height:10px; margin-top:20px; position:relative; z-index:10;}
#menuToggle:before, #menuToggle:after {content:''; display:block; width:100%; height:2px; background:#fff; position:absolute; left:0; transition:top 0.5s  0.5s, bottom 0.5s  0.5s, margin 0.5s  0.5s, transform 0.5s}
#menuToggle:before {top:0;}
#menuToggle:after {bottom:0;}

#gloriasoft_header.on #menuToggle:before, #gloriasoft_header.on #menuToggle:after {transition:top 0.5s, bottom 0.5s, margin 0.5s, transform 0.5s 0.5s}
#gloriasoft_header.on #menuToggle:before {top:50%; margin-top:-1px; transform:rotate(45deg)}
#gloriasoft_header.on #menuToggle:after {bottom:50%; margin-bottom:-1px; transform:rotate(-45deg)}

#gloriasoft_header.scroll_on {backdrop-filter:blur(5px); background:rgba(0,0,0,0.5);}

@media screen and (min-width:1025px){
    #all_gnb {display:none;}

    #gloriasoft_header.scroll_on {height:80px;}
    #gloriasoft_header.scroll_on #gloriasoft_logo {margin-top:24px;}
    #gloriasoft_header.scroll_on #gloriasoft_gnb > ul > li > a {line-height:80px;}
}

@media screen and (max-width:1220px){
    #gloriasoft_header {padding:0 6%;}

    #gloriasoft_gnb {padding-left:220px;}
    #gloriasoft_gnb > ul > li > a {padding:0 20px;}
}

@media screen and (max-width:1024px){
    #gloriasoft_header {height:50px;}

    #gloriasoft_logo {float:left; width:170px; height:25px; margin-top:13px;}

    #menuToggle {float:right; display:block;}

    #gloriasoft_gnb {display:none;}

    #all_gnb {width:100%; height:100vh; backdrop-filter:blur(5px); background:rgba(0,0,0,0.5); padding:70px 6% 0; opacity:0; visibility:hidden; transition:all 0.4s; transition-property:opacity, visibility; position:fixed; left:0; top:0;}
    #all_gnb > ul > li {margin-bottom:4%; overflow:hidden;}
    #all_gnb > ul > li:last-child {margin-bottom:0;}
    #all_gnb > ul > li > a {display:block; font-size:1.875em; color:#fff; line-height:1.5em; font-weight:700; text-transform:uppercase; transform:translateY(100%); transition:transform 0.7s}

    #gloriasoft_header.on #all_gnb {opacity:1; visibility:visible;}
    #gloriasoft_header.on #all_gnb > ul > li:nth-child(1) a {transition-delay:0.4s;}
    #gloriasoft_header.on #all_gnb > ul > li:nth-child(2) a {transition-delay:0.5s;}
    #gloriasoft_header.on #all_gnb > ul > li:nth-child(3) a {transition-delay:0.6s;}
    #gloriasoft_header.on #all_gnb > ul > li:nth-child(4) a {transition-delay:0.7s;}
    #gloriasoft_header.on #all_gnb > ul > li:nth-child(5) a {transition-delay:0.8s;}
    #gloriasoft_header.on #all_gnb > ul > li > a {transform:translateY(0)}
}


/* footer */
#gloriasoft_footer {width:100%; background:#000; border-top:1px solid #a4a4a4; padding:50px 0; position:relative; z-index:10;}
#gloriasoft_footer .info li {display:inline-block; font-size:1em; color:#d1d1d1; line-height:1.8em; margin-right:20px;}
#gloriasoft_footer .info li strong {font-weight:700; margin-right:10px;}
#gloriasoft_footer .info li a {color:#d1d1d1;}
#gloriasoft_footer .copy {display:inline-block; font-size:1em; color:#a4a4a4; line-height:1.5em; font-weight:700; text-transform:uppercase; margin-top:30px;}
#gloriasoft_footer .f_member {display:inline-block; font-size:0.875em; color:#b7b7b7; line-height:23px; padding:0 10px; border:1px solid rgba(255,255,255,0.4); margin-left:2px;}

#gloriasoft_footer .go_top {display:block; width:70px; height:70px; font-size:1em; position:fixed; right:50px; bottom:30px; z-index:250;}
#gloriasoft_footer .go_top:before {content:'\f062'; font-size:1.25em; color:#fff; font-weight:300; font-family:'Font Awesome 6 Pro'; position:relative; z-index:5;}
#gloriasoft_footer .go_top .line {width:100%; height:100%; position:absolute; position:absolute; left:0; top:0; overflow:hidden;}
#gloriasoft_footer .go_top .line:before {content:''; display:block; width:100%; height:100%; border:2px solid #fff; border-radius:50%; position:absolute; left:0; top:0;}
#gloriasoft_footer .go_top .line > div {float:left; width:50%; height:100%; position:relative; z-index:5; overflow:hidden;}
#gloriasoft_footer .go_top .line > div span {content:''; display:block; width:100%; height:100%; border:2px solid #e12f56;}
#gloriasoft_footer .go_top .line > div.left span {border-right:0; border-radius:35px 0 0 35px; transform:rotate(-180deg); transform-origin:100% 50%}
#gloriasoft_footer .go_top .line > div.right span {border-left:0; border-radius:0 35px 35px 0; transform:rotate(-180deg); transform-origin:0% 50%}

@media screen and (max-width:1024px){
    #gloriasoft_footer {padding:5% 0;}
    #gloriasoft_footer .info li {margin-right:10px;}
    #gloriasoft_footer .info li strong {margin-right:5px;}
    #gloriasoft_footer .copy {margin-top:3%;}

	#gloriasoft_footer .go_top {width:50px; height:50px; right:20px; bottom:20px;}
	#gloriasoft_footer .go_top:before {font-size:1em;}
}

@media screen and (max-width:767px){
	#gloriasoft_footer .go_top {width:35px; height:35px;}
}



.cursor_drag {display:flex; justify-content:center; align-items:center; width:120px; height:120px; background:#0077ff; border-radius:50%; transform:translate(50%, 50%); position:fixed; z-index:400; opacity:0; transition:opacity 0.3s; pointer-events:none;}
.cursor_drag p {font-size:1em; color:#fff; font-weight:700; text-align:center;}

.cursor_drag2 {display:flex; justify-content:center; align-items:center; width:80px; height:80px; border:1px solid #fff; border-radius:50%; transform:translate(80%, 80%); position:fixed; z-index:400; opacity:0; transition:opacity 0.3s; pointer-events:none;}
.cursor_drag2:before, .cursor_drag2:after {font-size:0.75em; position:absolute; top:50%; transform:translateY(-50%)}
.cursor_drag2:before {content:'◀'; right:100%; margin-right:10px;}
.cursor_drag2:after {content:'▶'; left:100%; margin-left:10px;}
.cursor_drag2 p {font-size:0.875em; color:#fff; letter-spacing:0.1em; text-align:center; text-transform:uppercase;}

@media screen and (max-width:1024px){
    .cursor_drag {width:80px; height:80px;}

	.cursor_drag, .cursor_drag2 {display:none;}
}

@media screen and (max-width:767px){
    .cursor_drag {width:60px; height:60px;}
}


/* main */
.main_box {background:#000; position:relative; z-index:10;}

#mVisu {display:flex; justify-content:center; align-items:center; width:100%; height:100vh; position:relative; overflow:hidden;}
#mVisu .video_box {width:100%; height:100%; position:absolute; left:0; top:0;}
#mVisu .video_box video {min-width:125vw; min-height:125vh; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%)}
#mVisu .txt_box {text-align:center;}
#mVisu .txt_box .tit {font-size:7.5em; line-height:1em; font-weight:700;}
#mVisu .txt_box ul {height:130px; overflow:hidden;}
#mVisu .txt_box ul li {height:100%; font-size:7.5em; color:transparent; line-height:1em; font-weight:700; -webkit-text-fill-color:transparent; -webkit-text-stroke:1px #fff;}
#mVisu .txt_box .txt {font-size:1.5em; line-height:1.5em; font-weight:500; margin-top:50px;}
#mVisu .scroll_box {display:flex; justify-content:center; align-items:center; width:100%; text-align:center; position:absolute; bottom:30px; left:0;}
#mVisu .scroll_box > div {display:flex; justify-content:center; align-items:center; cursor:pointer;}
#mVisu .scroll_box .icon {width:12px; height:12px; margin-right:10px; position:relative;}
#mVisu .scroll_box .icon span {display:block; width:100%; height:100%; background:#fff; border-radius:50%; position:absolute; left:0; bottom:0; animation:mVisuIcon 2s ease-in-out infinite; animation-delay:0.6s;}
#mVisu .scroll_box .icon span:nth-child(1) {transform:translateY(-150%); background:rgba(255,255,255,0.4); animation-delay:0s;}
#mVisu .scroll_box .icon span:nth-child(2) {transform:translateY(-100%); background:rgba(255,255,255,0.6); animation-delay:0.2s;}
#mVisu .scroll_box .icon span:nth-child(3) {transform:translateY(-50%); background:rgba(255,255,255,0.8); animation-delay:0.4s;}
#mVisu .scroll_box p {font-size:0.625em; font-weight:500; text-transform:uppercase;}

@keyframes mVisuIcon {
    0% {opacity:0;}
    50% {opacity:1;}
    100% {opacity:0;}
}

@media screen and (max-width:1024px){
    #mVisu .txt_box .tit {font-size:5.5em;}
    #mVisu .txt_box ul {height:90px;}
    #mVisu .txt_box ul li {font-size:5.5em;}
    #mVisu .txt_box .txt {font-size:1.25em; margin-top:5%;}
    #mVisu .scroll_box {bottom:15px;}
    #mVisu .scroll_box .icon {width:8px; height:8px;}
}

@media screen and (max-width:767px){
    #mVisu .txt_box .tit {font-size:3.7em;}
    #mVisu .txt_box ul {height:55px;}
    #mVisu .txt_box ul li {font-size:3.7em;}
}


#mCompany {width:100%; height:300vh; position:relative; overflow:hidden;}
#mCompany .box {display:flex; justify-content:center; align-items:center; width:100%; height:100vh; position:absolute; left:0; top:0;}
#mCompany .txt_box {text-align:center; position:relative; z-index:5;}
#mCompany .txt_box > div {position:relative;}
#mCompany .txt_box .lottie_box {width:80%; max-width:500px; margin:0 auto;}
#mCompany .txt_box .lottie_box:before {content:''; display:block; width:100%; height:100%; position:absolute; left:0; top:0; z-index:10;}
#mCompany .txt_box .lottie {width:100%;}
#mCompany .txt_box dl {transition:all 0.8s; transition-property:opacity, visibility;}
#mCompany .txt_box dl:last-child {width:100%; position:absolute; left:0; top:0; opacity:0; visibility:hidden;}
#mCompany .txt_box dl dt {font-size:3.75em; line-height:1.3em; letter-spacing:-0.025em; font-weight:700;}
#mCompany .txt_box dl dd {font-size:1.125em; line-height:1.9em; font-weight:500; margin-top:30px;}
#mCompany .img_box {width:100%; height:100%; background:url(../images/mCompanyBG.jpg) no-repeat center center; background-size:cover; position:absolute; left:0; top:0; transform:translateY(100%); transition:transform 0.8s}
#mCompany .img_box > div {width:100%; height:100%; position:absolute; left:0; top:0; transition:all 0.8s; transition-property:opacity, visibility;}
#mCompany .img_box .shadow1 {background:rgba(0,0,0,0.2)}
#mCompany .img_box .shadow2 {background:rgba(47,71,225,0.6); opacity:0; visibility:hidden;}

#mCompany.active .txt_box dl:first-child {opacity:0; visibility:hidden;}
#mCompany.active .txt_box dl:last-child {opacity:1; visibility:visible; transition-delay:0.5s}
#mCompany.active .img_box .shadow1 {opacity:0; visibility:hidden;}
#mCompany.active .img_box .shadow2 {opacity:1; visibility:visible;}

@media screen and (max-width:1024px){
    #mCompany .txt_box dl dt {font-size:3em;}
    #mCompany .txt_box dl dd {font-size:1em; margin-top:3%;}
}

@media screen and (max-width:767px){
    #mCompany .txt_box dl dt {font-size:2.5em;}
}


#mService {width:100%; height:150vh; position:relative; /*overflow:hidden;*/}
#mService > div {display:flex; justify-content:center; align-items:center; width:100%; height:100vh; position:sticky; left:0; top:0; overflow:hidden;}
#mService h2 {font-size:2.81em; line-height:1.3em; letter-spacing:-0.025em; font-weight:700;}
.mService_slide {width:100%; margin-top:20px;}
.mService_slide .img_box {width:100%; height:434px; background-repeat:no-repeat; background-position:center center; background-size:cover; margin-bottom:50px;}
.mService_slide dl dt {font-size:1.25em; line-height:1.3em; font-weight:700;}
.mService_slide dl dt h3 {font-size:1em;}
.mService_slide dl dd {font-size:1.125em; color:#d1d1d1; line-height:1.66em; margin-top:20px;}

@media screen and (min-height:1080px){
    .mService_slide {margin-top:50px;}
}

@media screen and (min-width:1025px){
    .mService_slide .swiper-slide {transform:translateY(150px); transition:transform 0.4s ease-in-out;}
    .mService_slide .swiper-slide:nth-child(2), .mService_slide .swiper-slide:nth-child(4), .mService_slide .swiper-slide:nth-child(6) {margin-top:100px; transform:translateY(-150px)}

}

@media screen and (max-width:1220px){
    .mService_slide .img_box {height:33vw;}
}

@media screen and (max-width:1024px){
	#mService {height:auto; padding:15% 0;}
	#mService > div {height:auto; position:relative;}
    #mService h2 {font-size:2.4em;}
    .mService_slide {margin-top:5%;}
    .mService_slide .swiper-slide:nth-child(2), .mService_slide .swiper-slide:nth-child(4), .mService_slide .swiper-slide:nth-child(6) {margin-top:50px;}
    .mService_slide .img_box {margin-bottom:20px;}
    .mService_slide dl dt {font-size:1.125em;}
    .mService_slide dl dd {font-size:1em; margin-top:10px;}
}

@media screen and (max-width:767px){
    .mService_slide {max-width:250px;}
    .mService_slide .swiper-slide:nth-child(2), .mService_slide .swiper-slide:nth-child(4), .mService_slide .swiper-slide:nth-child(6) {margin-top:0;}
    .mService_slide .img_box {height:90vw; max-height:320px;}
}


#mSolution {width:100%; overflow:hidden; padding-bottom:180px;}
#mSolution .en_box {display:flex; justify-content:flex-start; align-items:center; flex-direction:row; width:100%; white-space:nowrap; transition:transform 0.5s}
#mSolution .en {display:inline-block; font-size:12.5em; color:transparent; line-height:1.2em; font-weight:700; -webkit-text-fill-color:transparent; -webkit-text-stroke:1px #fff; white-space:nowrap; transform:translateX(-20%) translateZ(0); animation:mSolution-txt linear infinite 35s}
#mSolution h2 {font-size:2.81em; line-height:1.3em; letter-spacing:-0.025em; font-weight:700; margin:100px auto 50px;}
#mSolution .box {width:100%; position:relative;}
#mSolution .box:before, #mSolution .box:after {content:''; display:block; width:0; height:1px; background:#5a5a5a; position:absolute; left:0; transition:width 1.5s}
#mSolution .box:before {top:0;}
#mSolution .box:after {bottom:0;}
#mSolution ul {display:flex; flex-wrap:wrap;}
#mSolution ul li {width:33.33%; padding:50px; position:relative;}
#mSolution ul li:before {content:''; display:block; width:1px; height:0; background:#5a5a5a; position:absolute; left:0; top:0; transition:height 1.5s}
#mSolution ul li:last-child:after {content:''; display:block; width:1px; height:0; background:#5a5a5a; position:absolute; right:0; top:0; transition:height 1.5s}
#mSolution ul li a {display:block; width:50px; height:50px; background:#0077ff; border-radius:50%; font-size:1em; color:#d1d1d1; line-height:50px; text-align:center; position:absolute; right:50px; top:60px;}
#mSolution ul li a:before {content:'\2b'; font-weight:400; font-family:'Font Awesome 6 Pro'}
#mSolution ul li a.wait {width:70px; height:70px; background:#232227; line-height:70px; font-size:0.875em; color:#777; font-weight:700; top:50px;}
#mSolution ul li a.wait:before {content:'';}
#mSolution ul li .lottie {width:90px; height:90px; margin:20px 0;}
#mSolution ul li dl dt {font-size:1.25em; line-height:1.4em; font-weight:700;}
#mSolution ul li dl dd {font-size:1.125em; color:#d1d1d1; line-height:1.6em; margin-top:20px;}

#mSolution .box.active:before, #mSolution .box.active:after {width:100%;}
#mSolution .box.active ul li:before, #mSolution .box.active ul li:after {height:100%;}

@keyframes mSolution-txt {
    from {transform: translateX(-20%) translateZ(0)}
    to {transform: translateX(-120%) translateZ(0)}
}


@media screen and (max-width:1024px){
    #mSolution {padding-bottom:13%;}
    #mSolution .en {font-size:10vw;}
    #mSolution h2 {font-size:2.4em; margin:15% auto 5%;}
    #mSolution ul li {padding:30px;}
    #mSolution ul li a {width:40px; height:40px; line-height:40px; right:30px; top:40px;}
    #mSolution ul li a.wait {width:50px; height:50px; line-height:50px; top:30px;}
	#mSolution ul li .lottie {width:70px; height:70px; margin:10px 0;}
    #mSolution ul li dl dt {font-size:1.125em;}
    #mSolution ul li dl dd {font-size:1em; margin-top:10px;}
}

@media screen and (max-width:767px){
    #mSolution ul {position:relative;}
    #mSolution ul:before, #mSolution ul:after {content:''; display:block; width:1px; height:0; background:#5a5a5a; position:absolute; left:0; top:0; transition:height 1.5s}
    #mSolution ul:after{left:auto; right:0;}
    #mSolution ul li {width:100%; padding:20px;}
    #mSolution ul li:before {width:0; height:1px; top:auto; bottom:0; transition:width 1.5s;}
    #mSolution ul li:last-child:before, #mSolution ul li:last-child:after {display:none;}
    #mSolution ul li a {width:30px; height:30px; font-size:0.875em; line-height:30px; right:15px; top:15px;}
    #mSolution ul li a.wait {width:40px; height:40px; line-height:40px; top:10px;}
	#mSolution ul li .lottie {width:50px; height:50px;}
    
    #mSolution .box.active ul li:before {width:100%; height:1px;}
    #mSolution .box.active ul:before, #mSolution .box.active ul:after {height:100%;}
}


.mProject_slide {width:100%; height:100vh; position:relative; overflow:hidden;}
.mProject_slide .swiper-slide {display:flex; justify-content:center; align-items:center; position:relative;}
.mProject_slide .img_box {width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; position:absolute; left:0; top:0; z-index:0;}
.mProject_slide .img_box:before {content:''; display:block; width:100%; height:100%; background:rgba(0,0,0,0.5)}
.mProject_slide .txt_box {position:relative; z-index:5;}
.mProject_slide .txt_box .launch {font-size:1.375em; line-height:1.5em; font-weight:700; margin-bottom:40px;}
.mProject_slide .txt_box .subject {font-size:3.75em; line-height:1.25em; font-weight:700;}
.mProject_slide .txt_box ul {margin-top:20px;}
.mProject_slide .txt_box ul li {display:inline-block; font-size:1.125em; color:#d1d1d1;}
.mProject_slide .txt_box ul li:not(:last-child):after {content:'|'; margin:0 10px;}
.mProject_slide .txt_box a {display:inline-flex; align-items:center; font-size:1em; font-weight:700; text-transform:uppercase; margin-top:60px; position:relative;}
.mProject_slide .txt_box a:after {content:''; display:block; width:60px; height:60px; background:#e12f56; border-radius:50%; position:absolute; top:50%; right:0; margin:-30px -30px 0 0;}
.mProject_slide .txt_box a .icon {display:block; width:57px; height:12px; background:url(../images/mProduct_icon1.svg) no-repeat center center; background-size:contain; margin-left:20px; position:relative; z-index:5; transition:transform 0.5s;}
.mProject_slide .txt_box a:hover:after {animation:mProductCircle 0.7s both}
.mProject_slide .txt_box a:hover .icon {transform:translateX(10px)}
.mProject_slide.swiper-container-horizontal>.swiper-pagination-bullets {width:auto; left:50%; bottom:20px; transform:translateX(-50%); display:none;}
.mProject_slide.swiper-container-horizontal>.swiper-pagination-bullets:before {content:''; display:block; width:calc(100% - 30px); border-top:1px dotted rgba(255,255,255,0.2); position:absolute; left:50%; top:50%; margin-top:2px; transform:translateX(-50%);}
.mProject_slide.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {margin:0 15px;}
.mProject_slide .swiper-pagination-bullet {width:4px; height:4px; background:#fff; opacity:1; position:relative;}
.mProject_slide .swiper-pagination-bullet-active:before {content:''; display:block; width:30px; height:30px; border:1px solid #fff; border-radius:50%; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%)}

@keyframes mProductCircle {
	0% {transform:scale(1); }
	50% {transform:scale(1.4); }
	100% {transform:scale(1); }
}

@media screen and (max-width:1024px){
    .mProject_slide .txt_box .launch {font-size:1.25em; margin-bottom:4%;}
    .mProject_slide .txt_box .subject {font-size:3.2em;}
    .mProject_slide .txt_box ul {margin-top:2%;}
    .mProject_slide .txt_box ul li {font-size:1em;}
    .mProject_slide .txt_box a {margin-top:6%;}
    .mProject_slide .txt_box a:after {width:45px; height:45px; margin:-22.5px -22.5px 0 0;}
    .mProject_slide .txt_box a .icon {width:45px; height:9;}
	.mProject_slide.swiper-container-horizontal>.swiper-pagination-bullets {display:block;}
}

@media screen and (max-width:767px){
    .mProject_slide .txt_box .subject {font-size:2.6em;}
    .mProject_slide .txt_box a:after {width:32px; height:32px; margin:-16px -16px 0 0;}
}


#mContact {display:flex; justify-content:center; align-items:center; width:100%; min-height:100vh; padding:50px 0;}
#mContact h2 {font-size:2.81em; line-height:1.3em; letter-spacing:-0.025em; font-weight:700; margin-bottom:50px;}
#mContact .map_cont {width:100%; height:500px; background:#d1d1d1;}
#mContact .map_cont .root_daum_roughmap .wrap_map {height:100% !important;}
#mContact .info {width:100%; margin-top:50px;}
#mContact .info dl {display:flex; justify-content:space-between; flex-wrap:wrap; width:100%;}
#mContact .info dl dt {width:300px; font-size:1.25em; font-weight:700; padding:15px 0; border-bottom:1px solid #5a5a5a;}
#mContact .info dl dd {width:calc(100% - 350px); font-size:1.125em; color:#d1d1d1; line-height:1.6em; padding:15px 0; border-bottom:1px solid #5a5a5a;}
#mContact .info dl dd a {color:#d1d1d1;}

@media screen and (max-width:1024px){
    #mContact {padding:5% 0;}
    #mContact h2 {font-size:2.4em; margin-bottom:5%;}
    #mContact .map_cont {height:370px;}
    #mContact .info {margin-top:5%;}
    #mContact .info dl dt {width:150px; font-size:1.125em;}
    #mContact .info dl dd {width:calc(100% - 170px); font-size:1em;}
}

@media screen and (max-width:767px){
    #mContact .map_cont {height:220px;}
    #mContact .info dl dt {width:100%; border-bottom:0; padding:15px 0 0;}
    #mContact .info dl dd {width:100%; padding:10px 0 15px;}
}


#mInquiry {display:flex; justify-content:center; align-items:center; width:100%; min-height:100vh; padding:50px 0;}
#mInquiry .inner:after {content:''; display:block; width:100%; clear:both;}
#mInquiry h2 {font-size:4.375em; line-height:1.14em; letter-spacing:-0.025em; font-weight:700;}
#mInquiry .txt_box {float:left; width:50%;}
#mInquiry .txt_box p {font-size:1.125em; line-height:1.9em; font-weight:500; margin:40px 0 50px;}
#mInquiry .txt_box .lottie {width:66px; height:66px;}
#mInquiry .form_box {float:left; width:50%;}
#mInquiry .form_box ul {display:flex; justify-content:space-between; flex-wrap:wrap; width:100%;}
#mInquiry .form_box ul li {width:calc(50% - 15px); position:relative;}
#mInquiry .form_box ul li.w_100 {width:100%;}
#mInquiry .form_box ul li:nth-child(2) ~ li {margin-top:15px;}
#mInquiry .form_box ul li label {font-size:1.125em; color:#d1d1d1; font-weight:600; position:absolute; left:0; top:24px; transition:all 0.5s; transition-property:color, transform, font;}
#mInquiry .form_box ul li .form_txt {display:block; width:100%; height:70px; background:none; border-radius:0; border:0; border-bottom:1px solid #5a5a5a; font-size:1.125em; color:#fff; font-family:'Pretendard'; font-weight:600;}
#mInquiry .form_box ul li .form_textarea {display:block; width:100%; height:143px; background:none; border-radius:0; border:0; border-bottom:1px solid #5a5a5a; font-size:1.125em; color:#fff; font-family:'Pretendard'; font-weight:600; padding:20px 0; resize:none;}
#mInquiry .form_box ul li .select_box {position:relative;}
#mInquiry .form_box ul li .select_box:after {content:'\f107'; font-size:1.25em; color:#d1d1d1; font-weight:300; font-family:'Font Awesome 6 Pro'; position:absolute; right:10px; top:50%; transform:translateY(-50%)}
#mInquiry .form_box ul li .select_box select {display:block; width:100%; height:70px; background:none; border-radius:0; border:0; border-bottom:1px solid #5a5a5a; font-size:1.125em; color:#fff; font-family:'Pretendard'; font-weight:600; -webkit-appearance: none; -moz-appearance: none; appearance: none; position:relative; z-index:5;}
#mInquiry .form_box ul li .select_box select option {color:#000;}
#mInquiry .form_box ul li .file_box {display:flex; align-items:center; width:100%; min-height:70px; border-bottom:1px solid #5a5a5a; position:relative; padding-right:40px;}
#mInquiry .form_box ul li .file_box:after {content:'\2b'; display:block; width:40px; font-size:1.25em; color:#d1d1d1; font-weight:300; font-family:'Font Awesome 6 Pro'; text-align:center; position:absolute; right:0; top:50%; transform:translateY(-50%)}
#mInquiry .form_box ul li .file_box input {width:100%; height:100%; opacity:0; position:absolute; left:0; top:0; z-index:5;}
#mInquiry .form_box ul li input:focus, #mInquiry .form_box ul li textarea:focus, #mInquiry .form_box ul li .form_txt:focus, #mInquiry .form_box ul li select:focus {outline:none; box-shadow:none !important; border:0 !important; border-bottom:1px solid #5a5a5a !important;}
#mInquiry .form_box .check_box {display:flex; align-items:center; margin-top:30px;}
#mInquiry .form_box .check_box input {display:none;}
#mInquiry .form_box .check_box .icon {display:block; width:16px; height:16px; border:1px solid #5a5a5a; font-size:0.75em; line-height:14px; text-align:center; margin-right:12px;}
#mInquiry .form_box .check_box input:checked + .icon {background:#5a5a5a;}
#mInquiry .form_box .check_box input:checked + .icon:before {content:'\f00c'; font-weight:300; font-family:'Font Awesome 6 Pro'}
#mInquiry .form_box .check_box p {font-size:0.875em; color:#d1d1d1; cursor:pointer;}
#mInquiry .form_box .submit_btn {float:right; font-size:1em; color:#fff; font-family:'Pretendard'; margin-top:30px; position:relative;}
#mInquiry .form_box .submit_btn:before {content:''; display:block; width:200px; height:200px; background:#232227; border-radius:50%; position:absolute; top:50%; right:-40px; transform:translate(50%, -50%); transition:transform 0.45s;}
#mInquiry .form_box .submit_btn span {font-size:1em; font-weight:700; text-transform:uppercase; margin-right:-55px; position:relative; z-index:5;}
#mInquiry .form_box .submit_btn span:after {content:'\f061'; display:inline-block; width:55px; font-size:1.875em; font-weight:300; font-family:'Font Awesome 6 Pro'; vertical-align:middle; text-align:right;}
#mInquiry .form_box .submit_btn:hover:before {transform:translate(50%, -50%) scale(0.7)}

#mInquiry .form_box ul li.active label {font-size:0.875em; color:#fff; transform:translateY(-150%);}

@media screen and (min-width:1025px){
	#mInquiry .form_box .submit_btn {cursor:none;}
}

@media screen and (max-width:1024px){
    #mInquiry {padding:10% 0;}
    #mInquiry h2 {font-size:3.7em;}
    #mInquiry .txt_box {float:none; width:100%;}
    #mInquiry .txt_box p {margin:4% 0;}
	#mInquiry .txt_box .lottie {width:50px; height:50px;}
    #mInquiry .form_box {float:none; width:100%; margin-top:5%;}
    #mInquiry .form_box ul li {width:calc(50% - 10px)}
    #mInquiry .form_box ul li label {font-size:1em; top:15px;}
    #mInquiry .form_box ul li .form_txt {height:45px; font-size:1em;}
    #mInquiry .form_box ul li .form_textarea {height:100px; font-size:1em; padding:13px 0;}
    #mInquiry .form_box ul li .select_box:after {font-size:1.125em;}
    #mInquiry .form_box ul li .select_box select {height:45px; font-size:1em;}
    #mInquiry .form_box ul li .file_box {min-height:45px; padding-right:30px;}
    #mInquiry .form_box ul li .file_box:after {width:30px; font-size:1em;}
    #mInquiry .form_box .check_box {margin-top:2%;}
	#mInquiry .form_box .btn_box {text-align:center;}
    #mInquiry .form_box .submit_btn {float:none; margin-top:5%;}
    #mInquiry .form_box .submit_btn:before {width:140px; height:140px;}
    #mInquiry .form_box .submit_btn span {margin-right:-35px;}
    #mInquiry .form_box .submit_btn span:after {width:35px; font-size:1.5em;}
}

@media screen and (max-width:767px){
    #mInquiry h2 {font-size:3em;}
    #mInquiry .form_box ul li {width:100%;}
    #mInquiry .form_box ul li:first-child ~ li {margin-top:15px;}
    #mInquiry .form_box .submit_btn:before {width:100px; height:100px; right:0;}
    #mInquiry .form_box .submit_btn span {margin-right:0;}
}


#wrap #wrapper {margin-top:200px; min-height:70vh;}

@media screen and (max-width:1024px){
	#wrap #wrapper {margin-top:80px;}
}


.popup_wrap {display:none; justify-content:center; align-items:center; width:100%; height:100vh; position:fixed; left:0; top:0; z-index:350;}
.popup_wrap.active {display:flex;}
.popup_wrap .popup_dim {width:100%; height:100%; background:rgba(0,0,0,0.5); position:absolute; left:0; top:0;}
.popup_wrap .popup_inner {width:88%; max-width:550px; background:#000; padding:40px; position:relative; box-shadow:0 0 15px rgba(255,255,255,0.05)}
.popup_wrap .popup_inner .close_btn {font-size:1.5em; position:absolute; right:35px; top:35px;}
.popup_wrap .popup_inner .close_btn:before {content:'\f00d'; font-size:1em; color:#fff; font-weight:300; font-family:'Font Awesome 6 Pro';}
.popup_wrap .popup_inner .tit {font-size:1.5em; font-weight:600;}
.popup_wrap .popup_inner > div {width:100%; max-height:40vh; overflow-y:auto; margin:30px 0; padding-right:20px;}
.popup_wrap .popup_inner > div::-webkit-scrollbar {width:3px;}
.popup_wrap .popup_inner > div::-webkit-scrollbar-thumb {background:#e12f56;}
.popup_wrap .popup_inner > div::-webkit-scrollbar-track {background:rgba(255,255,255, 0.1);}
.popup_wrap .popup_inner > div h4 {font-size:1em; font-weight:500; margin:30px 0 5px;}
.popup_wrap .popup_inner > div p {font-size:0.875em; line-height:1.7em;}
.popup_wrap .popup_inner .agree_btn {display:block; width:180px; height:50px; background:#fff; font-size:1em; color:#000; font-weight:600; font-family:'Pretendard'; margin:0 auto;}

@media screen and (max-width:767px){
	.popup_wrap .popup_inner {padding:20px;}
	.popup_wrap .popup_inner .close_btn {right:15px; top:20px;}
	.popup_wrap .popup_inner > div {margin:20px 0;}
	.popup_wrap .popup_inner > div h4 {font-size:1.125em;}
	.popup_wrap .popup_inner > div p {font-size:1em;}
	.popup_wrap .popup_inner .agree_btn {width:120px; height:40px;}
}