@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--fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@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: 17.6vw;
}

.p-hero {
  position: relative;
}
.p-hero__logo {
  position: absolute;
  top: 66.6666666667vw;
  left: 6.6666666667vw;
  width: 85.3333333333vw;
  z-index: 1;
}
.p-hero__feature {
  display: flex;
  justify-content: center;
  position: absolute;
  top: 96.4vw;
  left: 0;
  width: 100%;
}
.p-hero__feature__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 37.3333333333vw;
  height: 28.8vw;
}
.p-hero__feature__item:nth-child(2) {
  margin-right: -6.9333333333vw;
  margin-left: -6.9333333333vw;
}
.p-hero__feature__item.no2 .emphasis {
  line-height: 1.064516129;
  font-size: 1.55rem;
}
.p-hero__feature__text {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 1.15rem;
  color: #4f4c4b;
}
.p-hero__feature__text .emphasis {
  display: inline-block;
  margin-top: 0.8vw;
  margin-bottom: 0.8vw;
  font-weight: bold;
  font-size: 1.75rem;
}
.p-hero__feature__bg {
  position: absolute;
  top: 0;
  left: 0;
}
.p-hero__cv .p-cv__button {
  width: 100%;
}
.p-hero__menu__button {
  position: absolute;
  top: 5.3333333333vw;
  left: 5.3333333333vw;
}

.p-contents__title {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  text-align: center;
}
.p-contents__title::before {
  content: '';
  display: block;
  width: 0;
  height: 21.3333333333vw;
  margin-right: auto;
  margin-bottom: 3.2vw;
  margin-left: auto;
  border-right: 0.2666666667vw solid #d2ba9c;
}
.p-contents__title__text {
  margin-bottom: 2.4vw;
  font-size: 3.5rem;
  color: #000;
}
.p-contents__title__en {
  font-size: 1.55rem;
  color: #cfa8a8;
}

.p-lead {
  position: relative;
  padding-bottom: 19.2vw;
}
.p-lead__title {
  padding-top: 18.4vw;
  margin-bottom: 8.2666666667vw;
  text-align: center;
  line-height: 1.2307692308;
  font-size: 2.6rem;
  color: #303030;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
}
.p-lead__list {
  margin-left: 8vw;
  margin-bottom: 15.6vw;
  padding-bottom: 20.4vw;
}
.p-lead__item {
  display: flex;
  align-items: center;
  column-gap: 1.0666666667vw;
  font-size: 1.5rem;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #303030;
}
.p-lead__item img {
  width: 8vw;
  margin-right: 0.2666666667vw;
}
.p-lead__item em {
  padding: 1.2vw;
  font-size: 1.5rem;
  color: #faefec;
  background: rgba(188, 47, 81, 0.5);
  font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", HiraKakuProN, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: bold;
}
.p-lead__item + .p-lead__item {
  margin-top: 1.6vw;
}
.p-lead__text {
  margin-bottom: 9.0666666667vw;
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.8285714286;
  font-size: 1.75rem;
  color: #303030;
}
.p-lead__text .emphasis {
  position: relative;
}
.p-lead__text .emphasis::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  z-index: -1;
  display: block;
  width: 100%;
  height: 0.8vw;
  background: #e2b7b7;
  border-radius: 0.8vw;
}
.p-lead__attention__text {
  line-height: 1.3714285714;
  font-size: 1.75rem;
}
.p-lead__attention__text .emphasis {
  display: block;
  line-height: 1.3725490196;
  font-size: 2.55rem;
}
.p-lead__bg > * {
  position: absolute;
  z-index: -1;
}
.p-lead__bg .bg1 {
  top: 0;
  left: 0;
}
.p-lead__bg .bg2 {
  bottom: 0;
  left: 0;
}

.p-case {
  padding: 21.0666666667vw 0 40.2666666667vw;
}
.p-case__title {
  position: relative;
  z-index: 1;
  margin-bottom: 9.6vw;
}
.p-case__title .small {
  line-height: 1.375;
  font-size: 2rem;
}
.p-case__list {
  position: relative;
  padding-top: 8vw;
  padding-right: 4.2666666667vw;
  padding-left: 9.4666666667vw;
  padding-bottom: 12.5333333333vw;
}
.p-case__list__item + .p-case__list__item {
  margin-top: 4.4vw;
}
.p-case__list::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: -1;
  display: block;
  width: 77.3333333333vw;
  background: rgba(210, 168, 164, 0.6);
}
.p-case__more {
  margin-bottom: 5.7333333333vw;
}
.p-case__more__title {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  column-gap: 2.2666666667vw;
  font-size: 1.25rem;
  margin-top: 4.8vw;
  margin-right: 0;
  margin-left: auto;
  width: 36.4vw;
  height: 9.7333333333vw;
  padding-right: 3.4666666667vw;
  background: rgba(210, 168, 164, 0.6);
  color: #4c4948;
  font-weight: bold;
  border-radius: 9.7333333333vw 0 0 9.7333333333vw;
}
.p-case__more__title img {
  width: 4.1333333333vw;
}
.p-case__more.is-opened .p-case__more__title {
  display: none;
}
.p-case__more.is-opened + .p-case__info {
  margin-top: 5.3333333333vw;
}
.p-case__more.is-opened .js-content {
  overflow: visible;
}
.p-case__more .p-case__list {
  padding-top: 0;
  margin-top: -8.1333333333vw;
}
.p-case__more .p-case__list::after {
  top: 8.1333333333vw;
}
.p-case__option {
  margin-bottom: 5.8666666667vw;
  text-align: center;
}
.p-case__option__title {
  display: inline-block;
  margin-bottom: 2.6666666667vw;
  line-height: 1.2105263158;
  font-size: 1.9rem;
  color: #4c4948;
  border-bottom: 0.9333333333vw solid rgba(188, 47, 81, 0.7);
}
.p-case__option__title .en {
  line-height: 2.0357142857;
  font-size: 1.4rem;
  font-weight: bold;
  color: rgba(188, 47, 81, 0.5);
}
.p-case__option__title .emphasis {
  font-weight: bold;
  color: #b13257;
}
.p-case__option__pic {
  margin-right: auto;
  margin-left: auto;
  width: 87.6vw;
}
.p-case__info {
  color: #a08980;
  border: 0.2666666667vw solid #d7d2cd;
  margin-right: 3.0666666667vw;
  margin-left: 3.0666666667vw;
  padding: 3.4666666667vw 3.2vw;
  font-size: 0.95rem;
}
.p-case__info__title {
  margin-bottom: 1em;
  font-weight: bold;
}
.p-case__info table th {
  vertical-align: top;
  width: 23.4666666667vw;
  text-align-last: justify;
}
.p-case__info table td {
  line-height: 1.4736842105;
}

