@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;
  scroll-padding-top: 58px;
}

body {
  background: none;
}
body > .l-container {
  display: block;
  margin: 0;
  width: auto;
}
body > .l-container > .p-header {
  background: linear-gradient(#3a332c, #a69d94);
}
body > .l-container > .p-header .p-header__logo {
  position: relative;
}
body > .l-container > .p-header .p-header__inner {
  position: relative;
}
body > .l-container > .p-header .p-header__inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  right: 3px;
  bottom: 3px;
  left: 3px;
  background: linear-gradient(#90857c, #2b2722);
}
body > .l-container > .p-header .p-header__nav {
  width: 100%;
}
body > .l-container > .p-header::before {
  background: url(../../../img/h1_bg.gif) left top repeat-x #524840;
}
body > .l-container > .p-footer .p-footer__copyright {
  background: url(../../../img/copyright_bg.gif) center top no-repeat, linear-gradient(#a3978e, #84776e 25%, #665a50 50%, #4d433b 75%, #3a342e);
}
body .c-nav__list {
  margin: 0 auto;
  width: 988px;
}
body .c-fixed-contents,
body .c-fixed-contents.is-show {
  display: none;
}
body a:hover > * {
  opacity: 0.75;
}

.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) translateY(0);
}

@media (max-width: 750px) {
  .is-gsap .js-gsap-fade--top--sp {
    transform: translateY(30px);
  }
  .is-gsap .js-gsap-fade--right--sp {
    transform: translateX(30px);
  }
  .is-gsap .js-gsap-fade--bottom--sp {
    transform: translateY(-30px);
  }
  .is-gsap .js-gsap-fade--left--sp {
    transform: translateX(-30px);
  }
}
@media (min-width: 751px) {
  .is-gsap .js-gsap-fade--top--pc {
    transform: translateY(30px);
  }
  .is-gsap .js-gsap-fade--right--pc {
    transform: translateX(30px);
  }
  .is-gsap .js-gsap-fade--bottom--pc {
    transform: translateY(-30px);
  }
  .is-gsap .js-gsap-fade--left--pc {
    transform: translateX(-30px);
  }
}
.p-container {
  min-width: 1280px;
}

.p-main .p-cv {
  position: relative;
  justify-content: center;
  display: flex;
  background: #8f9ca4;
}
.p-main .p-cv__title {
  position: absolute;
  top: 73px;
  left: 50%;
  transform: translateX(-50%);
  padding-right: 80px;
  padding-left: 80px;
  box-sizing: border-box;
  width: 1280px;
  z-index: 1;
}
.p-main .p-cv__pic {
  position: relative;
}
.p-main .p-cv__pic::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 50vw;
  height: 100%;
  background: url(../../../img/troubles_muscle-lipo_cv_bg.png) 0 0 repeat-x;
}
.p-main .p-cv__button {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  padding-right: 80px;
  padding-left: 80px;
  box-sizing: border-box;
  width: 1280px;
  z-index: 1;
}
.p-main .p-cv__counseling {
  position: relative;
  background: #8f9ca4;
  padding: 32px 80px 32px 32px;
}
.p-main .p-cv .p-counseling {
  position: relative;
}
.p-main .p-cv .p-counseling__title {
  margin-bottom: 25px;
  margin-left: 27px;
}
.p-main .p-cv .p-counseling__list__item + .p-counseling__list__item {
  margin-top: 8px;
}
.p-main .p-cv .p-counseling__bg__pic {
  position: absolute;
}
.p-main .p-cv .p-counseling__bg .bg1 {
  top: 47px;
  right: 0;
}
.p-main .p-cv .p-counseling__bg .bg2 {
  right: 3px;
  bottom: 20px;
}
.p-main .p-cv.no2 .p-cv__pic::before, .p-main .p-cv.no4 .p-cv__pic::before {
  background-image: url(../../../img/troubles_muscle-lipo_cv_bg2.png);
}

.p-header {
  background: #34414b;
}

