/*----------------------------------------------------------
Index-/top/style.css
1.setting
2.main
----------------------------------------------------------*/
/*----------------------------------------------------------
1.setting
----------------------------------------------------------*/
section.box .max {
    max-width: 960px;
}
.box-content{
    margin-bottom:80px;
}
.fl-box{
    display: flex;
}
.fl-box .img-box{
    flex-shrink: 0;
}
.txt-box .txt{
    font-size: 1.6rem;
    line-height: 2;
}
@media  screen and (max-width: 768.9px) {
    .box-content{
        margin-bottom:50px;
    }
    .txt-box .txt{
        font-size: 1.4rem;
    }
}
/*----------------------------------------------------------
2.main
----------------------------------------------------------*/
.main_box {
        background: url(../img/mv-bg.jpg) no-repeat center;
        background-size: cover !important;
        text-align: left;
     }
     .main_box .main_box_inner {
        justify-content: space-between;
        align-items: center;
        display: -webkit-flex;
        flex-wrap: nowrap;
        max-width: 100%;
        width: 100%;
    }
    .main_box .main_box_inner>* {
            width: 100%;
        }
    .main_box .main_box_inner .img {
        text-align: right;
    }
     .main_box .main_box_inner h1 {
        color: #222;
        padding-left: 220px;
        font-size: 3.2rem;
        line-height: 1.5;
    }
    @media  screen and (max-width: 1440px) {
        .main_box {
            padding-left: 20px;
            padding-right: 20px;
        }
        .main_box .main_box_inner h1 {
            padding-left: 8%;
        }
    }
    @media  screen and (max-width: 768.9px) {
        .main_box {
            display: block;
            background-size: cover;
            text-align: center;
            height: auto;
            padding: 30px 10px 20px;
        }
        
        .main_box .main_box_inner{
            flex-wrap: wrap;
            text-align: left;
        }
        .main_box .main_box_inner h1 {
            font-size: 1.8rem;
            line-height: 1.5;
            padding-left:0;
            padding-right: 10px;
        }
        .main_box .main_box_inner .img {
            margin-top: 20px;
            text-align: right;
        }
    }
/*----------------------------------------------------------
3.adjust
----------------------------------------------------------*/
.box01 .fl-box{
    gap:60px;
    margin-bottom: 50px;
}
.box01 .fl-box .img-box img{
    display: block;
}
.box01 .fl-box .img-box img:not(:last-of-type){
    margin-bottom:15px;
}
.box01 .thumbnail{
    max-width: 650px;
    margin: 0 auto;
}
.box02 .service_1::after{
    display: none;
}
.box02 .service_1 ul li h3{
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.5;
}
.box02 .service_1 ul li h3 span{
    font-size: 0.7em;
}
.box03 .leftDubble.h3{
    max-width: 850px;
    margin: 0 auto 10px;
}
.box03 .fl-box.imgs-list{
    gap: 40px;
}
.box03 .fl-box.imgs-list:not(:last-of-type){
    margin-bottom: 40px;
}
.box03 .fl-box.imgs-list .img{
   width: calc(100% / 3 - 26px);
}
.fl-box.imgs-list .img figure{
    margin-bottom: 15px;
}
.fl-box.imgs-list .img figcaption{
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 10px;
} 
.fl-box.imgs-list .img figure img{
    width: 100%;
}
.box04 .fl-box{
    justify-content: center;
}
.box04 .imgs-list{
    gap: 50px;
    margin: 50px auto 50px;
    max-width: 850px;
}
.box04 .imgs-list .img{
   width: calc(100% / 2 - 50px);
}
.access-box .access-headline {
    font-size: 2rem;
    color: #ea002a;
    font-weight: bold;
}
.access-box .address {
    margin-top:20px;
    font-size: 1.6rem;
    line-height: 2;
}
.access-box .map {
    margin-top:30px;
}
.access-box .map iframe{
    width: 100%;
    height: 340px;
}
.access-box .access {
    margin: 30px 0 40px;
}
.access-box .access p+p {
    margin-top: 20px;
}
.access-box .access p {
    font-size: 1.6rem;
    line-height: 2;
 }
 .access-box .access p span {
    font-weight:bold;
}
@media screen and (max-width: 768.9px) {
    .box01 .fl-box{
        gap:30px;
        flex-direction: column;
        margin-bottom:20px;
    }
    .box01 .fl-box .img-box img{
        width: 100%;
    }
    .box02 .service_1 ul li h3{
        font-size: 1.6rem;
    }
    .box03 .fl-box.imgs-list:not(:last-of-type){
        margin-bottom:20px;
    }
    .box03 .fl-box.imgs-list,
    .box04 .fl-box.imgs-list{
        gap:20px;
        flex-wrap: wrap;
    }
    .box03 .fl-box.imgs-list .img,
    .box04 .fl-box.imgs-list .img{
        width: calc(100% / 2 - 10px);
    }
    .box04 .imgs-list{
        margin-top:30px;
    }
    .box04 .fl-box{
        justify-content:flex-start;
    }
    .box04 .fl-box.sp-col1{
        justify-content: center;
    }
    .box04 .fl-box.sp-col1 .img{
        width: 70%;
    }
    .access-box .map iframe {
        width: 100%;
        height: 220px;
    }
    .access-box .access-headline {
        font-size: 1.6rem;
        color: #ea002a;
        font-weight: bold;
        line-height: 1.4;
    }
    .access-box .address {
        margin-top: 20px;
        font-size: 1.4rem;
        line-height: 2;
    }
    .access-box .access p {
        font-size: 1.4rem;
        line-height: 2;
    }
    .access-box .access p+p {
        margin-top: 15px;
    }
}