@charset "UTF-8";

 /* MAIN TTL
 -------------------------------------------------------------------------------*/

 h3.index_main_ttl{
   letter-spacing: 0;
   font-size:8rem;
   line-height: 110%;
   text-align: left;
   margin:0 0 75px 0;
   padding:0;
 }

 h3.index_main_ttl:before{
	content:none;
}

 .index_main_txt{
   margin:0 0 -10px 0;
   padding:0;
 }



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

  h3.index_main_ttl{
    letter-spacing:-0.05em;
    font-size:46px;
    text-align: left;
    line-height:110%;
    margin:15px 0 0 0;
    padding:0;
  }
 
  .index_main_txt p{
    width:auto;
   text-align: left;
   font-size:15px;
   line-height:180%;
   margin:15px 0 0 0;
  }
 

 .index_main_txt{
  margin:0 0 -80px 0;
  padding:0;
}



 }


 /* CONTENTS
 -------------------------------------------------------------------------------*/
 .contents-box-w{
  width:100%;
  height:auto;
  overflow:hidden;
  margin:0px;
  padding:0;
  display: flex;
}


.contents-box-left01{
  width:61%;
  height:auto;
  overflow:hidden;
  padding:0px;
  margin:0;
  text-align:left;
  box-sizing:border-box;
}

.contents-box-w .contents-box-right01{
  width:39%;
  height:auto;
  overflow:hidden;
  padding:75px;
  margin:0;
  text-align:left;
  box-sizing:border-box;
  display: flex;
	align-items: center;
}


.contents-box-w-r{
  width:100%;
  height:auto;
  overflow:hidden;
  margin:0px;
  padding:0;
  display: flex;
  flex-direction:row-reverse;
}


.contents-box-left02{
  width:61%;
  height:auto;
  overflow:hidden;
  padding:0px;
  margin:0;
  text-align:left;
  box-sizing:border-box;
}

.contents-box-w-r .contents-box-right02{
  width:39%;
  height:auto;
  overflow:hidden;
  padding:75px;
  margin:0;
  text-align:left;
  box-sizing:border-box;
  display: flex;
	align-items: center;
}



h4.index_contents_ttl{
  font-size:50px;
  margin:0 0 30px 0;
  padding:0;
  letter-spacing: 0;
}

.index_contents_maintxt01{
  font-size:14px;
  line-height:180%;
}

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

  .index_contents_maintxt01{
    font-size:12px;
    line-height:180%;
  }

}

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

  .contents-box-w{
    width:100%;
    height:auto;
    overflow:hidden;
    margin:0px;
    padding:0;
    display: block;
  }
  
  
  .contents-box-left01{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:0px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
  }
  
  .contents-box-w .contents-box-right01{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:90px 45px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
    display: flex;
    align-items: center;
  }
  
  
  .contents-box-w-r{
    width:100%;
    height:auto;
    overflow:hidden;
    margin:0px;
    padding:0;
    display: block;
    flex-direction:row-reverse;
  }
  
  
  .contents-box-left02{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:0px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
  }
  
  .contents-box-w-r .contents-box-right02{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:90px 45px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
    display: flex;
    align-items: center;
  }
  
  
  
  h4.index_contents_ttl{
    letter-spacing: 0;
    font-size:40px;
    letter-spacing:-0.05em;
    margin:0 0 30px 0;
    padding:0;
  }
  
  .index_contents_maintxt01{
    font-size:14px;
    line-height:180%;
  }

}


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


  .contents-box-w{
    width:100%;
    height:auto;
    overflow:hidden;
    margin:0px;
    padding:0;
    display: block;
  }
  
  
  .contents-box-left01{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:0px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
  }
  
  .contents-box-w .contents-box-right01{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:60px 20px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
    display: flex;
    align-items: center;
  }
  
  
  .contents-box-w-r{
    width:100%;
    height:auto;
    overflow:hidden;
    margin:0px;
    padding:0;
    display: block;
    flex-direction:row-reverse;
  }
  
  
  .contents-box-left02{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:0px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
  }
  
  .contents-box-w-r .contents-box-right02{
    width:auto;
    height:auto;
    overflow:hidden;
    padding:60px 20px;
    margin:0;
    text-align:left;
    box-sizing:border-box;
    display: flex;
    align-items: center;
  }
  
  
  
  h4.index_contents_ttl{
    letter-spacing: 0;
    font-size:40px;
    letter-spacing:-0.05em;
    margin:0 0 30px 0;
    padding:0;
  }
  
  .index_contents_maintxt01{
    font-size:14px;
    line-height:180%;
  }
  

}



 /* BUTTON
 -------------------------------------------------------------------------------*/

ul.index_button{
  width:auto;
  height:auto;
  margin:30px 0 0 0;
  padding:0;
}

ul.index_button li{
  display: inline-block;
  margin:0 5px 0 0;
  padding:0;
}





.btn-a01 {
  margin:0;
  padding:5px 10px;
  background-color: #f8f8f8;
  color: #000000;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
  border-radius: 2px;        /* CSS3草案 */  
  -webkit-border-radius: 2px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 2px;   /* Firefox用 */  
  }
  .btn-a01:hover {
    color:#f8f8f8;
  background-color: #000000;
  }

.btn-a02 {
  margin:0;
  padding:6px 10px;
  background-color: #000000;
  color: #f8f8f8;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
  border-radius: 2px;        /* CSS3草案 */  
  -webkit-border-radius: 2px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 2px;   /* Firefox用 */  
  }
  .btn-a02:hover {
    color:#000000;
  background-color: #f8f8f8;
  }



  /* NEWS
  -------------------------------------------------------------------------------*/
  
  
    .flex_wrapper-box-th-w{
      clear:left;
      padding:0;
      margin:10px 0 0 0;
      display:flex;
      box-sizing:border-box;
    }
  
    .flex_wrapper-box-th{
      width:30%;
      height:auto;
      padding:0;
      margin:0 auto;
      text-align:left;
      display:flex;
  
    }
  
    .flex_wrapper-box-thm{
      width:70%;
      height:auto;
      padding:0;
      margin:-40px 0 0 0;
      text-align:center;
    }
  

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

  
      .flex_wrapper-box-th-w{
        clear:left;
        padding:0;
        margin:5px 0;
        display:block;
        box-sizing:border-box;

      }
    
      .flex_wrapper-box-th{
        width:auto;
        height:auto;
        padding:0;
        margin:0 auto;
        text-align:left;
        display:block;
    
      }
    
      .flex_wrapper-box-thm{
        width:auto;
        height:auto;
        padding:0;
        margin:0px 0 0 0;
        text-align:center;
        border-top:1px solid #cccccc;
      }


    }