@charset "UTF-8";
/* =================================
 page-anchor - ページ内リンク
================================= */
@media screen and (max-width: 820px) {
  .page-anchor {
    margin: 3em 0 2em;
    padding: 1em;
    background: #f5f5f5;
    border-radius: 4px;
  }
}
@media screen and (min-width: 821px) {
  .page-anchor {
    margin: 3em 0 2em;
    padding: 1.5em;
    background: #f5f5f5;
    border-radius: 4px;
  }
}
.page-anchor__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 820px) {
  .page-anchor__list {
    gap: 0.5em;
  }
}
@media screen and (min-width: 821px) {
  .page-anchor__list {
    gap: 0.8em;
  }
}
.page-anchor__item {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 820px) {
  .page-anchor__item {
    width: 100%;
  }
}
.page-anchor__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  color: #505050;
  text-decoration: none;
  position: relative;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-weight: bold;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  overflow: hidden;
  font-size: min(14px, 14 / 1040 * 100vw);
}
@media screen and (max-width: 820px) {
  .page-anchor__link {
    padding: 1em;
    font-size: min(14px, 14 / 375 * 100vw);
  }
}
.page-anchor__link {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F9), to(#E5E5E5));
  background-image: linear-gradient(180deg, #F9F9F9, #E5E5E5 100%);
  line-height: 1.2;
  word-break: auto-phrase;
}
@media screen and (min-width: 821px) {
  .page-anchor__link {
    padding: 1.2em 1em;
    min-height: 70px;
  }
}
.page-anchor__link::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20px 20px;
}
@media screen and (max-width: 820px) {
  .page-anchor__link::after {
    border-width: 0 0 min(14px, 14 / 375 * 100vw) min(14px, 14 / 375 * 100vw);
  }
}
.page-anchor__link::after {
  border-color: transparent transparent #f5a623 transparent;
}
.page-anchor__link:hover {
  background: #fafafa;
  border-color: #f5a623;
}
.page-anchor__link.is-current {
  background: #4bbf4a;
  border-color: #4bbf4a;
  color: #fff;
}
.page-anchor__link.is-current::after {
  border-color: transparent transparent #fff transparent;
}
@media screen and (min-width: 821px) {
  .page-anchor.col3 .page-anchor__item {
    width: calc((100% - 1.6em) / 3);
  }
}
@media screen and (min-width: 821px) {
  .page-anchor.col4 .page-anchor__item {
    width: calc((100% - 2.4em) / 4);
  }
}
.page-anchor--empty p {
  margin: 0;
  color: #888;
  font-size: 0.9em;
}