/* -------------------共通部分------------------- */
body{
    margin: 0;
    padding: 0;
}

#wrapper{
    display:block;
    width: 99vw;
    max-width: 2000px;
    margin: 0 auto; 
    padding: 0;
    box-sizing: border-box;
    background-color: #ffffff;
    font-size: 62.5%;
    line-height: 1.5;
    color: #000000;
    /* overflow-y:scroll; */
    font-family:'Noto Sans JP','Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
    }
    

    
    image{
    max-width: 100%;
    }
    
    #logo{
      
    }
    
    a{
      text-decoration: none;

    }
    
    a:link, a:visited, a:hover, a:active {
        color: #ffffff;
      }
    
    ul{
      width: 1000px;
    }
    
    #header_menu li{
      margin-right: 0px;
      margin-left: 60px;
    }


    li{
      list-style: none;
    }

    .hamburger-menu{
        display: none;
    }

       .title_decoration{
        width: 450px;
        margin: 0 auto;
        padding: 5px 0; 
        border-radius: 10px;
}
.title{
    font-size: 30px;
    margin-top: 0px;
    margin-bottom: 5px;
    letter-spacing: 0.22em;
    text-align: center;
    font-family: "MS Pゴシック" ;
    font-weight: bold;
   }



    .subtitle{
        font-size: 20px;
        margin-top: 0px;
        text-align: center;
        letter-spacing: 0.22em;
        margin-bottom: 35px;
        font-family: "MS Pゴシック" ;
        font-weight: bold;
    }

    .text{
        font-size: 16px;
        letter-spacing: 0.22em;
    }
  

    .flex{
        display: flex;
    }

    .space-between{
        justify-content: space-between;
   }
    

    .space-around{
        justify-content: space-around;
   }

   .row-reverse{
    flex-direction: row-reverse;
   }

   .parent {
    /*親要素はrelativeに*/
    position: relative;
  }

    .center{
        text-align: center;
    }

    .left{
        text-align: left;
    }
    .right{
        text-align: right;
    }




    
   

  
  

.bgc_navy{
    background-color: #111936;
    }

    .bgc_blue{
        background-color: #1d2088;
        }

        .bgc_gray{
            background-color: #efefef;
        }

    .c_white{
        color: #ffffff;
    }
    .c_gray{
        color: #595757;
    }
    .c_blue{
        color:#00a0e9;
    }

    .v_line_right{
        border-right: solid #ffffff 1px;
        padding-right: 100px;
      }

 
    .v_line_bottom{    
    border-bottom: 1px solid #595757;
    }
    
        .img{
            width: 100%;
            }
    /* -------------------header------------------- */
header{
    background-color: #000000;
}


.header_wrap{
    width: 90vw;
    margin: 0 auto;
}

    
    
    .header_logo{
        width: 180px;
        float: right;
        padding-top: 10px;
        margin-bottom: 10px;
    }


    .header_r{
        margin-top: 90px;
    }

    .header_r .text{
        float: right;
        color: #ffffff;

    }
    .goldtext{
        margin-right: 20px;
        width: 400px;
    }

    header .gradation{
        font-size: 90px;
        font-family: "MS Pゴシック" ;
        margin-left: 30px;
    }

    header .balloon1{
        font-size: 20px;
        font-family: "MS Pゴシック" ;
        font-weight: bold;
        margin-left: 30px;
    }
