/* include 공통 CSS */

/************************* 공통 시작*************************/
a,
button,
input,
label,
a:hover,
button:hover,
input:hover,
label:hover {cursor:none !important;}
html, body {overflow: auto; scrollbar-width: none; -ms-overflow-style: none; cursor:none;}
html::-webkit-scrollbar, body::-webkit-scrollbar {display: none;}

.custom-pointer {position: fixed; top: 0; left: 0; width: 1.25em; height: 1.25em; border-radius:50%; transform:translate(-50%, -50%); background-color: var(--main-color); box-shadow:2px 4px 8px rgba(0,0,0,0.15); pointer-events: none; z-index: 1000; transition: .3s ease-in-out width, .3s ease-in-out height, .3s ease-in-out background-color, .3s ease-in-out opacity}
body:has(a:hover) .custom-pointer,
body:has(button:hover) .custom-pointer,
body:has(.btn-ctrl__btn:hover) .custom-pointer,
body:has(.main-int__more:hover) .custom-pointer,
body:has(.product__toggle:hover) .custom-pointer, 
body:has(.product__more:hover) .custom-pointer,
body:has(button:hover) .custom-pointer,
body:has(input:hover) .custom-pointer,
body:has(textarea:hover) .custom-pointer{width: 2.5em; height: 2.5em; opacity: 0.6;}
@media screen and (hover: none) and (pointer: coarse) {
	.custom-pointer {display: none;}
}

.br-500 {display: none;}
.br-768 {display: none;}
.br-1080 {display: none;}
.br-1320 {display: none;}
.br-pc {display: block;}

@media(max-width:1320px){
	.br-pc {display: none;}
	.br-1320 {display: block;}
}
@media(max-width:1080px){
	.br-1320 {display: none;}
	.br-1080 {display: block;}
}
@media(max-width:768px){
	.br-1080 {display: none;}
	.br-768 {display: block;}
}
@media(max-width:500px){
	.br-768 {display: none;}
	.br-500 {display: block;}
}



.inner {width: 100%; max-width:var(--max); margin: 0 auto; --max:1500px;}
.inner--fill {max-width:100%; padding-right: calc((100% - var(--max)) / 2); padding-left: calc((100% - var(--max)) / 2);}
.inner--right {max-width:100%; padding-right: calc((100% - var(--max)) / 2);}
.inner--left {max-width:100%; padding-left: calc((100% - var(--max)) / 2);}
@media(max-width:1580px){
	.inner {padding-right: 4%; padding-left: 4%;}
	.inner--right {padding-right: 4%; padding-left: 0;}
	.inner--left {padding-right: 0; padding-left: 4%;}
}

.main-sec {min-height: calc(var(--vh, 1vh) * 100);}
@media screen and (hover: none) and (pointer: coarse) {
	.main-sec {min-height: auto;}
}

.main-int{display: flex; flex-direction: column;}
.main-int__cate {display: inline-block; margin-bottom: 1em; color: var(--main-color); font-weight: 700; line-height: 1; letter-spacing: -0.03em;}
.main-int__tit {font-size: var(--st-lg); font-weight: 300; line-height: 1.4; letter-spacing: -0.03em;}
.main-int__tit--lg {font-size: var(--tit-sm);}
.main-int__tit b {font-weight: 700;}
.main-int__desc {font-size: var(--fz-lg); line-height: 1.7; letter-spacing: -0.03em;}
.main-int__more {display: inline-block; width: max-content; margin-top: 1.4em; font-weight: 700; letter-spacing: -0.03em;}
.main-int__more,
.main-int__more:link,
.main-int__more:visited {color: var(--main-color);}
.main-int__more--deep,
.main-int__more--deep:link,
.main-int__more--deep:visited {color: var(--prm-color);}
.main-int__arr {margin-left: 0.5em; width: 1em; vertical-align: middle;}

.border-sec {position: relative; z-index: -1;}
.border-sec__container {margin: 0 auto; width: 100%; max-width:100%; overflow: hidden;}

.sub-visual {position: relative; display: flex; justify-content: center; align-items: center; flex-direction:column; height: 100%; padding: 0 4% 2.9em; background-color: var(--gray--light);text-align: center;}
.sub-visual__tit {font-size: var(--tit-lg); font-weight: 700; line-height: 1.5; letter-spacing: -0.03em;}
.sub-visual__desc {margin-top: 1.4em; font-size: var(--fz-xl); font-weight: 600; letter-spacing: 0.8em;}
.sub-visual__scroll {position: absolute; bottom: 9.1em; left: 50%; transform:translateX(-50%);}
.sub-visual__scroll span {display: inline-block; font-weight: 600; letter-spacing: -0.03em; animation: scrDown 2.5s linear infinite;}
@media(max-width:768px){
	.sub-visual__tit {font-size: var(--tit-bs);}
	.sub-visual__desc {font-size: var(--fz-lg);}
}

