@charset "UTF-8";
/*----------------------------------------------------------------------
------------------------------------------------------------------------

File Name:
Note:

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
------------------------------------------------------------------------
目次

1.	共通使用変数定義
2.	Function
3.	Layout
4.	Object
------------------------------------------------------------------------
----------------------------------------------------------------------*/
@keyframes animation-rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes animation-draw--rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(180deg);
  }
}
@keyframes animation-show--fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes animation-show--line {
  0% {
    height: 0;
    opacity: 0;
  }
  20% {
    height: 25%;
    opacity: 1;
  }
  80% {
    height: 100%;
    opacity: 1;
  }
  100% {
    height: 100%;
    opacity: 0;
  }
}
html {
  scroll-behavior: smooth;
}

.is-gsap .js-gsap-fade {
  transition: all 1.5s;
  opacity: 0;
}
.is-gsap .js-gsap-fade--top {
  transform: translateY(30px);
}
.is-gsap .js-gsap-fade--right {
  transform: translateX(30px);
}
.is-gsap .js-gsap-fade--bottom {
  transform: translateY(-30px);
}
.is-gsap .js-gsap-fade--left {
  transform: translateX(-30px);
}
.is-gsap .js-gsap-fade.is-show {
  opacity: 1;
  transform: translateX(0);
  transform: translateY(0);
}

.p-container {
  padding-bottom: 16.1333333333vw;
}

.p-hero {
  position: relative;
}

.p-nav {
  position: absolute;
  top: 30.1333333333vw;
  left: 3.6vw;
}
.p-nav__list__item {
  padding: 2.6666666667vw 0;
  width: 3.3333333333vw;
}
.p-nav__list__item + .p-nav__list__item {
  border-top: 0.2666666667vw solid #ccc3bb;
}

.p-lead__pic {
  position: relative;
}
.p-lead__pic::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  background: url(../../img/sp/troubles_curves-lipo_lead_bg.png) 0 0/100% no-repeat;
  opacity: 0;
}
.p-lead__pic.is-show::before {
  animation: animation-show--line 3s ease-in .5s infinite forwards;
}
.p-lead__cv {
  margin: 0;
  padding-top: 6.4vw;
  padding-bottom: 6.4vw;
}

.p-recommend {
  position: relative;
  background: #f7f1ed;
  padding-top: 30.6666666667vw;
  padding-bottom: 25.3333333333vw;
}
.p-recommend > * {
  position: relative;
  z-index: 10;
}
.p-recommend__title {
  margin-bottom: 58vw;
}
.p-recommend__list {
  display: flex;
  justify-content: space-between;
  padding: 0 5.0666666667vw;
  margin-bottom: 7.7333333333vw;
}
.p-recommend__list__item {
  width: 16.5333333333vw;
  opacity: 0;
}
.p-recommend__list__item.is-show.item1 {
  animation: animation-show--fade .7s ease-out .5s forwards;
}
.p-recommend__list__item.is-show.item2 {
  animation: animation-show--fade .7s ease-out .7s forwards;
}
.p-recommend__list__item.is-show.item3 {
  animation: animation-show--fade .7s ease-out .9s forwards;
}
.p-recommend__list__item.is-show.item4 {
  animation: animation-show--fade .7s ease-out 1.1s forwards;
}
.p-recommend__list__item.is-show.item5 {
  animation: animation-show--fade .7s ease-out 1.3s forwards;
}
.p-recommend__text {
  z-index: 11;
  margin-right: auto;
  margin-bottom: 12vw;
  margin-left: auto;
  width: 84.5333333333vw;
}
.p-recommend__bg {
  position: static;
}
.p-recommend__bg__item {
  position: absolute;
}
.p-recommend__bg .no1 {
  z-index: 8;
  top: 46vw;
  left: 5.0666666667vw;
  width: 90vw;
  height: 9.4666666667vw;
  mix-blend-mode: color-dodge;
}
.p-recommend__bg .no2 {
  z-index: 6;
  top: 43.3333333333vw;
  left: 14.9333333333vw;
  width: 84.8vw;
  height: 64.6666666667vw;
}
.p-recommend__bg .no3 {
  z-index: 4;
  top: 19.4666666667vw;
  left: 0;
  width: 71.2vw;
  height: 55.2vw;
  background: #dfdcd7;
}
.p-recommend__bg .no4 {
  z-index: 2;
  top: 62vw;
  left: 26.6666666667vw;
  width: 64.8vw;
  height: 110.8vw;
  background: #e4ceb9;
}
.p-recommend .swiper {
  height: 41.0666666667vw;
}
.p-recommend .swiper .swiper-wrapper {
  transition-timing-function: linear;
}

