/**
* Foundation
* ========================== */
@import url("https://cdn.jsdelivr.net/npm/destyle.css@4.0.0/destyle.min.css");
:root {
  --design-width: 430;
}

* {
  background-repeat: no-repeat;
}

@media (prefers-color-scheme: dark) {
  body::-webkit-scrollbar {
    background-color: #fff;
  }
  body::-webkit-scrollbar-thumb {
    background: #d6d6d6;
    border-radius: 6px;
    border-right: 3px solid transparent;
    border-left: 3px solid transparent;
    background-clip: padding-box;
  }
  ::-webkit-scrollbar-track {
    margin-top: 3px;
    margin-bottom: 3px;
  }
}
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@supports (-webkit-touch-callout: none) {
  @media (min-width: 768px) and (max-width: 1366px) {
    body {
      min-width: 1440px;
    }
  }
}
html {
  height: 100%;
  font-size: 62.5%;
  /* scroll-padding-top: 100px; */
  /* scroll-behavior: smooth; */
}

body, input, select, textarea {
  font-family: "Zen Maru Gothic", sans-serif;
  line-height: 1.6;
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 500;
  width: 100%;
  color: #231815;
}
@media screen and (max-width: 767px) {
  body, input, select, textarea {
    font-size: min(14 / var(--design-width) * 100vw, 14px);
  }
}

body {
  margin: 0;
}

.body-wrap {
  min-height: 100svh;
  max-width: 430px;
  margin-inline: auto;
  /* overflow-x: hidden; */
  position: relative;
}

body.fixed {
  position: fixed;
  width: 100%;
}

a {
  color: #231815;
}
a:hover {
  color: #231815;
}

img {
  max-width: 100%;
}

/**
* Layout
* ========================== */
.l-wrap {
  padding-left: min(24 / var(--design-width) * 100vw, 24px);
  padding-right: min(24 / var(--design-width) * 100vw, 24px);
}

.l-section {
  padding: min(100 / var(--design-width) * 100vw, 100px) 0;
}
.l-section > *:first-child {
  margin-top: 0;
}
.l-section > *:last-child {
  margin-bottom: 0;
}
.l-section.--huge {
  padding: min(140 / var(--design-width) * 100vw, 140px) 0;
}
.l-section.--large {
  padding: min(120 / var(--design-width) * 100vw, 120px) 0;
}
.l-section.--middle {
  padding: min(80 / var(--design-width) * 100vw, 80px) 0;
}
.l-section.--small {
  padding: min(60 / var(--design-width) * 100vw, 60px) 0;
}
.l-section.--pt-0 {
  padding-top: 0;
}
.l-section.--pb-0 {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .l-section.--sp-pt-0 {
    padding-top: 0;
  }
  .l-section.--sp-pb-0 {
    padding-bottom: 0;
  }
}