@keyframes scrDown {
	0% {transform:translateY(-2em); opacity: 0; visibility:hidden;}
	50% {transform:translateY(0); opacity: 1; visibility:visible;}
	100% {transform:translateY(2em); opacity: 0; visibility:hidden;}
}

.sub-container {background-color: #fff;}

.btn-ctrl {display: flex; gap:1em;}
.btn-ctrl--center {justify-content: center;}
.btn-ctrl__list {display: flex; gap:1em;}
.btn-ctrl__btn {display: inline-flex; justify-content: center; align-items: center; gap:0.625em; height: 2.8125em; font-weight: 500; background-color: var(--gray--deep); text-align: center; border-radius:3.125em; letter-spacing: -0.03em; transition:.3s ease-in-out all;}
.btn-ctrl__btn,
.btn-ctrl__btn:link,
.btn-ctrl__btn:visited {color: rgba(0,0,0,0.4);}
.btn-ctrl__btn--on {font-weight: 700; background-color: var(--main-color);}
.btn-ctrl__btn--on,
.btn-ctrl__btn--on:link,
.btn-ctrl__btn--on:visited {color: #fff;}
.btn-ctrl__btn--dark {font-weight: 700; background-color: var(--dark);}
.btn-ctrl__btn--dark,
.btn-ctrl__btn--dark:link,
.btn-ctrl__btn--dark:visited {color: var(--main-color);}

@media(hover:hover){
	.btn-ctrl__btn:hover {background-color: var(--main-color); color: #fff; transform:scale(1.05)}
}

.sec-layout__tit {font-size: var(--tit-sm); font-weight: 600; line-height: 1.4; letter-spacing: -0.02em;}
.sec-layout__alert {width: 100%; font-weight: 700; color: var(--main-color);}
.sec-layout__wrap {display: flex; flex-wrap:wrap;}
.sec-layout__st {width: 14.1667em; font-size: var(--fz-xl); font-weight: 700; line-height: 1.4; letter-spacing: -0.04em;}
.sec-layout__st--auto {width: auto;}
.sec-layout__content {flex:1;}
.sec-layout__desc {font-weight: 500; line-height: 1.7; letter-spacing: -0.035em;}
.sec-layout__desc span {font-size: 1.15em; font-weight: 700; color: var(--dark--soft);}
@media(max-width:1080px){
	.sec-layout__st {width: 100%;}
	.sec-layout__content {flex:none; width: 100%; margin-top: 2em;}
}

.contact-sec {padding: 4em 0; display: flex; flex-direction:column; justify-content: center; align-items: center;background-repeat: no-repeat; background-position: center; background-size: cover; color: #fff; text-align: center; min-height: 27.5em;}
.contact-sec__tit {margin-bottom: 0.3em; font-size: var(--st-bs); font-weight: 600; line-height: 1.4; letter-spacing: -0.025em;}
.contact-sec__desc  {margin-bottom: 1.5em; font-weight: 500; line-height: 1.7; letter-spacing: -0.025em;}
.contact-sec__btn {width: 7.8125em;}

.product-info {padding:10em 0 10em;}
.product-info__wrap {margin-bottom: 4.75em; padding-bottom: 5em; border-bottom:1px solid var(--line--bs)}
.product-info__wrap:last-child {margin-bottom: 0; padding-bottom: 0; border-bottom:none;}
.product-info__detail {margin-bottom: 1.65em; transform: translateY(-0.3em);}
.prdocut-info__desc {color: var(--dark--soft);}
.product-info__radius {border-radius:0.9375em;}    
.product-info__video {display: block; width: 100%; aspect-ratio: 16/9;}
.product-info__grid {display: flex; flex-wrap: wrap; gap: 2.5em; width: 100%;}
.product-info__cell {flex: 0 1 calc(50% - 1.25em);}
.product-info__cell--wide {flex: 1 1 auto}
.product-info__cell--3n {flex: 0 1 calc(33.3333% - 1.6667em);}
.product-info__cell--4n {flex-basis:calc(25% - 1.875em);}
.product-info__caption {display: block; margin-top: 0.8em; letter-spacing: -0.03em; text-align: center; font-size: var(--fz-sm); font-weight: 600; line-height: 1.5;}
@media(max-width:1080px){
	.product-info {padding:5em 0;}
}
/************************* 공통 끝 *************************/

/************************* header_inc 시작*************************/
.header__fix {position: fixed; top: 0; right: 0; left: 0; z-index: 100; max-width:1600px; width: 100%; margin: 0 auto;  height: 4.375em; font-size: var(--fz); border-radius: 0 0 0.9375em 0.9375em; background-color: var(--gray--light); --menu-height : 0; transition: 0.15s ease-in-out all;}
.header__fix:after {position: absolute; content:''; top: 100%; left: 0; z-index: -1; width: 100%; height: var(--menu-height); background-color: #fff; transition: 0.15s ease-in-out all;}
.header__inner {display: flex; justify-content: space-between; align-items: center; height: inherit; padding:0 3.125em;}
.header__ctrl {display: flex; align-items: center; height: inherit;}
@media(max-width:1640px){
	.header__inner {padding-right: 4%; padding-left: 4%;}
}

.header-home {font-size: inherit;}
.header-home__logo {width: 5.625em; transition: 0.15s ease-in-out all;}

.header-navi {position: relative; height: inherit; margin-left: 4.5em; transition: .15s ease-in-out all;}
.header-navi__m-list {display: flex; height: inherit;}
.header-navi__m-item {height: inherit;}
.header-navi__m-item:last-child {margin-right: 0;}
.header-navi__m-btn {position: relative; display: flex; justify-content: center; align-items: center; height: inherit;}
.header-navi__m-btn:before {position: absolute; top: 0; left: 0; display: block; content:''; width: 100%; height: 3px; background-color: var(--main-color); border-radius:0 0 3px 3px; opacity: 0; visibility:hidden; transition: .15s ease-in-out all;}
.header-navi__m-btn--crt:before {opacity: 1; visibility: visible;}
.header-navi__m-item {position: relative;}
.header-navi__s-wrap {position: absolute; top: 100%; left: 50%; min-width: 150%; transform:translateX(-50%);}
.header-navi__s-list {transition: .15s ease-in-out all;}
.header-navi__s-btn {display: block;}
@media(max-width:1080px){
	.header-navi {margin-left: 0;}
}
@media(max-width:500px){
	.header-navi {display: none;}
}
@media(hover:hover){
	.header-navi__m-btn:hover:before {opacity: 1; visibility: visible;}
}

.header-lang {position: relative; display: flex; align-items: center;  text-align:center; height: inherit; transition: .15s ease-in-out all;}
.header-lang__btn{display: flex; align-items:center; font-weight: 600; letter-spacing: -0.03em; transition: 0.15s ease-in-out all;}
.header-lang__navi{position:absolute; top: 100%; left: 50%; transform:translateX(-50%); min-width:100%; height: 0; overflow: hidden;}
.header-lang__list {margin: 1em; background-color: rgba(0,0,0,0.5); border-radius: 0.5em; box-shadow:var(--shadow-1); transition: .15s ease-in-out all;}
.header-lang__link{padding:0.5em 1.5em; display: block; white-space: nowrap; transition: 0.15s ease-in-out all;}
.header-lang__link,
.header-lang__link:visited,
.header-lang__link:link {color: #fff;}
.header-lang__icon {width: 1.25em; filter:brightness(0) invert(1)}
@media(hover:hover){
	.header-lang__btn:hover {color: var(--main-color);}
	.header-lang__link:hover {color: var(--main-color);}
}
@media(max-width:1080px){
	.header-lang {display: none;}	
}

.header-req {margin-left: 1.35em;}
.header-req__btn {width:6.875em; height: 2.1875em;}

.header-drawer {display: none; position: relative; margin-left: 1.5em;}
.header-drawer__btn {position: relative; width: 20px; height: 14px; z-index: 0; transition:.15s ease-in-out all;}
.header-drawer__line {position: absolute; left: 0; width: 100%; height: 2px; background-color: var(--dark); transition:.15s ease-in-out all;}
.header-drawer__line--top {top: 0;}
.header-drawer__line--middle {top: 50%; transform:translateY(-50%)}
.header-drawer__line--bottom {bottom: 0;}
@media(hover:hover){
	.header-drawer__btn:hover .header-drawer__line--top{left: -0.25em;}
	.header-drawer__btn:hover .header-drawer__line--middle{left: 0.25em;}
	.header-drawer__btn:hover .header-drawer__line--bottom{left: -0.125em;}
}
@media(max-width:500px){	
	.header-drawer {display:block;}
}

.header__fix.enter {background-color: #fff;}
.header__fix.enter .header-navi__m-btn {color: var(--dark);}
.header__fix.enter .header-navi__m-btn--crt {color: var(--main-color);}
.header__fix.enter .header-navi__s-list {background-color: #fff;}
.header__fix.enter .header-navi__s-btn {color: var(--dark);}
.header__fix.enter .header-navi__s-btn--crt {color: var(--main-color);}
.header__fix.enter .header-navi__c-btn {color: var(--main-gray);}
.header__fix.enter .header-navi__c-btn--crt {color: var(--main-color);}
.header__fix.enter .header-lang__btn {color: var(--dark);}
.header__fix.enter .header-lang__btn.on {color: var(--main-color);}
.header__fix.enter .header-lang__list {background-color: #fff;}
.header__fix.enter .header-lang__link {color: var(--dark);}
.header__fix.enter .header-login__link {color: var(--dark);}
.header__fix.enter .header-drawer__line {background-color: var(--dark);}
@media(hover:hover){
	.header__fix.enter .header-lang__link:hover {color: var(--main-color);}
}

/************************* header_inc 끝*************************/

/************************* sub-dropdown 시작 *************************/
.drop-menu {border-bottom:1px solid var(--main-gray);}
.drop-menu__inner {display: flex; border-right:1px solid var(--main-gray); border-left:1px solid var(--main-gray);}
.drop-menu__home {display: inline-flex; min-width: 3em; min-height: 3em; height: inherit; justify-content: center; align-items: center;}
.drop-menu__icon {width: 1.75em;}
.drop-menu__wrap {position: relative; z-index: 0; border-left:1px solid var(--main-gray);}
.drop-menu__wrap:last-child {border-right:1px solid var(--main-gray); }
.drop-menu__btn {display: flex; justify-content: space-between; align-items: center; min-width:15em; height: 100%; padding:0 0.15rem; font-weight: 500; transition:.15s ease-in-out all;}
.drop-menu__tit {display: block; font-size: 1.125em;}
.drop-menu__arr {margin-left: 1.5em; width: 0.75em; transition:.15s ease-in-out all;}
.drop-menu__navi {position: absolute; top: 100%; left: -1px; z-index: 10; width:calc(100% + 2px);  height: 0; overflow: hidden;}
.drop-menu__list {background-color: #fff; border:1px solid var(--main-gray);}
.drop-menu__link {display: block; padding:0.5em 0.15rem; transition:.15s ease-in-out all;}
@media(hover:hover){
	.drop-menu__link:hover {background-color: var(--main-color); color: #fff;}
}

.drop-menu__btn.on {background-color: var(--main-color); color: #fff;}
.drop-menu__btn.on .drop-menu__arr {filter:brightness(0) invert(1); transform:rotate(180deg);}

/************************* dropdown 끝 *************************/
/************************* tabmenu 시작 *************************/
.tab-menu {border-bottom:1px solid var(--main-gray)}
.tab-menu__list {display: flex;}
.tab-menu__item {flex:1;}
.tab-menu__btn {padding:1.5em 0.75em; display: flex; justify-content: center; align-items: center; text-align: center; height: 100%; transition: .15s ease-in-out all;}
.tab-menu__btn--crt {background-color: var(--main-color);}
.tab-menu__btn--crt,
.tab-menu__btn--crt:link,
.tab-menu__btn--crt:visited {color: #fff;}
@media(hover:hover){
	.tab-menu__btn:hover {background-color: var(--main-color); color: #fff;}
}
/************************* sub-tabmenu 끝 *************************/

/************************* depth3 시작 *************************/
.depth3__list {display: flex; flex-flow: row wrap;}
.depth3__item {flex:1;}
.depth3__item:last-child {border:0;}
.depth3__btn {padding:1.5em 0.75em; width: 100%; height: 100%; display: flex; align-items: center;justify-content: center; border-bottom:2px solid var(--main-gray); transition:.15s ease all;}
.depth3__btn--crt {border-color:var(--main-color);}
@media(hover:hover){
	.depth3__btn:hover {border-color:var(--main-color);}
}
/************************* depth3 끝 *************************/


/************************* footer_inc 시작 *************************/
.footer {position: relative; font-size: var(--fz); background-color: var(--dark); color: #fff; background-color: var(--dark--soft);}
.footer:before {position: absolute; top: 0; left: 0; content:''; display: block; width: 100%; background-color: var(--dark--soft); height: 1.25em; transform:translateY(-100%)}
.footer__sec {display: flex; flex-wrap:wrap; justify-content: space-between;}
.footer__sec--int {padding: 6.5em 0 6.15em; border-bottom:1px solid rgba(255,255,255,0.3)}
.footer__sec--detail {padding:3.4em 0 7.243em;}
.footer__container {display: flex; justify-content: space-between; flex-wrap:wrap; gap:2em;}
.footer__container--adm {margin-top: 1.4em; flex-direction: row-reverse; align-items: flex-end;}
@media(max-width:768px){
	.footer__sec {padding:4em 0;}
	.footer__container--adm {flex-direction:row;}
}

.footer-home {display: inline-block;}
.footer-home,
.footer-home:link,
.footer-home:visited {color: inherit;}
.footer-home__text {font-size: var(--tit-sm); font-weight: 600; line-height: 1.4; letter-spacing: -0.02em;}
.footer-home__logo {margin-top: 0.7em; width: 19.0625em;}

.footer-ctrl {display: inline-flex; padding-top: 1em; gap:0.75em}
.footer-ctrl__btn {flex:1; display: inline-flex; justify-content: space-between; align-items: center; width: 12.5em; height: 3.5em; padding:0 1.5em; border-radius:0.3125em; background-color: rgba(255,255,255,0.1); letter-spacing: -0.028em; transition: .15s ease-in-out all;}
.footer-ctrl__btn,
.footer-ctrl__btn:link,
.footer-ctrl__btn:visited {color: inherit;}
@media(hover:hover){
	.footer-ctrl__btn:hover {background-color: var(--main-color);}
}

.footer-sns {padding-top: .35em;}
.footer-sns__list {display: flex; gap:.5em;}
.footer-sns__link {display: inline-flex; justify-content: center; align-items: center; width: 3em; height: 3em; background-color: rgba(255,255,255,0.1); border-radius:50%; overflow: hidden; transition: .3s ease-in-out all;}
@media(hover:hover){
	.footer-sns__link:hover {background-color: var(--main-color);}
}
@media(max-width:768px){
	.footer-sns {width: 100%;}
}

.footer-info__item {margin-bottom: 0.15em; display: flex; flex-wrap:wrap; gap:.75em; line-height: 1.5;}
.footer-info__item:first-child {margin-bottom: 0.7em;}
.footer-info__item:last-child {margin-bottom: 0;}
.footer-info__info {display: inline-flex; align-items: center; gap:.3em;}
.footer-info__info:last-child:after {display: none;}
.footer-info__cate {display: block; font-weight: 600; letter-spacing: -0.03em;}
.footer-info__cate--firm {font-weight: 700;}
.footer-info__desc {opacity: 0.6; letter-spacing: -0.023em;}
.footer-info__desc--link {transition:.15s ease all;}
.footer-info__desc--link,
.footer-info__desc--link:visited,
.footer-info__desc--link:link {color: inherit}

@media(hover:hover){
	.footer-info__desc--link:hover {color: var(--main-color); opacity: 1;}
}
@media(max-width:1080px){
	.footer-logo__item {width: 4em;}
}
@media(max-width:500px){
	.footer-info__item {margin-bottom: 0; gap:0 .75em; line-height: 1.75;}
	.footer-info__item:first-child {margin-bottom: 0;}
}

.footer-logo {display: flex; gap:0.5em}
.footer-logo__item {width: 5em;}

.footer-adm {display: flex; gap:0.5em;}
.footer-adm__item {letter-spacing: -0.024em; opacity: 0.2;}
.footer-adm__item,
.footer-adm__item:link,
.footer-adm__item:visited {color:  inherit;}
@media(max-width:500px){
	.footer-adm {flex-wrap:wrap;}
	.footer-adm__item:first-child {width: 100%;}
}

.footer__top {position: fixed; bottom: 5dvh; right: 4%; z-index: 10; display: inline-flex; justify-content: center; align-items: center; flex-direction:column; width: 4em; height: 4em; font-weight: 500; border-radius:50%; background-color: rgba(255,255,255,0.9); box-shadow:var(--shadow-1); transition: .3s ease-in-out all;}
@media(hover:hover){
	.footer__top:hover{background-color: var(--main-color); color: #fff;}
}

/************************* footer_inc 끝 *************************/


/************************* split-text *************************/
.split-text__word {font-size: inherit;}
.split-text__letter {display: inline-block; font-size: inherit;}
.split-text--no-delay .split-text__letter {transition-delay:0s !important; animation-delay:0s !important;}