/* include 공통 CSS */

/************************* 공통 시작*************************/
.inner {width: 100%; max-width:1520px; margin: 0 auto; }
.inner--fill {max-width:none; padding-right: calc((100% - 1520px) / 2); padding-left: calc((100% - 1520px) / 2);}
@media(max-width:1560px){
	.inner,
	.inner--fill {padding: 0 4%;}
}


.panel-header {display: flex; flex-direction: column; align-items: center; gap: 0.5em;}
.panel-header--center {text-align: center;}
.panel-header__title {font-size: 3em; font-weight: 700; color: var(--main-color); letter-spacing: -0.01em;}
.panel-header__subtitle {margin-top: 0.2em; font-size: 1.25em; font-weight: 700; color: #000; opacity: 0.6; line-height: 1.7; letter-spacing: -0.015em;}

.sub-container {padding-top: 7.8em; min-height:5rem;}
.sr-only {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;}
/************************* 공통 끝 *************************/

/************************* header_inc 시작*************************/
.header__fix {position: fixed; left:0; top:0; z-index: 100;width:100%;  height: 6.25em; font-size: var(--fz); --menu-height : 0; transition: .3s 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: .3s ease-in-out all;}
.header__inner {display: flex; align-items: center; height: inherit}
.header__ctrl {display: flex; align-items: center; height: inherit; margin-left: 3.7em;} 
@media(max-width:1080px){
	.header__inner {justify-content: space-between;}
	.header__ctrl {margin-left: 0;}
}

.header-home__logo {width: 17.5em; filter:brightness(0) invert(1); transition: .3s ease-in-out all;}

.header-navi {position: relative; height: inherit; margin-left: auto; transition: .3s ease-in-out all;}
.header-navi__m-list {display: flex; height: inherit; gap:4.7em;}
.header-navi__m-item {height: inherit;}
.header-navi__m-item:last-child {margin-right: 0;}
.header-navi__m-btn {display: flex; 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: .3s ease-in-out all;}
.header-navi__s-btn {display: block;}
@media(max-width:1320px){
	.header-navi__m-list {gap:2em;}
}
@media(max-width:1080px){
	.header-navi {display: none;}
}

.header-lang {position: relative; display: flex; align-items: center;  text-align:center; height: inherit; transition: .3s ease-in-out all;}
.header-lang__btn{display: flex; align-items:center; transition: .3s ease-in-out all;}
.header-lang__btn,
.header-lang__btn:link,
.header-lang__btn:visited {color: #fff;}
.header-lang__list {display: flex; justify-content: center; align-items: center; width: 5.875em; height: 2.25em; border:2px solid #fff; border-radius: 50px;}
.header-lang__item {padding:0 0.5em; border-right:1px solid #fff; transition: 0.3s;}
.header-lang__item:last-child {border-right:none;}
.header-lang__link{display: block; white-space: nowrap; font-size: 0.875em; opacity: 0.5; color: #fff; transition: .3s ease-in-out all;}
.header-lang__link--active {opacity: 1;}

@media(hover:hover){
	.header-lang__link:hover {color: #fff;}
}
@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:.3s 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; margin-left: 1.5em;}
.header-drawer__btn {position: relative; width: 44px; height: 18px; z-index: 0; transition:.3s ease-in-out all;}
.header-drawer__line {position: absolute; left: 0; width: 100%; height: 2px; background-color: #fff; transition:.3s ease-in-out all;}
.header-drawer__line--top {top: 0;}
.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--bottom{left: -0.25em;}
}


.header__fix.enter {background-color: #fff;}
.header__fix.enter .header-home__logo {filter:invert(0) brightness(1)}
.header__fix.enter .header-navi__m-btn {color: var(--main-black);}
.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(--main-black);}
.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 {border-color:var(--main-black); background-color: #fff;}
.header__fix.enter .header-lang__item {border-color:var(--gray-200)}
.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-black);}
@media(hover:hover){
	.header__fix.enter .header-lang__link:hover {color: var(--main-color);}
}



.header__fix--hidden {transform: translateY(-100%);}
/************************* 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:.3s ease-in-out all;}
.drop-menu__tit {display: block; font-size: 1.125em;}
.drop-menu__arr {margin-left: 1.5em; width: 0.75em; transition:.3s 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:.3s 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(--gray-200)}
.tab-menu__list {display: flex; justify-content: center;}
.tab-menu__btn {display: flex; justify-content: center; align-items: center; font-size: var(--h9); font-weight: 500; color: var(--gray-500); width: 10em; height: 4em; text-align: center; border-bottom:3px solid transparent; transition: 0.3s;}
.tab-menu__btn--crt {border-color:var(--main-color); color: var(--main-color);}

@media(hover:hover){
	.tab-menu__btn:hover {border-color:var(--main-color); color: var(--main-color);}
}
/************************* 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:.3s 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 {font-size: var(--fz); padding: 3.75em 0; background-color: var(--main-color); color: #fff;}
.footer__inner {position: relative;}
.footer__bottom {position: absolute; right: 0; bottom: 0; display: flex; align-items: center; gap: 1em;}
.footer__cprt {font-size: 1em; font-weight: 500; line-height: 1.6; color: #E5E5E5;}
.footer__adm {display: flex; gap: 0.5em;}
.footer__adm-link {font-size: 0.875em; color: #E5E5E5; transition: .15s ease all;}
.footer__adm-link,
.footer__adm-link:visited,
.footer__adm-link:link {color: #E5E5E5;}
@media(hover:hover){
	.footer__adm-link:hover {color: #fff;}
}

.footer-info {display: flex; flex-direction: column; gap: 1.3125em;}
.footer-info__logo {display: inline-block;}
.footer-info__logo img {width: 15.3125em; filter:brightness(0) invert(1)}
.footer-info__row {display: flex; align-items: center; gap: 1.5em;}
.footer-info__group {display: flex; align-items: center; gap: 0.25em;}
.footer-info__name {font-size: 1.125em; font-weight: 600; line-height: 1.4; letter-spacing: -0.015em; color: #fff; text-transform: uppercase;}
.footer-info__name + .footer-info__name {margin-left: 0.375em;}
.footer-info__label {font-size: 1.125em; font-weight: 700; line-height: 1.4; color: #fff; text-transform: uppercase;}
.footer-info__value {font-size: 1.125em; font-weight: 500; line-height: 1.4; color: #fff;}

@media(max-width:767px){
	.footer {padding: 2.5em 0;}
	.footer__inner {position: static;}
	.footer__bottom {position: static; margin-top: 2em;}
	.footer-info__row {flex-direction: column; align-items: flex-start; gap: 0.5em;}
}
/************************* footer_inc 끝 *************************/


/************************* form 시작 *************************/
.form-input {width: 100%; min-height: 4em; padding: 0 1.5em; font-size: 1em; font-weight: 400; font-family: inherit; color: #000; border: 0.0625em solid #A3A3A3; border-radius: 0.5em; outline: none; background: #fff; transition: .15s ease all;}
.form-input::placeholder {font-weight: 400; color: #A3A3A3;}
.form-input:focus {border-color: var(--main-color);}
.form-select {width: 100%; min-height: 4em; padding: 0 3em 0 1.5em; font-size: 1em; font-weight: 400; font-family: inherit; color: #000; border: 0.0625em solid #A3A3A3; border-radius: 0.5em; outline: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a5a5a5'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right 1.5em center / 1.25em; appearance: none; cursor: pointer; transition: .15s ease all;}
.form-select:focus {border-color: var(--main-color);}
.form-textarea {width: 100%; min-height: 8.75em; padding: 1.5em; font-size: 1em; font-weight: 400; font-family: inherit; color: #000; border: 0.0625em solid #A3A3A3; border-radius: 0.5em; outline: none; background: #fff; resize: vertical; transition: .15s ease all;}
.form-textarea::placeholder {font-weight: 400; color: #A3A3A3;}
.form-textarea:focus {border-color: var(--main-color);}
.form-checkbox {width: 1.5em; height: 1.5em; border: 0.0625em solid #525252; border-radius: 0.25em; appearance: none; cursor: pointer; flex-shrink: 0; transition: .15s ease all;}
.form-checkbox:checked {background: var(--main-color); border-color: var(--main-color);}
.form-radio {width: 1.5em; height: 1.5em; border: 0.0625em solid #525252; border-radius: 50%; appearance: none; cursor: pointer; flex-shrink: 0; transition: .15s ease all;}
.form-radio:checked {border-color: var(--main-color); background: radial-gradient(circle, var(--main-color) 40%, transparent 41%);}
.form-btn {display: flex; align-items: center; justify-content: center; min-height: 3.75em; padding: 0 2em; font-size: 1.5em; font-weight: 600; font-family: inherit; color: #fff; background: var(--main-color); border: none; border-radius: 0.75em; cursor: pointer; transition: .15s ease all;}
@media(hover:hover){
	.form-btn:hover {opacity: 0.85;}
}
/************************* form 끝 *************************/

/************************* 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;}


.contact-inquiry {position: relative; background: var(--main-color); padding: 6.625em 0 2.875em; font-size: var(--fz);}
.contact-inquiry__content {display: flex; justify-content: space-between; align-items: flex-start;}
.contact-inquiry__info {width: 45.5%; padding-top: 1em;}
.contact-inquiry__tagline {font-size: 3.25em; font-weight: 500; color: #fff; line-height: 1.4; text-transform: uppercase;}
.contact-inquiry__tagline-sub {font-size: var(--text-xl); font-weight: 500; color: #fff; margin-top: 0.65em; letter-spacing: -0.03em;}
.contact-inquiry__card {width: 49.3%; background: #fff; border-radius: 1.43em; padding: 2.125em 2.4375em;}

.contact-footer {margin-top: 6.4em;}
.contact-footer__logo {width: 15.3125em; filter: brightness(0) invert(1);}
.contact-footer__name {display: flex; gap: 0.625em; margin-top: 1.25em; font-size: 1.125em; font-weight: 600; color: #fff; letter-spacing: -0.03em;}
.contact-footer__name span {text-transform: uppercase;}
.contact-footer__meta {margin-top: 1.5em;}
.contact-footer__detail {display: flex; flex-wrap: wrap; gap: 0.875em 1.1875em;}
.contact-footer__item {display: flex; gap: 0.25em; font-size: 1.125em; font-weight: 500; color: #fff;}
.contact-footer__cate {font-weight: 700;}
.contact-footer__cprt {margin-top: 3em; font-weight: 500; color: #e5e5e5; text-transform: uppercase;}

.ly-sheet__fieldset {display: grid; grid-template-columns: 1fr 1fr; gap: 1.25em 2.25em;}
.ly-sheet__item {display: flex; align-items: center;}
.ly-sheet__item--full {grid-column: 1 / -1;}
.ly-sheet__item--top {align-items: flex-start;}
.ly-sheet__label {min-width: 6em; font-weight: 700; white-space: nowrap;}
.ly-sheet__label--req::after {content: '*'; margin-left: 0.125em; font-size: 1.25em; font-weight: 700; color: var(--main-color);}
.ly-sheet__group {flex: 1;}
.ly-sheet__agree {display: flex; align-items: center; justify-content: center; gap: 0.75em; grid-column: 1 / -1; width:max-content; margin: 0 auto;}
.ly-sheet__agree-text {font-size: 0.875em; font-weight: 600; color: #525252;}
.ly-sheet__fieldset > .form-btn {grid-column: 1 / -1;}
@media(max-width:768px){
	.ly-sheet__group {width: 100%;}
}

/************************* 공통 반응형 *************************/
@media (max-width: 1080px) {
  .sub-container {padding-top: 6em;}
  .panel-header__title {font-size: 2.25em;}
  .panel-header__subtitle br {display: none;}
  .contact-inquiry__tagline {font-size: 2.5em;}
}

@media (max-width: 768px) {
  .sub-container {padding-top: 5em; min-height: auto;}
  .panel-header__title {font-size: 2em;}
  .panel-header__subtitle {font-size: 1.125em;}

  .contact-inquiry {padding: 4em 0 2em;}
  .contact-inquiry__content {flex-direction: column; gap: 2em;}
  .contact-inquiry__info {width: 100%; padding-top: 0;}
  .contact-inquiry__tagline {font-size: 2em;}
  .contact-inquiry__tagline-sub {font-size: 1em;}
  .contact-inquiry__card {width: 100%; padding: 1.5em;}
  .ly-sheet__fieldset {grid-template-columns: 1fr; gap: 1em;}
  .ly-sheet__item {flex-direction: column; align-items: flex-start; gap: 0.5em;}
  .ly-sheet__label {min-width: auto;}
  .ly-sheet__agree {flex-direction: row; width: auto;}

  .contact-footer {margin-top: 3em;}
  .contact-footer__detail {flex-direction: column; gap: 0.5em;}

  .drop-menu {display: none;}
  .tab-menu__btn {font-size: 1em; width: auto; padding: 0 1em;}
}
@media(max-width:500px){
	.contact-inquiry__card {font-size: 1.25em;}
}

.top-btn {position: fixed; z-index: 50; display: flex; justify-content: center; align-items: center; bottom: 12%; right: 4%; width: 60px; height: 60px; font-size: 20px; font-weight: 600; color: var(--main-color); border-radius:50%; background-color: #fff; box-shadow:0 4px 12px rgba(0,0,0,0.15); transition: 0.3s;}
@media(hover:hover){
	.top-btn:hover {background-color: #f8f8f8;}
}