/* Object
* ========================== */
/* Component ------------ */
.c-button-01 {
  margin-top: min(36 / var(--design-width) * 100vw, 36px);
}
.c-button-01 > a, .c-button-01 > input, .c-button-01 > span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(4 / var(--design-width) * 100vw, 4px) 0;
  width: min(260 / var(--design-width) * 100vw, 260px);
  height: min(60 / var(--design-width) * 100vw, 60px);
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 700;
  background-color: #FFF23F;
  border: 2px solid #000000;
  border-radius: 9999px;
  margin: 0 auto;
}
.c-button-02 {
  margin-top: min(36 / var(--design-width) * 100vw, 36px);
  text-align: center;
}
.c-button-02 > a, .c-button-02 > input, .c-button-02 > span {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(12 / var(--design-width) * 100vw, 12px);
  height: min(42 / var(--design-width) * 100vw, 42px);
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 700;
  background-color: #FFF23F;
  border: 2px solid #000000;
  border-radius: 9999px;
  margin: 0 auto;
  padding: 0 min(16 / var(--design-width) * 100vw, 16px);
}
.c-button-03 {
  margin-top: min(60 / var(--design-width) * 100vw, 60px);
  text-align: center;
}
.c-button-03 > a, .c-button-03 > input, .c-button-03 > span {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(12 / var(--design-width) * 100vw, 12px);
  width: min(180 / var(--design-width) * 100vw, 180px);
  height: min(42 / var(--design-width) * 100vw, 42px);
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 700;
  background-color: #FFF23F;
  border: 2px solid #000000;
  border-radius: 9999px;
  margin: 0 auto;
  padding: 0 min(16 / var(--design-width) * 100vw, 16px);
  cursor: pointer;
}
.c-heading-01 {
  margin-bottom: min(20 / var(--design-width) * 100vw, 20px);
  margin-top: min(20 / var(--design-width) * 100vw, 20px);
}
.c-heading-01 .e-heading-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(8 / var(--design-width) * 100vw, 8px);
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 700;
  color: #DF4E00;
}
.c-heading-01 .e-heading-01::before, .c-heading-01 .e-heading-01::after {
  content: "";
  display: block;
  width: min(36 / var(--design-width) * 100vw, 36px);
  height: 1px;
  background-color: #DF4E00;
}
.c-heading-01 .e-catch-01 {
  text-align: center;
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 700;
  margin-top: min(8 / var(--design-width) * 100vw, 8px);
}
.c-heading-01 .e-station-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0 min(12 / var(--design-width) * 100vw, 12px);
}
.c-heading-01 .e-station-01 .m-name-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(320 / var(--design-width) * 100vw, 320px);
  font-size: min(42 / var(--design-width) * 100vw, 42px);
  font-weight: 700;
}
.c-heading-01 .e-station-01 .m-name-01 img {
  width: min(18 / var(--design-width) * 100vw, 18px);
}
.c-heading-01 .e-station-01 .m-text-01 {
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 700;
  padding-bottom: min(4 / var(--design-width) * 100vw, 4px);
}
.c-heading-01 .e-name-en-01 {
  font-family: "Lilita One", sans-serif;
  text-align: center;
  font-size: min(10 / var(--design-width) * 100vw, 10px);
  margin-top: min(-2 / var(--design-width) * 100vw, -2px);
}

.c-heading-02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(4 / var(--design-width) * 100vw, 4px);
}
.c-heading-02 .e-heading-01 {
  background-color: #ffffff;
  color: #DF4E00;
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 700;
  line-height: 1;
  display: inline-block;
  padding: min(8 / var(--design-width) * 100vw, 8px) min(8 / var(--design-width) * 100vw, 8px);
  width: min(242 / var(--design-width) * 100vw, 242px);
  text-align: center;
}
.c-heading-02 .e-catch-01 {
  font-family: "Lilita One", sans-serif;
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  display: inline-block;
  color: #ffffff;
}

