.cFixedLink {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: var(--z-fixed-link);
  width: 100%;
  pointer-events: none;
  transition: transform 0.6s var(--e-out-expo);
}
.cFixedLink__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0 24rem;
}
.cFixedLink__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 44px;
  pointer-events: auto;
}
.cFixedLink__link[data-type=showroom] {
  background-color: #f6730e;
}
.cFixedLink__link[data-type=request] {
  background-color: #be5a0d;
}
.cFixedLink__text {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.16;
  color: var(--c-white);
}

.is-footer .cFixedLink {
  transform: translateY(101%);
}

@media screen and (min-width: 768px) {
  .cFixedLink {
    display: none;
  }
}
.cMadori__inner {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: var(--z-madori);
  overflow: auto;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.6s var(--e-out-expo);
}
.cMadori__inner.is-active {
  pointer-events: auto;
  opacity: 1;
}
.cMadori__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.cMadori__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2b2c2c;
  opacity: 0.7;
}
.cMadori__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.cMadori__box {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  height: 74.87vh;
  background-color: var(--c-white);
}
.cMadori__box_tab {
  display: flex;
  gap: 2.14vh;
  align-items: center;
  justify-content: flex-start;
  margin-top: 5.35vh;
}
.cMadori__box_tab_item {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8.56vh;
  height: 8.56vh;
  color: #1c88a8;
}
.cMadori__box_tab_item::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  border: 1px solid #caf1fd;
  border-radius: 50%;
  opacity: 0.8;
}
.cMadori__box_tab_item_text {
  position: relative;
  z-index: 1;
  font-family: var(--f-en);
  font-size: 2.67vh;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.03em;
}
.cMadori__box_tab_item.is-active {
  color: var(--c-white);
  pointer-events: none;
}
.cMadori__box_tab_item.is-active::before {
  background-color: #1c88a8;
  border: none;
  opacity: 1;
}
.cMadori__box_image {
  display: grid;
  margin-top: 3.21vh;
}
.cMadori__box_image_item {
  grid-row: 1/1;
  grid-column: 1/1;
  width: 100%;
  height: 52.41vh;
  opacity: 0;
}
.cMadori__box_image_item.is-active {
  opacity: 1;
}
.cMadori__close {
  display: flex;
  gap: 1.6vh;
  align-items: center;
  justify-content: center;
  margin-top: 6.02vh;
  color: var(--c-white);
}
.cMadori__close_icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.01vh;
  height: 4.01vh;
}
.cMadori__close_icon_line {
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--c-white);
}
.cMadori__close_icon_line:first-child {
  transform: rotate(45deg);
}
.cMadori__close_icon_line:last-child {
  transform: rotate(-45deg);
}
.cMadori__close_text {
  font-family: var(--f-en);
  font-size: 2.67vh;
  font-weight: 400;
  line-height: 0.9;
  text-transform: uppercase;
  letter-spacing: 0.01em;
}
.cMadori__close_text_row:last-child {
  display: none;
}

