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

- Base

================================================ */
[v-cloak] {
  display: none;
}

_:-ms-lang(x)::-ms-backdrop, [v-cloak] {
  display: block;
}

body {
  background-color: #FFFFFF;
}

body {
  overflow-x: hidden;
  -ms-scroll-chaining: chained;
      overscroll-behavior: auto;
}

body.-bodyScrollStop {
  overflow: hidden;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
}

:root {
  --cc-green: #1d4c45;
  --cc-yellow: #ffe553;
  --header-w: 260px;
  --w1280: 1280px;
  --space: 30px;
}

/* ================================================

- 表示アニメーション

================================================ */
/* ================================================

- フォント

================================================ */
/* ================================================

- フォントサイズ

================================================ */
/* ================================================

- RWD表示切り替え

================================================ */
@media all and (min-width: 569px) {
  .nopc {
    display: none !important;
  }
}
@media all and (max-width: 568px) {
  .nosp {
    display: none !important;
  }
}
/* ================================================

- flex

================================================ */
/* ================================================

- margin

================================================ */
/* magrin-topを5px刻みで50pxまで */
.mTop0 {
  margin-top: 0px;
}

.mTop5 {
  margin-top: 5px;
}

.mTop10 {
  margin-top: 10px;
}

.mTop15 {
  margin-top: 15px;
}

.mTop20 {
  margin-top: 20px;
}

.mTop25 {
  margin-top: 25px;
}

.mTop30 {
  margin-top: 30px;
}

.mTop35 {
  margin-top: 35px;
}

.mTop40 {
  margin-top: 40px;
}

.mTop45 {
  margin-top: 45px;
}

.mTop50 {
  margin-top: 50px;
}

/* magrin-bottomを5px刻みで50pxまで */
.mBtm0 {
  margin-bottom: 0px;
}

.mBtm5 {
  margin-bottom: 5px;
}

.mBtm10 {
  margin-bottom: 10px;
}

.mBtm15 {
  margin-bottom: 15px;
}

.mBtm20 {
  margin-bottom: 20px;
}

.mBtm25 {
  margin-bottom: 25px;
}

.mBtm30 {
  margin-bottom: 30px;
}

.mBtm35 {
  margin-bottom: 35px;
}

.mBtm40 {
  margin-bottom: 40px;
}

.mBtm45 {
  margin-bottom: 45px;
}

.mBtm50 {
  margin-bottom: 50px;
}

/* ================================================

- z-index

================================================ */
/* ================================================

-

================================================ */
.lozad {
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.lozad[data-loaded=true] {
  opacity: 1;
}

/* ================================================

- イージング

================================================ */
/* ================================================

- @hover

================================================ */
/* ================================================

-

================================================ */
.site-sc {
  padding-bottom: 120px;
}
.site-sc .site-sc__inner {
  padding: 0 70px;
}

.site-lead p {
  font-size: 1.7rem;
  line-height: 1.765;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

.site-content {
  margin-top: 37px;
  padding-top: 37px;
  border-top: solid 1px #e4e4e4;
}

.site-content__block:not(:first-of-type) {
  margin-top: 53px;
}

.site-content__ttl {
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

.site-content__bordered {
  margin-top: 31px;
}

.site-content__table {
  width: 100%;
  border-top: solid 1px #e4e4e4;
  border-left: solid 1px #e4e4e4;
  border-collapse: collapse;
  border-spacing: 0;
}
.site-content__table th,
.site-content__table td {
  padding: 12px 37px;
  font-size: 1.7rem;
  line-height: 1.425;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  vertical-align: middle;
  border-bottom: solid 1px #e4e4e4;
  border-right: solid 1px #e4e4e4;
}
.site-content__table th.-w28,
.site-content__table td.-w28 {
  width: 28%;
}

.site-content__summary {
  margin-top: 23px;
}
.site-content__summary p {
  font-size: 1.7rem;
  line-height: 1.765;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

.site-list {
  margin-top: 22px;
  counter-reset: number;
}

.site-list__item {
  padding-left: 25px;
  font-size: 1.7rem;
  line-height: 1.765;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  position: relative;
}
.site-list__item::before {
  counter-increment: number;
  content: counter(number) ".";
  position: absolute;
  top: 0;
  left: 0;
}

.site-list__item:not(:first-of-type) {
  margin-top: 6px;
}

.site-content__cookies {
  margin-top: 15px;
}

.site-content__cookies__list {
  font-size: 1.7rem;
  line-height: 1.765;
  letter-spacing: 0.02em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
.site-content__cookies__list dd a {
  color: #148b79;
  word-break: break-all;
}

/*--- media screen ---*/
@media screen and (max-width: 568px) {
  .site-sc {
    padding-bottom: 21.333vw;
  }
  .site-sc .site-sc__inner {
    padding: 0 4.8vw;
  }
  .site-lead p {
    font-size: 4vw;
  }
  .site-content {
    margin-top: 9.867vw;
    padding-top: 9.867vw;
  }
  .site-content__block:not(:first-of-type) {
    margin-top: 14.133vw;
  }
  .site-content__ttl {
    font-size: 5.6vw;
    line-height: 1.425;
  }
  .site-content__bordered {
    margin-top: 7.467vw;
  }
  .site-content__table th,
  .site-content__table td {
    padding: 3.2vw 4vw;
    font-size: 4vw;
  }
  .site-content__table th.-w28,
  .site-content__table td.-w28 {
    width: 28%;
  }
  .site-content__summary {
    margin-top: 6.133vw;
  }
  .site-content__summary p {
    font-size: 4vw;
  }
  .site-list {
    margin-top: 5.867vw;
  }
  .site-list__item {
    padding-left: 6.667vw;
    font-size: 4vw;
  }
  .site-list__item:not(:first-of-type) {
    margin-top: 1.6vw;
  }
  .site-content__cookies {
    margin-top: 4vw;
  }
  .site-content__cookies__list {
    font-size: 4vw;
  }
}