@charset "UTF-8";
/* style.css */
body{
    margin: 0;
    padding: 0;
}
a {
    text-decoration: none;
    color: white;
    font-weight: bolder;
    font-size: larger;
  }
  a:hover{
    color: rgb(179, 178, 178);
  }
  
  ul,
  li {
    list-style: none;
  }
 .main-img{
   width: 100%;
    height: auto; /* ★ 80% から auto に変更 */
    position: relative;
    margin-top: 100px; /* ★ 追加：PC版ヘッダーの高さ分だけ下にずらす */
  }
  .main-img img{
    width: 100%;
   height: auto; /* ★ 100% から auto に変更 */
    display: block; /* ★ 追加：画像の下にできる謎の隙間を消す */
  }
  
  footer{background-color: rgb(31, 130, 229) ;}
  .footer{display: flex;
      position: relative;
      right: 60px;
  justify-content: center;
  list-style: none;}
  .footer li{margin-left: 8%;}
  .footer a{
    text-decoration: none;
    color: white;
}
  .footer a:hover{color:rgb(163, 161, 161);}
  .k{
   text-align: center;
  }
  .copy{
    text-align: center;
   color: #ffffff;
}
  .text{
    padding-top: 0%;
    margin-left: 200px;
    text-align: left;
    width: 1100px;
  }

  .text h2,h3{
    margin-top: 0;
    margin-bottom: 0;
    }
  
  /* ヘッダー */
  .header {
    background-color: rgb(31, 130, 229) ;
    width: 100%;
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
  }
  
  .header__inner {
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: inherit;
    position: relative;
  }
  
  .header__title {
    width: 500px;
  }
  @media screen and (min-width: 960px) {
    .header__title {
      width: 500px;
    }
  }
  .header__title  a{
    font-weight: bold;
    font-size: 2.35rem;
  }
  
  .header__title img {
    display: block;
    width: 100%;
    height: 100px;
  }
  
  .header__title img:hover{
    opacity: 0.6;
  }
  .header__nav {
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);
    background-color: rgb(62, 155, 248) ;
    transition: ease .4s;
  }
  @media screen and (min-width: 960px) {
    .header__nav {
      position: static;
      transform: initial;
      background-color: inherit;
      height: inherit;
      display: flex;
      justify-content: end;
      width: 50%;
    }
  }
  
  
@media screen and (min-width: 960px) {
    .header__title {
      width: 500px;
    }
  }
  .header__title  a{
    font-weight: bold;
    font-size: 2.35rem;
  }
  
  .header__title img {
    display: block;
    width: 100%;
    height: 100px;
  }
  
  .header__title img:hover{
    opacity: 0.6;
  }
  .header__nav {
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);
    background-color: rgb(62, 155, 248) ;
    transition: ease .4s;
  }
  @media screen and (min-width: 960px) {
    .header__nav {
      position: static;
      transform: initial;
      background-color: inherit;
      height: inherit;
      display: flex;
      justify-content: end;
      width: 50%;
    }
  }
  
  
  @media screen and (min-width: 960px) {
    .nav__items {
      width: 100%;
      display: flex;
      align-items: center;
      height: initial;
      justify-content: space-between;
    }
  }
  
  .nav-items {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0;
  }
  
  
  @media screen and (min-width: 960px) {
    .nav-items {
      padding-top: inherit;
      padding-bottom: inherit;
      position: inherit;
      top: 0;
      left: 0;
      transform: translate(0, 0);
    }
  }
  
  .nav-items__item a {
    color: white;
    width: 100%;
    display: block;
    text-align: center;
    font-size: 20px;
    margin-bottom: 24px;
  }
  .nav-items__item a:hover{
    color:rgb(179, 178, 178);
  }
  .nav-items__item:last-child a {
    margin-bottom: 0;
  }
  
  @media screen and (min-width: 960px) {
    .nav-items__item a {
      margin-bottom: 0;
    }
  }
  
  
  /* ハンバーガーメニュー */
  .header__hamburger {
    width: 48px;
    height: 100%;
  
  }
  
  .hamburger {
    background-color: transparent;
    border-color: transparent;
    z-index: 9999;
  }
  
  @media screen and (min-width: 960px) {
    .hamburger {
      display: none;
    }
  }
  
  
  .hamburger span {
    width: 100%;
    height: 1px;
    background-color: #ffffff;
    position: relative;
    transition: ease .4s;
    display: block;
  }
  
  .hamburger span:nth-child(1) {
    top: 0;
  }
  
  .hamburger span:nth-child(2) {
    margin: 8px 0;
  }
  
  .hamburger span:nth-child(3) {
    top: 0;
  }
  
  
  /* ハンバーガーメニュークリック後のスタイル */
  .header__nav.active {
    transform: translateX(0);
  }
  
  .hamburger.active span:nth-child(1) {
    top: 5px;
    transform: rotate(45deg);
  }
  
  .hamburger.active span:nth-child(2) {
    opacity: 0;
  
  }
  
  .hamburger.active span:nth-child(3) {
    top: -13px;
    transform: rotate(-45deg);
  } 
  @media (max-width: 1350px){
    .text{
      padding-top: 10%;
      margin-left: 200px;
      text-align: left;
      width: 1100px;
    }
  }
  @media (max-width: 960px){
    .header__title  a{
        font-weight: bold;
        font-size: 1.35rem;
      }
      a{
        text-decoration: grey;
      }
      .header {
        height: 80px;
      }
      .header__title img {
        display: block;
        width: 100%;
        height:100%;
      }
      .main{
        padding: 0;
        margin: 0;;
      }
      .main-img {
        margin-top: 80px; /* ★ 追加：スマホ版ヘッダーの高さ（80px）に合わせてずらす */
      }
    
      .main-img img {
        width: 100%; /* ★ 98% から 100% に変更（画面幅にピッタリ合わせる） */
        height: auto;
      }
        
      .text{
        padding-top: 0%;
        text-align: left;
        width:90%;
        padding-left: 0;
        padding-right: 0;
        margin:auto
      }
      .footer{
        right: 0px;
       margin: auto;
       padding: 0;
      }
      .footer li{
        margin: auto;
      }
      .footer a{
        font-size:1rem ;
      }
      .footer{
        display: none;
      }
      .nav-items{
        width: 250px;
      }
  }
  .copy{
    margin: 0;
  }
  .award-img img {
    width: 300px;
    margin: 0 auto; /* 縦横比を崩さずに縮小・拡大します */
}
  .award-img {
    text-align: center;      /* 中にある画像や文字を中央に寄せる */
}