@charset "utf-8";

.terrariese_btn1 {display:block; width:fit-content; border-radius:100px; font-size:1.125em; color:#fff; font-family:var(--font-marcellus); padding:17px 41px; position:relative; overflow:hidden;}
.terrariese_btn1:before {content:''; display:block; width:100%; height:100%; border:1px solid #fff; border-radius:100px; position:absolute; left:0; top:0; z-index:0;}
.terrariese_btn1:after {content:''; display:block; width:100%; height:0; background:#c09639; position:absolute; left:0; bottom:0; z-index:3; transition:height 0.4s ease-in-out}
.terrariese_btn1 span {position:relative; z-index:10;}
.terrariese_btn1:hover:after {height:100%;}

@media screen and (max-width:1024px){
    .terrariese_btn1 {font-size:1em; padding:14px 30px;}
}

@media screen and (max-width:767px){
    .terrariese_btn1 {padding:10px 20px;}
}


/* header */
#terrariese_header {display:flex; justify-content:end; align-items:start; width:100%; height:152px; position:fixed; left:0; top:0; z-index:500; padding:40px; transition:height 0.5s, background 0.5s, padding 0.5s;}

#terrariese_header .h_util {display:flex; align-items:center; gap:0 16px;}

#terrariese_header .h_lang {position:relative}
#terrariese_header .h_lang button {font-size:0.875em; color:#fff; font-family:var(--font-marcellus); transition:color 0.5s;}
#terrariese_header .h_lang button:after {content:'\f107'; font-size:1em; font-weight:400; font-family:'Font Awesome 6 Pro'; margin-left:8px;}
#terrariese_header .h_lang button.on:after {content:'\f106'}
#terrariese_header .h_lang ul {display:none; background:#fff; border-radius:10px; text-align:center; padding:20px; position:absolute; left:50%; top:40px; transform:translateX(-50%)}
#terrariese_header .h_lang ul li {margin-bottom:16px;}
#terrariese_header .h_lang ul li:last-child {margin-bottom:0;}
#terrariese_header .h_lang ul li a {display:block; font-size:0.875em; font-weight:600; font-family:var(--font-marcellus); letter-spacing:0; transition:color 0.4s;}
#terrariese_header .h_lang ul li a:hover {color:#c09639}
#terrariese_header .h_lang button.on + ul {display:block;}

#terrariese_logo {width:81px; height:72px; background:url(../images/logo_w.svg) no-repeat center center; background-size:contain; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); z-index:15;}
#terrariese_logo a {display:block; width:100%; height:100%;}

#terrariese_gnb {display:flex; justify-content:center; align-items:center; width:100%; height:100vh; background:#191919; position:fixed; left:0; top:0; z-index:10; clip-path:circle(0px at 100% 0%); transition:clip-path 0.5s ease-in-out;}
#terrariese_gnb > ul {width:100%; max-width:1200px; margin:0 auto; padding:0 40px;}
#terrariese_gnb > ul > li {margin-bottom:40px;}
#terrariese_gnb > ul > li:last-child {margin-bottom:0;}
#terrariese_gnb > ul > li > a {display:block; font-size:4.5em; color:rgba(255,255,255,0.5); line-height:1.2em; font-family:var(--font-marcellus); text-align:center; transition:color 0.3s}
#terrariese_gnb > ul > li > a:hover {color:#fff;}

#menuOpen {display:flex; justify-content:center; align-items:center; flex-direction:column; gap:3px; width:48px; height:48px; background:rgba(25,25,25,0.3); border-radius:50%;}
#menuOpen span {display:block; width:18px; height:2px; background:#fff; transition:background 0.5s}
#menuOpen span:nth-child(2) {transform:scaleX(0.611); transform-origin:right center;}

#menuClose {width:48px; height:48px; font-size:1.5em; color:#fff; position:absolute; right:40px; top:40px;}

#terrariese_header.scroll_on {display:none;}
#terrariese_header.scroll_on #terrariese_logo {background-image:url(../images/logo.svg);}
#terrariese_header.scroll_on .h_lang button {color:#191919;}
#terrariese_header.scroll_on .h_lang ul {box-shadow:5px 5px 15px rgba(25,25,25,0.1)}

#terrariese_header.scroll_on2 {background:#fff; box-shadow:0 0 10px rgba(25,25,25,0.1)}
#terrariese_header.scroll_on2 #terrariese_logo {background-image:url(../images/logo.svg);}
#terrariese_header.scroll_on2 .h_lang button {color:#191919;}
#terrariese_header.scroll_on2 .h_lang ul {box-shadow:5px 5px 15px rgba(25,25,25,0.1)}

#terrariese_header.on #terrariese_logo {background-image:url(../images/logo_w.svg)}
#terrariese_header.on #terrariese_gnb {clip-path:circle(150% at 100% 0%);}

@media screen and (min-width:1025px){
    #terrariese_header.scroll_on2 {height:100px; padding:30px 40px;}
}

@media screen and (max-width:1220px){
    #terrariese_header {padding:40px 6%;}

    #terrariese_gnb > ul {padding:0 6%;}

    #menuClose {right:6%;}
}

@media screen and (max-width:1024px){
    #terrariese_header {align-items:center; height:60px; padding:0 6%;}

    #terrariese_logo {width:56px; height:50px;}

    #terrariese_gnb > ul > li > a {font-size:3.7em;}

    #menuOpen {width:auto; height:auto; background:none; border-radius:0;}

    #menuClose {width:auto; height:60px; top:0;}

    #terrariese_header.scroll_on #menuOpen span {background:#191919}
    
    #terrariese_header.scroll_on2 #menuOpen span {background:#191919}
}

@media screen and (max-width:767px){
    #terrariese_gnb > ul > li {margin-bottom:25px;}
    #terrariese_gnb > ul > li > a {font-size:2.7em;}
}


/* footer */
#terrariese_footer {width:100%; background:#191919; padding:40px 0 80px; position:relative;}
#terrariese_footer > div {display:flex; align-items:start; flex-wrap:wrap;}
#terrariese_footer .f_logo {width:81px;}
#terrariese_footer .f_logo img {width:100%;}
#terrariese_footer .f_info {width:calc(100% - 81px); padding-left:40px;}
#terrariese_footer .f_info ul li {display:inline-block; font-size:0.875em; color:#fff; line-height:1.4em; margin:0 16px 8px 0;}
#terrariese_footer .f_info ul li strong {color:#666; font-weight:600; margin-right:8px;}
#terrariese_footer .f_info .copy {font-size:0.875em; color:#fff; line-height:1.4em; font-weight:600; margin-top:8px;}
#terrariese_footer .f_member {display:flex; gap:4px; position:absolute; right:0; bottom:0;}
#terrariese_footer .f_member a {display:block; border:1px solid #666; border-radius:40px; font-size:0.875em; color:#666; line-height:26px; padding:0 10px;}
#terrariese_footer .go_top {display:block; width:48px; height:48px; background:rgba(255,255,255,0.1); border-radius:50%; font-size:0.875em; color:#fff; position:absolute; right:40px; bottom:40px;}

@media screen and (max-width:1024px){
    #terrariese_footer {padding:5% 0;}
    #terrariese_footer .f_logo {width:65px;}
    #terrariese_footer .f_info {width:calc(100% - 65px); padding-left:25px;}
    #terrariese_footer .f_member {position:relative; margin-top:15px;}
    #terrariese_footer .f_member a {line-height:22px; padding:0 8px;}
    #terrariese_footer .go_top {width:42px; height:42px; right:6%; bottom:5vw;}
}

@media screen and (max-width:767px){
    #terrariese_footer .f_logo {width:50px;}
    #terrariese_footer .f_info {width:100%; padding-left:0; margin-top:20px;}
    #terrariese_footer .f_info ul br {display:none;}
    #terrariese_footer .f_info ul li {font-size:0.9375em; margin:0 10px 5px 0;}
    #terrariese_footer .f_info ul li strong {margin-right:5px;}
    #terrariese_footer .f_info .copy {font-size:0.9375em;}
    #terrariese_footer .go_top {width:32px; height:32px;}
}


/* main */
#fullpage {position:relative;}
#fullpage:before,
#fullpage:after {content:'';position:absolute;left:0;width:100%;height:40vh;z-index:-1;}
#fullpage:before {top:-40vh;background:var(--fp-buffer-top, #000);}
#fullpage:after  {bottom:-40vh;background:var(--fp-buffer-bottom, #000);}

#fullpage .section .fp-tableCell {will-change:transform;}
#fullpage .section.bounce_down .fp-tableCell {animation:fpBounceDown 1400ms cubic-bezier(0.33,1,0.68,1) both;}
@keyframes fpBounceDown {
    0%   {transform:translateY(60px);}
    60%  {transform:translateY(-10px);}
    80%  {transform:translateY(4px);}
    100% {transform:translateY(0);}
}
#fullpage .section.bounce_up .fp-tableCell {animation:fpBounceUp 1400ms cubic-bezier(0.33,1,0.68,1) both;}
@keyframes fpBounceUp {
    0%   {transform:translateY(-60px);}
    60%  {transform:translateY(10px);}
    80%  {transform:translateY(-4px);}
    100% {transform:translateY(0);}
}

@media screen and (max-width:1024px){
    #fullpage .section .fp-tableCell {animation:none !important;}
}
@media (prefers-reduced-motion:reduce){
    #fullpage .section .fp-tableCell {animation:none !important;}
}


#mVisu {display:flex; justify-content:center; align-items:center; width:100%; height:100%; position:relative; overflow:hidden;}
#mVisu .video_box {width:100%; height:100%; position:absolute; left:0; top:0;}
#mVisu .video_box:before {content:''; display:block; width:100%; height:100%; background:rgba(25,25,25,0.5); position:absolute; left:0; top:0; z-index:3; transform:translateZ(0); -webkit-transform:translateZ(0); backface-visibility:hidden; -webkit-backface-visibility:hidden;}
#mVisu .video_box iframe {width:120%; height:120%; min-width:1920px; min-height:1080px; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%)}
#mVisu .txt_box {position:relative; z-index:10;}
#mVisu .txt_box .tit {font-size:6.25em; color:#fff; line-height:1.15em; font-weight:400; font-family:var(--font-marcellus);}
#mVisu .txt_box .txt {font-size:1.5em; color:#fff; line-height:1.6em; margin-top:24px;}
#mVisu .scroll_box {display:flex; justify-content:center; align-items:center; gap:0 16px; width:100%; position:absolute; left:0; bottom:40px; z-index:10;}
#mVisu .scroll_box .icon {display:block; width:5px; height:30px; background:rgba(255,255,255,0.3); border-radius:10px; position:relative; overflow:hidden;}
#mVisu .scroll_box .icon:before {content:''; display:block; width:5px; height:5px; background:#fff; border-radius:50%; position:absolute; left:0; top:-5px; animation:mVisuScroll 1.5s infinite ease-in-out}
#mVisu .scroll_box p {font-size:0.875em; color:#fff; font-family:var(--font-marcellus);}

#mVisu .txt_box .tit p {overflow:hidden; opacity:0; transform:scale(1.1) translate3d(0, -40px, 0);}
#mVisu .txt_box .tit.in-view p {opacity:1; transform:scale(1) translate(0,0);}
#mVisu .txt_box .tit.in-view p:nth-child(1) {transition:opacity 1.4s ease-in-out, transform 1.4s ease-in-out;}
#mVisu .txt_box .tit.in-view p:nth-child(2) {transition:opacity 1.4s 0.3s ease-in-out, transform 1.4s 0.3s ease-in-out;}

#mVisu .txt_box .tit p span {display:inline-block; opacity:0; filter:blur(0);}
#mVisu .txt_box .tit p span.show {animation:mVisuTextSmoke 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;}

@keyframes mVisuTextSmoke {
    0% { opacity:0; filter:blur(10px); transform:translateY(20px); }
    100% { opacity:1; filter:blur(0); transform:translateY(0); }
}

@keyframes mVisuScroll {
    0% {top:-5px;}
    60% {top:100%;}
    100% {top:100%;}
}

@media screen and (min-height:1080px){
    #mVisu .video_box iframe {min-width:3000px;}
}

@media screen and (max-width:1220px){
    #mVisu .txt_box .tit {font-size:5.8em;}
}

@media screen and (max-width:1024px){
    #mVisu .video_box iframe {min-width:1500px; min-height:1300px;}
    #mVisu .txt_box .tit {font-size:4em;}
    #mVisu .txt_box .txt {font-size:1.3em; margin-top:2.5%;}
    #mVisu .scroll_box {bottom:20px; gap:10px;}
    #mVisu .scroll_box .icon {width:4px; height:26px;}
    #mVisu .scroll_box .icon:before {width:4px; height:4px;}
}

@media screen and (max-width:767px){
    #mVisu .video_box iframe {min-width:1400px; min-height:1000px;}
    #mVisu .txt_box .tit {font-size:2.5em;}
    #mVisu .txt_box .txt {font-size:1.125em;}
}


.main_title .tit {font-size:3.125em; color:#fff; line-height:1.2em; letter-spacing:0; font-family:var(--font-marcellus)}
.main_title .txt {font-size:1.25em; color:#fff; line-height:1.75em; margin-top:24px;}
.main_title.bl .tit {color:#191919;}
.main_title.bl .txt {color:#666;}

.main_title .tit {overflow:hidden; opacity:0; transform:scale(1.1) translate3d(0, -40px, 0);}
.main_title .tit.in-view {opacity:1; transform:scale(1) translate(0,0); transition:opacity 1.4s ease-in-out, transform 1.4s ease-in-out;}
.main_title .tit span {display:inline-block; opacity:0; filter:blur(0);}
.main_title .tit span.show {animation:mVisuTextSmoke 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;}

#mVisu .txt_box .txt,
.main_title .txt,
#mCatalog .main_title .terrariese_btn1,
#mContact .form_box {opacity:0; filter:blur(10px);}
#mVisu .txt_box .txt.in-view,
.main_title .txt.in-view,
#mCatalog .main_title .terrariese_btn1.in-view,
#mContact .form_box.in-view {opacity:1; filter:blur(0); transition:opacity 1s 0.4s ease-in-out, filter 1s 0.4s ease-in-out;}
/* 폼은 좌측 타이틀보다 조금 늦게 따라 나온다 */
#mContact .form_box.in-view {transition-delay:0.7s;}

@media screen and (max-width:1024px){
    .main_title .tit {font-size:2.7em;}
    .main_title .txt {font-size:1.125em; margin-top:2%;}
}

@media screen and (max-width:767px){
    .main_title .tit {font-size:2.4em;}
    .main_title .txt {font-size:1em;}
}


#mAbout {display:flex; justify-content:center; align-items:center; width:100%; height:100%; position:relative; overflow:hidden;}
#mAbout .video_box {width:100%; height:100%; position:absolute; left:0; top:0;}
#mAbout .video_box:before {content:''; display:block; width:100%; height:100%; background:rgba(150,103,0,0.5); position:absolute; left:0; top:0; z-index:3; transform:translateZ(0); -webkit-transform:translateZ(0); backface-visibility:hidden; -webkit-backface-visibility:hidden;}
#mAbout .video_box iframe {width:120%; height:120%; min-width:1920px; min-height:1080px; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%)}
#mAbout .inner {display:flex; justify-content:end; position:relative; z-index:5;}
#mAbout .inner .main_title {max-width:580px;}

@media screen and (min-height:1080px){
    #mAbout .video_box iframe {min-width:3000px;}
}

@media screen and (max-width:1024px){
    #mAbout .video_box iframe {min-width:1500px; min-height:1300px;}
    #mAbout .inner .main_title {max-width:450px;}
}

@media screen and (max-width:767px){
    #mAbout .video_box iframe {min-width:1400px; min-height:1000px;}
    #mAbout .inner .main_title {max-width:100%;}
}


#mCatalog {display:flex; justify-content:center; align-items:center; width:100%; height:100%; background:#191919; position:relative; overflow:hidden;}
#mCatalog .img_box {display:flex; flex-direction:column; gap:2.3vw 0; width:100%; height:100%; position:absolute; left:0; top:0; overflow:hidden; padding:2.4vw 0;}
#mCatalog .img_box:before {content:''; display:block; width:100%; height:100%; position:absolute; left:0; top:0; z-index:10;}
#mCatalog .img_box > div {display:flex; gap:0 2vw; width:100%; height:calc(33.33% - 1.53vw)}
#mCatalog .img_box > div > div {height:100%; white-space:nowrap; opacity:0.3;}
#mCatalog .img_box > div > div img {width:auto; height:100%;}
#mCatalog .main_title {text-align:center; position:relative; z-index:10;}
#mCatalog .main_title .terrariese_btn1 {margin:40px auto 0;}

#mCatalog .img_box > div {margin-left:-70vw; transition:transform 1.8s cubic-bezier(0.22, 1.24, 0.36, 1);}
#mCatalog .img_box > div:nth-child(2) {transition-duration:2.1s;}
#mCatalog .img_box > div:nth-child(3) {transition-duration:1.95s;}
#mCatalog .img_box > div > div {flex-shrink:0;}
#mCatalog .img_box > div:nth-child(odd) {transform:translate3d(70vw, 0, 0);}
#mCatalog .img_box > div:nth-child(even) {transform:translate3d(-70vw, 0, 0);}
#mCatalog .img_box.in-view > div {transform:translate3d(0, 0, 0);}
#mCatalog .img_box.in-view > div:nth-child(even) {transform:translate3d(-6vw, 0, 0);}

@media screen and (max-width:1024px){
    #mCatalog .main_title .terrariese_btn1 {margin-top:5%;}
}

@media screen and (max-width:767px){
    #mCatalog .img_box {gap:5vw 0; padding:5vw 0;}
    #mCatalog .img_box  > div {gap:0 5vw; height:calc(33.33% - 3.33vw)}
    /* 화면이 좁아 지그재그가 잘 안 보이므로 짝수 줄을 더 밀어낸다 (PC 는 -6vw) */
    #mCatalog .img_box.in-view > div:nth-child(even) {transform:translate3d(-18vw, 0, 0);}
}


#mPartner {display:flex; justify-content:center; align-items:center; width:100%; height:100%; position:relative; overflow:hidden;}
#mPartner .video_box {width:100%; height:100%; position:absolute; left:0; top:0;}
#mPartner .video_box:before {content:''; display:block; width:100%; height:100%; background:rgba(25,25,25,0.5); position:absolute; left:0; top:0; z-index:3; transform:translateZ(0); -webkit-transform:translateZ(0); backface-visibility:hidden; -webkit-backface-visibility:hidden;}
#mPartner .video_box iframe {width:120%; height:120%; min-width:1920px; min-height:1080px; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%)}
#mPartner .inner {position:relative; z-index:5;}
#mPartner .inner .main_title {max-width:580px;}

@media screen and (min-height:1080px){
    #mPartner .video_box iframe {min-width:3000px;}
}

@media screen and (max-width:1024px){
    #mPartner .video_box iframe {min-width:1500px; min-height:1300px;}
    #mPartner .inner .main_title {max-width:450px;}
}

@media screen and (max-width:767px){
    #mPartner .video_box iframe {min-width:1400px; min-height:1000px;}
    #mPartner .inner .main_title {max-width:100%;}
}


#mContact {display:flex; justify-content:center; align-items:center; width:100%; height:100%; padding-top:90px;}
#mContact > div {display:flex; justify-content:space-between; align-items:start; flex-wrap:wrap;}
#mContact .main_title {width:580px;}
#mContact .form_box {width:calc(50% + 20px)}
#mContact .form_box ul li {display:flex; align-items:start; margin-bottom:16px;}
#mContact .form_box ul li label {display:block; width:103px; font-size:1.125em; font-weight:500; line-height:60px;}
#mContact .form_box ul li label i {color:#c09639; font-style:normal;}
#mContact .form_box ul li > div {width:calc(100% - 103px)}
#mContact .form_box ul li .form_txt {display:block; width:100%; height:60px; background:#f3f3f3; border:1px solid #f3f3f3; border-radius:30px; font-size:1.125em; padding:0 25px; box-shadow:none !important; transition:all 0.5s; transition-property:background, border;}
#mContact .form_box ul li .form_txt:focus {outline:none; background:#fff; border-color:#191919 !important;}
#mContact .form_box ul li .form_textarea {display:block; width:100%; height:120px; background:#f3f3f3; border:1px solid #f3f3f3; border-radius:30px; font-size:1.125em; padding:15px 25px; resize:none; box-shadow:none !important; transition:all 0.5s; transition-property:background, border;}
#mContact .form_box ul li .form_textarea:focus {outline:none; background:#fff; border-color:#191919 !important;}
#mContact .form_box ul li .select_box {width:100%; position:relative;}
#mContact .form_box ul li .select_box:after {content:'\f107'; font-size:1.125em; font-weight:400; font-family:'Font Awesome 6 Pro'; position:absolute; right:25px; top:50%; transform:translateY(-50%); pointer-events:none;}
#mContact .form_box ul li .select_box select {display:block; width:100%; height:60px; background:#fff; border:1px solid #ccc !important; border-radius:30px; font-size:1.125em; color:#666; padding:0 25px; box-shadow:none !important; transition:all 0.5s; transition-property:background, border; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
#mContact .form_box ul li .select_box select:focus {outline:none;}
#mContact .form_box .check_box {padding-left:103px;}
#mContact .form_box .check_box input {display:none;}
#mContact .form_box .check_box label {display:flex; align-items:center; gap:0 12px;}
#mContact .form_box .check_box label:before {content:'\f058'; font-size:1.125em; color:#ccc; font-weight:900; font-family:'Font Awesome 6 Pro'}
#mContact .form_box .check_box label p {font-size:1em; color:#666;}
#mContact .form_box .check_box label p button {font-size:1em; color:#191919; font-weight:600; text-decoration:underline;}
#mContact .form_box .check_box input:checked + label:before {color:#c09639;}
#mContact .form_box .submit_btn {display:block; width:100%; height:70px; background:#191919; border-radius:40px; font-size:1.25em; color:#fff; font-weight:600; text-align:center; transition:background 0.5s; margin-top:40px;}
#mContact .form_box .submit_btn:hover {background:#c09639;}

@media screen and (max-width:1460px){
    #mContact .form_box {width:calc(100% - 630px)}
}

@media screen and (max-width:1220px){
    #mContact .main_title {width:45%;}
    #mContact .form_box {width:calc(55% - 30px)}
}

@media screen and (max-width:1024px){
    #mContact {padding-top:60px;}
    #mContact .form_box ul li {margin-bottom:10px;}
    #mContact .form_box ul li label {width:80px; font-size:1em; line-height:45px;}
    #mContact .form_box ul li > div {width:calc(100% - 80px)}
    #mContact .form_box ul li .form_txt {height:45px; font-size:1em; padding:0 15px;}
    #mContact .form_box ul li .form_textarea {height:100px; border-radius:22.5px; font-size:1em; padding:10px 15px;}
    #mContact .form_box ul li .select_box:after {font-size:1em; right:15px;}
    #mContact .form_box ul li .select_box select {height:45px; font-size:1em; padding:0 15px;}
    #mContact .form_box .check_box {padding-left:80px;}
    #mContact .form_box .check_box label {gap:8px;}
    #mContact .form_box .submit_btn {height:55px; font-size:1.125em; margin-top:30px;}
}

@media screen and (max-width:767px){
    #mContact {padding-top:0;}
    #mContact .main_title {width:100%;}
    #mContact .form_box {width:100%; margin-top:5%;}
    #mContact .form_box ul li {margin-bottom:5px;}
    #mContact .form_box ul li label {width:70px; line-height:38px;}
    #mContact .form_box ul li > div {width:calc(100% - 70px)}
    #mContact .form_box ul li .form_txt {height:38px; padding:0 10px;}
    #mContact .form_box ul li .form_textarea {height:80px; border-radius:19px; padding:10px 10px;}
    #mContact .form_box ul li .select_box:after {right:10px;}
    #mContact .form_box ul li .select_box select {height:38px; padding:0 10px;}
    #mContact .form_box .check_box {padding-left:70px;}
    #mContact .form_box .submit_btn {height:45px; margin-top:25px;}
}


.privacy_popup {display:flex; justify-content:center; align-items:center; width:100%; height:100vh; background:rgba(25,25,25,0.8); position:fixed; left:0; top:0; z-index:550; opacity:0; visibility:hidden; transition:all 0.5s; transition-property:opacity, visibility;}
.privacy_popup .popup_inner {width:88%; max-width:850px; position:relative;}
.privacy_popup h2 {font-size:1.5em; color:#fff; font-weight:500; text-align:center; margin-bottom:20px;}
.privacy_popup .cont {width:100%; background:#fff; padding:30px; border-radius:20px;}
.privacy_popup .cont > div {width:100%}
.privacy_popup .cont > div p {max-height:400px; font-size:0.875em; color:#666; line-height:1.8em; overflow-y:scroll; padding-right:15px;}
.privacy_popup .cont > div p::-webkit-scrollbar {width:3px;}
.privacy_popup .cont > div p::-webkit-scrollbar-thumb {background:#191919;}
.privacy_popup .cont > div p::-webkit-scrollbar-track {background:#dcdcdc;}
.privacy_popup .close_btn {font-size:1.5em; color:#fff; position:absolute; right:5px; top:10px;}
.privacy_popup .close_btn:before {content:'\f00d'; font-size:1em; font-weight:300; font-family:'Font Awesome 6 Pro'}
.privacy_popup.on {opacity:1; visibility:visible;}

@media screen and (max-width:1024px){
	.privacy_popup h2 {margin-bottom:10px;}
	.privacy_popup .cont {padding:15px; border-radius:15px;}
	.privacy_popup .cont > div p {max-height:300px;}
	.privacy_popup .close_btn {top:7px;}
}

#fp-nav {position:fixed; right:39px !important; top:50%; z-index:300; transform:translate3d(0,0,0);}
/* 푸터 섹션용 도트는 노출하지 않는다 */
#fp-nav ul li.hide {display:none;}
#fp-nav ul li {display:block; width:auto; height:auto; margin:0; position:relative;}
#fp-nav ul li a {display:block; width:100%; height:100%; padding:12px 17px; position:relative; z-index:1;}
#fp-nav ul li a span {display:block; width:6px; height:6px; background:none; border:0; border-radius:50%; box-shadow:inset 0 0 0 8px rgba(255,255,255,0.3); position:absolute; left:50%; top:50%; z-index:1; margin:-3px 0 0 -3px; transition:transform 0.1s ease-in-out, box-shadow 0.25s ease-out;}
#fp-nav ul li a span:after {content:''; display:block; width:100%; height:100%; background:#fff; border-radius:50%; position:absolute; left:-5555px; top:0; opacity:1; transform:scale(0.4); transition:opacity 0.25s ease-out, transform 0.25s ease-out;}
#fp-nav ul li:hover a span {width:6px; height:6px; margin:-3px 0 0 -3px; animation:fpNavBounce 0.35s ease-in-out forwards;}
#fp-nav ul li:hover a span:after {left:0; opacity:0; transform:scale(1.3);}
#fp-nav ul li a.active span, #fp-nav ul li:hover a.active span {width:12px; height:12px; margin:-6px 0 0 -6px; box-shadow:inset 0 0 0 2px #fff;}

@keyframes fpNavBounce {
	0% {transform:scale(1)}
	50% {transform:scale(1.2)}
	100% {transform:scale(1)}
}

#fp-nav.bl ul li a span {box-shadow:inset 0 0 0 8px rgba(25,25,25,0.3);}
#fp-nav.bl ul li a span:after {background:#191919;}
#fp-nav.bl ul li a.active span, #fp-nav.bl ul li:hover a.active span {box-shadow:inset 0 0 0 2px #191919;}

@media screen and (max-width:1590px){
    #fp-nav {right:10px !important}
}

@media screen and (max-width:1024px){
	#fp-nav ul li a {padding:10px 14px;}
}

@media screen and (max-width:757px){
    #fp-nav {right:0px !important}
    #fp-nav ul li a {padding:10px;}
}


/* sub */
#sVisu {display:flex; justify-content:center; align-items:end; width:100%; height:100vh; padding-bottom:120px; position:fixed; left:0; top:0; z-index:0; overflow:hidden;}
#sVisu:before {content:''; display:block; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; position:absolute; left:0; top:0; z-index:0; transform:scale(1.2); animation:sVisu 1500ms ease-in-out forwards}
#sVisu:after {content:''; display:block; width:100%; height:100%; background:rgba(25,25,25,0.5); position:absolute; left:0; top:0; z-index:1;}
#sVisu .txt_box {position:relative; z-index:10; text-align:center;}
#sVisu .txt_box h2 {font-size:1.5em; color:rgba(255,255,255,0.3); font-weight:400; font-family:var(--font-marcellus)}
#sVisu .txt_box .t1 {font-size:3.125em; color:#fff; line-height:1.2em; font-weight:400; font-family:var(--font-marcellus); margin-top:16px;}
#sVisu .txt_box .t2 {font-size:1.25em; color:#fff; line-height:1.5em; font-weight:600; margin-top:8px;}

#sVisu.contact:before {background-image:url(../images/sVisu_contact.jpg)}

@keyframes sVisu {
    0% {transform:scale(1.1);}
    100% {transform:scale(1);}
}

@media screen and (max-width:1024px){
    #sVisu {padding-bottom:70px;}
    #sVisu .txt_box h2 {font-size:1.3em;}
    #sVisu .txt_box .t1 {font-size:2.7em; margin-top:1.5%;}
    #sVisu .txt_box .t2 {font-size:1.125em; margin-top:1%;}
}

@media screen and (max-width:767px){
    #sVisu {padding-bottom:40px;}
    #sVisu .txt_box h2 {font-size:1.2em;}
    #sVisu .txt_box .t1 {font-size:2.2em;}
    #sVisu .txt_box .t2 {font-size:1em;}
}


#sub_content {width:100%; background:#fff; margin-top:100vh; padding:120px 0; position:relative; z-index:10;}

.sub_title .tit {font-size:3.125em; color:#191919; line-height:1.2em; letter-spacing:0; font-family:var(--font-marcellus)}
.sub_title .txt {font-size:1.25em; color:#666; line-height:1.75em; margin-top:24px;}

@media screen and (max-width:1024px){
    #sub_content {padding:12% 0;}
    
    .sub_title .tit {font-size:2.7em;}
    .sub_title .txt {font-size:1.125em; margin-top:2%;}
}

@media screen and (max-width:767px){
    .sub_title .tit {font-size:2.4em;}
    .sub_title .txt {font-size:1em;}
}


.sContact_case1 {display:flex; justify-content:space-between; align-items:start; flex-wrap:wrap; width:100%; height:100%; padding-top:90px;}
.sContact_case1 .main_title {width:580px;}
.sContact_case1 .form_box {width:calc(50% + 20px)}
.sContact_case1 .form_box ul li {display:flex; align-items:start; margin-bottom:16px;}
.sContact_case1 .form_box ul li label {display:block; width:103px; font-size:1.125em; font-weight:500; line-height:60px;}
.sContact_case1 .form_box ul li label i {color:#c09639; font-style:normal;}
.sContact_case1 .form_box ul li > div {width:calc(100% - 103px)}
.sContact_case1 .form_box ul li .form_txt {display:block; width:100%; height:60px; background:#f3f3f3; border:1px solid #f3f3f3; border-radius:30px; font-size:1.125em; padding:0 25px; box-shadow:none !important; transition:all 0.5s; transition-property:background, border;}
.sContact_case1 .form_box ul li .form_txt:focus {outline:none; background:#fff; border-color:#191919 !important;}
.sContact_case1 .form_box ul li .form_textarea {display:block; width:100%; height:250px; background:#f3f3f3; border:1px solid #f3f3f3; border-radius:30px; font-size:1.125em; padding:15px 25px; resize:none; box-shadow:none !important; transition:all 0.5s; transition-property:background, border;}
.sContact_case1 .form_box ul li .form_textarea:focus {outline:none; background:#fff; border-color:#191919 !important;}
.sContact_case1 .form_box ul li .select_box {width:100%; position:relative;}
.sContact_case1 .form_box ul li .select_box:after {content:'\f107'; font-size:1.125em; font-weight:400; font-family:'Font Awesome 6 Pro'; position:absolute; right:25px; top:50%; transform:translateY(-50%); pointer-events:none;}
.sContact_case1 .form_box ul li .select_box select {display:block; width:100%; height:60px; background:#fff; border:1px solid #ccc !important; border-radius:30px; font-size:1.125em; color:#666; padding:0 25px; box-shadow:none !important; transition:all 0.5s; transition-property:background, border; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.sContact_case1 .form_box ul li .select_box select:focus {outline:none;}
.sContact_case1 .form_box .check_box {padding-left:103px;}
.sContact_case1 .form_box .check_box input {display:none;}
.sContact_case1 .form_box .check_box label {display:flex; align-items:center; gap:0 12px;}
.sContact_case1 .form_box .check_box label:before {content:'\f058'; font-size:1.125em; color:#ccc; font-weight:900; font-family:'Font Awesome 6 Pro'}
.sContact_case1 .form_box .check_box label p {font-size:1em; color:#666;}
.sContact_case1 .form_box .check_box label p button {font-size:1em; color:#191919; font-weight:600; text-decoration:underline;}
.sContact_case1 .form_box .check_box input:checked + label:before {color:#c09639;}
.sContact_case1 .form_box .submit_btn {display:block; width:100%; height:70px; background:#191919; border-radius:40px; font-size:1.25em; color:#fff; font-weight:600; text-align:center; transition:background 0.5s; margin-top:40px;}
.sContact_case1 .form_box .submit_btn:hover {background:#c09639;}

@media screen and (max-width:1460px){
    .sContact_case1 .form_box {width:calc(100% - 630px)}
}

@media screen and (max-width:1220px){
    .sContact_case1 .main_title {width:45%;}
    .sContact_case1 .form_box {width:calc(55% - 30px)}
}

@media screen and (max-width:1024px){
    .sContact_case1 {padding-top:60px;}
    .sContact_case1 .form_box ul li {margin-bottom:10px;}
    .sContact_case1 .form_box ul li label {width:80px; font-size:1em; line-height:45px;}
    .sContact_case1 .form_box ul li > div {width:calc(100% - 80px)}
    .sContact_case1 .form_box ul li .form_txt {height:45px; font-size:1em; padding:0 15px;}
    .sContact_case1 .form_box ul li .form_textarea {height:200px; border-radius:22.5px; font-size:1em; padding:10px 15px;}
    .sContact_case1 .form_box ul li .select_box:after {font-size:1em; right:15px;}
    .sContact_case1 .form_box ul li .select_box select {height:45px; font-size:1em; padding:0 15px;}
    .sContact_case1 .form_box .check_box {padding-left:80px;}
    .sContact_case1 .form_box .check_box label {gap:8px;}
    .sContact_case1 .form_box .submit_btn {height:55px; font-size:1.125em; margin-top:30px;}
}

@media screen and (max-width:767px){
    .sContact_case1 {padding-top:0;}
    .sContact_case1 .main_title {width:100%;}
    .sContact_case1 .form_box {width:100%; margin-top:5%;}
    .sContact_case1 .form_box ul li {margin-bottom:5px;}
    .sContact_case1 .form_box ul li label {width:70px; line-height:38px;}
    .sContact_case1 .form_box ul li > div {width:calc(100% - 70px)}
    .sContact_case1 .form_box ul li .form_txt {height:38px; padding:0 10px;}
    .sContact_case1 .form_box ul li .form_textarea {height:120px; border-radius:19px; padding:10px 10px;}
    .sContact_case1 .form_box ul li .select_box:after {right:10px;}
    .sContact_case1 .form_box ul li .select_box select {height:38px; padding:0 10px;}
    .sContact_case1 .form_box .check_box {padding-left:70px;}
    .sContact_case1 .form_box .submit_btn {height:45px; margin-top:25px;}
}