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

File Name:
Note:


New Creation:	.
Last Change:	2018/12/06 16:12:24.


Created By		Yoshiaki Murakami

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

1.	共通使用変数定義
2.	Function
3.	Layout
4.	Object

------------------------------------------------------------------------
----------------------------------------------------------------------*/
.c-contents-link {
  border-bottom: 0.2666666667vw solid #bdb5b0;
}
.c-contents-link a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 11.7333333333vw;
  text-align: center;
  line-height: 1.3333333333;
  font-size: 1.2rem;
  color: #fff;
}
.c-contents-link__list {
  display: flex;
}
.c-contents-link__item {
  box-sizing: border-box;
  flex: 1;
  flex-basis: 20%;
  background: #877d7a;
}
.c-contents-link__item + .c-contents-link__item {
  border-left: 0.2666666667vw solid #bdb5b0;
}
.c-contents-link__item.is-active a {
  background: #cac3c0;
}

.p-anchor {
  margin: 5.3333333333vw 4.6666666667vw 3.2vw;
}
.p-anchor__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.p-anchor__item {
  display: flex;
  position: relative;
  align-items: center;
  margin: 0 0.6666666667vw 2.1333333333vw;
  padding: 1.7333333333vw 2.6666666667vw;
  border: 0.2666666667vw solid #c7bcb4;
  border-radius: 3.6vw;
  background: #f0efed;
  font-size: 1rem;
}
.p-anchor__item a {
  line-height: 1.2;
  color: #7f7875;
}
.p-anchor__item a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}
.p-anchor__item::after {
  content: "";
  margin-left: 1.2vw;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  background-image: url(../../../img/sp/arrow3.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(90deg);
}

.p-scrollable::before {
  content: "スクロールできます→";
  display: block;
  margin-bottom: 0.5em;
  text-align: right;
  font-size: 1.2rem;
}
.p-scrollable__contents {
  overflow-x: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.p-table {
  width: 100%;
}
.p-table a {
  color: #6d9dd0;
}
.p-table th,
.p-table td {
  box-sizing: border-box;
  padding: 2.1333333333vw;
  border: 0.2666666667vw solid #c5bcb5;
}
.p-table th {
  font-weight: bold;
}
.p-table thead th {
  background: #8e8176;
  color: #fff;
}
.p-table tbody th {
  background: #f4f2f0;
}
.p-table tbody th a {
  font-weight: bold;
}

.p-table__list {
  text-align: left;
}
.p-table__list__item {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
  line-height: 1.5833333333;
}
.p-table__list__item::before {
  content: "●";
  margin-right: 0.4rem;
}

.p-case-info__table th,
.p-case-info__table td {
  line-height: 1.5;
  font-size: 1rem;
}
.p-case-info__table th {
  width: 13.3333333333vw;
  text-align: center;
}
.p-case-info__table td a {
  text-decoration: underline;
}

.p-text-link a {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.p-text-link a::after {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-left: 1.3333333333vw;
  width: 3.7333333333vw;
  height: 3.7333333333vw;
  background: url(../../../img/sp/arrow1.png) right center no-repeat;
  background-size: 3.7333333333vw;
}

.webp .p-text-link a::after {
  background-image: url(../../../img/sp/arrow1.webp);
}

.p-contents__item {
  margin-top: 2.6666666667vw;
  border: 0.2666666667vw solid #c5bcb5;
}
.p-contents__summary {
  display: flex;
  flex-wrap: wrap;
  padding: 2.6666666667vw;
}
.p-contents__summary__inner {
  flex: 1;
  order: 2;
}
.p-contents__summary__pic {
  order: 1;
  margin-right: 4vw;
  width: 26.6666666667vw;
}
.p-contents__summary__title {
  margin-bottom: 3.3333333333vw;
  padding-top: 1.0666666667vw;
  line-height: 1.2222222222;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.8rem;
  font-weight: bold;
  color: #6d6562;
}
.p-contents__summary__text {
  line-height: 1.5;
  font-size: 1.2rem;
}

.p-faq__item {
  border-bottom: 0.2666666667vw solid #d4d0ce;
}
.p-faq__item .is-open .p-faq__question {
  padding: 4.2666666667vw 8.8vw 2.6666666667vw 17.6vw;
}
.p-faq__item .is-open .p-faq__question::after {
  opacity: 0;
}
.p-faq__item .is-open-initially .p-faq__question {
  transition-duration: 0s;
}
.p-faq__item:nth-child(odd) {
  background-color: #f4f2f0;
}
.p-faq__contents {
  border-top: 0.2666666667vw solid #fff;
  border-bottom: 0.2666666667vw solid #fff;
  box-sizing: border-box;
}
.p-faq__question {
  display: flex;
  position: relative;
  align-items: center;
  padding: 7.7333333333vw 8.8vw 7.7333333333vw 17.6vw;
  min-height: 11.7333333333vw;
  background: url(../../../img/sp/qa_question_title_bg.png) 4.2666666667vw center no-repeat;
  background-size: 10.8vw auto;
  text-decoration: none;
  transition: padding 0.4s ease-in;
}
.p-faq__question::after {
  transition: opacity 0.4s ease-in;
}
.p-faq__question__title, .p-faq__question__text {
  margin: 0;
  line-height: 1.5;
  font-size: 1.5rem;
  font-weight: bold;
  color: #7f7875;
}
.p-faq__answer__inner {
  padding: 0.2666666667vw 6.9333333333vw 3.7333333333vw 17.6vw;
  background: url(../../../img/sp/qa_answer_title_bg.png) 4.4vw 1.2vw no-repeat;
  background-size: 9.4666666667vw auto;
}
.p-faq__answer a {
  text-decoration: underline;
  color: #6d9dd0;
}
.p-faq__answer__title {
  margin-bottom: 1.3333333333vw;
  line-height: 1.6923076923;
  font-size: 1.4rem;
  font-weight: bold;
}
.p-faq__answer__title a {
  font-weight: bold;
}
.p-faq__answer__text {
  line-height: 1.5714285714;
  font-size: 1.4rem;
}
.p-faq__answer__text + .p-faq__answer__text {
  margin-top: 1em;
}

.webp .p-faq__question {
  background-image: url(../../../img/sp/qa_question_title_bg.webp);
}
.webp .p-faq__answer__inner {
  background-image: url(../../../img/sp/qa_answer_title_bg.webp);
}

.p-qa__item {
  position: relative;
  border-bottom: 0.2666666667vw solid #d4d0ce;
}
.p-qa__item:nth-child(odd) {
  background-color: #f4f2f0;
}
.p-qa__contents {
  padding: 7.7333333333vw 8.8vw 7.7333333333vw 17.6vw;
  border-top: 0.2666666667vw solid #fff;
  border-bottom: 0.2666666667vw solid #fff;
  background: url(../../../img/sp/qa_question_title_bg.png) 4.2666666667vw 7.7333333333vw no-repeat;
  background-size: 10.8vw auto;
}
.p-qa__contents__title, .p-qa__contents__text {
  line-height: 1.5;
  font-size: 1.5rem;
}
.p-qa__contents__title {
  margin-bottom: 1.0666666667vw;
  font-weight: bold;
}
.p-qa__contents__date {
  position: absolute;
  top: 2.6666666667vw;
  right: 8.8vw;
  font-size: 1.2rem;
}
.p-qa__contents__text {
  margin-bottom: 2.2vw;
}
.p-qa__contents__text a {
  color: #7e7774;
}
.p-qa__contents__text a::after {
  content: "";
  display: block;
  position: absolute;
  right: 2.6666666667vw;
  bottom: 2.6666666667vw;
  width: 3.7333333333vw;
  height: 3.7333333333vw;
  background: url(../../../img/sp/arrow1.png) 0 0 no-repeat;
  background-size: contain;
}

.p-cv-button a {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: 16.5333333333vw;
  border: 0.8vw solid #554c48;
  background: linear-gradient(#91847b, #443b34);
  text-decoration: none;
  color: #fff;
}
.p-cv-button a::after {
  display: block;
  border-top: 0.2666666667vw solid #796d63;
  opacity: 0.7;
  text-align: center;
  line-height: 1.9;
  font-size: 1rem;
  color: #f5f2f0;
}
.p-cv-button__text {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 10.1333333333vw;
  border-bottom: 0.2666666667vw solid #403731;
  text-align: center;
  line-height: 1.1875;
  font-size: 1.6rem;
}
.p-cv-button__text::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 10.1333333333vw;
  height: 100%;
  background: url(../../../img/sp/arrow_cv.png) center no-repeat;
  background-size: 5.6vw auto;
}

.webp .p-cv-button__text::after {
  background-image: url(../../../img/sp/arrow_cv.webp);
}

.p-price-methods__list {
  margin-top: 3.4vw;
}
.p-price-methods__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 4.6666666667vw 0;
  border-top: 0.2666666667vw dotted #c7bcb5;
  font-size: 1.5rem;
}
.p-price-methods__item__inner {
  margin-left: 8vw;
  width: calc(100% - 8vw);
}
.p-price-methods__item__text,
.p-price-methods__item .small {
  width: 100%;
  font-size: 1.2rem;
}
.p-price-methods__item__text {
  line-height: 1.5714285714;
  font-size: 1.4rem;
}
.p-price-methods__item .small, .p-price-methods__item__pic {
  margin-top: 2.1333333333vw;
}
.p-price-methods__item .small {
  display: block;
}
.p-price-methods__item::before {
  content: "";
  display: block;
  margin-right: 1.3333333333vw;
  width: 6.6666666667vw;
  height: 6.6666666667vw;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-price-methods__item.no1::before {
  background-image: url(../../../img/sp/icon_1.png);
}
.p-price-methods__item.no2::before {
  background-image: url(../../../img/sp/icon_2.png);
}
.p-price-methods__item.no3::before {
  background-image: url(../../../img/sp/icon_3.png);
}
.p-price-methods__item.no4::before {
  background-image: url(../../../img/sp/icon_4.png);
}

.webp .p-price-methods__item.no1::before {
  background-image: url(../../../img/sp/icon_1.webp);
}
.webp .p-price-methods__item.no2::before {
  background-image: url(../../../img/sp/icon_2.webp);
}
.webp .p-price-methods__item.no3::before {
  background-image: url(../../../img/sp/icon_3.webp);
}
.webp .p-price-methods__item.no4::before {
  background-image: url(../../../img/sp/icon_4.webp);
}

.p-card {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 7.4vw;
}
.p-card__title, .p-card__text {
  line-height: 1.6;
  font-size: 1.5rem;
}
.p-card__title {
  align-self: center;
  order: 2;
  width: calc(100% - 32vw);
  font-weight: bold;
}
.p-card__text {
  order: 3;
  width: 100%;
  text-align: justify;
}
.p-card__pic {
  order: 1;
  margin-right: 5.3333333333vw;
  margin-bottom: 3.4vw;
  width: 26.6666666667vw;
}

.p-flow__item {
  overflow: hidden;
  margin-bottom: 4vw;
  padding-bottom: 4vw;
  border-bottom: 0.2666666667vw solid #c5bcb5;
}
.p-flow__contents {
  position: relative;
  min-height: 26.6666666667vw;
}
.p-flow__contents__title {
  float: left;
  font-weight: bold;
}
.p-flow__contents__pic {
  float: right;
  margin-left: 5.3333333333vw;
  width: 26.6666666667vw;
  height: 26.6666666667vw;
}
.p-flow__contents__text {
  clear: left;
}

.p-link-button a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 16vw;
  background: url(../../../img/sp/arrow1.png) right 6.4vw center no-repeat #c7bcb4;
  background-size: 3.7333333333vw auto;
  font-size: 1.6rem;
  color: #7e7774;
}

.webp .p-link-button a {
  background-image: url(../../../img/sp/arrow1.webp);
}

.p-sources__item {
  display: flex;
  align-items: flex-start;
  line-height: 1.4545454545;
  font-size: 1.1rem;
}
.p-sources__item > a {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  width: 3em;
  color: #6d9dd0;
}
.p-sources__item > a::before {
  content: "";
  display: block;
  margin-right: 0.5rem;
  width: 3.7333333333vw;
  height: 3.7333333333vw;
  background: url(../../../img/sp/arrow2.png) 0 0 no-repeat;
  background-size: contain;
  transform: rotate(180deg);
}
.p-sources__item .p-sources__text {
  flex: 1;
}
.p-sources__item .p-sources__text a {
  color: #7e7774;
}
.p-sources__item + .p-sources__item {
  margin-top: 1rem;
}
.p-sources__item:target .p-sources__text {
  background: #f1ea4d;
  font-weight: bold;
  color: #221814;
}
.p-sources__item:target .p-sources__text a {
  font-weight: bold;
  color: #221814;
}

sup[id^=cite] {
  padding: 0.2rem;
  color: #6d9dd0;
}
sup[id^=cite] a {
  color: #6d9dd0;
}
sup[id^=cite]:target {
  background: #f1ea4d;
}
sup[id^=cite]:target a {
  font-weight: bold;
  color: #221814;
}

.p-sub-menu {
  opacity: 1;
  transition: all 0.3s ease-out;
  transform: translateY(0);
}
.p-sub-menu .js-accordion__contents {
  transition: all 0.15s ease-out;
}
.p-sub-menu__open {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3.6rem;
  background: #877c76;
  text-align: center;
  font-size: 1.2rem;
  color: #fff;
}
.p-sub-menu__open.js-accordion__button::after {
  content: "▼";
  position: inherit;
  right: inherit;
  bottom: inherit;
  margin-left: 1em;
  padding: 0;
  width: 1em;
  height: 1em;
  background-image: none !important;
  font-size: 1rem;
}
.p-sub-menu.headroom--not-top {
  position: fixed;
  top: 16.9333333333vw;
  right: 0;
  left: 0;
  z-index: 1000;
}
.p-sub-menu.headroom--unpinned.is-hide {
  transform: translateY(-16.9333333333vw);
}
.p-sub-menu.is-bottom {
  opacity: 0;
  pointer-events: none;
}

.p-title {
  background-image: url(../../../img/sp/contents_breasts_title_bg.jpg?v=2112);
}

.p-banner {
  margin-top: 5.3333333333vw;
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}

.p-subbox {
  margin-bottom: 10.6666666667vw;
}

.p-about {
  margin-bottom: 9.6666666667vw;
}
.p-about > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-about__title {
  margin-bottom: 7.4vw;
}
.p-about__text {
  margin-bottom: 7.4vw;
}
.p-about__text .emphasis {
  background: linear-gradient(rgba(0, 0, 0, 0) 70%, #f3db47 30%);
}
.p-about .p-table {
  font-size: 1.2rem;
}
.p-about .p-table thead th {
  line-height: 1.3333333333;
}
.p-about .p-table tbody th,
.p-about .p-table tbody td {
  line-height: 1.5;
}

.p-comparison .p-scrollable__contents {
  position: relative;
  overflow-y: hidden;
  height: 149.6vw;
}
.p-comparison__table {
  display: contents;
  writing-mode: vertical-lr;
}
.p-comparison__table th,
.p-comparison__table td {
  text-align: center;
}
.p-comparison__table th > *,
.p-comparison__table td > * {
  writing-mode: horizontal-tb;
}
.p-comparison__table th {
  white-space: nowrap;
}
.p-comparison__table thead,
.p-comparison__table tbody {
  display: table;
  height: 100%;
  box-sizing: border-box;
  border-collapse: collapse;
}
.p-comparison__table thead {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-comparison__table thead th {
  width: 23.2vw;
  height: 44.5333333333vw;
  background-color: #f4f2f0;
  color: #7e7774;
}
.p-comparison__table thead th:last-child {
  height: 49.8666666667vw;
}
.p-comparison__table thead td {
  background: #fff;
}
.p-comparison__table tbody {
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 23.2vw;
}
.p-comparison__table tbody th {
  background-color: #8e8176;
  color: #fff;
}
.p-comparison__table tbody td {
  width: 29.3333333333vw;
  height: 44.5333333333vw;
}
.p-comparison__table tbody td:last-child {
  height: 49.8666666667vw;
}
.p-comparison__table tbody td > * {
  width: 100%;
}
.p-comparison__table tbody tr:nth-child(4) td {
  width: 46.9333333333vw;
}
.p-comparison__table tbody tr:last-child td {
  width: 33.3333333333vw;
}
.p-comparison__table img {
  margin-top: 2.2666666667vw;
  width: 42.6666666667vw;
}
.p-comparison .p-table__list {
  margin: auto 0;
}

.p-points {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 10.2666666667vw;
}
.p-points__title {
  margin-bottom: 8vw;
  width: 100%;
}
.p-points__text {
  margin-right: 5.3333333333vw;
  margin-bottom: 4.7333333333vw;
  margin-left: 5.3333333333vw;
  width: calc(100% - 10.6666666667vw);
  text-align: center;
}
.p-points__contents {
  width: 28vw;
}
.p-points__contents:nth-of-type(1) {
  margin-left: 5.3333333333vw;
}
.p-points__contents:nth-of-type(3) {
  margin-right: 5.3333333333vw;
}
.p-points__contents__text {
  margin-top: 0.9333333333vw;
  text-align: justify;
  line-height: 1.5;
  font-size: 1.2rem;
}
.p-points__contents__text .emphasis {
  background: linear-gradient(rgba(0, 0, 0, 0) 70%, #f3db47 30%);
}
.p-points__movie {
  position: relative;
  margin-top: 10vw;
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
  padding-top: 50.1333333333vw;
  width: 100%;
}
.p-points__movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-case {
  margin-bottom: 21.3333333333vw;
}
.p-case > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-case__title {
  margin-bottom: 8vw;
}
.p-case__list {
  margin-bottom: 10.6666666667vw;
}
.p-case__item + .p-case__item {
  margin-top: 2.6666666667vw;
}
.p-case__text {
  margin-top: 1.3333333333vw;
  text-align: right;
  font-size: 1.2em;
}
.p-case__text a {
  color: #6d9dd0;
}
.p-case__link {
  margin-top: 8vw;
  margin-bottom: 10.6666666667vw;
}
.p-case-contents {
  display: flex;
  position: relative;
  flex-direction: column;
  padding: 1.5rem 1.3rem 0.8rem;
  border: 0.1rem solid #ccc3bb;
  background: #faf9f7;
}
.p-case-contents-attr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  order: 1;
  margin-bottom: 1rem;
}
.p-case-contents-attr > * {
  font-size: 1.2rem;
}
.p-case-contents-attr .category {
  padding: 0 0.5rem;
  border-radius: 0.4rem;
  background-color: #000;
  line-height: 1.8333333333;
  color: #fff;
}
.liposuction .p-case-contents-attr .category {
  background-color: #4b62a1;
}

.breasts .p-case-contents-attr .category {
  background-color: #b53867;
}

.antiaging .p-case-contents-attr .category {
  background-color: #65478a;
}

.p-case-contents-attr__item.region {
  order: 4;
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #a39e9b;
}
.p-case-contents-pic {
  order: 3;
  margin-bottom: 2rem;
}
.p-case-contents__title {
  margin-top: 1.5rem;
}
.p-case-contents__title a {
  line-height: 1.25;
  font-size: 1.6rem;
  font-weight: bold;
  color: #7e7774;
}
.p-case-contents__link {
  order: 5;
  margin-right: 0;
  margin-left: auto;
  width: 17.4666666667vw;
}
.p-case-contents__wrapper {
  margin: 0 1.25rem 1.4rem;
}
.p-case-contents__title {
  order: 4;
  margin: 0 0 1.5rem;
  font-size: 1.3rem;
  color: #a39e9b;
}
.p-case-contents-pic {
  display: flex;
  flex-direction: column;
  margin: 0;
}
.p-case-contents-pic__title {
  order: 2;
  margin-top: 0;
  margin-bottom: 1rem;
}
.p-case-contents-pic__img {
  order: 1;
  margin-bottom: 1rem;
}
.p-case__case-info {
  width: calc(100% - 5.3333333333vw - 5.3333333333vw);
}

.p-comment {
  margin-bottom: 20.7333333333vw;
}
.p-comment > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-comment__title {
  margin-bottom: 3.3333333333vw;
}
.p-comment__lead {
  display: flex;
  align-items: center;
  margin-bottom: 4.0666666667vw;
}
.p-comment__lead__pic {
  margin-right: 2.6666666667vw;
  width: 15.4666666667vw;
}
.p-comment__lead__text {
  flex: 1;
  line-height: 1.5;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 2rem;
}

.p-operations > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-operations__title {
  margin-bottom: 10.6666666667vw;
}
.p-operations__text {
  margin-bottom: 4.7333333333vw;
}
.p-operations .p-scrollable__contents {
  position: relative;
  overflow-y: hidden;
  margin-bottom: 5.3333333333vw;
  padding-bottom: 0.2666666667vw;
  height: 72vw;
}
.p-operations__table {
  display: contents;
  writing-mode: vertical-lr;
  font-size: 1.2rem;
}
.p-operations__table th > *,
.p-operations__table td > * {
  writing-mode: horizontal-tb;
  width: 100%;
}
.p-operations__table th {
  text-align: center;
}
.p-operations__table thead,
.p-operations__table tbody {
  display: table;
  height: 100%;
  box-sizing: border-box;
  border-collapse: collapse;
}
.p-operations__table thead {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-operations__table thead th {
  width: 26.6666666667vw;
  line-height: 1.3333333333;
}
.p-operations__table tbody {
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 26.6666666667vw;
}
.p-operations__table tbody th,
.p-operations__table tbody td {
  line-height: 1.5;
}
.p-operations__table tbody td {
  width: 57.6vw;
}
.p-operations__check {
  margin-bottom: 10.6666666667vw;
}
.p-operations__check__contents {
  display: flex;
  flex-direction: column;
}
.p-operations__check__contents .p-operations__item {
  order: 99;
}
.p-operations__check__list {
  margin-bottom: 5.3333333333vw;
  background: #f4f2f0;
}
.p-operations__check__item {
  padding: 2.6666666667vw 4vw;
}
.p-operations__check__item + .p-operations__check__item {
  border-top: 0.2666666667vw solid #fff;
}
.p-operations__check__text {
  margin-bottom: 4.8666666667vw;
  line-height: 1.4666666667;
  font-size: 1.5rem;
  font-weight: bold;
}
.p-operations__check__link {
  margin-bottom: 8vw;
}
.p-operations__check__link a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 16vw;
  background: url(../../../img/sp/arrow2.png) right 6.4vw center no-repeat #c7bcb4;
  background-size: 3.7333333333vw auto;
  font-size: 1.6rem;
  color: #7e7774;
}
.p-operations__item.is-hide {
  display: none;
}
.p-operations__item.is-active {
  display: block;
}
.p-operations__item__text {
  padding: 1.3333333333vw 2.6666666667vw 3.4vw;
  line-height: 1.6;
  font-size: 1.5rem;
}
.p-operations__item__link {
  padding: 0 2.6666666667vw 4vw;
  text-align: right;
  font-size: 1.2rem;
}
.p-operations__item__link a {
  color: #6d9dd0;
}

.p-check__item {
  line-height: 2;
  font-size: 1.5rem;
}
.p-check__item label {
  display: flex;
  align-items: center;
}
.p-check__item input {
  position: relative;
  margin-right: 2.6666666667vw;
}
.p-check__item input::before {
  content: "";
  position: absolute;
  top: -2.4vw;
  right: -2.6666666667vw;
  bottom: -2.4vw;
  left: -2.6666666667vw;
  z-index: 1;
}

.p-recommend-operations {
  display: none;
}
.p-recommend-operations.is-active {
  display: block;
}
.p-recommend-operations__title {
  margin-bottom: 0;
}
.p-recommend-operations .p-operations__item.is-hide {
  display: none;
}

.p-other-operations__title {
  margin-bottom: 0;
}
.p-other-operations__item {
  border-bottom: 0.2666666667vw solid #c5bcb5;
}
.p-other-operations__item__inner {
  display: flex;
  position: relative;
  align-items: center;
  padding: 1.3333333333vw 0;
  background: url(../../../img/sp/arrow1.png) right center no-repeat;
  background-size: 3.7333333333vw auto;
}
.p-other-operations__item__pic {
  margin-right: 2.6666666667vw;
  width: 9.3333333333vw;
}
.p-other-operations__item__text a {
  line-height: 1.4666666667;
  font-size: 1.5rem;
  color: #7e7774;
}

.p-price {
  margin-bottom: 21.3333333333vw;
}
.p-price > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-price__title {
  margin-bottom: 8vw;
}
.p-price__text {
  margin-bottom: 4.8vw;
}
.p-price__text .small {
  font-size: 1rem;
}
.p-price__item {
  padding-left: 4vw;
  background: url(../../../img/sp/list_item_bg.png) 0 center no-repeat;
  background-size: 3.2vw auto;
  line-height: 1.7333333333;
  font-size: 1.5rem;
}
.p-price__link {
  margin-bottom: 10.0666666667vw;
}
.p-price__button {
  margin-top: 4.7333333333vw;
}
.p-price__list {
  border-top: 1px solid #d3cac3;
}
.p-price__list__item {
  width: 100%;
}
.p-price__list__item dl {
  display: flex;
  margin: 0;
  width: 100%;
  border-right: 1px solid #d3cac3;
  border-bottom: 1px solid #d3cac3;
  box-sizing: border-box;
}
.p-price__list__item dt,
.p-price__list__item dd {
  margin: 0;
  padding: 5px 10px;
  border-left: 1px solid #d3cac3;
  text-align: center;
  line-height: 1.5;
  font-size: 1.2rem;
}
.p-price__list__item dt {
  background: #f5f3f1;
}
.p-price__list__item dl {
  position: relative;
  align-items: center;
  border-right: 0;
}
.p-price__list__item dt {
  display: flex;
  align-items: center;
  align-self: stretch;
  padding: 2vw;
  width: 47.7333333333vw;
  border-right: 0.2666666667vw solid #d3cac3;
  border-left: 0;
  background: url(../../../img/sp/arrow3.png) right 1.4666666667vw center no-repeat #f5f3f1;
  background-size: 2.2666666667vw auto;
  text-align: left;
  box-sizing: border-box;
}
.p-price__list__item dt .pic {
  margin-right: 2.6666666667vw;
  width: 12vw;
}
.p-price__list__item dt .pic img {
  width: 100%;
  height: auto;
}
.p-price__list__item dt a {
  font-weight: bold;
  color: #7f7875;
}
.p-price__list__item dd {
  flex: 1;
  border: 0;
  line-height: 1.1666666667;
}
.p-price__list__item dd .tax-included {
  display: inline-block;
  font-size: 1rem;
}
.p-price__list__item .small {
  display: inline-block;
  font-size: 1rem;
}
.p-price .lead__notice {
  margin-top: 1rem;
  font-size: 1rem;
}
.p-price .lead__text {
  margin-bottom: 1.5rem;
  line-height: 1.75;
}

.p-cv-button.consultation a::after {
  content: "24時間以内に返答します";
}
.p-cv-button.counseling a::after {
  content: "ドクターによるカウンセリング。初診・再診ともに無料";
}

.p-flow {
  margin-bottom: 21.3333333333vw;
}
.p-flow > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-flow__title {
  margin-bottom: 8vw;
}
.p-flow__list {
  margin-bottom: 10.6666666667vw;
}
.p-flow__item:nth-child(1) .p-flow__contents__pic {
  margin-bottom: 5.3333333333vw;
}
.p-flow__button {
  clear: both;
}
.p-flow .js-accordion {
  margin-bottom: 8vw;
}
.p-flow .js-accordion__contents {
  position: relative;
  height: 88vw;
  max-height: 88vw;
}
.p-flow .js-accordion.is-open .js-load-more {
  display: none;
}
.p-flow .p-load-more {
  display: flex;
  position: absolute;
  right: 0;
  bottom: 0;
  align-items: center;
  justify-content: flex-end;
  padding-top: 6.6666666667vw;
  width: 100%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 80%);
  font-size: 1.2rem;
}
.p-flow .p-load-more::after {
  position: static;
  margin-left: 0.5em;
}

.p-after-service__title {
  margin-bottom: 7.4vw;
}
.p-after-service__contents {
  margin-top: 4.7333333333vw;
  margin-bottom: 4.7333333333vw;
  width: 28vw;
}
.p-after-service__contents__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-after-service__contents__text {
  margin-top: 1.3333333333vw;
  text-align: center;
  font-size: 1.2rem;
}
.p-after-service__link {
  margin-top: 3.4vw;
  text-align: right;
  font-size: 1.2rem;
}
.p-after-service__link a {
  color: #6d9dd0;
}

.p-downtime > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-downtime__title {
  margin-bottom: 7.4vw;
}
.p-downtime__text {
  margin-bottom: 3.4vw;
}
.p-downtime__link {
  margin-bottom: 10.6666666667vw;
  text-align: right;
  font-size: 1.2rem;
}
.p-downtime__link a {
  color: #6d9dd0;
}

.p-symptoms__text {
  margin-bottom: 4.7333333333vw;
}
.p-symptoms .pic1 {
  margin-bottom: 8vw;
}
.p-symptoms__contents {
  margin-bottom: 4.7333333333vw;
}
.p-symptoms__contents__title {
  margin-bottom: 3.4vw;
  padding-left: 4vw;
  background: url(../../../img/sp/list_item_bg.png) 0 center no-repeat;
  background-size: 3.2vw auto;
  font-size: 1.5rem;
  font-weight: bold;
}
.p-symptoms__contents__text {
  line-height: 1.6;
  font-size: 1.5rem;
}
.p-symptoms .pic2 {
  overflow-y: hidden;
}
.p-symptoms .pic2 img {
  max-width: none;
  height: 100%;
}
.p-symptoms.fat-injection .pic2 img {
  width: 214.6666666667vw;
}
.p-symptoms.liposuction .pic2 img {
  width: 214.6666666667vw;
}

.js-accordion__button {
  position: relative;
  cursor: pointer;
}
.js-accordion__contents {
  transition: all 0.4s ease-in;
  transform: rotate3d(0, 0, 0);
  overflow: hidden;
  height: 0;
  max-height: 0;
}
.js-accordion.is-open > .js-accordion__button::after {
  transform: rotate(180deg);
  will-change: rotate;
}
.js-accordion.is-open .js-accordion__contents {
  will-change: transform;
}
.js-accordion.is-open-initially .js-accordion__contents {
  transition-duration: 0s;
  height: auto;
  max-height: none;
}

.js-accordion__button::after {
  content: "";
  display: block;
  position: absolute;
  right: 2.6666666667vw;
  bottom: 2.4vw;
  z-index: 10;
  padding-top: 3.7333333333vw;
  width: 3.7333333333vw;
  background: url(../../../img/sp/arrow2.png) center no-repeat;
  background-size: cover;
  opacity: 1;
}

.p-faq {
  margin-bottom: 21.3333333333vw;
}
.p-faq__list {
  margin-bottom: 10.6666666667vw;
  border-top: 0.2666666667vw solid #d4d0ce;
}
.p-faq__list + .link {
  margin-top: 4.8vw;
}
.p-faq__contents__title {
  margin-bottom: 0;
}
.p-faq__link {
  margin-right: 5.3333333333vw;
  margin-bottom: 10.0666666667vw;
  margin-left: 5.3333333333vw;
}

.p-features {
  margin-bottom: 20.7333333333vw;
}
.p-features > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-features__title {
  margin-bottom: 8vw;
}

.p-column {
  margin-bottom: 21.3333333333vw;
}
.p-column > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-column__title {
  margin-bottom: 5.3333333333vw;
}
.p-column__item {
  display: flex;
  position: relative;
  padding: 2.6666666667vw 0;
  border-bottom: 0.2666666667vw dotted #c7bcb5;
}
.p-column__item__pic {
  order: 1;
  margin-right: 2.1333333333vw;
  width: 22.1333333333vw;
  border: 0.2666666667vw solid #baafa6;
}
.p-column__item__title {
  flex: 1;
  order: 2;
  padding-top: 3.4666666667vw;
  line-height: 1.4285714286;
  font-size: 1.4rem;
}
.p-column__item__title a {
  color: #7e7774;
}
.p-column__item__date {
  position: absolute;
  right: 0;
  bottom: 2.6666666667vw;
}

.p-sources {
  margin-bottom: 21.3333333333vw;
}
.p-sources > *:not([class*=title]) {
  margin-right: 5.3333333333vw;
  margin-left: 5.3333333333vw;
}
.p-sources__title {
  margin-bottom: 5.3333333333vw;
}

.p-clinic-summary {
  margin-bottom: 3.2vw;
}
.p-clinic-summary__map {
  position: relative;
  overflow: hidden;
  margin: 5.3333333333vw 0 4.5333333333vw;
  padding-top: 133.3333333333vw;
  width: 100%;
}
.p-clinic-summary__map > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 106.6666666667vw;
  height: 100%;
}

.webp .p-title {
  background-image: url(../../../img/sp/contents_breasts_title_bg.webp?v=2112);
}
.webp .p-operations__check__link a {
  background-image: url(../../../img/sp/arrow2.webp);
}
.webp .p-other-operations__item__inner {
  background-image: url(../../../img/sp/arrow1.webp);
}
.webp .p-price__item {
  background-image: url(../../../img/sp/list_item_bg.webp);
}
.webp .p-symptoms__contents__title {
  background-image: url(../../../img/sp/list_item_bg.webp);
}
.webp .js-accordion__button::after {
  background-image: url(../../../img/sp/arrow2.webp);
}
.webp .p-sources__item > a::before {
  background-image: url(../../../img/sp/arrow2.webp);
}
