@charset "UTF-8";

body{}


/*----------------------------------------------------

◆　メインビジュアル

----------------------------------------------------*/

section#mv{width:100%;background: url(../images/mv.jpg)center center no-repeat;background-size: cover;}
.mv_ctn{text-align: center;background-image: url(../images/mv_dot2.png);height: 860px;padding-top:240px;box-sizing: border-box;}
.mv_inner{max-width:900px;width: 90%;margin: 0 auto;}
.mv_inner h2{color: white;font-size: 50px;letter-spacing: 0.05rem;font-weight:bold;text-shadow: 2px 3px 3px rgba(0,0,0,0.8);}
.ikiru{color: white;font-size: 50px;letter-spacing: 0.05rem;font-weight:bold;text-shadow: 2px 3px 3px rgba(0,0,0,0.8);margin-bottom:30px;}

@media(max-width: 960px){
    .mv_inner h2{font-size: 40px;}
    .ikiru{font-size: 40px;}
}
p.mv_txt_en{color:yellow;text-align: center;margin-top:10px;letter-spacing: 0.2rem;font-weight: bold;text-shadow: 2px 2px 2px rgba(0,0,0,0.6);}
p.mv_txt_jn{font-size: 18px;color:#fff;text-align: center;margin-top: 20px;margin-bottom: 50px;text-shadow: 2px 2px 2px rgba(0,0,0,0.6);line-height: 30px;letter-spacing: 0.05rem;}
@media(max-width: 768px){
    .mv_ctn{height: 620px;padding-top: 110px;}
    .mv_inner h2{font-size: 22px;}
    .ikiru{font-size: 25px;margin-bottom: 20px;}
    p.mv_txt_en{font-size: 13px;}
    p.mv_txt_jn{font-size: 14px;letter-spacing: 0rem;line-height: 24px;margin-bottom: 30px;}
}

section#sec_02{width:100%;background: #eee;padding:60px 0;}
.sec_02_inner{max-width: 900px;width: 90%;margin: 0 auto;display: flex;justify-content: space-between;}
.sec_02_inner h3{width: 300px;font-size: 36px;}
.sec_02_inner p{width:calc(100% - 300px);}
@media(max-width: 768px){
    section#sec_02{padding:50px 0;}
    .sec_02_inner{display: block;}
    .sec_02_inner h3{width: 100%;font-size: 30px;text-align: center;}
    .sec_02_inner p{width:100%;margin-top: 10px;}
}

section#sec_03{width:100%;background: url(../images/top_catch.jpg)0 center no-repeat;background-size: cover;background-attachment: fixed;}
.sec_03_ctn{text-align: center;background-image: url(../images/mv_dot_wh.png);}
.overlay_wh{background: rgba(255, 255, 255, 0.5);}
.sec_03_box{padding:100px 0;width:90%;max-width: 800px;margin: 0 auto;}
.sec_03_box h3{font-size: 40px;font-weight: bold;}
.sec_03_p{font-size: 16px;font-weight: bold;margin-top: 30px;text-align: left;}
.sec_03_btn{float: right;}
@media(max-width: 768px){
    .sec_03_box{padding:60px 0;}
    .sec_03_box h3{font-size: 24px;}
    .sec_03_p{font-size: 14px;}
    .sec_03_btn{float: none;}
}

section#sec_04{width:100%;background: #eee;;background: url(../images/top_our.jpg)0 0 no-repeat;background-size: cover;}
.sec_04_ctn{padding:100px 0 ;text-align: center;background-image: url(../images/mv_dot2.png);}
.overlay_bk{background: rgba(0, 0, 0, 0.7);}
.flex_3_ctn{max-width:1100px;width:90%;margin: 0 auto;display: flex;justify-content: space-between;}
.flex_3_box{width: calc(100% / 3 - 30px);margin-top: 30px;color: #fff;}
.flex_3_box h4{margin-top: 10px;font-size: 18px;font-weight: bold;}
.flex_3_box p{font-size: 15px;margin-top: 1px;color:#fff;text-align: left;}
.flex_3_img{height: 230px;}
#flex_3_img_1{background: url(../images/our_1.jpg)center center no-repeat;background-size: cover;}
#flex_3_img_2{background: url(../images/our_2.jpg)center center no-repeat;background-size: cover;}
#flex_3_img_3{background: url(../images/our_3.jpg)center center no-repeat;background-size: cover;}
@media (max-width: 768px) {
    .sec_04_ctn{padding:40px 0 60px;}
    .flex_3_ctn {display: block;}
    .flex_3_box {width:100%;}
    .flex_3_box h4{margin-top: 10px;font-size: 16px;font-weight: bold;}
    .flex_3_box p{font-size: 14px;}
    .flex_3_img{height: 180px;}
}

.sec_05_ttl{width: 100%;height: 120px;background:#ba0404;text-align: center; }
.sec_05_ttl p{font-size:80px;font-weight: bold;color:#ba8080;line-height: 119px;letter-spacing: 0.2rem; }
section#sec_05{width:100%;background: #ccc;padding:80px 0 100px;}
.flex_2_ctn{max-width:1100px;width:90%;margin: 0 auto;display: flex;justify-content: space-between;flex-wrap: wrap;}
.flex_2_box{width: calc(100% / 2 - 25px);background: #000;margin-bottom: 50px;}
.flex_2_box h4{color: #fff;text-align: center;font-size: 18px;padding: 10px 0;letter-spacing: 0.05em;}
.flex_2_img{height: 220px;}
#flex_2_img_1{background: url(../images/service_img_01.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_2{background: url(../images/service_img_02.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_3{background: url(../images/service_img_03.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_4{background: url(../images/service_img_04.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_5{background: url(../images/service_img_05.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_6{background: url(../images/service_img_06.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_7{background: url(../images/service_img_07.jpg)0 0 no-repeat;background-size: cover;}
#flex_2_img_8{background: url(../images/service_img_08.jpg)center center no-repeat;background-size: cover;}
@media (max-width: 768px) {
    .sec_05_ttl{height: 60px;}
    .sec_05_ttl p{font-size:40px;font-weight: bold;color:#ba8080;line-height: 60px;letter-spacing: 0.1rem; }
    section#sec_05{padding:40px 0 40px;}
    .flex_2_img{height: 170px;}
    .flex_2_ctn {display: block;}
    .flex_2_box {width:100%;margin-bottom: 30px;}
    .flex_2_box h4{font-size: 16px;}
}

section#sec_06{width:100%;background: url(../images/top_contact.jpg)0 0 no-repeat;background-size: cover;}
.sec_06_ctn{padding:100px 0 ;text-align: center;background-image: url(../images/mv_dot2.png);}
.here{font-size: 20px;color: #fff;font-weight: bold;text-shadow:2px 2px 2px rgba(0,0,0,0.8);}
.phone_number{font-size: 60px;color: #fff;font-weight: bold;text-shadow:2px 2px 2px rgba(0,0,0,0.8);}
.time{font-size: 20px;color: #fff;font-weight: bold;text-shadow:2px 2px 2px rgba(0,0,0,0.8);}
@media (max-width: 768px) {
    .sec_06_ctn{padding: 60px 0;}
    .here{font-size: 14px;}
    .phone_number{font-size: 35px;}
    .time{font-size: 14px;}
}


/* top_btn
-----------------------------------------------------------*/
    .top_btn_wide p{color: #fff;}    
    .top_btn_wide {
        margin: 0;
        border: 0;
        position: relative;
        top: 50%;
        left: 50%;
        margin-left: -200px;
        width: 400px;
        height: 56px;
        color: #eee;
        text-align: center;
        box-shadow: 3px 4px 7px rgba(0,0,0,0.2) ;
        margin-top: 30px;    
    }
      @media(max-width: 768px){ 
        .top_btn_wide {
            width: 90%;
            margin-left: -45%;
        }
      }
    .top_btn_wide:hover {
        cursor: pointer;
    }
    .btn_slide_in_wide {
        overflow: hidden;
    }

    .btn_slide_in_wide div {
        position: absolute;
        text-align: center;
        width: 100%;
        height: 80px;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        padding: 10px;
    }

    .btn_slide_in_wide div:nth-child(1) {
        color: #fff;
        background: #ba0404;
    }

    .btn_slide_in_wide div:nth-child(2) {
        background: #000;
        transition: left 0.3s ease;
        -webkit-transition: left 0.3s ease;
        -moz-transition: left 0.3s ease;
        left: -400px;
    }
      @media(max-width: 768px){ 
        .btn_slide_in_wide div:nth-child(2) {
            left: -100%;
        }
      }

    .btn_slide_in_wide div:nth-child(3) {
        color: #ffffff;
        transition: opacity 0.3s ease;
        -webkit-transition: opacity 0.3s ease;
        -moz-transition: opacity 0.3s ease;
        opacity: 0;
    }

    .btn_slide_in_wide:hover div:nth-child(2) {
        left: 0px;
        transition: left 0.3s ease;
        -webkit-transition: left 0.3s ease;
        -moz-transition: left 0.3s ease;
    }
    .btn_slide_in_wide:hover div:nth-child(3) {
        opacity: 1;
        transition: opacity 0.3s ease;
        -webkit-transition: opacity 0.3s ease;
        -moz-transition: opacity 0.3s ease;
    }

    .top_btn p{color: #fff;}
    .top_btn {
        margin: 0;
        border: 0;
        position: relative;
        margin-left: -130px;
        width: 260px;
        height: 50px;
        text-align: center;
        box-shadow: 3px 4px 7px rgba(0,0,0,0.2) ;
        margin-top: 20px;
    }
    @media(max-width: 768px){ 
        .top_btn {
            width: 100%;
            margin: 0 auto;
            margin-left: 0;
            margin-top: 30px;
        }
      }
    .top_btn:hover {
        cursor: pointer;
    }

    /* ### ### ### 02 */
    .btn_slide_in {
        overflow: hidden;
    }

    .btn_slide_in div {
        position: absolute;
        text-align: center;
        width: 100%;
        height: 80px;
        box-sizing: border-box;
        padding: 6px 0;
    }
    @media(max-width: 768px){
     .btn_slide_in div {
            padding: 8px 0;
        }
    }
    .btn_slide_in div:nth-child(1) {
        color: #fff;
        background: #ba0404;
    }

    .btn_slide_in div:nth-child(2) {
        background: #000;
        transition: left 0.3s ease;
        left: -260px;
    }
    @media(max-width: 768px){ 
        .btn_slide_in div:nth-child(2) {
            left: -100%;
        }
      }
    .btn_slide_in div:nth-child(3) {
        color: #ffffff;
        transition: opacity 0.3s ease;
        opacity: 0;
    }
    .btn_slide_in:hover div:nth-child(2) {
        left: 0px;
        transition: left 0.3s ease;
    }
    .btn_slide_in:hover div:nth-child(3) {
        opacity: 1;
        transition: opacity 0.3s ease;
    }
    .btn_subtxt{
      font-family: 'Cantarell', sans-serif;
      font-size: 10px;
      letter-spacing: 0.1em;
      margin-top: -2px;
    }