.p-hero {
  position: relative;
  background: url(../../../img/troubles_muscle-lipo_hero_bg.png) 0 0 repeat-x;
  height: 808px;
  padding-top: 175px;
  box-sizing: border-box;
}
.p-hero__pic {
  position: absolute;
  right: 0;
  top: 0;
  pointer-events: none;
}
.p-hero__logo {
  position: absolute;
  top: 34px;
  left: 34px;
  z-index: 1;
}
.p-hero__title, .p-hero__feature, .p-hero__cv__button {
  position: relative;
  z-index: 1;
  margin-right: auto;
  margin-left: auto;
  width: 1121px;
}
.p-hero__title {
  margin-bottom: 24px;
}
.p-hero__feature {
  display: flex;
  column-gap: 22px;
  margin-bottom: 36px;
}
.p-hero__cv__button {
  position: relative;
  z-index: 1;
  margin-left: px2vw(40);
  width: px2vw(469px);
}
.p-hero__bg__item {
  position: absolute;
}
.p-hero__bg .line {
  top: 0;
  left: 0;
  width: 50px;
  height: 286px;
  background: #d7fc35;
}
.p-hero__bg .text {
  top: 37px;
  right: 14px;
}
.p-hero__bg .pic1 {
  right: 0;
  bottom: 1px;
}
.p-hero__bg .pic2 {
  bottom: 22px;
  left: 12px;
}

.p-nav {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  width: 1280px;
  margin-right: auto;
  margin-left: auto;
}
.p-nav__list {
  display: flex;
  justify-content: center;
  height: 86px;
  width: 100%;
  padding-right: 80px;
  padding-left: 80px;
}
.p-nav__list__item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-basis: 16.6666666667%;
}
.p-nav__list__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.p-recommend {
  position: relative;
  background: #ebebeb;
  padding-top: 90px;
}
.p-recommend__title {
  position: relative;
  padding-top: 22px;
}
.p-recommend__title:before {
  content: "";
  display: block;
  position: absolute;
  top: 92px;
  left: 0;
  right: calc(50vw - 160px);
  height: 144px;
  background: #afbcc3;
}
.p-recommend__title__text {
  position: relative;
  text-align: center;
  z-index: 1;
}
.p-recommend__title__bg {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1248px;
  text-align: right;
}
.p-recommend__pic {
  text-align: center;
  margin-bottom: 88px;
}
.p-recommend__contents {
  padding-top: 92px;
  padding-bottom: 40px;
  background: url(../../../img/troubles_muscle-lipo_recommend_contents_bg.png) center top repeat-x #a2aeb4;
}
.p-recommend__text {
  padding-right: 277px;
  width: 921px;
  margin-top: -29px;
  margin-right: auto;
  margin-bottom: -46px;
  margin-left: auto;
}
.p-recommend__bg {
  position: absolute;
  right: 28px;
  bottom: 28px;
}
.p-recommend .swiper {
  perspective-origin: 50% 0%;
  width: 1120px;
  margin-right: auto;
  margin-left: auto;
}
.p-recommend .swiper-wrapper {
  margin-left: -26px;
}