/* ----グラデーション--- */
    .gradation{
        font-weight: bold;
        color: #ffffff;
        background: #9E9E9E;
        background: linear-gradient(to right, #9E9E9E 0%, #DBDBDB 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        letter-spacing: 0.18em;
    }
/* ----吹き出し--- */
    .balloon1 {
        position: relative;
        display: inline-block;
        margin: 1.0em 0;
        padding: 1px 60px;
        min-width: 120px;
        max-width: 100%;
        color: #000000;
        background: #ffffff;
        border-radius: 15px;
      }
      
      .balloon1:before {
        content: "";
        position: absolute;
        top: 80%;
        left: 50%;
        margin-left: -15px;
        border: 15px solid transparent;
        border-top: 15px solid #ffffff;
      }
      
      .balloon1 p {
        margin: 0;
        padding: 0 0;
      }
 /* -------------------main------------------- */
   .main{
    width: 850px;
    margin: 0 auto;
   }
    /* -------------------mainview------------------- */
    .mainview{
        display:block;
        box-sizing:border-box;
        width: 100%;
        margin: 0 auto;
    }

    .mainview_l{
        width: 100%;
        margin: 0 auto;
    }

    .video{
        width: 100%;
        margin: 0 auto;
    }
  /* -------------------catchcopy------------------- */
  .catchcopy{
    position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top:100px;
  }

  .catchcopy_title{
    text-align: center;
    font-size: 45px;
    color: #e60012;
    font-family: "MS Pゴシック" ;
    font-weight: bold;
    width: 800px;
    margin: 0 auto;
    margin-bottom: 30px;
}

.catchcopy_l{

}




.catchcopy .text{
    width: 600px;
    margin: 0 auto;
    position: relative;
    z-index: 3;
}
/* ------------------overview-------------------- */
.overview{
    background-image: url(../image/overview_背景.png);
    background-repeat: no-repeat;
    width: 100%;
    margin-bottom: 200px;
}
.overview_l{
    width: 800px;
    margin: 0 auto;
    padding-top: 170px;
    padding-bottom: 140px;
}

.overview .title{

}

.overview2{
    position: absolute;
    top: 0px;
    right: 0;
    width: 450px;
}
/* ------------------strong-------------------- */
.strong{
    background-image: url(../image/弊社の強み.png);
    background-size: 300px;
    background-position: 50% 80%;
    background-repeat: no-repeat;
    width: 1300px;
    margin-bottom: 200px;
    margin: 0 auto;
    margin-bottom: 200px;
}

.strong_box{
    width: 400px;
    border-radius: 10px;
    padding: 10px;
    margin: 0 auto;
    background-color:#005bac;
    color:#ffffff;
    font-size: 16px;
    letter-spacing: 0.18em;
}

.strong_box_1{
margin-bottom: 200px;
}
/* ------------------sales-------------------- */
.sales{
    margin-bottom: 200px;
}

.sales1{
    width: 800px;
    margin: 0 auto;
    margin-top: 50px;
}

/* ------------------aboutus-------------------- */
.aboutus_l{
    background-image: url(../image/事業所_背景.png);
    background-repeat: no-repeat;
    background-size: 99vw;
    width: 100%;
    margin-bottom: 200px;
    height: 1300px;
}

.aboutus{
    
}

.aboutus1{
    width: 60vw;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top:300px;
}

/* -----------------history-------------------- */
.history{
    margin-bottom: 200px;
}

.history_l{
}

table{
    width: 800px;
    margin: 0 auto;
    font-size: 16px;
}

tr{
}

th{
    width: 13%;
    border-right: 1px solid #595757;
    text-align: center;
    font-weight: 100;
    letter-spacing: 0.18em;
}
td{
    width: 87%;
    padding-top: 5px;
    padding-bottom: 5px;
}
.history1{
    width: 100px;
    position: absolute;
    top: 290px;
    left: 690px;
}
.history2{
    width: 150px;
    position: absolute;
    top: 730px;
    left: 670px;
}
.history3{
    width: 180px;
    position: absolute;
    top: 1050px;
    left: 670px;
}

.history4{
    width: 200px;
    position: absolute;
    top: 1400px;
    left: 610px;
}
/* -----------------solution-------------------- */
.solution1{
    width: 100%;
    margin-bottom: 200px;
    margin-top: 50px;

}
/* -----------------product-------------------- */
.product{
    margin-bottom: 200px;
}

.product .flex{
    margin-bottom: 200px;
}
.product1,.product2{
    width: 40%;
}
.product_box{
    width: 50%;
    padding-left: 10px;
}

.product_title{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 30px;
}

.product_text{
    font-size: 16px;
}
.product3{
    width: 95%;
    margin-top: 40px;
}
/* -----------------customer-------------------- */
.customer{
    margin-bottom: 200px;
}
.customer .flex{
    margin-bottom: 50px;
}
.customer1,.customer2{
    width: 60%;
}

.customer_title{
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    border-bottom: #000000 solid 3px;
    width: 480px;
    margin: 0 auto;
    margin-bottom: 40px;
}
.customer_text{
    width: 35%;
    font-size: 16px;
    margin-top: 10px;

}
/* -----------------info-------------------- */
.info{
    margin-bottom: 200px;
}

.info_title{
    font-size: 30px;
    background-color: #000000;
    color: #ffffff;
    width: 600px;
    margin: 0 auto;
    padding: 10px 0;
    margin-bottom: 30px;
    text-align: center;
    border-radius: 10px;
    font-family: "MS Pゴシック" ;
    font-weight: bold;
    letter-spacing: 0.18em;
}

.info_warning{
    font-size: 16px;
    text-align: center;
    color: red;
}
.form{
    width: 800px;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 100px;
    font-size: 16px;
}

.info table{
    
}
table{
    width: 800px;
    margin: 0 auto;
    font-size: 16px;
}

.info tr{
}

.info th{
    width: 40%;
    border-right: 0px solid #595757;
    font-weight: 100;
    text-align: left;
    letter-spacing: 0.18em;
    vertical-align: top; 
}
.info td{
    width: 55%;
    padding-bottom: 50px;
}

.info textarea{
    width: 100%;
    height: 200px;
    background-color: #efefef;
    border: 0px;
}

.txt{
    width: 80%;
    height:40px;
}

    input {
        background-color: #efefef;
        border: 0px;
        }

        .button_l{
            width: 380px;
            margin: 0 auto;
        }

        #submit{
            width: 45%;
            height: 80px;
            background-color: #1d2088;
            color: #ffffff;
            border-radius: 10px;
        }
        
        .reset{
            width: 45%;
            height: 80px;
            border: 0px;
            border-radius: 10px;
        }

        .company{
            font-size: 25px;
            font-weight: bold;
            color: #727171;
            margin-bottom: 20px;
        }

        .address{
            font-size: 16px;
            color: #727171;
            letter-spacing: 0.22em;
            margin-bottom: 10px;
                }

                .tell{
                    font-size: 20px;
                    color: #1d2088;
                    font-weight: bold;

                }

                .inquiry{
                    width: 700px;
                    margin: 0 auto;
                    margin-top: 50px;
                }

                .info1{
                    width: 300px;
                }

        
 /* -------------------footer------------------- */
