/*====================================================================================
START TABLE OF CONTENT

1. START COMMON ONLY CHILD PAGE.
1.1 START LIST TEXT, TEXT CHILD PAGE.
1.2 START LIST TITLE, TITLE CHILD PAGE.
1.3 START LIST HEADING, HEADING CHILD PAGE.
1.4 START LIST ICON ARROW, ICON ARROW CHILD PAGE.
1.5 START LIST BUTTON, BUTTON CHILD PAGE.
1.6 START LIST, ITEM CHILD PAGE.
1.7 START LIST TABLE, TABLE CHILD PAGE.
1.8 START LIST BOX, BOX CHILD PAGE.
1.9 START LIST POSTS, POSTS CHILD PAGE.
1.10 START BACKGROUND CHILD PAGE.

2. START PAGE VISUAL SECTION.
3. START BREADCRUMB SECTION.
4. START CONTACT PAGE.
5. START PRICE PAGE.
6. START RENTAL PAGE.
7. START SCENE PAGE.
8. START POINT PAGE.

/*====================================================================================
1. START COMMON ONLY CHILD PAGE.
====================================================================================*/
/*---------- START IS PAGE NAVIGATION ----------*/
@media only screen and (min-width: 768px) {
  .is-page .nav__link {
    background: linear-gradient(90deg, var(--color-pink) 0%, var(--color-pink) 50%, var(--color-black) 50%, var(--color-black) 100%);
    background-size: 200% 100%;
    background-position: 100% 50%;
    -webkit-background-clip: text;
    background-clip: text;
  }
  .is-page .nav__link:hover {
    background-position: 0 50%;
  }
}
/*---------- START STYLE MAIN ----------*/
.style-main {
  background-color: var(--color-white);
  box-shadow: var(--shadow-black);
}

@media only screen and (max-width: 767px) {
  .style-main {
    border-radius: 5rem;
  }
}
@media only screen and (min-width: 768px) {
  .style-main {
    border-radius: 9.4rem;
  }
}
/*====================================================================================
1.1 START LIST TEXT, TEXT CHILD PAGE.
====================================================================================*/
/*---------- START IS PAGE TEXT TELEPHONE ----------*/
@media only screen and (min-width: 768px) {
  .is-page .text-tel {
    color: var(--color-black);
  }
  .is-page .text-tel__num::before {
    background-image: image-set(url("./../common_img/tel02-black.webp") 1x, url("./../common_img/tel02-black@2x.webp") 2x);
  }
}
/*====================================================================================
1.2 START LIST TITLE, TITLE CHILD PAGE.
====================================================================================*/
/*---------- START TITLE SAMPLE ----------*/
.title-sample {
  position: relative;
  padding-left: 1.3rem;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}
.title-sample::before {
  position: absolute;
  content: "";
  top: 0.4rem;
  left: 0;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 0.6rem;
  background-color: var(--color-pink);
}

/*---------- START TITLE PART ----------*/
.title-part {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .title-part {
    letter-spacing: 0.03em;
  }
}
@media only screen and (min-width: 768px) {
  .title-part {
    letter-spacing: 0.1em;
  }
}
/*---------- START TITLE PART BLACK ----------*/
.title-part--black {
  color: var(--color-black);
  border-bottom: 0.1rem solid var(--color-pink);
}

/*---------- START TITLE PART MD ----------*/
.title-part--md {
  padding-bottom: 1.2rem;
  font-size: 3rem;
}

@media only screen and (max-width: 767px) {
  .title-part--md {
    padding-bottom: 0.8rem;
    font-size: 2.2rem;
  }
}
/*====================================================================================
1.3 START LIST HEADING, HEADING CHILD PAGE.
====================================================================================*/
/*---------- START HEADING MAIN ----------*/
.heading-main {
  display: flex;
  align-items: center;
  padding-bottom: 2rem;
  border-bottom: 0.2rem solid var(--color-black);
}
.heading-main__right {
  flex: 1;
}
.heading-main__tag {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 10rem;
  padding-top: 1rem;
  border-radius: 2rem;
}
.heading-main__text, .heading-main__num {
  display: block;
  font-weight: 600;
  line-height: 1.1;
  text-transform: uppercase;
  font-family: var(--font-jost);
}
.heading-main__text {
  font-size: 2rem;
}
.heading-main__num {
  font-size: 4.5rem;
}
.heading-main__title {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .heading-main {
    padding-bottom: 1.5rem;
  }
  .heading-main__left {
    width: 6.5rem;
  }
  .heading-main__right {
    padding-left: 1.5rem;
  }
  .heading-main__tag {
    height: 6.5rem;
    padding-top: 0.6rem;
    border-radius: 1rem;
  }
  .heading-main__text {
    font-size: 1.4rem;
  }
  .heading-main__num {
    font-size: 2.5rem;
  }
  .heading-main__title {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .heading-main__left {
    width: 10rem;
  }
  .heading-main__right {
    padding-left: 2rem;
  }
  .heading-main__title {
    font-size: 2.7rem;
    letter-spacing: 0.1em;
  }
}
/*---------- START HEADING MAIN PINK ----------*/
.heading-main--pink .heading-main__tag {
  background-color: var(--color-pink);
}
.heading-main--pink .heading-main__text, .heading-main--pink .heading-main__num {
  color: var(--color-white);
}

/*---------- START HEADING MAIN YELLOW ----------*/
.heading-main--yellow .heading-main__tag {
  background-color: var(--color-yellow);
}
.heading-main--yellow .heading-main__text, .heading-main--yellow .heading-main__num {
  color: var(--color-pink);
}

/*====================================================================================
1.4 START LIST ICON ARROW, ICON ARROW CHILD PAGE.
====================================================================================*/
/*---------- START ICON PLUS ----------*/
.icon-plus {
  position: absolute;
  background-color: var(--color-pink);
}
.icon-plus i {
  position: absolute;
  top: 50%;
  left: 50%;
}
.icon-plus i::before, .icon-plus i::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 100%;
  background-color: var(--color-white);
}
.icon-plus i::before {
  transform: rotate(-90deg);
  transition: transform 0.35s cubic-bezier(0.65, 0.05, 0.36, 1);
}

