@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Crimson+Text:ital@1&family=Inter:wght@500;700&family=Noto+Sans+JP:wght@100;400;500&family=Zen+Old+Mincho:wght@400;500&display=swap");
:root {
  --vw-size11: clamp(10px, calc(((11 + 2) / 1554) * 100vw), 11px);
  --vw-size12: clamp(10px, calc(((12 + 2) / 1554) * 100vw), 12px);
  --vw-size14: clamp(12px, calc(((14 + 2) / 1554) * 100vw), 14px);
  --vw-size15: clamp(13px, calc(((15 + 2) / 1554) * 100vw), 15px);
  --vw-size16: clamp(13px, calc(((16 + 2) / 1554) * 100vw), 16px);
  --vw-size18: clamp(14px, calc(((18 + 2) / 1554) * 100vw), 18px);
  --vw-size20: clamp(15px, calc(((20 + 2) / 1554) * 100vw), 20px);
  --vw-size22: clamp(16px, calc(((22 + 2) / 1554) * 100vw), 22px);
  --vw-size24: clamp(18px, calc(((24 + 2) / 1554) * 100vw), 24px);
  --vw-size26: clamp(18px, calc(((26 + 2) / 1554) * 100vw), 26px);
  --vw-size28: clamp(19px, calc(((28 + 2) / 1554) * 100vw), 28px);
  --vw-size30: clamp(20px, calc(((30 + 2) / 1554) * 100vw), 30px);
  --vw-size32: clamp(20px, calc(((32 + 2) / 1554) * 100vw), 32px);
  --vw-size34: clamp(21px, calc(((34 + 2) / 1554) * 100vw), 34px);
  --vw-size36: clamp(22px, calc(((36 + 2) / 1554) * 100vw), 36px);
  --vw-size40: clamp(22px, calc(((40 + 2) / 1554) * 100vw), 40px);
  --vw-size45: clamp(24px, calc(((45 + 2) / 1554) * 100vw), 45px);
  --vw-size48: clamp(26px, calc(((48 + 2) / 1554) * 100vw), 48px);
  --vw-size56: clamp(30px, calc(((56 + 2) / 1554) * 100vw), 56px);
  --vw-size68: clamp(34px, calc(((68 + 2) / 1554) * 100vw), 68px);
  --vw-size72: clamp(36px, calc(((72) / 1554) * 100vw), 72px);
  --vw-size80: clamp(40px, calc(((80 + 2) / 1554) * 100vw), 80px);
  --vw-size96: clamp(40px, calc(((96 + 2) / 1554) * 100vw), 96px);
  --vw-size100: clamp(50px, calc(((100 + 2) / 1554) * 100vw), 100px);
  --vw-size140: clamp(70px, calc(((140 + 2) / 1554) * 100vw), 140px);
  --vw-size150: clamp(75px, calc(((150 + 2) / 1554) * 100vw), 150px);
  --font-en: "Crimson Text", serif;
  --font-go: "Noto Sans JP", sans-serif;
}

/* Vendor prefix
--------------------------------- */
body {
  margin: 0px;
  padding: 0px;
  font-family: "Zen Old Mincho", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  line-height: 1.5em;
  font-size: var(--vw-size16);
  letter-spacing: 0.06em;
  font-weight: 400;
  position: relative;
  color: #000;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
}

body * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

:focus {
  outline: 0;
}

a {
  text-decoration: none;
  color: #000;
  -webkit-transition: opacity 0.4s ease 0s;
  transition: opacity 0.4s ease 0s;
}

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

.font-en {
  font-family: var(--font-en);
  font-weight: 400;
  font-style: italic;
}