.p-cv {
  background: #dfd8d3;
}
.p-cv__button {
  width: 44.6666666667vw;
}
.p-cv__button__wrapper {
  display: flex;
  justify-content: space-between;
  padding: 4vw 4.5333333333vw;
}
.p-cv__details__contents {
  display: flex;
  border-top: 0.2666666667vw solid #b4afac;
}
.p-cv__details__text {
  padding: 2.1333333333vw 7.4666666667vw;
  font-size: 1.2rem;
  color: #62605e;
  font-weight: bold;
}
.p-cv__details__text + .p-cv__details__text {
  border-left: 0.2666666667vw solid #b4afac;
}
.p-cv__details__text .emphasis {
  margin: 0 .25rem;
  font-size: 2rem;
  color: #c86a81;
  font-weight: bold;
}
.p-cv__details__text .small {
  font-weight: normal;
  font-size: 0.95rem;
}
.p-cv__details__text > .small {
  display: block;
  color: #a08980;
  text-align: right;
  line-height: 1.3684210526;
}
.p-cv__details .no3 {
  justify-content: flex-end;
}
.p-cv__details .no3 .p-cv__details__text {
  padding-right: 2.1333333333vw;
}
.p-cv__present {
  padding-top: 8vw;
  padding-bottom: 5.3333333333vw;
  background: #f0edea;
}
.p-cv__present__title {
  display: flex;
  align-items: center;
  column-gap: 2.4vw;
  margin-right: 6.6666666667vw;
  margin-left: 6.6666666667vw;
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 2.6666666667vw;
}
.p-cv__present__title::before, .p-cv__present__title::after {
  content: '';
  display: block;
  height: 0.2666666667vw;
  width: 100%;
}
.p-cv__present__title::before {
  background: linear-gradient(to right, #c79d52, #ffdd80);
}
.p-cv__present__title::after {
  background: linear-gradient(to left, #c79d52, #ffdd80);
}
.p-cv__present__lead {
  margin-bottom: 5.3333333333vw;
  text-align: center;
  font-weight: bold;
  font-size: 1.2rem;
}
.p-cv__present__lead .lg {
  display: block;
  margin-top: 2.1333333333vw;
  font-weight: bold;
  font-size: 1.65rem;
}
.p-cv__present__lead .lg > * {
  font-weight: bold;
}
.p-cv__present__lead .lg .small {
  font-size: 1.05rem;
}
.p-cv__present__lead .emphasis {
  font-weight: bold;
  color: #c86a81;
}
.p-cv__present__lead .line {
  position: relative;
}
.p-cv__present__lead .line::after {
  position: absolute;
  right: 0;
  bottom: -0.9333333333vw;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 0.9333333333vw;
  background: #e0b5b5;
  transform: skewX(-45deg);
}
.p-cv__present__pic, .p-cv__present__text, .p-cv__present__movie {
  margin-right: 6.6666666667vw;
  margin-left: 6.6666666667vw;
}
.p-cv__present__pic {
  margin-bottom: 2vw;
}
.p-cv__present__text {
  line-height: 1.4583333333;
  font-size: 1.2rem;
  margin-bottom: 2vw;
}
.p-cv__present__movie {
  position: relative;
  padding-top: 48.8vw;
}
.p-cv__present__movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-cv__exo {
  display: flex;
  flex-wrap: wrap;
  background: #f0edea;
  padding-bottom: 10.6666666667vw;
}
.p-cv__exo__contents {
  order: 2;
  flex: 1;
}
.p-cv__exo__title {
  margin-top: 2.1333333333vw;
  margin-bottom: 5.0666666667vw;
  font-size: 1.2rem;
  font-weight: bold;
}
.p-cv__exo__title .emphasis {
  display: block;
  margin-top: 1.6vw;
  font-size: 1.4rem;
  font-weight: bold;
}
.p-cv__exo__text {
  margin-right: 6.6666666667vw;
  line-height: 1.4583333333;
  font-size: 1.2rem;
}
.p-cv__exo__text .emphasis {
  color: #c86a81;
}
.p-cv__exo__pic {
  order: 1;
  width: 38.6666666667vw;
}
.p-cv__exo__details {
  order: 3;
  margin-right: 6.6666666667vw;
  margin-left: 6.6666666667vw;
}

.p-exo__details {
  padding: 5.3333333333vw 6.1333333333vw;
  border: 0.2666666667vw solid #b4afad;
  border-radius: 3.3333333333vw;
  background: #ded8d2;
  color: #62605e;
  font-size: 1.2rem;
  width: 100%;
}
.p-exo__details__title {
  margin-bottom: 2.9333333333vw;
  font-weight: bold;
}
.p-exo__details__item {
  line-height: 1.5833333333;
}
.p-exo__details__item::before {
  content: '●';
  color: #d98f8f;
  margin-right: 0.25em;
}
.p-exo__details__item .small {
  display: block;
  text-align: right;
  font-size: 0.95rem;
}

.p-troubles {
  position: relative;
  background: #faf6f6;
  padding-top: 1.6vw;
  padding-bottom: 13.3333333333vw;
}
.p-troubles::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 100%;
  right: 0;
  height: 23.7333333333vw;
  background: rgba(210, 168, 164, 0.1);
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.p-troubles__title {
  position: relative;
  z-index: 1;
  margin-top: -23.7333333333vw;
  margin-bottom: 15.4666666667vw;
}
.p-troubles__title .small {
  line-height: 1.375;
  font-size: 2rem;
}
.p-troubles__contents {
  margin-bottom: 4.2666666667vw;
}
.p-troubles__contents__wrapper {
  position: relative;
  height: 46.5333333333vw;
  margin-left: 6.4vw;
}
.p-troubles__contents__wrapper + .p-troubles__contents__wrapper {
  margin-top: 1.3333333333vw;
}
.p-troubles__contents__title {
  display: flex;
  align-items: center;
  column-gap: 1.6vw;
  font-size: 1.7rem;
  font-weight: bold;
  color: #d07e87;
  margin-bottom: 2.1333333333vw;
}
.p-troubles__contents__title .icon {
  width: 6vw;
}
.p-troubles__contents__text {
  position: relative;
  z-index: 1;
  line-height: 1.5925925926;
  font-size: 1.35rem;
  color: #686868;
  width: 48vw;
}
.p-troubles__contents__pic {
  position: absolute;
  top: 0;
  right: 0;
  width: 49.2vw;
}
.p-troubles__resolve {
  margin-top: 9.3333333333vw;
  margin-right: 6.4vw;
  margin-left: 6.4vw;
}
.p-troubles__resolve__title {
  text-align: center;
  line-height: 2.2222222222;
  font-size: 1.35rem;
  color: #4c4948;
  margin-bottom: 3.2vw;
}
.p-troubles__resolve__title .xlg {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.2;
  font-size: 3rem;
}
.p-troubles__resolve__title .xlg .emphasis {
  font-weight: bold;
  color: rgba(188, 47, 81, 0.8);
}
.p-troubles__resolve__title .lg {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.5319148936;
  font-size: 2.35rem;
}
.p-troubles__resolve__text {
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
  text-align: justify;
}

.p-attention__text {
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #4c4948;
}
.p-attention__pic {
  margin-right: auto;
  margin-left: auto;
  width: 5.6vw;
}

.p-reason {
  position: relative;
  background: #faf6f6;
  padding-bottom: 12.6666666667vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-reason > *:not(.p-reason__bg) {
  position: relative;
  z-index: 1;
}
.p-reason__title {
  padding: 4vw 0 0 6.6666666667vw;
  margin-bottom: 4.2666666667vw;
  width: 100%;
  height: 20.9333333333vw;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #4c4948;
}
.p-reason__title .title-inner {
  font-size: 1.5rem;
  line-height: 1.3333333333;
}
.p-reason__title .emphasis {
  align-self: flex-end;
  padding-right: 5.8666666667vw;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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: 2.55rem;
  display: flex;
  align-items: flex-end;
  padding-bottom: 3.3333333333vw;
  box-sizing: border-box;
}
.p-reason__title .emphasis .xlg {
  font-size: 5rem;
}
.p-reason__title .emphasis .lg {
  font-size: 2.95rem;
}
.p-reason__title__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.p-reason__contents {
  display: flex;
  flex-direction: column;
  width: 32.2666666667vw;
}
.p-reason__contents__title {
  order: 2;
  text-align: center;
  margin: -1.8666666667vw 0 0;
}
.p-reason__contents__title__pic {
  margin: 0 auto 1.8666666667vw;
  width: 19.8666666667vw;
  height: 19.7333333333vw;
}
.p-reason__contents__title__text {
  border-bottom: 0.2666666667vw dashed #8f8c8a;
  display: block;
  padding-bottom: 2vw;
  line-height: 1.0571428571;
  font-size: 1.75rem;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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-weight: bold;
  color: #34312f;
}
.p-reason__contents__pic {
  order: 1;
}
.p-reason__contents.reason3 .m-reason-contents__title {
  margin-top: -2.5vw;
}
.p-reason__text {
  margin: 2.6666666667vw 7.2vw;
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-reason__attention {
  width: 100%;
}
.p-reason__attention__text {
  font-size: 2.55rem;
  line-height: 1.3725490196;
}
.p-reason__attention__text img {
  width: 33.8666666667vw;
}
.p-reason__attention__pic {
  margin-top: 1.8666666667vw;
}
.p-reason__bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-needs {
  padding-top: 17.3333333333vw;
  overflow: hidden;
}
.p-needs__title {
  font-size: 2.1rem;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #59504d;
  margin-bottom: 4.6666666667vw;
}
.p-needs__title .emphasis {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 2.6666666667vw;
  color: #a37474;
  margin-top: 2.4vw;
}
.p-needs__title .emphasis .circle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33.8666666667vw;
  height: 33.8666666667vw;
  background: linear-gradient(to bottom, transparent, transparent 12.9333333333vw, #e2b7b7 12.9333333333vw, #e2b7b7 21.4666666667vw, transparent 21.4666666667vw, transparent);
  border-radius: 100%;
  overflow: hidden;
  color: #59504d;
}
.p-needs__title .emphasis .circle::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: radial-gradient(33.8666666667vw 33.8666666667vw, #e2b7b7 0%, #e2b7b7 12vw, #ffffff 12vw, #ffffff 12.4vw, #e2b7b7 12.4vw, #e2b7b7 16.9333333333vw);
}
.p-needs__title .lg {
  line-height: 1.4791666667;
  font-size: 2.4rem;
}
.p-needs__title .xlg {
  line-height: 1.1818181818;
  font-size: 2.75rem;
  position: relative;
}
.p-needs__title .xlg::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  z-index: -1;
  display: block;
  width: 100%;
  height: 0.8vw;
  background: #e2b7b7;
  border-radius: 0.8vw;
}
.p-needs__list {
  position: relative;
  padding-top: 9.3333333333vw;
  padding-bottom: 43.4666666667vw;
  background: #fbf7f6;
}
.p-needs__list__item + .p-needs__list__item {
  margin-top: 10.6666666667vw;
}
.p-needs__list__item:nth-child(odd) .p-needs__item__pic {
  margin-right: 0;
  margin-left: auto;
}
.p-needs__list__item:nth-child(even) .p-needs__item__pic {
  margin-right: auto;
  margin-left: 0;
}
.p-needs__list::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 10.4vw;
  background: #fff;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.p-needs__item {
  position: relative;
  z-index: 1;
}
.p-needs__item::after {
  content: '';
  position: absolute;
  z-index: -1;
  display: block;
  background: rgba(210, 168, 164, 0.2);
}
.p-needs__item__title {
  width: 100%;
}
.p-needs__contents__lead {
  margin-bottom: 8vw;
  font-size: 1.2rem;
  color: #4c4948;
}
.p-needs__contents__title {
  position: relative;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #4c4948;
}
.p-needs__contents__title::after {
  position: absolute;
  z-index: -1;
  content: '';
  display: block;
  background: rgba(208, 166, 162, 0.8);
}
.p-needs__contents__text {
  text-align: justify;
}
.p-needs .no1 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 21.3333333333vw;
}
.p-needs .no1::after {
  top: 15.7333333333vw;
  left: 0;
  width: 77.7333333333vw;
  height: 104vw;
}
.p-needs .no1 .p-needs__item__title {
  margin-bottom: 2.6666666667vw;
}
.p-needs .no1 .p-needs__item__title img {
  width: 89.3333333333vw;
  margin-left: 5.2vw;
}
.p-needs .no1 .p-needs__item__contents {
  order: 1;
  flex: 1;
}
.p-needs .no1 .p-needs__item__pic {
  width: 40.6666666667vw;
  margin-left: 4vw;
}
.p-needs .no1 .p-needs__contents__lead, .p-needs .no1 .p-needs__contents__text {
  padding-left: 3.2vw;
}
.p-needs .no1 .p-needs__contents__title {
  margin-bottom: 4vw;
  line-height: 1.1923076923;
  font-size: 2.6rem;
  letter-spacing: -3px;
}
.p-needs .no1 .p-needs__contents__title::after {
  top: -4.8vw;
  right: 0;
  width: 52vw;
  height: 17.0666666667vw;
}
.p-needs .no1 .p-needs__contents__text {
  margin-right: 6.6666666667vw;
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-needs .no2 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 18.4vw;
}
.p-needs .no2::after {
  top: 12.6666666667vw;
  right: 0;
  width: 77.7333333333vw;
  height: 77.6vw;
}
.p-needs .no2 .p-needs__item__title {
  margin-bottom: 5.0666666667vw;
}
.p-needs .no2 .p-needs__item__title img {
  width: 64.8vw;
  margin-left: 25.0666666667vw;
}
.p-needs .no2 .p-needs__item__contents {
  flex: 1;
}
.p-needs .no2 .p-needs__item__pic {
  width: 35.2vw;
  margin-top: 17.0666666667vw;
}
.p-needs .no2 .p-needs__contents__lead, .p-needs .no2 .p-needs__contents__title, .p-needs .no2 .p-needs__contents__text {
  padding-left: 6.6666666667vw;
}
.p-needs .no2 .p-needs__contents__title {
  margin-bottom: 6.6666666667vw;
  line-height: 1.2222222222;
  font-size: 1.8rem;
}
.p-needs .no2 .p-needs__contents__title .emphasis {
  font-size: 2.9rem;
}
.p-needs .no2 .p-needs__contents__title::after {
  top: -4.5333333333vw;
  left: 0;
  width: 64vw;
  height: 15.7333333333vw;
}
.p-needs .no2 .p-needs__contents__text {
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-needs .no3 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 21.3333333333vw;
}
.p-needs .no3::after {
  top: 15.7333333333vw;
  left: 0;
  width: 77.7333333333vw;
  height: 81.3333333333vw;
}
.p-needs .no3 .p-needs__item__title {
  margin-bottom: 3.7333333333vw;
}
.p-needs .no3 .p-needs__item__title img {
  width: 90.1333333333vw;
  margin-left: 4.9333333333vw;
}
.p-needs .no3 .p-needs__item__contents {
  order: 1;
  flex: 1;
}
.p-needs .no3 .p-needs__item__pic {
  width: 35.3333333333vw;
  margin-top: 13.3333333333vw;
}
.p-needs .no3 .p-needs__contents__lead, .p-needs .no3 .p-needs__contents__text {
  padding-left: 0.5333333333vw;
}
.p-needs .no3 .p-needs__contents__title {
  margin-bottom: 4vw;
  padding-left: 6.6666666667vw;
  line-height: 1.2222222222;
  font-size: 1.8rem;
}
.p-needs .no3 .p-needs__contents__title .emphasis {
  font-size: 2.9rem;
}
.p-needs .no3 .p-needs__contents__title::after {
  top: -4.8vw;
  right: 0;
  width: 64vw;
  height: 15.7333333333vw;
}
.p-needs .no3 .p-needs__contents__text {
  margin-right: 6.6666666667vw;
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-needs .no4::after {
  top: 16vw;
  right: 0;
  width: 77.7333333333vw;
  height: 84vw;
}
.p-needs .no4 .p-needs__item__title {
  margin-bottom: -10.6666666667vw;
}
.p-needs .no4 .p-needs__item__title img {
  width: 64.8vw;
  margin-left: 20.9333333333vw;
}
.p-needs .no4 .p-needs__contents img {
  float: right;
  shape-outside: url(../../img/sp/needs_item4_pic.png);
  shape-margin: 5.3333333333vw;
  margin-left: 1.3333333333vw;
  width: 42.6666666667vw;
}
.p-needs .no4 .p-needs__contents__lead, .p-needs .no4 .p-needs__contents__title, .p-needs .no4 .p-needs__contents__text {
  padding-left: 6.6666666667vw;
}
.p-needs .no4 .p-needs__contents__lead {
  padding-top: 12.4vw;
}
.p-needs .no4 .p-needs__contents__title {
  margin-bottom: 5.3333333333vw;
  padding-top: 1.4rem;
  line-height: 1.2222222222;
  font-size: 1.8rem;
}
.p-needs .no4 .p-needs__contents__title .emphasis {
  position: absolute;
  top: 0;
  font-size: 2.9rem;
}
.p-needs .no4 .p-needs__contents__title::after {
  top: -4.5333333333vw;
  left: 0;
  width: 64vw;
  height: 15.7333333333vw;
}
.p-needs .no4 .p-needs__contents__text {
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-needs .no5 {
  padding-top: 7.2vw;
  clear: both;
}
.p-needs .no5::after {
  top: 27.3333333333vw;
  left: 0;
  width: 77.7333333333vw;
  height: 94.4vw;
}
.p-needs .no5 .p-needs__item__title {
  margin-bottom: 8vw;
}
.p-needs .no5 .p-needs__item__title img {
  width: 64.8vw;
  margin-left: 6.9333333333vw;
}
.p-needs .no5 .p-needs__contents img {
  float: left;
  shape-outside: url(../../img/sp/needs_item5_pic.png);
  shape-margin: 1.3333333333vw;
  margin-top: 12vw;
  width: 63.4666666667vw;
}
.p-needs .no5 .p-needs__contents__lead, .p-needs .no5 .p-needs__contents__title, .p-needs .no5 .p-needs__contents__text {
  padding-left: 34.4vw;
}
.p-needs .no5 .p-needs__contents__title {
  margin-bottom: 2.6666666667vw;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.1666666667;
  font-size: 1.8rem;
  color: #4c4948;
}
.p-needs .no5 .p-needs__contents__title .emphasis {
  font-size: 2.9rem;
}
.p-needs .no5 .p-needs__contents__title::after {
  top: -5.8666666667vw;
  left: 36vw;
  width: 64vw;
  height: 15.7333333333vw;
}
.p-needs .no5 .p-needs__contents__text {
  margin-right: 6.6666666667vw;
  line-height: 1.5357142857;
  font-size: 1.4rem;
  color: #686868;
}
.p-needs .no5 .p-needs__contents__text a {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
  font-size: 1.25rem;
  color: #d07e87;
}

.p-value {
  padding: 18.6666666667vw 0 7.7333333333vw;
}
.p-value__title {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.4634146341;
  font-size: 2.05rem;
  text-align: center;
  color: #4c4948;
  margin-bottom: 12vw;
}
.p-value__title .xlg {
  line-height: 1.32;
  font-size: 2.5rem;
}
.p-value__title .lg {
  line-height: 1.3636363636;
  font-size: 2.2rem;
}
.p-value__title .emphasis {
  color: #ba2f51;
}
.p-value__list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2.1333333333vw;
  row-gap: 3.0666666667vw;
  margin: 0 3.3333333333vw;
}
.p-value__item {
  position: relative;
  width: 45.6vw;
  color: #231815;
}
.p-value__item > * {
  position: absolute;
  z-index: 1;
  left: 0;
  width: 100%;
  text-align: center;
}
.p-value__item__title {
  font-size: 1.15rem;
  font-weight: bold;
}
.p-value__item__title .emphasis {
  display: block;
  margin-top: 1.7333333333vw;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 7.7333333333vw;
  font-size: 1.9rem;
  font-weight: bold;
  text-shadow: 1px 1px 0 #fff;
}
.p-value__item__title .emphasis .small {
  font-size: 1.55rem;
  font-weight: bold;
}
.p-value__item__text {
  bottom: 3.2vw;
  display: flex;
  align-items: baseline;
  justify-content: center;
  font-size: 0.65rem;
}
.p-value__item__text .count {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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.7rem;
}
.p-value__item__text .count .small {
  font-size: 1rem;
}
.p-value__item__pic {
  top: 0;
  z-index: 0;
}
.p-value__item.no1, .p-value__item.no2 {
  height: 34.9333333333vw;
}
.p-value__item.no1 .p-value__item__title, .p-value__item.no2 .p-value__item__title {
  top: 14.1333333333vw;
}
.p-value__item.no3, .p-value__item.no4 {
  height: 32.6666666667vw;
}
.p-value__item.no3 .p-value__item__title, .p-value__item.no4 .p-value__item__title {
  top: 14.9333333333vw;
}
.p-value__item.no4 .p-value__item__title .emphasis {
  letter-spacing: -1px;
}

.p-ranking {
  position: relative;
  padding: 12.8vw 0;
}
.p-ranking > *:not(.p-ranking__bg) {
  position: relative;
  z-index: 1;
}
.p-ranking__title {
  text-align: center;
  margin-bottom: 9.3333333333vw;
}
.p-ranking__title__pic {
  margin-right: auto;
  margin-bottom: 0.5333333333vw;
  margin-left: auto;
  width: 35.7333333333vw;
}
.p-ranking__title__text {
  display: inline-block;
  padding: 2.9333333333vw;
  margin-bottom: 1.3333333333vw;
  background: #cea4a0;
  font-size: 2.1rem;
  color: #4c4948;
}
.p-ranking__title__lead {
  font-size: 3.45rem;
  color: #ce7e85;
}
.p-ranking__contents {
  display: flex;
  flex-wrap: wrap;
  margin-right: 6.4vw;
  margin-left: 6.4vw;
  row-gap: 4.5333333333vw;
  column-gap: 4vw;
}
.p-ranking__contents__title {
  width: 100%;
}
.p-ranking__contents__title__pic {
  margin-right: auto;
  margin-bottom: 2.1333333333vw;
  margin-left: auto;
  width: 13.8666666667vw;
}
.p-ranking__contents__title__text {
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  line-height: 1.1034482759;
  font-size: 2.9rem;
  color: #4c4948;
}
.p-ranking__contents__pic {
  width: 36vw;
}
.p-ranking__contents__text {
  flex: 1;
  line-height: 1.6538461538;
  font-size: 3.4666666667vw;
  color: #686868;
  text-align: justify;
}
.p-ranking__contents__text .small {
  display: block;
  text-align: right;
  font-size: 1rem;
}
.p-ranking__contents + .p-ranking__contents {
  margin-top: 13.3333333333vw;
}
.p-ranking__list {
  margin-bottom: 16.6666666667vw;
}
.p-ranking__attention__text {
  line-height: 1.6052631579;
  font-size: 1.9rem;
}
.p-ranking__attention__text .emphasis {
  display: block;
  line-height: 1.4255319149;
  font-size: 2.35rem;
}
.p-ranking__attention__pic {
  margin-top: 6.6666666667vw;
}
.p-ranking__bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-price {
  padding: 12vw 0 21.3333333333vw;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(232, 211, 209, 0.1) 18%, rgba(208, 166, 162, 0.1)) #fff;
}
.p-price__title {
  margin-bottom: 14.6666666667vw;
}
.p-price__contents {
  margin-right: 6.4vw;
  margin-bottom: 14.6666666667vw;
  margin-left: 6.4vw;
  padding-top: 7.4666666667vw;
  padding-right: 5.8666666667vw;
  padding-bottom: 5.3333333333vw;
  padding-left: 5.8666666667vw;
  background: #fff;
  border: 0.2666666667vw solid #d6cbc3;
  border-radius: 3.7333333333vw;
}
.p-price__contents__title {
  margin-bottom: 4.6666666667vw;
  padding-bottom: 5.3333333333vw;
  border-bottom: 0.2666666667vw solid #d6cbc3;
  font-size: 1.9rem;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #59504d;
}
.p-price__details__title {
  margin-bottom: 1.8666666667vw;
  font-size: 1rem;
  color: #d98f8f;
}
.p-price__details__item {
  display: flex;
  align-items: center;
  height: 5.8666666667vw;
  font-size: 1.2rem;
  color: #7c7874;
  column-gap: .5em;
}
.p-price__details__item::before {
  content: '●';
  color: #d98f8f;
}
.p-price__details__icon {
  appearance: none;
  border: 0;
  padding: 0;
  width: 3.3333333333vw;
  background: 0;
}
.p-price__details__icon img {
  display: block;
}
.p-price__table {
  margin-top: 2.6666666667vw;
  margin-bottom: 4vw;
  width: 100%;
  border: 0.2666666667vw solid #d6cbc3;
  background: #fff;
  font-size: 1.2rem;
}
.p-price__table th {
  padding: 2.6666666667vw;
  border-right: 0.2666666667vw solid #d6cbc3;
}
.p-price__table td {
  padding: 2.6666666667vw 4vw;
}
.p-price__list {
  margin-bottom: 4vw;
  padding-top: 4.6666666667vw;
  border-top: 0.2666666667vw solid #d6cbc3;
}
.p-price__item__contents {
  display: flex;
  align-items: center;
}
.p-price__item__title {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 21.3333333333vw;
  height: 4vw;
  background: #686868;
  border-radius: 2vw;
  font-size: 1rem;
  color: #fff;
}
.p-price__item__text {
  text-align: right;
  flex: 1;
  font-size: 1.8rem;
}
.p-price__item__text .small {
  font-size: 1.1rem;
}
.p-price__item + .p-price__item {
  margin-top: 1.8666666667vw;
}
.p-price__item.monitor .p-price__item__title {
  background-color: #d98f8f;
}
.p-price__cv {
  padding: 0;
}
.p-price__cv .p-cv__button {
  width: 36.9333333333vw;
}
.p-price__service {
  margin-bottom: 16vw;
}
.p-price__service__item {
  scroll-margin-top: 13.3333333333vw;
}
.p-price__service__title {
  margin-bottom: 14.6666666667vw;
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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: 2.35rem;
  line-height: 1.2553191489;
  color: #000;
}

.p-service__item {
  margin-right: 8.5333333333vw;
  margin-left: 8.5333333333vw;
}
.p-service__item + .p-service__item {
  padding-top: 5.3333333333vw;
}
.p-service__item.is-opened .icon::before {
  content: initial;
}
.p-service__item__title {
  display: flex;
  position: relative;
  border: 0.2666666667vw solid #b6a598;
  padding: 1.0666666667vw;
  background: #fff;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  color: #404040;
  font-size: 1.7rem;
}
.p-service__item__title::before {
  content: '';
  display: block;
  margin-right: 3.2vw;
  width: 3.0666666667vw;
  background: #b4a397;
}
.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-top: 4vw;
  color: #686868;
}
.p-service__item__contents .pic {
  width: 22vw;
}
.p-service__item__contents .pic.right {
  float: right;
  margin-left: 4.6666666667vw;
  margin-bottom: 4.6666666667vw;
}
.p-service__item__contents .details .title {
  margin-bottom: 0.8vw;
  font-size: 1.35rem;
  font-weight: bold;
}
.p-service__item__contents .details .title::before {
  content: '●';
  color: #e0b5b5;
  margin-right: 0.25em;
}
.p-service__item__contents .details + .details {
  margin-top: 2.6666666667vw;
}
.p-service__item__contents .text {
  line-height: 1.5925925926;
  font-size: 1.35rem;
  text-align: justify;
}
.p-service__item__contents .text .emphasis {
  color: rgba(186, 47, 81, 0.7);
  font-weight: bold;
}
.p-service__item__contents .text .small {
  display: block;
  line-height: 1.5714285714;
  font-size: 1.05rem;
}
.p-service__item__contents .necessary {
  margin-top: 2.6666666667vw;
  font-size: 1.35rem;
}
.p-service__item__contents .necessary .title,
.p-service__item__contents .necessary .item {
  line-height: 1.5925925926;
}
.p-service__item__contents .necessary .text > .list > .item::before {
  content: '●';
  margin-right: 0.25em;
}
.p-service__item__contents .necessary .item .small {
  display: inline;
}
.p-service__item__contents .necessary .item .item {
  text-indent: -.75em;
  margin-left: 1.25em;
  font-size: 1.15rem;
  line-height: 1.347826087;
}
.p-service__item__contents .necessary .item .item::before {
  content: '-';
  margin-right: 0.25em;
}
.p-service__item.no4 .pic {
  width: 100%;
  margin-top: 3.7333333333vw;
}

