@charset "utf-8";

body {
  width: 100vw;
  font-family: "Noto Sans JP", sans-serif;
}

a {
  text-decoration: none;
}

li {
  list-style: none;
}

/* ヘッダーPC */
.header {
  width: 100vw;
  height: 6vw;
  display: grid;
  grid-template-columns: 40% 60%;
  z-index: 999;
  position: fixed;
  top: 0;
}

.hamburger-menu {
  display: none;
}

.header>a {
  width: 100%;
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  margin-left: 5vw;
}

.header>a>img {
  width: 60%;
}

.nav_sp {
  display: none;
}

.nav_pc {
  width: 100%;
  height: 100%;
}

.header_pc {
  width: 80%;
  height: 6vw;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
  align-self: center;
  margin-left: 5vw;
  text-align: center;
}

.header_pc>li>a {
  font-size: 0.8vw;
  font-weight: 300;
  color: white;
  grid-column: 2;
  grid-row: 1;
}

.header_pc>li>a>img {
  width: 2vw;
}

.header_pc>li>a:hover {
  background-color: rgba(255, 255, 255, 0.216);
}

/* headerの色を変える */
.header.change-color {
  background-color: rgba(0, 0, 0, 0.502);
}

.footer_pc {
  width: 100%;
  margin-top: 8vw;
  display: grid;
  grid-template-columns: 10% 25% 55% 10%;
  grid-template-rows: 1fr;
}

.footer_pc>img:first-of-type {
  width: 100%;
  grid-column: 1/5;
  grid-row: 1;
}

.footer_pc>img:nth-of-type(2) {
  display: none;
}

.footer_pc>a {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: 5vw;
  margin-top: 3vw;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, auto);
  color: black;
}

.footer_pc>a>p {
  font-size: 0.9vw;
  justify-self: end;
}

.footer_pc>a>img {
  width: 100%;
}

.footer_pc>ul {
  width: 100%;
  grid-column: 3;
  grid-row: 1;
  align-self: start;
  justify-self: end;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  column-gap: 3vw;
  margin-top: 3vw;
  margin-right: -4vw;
  text-align: center;
  align-items: center;
}

.footer_pc>ul>li>a {
  font-size: 0.8vw;
  color: black;
}

.footer_pc>ul>li:nth-of-type(4)>a>span {
  display: none;
}

.footer_pc>p {
  grid-column: 2/4;
  grid-row: 1;
  align-self: end;
  justify-self: center;
  color: white;
  font-size: 1vw;
  margin-bottom: 1.2vw;
}

.top {
  position: fixed;
  width: 4vw;
  z-index: 1;
  bottom: 6vw;
  right: 4vw;
  filter: drop-shadow(0.1vw 0.1vw 0.1vw rgba(0, 0, 0, 0.10));
  opacity: 60%;
}

.top>img {
  width: 100%;
}

@media screen and (max-width:1360px) {
  .header {
    width: 100vw;
    grid-template-columns: 30% 70%;
  }

  .header_pc {
    width: 100%;
    margin-left: 0;
    padding-right: 5vw;
  }

  .header_pc>li>a {
    font-size: 1.2vw;
  }

   .header>a>img {
    width: 70%;
    margin-top: 1vw;
  }

  .footer_pc {
    width: 100%;
    margin-top: 8vw;
    display: grid;
    grid-template-columns: 5% 25% 75% 5%;
    grid-template-rows: 1fr;
  }


  .footer_pc>ul {
    column-gap: 2vw;
  }

  .footer_pc>ul>li {
    line-height: 1.4vw;
  }

  .footer_pc>ul>li>a {
    font-size: 1.2vw;
  }
}

}

@media screen and (max-width:820px) {
  .header {
    width: 100vw;
    grid-template-columns: 30% 70%;
  }

  .header_pc {
    width: 100%;
    margin-left: 0;
    column-gap: 0.5vw;
    padding-right: 5vw;
  }

  .header>a>img {
    width: 70%;
    margin-top: 1vw;
  }

  .header_pc>li {
    line-height: 1.4vw;
  }

  .header_pc>li>a {
    font-size: 1.2vw;
  }

  .footer_pc {
    width: 100%;
    margin-top: 8vw;
    display: grid;
    grid-template-columns: 5% 25% 75% 5%;
    grid-template-rows: 1fr;
  }


  .footer_pc>ul {
    column-gap: 2vw;
  }

  .footer_pc>ul>li {
    line-height: 1.4vw;
  }

  .footer_pc>ul>li>a {
    font-size: 1.2vw;
  }
}


