@charset "utf-8";

/*　全体設定
  ================================================================================*/
html {
  scroll-behavior: smooth;
} 

.archive {
  /*　ファーストビュー画像
  ================================================================================*/
  .first-view {
    height: calc(100vh - 160px);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }
  .first-view-filter {
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    opacity: 0;
  }
  .first-view-filter:hover {
    background: rgba(0, 0, 0, 0.5);
    opacity: 1;
    transition-duration: 0.3s;
  }
  .movie-link-button-area {
    position: absolute;
    z-index: 100;
  }
  .movie-link-button-area {
    color: #ffffff;
    opacity: 0.9;
    width: 250px;
    height: 50px;
    text-align: center;
    font-size: 20px;
    border:solid 3px #fff;
    border-radius: 5px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 100px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:500;
  }
  .movie-link-button {
    display: inline-block;
    width: 100%;
    height: 100%;
    line-height: 44px;
  }
  .movie-link-button-area:hover {
    background-color: #0615FD;
    transition-duration: 0.3s;
  }
  .first-view-text {
    margin-left: 5%;
    margin-bottom: 20%;
    width: 100%;
    font-size: 2.2vw;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    text-shadow: 1px 1px 10px #4b2c14;
  }
  

  /*　ニュースとバナーの共通設定
  ================================================================================*/
  .topics_and_links {
    display: flex;
    justify-content: space-between;
    flex-direction:row-reverse;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 100px;
  }

  /* NEWS年代リンクサイドメニューの設定 ----------*/
  .transparent {
    visibility: hidden;
  }
  .Links {
    margin-top: 30px;
    position: sticky;
    top: 30px;
  }
  .Links h4 {
    font-size: 20px;
    margin-bottom: 5px;
  }
  .Links-inner {
    display: flex;
    flex-direction: column;
    width: 100%;
    font-size: 18px;
    line-height: 1.5;
  }
  .Links-inner::before {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #2C2E2C;
  }
  .Links-inner::after {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #2C2E2C;
  }
  .NEWSTOP {
    width: 100%;
    height: 40px;
    text-align: center;
    padding-top: 6px;
  }
  .Links-inner ul {
    display: grid;
    grid-template-columns: repeat(3, 80px);
    align-items: center;
    text-align: center;
  }
  .Links-inner li {
    height: 40px;
  }
  /* マウスオーバー設定 */
  .Links-inner li:hover:first-child {
    border-bottom: 0px;
  }
  .Links-inner a:hover {
    color: #0615FD;
    font-size: 20px;
    font-weight: bold;
  }
  /* NEWS年代リンクサイドメニューの設定 ----------*/

  /*　NEWSの設定
  ================================================================================*/
  .topics {
    width: 100%;
    margin-right: 40px;
    margin-left: 40px;
    padding: 30px 50px;
    background-color: #f6f6f6;
  }
  .topics h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 32px;
    margin-bottom: 20px;
  }
  .topics h2::after {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    margin-top: 10px;
    background-color: #2C2E2C;
  }
  .topics-lists li {
    margin-bottom: 20px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .topics-lists li.show {
    display: block;
  }
  /* .topics-lists li:hover {
    color: #93c80e;
  } */
  .topics-lists li::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #a2a2a2;
    margin-top: 20px;
  }
  .topics-lists li dl dt{
    margin-bottom: 8px;
    font-size: 14px;
  }
  .topics-lists li dl dd{
    font-size: 18px;
    line-height: 1.3;
  }
  .topics-lists li a {
    display: flex;
    justify-content: space-between;
  }
  .topics-lists li a:hover img {
    opacity: 0.3;
    transition-duration: 0.3s;
  }
  .topics-lists li a:hover dl {
    color: #0615FD;
    transition-duration: 0.3s;
  }

  .photo a img {
    width: 200px;
    margin-left: 20px;
  }

  /* NEWS種類分類画像の設定 ----------*/
  .category_award {
    background-color: #2C2E2C;
    margin-left: 5px;
    color: #ffffff;
    display: inline-block;
    width: 80px;
    height: 20px;
    text-align: center;
    vertical-align: middle;
    padding-top: 3px;
    padding-right: 2px;
    margin-bottom: 4px;
  }
  .category_photo {
    background-color: #2C2E2C;
    margin-left: 5px;
    color: #ffffff;
    display: inline-block;
    width: 80px;
    height: 20px;
    text-align: center;
    vertical-align: middle;
    padding-top: 3px;
    padding-right: 2px;
    margin-bottom: 4px;
  }
  .category_news {
    background-color: #2C2E2C;
    margin-left: 5px;
    color: #ffffff;
    display: inline-block;
    width: 80px;
    height: 20px;
    text-align: center;
    vertical-align: middle;
    padding-top: 3px;
    margin-bottom: 4px;
  }
  .category_article {
    background-color:#2C2E2C;
    margin-left: 5px;
    color: #ffffff;
    display: inline-block;
    width: 80px;
    height: 20px;
    text-align: center;
    vertical-align: middle;
    padding-top: 3px;
    padding-right: 2px;
    margin-bottom: 4px;
  }
  .topics-lists li:hover .category_award {
    background-color: #0615FD;
  }
  .topics-lists li:hover .category_photo {
    background-color: #0615FD;
  }
  .topics-lists li:hover .category_news {
    background-color: #0615FD;
  }
  .topics-lists li:hover .category_article {
    background-color: #0615FD;
  }
  /* NEWS種類分類画像の設定 ----------*/



  /*　================================================================================
  スマホ・タブレット設定
  ================================================================================　*/
  @media (max-width: 800px) {
    .site-menu ul li:first-child {
      color:#93c80e;
      font-weight: bold;
    }
    .site-menu ul li:first-child::after {
      content: '';
      display: block;
      width: 100%;
      height: 3px;
      background-color:#93c80e;
      margin-top: 5px;
      margin-left: 0%;
      visibility: visible;
    }
  }

  @media (max-width: 800px) {  
    .site-menu-en ul li:first-child {
      color:#93c80e;
      font-weight: bold;
    }
    .site-menu-en ul li:first-child::after {
      content: '';
      display: block;
      width: 100%;
      height: 3px;
      background-color:#93c80e;
      margin-top: 5px;
      margin-left: 0%;
      visibility: visible;
    }

    /*　ファーストビュー画像
    ================================================================================*/
    .first-view {
      height: calc(65vh - 110px);
      margin-bottom: 80px;
    }
    .first-view-text {
      margin-left: 12%;
      margin-bottom: 30%;
      width: 100%;
      font-size: 3.5vw;
      color: #ffffff;
      font-family: 'Montserrat', sans-serif;
      font-weight: bold;
      text-shadow: 1px 1px 10px #4b2c14;
    }

    /*　動画リンク
    ================================================================================*/
    .first-view-filter {
      opacity: 1;
    }
    .first-view-filter:hover {
      background: rgba(0, 0, 0, 0);
      opacity: 1;
      transition-duration: 0.3s;
    }
    .movie-link-button-area {
      position: absolute;
      z-index: 100;
    }
    .movie-link-button-area {
      color: #ffffff;
      opacity: 0.9;
      width: 100%;
      height: 30px;
      text-align: center;
      font-size: 16px;
      border:solid 0px #ffffff;
      border-radius: 0px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: -30px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight:500;
    }
    .movie-link-button {
      display: inline-block;
      width: 100%;
      height: 100%;
      line-height: 27px;
      background-color: rgb(147, 200, 14, 0.85);
    }
    .movie-link-button::before {
      display: block;
      content: "";
      width: 9px;
      height: 2px;
      background: #ffffff;
      transform: rotate(40deg);
      position: absolute;
      top: 11px;
      right: 80px;
    }
    .movie-link-button::after {
      display: block;
      content: "";
      width: 9px;
      height: 2px;
      background: #ffffff;
      transform: rotate(-40deg);
      position: absolute;
      top: 16px;
      right: 80px;
    }
    
    /*　リード文〜研究コンセプト〜
    ================================================================================*/
    .lead {
      margin-top: 50px;
      margin-bottom: 50px;
    }
    .lead-text {
      margin-left: 20px;
      margin-right: 20px;
      font-size: 16px;
      line-height: 1.5;
      font-weight: 400;
    }
    .link-button-area_Reserch {
      width: 300px;
      height: 30px;
      padding-top: 7px;
      font-size: 18px;
      font-weight: 400;
      margin-bottom: 80px;
    }

    /*　学生の活躍
    ================================================================================*/
    .students-presentation_awards {
      padding: 30px 0px;
    }
    .students-presentation_awards h2 {
      margin-bottom: 0px;
      text-align: center;
      font-size: 22px;
      font-weight: 700;
    }
    .students-presentation_awards h2::after {
      height: 3px;
    }
    .students-presentation_awards-photos-lists {
      scroll-snap-type: x mandatory;
      width: 100%;
      display: flex;
      -webkit-overflow-scrolling: touch;
    }
    .students-presentation_awards-photos-lists > li {
      scroll-snap-align: center;
      height: 100%;
      width: 80%;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .students-presentation_awards-photos-lists li {
      padding-left: 20px;
      padding-right: 20px;
    }
    .students-presentation_awards-photos-lists li:first-child {
      margin-left: 10vw;
    }
    .students-presentation_awards-photos-lists li img {
      width: 80vw;
      display: block;
      margin-left: auto;
      margin-right: auto;
    }
    /*　ニュースとバナーの共通設定
    ================================================================================*/
    .topics_and_links {
      flex-direction: column-reverse;
      margin-top: 40px;
      
    }

    /*　バナーの設定
  ================================================================================*/
    /* 教員リンクバナー部分の設定 ----------*/
    .links {
      width: 100%;
    }
    .PageLinks {
      width: 80%;
      height: 120px;
      margin-left: auto;
      margin-right: auto;
    }
    .ashishido  {
      background-size: 38%;
      background-position: left 0% bottom;
    }
    .skubo  {
      background-size: 30%;
      background-position: right 10% bottom;
    }
    .PageLinks h3 {
      letter-spacing: 1px;
    }
    .PageLinks small {
      letter-spacing: normal;
    }
    .ashishido h3 {
      font-size: 18px;
      line-height: 1.1;
      position: absolute;
      top: 38%;
      right: 5%;
    }
    .PageLinks br:nth-child(3) {
      display: none;
    }
    .skubo h3 {
      font-size: 18px;
      line-height: 1.1;
      position: absolute;
      top: 35%;
      left: 10%;
    }
    /* 教員リンクバナー部分の設定 ----------*/

    /* 関連ページリンクバナーの設定 ----------*/
    .banner-lists p{
      width: 80%;
      margin-left: auto;
      margin-right: auto;
    }
    .banner-lists img {
      width: 80%;
      border: 1px solid #2C2E2C;
      display: block;
      margin-left: auto;
      margin-right: auto;
    }
    .Links {
      display: none;
    }
    /* 関連ページリンクバナーの設定 ----------*/

    /*　NEWSの設定
    ================================================================================*/
    .topics {
      width: 100%;
      margin-right: 0px;
      margin-left: 0px;
      padding: 20px 20px;
      margin-bottom: 50px;
    }
    .topics h2 {
      font-size: 26px;
    }
    .topics-lists li {
      margin-bottom: 10px;
    }
    .topics-lists li::after {
      margin-top: 10px;
    }
    .topics-lists li dl dt{
      margin-bottom: 8px;
      font-size: 12px;
    }
    .topics-lists li dl dd{
      font-size: 16px;
    }
    .photo a img {
      width: 100px;
      object-fit: contain;
      margin-left: 15px;
    }

    /* SHOWALLボタンの設定 ----------*/
    .more-buton {
      width: 300px;
      height: 40px;
      font-size: 18px;
      margin-bottom: 50px;
    }
    /* SHOWALLボタンの設定 ----------*/

    /* NEWS種類分類画像の設定 ----------*/
    .award dt::after{
      width: 40px;
      height: 19px;
      margin-left: 5px;
    }
    .news dt::after{
      width: 62px;
      height: 19px;
      margin-left: 5px;
    }
    .photo dt::after{
      width: 40px;
      height: 19px;
      margin-left: 5px;
    }
    .award.photo dt::after {
      width: 90px;
      height: 21px;
      margin-left: 5px;
    }
    .news.photo dt::after {
      width: 111px;
      height: 19px;
      margin-left: 5px;
    }
    /* NEWS種類分類画像の設定 ----------*/
  }
}