.p-option {
  margin-right: 6.4vw;
  margin-left: 6.4vw;
}
.p-option__title {
  padding-top: 1.3333333333vw;
  padding-left: 2.9333333333vw;
  padding-bottom: 1.3333333333vw;
  margin-bottom: 4vw;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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.4rem;
  color: #000;
  border-left: 3.2vw solid #cea4a0;
}
.p-option__title .emphasis {
  margin-top: 1.3333333333vw;
  display: block;
  font-size: 1.75rem;
}
.p-option__table {
  margin-bottom: 5.3333333333vw;
}
.p-option__pic {
  float: right;
  width: 22vw;
  margin-left: 4vw;
}
.p-option__text {
  font-size: 1.35rem;
  line-height: 1.5925925926;
}

.p-faq {
  position: relative;
  padding: 16vw 0 21.3333333333vw;
  background: #fff;
}
.p-faq > *:not(.p-faq__bg) {
  position: relative;
  z-index: 1;
}
.p-faq__title {
  margin-bottom: 13.3333333333vw;
}
.p-faq__list {
  margin-right: 8vw;
  margin-left: 8vw;
}
.p-faq__list__item + .p-faq__list__item {
  margin-top: 12vw;
}
.p-faq__contents__category {
  position: relative;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
  padding-top: 5.8666666667vw;
  height: 18.5333333333vw;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  text-align: center;
  font-size: 1.6rem;
  color: #ba2f51;
  margin-bottom: 1.0666666667vw;
}
.p-faq__contents__category img {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  width: 13.8666666667vw;
  transform: translateX(-50%);
}
.p-faq__contents__question {
  margin-bottom: 4.6666666667vw;
}
.p-faq__contents__answer {
  font-size: 1.4rem;
  line-height: 1.5357142857;
  color: #686868;
  text-align: justify;
}
.p-faq__bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-clinic {
  padding: 13.3333333333vw 0 16vw;
}
.p-clinic__title {
  margin-bottom: 10.6666666667vw;
}
.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%;
  height: 146.6666666667vw;
}
.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-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 9.3333333333vw;
  background: #222222;
  color: #a49489;
  font-size: 1rem;
}