@media screen and (min-width: 768px) {
  .cMadori__box {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 115.33vh;
    height: 69.1vh;
  }
  .cMadori__box_tab {
    position: absolute;
    bottom: 7.08vh;
    left: 6.37vh;
    z-index: 1;
    flex-direction: column;
    gap: 2.36vh;
    align-items: center;
    justify-content: flex-start;
  }
  .cMadori__box_tab_item {
    width: 11.32vh;
    height: 11.32vh;
  }
  .cMadori__box_tab_item_text {
    font-size: 2.95vh;
  }
  .cMadori__box_image {
    margin-top: -0.59vh;
  }
  .cMadori__box_image_item {
    width: 70.99vh;
    height: 58.73vh;
  }
  .cMadori__close {
    gap: 1.89vh;
    margin-top: 4.72vh;
  }
  .cMadori__close_icon {
    width: 3.54vh;
    height: 3.54vh;
  }
  .cMadori__close_text {
    font-size: 2.36vh;
  }
}
@media (any-hover: hover) {
  .cMadori__box_tab_item::after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #1c88a8;
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.6s var(--e-out-expo);
  }
  .cMadori__box_tab_item:hover::after {
    opacity: 0.2;
  }
  .cMadori__close_text {
    position: relative;
    overflow: hidden;
  }
  .cMadori__close_text_row {
    display: block;
    line-height: 1.3;
    transition: transform 0.6s var(--gleasing);
    transform: translateY(var(--_hover-text-out));
  }
  .cMadori__close_text_row:last-child {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    transform: translateY(var(--_hover-text-in, 120%));
  }
  .cMadori__close:hover {
    --_hover-text-out: -120%;
    --_hover-text-in: 0%;
  }
}
.cShowroomCheck__inner {
  position: relative;
  padding-bottom: 128rem;
  overflow: hidden;
}
.cShowroomCheck__topImage {
  position: relative;
  width: 100%;
  height: 376rem;
  border-top: 1px solid #063847;
  border-bottom: 1px solid #063847;
}
.cShowroomCheck__topImage_image {
  width: 100%;
  height: 100%;
}
.cShowroomCheck__topImage_text {
  position: absolute;
  right: 12rem;
  bottom: 12rem;
  z-index: 1;
  display: flex;
  gap: 8rem;
  align-items: center;
  justify-content: flex-start;
  font-family: var(--f-en);
  font-size: 12rem;
  line-height: 1.4;
  color: var(--c-white);
  text-transform: uppercase;
  letter-spacing: -0.01em;
}
.cShowroomCheck__topImage_text::before {
  display: block;
  width: 16rem;
  height: 1px;
  margin-top: 1px;
  content: "";
  background-color: var(--c-white);
}
.cShowroomCheck__headline {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 30rem;
  margin-top: 96rem;
}
.cShowroomCheck__headline_text {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 22rem;
  font-weight: 500;
  line-height: 1.78;
  letter-spacing: 0.02em;
}
.cShowroomCheck__headline_text::after {
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  background-color: currentcolor;
}
.cShowroomCheck__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 85rem;
  margin-top: 96rem;
}
.cShowroomCheck__item {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  counter-increment: check-item;
}
.cShowroomCheck__item_image {
  border: 1px solid #063847;
}
.cShowroomCheck__item_index {
  display: flex;
  gap: 7rem;
  align-items: baseline;
  margin-top: 30rem;
  font-family: var(--f-en);
  font-weight: 400;
  line-height: 1.5;
  color: #57c2e2;
  letter-spacing: -0.01em;
}
.cShowroomCheck__item_index_text {
  font-size: 14rem;
  text-transform: uppercase;
}
.cShowroomCheck__item_index_number {
  font-size: 16rem;
}
.cShowroomCheck__item_index_number::before {
  display: inline-block;
  content: counter(check-item, decimal-leading-zero);
}
.cShowroomCheck__item_title {
  margin-top: 8rem;
  font-size: 20rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
.cShowroomCheck__item_paragraph {
  margin-top: 10rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.03em;
}
.cShowroomCheck__item[data-id="1"] {
  width: 300rem;
  margin-left: 60rem;
}
.cShowroomCheck__item[data-id="1"] .cShowroomCheck__item_background {
  position: absolute;
  top: 125rem;
  left: 50rem;
  z-index: -1;
  width: 280rem;
  height: 560rem;
  background-color: #e5ecee;
}
.cShowroomCheck__item[data-id="1"] .cShowroomCheck__item_image {
  width: 100%;
  height: 234rem;
}
.cShowroomCheck__item[data-id="2"] {
  width: 280rem;
  margin-left: 30rem;
}
.cShowroomCheck__item[data-id="2"] .cShowroomCheck__item_background {
  display: none;
}
.cShowroomCheck__item[data-id="2"] .cShowroomCheck__item_image {
  width: 100%;
  height: 214rem;
}
.cShowroomCheck__item[data-id="3"] {
  width: 270rem;
  margin-left: 90rem;
}
.cShowroomCheck__item[data-id="3"] .cShowroomCheck__item_background {
  position: absolute;
  top: 80rem;
  left: -60rem;
  z-index: -1;
  width: 203rem;
  height: 188rem;
  background-color: #e5ecee;
}
.cShowroomCheck__item[data-id="3"] .cShowroomCheck__item_image {
  width: 100%;
  height: 192rem;
}
.cShowroomCheck__item[data-id="4"] {
  width: 330rem;
  margin: 0 auto;
}
.cShowroomCheck__item[data-id="4"] .cShowroomCheck__item_background {
  position: absolute;
  top: 224rem;
  left: 146rem;
  z-index: -1;
  width: 219rem;
  height: 178rem;
  background-color: #e5ecee;
}
.cShowroomCheck__item[data-id="4"] .cShowroomCheck__item_image {
  width: 100%;
  height: 298rem;
}

@media screen and (min-width: 768px) {
  .cShowroomCheck__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 185rem;
  }
  .cShowroomCheck__topImage {
    height: 494rem;
  }
  .cShowroomCheck__topImage_text {
    right: auto;
    bottom: min(16px, 16rem);
    left: min(19px, 19rem);
    gap: min(8px, 8rem);
    font-size: min(12px, 12rem);
  }
  .cShowroomCheck__topImage_text::before {
    width: min(16px, 16rem);
  }
  .cShowroomCheck__headline {
    position: relative;
    flex-direction: row;
    justify-content: center;
    padding: 0;
    margin-top: min(128px, 128rem);
  }
  .cShowroomCheck__headline::after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 1px;
    content: "";
    background-color: currentcolor;
  }
  .cShowroomCheck__headline_text {
    font-size: min(26px, 26rem);
  }
  .cShowroomCheck__headline_text::after {
    display: none;
  }
  .cShowroomCheck__list {
    gap: min(186px, 186rem);
    width: 100%;
    margin-top: min(140px, 140rem);
  }
  .cShowroomCheck__item {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
  }
  .cShowroomCheck__item_image {
    flex-shrink: 0;
  }
  .cShowroomCheck__item_index {
    gap: min(7px, 7rem);
    margin-top: 0;
  }
  .cShowroomCheck__item_index_text {
    font-size: min(14px, 14rem);
  }
  .cShowroomCheck__item_index_number {
    font-size: min(16px, 16rem);
  }
  .cShowroomCheck__item_title {
    margin-top: min(8px, 8rem);
    font-size: min(22px, 22rem);
  }
  .cShowroomCheck__item_paragraph {
    margin-top: min(22px, 22rem);
    font-size: min(16px, 16rem);
  }
  .cShowroomCheck__item[data-id="1"] {
    gap: 88rem;
    width: auto;
    margin-left: 293rem;
  }
  .cShowroomCheck__item[data-id="1"] .cShowroomCheck__item_background {
    top: min(173px, 173rem);
    right: 120rem;
    left: auto;
    width: 570rem;
    height: 684rem;
  }
  .cShowroomCheck__item[data-id="1"] .cShowroomCheck__item_image {
    order: 2;
    width: 584rem;
    height: 457rem;
  }
  .cShowroomCheck__item[data-id="1"] .cShowroomCheck__item_body {
    order: 1;
    width: 352rem;
  }
  .cShowroomCheck__item[data-id="2"] {
    gap: 103rem;
    width: auto;
    margin-left: 193rem;
  }
  .cShowroomCheck__item[data-id="2"] .cShowroomCheck__item_image {
    order: 2;
    width: 478rem;
    height: 367rem;
  }
  .cShowroomCheck__item[data-id="2"] .cShowroomCheck__item_body {
    order: 1;
    width: 349rem;
  }
  .cShowroomCheck__item[data-id="3"] {
    gap: 88rem;
    width: auto;
    margin-left: 293rem;
  }
  .cShowroomCheck__item[data-id="3"] .cShowroomCheck__item_background {
    top: 166rem;
    left: -180rem;
    width: 381rem;
    height: 251rem;
  }
  .cShowroomCheck__item[data-id="3"] .cShowroomCheck__item_image {
    width: 440rem;
    height: 315rem;
  }
  .cShowroomCheck__item[data-id="3"] .cShowroomCheck__item_body {
    width: 342rem;
  }
  .cShowroomCheck__item[data-id="4"] {
    gap: 88rem;
    width: auto;
    margin: 0 0 0 293rem;
  }
  .cShowroomCheck__item[data-id="4"] .cShowroomCheck__item_background {
    top: 134rem;
    right: 174rem;
    left: auto;
    width: 381rem;
    height: 467rem;
  }
  .cShowroomCheck__item[data-id="4"] .cShowroomCheck__item_image {
    order: 2;
    width: 548rem;
    height: 497rem;
  }
  .cShowroomCheck__item[data-id="4"] .cShowroomCheck__item_body {
    order: 1;
    width: 288rem;
  }
}
.cShowroomPoint {
  margin-top: 130rem;
}
.cShowroomPoint__headline {
  width: 311rem;
  height: 394rem;
  padding: 56rem 30rem;
  color: var(--c-white);
  background-color: #34a5c6;
}
.cShowroomPoint__headline_en {
  font-family: var(--f-en);
  font-size: 14rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
.cShowroomPoint__headline_ja {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  align-items: flex-start;
  margin-top: 14rem;
}
.cShowroomPoint__headline_ja_sub {
  font-size: 16rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
}
.cShowroomPoint__headline_ja_main {
  font-size: 26rem;
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: 0.02em;
}
.cShowroomPoint__list {
  display: flex;
  flex-direction: column;
  gap: 64rem;
  padding: 0 30rem;
  margin-top: -192rem;
}
.cShowroomPoint__item {
  display: flex;
  flex-direction: column;
  counter-increment: point-item;
}
.cShowroomPoint__item_image {
  width: 276rem;
  height: 307rem;
  border: 1px solid #063847;
}
.cShowroomPoint__item_body {
  width: 276rem;
  margin-top: 16rem;
}
.cShowroomPoint__item_index_line {
  width: 100%;
  height: 1px;
  background-color: #57c2e2;
}
.cShowroomPoint__item_index_number {
  display: flex;
  gap: 8rem;
  align-items: center;
  justify-content: flex-end;
  margin-top: 6rem;
  font-family: var(--f-en);
  font-size: 12rem;
  font-weight: 500;
  line-height: 1.5;
  color: #57c2e2;
  letter-spacing: -0.01em;
}
.cShowroomPoint__item_index_number_text::after {
  display: inline-block;
  content: counter(point-item, decimal-leading-zero);
}
.cShowroomPoint__item_title {
  margin-top: 12rem;
  overflow: hidden;
  font-size: 18rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.cShowroomPoint__item_title_text {
  display: inline-block;
}
.cShowroomPoint__item_paragraph {
  margin-top: 6rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.02em;
}
.cShowroomPoint__item:nth-child(2n+1) {
  align-items: flex-end;
}
.cShowroomPoint__item:nth-child(2n) {
  align-items: flex-start;
}

@media screen and (min-width: 768px) {
  .cShowroomPoint {
    margin-top: calc(min(272px, 272rem) - var(--header-height-fixed));
  }
  .cShowroomPoint__inner {
    height: 600vh;
    padding-top: var(--header-height-fixed);
  }
  .cShowroomPoint__sticky {
    position: sticky;
    top: var(--header-height-fixed);
    z-index: 1;
    display: flex;
    align-items: flex-start;
    width: 100%;
    height: calc(100vh - var(--header-height-fixed));
    padding-left: 154rem;
    overflow: hidden;
  }
  .cShowroomPoint__mover {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .cShowroomPoint__headline {
    display: flex;
    flex-shrink: 0;
    align-items: flex-start;
    width: 403rem;
    height: 437rem;
    padding: 64rem 67rem;
  }
  .cShowroomPoint__headline_en {
    margin-left: min(62px, 62rem);
    font-size: min(14px, 14rem);
  }
  .cShowroomPoint__headline_ja {
    flex-direction: column;
    gap: min(14px, 14rem);
    order: -1;
    margin-top: 0;
    writing-mode: vertical-lr;
    text-orientation: upright;
  }
  .cShowroomPoint__headline_ja_sub {
    font-size: min(18px, 18rem);
  }
  .cShowroomPoint__headline_ja_main {
    font-size: min(32px, 32rem);
  }
  .cShowroomPoint__list {
    flex-shrink: 0;
    flex-direction: row;
    gap: 148rem;
    align-items: flex-start;
    padding: 0 195rem 0 0;
    margin-top: 29.83vh;
    margin-left: -208rem;
  }
  .cShowroomPoint__item {
    flex-shrink: 0;
    flex-direction: row;
    gap: min(24px, 24rem);
    align-items: flex-start;
  }
  .cShowroomPoint__item_image {
    width: 49.06vh;
    height: 54.72vh;
  }
  .cShowroomPoint__item_body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 264rem;
    margin-top: 0;
  }
  .cShowroomPoint__item_index {
    width: 100%;
  }
  .cShowroomPoint__item_index_number {
    gap: min(12px, 12rem);
    margin-top: min(6px, 6rem);
    font-size: min(12px, 12rem);
  }
  .cShowroomPoint__item_title {
    margin-top: auto;
    font-size: min(22px, 22rem);
  }
  .cShowroomPoint__item_paragraph {
    margin-top: min(20px, 20rem);
    font-size: min(16px, 16rem);
  }
  .cShowroomPoint__item:nth-child(2n+1) {
    align-items: stretch;
  }
  .cShowroomPoint__item:nth-child(2n) {
    align-items: stretch;
    margin-top: -16.98vh;
  }
}
.cShowroomQuo__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 130rem 0 120rem;
}
.cShowroomQuo__background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.cShowroomQuo__background_line {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.cShowroomQuo__background_line:nth-child(2n) {
  --_direction: reverse;
}
.cShowroomQuo__background_text {
  --_duration: 120s;
  display: flex;
  flex-shrink: 0;
  gap: 32rem;
  align-items: center;
  justify-content: flex-start;
  padding-left: 32rem;
  font-family: var(--f-en);
  font-size: 88rem;
  line-height: 1.5;
  color: #afedff;
  letter-spacing: -0.02em;
}
.cShowroomQuo__background_text_inner {
  display: flex;
  flex-shrink: 0;
  gap: 4rem;
  align-items: center;
  justify-content: flex-start;
}
.cShowroomQuo__background_text_light {
  font-weight: 300;
}
.cShowroomQuo__background_text_medium {
  font-weight: 500;
}
.cShowroomQuo__background_text[data-id="1"] {
  animation: loop-x-1 var(--_duration) calc(var(--_duration) / -2) linear infinite;
  animation-direction: var(--_direction);
}
.cShowroomQuo__background_text[data-id="2"] {
  animation: loop-x-2 var(--_duration) linear infinite;
  animation-direction: var(--_direction);
}
.cShowroomQuo__circle {
  width: 318rem;
  height: 318rem;
}
.cShowroomQuo__circle_link {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.cShowroomQuo__circle_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #57c2e2;
  border-radius: 50%;
}
.cShowroomQuo__circle_image {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .cShowroomQuo__inner {
    padding: 224rem 0 296rem;
  }
  .cShowroomQuo__background {
    margin-top: 12rem;
  }
  .cShowroomQuo__background_line:nth-child(n+3) {
    display: none;
  }
  .cShowroomQuo__background_text {
    --_duration: 240s;
    gap: 40rem;
    padding-left: 40rem;
    font-family: var(--f-en);
    font-size: 100rem;
  }
  .cShowroomQuo__background_text_inner {
    gap: 24rem;
  }
  .cShowroomQuo__circle {
    width: 492rem;
    height: 492rem;
  }
}
@media (any-hover: hover) {
  .cShowroomQuo__circle_link:hover {
    --_background-scale: 1.05;
  }
  .cShowroomQuo__circle_background {
    transition: transform 0.6s var(--e-out-expo);
    transform: scale(var(--_background-scale, 1));
  }
}
.cPopupReserve {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: var(--z-popup);
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 0 20rem;
  transition: transform 0.6s var(--e-out-expo);
}
.cPopupReserve__link {
  width: 100%;
  height: 100%;
}
.cPopupReserve__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8rem 10rem;
  color: var(--c-white);
  background-color: #1c88a8;
}
.cPopupReserve__head_text {
  font-size: 15rem;
  font-weight: 700;
  line-height: 1.2;
}
.cPopupReserve__head_icon {
  width: 20rem;
  height: 20rem;
}
.cPopupReserve__body {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 5rem 10rem 9rem;
  background-color: var(--c-white);
  border-right: 1px solid #1c88a8;
  border-left: 1px solid #1c88a8;
}
.cPopupReserve__body_text {
  font-size: 13rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.5;
  color: #1c88a8;
  letter-spacing: 0.05em;
}
.cPopupReserve__body_attention {
  margin-top: -4rem;
  font-size: 11rem;
  font-weight: 500;
  line-height: 1.5;
}
.cPopupReserve__body_image {
  position: absolute;
  right: 10rem;
  width: 40rem;
  height: 34rem;
  margin-top: 2rem;
}

.is-footer .cPopupReserve {
  transform: translateY(101%);
}

@media screen and (min-width: 768px) {
  .cPopupReserve {
    right: min(16px, 16rem);
    bottom: min(10px, 10rem);
    left: auto;
    display: flex;
    width: min(260px, 260rem);
    padding: 0;
  }
  .cPopupReserve__link {
    width: 100%;
    height: 100%;
  }
  .cPopupReserve__head {
    padding: min(10px, 10rem) min(14px, 14rem);
  }
  .cPopupReserve__head_text {
    font-size: min(16px, 16rem);
  }
  .cPopupReserve__head_icon {
    width: min(20px, 20rem);
    height: min(20px, 20rem);
  }
  .cPopupReserve__body {
    padding: min(12px, 12rem) min(15px, 15rem) min(15px, 15rem);
    border-bottom: 1px solid #1c88a8;
  }
  .cPopupReserve__body_text {
    font-size: min(15px, 15rem);
  }
  .cPopupReserve__body_attention {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: min(4px, 4rem);
    font-size: min(12px, 12rem);
  }
  .cPopupReserve__body_image {
    top: min(15px, 15rem);
    right: min(10px, 10rem);
    width: min(54px, 54rem);
    height: min(40px, 40rem);
    margin-top: min(2px, 2rem);
  }
}
@media (any-hover: hover) {
  .cPopupReserve__link {
    position: relative;
  }
  .cPopupReserve__link::after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    background-color: var(--c-black);
    opacity: 0;
    transition: opacity 0.6s var(--e-out-expo);
  }
  .cPopupReserve__link:hover::after {
    opacity: 0.2;
  }
}
.pFV__inner {
  padding: 141rem 0 0;
  background-color: #57c2e2;
}
.pFV__head {
  display: flex;
  gap: 20rem;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 0 20rem;
  color: var(--c-white);
}
.pFV__head_index {
  margin-top: 0.35em;
  overflow: hidden;
  font-family: var(--f-en);
  font-size: 14rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.03em;
}
.pFV__head_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pFV__head_title_en {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: hidden;
  font-family: var(--f-en);
  font-size: 42rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.03em;
}
.pFV__head_title_en_row {
  overflow: hidden;
}
.pFV__head_title_ja {
  margin-top: 10rem;
  overflow: hidden;
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.pFV__head_address {
  margin-top: 20rem;
  font-family: var(--f-en);
  font-size: 12rem;
  line-height: 1.6;
}
.pFV__head_address_tel_text {
  text-transform: uppercase;
}
.pFV__head_address_tel_link {
  display: inline-block;
}
.pFV__image {
  width: 100%;
  height: 398rem;
  margin-top: 40rem;
  border-top: 1px solid #063847;
  border-bottom: 1px solid #063847;
}

.pConcept {
  margin-top: 104rem;
}
.pConcept__inner {
  padding: 0 20rem;
}
.pConcept__headline_en {
  font-family: var(--f-en);
  font-size: 16rem;
  font-weight: 400;
  line-height: 1;
  color: #57c2e2;
  text-transform: uppercase;
  letter-spacing: -0.03em;
}
.pConcept__headline_ja {
  margin-top: 16rem;
  font-size: 22rem;
  font-weight: 500;
  line-height: 1.6;
}
.pConcept__text {
  margin-top: 12rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.02em;
}

.pStep {
  margin-top: 56rem;
}
.pStep__inner {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: 14rem;
       column-gap: 14rem;
  padding: 0 20rem 0 16rem;
}
.pStep__line {
  position: relative;
  display: flex;
  grid-row: 1/3;
  grid-column: 1;
  justify-content: center;
  width: 14px;
  height: calc(100% - 8px);
  margin-top: 7rem;
  overflow: hidden;
  pointer-events: none;
}
.pStep__line_bar {
  position: absolute;
  top: 0;
  display: flex;
  justify-content: center;
  width: 1px;
  height: 100%;
  background-color: #9ec3cd;
}
.pStep__line_bar::after {
  position: absolute;
  bottom: 2px;
  width: 9px;
  height: 9px;
  content: "";
  border-right: 1px solid #9ec3cd;
  border-bottom: 1px solid #9ec3cd;
  transform: rotate(45deg);
}
.pStep__headline {
  display: flex;
  grid-column: 2;
  gap: 8rem;
  align-items: center;
  justify-content: flex-start;
}
.pStep__headline_en {
  overflow: hidden;
  font-family: var(--f-en);
  font-size: 32rem;
  font-weight: 400;
  line-height: 1.1;
  color: #57c2e2;
  text-transform: uppercase;
}
.pStep__headline_ja {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden;
}
.pStep__headline_ja_row {
  overflow: hidden;
}
.pStep__headline_ja_text {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding: 3rem 0 4rem 4rem;
  font-size: 18rem;
  font-weight: 500;
  line-height: 1.04;
  color: var(--c-white);
  letter-spacing: 0.02em;
}
.pStep__headline_ja_text::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #57c2e2;
}
.pStep__headline_ja_text + .pStep__headline_ja_text {
  padding: 3rem 4rem 4rem 0;
}
.pStep__list {
  display: grid;
  grid-column: 2;
  gap: 8rem;
  margin-top: 40rem;
  overflow: hidden;
}
.pStep__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 178rem;
  padding: 13rem 13rem 20rem;
  counter-increment: step-item;
  background-color: var(--_item-background);
}
.pStep__item_index {
  font-family: var(--f-en);
  font-size: 44rem;
  font-weight: 400;
  line-height: 1;
  color: var(--_index-color);
  letter-spacing: -0.03em;
}
.pStep__item_index::after {
  display: block;
  content: counter(step-item, decimal-leading-zero);
}
.pStep__item_en {
  position: absolute;
  top: 17rem;
  right: 12rem;
  font-family: var(--f-en);
  font-size: 11rem;
  font-weight: 400;
  line-height: -0.03em;
  color: var(--_index-color);
  writing-mode: vertical-rl;
}
.pStep__item_note {
  margin-top: auto;
}
.pStep__item_title {
  font-size: 20rem;
  font-weight: 500;
  line-height: 1;
}
.pStep__item_text {
  margin-top: 10rem;
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.7;
}
.pStep__item_text_link {
  display: inline;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}
