/* =========================================================
sitemap
========================================================= */
@media (max-width: 768px) {
  .sitemap-block {
    margin: 24px auto 0;
  }
}
@media (min-width: 769px) {
  .sitemap-block {
    margin: 48px auto 0;
  }
}
.sitemap-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
}

@media (max-width: 768px) {
  .sitemap-wrap {
    grid-gap: 27px 75px;
  }
}
@media (min-width: 769px) {
  .sitemap-wrap {
    grid-gap: 40px 75px;
  }
}
.sitemap-box {
  width: 100%;
  font-size: 14px;
  line-height: 1.4285714286;
}

.sitemap-box a {
  display: inline-block;
  padding: 0 0 0 16px;
  position: relative;
}

.sitemap-box a:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
  position: absolute;
  top: 7px;
  left: 0;
}

.sitemap-box a.external:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 8px;
  background: #000;
  -webkit-mask: url(../images/common/ico_external01.svg) no-repeat center/contain;
  mask: url(../images/common/ico_external01.svg) no-repeat center/contain;
  transform: translateY(-1px);
}

.sitemap-box .head {
  margin: 0 0 10px;
  position: relative;
}

.sitemap-box .head:before {
  content: "";
  width: 100%;
  height: 1px;
  background: #d5d5d5;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.sitemap-box .head * {
  display: inline-block;
  padding-right: 1em;
  background: #fff;
  font-weight: 500;
  position: relative;
  z-index: 1;
}

.sitemap-box .list {
  display: flex;
  flex-wrap: wrap;
}

.sitemap-box .item {
  width: 50%;
  margin: 0 0 5px;
  padding: 0 8px 0 0;
}

.sitemap-box .item.w100 {
  width: 100%;
}

.sitemap-box .list.type02 .item:nth-child(odd) {
  width: 55%;
}

.sitemap-box .list.type02 .item:nth-child(even) {
  width: 45%;
}