.p-benefit {
  position: relative;
}
.p-benefit__list {
  display: flex;
}
.p-benefit__item {
  width: 27.6vw;
}
.p-benefit__bg {
  position: absolute;
  left: 2.6666666667vw;
  top: -13.3333333333vw;
  z-index: 1;
  width: 42.2666666667vw;
}

.p-case {
  padding: 21.3333333333vw 3.4666666667vw 22.6666666667vw;
  background: #efe3da;
}
.p-case__title {
  margin-bottom: 6.6666666667vw;
}
.p-case__list__item {
  margin-bottom: 5.3333333333vw;
}
.p-case__movie {
  margin-bottom: 8vw;
}
.p-case__info {
  color: #847972;
}
.p-case__info__title {
  font-size: 1.1rem;
  margin-bottom: 1em;
}
.p-case__info table {
  border-collapse: separate;
  border-spacing: 2.4vw;
  margin: -2.4vw;
}
.p-case__info table th {
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.5;
  vertical-align: top;
  width: 16.5333333333vw;
}
.p-case__info table td {
  font-size: 1rem;
  line-height: 1.5;
}

.modal-video-close-btn {
  right: 0;
}

.p-cv {
  padding-top: 15.4666666667vw;
  background: url(../../img/sp/troubles_curves-lipo_cv_bg.jpg) 0 0/100% auto no-repeat;
}
.p-cv.short {
  background-image: url(../../img/sp/troubles_curves-lipo_cv_bg2.jpg);
}
.p-cv__title {
  margin-right: auto;
  margin-bottom: 4.9333333333vw;
  margin-left: auto;
  width: 71.3333333333vw;
}
.p-cv__pic.pic1 {
  margin-bottom: 8vw;
}
.p-cv__pic.pic2 {
  margin-bottom: -18.9333333333vw;
}
.p-cv__limit {
  position: relative;
  margin-right: auto;
  margin-bottom: 4.2666666667vw;
  margin-left: auto;
  width: 87.0666666667vw;
}
.p-cv__limit > * {
  position: relative;
  z-index: 10;
}
.p-cv__limit::after {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  top: 0.8vw;
  right: 0.8vw;
  bottom: 0.8vw;
  left: 0.8vw;
  backdrop-filter: blur(10px);
}
.p-cv__limit__text {
  width: 34.6666666667vw;
  height: 11.0666666667vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 2.85rem;
  color: #d86491;
  font-family: "the-seasons", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.p-cv__limit__text .weekday {
  font-size: 1rem;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  text-transform: uppercase;
  transform: rotate(180deg);
  margin-left: 0.4em;
}
.p-cv__button {
  padding-left: 6.4vw;
}
.p-cv__button img {
  width: 90.5333333333vw;
}
.p-cv__button.monitor {
  margin-bottom: 13.3333333333vw;
}
.p-cv__counseling {
  padding-bottom: 6.6666666667vw;
}
.p-cv__counseling__pic {
  margin-right: auto;
  margin-bottom: 5.3333333333vw;
  margin-left: auto;
  width: 87.6vw;
}
.p-cv__bg {
  position: relative;
  margin-bottom: 8.2666666667vw;
  height: 59.2vw;
}
.p-cv__bg .pic1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 42.8vw;
  background: url(../../img/sp/troubles_curves-lipo_cv_bg_pic1.jpg) center no-repeat;
}
.p-cv__bg .pic2 > * {
  display: block;
  position: absolute;
  top: 26.4vw;
  left: 50%;
  width: 32.4vw;
  height: 32.8vw;
  transform: translateX(-50%);
}
.p-cv__bg .pic2 > * span {
  display: block;
  position: absolute;
  width: 100%;
  height: 16.4vw;
  overflow: hidden;
}
.p-cv__bg .pic2 > * span img {
  animation: 8s linear infinite animation-rotation;
}
.p-cv__bg .pic2 .pic2-1 {
  mix-blend-mode: color-dodge;
}
.p-cv__bg .pic2 .pic2-1 span {
  top: 0;
}
.p-cv__bg .pic2 .pic2-2 span {
  top: 50%;
}
.p-cv__bg .pic2 .pic2-2 span img {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
}

