 /*ナビゲーションバー*/
 * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

#wrapper {
    overflow: hidden;
  }
  

nav {
    display: flex;
    justify-content: space-around;
    align-items: center;
    min-height: 8vh;
    background-color: #ffffff;
}

.nav-links{
    display: flex;
    justify-content: space-around;
    width: 80%;
    transition: all 0.5s ease-in-out;
}

.nav-links :hover{
    color: #039be5;

}

.nav-links li{
    list-style: none;
}

.nav-links a{
    text-decoration: none;
    color: black;
    font-weight: bold;
   
}

.burger{
    display: none;
    cursor: pointer;
}

.burger div{
    width: 25px;
    height: 3px;
    background-color: rgb(0, 0, 0);
    margin: 5px;
    transition: all 0.5s ease-in-out;
}

.nav-active{
    transform: translateX(0%) !important;
}



@media screen and (max-width: 950px) {
    
    body{
        overflow-x: hidden;
    }
    
   .nav-links{
       position: absolute;
       z-index: 20;
       right: 0;
       height: 92vh;
       top: 8vh;
       background-color: #ffffff;
       flex-direction: column;
       align-items: center;
       width: 30%;
       transform: translateX(100%);
    }
    .nav-links li{
        opacity: 0;
    }

    .burger{
        display: block;
    }
}

@keyframes navLinksFade{
    0%{
        opacity: 0;
        transform: translateX(50px);
    }
    100%{
         opacity: 1;
    }

}

.toggle .line1{
    transform: rotate(-405deg) translate(-5px, 6px);
}
.toggle .line2{
    opacity: 0;
}
.toggle .line3{
    transform: rotate(45deg) translate(-5px, -6px);
} 

.syoukai{
    margin: 0 auto;
    text-align: left;
    width:80%;
    font-size: 20px;
    background-color: #fff;
}

.flex_test-box {
    background-color: #ffffff;     /* 背景色指定 */
    padding:  10px;             /* 余白指定 */
    height: auto;              /* 高さ指定 */
    align-items:stretch;        /* 縦の位置指定 */
    display: flex;/* フレックスボックスにする */
    flex-wrap: wrap;            /* 折り返し指定 */
    align-content:stretch; 
    justify-content:center;     /* 折り返し時の配置指定 */
}




.flex_test-item {
    color:  #ffffff;               /* 文字色 */
    margin:  60px;              /* 外側の余白 */
    border-radius:  5px;        /* 角丸指定 */
    font-size:  20px;           /* 文字サイズ */
    width: calc(45% - 50px);        /* 幅指定 */
    height: auto;
    text-align:  center;        /* 文字中央揃え */
   
}



@media only screen and (max-width: 800px) {
    .flex_test-box {
        flex-wrap: wrap;
    }
    .flex_test-item{
        
        width: 80%; 
    }
    
}

.flex_test-item:nth-child(1) {
    background-color:  #fff; /* 背景色指定 */
    width: 410px;
    height: 240px;
}

.flex_test-item:nth-child(2) {
    background-color:  #ffffff; /* 背景色指定 */
    width: 410px;
    height: 240px;
}

.flex_test-item:nth-child(3) {
    background-color: #fff; /* 背景色指定 */
    width: 410px;
    height: 240px;
   
}

.flex_test-item:nth-child(4) {
    background-color:  #ffffff; /* 背景色指定 */
    width: 410px;
    height: 240px;
}
.flex_test-item:nth-child(5) {
    background-color:  #fff; /* 背景色指定 */
    width: 410px;
    height: 270px;
}

.flex_test-item:nth-child(6) {
    background-color:  #fff; /* 背景色指定 */
    width:410px;
    height: 254px;
}

.flex_test-item:nth-child(7) {
    background-color: #fff; /* 背景色指定 */
    width: 410px;
    height: 270px;
}

.flex_test-item:nth-child(8) {
    background-color:  #ffffff; /* 背景色指定 */
    width: 410px;
    height: 279px;
}
.flex_test-item:nth-child(9) {
    background-color:  #fff; /* 背景色指定 */
    width: 410px;
    height: 300px;
}

.flex_test-item:nth-child(10) {
    background-color:  #e5e5e5; /* 背景色指定 */
    width: 421px;
    height: 305px;
}



.icon {
    width: 410px;
    height: 240px;
   
}
.icon2 {
    
    width: 292px;
    height: 237px;
}
.icon3 {
    
    width: 262px; 
    height: 261px;
}
.icon4 {
    width: 410px;
    height: 270px;
}
.icon5 {
    width:328px;
    height: 254px;
}
.icon6 {
    width: 410px;
    height: 270px;
}
.icon7 {
    width: 335px;
    height: 279px;
}
.icon8 {
    width: 410px;
    height: 300px;
}
.icon9 {
    width: 421px;
    height: 305px;
}

#request {
    position: fixed;
    width:150px;
    height: 80px;
    text-align: center;
    font-size: 20px;
    bottom: 30px;
    right: 20px;
    background-color: #77787a;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    display: block;
}
#request:hover {
    position: fixed;
    bottom: 30px;
    right: 20px;
    background-color: #039be5;
    color: white;
    opacity: 0.6;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

 /* ボタン全体 */
 /***トップへ戻るボタン***/
#page-top {
    display: block;
    font-weight: bold;
    padding: .7em;
    text-align: center;
    background: #fff; /*背景色*/
    color: #666; /*文字色*/
    transition: .3s;
}
/***マウスオーバー時***/
#page-top:hover {
    background: #666; /*背景色*/
    color: #fff; /*文字色*/
}
 
 /*フッター*/

  .footer07 {
    color: #808080;
    background: #e5e5e5;
    padding: 30px;
   }
   .footer07 a {
    color: #808080;
    text-decoration: none;
   }
   .footer07 li a:hover {
    text-decoration: underline;
   }
   .footer07 .wrap {
    width: 900px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
   }
   .footer07 .wrap h3 {
    margin: 0 0 10px 0;
    padding: 0;
    border-bottom: 1px #c4c4c4 solid;
   }
   .footer07 .wrap p {
    margin: 0;
    padding: 0 0 20px 0;
   }
   .footer07 .wrap .box:first-child {
    width: 30%;
   }
   .footer07 .wrap .box:nth-child(2) {
    width: 65%;
   }
   .footer07 .wrap .box ul {
    margin: 0;
    padding: 0 0 20px 0;
    list-style: none;
   }
   .footer07 .wrap .copyright {
    width: 100%;
    padding: 20px 0 0 0;
   }
   
   @media only screen and (max-width: 880px) {
   .footer07 .wrap {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
   }
   .footer07 .wrap h3 {
    border: none;
   }
   .footer07 .wrap .box:first-child,
   .footer07 .wrap .box:nth-child(2) {
    width: 100%;
   }
   .footer07 .wrap .box ul {
    border-top: 1px #c4c4c4 solid;
   }
   .footer07 .wrap .box ul li a {
    display: block;
    padding: 5px 15px;
    border-bottom: 1px #c4c4c4 solid;
   }
   }

  .head-border {
    display: flex;
    align-items: center;
}

.head-border:before,
.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

