@charset "utf-8";

/* 상단 */

body {
    opacity: 0;
    background-color: #f5f5f5;
}

body.ty-load {
    opacity: 1;
}

.l-main {
    background-color: var(--bgcolor);
}

.l-header,
.l-main,
.l-footer {
    font-size: 0;
    line-height: 0;
    position: relative;
    width: 100%;
}

.l-wrap {
    position: relative;
    margin: 0 auto;
    width: 100%;
}

.l-header {
    background-color: #fff;
}

.l-header a {
    text-decoration: none;
}

/* index */

.lh-logo {
    z-index: 923;
}

.lh-service {
    z-index: 922;
}

.lh-search {
    z-index: 921;
}

.lh-menu {
    z-index: 920;
}

/* lh-banner */

.lh-banner {
    display: none;
    position: relative;
    width: 100%;
    height: 80px;
}

.lh-banner.active {
    display: block;
}

.lh-banner .swiper-container {
    position: relative;
    width: 100%;
    height: 80px;
}

.lh-banner .swiper-wrapper {
    height: 80px;
    white-space: nowrap;
}

.lh-banner .swiper-slide {
    position: relative;
    height: 80px;
    display: inline-block;
    vertical-align: top;
    text-align: center;
}

.lh-banner .swiper-slide a {
    z-index: 10;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
}

.lh-banner .swiper-slide .item {
    position: relative;
    display: inline-block;
    max-width: var(--main-width);
    width: 100%;
    height: 100%;
    text-align: center;
}

.lh-banner .swiper-slide .item img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

.lh-banner .swiper-buttons {
    z-index: 20;
    position: absolute;
    left: calc(50% - (var(--main-width) / 2));
    top: 0;
    width: 100%;
    max-width: var(--main-width);
    height: 80px;
}

.lh-banner .swiper-pagination {
    z-index: 20;
    display: block;
    position: absolute;
    left: auto;
    right: 5px;
    bottom: 5px;
    width: 100%;
    height: 16px;
    text-align: right;
    opacity: 1;
}

.lh-banner .swiper-pagination span {
    transition: all .3s ease;
    position: relative;
    display: inline-block;
    margin: 0 2px !important;
    width: 6px;
    height: 16px;
    cursor: pointer;
}

.lh-banner .swiper-pagination span:before {
    transition: all .3s ease;
    display: block;
    content: '';
    position: absolute;
    left: calc(50% - 3px);
    top: calc(50% - 3px);
    width: 6px;
    height: 6px;
    background-color: #777;
    border-radius: 6px;
    opacity: 0.5;
}

.lh-banner .swiper-pagination span.active {
    background-color: transparent;
    width: 12px;
}

.lh-banner .swiper-pagination span.active:before {
    opacity: 1;
    left: calc(50% - 6px);
    width: 12px;
}

.lh-banner .swiper-close {
    z-index: 20;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 30px;
    height: 30px;
    opacity: 1;
    cursor: pointer;
}

.lh-banner .swiper-close line {
    fill: none;
    stroke: #999;
    stroke-width: 1.6;
    stroke-miterlimit: 10;
}

.lh-banner .sst-item {
    left: calc(50% - 187px);
    max-width: 375px;
}

/* lh-service */

.lh-service {
    position: relative;
}

.lh-service .block {
    position: relative;
    margin: 0 90px 0 15px;
}

.lh-service .tx {
    padding: 18px 0 5px 0;
}

.lh-service .tx a {
    max-width: 100%;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: bold;
    line-height: 1.4;
    font-size: 18px;
    color: #000;
}

.lh-service .btn {
    display: block;
    position: absolute;
    right: 10px;
    top: 0;
    height: 100%;
}

.lh-service .btn a {
    position: relative;
    display: inline-block;
    width: 35px;
    height: 100%;
}

.lh-service .btn a p {
    display: block;
    position: absolute;
    left: 5px;
    bottom: 3px;
    width: var(--t-icon-20001-w);
    height: var(--t-icon-20001-h);
    background: var(--t-icon-20001-u) no-repeat;
    background-size: var(--t-icon-20001-s);
}

.lh-service .btn a span {
    z-index: 1;
    display: none;
    position: absolute;
    right: -5px;
    top: -5px;
    width: 16px;
    height: 16px;
    text-align: center;
    font-weight: bold;
    line-height: 1.4;
    font-size: 11px;
    color: #fff;
}

.lh-service .btn a span:before {
    z-index: -1;
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #f43142;
    border-radius: 100%;
    opacity: 1;
}

.lh-service .btn a span.active {
    display: block;
}

/* lh-search */

.lh-search {
    position: relative;
    padding: 11px 10px;
}

.lh-search .search {
    position: relative;
    height: 38px;
    background-color: #f4f4f4;
    border-radius: 3px;
    cursor: pointer;
}

