@charset "utf-8";
/*
 * Name     : layout.css
 * Version  : 1.1.2
 * Author   : 1px studio
 * Date     : 2023.10.20
 * Desc     : cursor issue fix
---------------------------------------------------
*/
:root {

/* Colors: */
--main: #e56525;
--primary: #e56525;
--primary-blend: #e56525; 
    /* <포인트 컬러 변경 시, 반전색 구하는 법>
    사이트의 마우스 커서는 이미지 등과 겹쳤을 때 보다 멋진 효과를 위해 반전색으로 설정해야 제대로 표현됩니다. 
    먼저 --primary-blend 컬러를 --primary와 같은 값으로 두고, 
    본 사이트를 띄워 흰색 화면 아무곳에 마우스를 둔 채로 화면을 캡쳐한 후, 
    포토샵 등에서 스포이드 툴로 반전된 컬러값을 추출 하시면 됩니다. */
--blueblack: #e56525;
--white-100: #ffffff;
--white-200: #ffffff;
--white-300: #ffffff;
--gray-50: #e56525;
--gray-100: #e56525;
--gray-150: #e56525;
--gray-200: #e56525;
--gray-300: #e56525;
--gray-400: #e56525;
--black: #000000;

/* Ease */
--expoOut: cubic-bezier(0.16, 1, 0.3, 1);
--expoInOut: cubic-bezier(0.87, 0, 0.13, 1);
--ease-out: cubic-bezier(0.050, 0.760, 0.380, 1.015);
--ease-in-out: cubic-bezier(0.895, 0.000, 0.180, 1.000);

/* Font system */
--font-family-eng: 'Pretendard';
--font-family-kor: 'Pretendard';
--font-style-normal: normal;
--font-weight-light: 200;
--font-weight-normal: 300;
--font-weight-medium: 400;
--font-weight-semibold: 500;
--font-weight-bold: 600;
--font-weight-black: 700;

--font-size-xs-1: 12.5px;
--font-size-xs-2: 14px;
--font-size-sm-1: 15.5px;
--font-size-sm-2: 17px;
--font-size-sm-3: 19px;
--font-size-md-1: 22px;
--font-size-md-2: 24px;
--font-size-lg-1: 26px;
--font-size-xl-1: 37px;
--font-size-xl-2: 44px;

--line-height-0: 0;
--line-height-xs: 1.6;
--line-height-sm: 1.73;
--line-height-md: 1.56;
--line-height-lg: 1.43;
--line-height-xl: 1.34;

--letter-spacing-xs-1: -0.3px;
--letter-spacing-xs-2: -0.45px;
--letter-spacing-sm-1: -0.55px;
--letter-spacing-sm-2: -0.72px;
--letter-spacing-md-1: -0.88px;
--letter-spacing-md-2: -1.04px;
--letter-spacing-lg-1: -1.28px;
--letter-spacing-xl-1: -1.68px;
--letter-spacing-xl-2: -2.16px;

/* margin */
--margin-top-10: 10px;
--margin-top-20: 20px;
--margin-top-30: 30px;
--margin-top-40: 40px;
--margin-top-50: 50px;
--margin-top-60: 60px;
--margin-top-70: 70px;
--margin-space-1: 110px;
--margin-space-2: 160px;}

