@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,200..900;1,200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@500&display=swap");
:root {
  --font-noto-sans: "Noto Sans Japanese", sans-serif;
  --font-noto-serif: "Noto Serif Japanese", serif;
  --font-hiragino:
    "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --font-crimson: "Crimson Pro", serif;
  --font-lora: "Lora", serif;
  --font-yugo:
    "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  --font-yumincho:
    "游明朝体", "Yu Mincho", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "MS PMincho", "MS 明朝", serif;
  --font-zen: "Zen Old Mincho", serif;
  --font-bison: "Bison", sans-serif;
  --font-bebas: "Bebas Neue", sans-serif;
  --font-en: Arial, Helvetica, sans-serif;
  --hover-opacity: 0.7;
  --header-height-pc: 119px;
  --header-height-sp: 57px;
  --color-primary: #95424d;
  --gradient-primary: linear-gradient(
    90deg,
    #9f3053 0%,
    #d66b7d 46%,
    #9f3053 78%,
    #d66b7d 100%
  );
  --color-secondary: #ffebeb;
  --color-secondary-light: #fff7f7;
  --color-tertiary: #d1667a;
  --color-gold: #eecf68;
  --color-gold-soft: #ede3b7;
  --color-gold-light: #ffebb9;
}

body {
  font-family: var(--font-yugo);
  font-size: 16px;
  color: #333;
  overflow-x: hidden;
}

.wrapper {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 1080px;
  height: 100%;
  width: 100%;
  margin-top: var(--header-height-pc);
}
@media screen and (max-width: 744px) {
  .wrapper {
    min-width: 100%;
    width: 100%;
    margin-top: var(--header-height-sp);
  }
}

/**************************************************
  ブレイクポイント改修用
***************************************************/
.tmp-wrapper {
  margin-top: var(--header-height-pc);
  margin-top: 119px;
}
.tmp-wrapper *,
.tmp-wrapper *::before,
.tmp-wrapper *::after {
  box-sizing: border-box;
  overflow-wrap: anywhere;
}
.tmp-wrapper *,
.tmp-wrapper *::before,
.tmp-wrapper *::after {
  box-sizing: border-box;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 767px) {
  .tmp-wrapper {
    width: 100%;
    margin-top: var(--header-height-sp);
  }
}

@media (max-width: 767px) {
  .tmp-pc_only {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .tmp-sp_only {
    display: none !important;
  }
}

.prp-thread {
  --color-primary: #BB436F;
  --color-alpha: rgb(249.5977952756, 239.9222047244, 243.4699212598);
  --color-secondary: rgba(187, 67, 111, 0.3);
  --color-strong: rgb(134.705511811, 17.294488189, 60.3451968504);
}

section {
  clear: both;
  display: block;
  overflow: hidden;
}
section .inner {
  margin: 0 auto;
  max-width: 1080px;
  padding: 50px 0;
  width: 100%;
}

.prp-thread {
  overflow: hidden;
}

.img {
  max-width: 100%;
  width: 100%;
}

.c-ttls {
  padding-bottom: 24px;
  position: relative;
}
@media screen and (max-width: 744px) {
  .c-ttls {
    padding-bottom: 2.1333333333vw;
  }
}
.c-ttls::after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: var(--color-primary);
}
@media screen and (max-width: 744px) {
  .c-ttls::after {
    width: 17.0666666667vw;
    height: 0.5333333333vw;
  }
}
.c-ttls .sub {
  color: #111;
  text-align: center;
  font-family: "Futura", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 100%;
  margin-bottom: 0px;
}
@media screen and (max-width: 744px) {
  .c-ttls .sub {
    font-size: 3.4666666667vw;
  }
}
.c-ttls .ttl {
  overflow: initial;
  margin-bottom: 0;
  color: var(--color-primary);
  text-align: center;
  font-size: 36px;
  font-weight: 700;
  line-height: 130%;
}
@media screen and (max-width: 744px) {
  .c-ttls .ttl {
    font-size: 6.4vw;
  }
}

