@charset "utf-8";
body{
    color:#333;
}
.table{
    display:table;
}
.tr{
    display:table-row;
}
.td{
    display:table-cell;
}

.inner-width{
    max-width:1400px;
    margin:0 auto;
    padding:0 1rem;
}

.firstview-wrap{
    position:relative;
}

.back-image{
    padding-top:calc((100% / 2500) * 1691);
    background-size:cover;
    background-position:center;
}

.main-image{
    position:absolute;
    top:0;
    bottom:0;
    right:0;
    left:0;
    margin:auto;
    width:20vw;
    height:20vw;
}
.main-image .image,
.main-image img{
    width:100%;
}

.mainlogo-image{
    position:absolute;
    top:2vw;
    left:2vw;
}
.mainlogo-image .image{
    background-color:#fff;
    width: 19vw;
    padding: 0.7vw 2vw 0.2vw 2vw;
    border-radius:15vw;
}
@media (max-width:480px){
    .mainlogo-image{
        top:3vw;
        left:3vw;
    }
    .mainlogo-image .image{
        width:40vw;
        padding: 2vw 4vw 0.5vw 4vw;
    }
}
@media (max-width:930px){
    .main-image{
        width:30vw;
        height:30vw;
    }
}




.slide-images{
    margin-top: -10vw;
    pointer-events:none;
    padding: 2vw 0;
    overflow: hidden;
}
.swiper-container{
    overflow:visible;
}
.slide-images .swiper-wrapper > div > div{
    transform:scale(1.2)   
}
.slide-images .swiper-wrapper > div:nth-child(even) > div{
    margin-top: 10vw;
    margin-left: -3.6vw;
}
.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: linear;
    margin: 0 auto;

}
@media (max-width:480px){
    .slide-images{
        margin-top: -15vw;
    }
    .slide-images .swiper-wrapper > div > div{
        /*transform:scale(1.1);*/
    }
    .slide-images .swiper-wrapper > div:nth-child(even) > div{
        margin-top: 15vw;
        margin-left: -5.5vw;
    }
}


.logo{
    text-align:center;
    margin-top: 3rem;
    margin-bottom: 3rem;
}


.text-item{
    background-color:#919292;
    color:#fff;
    padding: 1rem 4.5rem;
    display:flex;
    align-items:center;
}
.text-item p{
    font-size:1.1rem;
    font-family: serif;
    font-weight: bold;
    line-height: 2;
}
.at_01{
    display:flex;
    flex-wrap:wrap;
}
.at_01 > .flex-item{
    width:calc((100% / 2) * 1 - 0.01px);
}

.at_02{
    display:flex;
    flex-wrap:wrap;
    margin:0 0;
}
.at_02 > .flex-item{
    width:calc((100% / 4) * 1 - 0px);
    /*border:1px solid #fff;*/
    /*border-top:2px solid #fff;*/
}
@media (max-width:930px){
    .text-item p{
        font-size:1rem;
    }
}
@media (max-width:768px){
    .text-item p{
        font-size:1.5rem;
    }
    .at_01 > .flex-item{
        width:calc((100% / 1) * 1 - 0.01px);
    }
    .at_01 > .flex-item .image{
        width:100%;
    }
    .at_02{
       /* border-top:1px solid #fff;*/
    }
    .at_02 > .flex-item{
        width:calc((100% / 2) * 1 - 0px);
        /*border:2px solid #fff;*/
    }
}
@media (max-width:768px){
    .text-item{
        padding: 3rem 2rem;
    }
    .text-item p{
        font-size:1rem;
    }
}

.video-title{
    width:80%;
    margin:0 auto;
    padding:1.5rem;
    text-align:center;
    background-color:#919292;
}
.video-title h3{
    color:#fff;
    font-size: 1.3rem;
    font-family:serif;
    font-weight:bold;
}
#video{
    margin-top:8rem;
}
#video .inner-width{
    max-width:1000px;
}
@media (max-width:480px){
    #video{
        margin-top:5rem;
    }
    .video-title{
        padding:1rem;
    }
    .video-title h3{
        font-size: 1.5rem;
    }
}

#company{
    padding:5rem 0;
    background-color:#EDEDED;
    margin-top:8rem;
}
#company .inner-width{
    max-width:700px;
}
.company-title{
    background-color:#D2D2D3;
    padding:1rem;
}
.company-title h3{
    font-size: 1.3rem;
    font-weight:bold;
    color:#000;
}
#company .table{
    width:100%;
    margin-top:1.5rem;
}
#company .td{
    line-height:2.5;
    font-size:1rem;
    border-bottom:1px solid #aaa;
}

.label{
    width:7rem;
}
@media (max-width:480px){
    #company{
        margin-top:5rem;
    }
    .label{
        width:5rem;
    }
    #company .td{
        font-size:1rem;
    }
}


.copy{
    text-align:center;
    background-color:#EDEDED;
    padding-bottom:1rem;
    font-size:0.7rem;
}