.c-heading-03 {
  text-align: center;
  color: #DF4E00;
  background-image: url("../img/cmn-dot-01.webp");
  background-size: min(9 / var(--design-width) * 100vw, 9px) auto;
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-bottom: min(40 / var(--design-width) * 100vw, 40px);
  margin-bottom: min(72 / var(--design-width) * 100vw, 72px);
  position: relative;
}
.c-heading-03 .e-catch-01 {
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 700;
}
.c-heading-03 .e-heading-01 {
  font-size: min(56 / var(--design-width) * 100vw, 56px);
  font-family: "Lilita One", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-top: min(8 / var(--design-width) * 100vw, 8px);
}
.c-heading-03.--v-02 {
  color: #3CA64C;
  background-image: url("../img/cmn-dot-02.webp");
}
.c-heading-03.--v-03 {
  color: #231815;
  background: none;
  padding-bottom: 0;
  margin-bottom: min(32 / var(--design-width) * 100vw, 32px);
}
.c-heading-03.--v-area01 .e-illust-01 {
  position: absolute;
  right: min(32 / var(--design-width) * 100vw, 32px);
  top: -56px;
  width: min(150 / var(--design-width) * 100vw, 150px);
}
.c-heading-03.--v-area02 .e-illust-01 {
  position: absolute;
  right: min(24 / var(--design-width) * 100vw, 24px);
  top: -84px;
  width: min(84 / var(--design-width) * 100vw, 84px);
}
.c-heading-03.--v-area03 .e-illust-01 {
  position: absolute;
  left: min(20 / var(--design-width) * 100vw, 20px);
  bottom: -64px;
  width: min(105 / var(--design-width) * 100vw, 105px);
}
.c-heading-03.--v-area04 .e-illust-01 {
  position: absolute;
  right: min(24 / var(--design-width) * 100vw, 24px);
  top: -90px;
  width: min(111 / var(--design-width) * 100vw, 111px);
}
.c-heading-03.--v-area05 .e-illust-01 {
  position: absolute;
  right: min(40 / var(--design-width) * 100vw, 40px);
  bottom: -48px;
  width: min(70 / var(--design-width) * 100vw, 70px);
}
.c-heading-03.--v-area06 .e-illust-01 {
  position: absolute;
  left: min(40 / var(--design-width) * 100vw, 40px);
  top: -72px;
  width: min(70 / var(--design-width) * 100vw, 70px);
}
.c-heading-03.--v-area07 .e-illust-01 {
  position: absolute;
  right: min(20 / var(--design-width) * 100vw, 20px);
  bottom: -56px;
  width: min(95 / var(--design-width) * 100vw, 95px);
}
.c-heading-03.--v-area08 .e-illust-01 {
  position: absolute;
  left: min(36 / var(--design-width) * 100vw, 36px);
  top: -76px;
  width: min(84 / var(--design-width) * 100vw, 84px);
}

.c-heading-04 {
  text-align: center;
  position: relative;
  padding: min(60 / var(--design-width) * 100vw, 60px) 0 min(12 / var(--design-width) * 100vw, 12px);
  border-bottom: 2px solid #DF4E00;
  margin-bottom: min(20 / var(--design-width) * 100vw, 20px);
}
.c-heading-04 .e-heading-01 {
  font-size: min(19 / var(--design-width) * 100vw, 19px);
  font-weight: 900;
  line-height: 1;
}
.c-heading-04 .e-catch-01 {
  font-family: "Lilita One", sans-serif;
  font-size: min(16 / var(--design-width) * 100vw, 16px);
  color: #DF4E00;
  margin-top: min(4 / var(--design-width) * 100vw, 4px);
}
.c-heading-04 .e-catch-02 {
  position: absolute;
  left: 50%;
  top: -50px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: min(100 / var(--design-width) * 100vw, 100px);
}
.c-heading-04.--v-02 {
  border-bottom: 2px solid #3CA64C;
}
.c-heading-04.--v-02 .e-catch-01 {
  color: #3CA64C;
}

.c-heading-05 {
  margin-bottom: min(4 / var(--design-width) * 100vw, 4px);
}
.c-heading-05 h4 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: min(4 / var(--design-width) * 100vw, 4px);
  font-size: min(42 / var(--design-width) * 100vw, 42px);
  font-weight: 700;
}
.c-heading-05 h4 span {
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  padding-bottom: min(8 / var(--design-width) * 100vw, 8px);
}

.c-heading-06 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(44 / var(--design-width) * 100vw, 44px);
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-family: "Lilita One", sans-serif;
  margin: min(44 / var(--design-width) * 100vw, 44px) 0 min(30 / var(--design-width) * 100vw, 30px);
}
.c-heading-06::before, .c-heading-06::after {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  content: "";
  display: block;
  height: 2px;
  background-color: #000000;
}

.c-list-01 > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #000000;
  padding: min(12 / var(--design-width) * 100vw, 12px) 0;
}
.c-list-01 > dl > dt {
  width: min(150 / var(--design-width) * 100vw, 150px);
}
.c-list-01 > dl > dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-list-01 > dl:first-child {
  padding-top: 0;
}
.c-list-01.--v-02 > dl {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-list-01.--v-02 > dl > dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: min(48 / var(--design-width) * 100vw, 48px);
}
.c-list-01.--v-02 > dl > dd .e-data-01 {
  text-align: center;
}
.c-list-01.--v-02 > dl > dd .e-data-01 .m-number-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0 min(6 / var(--design-width) * 100vw, 6px);
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 500;
  line-height: 1;
}
.c-list-01.--v-02 > dl > dd .e-data-01 .m-number-01 span {
  font-size: min(32 / var(--design-width) * 100vw, 32px);
  margin-right: min(12 / var(--design-width) * 100vw, 12px);
}
.c-list-01.--v-02 > dl > dd .e-data-01 .m-text-01 {
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  margin-top: min(4 / var(--design-width) * 100vw, 4px);
}

