@charset "UTF-8";


/* ここから、PCレスポンシブ */
@media(min-width:1000px){
    body{
        min-width: 1000px;
     }
/*共通*/
.container{
  width: 100%;
  background-color: black;
  color: white;
  font-family: serif;
 }
 .a{
  text-decoration: none;
  color: white;
  }   
/*共通ここまで*/
  
/*ヘッダー*/
 
 .header-logo img{
 margin-top: 60px;   
 margin-left: 40%;
 max-width: 270px;
 }  
 .header-list{
 display: flex;
 margin-top: 1%;
 margin-left: 7%;
 }
 .header-list ul{
  margin-top: 5%;
  margin-bottom: 5%;
 } 
 .header-list li{
  display: inline;
  font-family: serif;
  color: white;
  margin: 20px;
  }
 .header-list a{
  color: white;
  text-decoration: none;
  }
/*ヘッダーここまで*/

/*ハンバーガーのメニュー非表示*/
 .menu{
  display: none;
 }
/*ハンバーガーのメニュー非表示 ここまで*/

      .main{
      display: flex;
      justify-content: center;
     }
     .main1{
      width: 50%;
      }
     .main1 img{
      width: 100%;
      margin-left: 50px;
      margin-top: 200px;
     }
      .main2{
      width: 50%;
     }

      .main2 h1{
      margin-top: 95px;
      margin-bottom: 70px;
      margin-right: 70px;
      text-align: center;
      }
      .main2 p{
        margin-left: 120px;
        margin-right: 150px;
        font-size: 18px;
       }
      .main2-1{
        display: none;
      }
      .kikai{
       margin-top: 120px;
       font-size: 20px;
       text-align: center;
      }
      .kikai1{
      margin-top: 120px;
      font-size: 20px;
      text-align: center;
      }
     .jyuurai{
      display: flex;
      margin-top: 100px;
      }
      .jyuurai1 img{
      margin-left: 290px;
      margin-right: 100px;
     }
     .genzai{
      display: flex;
      justify-content: space-between;
      margin: 100px 50px;
      }
      .genzai1{
      width: 25%;
      }
      .genzai2{
        width: 25%;
      }
      .genzai3{
        width: 25%;
      }
      .genzai4{
        width: 25%;
      }
      .genzai1 img{
       max-width: 70%;
       padding-left: 15%;
       padding-right: 15%; 
      }
      .genzai2 img{
      max-width: 70%;
      padding-left: 15%;
      padding-right: 15%;
      }
      .genzai3 img{
      max-width:70%;
      padding-left: 15%;
      padding-right: 15%;
      }
      .genzai4 img{
      max-width: 70%;
      padding-left: 15%;
      padding-right: 15%; 
       }
      .korekara{
      margin-left: 150px;
      margin-right: 100px;
      padding-bottom: 100px;
      text-align: center;
      font-size: 18px;
      } 
      .korekara1{
        display: none;
      } 
  /***追従するトップへ戻るボタン***/
#page-top {
  position: fixed;
  right: 5px;
  bottom: 20px;
  height: 50px;
  text-decoration: none;
  font-weight: bold;
  transform: rotate(90deg);
  font-size: 90%;
  line-height: 1.5rem;
  color: #FFFFFF;
  padding: 0 0 0 35px;
  border-top: solid 1px;
}
#page-top::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 0px;
  width: 15px;
  border-top: solid 1px;
  transform: rotate(35deg);
  transform-origin: left top;
}
/***トップへ戻るボタンここまで***/
         
}