.js-details .js-summary {
  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;
  background: #d3d0cb;
}
.p-fix-cv-list {
  width: 100%;
  display: flex;
}
.p-fix-cv-item {
  background: #e5e3df;
  padding-bottom: 0;
  padding-bottom: calc(constant(safe-area-inset-bottom) * 0.6);
  padding-bottom: calc(env(safe-area-inset-bottom) * 0.6);
  width: 50%;
}
.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: #d3d0cb;
  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 #bdb9b2;
  background: #bdb9b2;
}
.p-fix-tel-item {
  flex: 1;
}
.p-fix-tel-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e5e3df;
  text-align: center;
  height: 14.6666666667vw;
  font-size: 1.4rem;
  color: #59472d;
  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-fixed-menu {
  position: fixed;
  top: 0;
  z-index: 100;
  transition: all .2s linear;
  pointer-events: none;
  height: 15.3333333333vw;
  width: 100%;
  background: #fff;
  opacity: 0;
}
.p-fixed-menu::before {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  box-shadow: 0 6px 10px 0 #a87b67;
}
.p-fixed-menu__button {
  position: fixed;
  top: 6.2666666667vw;
  right: 5.7333333333vw;
  z-index: 10000;
}

.p-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 69.3333333333vw;
  padding-top: 35.2vw;
  height: 100dvh;
  z-index: 1000;
  background: #fff;
  transform: translateX(105%);
  transition: all .2s linear;
  opacity: 0;
}
.p-menu::before {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  box-shadow: 5px 6px 10px 0 #a87b67;
}
.p-menu.is-open {
  opacity: 1;
  transform: translateX(0);
}
.p-menu__button {
  display: flex;
  flex-direction: column;
  border: 0;
  margin: 0;
  padding: 0;
  background: 0;
  transition: all .2s linear;
  box-sizing: border-box;
  width: 8.5333333333vw;
  height: 8.6666666667vw;
}
.p-menu__button .line {
  position: absolute;
  width: 100%;
  border-top: 0.2666666667vw solid #353230;
  transition: all .2s linear;
}
.p-menu__button.open {
  justify-content: space-between;
  height: 5.8666666667vw;
}
.p-menu__button.open .line:nth-child(1) {
  top: 0;
}
.p-menu__button.open .line:nth-child(2) {
  top: 50%;
}
.p-menu__button.open .line:nth-child(3) {
  top: 100%;
}
.p-menu__button.close {
  justify-content: center;
}
.p-menu__button.close .line:nth-child(1) {
  top: 50%;
  transform: rotate(45deg);
}
.p-menu__button.close .line:nth-child(2) {
  opacity: 0;
  display: none;
}
.p-menu__button.close .line:nth-child(3) {
  top: 50%;
  transform: rotate(-45deg);
  margin-top: -0.1333333333vw;
}
.p-menu__nav {
  padding-left: 9.7333333333vw;
}