footer{
    width: 99vw;
}

 .footer_sns_inner{
     width: 700px;
    margin: 0 auto;
     
 }   
 
 .footer_logo{
        width: 50px;
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .footer_menu_inner{
        width: 380px;
        margin: 0 auto;
    }
    .shop_text{
        font-size: 20px;
        text-align: center;
    }

    footer p{
        font-size: 18px;
        padding: 50px 0;
    }
/*-----------------------------confirm--------------------------*/
.confirm{
    width: 600px;
    background-color: #efefef;
    border-radius: 5px;
    margin: 0 auto;
}
.confirm .subtitle{
    margin-top: 100px;
    padding-top: 30px;
}

.confirm .text{
    margin-bottom: 80px;
    padding-bottom: 30px;
}

.return_l{
    width: 200px;
    margin: 0 auto;
}

.return{
    font-size: 16px;
    border: 0px;
    width: 100%;
    margin-bottom: 100px;
}
/*-------------------------------------------------ヘッダー代理店募集レスポンシブ------------------------------------------------------------------*/
/*-----------------------------1560px以下----------------------------*/
@media(max-width:1560px){

    header .gradation{
        font-size: 70px;
    }
}
    /*-----------------------------1400px以下----------------------------*/
@media(max-width:1400px){

    header .gradation{
        font-size: 40px;
    }

    /* ------------------strong-------------------- */
.strong{
    width: 100%;
}
}    /*-----------------------------1090px以下----------------------------*/
@media(max-width:1090px){

    header .gradation{
        font-size: 30px;
    }
}
        /*-----------------------------900px以下----------------------------*/
        @media(max-width:900px){

            /*----------------------------共通部分---------------------------*/
                    #wrapper{
                        width: 800px;
                        }



 /* -------------------header------------------- */

    .header_logo{
        width: 90px;
        float: right;
    }


    .header_r{
        display: block;
        margin-top: 20px;
        text-align: right;
    }

    .header_r .text{
        font-size: 10px;

    }
    .goldtext{
        margin-right: 20px;
        width: 250px;
    }

    header .gradation{
        font-size: 30px;
    }

    header .balloon1{
        font-size: 16px;
    }

 /* -------------------mainview------------------- */
    #top{
        width: 330px;
        position: absolute;
        top: 150px;
        left: 90px;
    }
    #top_text{
        font-size: 20px;
        color: #1d2088;
        font-weight: bold;
        letter-spacing : 0.10em;
        position: absolute;
        top: 220px;
        left: 480px;
    }

    .mainview{
        height: 400px;
        background-image: url(../image/mainview.jpg);
        background-repeat: no-repeat; 
        margin-bottom: 100px;
    }
    /* -------------------main------------------- */
    .main{
        width: 800px;
        margin: 0 auto;
       }
     /* -------------------catchcopy------------------- */
  .catchcopy{
    position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top:100px;
  }

  .catchcopy_title{
    font-size: 30px;
    width: 600px;
    margin: 0 auto;
    margin-bottom: 10px;
}

