@charset "UTF-8";
:root {
  --text: #000;
  --main: #29AB50;
  --bg1: #F4F4F4;
  --bg2: #F8F9F4;
  --ac1: #FFE742;
  --ac2: #422C1A;
  --ac3: #FA6D24;
  --en: Poppins, Noto Sans JP, Helvetica Neue, Helvetica, Hiragino Sans, Hiragino Kaku Gothic ProN, Arial, Yu Gothic, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  --fsz: 0px;
  --ls: 0.05em;
  --lh: 1.75;
  --speed: 0.3s;
  --txtColor: transparent;
  --btnColor: transparent;
  --bgColor: transparent;
  --shadowColor: transparent;
  --headerHeight: 60px;
}
@media screen and (min-width: 992px) {
  :root {
    --headerHeight: 70px;
  }
}
:root {
  --gnavHeight: 85px;
}
@media screen and (min-width: 992px) {
  :root {
    --gnavHeight: 140px;
  }
}

* {
  letter-spacing: var(--ls);
  line-height: var(--lh);
  --vk-line-height: var(--lh);
}

html {
  margin: 0 !important;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
html:has(.vk-mobile-nav-open) {
  overflow: hidden;
}
html:has(.global-nav.visible) {
  overflow: hidden;
}

body {
  margin: 0;
  background-color: #fff;
  color: var(--text);
  font-size: 14px;
  font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  overflow-x: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
  position: relative;
}
body::-webkit-scrollbar {
  display: none;
}
@media screen and (min-width: 375px) {
  body {
    font-size: 16px;
  }
}

section, .section {
  padding: 60px 0 80px;
  position: relative;
}
@media screen and (min-width: 992px) {
  section, .section {
    padding: 80px 0;
  }
}
@media screen and (min-width: 1440px) {
  section, .section {
    padding: 100px 0;
  }
}

h1, h2, h3, h4, h5, h6 {
  padding: 0;
  border: 0;
  line-height: var(--lh);
}
h1::before, h1::after, h2::before, h2::after, h3::before, h3::after, h4::before, h4::after, h5::before, h5::after, h6::before, h6::after {
  display: none;
}

ul li, ol li {
  margin: 0;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  color: currentColor;
  text-decoration: none;
  cursor: pointer;
  transition: var(--speed);
}
a:hover {
  color: currentColor;
  outline-width: 0;
  text-decoration: none;
  opacity: 0.8;
}
a.underline {
  text-decoration: underline;
}
a.underline:hover {
  text-decoration: none;
}
a.disabled {
  pointer-events: none;
}
@media screen and (min-width: 992px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: bottom;
}

strong {
  font-weight: 700;
}

em {
  font-style: normal;
}

iframe {
  border: 0;
}

/* ============= common class ================ */
.fit {
  position: relative;
  overflow: hidden;
}
.fit__item {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.en {
  font-family: var(--en);
}

.js-collapse {
  cursor: pointer;
}

.txt--main {
  color: var(--main);
}
.txt--ac1 {
  color: var(--ac1);
}
.txt--ac2 {
  color: var(--ac2);
}
.txt--ac3 {
  color: var(--ac3);
}
.txt--white {
  color: #fff;
}

.bg {
  background-color: var(--bg1);
}
.bg--main {
  background-color: var(--main);
  color: #fff;
}
.bg--bg2 {
  background-color: var(--bg2);
}
.bg--ac1 {
  background-color: var(--ac1);
}
.bg--ac2 {
  background-color: var(--ac2);
  color: #fff;
}
.bg--white {
  background-color: #fff;
}

.bb--main {
  border-bottom: 1px solid var(--main);
}
.bb--txt {
  border-bottom: 1px solid var(--text);
}

.marker {
  position: relative;
  z-index: 1;
}
.marker::before {
  content: "";
  width: calc(100% + 20px);
  height: 16%;
  display: block;
  position: absolute;
  bottom: 13%;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.marker--green::before {
  background-color: #BFDBBF;
}
.marker--yellow::before {
  background-color: var(--ac1);
}

.d-grid {
  grid-template-columns: repeat(12, 1fr);
}
.d-grid > *[class*=col] {
  width: 100%;
  max-width: 100%;
}
.d-grid.g-1 {
  grid-gap: 0.25em;
}
.d-grid.g-2 {
  grid-gap: 0.5em;
}
.d-grid.g-3 {
  grid-gap: 1em;
}
.d-grid.g-4 {
  grid-gap: 1.5em;
}
.d-grid.g-5 {
  grid-gap: 3em;
}
.d-grid.gx-1 {
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
}
.d-grid.gx-2 {
  -moz-column-gap: 0.5em;
       column-gap: 0.5em;
}
.d-grid.gx-3 {
  -moz-column-gap: 1em;
       column-gap: 1em;
}
.d-grid.gx-4 {
  -moz-column-gap: 1.5em;
       column-gap: 1.5em;
}
.d-grid.gx-5 {
  -moz-column-gap: 3em;
       column-gap: 3em;
}
.d-grid.gy-1 {
  row-gap: 0.25em;
}
.d-grid.gy-2 {
  row-gap: 0.5em;
}
.d-grid.gy-3 {
  row-gap: 1em;
}
.d-grid.gy-4 {
  row-gap: 1.5em;
}
.d-grid.gy-5 {
  row-gap: 3em;
}
@media screen and (min-width: 576px) {
  .d-grid.g-sm-1 {
    grid-gap: 0.25em;
  }
  .d-grid.g-sm-2 {
    grid-gap: 0.5em;
  }
  .d-grid.g-sm-3 {
    grid-gap: 1em;
  }
  .d-grid.g-sm-4 {
    grid-gap: 1.5em;
  }
  .d-grid.g-sm-5 {
    grid-gap: 3em;
  }
  .d-grid.gx-sm-1 {
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
  }
  .d-grid.gx-sm-2 {
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
  .d-grid.gx-sm-3 {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
  .d-grid.gx-sm-4 {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .d-grid.gx-sm-5 {
    -moz-column-gap: 3em;
         column-gap: 3em;
  }
  .d-grid.gy-sm-1 {
    row-gap: 0.25em;
  }
  .d-grid.gy-sm-2 {
    row-gap: 0.5em;
  }
  .d-grid.gy-sm-3 {
    row-gap: 1em;
  }
  .d-grid.gy-sm-4 {
    row-gap: 1.5em;
  }
  .d-grid.gy-sm-5 {
    row-gap: 3em;
  }
}
@media screen and (min-width: 768px) {
  .d-grid.g-md-1 {
    grid-gap: 0.25em;
  }
  .d-grid.g-md-2 {
    grid-gap: 0.5em;
  }
  .d-grid.g-md-3 {
    grid-gap: 1em;
  }
  .d-grid.g-md-4 {
    grid-gap: 1.5em;
  }
  .d-grid.g-md-5 {
    grid-gap: 3em;
  }
  .d-grid.gx-md-1 {
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
  }
  .d-grid.gx-md-2 {
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
  .d-grid.gx-md-3 {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
  .d-grid.gx-md-4 {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .d-grid.gx-md-5 {
    -moz-column-gap: 3em;
         column-gap: 3em;
  }
  .d-grid.gy-md-1 {
    row-gap: 0.25em;
  }
  .d-grid.gy-md-2 {
    row-gap: 0.5em;
  }
  .d-grid.gy-md-3 {
    row-gap: 1em;
  }
  .d-grid.gy-md-4 {
    row-gap: 1.5em;
  }
  .d-grid.gy-md-5 {
    row-gap: 3em;
  }
}
@media screen and (min-width: 992px) {
  .d-grid.g-lg-1 {
    grid-gap: 0.25em;
  }
  .d-grid.g-lg-2 {
    grid-gap: 0.5em;
  }
  .d-grid.g-lg-3 {
    grid-gap: 1em;
  }
  .d-grid.g-lg-4 {
    grid-gap: 1.5em;
  }
  .d-grid.g-lg-5 {
    grid-gap: 3em;
  }
  .d-grid.gx-lg-1 {
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
  }
  .d-grid.gx-lg-2 {
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
  .d-grid.gx-lg-3 {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
  .d-grid.gx-lg-4 {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .d-grid.gx-lg-5 {
    -moz-column-gap: 3em;
         column-gap: 3em;
  }
  .d-grid.gy-lg-1 {
    row-gap: 0.25em;
  }
  .d-grid.gy-lg-2 {
    row-gap: 0.5em;
  }
  .d-grid.gy-lg-3 {
    row-gap: 1em;
  }
  .d-grid.gy-lg-4 {
    row-gap: 1.5em;
  }
  .d-grid.gy-lg-5 {
    row-gap: 3em;
  }
}
@media screen and (min-width: 1200px) {
  .d-grid.g-xl-1 {
    grid-gap: 0.25em;
  }
  .d-grid.g-xl-2 {
    grid-gap: 0.5em;
  }
  .d-grid.g-xl-3 {
    grid-gap: 1em;
  }
  .d-grid.g-xl-4 {
    grid-gap: 1.5em;
  }
  .d-grid.g-xl-5 {
    grid-gap: 3em;
  }
  .d-grid.gx-xl-1 {
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
  }
  .d-grid.gx-xl-2 {
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
  .d-grid.gx-xl-3 {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
  .d-grid.gx-xl-4 {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .d-grid.gx-xl-5 {
    -moz-column-gap: 3em;
         column-gap: 3em;
  }
  .d-grid.gy-xl-1 {
    row-gap: 0.25em;
  }
  .d-grid.gy-xl-2 {
    row-gap: 0.5em;
  }
  .d-grid.gy-xl-3 {
    row-gap: 1em;
  }
  .d-grid.gy-xl-4 {
    row-gap: 1.5em;
  }
  .d-grid.gy-xl-5 {
    row-gap: 3em;
  }
}
@media screen and (min-width: 1440px) {
  .d-grid.g-xxl-1 {
    grid-gap: 0.25em;
  }
  .d-grid.g-xxl-2 {
    grid-gap: 0.5em;
  }
  .d-grid.g-xxl-3 {
    grid-gap: 1em;
  }
  .d-grid.g-xxl-4 {
    grid-gap: 1.5em;
  }
  .d-grid.g-xxl-5 {
    grid-gap: 3em;
  }
  .d-grid.gx-xxl-1 {
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
  }
  .d-grid.gx-xxl-2 {
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
  .d-grid.gx-xxl-3 {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
  .d-grid.gx-xxl-4 {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .d-grid.gx-xxl-5 {
    -moz-column-gap: 3em;
         column-gap: 3em;
  }
  .d-grid.gy-xxl-1 {
    row-gap: 0.25em;
  }
  .d-grid.gy-xxl-2 {
    row-gap: 0.5em;
  }
  .d-grid.gy-xxl-3 {
    row-gap: 1em;
  }
  .d-grid.gy-xxl-4 {
    row-gap: 1.5em;
  }
  .d-grid.gy-xxl-5 {
    row-gap: 3em;
  }
}
.d-grid[class*=g-] > *[class*=col], .d-grid[class*=gx-] > *[class*=col], .d-grid[class*=gy-] > *[class*=col] {
  padding: 0;
  margin: 0;
}
.d-grid .col-1 {
  grid-column: span 1;
}
.d-grid .col-2 {
  grid-column: span 2;
}
.d-grid .col-3 {
  grid-column: span 3;
}
.d-grid .col-4 {
  grid-column: span 4;
}
.d-grid .col-5 {
  grid-column: span 5;
}
.d-grid .col-6 {
  grid-column: span 6;
}
.d-grid .col-7 {
  grid-column: span 7;
}
.d-grid .col-8 {
  grid-column: span 8;
}
.d-grid .col-9 {
  grid-column: span 9;
}
.d-grid .col-10 {
  grid-column: span 10;
}
.d-grid .col-11 {
  grid-column: span 11;
}
.d-grid .col-12 {
  grid-column: span 12;
}
@media screen and (min-width: 576px) {
  .d-grid .col-sm-1 {
    grid-column: span 1;
  }
  .d-grid .col-sm-2 {
    grid-column: span 2;
  }
  .d-grid .col-sm-3 {
    grid-column: span 3;
  }
  .d-grid .col-sm-4 {
    grid-column: span 4;
  }
  .d-grid .col-sm-5 {
    grid-column: span 5;
  }
  .d-grid .col-sm-6 {
    grid-column: span 6;
  }
  .d-grid .col-sm-7 {
    grid-column: span 7;
  }
  .d-grid .col-sm-8 {
    grid-column: span 8;
  }
  .d-grid .col-sm-9 {
    grid-column: span 9;
  }
  .d-grid .col-sm-10 {
    grid-column: span 10;
  }
  .d-grid .col-sm-11 {
    grid-column: span 11;
  }
  .d-grid .col-sm-12 {
    grid-column: span 12;
  }
}
@media screen and (min-width: 768px) {
  .d-grid .col-md-1 {
    grid-column: span 1;
  }
  .d-grid .col-md-2 {
    grid-column: span 2;
  }
  .d-grid .col-md-3 {
    grid-column: span 3;
  }
  .d-grid .col-md-4 {
    grid-column: span 4;
  }
  .d-grid .col-md-5 {
    grid-column: span 5;
  }
  .d-grid .col-md-6 {
    grid-column: span 6;
  }
  .d-grid .col-md-7 {
    grid-column: span 7;
  }
  .d-grid .col-md-8 {
    grid-column: span 8;
  }
  .d-grid .col-md-9 {
    grid-column: span 9;
  }
  .d-grid .col-md-10 {
    grid-column: span 10;
  }
  .d-grid .col-md-11 {
    grid-column: span 11;
  }
  .d-grid .col-md-12 {
    grid-column: span 12;
  }
}
@media screen and (min-width: 992px) {
  .d-grid .col-lg-1 {
    grid-column: span 1;
  }
  .d-grid .col-lg-2 {
    grid-column: span 2;
  }
  .d-grid .col-lg-3 {
    grid-column: span 3;
  }
  .d-grid .col-lg-4 {
    grid-column: span 4;
  }
  .d-grid .col-lg-5 {
    grid-column: span 5;
  }
  .d-grid .col-lg-6 {
    grid-column: span 6;
  }
  .d-grid .col-lg-7 {
    grid-column: span 7;
  }
  .d-grid .col-lg-8 {
    grid-column: span 8;
  }
  .d-grid .col-lg-9 {
    grid-column: span 9;
  }
  .d-grid .col-lg-10 {
    grid-column: span 10;
  }
  .d-grid .col-lg-11 {
    grid-column: span 11;
  }
  .d-grid .col-lg-12 {
    grid-column: span 12;
  }
}
@media screen and (min-width: 1200px) {
  .d-grid .col-xl-1 {
    grid-column: span 1;
  }
  .d-grid .col-xl-2 {
    grid-column: span 2;
  }
  .d-grid .col-xl-3 {
    grid-column: span 3;
  }
  .d-grid .col-xl-4 {
    grid-column: span 4;
  }
  .d-grid .col-xl-5 {
    grid-column: span 5;
  }
  .d-grid .col-xl-6 {
    grid-column: span 6;
  }
  .d-grid .col-xl-7 {
    grid-column: span 7;
  }
  .d-grid .col-xl-8 {
    grid-column: span 8;
  }
  .d-grid .col-xl-9 {
    grid-column: span 9;
  }
  .d-grid .col-xl-10 {
    grid-column: span 10;
  }
  .d-grid .col-xl-11 {
    grid-column: span 11;
  }
  .d-grid .col-xl-12 {
    grid-column: span 12;
  }
}
@media screen and (min-width: 1440px) {
  .d-grid .col-xxl--1 {
    grid-column: span 1;
  }
  .d-grid .col-xxl--2 {
    grid-column: span 2;
  }
  .d-grid .col-xxl--3 {
    grid-column: span 3;
  }
  .d-grid .col-xxl--4 {
    grid-column: span 4;
  }
  .d-grid .col-xxl--5 {
    grid-column: span 5;
  }
  .d-grid .col-xxl--6 {
    grid-column: span 6;
  }
  .d-grid .col-xxl--7 {
    grid-column: span 7;
  }
  .d-grid .col-xxl--8 {
    grid-column: span 8;
  }
  .d-grid .col-xxl--9 {
    grid-column: span 9;
  }
  .d-grid .col-xxl--10 {
    grid-column: span 10;
  }
  .d-grid .col-xxl--11 {
    grid-column: span 11;
  }
  .d-grid .col-xxl--12 {
    grid-column: span 12;
  }
}

/* ============= common parts ================ */
.container {
  width: calc(100% - 36px);
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .container {
    max-width: 1110px;
  }
}
@media screen and (min-width: 992px) {
  .container {
    width: calc(100% - 120px);
  }
}

.site-body {
  padding: 0;
  margin-top: 0 !important;
}
.site-body-container {
  width: 100%;
  max-width: 100%;
}

.button {
  width: 150px;
  height: 42px;
  padding: 0;
  background-color: var(--btnColor);
  box-shadow: 0 2px 0 var(--shadowColor);
  border-radius: 5px;
  color: var(--txtColor);
  font-weight: 500;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  grid-gap: 5px;
  transition: var(--speed);
}
.button:hover {
  background-color: var(--btnColor);
  color: var(--txtColor);
  transform: translateY(2px);
  box-shadow: none;
  opacity: 1;
}
.button:focus {
  outline: 0;
}
.button--main {
  --txtColor: #fff;
  --btnColor: var(--main);
  --shadowColor: #007D25;
}
.button--ac1 {
  --txtColor: var(--main);
  --btnColor: var(--ac1);
  --shadowColor: #AA9A2B;
}
.button--white {
  border: 2px solid var(--main);
  --txtColor: var(--main);
  --btnColor: #fff;
}
.button--line::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><path d="M20 8.114C20 3.64 15.514 0 10 0C4.486 0 0 3.64 0 8.114C0 12.125 3.558 15.485 8.363 16.121C8.689 16.191 9.132 16.335 9.244 16.614C9.32098 16.908 9.33191 17.2153 9.276 17.514C9.276 17.514 9.159 18.22 9.133 18.37C9.089 18.623 8.933 19.359 9.999 18.909C12.8974 17.3835 15.5467 15.4257 17.856 13.103C19.1926 11.7823 19.9618 9.99263 20 8.114ZM6.472 10.5C6.47202 10.5522 6.45163 10.6023 6.4152 10.6397C6.37877 10.677 6.32917 10.6987 6.277 10.7H3.477C3.42689 10.6998 3.37883 10.68 3.343 10.645C3.32281 10.6267 3.30675 10.6043 3.29588 10.5793C3.28502 10.5543 3.27961 10.5273 3.28 10.5V6.147C3.28127 6.09568 3.30222 6.04682 3.33852 6.01052C3.37482 5.97422 3.42368 5.95327 3.475 5.952H4.175C4.22632 5.95327 4.27518 5.97422 4.31148 6.01052C4.34778 6.04682 4.36873 6.09568 4.37 6.147V9.607H6.277C6.32917 9.6083 6.37877 9.62995 6.4152 9.66732C6.45163 9.70468 6.47202 9.75481 6.472 9.807V10.5ZM8.163 10.5C8.16148 10.5511 8.14042 10.5998 8.10415 10.6358C8.06787 10.6719 8.01915 10.6927 7.968 10.694H7.268C7.21598 10.694 7.166 10.6738 7.12866 10.6376C7.09132 10.6013 7.06956 10.552 7.068 10.5V6.147C7.0693 6.09483 7.09095 6.04523 7.12832 6.0088C7.16568 5.97237 7.21581 5.95198 7.268 5.952H7.968C8.01932 5.95327 8.06818 5.97422 8.10448 6.01052C8.14078 6.04682 8.16173 6.09568 8.163 6.147V10.5ZM12.991 10.5C12.991 10.5255 12.986 10.5507 12.9762 10.5742C12.9665 10.5978 12.9522 10.6192 12.9342 10.6372C12.9162 10.6552 12.8948 10.6695 12.8712 10.6792C12.8477 10.689 12.8225 10.694 12.797 10.694H12.097C12.0801 10.6941 12.0633 10.6921 12.047 10.688H12.034H12.028H12.018H12.009H12.003L11.991 10.681C11.9716 10.6681 11.9546 10.6519 11.941 10.633L9.941 7.933V10.5C9.941 10.5255 9.93598 10.5507 9.92623 10.5742C9.91648 10.5978 9.90219 10.6192 9.88418 10.6372C9.86616 10.6552 9.84478 10.6695 9.82124 10.6792C9.7977 10.689 9.77248 10.694 9.747 10.694H9.047C8.99585 10.6927 8.94713 10.6719 8.91085 10.6358C8.87458 10.5998 8.85352 10.5511 8.852 10.5V6.147C8.85327 6.09568 8.87422 6.04682 8.91052 6.01052C8.94682 5.97422 8.99568 5.95327 9.047 5.952H9.784H9.795H9.802H9.814H9.82H9.831H9.837L9.847 5.958H9.853L9.863 5.965H9.868L9.872 6L9.884 6.012C9.88937 6.01838 9.89438 6.02506 9.899 6.032L11.899 8.732V6.147C11.9003 6.09568 11.9212 6.04682 11.9575 6.01052C11.9938 5.97422 12.0427 5.95327 12.094 5.952H12.794C12.8451 5.95352 12.8938 5.97458 12.9298 6.01085C12.9659 6.04713 12.9867 6.09585 12.988 6.147L12.991 10.5ZM16.865 6.845C16.8637 6.89615 16.8429 6.94487 16.8068 6.98115C16.7708 7.01742 16.7221 7.03848 16.671 7.04H14.764V7.776H16.67C16.7211 7.77752 16.7698 7.79858 16.8058 7.83485C16.8419 7.87113 16.8627 7.91985 16.864 7.971V8.671C16.864 8.72302 16.8438 8.773 16.8076 8.81034C16.7713 8.84768 16.722 8.86944 16.67 8.871H14.764V9.607H16.67C16.722 9.60856 16.7713 9.63032 16.8076 9.66766C16.8438 9.705 16.864 9.75498 16.864 9.807V10.507C16.864 10.559 16.8438 10.609 16.8076 10.6463C16.7713 10.6837 16.722 10.7054 16.67 10.707H13.87C13.8199 10.7067 13.7719 10.6869 13.736 10.652C13.7011 10.6161 13.6818 10.568 13.682 10.518V6.147C13.682 6.09703 13.7013 6.04899 13.736 6.013C13.7725 5.97834 13.8207 5.9587 13.871 5.958H16.671C16.7221 5.95952 16.7708 5.98058 16.8068 6.01685C16.8429 6.05313 16.8637 6.10185 16.865 6.153V6.845Z" fill="%23fff"/></svg>') center/contain no-repeat;
  display: block;
}
.button--mail::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="14" viewBox="0 0 20 14"><path d="M19.1143 13.7852C19.0149 13.8179 18.9112 13.8352 18.8066 13.8369H1.19434C1.08976 13.8352 0.986045 13.8179 0.886719 13.7852L6.66602 7.24219L10.001 10.0957L13.3359 7.24219L19.1143 13.7852ZM20.001 12.4736C20 12.5836 19.9872 12.6936 19.9629 12.8008L14.3125 6.4082L20.001 1.53906V12.4736ZM5.68848 6.4082L0.0380859 12.7979C0.0137913 12.6906 0.000938322 12.5807 0 12.4707V1.53906L5.68848 6.4082ZM18.8047 0C19.0593 0.00244036 19.3054 0.0943113 19.499 0.259766L9.99902 8.39062L0.5 0.259766C0.693323 0.094538 0.93906 0.00267442 1.19336 0H18.8047Z" fill="%2329AB50"/></svg>') center/contain no-repeat;
  display: block;
}

.radiusBtn {
  width: 100%;
  max-width: 350px;
  height: 60px;
  background-color: var(--ac2);
  border: 1px solid #fff;
  border-radius: 50px;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  --ls: 0.1em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: var(--speed);
}
.radiusBtn::after {
  content: "";
  width: 10px;
  height: 18px;
  background: url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%23fff"/></svg>') center/contain no-repeat;
  display: block;
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
}
.radiusBtn:hover {
  background-color: var(--ac1);
  color: var(--text);
  opacity: 1;
}
.radiusBtn:hover::after {
  background: url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%23000"/></svg>') center/contain no-repeat;
}
.radiusBtn--tp {
  background-color: transparent;
}
.radiusBtn--tp:hover {
  background-color: var(--text);
}
@media screen and (min-width: 768px) {
  .radiusBtn {
    border-width: 2px;
    font-size: 20px;
  }
}
@media screen and (min-width: 992px) {
  .radiusBtn {
    height: 80px;
    font-size: 22px;
  }
}

.cta-telWrap .telTxt {
  padding-left: 0.8824em;
  font-size: 34px;
  --lh: 1;
}
.cta-telWrap .telTxt a {
  font-weight: 700;
  --ls: 0;
  white-space: nowrap;
  text-decoration: none;
  display: flex;
  align-items: center;
  position: relative;
}
.cta-telWrap .telTxt a::before {
  content: "";
  width: 1em;
  height: 1em;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="22" viewBox="0 0 17 22" fill="none"><path d="M0.887981 2.25388C-1.09202 5.67988 0.564981 10.8959 2.67498 14.4849L2.68598 14.5039L2.69698 14.5229C4.81598 18.1029 8.58498 22.0759 12.541 21.9959C13.5986 22.0098 14.6186 21.6042 15.378 20.8679L16.065 20.1909C16.2478 20.0098 16.3537 19.7652 16.3608 19.508C16.3679 19.2508 16.2755 19.0007 16.103 18.8099L12.761 15.1369C12.5851 14.9445 12.3411 14.8284 12.0809 14.8133C11.8208 14.7981 11.5649 14.8852 11.368 15.0559L10.495 15.8169C10.2767 16.0101 10.024 16.1604 9.74998 16.2599C8.53898 16.6889 7.34998 15.7839 5.59098 12.8109L5.58198 12.7959L5.57098 12.7769C3.81798 9.80188 3.59998 8.32088 4.56098 7.46888C4.78024 7.27723 5.03367 7.12864 5.30798 7.03088L6.39598 6.63088C6.63982 6.54126 6.83922 6.36026 6.95196 6.12621C7.06469 5.89215 7.08191 5.62341 6.99998 5.37688L5.39998 0.675877C5.31644 0.432049 5.14198 0.229892 4.913 0.11158C4.68401 -0.0067313 4.41819 -0.0320604 4.17098 0.0408771L3.24598 0.314877C2.23455 0.624055 1.38673 1.32122 0.887981 2.25388Z" fill="currentColor"/></svg>') center/contain no-repeat;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-100%, -50%);
}
.cta-telWrap .telTxt small {
  font-size: clamp(12px, 41.18%, 14px);
  display: block;
}
.cta-telWrap .telTxt.txt--white a::before {
  background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="22" viewBox="0 0 17 22" fill="none"><path d="M0.887981 2.25388C-1.09202 5.67988 0.564981 10.8959 2.67498 14.4849L2.68598 14.5039L2.69698 14.5229C4.81598 18.1029 8.58498 22.0759 12.541 21.9959C13.5986 22.0098 14.6186 21.6042 15.378 20.8679L16.065 20.1909C16.2478 20.0098 16.3537 19.7652 16.3608 19.508C16.3679 19.2508 16.2755 19.0007 16.103 18.8099L12.761 15.1369C12.5851 14.9445 12.3411 14.8284 12.0809 14.8133C11.8208 14.7981 11.5649 14.8852 11.368 15.0559L10.495 15.8169C10.2767 16.0101 10.024 16.1604 9.74998 16.2599C8.53898 16.6889 7.34998 15.7839 5.59098 12.8109L5.58198 12.7959L5.57098 12.7769C3.81798 9.80188 3.59998 8.32088 4.56098 7.46888C4.78024 7.27723 5.03367 7.12864 5.30798 7.03088L6.39598 6.63088C6.63982 6.54126 6.83922 6.36026 6.95196 6.12621C7.06469 5.89215 7.08191 5.62341 6.99998 5.37688L5.39998 0.675877C5.31644 0.432049 5.14198 0.229892 4.913 0.11158C4.68401 -0.0067313 4.41819 -0.0320604 4.17098 0.0408771L3.24598 0.314877C2.23455 0.624055 1.38673 1.32122 0.887981 2.25388Z" fill="%23fff"/></svg>');
}

.secTtl {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.secTtl small {
  font-size: 80%;
}
.secTtl em {
  margin: -0.1em 0 0 0;
  font-size: 133.33%;
  font-weight: 900;
  white-space: nowrap;
  display: block;
}
.secTtl strong {
  font-size: 125%;
  font-weight: 900;
  --lh: 1.5;
}
@media screen and (min-width: 768px) {
  .secTtl strong {
    font-size: 140%;
  }
}
@media screen and (min-width: 992px) {
  .secTtl {
    font-size: 22px;
  }
  .secTtl em {
    font-size: 166.67%;
  }
}
@media screen and (min-width: 1200px) {
  .secTtl {
    font-size: 24px;
  }
}
@media screen and (min-width: 1440px) {
  .secTtl {
    font-size: 30px;
  }
}

.discList {
  margin-left: 1em;
}
.discList li {
  list-style: disc;
}

.starReview {
  color: #FA6D24;
  font-size: 14px;
  font-weight: 900;
  display: flex;
  align-items: center;
  grid-gap: 10px;
}
.starReview__star_img {
  width: 100%;
  height: 14px;
  display: block;
  object-fit: cover;
  object-position: left;
}

#page_top {
  display: none;
}

/*------------------------------------------------------
    header
-------------------------------------------------------*/
.site-header {
  background-color: transparent;
  filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.5));
  box-shadow: none;
  position: fixed;
  top: 0 !important;
  left: 0;
  z-index: 1040;
  transition: var(--speed);
}
.site-header_topBlk {
  height: var(--headerHeight);
  background-color: #fff;
  position: relative;
  z-index: 1;
}
.site-header_topBlk_catch {
  width: 100%;
  font-size: 10px;
  --ls: 0;
  --lh: 1;
  position: absolute;
  top: 5px;
  left: 0;
}
@media screen and (min-width: 768px) {
  .site-header_topBlk_catch {
    font-size: 12px;
    top: 10px;
  }
}
@media screen and (min-width: 992px) {
  .site-header_topBlk_catch {
    --lh: 1.5;
    position: relative;
    top: 0;
  }
}
@media screen and (min-width: 1200px) {
  .site-header_topBlk_catch {
    font-size: 14px;
  }
}
.site-header_btmBlk {
  padding-right: 30px;
  padding-bottom: 20px;
  height: var(--gnavHeight);
  background-color: #29AB50;
  clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 55px), close);
  position: relative;
}
@media screen and (min-width: 768px) {
  .site-header_btmBlk {
    clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 45px), close);
  }
}
@media screen and (min-width: 992px) {
  .site-header_btmBlk {
    padding-right: 0;
    padding-bottom: 40px;
    clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 80px), close);
  }
}
.site-header-container {
  max-width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  will-change: transform;
}
@media screen and (min-width: 768px) {
  .site-header-container {
    max-width: 1110px;
  }
}
@media screen and (min-width: 992px) {
  .site-header-container {
    width: calc(100% - 36px);
    justify-content: space-between;
  }
}
.site-header-logo {
  width: 180px;
  padding-top: 0;
  margin-bottom: 0;
  color: transparent;
  vertical-align: bottom;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .site-header-logo {
    width: 200px;
  }
}
@media screen and (min-width: 992px) {
  .site-header-logo {
    width: 260px !important;
    margin: 18px 0 0 !important;
  }
}
@media screen and (min-width: 1200px) {
  .site-header-logo {
    width: 300px !important;
  }
}
@media screen and (min-width: 1440px) {
  .site-header-logo {
    width: 340px !important;
  }
}
.site-header-logo img {
  max-height: inherit;
}
.site-header-teiIcon {
  width: 17px;
  height: 22px;
  margin-right: 45px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="22" viewBox="0 0 17 22" fill="none"><path d="M0.887981 2.25388C-1.09202 5.67988 0.564981 10.8959 2.67498 14.4849L2.68598 14.5039L2.69698 14.5229C4.81598 18.1029 8.58498 22.0759 12.541 21.9959C13.5986 22.0098 14.6186 21.6042 15.378 20.8679L16.065 20.1909C16.2478 20.0098 16.3537 19.7652 16.3608 19.508C16.3679 19.2508 16.2755 19.0007 16.103 18.8099L12.761 15.1369C12.5851 14.9445 12.3411 14.8284 12.0809 14.8133C11.8208 14.7981 11.5649 14.8852 11.368 15.0559L10.495 15.8169C10.2767 16.0101 10.024 16.1604 9.74998 16.2599C8.53898 16.6889 7.34998 15.7839 5.59098 12.8109L5.58198 12.7959L5.57098 12.7769C3.81798 9.80188 3.59998 8.32088 4.56098 7.46888C4.78024 7.27723 5.03367 7.12864 5.30798 7.03088L6.39598 6.63088C6.63982 6.54126 6.83922 6.36026 6.95196 6.12621C7.06469 5.89215 7.08191 5.62341 6.99998 5.37688L5.39998 0.675877C5.31644 0.432049 5.14198 0.229892 4.913 0.11158C4.68401 -0.0067313 4.41819 -0.0320604 4.17098 0.0408771L3.24598 0.314877C2.23455 0.624055 1.38673 1.32122 0.887981 2.25388Z" fill="%2329AB50"/></svg>') center/contain no-repeat;
  display: block;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .site-header-teiIcon {
    height: 22px;
    margin-right: 65px;
  }
}
.site-header-afterBlk {
  display: flex;
  align-items: center;
  grid-gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.site-header-afterBlk .btnList {
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 8px;
}
.site-header-afterBlk .cta-telWrap {
  margin-top: 6px;
}
.site-header-afterBlk .cta-telWrap .telTxt {
  font-size: 24px;
}
.site-header-afterBlk .menuToggler {
  width: 40px;
  height: 40px;
  background: #fff url('data:image/svg+xml;charset=utf8,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M33 26V28H8V26H33ZM33 21H8V19H33V21ZM33 14H8V12H33V14Z" fill="%2329AB50"/></svg>') center/contain no-repeat;
  border: 2px solid #29AB50;
  border-radius: 3px;
  box-shadow: 0px 2px 0px #007D25;
  transition: var(--speed);
}
.site-header-afterBlk .menuToggler.menu-open {
  background: #fff url('data:image/svg+xml;charset=utf8,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M33 14L22.7139 20L33 26L32 28L20.5 21.291L9 28L8 26L18.2852 20L8 14L9 12L20.5 18.708L32 12L33 14Z" fill="%2329AB50"/></svg>') center/contain no-repeat;
}
@media screen and (min-width: 992px) {
  .site-header-afterBlk {
    grid-gap: 8px;
  }
}
@media screen and (min-width: 1440px) {
  .site-header-afterBlk {
    margin-left: 20px;
  }
  .site-header-afterBlk .snsList {
    grid-gap: 30px;
  }
}
.site-header-btmNav ul {
  display: flex;
  align-items: center;
  grid-gap: 20px;
}
.site-header-btmNav ul a {
  color: #fff;
}
@media screen and (min-width: 1200px) {
  .site-header-btmNav ul {
    grid-gap: 29px;
  }
}

#vk-mobile-nav-menu-btn {
  width: 30px;
  height: 30px;
  background: transparent url('data:image/svg+xml;charset=utf8,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M33 26V28H8V26H33ZM33 21H8V19H33V21ZM33 14H8V12H33V14Z" fill="%23fff"/></svg>') center/contain no-repeat;
  border: 2px solid #fff;
  border-radius: 3px;
  box-shadow: 0px 2px 0px rgba(0, 0, 0, 0.5);
  top: 15px;
  left: auto;
  right: 20px;
  transition: background-color var(--speed) ease;
}
#vk-mobile-nav-menu-btn.menu-open {
  background: #29AB50 url('data:image/svg+xml;charset=utf8,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M33 14L22.7139 20L33 26L32 28L20.5 21.291L9 28L8 26L18.2852 20L8 14L9 12L20.5 18.708L32 12L33 14Z" fill="%23fff"/></svg>') center/contain no-repeat;
}
#vk-mobile-nav-menu-btn:hover {
  transform: translateY(2px);
  box-shadow: none;
}
@media screen and (min-width: 768px) {
  #vk-mobile-nav-menu-btn {
    width: 40px;
    height: 40px;
  }
}

.vk-mobile-nav-widget {
  width: 100%;
  max-width: 260px;
  margin-bottom: 0;
}
.vk-mobile-nav-widget .cta-telWrap {
  margin-top: 20px;
  color: var(--main);
}
.vk-mobile-nav-widget .cta-telWrap .telTxt {
  font-size: 30px;
}
.vk-mobile-nav-widget .cta-telWrap .telTxt a::before {
  background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="22" viewBox="0 0 17 22" fill="none"><path d="M0.887981 2.25388C-1.09202 5.67988 0.564981 10.8959 2.67498 14.4849L2.68598 14.5039L2.69698 14.5229C4.81598 18.1029 8.58498 22.0759 12.541 21.9959C13.5986 22.0098 14.6186 21.6042 15.378 20.8679L16.065 20.1909C16.2478 20.0098 16.3537 19.7652 16.3608 19.508C16.3679 19.2508 16.2755 19.0007 16.103 18.8099L12.761 15.1369C12.5851 14.9445 12.3411 14.8284 12.0809 14.8133C11.8208 14.7981 11.5649 14.8852 11.368 15.0559L10.495 15.8169C10.2767 16.0101 10.024 16.1604 9.74998 16.2599C8.53898 16.6889 7.34998 15.7839 5.59098 12.8109L5.58198 12.7959L5.57098 12.7769C3.81798 9.80188 3.59998 8.32088 4.56098 7.46888C4.78024 7.27723 5.03367 7.12864 5.30798 7.03088L6.39598 6.63088C6.63982 6.54126 6.83922 6.36026 6.95196 6.12621C7.06469 5.89215 7.08191 5.62341 6.99998 5.37688L5.39998 0.675877C5.31644 0.432049 5.14198 0.229892 4.913 0.11158C4.68401 -0.0067313 4.41819 -0.0320604 4.17098 0.0408771L3.24598 0.314877C2.23455 0.624055 1.38673 1.32122 0.887981 2.25388Z" fill="%2329AB50"/></svg>');
}

.vk-mobile-nav {
  width: 100%;
  padding: 60px 20px 100px;
  background-color: var(--bg2);
  border: 0;
  box-shadow: 1px 0 5px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  top: 0 !important;
}
.vk-mobile-nav .alert-info {
  display: none;
}
.vk-mobile-nav .widget_media_image {
  width: 100%;
}
.vk-mobile-nav .vk-mobile-nav-menu-outer {
  width: 100%;
  max-width: 260px;
  margin-bottom: 20px;
}
.vk-mobile-nav .vk-menu-acc {
  width: 100%;
  border: 0;
  display: grid;
  grid-gap: 10px;
}
.vk-mobile-nav .vk-menu-acc .menu-item {
  padding: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item a {
  width: 100%;
  padding: 5px 20px;
  background-color: #fff;
  border: 1px solid var(--main);
  box-shadow: 0 2px 0 #007D25;
  border-radius: 5px;
  color: var(--main);
  --ls: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item .acc-btn {
  width: 20px;
  height: 18px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" fill="none"><path d="M15.0031 5.50072V14.004H23.5063V15.0039H15.0031V23.5071H14.0032V15.0039H5.49995V14.004H14.0032V5.50072H15.0031Z" fill="%23000"/></svg>') center/contain no-repeat;
  border: 0 !important;
  display: block;
  position: relative;
  top: 1px;
  right: 0;
  flex-shrink: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu {
  width: 100%;
  padding: 0 20px;
  display: grid;
  grid-gap: 10px;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu.acc-child-open {
  padding: 20px 20px 10px;
  margin-top: 10px;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item {
  border-bottom: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item a {
  width: 100%;
  font-size: 14px;
  display: flex;
  align-items: center;
  grid-gap: 5px;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item a > span {
  font-size: 80%;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item a::after {
  content: "";
  width: 12px;
  height: 12px;
  margin-left: auto;
  background: #fff url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%23488171"/></svg>') center/5px no-repeat;
  display: block;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item:has(.sub-menu) {
  flex-direction: column;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item:has(.sub-menu) .acc-btn {
  display: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu {
  max-height: 100%;
  padding: 10px 20px;
  margin-top: 5px;
  background-color: #fff;
  opacity: 1;
  position: relative;
  inset: 0;
  transform: translate(0, 0);
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu::before {
  display: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu .menu-item {
  padding-bottom: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu .menu-item a {
  padding-bottom: 0;
  color: var(--text);
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu .menu-item a::after {
  border: 1px solid #488171;
}
.vk-mobile-nav .vk-menu-acc .menu-item .sub-menu .menu-item .sub-menu .menu-item a::before {
  background-color: #488171;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel {
  border-bottom: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > a {
  border-bottom: 1px solid #29AB50;
  color: #29AB50;
  font-weight: 700;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  grid-gap: 20px;
  pointer-events: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > a > span {
  color: #525252;
  font-weight: 300;
  font-size: 10px;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel--2Col > .sub-menu {
  grid-template-columns: repeat(2, 1fr);
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .acc-btn {
  display: none;
  pointer-events: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu {
  max-height: inherit;
  padding: 20px 0 0 0;
  grid-gap: 16px 10px;
  opacity: 1;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item {
  padding: 0;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item:has(.acc-btn) {
  flex-direction: row;
  grid-gap: 0 20px;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item:has(.acc-btn) > .acc-btn {
  display: block;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item:has(.acc-btn) > a {
  width: auto;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item > a {
  padding: 0 0 0 20px;
  color: #000;
  font-size: 13px;
  font-weight: 700;
  position: relative;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item > a::before {
  content: "-";
  width: 20px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item > a::after {
  display: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item > .sub-menu {
  max-height: 0;
  padding: 0 20px;
  opacity: 0;
  pointer-events: none;
}
.vk-mobile-nav .vk-menu-acc .menu-item.navLabel > .sub-menu > .menu-item > .sub-menu.acc-child-open {
  max-height: 10000px;
  padding: 10px 20px;
  opacity: 1;
  pointer-events: auto;
}
.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in {
  left: 100%;
  transform: translateX(-100%);
}

.vk-mobile-nav .widget_nav_menu ul.menu {
  border: 0;
  display: flex;
  flex-wrap: wrap;
  grid-gap: 5px 15px;
}
.vk-mobile-nav .widget_nav_menu ul.menu .menu-item a {
  padding: 0;
  border: 0;
  font-size: 16px;
  display: flex;
  align-items: center;
  grid-gap: 10px;
}
.vk-mobile-nav .widget_nav_menu ul.menu .menu-item a::before {
  content: "";
  width: 15px;
  height: 15px;
  background-image: linear-gradient(0deg, transparent calc(50% - 0.5px), #E8F0E8 calc(50% - 0.5px), #E8F0E8 calc(50% + 0.5px), transparent calc(50% + 0.5px)), linear-gradient(90deg, var(--text) calc(50% - 0.5px), #E8F0E8 calc(50% - 0.5px), #E8F0E8 calc(50% + 0.5px), var(--text) calc(50% + 0.5px));
  background-size: 15px 15px;
  background-repeat: repeat;
  background-position: left top;
  display: block;
  flex-shrink: 0;
}
.vk-mobile-nav .widget_nav_menu ul.menu .menu-item:nth-child(3n+3) {
  width: 100%;
}

.header_scrolled .site-header {
  width: 100%;
  background-color: transparent;
  animation: none;
  transform: none;
}
.header_scrolled .site-header-logo {
  display: block;
}
@media screen and (min-width: 768px) {
  .header_scrolled .site-header_topBlk {
    display: none !important;
  }
}
@media screen and (min-width: 992px) {
  .header_scrolled .site-header {
    background-color: transparent;
    box-shadow: none;
  }
}
.header_scrolled.is-header-hidden .site-header {
  transform: translateY(calc(-100% - 10px));
}
.header_scrolled.is-header-hidden #vk-mobile-nav-menu-btn {
  background: #fff url('data:image/svg+xml;charset=utf8,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M33 26V28H8V26H33ZM33 21H8V19H33V21ZM33 14H8V12H33V14Z" fill="%2329AB50"/></svg>') center/contain no-repeat;
  border-color: var(--main);
}

.device-pc .global-nav-list > li > a {
  overflow: hidden;
  text-align: left;
  position: relative;
  height: auto;
}
@media screen and (min-width: 992px) {
  .device-pc .global-nav-list > li > a {
    padding: 0;
  }
}

/*------------------------------------------------------
    main
-------------------------------------------------------*/
.page-header {
  height: calc(var(--gnavHeight) - 30px + clamp(170px, 40vw, 240px));
  padding-top: calc(var(--gnavHeight) - 30px);
  background: transparent;
}
.page-header::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--bg2);
  clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 55px), close);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.page-header {
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-header {
    height: calc(var(--gnavHeight) - 40px + 260px);
  }
  .page-header::before {
    clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 45px), close);
  }
}
@media screen and (min-width: 992px) {
  .page-header {
    height: calc(var(--headerHeight) + var(--gnavHeight) - 40px + min(30vw, 330px));
    padding-top: calc(var(--headerHeight) + var(--gnavHeight) - 40px);
  }
  .page-header::before {
    clip-path: shape(from 0 0, line to 100% 0, line to 100% 100%, curve to 0 100% with 50% calc(100% - 80px), close);
  }
}
@media screen and (min-width: 1200px) {
  .page-header {
    padding-top: calc(var(--headerHeight) + var(--gnavHeight));
  }
}
.page-header-inner {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 25px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .page-header-inner {
    font-size: 30px;
  }
}
@media screen and (min-width: 992px) {
  .page-header-inner {
    font-size: 35px;
  }
}
@media screen and (min-width: 1200px) {
  .page-header-inner {
    font-size: 40px;
  }
}
@media screen and (min-width: 1440px) {
  .page-header-inner {
    font-size: 45px;
  }
}
@media screen and (min-width: 1600px) {
  .page-header-inner {
    font-size: 50px;
  }
}
@media screen and (min-width: 1920px) {
  .page-header-inner {
    font-size: 55px;
  }
}
.page-header-title, .page-header h1.page-header-title {
  color: var(--main);
  font-size: 100%;
  font-weight: 600;
  line-height: var(--lh);
  --lh: 1.2;
  text-align: left;
  opacity: 0;
  animation: page-header-animation-txt 1s 0.3s ease forwards;
}
.page-header-title span, .page-header h1.page-header-title span {
  display: block;
}
.page-header-enttl {
  padding-left: 0.25em;
  color: rgba(41, 171, 80, 0.5);
  font-size: 45.45%;
  font-weight: 700;
  font-family: var(--en);
  opacity: 0;
  animation: page-header-animation-txt 1s 0.3s ease forwards;
}
@keyframes page-header-animation-bg {
  from {
    -webkit-backdrop-filter: blur(30px);
            backdrop-filter: blur(30px);
  }
  to {
    -webkit-backdrop-filter: blur(0);
            backdrop-filter: blur(0);
  }
}
@keyframes page-header-animation-txt {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.page-header-mv {
  width: 50%;
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .page-header-mv {
    width: 40%;
    right: 0;
  }
}

.breadcrumb {
  margin-bottom: 0;
  border: 0;
  animation: breadcrumb-animation 1s ease;
  --bs-breadcrumb-font-size: 10px;
}
@media screen and (min-width: 992px) {
  .breadcrumb {
    --bs-breadcrumb-font-size: 12px;
  }
}
.breadcrumb-list {
  padding: 1em 0;
}
.breadcrumb-list li {
  display: inline-flex;
  align-items: center;
}
.breadcrumb-list__item a {
  text-decoration: none;
  opacity: 0.5;
}
@keyframes breadcrumb-animation {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.site-body:has(.customized-page) {
  padding: 0;
}
.site-body:has(.customized-page) .site-body-container {
  display: contents;
}
.site-body:has(.customized-page) .main-section {
  margin-bottom: 0;
}

.main-section-no-posts {
  padding: 50px 0;
  text-align: center;
}

.customized-page {
  width: 100%;
  position: relative;
}

.section-ttl {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .section-ttl {
    font-size: 25px;
  }
}
@media screen and (min-width: 992px) {
  .section-ttl {
    font-size: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .section-ttl {
    font-size: 35px;
  }
}
@media screen and (min-width: 1440px) {
  .section-ttl {
    font-size: 40px;
  }
}
@media screen and (min-width: 1600px) {
  .section-ttl {
    font-size: 45px;
  }
}
@media screen and (min-width: 1920px) {
  .section-ttl {
    font-size: 50px;
  }
}

.page-navigation {
  width: 100%;
  padding: 50px 0;
}
@media screen and (min-width: 768px) {
  .page-navigation {
    padding: 60px 0;
  }
}
@media screen and (min-width: 992px) {
  .page-navigation {
    padding: 80px 0;
  }
}
@media screen and (min-width: 768px) {
  .page-navigation__container {
    max-width: 550px;
  }
}
@media screen and (min-width: 992px) {
  .page-navigation__container {
    max-width: 700px;
  }
}
.page-navigation__ttl {
  padding-bottom: 0.5em;
  font-size: 125%;
  text-align: center;
  position: relative;
}
.page-navigation__ttl::after {
  content: "";
  width: 5em;
  height: 1px;
  background-color: var(--main);
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 992px) {
  .page-navigation__ttl {
    font-size: 150%;
  }
}
.page-navigation__list .moreBtn {
  width: 260px;
  height: auto;
  min-height: 60px;
  margin: 0 auto;
  line-height: 1.2;
}
.page-navigation__list .moreBtn__txt {
  padding: 10px 0;
  display: block;
  transform: translateY(-5%);
}
.page-navigation__list .moreBtn small {
  color: var(--main);
  font-size: 80%;
}
.page-navigation__list .moreBtn:hover small {
  color: #fff;
}
.page-navigation__list .moreBtn--wide::before {
  background: #fff url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%2379BE32"/></svg>') center/8px no-repeat;
}
.page-navigation__list .moreBtn--wide .moreBtn__txt {
  padding: 10px 0;
}
.page-navigation__list .moreBtn--wide > span {
  background-color: #79BE32;
  color: #fff;
}
.page-navigation__list .moreBtn--wide small {
  color: rgba(255, 255, 255, 0.5);
}
.page-navigation__list .moreBtn--wide:hover::before {
  background: #79BE32 url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%23fff"/></svg>') center/8px no-repeat;
}
.page-navigation__list .moreBtn--wide:hover > span {
  background-color: #fff;
  color: #79BE32;
}
.page-navigation__list .moreBtn--wide:hover small {
  color: #79BE32;
}
@media screen and (max-width: 767px) {
  .page-navigation__list:not(:has(.col-md-6)) .moreBtn--wide {
    width: 100%;
    min-height: 70px;
  }
  .page-navigation__list:not(:has(.col-md-6)) .moreBtn--wide .moreBtn__txt {
    line-height: 1.2;
  }
}
@media screen and (min-width: 768px) {
  .page-navigation__list .moreBtn {
    width: 100%;
  }
  .page-navigation__list .moreBtn--wide {
    width: 100%;
  }
}
@media screen and (min-width: 992px) {
  .page-navigation__list .moreBtn--wide::before {
    min-height: 80px;
  }
}
@media screen and (min-width: 768px) {
  .page-navigation--nextprev .page-navigation__container {
    width: 100%;
    max-width: 100%;
  }
}
.page-navigation--nextprev .page-navigation__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 20px;
}
.page-navigation--nextprev .page-navigation__list .moreBtn {
  min-height: 50px;
}
.page-navigation--nextprev .page-navigation__list .moreBtn::before {
  width: 50px;
  height: 50px;
}
.page-navigation--nextprev .page-navigation__list .moreBtn--prev::before {
  transform: scale(-1, 1);
}
.page-navigation--nextprev .page-navigation__list .moreBtn--next::before {
  order: 1;
}
@media screen and (min-width: 768px) {
  .page-navigation--nextprev .page-navigation__list {
    flex-direction: row;
    justify-content: space-between;
  }
  .page-navigation--nextprev .page-navigation__list .moreBtn {
    width: 240px;
  }
}
@media screen and (min-width: 992px) {
  .page-navigation--nextprev .page-navigation__list .moreBtn::before {
    width: 60px;
    height: 60px;
  }
  .page-navigation--nextprev .page-navigation__list .moreBtn > span {
    font-size: 100%;
  }
}
.page-navigation.bg--white .page-navigation__list .moreBtn--wide, .page-navigation.bg .page-navigation__list .moreBtn--wide {
  border-color: #79BE32;
}

.pagination ul.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 5px;
}
.pagination ul.page-numbers a.page-numbers, .pagination ul.page-numbers span.page-numbers {
  padding: 0 9px;
  margin: 0;
  border: 1px solid var(--main);
  color: var(--main);
}
.pagination ul.page-numbers a.page-numbers.dots, .pagination ul.page-numbers a.page-numbers.prev, .pagination ul.page-numbers a.page-numbers.next, .pagination ul.page-numbers span.page-numbers.dots, .pagination ul.page-numbers span.page-numbers.prev, .pagination ul.page-numbers span.page-numbers.next {
  border: 0;
}
.pagination ul.page-numbers a.page-numbers.current, .pagination ul.page-numbers span.page-numbers.current {
  background-color: var(--main);
  color: #fff;
  pointer-events: none;
}
.pagination ul.page-numbers a.page-numbers:hover, .pagination ul.page-numbers span.page-numbers:hover {
  background-color: var(--main);
  color: #fff;
}
.pagination ul.page-numbers a.page-numbers.prev, .pagination ul.page-numbers a.page-numbers.next, .pagination ul.page-numbers span.page-numbers.prev, .pagination ul.page-numbers span.page-numbers.next {
  background: url('data:image/svg+xml;charset=utf8,<svg width="10" height="17" viewBox="0 0 10 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 8.50049L1.42534 17L0 15.5862L7.14834 8.49951L0 1.41285L1.42534 0L10 8.50049Z" fill="%2329AB50"/></svg>') center/8px no-repeat;
  text-indent: -9999px;
}
.pagination ul.page-numbers a.page-numbers.prev, .pagination ul.page-numbers span.page-numbers.prev {
  transform: scale(-1, 1);
}
.pagination ul.page-numbers li:first-child > .page-numbers, .pagination ul.page-numbers li:last-child > .page-numbers {
  border-radius: 0;
}

.postContentsField * {
  line-height: 1.8;
}
.postContentsField h2:not(:first-child), .postContentsField h3:not(:first-child), .postContentsField h4:not(:first-child), .postContentsField h5:not(:first-child) {
  margin-top: 1.8em;
}
.postContentsField h2:not(:last-child), .postContentsField h3:not(:last-child), .postContentsField h4:not(:last-child), .postContentsField h5:not(:last-child) {
  margin-bottom: 1em;
}
.postContentsField h2 {
  padding-left: 0.5em;
  border-left: 5px solid var(--main);
  font-size: 137.5%;
  font-weight: 600;
  position: relative;
}
.postContentsField h3 {
  padding-bottom: 0.2778em;
  border-bottom: 1px solid var(--main);
  color: var(--main);
  font-size: 112.5%;
  font-weight: 600;
}
.postContentsField h4 {
  background-color: rgba(255, 231, 66, 0.5);
  color: var(--main);
  font-weight: 600;
}
.postContentsField h5 {
  font-weight: 600;
}
.postContentsField figure:not(:first-child) {
  margin-top: 1.8em;
}
.postContentsField figure:not(:last-child) {
  margin-bottom: 1.8em;
}
.postContentsField p {
  line-height: 1.8;
}
.postContentsField p + p {
  margin-top: 1.8em;
}
.postContentsField a {
  color: var(--main);
}
.postContentsField ul {
  line-height: 1.8;
}
.postContentsField ul > li {
  padding-left: 1em;
  margin: 0.2em 0;
  position: relative;
}
.postContentsField ul > li::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  background-color: var(--main);
  border-radius: 50%;
  position: absolute;
  top: 0.75em;
  left: 0;
}
.postContentsField ul > li:first-child {
  margin-top: 0;
}
.postContentsField ul > li:last-child {
  margin-bottom: 0;
}
.postContentsField ul:not(:first-child) {
  margin-top: 1.8em;
}
.postContentsField ul:not(:last-child) {
  margin-bottom: 1.8em;
}
.postContentsField ol {
  line-height: 1.8;
  counter-reset: list 0;
}
.postContentsField ol > li {
  padding-left: 1em;
  margin: 0.2em 0;
  position: relative;
}
.postContentsField ol > li::before {
  counter-increment: list 1;
  content: counter(list) ".";
  color: var(--main);
  letter-spacing: 0;
  position: absolute;
  left: 0;
}
.postContentsField ol > li:first-child {
  margin-top: 0;
}
.postContentsField ol > li:last-child {
  margin-bottom: 0;
}
.postContentsField ol:has(li:nth-child(10)) > li {
  padding-left: 1.5em;
}
.postContentsField ol:has(li:nth-child(10)) > li::before {
  width: 1.4em;
  white-space: nowrap;
  text-align: right;
}
.postContentsField ol:not(:first-child) {
  margin-top: 1.8em;
}
.postContentsField ol:not(:last-child) {
  margin-bottom: 1.8em;
}
.postContentsField img {
  width: auto;
  max-width: 100%;
}
.postContentsField .wp-caption {
  width: 100%;
  max-width: 100%;
}
.postContentsField .cta-box {
  margin: 60px 0;
  display: flex;
  justify-content: space-between;
  font-size: 87.5%;
  grid-gap: 1.25em;
}
.postContentsField .cta-box .cta-btn {
  width: 100%;
  height: auto;
  padding: 10px 0;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.postContentsField .cta-box .cta-btn.cta-gr {
  background-color: #29AB50;
}
.postContentsField .cta-box .cta-btn.cta-og {
  background-color: #ffa500;
}
@media screen and (min-width: 992px) {
  .postContentsField .cta-box .cta-btn {
    padding: 20px 0;
    font-size: 16px;
  }
}
.postContentsField .moreBtn {
  width: auto;
  min-width: 220px;
  height: auto;
  min-height: 60px;
  padding-left: 60px;
  border: 1px solid var(--main);
  justify-content: center;
  position: relative;
}
.postContentsField .moreBtn::before {
  height: 100%;
  background-color: var(--main);
  position: absolute;
  top: 0;
  left: 0;
}
.postContentsField .moreBtn .wp-block-button__link {
  background-color: #fff;
}
@media screen and (min-width: 992px) {
  .postContentsField .moreBtn {
    width: auto;
    min-width: 260px;
    height: auto;
    min-height: 80px;
    padding-left: 80px;
  }
}

body.error404 .main-section {
  padding: 60px 0;
  text-align: center;
}
body.error404 .site-body-bottom {
  display: none;
}

/*------------------------------------------------------
    footer
-------------------------------------------------------*/
.site-footer {
  padding: 40px 0 0;
  background-color: #fff;
  border-top: 0;
  font-size: 100%;
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .site-footer {
    padding: 60px 0 0;
  }
}
.site-footer-container {
  margin-bottom: 200px;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 30px;
}
@media screen and (min-width: 768px) {
  .site-footer-container {
    margin-bottom: 115px;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    grid-gap: 40px 0;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-container {
    width: calc(100% - 36px);
    grid-gap: 50px 0;
  }
}
@media screen and (min-width: 1200px) {
  .site-footer-container {
    grid-gap: 75px 0;
  }
}
.site-footer-logo {
  width: 100%;
}
.site-footer-logo img {
  max-width: 300px;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .site-footer-logo img {
    max-width: 350px;
  }
}
.site-footer-miniMenu {
  margin-top: 15px;
  font-size: 12px;
  display: flex;
  align-items: center;
  grid-gap: 10px;
}
.site-footer-miniMenu li:not(:last-child) {
  padding-right: 12px;
  position: relative;
}
.site-footer-miniMenu li:not(:last-child)::after {
  content: "|";
  position: absolute;
  right: 0;
  transform: translateX(50%);
}
.site-footer-miniMenu a {
  text-decoration: none;
}
.site-footer-miniMenu a:hover {
  color: var(--main);
}
@media screen and (min-width: 768px) {
  .site-footer-miniMenu {
    margin-top: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .site-footer-miniMenu {
    font-size: 14px;
  }
}
.site-footer-info {
  width: 100%;
  font-size: 14px;
}
.site-footer-info .siteTitle {
  margin-bottom: 1.1364em;
  font-size: 137.5%;
  font-weight: 700;
  --ls: 0.1em;
}
.site-footer-info .siteTitle small {
  font-size: 63.64%;
  font-weight: 500;
}
.site-footer-info .siteInfo {
  margin-bottom: 0.625em;
  --ls: 0.1em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.site-footer-info .siteInfo > span {
  white-space: nowrap;
}
.site-footer-info .siteInfo > span:not(:last-child)::after {
  content: "｜";
}
.site-footer-info .address {
  --ls: 0.1em;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 0.375em;
}
.site-footer-info .address a {
  text-decoration: none;
}
.site-footer-info .address a:hover {
  color: var(--main);
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .site-footer-info {
    width: auto;
  }
  .site-footer-info .siteInfo {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-info {
    width: calc((100% - 147px) / 2);
    font-size: 15px;
  }
}
@media screen and (min-width: 1200px) {
  .site-footer-info {
    font-size: 16px;
  }
}
.site-footer-nav {
  width: 100%;
  font-size: 14px;
}
.site-footer-nav .footerNavWrap {
  display: grid;
  grid-template-columns: auto auto;
  grid-gap: 20px;
}
.site-footer-nav .footerNav {
  display: grid;
  grid-gap: 0.75em 0.625em;
  align-content: flex-start;
}
.site-footer-nav .footerNav a:hover {
  color: var(--main);
}
@media screen and (min-width: 768px) {
  .site-footer-nav {
    width: auto;
  }
  .site-footer-nav .footerNavWrap {
    grid-gap: 40px;
  }
  .site-footer-nav .footerNav {
    grid-gap: 0.75em 0;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-nav {
    width: calc((100% - 147px) / 2);
    font-size: 15px;
  }
  .site-footer-nav .footerNavWrap {
    grid-gap: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .site-footer-nav {
    font-size: 16px;
  }
  .site-footer-nav .footerNavWrap {
    grid-gap: 40px;
  }
}
.site-footer-btnWrap {
  width: 100%;
  max-width: 250px;
}
.site-footer-btnWrap .btnList {
  width: 100%;
  display: grid;
  grid-gap: 10px;
}
.site-footer-btnWrap .btnList .button {
  width: 100%;
  height: 35px;
  font-size: 14px;
  box-shadow: none;
}
.site-footer-btnWrap .btnList .button:hover {
  transform: translateY(0);
}
.site-footer-btnWrap .btnList .button--main {
  border: 2px solid var(--main);
}
.site-footer-btnWrap .btnList .button--main:hover {
  --txtColor: var(--main);
  --btnColor: #fff;
}
.site-footer-btnWrap .btnList .button--ac1 {
  border: 2px solid var(--ac1);
}
.site-footer-btnWrap .btnList .button--ac1:hover {
  --txtColor: var(--ac1);
  --btnColor: var(--main);
  border-color: var(--main);
}
.site-footer-btnWrap .btnList .button--white:hover {
  --txtColor: #fff;
  --btnColor: var(--main);
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .site-footer-btnWrap {
    max-width: 460px;
  }
  .site-footer-btnWrap .btnList {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 992px) {
  .site-footer-btnWrap {
    width: 147px;
    flex-shrink: 0;
  }
}
.site-footer-cta {
  width: 100%;
  padding: 30px 0 40px;
  background-color: var(--main);
  transition: var(--speed);
}
@media screen and (min-width: 768px) {
  .site-footer-cta {
    height: 120px;
    padding: 0;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-cta {
    height: 100px;
  }
}
.site-footer-cta-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 20px;
}
@media screen and (min-width: 768px) {
  .site-footer-cta-container {
    max-width: 1030px;
    flex-direction: row;
    justify-content: center;
    grid-gap: 18px;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-cta-container {
    width: calc(100% - 36px);
    justify-content: flex-start;
  }
}
.site-footer-cta-btnWrap .btnList {
  width: 200px;
  display: grid;
  grid-gap: 10px;
}
@media screen and (min-width: 768px) {
  .site-footer-cta-btnWrap .btnList {
    grid-gap: 5px;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-cta-btnWrap .btnList {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
  }
}
.site-footer-cta-btnWrap .button {
  width: 100%;
  max-width: 220px;
  transition: transform var(--speed) ease;
}
.site-footer-cta-btnWrap .button--main {
  border: 2px solid #fff;
}
@media screen and (min-width: 992px) {
  .site-footer-cta-btnWrap .button {
    width: 250px;
    max-width: 100%;
  }
}
.site-footer-cta-img {
  width: 120px;
  flex-shrink: 0;
  align-self: stretch;
  position: absolute;
  top: -30px;
  right: 0;
  transform: translateY(-100%);
  pointer-events: none;
}
.site-footer-cta-img img {
  width: 120%;
  max-width: 200%;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  .site-footer-cta-img {
    position: relative;
    inset: 0;
    transform: translateY(0);
  }
  .site-footer-cta-img img {
    width: 178%;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-cta-img {
    margin-left: auto;
  }
}
@media screen and (min-width: 1200px) {
  .site-footer-cta-img {
    width: 150px;
  }
}
.site-footer-cta.is-float {
  background-color: transparent;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2010;
}
@media screen and (max-width: 991px) {
  .site-footer-cta.is-float {
    height: auto;
    padding: 10px 0;
  }
  .site-footer-cta.is-float .site-footer-cta-container {
    flex-direction: row;
    justify-content: center;
    grid-gap: 10px;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap {
    width: 42px;
    height: 42px;
    background: #fff url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="22" viewBox="0 0 17 22" fill="none"><path d="M0.887981 2.25388C-1.09202 5.67988 0.564981 10.8959 2.67498 14.4849L2.68598 14.5039L2.69698 14.5229C4.81598 18.1029 8.58498 22.0759 12.541 21.9959C13.5986 22.0098 14.6186 21.6042 15.378 20.8679L16.065 20.1909C16.2478 20.0098 16.3537 19.7652 16.3608 19.508C16.3679 19.2508 16.2755 19.0007 16.103 18.8099L12.761 15.1369C12.5851 14.9445 12.3411 14.8284 12.0809 14.8133C11.8208 14.7981 11.5649 14.8852 11.368 15.0559L10.495 15.8169C10.2767 16.0101 10.024 16.1604 9.74998 16.2599C8.53898 16.6889 7.34998 15.7839 5.59098 12.8109L5.58198 12.7959L5.57098 12.7769C3.81798 9.80188 3.59998 8.32088 4.56098 7.46888C4.78024 7.27723 5.03367 7.12864 5.30798 7.03088L6.39598 6.63088C6.63982 6.54126 6.83922 6.36026 6.95196 6.12621C7.06469 5.89215 7.08191 5.62341 6.99998 5.37688L5.39998 0.675877C5.31644 0.432049 5.14198 0.229892 4.913 0.11158C4.68401 -0.0067313 4.41819 -0.0320604 4.17098 0.0408771L3.24598 0.314877C2.23455 0.624055 1.38673 1.32122 0.887981 2.25388Z" fill="%2329AB50"/></svg>') center/45% no-repeat;
    border: 2px solid var(--main);
    border-radius: 3px;
    box-shadow: 0px 2px 0px rgba(0, 0, 0, 0.5);
    transition: var(--speed);
    flex-shrink: 0;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap:hover {
    transform: translateY(2);
    box-shadow: none;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap .telTxt {
    display: contents;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap .telTxt a {
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    overflow: hidden;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap .telTxt a::before {
    display: none;
  }
  .site-footer-cta.is-float .site-footer-cta-telWrap .telTxt small {
    display: none;
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap {
    width: 100%;
    max-width: 300px;
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap .btnList {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap .button--main {
    border: 0;
  }
  .site-footer-cta.is-float .site-footer-cta-img {
    display: none;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-cta.is-float .site-footer-cta-telWrap {
    display: none;
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap {
    position: fixed;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap .btnList {
    width: 50px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap .button {
    width: 100%;
    height: 220px;
    font-size: 18px;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
  .site-footer-cta.is-float .site-footer-cta-btnWrap .button--main {
    border: 0;
  }
  .site-footer-cta.is-float .site-footer-cta-img {
    width: 100px;
    position: fixed;
    bottom: 0;
    right: 0;
  }
}

/*------------------------------------------------------
  animation
-------------------------------------------------------*/
.js-fadeIn, .js-fade, .js-dropIn {
  opacity: 0;
}

@keyframes appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}