@charset "utf-8";

/*-----------------------
    page_top.css
------------------------*/

/*--- fv ---*/

.top_fv {
    padding: 180px 0 50px;
    background: url("/system_panel/uploads/images/bg_fv.jpg") center no-repeat;
    background-size: cover;
}
.top_fv .frame {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.top_fv .frame .conts {
    width: 60%;
    color: var(--white);
}
.top_fv .frame .conts .text {
    display: inline-block;
    background: var(--orange);
    padding: 5px 20px;
    font-size: 27px;
    font-weight: bold;
}
.top_fv .frame .conts .catch {
    margin: 15px 0 20px;
    font-size: 80px;
    font-weight: bold;
    line-height: 1.5;
}
.top_fv .frame .conts .elx {
    width: 376px;
    margin-bottom: 60px;
}
.top_fv .frame .pic {
    width: 40%;
}
.top_fv .m_btn {
    width: 1000px;
}
.top_fv .m_btn a {
    justify-content: flex-start;
}
.top_fv .m_btn a .title {
    background: #52538b;
    padding: 3px 20px;
}
.top_fv .m_btn a .title br {
    display: none;
}
.top_fv .m_btn a:hover {
    opacity: .9;
}

@media screen and (min-width: 768px) and (max-width: 1700px){
    
    .top_fv {
        padding: 150px 0 50px;
    }
    .top_fv .frame .conts .elx {
        margin-bottom: 0;
    }
    
}
@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .top_fv {
        padding: 13.5vw 0 4vw;
    }
    .top_fv .frame {
        align-items: center;
    }
    .top_fv .frame .conts .text {
        padding: .5vw 2vw;
        font-size: 2.5vw;
    }
    .top_fv .frame .conts .catch {
        margin: 1.5vw 0 2vw;
        font-size: 6vw;
    }
    .top_fv .frame .conts .elx {
        width: 34vw;
    }
    .top_fv .m_btn {
        width: 90%;
    }
    .top_fv .m_btn a .title {
        padding: .3vw 2vw;
    }
    
}
@media screen and (max-width: 767px){
    
    .top_fv {
        padding: 100px 0 50px;
    }
    .top_fv .frame {
        display: block;
    }
    .top_fv .frame .conts {
        width: 100%;
    }
    .top_fv .frame .conts .text {
        padding: 5px 15px;
        font-size: 25px;
    }
    .top_fv .frame .conts .catch {
        margin: 15px 0 20px;
        font-size: min(8.75vw,48px);
    }
    .top_fv .frame .conts .elx {
        width: min(75%,282px);
        margin-bottom: 30px;
    }
    .top_fv .frame .pic {
        margin: 0 auto;
        width: min(300px,87.5%);
    }
    .top_fv .m_btn {
        width: 100%;
    }
    .top_fv .m_btn a {
        padding: 10px 40px 10px 3vw;
    }
    .top_fv .m_btn a .title {
        padding: 3px 5px;
        font-size: 12px;
        width: 60px;
        line-height: 1.3;
    }
    .top_fv .m_btn a .title br {
        display: inline-block;
    }
    .top_fv .m_btn a .text {
        width: calc(100% - 60px - 10px);
        font-size: 13px;
        text-align: left;
        line-height: 1.6;
    }
    
}

/*--- about ---*/

.top_about {
    padding: 110px 0;
    background: var(--white);
}
.top_about .frame {
    display: flex;
    justify-content: space-between;
}
.top_about .frame .conts {
    width: 60%;
}
.top_about .frame .conts .ttl img {
    height: 34px;
}
.top_about .frame .conts .title {
    margin: 5px 0 30px;
}
.top_about .frame .conts .title > div {
    display: flex;
}
.top_about .frame .conts .title .text {
    font-size: 40px;
    font-weight: bold;
    line-height: 1.5;
}
.top_about .frame .pic {
    width: 40%;
    margin-right: calc(50% - 50vw);
    margin-left: 5%;
    flex: 1;
}
.top_about .frame .pic img {
    aspect-ratio: 38/25;
}

.top_point {
    position: relative;
    margin: 150px 0 0;
    padding: 80px 70px 50px;
    background: #f4f4f4;
}
.top_point .ttl {
    position: absolute;
    top: -40px;
    left: calc(50% - 375px);
    width: 750px;
    padding: 16px 0;
    background: var(--blue);
    color: var(--white);
    font-size: 35px;
    font-weight: bold;
    text-align: center;
}
.top_point .ul {
    display: flex;
    justify-content: space-between;
}
.top_point .ul .li {
    width: 30%;
}
.top_point .ul .li .icon {
    width: 150px;
    margin: 0 auto;
}
.top_point .ul .li .title {
    margin: 15px 0;
    font-size: 27px;
    text-align: center;
}
.top_point .ul .li .p {
    line-height: 1.75;
}