.pStep__item[data-id="1"] {
  --_item-background: #ebf3f6;
  --_index-color: #9ec3cd;
}
.pStep__item[data-id="2"] {
  --_item-background: #d9edf2;
  --_index-color: #9ec3cd;
}
.pStep__item[data-id="3"] {
  --_item-background: #c0e6f0;
  --_index-color: #88b4c0;
}
.pStep__item[data-id="4"] {
  --_item-background: #a9e0ee;
  --_index-color: #70b1c4;
}

.pModel {
  margin-top: 130rem;
}
.pModel__headline {
  padding: 0 40rem;
  color: #57c2e2;
}
.pModel__headline_sub {
  font-family: var(--f-en);
  font-size: 14rem;
  font-weight: 400;
  line-height: 0.9;
  text-transform: uppercase;
  letter-spacing: -0.03em;
}
.pModel__headline_main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 10rem;
  margin-left: -6rem;
  font-family: var(--f-en);
  font-size: 58rem;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: -0.03em;
}
.pModel__headline_main_text {
  position: relative;
}
.pModel__headline_main_text_col {
  display: flex;
  gap: 8rem;
  align-items: baseline;
  justify-content: flex-start;
}
.pModel__headline_main_text::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 98%;
  height: 1px;
  content: "";
  background-color: #57c2e2;
}
.pModel__headline_main_text:last-child {
  margin-left: 48rem;
}
.pModel__headline_main_number {
  font-size: 16rem;
  font-weight: 500;
  line-height: 0.9;
  letter-spacing: -0.03em;
}
.pModel__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 32rem;
       column-gap: 32rem;
  padding: 0 30rem;
  margin-top: 48rem;
}
.pModel__item {
  display: flex;
  align-items: flex-start;
}
.pModel__item_link {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pModel__item_title {
  display: flex;
  gap: 2rem;
  align-items: center;
  margin-top: 4rem;
}
.pModel__item_title_icon {
  width: 16rem;
  height: 16rem;
  margin-top: 2rem;
}
.pModel__item_title_text {
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.16;
}
.pModel__single {
  margin-top: 70rem;
}

.pModelSingle {
  color: var(--c-white);
  counter-increment: model-single;
}
.pModelSingle__inner {
  position: relative;
  padding: 60rem 20rem 68rem;
  overflow: hidden;
  background-color: #42b3d4;
}
.pModelSingle__overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-color: var(--c-black);
  opacity: 0;
}
.pModelSingle__fv_image {
  width: 100%;
  height: 340rem;
  border: 1px solid #063847;
}
.pModelSingle__fv_headline {
  padding: 0 9rem;
  margin-top: -32rem;
}
.pModelSingle__fv_headline_index {
  margin-left: 3rem;
  font-family: var(--f-en);
  font-size: 12rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.03em;
}
.pModelSingle__fv_headline_index::after {
  display: block;
  content: counter(model-single, decimal-leading-zero);
}
.pModelSingle__fv_headline_main {
  position: relative;
  display: flex;
  gap: 14rem;
  align-items: center;
  justify-content: flex-start;
  font-family: var(--f-en);
  font-size: 40rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.03em;
  opacity: var(--init-opacity);
}
.pModelSingle__fv_headline_fill {
  overflow: hidden;
}
.pModelSingle__fv_headline_stroke {
  position: absolute;
  top: 3rem;
  left: 3rem;
  transform: translateX(calc(var(--_x, 0) * 1%)) translateY(calc(var(--_y, 0) * 1%));
}
.pModelSingle__fv_note {
  padding: 0 10rem;
  margin-top: 20rem;
}
.pModelSingle__fv_note_title {
  font-size: 20rem;
  font-weight: 500;
  line-height: 1.2;
}
.pModelSingle__fv_note_paragraph {
  margin-top: 8rem;
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.7;
}
.pModelSingle__slider {
  margin-top: 60rem;
}
.pModelSingle__slider_main {
  padding: 0 10rem;
}
.pModelSingle__slider_item {
  position: absolute;
  top: 0;
  left: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
  border: 1px solid #063847;
}
.pModelSingle__slider_item_image {
  width: 100%;
  height: 100%;
}
.pModelSingle__slider_item_caption {
  position: absolute;
  top: 8px;
  left: 8px;
  font-family: var(--f-en);
  font-size: 10px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.03em;
}
.pModelSingle__slider_item.is-active {
  z-index: 2;
  animation: show-slider-animation 1.2s var(--e-out-expo) forwards;
}
.pModelSingle__slider_item.is-prev {
  z-index: 1;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
@keyframes show-slider-animation {
  0% {
    clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
  }
  100% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  }
}
.pModelSingle__slider_wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
}
.pModelSingle__slider_top {
  width: 100%;
  height: 193rem;
  overflow: hidden;
}
.pModelSingle__slider_navigation {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 6rem;
  margin-top: 16rem;
}
.pModelSingle__slider_navigation_bar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentcolor;
}
.pModelSingle__slider_navigation_page {
  display: flex;
  gap: 0.3em;
  align-items: center;
  justify-content: flex-start;
  font-family: var(--f-en);
  font-size: 12rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.03em;
}
.pModelSingle__slider_navigation_page::before {
  display: block;
  order: 2;
  width: 4rem;
  height: 1px;
  margin-top: 1px;
  content: "";
  background-color: currentcolor;
}
.pModelSingle__slider_navigation_page_current {
  order: 1;
  min-width: 15rem;
}
.pModelSingle__slider_navigation_page_total {
  order: 3;
  min-width: 15rem;
}
.pModelSingle__slider_navigation_button {
  display: flex;
  gap: 6rem;
  align-items: center;
  justify-items: flex-start;
}
.pModelSingle__slider_navigation_prev {
  transform: rotate(180deg);
}
.pModelSingle__slider_navigation_prev, .pModelSingle__slider_navigation_next {
  flex-shrink: 0;
  width: 40rem;
  height: 40rem;
}
.pModelSingle__slider_navigation_prev:disabled, .pModelSingle__slider_navigation_next:disabled {
  pointer-events: none;
}
.pModelSingle__slider_note {
  margin-top: 14rem;
  overflow: hidden;
}
.pModelSingle__slider_note_wrapper {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.pModelSingle__slider_note_item {
  flex-shrink: 1;
  min-width: 330rem;
  opacity: 0;
  transition: opacity 0.6s var(--e-out-expo);
}
.pModelSingle__slider_note_item:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.pModelSingle__slider_note_item.is-active {
  opacity: 1;
  transition-delay: 0.4s;
}
.pModelSingle__slider_title {
  font-size: 18rem;
  font-weight: 500;
  line-height: 1.7;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.4em;
}
.pModelSingle__slider_text {
  margin-top: 10rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
}
.pModelSingle__slider_sub {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 60rem;
}
.pModelSingle__slider_sub_background {
  position: absolute;
  top: 74rem;
  left: 50rem;
  z-index: -1;
  width: 249rem;
  height: 349rem;
  background-color: #34a5c6;
}
.pModelSingle__slider_center {
  width: 264rem;
  height: 177rem;
  margin-left: auto;
  overflow: hidden;
}
.pModelSingle__slider_bottom {
  width: 225rem;
  height: 140rem;
  margin-top: 24rem;
  overflow: hidden;
}
.pModelSingle__slider_madori {
  --_arrow-color: var(--c-white);
  --_background-color: #2babd2;
  --_prl: 10rem;
  position: relative;
  z-index: 1;
  width: 184rem;
  height: 50rem;
  margin-top: 56rem;
  margin-left: auto;
  color: #2babd2;
  background-color: var(--c-white);
}
.pModelSingle__ichioshi {
  position: relative;
  z-index: 1;
  margin-top: 130rem;
}
.pModelSingle__ichioshi_loop {
  position: absolute;
  top: -50rem;
  left: 0;
  z-index: -1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0 -20rem;
}
.pModelSingle__ichioshi_loop_item {
  --_duration: 120s;
  display: flex;
  flex-shrink: 0;
  gap: 40rem;
  align-items: center;
  justify-content: flex-start;
  padding-left: 40rem;
  font-family: var(--f-en);
  font-size: 70rem;
  font-weight: 400;
  line-height: 1.1;
  color: #339bba;
}
.pModelSingle__ichioshi_loop_item[data-id="1"] {
  animation: loop-x-1 var(--_duration) calc(var(--_duration) / -2) linear infinite;
  animation-direction: var(--_direction);
}
.pModelSingle__ichioshi_loop_item[data-id="2"] {
  animation: loop-x-2 var(--_duration) linear infinite;
  animation-direction: var(--_direction);
}
.pModelSingle__ichioshi_block {
  position: relative;
  z-index: 1;
  background-color: var(--c-white);
  border: 1px solid #063847;
}
.pModelSingle__ichioshi_head {
  position: absolute;
  top: 0;
  left: 0;
  padding: 3rem 10rem 4rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
  background-color: #063847;
}
.pModelSingle__ichioshi_title {
  font-size: 18rem;
  font-weight: 500;
  line-height: 1.5;
  color: #42b3d4;
}
.pModelSingle__ichioshi_paragraph {
  margin-top: 10rem;
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.7;
  color: var(--c-black);
  letter-spacing: 0.02em;
}
.pModelSingle__ichioshi_note {
  padding: 70rem 20rem 24rem;
}
.pModelSingle__ichioshi_image {
  width: 100%;
  height: 240rem;
  border-top: 1px solid #063847;
}
.pModelSingle:not(:first-child) {
  position: relative;
}
.pModelSingle:not(:first-child)::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #063847;
}
.pModelSingle:nth-child(2n) .pModelSingle__slider_center {
  margin-right: auto;
  margin-left: 0;
}
.pModelSingle:nth-child(2n) .pModelSingle__slider_bottom {
  margin-left: auto;
}