@media only screen and (max-width: 767px) {
  .icon-plus {
    width: 3.8rem;
    height: 3.8rem;
    border-radius: 3.8rem;
  }
  .icon-plus i {
    width: 1.6rem;
    height: 1.6rem;
    margin-top: -0.8rem;
    margin-left: -0.8rem;
  }
  .icon-plus i::before, .icon-plus i::after {
    height: 0.2rem;
    margin-top: -0.1rem;
    border-radius: 0.2rem;
  }
}
@media only screen and (min-width: 768px) {
  .icon-plus {
    width: 5rem;
    height: 5rem;
    border-radius: 5rem;
  }
  .icon-plus i {
    width: 2.1rem;
    height: 2.1rem;
    margin-top: -1.05rem;
    margin-left: -1.05rem;
  }
  .icon-plus i::before, .icon-plus i::after {
    height: 0.3rem;
    margin-top: -0.15rem;
    border-radius: 0.3rem;
  }
}
/*====================================================================================
1.5 START LIST BUTTON, BUTTON CHILD PAGE.
====================================================================================*/
/*---------- START BUTTON FILE ----------*/
.btn-file {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 2rem;
  background-color: var(--color-pink);
  transition: background-color 0.3s ease;
}
.btn-file__text {
  color: var(--color-white);
  font-size: 1.6rem;
  font-weight: 700;
  transition: color 0.3s ease;
}

@media only screen and (max-width: 767px) {
  .btn-file {
    max-width: 16rem;
    min-height: 3.5rem;
  }
  .btn-file__text {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .btn-file {
    max-width: 18rem;
    min-height: 4rem;
  }
  .btn-file:hover {
    background-color: var(--color-yellow);
  }
  .btn-file:hover .btn__text {
    color: var(--color-black);
  }
}
/*---------- START BUTTON SECTION ----------*/
.btn-section {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-black);
  overflow: hidden;
}
.btn-section__text {
  font-weight: 700;
  transition: color 0.2s ease;
}

/*---------- START BUTTON SECTION MD ----------*/
.btn-section--md {
  border-radius: 4.2rem;
}
.btn-section--md::before {
  border-radius: 4.2rem;
}

