@charset "UTF-8";

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Black.eot');
    src: url('font/Pretendard-Black.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Black.woff2') format('woff2'),
        url('font/Pretendard-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-ExtraBold.eot');
    src: url('font/Pretendard-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-ExtraBold.woff2') format('woff2'),
        url('font/Pretendard-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Bold.eot');
    src: url('font/Pretendard-Bold.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Bold.woff2') format('woff2'),
        url('font/Pretendard-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-ExtraLight.eot');
    src: url('font/Pretendard-ExtraLight.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-ExtraLight.woff2') format('woff2'),
        url('font/Pretendard-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Light.eot');
    src: url('font/Pretendard-Light.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Light.woff2') format('woff2'),
        url('font/Pretendard-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Medium.eot');
    src: url('font/Pretendard-Medium.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Medium.woff2') format('woff2'),
        url('font/Pretendard-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-SemiBold.eot');
    src: url('font/Pretendard-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-SemiBold.woff2') format('woff2'),
        url('font/Pretendard-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Thin.eot');
    src: url('font/Pretendard-Thin.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Thin.woff2') format('woff2'),
        url('font/Pretendard-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Regular.eot');
    src: url('font/Pretendard-Regular.eot?#iefix') format('embedded-opentype'),
        url('font/Pretendard-Regular.woff2') format('woff2'),
        url('font/Pretendard-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'GmarketSans';
    src: url('font/GmarketSansLight.eot');
    src: url('font/GmarketSansLight.eot?#iefix') format('embedded-opentype'),
        url('font/GmarketSansLight.woff2') format('woff2'),
        url('font/GmarketSansLight.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'GmarketSans';
    src: url('font/GmarketSansBold.eot');
    src: url('font/GmarketSansBold.eot?#iefix') format('embedded-opentype'),
        url('font/GmarketSansBold.woff2') format('woff2'),
        url('font/GmarketSansBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'GmarketSans';
    src: url('font/GmarketSansMedium.eot');
    src: url('font/GmarketSansMedium.eot?#iefix') format('embedded-opentype'),
        url('font/GmarketSansMedium.woff2') format('woff2'),
        url('font/GmarketSansMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}





* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
a {
    text-decoration: none;
    color: inherit;
}
li {
    list-style: none;
}
body {
    color: #333;
    font-family: 'Pretendard';
    font-weight: 400;
    word-break: keep-all;
}
.mob {
    display: none;
}





.header {
    width: 100%;
    height: 80px;
    color: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3;
    transition: 0.2s;
}
.header.on {
    background-color: rgba(0, 0, 0, 0.3);
}
.header:hover {
    background-color: #fff;
    color: #333;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.header.sub {
    background-color: #fff;
    color: #333;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.header .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    height: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header .inner .left {
    display: flex;
    align-items: center;
}
.header .inner h1 {
    height: 36px;
    line-height: 36px;
}
.header .inner h1 a {
    display: inline-block;
    height: 100%;
}
.header .inner h1 a img {
    height: 100%;
    object-fit: cover;
}
.header .inner nav {
    margin-left: 100px;
}
.header .inner nav > ul {
    display: flex;
    justify-content: space-between;
}
.header .inner nav > ul .depth1 {
    position: relative;
}
.header .inner nav > ul .depth1:hover {
    color: #183792;
    font-weight: 600;
}
.header .inner nav > ul .depth1 > a {
    display: inline-block;
    padding: 0 30px;
    line-height: 80px;
    font-size: 17px;
}
.header.sub .inner nav > ul .depth1 > a {
    color: #333;
}
.header.sub .inner nav > ul .depth1:hover > a {
    color: #183792;
}
.header .inner nav > ul .depth1 > p {
    cursor: default;
    padding: 0 30px;
    line-height: 80px;
}
.header .inner nav > ul .depth1 .depth2 {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
    text-align: center;
    display: none;
    color: #333;
    background-color: rgba(255, 255, 255, 0.7);
    font-weight: 400;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-top: none;
}
.header.sub .inner nav > ul .depth1 .depth2 {
    background-color: rgba(255, 255, 255, 1);
}
.header .inner nav > ul .depth1 .depth2 li a {
    display: block;
    width: 130px;
    padding: 20px;
    border-bottom: 1px solid #fff;
    color: #111;
}
/* .header .inner nav > ul .depth1 .depth2 li:last-of-type a {
    border-bottom: none;
} */
.header .inner nav > ul .depth1 .depth2 li a:hover {
    color: #183792;
    font-weight: 600;
    background-color: rgba(255, 255, 255, 1);
}
.header .inner .right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.header .inner .right li {
    margin-left: 10px;
}
.header .inner .right li:first-of-type {
    margin-left: 0;
}
.header .inner .right li figure {
    height: 20px;
}
.header .inner .right li figure img {
    height: 100%;
    object-fit: fill;
}
.header .inner .right li.open figure {
    height: 22px;
    cursor: pointer;
}

.header .inner img.color {
    display: none;
}
.header:hover .inner img.white {
    display: none;
}
.header:hover .inner img.color {
    display: inline-block;
}
.header.sub .inner img.white {
    display: none;
}
.header.sub .inner img.color {
    display: inline-block;
}

.depth2_bg {
    position: absolute;
    top: 80px;
    left: 0;
    width: 100%;
    height: 320px;
    background-color: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    z-index: -1;
    display: none;
}





.menu_mob {
    width: 100%;
    height: 100vh;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 12;
    transition: 0.4s;
    overflow-y: auto;
}
.menu_mob::-webkit-scrollbar {
    display: none;
}
.menu_mob.on {
    left: 0;
}
.menu_mob .close {
    height: 22px;
    position: absolute;
    top: 28px;
    right: 20px;
    cursor: pointer;
}
.menu_mob .close img {
    height: 100%;
    object-fit: fill;
}
.menu_mob .user {
    display: flex;
    align-items: center;
    padding: 60px 20px 40px;
}
.menu_mob .user li {
    margin-left: 10px;
}
.menu_mob .user li figure {
    height: 20px;
}
.menu_mob .user li figure img {
    height: 100%;
    object-fit: fill;
}
.menu_mob nav {
    text-align: center;
    font-size: 20px;
    font-weight: 500;
}
.menu_mob nav .depth1 span,
.menu_mob nav .depth1 a {
    display: block;
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
}
.menu_mob nav .depth2 {
    background-color: #1c99d9;
    color: #fff;
    display: none;
}





.quick_scroll {
    position: fixed;
    right: 30px;
    bottom: 60px;
    z-index: 3;
    width: 40px;
    height: 80px;
    background-color: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.quick_scroll::after {
    content: '';
    width: 20px;
    height: 1px;
    background-color: #999;
    position: absolute;
    top: 38px;
    left: 50%;
    transform: translateX(-50%);
}
.quick_scroll > div {
    position: absolute;
    left: 0;
    width: 40px;
    height: 40px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}
.quick_scroll > div.up {
    top: 0;
    border-radius: 20px 20px 0 0;
}
.quick_scroll > div.down {
    bottom: 0;
    border-radius: 0 0 20px 20px;
}
.quick_scroll figure {
    width: 16px;
}
.quick_scroll figure img {
    width: 100%;
    object-fit: fill;
}

.quick_sns {
    position: fixed;
    right: 30px;
    bottom: 160px;
    z-index: 3;
    width: 40px;
}
/* .quick_partner {
    bottom: 130px;
}
.quick_call {
    bottom: 190px;
}
.quick_partner figure {
    width: 30px;
}
.quick_call figure {
    width: 26px;
}
.quick figure img {
    width: 100%;
    object-fit: fill;
    margin-top: 5px;
} */
.quick_sns a {
    display: block;
    width: 100%;
    height: 40px;
    border-radius: 5px;
    overflow: hidden;
    margin-top: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.quick_sns a img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}





/* .side {
    position: fixed;
    top: 40%;
    right: -260px;
    transform: translateY(-50%);
    width: 260px;
    height: 400px;
    border-radius: 0 0 0 10px;
    transition: 0.4s;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    z-index: 11;
}
.side.on {
    right: 0;
}
.side .tag {
    position: absolute;
    top: 0;
    left: -40px;
    width: 40px;
    color: #fff;
    text-align: center;
    cursor: pointer;
}
.side .tag > li {
    width: 100%;
    padding: 16px 0;
    border-radius: 10px 0 0 10px;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    position: absolute;
    top: 0;
    left: 0;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
}
.side .tag > li.estimate {
    background-color: #1c99d9;
    z-index: 12;
}
.side .tag > li.wholesale {
    background-color: #183792;
    top: 100px;
}
.side .tag > li.on {
    z-index: 13;
}

.side .cont {
    width: 100%;
    height: 100%;
}
.side .cont > li {
    width: 100%;
    height: 100%;
    border-radius: 0 0 0 10px;
    padding: 20px 30px;
    color: #fff;
    display: none;
}
.side .cont > li.wholesale {
    padding: 30px;
}
.side .cont > li.estimate {
    background-color: #1c99d9;
}
.side .cont > li.wholesale {
    background-color: #183792;
}
.side .cont > li.on {
    display: block;
}
.side .cont > li span {
    display: block;
    font-size: 14px;
}
.side .cont > li.wholesale span {
    margin-bottom: 40px;
}
.side .cont > li a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    color: #333;
    font-size: 18px;
    font-weight: 600;
    margin: 10px 0 30px;
    padding: 16px;
    border-radius: 10px;
}
.side .cont > li a figure {
    height: 28px;
    margin-right: 10px;
}
.side .cont > li a figure img {
    height: 100%;
    object-fit: fill;
}
.side .cont > li ul {
    margin-bottom: 20px;
}
.side .cont > li.wholesale ul {
    margin-bottom: 40px;
}
.side .cont > li.wholesale ul li {
    display: flex;
    align-items: center;
    font-size: 16px;
    margin-bottom: 10px;
}
.side .cont > li ul li.tel {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 10px;
}
.side .cont > li ul li figure {
    height: 24px;
    margin-right: 10px;
}
.side .cont > li ul li figure img {
    height: 100%;
    object-fit: fill;
}
.side .cont > li > p {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 40px;
} */





.side {
    position: fixed;
    top: 40%;
    right: -260px;
    transform: translateY(-50%);
    width: 260px;
    height: 400px;
    border-radius: 0 0 0 10px;
    /* border: 1px solid #eee; */
    transition: 0.4s;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
    z-index: 11;
}
.side.on {
    right: 0;
    z-index: 12;
}
.side .tag {
    position: absolute;
    top: 0;
    left: -40px;
    width: 40px;
    color: #fff;
    text-align: center;
    cursor: pointer;
    padding: 16px 0;
    border-radius: 10px 0 0 10px;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
}
.side_estimate .tag {
    background-color: #1c99d9;
}
.side_wholesale .tag {
    background-color: #183792;
    top: 104px;
}

.side .cont {
    width: 100%;
    height: 100%;
    border-radius: 0 0 0 10px;
    padding: 20px 30px;
    color: #fff;
}
.side_estimate .cont {
    background-color: #1c99d9;
}
.side_wholesale .cont {
    background-color: #183792;
    padding: 30px;
    border-radius: 10px 0 0 10px;
}
.side .cont > span {
    display: block;
    font-size: 14px;
}
.side_wholesale .cont > span {
    margin-bottom: 40px;
}
.side .cont > a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    color: #333;
    font-size: 18px;
    font-weight: 600;
    margin: 10px 0 30px;
    padding: 16px;
    border-radius: 10px;
}
.side .cont > a figure {
    height: 28px;
    margin-right: 10px;
}
.side .cont > a figure img {
    height: 100%;
    object-fit: fill;
}
.side .cont > ul {
    margin-bottom: 20px;
}
.side_wholesale .cont > ul {
    margin-bottom: 40px;
}
.side_wholesale .cont > ul li {
    display: flex;
    align-items: center;
    font-size: 16px;
    margin-bottom: 10px;
}
.side .cont > ul li.tel {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 10px;
}
.side .cont > ul li figure {
    height: 24px;
    margin-right: 10px;
}
.side .cont > ul li figure img {
    height: 100%;
    object-fit: fill;
}
.side .cont > p {
    font-size: 20px;
    font-weight: 500;
    /* text-align: center; */
    margin-bottom: 40px;
}





.main_visual {
    width: 100%;
    height: 100vh;
    position: relative;
    margin-bottom: 100px;
}
.main_visual .mainSwiper {
    width: 100%;
    height: 100%;
}
.main_visual .mainSwiper .swiper-wrapper {
    width: 100%;
    height: 100%;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide {
    width: 100%;
    height: 100%;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .video {
    width: 100%;
    height: 100%;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .video::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 0;
    left: 0;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide figure {
    width: 100%;
    height: 100%;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide figure::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 0;
    left: 0;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide-active figure img {
    transform: scale(1.1);
    transition: 11s linear;
    animation: fade 11s forwards;
}
@keyframes fade {
    0% {
        opacity: 0.6;
    }
    10% {
        opacity: 1;
    }
    100% {
        opacity: 1;
    }
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .text {
    max-width: 1440px;
    width: calc(100% - 40px);
    color: #fff;
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translateX(-50%);
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .text span {
    display: block;
    font-size: 18px;
    transform: translateX(40px);
    opacity: 0;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .text strong {
    display: block;
    font-weight: 700;
    font-size: 64px;
    margin-top: 30px;
    transform: translateX(40px);
    opacity: 0;
    line-height: 1.2;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide .text p {
    font-size: 24px;
    margin-top: 40px;
    transform: translateX(40px);
    opacity: 0;
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide-active .text span {
    transform: translateX(0);
    opacity: 1;
    transition: 1s linear;
    /* animation: slide 10s linear; */
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide-active .text strong {
    transform: translateX(0);
    opacity: 1;
    transition: 1s linear 0.5s;
    /* animation: slide 10s linear 0.5s; */
}
.main_visual .mainSwiper .swiper-wrapper .swiper-slide-active .text p {
    transform: translateX(0);
    opacity: 1;
    transition: 1s linear 1s;
    /* animation: slide 10s linear 1s; */
}
/* @keyframes slide {
    0% {
        transform: translateX(40px);
        opacity: 0;
    }
    10% {
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
} */
.main_visual .mainSwiper .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    display: flex;
    justify-content: flex-start;
    position: absolute;
    top: 85%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.main_visual .mainSwiper .bar_full {
    width: 400px;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    position: relative;
  }
.main_visual .mainSwiper .bar_progress {
    display: inline-block;
    width: 0%;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
}
.main_visual .mainSwiper .bar_progress1.on {
    width: 100%;
    transition: 5s linear;
    /* animation: progress 5s linear; */
}
.main_visual .mainSwiper .bar_progress2.on {
    width: 100%;
    transition: 11s linear;
}
.main_visual .mainSwiper .bar_progress3.on {
    width: 100%;
    transition: 5s linear;
}
.main_visual .mainSwiper .bar_progress4.on {
    width: 100%;
    transition: 11s linear;
}
/* @keyframes progress {
    0% {
        width: 0%
    }
    100% {
        width: 100%
    }
} */
.main_visual .mainSwiper .mainSwiper-button-prev {
    left: 440px; /* 400 + 40 */
}
.main_visual .mainSwiper .mainSwiper-button-prev:after {
    content: '';
    width: 24px;
    height: 24px;
    background: url('/image/left.png') center center / 100% no-repeat;
}
.main_visual .mainSwiper .mainSwiper-button-next {
    left: 484px; /* 440 + 24 + 20 */
}
.main_visual .mainSwiper .mainSwiper-button-next:after {
    content: '';
    width: 24px;
    height: 24px;
    background: url('/image/right.png') center center / 100% no-repeat;
}





.bannerSwiper {
    max-width: 1440px;
    width: calc(100% - 40px);
    height: 150px;
    margin: 0 auto 150px;
    border-radius: 10px;
    overflow: hidden;
}
.bannerSwiper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bannerSwiper .bannerSwiper-pagination .swiper-pagination-bullet-active {
    background: #fff;
    height: 16px;
    border-radius: 50px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}





.main_product {
    width: 100%;
    margin-bottom: 200px;
}
.main_product .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 0 auto;
}
.main_product .inner .title {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}
.main_product .inner .title h2 {
    font-size: 36px;
    font-weight: 600;
    margin-right: 60px;
}
.main_product .inner .title > a {
    color: #777;
    padding: 10px 20px;
    border: 1px solid #999;
    border-radius: 50px;
}
.main_product .inner .desc {
    color: #555;
    line-height: 1.6;
    margin-bottom: 60px;
}
.main_product .list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.main_product .list .item {
    width: calc((100% - 60px) / 6);
    border-radius: 5px;
    overflow: hidden;
    transition: 0.4s;
    position: relative;
}
.main_product .list .item::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: 0.4s;
}
.main_product .list .item:hover::after {
    opacity: 1;
}
.main_product .list .item figure {
    width: 100%;
    height: 500px;
}
.main_product .list .item figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main_product .list .item .text {
    width: 100%;
    height: 100%;
    padding: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
    z-index: 1;
    opacity: 0;
}
.main_product .list .item:hover .text {
    opacity: 1;
    transition: 0.4s 0.4s;
}
.main_product .list .item .text h3 {
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 40px;
}
.main_product .list .item .text p {
    font-size: 18px;
    line-height: 1.8;
}
.main_product .list .item .text span {
    font-size: 14px;
    padding: 12px 30px;
    border: 1px solid #fff;
    position: absolute;
    left: 50%;
    bottom: 100px;
    transform: translateX(-50%);
}





.main_gallery {
    width: 100%;
    margin-bottom: 250px;
}
.main_gallery .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 0 auto;
}
.main_gallery .inner .title {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}
.main_gallery .inner .title h2 {
    font-size: 36px;
    font-weight: 600;
    margin-right: 60px;
}
.main_gallery .inner .title > a {
    color: #777;
    padding: 10px 20px;
    border: 1px solid #999;
    border-radius: 50px;
}
.main_gallery .inner .box {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 60px;
}
.main_gallery .inner .box .desc {
    color: #555;
    line-height: 1.6;
}
.main_gallery .inner .box .btn {
    display: flex;
    align-items: center;
}
.gallerySwiper-button-prev,
.gallerySwiper-button-next {
    position: static;
    width: 36px;
    height: 36px;
    border: 1px solid #ccc;
    border-radius: 2px;
    color: #777;
    margin-right: 10px;
}
.gallerySwiper-button-prev::after,
.gallerySwiper-button-next::after {
    font-size: 18px;
}
.main_gallery .inner .gallerySwiper .swiper-slide figure {
    width: 100%;
    height: 360px;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 15px;
}
.main_gallery .inner .gallerySwiper .swiper-slide figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.main_gallery .inner .gallerySwiper .swiper-slide:hover figure img {
    transform: scale(0.9);
}
.main_gallery .inner .gallerySwiper .swiper-slide .text span {
    color: #555;
}
.main_gallery .inner .gallerySwiper .swiper-slide .text span.tag_prod {
    display: inline-block;
    padding: 6px 18px;
    border: 1px solid #ccc;
    border-radius: 50px;
    margin: 0 5px 10px 0;
}
.main_gallery .inner .gallerySwiper .swiper-slide .text span.tag_use {
    display: block;
    padding: 6px;
    margin: 0 0 10px 0;
}





.main_item {
    width: 100%;
    margin-bottom: 250px;
}
.main_item .inner {
    max-width: 1080px;
    width: calc(100% - 40px);
    height: 740px;
    margin: 0 auto;
    position: relative;
}
.main_item .inner .item {
    position: absolute;
    border-radius: 20px;
    overflow: hidden;
    opacity: 0;
    transition: 1s;
}
.main_item .inner a.item {
    border: 2px solid #fff;
}
.main_item .inner .item1,
.main_item .inner .item3 {
    width: calc(100% / 3 * 2);
    height: 260px;
}
.main_item .inner .item2,
.main_item .inner .item4 {
    width: calc(100% / 3);
    height: 480px;
}
.main_item .inner .item1 {
    top: 0;
    left: -20%;
    background: url('/image/main_item1.png') center center / cover no-repeat;
}
.main_item .inner .item2 {
    top: -20%;
    right: 0;
    background: url('/image/main_item2.jpg') center center / cover no-repeat;
}
.main_item .inner .item3 {
    right: -20%;
    bottom: 0;
    background: url('/image/main_item3.png') center center / cover no-repeat;
}
.main_item .inner .item4 {
    left: 0;
    bottom: -20%;
    background: url('/image/main_item4.png') center center / cover no-repeat;
}
.main_item .inner .item5 {
    width: calc(100% / 3);
    height: 220px;
    top: 50%;
    left: 70%;
    transform: translate(-50%, -50%);
    /* background: url('/image/gallery.jpg') center center / cover no-repeat; */
}
.main_item.on .inner .item1 {
    opacity: 1;
    left: 0;
    transition: 1s;
}
.main_item.on .inner .item2 {
    opacity: 1;
    top: 0;
    transition: 1s 1s;
}
.main_item.on .inner .item3 {
    opacity: 1;
    right: 0;
    transition: 1s 1.5s;
}
.main_item.on .inner .item4 {
    opacity: 1;
    bottom: 0;
    transition: 1s 1.5s;
}
.main_item.on .inner .item5 {
    opacity: 1;
    left: 50%;
    transition: 1s 0.5s;
}
.main_item .inner a.item::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.1);
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.2s;
}
.main_item .inner a.item:hover::after {
    background-color: rgba(0, 0, 0, 0.3);
}
.main_item .inner .item h3 {
    font-size: 36px;
    line-height: 1.2;
    display: flex;
    align-items: center;
    position: absolute;
    left: 30px;
    bottom: 30px;
    z-index: 1;
}
.main_item .inner a.item h3 {
    color: #fff;
}
.main_item .inner a.item h3 p {
    margin-right: 10px;
}
.main_item .inner a.item h3 figure {
    height: 24px;
}
.main_item .inner a.item h3 figure img {
    height: 100%;
    object-fit: fill;
}





.main_innovation {
    padding: 100px 0;
    background: url('/image/bg_innovation.png') center center / cover no-repeat;
    margin-bottom: 100px;
}
.main_innovation .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 0 auto;
    text-align: center;
    color: #fff;
}
.main_innovation .inner h2 {
    font-size: 42px;
    margin-bottom: 20px;
}
.main_innovation .inner > p {
    font-size: 20px;
    margin-bottom: 80px;
}
.main_innovation .inner .list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.main_innovation .inner .list .item {
    width: calc((100% - 48px) / 3);
    height: 600px;
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff;
    color: #555;
    transition: 0.4s;
}
.main_innovation .inner .list .item:hover {
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.5);
}
.main_innovation .inner .list .item > figure {
    width: 100%;
    height: 50%;
    overflow: hidden;
}
.main_innovation .inner .list .item > figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main_innovation .inner .list .item .text {
    width: 100%;
    height: 50%;
    padding: 40px;
    text-align: left;
    position: relative;
}
.main_innovation .inner .list .item .text h3 {
    display: flex;
    align-items: center;
    font-size: 20px;
    color: #333;
    margin-bottom: 40px;
    font-weight: 600;
}
.main_innovation .inner .list .item .text h3 figure {
    height: 36px;
    margin-right: 20px;
}
.main_innovation .inner .list .item .text h3 figure img {
    height: 100%;
    object-fit: fill;
}
.main_innovation .inner .list .item .text h3 figure img.surf {
    display: none;
}
.main_innovation .inner .list .item:hover .text h3 figure img.line {
    display: none;
}
.main_innovation .inner .list .item:hover .text h3 figure img.surf {
    display: block;
}
.main_innovation .inner .list .item .text p {
    line-height: 1.6;
}
.main_innovation .inner .list .item .text .view_detail {
    display: flex;
    align-items: center;
    position: absolute;
    right: 50px;
    bottom: 40px;
}
.main_innovation .inner .list .item .text .view_detail span {
    margin-right: 20px;
}
.main_innovation .inner .list .item .text .view_detail figure {
    width: 30px;
    margin-top: 4px;
}
.main_innovation .inner .list .item:hover .text .view_detail figure {
    animation: translate 1s linear infinite;
}
@keyframes translate {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(10px);
    }
    100% {
        transform: translateX(0);
    }
}
.main_innovation .inner .list .item .text .view_detail figure img {
    width: 100%;
    object-fit: fill;
}





.main_board {
    width: 100%;
    margin-bottom: 200px;
}
.main_board .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.main_board .inner .left {
    width: calc((100% - 110px) / 2);
}
.main_board .inner .left .top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #333;
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
    margin-bottom: 40px;
}
.main_board .inner .left .top h4 {
    width: 100%;
    display: flex;
    align-items: center;
    font-weight: 400;
}
.main_board .inner .left .top h4 figure {
    height: 36px;
    margin-right: 20px;
}
.main_board .inner .left .top h4 figure img {
    height: 100%;
    object-fit: fill;
}
.main_board .inner .left .top h4 p {
    font-size: 28px;
}
.main_board .inner .left .top a {
    height: 28px;
}
.main_board .inner .left .top a figure {
    height: 100%;
}
.main_board .inner .left .top a figure img {
    height: 100%;
    object-fit: fill;
    transition: 0.2s;
}
.main_board .inner .left .top a:hover figure img {
    transform: rotate(-90deg);
}
.main_board .inner .left ul li {
    margin-bottom: 20px;
}
.main_board .inner .left ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main_board .inner .left ul li a .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main_board .inner .left ul li a .title figure {
    height: 14px;
    margin-right: 10px;
    margin-bottom: 8px;
}
.main_board .inner .left ul li a .title figure img {
    height: 100%;
    object-fit: fill;
}
.main_board .inner .left ul li a span {
    font-size: 14px;
    color: #777;
}
.main_board .inner .left ul li:nth-of-type(1) a span {
    letter-spacing: -0.03em;
}
.main_board .inner .left ul li:nth-of-type(4) a span {
    letter-spacing: 0.02em;
}
.main_board .inner .left .main_notice {
    margin-bottom: 80px;
}

.main_board .inner .right {
    width: calc((100% - 110px) / 2);
}
.main_board .inner .right > a {
    display: block;
    width: 100%;
    height: 280px;
    border-radius: 10px;
    color: #fff;
    position: relative;
    overflow: hidden;
}
.main_board .inner .right .main_estimate {
    background: url('/image/bg_estimate.jpg') center center / cover no-repeat;
    margin-bottom: 30px;
}
.main_board .inner .right .main_partner {
    background: url('/image/bg_member.jpg') center center / cover no-repeat;
}
.main_board .inner .right > a::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.4s;
}
.main_board .inner .right > a:hover::after {
    background-color: rgba(0, 0, 0, 0.5);
}
.main_board .inner .right > a .text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 40px 60px;
    z-index: 1;
}
/* .main_board .inner .right > a .text figure {
    height: 64px;
    margin: 20px auto;
}
.main_board .inner .right > a .text figure img {
    height: 100%;
    object-fit: fill;
}
.main_board .inner .right > a .text h5 {
    font-size: 20px;
}
.main_board .inner .right .main_estimate .text p {
    font-size: 24px;
}
.main_board .inner .right .main_partner .text p {
    font-size: 20px;
}
.main_board .inner .right > a .view_link {
    display: flex;
    align-items: center;
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 1;
}
.main_board .inner .right > a .view_link span {
    font-size: 14px;
    margin-right: 4px;
}
.main_board .inner .right > a .view_link figure {
    height: 12px;
    margin-bottom: 10px;
}
.main_board .inner .right > a .view_link figure img {
    height: 100%;
    object-fit: fill;
} */
.main_board .inner .right > a .text > p {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.6;
    opacity: 0;
    transform: translateY(20px);
    transition: 0.4s;
}
.main_board .inner .right > a:hover .text > p {
    opacity: 1;
    transform: translateY(0);
}
.main_board .inner .right > a .text h5 {
    font-size: 36px;
    font-weight: 600;
    display: flex;
    align-items: center;
    position: absolute;
    left: 60px;
    bottom: 40px;
}
.main_board .inner .right > a .text h5 p {
    margin-right: 20px;
}
.main_board .inner .right > a .text h5 figure {
    height: 24px;
}
.main_board .inner .right > a .text h5 figure img {
    height: 100%;
    object-fit: fill;
}





/* .main_banner {
    max-width: 600px;
    width: calc(100% - 40px);
    height: 450px;
    margin: 0 auto 100px;
    background: url('/image/bg_banner.png') center center / contain no-repeat;
    position: relative;
}
.main_banner .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #111;
    text-shadow: 0 0 5px #fff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.main_banner .inner > span {
    font-size: 18px;
    margin-bottom: 20px;
}
.main_banner .inner p {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 40px;
}
.main_banner .inner a {
    font-size: 16px;
    display: flex;
    align-items: center;
    color: #333;
    border: 1px solid #999;
    border-radius: 5px;
    padding: 16px 32px;
}
.main_banner .inner a figure {
    height: 36px;
    margin-right: 10px;
}
.main_banner .inner a figure img {
    height: 100%;
    object-fit: fill;
} */





.footer {
    background-color: #021526;
}
.footer .inner {
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 0 auto;
    padding: 60px 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.footer .inner .left .menu {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 40px;
}
.footer .inner .left .menu li {
    padding-right: 20px;
    margin-right: 20px;
    position: relative;
    color: #fff;
    margin-bottom: 20px;
}
.footer .inner .left .menu li:last-of-type {
    padding-left: 0;
    margin-left: 0;
}
.footer .inner .left .menu li::after {
    content: '';
    width: 1px;
    height: 50%;
    background-color: #999;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.footer .inner .left .menu li:last-of-type:after {
    display: none;
}
.footer .inner .left > a {
    display: inline-block;
    height: 64px;
    margin-bottom: 60px;
}
.footer .inner .left > a figure {
    height: 100%;
}
.footer .inner .left > a figure img {
    height: 100%;
    object-fit: fill;
}
.footer .inner .left .contact li {
    margin-bottom: 10px;
    color: rgba(255, 255, 255, 0.7);
}

.footer .inner .right {
    text-align: end;
}
.footer .inner .right .sns {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 40px;
}
.footer .inner .right .sns li {
    margin-left: 20px;
}
.footer .inner .right .sns li a {
    display: inline-block;
    height: 30px;
}
.footer .inner .right .sns li a figure {
    height: 100%;
}
.footer .inner .right .sns li a figure img {
    height: 100%;
    object-fit: fill;
}
.footer .inner .right > figure {
    height: 96px;
    margin-bottom: 50px;
}
.footer .inner .right > figure img {
    height: 100%;
    object-fit: fill;
}
.footer .inner .right .infor li {
    margin-bottom: 10px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.7);
}





.sub_visual {
    width: 100%;
    height: 540px;
    position: relative;
}
.sub_visual::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
}
.sub_visual_company {
    background: url('/image/sub_company.png') center top / cover no-repeat;
}
.sub_visual_product {
    background: url('/image/sub_product.png') center top / cover no-repeat;
}
.sub_visual_gallery {
    background: url('/image/sub_gallery.png') center center / cover no-repeat;
}
.sub_visual_manual {
    background: url('/image/sub_manual.png') center center / cover no-repeat;
}
.sub_visual_estimate {
    background: url('/image/sub_estimate.png') center bottom / cover no-repeat;
}
.sub_visual_partner {
    background: url('/image/sub_partner.png') center center / cover no-repeat;
}
.sub_visual_customer {
    background: url('/image/sub_customer.png') center center / cover no-repeat;
}
.sub_visual_privacy {
    background: url('/image/sub_privacy.png') center center / cover no-repeat;
}
.sub_visual_member {
    background: url('/image/sub_company.png') center top / cover no-repeat;
}
.sub_visual .text {
    color: #fff;
    text-align: center;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
.sub_visual .text h2 {
    font-size: 42px;
    font-weight: 600;
    margin-bottom: 10px;
}
.sub_visual .text p {
    font-size: 20px;
}
.sub_visual .tab_sub1 {
    width: 100%;
    height: 60px;
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
}
.sub_visual .tab_sub1 ul {
    max-width: 1080px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.sub_visual .tab_sub1 ul li {
    height: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    /* cursor: pointer; */
    transition: 0.4s;
}
.sub_visual_company .tab_sub1 ul li {
    width: calc(100% / 6);
    font-size: 18px;
}
.sub_visual_product .tab_sub1 ul li {
    width: calc(100% / 4);
}
.sub_visual_manual .tab_sub1 ul li {
    width: calc(100% / 7);
    font-size: 18px;
}
.sub_visual_gallery .tab_sub1 ul li,
.sub_visual_customer .tab_sub1 ul li,
.sub_visual_member .tab_sub1 ul li {
    width: calc(100% / 2);
}
.sub_visual .tab_sub1 ul li:hover,
.sub_visual .tab_sub1 ul li.on {
    background-color: #fff;
}
.sub_visual .tab_sub1 ul li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    align-content: center;
}
.sub_cont1 {
    max-width: 1080px;
    width: calc(100% - 40px);
    margin: 0 auto;
}
/* .sub_cont1 > div {
    display: none;
}
.sub_cont1 > div.on {
    display: block;
} */
.sub_cont1 .tab_sub2 {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 80px auto 200px;
}
.sub_cont1 .tab_sub2 li {
    font-size: 20px;
    font-weight: 500;
    color: #999;
    border: 1px solid #ccc;
    border-radius: 50px;
    margin: 0 12px 16px;
    transition: 0.2s;
}
.sub_cont1 .tab_sub2 li:hover,
.sub_cont1 .tab_sub2 li.on {
    background-color: #183792;
    color: #fff;
    border: 1px solid #183792;
}
.sub_cont1 .tab_sub2 li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 10px 24px;
}

.sub_cont_gallery {
    max-width: 1800px;
    width: calc(100% - 40px);
    margin: 0 auto;
}
.sub_cont_gallery .tab_sub2 {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 50px auto;
}
.sub_cont_gallery .tab_sub2 li {
    font-size: 20px;
    font-weight: 500;
    color: #999;
    border: 1px solid #ccc;
    border-radius: 50px;
    margin: 0 12px 16px;
    transition: 0.2s;
}
.sub_cont_gallery .tab_sub2 li:hover,
.sub_cont_gallery .tab_sub2 li.on {
    background-color: #183792;
    color: #fff;
    border: 1px solid #183792;
}
.sub_cont_gallery .tab_sub2 li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 10px 24px;
}

.sub_cont2 {
    font-family: 'GmarketSans';
    font-weight: 500;
    line-height: 1.5;
}
/* .sub_cont2 > div {
    display: none;
    font-family: 'GmarketSans';
    font-weight: 500;
    line-height: 1.5;
}
.sub_cont2 > div.on {
    display: block;
} */
.sub_cont2 .top {
    text-align: center;
    margin-bottom: 100px;
    font-family: 'Pretendard';
}
.sub_cont2 .top span {
    display: block;
    font-size: 24px;
    font-weight: 600;
    color: #999;
    margin-bottom: 40px;
}
.sub_cont2 .top h3 {
    font-size: 64px;
    font-weight: bold;
    margin-bottom: 20px;
}
.sub_cont2 .top p {
    font-size: 24px;
    font-weight: 600;
    color: #555;
}
.sub_cont2 figure {
    width: 100%;
}
.sub_cont2 figure img {
    display: block;
    width: 100%;
    object-fit: contain;
}
.sub_cont2 .radius {
    border-radius: 10px;
    overflow: hidden;
}
.sub_cont2 .mb20 {
    margin-bottom: 20px;
}
.sub_cont2 .mb30 {
    margin-bottom: 30px;
}
.sub_cont2 .mb40 {
    margin-bottom: 40px;
}
.sub_cont2 .mb50 {
    margin-bottom: 50px;
}
.sub_cont2 .mb60 {
    margin-bottom: 60px;
}
.sub_cont2 .mb100 {
    margin-bottom: 100px;
}
.sub_cont2 .mb150 {
    margin-bottom: 150px;
}
.sub_cont2 .mb200 {
    margin-bottom: 200px;
}
.sub_cont2 .mb250 {
    margin-bottom: 250px;
}
.sub_cont2 .pl40 {
    padding-left: 40px;
}
.sub_cont2 .black1 {
    color: #111;
}
.sub_cont2 .blue1 {
    color: #1c99d9;
}
.sub_cont2 .blue2 {
    color: #183792;
}
.sub_cont2 .red1 {
    color: #fb4141;
}
.sub_cont2 .white1 {
    color: #fff;
}
.sub_cont2 .center {
    text-align: center;
}
.sub_cont2 .left {
    text-align: left;
}
.sub_cont2 .right {
    text-align: right;
}
.sub_cont2 .fs18 {
    font-size: 18px;
}
.sub_cont2 .fs20 {
    font-size: 20px;
}
.sub_cont2 .fs24 {
    font-size: 24px;
}
.sub_cont2 .fs28 {
    font-size: 28px;
}
.sub_cont2 .fs36 {
    font-size: 36px;
}
.sub_cont2 .fs42 {
    font-size: 42px;
}
.sub_cont2 .fs64 {
    font-size: 64px;
}
.sub_cont2 .bold {
    font-weight: bold;
}
.sub_cont2 .line {
    border: 2px solid #fff;
}
.sub_cont2 .flex {
    display: flex;
    justify-content: center;
}
.sub_cont2 .box {
    background-color: #333;
    padding: 30px 80px;
}
.sub_cont2 .desc {
    background-color: #f5f5f5;
    padding: 60px;
}
.sub_cont2 .check {
    position: relative;
}
.sub_cont2 .check::before {
    content: '';
    width: 20px;
    height: 12px;
    background: url('/image/check.png') center center / 100% no-repeat;
    position: absolute;
    top: 20%;
    left: 0;
}
.sub_cont2 .part {
    max-width: 950px;
    margin: 0 auto 200px;
    padding: 0;
}
.sub_cont2 .link {
    max-width: 767px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto 250px;
}
.sub_cont2 .link li {
    width: calc(100% / 4);
    background-color: #183792;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 10px;
    transition: 0.2s;
}
.sub_cont2 .link li:hover {
    background-color: #000957;
}
.sub_cont2 .link li a {
    width: 100%;
    padding: 24px 0 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 18px;
}
video.manual {
    width: 100%;
}





.company {
    padding: 100px 0;
}

.greeting h2 {
    font-size: 28px;
    margin-bottom: 80px;
}
.greeting p {
    line-height: 2;
    margin-bottom: 80px;
}
.greeting figure {
    height: 48px;
}
.greeting figure img {
    height: 100%;
    object-fit: contain;
}





.intro h3 {
    font-size: 24px;
    margin-bottom: 40px;
}
.intro .infor {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-bottom: 120px;
}
.intro .infor dl {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 25px;
    border-bottom: 1px solid #eee;
}
.intro .infor dl:last-of-type {
    border-bottom: none;
}
.intro .infor dl dt {
    width: 200px;
}
.intro .infor dl dd {
    width: calc(100% - 200px);
}
.intro .value {
    max-width: 878px;
    width: 100%;
    margin: 0 auto 120px;
}
.intro .value img {
    width: 100%;
    object-fit: contain;
}
.intro .chart {
    max-width: 1050px;
    width: 100%;
    margin: 0 auto 120px;
}
.intro .chart img {
    width: 100%;
    object-fit: contain;
}
.intro .foreground {
    display: flex;
    flex-wrap: wrap;
}
.intro .foreground figure {
    width: calc((100% - 90px) / 3);
    height: 250px;
    margin: 0 15px;
}
.intro .foreground figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}





