@charset "UTF-8";

/* =====================================================
 * reset.css
 * - Edit html5doctor.com's CSS
 * - http://html5doctor.com/html-5-reset-stylesheet/
 * Last Updated:2017-03-01
====================================================== */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
select,
textarea {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  vertical-align: bottom;
  background: transparent;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
  display: block;
}

/*html{font-size:62.5%;}*/

body {
  font-family: sans-serif;
  line-height: 1;
}

ul,
ol {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  background: transparent;
  outline: none;
}

img {
  vertical-align: bottom;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

input,
select,
textarea {
  font-family: inherit;
}

input[type=submit] {
  cursor: pointer;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

:root {
  --text-family: var.$font-base;
  --text-color: var.$clr_black;
  --fs10: calc(10/16*1rem);
  --fs11: 0.6875rem;
  --fs12: 0.75rem;
  --fs13: 0.8125rem;
  --fs14: 0.875rem;
  --fs15: 0.9375rem;
  --fs16: 1rem;
  --fs17: 1.0625rem;
  --fs18: 1.125rem;
  --fs19: 1.1875rem;
  --fs20: 1.25rem;
  --fs21: 1.3125rem;
  --fs22: 1.375rem;
  --fs23: 1.4375rem;
  --fs24: 1.5rem;
}

html {
  font-size: var(--fs16);
}

body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.813rem + 0.3vw, 1rem);
  color: #2B2A2A;
  font-weight: 400;
  line-height: 2;
  font-feature-settings: "pwid", "pkna";
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

a {
  text-decoration: none;
  color: #4F3539;
}

a[href^="tel:"] {
  pointer-events: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.pc {
  display: block;
}

.md {
  display: none;
}

.sp {
  display: none;
}

.fc_pink {
  color: #f5558a;
}

.text_bold {
  font-weight: 700;
}

.ff-min {
  font-family: "Hina Mincho", serif;
}

.fs-medium {
  font-size: 1.2em;
}

.fs-large {
  font-size: 3em;
}

.text-center {
  text-align: center;
}

.marker {
  padding: 0 min(0.1em, 2px) min(0.35em, 7px) min(0.1em, 2px);
  background: linear-gradient(transparent 56%, #ffff00 0%);
}

.text-lead {
  font-size: clamp(1rem, 0.813rem + 0.8vw, 1.3125rem);
  line-height: 1.2;
  text-align: center;
}

.content-inner {
  width: min(100%, 1040px);
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.btn01 {
  position: relative;
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.375rem, 0.538rem + 3.5vw, 2.725rem);
  background: none;
  border-radius: 999px;
  border: none;
  color: #fff;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 7px 7px 5px 0px rgba(0, 0, 0, 0.3);
}

.btn01::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 999px;
  border: clamp(0.25rem, 0.125rem + 0.6vw, 0.5rem) solid transparent;
  transition: transform 0.3s linear, border-width 0.3s linear, border-radius 0.3s linear, filter 0.6s linear;
  background-image: linear-gradient(90deg, rgb(251, 207, 0) 0.56%, rgb(255, 252, 209) 25.28%, rgb(250, 244, 192) 29.57%, rgb(239, 221, 147) 38.09%, rgb(220, 186, 75) 49.91%, rgb(203, 155, 12) 59.55%, rgb(232, 205, 103) 79.57%, rgb(243, 225, 139) 87.08%, rgb(255, 252, 209) 100%);
  background-origin: border-box;
  background-clip: border-box;
  -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  -webkit-mask-clip: padding-box, border-box;
  -webkit-mask-composite: destination-out;
  mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  mask-clip: padding-box, border-box;
  mask-composite: exclude;
}

.btn01:active {
  transform: scale(0.96);
}

.btn01-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: min(0.2752293578em, 12px) 0 min(0.3899082569em, 17px);
  box-sizing: border-box;
}

.btn01-btn {
  background: linear-gradient(0deg, rgb(0, 0, 0) 0.02%, rgb(51, 18, 29) 3.98%, rgb(96, 33, 54) 8.12%, rgb(136, 47, 77) 12.56%, rgb(170, 59, 96) 17.22%, rgb(197, 68, 111) 22.16%, rgb(218, 76, 123) 27.5%, rgb(233, 81, 132) 33.42%, rgb(242, 84, 136) 40.38%, rgb(245, 85, 138) 50.96%, rgb(0, 0, 0) 100%);
  background-size: 100% 230%;
  background-position: 0 75%;
  border-radius: 999px;
  color: #fff;
}

.btn01-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.1009174312em;
  transform: translateY(-50%);
  background: url(../../images/icon_arrow01.svg) no-repeat 0 0/100% auto;
  width: 0.5275229358em;
  height: auto;
  aspect-ratio: 46/75;
}