/* ここから、タブレットレスポンシブ*/  
@media (min-width:601px) and (max-width:999px) {
  body{
      min-width: 601px;
      max-width: 999px;
      margin: 0 auto;
  }
/*共通*/ 
.container{
  width: 100%;
  background-color: black;
  color: white;
  font-family: serif;
 }
.a{
   text-decoration: none;
   color: white;
  }
  .menu li img{
   height: 100%;
   margin-top: 200px;
   }
   .header-logo img{ 
    max-width: 50%;
    margin-left: 20%;
    }
   .header-list{
     display: none;
   }       
/*共通ここまで*/

    .main1 img{
    margin-top: 10%; 
    width: 85%;
    }
    h1{
     margin-top: 30px;
    margin-bottom: 70px;
    text-align: center;
    }
    .main2{
      display: none;
    }
    .main2-1{
      margin-left: 10%;
      margin-right: 10%; 
    }
    .main2-1 p{
    max-width: 70%;
    margin-left: 20%;
    margin-right: 10%;
    font-size: 1.2em;
    line-height: 35px; 
    }
.kikai{
 margin-top: 120px;
 font-size: 20px;
 text-align: center;
}
.kikai1{
margin-top: 120px;
font-size: 20px;
text-align: center;
}
.jyuurai{
display: flex;
justify-content: space-between;
margin-top: 100px;
margin-bottom: 100px;
margin-left: 5%;
margin-right: 5%;
}
.jyuurai1{
  width: 50%;
}
.jyuurai2{
  width: 50%;
}
.jyuurai1 img{
  max-width: 90%;
  padding-left: 5%;
  padding-right: 5%;
}
.jyuurai2 img{
  max-width: 90%;
  padding-left: 5%;
  padding-right: 5%;
}
.genzai{
  display: flex;
  justify-content: space-between;
  margin: 100px 5%;
  }
  .genzai1{
  width: 25%;
  }
  .genzai2{
    width: 25%;
  }
  .genzai3{
    width: 25%;
  }
  .genzai4{
    width: 25%;
  }
  .genzai1 img{
   max-width: 90%;
   padding-left: 5%;
   padding-right: 5%; 
  }
  .genzai2 img{
  max-width: 90%;
  padding-left: 5%;
  padding-right: 5%;
  }
  .genzai3 img{
  max-width:90%;
  padding-left: 5%;
  padding-right: 5%;
  }
  .genzai4 img{
  max-width: 90%;
  padding-left: 5%;
  padding-right: 5%; 
   }

.korekara{
padding-left: 10%;
padding-right: 10%;
padding-bottom: 15%;
line-height: 35px; 
font-size: 1.2em;
}
.korekara1{
  display: none;
}
.footer-list{
display: flex;
margin-left: 100px;
}
.footer-logo img{
margin-left: 115px;
max-width: 250px;
}
.footer-block{
display: flex;
}
.a{
text-decoration: none;
color: white;
}
.menu-btn{
position: fixed;
top: 20px;
right: 20px;
z-index: 2;
width: 40px;
height: 40px;
display: flex;
justify-content: center;
align-items: center;
background: #333;
color: #fff;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
::before , ::after {
box-sizing: inherit;
}
button {
margin: 0;
padding: 0;
outline: 0;
border: 0;
border-radius: 0;
background: transparent;
color: inherit;
vertical-align: middle;
text-align: inherit;
font: inherit;
-webkit-appearance: none;
appearance: none;
}
/**************** 以下、ハンバーガーボタンのスタイリング ****************/
.btn {
/* ボタンの配置位置  */
position: absolute;
top: 32px;
right: 16px;
/* 最前面に */
z-index: 10;
/* ボタンの大きさ  */
width: 48px;
height: 48px;
}
/***** 真ん中のバーガー線 *****/
.btn-line {
display: block;
/* バーガー線の位置基準として設定 */
position: relative;
/* 線の長さと高さ */
width: 100%;
height: 4px;
/* バーガー線の色 */
background-color: #d6d5d5;
transition: .2s;
}
/***** 上下のバーガー線 *****/
.btn-line::before , .btn-line::after {
content: "";
/* 基準線と同じ大きさと色 */
position: absolute;
width: 100%;
height: 100%;
background-color: #d6d5d5;
transition: .5s;
}
.btn-line::before {
/* 上の線の位置 */
transform: translateY(-16px);
}
.btn-line::after {
/* 下の線の位置 */
transform: translateY(16px);
}
/***** メニューオープン時 *****/
.btn-line.open {
/* 真ん中の線を透明に */
background-color: transparent;
}
.btn-line.open::before , .btn-line.open::after {
content: "";
background-color: #333;
transition: .2s;
}
.btn-line.open::before {
/* 上の線を傾ける */
transform: rotate(45deg);
}
.btn-line.open::after {
/* 上の線を傾ける */
transform: rotate(-45deg);
}
/**************** ここまで、ハンバーガーボタンのスタイリング ****************/
/**************** 以下、メニューのスタイリング ****************/
.menu {
/* メニューを縦に */
display: flex;
flex-direction: column;
position: fixed;
/* メニューの位置マイナス指定で画面外に */
right: -100%;
width: 100%;
height: 100vh;
background-color: gray;
color: #efefef;
transition: all 0.5s;
}
.menu-list {
/* メニューテキスト位置をリスト内中心に */
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 50%;
}
a{
  text-decoration: none;
  color: white;
}
.menu-list:hover {
background-color: rgba(255, 255, 255, .5);
color: #333;
cursor: pointer;
transition: .3s;
}
/***** メニューオープン時位置0にして画面内に *****/
.menu.open {
position: absolute;
right: 0;
}
 /***追従するトップへ戻るボタン***/
 #page-top {
  position: fixed;
  right: 5px;
  bottom: 20px;
  height: 50px;
  text-decoration: none;
  font-weight: bold;
  transform: rotate(90deg);
  font-size: 90%;
  line-height: 1.5rem;
  color: #FFFFFF;
  padding: 0 0 0 35px;
  border-top: solid 1px;
}
#page-top::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 0px;
  width: 15px;
  border-top: solid 1px;
  transform: rotate(35deg);
  transform-origin: left top;
}
/***トップへ戻るボタンここまで***/
  
}   
/* タブレットレスポンシブ ここまで*/





