:root {
  --base-black: #4f4f4f;
  --base-gray: #eef0f3;
  --base-lightGray: #fdfdfd;
  --base-grayBlue: #97a5b5;
  --base-white: #ffffff;
  --base-lightBlue: #81d8d0;
  --base-red: #f53662;
  --base-lightPink: #f53561;
  --base-peach: #ec73b2;
  --base-brown: #8c4239;
  --base-darkGray: #97a5b5;
  --base-darkBlueGray: #98a6b5;
  --base-inputGray: #cdd6dd;
  --text-black1: #4f4f4f;
  --text-white: #ffffff;
  --text-lightBlue: #81d8d0;
  --text-red: #f53662;
  --text-peach: #ec73b2;
  --text-brown: #8c4239;
  --text-lightPink: #f53561;
  --base-bgBeige: #faf8f5;
  --base-bgLinearTop: #fafcfb;
  --base-darkText: #333;
  --base-mediumText: #555;
  --base-borderGray: #ccc;
  --base-lightBg: #f5f5f5;
  --base-darkGreen: #003032;
  --base-greenAccent: #5eada5;
  --base-purple: #6c5ce7;
  --base-darkPurple: #5b4bc4;
  --base-navy: #1a1a2e;
  --base-borderLight: #e0e0e0;
  --base-borderLightGray: #eee;
  --base-successGreen: #4cc764;
  --intro-border: #e5e7eb;
  --intro-darkGreen: #4e6269;
  --intro-cyan: #5fced8;
  --intro-borderSage: #a6bdc2;
  --intro-lightBg: #f3f4f6;
  --intro-darkText: #314348;
  --intro-yellow: #ffff00;
  --intro-midGreen: #4d6369;
  --base-mintBorder: #e6eeee;
  --base-lightGrayBorder: #eaeaea;
  --base-nearWhiteBg: #f9fbfb;
  --base-paleTealBg: #eaf4f6;
  --base-tealBg: #eaeff0;
  --base-lightMintBorder: #c8ebe9;
  --base-mintBg: #e8f8f7;
  --base-paleMintBg: #e8f5f5;
  --base-borderCard: #e8ecf0;
  --base-lightBorder: #ddd;
  --base-cardBorder: #dbdbdb;
  --base-midGray: #aaa;
  --base-mutedText: #999;
  --base-darkCharcoal: #444;
  --base-midCharcoal: #666;
  --base-slateGray: #6b7280;
  --base-coolGray: #9ca3af;
  --base-paleGray: #f0f0f0;
  --base-hoverGray: #f0f1f3;
  --base-teal: #3bb8b8;
  --base-softTeal: #7ecfcf;
  --base-mediumTeal: #5cc4bb;
  --base-mediumTealDark: #4ab3aa;
  --base-lightTeal: #a8e8e2;
  --base-lightTealScrollTrack: #e8f7f6;
  --base-darkTeal: #1a6b6b;
  --base-lightCyan: #e6faf8;
  --base-googleBlue: #6186ec;
  --base-googleRed: #cd523f;
  --base-googleYellow: #eabe43;
  --base-googleGreen: #63a45d;
  --base-googleStar: #fbbc04;
  --base-googleBadge: #1a73e8;
  --base-googleBadgeHover: #1557b0;
  --base-alertRed: #ff4d5a;
  --base-pink: #e8527a;
  --base-nearBlack: #1a1a1a;
  --base-pureBlack: #000000;
  --fs-3xs: 0.6875rem;
  --fs-xs: 0.75rem;
  --fs-2xs: 0.8125rem;
  --fs-sm: 0.875rem;
  --fs-sm2: 0.9375rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.25rem;
  --fs-lg2: 1.375rem;
  --fs-xl: 1.5rem;
  --fs-xl2: 1.75rem;
  --fs-2xl: 1.875rem;
  --fs-2xl2: 2rem;
  --fs-3xl: 2.25rem;
  --fs-4xl: 2.5rem;
  --fs-4xl2: 2.625rem;
  --fs-5xl: 3rem;
  --fs-6xl: 3.75rem;
  --fs-7xl: 4rem;
  --fs-8xl: 4.5rem;
  --fs-9xl: 5rem;
  --fs-display: 6.25rem;
  --font-outfit: Outfit;
  --font-zen: Zen Kaku Gothic New;
}

.p-reservation-flow-flow {
  position: relative;
  width: 100%;
  height: auto;
  overflow: visible;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-image: url("../img/common/bg_white_pattern.webp");
  background-size: cover;
  background-position: 0% -20%;
  padding-top: 4rem;
  padding-bottom: 7rem;
}

.p-reservation-flow-step__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-reservation-flow-step__list .c-step-card__heading {
  font-family: var(--font-outfit);
}

.p-reservation-flow-step__highlight {
  color: var(--text-red);
}

.p-reservation-flow-step__highlight--light-blue {
  color: var(--text-lightBlue);
}