.hgroup {
  text-align: center;
  line-height: 1.2;
}

.hgroup .subheadline01 {
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  font-weight: 700;
  color: #f5558a;
}

.hgroup .subheadline02 {
  font-family: "Hina Mincho", serif;
  font-size: clamp(2.125rem, 1.625rem + 2.2vw, 3rem);
  color: #f5558a;
}

.hgroup .headline01 {
  font-family: "Hina Mincho", serif;
  font-size: clamp(2.875rem, 2.375rem + 2.2vw, 3.75rem);
  font-weight: 400;
}

.hgroup .headline02 {
  font-family: "Hina Mincho", serif;
  font-size: clamp(2.125rem, 1.625rem + 2.2vw, 3rem);
  font-weight: 400;
}

.hgroup .subheadline01 + .headline01 {
  margin-top: 0.3833333333em;
}

.hgroup .subheadline02 + .headline01 {
  margin-top: 0.15em;
}

.hgroup .headline01 + .subheadline01 {
  margin-top: 0.75em;
}

.hgroup .subheadline01 + .headline02 {
  margin-top: 0.4375em;
}

.subheadline {
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.75rem, 1.438rem + 1.3vw, 2.25rem);
  font-weight: 700;
  color: #f5558a;
  line-height: 1.2;
  text-align: center;
}

/* mv */

.mv {
  position: relative;
  padding: 75px 0 55px;
  background: url(../../images/mv_bg.webp) no-repeat 100% 50%/cover;
}

.mv::before,
.mv::after {
  content: "";
  position: absolute;
  left: 0;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
  width: 100%;
  height: auto;
  mix-blend-mode: overlay;
}

.mv::before {
  top: 0;
  aspect-ratio: 2798/292;
  background-image: url(../../images/mv_bg_text01.webp);
}

.mv::after {
  bottom: 0;
  aspect-ratio: 2801/269;
  background-image: url(../../images/mv_bg_text02.webp);
}

.mv-content {
  position: relative;
  width: min(100%, 1056px);
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  z-index: 1;
}

.mv-item {
  display: none;
}

.mv-content__main {
  /*width: min(calc(1413 / 2010 * 100%), calc(1413px / 2));
  margin: 0 min(calc(5 / 16 * 1em), 5px) min(calc(30 / 16 * 1em), 30px);*/
  width: min(86.7164179104%, 871.5px);
  margin: 0 min(0.3125em, 5px) 0;
  background: url(../../images/mv_main_bg.webp) no-repeat 0 0/100% auto;
}

.mv-main {
  /*width: min(calc(1413 / 2010 * 100%), calc(1413px / 2));*/
  width: min(81.0671256454%, 706.5px);
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 0.5s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
  opacity: 0;
}

.mv-features {
  width: min(62.0195065978%, 540.5px);
  margin: min(1.375em, 22px) auto min(1.875em, 30px) min(14.8148148148%, 80px);
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 0.5s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
  opacity: 0;
}

.mv .btn01 {
  width: min(81.995412844%, 715px);
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 1s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
  opacity: 0;
}

/* advantages */

.advantages {
  padding: min(7.5em, 120px) 0 min(8em, 128px);
  background: url(../../images/advantages_bg.webp) no-repeat 127% 3.0714285714svw/57.9285714286% auto;
}

.advantages-several {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: min(2.875em, 46px);
  margin: 80px auto 0;
}

.advantages-several > li {
  padding-bottom: min(2.375em, 38px);
  border: 1px solid #F2ECEE;
  border-radius: clamp(0.6875rem, 0.25rem + 1.8vw, 1.375rem);
  background-color: #fff;
}

.advantages-several .advantages-several__img {
  position: relative;
  margin-bottom: 1em;
}

.advantages-several .advantages-several__img > img {
  border-radius: clamp(0.6875rem, 0.25rem + 1.8vw, 1.375rem) clamp(0.6875rem, 0.25rem + 1.8vw, 1.375rem) 0 0;
}

.advantages-several .advantages-several__reason {
  position: absolute;
  top: min(5.3333333333svw, 16px);
  left: min(4.6666666667%, 14px);
  font-size: clamp(0.75rem, 0.688rem + 0.3vw, 0.875rem);
  color: #f5558a;
  line-height: 1.4285714286;
  text-align: center;
}