.p-case {
  padding: 56px 0 80px;
  background: url(../../../img/troubles_muscle-lipo_needs_bg.png) 0 0 repeat;
  display: grid;
  justify-content: center;
  grid-template-columns: min-content min-content;
  grid-template-rows: min-content 1fr;
  column-gap: 80px;
}
.p-case__title {
  grid-column: 1/2;
  grid-row: 1/2;
}
.p-case__list {
  grid-column: 2/3;
  grid-row: 1/3;
  padding-top: 25px;
  padding-right: 40px;
  padding-bottom: 40px;
  overflow-y: scroll;
  height: 820px;
  mask-image: linear-gradient(transparent, #000 25px, #000 820px, transparent);
}
.p-case__list__item {
  margin-bottom: 32px;
  transform: none !important;
  opacity: 1 !important;
}
.p-case__info {
  grid-column: 1/2;
  grid-row: 2/3;
  color: #686868;
  margin-top: 24px;
  margin-left: 80px;
}
.p-case__info__title {
  margin-bottom: 1em;
  font-size: 1.1em;
  color: #7c919d;
}
.p-case__info table th {
  font-weight: bold;
  font-size: 1em;
  line-height: 1.5;
  vertical-align: top;
  width: 102px;
}
.p-case__info table td {
  font-size: 1em;
  line-height: 1.5;
}

.p-difference {
  padding-top: 70px;
  padding-bottom: 100px;
  background: #ebebeb;
  display: grid;
  justify-content: center;
  grid-template-columns: min-content min-content;
  grid-template-rows: min-content min-content min-content;
  column-gap: 65px;
  row-gap: 50px;
}
.p-difference__title {
  grid-column: 1/3;
  grid-row: 1/2;
  margin-bottom: 20px;
  text-align: center;
}
.p-difference__text {
  grid-column: 1/3;
  grid-row: 2/3;
  text-align: center;
}
.p-difference__pic {
  grid-column: 1/2;
  grid-row: 3/4;
  margin-top: 46px;
}
.p-difference__map {
  position: relative;
  grid-column: 2/3;
  grid-row: 3/4;
  margin-bottom: 14px;
}
.p-difference__map .pic2 {
  position: absolute;
  top: 53px;
  right: 53px;
}
.p-difference__contents__title, .p-difference__contents__text {
  margin-bottom: 24px;
  text-align: center;
}
.p-difference__contents__text {
  margin-bottom: 30px;
}
.p-difference__contents.no1 {
  grid-column: 1/3;
  grid-row: 4/5;
  margin-bottom: 14px;
}
.p-difference__contents.no1 .p-difference__contents__pic {
  position: relative;
  padding-top: 68px;
  margin-right: auto;
  margin-left: auto;
  height: 195px;
  width: 480px;
  box-sizing: border-box;
}
.p-difference__contents.no1 .p-difference__contents__pic .pic2,
.p-difference__contents.no1 .p-difference__contents__pic .pic3 {
  position: absolute;
  top: 0;
}
.p-difference__contents.no1 .p-difference__contents__pic .pic2 {
  right: 200px;
}
.p-difference__contents.no1 .p-difference__contents__pic .pic3 {
  right: 0;
}
.p-difference__contents.no2 {
  grid-column: 1/3;
  grid-row: 5/6;
}

.p-feature {
  position: relative;
  padding-top: 62px;
  padding-bottom: 48px;
  background: url(../../../img/troubles_muscle-lipo_feature_bg.jpg) center top/cover no-repeat;
}
.p-feature > * {
  position: relative;
  width: 1120px;
  margin-right: auto;
  margin-left: auto;
}
.p-feature__title {
  position: relative;
  margin-bottom: 24px;
}
.p-feature__title::before {
  content: "";
  display: block;
  position: absolute;
  left: 53%;
  bottom: 0;
  width: calc(100vw - 955px);
  max-width: 904px;
  border-bottom: 1px solid #000;
  transform: translateX(-50%);
}
.p-feature__list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.p-feature__option {
  margin-bottom: 48px;
}
.p-feature__text {
  text-align: center;
}

.p-needs {
  padding-top: 100px;
}
.p-needs__lead {
  position: relative;
  z-index: 1;
  text-align: center;
}
.p-needs__lead__pic {
  display: flex;
  justify-content: space-between;
  background: url(../../../img/troubles_muscle-lipo_needs_lead_pic_bg.png) center no-repeat;
  margin-bottom: 24px;
  margin-right: auto;
  margin-left: auto;
  width: 465px;
}
.p-needs__lead__pic .p-pic__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 194px;
  height: 194px;
  border: 1px solid #7b919e;
  border-radius: 100%;
}
.p-needs__lead__text {
  text-align: center;
  margin-bottom: 16px;
}
.p-needs__lead__text .text1 {
  margin-bottom: 11px;
}
.p-needs__lead__text .text2 {
  position: relative;
  width: 431px;
  margin-right: auto;
  margin-left: auto;
}
.p-needs__lead__text .text2 img {
  position: absolute;
  z-index: 1;
  top: 3px;
  left: 9px;
}
.p-needs__lead__text .text2::after {
  content: "";
  display: block;
  width: 431px;
  height: 41px;
  background: #7c919d;
  transform: skewX(-20deg);
}
.p-needs__list {
  position: relative;
  margin-top: -156px;
  display: flex;
  justify-content: center;
  padding-top: 256px;
  padding-bottom: 160px;
  column-gap: 57px;
  background: url(../../../img/troubles_muscle-lipo_needs_bg2.png) center bottom repeat-x, url(../../../img/troubles_muscle-lipo_needs_bg.png) center bottom repeat;
}
.p-needs__list::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background: #fff;
  height: 156px;
  min-width: 1282px;
}
.p-needs__list__item + .p-needs__list__item {
  margin-top: px2vw(80);
}
.p-needs__item {
  width: 335px;
}
.p-needs__item > * {
  margin-right: px2vw(40);
  margin-left: px2vw(40);
}
.p-needs__item__title {
  display: flex;
  column-gap: 4px;
  align-items: center;
  margin-bottom: 10px;
}
.p-needs .no3 .p-needs__item__pic {
  margin-left: -31px;
}

