/* include 공통 CSS */

/* 점(dot) + 텍스트 */
.dot-text {position: relative; padding-left: 0.75em;}
.dot-text::before {position: absolute; top: 0.8em; left: 0; width: 3px; height: 3px; border-radius: 50%; background-color: currentColor; content: '';}

/************************* 공통 시작*************************/
.inner {width: 100%; max-width:1720px; margin: 0 auto; }
.inner--fill {max-width:none; padding-right: calc((100% - 1720px) / 2); padding-left: calc((100% - 1720px) / 2);}
@media(max-width:1760px){
	.inner {padding: 0 4%;}
}

.sub-container {padding-top: 7.5em; padding-bottom: 7.5em; min-height:5rem;}

/************************* 공통 끝 *************************/

/************************* form 공통 시작 *************************/
/* 폰트 사이즈는 블록 루트(예: .ly-inquiry {font-size:var(--fz)})에서 상속받는다 */
.form-input {width: 100%; min-height: 3.75em; padding: 0 1.25em; font-weight: 400; line-height: 1.4; letter-spacing: -0.03125em; color: var(--main-black); background-color: #fff; border: 1px solid var(--gray200); border-radius: 0.3125em; transition: 0.15s ease-in-out border-color;}
.form-input::placeholder {color: var(--gray400);}
.form-input:focus {border-color: var(--main-color);}

.form-textarea {display: block; width: 100%; min-height: 12.5em; padding: 1.25em; font-weight: 400; line-height: 1.4; letter-spacing: -0.03125em; color: var(--main-black); background-color: #fff; border: 1px solid var(--gray200); border-radius: 0.3125em; resize: vertical; transition: 0.15s ease-in-out border-color;}
.form-textarea::placeholder {color: var(--gray400);}
.form-textarea:focus {border-color: var(--main-color);}

.form-file {position: relative; display: flex; justify-content: space-between; align-items: center; gap: 0.75em; width: 100%; min-height: 3.75em; padding: 0 1.25em; background-color: #fff; border: 1px solid var(--gray200); border-radius: 0.3125em;}
.form-file__name {overflow: hidden; flex: 1; min-width: 0; line-height: 1.4; letter-spacing: -0.03125em; color: var(--gray400); white-space: nowrap; text-overflow: ellipsis;}
.form-file__name--on {color: var(--main-black);}
.form-file__btn {flex-shrink: 0; padding: 0.5em 0.75em; font-weight: 600; line-height: 1.4; letter-spacing: -0.03125em; color: #fff; background-color: var(--main-color); border-radius: 0.3125em; cursor: pointer;}
.form-file__input {position: absolute; width: 0; height: 0; opacity: 0;}

.form-checkbox {flex-shrink: 0; width: 1em; height: 1em; appearance: none; -webkit-appearance: none; background-color: #fff; border: 1px solid var(--gray200); border-radius: 50%; cursor: pointer; transition: 0.15s ease-in-out all;}
.form-checkbox:checked {background-color: var(--main-color); border-color: var(--main-color); box-shadow: inset 0 0 0 3px #fff;}

.form-btn {display: inline-flex; justify-content: center; align-items: center; min-width: 15.55556em; min-height: 3.77778em; padding: 0.5em 1.11111em; font-size: 1.125em; font-weight: 600; line-height: 1.4; letter-spacing: -0.02778em; color: var(--main-color); background-color: #fff; border: 1px solid var(--main-color); transition: 0.3s ease background-color, 0.3s ease color;}
@media(hover:hover){
	.form-btn:hover {background-color: var(--main-color); color: #fff;}
}
/************************* form 공통 끝 *************************/

/************************* header_inc 시작*************************/
.header__fix {position: fixed; left:0; top:0; z-index: 100;width:100%;  height: 5em; border-bottom: 1px solid var(--gray200); font-size: var(--fz); --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}
.header__ctrl {display: flex; align-items: center; height: inherit; margin-left: 2.125em;}

.header-home {display: inline-block; width: 18.5625em; height: 2.25em; background: url('./img/top_logo.png') no-repeat center / 100%; transition: 0.15s ease-in-out all;}
.header-home__logo {width: 18.5625em; transition: 0.15s ease-in-out all;}

.header-navi {position: relative; height: inherit; margin-left: auto; 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 {display: flex; justify-content: center; align-items: center; height: inherit;}
.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 {display: none;}
}

.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; transition: 0.15s ease-in-out all;}
.header-lang__btn,
.header-lang__btn:link,
.header-lang__btn:visited {color: #fff;}
.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-login {margin-left: 1.5em;}
.header-login__list {display: flex; align-items: center;}
.header-login__item {margin-right: 1em;}
.header-login__item:last-child {margin-right: 0;}
.header-login__link {display: block; transition:.15s ease-in-out all;}
.header-login__link,
.header-login__link:visited,
.header-login__link:link {color: #fff;}
@media(hover:hover){
	.header-login__link:hover {color: var(--main-color);}
}
@media(max-width:1080px){
	.header-login{display: none;}	
}

.header-drawer {position: relative; display: flex; justify-content: center; align-items: center; height: inherit;}
.header-drawer__btn {position: relative; height: inherit; aspect-ratio: 1; z-index: 0; transition:.15s ease-in-out all;}
.header-drawer__line {position: absolute; left: 50%; transform: translate(-50%, -50%); width: 32px; height: 2px; background-color: var(--main-color); transition:.15s ease-in-out all;}
.header-drawer__line--top {top: 1.875em;}
.header-drawer__line--middle {top: 50%; transform:translateY(-50%)}
.header-drawer__line--bottom {bottom: 1.875em;}
@media(hover:hover){
	.header-drawer__btn:hover {background-color: var(--main-color);}
	.header-drawer__btn:hover .header-drawer__line {background-color: #fff;}
	.header__fix.enter .header-drawer__btn:hover .header-drawer__line {background-color: #fff;}
}
@media(max-width:1080px){	
	
}

.header__fix.enter {background-color: #fff; border-color: var(--gray200);}
.header__fix.enter .header-navi__m-btn {color: var(--gray600);}
.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(--gray800);}
.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(--main-black);}
.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(--main-black);}
.header__fix.enter .header-login__link {color: var(--main-black);}
.header__fix.enter .header-drawer__line {background-color: var(--main-color);}
@media(hover:hover){
	.header__fix.enter .header-lang__link:hover {color: var(--main-color);}
}

/************************* header_inc 끝*************************/

/************************* sub-dropdown 시작 *************************/
.drop-menu {margin-left: auto;}
.drop-menu__inner {display: flex; gap: 0.75em; padding: 0;}
.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: 9;}
.drop-menu__wrap:last-child {}
.drop-menu__btn {display: flex; justify-content: space-between; align-items: center; min-width:17.5em; height: 100%; padding: 1.25em 0.28rem; background-color: var(--gray100); font-weight: 500; color: var(--gray600); transition:.15s ease-in-out all;}
.drop-menu__tit {display: block; font-size: 1.125em;}
.drop-menu__arr {margin-left: 1.5em; width: 1.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(--gray200);}
.drop-menu__link {display: block; padding: 0.875em 0.15rem; color: var(--gray600); transition:.15s ease-in-out all;}
@media(hover:hover){
	.drop-menu__link:hover {color: var(--main-color); font-weight: 600;}
}
@media (max-width:500px) {
	.drop-menu {width: 100%;}
	.drop-menu__wrap {flex: 1;}
	.drop-menu__btn {min-width: auto; width: 100%;}
}
.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 {padding:3.75em 0 5em; font-size: var(--fz); background-color:#f5f5f5; color:#454545;}
.footer__inner {display: flex; justify-content: space-between; gap:2em; min-height:10.625em;}

.footer__left {display: flex; flex-direction: column;}
.footer__home {display: inline-block;}
.footer__logo {width: 22.4375em;}
.footer__meta {margin-top: auto; display: flex; gap:1.75em; font-size:0.875em; color:#a5a5a5;}
.footer__privacy {transition:.15s ease all;}
.footer__privacy,
.footer__privacy:link,
.footer__privacy:visited {color:#a5a5a5;}

.footer__right {display: flex; align-items: flex-start; gap:9em;}
.footer__info {padding-right: 13em; font-style: normal; font-weight: 500; line-height: 1.6;}
.footer__info p {margin-bottom: 0.5em;}
.footer__info p:last-child {margin-bottom: 0;}
.footer__name {text-transform: uppercase;}
.footer__info a {transition:.15s ease all;}
.footer__info a,
.footer__info a:link,
.footer__info a:visited {color: inherit;}

.footer__top {flex-shrink:0; width:4em; height:4em; display:flex; align-items:center; justify-content:center; background-color:var(--main-color); cursor:pointer; transition: .3s ease all;}
.footer__top svg {width:100%; height:100%;}

@media(hover:hover){
	.footer__privacy:hover {color: var(--main-color);}
	.footer__info a:hover {color: var(--main-color);}
	.footer__top:hover {transform: translateY(-10px); box-shadow: var(--shadow-1);}
}
@media(max-width:768px){
	.footer {padding:2.5em 0;}
	.footer__inner {flex-direction: column; gap:2em; min-height:0;}
	.footer__left {gap:2em;}
	.footer__meta {margin-top:0;}
	.footer__right {width:100%; justify-content: space-between; gap:2em;}
	.footer__info {padding-right: 0;}
}
/************************* 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;}