.c-text-01 {
  margin-top: min(20 / var(--design-width) * 100vw, 20px);
}

/* Project ------------ */
.p-footer-note {
  margin-top: min(50 / var(--design-width) * 100vw, 50px);
  font-size: min(11 / var(--design-width) * 100vw, 11px);
  font-weight: 500;
  text-align: center;
  margin-bottom: min(12 / var(--design-width) * 100vw, 12px);
}

.p-footer {
  background-color: #EFEFEF;
}

.p-footer__sns {
  border-top: 2px solid #000000;
  background-color: #94D7F2;
  padding: min(12 / var(--design-width) * 100vw, 12px) 0;
}
.p-footer__sns ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(28 / var(--design-width) * 100vw, 28px);
}

.p-footer__link {
  border-top: 2px solid #000000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-footer__link .e-logo-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-footer__link .e-logo-01 img {
  width: min(142 / var(--design-width) * 100vw, 142px);
  mix-blend-mode: multiply;
}
.p-footer__link .e-link-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(230 / var(--design-width) * 100vw, 230px);
  border-left: 2px solid #000000;
  padding: min(12 / var(--design-width) * 100vw, 12px) 0 min(12 / var(--design-width) * 100vw, 12px) min(24 / var(--design-width) * 100vw, 24px);
}
.p-footer__link .e-link-01 ul li {
  background-image: url("../img/cmn-arrow-right-02.svg");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: min(18 / var(--design-width) * 100vw, 18px);
  font-size: min(12 / var(--design-width) * 100vw, 12px);
  font-weight: 500;
}
.p-footer__link .e-link-01 ul li + li {
  margin-top: min(4 / var(--design-width) * 100vw, 4px);
}

.p-footer__copyright {
  border-top: 2px solid #000000;
  text-align: center;
  font-size: min(10 / var(--design-width) * 100vw, 10px);
  font-weight: 500;
  padding: min(8 / var(--design-width) * 100vw, 8px) 0;
}

.p-header-under {
  position: absolute;
  top: min(15 / var(--design-width) * 100vw, 15px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: min(130 / var(--design-width) * 100vw, 130px);
}

.p-home__wrap {
  background-image: url("../img/home-bg-01.webp");
  background-size: 100% auto;
  background-position: left bottom -32px;
  padding: min(40 / var(--design-width) * 100vw, 40px) min(28 / var(--design-width) * 100vw, 28px) min(128 / var(--design-width) * 100vw, 128px);
}

.p-home__logo {
  padding-left: min(42 / var(--design-width) * 100vw, 42px);
}

.p-home__catch {
  text-align: center;
  margin-top: min(30 / var(--design-width) * 100vw, 30px);
  letter-spacing: 0.05em;
}
.p-home__catch dt {
  font-size: min(20 / var(--design-width) * 100vw, 20px);
  font-weight: 700;
}
.p-home__catch dd {
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 500;
  margin-top: min(24 / var(--design-width) * 100vw, 24px);
}
.p-home__catch dd span {
  color: #DF4E00;
}

.p-home__illust {
  margin-top: min(12 / var(--design-width) * 100vw, 12px);
  padding: 0 min(8 / var(--design-width) * 100vw, 8px);
}

.p-home__rule {
  margin-top: min(16 / var(--design-width) * 100vw, 16px);
}
.p-home__rule .e-heading-01 {
  text-align: center;
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 700;
}
.p-home__rule .e-content-01 {
  margin-top: min(4 / var(--design-width) * 100vw, 4px);
  border: 3px solid #000000;
  border-radius: min(12 / var(--design-width) * 100vw, 12px);
  padding: min(16 / var(--design-width) * 100vw, 16px) min(5 / var(--design-width) * 100vw, 5px) min(16 / var(--design-width) * 100vw, 16px) min(16 / var(--design-width) * 100vw, 16px);
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 500;
}
.p-home__rule .e-content-01 > div {
  height: min(110 / var(--design-width) * 100vw, 110px);
  overflow-y: scroll;
  padding-right: min(12 / var(--design-width) * 100vw, 12px);
}
.p-home__rule .e-content-01 > div::-webkit-scrollbar {
  width: min(7 / var(--design-width) * 100vw, 7px);
}
.p-home__rule .e-content-01 > div::-webkit-scrollbar-track {
  background: transparent;
}
.p-home__rule .e-content-01 > div::-webkit-scrollbar-thumb {
  background: #D9D9D9;
  border-radius: 9999px;
}

.p-home__note {
  border: 1px solid #DF4E00;
  background-color: #FEF3EC;
  padding: min(8 / var(--design-width) * 100vw, 8px) min(12 / var(--design-width) * 100vw, 12px);
  margin-top: min(26 / var(--design-width) * 100vw, 26px);
  text-align: center;
}
.p-home__note p {
  display: inline-block;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
  font-size: min(12 / var(--design-width) * 100vw, 12px);
  font-weight: 700;
  color: #DF4E00;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .p-home__note {
    display: none;
  }
}
.p-home__button {
  margin-top: min(28 / var(--design-width) * 100vw, 28px);
}