.p-usp {
  background: #ebebeb;
  padding-right: 80px;
  padding-bottom: 80px;
  padding-left: 80px;
}
.p-usp__title {
  margin-bottom: 32px;
  text-align: right;
}
.p-usp__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 770px;
  margin-right: auto;
  margin-left: auto;
}

.p-price {
  position: relative;
  padding: 110px 0 80px;
  background: #ebebeb;
}
.p-price__title {
  margin-bottom: 70px;
  padding-left: 37px;
  text-align: center;
}
.p-price__table {
  margin-bottom: 12px;
  text-align: center;
}
.p-price__counseling {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 70px;
  width: 920px;
  text-align: center;
}
.p-price__counseling__button {
  margin-top: 24px;
  text-align: right;
}
.p-price__service {
  margin-bottom: 40px;
}
.p-price__service__title {
  margin-bottom: 40px;
  text-align: center;
}
.p-price__service__item {
  margin: 0 auto;
  text-align: right;
  width: 920px;
}
.p-price__service__item__title {
  margin-bottom: 15px;
  pointer-events: none;
}
.p-price__service__item + .p-price__service__item {
  margin-top: 32px;
}
.p-price__feature__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  width: 920px;
}
.p-price__bg {
  position: absolute;
  top: 80px;
  left: 0;
}

.p-payment {
  position: relative;
  padding: 30px 0 160px;
  background: #ebebeb;
}
.p-payment__title {
  margin-bottom: 70px;
  padding-left: 37px;
  text-align: center;
}
.p-payment__text {
  margin-bottom: 50px;
  text-align: center;
  line-height: 1.5714285714;
  font-size: 14px;
  color: #686868;
}
.p-payment__list {
  margin: 0 auto;
  width: 800px;
  border-bottom: 1px solid #a8b9c1;
}
.p-payment__list__item {
  display: list-item;
  border-top: 1px solid #a8b9c1;
  padding: 14px 0 14px 8px;
  color: #605547;
}
.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: 142px;
}
.p-payment__list__item .item-text {
  line-height: 1.5714285714;
  font-size: 14px;
  vertical-align: middle;
}
.p-payment__list__item .item-text .small-text {
  font-size: 11px;
}
.p-payment__list__item:nth-child(3) > picture img {
  margin-left: 140px;
}
.p-payment__list__item:nth-child(3) .item-text {
  display: flex;
  align-items: center;
}
.p-payment__list__item:nth-child(3) .item-text .small-text {
  margin-left: 15px;
}
.p-payment__list__item:last-child .item-text > .small-text {
  display: block;
  margin-top: 5px;
}
.p-payment__list__item:last-child .item-text dl {
  margin-top: 10px;
  line-height: 1.3571428571;
  font-size: 13px;
}
.p-payment__list__item:last-child .item-text ul {
  margin-left: 15px;
}
.p-payment__list__item:last-child .item-text li {
  padding: 0;
  line-height: 1.6;
  font-size: 13px;
  list-style-type: decimal;
}
.p-payment__list__item:last-child .item-text li .small-text {
  display: inline-block;
  margin: 0;
  font-size: 11px;
}
.p-payment__list__item:last-child .item-text li p {
  line-height: 1.6;
  font-size: 11px;
}
.p-payment__list__item:last-child .item-text li p::before {
  content: "◇";
}
.p-payment__list__item:last-child .item-text li + li {
  margin-top: 5px;
}
.p-payment__bg {
  position: absolute;
  top: 0;
  left: 0;
}

.p-faq {
  padding: 80px 0 160px;
  background: url(../../../img/troubles_muscle-lipo_faq_bg2.png) center bottom repeat-x, url(../../../img/troubles_muscle-lipo_needs_bg.png) center bottom repeat;
}
.p-faq__title {
  text-align: center;
  margin-bottom: 64px;
}
.p-faq__list {
  margin-right: auto;
  margin-left: auto;
  width: 1120px;
}
.p-faq__list__item {
  justify-content: space-between;
  display: flex;
}
.p-faq__list__item + .p-faq__list__item {
  margin-top: 64px;
}
.p-faq__question {
  position: relative;
}
.p-faq__question__pic {
  position: absolute;
  top: 0;
  left: 0;
}
.p-faq__answer {
  position: relative;
  margin-top: 25px;
}
.p-faq__answer__pic {
  position: absolute;
  top: -22px;
  right: 21px;
}