@media screen and (min-width: 768px) and (max-width: 1700px){
    
    .top_about .frame .conts {
        width: 50%;
    }
    .top_about .frame .pic {
        width: 50%;
    }
    
    
}
@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .top_about {
        padding: 8vw 0;
    }
    .top_about .frame .conts .ttl img {
        height: 3vw;
    }
    .top_about .frame .conts .title {
        margin: .5vw 0 3vw;
    }
    .top_about .frame .conts .title .text {
        font-size: 3vw;
    }

    .top_point {
        margin: 12vw 0 0;
        padding: 7vw 4vw 4vw;
    }
    .top_point .ttl {
        top: -3vw;
        left: calc(50% - 33vw);
        width: 66vw;
        padding: 1.5vw 0;
        font-size: 3vw;
    }
    .top_point .ul .li {
        width: 31.5%;
    }
    .top_point .ul .li .icon {
        width: 13vw;
    }
    .top_point .ul .li .title {
        margin: 1.5vw 0;
        font-size: 2.4vw;
    }
    
}
@media screen and (max-width: 767px){
    
    .top_about {
        padding: 50px 0;
    }
    .top_about .frame {
        display: block;
    }
    .top_about .frame .conts {
        width: 100%;
    }
    .top_about .frame .conts .ttl img {
        height: 24px;
    }
    .top_about .frame .conts .title {
        display: inline-block;
        margin: 5px 0 30px;
    }
    .top_about .frame .conts .title > div {
        display: inline;
    }
    .top_about .frame .conts .title .text {
        display: inline;
        font-size: 27px;
    }
    .top_about .frame .pic {
        width: min(400px,100%);
        margin: 30px auto 0;
        flex: 0;
    }

    .top_point {
        margin: 40px 0 0;
        padding: 30px 5vw;
    }
    .top_point .ttl {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        padding: 10px 0;
        font-size: 24px;
    }
    .top_point .ul {
        display: block;
    }
    .top_point .ul .li {
        width: 100%;
        margin-top: 30px;
    }
    .top_point .ul .li .icon {
        width: 120px;
    }
    .top_point .ul .li .title {
        margin: 10px 0;
        font-size: 27px;
    }
    
}

/*--- top_products ---*/

.top_products {
    padding: 100px 0;
    background: url("/system_panel/uploads/images/bg_top_product.jpg") center no-repeat;
    background-size: cover;
    color: var(--white);
    overflow-x: hidden;
}
.top_products .m_btn {
    margin-bottom: 80px;
}
.top_products_ul {
    margin-top: 100px;
}
.top_products_ul .li {
    margin: 0 5px;
}
.top_products_ul .li .p {
    margin-top: 10px;
    color: var(--white);
    line-height: 1.4;
}
.top_products_ul .li .pic img {
    aspect-ratio: 11/8;
}
.top_products_ul .slick-prev,
.top_products_ul .slick-next {
    position: absolute;
    top: -60px;
    right: 10vw;
    border: none;
    background: none;
    text-indent: -9999px;
    cursor: pointer;
    transition: .5s;
    outline: none;
}
.top_products_ul .slick-prev:hover,
.top_products_ul .slick-next:hover {
    opacity: .8;
}
.top_products_ul .slick-next {
    right: calc(10vw - 45px);
}
.top_products_ul .slick-prev::before,
.top_products_ul .slick-next::before {
    position: absolute;
    display: block;
    content: "";
    background: var(--white);
    width: 30px;
    height: 30px;
    border-radius: 50%;
}
.top_products_ul .slick-prev::after,
.top_products_ul .slick-next::after {
    position: absolute;
    display: block;
    content: "";
    top: 12px;
    right: -14px;
    width: 10px;
    height: 10px;
    border-top: solid 1px var(--text);
    border-right: solid 1px var(--text);
    transform: rotate(45deg);
}
.top_products_ul .slick-prev::after {
    right: -18px;
    transform: rotate(-135deg);
}

@media screen and (max-width: 1700px){
    
    .top_products_ul .slick-prev {
        right: 105px;
    }
    .top_products_ul .slick-next {
        right: 60px;
    }
    
}
@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .top_products {
        padding: 8vw 0;
    }
    .top_products .m_btn {
        margin-bottom: 7vw;
    }
    .top_products_ul {
        margin-top: 8vw;
    }
    .top_products_ul .li .p {
        margin-top: 1vw;
    }
    
}
@media screen and (max-width: 767px){
    
    .top_products {
        padding: 50px 0;
    }
    .top_products .m_btn {
        margin-bottom: 50px;
    }
    .top_products_ul {
        margin-top: 80px;
    }
    
}

/*--- compnay ---*/

.top_company {
    padding: 120px 0 40px;
    background: url("/system_panel/uploads/images/bg_scene.jpg") top center #f4f4f4 no-repeat;
    background-size: cover;
}
.top_company .frame {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 60px 0 100px;
}
.top_company .frame .conts {
    width: 50%;
    order: 2;
}
.top_company .frame .conts .m_btn {
    margin-top: 60px;
}
.top_company .frame .pic {
    width: 44%;
}
.top_company .frame .pic img {
    aspect-ratio: 3/2;
}
.top_partner {
    padding: 50px 0;
    background: url("/system_panel/uploads/images/bg_top_partner.jpg") center no-repeat;
    background-size: cover;
    color: var(--white);
}

@media screen and (min-width: 768px) and (max-width: 1260px){

    .top_company {
        padding: 9vw 0 3vw;
    }
    .top_company .frame {
        margin: 5vw 0 8vw;
    }
    .top_company .frame .conts .m_btn {
        margin-top: 5vw;
    }
    .top_partner {
        padding: 4vw 0;
    }
    
}
@media screen and (max-width: 767px){
   
    .top_company {
        padding: 50px 0 0;
    }
    .top_company .frame {
        display: block;
        margin: 40px 0 50px;
    }
    .top_company .frame .conts {
        width: 100%;
    }
    .top_company .frame .conts .m_btn {
        margin-top: 30px;
    }
    .top_company .frame .pic {
        margin: 30px auto 0;
        width: min(400px,100%);
    }
    .top_partner {
        padding: 30px 5vw;
    }
    .top_partner .pm br {
        display: none;
    }
 
}


@media screen and (max-width: 767px){