.p-kv {
  max-width: 1920px;
  margin: 0 auto;
  background: url(../images/kv-01.webp) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-kv {
    background: url(../images/kv-01-sp.webp) center left/cover no-repeat;
  }
}
.p-kv .p-kv__inner {
  max-width: 1084px;
  margin: 0 auto;
  padding: 38px 0;
}
@media screen and (max-width: 744px) {
  .p-kv .p-kv__inner {
    padding: 4.2666666667vw 0;
  }
}
.p-kv .p-kv__content {
  max-width: 621px;
  margin-left: auto;
}
@media (max-width: 1200px) {
  .p-kv .p-kv__content {
    margin-right: 40px;
  }
}
@media screen and (max-width: 744px) {
  .p-kv .p-kv__content {
    display: grid;
    position: relative;
    max-width: 100%;
    margin-right: 0;
  }
}
.p-kv .concept {
  color: var(--color-primary);
  text-align: center;
  font-size: 45px;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 21px;
}
@media screen and (max-width: 744px) {
  .p-kv .concept {
    text-align: center;
    font-size: 8vw;
    line-height: 117%;
    letter-spacing: 0.48vw;
    order: 1;
    margin-bottom: 62.6666666667vw;
  }
}
.p-kv .concept span {
  line-height: normal;
}
@media screen and (max-width: 744px) {
  .p-kv .concept span {
    line-height: 130%;
  }
}
.p-kv .concept span.__1 {
  color: #111;
  font-size: 36px;
  font-weight: 700;
}
@media screen and (max-width: 744px) {
  .p-kv .concept span.__1 {
    font-size: 5.6vw;
    letter-spacing: 0.336vw;
  }
}
.p-kv .concept span.__2 {
  color: #111;
  font-size: 45px;
  font-weight: 700;
}
@media screen and (max-width: 744px) {
  .p-kv .concept span.__2 {
    font-size: 6.4vw;
    letter-spacing: 0.384vw;
  }
}
.p-kv .items {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 24px;
}
@media screen and (max-width: 744px) {
  .p-kv .items {
    order: 5;
    position: absolute;
    bottom: 13.6vw;
    right: 8.2666666667vw;
    gap: 8vw;
    padding-bottom: 6.4vw;
  }
}
.p-kv .item {
  margin-bottom: 0;
}
.p-kv .item.__1 {
  color: #fff;
  background: linear-gradient(180deg, #ef6497 0%, var(--color-primary) 100%);
  text-align: center;
  font-size: 34px;
  font-weight: 700;
  line-height: 100%;
  padding: 8px 16px;
}
@media screen and (max-width: 744px) {
  .p-kv .item.__1 {
    color: #fff;
    text-align: center;
    font-size: 3.76vw;
    padding: 1.0666666667vw;
  }
}
.p-kv .item.__2 {
  color: #fff;
  background: linear-gradient(180deg, #ef6497 0%, var(--color-primary) 100%);
  text-align: center;
  font-size: 34px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: -3.4px;
  padding: 8px 16px;
}
@media screen and (max-width: 744px) {
  .p-kv .item.__2 {
    color: #fff;
    text-align: center;
    font-size: 3.768vw;
    padding: 1.0666666667vw;
    letter-spacing: -0.376vw;
  }
}
.p-kv .cross {
  width: 66px;
  height: 66px;
  margin: 0 8px;
}
@media screen and (max-width: 744px) {
  .p-kv .cross {
    width: 13.8666666667vw;
    height: 13.8666666667vw;
    margin: initial;
    position: absolute;
    top: -4vw;
    left: 14.4vw;
  }
}
.p-kv .treatment {
  color: #111;
  font-family: "Times", sans-serif;
  font-size: 28px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.28px;
  margin-bottom: 9px;
}
@media screen and (max-width: 744px) {
  .p-kv .treatment {
    color: #111;
    font-size: 3.4666666667vw;
    font-style: italic;
    line-height: 100%;
    letter-spacing: 0.0346666667vw;
    order: 3;
    padding-left: 6.4vw;
    margin-bottom: 2.4vw;
  }
}
.p-kv .title {
  font-family: var(--font-yumincho);
  font-size: 88px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -1.76px;
  background: linear-gradient(230deg, #d63f77 52.66%, #9b355a 66.77%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-bottom: 22px;
  font-style: italic;
}
@media screen and (max-width: 744px) {
  .p-kv .title {
    order: 4;
    line-height: 30%;
    padding-left: 8vw;
    text-indent: -2.6666666667vw;
    padding-bottom: 0;
    letter-spacing: -0.4693333333vw;
  }
}
@media screen and (max-width: 744px) {
  .p-kv .title span {
    font-weight: 600;
    line-height: 90%;
  }
}
.p-kv .title span.__1 {
  font-size: 88px;
  letter-spacing: -1.76px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__1 {
    font-size: 14.9333333333vw;
    letter-spacing: -0.2986666667vw;
  }
}
.p-kv .title span.__2 {
  font-size: 88px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__2 {
    background: linear-gradient(230deg, #d63f77 52.66%, #9b355a 66.77%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 14.9333333333vw;
  }
}
.p-kv .title span.__3-1 {
  font-size: 88px;
  letter-spacing: -13.2px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__3-1 {
    background: linear-gradient(230deg, #d63f77 52.66%, #9b355a 66.77%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 14.9333333333vw;
    letter-spacing: -2.24vw;
  }
}
.p-kv .title span.__3-2 {
  font-size: 88px;
  letter-spacing: -22px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__3-2 {
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
.p-kv .title span.__4 {
  font-size: 88px;
  letter-spacing: -24.64px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__4 {
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
.p-kv .title span.__5 {
  font-size: 88px;
  letter-spacing: -39.6px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__5 {
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
.p-kv .title span.__6 {
  font-size: 88px;
  letter-spacing: -30.8px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__6 {
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
.p-kv .title span.__7 {
  font-size: 88px;
  letter-spacing: -34.32px;
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__7 {
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
@media screen and (max-width: 744px) {
  .p-kv .title span.__8 {
    background: linear-gradient(230deg, #d63f77 52.66%, #9b355a 66.77%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 14.9333333333vw;
    letter-spacing: -3.7333333333vw;
  }
}
.p-kv .lists {
  max-width: 452px;
  margin: 0 auto;
  display: flex;
  gap: 16px;
}
@media screen and (max-width: 744px) {
  .p-kv .lists {
    gap: 2.1333333333vw;
    max-width: 74.6666666667vw;
    order: 2;
    margin-bottom: 1.3333333333vw;
  }
}
.p-kv .list {
  width: 140px;
  height: 140px;
  background: url(../images/kv-03.webp) center/cover no-repeat;
  color: var(--color-primary);
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 120%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-shadow: 0px 0px 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 9px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff;
}
@media screen and (max-width: 744px) {
  .p-kv .list {
    text-align: center;
    font-size: 4.6933333333vw;
    width: 23.4666666667vw;
    height: 23.4666666667vw;
  }
}

@media screen and (max-width: 744px) {
  .p-about {
    position: relative;
  }
}
.p-about .p-about__inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 40px 0 60px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__inner {
    padding: 7.4666666667vw 0 8.5333333333vw;
  }
}
.p-about .p-about__content {
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__content {
    flex-direction: column;
    padding-top: 16vw;
  }
}
.p-about .p-about__head {
  color: #111;
  font-family: var(--font-yumincho);
  font-size: 44px;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 2.2px;
  margin-bottom: 30px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__head {
    font-size: 8.5333333333vw;
    line-height: 130%;
    letter-spacing: 0.4266666667vw;
    margin-bottom: 14.4vw;
    padding-left: 4.2666666667vw;
    position: relative;
    z-index: 1;
  }
}
.p-about .p-about__txt {
  color: #111;
  font-size: 18px;
  font-weight: 500;
  line-height: 170%;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__txt {
    font-size: 4vw;
    padding: 0 4.2666666667vw;
  }
}
.p-about .p-about__txt:not(:last-of-type) {
  margin-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__txt:not(:last-of-type) {
    margin-bottom: 4.2666666667vw;
  }
}
.p-about .p-about__txt .span {
  color: var(--color-primary);
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__txt .span {
    font-size: 4vw;
  }
}
.p-about .p-about__body {
  width: 510px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__body {
    width: 100%;
    margin-top: 0;
  }
}
.p-about .p-about__img {
  width: 434px;
}
@media screen and (max-width: 744px) {
  .p-about .p-about__img {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    position: absolute;
    top: 29.0666666667vw;
    right: 0;
    width: 55.2vw;
  }
}

.p-band {
  max-width: 1920px;
  margin: 0 auto;
  background: url(../images/band-01.webp) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-band {
    background: url(../images/band-01-sp.webp) center/cover no-repeat;
  }
}
.p-band .p-band__inner {
  max-width: 810px;
  margin: 0 auto;
  padding: 28px 0 66px;
}
@media screen and (max-width: 744px) {
  .p-band .p-band__inner {
    padding: 7.4666666667vw 0 13.3333333333vw;
  }
}
.p-band .title {
  color: #fff;
  text-align: center;
  font-size: 36px;
  font-weight: 700;
  line-height: 130%;
}
@media screen and (max-width: 744px) {
  .p-band .title {
    color: #fff;
    text-align: center;
    font-size: 6.4vw;
    margin-bottom: 6.6666666667vw;
  }
}
.p-band .cards {
  display: flex;
  justify-content: space-between;
  gap: 32px;
}
@media screen and (max-width: 744px) {
  .p-band .cards {
    flex-wrap: wrap;
    gap: 14.9333333333vw;
    max-width: 91.4666666667vw;
    margin: 0 auto;
    justify-content: center;
  }
}
.p-band .card {
  position: relative;
}
.p-band .card::before {
  content: "";
  position: absolute;
  top: -15px;
  left: -37px;
  width: 86px;
  height: 120px;
  background: url(../images/leaf.webp) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-band .card::before {
    top: -2.9333333333vw;
    left: -6.4vw;
    width: 13.3333333333vw;
    height: 18.6666666667vw;
    background: url(../images/leaf-sp.webp) center/cover no-repeat;
  }
}
.p-band .card::after {
  content: "";
  position: absolute;
  top: -15px;
  right: -38px;
  width: 86px;
  height: 120px;
  background: url(../images/leaf.webp) center/cover no-repeat;
  transform: scaleX(-1);
}
@media screen and (max-width: 744px) {
  .p-band .card::after {
    top: -2.6666666667vw;
    right: -6.1333333333vw;
    width: 13.3333333333vw;
    height: 18.6666666667vw;
    background: url(../images/leaf-sp.webp) center/cover no-repeat;
  }
}
.p-band .text {
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  background: linear-gradient(270deg, #ffd66d 0%, #ffe6a6 35.1%, #fff8e5 58.65%, #ffde8a 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  line-height: 100%;
  margin-bottom: 7px;
}
@media screen and (max-width: 744px) {
  .p-band .text {
    font-size: 4.0693333333vw;
  }
}
.p-band .text:last-child {
  margin-bottom: 0;
}
.p-band .text.__2 {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 130%;
}
@media screen and (max-width: 744px) {
  .p-band .text.__2 {
    font-size: 2.816vw;
  }
}

.p-reason {
  background: url(../images/reason-bg.webp) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-reason {
    background: url(../images/reason-bg-sp.webp) center top/cover no-repeat;
  }
}
.p-reason .p-reason__inner {
  max-width: 920px;
  margin: 0 auto;
  padding: 50px 0 70px;
}
@media screen and (max-width: 744px) {
  .p-reason .p-reason__inner {
    padding: 8.5333333333vw 0 8.5333333333vw;
  }
}
.p-reason .p-reason__cards {
  display: grid;
  gap: 40px;
  padding-top: 40px;
}
@media screen and (max-width: 744px) {
  .p-reason .p-reason__cards {
    width: 100%;
    display: block;
    padding: 0 4.2666666667vw;
    margin-top: 6.4vw;
  }
}
.p-reason .p-reason__card {
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-reason .p-reason__card {
    width: 100%;
  }
  .p-reason .p-reason__card:not(:last-of-type) {
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 744px) and (max-width: 744px) {
  .p-reason .p-reason__card:not(:last-of-type) {
    margin-bottom: 8.5333333333vw;
  }
}
.p-reason .float-texts {
  text-align: center;
  position: absolute;
  top: -33px;
  left: -48px;
  width: 116px;
  height: 132px;
  background: url(../images/reason-01.webp) center/cover no-repeat;
  padding-top: 34px;
  filter: drop-shadow(7.92px 7.92px 5.28px rgba(0, 0, 0, 0.25));
  z-index: 2;
}
@media screen and (max-width: 744px) {
  .p-reason .float-texts {
    width: 17.0666666667vw;
    height: 19.2vw;
    left: -2.1333333333vw;
    top: -7.4666666667vw;
    padding-top: 5.0666666667vw;
  }
}
.p-reason .float-texts .float-texts__text {
  color: var(--color-primary);
  text-align: center;
  font-size: 17.16px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: -0.858px;
}
@media screen and (max-width: 744px) {
  .p-reason .float-texts .float-texts__text {
    font-size: 2.496vw;
    letter-spacing: -0.1226666667vw;
  }
}
.p-reason .float-texts .float-texts__number {
  color: var(--color-primary);
  text-align: center;
  font-family: var(--font-yumincho);
  font-size: 68.64px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -3.432px;
}
@media screen and (max-width: 744px) {
  .p-reason .float-texts .float-texts__number {
    font-size: 9.9733333333vw;
    letter-spacing: -0.4986666667vw;
  }
}
.p-reason .float-image {
  position: absolute;
}
.p-reason .float-image.__1 {
  bottom: 0;
  left: 41px;
  width: 300px;
  height: 248px;
}
@media screen and (max-width: 744px) {
  .p-reason .float-image.__1 {
    width: 82.9333333333vw;
    height: 51.2vw;
    bottom: initial;
    top: 20.2666666667vw;
    left: 4.2666666667vw;
  }
}
.p-reason .float-image.__3 {
  top: 42px;
  right: 0px;
  width: 340px;
  height: 352px;
}
@media screen and (max-width: 744px) {
  .p-reason .float-image.__3 {
    top: 14.6666666667vw;
    left: 10.6666666667vw;
    width: 71.7333333333vw;
    height: 74.1333333333vw;
  }
}
.p-reason .heading {
  color: #fff;
  background: var(--color-primary);
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 130%;
  padding: 12px 0;
  text-align: center;
  margin-bottom: 0;
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-reason .heading {
    color: #fff;
    text-align: center;
    font-size: 5.3333333333vw;
    padding: 3.2vw 0;
  }
}
.p-reason .content {
  padding: 32px 40px;
  border-right: 1px solid var(--color-primary);
  border-bottom: 1px solid var(--color-primary);
  border-left: 1px solid var(--color-primary);
  background: #fff;
}
@media screen and (max-width: 744px) {
  .p-reason .content {
    border-right: 0.2666666667vw solid var(--color-primary);
    border-bottom: 0.2666666667vw solid var(--color-primary);
    border-left: 0.2666666667vw solid var(--color-primary);
  }
}
@media screen and (max-width: 744px) {
  .p-reason .content.__1 {
    padding: 57.6vw 4.2666666667vw 6.4vw 4.2666666667vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .content.__2 {
    padding: 10.6666666667vw 5.6vw 6.4vw 4.2666666667vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .content.__3 {
    padding: 51.2vw 4.2666666667vw 6.4vw 4.2666666667vw;
  }
}
.p-reason .content.__4 {
  display: flex;
  gap: 29px;
  padding: 24px 40px 32px;
}
@media screen and (max-width: 744px) {
  .p-reason .content.__4 {
    flex-direction: column-reverse;
    padding: 6.4vw 4.2666666667vw;
    gap: 8vw;
  }
}
.p-reason .content.__5 {
  padding: 24px 40px 32px;
}
@media screen and (max-width: 744px) {
  .p-reason .content.__5 {
    padding: 6.4vw 3.7333333333vw;
  }
}
.p-reason .content__img.__4 {
  width: 400px;
}
@media screen and (max-width: 744px) {
  .p-reason .content__img.__4 {
    width: 100%;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .content__img.__4 img {
    aspect-ratio: 309/206;
    width: 100%;
    object-fit: cover;
  }
}
.p-reason .content__img.__5 {
  padding-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .p-reason .content__img.__5 {
    width: 100%;
    padding-bottom: 6.4vw;
  }
}
.p-reason .content__img.__5 img {
  aspect-ratio: 839/299;
  width: 100%;
  object-fit: cover;
}
@media screen and (max-width: 744px) {
  .p-reason .content__img.__5 img {
    aspect-ratio: 313/441;
  }
}
.p-reason .text {
  color: #111;
  font-size: 20px;
  font-weight: 500;
  line-height: 150%;
}
@media screen and (max-width: 744px) {
  .p-reason .text {
    font-size: 4.2666666667vw;
  }
}
.p-reason .text .span {
  color: var(--color-primary);
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
}
@media screen and (max-width: 744px) {
  .p-reason .text .span {
    font-size: 4.2666666667vw;
  }
}
.p-reason .text.__1 {
  max-width: 510px;
  margin-left: auto;
  padding: 31px 0 31px;
}
@media screen and (max-width: 744px) {
  .p-reason .text.__1 {
    margin-left: initial;
    max-width: 100%;
    padding: 0;
  }
}
.p-reason .text.__4 {
  max-width: 410px;
}
@media screen and (max-width: 744px) {
  .p-reason .text.__4 {
    max-width: 100%;
  }
}
.p-reason .text.__4:not(:last-of-type) {
  margin-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .p-reason .text.__4:not(:last-of-type) {
    margin-bottom: 4.2666666667vw;
  }
}
.p-reason .text.__5 {
  padding-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .p-reason .text.__5 {
    padding-bottom: 4.2666666667vw;
  }
}
.p-reason .items {
  max-width: 780px;
  margin: 0 auto;
  gap: 87px;
  display: flex;
  padding-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .p-reason .items {
    padding-bottom: 4.2666666667vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .items.__2 {
    display: block;
    max-width: 100%;
    padding: 5.3333333333vw;
    background: #f7eaf3;
    width: 56vw;
    margin: initial;
    margin-left: auto;
    margin-bottom: 6.4vw;
  }
}
.p-reason .items.__3 {
  max-width: 511px;
  margin: initial;
  margin-right: auto;
  margin-left: 32px;
  gap: initial;
  justify-content: space-between;
}
@media screen and (max-width: 744px) {
  .p-reason .items.__3 {
    gap: 18.9333333333vw;
    max-width: 100%;
    gap: 5.0666666667vw;
    padding-bottom: 6.4vw;
    margin-left: 0;
  }
}
.p-reason .item {
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-reason .item:not(:last-of-type) {
    margin-bottom: 10.6666666667vw;
  }
}
.p-reason .item:not(:last-of-type)::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -63px;
  width: 39px;
  height: 80px;
  background: url(../images/arrow-purple.svg) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-reason .item:not(:last-of-type)::after {
    top: initial;
    right: initial;
    transform: initial;
    left: -18.6666666667vw;
    bottom: 0;
    rotate: 90deg;
    width: 10.4vw;
    height: 21.3333333333vw;
  }
}
.p-reason .item.__3 {
  width: 220px;
}
@media screen and (max-width: 744px) {
  .p-reason .item.__3 {
    margin-bottom: 0;
    width: 38.6666666667vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item.__3:not(:last-of-type) {
    margin-bottom: 0px;
  }
}
.p-reason .item.__3:not(:last-of-type)::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -55px;
  width: 39px;
  height: 80px;
  background: url(../images/arrow-purple.svg) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-reason .item.__3:not(:last-of-type)::after {
    right: initial;
    left: 39.7333333333vw;
    rotate: 360deg;
    width: 3.2vw;
    height: 10.6666666667vw;
    background: url(../images/arrow-purple-sp.svg) center/cover no-repeat;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item.__3 img {
    aspect-ratio: 145/160;
    width: 100%;
    object-fit: cover;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item__img.__2 {
    width: 45.3333333333vw;
    margin-left: auto;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item__img.__3 {
    width: 38.6666666667vw;
    margin-left: auto;
  }
}
.p-reason .item__txt {
  position: absolute;
  width: 100%;
  color: #fff;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 150%;
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.p-reason .item__txt.__2 {
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt.__2 {
    width: 32vw;
    height: 32vw;
    font-size: 3.4666666667vw;
    line-height: 5.3333333333vw;
    background: #000;
    left: -13.3333333333vw;
    bottom: initial;
    top: -9.6vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt.__2.__2-1 {
    background: #333;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt.__2.__2-2 {
    background: #c05494;
    top: -8.5333333333vw;
  }
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt.__2.__2-3 {
    background: #ff3394;
    top: -6.6666666667vw;
  }
}
.p-reason .item__txt.__3 {
  top: 6px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 744px) {
  .p-reason .item__txt.__3 {
    font-size: 2.9333333333vw;
    line-height: 100%;
    bottom: initial;
    top: 1.6vw;
  }
}
.p-reason .btns {
  display: flex;
  gap: 23px;
}
@media screen and (max-width: 744px) {
  .p-reason .btns {
    display: block;
  }
}
.p-reason .btns .btn {
  width: 408px;
  text-align: center;
  font-size: 21px;
  font-weight: 700;
  line-height: 100%;
  border-radius: 69px;
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
  background: #fff;
  transition: background 0.3s, color 0.3s;
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-reason .btns .btn {
    border: 0.2666666667vw solid var(--color-primary);
    width: 100%;
    font-size: 4.8vw;
    border-radius: 18.4vw;
  }
  .p-reason .btns .btn:not(:last-of-type) {
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 744px) and (max-width: 744px) {
  .p-reason .btns .btn:not(:last-of-type) {
    margin-bottom: 4.2666666667vw;
  }
}
.p-reason .btns .btn:hover {
  color: #fff;
  border: 1px solid #fff;
  background: var(--color-primary);
}
@media screen and (max-width: 744px) {
  .p-reason .btns .btn:hover {
    border: 0.2666666667vw solid #fff;
  }
}
.p-reason .btns .btn a {
  padding: 23px 0;
  color: var(--color-primary);
  width: 100%;
  height: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
  transition: color 0.3s;
}
@media screen and (max-width: 744px) {
  .p-reason .btns .btn a {
    padding: 4vw 0;
  }
}
.p-reason .btns .btn a:hover {
  color: #fff;
}
.p-reason .btns .btn:after {
  content: "";
  border: 0;
  width: 12px;
  height: 12px;
  border-top: solid 2px var(--color-primary);
  border-right: solid 2px var(--color-primary);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 744px) {
  .p-reason .btns .btn:after {
    right: 5.3333333333vw;
    width: 3.2vw;
    height: 3.2vw;
    border-top: solid 0.5333333333vw var(--color-primary);
    border-right: solid 0.5333333333vw var(--color-primary);
  }
}
.p-reason .btns .btn:hover::after {
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
}
@media screen and (max-width: 744px) {
  .p-reason .btns .btn:hover::after {
    border-top: solid 0.5333333333vw #fff;
    border-right: solid 0.5333333333vw #fff;
  }
}

.p-unique {
  background: #d8e2e9;
}
@media screen and (max-width: 744px) {
  .p-unique {
    background: url(../images/unique-01-sp.webp) center/cover no-repeat;
  }
}
.p-unique .p-unique__inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 56px 0 88px;
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-unique .p-unique__inner {
    padding: 8.5333333333vw 4.2666666667vw 17.0666666667vw;
  }
}
.p-unique .p-unique__inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: -470px;
  width: 893px;
  height: 385px;
  background: url(../images/unique-01.webp) center/cover no-repeat;
}
@media screen and (max-width: 744px) {
  .p-unique .p-unique__inner::after {
    display: none;
  }
}
.p-unique .p-unique__content {
  max-width: 600px;
  margin-left: auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 744px) {
  .p-unique .p-unique__content {
    max-width: 100%;
  }
}
@media screen and (max-width: 744px) {
  .p-unique .ttls {
    display: grid;
    justify-content: right;
  }
}
.p-unique .ttl {
  color: #111;
  font-family: var(--font-yumincho);
  font-size: 40px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 32px;
}
@media screen and (max-width: 744px) {
  .p-unique .ttl {
    font-size: 6.9333333333vw;
    margin-bottom: 8.5333333333vw;
    text-align: center;
  }
}
.p-unique .ttl span {
  color: var(--color-primary);
  font-size: 40px;
  line-height: 130%;
}
@media screen and (max-width: 744px) {
  .p-unique .ttl span {
    font-size: 6.9333333333vw;
  }
}
.p-unique .text {
  color: #111;
  font-size: 18px;
  font-weight: 500;
  line-height: 170%;
  padding-bottom: 24px;
}
@media screen and (max-width: 744px) {
  .p-unique .text {
    font-size: 4.2666666667vw;
    padding-bottom: 6.4vw;
  }
}
.p-unique .text span {
  color: var(--color-primary);
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
}
@media screen and (max-width: 744px) {
  .p-unique .text span {
    font-size: 4.2666666667vw;
  }
}
.p-unique .detail {
  background: #fff;
  color: #111;
  font-size: 16px;
  font-weight: 500;
  line-height: 150%;
  padding: 10px 15px 13px;
}
@media screen and (max-width: 744px) {
  .p-unique .detail {
    font-size: 4vw;
    padding: 2.6666666667vw 4vw 3.4666666667vw;
  }
}

.p-admit {
  max-width: 1920px;
  margin: 0 auto;
  background: url(../images/admit-01.webp) center/cover no-repeat;
  overflow: initial;
}
@media screen and (max-width: 744px) {
  .p-admit {
    background: url(../images/admit-01-sp.webp) center/cover no-repeat;
  }
}
.p-admit .p-admit__inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 48px 0;
  position: relative;
}
@media screen and (max-width: 744px) {
  .p-admit .p-admit__inner {
    padding: 85.3333333333vw 4.2666666667vw 8.5333333333vw;
  }
}
.p-admit .float-img {
  position: absolute;
  top: -36px;
  right: -364px;
  width: 870px;
  height: 466px;
}
@media screen and (max-width: 744px) {
  .p-admit .float-img {
    width: 91.4666666667vw;
    height: 91.4666666667vw;
    right: initial;
    left: 50%;
    transform: translateX(-50%);
    top: -10.6666666667vw;
  }
}
@media screen and (max-width: 744px) {
  .p-admit .float-img img {
    box-shadow: -8px 10px 8px 0 rgba(0, 0, 0, 0.3);
  }
}
.p-admit .content {
  max-width: 460px;
  margin-right: auto;
}
@media screen and (max-width: 744px) {
  .p-admit .content {
    max-width: 100%;
  }
}
.p-admit .ttl {
  font-family: var(--font-yumincho);
  font-size: 40px;
  font-weight: 800;
  line-height: 130%;
  letter-spacing: 2px;
  margin-bottom: 32px;
  background: linear-gradient(270deg, #ffd66d 0%, #ffe6a6 35.1%, #fff8e5 58.65%, #ffde8a 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 744px) {
  .p-admit .ttl {
    font-size: 6.9333333333vw;
    letter-spacing: 0.3466666667vw;
    margin-bottom: 4.2666666667vw;
    text-align: center;
  }
}
.p-admit .text {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
}
@media screen and (max-width: 744px) {
  .p-admit .text {
    font-size: 4.2666666667vw;
  }
}

/* --------------------------------------------------
 症例写真
-------------------------------------------------- */
.sec_case {
  background: #fef5fa;
}
.sec_case .lpInner {
  padding: 72px 0;
}
@media screen and (max-width: 744px) {
  .sec_case .lpInner {
    padding: 7.5vw 4vw;
  }
}
.sec_case .lpInner .c-ttls {
  margin-bottom: 32px;
}
@media screen and (max-width: 744px) {
  .sec_case .lpInner .c-ttls {
    margin-bottom: 4.2666666667vw;
  }
}

/* --------------------------------------------------
 施術の流れ
-------------------------------------------------- */
@media screen and (max-width: 744px) {
  #tempFlow {
    padding-top: 0;
  }
}
#tempFlow .tempFlow__lists {
  background: #fcf5ed;
}
#tempFlow h3 {
  margin-bottom: inherit;
}

/* --------------------------------------------------
 料金
-------------------------------------------------- */
#tempPrice {
  background: #f7eaf3;
}
#tempPrice .c_menu__head h3 {
  text-align: center;
}
#tempPrice .p_price__area {
  margin-bottom: 0;
}
#tempPrice .inner {
  padding: 72px 0 72px;
}
@media screen and (max-width: 744px) {
  #tempPrice .inner {
    padding: 8.5333333333vw 4.2666666667vw 6.4vw;
  }
}

/* --------------------------------------------------
 広告用
-------------------------------------------------- */
.monitor .board_ads {
  background: linear-gradient(135deg, #f0285a 0%, #ff6ea0 100%);
  color: #fff;
  font-size: 21px;
  font-weight: 700;
  padding: 8px 0;
}
@media screen and (max-width: 744px) {
  .monitor .board_ads {
    padding: 2.1333333333vw 4.2666666667vw 1.0666666667vw;
  }
}
.monitor .board_ads_inner {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  line-height: 1;
  font-feature-settings: "palt";
}
@media screen and (max-width: 744px) {
  .monitor .board_ads_inner {
    flex-direction: column;
    align-items: center;
    font-size: 5.6vw;
    line-height: 1.3;
    text-align: center;
    letter-spacing: 0.2666666667vw;
  }
}
.monitor .board_ads__sub {
  position: relative;
  display: inline-flex;
  align-items: center;
  font-weight: bold;
}
@media screen and (max-width: 744px) {
  .monitor .board_ads__sub {
    font-size: 4.8vw;
  }
}
.monitor .board_ads__sub::before, .monitor .board_ads__sub::after {
  content: "";
  display: inline-block;
  width: 38px;
  height: 0;
  border-top: 2.5px solid #fff;
  transform: rotate(60deg);
}
@media screen and (max-width: 744px) {
  .monitor .board_ads__sub::before, .monitor .board_ads__sub::after {
    width: 12.8vw;
    border-top: 0.5333333333vw solid #fff;
  }
}
.monitor .board_ads__sub::after {
  transform: rotate(120deg);
}
.monitor .board_ads__main {
  display: block;
  color: #fff;
}
@media screen and (max-width: 744px) {
  .monitor .board_ads__main {
    font-size: 5.6vw;
  }
}
.monitor .board_ads__main span {
  font-size: 42px;
  font-family: var(--font-zen);
  color: yellow;
  margin-left: 4px;
  margin-right: 4px;
}
@media screen and (max-width: 744px) {
  .monitor .board_ads__main span {
    font-size: 9.6vw;
  }
}
.monitor .line {
  padding-bottom: 16px;
}
@media screen and (max-width: 744px) {
  .monitor .line {
    padding-bottom: 2.1333333333vw;
  }
}
.monitor .line__date {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 744px) {
  .monitor .line__date {
    gap: 1.0666666667vw;
    margin-top: 2.1333333333vw;
    font-size: 4.2666666667vw;
  }
}
.monitor .line__date span {
  background: var(--color-strong);
  color: #fff;
  border-radius: 4px;
  padding: 4px 8px;
}
@media screen and (max-width: 744px) {
  .monitor .line__date span {
    border-radius: 1.0666666667vw;
    padding: 1.0666666667vw 2.1333333333vw;
  }
}
.monitor .line__note {
  font-size: 12px;
  margin-top: 8px;
}
@media screen and (max-width: 744px) {
  .monitor .line__note {
    font-size: 2.4vw;
    margin-top: 2.1333333333vw;
    text-align: left;
  }
}
.monitor #tempPrice .sec__cttl {
  margin-bottom: 8px;
}
.monitor #tempPrice .tempPrice__ttl {
  font-size: 24px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .tempPrice__ttl {
    font-size: 4.8vw;
  }
}
.monitor #tempPrice .tempPrice__ttl span {
  display: block;
  color: #dd5564;
  font-size: 48px;
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .tempPrice__ttl span {
    font-size: 8vw;
  }
}
.monitor #tempPrice .sec__cttl.tempPrice__ttl {
  font-weight: bold;
  font-size: 24px;
  color: #222;
  line-height: 1.5;
  text-align: center;
  font-feature-settings: "palt";
}
.monitor #tempPrice .tempPrice__ttl__sub {
  position: relative;
  display: inline-flex;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .tempPrice__ttl__sub {
    font-size: 4.8vw;
  }
}
.monitor #tempPrice .tempPrice__ttl__sub::before, .monitor #tempPrice .tempPrice__ttl__sub::after {
  content: "";
  display: inline-block;
  width: 38px;
  height: 0;
  border-top: 2.5px solid #222;
  transform: rotate(60deg);
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .tempPrice__ttl__sub::before, .monitor #tempPrice .tempPrice__ttl__sub::after {
    width: 12.8vw;
  }
}
.monitor #tempPrice .tempPrice__ttl__sub::after {
  transform: rotate(120deg);
}
.monitor #tempPrice .tempPrice__ttl__main {
  display: block;
  color: #dd5564;
  font-size: 48px;
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .tempPrice__ttl__main {
    font-size: 8vw;
  }
}
.monitor #tempPrice .notice_txt {
  text-align: center;
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 700;
  font-feature-settings: "palt";
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .notice_txt {
    margin-bottom: 1.0666666667vw;
    font-size: 4vw;
  }
}
.monitor #tempPrice .notice button {
  margin-bottom: 20px;
  color: #3c60ff;
  text-decoration: underline;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 744px) {
  .monitor #tempPrice .notice button {
    margin-bottom: 5.3333333333vw;
    font-size: 4vw;
  }
}
.monitor .pick_note {
  width: 100%;
  background-color: #fff;
  color: #dd5564;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
  border: 1px solid #dd5564;
  padding: 4px;
  margin: 18px 0;
}
@media screen and (max-width: 744px) {
  .monitor .pick_note {
    font-size: 3.2vw;
    border: 0.2666666667vw solid #dd5564;
    padding: 1.0666666667vw;
    margin: 4.8vw 0;
  }
}

/*# sourceMappingURL=style.css.map */