.p-reservation-flow-step__link {
  color: var(--text-lightBlue);
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.p-reservation-flow-step__link:hover {
  opacity: 0.7;
}

.p-reservation-flow-step__divider {
  height: 1px;
  margin: 15px 0;
  background-color: var(--base-gray);
}

.p-reservation-flow__title-wrap {
  position: relative;
  margin-top: 5rem;
}

.p-reservation-flow-speak__container--01 {
  position: absolute;
  right: 5%;
  top: -2rem;
  z-index: 5;
}

.p-reservation-flow-speak__image--01 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-reservation-flow-speak__bubble--01 {
  position: absolute;
  top: 0;
  left: -10rem;
  width: auto;
  height: auto;
  z-index: 1;
}

.p-reservation-flow-speak__person--01 {
  width: auto;
  height: 25rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-reservation-flow-speak__container--02 {
  position: absolute;
  bottom: 0rem;
  left: 2rem;
  z-index: 2;
  pointer-events: none;
}

.p-reservation-flow-speak__image--02 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-reservation-flow-speak__bubble--02 {
  position: absolute;
  top: -3rem;
  right: 9rem;
  width: auto;
  height: auto;
  z-index: 1;
}

.p-reservation-flow-speak__person--02 {
  width: auto;
  height: 25rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-reservation-flow-speak__container--03 {
  position: absolute;
  bottom: 0rem;
  right: 3rem;
  z-index: 2;
  pointer-events: none;
}

.p-reservation-flow-speak__image--03 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-reservation-flow-speak__bubble--03 {
  position: absolute;
  top: -4rem;
  right: -6rem;
  width: auto;
  height: auto;
  z-index: 1;
}

.p-reservation-flow-speak__person--03 {
  width: auto;
  height: 25rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-reservation-flow-speak__mobile {
  display: none;
}

@media (max-width: 1024px) {
  .p-reservation-flow-flow__title {
    font-size: var(--fs-7xl);
  }
  .p-reservation-flow-speak__container--01 {
    right: 5%;
    top: 0rem;
  }
  .p-reservation-flow-speak__person--01 {
    height: 15rem;
  }
  .p-reservation-flow-speak__bubble--01 {
    top: 0.5rem;
    left: -6rem;
    width: 6rem;
    height: auto;
  }
  .p-reservation-flow-speak__container--02,
  .p-reservation-flow-speak__container--03 {
    display: none;
  }
  .p-reservation-flow-speak__mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1rem;
    width: 100%;
    margin-top: 2rem;
  }
  .p-reservation-flow-speak__mobile-item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p-reservation-flow-speak__bubble-mobile {
    position: absolute;
    top: -2.5rem;
    right: 8rem;
    width: 5rem;
    height: auto;
    max-width: 10rem;
    z-index: 1;
  }
  .p-reservation-flow-speak__bubble-mobile--right {
    right: -5rem;
  }
  .p-reservation-flow-speak__person-mobile {
    height: 20rem;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
@media screen and (max-width: 767px) {
  .p-reservation-flow-flow {
    padding-top: 3rem;
    padding-bottom: 4rem;
    background-position: center;
  }
  .p-reservation-flow__title-wrap {
    margin-top: 0;
    margin-bottom: 0.75rem;
  }
  .p-reservation-flow-flow__subtitle {
    font-size: var(--fs-base);
  }
  .p-reservation-flow-flow__title {
    font-size: var(--fs-3xl);
    line-height: 1.2;
  }
  .p-reservation-flow-step__list {
    gap: 1.25rem;
  }
  .p-reservation-flow-step__card-title {
    padding-top: 0.5rem;
    padding-left: 1rem;
    -webkit-column-gap: 0.625rem;
       -moz-column-gap: 0.625rem;
            column-gap: 0.625rem;
    row-gap: 0.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left;
  }
  .p-reservation-flow-step__card-title h3 {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    font-size: var(--fs-md);
    line-height: 1.55;
    white-space: nowrap;
  }
  .p-reservation-flow-step__card-title > p {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    min-width: 0;
    max-width: 100%;
    font-size: var(--fs-md);
    line-height: 1.55;
  }
  .p-reservation-flow-step__card-icon {
    width: 4rem;
    height: 4rem;
    padding: 1rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p-reservation-flow-step__card-body {
    padding: 1rem 1.25rem;
    font-size: var(--fs-sm2);
    line-height: 1.92;
  }
  .p-reservation-flow-speak__container--01 {
    position: relative;
    right: auto;
    top: auto;
    z-index: 5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
  .p-reservation-flow-speak__person--01 {
    height: 12rem;
  }
  .p-reservation-flow-speak__bubble--01 {
    top: 0.5rem;
    left: -6rem;
    width: 6rem;
    height: auto;
  }
  .p-reservation-flow-speak__person-mobile {
    height: 18rem;
  }
  .p-reservation-flow-speak__bubble-mobile {
    max-width: 8rem;
    top: -2rem;
    right: 6rem;
  }
  .p-reservation-flow-speak__bubble-mobile--right {
    right: -3.5rem;
  }
}/*# sourceMappingURL=reservation-flow.css.map */
