@charset "utf-8";
/* Page MV
----------------------------------------------------------------------------------------------------*/
.mv-page {
  position: relative;
  margin-top: 15rem;
}
.mv-page__bg {
  display: block;
  width: 100%;
}
.mv-title {
  position: absolute;
  top: 40%;
  left: 45%;
  display: flex;
  align-items: center;
  margin: 0 auto 3rem;
}
.mv-title__en {
  display: inline-flex;
  align-items: center;
  padding: 0 1rem;
  margin-left: 1.8rem;
  background: #60B867;
  color: #FFF;
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-style: italic;
  font-size: 2.8rem;
  height: 4rem;
  /* 平行四辺形のための変形 */
  transform: skew(-20deg); /* 左上が上がる形に傾ける */
}
/* 中のテキストを逆に傾けてまっすぐにする */
.mv-title__en > * {
  transform: skew(20deg);
}
.mv-title__jp {
  color: #000;
  font-size: 3.9rem;
  font-weight: 700;
}
@media screen and (max-width: 1367px) {
  .mv-title {
    left: 45%;
  }
  .mv-title__en {
    font-size: 2rem;
  }
  .mv-title__jp {
    font-size: 3rem;
  }
}
@media screen and (max-width: 1024px) {
  .mv-page {
    margin-top: 10rem;
  }
  .mv-title {
    top: 30%;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .mv-title__en {
    padding: 0 1rem;
    margin-left: 0;
    font-size: 1.2rem;
    height: 2rem;
  }
  .mv-title__jp {
    margin-bottom: 0;
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .mv-title {
    left: 23%;
  }
}
/* Common
----------------------------------------------------------------------------------------------------*/
.main {
  padding: 10rem 0;
}
@media screen and (max-width: 1367px) {
  .main {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 767px) {
  .main {
    padding: 5rem 0;
  }
}
.page-copy {
  margin-bottom: 10rem;
  font-size: 3.5rem;
  font-weight: 600;
}
@media screen and (max-width: 1367px) {
  .page-copy {
    margin-bottom: 6rem;
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .page-copy {
    margin-bottom: 6rem;
    font-size: 2rem;
  }
}
/* Section - Sitemap
----------------------------------------------------------------------------------------------------*/
.sec-sitemap {
  width: 100%;
  max-width: 130rem;
  margin: 0 auto;
  padding: 0 3rem;
  line-height: 1.75;
}
.sitemap-list {
  border-top: 0.1rem solid #CCC;
}
.sitemap-row {
  display: flex;
  border-bottom: 0.1rem solid #CCC;
}
/* 大分類（左側） */
.sitemap-title {
  position: relative;
  width: 26.3rem;
  font-size: 2rem;
  font-weight: bold;
  padding: 2rem;
  transition: 0.5s;
}
.sitemap-title a {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
  transition: 0.5s;
}
/* 小分類（右側） */
.sitemap-content {
  width: 103.7rem;
  display: flex;
  flex-direction: column;
}
.sitemap-content a {
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 1.8rem;
  text-decoration: none;
  padding: 1rem 2rem;
  position: relative;
  transition: 0.5s;
}
.sitemap-content a::before {
  content: "";
  width: 8px;
  height: 8px;
  background-color: #13579D;
  border-radius: 50%;
  margin-right: 1rem;
}
.sitemap-row.full {
  width: 100%;
}
.sitemap-row.full a {
  display: block;
  width: 100%;
  font-size: 2rem;
  font-weight: bold;
  text-decoration: none;
  padding: 2rem;
  transition: 0.5s;
}
.sitemap-title:hover, .sitemap-title a:hover, .sitemap-content a:hover, .sitemap-row.full a:hover {
  background-color: #E6E6E6;
}
@media screen and (max-width: 767px) {
  .sitemap-row {
    flex-direction: column;
  }
  .sitemap-title, .sitemap-row.full a {
    width: 100%;
    font-size: 1.8rem;
  }
  .sitemap-content {
    width: 100%;
  }
  .sitemap-content a {
    font-size: 1.6rem;
  }
}


/*---------------------------------------------------
サイトマップ
---------------------------------------------------*/

.main {
	width: min(90%, 1230px);
	margin: 0 auto;
}
.sitemap__list,
.list__sub {
  list-style: none;
  font-size: 2.0rem;
}
.sitemap__list {
  font-weight: 600;
}
.list__sub {
  padding: 0;
  font-weight: 400;
}
.sitemap__list a {
  display: block;
  text-decoration: none;
  transition: 0.5s;
  padding: 20px 0 20px 20px;
  border-top: 1px solid #dcdcdc;
}
.list__sub a {
  padding: 20px 0 20px 60px;
}
.sitemap__list a:hover {
  background: #026EB7;
  color: #fff;
}
.sitemap__list li:nth-child(12) {
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 767px) {
  .sitemap__list {
    padding: 0;
  }
  .sitemap__list,
  .list__sub {
    font-size: 1.8rem;
  }
}














