@charset "utf-8";
/* CSS Document */

body{
  margin:0px;
  padding: 0px;
}

#wrap{
  position: relative;
  width: 100%;
     position: relative;
     height:auto !important; /*IE6対策*/
     height: 100%; /*IE6対策*/
     min-height: 100%;
}

.video_area{
  background-color: #000;
}

.video_area :hover{
  opacity: 0.8;
  transition: 1.0s
}

.title_area{
  padding: 0 1em 0 1em;
}
ul{padding: 0;}
ul li{
  list-style: none;
  padding: 0;
}

.text_area{
  text-align: justify;
  line-height: 1.75;
  font-size: 16px;

  padding: 1.0em;
}

.flex_container{
  background-color: #fff;
　display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
  /*両端揃え*/
  -webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;

  padding: 1.0em;
  margin: 0;
}

.behind a img{
  /*遅延効果*/
  transition: opacity 0.3s ease-out;
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    -ms-transition: opacity 0.3s ease-out;
}

.behind a:hover img{
  border-radius: 50%;
    transition: 800ms;
  /*透過効果*/
  opacity: 0.6;
    -webkit-opacity: 0.6;
    -moz-opacity: 0.6;
    filter: alpha(opacity=60);  /* IE lt 8 */
    -ms-filter: "alpha(opacity=60)"; /* IE 8 */
}


.flex_item{
  font-size:0;/*テキストノード対策*/
  line-height:0;/*テキストノード対策*/
}

.flex_item img{
  width: 32.75%;/*6カラム*/
  display:inline-block;/*テキストノード対策*/
  padding: 1px;
}
 





/*h1,h2,h3,h4,h5,h6{font-family: Futura,Trebuchet MS,Arial,sans-serif;}*/


h1{
font-weight: 600;
text-align: left;
}
h2{}
h3{}
h4{}
h5{}

  #footer01{
    width: 100%;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
  }


@media screen and (min-width: 350px){
  .container{
    width: 350px;
    margin: 0 auto;
    margin-bottom: 72px;
  }

  .title_area h1{
    font-size: 20px !important;
    padding: 0;
  }

  .title_area h2{
    font-size: 16px !important;
    padding: 0 !important;
  }

  .flex_item{
    font-size:0;/*テキストノード対策*/
    line-height:0;/*テキストノード対策*/
  }

  .flex_item img{
    width: 32.74%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_item_2 img{
    width: 100%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_container{
    padding: 0;
  }

  .flex_container ul .behind{
    padding: 0;
    width:100%;
    list-style: none;
    border: 1px solid white;
    box-sizing: border-box;
  }



  .flex_container ul{
    padding: 0;
    display:flex;
    flex-wrap:wrap;
    width:100%;
  }

  .flex_container .areabox{
    border-left: 5px solid #f1f1f1;
    padding-left:16px;
  }

  .flex_container ul li img{width: 100%; margin-top: auto;}

  .flex_container ul .area_1{
    padding: 0;
    width:100%;
  }

  .flex_container ul .area_2{
    padding: 0;
    width:50%;
  }

  .flex_container ul .area_3{
    padding: 0;
    width:50%;
  }

  .flex_container ul .area_4{
    padding: 0;
    margin-left: 43px;
    width:64%;
    transform: rotate( -93deg );
  }

}



@media screen and (min-width: 480px){
  .title_area h1{
    font-size: 26px !important;
    padding: 0;
  }

  .title_area h2{
    font-size: 24px !important;
    padding: 0 !important;
  }

  .container{
    width: 470px;
    margin: 0 auto;
    margin-bottom: 72px;
  }

  .title_area h1{
    font-size: 20px;
    padding: 0;
  }

  .title_area h2{
    padding: 0;
  }

}


@media screen and (min-width:768px){


  .container{
    width: 720px;
    margin-bottom: 72px;
  }

  .flex_item{
    font-size:0;/*テキストノード対策*/
    line-height:0;/*テキストノード対策*/
  }

  .flex_item img{
    width: 32.74%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_item_2 img{
    width: 100%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_container{
    padding: 0;
  }

  .flex_container ul .behind{
    padding: 0;
    width:100%;
    list-style: none;
    border: 1px solid white;
    box-sizing: border-box;
  }



  .flex_container ul{
    padding: 0;
    display:flex;
    flex-wrap:wrap;
    width:100%;
  }

  .flex_container .areabox{
    border-left: 5px solid #f1f1f1;
    padding-left:16px;
  }

  .flex_container ul li img{width: 100%; margin-top: auto;}

  .flex_container ul .area_1{
    padding: 0;
    width:33%;

  }

  .flex_container ul .area_2{
    padding: 0;
    width:33%;
  }

  .flex_container ul .area_3{
    padding: 0;
    width:33%;
  }

  .flex_container ul .area_4{
    padding: 0;
    width:100%;
    margin-left: 100px
    transform: rotate( -93deg );
   } 

  .flex_container ul .area_4 img{
    width: 60%;
  }

}


@media screen and (min-width:1024px){
  .container{
    width: 940px;
    margin: 0 auto;
    margin-bottom: 72px;
  }

  .flex_item{
    font-size:0;/*テキストノード対策*/
    line-height:0;/*テキストノード対策*/
  }

  .flex_item img{
    width: 16.444%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_item_2 img{
    width: 50%;/*6カラム*/
    display:inline-block;/*テキストノード対策*/
    padding: 1px;
  }

  .flex_container{
    padding: 0;
  }

  .flex_container ul .behind{
    padding: 0;
    width:50%;
    list-style: none;
    border: 1px solid white;
    box-sizing: border-box;
  }





  .flex_container ul{
    padding: 0;
    display:flex;
    flex-wrap:wrap;
    width:100%;
  }

  .flex_container .areabox{
    border-left: 5px solid #f1f1f1;
    padding-left:16px;
  }

  .flex_container ul li img{width: 100%; margin-top: auto;}

  .flex_container ul .area_1{
    padding: 0;
    width:25%;
  }

  .flex_container ul .area_2{
    padding: 0;
    width:20%;
  }

  .flex_container ul .area_3{
    padding: 0;
    width:20%;
  }

  .flex_container ul .area_4{
    padding: 0;
    width:35%;
    margin-top: auto;/*下揃え*/
    margin-left: 0px;
    transform: rotate( 0deg );
  }

  #footer01 .nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px 0;
  }
  #footer01 .nav a:hover {
    color: #ccc;
  }

  .copyright{
    font-size: 12px;
  }

}




 
#footer01 {
  position: relative;
  background: #f1f1f1;
}
 
#footer01 .logo {
  text-align: center;
  padding: 0;
  border-bottom: 1px solid #e1e1e1;
}
 
#footer01 .logo a {
  display: inline-block;
}
 
#footer01 .logo img {
  width: 200px;
}
 
#footer01 .nav a {
  display: block;
  padding: 0 50px;
  color: #a1a1a1;
  text-decoration: none;
}

.copyright{
  text-align: center;
  margin: 0;
}



 