.p-nav__list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 9.3333333333vw;
}
.p-nav__list__item {
  width: 52.4vw;
  opacity: .3;
}
.p-nav__list__item.is-active {
  opacity: 1;
}

.is-menu-open {
  overflow: clip;
}
.is-menu-open .p-container {
  filter: blur(2.5px);
  pointer-events: none;
}
.is-menu-open .p-fixed-menu {
  transform: translateY(-160%);
}
.is-menu-open .p-fix-cv {
  transform: translateY(100%);
}

.p-dialog {
  border: 0;
  padding: 0;
  background: 0;
  max-width: none;
  max-height: none;
  box-shadow: 0 0 0 100vh rgba(0, 0, 0, 0.7);
  transition: opacity .15s linear;
}
.p-dialog:not([data-active=true]) {
  opacity: 0;
}
.p-dialog__inner {
  padding: 8.5333333333vw 7.0666666667vw 5.8666666667vw;
  background: #f1eae8;
  width: 80vw;
  border-radius: 1.0666666667vw;
  box-shadow: 0 0 0 100vh rgba(0, 0, 0, 0.7);
}
.p-dialog__title {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HiraMinProN, "ヒラギノ明朝 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";
  text-align: center;
  font-size: 1.5rem;
  color: #584f4c;
  font-weight: bold;
  padding-bottom: 5.3333333333vw;
  margin-bottom: 3.2vw;
  border-bottom: 0.2666666667vw solid #fff;
}
.p-dialog__text {
  margin-bottom: 1.6vw;
  line-height: 1.7272727273;
  font-size: 1.1rem;
  color: #7c7874;
  text-align: justify;
}
.p-dialog__tag__item {
  margin-top: 1.6vw;
  font-size: 1rem;
  text-align: center;
  color: #db9191;
}
.p-dialog__button {
  position: absolute;
  top: 2.1333333333vw;
  right: 2.1333333333vw;
  width: 4.8vw;
  appearance: none;
  border: 0;
  padding: 0;
  background: 0;
}
.p-dialog::backdrop {
  background: 0;
  opacity: 0;
}

/*# sourceMappingURL=mommy-breast.css.map */