.inter {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

img, x:-moz-any-link, x:default {
  box-shadow: #000 0 0 0;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

p {
  font-size: var(--vw-size16);
  color: #1f3046;
  font-weight: normal;
  line-height: 1.5em;
}
@media (max-width: 767px) {
  p {
    font-size: 15px;
  }
}

a:hover {
  text-decoration: none;
}
@media (min-width: 992px) {
  a:hover {
    opacity: 0.7;
  }
  a[href^="tel:"] {
    pointer-events: none;
  }
  a[href^="tel:"]:hover {
    opacity: 1;
  }
}

figure {
  position: relative;
}
figure figcaption {
  font-size: 12px;
  color: #fff;
  text-shadow: 0 0 5px #000, 0 0 5px #000;
  line-height: 1.2em;
  position: absolute;
  bottom: 5px;
  right: 5px;
  text-align: right;
}
@media (max-width: 767px) {
  figure figcaption {
    font-size: 10px;
  }
}
figure figcaption.btm {
  position: static;
  margin-top: 5px;
}

sup {
  font-size: 60%;
  vertical-align: super;
}

.inner01 {
  width: 90%;
  max-width: 1554px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .inner01.spFul {
    width: 100%;
  }
}

.inner02 {
  width: 90%;
  max-width: 1232px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .inner02.spFul {
    width: 100%;
  }
}

header {
  width: 100%;
  padding: clamp(15px, 1.4583333333vw, 28px) clamp(14px, 2.0833333333vw, 40px) clamp(10px, 1.25vw, 24px);
  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;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  -webkit-transition: background 0.4s ease 0s;
  transition: background 0.4s ease 0s;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}
@media (max-width: 1440px) {
  header {
    -webkit-column-gap: 2%;
       -moz-column-gap: 2%;
            column-gap: 2%;
  }
}
@media (max-width: 767px) {
  header {
    -webkit-column-gap: 4%;
       -moz-column-gap: 4%;
            column-gap: 4%;
  }
}
header.is-active {
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), to(rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(top, #fff, #fff 50%, rgba(255, 255, 255, 0));
  background: linear-gradient(to bottom, #fff, #fff 50%, rgba(255, 255, 255, 0));
}
header.is-active .logoArea span.wh {
  opacity: 0;
}
header.is-active .logoArea span.bk {
  opacity: 1;
}
@media (min-width: 992px) {
  header.is-active .pageNavArea ul li a {
    color: #000;
  }
}
header.is-active .pageNavArea ul li a::after {
  border-color: #595959;
}
header.is-active .spMenu span {
  background: #000;
}
header:has(.spMenu.close) {
  background: none;
}
header:has(.spMenu.close) .logoArea span.wh {
  opacity: 1;
}
header:has(.spMenu.close) .logoArea span.bk {
  opacity: 0;
}
header:has(.spMenu.close) .spMenu span {
  background: #fff;
}
header .logoArea {
  width: 210px;
  position: relative;
}
@media (max-width: 1440px) {
  header .logoArea {
    width: 180px;
  }
}
@media (max-width: 767px) {
  header .logoArea {
    width: 38%;
    max-width: 120px;
  }
}
header .logoArea span {
  -webkit-transition: opacity 0.4s ease 0s;
  transition: opacity 0.4s ease 0s;
}
header .logoArea span.wh {
  width: 100%;
  position: relative;
  z-index: 2;
}
header .logoArea span.bk {
  width: 100%;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
header .pageNavArea {
  margin-left: auto;
}
@media (max-width: 991px) {
  header .pageNavArea {
    display: none;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: rgba(0, 0, 0, 0.69);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
  }
}
@media (max-width: 991px) {
  header .pageNavArea .navInner {
    width: 100%;
    height: 100%;
    overflow: auto;
    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;
  }
}
header .pageNavArea .cvNavBtn01 {
  display: none;
}
@media (max-width: 991px) {
  header .pageNavArea .cvNavBtn01 {
    display: block;
    width: 90%;
    max-width: 220px;
    margin: 30px auto 0;
  }
}
header .pageNavArea .cvNavBtn01 a {
  display: block;
  background: #B70031;
  border-radius: 3px;
  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;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  padding: 15px;
  text-align: center;
}
header .pageNavArea .cvNavBtn01 a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: solid 1px #DCCCB4;
  border-top: solid 1px #DCCCB4;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
header .pageNavArea ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2.9vw;
     -moz-column-gap: 2.9vw;
          column-gap: 2.9vw;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1440px) {
  header .pageNavArea ul {
    -webkit-column-gap: 1.8vw;
       -moz-column-gap: 1.8vw;
            column-gap: 1.8vw;
  }
}
@media (max-width: 991px) {
  header .pageNavArea ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 90%;
    max-width: 220px;
    margin: 0 auto;
  }
}
@media (max-width: 991px) {
  header .pageNavArea ul li {
    width: 100%;
    border-bottom: solid 1px #696969;
  }
}
header .pageNavArea ul li a {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
  color: #fff;
  font-size: var(--vw-size16);
  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;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  -webkit-transition: color 0.4s ease 0s;
  transition: color 0.4s ease 0s;
}
@media (max-width: 1440px) {
  header .pageNavArea ul li a {
    font-size: var(--vw-size14);
    -webkit-column-gap: 5px;
       -moz-column-gap: 5px;
            column-gap: 5px;
  }
}
@media (max-width: 991px) {
  header .pageNavArea ul li a {
    font-size: var(--vw-size16);
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 20px 5px 20px 0;
  }
}
header .pageNavArea ul li a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: solid 1px #B7B7B7;
  border-bottom: solid 1px #B7B7B7;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: border-color 0.4s ease 0s;
  transition: border-color 0.4s ease 0s;
}
@media (max-width: 1440px) {
  header .pageNavArea ul li a::after {
    width: 5px;
    height: 5px;
  }
}
@media (max-width: 991px) {
  header .pageNavArea ul li a::after {
    width: 7px;
    height: 7px;
  }
}
@media (max-width: 991px) {
  header .cvNavBtn02 {
    margin-left: auto;
  }
}
header .cvNavBtn02 a {
  display: block;
  background: #B70031;
  border-radius: 3px;
  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;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: var(--vw-size14);
  line-height: 1;
  padding: 15px 20px;
}
header .spMenu {
  display: none;
}
@media (max-width: 991px) {
  header .spMenu {
    display: block;
    width: 20px;
    height: 10px;
    position: relative;
  }
}
header .spMenu.close span:first-child {
  -webkit-transform: rotate(28deg);
          transform: rotate(28deg);
}
header .spMenu.close span:nth-child(2) {
  opacity: 0;
}
header .spMenu.close span:last-child {
  -webkit-transform: rotate(-28deg);
          transform: rotate(-28deg);
}
header .spMenu span {
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 0;
  -webkit-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
}
header .spMenu span:first-child {
  top: 0;
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
header .spMenu span:nth-child(2) {
  top: 50%;
}
header .spMenu span:last-child {
  top: calc(100% - 1px);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
}

h2 {
  text-align: center;
  font-size: var(--vw-size36);
  font-weight: 500;
  line-height: 1.5em;
  color: #B8935A;
  margin-bottom: 20px;
}
h2 small {
  font-size: var(--vw-size20);
}
h2 small.bk {
  color: #000;
}
h2.wh {
  color: #fff;
}
h2.mt {
  margin-top: clamp(60px, 9.6525096525vw, 150px);
}
h2.flow {
  color: #000;
  font-weight: 400;
  font-size: var(--vw-size32);
  margin-bottom: clamp(30px, 3.861003861vw, 60px);
}

.txt01 {
  font-size: var(--vw-size16);
  line-height: 1.7em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}
.txt01.cnt {
  text-align: center;
}
@media (max-width: 767px) {
  .txt01.cnt.spLeft {
    text-align: left;
  }
}

.mvArea {
  width: 100%;
  height: 100vh;
  height: 100dvh;
  min-height: 46.875vw;
  max-height: 62.5vw;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .mvArea {
    max-height: 168.5333333333vw;
  }
}
.mvArea .startWrap {
  width: 100%;
  height: 100%;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}
.mvArea .startWrap figure {
  width: 100%;
  height: 100%;
}
.mvArea .startWrap figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mvArea .txtWrap {
  width: 100%;
  height: 100%;
  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;
  row-gap: clamp(24px, 2.0833333333vw, 40px);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 12;
}
.mvArea .txtWrap .textFrame {
  height: clamp(250px, 22.9166666667vw, 440px);
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  position: relative;
  padding: 30px 20px;
  font-size: clamp(24px, 2.0833333333vw, 40px);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.15em;
  color: #ffffff;
}
@media (max-width: 991px) {
  .mvArea .txtWrap .textFrame {
    padding: 20px 15px;
  }
}
.mvArea .txtWrap .textFrame {
  --frame-opacity: 0;
}
.mvArea .txtWrap .textFrame::before, .mvArea .txtWrap .textFrame::after {
  opacity: var(--frame-opacity);
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
.mvArea .txtWrap .textFrame::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 25%;
  height: 30%;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.mvArea .txtWrap .textFrame::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 25%;
  height: 30%;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
}
.mvArea .txtWrap .lineWrapper {
  overflow: hidden;
}
.mvArea .txtWrap .charTarget {
  display: inline-block;
  white-space: nowrap;
  opacity: 0;
}
.mvArea .txtWrap .cvWrap {
  opacity: 0;
}
@media (max-width: 767px) {
  .mvArea .txtWrap .cvWrap {
    display: none;
  }
}
.mvArea .txtWrap .cvWrap .cvTxt {
  font-size: var(--vw-size20);
}
.mvArea .txtWrap .cvWrap .cvBtn {
  width: 411px;
}
@media (max-width: 1280px) {
  .mvArea .txtWrap .cvWrap .cvBtn {
    width: 390px;
  }
}
@media (max-width: 991px) {
  .mvArea .txtWrap .cvWrap .cvBtn {
    width: 360px;
  }
}
.mvArea .txtWrap .cvWrap .cvBtn a {
  height: 86px;
  font-size: var(--vw-size20);
  padding: 5px 20px;
}
@media (max-width: 1280px) {
  .mvArea .txtWrap .cvWrap .cvBtn a {
    height: 76px;
  }
}
@media (max-width: 991px) {
  .mvArea .txtWrap .cvWrap .cvBtn a {
    height: 66px;
  }
}
.mvArea .mainImgWrap {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  z-index: 11;
}
@media (max-width: 767px) {
  .mvArea .mainImgWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.mvArea .mainImgWrap .imgWrap01, .mvArea .mainImgWrap .imgWrap03 {
  width: 29.1666666667%;
  height: 100%;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
@media (max-width: 767px) {
  .mvArea .mainImgWrap .imgWrap01, .mvArea .mainImgWrap .imgWrap03 {
    width: 100%;
    height: 24.6835443038%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.mvArea .mainImgWrap .imgWrap01 figure, .mvArea .mainImgWrap .imgWrap03 figure {
  width: 100%;
  height: 50%;
}
@media (max-width: 767px) {
  .mvArea .mainImgWrap .imgWrap01 figure, .mvArea .mainImgWrap .imgWrap03 figure {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: 100%;
  }
}
.mvArea .mainImgWrap .imgWrap02 {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 100%;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
@media (max-width: 767px) {
  .mvArea .mainImgWrap .imgWrap02 {
    width: 100%;
    height: auto;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
.mvArea .mainImgWrap .imgWrap02 figure {
  width: 100%;
  height: 100%;
}
.mvArea .mainImgWrap figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.cvWrap .cvTxt, .cvWrap02 .cvTxt {
  color: #fff;
  font-size: var(--vw-size20);
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  margin-bottom: 30px;
}
.cvWrap .cvBtn a, .cvWrap02 .cvBtn a {
  display: block;
  background: #B70031;
  border-radius: 3px;
  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;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
.cvWrap .cvBtn a::after, .cvWrap02 .cvBtn a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: solid 1px #DCCCB4;
  border-top: solid 1px #DCCCB4;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.introArea {
  padding: 0 0 clamp(40px, 5.7915057915vw, 90px);
  background: #333333;
}
.introArea .txt01 {
  font-size: var(--vw-size20);
  color: #fff;
}
.introArea .cvWrap {
  padding: 40px 0;
  background: #fff;
}
@media (min-width: 768px) {
  .introArea .cvWrap {
    display: none;
  }
}
.introArea .cvWrap .cvTxt {
  margin-bottom: 20px;
  color: #000;
}
.introArea .cvWrap .cvBtn {
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}
.introArea .cvWrap .cvBtn a {
  height: 66px;
  font-size: var(--vw-size20);
  padding: 5px 20px;
}
.introArea .cvWrap .cvBtn a span {
  width: 20px;
}
.introArea .logoSliderWrap {
  width: 100%;
  overflow: hidden;
  margin-bottom: clamp(40px, 5.7915057915vw, 90px);
  background: #fff;
}
.introArea .logoSliderWrap .splide__slide {
  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;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.introArea .logoSliderWrap .splide__slide img {
  width: auto;
  max-width: 241px;
  height: 205px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 1280px) {
  .introArea .logoSliderWrap .splide__slide img {
    max-width: 200px;
    height: 170px;
  }
}
@media (max-width: 767px) {
  .introArea .logoSliderWrap .splide__slide img {
    max-width: 120px;
    height: 102px;
  }
}
@media (max-width: 500px) {
  .introArea .logoSliderWrap .splide__slide img {
    max-width: 90px;
    height: 77px;
  }
}
.introArea .logoSliderWrap .splide__track--loop .splide__list {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}

.featuresArea {
  background: #FAFAF7;
  padding: clamp(40px, 9.6525096525vw, 150px) 0 20px;
}
.featuresArea .featuresWrap {
  padding: 0 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap {
    gap: 5px;
    padding: 0 5px;
  }
}
.featuresArea .featuresWrap .inBox {
  width: calc((100% - 20px) / 3);
  position: relative;
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap .inBox {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap .inBox:nth-child(2), .featuresArea .featuresWrap .inBox:nth-child(3) {
    width: calc((100% - 5px) / 2);
  }
}
.featuresArea .featuresWrap .inBox.full {
  width: 100%;
}
.featuresArea .featuresWrap .inBox.full .imgWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap .inBox.full .imgWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.featuresArea .featuresWrap .inBox.full .imgWrap figure {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.featuresArea .featuresWrap .inBox .txtWrap {
  position: absolute;
  left: clamp(35px, 3.6458333333vw, 70px);
  bottom: clamp(35px, 3.6458333333vw, 70px);
  z-index: 10;
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap .inBox .txtWrap {
    left: 10px;
    bottom: 20px;
  }
}
.featuresArea .featuresWrap .inBox .txtWrap .featuresTxt {
  font-size: var(--vw-size24);
  line-height: 1.7em;
  color: #fff;
  text-shadow: 0 0 10px #000, 0 0 10px #000;
}
@media (max-width: 767px) {
  .featuresArea .featuresWrap .inBox .txtWrap .featuresTxt {
    font-size: var(--vw-size22);
  }
}

.networkArea {
  background: #FAFAF7;
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
}
.networkArea .networkWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 26px;
     -moz-column-gap: 26px;
          column-gap: 26px;
  margin-top: clamp(40px, 5.148005148vw, 80px);
  position: relative;
}
@media (max-width: 767px) {
  .networkArea .networkWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 20px;
  }
}
.networkArea .networkWrap .filterArea {
  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;
  row-gap: 10px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
@media (max-width: 991px) {
  .networkArea .networkWrap .filterArea {
    width: 48%;
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .filterArea {
    width: 100%;
    position: -webkit-sticky;
    position: sticky;
    top: 80px;
    z-index: 10;
  }
}
.networkArea .networkWrap .filterArea .filterInner {
  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;
  row-gap: 10px;
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
  z-index: 10;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .filterArea .filterInner {
    width: 90%;
    margin: 0 auto;
    position: static;
    text-align: center;
  }
}
.networkArea .networkWrap .filterArea .areaTtl {
  font-family: var(--font-go);
  font-weight: 700;
  line-height: 1;
  font-size: var(--vw-size18);
}
@media (max-width: 991px) {
  .networkArea .networkWrap .filterArea .areaTtl {
    width: 100%;
    margin-bottom: 5px;
  }
}
.networkArea .networkWrap .filterArea .buttonBox {
  width: clamp(110px, 8.6872586873vw, 135px);
  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;
  row-gap: 10px;
}
@media (max-width: 991px) {
  .networkArea .networkWrap .filterArea .buttonBox {
    width: 100%;
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 5px;
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .filterArea .buttonBox {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.networkArea .networkWrap .filterArea button.filterBtn {
  width: clamp(110px, 8.6872586873vw, 135px);
  font-family: var(--font-go);
  font-weight: 700;
  line-height: 1;
  font-size: var(--vw-size16);
  text-align: center;
  color: #000;
  border: solid 1px #919191;
  border-radius: 60px;
  padding: 10px 5px;
  cursor: pointer;
  -webkit-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
}
@media (max-width: 991px) {
  .networkArea .networkWrap .filterArea button.filterBtn {
    width: calc((100% - 10px) / 3);
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .filterArea button.filterBtn {
    width: auto;
    padding: 8px 15px;
  }
}
@media (min-width: 992px) {
  .networkArea .networkWrap .filterArea button.filterBtn:hover {
    opacity: 0.7;
  }
}
.networkArea .networkWrap .filterArea button.filterBtn.isActive {
  background: #B8935A;
  color: #fff;
  border-color: #B8935A;
}
.networkArea .networkWrap .mapWrap {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .mapWrap {
    width: 90%;
    margin: 0 auto;
  }
}
.networkArea .networkWrap .mapWrap .mapInner {
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
}
@media (max-width: 991px) {
  .networkArea .networkWrap .mapWrap .mapInner {
    padding-top: 120px;
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .mapWrap .mapInner {
    padding-top: 0;
  }
}
.networkArea .networkWrap .mapWrap .mapArea figure.mapImg {
  display: none;
}
.networkArea .networkWrap .mapWrap .mapArea figure.mapImg.isActive {
  display: block;
}
.networkArea .networkWrap .netConWrap {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.networkArea .networkWrap .netConWrap .facilityLogo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(35px, 4.5045045045vw, 70px);
     -moz-column-gap: clamp(35px, 4.5045045045vw, 70px);
          column-gap: clamp(35px, 4.5045045045vw, 70px);
  -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;
  margin-bottom: clamp(30px, 3.2175032175vw, 50px);
}
.networkArea .networkWrap .netConWrap .facilityLogo li:first-child {
  width: clamp(50px, 5.9202059202vw, 92px);
}
.networkArea .networkWrap .netConWrap .facilityLogo li:nth-child(2) {
  width: clamp(114px, 13.5135135135vw, 210px);
}
.networkArea .networkWrap .netConWrap .facilityLogo li:last-child {
  width: clamp(63px, 7.4646074646vw, 116px);
}
.networkArea .networkWrap .netConWrap .txt01 {
  margin-bottom: clamp(30px, 3.2175032175vw, 50px);
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap .txt01 {
    width: 90%;
    margin: 0 auto 30px;
  }
}
.networkArea .networkWrap .netConWrap h3 {
  font-family: var(--font-go);
  color: #B8935A;
  font-size: var(--vw-size20);
  margin-bottom: clamp(20px, 1.9305019305vw, 30px);
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap h3 {
    font-size: 15px;
    width: 90%;
    margin: 0 auto 20px;
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #topFacilitiesWrapper {
    width: 90%;
    margin: 0 auto;
  }
}
.networkArea .networkWrap .netConWrap .topFacilitiesList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 30px 10px;
  margin-bottom: clamp(30px, 3.2175032175vw, 50px);
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem {
  width: calc((100% - 20px) / 3);
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem {
    width: calc((100% - 10px) / 2);
  }
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p {
  font-family: var(--font-go);
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag {
  margin-top: 10px;
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span {
  display: inline-block;
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.num {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  background: #B70031;
  width: 21px;
  padding: 5px 0 4px;
  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;
  border-radius: 50%;
  margin-right: 10px;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.num {
    font-size: 10px;
    width: 18px;
    padding: 4px 0;
    margin-right: 5px;
  }
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.num.c01 {
  background: #a37b43;
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.num.c02 {
  background: #d99929;
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.tag {
  font-size: 13px;
  line-height: 1;
  background: #2A2A2A;
  padding: 5px 10px;
  color: #fff;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTag span.tag {
    font-size: 11px;
  }
}
.networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTxt {
  font-size: var(--vw-size16);
  font-weight: 500;
  margin-top: 8px;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap .topFacilitiesList .topFacilityItem p.facilityTxt {
    font-size: 13px;
  }
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer {
  margin-bottom: clamp(30px, 3.2175032175vw, 50px);
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem {
  width: calc((100% - 20px) / 3);
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem {
    width: calc((100% - 10px) / 2);
  }
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p {
  font-family: var(--font-go);
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag {
  margin-top: 10px;
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag span {
  display: inline-block;
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag span.num {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  background: #000;
  width: 21px;
  padding: 5px 0 4px;
  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;
  border-radius: 50%;
  margin-right: 10px;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag span.num {
    font-size: 10px;
    width: 18px;
    padding: 4px 0;
    margin-right: 5px;
  }
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag span.tag {
  font-size: 13px;
  line-height: 1;
  background: #2A2A2A;
  padding: 5px 10px;
  color: #fff;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTag span.tag {
    font-size: 11px;
  }
}
.networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTxt {
  font-size: var(--vw-size16);
  font-weight: 500;
  margin-top: 8px;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #moriTrustSplide .moriTrustContainer .moriTrustItem p.facilityTxt {
    font-size: 13px;
  }
}
.networkArea .networkWrap .netConWrap #premiumHotelWrapper {
  margin-top: clamp(30px, 3.2175032175vw, 50px);
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #premiumHotelWrapper {
    margin-top: 0;
  }
}
.networkArea .networkWrap .netConWrap #premiumHotelWrapper p {
  font-family: var(--font-go);
}
.networkArea .networkWrap .netConWrap #premiumHotelWrapper p.premiumHotelTxt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: var(--vw-size16);
  font-weight: 500;
}
.networkArea .networkWrap .netConWrap #premiumHotelWrapper p.premiumHotelTxt .txt {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.networkArea .networkWrap .netConWrap #premiumHotelWrapper p.premiumHotelTxt .tag {
  display: inline-block;
  font-size: 13px;
  white-space: nowrap;
  line-height: 1;
  background: #2A2A2A;
  padding: 5px 7px;
  color: #fff;
  text-align: center;
  width: 60px;
}
@media (max-width: 767px) {
  .networkArea .networkWrap .netConWrap #premiumHotelWrapper p.premiumHotelTxt .tag {
    font-size: 11px;
  }
}
@media (min-width: 768px) {
  .networkArea .networkWrap #moriTrustSplide,
  .networkArea .networkWrap #premiumHotelSplide,
  .networkArea .networkWrap .splide__track,
  .networkArea .networkWrap .splide__list {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: 100% !important;
    overflow: visible !important;
    -webkit-transform: none !important;
            transform: none !important; /* スライドの位置移動を無効化 */
  }
  .networkArea .networkWrap .customSlidePage {
    display: contents !important;
  }
  .networkArea .networkWrap .moriTrustContainer {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
    gap: 30px 10px !important;
  }
  .networkArea .networkWrap .premiumHotelContainer {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
  }
  .networkArea .networkWrap .premiumHotelItem {
    width: 100% !important;
  }
  .networkArea .networkWrap .moriTrustItem:not([style*="display: none"]),
  .networkArea .networkWrap .premiumHotelItem:not([style*="display: none"]) {
    display: block !important;
  }
  .networkArea .networkWrap .splide__arrows,
  .networkArea .networkWrap .splide__pagination,
  .networkArea .networkWrap .splide__arrow {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}
@media (max-width: 767px) {
  .networkArea .networkWrap .moriTrustContainer .customSlidePage {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
    gap: 12px !important;
  }
  .networkArea .networkWrap .moriTrustContainer .customSlidePage .moriTrustItem {
    width: calc((100% - 12px) / 2) !important;
  }
  .networkArea .networkWrap .premiumHotelContainer .customSlidePage {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
    gap: 12px !important;
  }
  .networkArea .networkWrap .customSlidePage {
    opacity: 0.3;
  }
  .networkArea .networkWrap .customSlidePage.is-active {
    opacity: 1;
  }
  .networkArea .networkWrap .moriTrustItem:not([style*="display: none"]),
  .networkArea .networkWrap .premiumHotelItem:not([style*="display: none"]) {
    display: block !important;
    width: 100% !important;
  }
  .networkArea .networkWrap #moriTrustWrapper,
  .networkArea .networkWrap #premiumHotelWrapper {
    overflow: hidden;
  }
  .networkArea .networkWrap #moriTrustWrapper.is-hide-controls #moriTrustSplide,
  .networkArea .networkWrap #moriTrustWrapper.is-hide-controls #premiumHotelSplide,
  .networkArea .networkWrap #premiumHotelWrapper.is-hide-controls #moriTrustSplide,
  .networkArea .networkWrap #premiumHotelWrapper.is-hide-controls #premiumHotelSplide {
    margin-bottom: 30px;
  }
  .networkArea .networkWrap #moriTrustSplide,
  .networkArea .networkWrap #premiumHotelSplide {
    width: 70%;
    margin: 0 auto;
    margin-bottom: 80px;
  }
  .networkArea .networkWrap #moriTrustSplide .splide__track,
  .networkArea .networkWrap #premiumHotelSplide .splide__track {
    overflow: visible;
  }
  .networkArea .networkWrap .splide__arrow {
    top: calc(100% + 15px);
    -webkit-transform: translateY(0);
            transform: translateY(0);
    background: #B8935A;
  }
  .networkArea .networkWrap .splide__arrow svg {
    fill: #fff;
  }
  .networkArea .networkWrap .splide__pagination {
    bottom: auto;
    top: calc(100% + 20px);
  }
  .networkArea .networkWrap .splide__pagination__page.is-active {
    background: #000;
  }
  .networkArea .networkWrap .is-hide-controls .splide__arrows,
  .networkArea .networkWrap .is-hide-controls .splide__pagination {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

.scenesArea {
  background: #2F2828;
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
  overflow: hidden;
}
.scenesArea #laforetSlider {
  margin-top: clamp(30px, 3.861003861vw, 60px);
  opacity: 1 !important;
  visibility: visible !important;
}
@media (max-width: 767px) {
  .scenesArea #laforetSlider {
    width: 86%;
    margin: 0 auto;
  }
}
.scenesArea #laforetSlider .splide__track {
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media (max-width: 767px) {
  .scenesArea #laforetSlider .splide__track {
    overflow: visible;
  }
}
.scenesArea #laforetSlider .cardItem .imgBox {
  margin-bottom: 10px;
}
.scenesArea #laforetSlider .cardItem .textBox h3 {
  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;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  font-weight: 400;
}
.scenesArea #laforetSlider .cardItem .textBox h3 .num {
  font-family: var(--font-en);
  font-weight: 400;
  font-style: italic;
  color: #B8935A;
  font-size: var(--vw-size96);
  line-height: 1;
}
@media (max-width: 767px) {
  .scenesArea #laforetSlider .cardItem .textBox h3 .num {
    font-size: 40px;
  }
}
.scenesArea #laforetSlider .cardItem .textBox h3 .txt {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #fff;
  font-size: var(--vw-size36);
  line-height: 1;
}
@media (max-width: 767px) {
  .scenesArea #laforetSlider .cardItem .textBox h3 .txt {
    font-size: 22px;
  }
}
.scenesArea #laforetSlider .cardItem .textBox .slideTxt01 {
  color: #fff;
  font-size: var(--vw-size20);
  margin-top: 5px;
}
@media (max-width: 767px) {
  .scenesArea #laforetSlider .cardItem .textBox .slideTxt01 {
    font-size: 15px;
  }
}

.cvArea {
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
  background: url(../img/bg_intro.webp) repeat-y center top/100% auto;
}
@media (max-width: 767px) {
  .cvArea {
    background: url(../img/bg_intro_sp.webp) repeat-y center top/100% auto;
  }
}
.cvArea .cvTxt {
  margin-bottom: 20px;
}
.cvArea .cvBtn {
  width: 100%;
  max-width: 612px;
  margin: 0 auto;
}
.cvArea .cvBtn a {
  width: 100%;
  height: 127px;
  font-size: var(--vw-size24);
  padding: 5px 20px;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  border-radius: 5px;
}
@media (max-width: 767px) {
  .cvArea .cvBtn a {
    height: 66px;
    font-size: var(--vw-size20);
  }
}
.cvArea .cvBtn a span {
  width: 42px;
}
@media (max-width: 767px) {
  .cvArea .cvBtn a span {
    width: 20px;
  }
}

.casesArea {
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
  background: #ECECEC;
}
.casesArea .badgeList {
  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-column-gap: clamp(30px, 5.148005148vw, 80px);
     -moz-column-gap: clamp(30px, 5.148005148vw, 80px);
          column-gap: clamp(30px, 5.148005148vw, 80px);
  margin-top: clamp(30px, 3.861003861vw, 60px);
}
@media (max-width: 767px) {
  .casesArea .badgeList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 10px 30px;
  }
}
.casesArea .badgeList li {
  width: calc(100% - clamp(30px, 5.148005148vw, 80px) * 2 / 3);
  max-width: 292px;
}
@media (max-width: 767px) {
  .casesArea .badgeList li {
    width: calc((100% - 30px) / 2);
  }
}
@media (max-width: 767px) {
  .casesArea .badgeList li:first-child {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .casesArea .badgeList li:first-child figure {
    width: 52.5%;
    margin: 0 auto;
  }
}
.casesArea .logoSliderWrap {
  width: 100%;
  background: #fff;
  overflow: hidden;
  margin-top: 60px;
  z-index: 10;
}
@media (max-width: 767px) {
  .casesArea .logoSliderWrap {
    margin-top: 30px;
  }
}
.casesArea .logoSliderWrap .splide__slide {
  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;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.casesArea .logoSliderWrap .splide__slide img {
  width: auto;
  max-width: 158px;
  height: 102px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .casesArea .logoSliderWrap .splide__slide img {
    max-width: 120px;
    height: 77px;
  }
}
@media (max-width: 500px) {
  .casesArea .logoSliderWrap .splide__slide img {
    max-width: 79px;
    height: 51px;
  }
}
.casesArea .logoSliderWrap .splide__track--loop .splide__list {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
.casesArea .card-slider-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 0 120px;
}
@media (max-width: 767px) {
  .casesArea .card-slider-container {
    padding: 40px 0 0;
    margin-bottom: 60px;
  }
}
@media (min-width: 768px) {
  .casesArea .card-slider-container .splide__track {
    overflow: visible !important;
  }
  .casesArea .card-slider-container .card-wrapper {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 30px 25px;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .casesArea .card-slider-container .card-item {
    width: calc((100% - 50px) / 3) !important;
    margin: 0 !important;
  }
  .casesArea .card-slider-container .card-item:nth-child(3n+1) .cardInner {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .casesArea .card-slider-container .card-item:nth-child(3n+2) .cardInner {
    -webkit-transform: translateY(80px);
            transform: translateY(80px);
  }
  .casesArea .card-slider-container .card-item:nth-child(3n) .cardInner {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.casesArea .card-slider-container .splide__arrow {
  top: calc(100% + 5px);
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background: #B8935A;
}
.casesArea .card-slider-container .splide__arrow svg {
  fill: #fff;
}
.casesArea .card-slider-container .splide__pagination {
  bottom: auto;
  top: calc(100% + 10px);
}
.casesArea .card-slider-container .splide__pagination__page.is-active {
  background: #000;
}
.casesArea .card-slider-container .card-item {
  height: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 767px) {
  .casesArea .card-slider-container .card-item {
    padding: 0 5px;
  }
}
.casesArea .card-slider-container .card-item .cardInner {
  width: 100%;
  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;
  background: #fff;
  border: 1px solid #eee;
}
.casesArea .card-slider-container .cardImageBox {
  position: relative;
}
.casesArea .card-slider-container .cardImageBox img {
  width: 100%;
  height: auto;
  display: block;
}
.casesArea .card-slider-container .cardImageBox .badge {
  position: absolute;
  top: 10px;
  left: 10px;
  font-family: var(--font-go);
  background: #c39f62;
  color: #fff;
  font-size: var(--vw-size16);
  line-height: 1;
  padding: 6px 8px;
  z-index: 10;
}
.casesArea .card-slider-container .cardContent {
  padding: 30px clamp(15px, 1.9305019305vw, 30px);
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  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;
}
.casesArea .card-slider-container .cardContent .companyInfo {
  font-family: var(--font-go);
  font-size: var(--vw-size14);
  line-height: 1.6;
  color: #333;
}
.casesArea .card-slider-container .cardContent .cardTitle {
  font-family: var(--font-go);
  font-size: var(--vw-size20);
  color: #c39f62;
  margin: 15px 0 10px;
  font-weight: 500;
}
.casesArea .card-slider-container .cardContent .cardText {
  font-family: var(--font-go);
  font-size: var(--vw-size16);
  line-height: 1.6;
  color: #333;
}

.priceArea {
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
}
.priceArea .txt01 {
  margin-bottom: clamp(30px, 3.861003861vw, 60px);
}
.priceArea .tableTtl {
  font-family: var(--font-go);
  line-height: 1.5em;
  font-size: var(--vw-size16);
  text-align: center;
  margin-bottom: 20px;
}

.serviceArea {
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
  background: #FAFAF7;
}
.serviceArea .txt01 {
  margin-bottom: clamp(30px, 3.861003861vw, 60px);
}

.flowArea {
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
  background: #ECECE9;
}
.flowArea h3.flow {
  color: #B8935A;
  font-weight: 400;
  font-size: var(--vw-size24);
  line-height: 1.5em;
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .flowArea h3.flow {
    margin-bottom: 20px;
  }
}
.flowArea h3.flow.mt {
  margin-top: clamp(60px, 9.6525096525vw, 150px);
}
.flowArea .flowList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  padding: clamp(20px, 2.574002574vw, 40px);
  background: #D9D9D9;
}
@media (max-width: 767px) {
  .flowArea .flowList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 24px;
  }
}
.flowArea .flowList li {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: #fff;
  padding: clamp(15px, 1.6233766234vw, 20px);
  position: relative;
}
@media (max-width: 767px) {
  .flowArea .flowList li {
    padding: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.flowArea .flowList li:not(:last-child)::before {
  content: "";
  width: 15px;
  height: 15px;
  border-top: solid 3px #B8935A;
  border-right: solid 3px #B8935A;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: -20px;
}
@media (max-width: 767px) {
  .flowArea .flowList li:not(:last-child)::before {
    width: 10px;
    height: 10px;
    border-top: solid 2px #B8935A;
    border-right: solid 2px #B8935A;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    top: calc(100% + 3px);
    right: auto;
    left: 50%;
    margin-left: -5px;
  }
}
@media (max-width: 767px) {
  .flowArea .flowList li figure {
    width: 26.6666666667%;
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
}
.flowArea .flowList li h4 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: var(--vw-size20);
  line-height: 1.3em;
  font-weight: 500;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .flowArea .flowList li h4 {
    width: 100%;
    margin-bottom: 10px;
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
        -ms-flex-order: 0;
            order: 0;
  }
}
.flowArea .flowList li h4 span.num {
  text-align: center;
  width: var(--vw-size30);
  font-size: var(--vw-size21);
  color: #fff;
  line-height: var(--vw-size30);
  background: #424242;
  border-radius: 2px;
}
.flowArea .flowList li h4 span.txt {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-family: var(--font-go);
  font-weight: 700;
  color: #B8935A;
}
.flowArea .flowList li .txtWrap {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .flowArea .flowList li .txtWrap {
    padding: 0;
    width: 68.3333333333%;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    margin-top: 0;
  }
}
.flowArea .flowList li .txtWrap .flowTxt02 {
  font-size: var(--vw-size16);
  font-family: var(--font-go);
  font-weight: 400;
  line-height: 1.8em;
}
@media (max-width: 767px) {
  .flowArea .flowList li .txtWrap .flowTxt02 {
    line-height: 1.5em;
  }
}
.flowArea .flowList li .txtWrap .cvBtn02 {
  width: 100%;
  max-width: 200px;
  margin: 20px auto 0;
}
.flowArea .flowList li .txtWrap .cvBtn02 a {
  display: block;
  background: #B70031;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  line-height: 1;
  font-size: var(--vw-size15);
  font-family: var(--font-go);
  font-weight: 700;
  padding: 15px 20px;
}

.faqArea {
  background: #585858;
  padding: clamp(40px, 9.6525096525vw, 150px) 0;
}
.faqArea .faqWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(30px, 4.8701298701vw, 60px);
     -moz-column-gap: clamp(30px, 4.8701298701vw, 60px);
          column-gap: clamp(30px, 4.8701298701vw, 60px);
}
@media (max-width: 767px) {
  .faqArea .faqWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.faqArea .faqWrap .ttlArea {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.faqArea .faqWrap .ttlArea .ttlInner {
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .ttlArea .ttlInner {
    position: static;
  }
}
.faqArea .faqWrap .ttlArea h2.faq {
  font-size: var(--vw-size32);
  text-align: left;
  position: relative;
  color: #fff;
  margin-bottom: clamp(40px, 9.7402597403vw, 120px);
}
.faqArea .faqWrap .ttlArea h2.faq::before {
  content: "";
  width: 70px;
  height: 1px;
  background: #B8935A;
  position: absolute;
  bottom: calc(clamp(20px, 3.2467532468vw, 40px) * -1);
  left: 0;
}
.faqArea .faqWrap .ttlArea .faqLinkList {
  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;
  row-gap: clamp(20px, 3.2467532468vw, 40px);
}
@media (max-width: 767px) {
  .faqArea .faqWrap .ttlArea .faqLinkList {
    display: none;
  }
}
.faqArea .faqWrap .ttlArea .faqLinkList li a {
  padding-left: 20px;
  font-size: var(--vw-size20);
  line-height: 1;
  color: #fff;
  position: relative;
}
.faqArea .faqWrap .ttlArea .faqLinkList li a.current::before {
  content: "";
  width: 1px;
  height: 100%;
  background: #B8935A;
  position: absolute;
  top: 0;
  left: 0;
}
.faqArea .faqWrap .faqConArea {
  width: 62.012987013%;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .faqArea .faqWrap .faqConArea .faqConWrap {
    display: none;
  }
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConWrap {
    border-bottom: solid 1px #8D8D8D;
  }
}
@media (min-width: 768px) {
  .faqArea .faqWrap .faqConArea .faqConWrap.current {
    display: block;
  }
}
.faqArea .faqWrap .faqConArea .faqConWrap .topTtl {
  font-size: 16px;
  color: #fff;
  padding: 15px 10px;
  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;
}
@media (min-width: 768px) {
  .faqArea .faqWrap .faqConArea .faqConWrap .topTtl {
    display: none;
  }
}
.faqArea .faqWrap .faqConArea .faqConWrap .topTtl.close::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.faqArea .faqWrap .faqConArea .faqConWrap .topTtl::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConWrap .topCon {
    display: none;
    padding-bottom: 30px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox {
  background: #fff;
  border-radius: 6px;
}
.faqArea .faqWrap .faqConArea .faqConInBox + .faqConInBox {
  margin-top: 28px;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox + .faqConInBox {
    margin-top: 10px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dt {
  padding: 25px 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;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox dt {
    padding: 16px 15px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dt.close span.plus::after {
  display: none;
}
.faqArea .faqWrap .faqConArea .faqConInBox dt span.q {
  font-size: var(--vw-size24);
  color: #B8935A;
  line-height: 1;
}
.faqArea .faqWrap .faqConArea .faqConInBox dt span.ttl {
  font-size: var(--vw-size20);
  line-height: 1.5em;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.faqArea .faqWrap .faqConArea .faqConInBox dt span.plus {
  margin-left: auto;
  width: 32px;
  height: 32px;
  background: #A4A4A4;
  border-radius: 50%;
  position: relative;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox dt span.plus {
    width: 24px;
    height: 24px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dt span.plus::before, .faqArea .faqWrap .faqConArea .faqConInBox dt span.plus::after {
  content: "";
  width: 15px;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox dt span.plus::before, .faqArea .faqWrap .faqConArea .faqConInBox dt span.plus::after {
    width: 11px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dt span.plus::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.faqArea .faqWrap .faqConArea .faqConInBox dd {
  padding: 0 20px 25px;
  display: none;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox dd {
    padding: 0 16px 15px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dd .aTxt {
  padding: 25px 20px;
  background: #F8F8F8;
  font-size: var(--vw-size18);
  font-family: var(--font-go);
  line-height: 1.8em;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .faqArea .faqWrap .faqConArea .faqConInBox dd .aTxt {
    padding: 15px 15px;
  }
}
.faqArea .faqWrap .faqConArea .faqConInBox dd .aTxt small {
  font-size: var(--vw-size12);
  line-height: 1.8em;
}

table.priceService {
  width: 100%;
  table-layout: fixed;
  font-family: var(--font-go);
  line-height: 1.5em;
  font-size: var(--vw-size16);
}
table.priceService thead tr th {
  background: #DADADA;
  border: solid 1px #fff;
  border-bottom: none;
  font-weight: 500;
  width: 28%;
  padding: 20px 5px;
  vertical-align: middle;
}
table.priceService thead tr th.em {
  background: #818181;
  color: #fff;
  width: 26%;
}
table.priceService thead tr th.kaiin {
  background: #B8935A;
  color: #fff;
  width: 28%;
}
table.priceService tbody.service tr td.kaiin {
  font-size: var(--vw-size18);
}
table.priceService tbody tr th {
  background: #E3E3E3;
  border: solid 1px #C4C4C4;
  padding: 20px 5px;
  vertical-align: middle;
  text-align: center;
  font-weight: 500;
}
table.priceService tbody tr td {
  padding: 20px 5px;
  vertical-align: middle;
  text-align: center;
  background: #fff;
  border: solid 1px #C4C4C4;
}
table.priceService tbody tr td.kaiin {
  background: #F6ECE6;
}
table.priceService tbody tr td.kaiin .kaiinTxt {
  width: 100%;
  max-width: clamp(160px, 15.4220779221vw, 190px);
  margin: 0 auto;
  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;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
table.priceService tbody tr td.kaiin .kaiinTxt > span.off {
  border-radius: 50%;
  background: #B8935A;
  aspect-ratio: 1/1;
  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;
  padding: 0 8px;
  color: #fff;
  font-size: var(--vw-size14);
  line-height: 1.2em;
  font-weight: 700;
}
table.priceService tbody tr td.kaiin .kaiinTxt > span.off strong {
  font-size: 164%;
}
table.priceService tbody tr td.kaiin .kaiinTxt > span.off small {
  font-size: 85%;
}
table.priceService tbody tr td.kaiin .kaiinTxt > span.priceTxt {
  color: #8A601F;
  font-weight: 700;
}
table.priceService tbody tr td.kaiin .kaiinTxt > span.priceTxt strong {
  font-size: 187.5%;
  line-height: 1;
}
table.priceService tbody tr td .batsu {
  font-size: 240%;
  font-weight: 100;
  line-height: 1.1em;
}
table.priceService tbody tr td .sankaku {
  font-size: 240%;
  color: #59A4B1;
  font-weight: 100;
  line-height: 1.1em;
}
table.priceService tbody tr td .maru {
  font-size: 240%;
  color: #BC2897;
  font-weight: 100;
  line-height: 1.1em;
}
table.priceService tbody tr td strong.price {
  font-size: 150%;
  line-height: 1;
  font-weight: 400;
}

table.priceServiceSp {
  width: 100%;
  table-layout: fixed;
  font-family: var(--font-go);
  line-height: 1.5em;
  font-size: 12px;
}
table.priceServiceSp + table.priceServiceSp {
  margin-top: 30px;
}
table.priceServiceSp .w52 {
  width: 52%;
}
table.priceServiceSp .w18 {
  width: 18%;
}
table.priceServiceSp .w30 {
  width: 30%;
}
table.priceServiceSp thead th {
  background: #E3E3E3;
  padding: 8px 10px;
  border: solid 1px #C4C4C4;
  text-align: left;
}
table.priceServiceSp thead th.center {
  text-align: center;
}
table.priceServiceSp tbody.service th {
  padding: 5px 1px;
}
table.priceServiceSp tbody.service td.kaiin {
  font-weight: 500;
}
table.priceServiceSp tbody th {
  background: #DADADA;
  padding: 14px 1px;
  text-align: center;
  vertical-align: middle;
  border-right: solid 1px #fff;
  font-weight: 500;
}
table.priceServiceSp tbody th:first-child {
  border-left: solid 1px #C4C4C4;
}
table.priceServiceSp tbody th.kaiin {
  background: #B8935A;
  color: #fff;
}
table.priceServiceSp tbody th:last-child {
  border-right: solid 1px #C4C4C4;
}
table.priceServiceSp tbody td {
  background: #fff;
  border: solid 1px #C4C4C4;
  padding: 10px 1px;
  vertical-align: middle;
  text-align: center;
}
table.priceServiceSp tbody td.kaiin {
  background: #F6ECE6;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt {
  width: 100%;
  max-width: 150px;
  margin: 0 auto;
  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;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt > span.off {
  border-radius: 50%;
  background: #B8935A;
  aspect-ratio: 1/1;
  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;
  padding: 0 8px;
  color: #fff;
  font-size: 11px;
  line-height: 1.2em;
  font-weight: 700;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt > span.off strong {
  font-size: 155%;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt > span.off small {
  font-size: 85%;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt > span.priceTxt {
  color: #8A601F;
  font-weight: 700;
}
table.priceServiceSp tbody td.kaiin .kaiinTxt > span.priceTxt strong {
  font-size: 160%;
  line-height: 1;
}
table.priceServiceSp tbody td strong.price {
  font-size: 150%;
  line-height: 1;
  font-weight: 400;
}
table.priceServiceSp tbody td .batsu {
  font-size: 240%;
  font-weight: 100;
  line-height: 1.1em;
}
table.priceServiceSp tbody td .sankaku {
  font-size: 240%;
  color: #59A4B1;
  font-weight: 100;
  line-height: 1.1em;
}
table.priceServiceSp tbody td .maru {
  font-size: 240%;
  color: #BC2897;
  font-weight: 100;
  line-height: 1.1em;
}

.note {
  font-size: var(--vw-size12);
  line-height: 1.8em;
  margin-top: 10px;
}
.note + .note {
  margin-top: 0;
}
.note.right {
  text-align: right;
}
@media (max-width: 767px) {
  .note.spLeft {
    text-align: left;
  }
}

footer {
  background: #fff;
  padding: clamp(40px, 9.6525096525vw, 150px) 0 clamp(30px, 6.435006435vw, 100px);
}
footer .logo {
  text-align: center;
  margin-bottom: clamp(30px, 4.8701298701vw, 60px);
}
footer .logo img {
  width: 299px;
}
@media (max-width: 767px) {
  footer .logo img {
    width: 200px;
  }
}
footer .telWrap {
  text-align: center;
}
footer .telWrap p {
  color: #696969;
  text-align: center;
  font-family: var(--font-go);
  font-size: var(--vw-size16);
}
footer .telWrap p.telTxt01 {
  font-weight: 500;
  margin-bottom: 10px;
}
footer .telWrap p.telTxt02 {
  margin-bottom: clamp(15px, 2.4350649351vw, 30px);
}
footer .telWrap p.telTxt03 {
  font-size: var(--vw-size14);
  line-height: 1.2em;
  margin-top: clamp(10px, 1.6233766234vw, 20px);
}
footer .telWrap .telList {
  color: #696969;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(20px, 3.2467532468vw, 40px);
     -moz-column-gap: clamp(20px, 3.2467532468vw, 40px);
          column-gap: clamp(20px, 3.2467532468vw, 40px);
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: var(--font-go);
}
@media (max-width: 767px) {
  footer .telWrap .telList {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 10px;
  }
}
footer .telWrap .telList li {
  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;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
footer .telWrap .telList li span {
  font-size: var(--vw-size18);
  line-height: 1;
}
footer .telWrap .telList li a {
  font-size: var(--vw-size36);
  line-height: 1;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  color: #696969;
}
@media (max-width: 767px) {
  footer .telWrap .telList li a {
    letter-spacing: 0.08em;
  }
}
footer .footLink {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(30px, 4.8701298701vw, 60px);
     -moz-column-gap: clamp(30px, 4.8701298701vw, 60px);
          column-gap: clamp(30px, 4.8701298701vw, 60px);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: clamp(30px, 4.8701298701vw, 60px);
}
@media (max-width: 767px) {
  footer .footLink {
    width: 90%;
    margin: 30px auto 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 10px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
footer .footLink li a {
  font-family: var(--font-go);
  font-size: var(--vw-size14);
  line-height: 1;
  color: #000;
}
@media (max-width: 767px) {
  footer .footLink li a::before {
    content: "・";
  }
}
footer small.copy {
  display: block;
  text-align: center;
  font-size: var(--vw-size12);
  line-height: 1.2em;
  font-family: "Inter", sans-serif;
  margin-top: clamp(30px, 4.8701298701vw, 60px);
}

@media (min-width: 992px) {
  .vsp {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .vsp02 {
    display: none !important;
  }
}
@media (max-width: 991px) {
  .vpc {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .vpc02 {
    display: none !important;
  }
}