/* ここから、スマホレスポンシブ */


@media (max-width:600px) {
  body{
      max-width: 600px;
      margin: 0 auto;
  }
/*共通*/ 
.container{
  width: 100%;
  background-color: black;
  color: white;
  font-family: serif;
 }
.a{
   text-decoration: none;
   color: white;
  }
  .menu li img{
   height: 100%;
   margin-top: 200px;
   }
   .header-logo img{ 
    max-width: 80%;
    }
   .header-list{
     display: none;
   }       
/*共通ここまで*/
 
 .main1 img{
  margin-top: 50px; 
  max-width: 90%;
  margin-right: 5%;
  }
  
      .main2-1{
        margin-left: 5%;
        margin-right: 5%;
      }
      .main2-1 h1{
       margin-top: 22px;
       margin-bottom: 70px;
       text-align: center;
      }
    .main2-1 p{
      padding-left: 7%;
      padding-right: 5%;
      font-size: 16px;
      line-height: 35px;
    }
    .main2{
      display: none;
    }
      .kikai{
       margin-top: 15%;

       font-size: 18px;
       text-align: center;
      }
     .jyuurai{
      display: flex;
      justify-content: space-between;
      margin-top: 15%;
      margin-bottom: 15%;
      margin-left: 5%;
      margin-right: 5%;
      gap:2%;
     }
     .jyuurai1{
       width: 50%;
     } 
     .jyuurai2{
      width: 50%;
     } 
     .jyuurai1 img{
       max-width: 100%;
     }
     .jyuurai2 img{
      max-width: 100%;
    }
    .kikai1{
      margin-top: 50px;
      font-size: 15px;
      text-align: center;
     }  
.genzai{
    display: flex;
    justify-content: space-between;
    margin-top: 15%;
    margin-bottom: 15%;
    margin-left: 2%;
    margin-right: 2%;
    gap: 2%;
}
.genzai1,2,3,4{
    width: 25%;
}
.genzai1 img{
    max-width: 100%;
}
.genzai2 img{
    max-width: 100%;
}
.genzai3 img{
    max-width: 100%;
}
.genzai4 img{
    max-width: 100%;
}
.korekara1{
    margin-left: 5%;
    margin-right: 5%;
    padding-bottom: 25%;
}
.korekara1 p{
  padding-left: 7%;
  padding-right: 5%;
  font-size: 16px;
  line-height: 35px;
}
.korekara{
  display: none;
}
.menu-btn{
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 2;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #333;
    color: #fff;
   }
   * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  ::before , ::after {
    box-sizing: inherit;
  }
  button {
    margin: 0;
    padding: 0;
    outline: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    vertical-align: middle;
    text-align: inherit;
    font: inherit;
    -webkit-appearance: none;
    appearance: none;
  }
  /**************** 以下、ハンバーガーボタンのスタイリング ****************/
  .btn {
    /* ボタンの配置位置  */
    position: absolute;
    top: 32px;
    right: 16px;
    /* 最前面に */
    z-index: 10;
    /* ボタンの大きさ  */
    width: 48px;
    height: 48px;
  }
  /***** 真ん中のバーガー線 *****/
  .btn-line {
    display: block;
    /* バーガー線の位置基準として設定 */
    position: relative;
    /* 線の長さと高さ */
    width: 100%;
    height: 4px;
    /* バーガー線の色 */
    background-color: #d6d5d5;
    transition: .2s;
  }
  /***** 上下のバーガー線 *****/
  .btn-line::before , .btn-line::after {
    content: "";
    /* 基準線と同じ大きさと色 */
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #d6d5d5;
    transition: .5s;
  }
  .btn-line::before {
    /* 上の線の位置 */
    transform: translateY(-16px);
  }
  .btn-line::after {
    /* 下の線の位置 */
    transform: translateY(16px);
  }
  /***** メニューオープン時 *****/
  .btn-line.open {
    /* 真ん中の線を透明に */
    background-color: transparent;
  }
  .btn-line.open::before , .btn-line.open::after {
    content: "";
    background-color: #333;
    transition: .2s;
  }
  .btn-line.open::before {
    /* 上の線を傾ける */
    transform: rotate(45deg);
  }
  .btn-line.open::after {
    /* 上の線を傾ける */
    transform: rotate(-45deg);
  }
  /**************** ここまで、ハンバーガーボタンのスタイリング ****************/
  /**************** 以下、メニューのスタイリング ****************/
  .menu {
    /* メニューを縦に */
    display: flex;
    flex-direction: column;
    position: fixed;
    /* メニューの位置マイナス指定で画面外に */
    right: -100%;
    width: 100%;
    height: 100vh;
    background-color: gray;
    color: #efefef;
    transition: all 0.5s;
  }
  .menu-list {
    /* メニューテキスト位置をリスト内中心に */
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 50%;
  }
  a{
    text-decoration: none;
    color: white;
  }
  .menu-list:hover {
    background-color: rgba(255, 255, 255, .5);
    color: #333;
    cursor: pointer;
    transition: .3s;
  }
  /***** メニューオープン時位置0にして画面内に *****/
  .menu.open {
    position: absolute;
    right: 0;
  }
  /***追従するトップへ戻るボタン***/
#page-top {
  position: fixed;
  right: 5px;
  bottom: 20px;
  height: 50px;
  text-decoration: none;
  font-weight: bold;
  transform: rotate(90deg);
  font-size: 90%;
  line-height: 1.5rem;
  color: #FFFFFF;
  padding: 0 0 0 35px;
  border-top: solid 1px;
}
#page-top::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 0px;
  width: 15px;
  border-top: solid 1px;
  transform: rotate(35deg);
  transform-origin: left top;
}
/***トップへ戻るボタンここまで***/
   
}

  /* 1000px以上はハンバーガーボタン非表示、ヘッダー固定 */
  @media screen and (min-width: 1000px) {
    .btn {
      display: none;
    }
    .menu {
      display: none;
    }
  }
  /**************** ここまで、メニューのスタイリング ****************/
  