@media screen and (max-width:430px) {
  .header {
    height: 12vw;
    grid-template-columns: 60% 40%;
  }

  .header>a {
    margin-left: 5vw;
    margin-top: 2vw;
  }

  .header>a>img {
    width: 80%;
  }

  .header_pc {
    display: none;
  }

  /* ハンバーガーメニュー */
  .hamburger-menu {
    position: fixed;
    display: flex;
    align-items: center;
    width: 10vw;
    height: 10vw;
    cursor: pointer;
    z-index: 10;
    background-color: #ffffff3f;
    right: 1vw;
    top: 1vw;
  }

  .hamburger-menu__line {
    display: block;
    width: 60%;
    height: 0.8vw;
    border-radius: 2vw;
    background-color: #FFF;
    position: relative;
    transition: all 0.5s;
    margin-left: 2vw;
  }

  .hamburger-menu__line::before,
  .hamburger-menu__line::after {
    content: '';
    display: block;
    width: 100%;
    height: 0.8vw;
    border-radius: 1vw;
    background-color: #FFF;
    position: absolute;
    transition: all 0.5s;
  }

  .hamburger-menu__line::before {
    transform: translateY(-8px);
  }

  .hamburger-menu__line::after {
    transform: translateY(8px);
  }

  .hamburger-menu.open .hamburger-menu__line {
    background-color: transparent;
  }

  .hamburger-menu.open .hamburger-menu__line::before {
    transform: rotate(45deg);
  }

  .hamburger-menu.open .hamburger-menu__line::after {
    transform: rotate(-45deg);
  }

    .nav_pc{
      display: none;
    }

  .nav_sp {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    position: fixed;
    right: -60vw;
    width: 60vw;
    height: auto;
    background-color: #320500d2;
    transition: right 0.5s;
    z-index: 6;
    padding-top: 10vw;
    padding-bottom: 5vw;
  }

  .nav_sp.open {
    right: 0;
  }

  .header_sp {
    grid-column: 1;
    grid-row: 1;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 5vw repeat(9, auto) 5vw;
  }

  .header_sp>li {
    font-size: 4vw;
    font-weight: 300;
    width: 80%;
    align-self: center;
    justify-self: center;
    margin: 0;
    padding: 0;
  }

  .header_sp>li>a>img {
    width: 8vw;
  }

  .header_sp>li:first-of-type {
    grid-column: 1;
    grid-row: 2;
  }

  .header_sp>li:nth-of-type(2) {
    grid-column: 1;
    grid-row: 3;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(3) {
    grid-column: 1;
    grid-row: 4;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(4) {
    grid-column: 1;
    grid-row: 5;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(5) {
    grid-column: 1;
    grid-row: 6;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(6) {
    grid-column: 1;
    grid-row: 7;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(7) {
    grid-column: 1;
    grid-row: 8;
    margin-top: 3vw;
  }

  .header_sp>li:nth-of-type(8) {
    grid-column: 1;
    grid-row: 9;
    margin-top: 6vw;
  }

  .header_sp>li:nth-of-type(9) {
    grid-column: 1;
    grid-row: 9;
    margin-left: 25vw;
    margin-top: 6vw;
  }


  .header_sp>li>a {
    color: white;
  }

  .footer_pc {
    width: 100%;
    margin-top: 8vw;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 5vw 15vw auto 9vw;
  }

  .footer_pc>img:first-of-type {
    display: none;
  }

  .footer_pc>img:nth-of-type(2) {
    width: 100%;
    display: block;
    grid-column: 1;
    grid-row: 1/5;
  }

  .footer_pc>a {
    grid-column: 1;
    grid-row: 2;
    width: 80%;
    margin-top: 3vw;
    justify-self: center;
  }

  .footer_pc>a>p {
    font-size: 2.9vw;
    justify-self: end;
  }

  .footer_pc>ul {
    width: 90%;
    height: auto;
    grid-column: 1;
    grid-row: 3;
    align-self: center;
    justify-self: center;
    display: grid;
    grid-template-columns: 5% 1fr 5%;
    grid-template-rows: repeat(7, auto);
    margin: 0;
    text-align: left;
    row-gap: 3vw;
  }

  .footer_pc>ul>li {
    height: 5vw;
  }

  .footer_pc>ul>li>a {
    font-size: 3vw;
    font-weight: 400;
  }

  .footer_pc>ul>li:first-of-type {
    grid-column: 2;
    grid-row: 1;
  }

  .footer_pc>ul>li:nth-of-type(2) {
    grid-column: 2;
    grid-row: 2;
  }

  .footer_pc>ul>li:nth-of-type(2)>a>br {
    display: none;
  }

  .footer_pc>ul>li:nth-of-type(3) {
    grid-column: 2;
    grid-row: 3;
  }

  .footer_pc>ul>li:nth-of-type(4) {
    grid-column: 2;
    grid-row: 4;
  }

  .footer_pc>ul>li:nth-of-type(4)>a>br {
    display: none;
  }

  .footer_pc>ul>li:nth-of-type(4)>a>span {
    display: inline-block;
  }

  .footer_pc>ul>li:nth-of-type(5) {
    grid-column: 2;
    grid-row: 5;
  }

  .footer_pc>ul>li:nth-of-type(6) {
    grid-column: 2;
    grid-row: 6;
  }

  .footer_pc>ul>li:nth-of-type(7) {
    grid-column: 2;
    grid-row: 7;
  }

  .footer_pc>p {
    grid-column: 1;
    grid-row: 4;
    align-self: center;
    justify-self: center;
    color: white;
    font-size: 2.2vw;
    margin: 0;
  }

  .top {
    position: fixed;
    width: 10vw;
    z-index: 1;
    bottom: 10vw;
    right: 4vw;
    filter: drop-shadow(0.1vw 0.1vw 0.1vw rgba(0, 0, 0, 0.10));
    opacity: 60%;
  }




}