@charset "utf-8";
/*
.font-serif(){
	//font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝";
	font-family: "Noto Serif JP", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.font-serif-bold(){
	.font-serif();
	font-weight: bold;
}
*/
.abswh100 {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.wh100 {
  width: 100%;
  height: 100%;
}
.center {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
.abscenter {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.hv_center {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.h_center {
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
}
.v_center {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.hover_scale {
  transition: all 200ms 0s ease;
}
.hover_scale:hover {
  transform: scale(1.03);
}
/*==============================================================
  ■ (PC)
==============================================================*/
.maincontent {
  overflow: hidden;
}
.inner {
  width: 1244px;
}
.kv {
  position: absolute;
  left: 0;
  top: 0;
  position: fixed;
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.kv .inner {
  padding-top: 275px;
}
.kv__bg {
  width: 100%;
  height: 550px;
  background: url(../img/about/introduction/kv_bg.jpg) center center / cover no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
.kv__title {
  color: white;
}
.kv__title__E {
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-size: 80px;
  font-weight: 700;
}
.kv__title__J {
  font-size: 16px;
  margin-top: 10px;
}
main {
  position: relative;
  margin-top: 550px;
  background-color: #efede6;
  padding-bottom: 80px;
}
main .inner {
  padding-top: 200px;
}
main .nav {
  position: absolute;
  left: 0;
  top: 190px;
  z-index: 2;
  padding-top: 5px;
}
main .nav__list {
  transition: all 2s 0s ease;
}
main .nav__list.active {
  transform: translateY(calc(100vh / 2 - 190px - 60px));
}
main .nav__list.black a {
  color: white;
}
main .nav__list__detail {
  font-size: 14px;
  font-weight: 700;
  line-height: 210%;
  /* 23.8px */
  letter-spacing: 0.7px;
}
main .nav__list__detail a {
  transition: all 300ms 0s ease;
  white-space: nowrap;
  color: #4b4b4b;
}
main .nav__list__detail a:before {
  content: '・ ';
}
main .nav__list__detail a:hover {
  color: #CBC09D;
}
main .nav__list__detail.active a {
  color: #CBC09D;
}
main .nav__list__detail.active a:before {
  content: '・';
}
main .sec {
  position: relative;
  width: 100%;
  padding-left: 210px;
  color: #4D4D4D;
}
main .sec p {
  width: 610px;
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
}
main .sec__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 130%;
  letter-spacing: 0.05em;
}
main .sec__read {
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.1em;
}
main .sec0 {
  display: -ms-flexbox;
  display: flex;
}
main .sec0 .sec__title {
  display: block;
  width: 540px;
}
main .sec0 .sec__read {
  width: 500px;
}
main .sec1 {
  padding-top: 30px;
  margin-top: 118px;
}
main .sec1 .sec__title {
  padding-bottom: 60px;
  border-bottom: 1px solid #262626;
}
main .sec1__list {
  margin-top: 30px;
  margin-left: 10px;
}
main .sec1__list__detail {
  font-weight: 700;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.05em;
}
main .sec1__list__detail:before {
  content: '・ ';
}
main .sec1__iconlist {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 40px 33px;
  margin-top: 50px;
}
main .sec1__iconlist__detail .img img {
  width: 180px;
  height: 112px;
  object-fit: cover;
}
main .sec1__p1 {
  margin-top: 57px;
}
main .sec1 .sec__read {
  width: 500px;
  position: absolute;
  left: 745px;
  top: 0px;
}
main .sec2 {
  margin-top: 149px;
}
main .sec2 .sec__title {
  padding-bottom: 60px;
  border-bottom: 1px solid #262626;
}
main .sec2__list {
  position: relative;
  margin-top: 63px;
}
main .sec2__list:before {
  content: '';
  display: block;
  width: 1px;
  height: 2410px;
  background: #CBC09D;
  position: absolute;
  left: 7px;
  top: 0px;
}
main .sec2__list__detail {
  margin-bottom: 60px;
}
main .sec2__list__detail dl {
  display: -ms-flexbox;
  display: flex;
}
main .sec2__list__detail dl dt {
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-weight: 700;
  font-size: 18px;
  line-height: 100%;
  letter-spacing: 0.02em;
  width: 220px;
}
main .sec2__list__detail dl dt::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  background: #CBC09D;
  border-radius: 20px;
  margin-right: 10px;
}
main .sec2__list__detail dl dd {
  width: 814px;
}
main .sec2__list__detail dl dd p {
  width: 100%;
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.1em;
  text-indent: -1em;
  padding-left: 1em;
}
main .sec2__list__detail dl dd p:before {
  content: '・ ';
}
.main2 {
  width: 100%;
  height: 1650px;
  background: #4B4B4B;
  color: white;
  position: relative;
  padding-bottom: 200px;
}
.main2 .inner {
  padding-top: 150px;
  padding-left: 210px;
}
.main2 .sec__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 130%;
  letter-spacing: 0.05em;
  padding-bottom: 60px;
  border-bottom: 1px solid #FFF;
}
.main2 .sec__subtitle {
  font-weight: 700;
  font-size: 26px;
  line-height: 150%;
  letter-spacing: 0.05em;
  margin-top: 58px;
}
.main2 .sec__read {
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.1em;
  margin-top: 30px;
}
.main2 .sec__img {
  position: relative;
  margin-top: 30px;
  padding-top: 662px;
}
.main2 .sec__img__bg {
  width: 1034px;
  height: 599px;
  background-image: url("../img/about/introduction/map_bg.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 0px;
  top: 0px;
}
.main2 .sec__img__bg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.main2 .sec__img .pointer {
  position: absolute;
  left: -105px;
  top: 0px;
}
.main2 .sec__img .pointer li {
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 60px;
  width: 200px;
}
.main2 .sec__img .pointer__mark {
  width: 8px;
  height: 8px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
}
.main2 .sec__img .pointer__mark::before {
  position: absolute;
  left: 0;
  top: 0;
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  background: white;
  border-radius: 10px;
  animation: pointerscale 2s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s infinite normal none running;
}
@keyframes pointerscale {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(6);
  }
}
.main2 .sec__img .pointer__mark::after {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  background: #FFF100;
  border-radius: 10px;
  position: absolute;
  left: 0;
  top: 0;
}
.main2 .sec__img .pointer__txt {
  margin-left: 15px;
}
.main2 .sec__img .pointer__area {
  font-weight: 700;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
.main2 .sec__img .pointer__volume {
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-weight: 700;
  font-size: 26px;
  line-height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  letter-spacing: 0.02em;
  margin-top: 6px;
}
.main2 .sec__img .pointer1 {
  position: absolute;
  left: 480px;
  top: 166px;
}
.main2 .sec__img .pointer2 {
  position: absolute;
  left: 550px;
  top: 200px;
}
.main2 .sec__img .pointer3 {
  position: absolute;
  left: 582px;
  top: 247px;
}
.main2 .sec__img .pointer4 {
  position: absolute;
  left: 515px;
  top: 297px;
}
.main2 .sec__img .pointer5 {
  position: absolute;
  left: 479px;
  top: 392px;
}
.main2 .sec__img .pointer6 {
  position: absolute;
  left: 958px;
  top: 169px;
}
.main2 .sec__datalist {
  display: none;
}
.main2 .sec__infolist {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.main2 .sec__infolist__detail {
  position: relative;
  width: 500px;
  border-top: 1px solid white;
  padding-top: 30px;
}
.main2 .sec__infolist__detail__area {
  font-weight: 700;
  font-size: 26px;
  line-height: 100%;
  letter-spacing: 0.05em;
}
.main2 .sec__infolist__detail__num {
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-weight: 700;
  font-size: 100px;
  line-height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  letter-spacing: 0.02em;
  color: #FFF100;
  vertical-align: bottom;
  margin-top: 5px;
  text-align: right;
  position: absolute;
  right: 307px;
  top: 57px;
}
.main2 .sec__infolist__detail__unit {
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.05em;
  color: white;
  margin-left: 10px;
  position: absolute;
  right: 266px;
  top: 120px;
}
.main2 .sec__infolist .detail2 .sec__infolist__detail__num {
  right: 334px;
}
.main2 .sec__infolist .detail2 .sec__infolist__detail__unit {
  right: 292px;
}
.main2 .sec__comment {
  font-weight: 400;
  font-size: 13px;
  line-height: 100%;
  letter-spacing: 0.05em;
  color: #AAAAAA;
  text-align: right;
  margin-top: 130px;
}
.main2 .sec__info__link {
  display: block;
  margin-top: 20px;
}
.main2 .sec__info__link .arrow {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 60px;
  background-color: white;
  border-radius: 100px;
  background: white;
  vertical-align: middle;
  overflow: hidden;
  transition: all 300ms 0s ease;
}
.main2 .sec__info__link .arrow:before {
  content: '';
  width: 60px;
  height: 60px;
  background-color: #262626;
  border-radius: 200px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: scale(0);
  transition: all 300ms 0s ease;
}
.main2 .sec__info__link .arrow:after {
  content: '';
  display: block;
  width: 16px;
  height: 12px;
  background-image: url("../img/btn_arrow.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.main2 .sec__info__link .text {
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-size: 14px;
  font-weight: 700;
  color: white;
  margin-left: 14px;
}
.main2 .sec__info__link:hover .arrow {
  background-color: #262626;
  transition: all 300ms 0.2s ease;
}
.main2 .sec__info__link:hover .arrow:before {
  transform: scale(1);
}
.main2 .sec__info__link:hover .arrow:after {
  animation: 600ms ease-out 0s 1 normal forwards running overarrow2;
}
@keyframes overarrow2 {
  0% {
    transform: translateX(0px);
  }
  40% {
    transform: translateX(60px);
  }
  41% {
    display: block;
    width: 16px;
    height: 12px;
    background-image: url("../img/btn_arrow_w.svg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    overflow: hidden;
    transform: translateX(-60px);
  }
  100% {
    display: block;
    width: 16px;
    height: 12px;
    background-image: url("../img/btn_arrow_w.svg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    overflow: hidden;
    transform: translateX(0px);
  }
}
.main2 .sec__info__link.out .arrow {
  transform: rotate(-45deg);
}
.main2 .sec__info__link .arrow {
  transform: rotate(-45deg);
}
.main3 {
  width: 100%;
  background-color: #efede6;
  position: relative;
  padding-bottom: 200px;
}
.main3 .inner {
  padding-top: 200px;
  padding-left: 210px;
}
.main3 .sec__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 130%;
  letter-spacing: 0.05em;
  padding-bottom: 60px;
}
.main3 .sec__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.main3 .sec__list__detail {
  position: relative;
  width: 500px;
  border-top: 1px solid #262626;
  padding-top: 30px;
  padding-bottom: 60px;
}
.main3 .sec__list__detail__title {
  font-weight: 700;
  font-size: 26px;
  line-height: 100%;
  letter-spacing: 0.05em;
}
.main3 .sec__list__detail__read {
  font-weight: 500;
  font-size: 13px;
  line-height: 170%;
  letter-spacing: 0.1em;
  margin-top: 14px;
}
.main3 .sec__list__detail__data {
  position: relative;
  display: inline-block;
  font-family: 'Albert Sans', 'Noto Sans JP', "游ゴシック体", 'Yu Gothic', "YuGothic", "Noto Sans JP", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "Osaka", 'ＭＳ Ｐゴシック', 'MS PGothic', "sans-serif";
  font-weight: 700;
  font-size: 100px;
  line-height: 100%;
  letter-spacing: 0.02em;
  margin-top: 5px;
}
.main3 .sec__list__detail__data span {
  font-weight: 700;
  font-size: 16px;
  line-height: 130%;
  letter-spacing: 0.05em;
  position: absolute;
  right: -26px;
  bottom: 13px;
}
.main3 .sec__list__detail__year {
  display: inline-block;
  font-weight: 500;
  font-size: 13px;
  line-height: 100%;
  letter-spacing: 0.1em;
  background-color: white;
  padding: 8px 14px;
  border-radius: 30px;
  position: absolute;
  right: 0px;
  top: 30px;
}
.main3 .sec__list .detail1 {
  width: 100%;
  padding-top: 60px;
  padding-bottom: 108px;
}
.main3 .sec__list .detail1 .sec__list__detail__read {
  font-size: 16px;
  margin-top: 30px;
}
.main3 .sec__list .detail4 .sec__list__detail__data span {
  right: -44px;
}
.main3 .award {
  position: relative;
  width: 100%;
  height: 834px;
  background: #F9F9F9;
  padding: 100px;
  margin-top: 56px;
}
.main3 .award__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 130%;
  letter-spacing: 0.05em;
}
.main3 .award__read {
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.1em;
  border-top: 1px solid #262626;
  padding-top: 60px;
  margin-top: 60px;
}
.main3 .award__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 502px 502px;
      grid-template-columns: 502px 502px;
  gap: 50px 30px;
  width: 100%;
  margin-top: 90px;
}
.main3 .award__list__detail {
  width: 502px;
}
.main3 .award__list__detail__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.05em;
}
.main3 .award__list__detail__img {
  margin-top: 20px;
}
.main3 .award__list__detail__img img {
  width: 502px;
  height: 334px;
  object-fit: cover;
}
.main3 .award__list__detail__caption {
  font-weight: 500;
  font-size: 13px;
  line-height: 130%;
  letter-spacing: 0.1em;
  margin-top: 22px;
  padding-left: 5px;
}
.main3 .award__list__detail__caption p {
  padding-left: 1em;
  text-indent: -1em;
}
.main3 .award__list__detail__il__title {
  font-size: 26px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.1em;
}
.main3 .award__list__detail__il__read {
  line-height: 170%;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin-top: 20px;
}
.main3 .award__list__detail.il {
  padding-top: 40px;
}
.main3 .award__container {
  margin-top: 40px;
}
.main3 .award__container__title {
  font-size: 26px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.05em;
}
.main3 .award__container__read {
  font-weight: 500;
  line-height: 170%;
  /* 27.2px */
  letter-spacing: 0.05em;
  margin-top: 16px;
}
.main3 .award__container__read ul {
  padding-left: 30px;
}
.main3 .award__container__read li {
  list-style-type: disc;
}
.rellink__titleE {
  top: 122px;
}
.rellink__titleJ {
  top: 262px;
}
.rellink__bg {
  background: url(../img/about/introduction/rellink_bg.jpg) center center / cover no-repeat;
}
