/* COMMON */
button { background-color: transparent; }

[data-scroll-y="false"] { overflow-y: hidden; }
.blind { position: absolute; width: 1px; height: 1px; clip: rect(0 0 0 0); overflow: hidden; }
.bg-light { background-color: #f6f7f8; }
.inner { position: relative; margin-left: auto; margin-right: auto; max-width: 1400px; width: 90%; }
.inner-large { max-width: 1800px; }
.inner-1600 { max-width: 1600px; }
.inner-full { max-width: none; padding-left: 50px; padding-right: 50px; width: 100%; }
.color-red { color: #ec1b1b; }
.color-primary { color: #03994a; }
.mo { display: none; }

.swiper-pagination-bullet-active { background: #03994a; }
.swiper-scrollbar-drag { background: #03994a; }

/* Floating */
.floating-container { z-index: 9; position: fixed; bottom: 0; right: 0; }
.scroll-top { pointer-events: none; }
.scroll-top a { display: block; margin: auto; width: 65px; height: 65px; background: #101010 url('../images/scroll-top-arrow.svg') no-repeat center / auto 35%; opacity: 0; visibility: hidden; transition: ease .6s; }
.floating { display: block; transition: all cubic-bezier(0.18, 0.89, 0.32, 1.28) .35s; }
.floating-wrap { display: flex; flex-direction: column; align-items: center; justify-content: center; margin-bottom: 25px; width: 110px; height: 110px; background: linear-gradient(48deg, var(--clr-navy), #ff7900); border-radius: 50%; box-shadow: 0px 4px 10px 0px rgba(108, 108, 108, 0.15), 0px 6px 16px 0px rgba(108, 108, 108, 0.25); transition: all cubic-bezier(0.18, 0.89, 0.32, 1.28) .35s; animation: .45s floating cubic-bezier(0.18, 0.89, 0.32, 1.28) 0.5s forwards; opacity: 0; }
.floating .icon { display: block; margin: 0 auto 10px; width: 50px; height: 34px; background: url('../images/logo-symbol-light.svg') no-repeat center / auto 100%; }
.floating .text { text-align: center; font-size: 15px; color: #fff; font-weight: 700; }
[data-floating="false"] { position: absolute; }
[data-scroll-top="true"] .scroll-top a { opacity: 1; visibility: visible; transition: ease .3s; }
[data-scroll-top="true"] .scroll-top { pointer-events: auto; }
@keyframes floating {
    from { opacity: 0; transform: scale(0); }
    to { opacity: 1; transform: none; }
}
@media (hover: hover) and (pointer: fine) {
    .floating:hover { transform: scale(1.1); }
    .floating:hover .floating-wrap { box-shadow: -3px 3px 14px 0px rgba(234, 0, 44, 0.5), 3px -3px 14px 0px rgb(255, 121, 0, 0.5); }
}
@media screen and (max-width: 1024px) {
    .inner-full  { padding-right: 5%; padding-left: 5%; }

    .floating-wrap { margin-bottom: 15px; width: 75px; height: 75px; }
    .floating .icon { margin-bottom: 5px; width: 35px; height: 20px; }
    .floating .text { font-size: 12px; }
    .scroll-top a { width: 45px; height: 45px; }
}
@media screen and (max-width: 768px) {
    .pc { display: none; }
    .mo { display: block; }
    .mobile-scroll { overflow: visible; position: relative; padding-bottom: 25px; }
    .mobile-scroll .swiper-slide { width: auto; }
    .mobile-scroll img { max-width: none; }
}

/* ------- Form ------- */
.check { display: inline-flex; align-items: center; position: relative; user-select: none; }
.check label { padding-left: 10px; font-size: 16px; color: #151515; cursor: pointer; }
.check i { display: inline-block; vertical-align: middle; position: relative; width: 18px; height: 18px; pointer-events: none; }
.check i::before,
.check i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.check i::after { background-repeat: no-repeat; border: 1px solid #999999; background-color: #fff; background-image: url('../images/checked.svg'); background-size: auto 100%; background-position: center; transition: all ease .15s; }
.check i::before { background-color: #03994a; border: 1px solid #03994a; }
.check input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 26px; height: 26px; color: #fff; opacity: 0; cursor: pointer; }
.check input:checked ~ i::after { background-color: #03994a; border-color: #03994a; }
.check a { background: linear-gradient(to bottom, #666, #666); background-size: 1px 1px; background-position: left bottom 3px; background-repeat: repeat-x; }
.check a span { vertical-align: baseline; }
.check-light label { color: #fff; cursor: pointer; }
.check-light i::after { background-color: #fff; background-image: url('../images/check-dark.png'); }
.check-light i::before { border-color: #fff; }
.radio { display: inline-flex; align-items: center; position: relative; user-select: none; }
.radio label { padding-left: 10px; font-size: 16px; color: #3d3d40; cursor: pointer; }
.radio i { display: inline-block; vertical-align: middle; position: relative; width: 18px; height: 18px; pointer-events: none; }
.radio i::before,
.radio i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; }
.radio i::after { padding: 4px; background-image: radial-gradient(circle at 50%, #03994a 40%, #fff 46%); border: 1px solid #03994a; opacity: 0; }
.radio i::before { border: 1px solid #999999; }
.radio input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 26px; height: 26px; color: #fff; opacity: 0; cursor: pointer; }
.radio input:checked ~ i::after { opacity: 1; }
.radio input:checked ~ label { color: #111; }
.input-block-group { display: flex; }
.input-block-group .radio-block { flex: 0 1 180px; display: inline-block; position: relative; margin-right: -1px; text-align: center; }
.input-block-group .radio-block:first-child i { border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
.input-block-group .radio-block:last-child i { border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
.input-block-group .radio-block i { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #e5e5e5; pointer-events: none; transition: all ease .15s; }
.input-block-group .radio-block input { position: absolute; opacity: 0; }
.input-block-group .radio-block input:checked ~ i { z-index: 2; border-color: var(--clr-navy); }
.input-block-group .radio-block input:checked ~ label { color: var(--clr-navy); }
.input-block-group .radio-block label { display: block; padding: 10px; font-size: 18px; color: #999999; font-weight: 500; cursor: pointer; transition: all ease .15s; }


/* ------- Button ------- */
.button { overflow: hidden; display: inline-flex; align-items: center; position: relative; padding-right: 24px; padding-left: 24px; height: 50px; line-height: 50px; font-size: 16px; color: #111; background: transparent; border: 1px solid transparent; transition-property: color, background; transition-timing-function: ease; transition-duration: .15s; }
.button-center { justify-content: center; }
.button-large { line-height: 70px; height: 70px; }
.button-round { border-radius: 100px; }
.button-primary { font-weight: 700; color: #fff; background: #03994a; }
.button-arrow { overflow: hidden; display: inline-block; position: relative; padding-right: 60px; min-width: 220px; color: #fff; border: 1px solid #fff; transition: all ease .35s; }
.button-arrow::after { content: ''; position: absolute; top: 0; right: 30px; bottom: 0; margin: auto; display: block; width: 7px; height: 13px; background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23111111'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; transition: background-image ease .15s; }
.button-round { border-radius: 50px; }
.button-gradient { color: #fff; background-image: linear-gradient(48deg, #03994a, #ff7900, #ff7900, #03994a); background-size: 400% 100%; background-position: 0%; border-color: transparent; transition: background ease .3s; }
.button-dark { color: #fff; background: #333333; }
.button-border { color: #111; background: transparent; border-color: #151515; }
.button-border-light { color: #fff; border-color: #fff; }
.button-border[aria-selected="true"] { color: #fff; background: #03994a; border-color: #03994a; }
.button-arrow[aria-selected="true"]::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
.button-light { color: #fff; }
.button-white { background-color: #fff; }
.button-more { border-color: #fff; border-radius: 50px; }
.button-more svg { z-index: 2; position: relative; margin-left: 36px; transition: all ease .35s; }
.button-more span { z-index: 2; position: relative; display: block; }
.button-more::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; border-radius: 50px; transform: translateX(-100%); transition: transform ease .65s; }
.button .icon:first-child { margin-right: 10px; }
.button .icon:last-child { margin-left: 10px; }
.button-expand { display: inline-flex; align-items: center; position: relative; padding: 0 70px 0 24px; line-height: 50px; height: 50px; font-size: 18px; font-weight: 600; color: #151515; background: #fff; border: 1px solid #333333; border-radius: 100px; }
.button-expand .circle { display: flex; align-items: center; justify-content: space-between; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; padding: 0 18px 0 24px; color: #fff; white-space: nowrap; background: #333333; border-radius: 100px; transition: clip-path .35s cubic-bezier(.785,.135,.15,.86), transform .35s cubic-bezier(.785,.135,.15,.86); clip-path: inset(8px 8px 8px calc(100% - 44px) round 36px); }
.button-expand .circle svg { overflow: hidden; width: 13px; height: 13px; }
.button-expand .circle path { fill: currentColor; transition: transform .35s cubic-bezier(.785,.135,.15,.86); }
.button-expand .circle path:first-child { transition-delay: .1s; }
.button-expand .circle path:last-child { transform: translateX(-100%); transition-delay: 0s; }
.button-expand-light { color: #fff; background: transparent; border-color: #fff; }
.button-expand-light .circle { color: #03994a; background: #fff; }
@media (hover: hover) and (pointer: fine) {
    .button-primary:hover { background: #00b355; }
    .button-arrow:hover { color: #111; background: #fff; border-color: #fff; }
    .button-arrow:hover::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
    .button-gradient:hover { background-position: 20%; }
    .button-border:hover,
    .button-border-light:hover { color: #fff; background: #00b355; border-color: #00b355; }
    .button-hover-white:hover { color: #151515; background: #fff;}
    .button-hover-primary:hover { color: #fff !important; background: #03994a !important; }
    .button-hover-primary:hover * { color: inherit; }
    .button-light:hover { color: #151515; }
    .button-more:hover::after { transform: none; }
    .button-more:hover svg { stroke: #151515; }

    .button-expand:hover .circle { clip-path: inset(0 round 50px); }
    .button-expand:hover .circle path:first-child { transform: translateX(100%); transition-delay: 0s; }
    .button-expand:hover .circle path:last-child { transform: translateX(0); transition-delay: .1s; }

    .button-more-expand:hover .icon { clip-path: circle(150% at calc(100% - 26px) 50%); }
}
@media (hover: hover) and (pointer: fine) {
}
@media screen and (max-width: 1024px) {
    .button { font-size: 15px; }
    .button-arrow { padding: 12px 40px 12px 30px; }
}
@media screen and (max-width: 768px) {
}


/* ------- Header ------- */
.header::before { content: ''; z-index: 9; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.4); visibility: hidden; opacity: 0; transition: all ease .35s; }
.header-primary { z-index: 10; position: absolute; top: 0; left: 0; width: 100%; border-bottom: 1px solid rgba(0, 0, 0, .1); transition-property: color, background, border, box-shadow; transition-duration: .35s, .35s, .35s; }
.header-primary::after { content: ''; position: absolute; top: 80px; left: 0; width: 100%; height: 1px; background: #e5e5e5; opacity: 0; transition: opacity ease .15s; pointer-events: none; }
.header-logo { z-index: 11; position: absolute; top: 27px; left: 5%; width: 204px; height: 26px; background: url('../images/logo.png') no-repeat center / auto 100%; transition-property: background; transition-duration: .35s, .35s; }
.header-nav { overflow: hidden; display: flex; flex-wrap: wrap; justify-content: center; height: 80px; text-align: center; }
.header-nav .lists { display: flex; justify-content: center; position: relative; }
.header-nav .lists .link { display: block; position: relative; padding: 31px 40px; line-height: 1; font-size: 18px; font-weight: 500; color: inherit; transition-property: padding, color; transition-timing-function: ease; transition-duration: .35s, .15s; }
.header-nav .lists .link::before { content: ''; position: absolute; top: 32px; right: 32px; width: 4px; height: 4px; background: #03994a; border-radius: 50%; transform: translateX(-5px); opacity: 0; transition: all ease .15s; }
.header-nav .lists .link[aria-expanded]::after { content: ''; position: absolute; top: 0; right: 5%; bottom: 0; margin: auto -4px auto 0; width: 30px; height: 30px; background: url('../images/chevron-right.svg') no-repeat center / auto 22px; transition: transform ease  .15s; }
.header-nav .lists .link[aria-expanded="true"]::after { transform: rotate(90deg); }
/* .header-nav .sub-lists { display: flex; position: absolute; top: 80px; left: 0; padding: 34px 65px 30px; min-width: 1245px; text-align: left; visibility: hidden; opacity: 0; } */
.header-nav .sub-lists { padding: 34px 40px 30px; text-align: left; }
.header-nav .sub-lists .sub-link { display: inline-block; margin: 0 50px 5px 0; padding: 0; font-size: 18px; font-weight: 600; transition-property: color; transition-duration: inherit; background-image: linear-gradient(transparent calc(100% - 2px), #000 2px); background-size: 0% 100%; background-repeat: no-repeat; transition: background-size ease .35s, background-image ease .35s; }
.header-nav .sub-lists > li:last-child .sub-link { margin-right: 0; }
.header-nav .child-lists .child-link { display: inline-block; margin-top: 15px; font-size: 15px; font-weight: 400; color: #666666; background-image: linear-gradient(transparent calc(100% - 1px), #555 1px); background-size: 0% 100%; background-repeat: no-repeat; transition: background-size ease .35s; }
.header-language { z-index: 11; position: absolute; top: 27px; right: calc(5% + 47px); }
.header-language .current { position: relative; padding: 2px 26px 0 14px; font-size: 15px; color: inherit; font-weight: 600; background: url('../images/language-arrow.png') no-repeat top 10px right 10px; border: 1px solid #111; border-radius: 30px; transition: border ease .35s; }
.header-language ul { position: absolute; left: 50%; top: calc(100% + 10px); margin-top: 5px; width: 80px; background: #fff; border: 1px solid #555; transform: translateX(-50%); visibility: hidden; opacity: 0; }
.header-language ul::before { content: ''; z-index: -1; position: absolute; top: -5px; left: 0; right: 0; margin: auto; width: 10px; height: 10px; background: #fff; border: 1px solid #555; transform: rotate(45deg); }
.header-language li { background: #fff; }
.header-language a { display: block; padding: 10px 0; text-align: center; font-size: 14px; color: #111; transition: all ease .15s; }
.header-language .current[aria-pressed="true"] + ul { visibility: visible; opacity: 1; }
.header-hamburger { display: none; z-index: 11; position: absolute; top: 15px; right: 5%; margin-right: -13px; width: 50px; height: 50px; }
.header-hamburger span { position: absolute; left: 0; left: 14px; width: 45%; height: 2px; background: #000; transition-property: transform, background; transition-timing-function: ease; transition-duration: .35s, .35s; }
.header-hamburger span:nth-of-type(1) { top: 17px; }
.header-hamburger span:nth-of-type(2) { top: 25px; }
.header-hamburger span:nth-of-type(3) { top: 33px; }
.header-hamburger[aria-expanded="true"] span:nth-of-type(1) { top: 18px; left: 16px; width: 40%; transform: translateY(6px) rotate(-45deg); }
.header-hamburger[aria-expanded="true"] span:nth-of-type(2) { opacity: 0; }
.header-hamburger[aria-expanded="true"] span:nth-of-type(3) { top: 30px; left: 16px; width: 40%; transform: translateY(-6px) rotate(45deg); }
.header-fullburger { z-index: 11; position: absolute; top: 15px; right: 5%; margin-right: -13px; width: 50px; height: 50px; }
.header-fullburger span { position: absolute; left: 0; left: 14px; width: 45%; height: 2px; background: #000; transition-property: transform, background; transition-timing-function: ease; transition-duration: .35s, .35s; }
.header-fullburger span:nth-of-type(1) { top: 17px; }
.header-fullburger span:nth-of-type(2) { top: 25px; }
.header-fullburger span:nth-of-type(3) { top: 33px; }
.header-fullburger[aria-expanded="true"] span:nth-of-type(1) { top: 18px; left: 16px; width: 40%; transform: translateY(6px) rotate(-45deg); }
.header-fullburger[aria-expanded="true"] span:nth-of-type(2) { opacity: 0; }
.header-fullburger[aria-expanded="true"] span:nth-of-type(3) { top: 30px; left: 16px; width: 40%; transform: translateY(-6px) rotate(45deg); }
.header-fullmenu { display: none; z-index: 10; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); }
.header-fullmenu-wrap { position: absolute; top: 0; left: 0; padding-left: 365px; width: 100%; height: 100%; background: #fff; }
.header-fullmenu-background { z-index: 2; position: absolute; top: 0; left: 0; width: 365px; height: 100%; background: url('../images/header-fullmenu-background.jpg') no-repeat center / cover; }
.header-fullmenu-logo { display: none; z-index: 11; position: absolute; top: 27px; left: 5%; width: 204px; height: 26px; background: url('../images/logo.png') no-repeat center / auto 100%; transition-property: background; transition-duration: .35s, .35s; }
.header-fullmenu-nav { padding-right: 90px; height: 100%; }
.header-fullmenu-nav .lists { display: flex; }
.header-fullmenu-nav .lists > li { flex: 1 1 0; position: relative; padding: 70px 20px; }
.header-fullmenu-nav .lists > li::before { content: ''; position: absolute; top: 0; right: 0; width: 1px; min-height: 100vh; background: #e5e5e5; }
.header-fullmenu-nav .lists > li:nth-child(2),
.header-fullmenu-nav .lists > li:nth-child(3),
.header-fullmenu-nav .lists > li:nth-child(4),
.header-fullmenu-nav .lists > li:nth-child(6) { flex-grow: 0.7; }
.header-fullmenu-nav .lists > li:last-child { border-bottom: none; }
.header-fullmenu-nav .lists .link { display: inline-block; position: relative; margin-bottom: auto; font-size: 22px; font-weight: 600; }
.header-fullmenu-nav .lists .link::before { content: ''; position: absolute; top: 12px; right: -12px; width: 6px; height: 6px; background: #03994a; border-radius: 50%; transform: translateX(-5px); opacity: 0; transition: all ease .15s; }
.header-fullmenu-nav .sub-lists { padding-top: 35px; }
.header-fullmenu-nav .sub-lists > li { }
.header-fullmenu-nav .sub-lists .sub-link { display: inline-block; margin-top: 20px; font-size: 20px; font-weight: 500; background-image: linear-gradient(transparent calc(100% - 2px), #000 2px); background-size: 0% 100%; background-repeat: no-repeat; transition: background-size ease .35s, background-image ease .35s; }
.header-fullmenu-nav .child-lists { padding-bottom: 15px; }
.header-fullmenu-nav .child-lists > li { margin-top: 15px; line-height: 1.2; }
.header-fullmenu-nav .child-lists .child-link { font-size: 15px; font-weight: 500; color: #555; background-image: linear-gradient(transparent calc(100% - 1px), #555 1px); background-size: 0% 100%; background-repeat: no-repeat; transition: background-size ease .35s; }
.header-fullmenu-close { position: absolute; top: 0; right: 0; width: 90px; height: 90px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E%0A"); background-repeat: no-repeat; background-position: center; background-size: auto 35%; }
.header-nav-background { display: none; position: relative; margin: auto; width: 90%; }
.header-nav-background::before { content: ''; display: block; padding-top: calc(200 / 380 * 100%); width: 100%; height: 0; }
.header-nav-background::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('../images/header-nav-background.jpg') no-repeat center / cover; }

[data-header-pin] .header-primary { position: fixed; }
[data-header-sticky] .header-primary { position: fixed; }
/* [data-header-sticky][data-header-theme="dark"],
[data-header-sticky][data-header-theme="light"] { box-shadow: 0px 0px 20px 0px rgba(10, 10, 10, .1); } */
/* [data-header-menu="opened"] { box-shadow: 0px 0px 20px 0px rgba(10, 10, 10, .1); } */
/* [data-header-menu="opened"] .header-nav .lists .link { padding-right: 65px; padding-left: 65px; } */
[data-header-menu="opened"]::before { visibility: visible; opacity: 1; }
[data-header-menu="opened"] .header-primary::after { opacity: 1; }
[data-header-menu="opened"] .header-hamburger span,
[data-header-menu="opened"] .header-fullburger span { background: #000; }
[data-header-menu="opened"][data-header-theme="transparent"] .header-primary { color: #000; background: #fff; }
[data-header-menu="opened"][data-header-theme="transparent"] .header-search .toggle { background-image: url('../images/search.svg'); }
[data-header-theme="dark"] .header-primary { color: #fff; background: #111; }
[data-header-theme="light"] .header-primary { background: #fff; }
[data-header-theme="transparent"] .header-primary { color: #fff; border-bottom-color: rgba(255, 255, 255, .4); }
/* [data-header-theme="transparent"][data-header-menu="opened"] .header-logo { background-image: url('../images/logo.png'); } */
[data-header-theme="transparent"] .header-language .current { background-image: url('../images/language-arrow-light.png'); }
[data-header-theme="transparent"] .header-logo { background-image: url('../images/logo-light.png'); }
[data-header-theme="transparent"] .header-hamburger span,
[data-header-theme="transparent"] .header-fullburger span { background: #fff; }
[data-header-theme="transparent"] .header-language .current { border-color: #fff; }
[data-header-theme="transparent"] .header-search .input { background: rgba(255, 255, 255, .1); }
[data-header-theme="transparent"] .header-search .search,
[data-header-theme="transparent"] .header-search .toggle { background-image: url('../images/search-light.svg'); }
[data-header-mobile-menu="opened"] .header-primary { color: #000; }
[data-header-mobile-menu="opened"] .header-language .current { background-image: url('../images/language-arrow.png'); border-color: #000; }
@media (hover: hover) and (pointer: fine) {
    .header-nav .lists li:hover .link { color: #03994a; }
    .header-nav .lists li:hover .link::before { transform: none; opacity: 1; }
    .header-nav .sub-lists .sub-link:hover { color: #03994a; }
    /* .header-nav .child-lists .child-link:hover { color: #03994a; text-decoration: underline; text-underline-offset: 0.25em; } */
    .header-language a:hover { color: #03994a; }

    .header-fullmenu-nav .lists > li:hover .link { color: #03994a; }
    .header-fullmenu-nav .lists > li:hover .link::before { transform: none; opacity: 1; }

    .header-nav .lists .link:hover,
    .header-fullmenu-nav .lists .link:hover { color: #03994a; }
    .header-nav .sub-lists .sub-link:hover,
    .header-fullmenu-nav .sub-lists .sub-link:hover { color: #03994a; background-size: 100% 100%; background-image: linear-gradient(transparent calc(100% - 2px), #03994a 2px); }
    .header-nav .child-lists .child-link:hover,
    .header-fullmenu-nav .child-lists .child-link:hover { color: #000; background-size: 100% 100%; }
}
@media screen and (min-width: 1281px) {
	.header-nav .sub-lists { display: flex; position: absolute; top: 80px; left: 0; padding: 34px 40px 30px; min-width: 1245px; text-align: left; visibility: hidden; opacity: 0; }
}
@media screen and (max-width: 1600px) {
    .header-logo { width: 182px; height: 23px; }
    .header-nav { display: block; }
    .header-nav .lists .link { padding-right: 30px; padding-left: 30px; font-size: 17px; }
}
@media screen and (max-width: 1280px) {
    .header-primary { height: 70px; }
    .header-logo { z-index: 11; top: 25px; width: 142px; height: 18px; }
	.header-hamburger { display: block; top: 10px; }
    .header-fullburger { display: none; }
    .header-menu { z-index: 10; display: none; position: fixed; top: 0; left: 0; padding-top: 70px; width: 100%; height: 100%; background: #fff; }
    .header-nav { overflow-y: auto; overflow-x: hidden; padding: 15px 0 70px; height: 100%; text-align: left; color: #000; }
    .header-nav .lists { flex-direction: column; justify-content: flex-start; width: 100%; }
    .header-nav .lists .link { margin: 0; margin-bottom: 30px; padding: 0 5%; font-size: 20px; }
    .header-nav .sub-lists { overflow: hidden !important; padding: 0 5%; height: 0; }
    .header-nav .sub-lists > li:not(:last-child) { margin-bottom: 15px; }
    .header-nav .sub-lists > li:last-child .sub-link,
    .header-nav .sub-lists > li:last-child .child-lists { margin-bottom: 30px; }
    .header-nav .sub-lists > li:last-child .child-lists { margin-top: -15px; }
    .header-nav .sub-lists .sub-link { margin: 0; font-size: 15px; font-weight: 500; }
    .header-nav .child-lists { margin-top: 15px; padding: 15px 20px; background: #f7f7f7; }
    .header-nav .child-lists > li:not(:last-child) { margin-bottom: 5px; }
    .header-nav .child-lists .child-link { margin: 0; padding: 0; font-size: 15px; color: #666666; }
    .header-search { top: 0; right: 5%; }
    .header-search .toggle { display: block; }
    .header-search-wrap { display: none; }
    .header-language { top: 24px; }
    .header-language .current { font-size: 13px; }
    .header-nav-background { display: block; }

    [data-header-sticky][data-header-theme="dark"],
    [data-header-sticky][data-header-theme="light"],
    [data-header-menu="opened"] { box-shadow: 0px 0px 10px 0px rgba(10, 10, 10, .1); }
    /* [data-header-theme="transparent"] .header-hamburger span { transition-delay: 0s, 0.35s; } */
    /* [data-header-mobile-menu="opened"] .header-logo { color: #000; transition-delay: 0.35s; } */
    [data-header-mobile-menu="opened"][data-header-theme="transparent"] .header-hamburger span { background: #000; transition-delay: 0s, 0s; }
    [data-header-mobile-menu="opened"][data-header-theme="transparent"] .header-logo { background-image: url('../images/logo.png'); }
    [data-header-mobile-menu="opened"][data-header-theme="transparent"] .header-search .toggle { background-image: url('../images/search.svg'); }
}


/* Footer */
.footer { padding: 50px 0; color: #fff; font-size: 14px; letter-spacing: -0.05em; background: #101010; }
.footer-primary { display: flex; flex-direction: row-reverse; align-items: center; justify-content: space-between; position: relative; margin: auto; max-width: 1800px; width: 90%; }
.footer-primary .col:nth-child(2) { display: flex; flex-direction: row-reverse; align-items: center; }
.footer-primary .col:nth-child(3) { padding-left: 270px; }
.footer-logo { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 204px; height: 26px; background: url('../images/logo-light.png') no-repeat center / auto 100%; transform: translateY(-6px); }
.footer-info ul { display: flex; flex-wrap: wrap; }
.footer-info li:last-child { width: 100%; }
.footer-links ul { display: flex; flex-wrap: wrap; margin: 0 -8px 20px; }
.footer-links li { position: relative; }
.footer-links li:not(:last-child)::before { content: ''; position: absolute; top: 11px; right: -1px; width: 3px; height: 3px; background: #333; border-radius: 50%; }
.footer-links a { padding: 0 8px; color: #333; }
.footer-copyright { margin: 0; letter-spacing: -0.01em; font-size: 15px; font-weight: 300; color: #999999; }
.footer-family { position: relative; width: 270px; }
.footer-family .toggle { display: block; position: relative; padding: 14px 54px 10px 20px; height: 50px; font-size: 16px; font-weight: 600; color: #fff; letter-spacing: 0.04em; background-color: #272727; border: 1px solid transparent; transition: all ease .3s; }
.footer-family .toggle::after { content: ''; position: absolute; top: 0; right: 15px; bottom: 0; margin: auto; width: 22px; height: 22px; background: url('../images/family-site-arrow.png') no-repeat center / auto 14px; transition: all ease .3s; }
.footer-family .listbox { display: none; z-index: 11; position: absolute; bottom: 100%; left: 0; margin-bottom: -1px; padding: 10px 20px; width: 100%; background: #fff; border: 1px solid #555; }
.footer-family .listbox li { display: block; padding: 2px 0; color: #333; }
.footer-family[aria-expanded="true"] .listbox { display: block; }
/* .footer-family[aria-expanded="true"] .toggle { color: #fff; border-color: #555555; } */
/* .footer-family[aria-expanded="true"] .toggle::after { background-image: url('../images/family-site-arrow-light.svg'); } */
/* .footer-family[aria-expanded="true"] .toggle::after { transform: scaleY(-1); } */
.footer-social ul { display: flex; }
.footer-social .icon { display: block; margin-right: 40px; width: 22px; height: 22px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
.footer-social .icon-naver-blog { background-image: url('../images/icon-naver-blog.png'); }
.footer-social .icon-linkedin { background-image: url('../images/icon-linkedin.png'); }
.footer-social .icon-youtube { background-image: url('../images/icon-youtube.png'); }
.footer-social .icon-facebook { background-image: url('../images/icon-facebook.png'); }
@media (hover: hover) and (pointer: fine) {
	.footer-family .toggle:hover::after { transform: rotateZ(180deg); }
    .footer-family .listbox li a:hover { color: #03994a; }
}
@media screen and (max-width: 1024px) {
    .footer-primary { flex-direction: column; align-items: flex-start; }
    .footer-primary .col:nth-child(2) { flex-direction: column; align-items: flex-start; }
    .footer-primary .col:nth-child(3) { margin-top: 30px; padding-left: 0; }
    .footer-logo { position: static; margin: 0 0 30px; width: 142px; height: 18px; }
    .footer-family { margin-bottom: 30px; }
    .footer-family .toggle { padding-top: 10px; height: 45px; font-size: 14px; }
    .footer-family .toggle::after { background-size: auto 10px; }
    .footer-social .icon { margin-right: 25px; }
    .footer-copyright { font-size: 12px; }
}
@media screen and (max-width: 768px) {

}

/* 모바일 하단 바 숨김 */
.bottom-footer { display: none !important; }