@media only screen and (max-width: 767px) {
  .btn-section--md {
    max-width: 26rem;
    min-height: 6rem;
    padding: 0.5rem 4.5rem 0.5rem 0.5rem;
  }
  .btn-section--md .btn__text {
    font-size: 1.5rem;
  }
  .btn-section--md .circle {
    right: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .btn-section--md {
    max-width: 35rem;
    min-height: 8.5rem;
    padding: 0.5rem 6rem 0.5rem 0.5rem;
  }
  .btn-section--md .btn__text {
    font-size: 2rem;
  }
  .btn-section--md .circle {
    right: 2rem;
  }
}
/*---------- START LIST BUTTON ANCHOR ----------*/
.list-btn-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .list-btn-section .btn-section {
    width: calc(50% - 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .list-btn-section {
    margin: -0.75rem -0.5rem;
  }
  .list-btn-section .btn-section {
    margin: 0.75rem 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-btn-section {
    margin: -1.25rem;
  }
  .list-btn-section .btn-section {
    margin: 1.25rem;
  }
}
/*---------- START BUTTON ANCHOR ----------*/
.btn-anchor {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-black);
  overflow: hidden;
}
.btn-anchor__text {
  font-weight: 700;
  transition: color 0.2s ease;
}
.btn-anchor .arrow {
  top: 50%;
  width: 1.3rem;
  height: 0.9rem;
  margin-top: -0.4rem;
}

@media only screen and (max-width: 767px) {
  .btn-anchor .arrow {
    transform: scale(0.8);
  }
}
/*---------- START BUTTON ANCHOR MD ----------*/
.btn-anchor--sm {
  border-radius: 1rem;
}
.btn-anchor--sm::before {
  border-radius: 1rem;
}

@media only screen and (max-width: 767px) {
  .btn-anchor--sm {
    min-height: 5rem;
    padding: 0.5rem 2rem 0.5rem 0.5rem;
  }
  .btn-anchor--sm .btn__text {
    font-size: 1.5rem;
  }
  .btn-anchor--sm .arrow {
    right: 0.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .btn-anchor--sm {
    max-width: 25.5rem;
    min-height: 6rem;
    padding: 0.5rem 2.5rem 0.5rem 0.5rem;
  }
  .btn-anchor--sm .btn__text {
    font-size: 1.8rem;
  }
  .btn-anchor--sm .arrow {
    right: 2rem;
  }
}
/*---------- START LIST BUTTON ANCHOR ----------*/
.list-btn-anchor {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .list-btn-anchor {
    margin: -0.75rem -0.5rem;
  }
  .list-btn-anchor .btn-anchor {
    width: calc(50% - 1rem);
    margin: 0.75rem 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-btn-anchor {
    margin: -1.25rem;
  }
  .list-btn-anchor .btn-anchor {
    margin: 1.25rem;
  }
}
/*---------- START BUTTON CONTACT ----------*/
.btn-contact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-black);
  overflow: hidden;
}
.btn-contact__text {
  font-weight: 700;
  text-align: center;
  transition: color 0.2s ease;
}
.btn-contact .icon {
  top: 50%;
  width: 2.7rem;
  height: 1.9rem;
  margin-top: -0.9rem;
}

@media only screen and (max-width: 767px) {
  .btn-contact .icon {
    transform: scale(0.85);
  }
}
@media only screen and (min-width: 768px) {
  .btn-contact .icon__out, .btn-contact .icon__in {
    transition-delay: 0.15s;
  }
}
/*---------- START BUTTON CONTACT SM ----------*/
.btn-contact--sm {
  border-radius: 3.2rem;
}
.btn-contact--sm::before {
  border-radius: 3.2rem;
}
.btn-contact--sm .icon {
  left: 2.5rem;
}
.btn-contact--sm .btn__text {
  line-height: 1.35;
}

@media only screen and (max-width: 767px) {
  .btn-contact--sm {
    max-width: 26rem;
    min-height: 6rem;
    padding: 0.5rem 2rem 0.5rem 6rem;
  }
  .btn-contact--sm .btn__text {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .btn-contact--sm {
    max-width: 30rem;
    min-height: 6.5rem;
    padding: 0.5rem 2.5rem 0.5rem 6.5rem;
  }
  .btn-contact--sm .btn__text {
    font-size: 1.7rem;
  }
}
/*====================================================================================
1.6 START LIST, ITEM CHILD PAGE.
====================================================================================*/
/*---------- START ITEM FAQ ----------*/
.item-faq__header, .item-faq__inner {
  position: relative;
}
.item-faq__header {
  cursor: pointer;
  display: flex;
  align-items: center;
  border-radius: 5rem;
  box-shadow: var(--shadow-black);
  background-color: var(--color-white);
}
.item-faq__header.active .icon-plus i::before {
  transform: rotate(0deg);
}
.item-faq__circle,
.item-faq .icon-plus {
  top: 50%;
  transform: translateY(-50%);
}
.item-faq__circle {
  position: absolute;
  border-radius: 50%;
}
.item-faq__circle--char {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 4rem;
  line-height: 1;
  font-weight: 900;
  color: var(--color-pink);
  text-transform: uppercase;
  background-color: var(--color-light-pink);
}
.item-faq__title {
  font-weight: 700;
}
.item-faq .icon-plus {
  position: absolute;
}
.item-faq__body {
  display: none;
}

@media only screen and (max-width: 767px) {
  .item-faq__header {
    min-height: 6rem;
    padding: 1rem 6rem 1rem 7.5rem;
  }
  .item-faq__circle {
    left: 1rem;
    width: 5rem;
    height: 5rem;
  }
  .item-faq__circle--char {
    padding: 0 0 0.5rem 0;
    font-size: 3rem;
  }
  .item-faq__title {
    font-size: clamp(1.5rem, 1.0217rem + 1.2755vw, 2rem);
  }
  .item-faq .icon-plus {
    right: 1rem;
  }
  .item-faq__inner {
    padding: 1.7rem 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .item-faq__header {
    min-height: 9.5rem;
    padding: 2rem 8rem 2rem 12rem;
  }
  .item-faq__title {
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
  .item-faq__circle--char {
    left: 1.7rem;
    width: 6.8rem;
    height: 6.8rem;
    padding: 0 0 0.5rem 0.3rem;
  }
  .item-faq .icon-plus {
    right: 2.2rem;
  }
  .item-faq__inner {
    padding: 2rem 8rem 2rem 12rem;
  }
}
/*---------- START LIST ITEM FAQ ----------*/
.list-item-faq .item-faq:first-child {
  margin-top: 0;
}
.list-item-faq .item-faq:last-child .item-faq__inner {
  padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .list-item-faq .item-faq {
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-item-faq .item-faq {
    margin-top: 4rem;
  }
}
/*====================================================================================
1.7 START LIST TABLE, TABLE CHILD PAGE.
====================================================================================*/
/*---------- START TABLE PAGE ----------*/
.tbl-page__dl {
  border-bottom: 0.1rem solid var(--color-black);
}
.tbl-page__dl:first-child dt,
.tbl-page__dl:first-child dd {
  padding-top: 0;
}
.tbl-page__dt {
  padding: 3.5rem 2rem 2rem 2rem;
}
.tbl-page__dd {
  padding: 3.5rem 2rem 2rem 2rem;
}
.tbl-page__title {
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .tbl-page__dt {
    padding: 2rem 0;
  }
  .tbl-page__dd {
    padding: 0 0 2rem 0;
  }
  .tbl-page__title {
    letter-spacing: 0.03em;
  }
}
@media only screen and (min-width: 768px) {
  .tbl-page__dl {
    display: flex;
  }
  .tbl-page__dt {
    width: 18rem;
  }
  .tbl-page__dd {
    flex: 1;
  }
  .tbl-page__title {
    letter-spacing: 0.1em;
  }
}
/*---------- START TABLE PAGE MD ----------*/
.tbl-page--md .tbl-page__body {
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
}

/*====================================================================================
1.8 START LIST BOX, BOX CHILD PAGE.
====================================================================================*/
/*---------- START IS PAGE BOX TELEPHONE ----------*/
@media only screen and (min-width: 768px) {
  .is-page .box-tel__text {
    color: var(--color-black);
  }
}
/*====================================================================================
1.9 START LIST POSTS, POSTS CHILD PAGE.
====================================================================================*/
/*---------- START POST MAIN ----------*/
.posts-main__img img {
  width: 100%;
  border-radius: 2rem;
  box-shadow: var(--shadow-black);
}

@media only screen and (max-width: 767px) {
  .posts-main__img {
    margin-top: 2.5rem;
  }
  .posts-main__desc {
    margin-top: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .posts-main {
    display: flex;
  }
  .posts-main__left {
    flex: 1;
    padding-right: 6rem;
  }
  .posts-main__right {
    width: 46rem;
  }
  .posts-main__desc {
    margin-top: 3.2rem;
  }
}
/*---------- START LIST POST MAIN ----------*/
.list-posts-main .posts-main:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .list-posts-main .posts-main {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-posts-main .posts-main {
    margin-top: 8rem;
  }
}
/*====================================================================================
1.10 START BACKGROUND CHILD PAGE.
====================================================================================*/
/*---------- START BACKGROUND SECTION ----------*/
.bg-section {
  position: relative;
}
.bg-section::before {
  position: absolute;
  content: "";
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/*---------- START BACKGROUND SECTION VERSION 01 ----------*/
.bg-section--v01::before {
  background: linear-gradient(175deg, rgb(251, 250, 251) 0%, rgb(243, 226, 236) 42%, rgb(250, 244, 247) 100%);
}

/*---------- START BACKGROUND SECTION VERSION 02 ----------*/
.bg-section--v02::before {
  opacity: 0.8;
  background: var(--color-pink-gradient-second);
}

/*---------- START BACKGROUND SECTION VERSION 03 ----------*/
.bg-section--v03::before {
  opacity: 0.7;
  background: var(--color-pink-gradient-second);
}

/*====================================================================================
2. START PAGE VISUAL SECTION.
====================================================================================*/
/*---------- START TITLE PAVE VISUAL ----------*/
.title-pv__text {
  display: block;
  line-height: 1.3;
  text-align: center;
  text-shadow: var(--color-white) 0 0 1.5rem;
}
.title-pv__text--ja {
  font-weight: 900;
}
.title-pv__text--en {
  color: var(--color-pink);
  font-weight: 600;
  text-transform: uppercase;
  font-family: var(--font-jost);
}

@media only screen and (max-width: 767px) {
  .title-pv__text--ja {
    font-size: 2.5rem;
    letter-spacing: 0.03em;
  }
  .title-pv__text--en {
    margin-top: 1.2rem;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
  }
}
@media only screen and (min-width: 768px) {
  .title-pv__text--ja {
    font-size: 4.5rem;
    letter-spacing: 0.1em;
  }
  .title-pv__text--en {
    margin-top: 1.8rem;
    font-size: 2.4rem;
    letter-spacing: 0.12em;
  }
}
/*---------- START PAVE VISUAL ----------*/
.pv {
  position: relative;
}
.pv__bg img {
  width: 100%;
  object-fit: cover;
}
.pv__wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.pv .container {
  height: 100%;
}
.pv__row {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  .pv__bg img {
    height: 65vw;
    max-height: 25rem;
  }
  .pv__row {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 768px) {
  .pv__bg img {
    height: 47.4rem;
  }
  .pv__row {
    padding-top: 11rem;
  }
}
/*====================================================================================
3. START BREADCRUMB SECTION.
====================================================================================*/
.breadcrumb {
  padding: 1rem 0;
}
.breadcrumb__list {
  display: flex;
  align-items: center;
}
.breadcrumb__item {
  position: relative;
  margin-right: 0.7rem;
  padding-right: 1.9rem;
  line-height: 1.5;
  letter-spacing: 0.035em;
}
.breadcrumb__item:first-child a {
  color: var(--color-pink);
}
.breadcrumb__item:last-child {
  margin-right: 0;
  padding-right: 0;
}
.breadcrumb__item:last-child::before {
  content: none;
}
.breadcrumb__item::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  width: 0.9rem;
  height: 1.3rem;
  margin-top: -0.6rem;
  background-image: image-set(url("./../common_img/arrow-right-pink.webp") 1x, url("./../common_img/arrow-right-pink@2x.webp") 2x);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.breadcrumb__item a {
  text-decoration: none;
}
.breadcrumb__item a:hover {
  color: var(--color-pink);
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .breadcrumb {
    display: none;
  }
}
/*====================================================================================
4. START CONTACT PAGE.
====================================================================================*/
/*---------- START BANNER CONTACT ----------*/
.bnr-contact {
  padding: 3.5rem 1.5rem;
}
.bnr-contact__row {
  display: flex;
  align-items: center;
  justify-content: center;
}
.bnr-contact__text {
  margin-bottom: 2rem;
}

@media only screen and (max-width: 767px) {
  .bnr-contact {
    text-align: center;
  }
  .bnr-contact .title-top {
    margin-bottom: 1.5rem;
  }
  .bnr-contact__left {
    width: 30%;
  }
  .bnr-contact__right {
    flex: 1;
    padding-left: 1rem;
  }
  .bnr-contact__text {
    margin-bottom: 1rem;
    font-size: clamp(1.5rem, 1.0217rem + 1.2755vw, 2rem);
  }
  .bnr-contact .text-tel__num {
    padding-left: clamp(2.6rem, 1.2607rem + 3.5714vw, 4rem);
    font-size: clamp(2.4rem, 0.8694rem + 4.0816vw, 4rem);
  }
  .bnr-contact .text-tel__num::before {
    width: clamp(1.8rem, 0.4607rem + 3.5714vw, 3.2rem);
    height: clamp(1.8rem, 0.4607rem + 3.5714vw, 3.2rem);
    margin-top: -2.5vw;
  }
}
@media only screen and (min-width: 768px) {
  .bnr-contact__left {
    padding-right: 4rem;
  }
  .bnr-contact .title-top {
    margin-bottom: 1.5rem;
  }
  .bnr-contact__text {
    margin-left: -0.6rem;
    font-size: 2.4rem;
  }
}
/*---------- START BOX CONTACT ----------*/
.box-contact__title {
  font-weight: 700;
}
.box-contact__list:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .box-contact__title {
    margin-bottom: 0.4rem;
    font-size: clamp(1.4rem, 1.0173rem + 1.0204vw, 1.8rem);
  }
  .box-contact__list {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .box-contact {
    letter-spacing: 0.077em;
  }
  .box-contact__title {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
  }
  .box-contact__list {
    margin-bottom: 3rem;
  }
}
/*---------- START LIST BOX CONTACT ----------*/
.list-box-contact .box-contact:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .list-box-contact .box-contact {
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-box-contact .box-contact {
    margin-top: 3rem;
  }
}
/*---------- START SECTION CONTACT PRIVACY POLICY ----------*/
@media only screen and (max-width: 767px) {
  .contact-pp__body {
    padding: 3.5rem 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .contact-pp__body {
    padding: 6rem 4.5rem;
  }
}
/*====================================================================================
5. START PRICE PAGE.
====================================================================================*/
/*---------- START HEADING PRICE ----------*/
.heading-price {
  position: relative;
  padding: 1rem;
}
.heading-price__title {
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .heading-price__title {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  .heading-price__title, .heading-price__text {
    letter-spacing: 0.03em;
  }
  .heading-price__title {
    font-size: 1.8rem;
  }
}
/*---------- START BOX PRICE ----------*/
.box-price {
  position: relative;
  padding: 1rem;
  text-align: center;
}
.box-price__num {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .box-price__num, .box-price__text {
    line-height: 1.4;
  }
  .box-price__num, .box-price__minus {
    font-size: 1.6rem;
  }
  .box-price__text {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .box-price__num, .box-price__text {
    line-height: 1.3;
    letter-spacing: 0.03em;
  }
  .box-price__num, .box-price__minus {
    font-size: 1.8rem;
  }
  .box-price__text {
    font-size: 1.6rem;
  }
}
/*---------- START TABLE PRICE ----------*/
.tbl-price__warning {
  background-color: var(--color-white);
}
.tbl-price__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  text-align: center;
  background-color: var(--color-light-pink-third);
}
.tbl-price__title {
  color: var(--color-pink);
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: normal;
}
.tbl-price table {
  width: 100%;
  table-layout: fixed;
}
.tbl-price table tr {
  border-top: 0.1rem solid var(--color-light-pink);
}
.tbl-price table thead tr {
  border-top: 0;
}
.tbl-price table thead th {
  padding: 0 1.3rem 1rem 1.3rem;
}
.tbl-price table thead th:last-child {
  padding-right: 0;
}
.tbl-price table thead th:last-child:before {
  right: 0;
}
.tbl-price table tbody tr:last-child th,
.tbl-price table tbody tr:last-child td {
  padding-bottom: 0;
}
.tbl-price table tbody tr:last-child th::before,
.tbl-price table tbody tr:last-child td::before {
  bottom: 0;
}
.tbl-price table tbody th,
.tbl-price table tbody td {
  position: relative;
}
.tbl-price table tbody th {
  padding: 1rem 1.3rem 1rem 0;
}
.tbl-price table tbody th::before {
  position: absolute;
  content: "";
  top: 1rem;
  left: 0;
  right: 1.3rem;
  bottom: 1rem;
  background-color: var(--color-light-pink);
}
.tbl-price table tbody td {
  padding: 1rem 1.3rem;
}
.tbl-price table tbody td::before {
  position: absolute;
  content: "";
  top: 1rem;
  left: 1.3rem;
  right: 1.3rem;
  bottom: 1rem;
  background-color: var(--color-light-gray);
}
.tbl-price table tbody td:last-child {
  padding-right: 0;
}
.tbl-price table tbody td:last-child:before {
  right: 0;
}

@media only screen and (max-width: 767px) {
  .tbl-price {
    overflow-x: auto;
  }
  .tbl-price__warning {
    position: sticky;
    z-index: 3;
    top: 0;
    left: 0;
    min-height: 6rem;
  }
  .tbl-price__heading {
    min-height: 6rem;
    border-radius: 1.2rem 1.2rem 0 0;
  }
  .tbl-price__title {
    font-size: 1.6rem;
  }
  .tbl-price table {
    width: max-content;
  }
  .tbl-price table thead th {
    padding: 0.5rem 0.5rem;
  }
  .tbl-price table tbody th,
  .tbl-price table tbody td {
    height: 7rem;
  }
  .tbl-price table tbody th {
    position: sticky;
    z-index: 3;
    top: 0;
    left: 0;
    padding: 0.5rem 0.5rem 0.5rem 0;
  }
  .tbl-price table tbody th::before {
    top: 0.5rem;
    right: 0.5rem;
    bottom: 0.5rem;
  }
  .tbl-price table tbody td {
    padding: 0.5rem 0.5rem;
  }
  .tbl-price table tbody td::before {
    top: 0.5rem;
    left: 0.5rem;
    right: 0.5rem;
    bottom: 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .tbl-price__warning {
    min-height: 7rem;
  }
  .tbl-price__heading {
    min-height: 7rem;
    border-radius: 2rem 2rem 0 0;
  }
  .tbl-price table tbody th,
  .tbl-price table tbody td {
    height: 9rem;
  }
}
/*---------- START TABLE MAIN ----------*/
.tbl-main__body {
  position: relative;
  padding: 2rem 5rem;
  letter-spacing: 0.03em;
}
.tbl-main__item {
  display: flex;
  flex-wrap: wrap;
}
.tbl-main__item-left {
  flex: 0 0 auto;
}
.tbl-main table {
  width: 100%;
  table-layout: fixed;
}
.tbl-main table tr {
  border-bottom: 0.1rem solid var(--color-light-pink);
}
.tbl-main table tr:last-child {
  border-bottom: 0;
}
.tbl-main table th,
.tbl-main table td {
  position: relative;
}
.tbl-main table th::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  background-color: var(--color-light-pink);
}
.tbl-main table td::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  background-color: var(--color-light-gray);
}
.tbl-main table td:last-child {
  padding-right: 0;
}
.tbl-main table td:last-child:before {
  right: 0;
}

@media only screen and (max-width: 767px) {
  .tbl-main__body {
    padding: 2rem;
  }
  .tbl-main .heading-price {
    display: flex;
    align-items: center;
    min-height: 5.5rem;
    padding: 1rem 2rem;
  }
  .tbl-main .heading-price__title, .tbl-main .heading-price__text {
    text-align: left;
  }
  .tbl-main table tr:first-child th {
    padding-top: 0;
  }
  .tbl-main table tr:first-child th::before {
    top: 0;
  }
  .tbl-main table tr:last-child td {
    padding-bottom: 0;
  }
  .tbl-main table tr:last-child td::before {
    bottom: 0;
  }
  .tbl-main table th,
  .tbl-main table td {
    display: block;
    width: 100%;
  }
  .tbl-main table th {
    padding: 0.5rem 0;
  }
  .tbl-main table th::before {
    top: 0.5rem;
    bottom: 0.5rem;
  }
  .tbl-main table td {
    padding: 0 0 0.5rem 0;
  }
  .tbl-main table td::before {
    top: 0;
    bottom: 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .tbl-main table tr:first-child th,
  .tbl-main table tr:first-child td {
    padding-top: 0;
  }
  .tbl-main table tr:first-child th::before,
  .tbl-main table tr:first-child td::before {
    top: 0;
  }
  .tbl-main table tr:last-child th,
  .tbl-main table tr:last-child td {
    padding-bottom: 0;
  }
  .tbl-main table tr:last-child th::before,
  .tbl-main table tr:last-child td::before {
    bottom: 0;
  }
  .tbl-main table th {
    width: 20rem;
    padding: 1rem 0;
  }
  .tbl-main table th::before {
    top: 1rem;
    bottom: 1rem;
  }
  .tbl-main table th .heading-price {
    padding: 2.5rem 1rem;
  }
  .tbl-main table td {
    padding: 1rem 0;
  }
  .tbl-main table td::before {
    top: 1rem;
    bottom: 1rem;
  }
}
/*---------- START LIST PART PRICE ----------*/
.list-part-price .part-price:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .list-part-price .part-price {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 768px) {
  .list-part-price .part-price {
    margin-top: 8rem;
  }
}
/*====================================================================================
6. START RENTAL PAGE.
====================================================================================*/
/*---------- START TABLE RENTAL ----------*/
.tbl-rental__dl {
  display: flex;
  margin-top: 1rem;
}
.tbl-rental__dl:first-child {
  margin-top: 0;
}
.tbl-rental__dt, .tbl-rental__dd {
  font-weight: 700;
  text-align: center;
}
.tbl-rental__dt {
  background-color: var(--color-light-pink);
}
.tbl-rental__dd {
  flex: 1;
  background-color: var(--color-light-gray);
}

@media only screen and (max-width: 767px) {
  .tbl-rental__dt, .tbl-rental__dd {
    padding: 1.1rem 1rem;
    font-size: 1.6rem;
  }
  .tbl-rental__dt {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) {
  .tbl-rental__dt, .tbl-rental__dd {
    padding: 0.8rem 1rem;
    font-size: 1.8rem;
    letter-spacing: 0.035em;
  }
  .tbl-rental__dt {
    width: 20.8rem;
  }
}
/*---------- START GROUP RENTAL ----------*/
.group-rental {
  padding: 5rem;
  border-radius: 3rem;
  background-color: var(--color-white);
  box-shadow: var(--shadow-black);
}
.group-rental__left img {
  width: 100%;
  border-radius: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .group-rental {
    padding: 3.5rem 2rem;
  }
  .group-rental__left {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .group-rental {
    display: flex;
  }
  .group-rental__left {
    width: 51rem;
  }
  .group-rental__right {
    flex: 1;
    padding-left: 5rem;
  }
}
/*---------- START BLOCK RENTAL ----------*/
.block-rental {
  border-radius: 3rem;
  background-color: var(--color-white);
  box-shadow: var(--shadow-black);
  overflow: hidden;
}
.block-rental__left {
  background-color: var(--color-light-pink);
}
.block-rental__title {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.block-rental__list > li {
  margin-top: 0.4rem;
  font-weight: 700;
}
.block-rental__list > li:first-child {
  margin-top: 0;
}
.block-rental__note {
  margin-top: 0.8rem;
  font-size: 1.4rem;
}

@media only screen and (max-width: 575px) {
  .block-rental__list {
    margin-top: 0.5rem;
  }
  .block-rental__list:first-child {
    margin-top: 0;
  }
}
@media only screen and (min-width: 576px) {
  .block-rental__lists {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .block-rental__right {
    padding: 2rem;
  }
  .block-rental__heading {
    padding: 1.5rem 1rem;
  }
  .block-rental__title {
    font-size: 2.2rem;
    text-align: center;
  }
  .block-rental__note {
    font-size: 1.2rem;
    letter-spacing: 0.03em;
  }
}
@media only screen and (min-width: 768px) {
  .block-rental {
    display: flex;
  }
  .block-rental__left {
    width: 25.6rem;
  }
  .block-rental__right {
    flex: 1;
    padding: 3.5rem 3rem;
  }
  .block-rental__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
  }
  .block-rental__note {
    letter-spacing: 0.08em;
  }
  .block-rental__lists {
    max-width: 66.5rem;
    margin: 0 auto;
  }
}
/*---------- START SLIDE RENTAL ----------*/
.slide-rental img {
  width: 100%;
  border-radius: 2rem;
}

/*---------- START SLIDER RENTAL ----------*/
.slider-rental {
  position: relative;
}
.slider-rental__circle {
  position: absolute;
  top: 50%;
  z-index: 2;
  cursor: pointer;
}
.slider-rental__circle--prev {
  left: 1rem;
}
.slider-rental__circle--next {
  right: 1rem;
}
.slider-rental .slick-list {
  margin-left: -1rem;
  margin-right: -1rem;
  overflow: visible;
}
.slider-rental .slide-rental {
  margin-left: 1rem;
  margin-right: 1rem;
}

@media only screen and (max-width: 767px) {
  .slider-rental__circle {
    margin-top: -2rem;
  }
}
@media only screen and (min-width: 768px) {
  .slider-rental__circle {
    margin-top: -2.5rem;
  }
  .slider-rental__circle:hover::before {
    width: 100%;
    height: 100%;
  }
  .slider-rental__circle:hover .circle__arrow::before {
    opacity: 0;
  }
  .slider-rental__circle:hover .circle__arrow::after {
    opacity: 1;
  }
}
/*---------- START BOX RENTAL ----------*/
.box-rental {
  border-radius: 0.7rem;
  background-color: var(--color-light-pink);
}
.box-rental__price, .box-rental__text {
  color: var(--color-pink);
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}
.box-rental__text {
  margin-left: -0.3rem;
  margin-right: -0.3rem;
  padding-bottom: 0.3rem;
}

@media only screen and (max-width: 767px) {
  .box-rental {
    padding: 0.5rem 0.3rem;
  }
  .box-rental__price {
    font-size: clamp(1.6rem, 1.2173rem + 1.0204vw, 2rem);
  }
  .box-rental__text {
    margin-top: 0.3rem;
    font-size: clamp(1.1rem, 0.6217rem + 1.2755vw, 1.6rem);
  }
}
@media only screen and (min-width: 768px) {
  .box-rental {
    padding: 0.2rem 0;
  }
  .box-rental__price {
    font-size: 2rem;
  }
  .box-rental__text {
    margin-top: 0.5rem;
    font-size: 1.6rem;
  }
}
/*---------- START CARD RENTAL ----------*/
.card-rental__img {
  margin-bottom: 2.5rem;
}
.card-rental__img img {
  width: 100%;
  border-radius: 1.5rem;
}
.card-rental__heading {
  display: flex;
  align-items: flex-end;
  padding-bottom: 1.5rem;
  border-bottom: 0.1rem solid var(--color-pink);
}
.card-rental__title {
  color: var(--color-pink);
  font-weight: 700;
}
.card-rental__desc {
  margin-top: 1.5rem;
}
.card-rental__footer {
  display: flex;
  align-items: flex-end;
  margin-top: 2.5rem;
}
.card-rental__footer .box-rental {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .card-rental__img {
    margin-bottom: 1.5rem;
  }
  .card-rental__heading {
    padding-bottom: 1rem;
  }
  .card-rental__title {
    font-size: clamp(1.5rem, 1.213rem + 0.7653vw, 1.8rem);
    line-height: 1.4;
  }
  .card-rental__desc small {
    font-size: 1.2rem;
    letter-spacing: 0.03em;
  }
  .card-rental__footer {
    margin-top: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .card-rental__title {
    font-size: 1.8rem;
  }
  .card-rental__desc small {
    font-size: 1.4rem;
    letter-spacing: 0.08em;
  }
}
/*---------- START LIST CARD RENTAL ----------*/
.list-card-rental {
  display: grid;
}

@media only screen and (max-width: 767px) {
  .list-card-rental {
    gap: 3.5rem 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 768px) {
  .list-card-rental {
    gap: 7rem 3.5rem;
    grid-template-columns: repeat(4, 1fr);
  }
}
/*---------- START SECTION RENTAL ----------*/
.stn-rental__body {
  background-color: var(--color-light-gray);
}
.stn-rental__title {
  margin-bottom: 2.5rem;
  color: var(--color-pink);
  font-weight: 900;
}
.stn-rental__img img {
  width: 100%;
  border-radius: 2rem;
}

@media only screen and (max-width: 767px) {
  .stn-rental__header, .stn-rental__body {
    padding: 3.5rem 0;
  }
  .stn-rental__footer {
    padding: 3.5rem 0 5rem 0;
  }
  .stn-rental__title {
    font-size: 2.2rem;
    text-align: center;
    letter-spacing: 0.03em;
  }
  .stn-rental__img {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .stn-rental__header, .stn-rental__body {
    padding: 7rem 0;
  }
  .stn-rental__footer {
    padding: 7rem 0 10rem 0;
  }
  .stn-rental__row {
    display: flex;
  }
  .stn-rental__left {
    flex: 1;
    padding-right: 2.5rem;
  }
  .stn-rental__right {
    width: calc(50% - 2rem);
  }
  .stn-rental__title {
    font-size: 3.2rem;
    letter-spacing: 0.1em;
  }
  .stn-rental__desc {
    letter-spacing: 0.08em;
  }
}
/*====================================================================================
7. START SCENE PAGE.
====================================================================================*/
/*---------- START HEADING SCENE ----------*/
.heading-step {
  display: flex;
}
.heading-step__left {
  text-align: center;
}
.heading-step__right {
  flex: 1;
  padding-left: 1rem;
}
.heading-step__text {
  color: var(--color-pink);
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.1;
  text-transform: uppercase;
  font-family: var(--font-jost);
}
.heading-step__text strong {
  font-size: 2.4rem;
  font-weight: 600;
}
.heading-step__title {
  line-height: 1.35;
}

@media only screen and (max-width: 767px) {
  .heading-step {
    align-items: center;
  }
  .heading-step__left {
    margin-left: -0.5rem;
  }
  .heading-step__text {
    margin-bottom: 0.5rem;
  }
  .heading-step__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .heading-step__left {
    width: 10.5rem;
    padding-top: 0.6rem;
  }
  .heading-step__text {
    margin-bottom: 0.8rem;
  }
  .heading-step__title {
    font-size: 3rem;
    letter-spacing: 0.1em;
  }
}
/*---------- START BLOCK SCENE ----------*/
.block-scene {
  display: flex;
}

@media only screen and (max-width: 575px) {
  .block-scene {
    align-items: center;
    flex-direction: column-reverse;
  }
  .block-scene__left {
    width: 26rem;
  }
  .block-scene__right {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 576px) {
  .block-scene {
    justify-content: space-between;
  }
  .block-scene__left {
    width: 30rem;
  }
  .block-scene__right {
    margin-top: -0.4rem;
  }
}
/*---------- START STEP SCENE ----------*/
.step-scene {
  position: relative;
  background-color: var(--color-white);
  box-shadow: var(--shadow-black);
}
.step-scene::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: -4rem;
  width: 8.9rem;
  height: 2rem;
  margin-left: -4.5rem;
  background-image: image-set(url("./../common_img/arrow03-down-pink.webp") 1x, url("./../common_img/arrow03-down-pink@2x.webp") 2x);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.step-scene:last-child::before {
  content: none;
}
.step-scene__footer {
  margin-top: 3rem;
  padding-top: 1.5rem;
  border-top: 0.1rem solid var(--color-black);
}
.step-scene__title {
  color: var(--color-pink);
  font-size: 1.8rem;
  font-weight: 700;
}
.step-scene__list {
  display: flex;
  flex-wrap: wrap;
  margin: -0.2rem -0.5rem;
}
.step-scene__list > li {
  margin: 0.2rem 0.5rem;
}

@media only screen and (max-width: 767px) {
  .step-scene {
    padding: 3.5rem 2rem;
    border-radius: 5rem;
  }
  .step-scene__left img {
    transform: scale(0.8);
  }
  .step-scene__right {
    margin-top: 2rem;
  }
  .step-scene__title {
    margin-bottom: 1.5rem;
    letter-spacing: 0.03em;
  }
  .step-scene .block-scene {
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .step-scene {
    display: flex;
    padding: 5rem 6.5rem 5rem 4.5rem;
    border-radius: 9.4rem;
  }
  .step-scene__left {
    width: calc(50% - 7.5rem);
    padding-right: 5rem;
  }
  .step-scene__right {
    flex: 1;
  }
  .step-scene__title {
    margin-bottom: 2rem;
    letter-spacing: 0.1em;
  }
  .step-scene__desc {
    letter-spacing: 0.05em;
  }
  .step-scene .block-scene {
    margin-top: 3rem;
  }
}
/*---------- START LIST STEP SCENE ----------*/
.list-step-scene .step-scene {
  margin-top: 6rem;
}
.list-step-scene .step-scene:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .list-step-scene .step-scene:first-child .heading-step {
    align-items: flex-start;
  }
  .list-step-scene .step-scene:first-child .heading-step__left {
    margin-top: 0.3rem;
  }
}
/*====================================================================================
8. START POINT PAGE.
====================================================================================*/
/*---------- START CARD POINT ----------*/
.card-point {
  background-color: var(--color-white);
}
.card-point__header {
  padding-bottom: 1.4rem;
  border-bottom: 0.2rem solid var(--color-pink);
}
.card-point__title {
  font-weight: 700;
}
.card-point__body {
  padding-top: 2rem;
}

@media only screen and (max-width: 767px) {
  .card-point {
    padding: 3rem 2rem;
    border-radius: 2rem;
  }
  .card-point__title {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .card-point {
    padding: 5.5rem 2rem;
    border-radius: 3rem;
  }
  .card-point__title {
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
  .card-point__body {
    letter-spacing: 0.03em;
  }
}
/*---------- START LIST CARD POINT ----------*/
@media only screen and (max-width: 767px) {
  .list-card-point .card-point {
    margin-top: 2rem;
  }
  .list-card-point .card-point:first-child {
    margin-top: 0;
  }
}
@media only screen and (min-width: 768px) {
  .list-card-point {
    display: grid;
    gap: 2.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
}
/*---------- START GROUP POINT ----------*/
.group-point {
  position: relative;
}
.group-point__deco--v01 {
  left: 0;
}
.group-point__deco--v02 {
  right: 0;
}

@media only screen and (max-width: 767px) {
  .group-point {
    padding: 2rem;
  }
  .group-point::before {
    border-radius: 3rem;
  }
  .group-point__deco--v01 {
    top: -2.5rem;
  }
  .group-point__deco--v01 img {
    max-height: 6.5rem;
  }
  .group-point__deco--v02 {
    bottom: -3rem;
  }
  .group-point__deco--v02 img {
    max-height: 7rem;
  }
}
@media only screen and (min-width: 768px) {
  .group-point {
    padding: 3rem;
  }
  .group-point::before {
    border-radius: 6rem;
  }
  .group-point__deco--v01 {
    top: -5rem;
  }
  .group-point__deco--v02 {
    bottom: -6rem;
  }
}