@charset "UTF-8";
/* メディアクエリ */
/* //メディアクエリ */
/* position 中央寄せ */
/* //position 中央寄せ */
/* 基本フォントサイズ設定 */
html {
  font-size: 100%; /* ブラウザのデフォルトのフォントサイズ。大抵は16px */
}

/* //基本フォントサイズ設定 */
/* main上余白 */
main {
  padding-top: 200px;
}
@media screen and (max-width: 991px) {
  main {
    padding-top: 100px;
  }
}
@media screen and (max-width: 767px) {
  main {
    padding-top: 170px;
  }
}

/* //main上余白 */
/* 全体設定 */
body {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  overflow-x: hidden;
  position: relative;
  color: #222222;
  -webkit-font-smoothing: antialiased; /* macで文字が太くなる現象を解消 */
}

p {
  line-height: 1.6;
}

img {
  max-width: 100%;
  height: auto;
  flex-shrink: 0;
}

ul {
  list-style: none;
  padding-left: 0;
}

a {
  transition: all 0.3s;
}
a:hover {
  opacity: 0.7;
}

.container {
  padding: 0 15px;
  max-width: 1010px;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .container {
    width: 90%;
  }
}
@media screen and (max-width: 575px) {
  .container {
    width: 100%;
  }
}

/* //全体設定 */
/* フォントファミリー */
.notosans400 {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.notosans500 {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.notosans700 {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.notosans900 {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.roboto-500 {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.notoserif {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

/* //フォントファミリー */
/* color */
.txt-emerald {
  color: #24A288;
}

/* //color */
/* フォントウェイト */
.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

.fw-900 {
  font-weight: 900;
}

/* //フォントウェイト */
/* タイトル */
.ttl-pattern1-wrapper {
  position: relative;
  text-align: center;
}
.ttl-pattern1-wrapper span {
  color: rgba(58, 180, 155, 0.1);
  font-size: 120px;
  font-weight: 600;
  position: absolute;
  left: 50%;
  top: -94px;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .ttl-pattern1-wrapper span {
    font-size: 93px;
    top: -71px;
  }
}

.ttl-pattern1 {
  font-size: 36px;
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1.3888888889;
}
@media screen and (max-width: 767px) {
  .ttl-pattern1 {
    font-size: 28px;
  }
}

/* //タイトル */
/* アニメーション */
.fade-in-elm {
  opacity: 0;
}
.fade-in-elm.scrolled {
  animation: fade-in 0.25s linear forwards;
}

@keyframes fade-in {
  0% {
    opacity: 0.1;
  }
  100% {
    opacity: 1;
  }
}
.fade-in-from-bottom-elm {
  opacity: 0.1;
  transform: translateY(20px);
}
.fade-in-from-bottom-elm.scrolled {
  animation: fade-in-from-bottom 0.25s linear forwards;
}

@keyframes fade-in-from-bottom {
  0% {
    opacity: 0.1;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade-in-from-top-elm {
  opacity: 0.1;
  transform: translateY(-20px);
}
.fade-in-from-top-elm.scrolled {
  animation: fade-in-from-top 0.25s linear forwards;
}

@keyframes fade-in-from-top {
  0% {
    opacity: 0.1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade-in-from-right-elm {
  opacity: 0.1;
  transform: translateX(20px);
}
.fade-in-from-right-elm.scrolled {
  animation: fade-in-from-right 0.5s linear forwards;
}

@keyframes fade-in-from-right {
  0% {
    opacity: 0.1;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade-in-from-left-elm {
  opacity: 0.1;
  transform: translateX(-20px);
}
.fade-in-from-left-elm.scrolled {
  animation: fade-in-from-left 0.5s linear forwards;
}

@keyframes fade-in-from-left {
  0% {
    opacity: 0.1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* //アニメーション */
/* common */
.txt-default {
  line-height: 1.875;
}

.d-none {
  display: none;
}

@media screen and (max-width: 991px) {
  .d-lg-block {
    display: block;
  }
}

@media screen and (max-width: 991px) {
  .d-lg-none {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .d-md-block {
    display: block;
  }
}

@media screen and (max-width: 991px) {
  .d-lg-none {
    display: none;
  }
}

.d-inline-block {
  display: inline-block;
}

@media screen and (max-width: 575px) {
  .d-sm-block {
    display: block;
  }
}

/* //common *//*# sourceMappingURL=style-common.css.map */