/* include 공통 CSS */

/************************* 공통 시작*************************/
.inner {margin: 0 auto; max-width:1440px;}
@media(max-width:1480px){
	.inner {padding: 0 4%;}
}

.sub-content				{min-height:6rem; padding-bottom: 1.5rem;}
/************************* 공통 끝 *************************/

/************************* header_inc 시작*************************/
#header {position: fixed; padding:0; z-index: 1000; left:0; top:0; width:100%; background-color: #fff; box-shadow: 2px 4px 12px 0 rgba(0,0,0,0.08); transition:.5s ease all;}
#header:has(.header-all){height:100%; max-height:0.8rem;}
#header.all-drop {max-height:max(400px, 50vh); }

#header .inner {max-width: 1840px;}
.header {display:flex; justify-content:space-between; align-items:center;}
@media (max-width:1880px) {
	#header .inner {padding: 0 4%;}
}
@media(max-width:1080px){
	#header:has(.header-all) .header {height: 0.8rem;}
}
@media(max-width:768px){
	.header {height: 0.8rem;}
}
.header-logo__link {display: block;}
.header-logo__img {width: 1.2rem;}

.header .header__ui{display: flex; justify-content: flex-end; align-items: center;}

.header-language {position: relative; text-align:center;}
.header-language .header-language__button{display: flex; align-items:center; height: 0.8rem; font-size: var(--fz-16); font-weight: 700; color: var(--main-color); line-height: 1; font-family: 'Montserrat', sans-serif; transition:.5s ease all;}
.header-language .header-language__navi{display: none; position:absolute; top: 100%; left: 50%; transform:translateX(-50%); padding:0.05rem 0; background:#fff;}
.header-language .header-language__link{padding:0.05rem 0.2rem; display:block; font-size: var(--fz-15); color: var(--main-black);}
@media(max-width:1080px){
	#header:has(.header-all) .header-language {display: none;}
}
@media(max-width:768px){
	.header-language {display: none;}	
}
.header-language .header-language__button--active {color: var(--main-color);}
.header-language .header-language__button:active, 
.header-language .header-language__button:focus-visible {color: var(--main-color);}
@media(hover:hover){
	.header-language .header-language__button:hover {color: var(--main-color);}
}

.header-shop {margin-left: 0.16rem;}
.header-shop .header-shop__link {display: inline-flex; justify-content: center; align-items: center; width: 1.2rem; height: 0.38rem; padding: 0 2%; border-radius: 50%; border-radius: 0.4rem; background-color: var(--main-color); font-size: var(--fz-16); font-weight: 700; color: #fff; line-height: 1;}

.header-login {display: flex; align-items: flex-end;}
.header-login .header-login__link {margin-left: 0.1rem; display: block; font-size:var(--fz-16); color:#fff; transition:.5s ease all;}
.header-login .header-login__link:first-of-type {margin-left: 0;}
@media (max-width:1280px) {
	.header-shop .header-shop__link {width: 1.2rem;}
}
@media(max-width:768px){
	.header-shop .header-shop__link {font-size: var(--fz-15);}
	.header-login{display: none;}	
}

.header-login .header-login__link:active,
.header-login .header-login__link:focus-visible {color: var(--main-color);}
@media(hover:hover){
	.header-login .header-login__link:hover {color: var(--main-color);}
}

.header-navi .header-navi__mainmenu {display: flex; align-items: center; justify-content: center;}
.header-navi .header-navi__mainlist {position: relative; margin:0 0.1rem; padding:0 0.3rem;}
.header-navi .header-navi__mainlink {height:1rem; display: flex; align-items: center; font-size: var(--fz-17); font-weight: 600; color: var(--main-black); line-height: 1; transition:.5s ease all;}
.header-navi .header-navi__mainlink:focus-visible, 
.header-navi .header-navi__mainlink:active,
.header-navi .header-navi__mainlink--current {color: var(--main-color);}
.header-navi .header-navi__submenu{display: none; position: absolute; top:100%; background:#fff; padding:0.05rem; width: 100%; left:0; right:0; margin: auto; border:1px solid #ddd;}
.header-navi .header-navi__sublink{display: block; padding:0.05rem; text-align: center; transition:.5s ease all;}
.header-navi .header-navi__sublink:focus-visible,
.header-navi .header-navi__sublink:active,
.header-navi .header-navi__sublink--current {color: var(--main-color);}
@media(hover:hover){
	.header-navi .header-navi__mainlink:hover {color: var(--main-color);}
	.header-navi .header-navi__sublink:hover {color: var(--main-color);}
}
@media (max-width:1280px) {
	.header-navi .header-navi__mainlist {padding: 0 0.2rem;}
	.header-navi .header-navi__mainlink {font-size: var(--fz-16);}
}
@media(max-width:768px){
	.header-navi {display: none;}	
}

.header-all .header-all__mainmenu {display: flex;}
.header-all .header-all__mainlist {margin:0 0.32rem; position: relative;}
.header-all .header-all__mainlink {padding:0 1em; display: flex; justify-content:center; align-items: center; height: 0.8rem; font-size: var(--fz-17); font-weight: 500; text-align: center; transition:.5s ease all;}
.header-all .header-all__submenu {position: absolute; top: 100%; left: 0; padding:0.075rem 0; width: 100%; opacity: 0; visibility:hidden; transition:.3s ease all;}
.header-all .header-all__sublink {padding:0.075rem 5px; font-size: var(--fz-15); display: block; text-align: center; transition:.5s ease all;}
#header.all-drop .header-all__submenu {opacity: 1; visibility:visible;}
@media(max-width:1080px){
	.header-all {display: none;}
}

@media(hover:hover){
	.header-all .header-all__mainlink:hover {color: var(--main-color);}
	.header-all .header-all__sublink:hover {color: var(--main-color);}
}


.hamburger {display:none; position: relative; width: 20px; height: 14px; margin-left: 0.2rem;}
.hamburger .hamburger__bar {position: absolute; left: 0; width: 100%; height: 2px; background-color: var(--main-black); transition:.5s ease all;}
.hamburger .hamburger__bar--top {top: 0;}
.hamburger .hamburger__bar--middle {top: 50%; transform:translateY(-50%)}
.hamburger .hamburger__bar--bottom {bottom: 0;}
.hamburger--active .hamburger__bar--top {top: 50%; left: 50%; transform:translate(-50%, -50%) rotate(45deg)}
.hamburger--active .hamburger__bar--middle {opacity: 0;}
.hamburger--active .hamburger__bar--bottom {bottom: 50%; left: 50%; transform:translate(-50%, 50%) rotate(-45deg)}


@media(max-width:1080px){
	#header:has(.header-all) .hamburger {display: block;}
}
@media(max-width:768px){	
	.hamburger {display:block;}
}

.hamburger-navi {position: fixed; top: 0.8rem; right: 0; bottom: 0; left: 0; transform: translateX(100%); background-color: #fff; transition:.3s ease-in-out transform; overflow: auto;}
.hamburger-navi--active {transform: translateX(0);}
.hamburger-navi__section {padding:0.1rem calc((100% - 1600px) / 2);;position: relative;}
.hamburger-navi__section:after {position: absolute; content:""; right: 0; left: 0; bottom: 0; margin: 0 auto; width: 96%; height: 1px; background-color: var(--main-gray);}
.hamburger-navi__section:last-child:after {display: none;}
.hamburger-navi__mainmenu {margin: 0 auto; padding-right: 0; padding-left: 0;}
.hamburger-navi__mainlink {padding:1em calc((100% - 1600px) / 2); display: block; font-size: var(--fz-20); font-weight: 500; transition:.3s ease all;}
.hamburger-navi .hamburger-navi__mainlink--active {background-color: var(--main-color); color: #fff;}
.hamburger-navi__mainlink--no-sub {background:none;}
.hamburger-navi__submenu {padding:0.075rem calc((100% - 1600px) / 2); display: none;}
.hamburger-navi__sublink {padding:0.5em; display: block; font-size: var(--fz-16); transition:.5s ease all;}
.hamburger-navi__info {padding:0.5em 0; display: flex; font-size: var(--fz-16);}
.hamburger-navi__category {display: inline-block; width: 80px; font-weight: 500;}
.hamburger-navi__detail {flex: 1 auto;}
.header-navi__lang-link {padding:0.5em 0; display: inline-flex; align-items: center; font-size: var(--fz-16);}
.header-navi__lang-link:before {display: inline-block; margin-right: 0.5em; content:""; width: 0.75em; height: 0.75em; border-radius:50%; border:1px solid var(--main-black); transition:.5s ease all;}
.header-navi__lang-link--active:before {background-color: var(--main-black);}
@media(max-width:1640px){
	.hamburger-navi__section {padding-right: 4%; padding-left: 4%;}
	.hamburger-navi__mainmenu {padding-right: 0; padding-left: 0;}
	.hamburger-navi__mainlink {padding-right: 4%; padding-left: 4%;}
	.hamburger-navi__submenu {padding-right: 4%; padding-left: 4%;}
}
@media (max-width:500px) {
	.hamburger-navi__mainlink {font-size: 0.18rem;}
}
@media(hover:hover){
	.hamburger-navi__mainlink:hover {background-color: var(--main-color); color: #fff;}
	.hamburger-navi__sublink:hover {color: var(--main-color);}
	.header-navi__lang-link:hover:before {background-color: var(--main-black);}
}

/* 스크롤 다운 헤더 CSS Start */
#header.fix-header {background-color:#fff; box-shadow: 2px 4px 12px 0 rgba(0,0,0,0.08);}
#header.fix-header .header-navi .header-navi__mainlink {color: var(--main-black);}
#header.fix-header .menu-button .menu-button__bar {background-color: var(--main-black);}
#header.fix-header .header-login .header-login__link {color: var(--main-black);}
#header.fix-header .header-language .header-language__button{color: var(--main-black);}
#header.fix-header .hamburger .hamburger__bar {background-color: var(--main-black);}
/* 스크롤 다운 헤더 CSS End */

/* 헤더 마우스 호버 CSS Start */
#header.header-enter {background-color:#fff; box-shadow: 2px 4px 12px 0 rgba(0,0,0,0.08);}
#header.header-enter .header-navi .header-navi__mainlink {color: var(--main-black);}
#header.header-enter .menu-button .menu-button__bar {background-color: var(--main-black);}
#header.header-enter .header-login .header-login__link {color: var(--main-black);}
#header.header-enter .header-language .header-language__button{color: var(--main-black);}
#header.header-enter .hamburger .hamburger__bar {background-color: var(--main-black);}
/* 헤더 마우스 호버 CSS End */

#header.ham-open {background-color: #fff; border-bottom:transparent;}
#header.ham-open .hamburger .hamburger__bar {background-color: var(--main-black);}


/************************* header_inc 끝*************************/



/************************* sub-dropdown 시작 *************************/
.sub-dropmenu {border-bottom:1px solid var(--main-gray);}
.dropmenu {margin: 0 auto; max-width:1600px; display: flex; align-items:center;}
.dropmenu .dropmenu__home {display: inline-flex; width: 0.6rem; height: 0.6rem; justify-content:center; align-items:center; text-align: center; border-left:1px solid var(--main-gray); transition:.5s ease all;}
.dropmenu .dropmenu__home:active,
.dropmenu .dropmenu__home:focus-visible {background-color: var(--main-color);}
.dropmenu .dropmenu__homeicon {width: 0.2rem;}
.dropmenu .dropmenu__menuwrap {display: flex; width: calc(100% - 0.6rem);}
.dropmenu .dropmenu__menu {position: relative; width: 2.5rem;}
.dropmenu .dropmenu__menu--depth2 {margin-left: -1px;}
.dropmenu .dropmenu__btn {position: relative; width: 100%; height: 0.6rem; padding:0 0.16rem; display: flex; justify-content:space-between; align-items:center; font-size: var(--fz-16); font-weight: 500; border-left:1px solid var(--main-gray); border-right:1px solid var(--main-gray); transition:.5s ease all;}
.dropmenu .dropmenu__btn--active,
.dropmenu .dropmenu__btn:active,
.dropmenu .dropmenu__btn:focus-visible {color: var(--main-color);}
.dropmenu .dropmenu__btn .dropmenu__arrow {transition:.5s ease all;}
.dropmenu .dropmenu__btn--active .dropmenu__arrow {transform:rotate(180deg);}
.dropmenu .dropmenu__menulist {position: absolute; display: none; padding:0.04rem 0; width: 100%; top: 100%; left: 0; background-color: #fff; border:1px solid var(--main-gray);}
.dropmenu .dropmenu__menulink {display: block; margin:0.04rem 0; padding:0.04rem 0.16rem; font-size: var(--fz-15); transition:.5s ease all;}
.dropmenu .dropmenu__menulink:active,
.dropmenu .dropmenu__menulink:focus-visible {color: var(--main-color);}
@media(max-width:500px){
	.dropmenu .dropmenu__menu {width: 50%;}
}
@media(hover:hover){
	.dropmenu .dropmenu__home:hover {background-color: var(--main-color);}
	.dropmenu .dropmenu__btn:hover {color: var(--main-color);}
	.dropmenu .dropmenu__menulink:hover {color: var(--main-color);}
}

/************************* sub-dropdown 끝 *************************/
/************************* sub-tabmenu 시작 *************************/
.sub-tab {border-bottom: 1px solid var(--main-gray);}
.sub-tabmenu {margin: 0 auto; max-width:1600px; display: flex;}
.sub-tabmenu__list {flex:1 auto;}
.sub-tabmenu__link {display: inline-flex; justify-content:center; align-items:center; width: 100%; height: 0.6rem; font-size: var(--fz-15); font-weight: 600; color: var(--main-black); border-bottom:2px solid transparent; transition:.5s ease all;}
.sub-tabmenu__link--active,
.sub-tabmenu__link:active,
.sub-tabmenu__link:focus-visible {color: var(--main-color); border-bottom:2px solid var(--main-color);}
.sub-tabmenu__link:visited,
.sub-tabmenu__link:link {color: var(--black-04);}
.sub-tabmenu__link--active:visited {color: var(--main-color);}
@media(hover:hover){
	.sub-tabmenu__link:hover {color: var(--main-color); border-bottom:2px solid var(--main-color);}
}
/************************* sub-tabmenu 끝 *************************/

/************************* sub-depth3 시작 *************************/
.sub-depth3 {padding: 1.2rem 0 0.2rem; margin: 0 auto; max-width:1600px; display: flex; flex-flow: row wrap; justify-content: center;}
.sub-depth3 .sub-depth3__list {margin-right: 0.12rem; background: #fff; font-size: var(--fz-16); font-weight: 600; line-height: 1;}
.sub-depth3 .sub-depth3__list:last-child {margin-right: 0;}
.sub-depth3 .sub-depth3__link {display: block; width: 100%; padding: 0.12rem 0.24rem; border-radius: 0.4rem; transition:.5s ease all;}
.sub-depth3 .sub-depth3__link--active,
.sub-depth3 .sub-depth3__link:active,
.sub-depth3 .sub-depth3__link:focus-visible {background-color: var(--main-color); color: #fff;}
@media(hover:hover){
	.sub-depth3 .sub-depth3__link:hover {background-color: var(--main-color); color: #fff;}
}
@media (max-width:768px) {
	.sub-depth3 {padding-top: 1rem;}
}
/************************* sub-depth3 끝 *************************/


/************************* footer_inc 시작 *************************/
#footer {background-color: var(--main-color);}
#footer .inner {max-width:1380px;}

.footer {display: flex; justify-content: space-between; padding:0.4rem 0;}
.footer-left {}
.footer-right {width: 48%;}
@media (max-width:1420px) {
	#footer .inner {padding: 0 4%;}
}
@media (max-width:768px) {
	.footer {display: block;}
	.footer-right {width: 100%; margin-top: 0.3rem;}
}

.footer-left {display: flex; flex-direction: column;}
.footer-logo .footer-logo__img {width: 2.6rem;}


.footer-left__bottom {margin-top: auto;}
.footer-sns {display: flex; align-items: center;}
.footer-sns__list {margin-right: 0.2rem;}
.footer-sns__list:last-child {margin-right: 0;}
.footer-sns__link {display: inline-flex; justify-content: center; align-items: center; width: 0.24rem; height: 0.24rem; opacity: 0.49; transition: 0.3s ease all;}
.footer-sns__insta {background: url(./img/ft_sns01.svg) no-repeat center / 100%;}
.footer-sns__youtube {background: url(./img/ft_sns02.svg) no-repeat center / 100%;}
.footer-sns__blog {background: url(./img/ft_sns03.svg) no-repeat center / 100%;}
@media (hover:hover) {
	.footer-sns__link:hover {opacity: 1;}
}
@media (max-width:1280px) {
	.footer-logo .footer-logo__img {width: 2.4rem;}
}
@media (max-width:768px) {
	.footer-logo {margin-bottom: 0.2rem;}
	.footer-logo .footer-logo__img {width: 2rem;}
}
@media(max-width:500px){
	.footer-logo .footer-logo__img {width: 1.6rem;}
}

.family-site {position: relative; display: inline-block;}
.family-site .family-site__button {padding:0 0.1rem; display: inline-flex; justify-content:space-between; align-items:center; width: 2rem; height: 0.4rem; font-size: var(--fz-14); font-weight: 500; border:1px solid #fff; color: #fff; transition:.5s ease all;}
.family-site .family-site__button--open,
.family-site .family-site__button:active,
.family-site .family-site__button:focus-visible {background-color: var(--main-color);}
.family-site .family-site__button .family-site_arrow {width: 0.08rem; transition:.5s ease all;}
.family-site .family-site__button--open .family-site_arrow {transform:rotate(-180deg);}
.family-site .family-site__navi {display: none; position: absolute; top: 100%; left: 0; padding:0.1rem; width: 100%; text-align: left; border:1px solid #fff; background-color: var(--main-black); border-top:none; z-index: 10; }
.family-site .family-site__link {display: block; margin:0.03rem 0; padding:0.02rem 0; color: #fff;}
/* @media(hover:hover){
	.family-site .family-site__button:hover {background-color: var(--main-color);}
} */

.footer-admin {margin-top: 0.18rem; display: flex; flex-flow: row wrap;}
.footer-admin .footer-admin__copyright {color: #fff; opacity: 0.49; font-family: 'Montserrat', sans-serif;}
.footer-admin .footer-admin__nav {margin-left: 0.2rem; display: flex;}
.footer-admin .footer-admin__nav .footer-admin__link {margin-left: 0.1rem; display: inline-block; color: #fff; opacity: 0.49; transition:.5s ease all;}
.footer-admin .footer-admin__nav .footer-admin__link:first-of-type {margin-left: 0;}
.footer-admin .footer-admin__nav .footer-admin__link:active, 
.footer-admin .footer-admin__nav a.footer-admin__link:focus-visible {color: var(--main-color);}
@media(max-width:500px){
	.footer-admin .footer-admin__nav {margin:0.1rem 0 0 0; width: 100%;}
}
@media(hover:hover){
	/* .footer-admin .footer-admin__nav .footer-admin__link:hover {color: var(--main-color);} */
}

.footer-contact {color: #fff;}
.footer-contact__title {padding-bottom: 0.16rem; font-size: var(--fz-32); font-weight: 700; line-height: 1.3; font-family: 'Montserrat', sans-serif;}
.footer-contact__desc {font-size: var(--fz-16); font-weight: 300; line-height: 1.6;}
.footer-contact__desc span {font-weight: 600;}

.footer-contact-button {margin: 0.38rem 0 0.44rem;}
.footer-contact-button .footer-contact-button__link {display: inline-flex; justify-content: center; align-items: center; width: 1.15rem; height: 0.45rem; border-radius: 0.4rem; border: 1px solid #fff; font-size: var(--fz-15); font-weight: 700; color: #fff; line-height: 1.3; transition: 0.3s ease all;}
@media (hover:hover) {
	.footer-contact-button .footer-contact-button__link:hover {border-color: var(--main-color); background-color: #fff; color: var(--main-color);}
}
@media (max-width:768px) {
	.footer-contact__title {padding-bottom: 0.1rem; font-size: var(--fz-30);}
	.footer-contact__desc {font-size: var(--fz-15);}
	.footer-contact-button {margin: 0.3rem 0 0.25rem;}
}
@media (max-width:500px) {
	.footer-contact__title {padding-bottom: 0.05rem; font-size: var(--fz-26);}
	.footer-contact__desc {font-size: var(--fz-14);}
	.footer-contact-button {margin: 0.2rem 0;}
}

.footer-navi {margin-bottom: 0.12rem;}
.footer-navi .footer-navi__link {display: inline-block; margin-left: 0.2rem; font-weight: 600; color: #fff; transition:.5s ease all;}
.footer-navi .footer-navi__link:first-of-type {margin-left: 0;}
.footer-navi .footer-navi__link:active, 
.footer-navi .footer-navi__link:focus-visible {color: #fff;}
@media(hover:hover){
	.footer-navi a.footer-navi__link:hover {color: var(--main-color);}
}

.footer-info .footer-info__list {margin-bottom: 0.12rem; display: flex; flex-flow:row wrap; color: #fff; line-height: 1;}
.footer-info .footer-info__list:last-child {margin-bottom: 0;}
.footer-info .footer-info__detail {margin-right: 0.08rem;}
.footer-info .footer-info__detail:last-of-type {margin-right: 0;}
.footer-info .footer-info__category {color: #fff; opacity: 0.49;}
.footer-info .footer-info__text {color: #fff; opacity: 0.49;}
.footer-info .footer-info__link {color: #fff; transition:.5s ease all;}
.footer-info .footer-info__link:active,
.footer-info .footer-info__link:focus-visible {color: var(--main-color);}
@media(max-width:500px){
	.footer-info .footer-info__list {margin-bottom: 0;}
	.footer-info .footer-info__detail {padding:0.03rem 0; width: 100%; margin-right: 0;}
}
@media(hover:hover){
	.footer-info .footer-info__link:hover {color: var(--main-color);}
}

/************************* footer_inc 끝 *************************/

/************************* ui.totop 시작 *************************/
#toTop {
	display:none;
	text-decoration:none;
	position:fixed;
	bottom:10px;
	right:10px;
	overflow:hidden;
	width:51px;
	height:51px;
	border:none;
	text-indent:100%;
	background:url("./img/ui.totop6.png") no-repeat left top;
}

#toTopHover {
	background:url("./img/ui.totop6.png") no-repeat left -51px;
	width:51px;
	height:51px;
	display:block;
	overflow:hidden;
	float:left;
	opacity: 0;
	-moz-opacity: 0;
	filter:alpha(opacity=0);
}

#toTop:active, #toTop:focus-visible {
	outline:none;
}
/************************* ui.totop 끝 *************************/