.advantages-several .advantages-several__reason .advantages-several__num {
  display: block;
  font-size: clamp(1.75rem, 1.438rem + 1.3vw, 2.25rem);
  font-weight: 700;
  line-height: 1;
}

.advantages-several .advantages-several__point {
  margin: 0.5em 0.4375em 0.1875em;
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.5625rem, 1.313rem + 1.1vw, 2rem);
  color: #f5558a;
  line-height: 1.2;
}

.advantages-several .advantages-several__list {
  margin: 0 0.625em;
}

.advantages-several .advantages-several__list > li {
  position: relative;
  padding-left: min(1.5em, 30px);
  font-size: clamp(1rem, 0.875rem + 0.6vw, 1.25rem);
}

.advantages-several .advantages-several__list > li::before {
  content: "";
  position: absolute;
  top: min(0.5em, 10px);
  left: 0;
  width: min(1.375em, 27.5px);
  height: auto;
  aspect-ratio: 55/47;
  background: url(../../images/icon_check01.svg) no-repeat 0 0/100% auto;
}

/* treatments */

.treatments {
  padding: min(3.625em, 58px) 0 min(3.5em, 56px);
  background: url(../../images/treatments_bg.webp) no-repeat 50% 50%/cover;
}

.treatments .headline01 .fs-medium {
  margin: 0 min(0.1388888889em, 10px);
}

.treatments .hgroup .subheadline02 + .headline01 {
  margin-top: -0.0666666667em;
}

.treatments-flow {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: min(2.875em, 46px);
  margin: min(5.625em, 90px) auto 0;
}

.treatments-flow > li {
  position: relative;
  padding: min(3.125em, 50px) min(1em, 16px) min(1em, 16px);
  background-color: #fff;
  border: 1px solid #F2ECEE;
  border-radius: clamp(0.5rem, 0.188rem + 1.3vw, 1rem);
  font-family: "Hina Mincho", serif;
}

.treatments-flow > li:not(:last-of-type)::after {
  content: "";
  position: absolute;
  bottom: 35%;
  left: calc(100% + 1.0625em);
  transform: translateY(-50%);
  width: min(6.6666666667%, 20px);
  height: auto;
  aspect-ratio: 40/62;
  background: url(../../images/icon_arrow02.svg) no-repeat 0 0/100% auto;
}

.treatments-flow .treatments-flow__step {
  position: absolute;
  top: max(-3em, -48px);
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(5.5em, 88px);
  aspect-ratio: 1/1;
  background-color: #f5558a;
  border-radius: 50%;
}

.treatments-flow .treatments-flow__step p {
  font-size: clamp(1rem, 0.813rem + 0.8vw, 1.3125rem);
  text-align: center;
  line-height: 1;
  color: #fff;
}

.treatments-flow .treatments-flow__step p .treatments-flow__num {
  display: block;
  font-size: clamp(1.75rem, 1.438rem + 1.3vw, 2.25rem);
}

.treatments-flow .treatments-flow__img {
  width: min(79.1044776119%, 212px);
  margin: 0 auto min(0.4375em, 7px);
}

.treatments-flow .treatments-flow__flow {
  font-size: clamp(1.4375rem, 1.188rem + 1.1vw, 1.875rem);
  line-height: 1.2;
  text-align: center;
}

.treatments-merit {
  margin-top: min(1.875em, 30px);
  padding: min(0.9375em, 15px) 0 min(1.1875em, 19px);
  background-color: #f5558a;
  border-radius: clamp(1rem, 0.438rem + 2.4vw, 1.9375rem);
}

.treatments-merit__list {
  display: flex;
  flex-wrap: wrap;
  gap: min(1.25em, 20px);
  width: 94%;
  margin: 0 auto;
}

.treatments-merit__list > li {
  position: relative;
  padding-left: min(1.125em, 27px);
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}

.treatments-merit__list > li::before {
  content: "";
  position: absolute;
  top: min(0.125em, 3px);
  left: 0;
  width: min(1.0416666667em, 25px);
  height: auto;
  aspect-ratio: 1/1;
  background: url(../../images/icon_check02.svg) no-repeat 0 0/100% auto;
}

/* femcare */

.femcare {
  position: relative;
  padding: min(5.75em, 92px) 0 min(4.25em, 68px);
  overflow-x: hidden;
}

.femcare::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 294px;
  background: linear-gradient(90deg, #f5558a 0%, #f5558a 50%, rgba(245, 85, 138, 0.1) 50%, rgba(245, 85, 138, 0.1) 100%);
  z-index: -1;
}