.pPoint {
  margin-top: -130rem;
}

.pAccess {
  display: flex;
  flex-direction: column;
  gap: 24rem;
  padding: 16rem 20rem 20rem;
  margin: 56rem 20rem;
  background-color: #f8f8f8;
}
.pAccess__number {
  display: flex;
  gap: 8rem;
  align-items: center;
  padding: 6rem 0;
  font-family: var(--f-en);
  font-size: 12rem;
  font-weight: 500;
  line-height: 1.5;
  color: #57c2e2;
  letter-spacing: -0.01em;
}
.pAccess__item {
  display: flex;
  flex-direction: column;
  gap: 14rem;
}
.pAccess__title {
  font-size: 20rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.pAccess__details {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  font-weight: 500;
}
.pAccess__address {
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.02em;
}
.pAccess__contact {
  display: flex;
  gap: 6rem;
  align-items: center;
}
.pAccess__contact_label, .pAccess__contact_number {
  font-family: var(--f-en);
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.01em;
}

.pPromotion {
  padding: 20rem;
  margin: 18rem 20rem 0;
  background-color: #57c2e2;
}
.pPromotion .pPromotion__image {
  padding: 0 22rem;
}
.pPromotion .pPromotion__link {
  --_arrow-color: var(--c-white);
  --_background-color: #57c2e2;
  --_prl: 10rem;
  position: relative;
  z-index: 1;
  justify-content: center;
  width: 100%;
  height: 50rem;
  margin-top: 24rem;
  margin-left: auto;
  color: #57c2e2;
  background-color: var(--c-white);
}

@media screen and (min-width: 768px) {
  .pFV__inner {
    padding: min(214px, 214rem) 0 0;
  }
  .pFV__head {
    position: relative;
    gap: min(16px, 16rem);
    padding: 0 0 0 501rem;
  }
  .pFV__head_index {
    margin-top: 0.5em;
    font-size: min(20px, 20rem);
  }
  .pFV__head_content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .pFV__head_title_en {
    font-family: var(--f-en);
    font-size: min(100px, 100rem);
  }
  .pFV__head_title_ja {
    margin-top: min(20px, 20rem);
    font-size: min(24px, 24rem);
  }
  .pFV__head_address {
    position: absolute;
    top: min(4px, 4rem);
    left: 56rem;
    margin-top: 0;
    font-size: min(12px, 12rem);
  }
  .pFV__image {
    height: 600rem;
    margin-top: min(92px, 92rem);
  }
  .pConcept {
    margin-top: min(194px, 194rem);
  }
  .pConcept__inner {
    display: flex;
    gap: min(40px, 40rem);
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0 min(194px, 194rem);
  }
  .pConcept__headline_en {
    font-size: min(16px, 16rem);
  }
  .pConcept__headline_ja {
    margin-top: min(14px, 14rem);
    font-size: min(28px, 28rem);
  }
  .pConcept__text {
    width: 660rem;
    margin-top: 2em;
    margin-left: auto;
    font-size: min(16px, 16rem);
    line-height: 1.8;
  }
  .pStep {
    margin-top: min(184px, 184rem);
  }
  .pStep__inner {
    row-gap: min(12px, 12rem);
    -moz-column-gap: 0;
         column-gap: 0;
    padding: 0;
    margin: 0 min(194px, 194rem);
  }
  .pStep__line {
    left: 0;
    grid-column: 1/3;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    height: min(14px, 14rem);
    margin-top: 0;
  }
  .pStep__line_bar {
    top: auto;
    align-items: center;
    width: 100%;
    height: 1px;
  }
  .pStep__line_bar::after {
    right: min(2px, 2rem);
    bottom: auto;
    width: min(11px, 11rem);
    height: min(11px, 11rem);
    transform: rotate(-45deg);
  }
  .pStep__headline {
    flex-direction: column;
    grid-column: 1;
    gap: min(5px, 5rem);
    align-items: flex-start;
  }
  .pStep__headline_en {
    font-size: min(42px, 42rem);
  }
  .pStep__headline_ja {
    display: flex;
    flex-direction: column;
    gap: min(4px, 4rem);
    align-items: flex-start;
    padding: 0;
    overflow: hidden;
  }
  .pStep__headline_ja_text {
    position: relative;
    z-index: 1;
    padding: min(3px, 3rem) min(6px, 6rem) min(4px, 4rem);
    font-size: min(20px, 20rem);
  }
  .pStep__headline_ja_text + .pStep__headline_ja_text {
    padding: min(3px, 3rem) min(6px, 6rem) min(4px, 4rem);
  }
  .pStep__list {
    display: flex;
    gap: min(8px, 8rem);
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: 0;
    margin-left: auto;
  }
  .pStep__item {
    width: 208rem;
    height: 272rem;
    padding: min(3px, 3rem) min(12px, 12rem) min(16px, 16rem);
  }
  .pStep__item_index {
    font-size: min(66px, 66rem);
  }
  .pStep__item_en {
    top: min(12px, 12rem);
    right: min(12px, 12rem);
    font-size: min(10px, 10rem);
  }
  .pStep__item_title {
    font-size: min(20px, 20rem);
  }
  .pStep__item_text {
    margin-top: min(10px, 10rem);
    font-size: min(16px, 16rem);
  }
  .pModel {
    margin-top: min(224px, 224rem);
  }
  .pModel__inner {
    padding: 0 min(154px, 154rem);
  }
  .pModel__headline {
    display: flex;
    gap: 154rem;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0;
  }
  .pModel__headline_sub {
    margin-top: min(41px, 41rem);
    font-size: min(16px, 16rem);
  }
  .pModel__headline_main {
    margin-top: 0;
    margin-left: 0;
    font-size: min(94px, 94rem);
  }
  .pModel__headline_main_text_col {
    gap: min(6px, 6rem);
  }
  .pModel__headline_main_text:last-child {
    margin-left: min(147px, 147rem);
  }
  .pModel__headline_main_number {
    font-size: min(20px, 20rem);
  }
  .pModel__list {
    position: relative;
    z-index: 1;
    grid-template-columns: repeat(3, auto);
    gap: 0;
    justify-content: flex-start;
    padding: 0;
    margin-top: max(-41px, -41rem);
  }
  .pModel__item_title {
    gap: min(6px, 6rem);
    margin-top: min(12px, 12rem);
  }
  .pModel__item_title_icon {
    width: min(16px, 16rem);
    height: min(16px, 16rem);
    margin-top: min(2px, 2rem);
  }
  .pModel__item_title_text {
    font-size: min(16px, 16rem);
  }
  .pModel__single {
    margin-top: min(172px, 172rem);
  }
  .pModelSingle__inner {
    padding: min(60px, 60rem) min(59px, 59rem) 0;
  }
  .pModelSingle__fv_image {
    height: 616rem;
  }
  .pModelSingle__fv_headline {
    display: flex;
    gap: min(6px, 6rem);
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0 95rem;
    margin-top: max(-54px, -54rem);
  }
  .pModelSingle__fv_headline_index {
    margin-top: min(12px, 12rem);
    margin-left: 0;
    font-size: min(22px, 22rem);
  }
  .pModelSingle__fv_headline_main {
    font-size: min(110px, 110rem);
  }
  .pModelSingle__fv_headline_stroke {
    top: min(12px, 12rem);
    left: min(12px, 12rem);
  }
  .pModelSingle__fv_note {
    padding: 0 calc(95rem + min(37px, 37rem));
    margin-top: min(40px, 40rem);
  }
  .pModelSingle__fv_note_title {
    font-size: min(28px, 28rem);
  }
  .pModelSingle__fv_note_paragraph {
    margin-top: min(12px, 12rem);
    font-size: min(16px, 16rem);
  }
  .pModelSingle__slider {
    padding: 0 calc(95rem + min(37px, 37rem));
    margin-top: min(124px, 124rem);
  }
  .pModelSingle__slider_main {
    display: grid;
    grid-template-rows: auto 1fr;
    grid-template-columns: auto 1fr;
    gap: 0 min(98px, 98rem);
    padding: 0;
  }
  .pModelSingle__slider_item_caption {
    top: min(14px, 14rem);
    left: min(16px, 16rem);
    font-size: min(12px, 12rem);
  }
  .pModelSingle__slider_top {
    grid-row: 1/3;
    grid-column: 1;
    width: 640rem;
    height: 375rem;
  }
  .pModelSingle__slider_navigation {
    grid-column: 2;
    padding-top: min(6px, 6rem);
    margin-top: 0;
  }
  .pModelSingle__slider_navigation_page {
    font-size: min(12px, 12rem);
  }
  .pModelSingle__slider_navigation_page::before {
    width: min(4px, 4rem);
  }
  .pModelSingle__slider_navigation_page_current {
    min-width: min(15px, 15rem);
  }
  .pModelSingle__slider_navigation_page_total {
    min-width: min(15px, 15rem);
  }
  .pModelSingle__slider_navigation_button {
    gap: min(6px, 6rem);
  }
  .pModelSingle__slider_navigation_prev, .pModelSingle__slider_navigation_next {
    width: min(30px, 30rem);
    height: min(30px, 30rem);
  }
  .pModelSingle__slider_note {
    grid-column: 2;
    margin-top: min(36px, 36rem);
  }
  .pModelSingle__slider_title {
    font-size: min(20px, 20rem);
  }
  .pModelSingle__slider_text {
    margin-top: min(16px, 16rem);
    font-size: min(16px, 16rem);
  }
  .pModelSingle__slider_sub {
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: min(120px, 120rem);
  }
  .pModelSingle__slider_sub_background {
    top: 87rem;
    left: -42rem;
    width: 970rem;
    height: 433rem;
  }
  .pModelSingle__slider_center {
    width: 460rem;
    height: 307rem;
  }
  .pModelSingle__slider_bottom {
    width: 392rem;
    height: 245rem;
    margin-top: 162rem;
    margin-left: 152rem;
  }
  .pModelSingle__slider_madori {
    --_font-size: min(16px, 16rem);
    --_icon-width: min(20px, 20rem);
    --_icon-height: min(20px, 20rem);
    --_prl: min(24px, 24rem);
    width: min(278px, 278rem);
    height: min(72px, 72rem);
    margin-top: min(72px, 72rem);
  }
  .pModelSingle__ichioshi {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    min-height: 834rem;
    margin-top: 0;
  }
  .pModelSingle__ichioshi_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 min(139px, 139rem);
  }
  .pModelSingle__ichioshi_loop {
    top: auto;
    left: 0;
    z-index: -1;
    margin: 0 max(-59px, -59rem);
  }
  .pModelSingle__ichioshi_loop_item {
    --_duration: 160s;
    font-size: 98rem;
  }
  .pModelSingle__ichioshi_block {
    display: flex;
    align-items: center;
  }
  .pModelSingle__ichioshi_head {
    padding: min(3px, 3rem) min(10px, 10rem) min(4px, 4rem);
    font-size: min(16px, 16rem);
  }
  .pModelSingle__ichioshi_title {
    font-size: min(24px, 24rem);
  }
  .pModelSingle__ichioshi_paragraph {
    margin-top: min(14px, 14rem);
    font-size: min(16px, 16rem);
  }
  .pModelSingle__ichioshi_note {
    padding: 0 96rem;
  }
  .pModelSingle__ichioshi_image {
    flex-shrink: 0;
    width: 388rem;
    height: 410rem;
    border-top: none;
    border-left: 1px solid #063847;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_top {
    grid-column: 2;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_navigation {
    grid-column: 1;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_note {
    grid-column: 1;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_sub {
    flex-direction: row;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_sub_background {
    left: 155rem;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_center {
    margin-right: 0;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_bottom {
    margin-left: 120rem;
  }
  .pModelSingle:nth-child(2n) .pModelSingle__slider_madori {
    margin-right: auto;
    margin-left: 0;
  }
  .pAccess {
    display: flex;
    flex-direction: row;
    gap: 138rem;
    padding: min(44px, 44rem) min(57px, 57rem);
    margin: min(88px, 88rem) min(194px, 194rem) 0;
  }
  .pAccess__number {
    display: flex;
    gap: 8rem;
    align-items: start;
  }
  .pAccess .pAccess__list {
    width: 800rem;
  }
  .pAccess__item {
    display: flex;
    flex-direction: column;
    gap: 14rem;
  }
  .pAccess__title {
    font-size: 20rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.02em;
  }
  .pPromotion {
    display: flex;
    gap: 63rem;
    align-items: center;
    padding: 27rem 40rem 27rem 62rem;
    margin: min(92px, 92rem) min(194px, 194rem) 0;
    background-color: #57c2e2;
  }
  .pPromotion .pPromotion__image {
    width: 736rem;
    padding: 0;
  }
  .pPromotion .pPromotion__link {
    --_arrow-color: var(--c-white);
    --_background-color: #2babd2;
    --_prl: 10rem;
    width: 223rem;
    height: 50rem;
    margin-top: 0;
  }
}
@media (any-hover: hover) {
  .pModel__item_link:hover {
    --_scale: 1.1;
  }
  .pModel__item_image {
    overflow: hidden;
  }
  .pModel__item_image img {
    transition: transform 0.6s var(--e-out-expo);
    transform: scale(var(--_scale));
  }
  .pModelSingle__slider_navigation_prev, .pModelSingle__slider_navigation_next {
    border-radius: 50%;
    transition: background-color 0.48s var(--e-out-cubic);
  }
  .pModelSingle__slider_navigation_prev:hover, .pModelSingle__slider_navigation_next:hover {
    background-color: #2298bb;
  }
  .pModelSingle__slider_madori {
    border: 1px solid transparent;
    transition: background-color 0.6s var(--e-out-expo), border-color 0.6s var(--e-out-expo);
  }
  .pModelSingle__slider_madori:hover {
    --_background-color: var(--c-white);
    --_arrow-color: #2babd2;
    color: var(--c-white);
    background-color: #2babd2;
    border-color: var(--c-white);
  }
  .pPromotion .pPromotion__link {
    border: 1px solid transparent;
    transition: background-color 0.6s var(--e-out-expo), border-color 0.6s var(--e-out-expo);
  }
  .pPromotion:hover .pPromotion__link {
    --_background-color: var(--c-white);
    --_arrow-color: #57c2e2;
    color: var(--c-white);
    background-color: #57c2e2;
    border-color: var(--c-white);
  }
}
.lHeaderBase {
  top: 18rem;
}
.lHeaderBase__logo {
  width: 94rem;
  height: 24rem;
}

.pReservation {
  position: relative;
}
.pReservation__background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.pReservation__background::before {
  position: absolute;
  top: 176rem;
  left: 0;
  z-index: -20;
  width: 323rem;
  height: 100%;
  content: "";
  background: #dbf0f8;
}
.pReservation__background::after {
  position: absolute;
  top: 349rem;
  right: 0;
  z-index: -10;
  width: 366rem;
  height: 100%;
  content: "";
  background: var(--c-white);
}
.pReservation__inner {
  padding: 131rem 42rem 96rem;
}
.pReservation__headline {
  display: flex;
  flex-direction: column;
  gap: 8rem 0;
}
.pReservation__headline__en {
  font-family: var(--f-en);
  font-size: 15rem;
  line-height: 1;
  color: #57c2e2;
  letter-spacing: 0.03em;
}
.pReservation__headline__ja {
  font-size: 32rem;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
.pReservation__list {
  display: flex;
  flex-direction: column;
  gap: 64rem 0;
  margin-top: 64rem;
}
.pReservation__item {
  counter-increment: job-item;
}
.pReservation__item_index {
  display: flex;
  gap: 6rem;
  font-size: 14rem;
  line-height: 1;
  color: #57c2e2;
  letter-spacing: -0.01em;
}
.pReservation__item_index_num::after {
  font-family: var(--f-en);
  content: counter(job-item, decimal-leading-zero);
}
.pReservation__item_images {
  position: relative;
  margin-top: 12rem;
}
.pReservation__item_images_main, .pReservation__item_images_sub {
  border: 1px solid #063847;
}
.pReservation__item_images_sub {
  position: absolute;
  right: -29rem;
  bottom: -38rem;
  width: 135rem;
}
.pReservation__item_textarea {
  margin-top: 33rem;
}
.pReservation__item_textarea_title {
  display: flex;
  flex-direction: column;
  gap: 4rem 0;
}
.pReservation__item_textarea_title_sub {
  font-size: 14rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.pReservation__item_textarea_title_main {
  font-size: 24rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.pReservation__item_textarea_access {
  position: relative;
  padding-left: 16rem;
  margin-top: 8rem;
}
.pReservation__item_textarea_access::after {
  position: absolute;
  top: 6rem;
  left: 0;
  width: 1px;
  height: calc(100% - 9rem);
  padding: 10rem 0;
  content: "";
  background: #7f989f;
}
.pReservation__item_textarea_access_text {
  font-size: 14rem;
  font-weight: 500;
  line-height: 1.7;
  color: #7f989f;
  letter-spacing: 0.02em;
}
.pReservation__item_textarea_access_tel {
  display: flex;
  gap: 4rem;
  margin-top: 4rem;
}
.pReservation__item_textarea_access_tel_text, .pReservation__item_textarea_access_tel_num {
  font-family: var(--f-en);
  font-size: 14rem;
  font-weight: 500;
  line-height: 1.4;
  color: #7f989f;
  letter-spacing: 0.01em;
}
.pReservation__item_links {
  margin-top: 32rem;
}
.pReservation__item_link {
  display: flex;
  justify-content: center;
  padding: 13rem 0 16rem;
  border: 1px solid #2babd2;
}
.pReservation__item_link_container {
  display: flex;
  gap: 0 4rem;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 2rem;
  border-bottom: 1px solid #2babd2;
}
.pReservation__item_link_textarea {
  font-size: 15rem;
  font-weight: 500;
  line-height: 1.6;
  color: #2babd2;
  letter-spacing: 0.02em;
}
.pReservation__item_link_arrow_icon {
  width: 16rem;
  height: 16rem;
}

@media screen and (min-width: 768px) {
  .lHeaderBase {
    top: 0;
    padding: 0 min(16px, 16rem);
  }
  .lHeaderBase__logo {
    width: min(138px, 138rem);
    height: min(35px, 35rem);
  }
  .lHeaderBase__inner {
    height: min(67px, 67rem);
  }
  .pReservation__background::before {
    top: min(280px, 280rem);
    width: 1190rem;
  }
  .pReservation__background::after {
    top: min(629px, 629rem);
    width: 1448rem;
  }
  .pReservation__inner {
    padding: min(220px, 220rem) min(176px, 176rem) min(200px, 200rem);
  }
  .pReservation__headline {
    gap: min(5px, 5rem) 0;
  }
  .pReservation__headline__en {
    font-size: min(18px, 18rem);
  }
  .pReservation__headline__ja {
    font-size: min(54px, 54rem);
  }
  .pReservation__list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: min(103px, 103rem);
  }
  .pReservation__item {
    position: relative;
    width: 496rem;
    height: -moz-fit-content;
    height: fit-content;
    counter-increment: job-item;
  }
  .pReservation__item:nth-child(odd) {
    margin-top: min(80px, 80rem);
  }
  .pReservation__item:nth-child(even) {
    margin-top: min(180px, 180rem);
  }
  .pReservation__item:nth-child(1) {
    margin-top: min(0px, 0rem);
  }
  .pReservation__item:nth-child(2) {
    margin-top: min(100px, 100rem);
  }
  .pReservation__item_images {
    margin-top: min(14px, 14rem);
  }
  .pReservation__item_images_sub {
    right: max(-40px, -40rem);
    bottom: max(-40px, -40rem);
    width: min(142px, 142rem);
    height: min(159px, 159rem);
  }
  .pReservation__item_textarea {
    margin-top: min(48px, 48rem);
  }
  .pReservation__item_textarea_title {
    gap: min(6px, 6rem) 0;
  }
  .pReservation__item_textarea_title_sub {
    font-size: min(14px, 14rem);
  }
  .pReservation__item_textarea_title_main {
    font-size: min(24px, 24rem);
  }
  .pReservation__item_textarea_access {
    padding-left: min(22px, 22rem);
    margin-top: min(16px, 16rem);
  }
  .pReservation__item_textarea_access::after {
    top: 0;
    height: 100%;
  }
  .pReservation__item_textarea_access_text {
    font-size: min(14px, 14rem);
  }
  .pReservation__item_textarea_access_tel {
    display: flex;
    gap: min(4px, 4rem);
    margin-top: min(4px, 4rem);
  }
  .pReservation__item_textarea_access_tel_text, .pReservation__item_textarea_access_tel_num {
    font-size: min(14px, 14rem);
  }
  .pReservation__item_links {
    position: absolute;
    right: 0;
    bottom: max(-20px, -20rem);
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 0;
  }
  .pReservation__item_link {
    align-items: center;
    justify-content: center;
    width: min(145px, 145rem);
    height: min(145px, 145rem);
    padding: min(13px, 13rem) 0 0;
    border-radius: 50%;
  }
  .pReservation__item_link_container {
    flex-direction: column;
    gap: min(11px, 11rem) 0;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 0;
    border-bottom: none;
  }
  .pReservation__item_link_textarea {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: min(16px, 16rem);
  }
  .pReservation__item_link_text {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    border-bottom: 1px solid #2babd2;
  }
  .pReservation__item_link_arrow_icon svg {
    overflow: unset;
  }
}
@media (any-hover: hover) {
  .pReservation__item_links .pReservation__item_link_arrow_icon_circle {
    transition: fill 0.6s var(--e-out-expo);
  }
  .pReservation__item_links .pReservation__item_link_arrow_icon_arrow {
    transition: stroke 0.6s var(--e-out-expo);
  }
  .pReservation__item_links .pReservation__item_link {
    transition: background 0.6s var(--e-out-expo);
  }
  .pReservation__item_links .pReservation__item_link_textarea {
    transition: color 0.6s var(--e-out-expo);
  }
  .pReservation__item_links .pReservation__item_link_text {
    transition: border 0.6s var(--e-out-expo);
  }
  .pReservation__item_links:hover {
    --_background-color: var(--_hover-color, #fff);
    --_arrow-color: #2babd2;
  }
  .pReservation__item_links:hover .pReservation__item_link_arrow_icon_circle {
    transition: fill 0.6s var(--e-out-expo);
  }
  .pReservation__item_links:hover .pReservation__item_link_arrow_icon_arrow {
    transition: stroke 0.6s var(--e-out-expo);
  }
  .pReservation__item_links:hover .pReservation__item_link {
    background-color: #2babd2;
    transition: background 0.6s var(--e-out-expo);
  }
  .pReservation__item_links:hover .pReservation__item_link_textarea {
    color: var(--_hover-color, #fff);
    transition: color 0.6s var(--e-out-expo);
  }
  .pReservation__item_links:hover .pReservation__item_link_text {
    border-bottom: 1px solid var(--_hover-color, #fff);
    transition: border 0.6s var(--e-out-expo);
  }
}