.p-dirrerence {
  padding-top: 8vw;
}
.p-dirrerence__title {
  margin-right: auto;
  margin-bottom: 12.8vw;
  margin-left: auto;
  width: 87.3333333333vw;
}
.p-dirrerence__points__text {
  margin-right: auto;
  margin-bottom: 6.5333333333vw;
  margin-left: auto;
  width: 76.9333333333vw;
}
.p-dirrerence__points__pic {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  width: 82.6666666667vw;
  height: 76.5333333333vw;
  margin-bottom: 7.2vw;
}
.p-dirrerence__points__pic::before {
  content: '';
  position: absolute;
  z-index: 4;
  top: 39.3333333333vw;
  left: 50%;
  transform: translateX(-50%);
  width: 8.5333333333vw;
  height: 8.6666666667vw;
  background: url(../../img/sp/troubles_curves-lipo_dirrerence_points_bg.png) 0 0/contain no-repeat;
  opacity: 0;
}
.p-dirrerence__points__pic__item {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44vw;
  height: 44vw;
  border-radius: 100%;
}
.p-dirrerence__points__pic__item .circle1,
.p-dirrerence__points__pic__item .circle2 {
  position: absolute;
  overflow: hidden;
  width: 50%;
  height: 100%;
}
.p-dirrerence__points__pic__item .circle1::before,
.p-dirrerence__points__pic__item .circle2::before {
  content: '';
  position: absolute;
  background: #fff;
}
.p-dirrerence__points__pic__item .circle1 {
  left: 50%;
}
.p-dirrerence__points__pic__item .circle2 {
  left: 0;
}
.p-dirrerence__points__pic__item img {
  position: relative;
  z-index: 1;
  opacity: 0;
}
.p-dirrerence__points__pic__item.pic1 {
  z-index: 3;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.p-dirrerence__points__pic__item.pic1 img {
  width: 21.0666666667vw;
}
.p-dirrerence__points__pic__item.pic2 {
  z-index: 2;
  bottom: 0;
  left: 0;
}
.p-dirrerence__points__pic__item.pic2 img {
  width: 9.7333333333vw;
}
.p-dirrerence__points__pic__item.pic3 {
  z-index: 1;
  bottom: 0;
  right: 0;
}
.p-dirrerence__points__pic__item.pic3 img {
  width: 25.3333333333vw;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item {
  box-shadow: inset 0 0 0 0.2666666667vw #a78764;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item .circle1::before {
  width: 100%;
  height: 200%;
  transform-origin: 0 25%;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item .circle2::before {
  left: -10%;
  width: 110%;
  height: 120%;
  transform-origin: 100% 40%;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic1 .circle1::before {
  animation: animation-draw--rotation .5s linear forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic1 .circle2::before {
  animation: animation-draw--rotation .5s ease-out .5s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic1 img {
  animation: animation-show--fade .5s ease-out .5s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic2 .circle1::before {
  animation: animation-draw--rotation .5s linear 1s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic2 .circle2::before {
  animation: animation-draw--rotation .5s ease-out 1.5s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic2 img {
  animation: animation-show--fade .5s ease-out 1.5s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic3 .circle1::before {
  animation: animation-draw--rotation .5s linear 2s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic3 .circle2::before {
  animation: animation-draw--rotation .5s ease-out 2.5s forwards;
}
.p-dirrerence__points__pic.is-show .p-dirrerence__points__pic__item.pic3 img {
  animation: animation-show--fade .5s ease-out 2.5s forwards;
}
.p-dirrerence__points__pic.is-show::before {
  animation: animation-show--fade 1s ease-out 3s forwards;
}
.p-dirrerence__lead {
  position: relative;
  z-index: 5;
  padding: 11.3333333333vw 0 8.2666666667vw;
  margin-bottom: 10.1333333333vw;
}
.p-dirrerence__lead__text {
  position: relative;
  z-index: 1;
}
.p-dirrerence__lead__text.pic1 {
  margin-left: 8.5333333333vw;
  margin-bottom: 3.3333333333vw;
  width: 65.7333333333vw;
}
.p-dirrerence__lead__text.pic2 {
  transition: all 1.5s;
  padding: 2.9333333333vw 3.3333333333vw;
  width: 64vw;
  margin-left: 6.9333333333vw;
}
.p-dirrerence__lead__text.pic2::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  background: #fff;
  transition: all 1.5s;
}
.p-dirrerence__lead__text.pic2.is-show::after {
  width: 100%;
}
.p-dirrerence__lead__bg {
  position: absolute;
}
.p-dirrerence__lead__bg.no1 {
  top: 0;
  right: 0;
  width: 66.2666666667vw;
  height: 46.9333333333vw;
}
.p-dirrerence__lead__bg.no2 {
  top: 6.5333333333vw;
  left: 0;
  width: 70.9333333333vw;
  height: 44.9333333333vw;
  background: #e4ceb9;
}
.p-dirrerence__map {
  margin-right: 2.9333333333vw;
  margin-bottom: 8vw;
  margin-left: 6.8vw;
  width: 90.4vw;
}
.p-dirrerence__comparison {
  margin-right: 6.2666666667vw;
  margin-bottom: 12vw;
  margin-left: 6.4vw;
  width: 87.3333333333vw;
}

.p-feature {
  position: relative;
  padding-top: 21.3333333333vw;
  padding-bottom: 11.7333333333vw;
  background: #efe3da;
}
.p-feature > * {
  position: relative;
  z-index: 10;
}
.p-feature__title {
  margin-right: auto;
  margin-bottom: 6.6666666667vw;
  margin-left: auto;
  width: 87.3333333333vw;
}
.p-feature__comment {
  margin-left: 6.6666666667vw;
  margin-bottom: 7.4666666667vw;
  width: 89.6vw;
}
.p-feature__list__item {
  margin-bottom: 7.4666666667vw;
}
.p-feature__bg {
  position: absolute;
  top: 11.6vw;
  left: -6.2666666667vw;
  z-index: 1;
  width: 23.7333333333vw;
}

.p-tool {
  padding-top: 8.8vw;
  padding-bottom: 12.4vw;
  background: #f7f1ed;
}
.p-tool__title {
  margin-right: auto;
  margin-bottom: 6.6666666667vw;
  margin-left: auto;
  width: 58.4vw;
}
.p-tool__list {
  margin-right: 6.6666666667vw;
  margin-left: 6.6666666667vw;
  display: flex;
  justify-content: space-between;
}
.p-tool__list__item {
  width: 40vw;
}

.p-intro {
  margin: 0 auto;
  padding: 10.6666666667vw 0;
  width: 84.9333333333vw;
}

.p-needs {
  padding: 16vw 0 22.6666666667vw;
}
.p-needs__title {
  margin-bottom: 10.6666666667vw;
}
.p-needs__list {
  overflow: hidden;
}
.p-needs__list__item + .p-needs__list__item {
  margin-top: 10.6666666667vw;
}
.p-needs__item__title {
  margin-right: auto;
  margin-bottom: 5.8666666667vw;
  margin-left: auto;
  width: 63.6vw;
}
.p-needs__item__pic {
  width: 96.8vw;
}
.p-needs .no1 .p-needs__item__pic,
.p-needs .no3 .p-needs__item__pic,
.p-needs .no5 .p-needs__item__pic {
  margin-right: 0;
  margin-left: auto;
}
.p-needs .no5 .p-needs__item__pic {
  position: relative;
  width: 100vw;
}
.p-needs .no5 .p-needs__item__pic a {
  position: absolute;
  right: 6.6666666667vw;
  bottom: 4.8vw;
  display: block;
  width: 22.2666666667vw;
}

.p-value {
  padding-bottom: 22.6666666667vw;
}
.p-value__title {
  width: 84.1333333333vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 12vw;
}
.p-value__list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.8666666667vw;
  row-gap: 3.0666666667vw;
  padding: 0 3.4666666667vw;
}
.p-value__list__item {
  width: 45.6vw;
}

.p-price {
  padding: 8vw 0 18.6666666667vw;
}
.p-price__title {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 8.8vw;
}
.p-price__table {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5.3333333333vw;
}
.p-price__counseling {
  margin-bottom: 18.6666666667vw;
}
.p-price__counseling__text {
  width: 87.2vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 4.2666666667vw;
}
.p-price__service {
  margin-bottom: 18.6666666667vw;
}
.p-price__service__title {
  width: 69.2vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 13.3333333333vw;
}
.p-price__feature__list {
  overflow: hidden;
}
.p-price__feature__list__item {
  margin-right: auto;
  margin-left: auto;
  width: 94.4vw;
}
.p-price__feature__list__item + .p-price__feature__list__item {
  margin-top: 3.2vw;
}

.p-service__item {
  margin-right: 6.5333333333vw;
  margin-left: 6.5333333333vw;
}
.p-service__item + .p-service__item {
  padding-top: 8.5333333333vw;
}
.p-service__item.is-opened .icon::before {
  content: initial;
}
.p-service__item__title {
  position: relative;
  border: 0.2666666667vw solid #b6a598;
}
.p-service__item__title .icon {
  position: absolute;
  top: 50%;
  right: 1.8666666667vw;
  align-items: center;
  justify-content: center;
  width: 5.0666666667vw;
  height: 5.0666666667vw;
  border-radius: 50%;
  background-color: #b6a599;
  transform: translateY(-50%);
}
.p-service__item__title .icon::before, .p-service__item__title .icon::after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  width: 1.7333333333vw;
  height: 0.4vw;
  border-radius: 0.1333333333vw;
  background-color: #fff;
  transform: translateY(-50%) translateX(-50%);
}
.p-service__item__title .icon::before {
  height: 1.7333333333vw;
  width: 0.4vw;
}
.p-service__item__contents {
  margin: 4vw 2.2666666667vw;
}

.p-payment {
  padding-bottom: 18.6666666667vw;
}
.p-payment__title, .p-payment__text {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
}
.p-payment__title {
  margin-bottom: 8.8vw;
}
.p-payment__text {
  line-height: 1.5925925926;
  font-size: 1.35rem;
  margin-bottom: 7.3333333333vw;
  color: #6c6561;
}
.p-payment__list {
  margin-right: 6.6666666667vw;
  margin-left: 6.6666666667vw;
}
.p-payment__list__item {
  display: list-item;
  border-top: 0.2666666667vw solid #dad2cc;
  padding-top: 3.7333333333vw;
  padding-bottom: 3.7333333333vw;
  color: #6c6561;
}
.p-payment__list__item .item-inner {
  display: table;
  width: 100%;
}
.p-payment__list__item .item-title,
.p-payment__list__item .item-text {
  display: table-cell;
}
.p-payment__list__item .item-title {
  vertical-align: top;
  width: 29.6vw;
}
.p-payment__list__item .item-title img {
  width: 25.7333333333vw;
}
.p-payment__list__item .item-text {
  line-height: 1.5925925926;
  font-size: 1.35rem;
  vertical-align: middle;
}
.p-payment__list__item .item-text .small-text {
  display: block;
  font-size: 1.1rem;
  margin-top: 1.3333333333vw;
  text-indent: -1em;
  margin-left: 1em;
}
.p-payment__list__item .item-text dl {
  margin-top: 2.6666666667vw;
  line-height: 1.3571428571;
  font-size: 1.2rem;
}
.p-payment__list__item .item-text ul {
  margin-left: 1.5em;
}
.p-payment__list__item .item-text li {
  padding: 0;
  line-height: 1.3571428571;
  font-size: 1.2rem;
  list-style-type: decimal;
}
.p-payment__list__item .item-text li .small-text {
  display: inline-block;
  margin: 0;
  font-size: 1.2rem;
}
.p-payment__list__item .item-text li p {
  line-height: 1.5;
  font-size: 1.2rem;
  text-indent: -1em;
  margin-left: 1em;
}
.p-payment__list__item .item-text li p::before {
  content: '◇';
}
.p-payment__list__item .small-text {
  display: block;
  line-height: 1.5;
  font-size: 1.2rem;
}
.p-payment__list__item:nth-child(1) > picture img {
  width: 25.7333333333vw;
}
.p-payment__list__item:nth-child(3) > picture img {
  margin-top: 2.6666666667vw;
}
.p-payment__list__item:last-child {
  padding-bottom: 0;
}

.p-faq {
  padding: 21.3333333333vw 0 13.3333333333vw;
}
.p-faq__title {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 13.3333333333vw;
}
.p-faq__list {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
}
.p-faq__list__item + .p-faq__list__item {
  margin-top: 13.3333333333vw;
}

.p-clinic {
  padding: 21.3333333333vw 0;
  background: #f7f1ed;
}
.p-clinic__title {
  width: 87.3333333333vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 8.8vw;
}
.p-clinic__pic {
  width: 83.8666666667vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 2.9333333333vw;
}
.p-clinic__pic__text {
  margin-top: 3.2vw;
  display: block;
  text-align: center;
  font-size: 1.2rem;
  color: #7f7875;
}
.p-clinic__tel {
  position: absolute;
  top: 30.1333333333vw;
  left: 25.6vw;
  width: 45.6vw;
}
.p-clinic__tel .ja {
  margin-bottom: 3.2vw;
}
.p-clinic__tel .en {
  color: #7f7875;
  font-size: 1rem;
}
.p-clinic__tel .en a {
  color: #7f7875;
  font-size: 1rem;
  text-decoration: none;
}
.p-clinic__map {
  position: absolute;
  top: 50vw;
  left: 0;
  right: 0;
  width: 100%;
}
.p-clinic__map__inner {
  position: relative;
  width: 66.6666666667vw;
  height: 65.7333333333vw;
  margin: 0 auto;
  overflow: hidden;
}
.p-clinic__map__inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: hidden;
  margin: 0;
  width: 100%;
  min-width: 400px;
  min-height: 400px;
  height: 65.8666666667vw;
  border: none;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.p-clinic__map__button {
  width: 100%;
  position: absolute;
  bottom: 8.2666666667vw;
  left: 0;
  right: 0;
  z-index: 1;
}
.p-clinic__map__button a {
  display: block;
  width: 64vw;
  margin: 0 auto;
}
.p-clinic .swiper {
  width: 100%;
}
.p-clinic .swiper-slide {
  position: relative;
  width: 79.4666666667vw;
}
.p-clinic .swiper-slide.osaka .p-clinic__map__inner,
.p-clinic .clinic .swiper-slide.osaka iframe {
  height: 71.2vw;
}

.p-privacypolicy {
  padding-bottom: 10.6666666667vw;
  background: #f7f1ed;
}
.p-privacypolicy__title {
  position: relative;
  width: 87.3333333333vw;
  padding-bottom: 4vw;
  margin-right: auto;
  margin-left: auto;
}
.p-privacypolicy__title::before {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1.8666666667vw;
  background: url(../../img/sp/troubles_curves-lipo_privacypolicy_arrow.png) center no-repeat;
  background-size: auto 100%;
}
.p-privacypolicy__title.is-open::before {
  transform: rotate(180deg);
}
.p-privacypolicy__contents {
  margin: 6.6666666667vw 8vw 0;
  text-align: justify;
}
.p-privacypolicy__contents__box {
  margin: 3em 0;
  color: #7f7875;
}
.p-privacypolicy__contents__box.first {
  margin-top: 0;
}
.p-privacypolicy__contents__box.last {
  margin-bottom: 0;
}
.p-privacypolicy__contents__box .title {
  margin-bottom: 1em;
  font-size: 1.2rem;
  font-weight: bold;
}
.p-privacypolicy__contents__box p {
  line-height: 1.5;
  font-size: 1rem;
}
.p-privacypolicy__contents__box ul {
  margin: 1em 0;
}
.p-privacypolicy__contents__box li {
  padding-left: 2em;
  text-indent: -2em;
  line-height: 1.5;
  font-size: 1rem;
}
.p-privacypolicy__contents__box .reception {
  margin-top: 1em;
  padding-left: 1em;
  line-height: 1.5;
  font-size: 1rem;
}
.p-privacypolicy__contents__box .reception-title {
  text-indent: -1em;
}
.p-privacypolicy__contents__box .reception-tel > * {
  display: inline-block;
  padding-top: .4em;
}
.p-privacypolicy__contents__box .reception-tel-contents {
  text-indent: -.5em;
}
.p-privacypolicy__contents__box .reception-tel-contents a {
  color: #5d5d5d;
}

.p-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 9.3333333333vw;
  background: #584f4c;
  color: #fff;
  font-size: 1rem;
}

.js-details .js-summary {
  display: block;
  list-style: none;
}
.js-details .js-summary::-webkit-details-marker {
  display: none;
}
.js-details .js-content {
  overflow: hidden;
}

.p-fix-cv {
  transition: all .2s linear;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}
.p-fix-cv-list {
  width: 100%;
  display: flex;
}
.p-fix-cv-list:has(+ .p-fix-tel.is-active) .p-fix-cv-item {
  padding-bottom: 0;
}
.p-fix-cv-item {
  background-color: #efe3da;
  padding-bottom: 0;
  padding-bottom: calc(constant(safe-area-inset-bottom) * 0.6);
  padding-bottom: calc(env(safe-area-inset-bottom) * 0.6);
}
.p-fix-cv-item.tel {
  background-image: url(../../img/sp/troubles_curves-lipo_fix_cv_tel_a.png);
  background-position: 0 0;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.p-fix-cv-item a {
  display: block;
}
.p-fix-cv-item.is-active img {
  opacity: 0;
}
.p-fix-tel {
  box-sizing: border-box;
  width: 100%;
  display: none;
  padding: 2.4vw 2.6666666667vw;
  padding: 2.4vw 2.6666666667vw calc(px2vw(18) + constant(safe-area-inset-bottom) * 0.6);
  padding: 2.4vw 2.6666666667vw calc(px2vw(18) + env(safe-area-inset-bottom) * 0.6);
  background: #e4ceb9;
  transition: all 0.4s linear;
  box-shadow: inset 0 0 1.0666666667vw 0 rgba(0, 0, 0, 0.3);
}
.p-fix-tel-list {
  display: flex;
  gap: 0.5333333333vw;
  border: 0.5333333333vw solid #d6b79f;
  background: #d6b79f;
}
.p-fix-tel-item {
  flex: 1;
}
.p-fix-tel-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #efe3da;
  text-align: center;
  height: 14.6666666667vw;
  font-size: 1.4rem;
  color: #605548;
  letter-spacing: .2rem;
}
.p-fix-tel.is-active {
  display: block;
  animation: show 1s linear 0s;
}
.p-fix-tel.is-active img {
  opacity: 0;
}
@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.p-leave__cover-element {
  background: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1001;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.p-leave__popup {
  position: relative;
  display: none;
  width: 85.3333333333vw;
  position: fixed;
  z-index: 9999;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  text-align: center;
}
.p-leave__popup__close__button {
  position: absolute;
  top: -6.1333333333vw;
  right: -6.1333333333vw;
  width: 6.6666666667vw;
}

/*# sourceMappingURL=curves-lipo.css.map */