.history h2 {
    font-size: 32px;
    margin-bottom: 80px;
    font-weight: 500;
}
.history .desc {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 120px;
}
.history .desc p {
    width: calc((100% - 30px) / 2);
    line-height: 2;
}
.history .desc figure {
    width: calc((100% - 30px) / 2);
}
.history .desc figure img {
    width: 100%;
    object-fit: cover;
}

.history .table > li .item {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ddd;
    margin-bottom: 60px;
}

.history .table > li .item .year {
    width: 200px;
    border-right: 1px solid #ddd;
    padding: 25px 0;
    font-size: 32px;
    font-weight: 500;
    color: #000957;
}
.history .table > li .item .cont {
    width: calc(100% - 200px);
    padding: 30px 40px;
}
.history .table > li .item .cont > ul > li {
    margin-bottom: 60px;
}
.history .table > li .item .cont > ul > li:last-of-type {
    margin-bottom: 0;
}
.history .table > li .item .cont > ul > li p {
    margin-bottom: 2px;
}
.history .table > li .item .cont > ul > li > span {
    color: #608bc1;
    font-size: 14px;
}





.equipment h2 {
    font-size: 32px;
    margin-bottom: 80px;
    font-weight: 500;
    border-bottom: 1px solid #ccc;
    padding-bottom: 30px;
}
.equipment p {
    line-height: 2;
}
.equipment .desc {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 180px;
}
.equipment .desc p {
    width: calc((100% - 30px) / 2);
}
.equipment .desc figure {
    width: calc((100% - 30px) / 2);
}
.equipment .desc figure img {
    width: 100%;
    object-fit: cover;
}
.equipment h3 {
    font-size: 24px;
    margin-bottom: 60px;
    font-weight: 500;
}
.equipment .process {
    margin-bottom: 180px;
}
.equipment .process figure {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.equipment .process figure img {
    width: 100%;
    object-fit: contain;
}
.equipment .salvagnini {
    margin-bottom: 180px;
}
.equipment .salvagnini p {
    margin-bottom: 60px;
}
.equipment .salvagnini .video {
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
    margin-bottom: 40px;
}
.equipment .salvagnini .video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
}
.equipment .salvagnini .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.equipment .salvagnini .list figure {
    width: calc((100% - 60px) / 3);
}
.equipment .salvagnini .list figure img {
    display: block;
    width: 100%;
    object-fit: cover;
}
.equipment .coating {
    margin-bottom: 180px;
}
.equipment .coating p {
    margin-bottom: 60px;
}
.equipment .coating figure {
    max-width: 767px;
    width: 100%;
    margin: 0 auto 60px;
}
.equipment .coating figure img {
    width: 100%;
    object-fit: contain;
}
.equipment .compare {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.equipment .compare ul {
    width: 50%;
    border-top: 1px solid #ddd;
}
.equipment .compare ul li {
    border-bottom: 1px solid #ddd;
    padding: 15px 30px;
}
.equipment .compare ul li.title {
    text-align: center;
}
.equipment .compare ul.before li {
    border-right: 1px solid #ddd;
    color: #777;
}
.equipment .compare ul.before li.title {
    background-color: #eee;
}
.equipment .compare ul.after li.title {
    background-color: #183792;
    color: #fff;
}
.equipment .photo {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}
.equipment .photo li {
    width: calc((100% - 20px) / 2);
    margin-bottom: 20px;
}
.equipment .photo li img {
    display: block;
    width: 100%;
    object-fit: cover;
}





.guarantee h2 {
    font-size: 32px;
    margin-bottom: 80px;
    font-weight: 500;
}
.guarantee .list {
    display: flex;
    flex-wrap: wrap;
}
.guarantee .list .item {
    width: calc((100% - 120px) / 4);
    margin: 0 15px 60px;
}
.guarantee .list .item figure {
    width: 100%;
    border: 1px solid #eee;
    margin-bottom: 20px;
}
.guarantee .list .item figure img {
    width: 100%;
    object-fit: contain;
}
.guarantee .list .item p {
    margin-bottom: 2px;
}
.guarantee .list .item span {
    color: #777;
    /* font-size: 14px; */
}
.guarantee .list .item.long {
    width: calc((100% - 60px) / 2);
}
.guarantee .list .item.long .box {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.guarantee .list .item.long .box figure {
    width: calc((100% - 30px) / 2);
}





.location h2 {
    font-size: 24px;
    margin-bottom: 60px;
    font-weight: 500;
}
.location .infor {
    margin-bottom: 80px;
}
.location .infor dl {
    display: flex;
    flex-wrap: wrap;
    padding: 25px;
    border-bottom: 1px solid #eee;
}
.location .infor dl dt {
    width: 200px;
}
.location .infor dl dd {
    width: calc(100% - 200px);
}
.location .infor dl dd p {
    margin-bottom: 5px;
}
.location .infor dl dd span {
    color: #777;
    font-size: 14px;
}
.location .box {
    width: 100%;
    height: 500px;
}





.partner {
    max-width: 767px;
    width: 100%;
    margin: 0 auto 200px;
}
.partner h3 {
    font-size: 24px;
    margin-bottom: 60px;
    font-weight: 500;
}
.partner > p {
    line-height: 1.8;
    margin-bottom: 120px;
    max-width: 650px;
    font-size: 17px;
}
.partner .contact {
    margin: 0 auto 80px;
    display: flex;
    flex-wrap: wrap;
}
.partner .contact li {
    width: 50%;
    text-align: center;
    padding: 60px 0;
    color: #fff;
}
.partner .contact li.tel {
    background-color: #000957;
}
.partner .contact li.mail {
    background-color: #183792;
}
.partner .contact li span {
    font-size: 18px;
}
.partner .contact li p {
    font-size: 24px;
    font-weight: 500;
    margin-top: 20px;
}
.partner .step {
    margin: 0 auto 80px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.partner .step li {
    width: calc((100% - 120px) / 4);
    margin: 0 15px;
    text-align: center;
}
.partner .step li figure {
    width: 100%;
    margin-bottom: 20px;
}
.partner .step li figure img {
    max-width: 140px;
    width: 100%;
    object-fit: contain;
}
.partner .btn_cover {
    display: flex;
    justify-content: center;
    margin-bottom: 180px;
}
.partner .btn_cover a {
    background-color: #000957;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    padding: 20px 40px;
}

.partner h4 {
    font-size: 24px;
    margin-bottom: 40px;
    font-weight: 500;
}
.partner .faq dt {
    padding: 30px 0;
    border-bottom: 1px solid #ccc;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}
.partner .faq dt p {
    font-size: 18px;
}
.partner .faq dt figure {
    height: 14px;
    transition: 0.2s;
}
.partner .faq dt.on figure {
    transform: rotate(180deg);
}
.partner .faq dt figure img {
    height: 100%;
    object-fit: fill;
}
.partner .faq dd {
    background-color: #f5f5f5;
    border-bottom: 1px solid #ccc;
    padding: 30px 30px 40px;
    line-height: 2;
    display: none;
}
.img_partner {
    width: 100%;
    margin-bottom: 100px;
}
.img_partner li {
    width: 100%;
}
.img_partner li img {
    width: 100%;
    object-fit: cover;
}





.privacy {
    font-size: 15px;
    padding: 80px 0;
}
.privacy h3 {
    font-size: 24px;
    margin-bottom: 80px;
    font-weight: 500;
}





/* #bo_gall {
    max-width: 1080px;
    margin: 0 auto;
}
#bo_gall #gall_ul {
    display: flex;
    flex-wrap: wrap;
}
#bo_gall #gall_ul .gall_li {
    width: calc((100% - 90px) / 3);
    border: 1px solid #ddd;
    margin: 0 15px 60px;
}
#bo_gall #gall_ul .gall_li .gall_con .gall_href {
    width: 100%;
    height: 16vw;
    border-bottom: 1px solid #ddd;
}
#bo_gall #gall_ul .gall_li .gall_con .gall_href a {
    display: block;
    width: 100%;
    height: 100%;
}
#bo_gall #gall_ul .gall_li .gall_con .gall_href a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#bo_gall #gall_ul .gall_li .gall_con .gall_text_href {
    text-align: center;
}
#bo_gall #gall_ul .gall_li .gall_con .gall_text_href a {
    display: block;
    padding: 20px;
    font-size: 18px;
} */





.sub_cont2 .productSwiper .swiper-slide {
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
}
.sub_cont2 .productSwiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
}
.sub_cont2 .thumbSwiper {
    padding: 10px 0;
}
.sub_cont2 .thumbSwiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sub_cont2 .productSwiper .swiper-button-prev,
.sub_cont2 .productSwiper .swiper-button-next {
    width: 48px;
    height: 48px;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5);
}
.sub_cont2 .productSwiper .swiper-button-prev {
    left: 0;
}
.sub_cont2 .productSwiper .swiper-button-next {
    right: 0;
}
.sub_cont2 .productSwiper .swiper-button-prev::after,
.sub_cont2 .productSwiper .swiper-button-next::after {
    font-size: 24px;
}





@media screen and (max-width: 1400px) {
    .header .inner nav {
        margin-left: 50px;
    }
    .header .inner nav > ul .depth1 > a {
        padding: 0 15px;
    }
}





@media screen and (max-width: 1200px) {
    .header .inner nav {
        margin-left: 40px;
    }
    .header .inner nav > ul .depth1 > a {
        padding: 0 10px;
    }

    .bannerSwiper {
        display: none;
    }

    .main_product .list .item {
        width: 100%;
        margin-bottom: 20px;
    }
    .main_product .list .item figure {
        height: 250px;
    }
    .main_product .list .item::after {
        background-color: rgba(0, 0, 0, 0.4);
        opacity: 1;
    }
    .main_product .list .item .text {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 20px;
        opacity: 1;
    }
    .main_product .list .item .text span {
        position: static;
        transform: translateX(0);
    }
    .main_product .list .item .text h3 {
        margin-bottom: 10px;
    }
    .main_product .list .item .text p {
        margin-bottom: 20px;
    }

    .main_innovation .inner .list .item {
        width: calc((100% - 24px) / 2);
        margin-bottom: 40px;
    }
}





@media screen and (max-width: 1080px) {
    .header .inner nav.pc {
        display: none;
    }
    .header .inner .right li.pc {
        display: none;
    }
    .header .inner .right li.mob {
        display: block;
    }

    .footer .inner .left,
    .footer .inner .right {
        width: 100%;
    }
    .footer .inner .left {
        margin-bottom: 80px;
    }
    .footer .inner .right {
        text-align: start;
    }
    .footer .inner .right .sns {
        justify-content: flex-start;
    }
    .footer .inner .right .sns li {
        margin-left: 0;
        margin-right: 20px;
    }

    .main_board .inner .left,
    .main_board .inner .right {
        width: 100%;
    }
    .main_board .inner .left {
        margin-bottom: 100px;
    }
    .main_board .inner .right > a {
        height: 250px;
    }
    .main_board .inner .right .main_estimate {
        margin-bottom: 20px;
    }
    .main_board .inner .right > a .text > p {
        opacity: 1;
        transform: translateY(0);
    }
    .main_board .inner .right > a::after {
        background-color: rgba(0, 0, 0, 0.5);
    }

    .intro .foreground figure {
        width: calc((100% - 40px) / 2);
        margin: 0 10px 20px;
    }

    .history .desc {
        flex-direction: column;
    }
    .history .desc figure {
        order: -1;
        margin-bottom: 40px;
    }

    .equipment .desc {
        flex-direction: column;
    }
    .equipment .desc figure {
        order: -1;
        margin-bottom: 40px;
    }

    .guarantee .list .item {
        width: calc((100% - 60px) / 2);
    }
    .guarantee .list .item.long {
        width: 100%;
    }

    .sub_cont2 .fs64 {
        font-size: 48px;
    }
    .sub_cont2 .fs42 {
        font-size: 32px;
    }
    .sub_cont2 .fs36 {
        font-size: 24px;
    }
    .sub_cont2 .fs28 {
        font-size: 20px;
    }
    .sub_cont2 .fs24 {
        font-size: 18px;
    }
}





@media screen and (max-width: 767px) {
    .main_visual .mainSwiper .swiper-wrapper .swiper-slide .text span {
        font-size: 16px;
    }
    .main_visual .mainSwiper .swiper-wrapper .swiper-slide .text strong {
        font-size: 48px;
    }
    .main_visual .mainSwiper .swiper-wrapper .swiper-slide .text p {
        font-size: 18px;
    }
    .main_visual .mainSwiper .bar_full {
        width: 250px;
    }
    .main_visual .mainSwiper .mainSwiper-button-prev {
        left: 290px;
    }
    .main_visual .mainSwiper .mainSwiper-button-next {
        left: 334px;
    }

    .main_gallery .inner .box .desc {
        width: 100%;
        margin-bottom: 60px;
    }

    .main_item .inner {
        width: 100%;
        height: auto;
        display: flex;
        flex-wrap: wrap;
    }
    .main_item .inner .item {
        position: relative;
        display: block;
        width: 100%;
        height: 250px;
        border-radius: 0;
        opacity: 1;
    }
    .main_item .inner a.item {
        border: none;
        border-bottom: 1px solid #fff;
    }
    .main_item .inner .item1 {
        left: 0;
    }
    .main_item .inner .item2 {
        top: 0;
    }
    .main_item .inner .item3 {
        right: 0;
    }
    .main_item .inner .item4 {
        bottom: 0;
    }
    .main_item .inner .item5 {
        top: 0;
        left: 0;
        transform: translate(0, 0);
        order: -1;
    }
    .main_item.on .inner .item5 {
        left: 0;
    }
    .main_item .inner .item5 h3 {
        font-size: 48px;
        left: 20px;
        bottom: 40px;
    }
    .main_item .inner a.item::after {
        background-color: rgba(0, 0, 0, 0.5);
    }

    .main_innovation .inner .list .item {
        width: 100%;
        margin-bottom: 40px;
    }

    .sub_visual_company .tab_sub1,
    .sub_visual_manual .tab_sub1,
    .sub_visual_product .tab_sub1 {
        height: 120px;
    }
    .sub_visual_company .tab_sub1 ul,
    .sub_visual_manual .tab_sub1 ul,
    .sub_visual_product .tab_sub1 ul {
        height: 50%;
    }
    .sub_visual_company .tab_sub1 ul li {
        width: calc(100% / 3);
    }
    .sub_visual_product .tab_sub1 ul li {
        width: calc(100% / 2);
    }
    .sub_visual_manual .tab_sub1 ul li {
        width: calc(100% / 4);
    }
    .sub_visual .text h2 {
        font-size: 36px;
    }
    .sub_visual .text p {
        font-size: 18px;
    }

    .intro .foreground figure {
        width: 100%;
        margin: 0 0 20px;
    }

    .history .desc figure {
        width: 100%;
    }
    .history .desc p {
        width: 100%;
    }

    .equipment .desc figure {
        width: 100%;
    }
    .equipment .desc p {
        width: 100%;
    }
    .equipment .compare ul {
        width: 100%;
    }
    .equipment .compare ul.before {
        margin-bottom: 50px;
    }
    .equipment .compare ul li {
        padding: 15px 20px;
    }
    .equipment .compare ul.before li {
        border-right: none;
    }

    .sub_cont1 .tab_sub2 {
        margin: 80px auto 100px;
    }

    .partner .contact li {
        width: 100%;
    }
}





@media screen and (max-width: 500px) {
    .quick_scroll,
    .quick_sns {
        right: 10px;
    }

    .footer .inner .left > a {
        height: 48px;
    }

    .main_product .inner .title h2,
    .main_gallery .inner .title h2 {
        font-size: 32px;
    }
    .main_product .inner .title > a,
    .main_gallery .inner .title > a {
        padding: 6px 20px;
    }
    .main_product .list .item figure {
        height: 180px;
    }
    .main_product .list .item::after {
        background-color: rgba(0, 0, 0, 0.3);
    }
    .main_product .list .item .text h3 {
        font-size: 28px;
        margin-bottom: 20px;
    }
    .main_product .list .item .text p {
        display: none;
    }

    .main_item .inner .item {
        height: 200px;
    }

    .main_board .inner .right > a .text {
        padding: 40px;
    }
    .main_board .inner .right > a .text h5 {
        left: 40px;
    }

    .sub_visual .text {
        width: calc(100% - 80px);
    }
    .sub_visual .text h2 {
        font-size: 32px;
        margin-bottom: 20px;
    }
    .sub_visual .text p {
        font-size: 16px;
    }
    .sub_visual .tab_sub1 ul li {
        font-size: 18px;
    }
    .sub_visual_company .tab_sub1 ul li,
    .sub_visual_manual .tab_sub1 ul li {
        font-size: 16px;
    }

    .intro .infor dl {
        padding: 25px 15px;
    }
    .intro .infor dl dt,
    .intro .infor dl dd {
        width: 100%;
    }
    .intro .infor dl dt {
        margin-bottom: 10px;
        color: #777;
    }

    .history .table > li .item {
        padding: 40px 15px;
    }
    .history .table > li .item .year,
    .history .table > li .item .cont {
        width: 100%;
        padding: 0;
    }
    .history .table > li .item .year {
        margin-bottom: 50px;
        border-right: none;
    }

    .equipment .salvagnini .list figure {
        width: 100%;
        margin-bottom: 20px;
    }
    .equipment .photo li {
        width: 100%;
    }

    .guarantee .list .item {
        width: 100%;
        margin: 0 auto 60px;
    }

    .location .infor dl  {
        padding: 25px 15px;
    }
    .location .infor dl dt,
    .location .infor dl dd {
        width: 100%;
    }
    .location .infor dl dt {
        margin-bottom: 20px;
        color: #000957;
    }
    .location .box {
        height: 350px;
    }

    .sub_cont1 .tab_sub2 li {
        font-size: 18px;
    }
    .sub_cont2 .top h3 {
        font-size: 48px;
    }
    .sub_cont2 .fs64 {
        font-size: 36px;
    }
    .sub_cont2 .fs42 {
        font-size: 24px;
    }
    .sub_cont2 .fs28 {
        font-size: 18px;
    }
    .sub_cont2 .fs20 {
        font-size: 18px;
    }
    .sub_cont2 .fs18 {
        font-size: 16px;
    }
    .sub_cont2 .desc {
        padding: 50px;
    }

    .sub_cont_gallery .tab_sub2 {
        margin: 0 0 50px;
    }
    .sub_cont_gallery .tab_sub2 li {
        font-size: 18px;
    }

    .sub_cont2 .link li {
        width: calc(100% / 2);
    }

    .partner .step li {
        width: calc((100% - 60px) / 2);
        margin-bottom: 40px;
    }
}





@media screen and (max-width: 480px) {
    .quick_scroll {
        bottom: 20px;
    }
    .quick_sns {
        bottom: 120px;
    }
    .side {
        top: 45%;
    }

    .menu_mob .user {
        padding: 30px 20px;
    }
    .menu_mob nav {
        font-size: 18px;
    }
    .menu_mob nav .depth1 span, .menu_mob nav .depth1 a {
        padding: 15px 0;
    }

    .main_visual .mainSwiper .swiper-wrapper .swiper-slide .text strong {
        font-size: 42px;
    }
    .main_visual .mainSwiper .swiper-wrapper .swiper-slide .text p {
        display: none;
    }
    .main_visual .mainSwiper .bar_full {
        width: 150px;
    }
    .main_visual .mainSwiper .mainSwiper-button-prev {
        left: 180px;
    }
    .main_visual .mainSwiper .mainSwiper-button-next {
        left: 214px;
    }

    .main_gallery .inner .gallerySwiper .swiper-slide figure {
        height: 320px;
    }
    .main_gallery .inner .box {
        margin-bottom: 40px;
    }

    .main_innovation .inner h2 {
        font-size: 32px;
    }
    .main_innovation .inner > p {
        font-size: 18px;
    }
    .main_innovation .inner .list .item .text {
        padding: 30px;
    }
    .main_innovation .inner .list .item .text h3 {
        margin-bottom: 30px;
    }
    .main_innovation .inner .list .item .text .view_detail {
        right: 40px;
        bottom: 30px;
    }

    .main_board .inner .right > a {
        height: 200px;
    }
    .main_board .inner .right > a .text {
        padding: 30px;
        display: flex;
        align-items: flex-end;
    }
    .main_board .inner .right > a .text > p {
        display: none;
    }
    .main_board .inner .right > a .text h5 {
        position: static;
        font-size: 30px;
    }
    .main_board .inner .left ul li {
        margin-bottom: 30px;
    }
    .main_board .inner .left ul li a {
        flex-direction: column;
        align-items: flex-start;
    }

    .sub_cont1 .tab_sub2 li {
        margin: 0 6px 12px;
    }
    .sub_cont_gallery .tab_sub2 li {
        margin: 0 6px 12px;
    }

    .sub_cont2 .box {
        padding: 30px;
    }
    .sub_cont2 .desc {
        padding: 50px 30px;
    }
    .sub_cont2 .fs24 {
        font-size: 16px;
    }
}





@media screen and (max-width: 340px) {
    .partner > p {
        font-size: 16px;
    }
}