.p-kv-under {
  padding: min(37 / var(--design-width) * 100vw, 37px) min(12 / var(--design-width) * 100vw, 12px) 0;
}

.p-page-living-01 {
  background-color: #DF4E00;
  border-radius: min(100 / var(--design-width) * 100vw, 100px);
  padding: min(76 / var(--design-width) * 100vw, 76px) 0;
  margin-top: min(52 / var(--design-width) * 100vw, 52px);
}
.p-page-living-01 .swiper-living-wrap {
  background-color: #ffffff;
  border: 3px solid #000000;
  border-radius: min(32 / var(--design-width) * 100vw, 32px);
  width: min(320 / var(--design-width) * 100vw, 320px);
  margin: min(40 / var(--design-width) * 100vw, 40px) auto 0;
  position: relative;
}
.p-page-living-01 .swiper-living-wrap .swiper-living {
  height: min(460 / var(--design-width) * 100vw, 460px);
}
.p-page-living-01 .swiper-living-wrap .swiper-living .l-wrap-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-page-living-01 .swiper-living-wrap .swiper-living .e-heading-01 {
  text-align: center;
  border-bottom: 2px solid #000000;
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 700;
  padding: min(12 / var(--design-width) * 100vw, 12px) 0 min(4 / var(--design-width) * 100vw, 4px);
}
.p-page-living-01 .swiper-living-wrap .swiper-living .e-heading-02 {
  text-align: center;
  font-size: min(38 / var(--design-width) * 100vw, 38px);
  font-weight: 700;
  line-height: 1.6;
  padding: 0 min(20 / var(--design-width) * 100vw, 20px);
  margin-bottom: min(30 / var(--design-width) * 100vw, 30px);
}
.p-page-living-01 .swiper-living-wrap .swiper-living .e-graph-01 {
  text-align: center;
  margin: min(16 / var(--design-width) * 100vw, 16px) 0 min(20 / var(--design-width) * 100vw, 20px);
}
.p-page-living-01 .swiper-living-wrap .swiper-living .e-graph-01 img {
  height: min(216 / var(--design-width) * 100vw, 216px);
  width: auto;
}
.p-page-living-01 .swiper-living-wrap .swiper-living .e-text-01 {
  padding: 0 min(20 / var(--design-width) * 100vw, 20px);
  line-height: 1.5;
}
.p-page-living-01 .swiper-living-wrap .swiper-pagination-living {
  position: absolute;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  height: 0;
}
.p-page-living-01 .swiper-living-wrap .swiper-pagination-living .swiper-pagination-bullet {
  opacity: 1;
  background-color: #ffffff;
  width: min(13 / var(--design-width) * 100vw, 13px);
  height: min(13 / var(--design-width) * 100vw, 13px);
  border: 2px solid #000000;
  margin: 0 min(8 / var(--design-width) * 100vw, 8px);
}
.p-page-living-01 .swiper-living-wrap .swiper-pagination-living .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000000;
}
.p-page-living-01 .swiper-living-wrap .swiper-button-prev-living {
  position: absolute;
  top: 50%;
  left: min(-14 / var(--design-width) * 100vw, -14px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: min(44 / var(--design-width) * 100vw, 44px);
  cursor: pointer;
  z-index: 100;
}
.p-page-living-01 .swiper-living-wrap .swiper-button-next-living {
  position: absolute;
  top: 50%;
  right: min(-14 / var(--design-width) * 100vw, -14px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: min(44 / var(--design-width) * 100vw, 44px);
  cursor: pointer;
  z-index: 100;
}

.p-page-main-01 {
  padding-top: min(100 / var(--design-width) * 100vw, 100px);
}

.p-page-main-01__wrap-01 {
  border: 2px solid #DF4E00;
  border-radius: min(140 / var(--design-width) * 100vw, 140px);
  padding-bottom: min(96 / var(--design-width) * 100vw, 96px);
}
.p-page-main-01__wrap-01 .e-text-01 {
  margin-top: min(20 / var(--design-width) * 100vw, 20px);
}
.p-page-main-01__wrap-01 .e-point-01 {
  border: 1px solid #000000;
  border-radius: min(40 / var(--design-width) * 100vw, 40px);
  padding: min(28 / var(--design-width) * 100vw, 28px) min(24 / var(--design-width) * 100vw, 24px) min(24 / var(--design-width) * 100vw, 24px);
  margin-top: min(84 / var(--design-width) * 100vw, 84px);
  position: relative;
  background-image: url("../img/cmn-bg-01.webp");
  background-size: 11px auto;
  background-repeat: repeat;
}
.p-page-main-01__wrap-01 .e-point-01 dl dt {
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-weight: 700;
  margin-bottom: min(16 / var(--design-width) * 100vw, 16px);
  text-align: center;
}
.p-page-main-01__wrap-01 .e-point-01 dl dd {
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 500;
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01 {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-01 {
  top: -48px;
  width: min(117 / var(--design-width) * 100vw, 117px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-02 {
  top: -62px;
  width: min(242 / var(--design-width) * 100vw, 242px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-03 {
  top: -56px;
  width: min(97 / var(--design-width) * 100vw, 97px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-04 {
  top: -43px;
  width: min(70 / var(--design-width) * 100vw, 70px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-05 {
  top: -48px;
  width: min(117 / var(--design-width) * 100vw, 117px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-06 {
  top: -64px;
  width: min(164 / var(--design-width) * 100vw, 164px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-07 {
  top: -43px;
  width: min(153 / var(--design-width) * 100vw, 153px);
}
.p-page-main-01__wrap-01 .e-point-01 .m-illust-01.--v-08 {
  top: -82px;
  width: min(137 / var(--design-width) * 100vw, 137px);
}
.p-page-main-01__wrap-01.--v-02 {
  border: 2px solid #3CA64C;
}

.p-page-main-01__wrap-02 {
  padding-top: min(60 / var(--design-width) * 100vw, 60px);
}

.p-page-other-01 {
  background-image: url("../img/cmn-bg-02.webp");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  padding: min(120 / var(--design-width) * 100vw, 120px) 0 0;
  margin-top: min(80 / var(--design-width) * 100vw, 80px);
}

.p-page-other-01__wrap-01 {
  border: 2px solid #000000;
  border-radius: min(140 / var(--design-width) * 100vw, 140px);
  padding: min(68 / var(--design-width) * 100vw, 68px) 0 min(96 / var(--design-width) * 100vw, 96px);
  background-color: #ffffff;
}

.p-page-facility-01 {
  margin-top: min(40 / var(--design-width) * 100vw, 40px);
}
.p-page-facility-01 .e-number-01 {
  line-height: 1;
  color: #ffffff;
  background-color: #000000;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(42 / var(--design-width) * 100vw, 42px);
  height: min(24 / var(--design-width) * 100vw, 24px);
  font-size: min(15 / var(--design-width) * 100vw, 15px);
  font-family: "Lilita One", sans-serif;
  margin: 0 auto;
}
.p-page-facility-01 .e-name-01 {
  font-size: min(24 / var(--design-width) * 100vw, 24px);
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
}
.p-page-facility-01 .e-img-01 {
  width: min(284 / var(--design-width) * 100vw, 284px);
  margin: min(12 / var(--design-width) * 100vw, 12px) auto 0;
}
.p-page-facility-01 + .p-page-facility-01 {
  margin-top: min(40 / var(--design-width) * 100vw, 40px);
}

.p-page-support-01 {
  margin-top: min(40 / var(--design-width) * 100vw, 40px);
  background-image: url("../img/cmn-dot-03.webp");
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: min(5 / var(--design-width) * 100vw, 5px) auto;
  padding-bottom: min(20 / var(--design-width) * 100vw, 20px);
}
.p-page-support-01 .e-name-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 min(12 / var(--design-width) * 100vw, 12px);
}
.p-page-support-01 .e-name-01::before {
  content: "";
  display: block;
  width: min(15 / var(--design-width) * 100vw, 15px);
  height: min(15 / var(--design-width) * 100vw, 15px);
  background-color: #3CA64C;
  border-radius: 9999px;
  margin-top: 10px;
}
.p-page-support-01 .e-name-01 span {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: min(24 / var(--design-width) * 100vw, 24px);
  font-weight: 700;
  line-height: 1.4;
}
.p-page-support-01 .e-name-01.--v-02::before {
  background-color: #94D7F2;
}
.p-page-support-01 .e-text-01 {
  font-size: min(14 / var(--design-width) * 100vw, 14px);
  font-weight: 500;
  padding-left: min(27 / var(--design-width) * 100vw, 27px);
}
.p-page-support-01 * .p-page-support-01 {
  margin-top: min(30 / var(--design-width) * 100vw, 30px);
}

.p-page-life-01 {
  margin-top: min(40 / var(--design-width) * 100vw, 40px);
  background-image: url("../img/cmn-dot-03.webp");
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: min(5 / var(--design-width) * 100vw, 5px) auto;
  padding-bottom: min(20 / var(--design-width) * 100vw, 20px);
}
.p-page-life-01 .e-name-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 min(12 / var(--design-width) * 100vw, 12px);
  position: relative;
}
.p-page-life-01 .e-name-01::before {
  content: "";
  display: block;
  width: min(15 / var(--design-width) * 100vw, 15px);
  height: min(15 / var(--design-width) * 100vw, 15px);
  background-color: #3CA64C;
  border-radius: 9999px;
  margin-top: 10px;
}
.p-page-life-01 .e-name-01 span {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: min(24 / var(--design-width) * 100vw, 24px);
  font-weight: 700;
  line-height: 1.4;
}
.p-page-life-01 .e-name-01 .m-icon-01 {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-page-life-01 .e-name-01.--v-02::before {
  background-color: #94D7F2;
}
.p-page-life-01 .e-list-01 {
  margin-top: min(20 / var(--design-width) * 100vw, 20px);
}
.p-page-life-01 .e-list-01 > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 min(32 / var(--design-width) * 100vw, 32px);
  font-size: min(13 / var(--design-width) * 100vw, 13px);
  font-weight: 500;
}
.p-page-life-01 .e-list-01 > dl > dt {
  white-space: nowrap;
}
.p-page-life-01 .e-list-01 > dl > dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(8 / var(--design-width) * 100vw, 8px);
}
.p-page-life-01 .e-list-01 > dl > dd::before {
  content: "";
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 2px;
  background-image: url("../img/cmn-dot-03.webp");
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
.p-page-life-01 .e-list-01 > dl > dd div {
  width: min(40 / var(--design-width) * 100vw, 40px);
  text-align: right;
  white-space: nowrap;
}
.p-page-life-01 .e-list-01 > dl > dd div span {
  font-size: min(18 / var(--design-width) * 100vw, 18px);
}
.p-page-life-01 * .p-page-life-01 {
  margin-top: min(30 / var(--design-width) * 100vw, 30px);
}

.p-page-match-01 {
  border: 2px solid #000000;
  border-radius: min(18 / var(--design-width) * 100vw, 18px);
  overflow: hidden;
}
.p-page-match-01 + .p-page-match-01 {
  margin-top: min(20 / var(--design-width) * 100vw, 20px);
}

.p-page-match-01__heading-01 {
  background-color: #94D7F2;
  height: min(60 / var(--design-width) * 100vw, 60px);
  padding-left: min(20 / var(--design-width) * 100vw, 20px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: min(16 / var(--design-width) * 100vw, 16px);
  font-weight: 500;
  line-height: 1;
  background-image: url("../img/cmn-arrow-down-02.svg");
  background-position: right min(18 / var(--design-width) * 100vw, 18px) center;
  background-repeat: no-repeat;
  background-size: min(28 / var(--design-width) * 100vw, 28px) auto;
  cursor: pointer;
}
.p-page-match-01__heading-01.--v-open {
  background-image: url("../img/cmn-arrow-up-01.svg");
}
.p-page-match-01__heading-01 > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(190 / var(--design-width) * 100vw, 190px);
}
.p-page-match-01__heading-01 > div span {
  font-size: min(36 / var(--design-width) * 100vw, 36px);
  font-family: "Lilita One", sans-serif;
}

.p-page-match-01__content-01 {
  display: none;
}
.p-page-match-01__content-01 .l-wrap-01 {
  padding: min(20 / var(--design-width) * 100vw, 20px) min(20 / var(--design-width) * 100vw, 20px) min(60 / var(--design-width) * 100vw, 60px);
}
.p-page-match-01__content-01 .e-close-01 {
  background-color: #94D7F2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: min(60 / var(--design-width) * 100vw, 60px);
  width: 100%;
  cursor: pointer;
}
.p-page-match-01__content-01 .e-close-01 > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(4 / var(--design-width) * 100vw, 4px) 0;
  font-size: min(16 / var(--design-width) * 100vw, 16px);
  font-weight: 500;
}

/* Utility ------------ */
.u-lite {
  font-weight: 300;
}

.u-regular {
  font-weight: 400;
}

.u-medium {
  font-weight: 500;
}

.u-semi-bold {
  font-weight: 600;
}

.u-bold {
  font-weight: 700;
}

.u-txt-center-left {
  text-align: center !important;
}
@media screen and (max-width: 767px) {
  .u-txt-center-left {
    text-align: left !important;
  }
}

.u-txt-left-center {
  text-align: left !important;
}
@media screen and (max-width: 767px) {
  .u-txt-left-center {
    text-align: center !important;
  }
}

.u-relative {
  position: relative;
}

@media screen and (max-width: 767px) {
  .only-pc {
    display: none;
  }
}

.only-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .only-sp {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .u-sp-fs-20 {
    font-size: fsPxTab(20);
  }
  .u-sp-fs-18 {
    font-size: fsPxTab(18);
  }
  .u-sp-fs-16 {
    font-size: fsPxTab(16);
  }
  .u-sp-fs-14 {
    font-size: fsPxTab(14);
  }
}
@media screen and (max-width: 767px) {
  .u-sp-fs-20 {
    font-size: fsPxSp(20);
  }
  .u-sp-fs-18 {
    font-size: fsPxSp(18);
  }
  .u-sp-fs-16 {
    font-size: fsPxSp(16);
  }
  .u-sp-fs-14 {
    font-size: fsPxSp(14);
  }
}
/* @import "_00_reset";
@import "_01_base";
@import "_02_component";
@import "_03_header";
@import "_04_footer";
@import "_05_side";
@import "_06_post";
@import "_07_page";
@import "_08_home"; *//*# sourceMappingURL=style.css.map */