.femcare-content {
  display: flex;
}

.femcare-content .femcare-content__clm {
  width: 50%;
}

.femcare-content .femcare-content__clm:nth-of-type(1) {
  padding-bottom: min(1.25em, 20px);
}

.femcare-content .femcare-content__clm:nth-of-type(2) {
  padding-top: min(1.25em, 20px);
}

.femcare-content .femcare-content__img {
  width: min(94.5%, 472.5px);
}

.femcare-content .femcare-content__desc {
  margin: min(1.875em, 30px) min(0.5625em, 9px) 0;
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  line-height: 1.6666666667;
  color: #fff;
}

.femcare-content .femcare-content__ambassador {
  position: relative;
  margin-bottom: min(1.3125em, 21px);
  padding: min(0.125em, 2px) 0 min(1.5em, 24px);
  font-family: "Hina Mincho", serif;
  line-height: 1.5;
}

.femcare-content .femcare-content__ambassador::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: calc(50% - 50vw);
  height: 1px;
  background-color: #f5558a;
}

.femcare-content .femcare-content__ambassador .femcare-content__lead {
  font-family: "Hina Mincho", serif;
  font-size: clamp(1rem, 0.875rem + 0.6vw, 1.25rem);
  line-height: 1.2;
  color: #f5558a;
}

.femcare-content .femcare-content__text {
  width: min(96%, 480px);
  margin: 0 0 0 auto;
}

.femcare-content .femcare-content__headline {
  font-family: "Hina Mincho", serif;
  font-size: clamp(2.125rem, 1.5rem + 2.6vw, 3.125rem);
  line-height: 1.44;
}

.femcare-content .femcare-content__menu {
  margin-top: min(2.625em, 42px);
}

.femcare-content .femcare-content__menu > li {
  position: relative;
  padding-left: min(4em, 64px);
  line-height: 1.25;
}

.femcare-content .femcare-content__menu > li:not(:last-of-type) {
  margin-bottom: min(1.75em, 28px);
}

.femcare-content .femcare-content__menu > li::before {
  content: "";
  position: absolute;
  top: max(-0.25em, -4px);
  left: 0;
  width: min(6.875em, 55px);
  height: auto;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
}

.femcare-content .femcare-content__menu > li:nth-of-type(1)::before {
  background-image: url(../../images/femcare_icon01.webp);
}

.femcare-content .femcare-content__menu > li:nth-of-type(2)::before {
  background-image: url(../../images/femcare_icon02.webp);
}

.femcare-content .femcare-content__menu > li:nth-of-type(3)::before {
  background-image: url(../../images/femcare_icon03.webp);
  background-color: rgba(245, 85, 138, 0.1);
  background-blend-mode: multiply;
}

.femcare-content .femcare-content__menu > li:nth-of-type(4)::before {
  background-image: url(../../images/femcare_icon04.webp);
  background-color: rgba(245, 85, 138, 0.1);
  background-blend-mode: multiply;
}

.femcare-content .femcare-content__menu .femcare-content__menu-lead {
  margin-bottom: min(0.2857142857em, 8px);
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.375rem, 1.125rem + 1vw, 1.75rem);
  line-height: 1.2;
  color: #f5558a;
}

/* support */

.support {
  position: relative;
  padding: min(7.125em, 114px) 0 min(7.75em, 124px);
}

.support-lead {
  margin: min(1.5238095238em, 32px) 0 0;
}

.support-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(236px, 1fr));
  gap: min(2.25em, 36px) min(1.125em, 18px);
  margin: min(3.375em, 54px) auto 0;
}

.support-list > li {
  line-height: 1.5;
  text-align: center;
}

.support-list .support-list__list {
  font-size: clamp(0.875rem, 0.75rem + 0.6vw, 1.125rem);
  font-weight: 700;
  color: #f5558a;
  line-height: 1;
}

.support-list .support-list__list .support-list__num {
  display: block;
  font-size: clamp(1.5625rem, 1.313rem + 1.1vw, 2rem);
  font-weight: 700;
}

.support-list .support-list__img {
  width: min(100%, 236px);
  margin: 0 auto min(1.5em, 24px);
}

.support-list .support-list__support {
  margin-bottom: min(0.25em, 6px);
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  line-height: 1.2;
  color: #f5558a;
}

/* session */

.session {
  position: relative;
  padding: min(5em, 80px) 0 min(3.75em, 60px);
  background: url(../../images/session_bg.webp) no-repeat 50% 50%/cover;
}