.catchcopy_l{

}




.catchcopy .text{
    width: 300px;
}
/* ------------------overview-------------------- */
.overview{
    width: 100%;
    margin-bottom: 150px;
}
.overview_l{
}

.overview .text{
    width: 600px;
    margin: 0 auto;

}

.overview2{
    position: absolute;
    top: 0px;
    right: 0;
    width: 290px;
}

/* ------------------strong-------------------- */
.strong{
    background-size: 400px;
    background-position: 50% 90%;
    width: 800px;
}

.strong_box{
    width: 300px;
}

.strong_box_1{
margin-bottom: 150px;
}
/* ------------------sales-------------------- */
.sales{
    margin-bottom: 150px;
}

.sales1{
    width: 100%;
    margin: 0 auto;
    margin-top: 50px;
}

.sales .text{
    width: 700px;
    margin: 0 auto;
}
/* ------------------aboutus-------------------- */
.aboutus_l{
    margin-bottom: 150px;
    height: 590px;
}

.aboutus{
    
}

.aboutus1{
    width: 80vw;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top:100px;
}


/* -----------------history-------------------- */
.history{
    margin-bottom: 150px;
}

.history_l{
}

table{
    width: 700px;
}


.history1{
    width: 100px;
    position: absolute;
    top: 320px;
    left: 650px;
}
.history2{
    width: 150px;
    position: absolute;
    top: 730px;
    left: 600px;
}
.history3{
    width: 180px;
    position: absolute;
    top: 1050px;
    left: 600px;
}

.history4{
    width: 200px;
    position: absolute;
    top: 1400px;
    left: 550px;
}

/* -----------------solution-------------------- */
.solution .text{
    width: 700px;
    margin: 0 auto;

}
/* -----------------product-------------------- */
.product{
    margin-bottom: 150px;
    margin: 0 auto;
}

.product .flex{
    margin-bottom: 100px;
}



.product3{
    margin-top: 30px;
}
/* -----------------info-------------------- */
.info{
    margin-bottom: 100px;
}