.lh-search p {
    margin: 0 53px 0 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lh-search p {
    line-height: 38px;
    font-size: 13px;
    color: #999;
}

.lh-search svg,
.lh-search .svg {
    display: block;
    position: absolute;
    right: 14px;
    top: calc(50% - 10px);
    width: 20px;
    height: 20px;
}

.lh-search svg circle,
.lh-search svg line {
    fill: none;
    stroke: var(--color2);
    stroke-width: 4;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

/* lh-logo */

.lh-logo {
    position: relative;
}

.lh-logo .inner {
    margin-right: 51px;
    padding: 5px 10px;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-justify-content: center;
    align-items: center;
    justify-content: center;
}

.lh-logo .logo {
    position: relative;
    margin-right: 10px;
}

.lh-logo .logo .link {
    display: block;
}

.lh-logo .logo img {
    border: 0;
    max-width: 100px;
    max-height: 40px;
}

.lh-logo .search {
    flex-grow: 1;
    height: 38px;
    overflow:hidden;
}

.lh-logo .search .block {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #f4f4f4;
    border-radius: 3px;
    cursor: pointer;
}

.lh-logo .search p {
    margin: 0 53px 0 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 38px;
    font-size: 13px;
    color: #999;
}

.lh-logo .search .icon {
    display: block;
    position: absolute;
    right: 14px;
    top: calc(50% - 10px);
    width: 20px;
    height: 20px;
    background-color: #777;
}

.lh-logo .side {
    display: block;
    position: absolute;
    right: 10px;
    top: 0;
    height: 100%;
}

.lh-logo .btn {
    display: block;
    position: relative;
    width: 35px;
    height: 100%;
}

.lh-logo .btn p {
    display: block;
    position: absolute;
    left: calc(50% - 12.5px);
    top: calc(50% - 12.5px);
    width: var(--t-icon-20001-w);
    height: var(--t-icon-20001-h);
    background: var(--t-icon-20001-u) no-repeat;
    background-size: var(--t-icon-20001-s);
}

.lh-logo .btn span {
    z-index: 1;
    display: none;
    position: absolute;
    right: -5px;
    top: -5px;
    width: 16px;
    height: 16px;
    text-align: center;
    font-weight: bold;
    line-height: 1.4;
    font-size: 11px;
    color: #fff;
}

.lh-logo .btn span:before {
    z-index: -1;
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #f43142;
    border-radius: 100%;
    opacity: 1;
}

.lh-logo .btn span.active {
    display: block;
}

.lh-logo svg,
.lh-logo .svg {
    display: block;
    position: absolute;
    right: 14px;
    top: calc(50% - 10px);
    width: 20px;
    height: 20px;
}

.lh-logo svg circle,
.lh-logo svg line {
    fill: none;
    stroke: var(--color2);
    stroke-width: 4;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

.lh-logo .side .sst-item {
    left: auto;
    right: 0;
}

/* lh-menu */

.lh-menu {
    display: block;
    position: relative;
    height: 56px;
}

.lh-menu .fixed {
    z-index: 1;
    display: block;
    position: relative;
    left: 0;
    top: 0;
    right: 0;
    height: 56px;
    white-space: nowrap;
    overflow-x: auto;
}

.lh-menu .fixed:after {
    z-index: -1;
    display: block;
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    border-bottom: 1px solid #e0e0e0;
    opacity: 1;
}

.lh-menu .wrap {
    display: block;
    position: relative;
    height: 56px;
    white-space: nowrap;
    overflow-x: auto;
}

.lh-menu .wrap::-webkit-scrollbar {
    display: none;
}

.lh-menu.ty-fixed .fixed {
    position: fixed;
}

.lh-menu.ty-fixed .fixed:before {
    z-index: -1;
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    background-color: #fff;
    opacity: 0.98;
}

.lh-menu .wrap li {
    z-index: 1;
    position: relative;
    display: inline-block;
    vertical-align: top;
}

.lh-menu .wrap li:after {
    z-index: -1;
    display: none;
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    border-bottom: 2px solid var(--color2);
}

.lh-menu .wrap p,
.lh-menu .wrap a {
    position: relative;
    display: block;
    padding: 0 10px;
    word-break: break-all;
    cursor: pointer;
}

.lh-menu .wrap a,
.lh-menu .wrap p {
    font-weight: bold;
    line-height: 55px;
    font-size: 16px;
    color: #333;
}

.lh-menu .wrap svg {
    display: block;
    position: absolute;
    right: 10px;
    top: calc(50% - 2px);
    width: 6px;
    height: 4px;
}

.lh-menu .wrap svg polygon {
    fill: #221E1F;
}

.lh-menu .wrap .group {
    padding-right: 22px;
}

.lh-menu .wrap li.active:after {
    display: block;
}

.lh-menu .wrap li.active p,
.lh-menu .wrap li.active a {
    color: var(--color2);
}