.session-inner {
  width: min(100%, 1184px);
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.session-lead {
  margin: min(2.380952381em, 50px) 0 min(2.7619047619em, 58px);
}

.session-info {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: min(2.1875em, 35px);
  margin: min(2.25em, 36px) auto min(4.375em, 70px);
}

.session-info > li {
  padding: min(1.4375em, 23px) 0 min(0.625em, 10px);
  background-color: #fff;
  border-radius: clamp(0.5rem, 0.188rem + 1.3vw, 1rem);
  text-align: center;
}

.session-info .session-info__img {
  width: min(61%, 122px);
  margin: 0 auto min(1.0625em, 17px);
}

.session-info .session-info__info {
  font-family: "Hina Mincho", serif;
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  line-height: 1.2;
  color: #f5558a;
}

/* footer */

.footer {
  padding: min(2.6875em, 43px) 20px min(3.625em, 58px);
}

.footer .logo {
  width: min(20.3928571429%, 285.5px);
  margin: 0 auto;
}

.scr-target {
  animation-duration: 1s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
}

.scr-target {
  opacity: 0;
}

/* フェードイン */

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadein.is-active {
  animation-name: fadeIn;
}

@media print, screen and (max-width: 780px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }

  .md {
    display: block;
  }

  .femcare::before {
    background: linear-gradient(180deg, transparent 0%, transparent 30%, rgba(245, 85, 138, 0.1) 30%, rgba(245, 85, 138, 0.1) 100%);
    height: 364px;
  }

  .femcare-content {
    flex-wrap: wrap;
  }

  .femcare-content .femcare-content__clm {
    width: 100%;
  }

  .femcare-content .femcare-content__clm:nth-of-type(1) {
    background: linear-gradient(180deg, transparent 0%, transparent 70%, #f5558a 70%, #f5558a 100%);
  }

  .femcare-content .femcare-content__img {
    margin: 0 auto 0;
  }

  .femcare-content .femcare-content__text {
    margin: 0 auto;
  }
}

@media print, screen and (max-width: 600px) {
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  .content-inner {
    padding: 0 5%;
  }

  .mv {
    padding: 0 0 0;
    background: url(../../images/mv_bg_sp.webp) no-repeat 50% 0/cover;
  }

  .mv::before,
  .mv::after {
    top: 0;
    height: 100%;
  }

  .mv::before {
    left: 0;
    width: 22.6890756303%;
    background-image: url(../../images/mv_bg_text01_sp.webp);
    background-size: auto 100%;
  }

  .mv::after {
    left: auto;
    right: 0;
    width: 20.8216619981%;
    background-image: url(../../images/mv_bg_text02_sp.webp);
    background-size: auto 100%;
  }

  .mv-content {
    padding: 0;
  }

  .mv-item {
    display: block;
    width: 61.6246498599%;
    margin: 0 auto;
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-delay: 0.15s;
    animation-iteration-count: 1;
    animation-fill-mode: both;
    opacity: 0;
  }

  .mv-content__main {
    /*width: calc(320 / 360 * 100%);
    margin: 0 0 min(calc(30 / 16 * 1em), 30px);*/
    width: 100%;
    margin: 0;
    padding-bottom: 9.3370681606%;
    background-position: 50% 0;
    background-size: 123.5051546392% auto;
  }

  .mv-main {
    width: 90.5695611578%;
    margin: 0 auto;
  }

  .mv-features {
    width: 69.18767507%;
    margin: 1.0714285714em auto 1.4285714286em;
  }

  .mv .btn01 {
    width: 92.4369747899%;
    margin: 0 auto;
  }

  .advantages {
    padding: min(3.75em, 60px) 0 min(4em, 64px);
    background-size: 100% auto;
  }

  .advantages-several {
    grid-template-columns: 1fr;
  }

  .treatments-flow {
    gap: min(5.75em, 92px) min(2.875em, 46px);
    grid-template-columns: 1fr;
  }

  .treatments-flow > li:not(:last-of-type)::after {
    bottom: -2.5714285714em;
    left: 50%;
    transform: translate(-50%, 0) rotate(90deg);
  }

  .support {
    padding: min(3.5625em, 114px) 0 min(3.875em, 124px);
  }

  .session-inner {
    padding: 0 5%;
  }

  .session-info {
    grid-template-columns: 1fr 1fr;
  }
}

@media (hover: hover) {
  a {
    transition: all 0.3s ease 0s;
  }

  a:hover {
    color: #f5558a;
  }

  .btn01:hover::before {
    filter: hue-rotate(360deg);
  }
}/*# sourceMappingURL=sourcemaps/style.css.map */
