@charset "UTF-8";
/* --

 top.css

 ------------------------------------

-- */
@import url(https://fonts.googleapis.com/css?family=Titillium+Web:700i);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&display=swap&subset=japanese);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&display=swap&subset=japanese);
@import url(https://fonts.googleapis.com/css?family=Sawarabi+Gothic);
/* --

 * clearfix............float解除
 * font-size...........フォントサイズ指定（px指定はIE8対策）
 * layout-baseSize.....基本のコンテンツサイズ
 * layout-posMiddle....天地中央配置
 * moving-base.........基本のアニメーション
 * FontAwesome.........アイコンフォント使用（FontAwesome）
 * opacity.............透明度設定（IE対応含む）
 * pc..............ブレイクポイント設定（パソコンのみ）
 * tablet..............ブレイクポイント設定（タブレット）
 * mobile..............ブレイクポイント設定（スマホ）

 ------------------------------------

 * scroll..............スクロールアイコンのスタイル
 * module-title........タイトル共通のスタイル


-- */
/* --

 keyframes - アニメーションキーフレーム集

 ------------------------------------

 * loading.............ローディングアイコンのアニメーション
 * toggle-.............ハンバーガーアイコンに関するアニメーション

-- */
@-webkit-keyframes loading {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}
@keyframes loading {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes toggle-top {
  0% {
    -webkit-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(0deg);
    transform: translateY(-8px) rotate(0deg);
  }
}
@keyframes toggle-top {
  0% {
    -webkit-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(0deg);
    transform: translateY(-8px) rotate(0deg);
  }
}
@-webkit-keyframes toggle-bottom {
  0% {
    -webkit-transform: translateY(-4px) rotate(45deg);
    transform: translateY(-4px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(7px) rotate(0deg);
    transform: translateY(7px) rotate(0deg);
  }
}
@keyframes toggle-bottom {
  0% {
    -webkit-transform: translateY(-4px) rotate(45deg);
    transform: translateY(-4px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(7px) rotate(0deg);
    transform: translateY(7px) rotate(0deg);
  }
}
@-webkit-keyframes toggle-top-close {
  0% {
    -webkit-transform: translateY(-16px) rotate(0deg);
    transform: translateY(-16px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
  }
}
@keyframes toggle-top-close {
  0% {
    -webkit-transform: translateY(-16px) rotate(0deg);
    transform: translateY(-16px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
  }
}
@-webkit-keyframes toggle-bottom-close {
  0% {
    -webkit-transform: translateY(17px) rotate(0deg);
    transform: translateY(17px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(0px) rotate(45deg);
    transform: translateY(0px) rotate(45deg);
  }
}
@keyframes toggle-bottom-close {
  0% {
    -webkit-transform: translateY(17px) rotate(0deg);
    transform: translateY(17px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(0px) rotate(0deg);
    transform: translateY(0px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(0px) rotate(45deg);
    transform: translateY(0px) rotate(45deg);
  }
}
/*-----------------------------------
$environment
-----------------------------------*/
.sub-top-view {
  background-image: url(../images/environment/environment-top-view.jpg);
}

.lead {
  max-width: 1000px;
  margin: 0 auto;
}
.lead .lead-big {
  font-size: 55px;
  line-height: 1.55;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 80px;
  position: relative;
  font-family: a-otf-ryumin-pr6n, serif;
}
.lead .lead-big img {
  position: absolute;
  width: 41.7%;
  top: -25%;
  left: 50%;
  -webkit-transform: rotate(-7.3deg) translateX(-50%);
      -ms-transform: rotate(-7.3deg) translateX(-50%);
          transform: rotate(-7.3deg) translateX(-50%);
}
.lead .lead-small {
  font-size: 18px;
  letter-spacing: 0.02em;
  line-height: 1.89;
  margin-top: 35px;
  font-family: "Sawarabi Gothic", sans-serif;
}

.environment-content {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 8rem;
}
@media screen and (max-width: 1023px) {
  .environment-content {
    padding: 0 5%;
  }
}
.environment-content .environment-box {
  width: 100%;
  margin: 0 auto;
  margin-top: 7.8rem;
  text-align: center;
}
.environment-content .environment-box:first-of-type {
  margin-top: 8.5rem;
}
.environment-content .environment-box img {
  width: 100%;
}
.environment-content .environment-box .environment-box__name {
  font-family: a-otf-ryumin-pr6n, serif;
  font-size: 4rem;
  color: #00A5E3;
  letter-spacing: 0.06em;
  font-family: a-otf-ryumin-pr6n, serif;
  display: inline-block;
  background: -webkit-gradient(linear, left bottom, left top, from(#ccedf9), color-stop(35%, #ccedf9), color-stop(35.1%, transparent), to(transparent));
  background: -o-linear-gradient(bottom, #ccedf9 0%, #ccedf9 35%, transparent 35.1%, transparent 100%);
  background: linear-gradient(to top, #ccedf9 0%, #ccedf9 35%, transparent 35.1%, transparent 100%);
  background: -ms-linear-gradient(to top, #ccedf9 0%, #ccedf9 35%, transparent 35.1%, transparent 100%);
  padding: 0 1rem;
  line-height: 1;
  margin-top: 2.8rem;
  margin-bottom: 0;
}
@media screen and (max-width: 1023px) {
  .environment-content .environment-box .environment-box__name {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 639px) {
  .environment-content .environment-box .environment-box__name {
    font-size: 2.4rem;
    margin-top: 2rem;
  }
}
.environment-content .environment-box .environment-box__txt {
  font-family: "Sawarabi Gothic", sans-serif;
  text-align: left;
  font-size: 1.7rem;
  letter-spacing: 0.02em;
  line-height: 1.94;
  margin-top: 2.2rem;
}
@media screen and (max-width: 639px) {
  .environment-content .environment-box .environment-box__txt {
    font-size: 1.5rem;
    margin-top: 1.2rem;
  }
}