/* -------------------footer------------------- */


  
   }

                    
    /*-----------------------------420px以下----------------------------*/
    @media(max-width:420px){

/*----------------------------共通部分---------------------------*/
        #wrapper{
            width: 370px;
            margin: 0 auto;
            }
        
            .title{
                font-size: 25px;
               }
            
            
            
                .subtitle{
                    font-size: 18px;
                }


                .text{
                    font-size: 10px;
                }

            .title_decoration{
                width: 370px;
                margin: 0 auto;
                margin-bottom: 30px;
                padding: 5px 0; 
                border-radius: 10px;
                font-size: 18px;
        }

 /* -------------------main------------------- */
 .main{
    width: 370px;
    margin: 0 auto;
   }

 
  /* -------------------header------------------- */
  header{
}


.header_wrap{
}

    
    
    .header_logo{
        width: 100px;
        float: right;
        padding-top: 10px;
        margin-bottom: 10px;
    }


    .header_r{
        margin-top: 30px;
        width: 50%;
    }

    .goldtext{
        margin-right: 10px;
        width: 180px;
    }

    header .gradation{
        font-size: 20px;
        margin-left: 10px;
    }

    header .balloon1{
        font-size: 12px;
        margin-left: 5px;
    }

/* ----吹き出し--- */
    .balloon1 {
        padding: 1px 20px;
        min-width: 80px;
      }
        /* -------------------mainview------------------- */
      .mainview{
        height: 100px;
        background-image: url(../image/mainview.jpg);
        background-repeat: no-repeat; 
        margin-bottom: 110px;
    }
     /* -------------------catchcopy------------------- */
  .catchcopy{
    position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top:250px;
  }

  .catchcopy_title{
    text-align: center;
    font-size: 18px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 10px;
}

.catchcopy_l{
    width: 350px;
    margin: 0 auto;
}




.catchcopy .text{
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 3;
    font-size: 10px;
}
      /* -------------------------overview---------------------------- */
.overview{
    width: 100%;
    margin-top: 300px;
    margin-bottom: 100px;
}
.overview_l{
    width: 350px;
    margin: 0 auto;
    padding-top: 170px;
    padding-bottom: 50px;
}

.overview .title{

}

.overview2{
    position: absolute;
    top: 30px;
    right: 0;
    width: 200px;
}  

.overview .text{
    width: 350px;
    margin: 0 auto;
}

/* ------------------strong-------------------- */
.strong{
    background-image: url(../image/弊社の強み.png);
    background-size: 300px;
    background-position: 50% 15%;
    background-repeat: no-repeat;
    width: 370px;
    margin: 0 auto;
    margin-bottom: 100px;
}

.strong_box{
    width: 350px;
    border-radius: 10px;
    padding: 10px;
    margin: 0 auto;
    margin-bottom: 10px;
    background-color:#005bac;
    color:#ffffff;
    font-size: 10px;
    letter-spacing: 0.18em;
}

.strong_box_1{
    margin-top: 300px;
margin-bottom: 10px;
}
.strong .flex{
    display: block;
}

/* ------------------sales------------------- */
.sales{
    margin-bottom: 150px;
}

.sales1{
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
}

.sales .text{
    width: 350px;
    margin: 0 auto;
}
/* ------------------aboutus-------------------- */
.aboutus_l{
    width: 100%;
    height: 280px;
    margin-bottom: 0;
}

.aboutus{
    height: 400px;
    margin-bottom: 100px;
}
.aboutus1{
    width: 90vw;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top:50px;
}
/* -----------------history-------------------- */
.history{
    margin-bottom: 100px;
}

.history_l{
}

table{
    width: 370px;
    margin: 0 auto;
    font-size: 16px;
}

tr{
}

th{
    width: 13%;
    border-right: 1px solid #595757;
    text-align: center;
    font-weight: 100;
    letter-spacing: 0.18em;
}
td{
    width: 87%;
    padding-top: 5px;
    padding-bottom: 5px;
}
.history1{
    display: none;
}
.history2{
    display: none;
}
.history3{
    display: none;
}

.history4{
    width: 100px;
    position: absolute;
    top: 15px;
    left: 270px;
}

/* -----------------solution-------------------- */
.solution1{
    width: 370px;
    margin-bottom: 100px;
    margin-top: 50px;

}