.p-clinic {
  padding: 60px 0 100px;
}
.p-clinic__title {
  margin-bottom: 70px;
  text-align: center;
}
.p-clinic__pic {
  margin-bottom: 30px;
  text-align: center;
}
.p-clinic__pic__text {
  display: block;
  margin-top: 14px;
  text-align: center;
  font-size: 12px;
  color: #7f7875;
}
.p-clinic__tel {
  position: absolute;
  top: 98px;
  left: 88px;
}
.p-clinic__tel .ja {
  margin: 7px 0 10px;
}
.p-clinic__tel .en {
  color: #7f7875;
  font-size: 12px;
}
.p-clinic__tel .en a {
  color: #7f7875;
  font-size: 12px;
  text-decoration: none;
}
.p-clinic__map {
  position: absolute;
  top: 180px;
  left: 0;
  right: 0;
  width: 100%;
}
.p-clinic__map__inner {
  position: relative;
  width: 239px;
  height: 247px;
  margin: 0 auto;
  overflow: hidden;
}
.p-clinic__map__inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: hidden;
  margin: 0;
  min-width: 400px;
  min-height: 247px;
  width: 100%;
  height: 455px;
  border: none;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.p-clinic__map__button {
  width: 100%;
  position: absolute;
  bottom: 22px;
  left: 0;
  right: 0;
  z-index: 1;
}
.p-clinic__map__button a {
  display: block;
  width: 239px;
  margin: 0 auto;
}
.p-clinic .swiper {
  width: 100%;
}
.p-clinic .swiper-wrapper {
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  width: 1220px;
  transform: none !important;
}
.p-clinic .swiper-slide {
  position: relative;
  margin: 10px;
  width: 285px;
  border-radius: 20px;
  box-shadow: 0 0 6px rgba(0,0,0,.3);
}
.p-clinic .swiper-slide.tokyo {
  order: 1;
}
.p-clinic .swiper-slide.nagoya {
  order: 2;
}
.p-clinic .swiper-slide.osaka {
  order: 3;
}
.p-clinic .swiper-slide.osaka .p-clinic__map__inner {
  height: 267px;
}
.p-clinic .swiper-slide.osaka .p-clinic__map__inner iframe {
  height: 475px;
}
.p-clinic .swiper-slide.hiroshima {
  order: 4;
  margin-top: 10px;
}
.p-clinic .swiper-slide.fukuoka {
  order: 5;
  margin-top: 10px;
}

.p-privacypolicy {
  padding-bottom: 70px;
}
.p-privacypolicy__title {
  position: relative;
  margin: 0 auto;
  padding-bottom: 20px;
  width: 335px;
}
.p-privacypolicy__title::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 6px;
  background: url(../../../img/troubles_curves-lipo_privacypolicy_arrow.png) center no-repeat;
  background-size: auto 100%;
}
.p-privacypolicy__contents {
  margin: 50px 60px 0;
  text-align: justify;
}
.p-privacypolicy__contents__box {
  margin: 30px 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: 10px;
  font-size: 12px;
  font-weight: bold;
}
.p-privacypolicy__contents__box p {
  line-height: 1.5;
  font-size: 10px;
}
.p-privacypolicy__contents__box ul {
  margin: 10px 0;
}
.p-privacypolicy__contents__box li {
  padding-left: 20px;
  text-indent: -20px;
  line-height: 1.5;
  font-size: 10px;
}
.p-privacypolicy__contents__box .reception {
  margin-top: 10px;
  padding-left: 10px;
  line-height: 1.5;
  font-size: 10px;
}
.p-privacypolicy__contents__box .reception-title {
  text-indent: -10px;
}
.p-privacypolicy__contents__box .reception-tel > * {
  display: inline-block;
  padding-top: 4px;
}
.p-privacypolicy__contents__box .reception-tel-contents {
  text-indent: -0.5px;
}
.p-privacypolicy__contents__box .reception-tel-contents a {
  color: #5d5d5d;
}
.p-privacypolicy.is-opened .p-privacypolicy__title::before {
  transform: rotate(180deg);
}

.js-details .js-summary {
  display: block;
  list-style: none;
}
.js-details .js-summary::-webkit-details-marker {
  display: none;
}
.js-details .js-content {
  overflow: hidden;
}
/*# sourceMappingURL=muscle-lipo.css.map */
