@charset "utf-8";

.tax-position {
  
  /*　画像入りヘッダーの設定
  ================================================================================*/
  .main-header {
    background-repeat: no-repeat;
    background-size: cover;
    height: 60vh;
    display: flex;
    align-items: center;
  }
  .main-header h2 {
    width: 100%;
    font-size: 4.5vw;
    color: #ffffff;
    font-weight: bold;
    text-shadow: 1px 1px 10px #000000;
    text-align: center;
    font-style: italic;
  }



  /*　全体設定
  ================================================================================*/
  .members-list {
    padding-left: 40px;
    padding-right: 40px;
  }
  .members-area {
    margin-top: 100px;
  } 
  .members-area h2 {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    font-size: 40px;
    margin-bottom: 15px;
    position: relative;
  }
  .members-area h2::before {
    content: '';
    display: block;
    margin-left: 4px;
    width: 44px;
    height: 4px;
    background-color: #2C2E2C;
    transform: rotate(90deg);
    transform-origin: top left;
    position: absolute;
  }
  .members-area h2 span {
    margin-left: 20px;
    font-size: 32px;
    font-style: italic;
  }
  .graybox {
    background-color: #f6f6f6;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
  .graybox-inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, 300px);
    row-gap: 50px;
    justify-content: center;
    padding: 40px;
  }
  .members-inner {
    position: relative;
    display: flex;
    flex-direction: column;
  }
  .name {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    margin-top: 5px;
    opacity: 0.6;
    line-height: 1.1;
  }
  .name:hover {
    opacity: 1;
    text-decoration: underline;
    transition-duration: 0.3s;
    color: #93c80e;
  }
  .position {
    font-size: 16px;
    margin-top: 5px;
  }
  .profile-links {
    display: block;
    position: absolute;
    z-index:3;
    top:35%;
    left:20%;
    width: 60%;
    height: 40px;
    transition:0.3s;
    background-color: transparent;
    border: solid 2px rgb(255, 255, 255, 0.6);
    border-radius: 7px;
    color: rgb(255, 255, 255, 0.9);
    opacity: 0;
    text-align: center;
    padding-top: 11px;
    font-family: 'Montserrat' sans-serif;
    font-weight: bold;
    font-size: 12px;
    padding-bottom: 10px;
  }
  .profile-links a {
    display: inline-block;
    width: 100%;
    height: 100%;
    font-family: 'Montserrat' sans-serif;
    font-weight: bold;
  }
  .members-inner:hover .profile-links {
    transition-duration: 0.3s;
    opacity: 1;
  }
  .members-inner:hover .name {
    color: #93c80e;
    opacity: 1;
    text-decoration: underline;
    transition-duration: 0.3s;
  }
  .members-inner:hover img {
    filter:blur(5px);
    transition-duration: 0.3s;
  }
  .profile-links:hover {
    background-color: rgb(147, 200, 14, 0.85);
    transition-duration: 0.3s;
    border: solid 2px rgb(255, 255, 255, 0.6);
    cursor: pointer;
  }

  /*　スタッフの設定
  ================================================================================*/
  .staff {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .staff img {
    width: 200px;
    height: auto;
  }


  /*　学生の設定
  ================================================================================*/
  .students {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .students img {
    width: 200px;
  }


  /*　同窓生の設定
  ================================================================================*/
  /* 同窓生表示ボタン ---------- */
  .alumni-button {
    display: flex;
    justify-content: right;
    max-width: 1000px;
    margin-top: 150px;
    margin-left: auto;
    margin-right: auto;
    font-size: 20px;
  }
  .alumni-button h3 {
    margin-left: 2px;
  }
  .alumni-show.selected::after {
    content: '';
    width: 100%;
    height: 7px;
    background-color: #93c80e;
    display: block;
    margin-top: 4px;
  }
  .alumni-hidden.selected::after {
    content: '';
    width: 100%;
    height: 7px;
    background-color: #93c80e;
    display: block;
    margin-top: 4px;
  }
  /* マウスオーバー設定 */
  .alumni-show:hover {
    color: #93c80e;
    cursor: pointer;
    transition-duration: 0.3s;
  }
  .alumni-hidden:hover {
    color: #93c80e;
    cursor: pointer;
    transition-duration: 0.3s;
  }
  .alumni-show.selected:hover {
    color: #000000;
    cursor: default;
  }
  .alumni-hidden.selected:hover {
    color: #000000;
    cursor: default;
  }
  /* 同窓生表示ボタン ---------- */

  /* 同窓生用設定 ---------- */
  .alumni {
    margin-top: 10px;
  }
  .hidden {
    display: none;
  }
  .alumni .graybox-inner li {
    text-align: center;
  }
  .alumni .graybox-inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, 230px);
  }
  /* 同窓生用設定 ---------- */





  /*　================================================================================
  スマホ・タブレット設定
  ================================================================================　*/
  @media (max-width: 800px) {

    /*　ナビゲーション設定
    ================================================================================*/
    .site-menu ul li:nth-child(3) {
      color:#93c80e;
      font-weight: bold;
    }
    .site-menu ul li:nth-child(3)::after {
      content: '';
      display: block;
      width: 100%;
      height: 3px;
      background-color:#93c80e;
      margin-top: 5px;
      margin-left: 0%;
      visibility: visible;
    }

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


    /*　画像入りヘッダーの設定
    ================================================================================*/
    .main-header {
      height: 30vh;
      margin-bottom: 50px;
    }
    .main-header h2 {
      font-size: 6.5vw;
    }

    /*　全体設定
    ================================================================================*/
    .members-list {
      padding-left: 20px;
      padding-right: 20px;
    }
    .members-area {
      margin-top: 50px;
    } 
    .members-area h2 {
      font-size: 22px;
      margin-bottom: 20px;
      text-align: center;
    }
    .members-area h2::before {
      margin-left: 0px;
      width: 100%;
      height: 2px;
      transform: rotate(0deg);
      position: absolute;
      bottom: -5px;
    }
    .members-area h2 span {
      font-size: 18px;
      display: block;
      margin-top: 5px;
      margin-left: auto;
      margin-right: auto;
    }
    .name {
      font-size: 16px;
      margin-top: 5px;
    }
    .graybox-inner {
      row-gap: 30px;
      column-gap: 40px;
      padding-top: 0px;
    }
    .profile-links {
      display: block;
      position: absolute;
      z-index:3;
      top: 250px;
      left: -20%;
      width: 140%;
      height: 25px;
      transition:0.3s;
      background-color: rgb(255, 255, 255, 1);
      border: none;
      border-radius: 0px;
      color: #2C2E2C;
      opacity: 1;
      text-align: left;
      padding-top: 5px;
      padding-left: 20px;
      font-size: 14px;
      box-shadow: 0px 1px #c1c2c2;
    }
    .profile-links::before {
      display: block;
      content: "";
      width: 12px;
      height: 2px;
      background: #2C2E2C;
      transform: rotate(40deg);
      position: absolute;
      top: 8px;
      right: 5px;
    }
    .profile-links::after {
      display: block;
      content: "";
      width: 12px;
      height: 2px;
      background: #2C2E2C;
      transform: rotate(-40deg);
      position: absolute;
      bottom: 8px;
      right: 5px;
    }
  
    .graybox-inner li {
      margin-top: 32px;
    }
    .members-inner:hover .profile-links {
      transition-duration: 0.3s;
      opacity: 1;
      border: none;
    }
    .members-inner:hover .name {
      opacity: 0.6;
      color: inherit;
      text-decoration: none;
      transition-duration: 0.3s;
    }
    .members-inner:hover img {
      filter:none;
    }
    .profile-links:hover {
      background-color: #ffffff;
      border: none;
    }
    .profile-links.appeal:hover {
      background-color: rgb(147, 200, 14, 0.85);
      border: none;
    }
    .appeal {
      background-color: rgb(147, 200, 14, 0.85);
      color: #ffffff;
    }
    .appeal.profile-links::before {
      background: #ffffff;
    }
    .appeal.profile-links::after {
      background: #ffffff;
    }

    /*　同窓生の設定
    ================================================================================*/
    /* 同窓生表示ボタン ---------- */
    .alumni-button {
      margin-top: 50px;
      font-size: 18px;
      margin-bottom: 50px;
    }
    .alumni-button h3 {
      margin-left: 2px;
    }
    /* 同窓生表示ボタン ---------- */

    .alumni .graybox-inner {
      row-gap: 15px;
    }

  }
}