@charset "UTF-8";
/* ==========================================================================
   parts
   ========================================================================== */
.p-sitemapLink {
  font-size: 2rem;
  color: #333333;
  letter-spacing: 0.04em;
  font-weight: bold;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-sitemapLink:after {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 12px;
  margin-bottom: 1px;
  border-top: 2px solid #f3be00;
  border-right: 2px solid #f3be00;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.p-sitemapLink::before {
  content: '';
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}

@media print, screen and (min-width: 769px) {
  .p-sitemapLink::before {
    width: 39px;
    height: 39px;
    margin-right: 14px;
  }
}

@media only screen and (max-width: 768px) {
  .p-sitemapLink::before {
    width: 32px;
    height: 32px;
    margin-right: 16px;
  }
}

.p-sitemapLink sup {
  -ms-flex-item-align: start;
      align-self: flex-start;
  font-size: 10px;
}

.p-sitemapLink.-blank::after {
  width: 12px;
  height: 8px;
  background: url(/common/img/ico-window.png) no-repeat;
  background-size: contain;
  -webkit-transform: none;
          transform: none;
  border-top: none;
  border-right: none;
}

.p-sitemapLink.-item1::before {
  background-image: url(../img/icon-01.svg);
}

.p-sitemapLink.-item2::before {
  background-image: url(../img/icon-02.svg);
}

.p-sitemapLink.-item3::before {
  background-image: url(../img/icon-03.svg);
}

.p-sitemapLink.-item4::before {
  background-image: url(../img/icon-04.svg);
}

.p-sitemapLink.-item5::before {
  background-image: url(../img/icon-05.svg);
}

.p-sitemapLink.-item6::before {
  background-image: url(../img/icon-06.svg);
}

.p-sitemapLink.-item7::before {
  background-image: url(../img/icon-07.svg);
}

.p-sitemapLink.-item8::before {
  background-image: url(../img/icon-08.svg);
}

.p-sitemapLink.-item9::before {
  background-image: url(../img/icon-09.svg);
}

@media print, screen and (min-width: 769px) {
  .p-sitemapLink:hover {
    text-decoration: underline;
  }
}

.p-note {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.2rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 769px) {
  .p-note {
    margin-top: 29px;
  }
}

@media only screen and (max-width: 768px) {
  .p-note {
    margin-top: 32px;
  }
}

.p-note::before {
  content: '※';
}

/* ==========================================================================
   modules
   ========================================================================== */
.m-sitemapList {
  margin-top: 25px;
}

@media only screen and (max-width: 768px) {
  .m-sitemapList-item + .m-sitemapList-item {
    margin-top: 5px;
  }
}

.m-sitemapList-link {
  display: inline-block;
  color: #333333;
  letter-spacing: 0.04em;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 2;
  position: relative;
}

@media print, screen and (min-width: 769px) {
  .m-sitemapList-link {
    padding-left: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .m-sitemapList-link {
    padding-left: 17px;
  }
}

.m-sitemapList-link::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #f3be00;
  border-right: 2px solid #f3be00;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
  position: absolute;
  left: -5px;
  top: 50%;
}

@media print, screen and (min-width: 769px) {
  .m-sitemapList-link:hover {
    text-decoration: underline;
  }
}

/* ==========================================================================
   components
   ========================================================================== */
.c-headdingContainer {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (min-width: 769px) {
  .c-headdingContainer {
    padding-left: 10px;
    padding-right: 10px;
    max-width: 1200px;
    min-width: 1000px;
  }
}

@media only screen and (max-width: 768px) {
  .c-headdingContainer {
    width: 92%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-headdingContainer {
    margin-bottom: 80px;
  }
}

@media only screen and (max-width: 768px) {
  .c-headdingContainer {
    margin-bottom: 60px;
  }
}

.c-sitemapLinkContainer {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (min-width: 769px) {
  .c-sitemapLinkContainer {
    padding-left: 10px;
    padding-right: 10px;
    max-width: 1200px;
    min-width: 1000px;
  }
}

@media only screen and (max-width: 768px) {
  .c-sitemapLinkContainer {
    width: 92%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-sitemapLinkContainer {
    margin-bottom: 80px;
  }
}

@media only screen and (max-width: 768px) {
  .c-sitemapLinkContainer {
    margin-bottom: 60px;
  }
}

@media print, screen and (min-width: 769px) {
  .c-sitemapLinkContainer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media print, screen and (min-width: 769px) {
  .c-sitemapLinkContainer-item {
    width: calc(340 / 1180 * 100%);
  }
  .c-sitemapLinkContainer-item:nth-child(n+4) {
    margin-top: 90px;
  }
}

@media only screen and (max-width: 768px) {
  .c-sitemapLinkContainer-item {
    margin-top: 55px;
  }
}
