@charset "utf-8";
@import url('unable/board.css');
@import url('unable/board_renew.css');
@import url('custom_board.css');

/*
	* layout.css.css
	* 레이아웃 공통요소들 작업요소에 맞게 수정하시면됩니다.
	*
	* 1) root 설정
	* 2) 폰트설정
	* 3) 레이아웃설정
	*
*/

/* 1) root 설정  */
:root{
	--color-base:#222; /* 선언이 안되면 #333 기본컬러로 적용됨 */
	--color-point: #ee1d23;
	--color-white:#fff;
	--color-black:#000;
	--font-base:16rem;
	--font-eng: "Josefin Sans", sans-serif;
}

body.active {height:100%; min-height:100%; overflow:hidden !important; touch-action:none;}

[data-width] {margin: 0 auto; padding: 0 40rem;}
[data-width="1718"] {max-width: 1718rem; margin: 0 auto;}
[data-width="1540"] {max-width: 1540rem; margin: 0 auto;}
[data-width="1470"] {max-width: 1470rem; margin: 0 auto;}

[data-ani]{opacity:0; transition:transform 1.6s ease, opacity 1.3s ease; transform-style:preserve-3d; will-change:transform;}
[data-ani].is_moved{opacity:1; transform:none;}
[data-ani="img"]{transform:translate(0%, 40%) matrix3d(1, 0, 0, 0, 0, 0.997564, 0.0697565, -0.00028, 0, -0.0697565, 0.997564, -0.00249391, 0, 0, 40, 0.9);}
[data-ani="top"]{transform:translateY(70rem); transition-delay:0.1s;}
[data-ani="right"]{transform:translateX(70rem); transition-delay:0.1s;}
[data-ani="left"]{transform:translateX(-70rem); transition-delay:0.1s;}
[data-ani="scale"]{transform:scale(1.15); transition-delay:0.1s; opacity:1 !important;}
[data-ani="rotate"]{transform:scale(1.15); transition-delay:0.1s; opacity:1 !important;}

/* start motion  for All contents */
.motion-on [data-motion]{transition:transform 1.4s ease, opacity 1.3s ease;transform: none;opacity:1;will-change: transform;}
[data-motion]{opacity:0;}
[data-motion="scrollTop"]{transform:translate(0%, 40%) matrix3d(1, 0, 0, 0, 0, 0.997564, 0.0697565, -0.00028, 0, -0.0697565, 0.997564, -0.00249391, 0, 0, 40, 0.9);}
[data-motion="top"]{transform: translateY(70rem);transition-delay:0.1s;}
[data-motion="right"]{transform:translateX(140rem); transition-delay:0.1s;}
[data-motion="scale"]{opacity:1 !important; transform:scale(1.15); transition-delay:0.1s;}
[data-motion="txt"].motion_in > *{transform:translateY(0);display: block;}
[data-motion="txt"] > *{opacity:1; transition:all 0.9s ease; transform:translateY(100%);}
[data-motion="txt"]{/* opacity:1 !important; */overflow:hidden; transition-delay:0.5s;}

/* delay set */
[data-delay="100"]{transition-delay:100ms !important;}
[data-delay="150"]{transition-delay:150ms !important;}
[data-delay="200"]{transition-delay:200ms !important;}
[data-delay="250"]{transition-delay:250ms !important;}
[data-delay="300"]{transition-delay:300ms !important;}
[data-delay="350"]{transition-delay:350ms !important;}
[data-delay="400"]{transition-delay:400ms !important;}
[data-delay="450"]{transition-delay:450ms !important;}
[data-delay="500"]{transition-delay:500ms !important;}
[data-delay="550"]{transition-delay:550ms !important;}
[data-delay="600"]{transition-delay:600ms !important;}
[data-delay="650"]{transition-delay:650ms !important;}