html {scroll-behavior: smooth;overflow-x: hidden;background: #000;}
body {padding:0;overflow-x: hidden;font-family: var(--font-family-kor);background: #000; color:#e56525;}
a {text-decoration: none; color: inherit}
a:hover {color: inherit;}
*::selection {background-color: var(--primary);color: var(--white-100);}
div, p, h1, h2, h3, h4, h5, h6 {line-height: 1.6;margin-bottom: 0;}
ul {list-style:none;padding:0;margin:0;}
main img {width:100%}
.form-select.line-style {border: none;border-bottom: 1px solid #191919;border-radius: 0;}
.form-select.line-style:focus {box-shadow: none;}
.margin-space-1 {margin-top: var(--margin-space-1);}
.margin-space-2 {margin-top: var(--margin-space-2);}
.m-0 {margin: 0 !important;}
.ellipsis-1 {width: 100%;display: -webkit-box;overflow: hidden;text-overflow: ellipsis;white-space: normal;-webkit-line-clamp: 1;-webkit-box-orient: vertical;word-break: normal;}
.ellipsis-2 {width: 100%;display: -webkit-box;overflow: hidden;text-overflow: ellipsis;white-space: normal;-webkit-line-clamp: 2;-webkit-box-orient: vertical;word-break: normal;}
.ellipsis-3 {width: 100%;display: -webkit-box;overflow: hidden;text-overflow: ellipsis;white-space: normal;-webkit-line-clamp: 3;-webkit-box-orient: vertical;word-break: normal;}


/* custom cursor */
.px-cursor {pointer-events: none;}
.px-cursor .cursor-ball {position: fixed;top: 0;left: 0;z-index: 1000;mix-blend-mode: difference;transform: scale(0.34);}
.px-cursor .cursor-ball .text {position: absolute;top: 20px;left: 0;width: 100%;right:0;text-align:center;color: #fff;font-size: 16px;transform: scale(1);font-weight: var(--font-weight-medium)}
.px-cursor .cursor-ball circle {fill: var(--primary-blend);}
.px-cursor .cursor-ball::after {content: '';width: 66px;height: 66px;background: var(--primary-blend);position: absolute;top: 3px;border-radius: 50px;transform: scale(0.5);opacity: 0;transition: all .6s var(--ease-out);}

/* header */
.gnb-font {font-size: var(--font-size-sm-1);font-weight: var(--font-weight-medium);letter-spacing: var(--letter-spacing-sm-1);color: var(--main);padding:0 20px;}
.gnb-sub-font {font-size: var(--font-size-sm-1);font-weight: var(--font-weight-normal);letter-spacing: var(--letter-spacing-xs-2);color: #a8a49f;}
.gnb-chat-btn {font-size: var(--font-size-sm-2);transition: all .3s;font-weight: var(--font-weight-semibold);letter-spacing: var(--letter-spacing-sm-2);color: var(--white-100);background-color: var(--primary);border-radius: 40px;margin-left: 8px;padding: 8px 32px;border:none;}
.footer-light-font {font-size: var(--font-size-xs-2);font-weight: var(--font-weight-normal);letter-spacing: var(--letter-spacing-xs-1);color: var(--main);margin-bottom: 0;line-height: var(--line-height-1);text-align: left;}
.footer-dark-font {float: right;font-size: var(--font-size-xs-1);line-height:var(--line-height-0);font-weight: var(--font-weight-normal);letter-spacing: var(--letter-spacing-xs-1);color: var(--main);opacity: 0.6;}
#header {position: fixed;left:0;right:0;top:0;z-index: 90;background-color: #000;height: 100px;transition: all .2s;}
#header.fixed {z-index: 90;background-color: #000;width: 100%;transition: all .2s;height: 100px;box-shadow: 0px -7px 16px 1px rgb(38 38 40 / 16%);/* border-bottom: 1px solid #f1efed; */}
#header.fixed .container-fluid .row {height: 100%;}
#header .container-fluid {padding: 0 50px;}
#header .container-fluid .row {height: 100px;}
#header .gnb {position: absolute;bottom: 12px;left: 50%;transform:translateX(-50%); white-space:nowrap;}
#header .gnb > ul > li {position: relative;display: inline-block;width: auto;height: auto;padding: 0;}
#header .gnb .gnb-sub {position: absolute;padding: 0 40px;top: 60px;left: 10px;margin-top: 30px;width: 180px;z-index: 99;text-align: left;background-color: var(--white-100);height:0;box-shadow: 0px 5px 12px -4px rgb(38 38 40 / 16%);overflow: hidden;transform: translateY(-10px);}
#header .gnb > ul > li:hover .gnb-sub {height: auto;transition: all ease .3s;transform: translateY(0);}
#header .gnb .gnb-sub li a {flex-direction: column;display: flex;padding-bottom: 26px;font-weight: 600;}
#header .gnb .gnb-sub li:first-child a {padding-top: 40px;}
#header .gnb .gnb-sub li:last-child a {padding-bottom: 40px;}
#header .gnb .gnb-sub .gnb-sub-font:hover {text-decoration: none;color: var(--primary);}
#header .gnb-logo {position: absolute;top: 17px;left: 50%;transform: translateX(-50%);}
#header .gnb-logo .logo-black {width: 140px;}
#header .gnb-login {position:absolute; top:50%; transform:translateY(-50%); right:50px; }
#header .gnb-login a { margin-left:25px; cursor:pointer; }
#header .gnb-login a > img { height:22px; }
#header a.gnb-font:hover {text-decoration: none;}
#header button.mb-gnb-open {background: no-repeat;border: none; position:absolute; top:50%; transform:translateY(-50%);}
#header button.mb-gnb-open span {width: 24px;height: 1px;background: var(--main);display: block;margin: 4px 0;}

.search-popup { display:none; position:fixed; top:0; left:0; right:0; bottom:0; padding:0; background:rgba(0,0,0,0.8); z-index:9000; }
.search-popup .search-body { position:absolute; top:100px; width:100%; height:152px; background:#000; box-sizing:border-box; }
.search-popup .search-body .search-box{ width:900px; height:100%; margin:0 auto; padding:20px 0; box-sizing:border-box; }
.search-popup .search-body .search-close { position:absolute; top:25px; left:50%; transform:translateX(-50%); margin-left:425px; cursor:pointer; }
.search-popup .search-body .search-close img { height:30px; }
.search-title { font-size:25px; font-weight:600; color:#e56525; margin:0 0 10px 0; }


/* mobile header */
#header-mb {position: relative;z-index: 999;}
#header-mb .gnb {position: fixed;max-width: 640px;left: -640px;top: 0;z-index: 100;padding: 50px 50px 126px;height: 100%;background-color: #000;-webkit-transition: left 0.7s cubic-bezier(.64,0,.36,1);transition: left 0.7s cubic-bezier(.64,0,.36,1);min-width: 580px;width: 33.333%;}
#header-mb a.gnb-sub-font {padding: 9px 16px;display: block;font-size: var(--font-size-sm-2);}
#header-mb a.gnb-font {display: block;padding: 10px 16px;font-size: var(--font-size-md-2);font-weight: 600;margin-top: 10px;}
#header-mb ul.gnb-sub {display: none;}
#header-mb::after {opacity: 0;visibility: hidden;content: "";position: fixed;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.7);-webkit-transition: all 0.5s ease-in-out;transition: all 0.5s ease-in-out;cursor: pointer;}
#header-mb.open .gnb {left: 0;}
#header-mb.open::after {opacity: 1;visibility: visible;}
#header-mb button.mb-gnb-close {background: no-repeat;border: none;padding: 20px 10px;}
#header-mb button.mb-gnb-close span:first-child {width: 28px;height: 1px;display: block;background: var(--main);transform: rotate(45deg);}
#header-mb button.mb-gnb-close span:last-child {width: 28px;height: 1px;display: block;background: var(--main);transform: rotate(-45deg);}
#header-mb .logo-black {width: 145px; padding: 8px;}
#header-mb .gnb > ul {margin-top: 50px;overflow-y: auto;height: calc(100% - 120px);padding-bottom: 20px;}
#header-mb .gnb > ul li {position: relative;}
#header-mb .gnb > ul > li::before {content: '\F285';font-family: "bootstrap-icons";position: absolute;top:14px;right:20px; font-size:14px;}
#header-mb .gnb > ul > li.open::before {content: '\F282';}
#header-mb .bottom-box {position: absolute;bottom: 0;left: 0;right: 0;font-size: var(--font-size-sm-2);overflow: hidden;background-color: var(--main);}
#header-mb .bottom-box .row>* {margin: 0;}
#header-mb .bottom-box .row {margin: 0;}
#header-mb .bottom-box .col-4 {background: var(--main);position: relative;font-size: var(--font-size-sm-2);font-weight: var(--font-weight-light);color: var(--white-200);}
#header-mb .bottom-box .col-8 {background: var(--primary);}
#header-mb .bottom-box .col-4::after {content: '';width: 1px;height: 20px;top: 25px;right: 2px;display: inline-block;position: absolute;z-index: 1;background: var(--white-200);opacity: 0.3;transform: rotate(35deg);}
#header-mb .bottom-box .col-4:last-child::after {content:none;}
#header-mb .bottom-box a {padding: 24px 0;width: 100%;display: inline-block;color:#fff;}
#header-mb .gnb > ul > li.open .gnb-font {color: var(--primary);}



/* footer */
#footer {background: #000;padding: 30px 0; border-top:1px solid var(--main);}
#footer .logo-white {width: 152px;}
#footer span.line { height: 13px; width: 0; background-color: var(--gray-150); opacity: 0.5; display: inline-block; margin: 0 23px;}

.sns-footer { display:none; position:absolute; top:30px; right:15px; }
.sns-footer > a { margin-left:20px; }
.sns-footer > a > img { height:20px; }

#family button {display:none; width: 220px;text-align: left;padding: 7px 18px;font-weight: var(--font-weight-normal);font-family: var(--font-family-kor);font-size: var(--font-size-xs-2);color: var(--gray-150);background: transparent;border-radius: 0;border-color: var(--gray-150);}
#family button::after {float: right;line-height: 40px;width: 8px;height: 8px;border: none;border-right: 1px solid var(--gray-150);border-bottom: 1px solid var(--gray-150);transform: rotate(45deg);vertical-align: unset;margin-right: 12px;margin-top: 6px;}
#family ul.dropdown-menu {width: 100%;background: var(--main);border-radius: 0;border: 1px solid var(--gray-150);margin-top: -3px !important;margin-bottom: -3px !important;}
#family ul.dropdown-menu a {color: var(--gray-150);padding: 10px 20px;}

/* *********************************************
 * Page loader
 ******************************************** */
#page-loader {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background-color: #000;z-index: 9990}
#page-loader .loader-stage {display: flex;width: 300px;height: 100%;margin: 0 auto;padding-left:150px; justify-content: center;align-items: center;text-align:center;overflow: hidden; box-sizing:border-box;}
#page-loader .dot-floating {color: var(--main);background-color: var(--main);}
#page-loader .dot-floating:before, #page-loader .dot-floating:after {color: var(--main);background-color: var(--main);}
 
/* *********************************************
   * Layer popup
   ******************************************** */
.px-layer-popup {display: none; position: fixed; box-shadow: 0 5px 25px 0 rgba(72,77,85,.4); z-index: 1130}
.px-layer-popup .popup-content > a {display: block}
.px-layer-popup .popup-footer {display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;align-items: center;justify-content: space-between;background-color: var(--main);}
.px-layer-popup .popup-footer .inner-grid {width: 100%}
.px-layer-popup .popup-footer button {height: 3.375rem; border: 0; outline: 0}
.px-layer-popup .popup-footer .btn-cookie-close {font-size: 15px; font-weight: 500; color: var(--white-100); letter-spacing: -0.02em; padding: 0 24px; background-color: var(--main)}
.px-layer-popup .popup-footer .btn-normal-close {color: var(--white-100); padding: 0 16px; background-color: transparent}
.px-layer-popup .popup-footer .btn-normal-close svg {width: 1.25rem; height: 1.25rem}
 
/* quick menu */
#quick-btns {position: fixed;bottom: 50px;right: -60px;z-index: 10;transition: all 0.5s var(--ease-out);}
#quick-btns.show {right:60px;transition: all 0.5s var(--ease-out);}
#quick-btns a {background: var(--blueblack);width: 56px;height: 56px;display: block;box-shadow: 0px 9px 23px -4px rgb(34 35 38 / 60%);text-align: center;color: var(--white-100);font-size: 36px;border-radius: 14px;transition: all 0.4s var(--ease-out);}
#quick-btns #kakao-btn {margin-bottom: 10px;background: #fee500;font-size: 34px;color: var(--blueblack);padding-top: 4px;border-radius: 14px;box-shadow: 0px 5px 25px -2px rgb(247 209 0 / 60%);}


@media (hover:hover) {
    a:hover {text-decoration: none; color: var(--main);color: inherit}
    .gnb-chat-btn:hover { border-radius: 0; transition: all .3s; background: var(--main); color: var(--white-100); } 
    #family ul.dropdown-menu a:hover {background: var(--main);color: var(--white-200);}    
    #quick-btns a:hover {transition: all 0.4s var(--ease-out);transform: scale(1.15);}
}
@media (min-width: 1280px) {
    #header-mb .gnb {max-width: 460px;min-width: unset;}
}
@media (max-width: 1500px) {
    #header .gnb-font  {padding: 16px;}
}
@media (max-width: 1400px) {
    :root {
        --font-size-xl-1: 40px;
    }
}
@media (max-width: 1280px) {
    :root {
        --font-size-xl-1: 38px;
    }
    #header, #header .container-fluid, #header .container-fluid .row {height: 80px;}
    #header.fixed {height: 80px;}
    #header .container-fluid {padding: 0 30px;}
    #header .gnb {display: none;}
    #header button.mb-gnb-open {display: block;}
	#header .gnb-logo {top:50%; transform:translate(-50%, -50%);}
	#header .gnb-login { right:30px; }
	.search-popup .search-body { top:80px; height:140px; }
	
}
@media (max-width: 1100px) {
    #footer .logo-white {width: 132px;}
    #footer .row > .col-auto.ml-60 {margin-left: 10px !important;}
    #family button {width:200px;}
}
@media (max-width: 991px) {
    :root {
	--font-size-xs-1: 11px;
	--font-size-xs-2: 12.5px;
	--font-size-sm-1: 13.5px;
	--font-size-sm-2: 15px;
	--font-size-sm-3: 17px;
	--font-size-md-1: 20px;
	--font-size-md-2: 22px;
	--font-size-lg-1: 24px;
	--font-size-xl-1: 30px;
	--font-size-xl-2: 40px;
    }
    #header .container-fluid {padding: 0;}
    #header button.mb-gnb-open {position: absolute;left: 15px;}
	#header, #header .container-fluid, #header .container-fluid .row {height: 75px;}
    #header.fixed {height: 75px;}
    #header .gnb-login .d-flex a { display:none; }
	#header .gnb-login .d-flex a:last-child { display:block !important; }
    #quick-btns.show {right: 25px;}
	#header .gnb-login { right:25px; }
	#header .gnb-logo .logo-black {width: 130px;}
	.sns-footer { display:block; }
	
	.search-popup .search-body { top:75px; height:140px; }
	.search-popup .search-body .search-box { width:100%; height:100%; margin:0 auto; padding:20px 25px; box-sizing:border-box; }
	.search-popup .search-body .search-close { top:25px; left:auto; transform:auto; margin-left:auto; right:15px; cursor:pointer; }	
	.search-popup .search-body .search-close img { height:24px; }
	.search-title { font-size:20px; margin:0 0 5px 0; }
 
}
@media (max-width: 767px) {
	.footer-light-font {margin-bottom: 20px;}
	.footer-dark-font {float: left; }
    #header-mb.open .gnb {width: 100%;min-width:100%}
    #header-mb .gnb {padding: 40px;}
    #header-mb .gnb > ul {margin-top: 30px;}
    .px-layer-popup {top: 100px !important;left: 50% !important;width: calc(100% - 50px);transform: translateX(-50%)}
    .px-layer-popup .popup-content img {display: block;width: 100%}
    .px-layer-popup .popup-footer .btn-cookie-close {font-size: 14px;padding: 0 16px}
}
@media (max-width: 575px) {
}
@media (max-width: 480px) {
}