@charset "UTF-8";
/* 共通カラー */
/* ブレイクポイント */
/* メディアクエリ */
.gnav {
  display: none;
}
@media screen and (min-width: 1300px) {
  .gnav {
    display: flex;
    margin-right: 40px;
  }
}
.gnav__list {
  display: flex;
}
.gnav__item {
  position: relative;
  cursor: pointer;
  margin: 0 0 0 20px;
}
.gnav__item:hover .gnav__sub {
  visibility: visible;
  opacity: 1;
}
.gnav__item a, .gnav__item p {
  display: flex;
  align-items: center;
  height: 63px;
  color: #fff;
  font-size: 1.5rem;
  border-bottom: 5px solid transparent;
}
.gnav__item a:hover, .gnav__item p:hover {
  border-bottom: solid 5px #FF000F;
}
.gnav__sub {
  width: 280px;
  position: absolute;
  left: -65px;
  justify-content: space-between;
  background-color: #fff;
  border-radius: 0 0 30px 0;
  padding: 25px;
  visibility: hidden;
  opacity: 0;
}
.gnav__sub li {
  display: flex;
  justify-content: space-between;
  justify-content: space-between;
}
.gnav__sub li a {
  width: 100%;
  font-size: 1.2rem;
  padding: 10px;
  margin-bottom: 10px;
}
.gnav__sub li:last-of-type a {
  margin-bottom: 0;
}
.gnav__sub p {
  color: #000;
  font-size: 1.2rem;
  height: auto;
}
.gnav__sub p:hover {
  border-bottom: 5px solid transparent;
}
.gnav__sub a {
  display: flex;
  justify-content: space-between;
  font-size: 1.2rem;
  height: auto;
  color: #fff;
  background-color: #FF000F;
  border-bottom: none;
}
@media screen and (min-width: 960px) {
  .gnav__sub a {
    font-size: 1.4rem;
  }
}
.gnav__sub a:hover {
  opacity: 0.6;
  border-bottom: none;
}
.gnav__btn {
  height: 100%;
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  background-color: #FF000F;
  padding: 10px 14px;
}
.gnav__btn:hover {
  opacity: 0.6;
}
.gnav__btn span {
  font-size: 1.2rem;
  letter-spacing: 4px;
}

#js-header.fixed .gnav__sub a {
  color: #fff;
}