/* header mob menu style */
[data-util="menu"] {display: none;}
[data-util="menu"] {position: absolute; top: 50%; right: 30rem; width: 50rem; height: 50rem; background: var(--color-point); transition: all 0.3s ease 0s; transform: translateY(-50%); z-index: 100;}
[data-util="menu"] span{position: relative; display: block; top: 50%; width: 19rem; height: 14rem; margin: 0 auto; transform: translateY(-50%);}
[data-util="menu"] span i,
[data-util="menu"] span:before,
[data-util="menu"] span:after{display:block; position:absolute; height:2rem; background: #fff; transform:rotate(0);}
[data-util="menu"] span:before,
[data-util="menu"] span:after{content:''; width:19rem;}
[data-util="menu"] span:before{right:0; top:0; transition:0.5s ease 0s;}
[data-util="menu"] span:after{left:0; bottom:0; transition:0.5s ease 0s;}
[data-util="menu"] span i{opacity:1; left:0; top:6rem; width:19rem; transition:opacity var(--trans-ani), transform 0.5s ease 1.1s;}
[data-util="menu"].active span i,
[data-util="menu"].active span:before,
[data-util="menu"].active span:after{background: #fff;}
[data-util="menu"].active i{opacity:0;}
[data-util="menu"].active span:before{right:0; top:6rem; transform:rotate(45deg);}
[data-util="menu"].active span:after{left:0; bottom:6rem; transform:rotate(-45deg);} 
[data-util="menu_pc"] {position: relative; display: block; width: 65rem; height: 65rem; background: #ee1d23; z-index: 9;}
[data-util="menu_pc"] span {position: absolute; top: 50%; left: 50%; background: url('../images/common/ic_menu_dot.svg') no-repeat; width: 30rem; height: 32rem; transform: translate(-50%, -50%);}
[data-util="menu_close"] {position: absolute; top: 30rem; right: 45rem; width: 50rem; height: 50rem;}
[data-util="menu_close"] span {position: relative; top: 50%; left: 50%; display: block; width: 35rem; height: 35rem; transform: translate(-50%, -50%);}
[data-util="menu_close"] span::before {content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 2rem; background: #fff; transform: translate(-50%, -50%) rotate(45deg);}
[data-util="menu_close"] span::after {content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 2rem; background: #fff; transform:translate(-50%, -50%)  rotate(-45deg);}

/* full menu */
.fullMenu {opacity: 0; visibility: hidden; position: fixed; top: 0; left: 0; width: 100%; height: 0; transition:all 0.5s ease; z-index: 1001;}
.fullMenu [data-full="menu-wrap"]{display: flex; align-items: center; height: 100%; padding: 0 200rem;}
.fullMenu [data-full="menu"] {display: grid; grid-template-columns: repeat(5,1fr); width: 100%;}
.fullMenu [data-full="menu"] *{color: #fff;}
.fullMenu [data-full="menu"] > li {position:relative; box-sizing: border-box; transition:all 0.4s ease; text-align: center;}
.fullMenu [data-full="menu"] > li > a{position:relative; margin-bottom: 40rem; font-size: 35rem; display:block; padding:0; font-weight:600; transition: all .3s;}
.fullMenu [data-full="menu"] > li > a > span{word-break:keep-all;}
.fullMenu [data-full="menu"] > li .box > ul > li:nth-child(n+2) {padding-top: 25rem;}
.fullMenu [data-full="menu"] > li .box > ul a{display:block; box-sizing: border-box; white-space:nowrap; word-break:break-word; transition:all 0.3s ease;}
.fullMenu [data-full="menu"] > li .box > ul li a span{font-size: 16rem; font-weight: 400; color: #fff; transition:all 0.3s ease;}
.fullMenu [data-full="menu"] > li .box > ul > li > a {opacity: .4;}
.fullMenu [data-full="menu"] > li .box > ul > li > a:hover {opacity: 1;}
.fullMenu [data-full="menu"] > li .box > ul > li > a span {font-size: 19rem; font-weight: 400;}
.fullMenu [data-full="menu"] > li .box > ul > li > a i {display: none;}
.fullMenu [data-full="menu"] > li .box > ul li div > ul {margin: 15rem 0;}
.fullMenu [data-full="menu"] > li .box > ul li div > ul > li {position: relative; padding-left: 15rem;}
.fullMenu [data-full="menu"] > li .box > ul li div > ul > li::before {content: ''; position: absolute; top: 8rem; left: 0; width: 3rem; height: 3rem; background: var(--color-white);}
.fullMenu [data-full="menu"] > li .box > ul li div > ul > li:nth-child(n+2) {margin-top: 10rem;}
.fullMenu.open{opacity: 1; visibility: visible; height: 100vh; background-color: rgba(0, 0, 0, 0.7); backdrop-filter: blur(15px);}

#header {position: absolute; top: 40rem; left: 0; width: 100%; z-index: 9;}
#header .head-box {display: flex; align-items: center; justify-content: space-between; max-width: 1718rem; height: 100%; margin: 0 auto; padding: 0 30rem;}
#header .logo a {display: flex; align-items: center;}
#header .logo span {line-height: 0;}
#header .logo img {height: 42rem;}
#header .logo span:nth-child(2) {margin-left: 26rem; margin-top: 5rem;}
#header .gnb {position: absolute; top: 50%; left: 50%; display: flex; gap: 90rem; transform: translate(-50%, -50%);}
#header .gnb > li {position: relative;}
#header .gnb > li > a {display: flex; align-items: center; font-size: 20rem; font-weight: 500; color: #fff; height: 65rem;}
#header .gnb > li > a i {display: none;}

/* quick menu */
.area-quick {position: fixed; top: 50%; right: 0; background: #151516; z-index: 9; transform: translateY(-50%);}
.area-quick span {opacity: 0; visibility: hidden; font-size: 17rem; font-weight: 600; color: #fff; white-space: nowrap;}
.area-quick ul li {position: relative; width: 78rem; height: 70rem;}
.area-quick ul li a {display: flex; gap: 7rem; align-items: center; justify-content: center; width: 100%; height: 100%; transition: all .3s;}
.area-quick ul li a i {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.area-quick ul li:nth-child(n+2) {border-top: 1rem solid rgba(255,255,255,.05);}
.area-quick ul li:nth-child(1) i img {height: 21rem;}
.area-quick ul li:nth-child(2) i img {height: 28rem;}
.area-quick ul li:nth-child(3) i img {height: 27rem;}
.area-quick ul li:hover > a {position: absolute; top: 0; right: 0;  width: 156rem; height: 100%; background: #ee1d23; transition: all .3s;}
.area-quick ul li:hover > a span {opacity: 1; visibility: visible; transition: all .3s;}
.area-quick ul li:hover > a i {position: unset; transform: none;}

/* footer */
#footer {position: relative; margin-top: -330rem; padding: 95rem 0 137rem; background: #000;}
#footer .ft-wrap {display: flex; align-items: flex-end; justify-content: space-between;}
#footer .link {display: flex;}
#footer .link li:nth-child(2) {position: relative; margin: 0 0 0 12rem; padding: 0 0 0 12rem;}
#footer .link li:nth-child(2)::before {content: ''; position: absolute; top: 4rem; left: 0; width: 1rem; height: 12rem; background: rgba(255,255,255,.2);}
#footer .link li a {font-size: 18rem; font-weight: 500; color: #fff;}
#footer address {display: flex; gap: 15rem; padding-top: 34rem;}
#footer address span {font-size: 15rem; color: #a3a3a3;}
#footer address span b {padding: 0 7rem 0 0; font-weight: 700; font-family: var(--font-eng); color: #fff;}
#footer p.copy {padding-top: 24rem; font-size: 15rem; color: rgba(255,255,255,.2);}
#footer .scroll-top {display: block; width: 71rem; height: 71rem; background: #e60012;}
#footer .scroll-top span {display: block; background:  url('../images/common/ic-arr.svg') no-repeat center; background-size: 15rem 19rem; width: 100%; height: 100%; transform: rotate(-90deg);}

/* 2) 폰트설정 */
body{font-size:var(--font-base, 16rem);}
@media (min-width:1921px){
	html{font-size:0.052vw /* 1px */;}
}
@media (max-width:1780px) {
	#header .gnb {margin-left: 0;}
}
@media (max-width:1500px){
	html{font-size:0.067vw /* 1px */;}
}
@media all and (min-width:1300px){
	/* header pc */
	#header nav .gnb > li > .box {display:none; position:absolute; opacity:0; visibility:hidden; top: 20rem; left: 50%; transform: translateX(-50%); width:180%; padding: 20rem; background:#fff; box-shadow:15rem 20rem 29rem 0rem rgba(0, 0, 0, 0.23); transition:all 0.4s ease-out; transition-property:opacity, top, visibility; transition-delay:0s, 0s, 0s;}
	#header nav .gnb > li > .box.active {display:block; transition-delay:0.1s;}
	#header nav .gnb > li.active > .box {opacity:1; visibility:visible; top: 65rem; z-index:10; transition-delay:0s, 0s, 0s;}
	#header nav .gnb > li ul > li > a {display:block; position:relative; padding: 7rem 0rem; background:#fff; font-size:16rem; color: #999; text-align:center; transition:all 0.3s ease 0s;}
	#header nav .gnb > li ul > li > a:hover{color: var(--color-point); font-weight: 500;}
	#header nav .gnb > li ul > li > a i {display: none;}

}
@media (max-width:1300px){
    html{font-size:0.077vw /* 1px */;}

    #header .logo span:nth-child(2) {margin-top: 10rem; margin-left: 18rem;}

	/* header mob menu block */
	[data-util="menu"] {display:block;}
	#header .head-box.active {padding: 0 30rem; transition: all .5s;}
	#header nav {position: fixed; top:0; right: -100%; z-index:99; width: 400rem; height: calc(var(--vh, 1vh) * 100); margin:0; background: var(--color-white); border-top: 1rem solid #e8e8e8; transition:all 0.6s ease-out 0s;}
	#header nav.active {right:0rem; background: #fff; transition:all 0.6s ease-out 0s; display: unset;}
	#header nav.active .btn_menu {position: fixed;}
    #header nav .gnb{display: block; position: absolute; top: 45%; width: 100%; }
	#header nav .gnb > li {display:block; position: relative;}
	#header nav .gnb > li:nth-child(n+2) {margin-top: 15rem;}
	#header nav .gnb > li {padding: 0 30rem; height: auto;}
	#header nav .gnb > li > a {position: relative; display: block; line-height:1; height: auto; padding: 15rem 0; font-size: 30rem; color: #111; text-align:left; font-weight: 700; transition:all 0.3s ease 0s;}
	#header nav .gnb > li > a::before {content: ''; position: absolute; top: 50%; transform: translateY(-50%); right: 0; background: url('../images/main/ic-menu__arrow.svg') no-repeat; width: 20rem; height: 14rem;}
	#header nav .gnb > li > a.active {opacity: 1;}
	#header nav .gnb > li > a.active::before {transform: translateY(-50%) rotate(180deg);}
	#header nav .gnb > li > .box {display: none; padding: 0rem 0 12rem; margin-top: 10rem;}
	#header nav .gnb > li ul > li > a {display: block; text-align: left; font-size: 18rem; color: #666; font-weight: 400;}
	#header nav .gnb > li ul > li:nth-child(n+2) > a {padding-top: 17rem;}
	#header nav .gnb > li ul > li > a i {display: none;}

	.fullMenu {display: none;}
	[data-util="menu_pc"] {display: none;}

    .nav-bg {position: fixed; top: 0; right: -100%; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); transition:all 0.5s ease-out 0s;}
    .nav-bg.active {right: 0; transition:all 0.5s ease-out 0s;} 

	.area-quick {position: absolute; top: unset; bottom: 0; left: 0; right: unset; width: 100%; padding: 20rem; border-radius: 0; box-shadow: none; box-sizing: border-box; transform: unset;}
	.area-quick ul {display: grid; grid-template-columns: 1fr 1fr 1fr;}
	.area-quick ul li {width: 100%; height: 100%;}
	.area-quick ul li:nth-child(n+2) {border-left: 1rem solid rgba(255,255,255,.2);}
	.area-quick ul li a {flex-direction: column;}
	.area-quick ul li a i {position: unset; transform: unset;}
	.area-quick span {opacity: 1; visibility: unset; padding-top: 8rem;}
}
@media (max-width:1024px){
    html{font-size:0.098vw /* 1px */;}

	#footer {padding: 35rem 0 65rem;}
	#footer address {flex-direction: column; gap: 5rem;}
}
@media (max-width:768px){
    html{font-size:0.130vw /* 1px */;}
}
@media (max-width:620px){
    html{font-size:0.161vw /* 1px */;}

    [data-util="menu"] {right: 20rem;}
    [data-width] {padding: 0 22rem;}
	#header {top: 28rem;}
	#footer .scroll-top {width: 50rem; height: 50rem;}
}
@media (max-width:540px){
    html{font-size:0.201vw /* 1px */;}	
	#footer {margin-top: -1rem;}
}

