@charset "UTF-8";
/* production date 2025/11/10 ~ 2026/01/19 */
/* その他のページのスタイル(サイトマップなど) */
/*----------------------------------------------------------------------------------------------------------------
media query
----------------------------------------------------------------------------------------------------------------*/
/* variable declaration */
/* main margin */
/* main padding */
/*----------------------------------------------------------------------------------------------------------------
variable declaration / mixin
----------------------------------------------------------------------------------------------------------------*/
/* color */
/* gradient */
/* underline */
/* drop-shadow */
/* tx drop-shadow */
/* font */
/* hover transition */
/* img */
/*----------------------------------------------------------------------------------------------------------------
サイトマップ
----------------------------------------------------------------------------------------------------------------*/
/* サイトマップページ用 */
.siteMap_block {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: auto;
}
.siteMap_block__inner {
  display: grid;
  grid-template-columns: 1fr;
  justify-content: start;
}
.siteMap_block {
  /* nav */
}
.siteMap_block__nav {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 60px;
}
@media screen and (max-width: 1400px) {
  .siteMap_block__nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    justify-items: start;
    justify-content: start;
  }
}
@media screen and (max-width: 1200px) {
  .siteMap_block__nav {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }
}
@media screen and (max-width: 850px) {
  .siteMap_block__nav {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.siteMap_block__nav_column {
  display: block !important;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_column {
    display: block;
    width: 100%;
  }
}
.siteMap_block__nav_column ul {
  margin-bottom: 36px;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_column ul {
    margin-bottom: 10px;
  }
}
.siteMap_block__nav_column-black {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_column-black {
    width: 100%;
  }
}
.siteMap_block__nav {
  /* link-style--m */
}
.siteMap_block__nav_link-style--m {
  position: relative;
  width: 142px;
  color: #00BAA5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 3.2;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_link-style--m {
    display: block;
    width: 100%;
  }
}
.siteMap_block__nav_link-style--m {
  /* 点線アニメーション */
  background: linear-gradient(to right, #00BAA5 0%, #00BAA5 100%) bottom left/0% 1.5px no-repeat, repeating-linear-gradient(to right, rgba(0, 186, 165, 0.6) 0 2px, transparent 2px 5px) bottom left/100% 1.5px no-repeat;
  transition: background-size 0.4s ease-in-out;
  /* 点線アニメーション */
}
.siteMap_block__nav_link-style--m:hover {
  background-size: 100% 1.5px, 100% 1.5px;
}
.siteMap_block__nav_link-style--m a {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: auto;
  color: inherit;
  text-decoration: none;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_link-style--m a {
    display: block;
    width: 100%;
  }
}
.siteMap_block__nav_link-style--m a::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 14px;
  margin-top: 2px;
  margin-right: 8px;
  background-color: #B4D700;
  vertical-align: middle;
}
.siteMap_block__nav {
  /* link-style--m black */
}
.siteMap_block__nav_link-style--m-black {
  width: 180px;
  position: relative;
  color: #37485A;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 3.2;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
  white-space: nowrap;
  opacity: 0.6;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_link-style--m-black {
    display: block;
    width: 100%;
  }
}
.siteMap_block__nav_link-style--m-black {
  /* 点線アニメーション */
  background: linear-gradient(to right, #37485A 0%, #37485A 100%) bottom left/0% 1.5px no-repeat, repeating-linear-gradient(to right, rgba(55, 72, 90, 0.6) 0 2px, transparent 2px 5px) bottom left/100% 1.5px no-repeat;
  transition: background-size 0.4s ease-in-out;
  /* 点線アニメーション */
}
.siteMap_block__nav_link-style--m-black:hover {
  background-size: 100% 1.5px, 100% 1.5px;
}
.siteMap_block__nav_link-style--m-black a {
  display: inline-flex;
  align-items: center;
  width: auto;
  color: inherit;
  text-decoration: none;
  position: relative;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
}
@media screen and (max-width: 576px) {
  .siteMap_block__nav_link-style--m-black a {
    display: block;
    width: 100%;
  }
}
.siteMap_block__nav_link-style--m-black a::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 0.9em;
  margin-right: 8px;
  background-color: #B4D700;
  vertical-align: middle;
}
.siteMap_block__nav {
  /* link-style--s */
}
.siteMap_block__nav_link-style--s {
  display: block;
  opacity: 0.8;
  color: #00BAA5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 2.4;
  letter-spacing: 0.05em;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
}
.siteMap_block__nav_link-style--s a {
  display: block;
}
.siteMap_block__nav_link-style--s a::before {
  content: "- ";
}
.siteMap_block__nav_link-style--s:hover, .siteMap_block__nav_link-style--s:focus {
  opacity: 0.4;
}

/*----------------------------------------------------------------------------------------------------------------
404
----------------------------------------------------------------------------------------------------------------*/
/* 404ページ用 */
.not_found_link {
  margin-bottom: 20px;
}