.solution .text{
    width: 350px;
    margin: 0 auto;

}

/* -----------------product-------------------- */
.product{
    margin-bottom: 150px;
    margin: 0 auto;
}

.product .flex{
    margin-bottom: 50px;
    display: block;
}

.product3{
    margin-top: 30px;
}

.product1,.product2{
    width: 100%;
}
.product_box{
    width: 95%;
    margin: 0 auto;
    padding-left: 0px;
}

.product_text{
    font-size: 10px;
}

/* -----------------customer-------------------- */
.customer{
    margin-bottom: 100px;
}
.customer .flex{
    margin-bottom: 50px;
    display: block;
}
.customer1,.customer2{
    width: 100%;
}

.customer_title{
    font-size: 16px;
    width: 350px;
    margin: 0 auto;
    margin-bottom: 20px;
}
.customer_text{
    width: 100%;
    font-size: 10px;
    margin-top: 10px;

}

/* -----------------info-------------------- */
.info{
    margin-bottom: 100px;
}

.info_title{
    font-size: 20px;
    width: 360px;
    margin: 0 auto;
    padding: 10px 0;
    margin-bottom: 10px;
}

.info_warning{
    font-size: 16px;
    text-align: center;
    color: red;
}
.form{
    width: 370px;
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 100px;
    font-size: 16px;
}

.info table{
    
}
table{
    width: 360px;
    margin: 0 auto;
    font-size: 10px;
}

.info tr{
}

.info th{
    width: 100%;
}
.info td{
    width: 100%;
    padding-bottom: 50px;
}

.info textarea{
    width: 100%;
    height: 150px;
    background-color: #efefef;
    border: 0px;
}

.txt{
    width: 80%;
    height:30px;
}

        .button_l{
            width: 350px;
            margin: 0 auto;
        }

        #submit{
            width: 45%;
            height: 60px;
            background-color: #1d2088;
            color: #ffffff;
        }
        
        .reset{
            width: 45%;
            height: 60px;
            border: 0px;
        }

        .company{
            font-size: 20px;
            margin-bottom: 10px;
        }

        .address{
            font-size: 16px;
            letter-spacing: 0.15em;
            margin-bottom: 10px;
                }

                .tell{
                    font-size: 16px;

                }

                .info .flex{
                    display: block;           
            }
                .inquiry{
                    width: 370px;
                    margin: 0 auto;
                    margin-top: 50px;
                }
                .info1_l{
                    width: 280px;
                    margin: 0 auto;
                    margin-bottom: 30px;
                }

                .info1{
                    width: 100%;
                }
                .info table th, .info table td {
                    display: block;
                    width: 100%;
                    border-bottom: none;
                  }
/* -------------------footer------------------ */
footer{
    width: 370px;
}


.footer_sns_inner{
    width: 360px;
   margin: 0 auto;
    
}   
#content04 .shop_text{
    font-size: 10px;
    text-align: center;
    margin-bottom: 10px;
}
.footer_logo{
       width: 30px;
       margin-top: 30px;
       margin-bottom: 30px;
   }

   .footer_menu_inner{
       width: 360px;
       margin: 0 auto;
       display: block;
   }

   .footer_menu_inner p{
    padding-bottom: 10px;
    font-size: 16px;
}
.v_line_right{
    border-right: solid #ffffff 0px;
  }


  /*-----------------------------confirm--------------------------*/
.confirm{
    width: 350px;
    background-color: #efefef;
    border-radius: 5px;
    margin: 0 auto;
}
.confirm .subtitle{
    margin-top: 30px;
    padding-top: 30px;
    font-size: 16px;
}

.confirm .text{
    margin-bottom: 30px;
    padding-bottom: 30px;
}

.return_l{
    width: 200px;
    margin: 0 auto;
    margin-bottom: 10px;
}

.return{
    font-size: 16px;
    border: 0px;
    width: 100%;
    margin-bottom: 10px;
}
   }


    
 