@charset "UTF-8";
body {
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

.u-desktop__header {
  display: none;
}
@media screen and (min-width: 1100px) {
  .u-desktop__header {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}

img {
  display: block;
  max-width: 100%;
  width: 100%;
  height: auto;
}

/* リキッドレイアウト対応 */
html {
  font-size: 16px;
}
@media (max-width: 390px) {
  html {
    font-size: 4.1025641026vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.6vw;
  }
}
@media (min-width: 1000px) {
  html {
    font-size: 16px;
  }
}

/* pcの電話番号発信対応 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.4;
  }
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

button {
  padding: 0;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.area {
  padding-top: 50px;
  padding-top: 3.125rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .area {
    padding-top: 6.25rem;
  }
}

.area::before {
  content: "";
  position: absolute;
  background-image: url(../images/area/area-section.png);
  background-size: contain;
  background-repeat: no-repeat;
  top: 0;
  right: 0;
  width: 30px;
  width: 1.875rem;
  height: 30px;
  height: 1.875rem;
}
@media screen and (min-width: 768px) {
  .area::before {
    width: 2.8125rem;
    height: 2.8125rem;
  }
}

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

.area__text {
  margin-top: 10px;
  margin-top: 0.625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .area__text {
    width: 30rem;
  }
}

.area__text-top {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 500;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .area__text-top {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .area__text-top {
    font-weight: 300;
  }
}
.area__text-bottom {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.1em;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .area__text-bottom {
    margin-top: 1.875rem;
    max-width: 29.875rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .area__text-bottom {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .area__text-bottom {
    font-weight: 500;
  }
}
.area__map-image {
  margin-top: 15px;
  margin-top: 0.9375rem;
  aspect-ratio: 310/219;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .area__map-image {
    margin-top: 2.0625rem;
    aspect-ratio: 460/318;
    width: 28.75rem;
  }
}

.area__map-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  overflow: hidden;
  border-radius: 0px 0px 30px 0px;
}

.btn01 {
  position: relative;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6875;
  letter-spacing: 0.1em;
  color: #0F2D50;
  font-weight: 700;
  background: #CFDEAE;
  display: block;
  padding-top: 11px;
  padding-top: 0.6875rem;
  padding-bottom: 11px;
  padding-bottom: 0.6875rem;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .btn01 {
    max-width: 39.625rem;
    padding-top: 2.3125rem;
    padding-bottom: 2.3125rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .btn01 {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .btn01 {
    font-weight: 600;
  }
}
.btn01:hover {
  background: #0F2D50;
  color: #CFDEAE;
  opacity: 1;
}

.btn01::before {
  content: "";
  position: absolute;
  background: url(../images/common/btn-arrows.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 71px;
  width: 4.4375rem;
  height: 40px;
  height: 2.5rem;
  right: -50px;
  right: -3.125rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .btn01::before {
    width: 4rem;
    height: 2.25rem;
    right: -2.5rem;
  }
}

.btn02 {
  text-align: center;
  background-color: #fff;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  position: relative;
  color: #000000;
  max-width: 100%;
  width: 270px;
  width: 16.875rem;
  -webkit-box-shadow: 0px 2px 0px rgba(0, 0, 0, .15);
          box-shadow: 0px 2px 0px rgba(0, 0, 0, .15);
  border-radius: 30px;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  color: #000000;
  font-weight: 700;
  padding: 5px ren(25) 5px 15px;
  padding: 0.3125rem ren(25) 0.3125rem 0.9375rem;
}
@media screen and (min-width: 768px) {
  .btn02 {
    width: 39.625rem;
  }
}

.btn02::before {
  content: "";
  position: absolute;
  background: url(../images/common/plus.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 16px;
  width: 1rem;
  height: 16px;
  height: 1rem;
  right: 25px;
  right: 1.5625rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .btn02 a {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .btn02 a {
    font-weight: 500;
  }
}
.btn03 {
  position: relative;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4375;
  letter-spacing: 0.1em;
  color: #0F2D50;
  font-weight: 700;
  background: #CFDEAE;
  display: block;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  max-width: 191px;
  max-width: 11.9375rem;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .btn03 {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .btn03 {
    font-weight: 600;
  }
}
.btn03::before {
  content: "";
  position: absolute;
  background: url(../images/common/btn-arrows.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 59px;
  width: 3.6875rem;
  height: 34px;
  height: 2.125rem;
  right: -32px;
  right: -2rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn03:hover {
  background: #0F2D50;
  color: #CFDEAE;
  opacity: 1;
}

.concept {
  margin-top: 49px;
  margin-top: 3.0625rem;
}
@media screen and (min-width: 768px) {
  .concept {
    margin-top: 5.375rem;
  }
}

@media screen and (min-width: 768px) {
  .concept__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.concept__item--02 {
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .concept__item--02 {
    margin-top: 1.875rem;
  }
}

.concept__image01 {
  margin: 0 0 0 calc(50% - 50vw);
  border-radius: 0px 0px 30px 0px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .concept__image01 {
    max-width: 100%;
    width: 39.0625rem;
  }
}

.concept__image01 img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.concept__content {
  margin-top: 40px;
  margin-top: 2.5rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .concept__content {
    margin-top: 0;
    width: 30.3125rem;
    max-width: 100%;
    margin-left: 1.9375rem;
  }
}

.concept__heading01 {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.9583333333;
  letter-spacing: 0.05em;
  font-weight: 500;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS P明朝", "MS PMincho", serif;
  color: #0F2D50;
}
@media screen and (min-width: 768px) {
  .concept__heading01 {
    font-size: 2.125rem;
    line-height: 2.0588235294;
    letter-spacing: 0.15em;
    margin-top: 0.9375rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .concept__heading01 {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .concept__heading01 {
    font-weight: 300;
  }
}
.concept__text {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 500;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}
/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .concept__text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .concept__text {
    font-weight: 300;
  }
}
.concept__images {
  width: 322px;
  width: 20.125rem;
  max-width: 100%;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .concept__images {
    width: 30.3125rem;
    margin-top: 0;
    margin-right: 1.9375rem;
  }
}

@media screen and (max-width: 768px) {
  .concept__images {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
}
.concept__image02 {
  aspect-ratio: 114/87;
  width: 35%;
}
@media screen and (min-width: 768px) {
  .concept__image02 {
    width: 100%;
    aspect-ratio: 173/132;
    max-width: 10.8125rem;
  }
}

.concept__image02 img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
.concept__image03 {
  aspect-ratio: 1/1;
  width: 51%;
  margin-left: auto;
  margin-top: -39px;
  margin-top: -2.4375rem;
  min-width: 167px;
  min-width: 10.4375rem;
}
@media screen and (min-width: 768px) {
  .concept__image03 {
    max-width: 15.8125rem;
    margin-top: -3.75rem;
  }
}

.concept__image03 img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.concept__content02 {
  background: #E9EFF9;
  border-radius: 30px;
  width: 100%;
  margin-inline: auto;
  padding: 20px;
  padding: 1.25rem;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .concept__content02 {
    aspect-ratio: 484/397;
    max-width: 30.25rem;
    padding: 1.875rem 1.5625rem;
    margin-right: 0;
    margin-top: 0;
  }
}

.concept__content02 img {
  max-width: 120px;
  max-width: 7.5rem;
  width: 100%;
  margin-inline: auto;
}

.concept__content02 h3 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2.1111111111;
  letter-spacing: 0.15em;
  margin-top: 30px;
  margin-top: 1.875rem;
  color: #0F2D50;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .concept__content02 h3 {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .concept__content02 h3 {
    font-weight: 300;
  }
}
.concept__content02 p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  font-weight: 500;
  margin-top: 10px;
  margin-top: 0.625rem;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .concept__content02 p {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .concept__content02 p {
    font-weight: 300;
  }
}
.faq {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .faq {
    margin-top: 6.25rem;
  }
}

@media screen and (min-width: 768px) {
  .faq-top__line {
    display: none;
  }
}

.faq__title {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .faq__title {
    margin-top: 0;
  }
}

.faq__items {
  overflow: hidden;
  position: relative;
  border-radius: 0px 0px 30px 30px;
}

.faq__items::before {
  content: "";
  position: absolute;
  border: 1px dashed #C89B4B;
  width: 310px;
  width: 19.375rem;
  max-width: 100%;
  height: 1px;
  height: 0.0625rem;
  top: 7px;
  top: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .faq__items::before {
    width: 28.125rem;
  }
}

.faq__inner {
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-radius: 30px 30px 30px 0;
}
@media screen and (min-width: 768px) {
  .faq__inner {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    border: 1px solid #0F2D50;
  }
}

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

.faq__container {
  max-width: 310px;
  max-width: 19.375rem;
  width: 100%;
  margin-inline: auto;
  display: grid;
  gap: 20px;
  gap: 1.25rem;
  grid-template-columns: 1fr;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .faq__container {
    max-width: 58.125rem;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 1.875rem;
       -moz-column-gap: 1.875rem;
            column-gap: 1.875rem;
    row-gap: 1.25rem;
  }
}

.faq__head {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #0F2D50;
  border-radius: 0px 0px 30px 30px;
  padding: 15px 53px 10px 67px;
  padding: 0.9375rem 3.3125rem 0.625rem 4.1875rem;
}
@media screen and (min-width: 768px) {
  .faq__head {
    padding: 0.9375rem 3.1875rem 0.9375rem 4.1875rem;
  }
}

.faq__head-text {
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #fff;
  max-width: 192px;
  max-width: 12rem;
}
@media screen and (min-width: 768px) {
  .faq__head-text {
    max-width: 20.625rem;
    width: 100%;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .faq__head-text {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .faq__head-text {
    font-weight: 500;
  }
}
.faq__head-text::after {
  content: "";
  background: url(../images/common/plus02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 13px;
  width: 0.8125rem;
  height: 13px;
  height: 0.8125rem;
  top: 0.9em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -35px;
  right: -2.1875rem;
}

.faq__head-text::before {
  content: "";
  position: absolute;
  background: url(../images/common/Q.svg);
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  top: 0.9em;
  left: -50px;
  left: -3.125rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.faq__item {
  border-radius: 0px 0px 30px 30px;
}

.faq__text {
  background: #E9EFF9;
  position: relative;
  padding: 15px 20px 20px 64px;
  padding: 0.9375rem 1.25rem 1.25rem 4rem;
  border-radius: 0px 0px 30px 30px;
  line-height: 1.875;
  color: #0F2D50;
  word-wrap: break-word;
}
.faq__text::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/common/A.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  top: 25px;
  top: 1.5625rem;
  left: 20px;
  left: 1.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* アコーディオンが開いた時のスタイル */
.faq__items[open]:not([data-accordion-before-close]) .faq__head-text::after {
  background: url(../images/common/mainasu.svg);
  height: 1px;
  height: 0.0625rem;
}

.faq__items[open]:not([data-accordion-before-close]) .faq__head {
  border-radius: 0;
}

/* フローティングバナー*/
.floating-sp {
  position: fixed;
  bottom: -5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 9997;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .floating {
    position: fixed;
    width: 6.25rem;
    bottom: 10rem;
    right: 0;
    z-index: 9997;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
}

.floating__link-sp {
  display: block;
  display: grid;
  place-items: center;
  /*height: 55px;
  height: 3.4375rem;
  color: #0F2D50;
  background: #CFDEAE;
  border: 1px solid #C89B4B;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="10" /><feOffset dx="1" dy="1" result="offsetblur" /><feFlood flood-color="rgba(0,0,0,0.2)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
  -webkit-filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, .2));
          filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, .2));*/
}

/*Safariのみ適用*/
/*_::-webkit-full-page-media, _:future, :root .floating__link-sp {
  font-weight: 600;
}*/

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .floating__link-sp {
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .floating__link {
    position: relative;
    display: block;
    display: grid;
    place-items: center;
    margin-left: auto;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    /*color: #0F2D50;
    font-weight: 700;
    background: #CFDEAE;
    border: 1px solid #C89B4B;
    border-radius: 20px 0px;
    font-size: 1rem;
    line-height: 1.1875;
    letter-spacing: 0.2em;
    width: 2.8125rem;
    height: 17.375rem;
    z-index: 10;
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease;*/
  }
}

.floating__link:hover,
.floating__link-sp:hover {
  /*background: #0F2D50;
  color: #CFDEAE;*/
  opacity: 1;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .floating__link {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .floating__link {
    font-weight: 500;
  }
}
/*ご利用の流れ*/
.flow-slider {
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
}
@media screen and (min-width: 768px) {
  .flow-slider {
    padding-bottom: 0;
  }
}

.flow-slider__container {
  margin-top: 30px;
  margin-top: 1.875rem;
  position: relative;
  padding-bottom: 80px;
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .flow-slider__container {
    padding-bottom: 6.875rem;
  }
}

.flow-slider__container::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 310px;
  width: 19.375rem;
  height: 68px;
  height: 4.25rem;
  background-image: url(../images/flow/flow-ahirai.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .flow-slider__container::before {
    width: 31.25rem;
    height: 6.875rem;
    bottom: 0;
    left: 21%;
  }
}

@media screen and (max-width: 768px) {
  .flow-slider__container::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.flow-slide {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .flow-slide {
    margin-top: 0;
    overflow: hidden;
  }
}

.flow-slide:first-child .flow-slide__title {
  white-space: nowrap;
}

.flow-slide__head {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .flow-slide__head {
    margin-inline: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 56.25rem;
  }
}

.flow-slide__number {
  background-color: #0f2d50;
  color: #fff;
  border: 1px solid #0f2d50;
  width: 60px;
  width: 3.75rem;
  height: 60px;
  height: 3.75rem;
  line-height: 1.6666666667;
  font-weight: 500;
  display: grid;
  place-items: center;
  font-family: "Josefin Sans", sans-serif;
  font-size: 28px;
  font-size: 1.75rem;
  border-radius: 0px 13.8462px 13.8462px 13.8462px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .flow-slide__number {
    border-radius: 0px 30px 30px 30px;
    width: 14%;
    max-width: 8.125rem;
    height: 8.125rem;
    font-size: 3.75rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .flow-slide__number {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .flow-slide__number {
    font-weight: 300;
  }
}
.flow-slide__title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5833333333;
  font-weight: 700;
  text-align: center;
  margin-top: 15px;
  margin-top: 0.9375rem;
  color: #0f2d50;
  letter-spacing: 0.15em;
}
@media screen and (min-width: 768px) {
  .flow-slide__title {
    width: 86%;
    font-size: 1.5rem;
    margin-top: 0;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .flow-slide__title {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .flow-slide__title {
    font-weight: 600;
  }
}
.flow-slide__box {
  position: relative;
  margin-top: 22px;
  margin-top: 1.375rem;
}
@media screen and (min-width: 768px) {
  .flow-slide__box {
    max-width: 71.25rem;
    margin-top: 0;
  }
}

.flow-slide__box::before {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #0f2d50;
}
@media screen and (min-width: 768px) {
  .flow-slide__box::before {
    top: -40px;
  }
}

.flow-slide__box {
  margin-top: 12px;
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .flow-slide__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-top: 1.875rem;
  }
}

.flow-slide__image {
  aspect-ratio: 625/360;
  margin-top: 25px;
  margin-top: 1.5625rem;
  overflow: hidden;
  border-radius: 0px 0px 14.88px 0px;
}
@media screen and (min-width: 768px) {
  .flow-slide__image {
    width: 60%;
    border-radius: 0px 0px 30px 0px;
    margin-right: 1.875rem;
    margin-top: 0;
    max-width: 39.0625rem;
  }
}

.flow-slide__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .flow-slide__content {
    max-width: 24.0625rem;
  }
}

.flow-slide__text {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 500;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .flow-slide__text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .flow-slide__text {
    font-weight: 300;
  }
}
.flow-slide__text:not(:first-child) {
  margin-top: 36px;
  margin-top: 2.25rem;
}
@media screen and (min-width: 768px) {
  .flow-slide__text:not(:first-child) {
    margin-top: 1.5rem;
  }
}

.flow-slide__btn01 {
  margin-top: 15px;
  margin-top: 0.9375rem;
  margin-inline: auto;
  max-width: 85%;
}
@media screen and (min-width: 768px) {
  .flow-slide__btn01 {
    max-width: 21.6875rem;
    margin-top: 0;
    margin-left: 0;
    margin-right: auto;
  }
}

.flow-slide__btn01 .btn01 {
  padding-top: 11px;
  padding-top: 0.6875rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}
@media screen and (min-width: 768px) {
  .flow-slide__btn01 .btn01 {
    display: grid;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 1.3125rem;
    padding-bottom: 1.3125rem;
    margin-top: 1.875rem;
  }
}

.flow-slide__btn01 .btn01::before {
  width: 50px;
  width: 3.125rem;
  height: 28px;
  height: 1.75rem;
  right: -25px;
  right: -1.5625rem;
}
@media screen and (min-width: 768px) {
  .flow-slide__btn01 .btn01::before {
    width: 4rem;
    height: 2.25rem;
    right: -2.5rem;
  }
}

@media screen and (max-width: 750px) {
  .flow-slide__btn01 .btn01 {
    margin-inline: auto;
  }
}
/*もう一つの矢印*/
.flow-slide__arrow2 {
  display: none;
}
@media screen and (min-width: 768px) {
  .flow-slide__arrow2 {
    display: block;
    position: absolute;
    max-width: 27.5rem;
    top: 0;
    right: 0;
  }
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px !important;
  gap: 0.9375rem !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-pagination-custom,
  .swiper-pagination-fraction {
    gap: 3.125rem !important;
  }
}

.swiper-button-wrapper {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  width: 100%;
  position: absolute;
  top: 35px;
  top: 2.1875rem;
}
@media screen and (min-width: 768px) {
  .swiper-button-wrapper {
    display: none !important;
    top: 1.875rem;
  }
}

.swiper-button-wrapper2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  .swiper-button-wrapper2 {
    position: static;
    margin-top: 4.375rem;
    margin-left: auto;
    margin-right: 5rem;
    max-width: 32.5rem;
    position: relative;
  }
}

.swiper-button-prev-normal,
.swiper-button-next-normal {
  top: auto;
  top: initial;
  bottom: 0;
  width: 35px;
  width: 2.1875rem;
  height: 35px;
  height: 2.1875rem;
  background-color: #0f2d50;
  border-radius: 100px;
}
@media screen and (min-width: 768px) {
  .swiper-button-prev-normal,
  .swiper-button-next-normal {
    width: 3.5rem;
    height: 3.5rem;
    position: relative;
  }
}

.swiper-button-prev-normal::before,
.swiper-button-next-normal::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  z-index: 2;
  background-color: #e9eff9;
  width: 100%;
  height: 100%;
  /*アニメーション*/
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: center;
          transform-origin: center;
}

.swiper-button-prev-normal:hover::before,
.swiper-button-next-normal:hover::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.swiper-button-prev-normal::after {
  content: "";
  position: absolute;
  width: 13px;
  width: 0.8125rem;
  height: 12px;
  height: 0.75rem;
  background-image: url(../images/flow/prev-arrow.png);
  z-index: 10;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .swiper-button-prev-normal::after {
    width: 1.3125rem;
    height: 1.25rem;
  }
}

.swiper-button-next-normal::after {
  content: "";
  position: absolute;
  width: 13px;
  width: 0.8125rem;
  height: 12px;
  height: 0.75rem;
  background-image: url(../images/flow/next-arrow.png);
  z-index: 10;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .swiper-button-next-normal::after {
    width: 1.3125rem;
    height: 1.25rem;
  }
}

.swiper-button-prev2,
.swiper-button-next2 {
  position: relative;
  overflow: hidden;
  top: auto;
  top: initial;
  bottom: 10px;
  bottom: 0.625rem;
  -webkit-transition: background-color 2s ease, -webkit-transform 2s;
  transition: background-color 2s ease, -webkit-transform 2s;
  transition: transform 2s, background-color 2s ease;
  transition: transform 2s, background-color 2s ease, -webkit-transform 2s;
}
@media screen and (min-width: 600px) {
  .swiper-button-prev2,
  .swiper-button-next2 {
    bottom: auto;
    margin-top: 0;
  }
}

.swiper-button-prev2:hover {
  background-color: #e9eff9;
}
.swiper-button-prev2:hover.swiper-button-prev2::after {
  background-image: url(../images/flow/prev-arrow-hover.png);
}

.swiper-button-next2:hover {
  background-color: #e9eff9;
}
.swiper-button-next2:hover.swiper-button-next2::after {
  background-image: url(../images/flow/next-arrow-hover.png);
}

.swiper-button-prev.swiper-button-prev2::after {
  content: "";
  position: absolute;
  z-index: 10;
}

.swiper-button-next.swiper-button-next2 {
  content: "";
  position: absolute;
  left: auto !important;
  left: initial !important;
  right: 10px !important;
  right: 0.625rem !important;
}
@media screen and (min-width: 600px) {
  .swiper-button-next.swiper-button-next2 {
    position: absolute;
    top: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    left: auto !important;
  }
}

.swiper-button-next.swiper-button-next2::after {
  content: "";
  position: absolute;
  background-image: url(../images/flow/next-arrow.png);
  z-index: 10;
}

.swiper-button-prev.swiper-button-disabled::after,
.swiper-button-next.swiper-button-disabled::after,
.swiper-button-prev-normal.swiper-button-disabled::after,
.swiper-button-next-normal.swiper-button-disabled::after {
  background: none !important;
  opacity: 0 !important;
}

.swiper-pagination.swiper-pagination2 {
  width: 100%;
  height: 8px;
}
.swiper-pagination-bullet-active {
  background-color: transparent !important;
  position: relative;
}

.swiper-pagination-bullet-active::after {
  content: "";
  position: absolute;
  bottom: -30px;
  bottom: -1.875rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 13px;
  width: 0.8125rem;
  height: 13px;
  height: 0.8125rem;
  background-color: #c89b4b;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .swiper-pagination-bullet-active::after {
    bottom: -2.5rem;
  }
}

.swiper-pagination-bullets {
  bottom: 28px !important;
  bottom: 1.75rem !important;
}
@media screen and (min-width: 768px) {
  .swiper-pagination-bullets {
    bottom: auto !important;
  }
}

.swiper-pagination-bullet {
  background-color: transparent;
  opacity: 1;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.7;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .swiper-pagination-bullet {
    font-size: 1.25rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .swiper-pagination-bullet {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .swiper-pagination-bullet {
    font-weight: 300;
  }
}
.swiper-button-next3 {
  display: none;
}
@media screen and (min-width: 768px) {
  .swiper-button-next3 {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 27.5rem;
    height: 27.5rem;
    background: transparent url("../images/flow/flow-arrow2.png") no-repeat center center/contain;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-transition-property: opacity visibility;
    transition-property: opacity visibility;
  }
}
.swiper-button-next3::after {
  content: none;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 0;
  visibility: hidden;
}

.flow {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .flow {
    margin-top: 6.25rem;
  }
}

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

.footer {
  background-color: #0F2D50;
  margin-top: 50px;
  margin-top: 3.125rem;
  padding-top: 64px;
  padding-top: 4rem;
  padding-bottom: 100px;
  padding-bottom: 6.25rem;
  border-radius: 0px 40px 0px 0px;
}
@media screen and (min-width: 768px) {
  .footer {
    margin-top: 6.25rem;
    padding-bottom: 5rem;
    border-radius: 0px 70px 0px 0px;
  }
}

.footer__heading {
  margin-inline: auto;
  max-width: 179px;
  max-width: 11.1875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer__heading {
    max-width: 15.875rem;
  }
}

.footer__text {
  margin-top: 15px;
  margin-top: 0.9375rem;
  max-width: 250px;
  max-width: 15.625rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .footer__text {
    max-width: 39.375rem;
  }
}

.footer__text p {
  font-size: 20px;
  font-size: 1.25rem;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.25em;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .footer__text p {
    font-size: 1.5rem;
    line-height: 2.0833333333;
    letter-spacing: 0.25em;
  }
}

.footer__btn01 {
  margin-top: 25px;
  margin-top: 1.5625rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .footer__btn01 {
    margin-top: 2.4375rem;
  }
}

@media screen and (min-width: 768px) {
  .footer__nav {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    place-items: center;
    margin-top: 6rem;
  }
}

@media screen and (min-width: 768px) {
  .footer__nav li a {
    display: block;
    font-weight: 500;
    font-size: 0.9375rem;
    line-height: 1.4666666667;
    color: #fff;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .footer__nav li a {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .footer__nav li a {
    font-weight: 300;
  }
}
.footer__logo {
  max-width: 180px;
  max-width: 11.25rem;
  width: 100%;
  margin-top: 60px;
  margin-top: 3.75rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .footer__logo {
    max-width: 22.75rem;
    margin-top: 2.125rem;
    margin-left: 45px;
  }
  .footer__logo img {
    max-width: 220px;
  }
}

@media screen and (max-width: 767px) {
  .footer__logo {
    max-width: 100%;
    margin-top: 2.125rem;
    margin-left: auto;
    margin-right: auto;
  }
  .footer__logo img {
    margin: 0 auto;
    max-width: 180px;
  }
}

.footer__copy {
  max-width: 287px;
  max-width: 287px;
  max-width: 17.9375rem;
  width: 100%;
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 40px;
  margin-top: 2.5rem;
  color: #fff;
  font-family: "Josefin Sans", sans-serif;
  letter-spacing: 0.15em;
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer__copy {
    margin-top: -1.25rem;
    margin-right: 0;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .footer__copy {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .footer__copy {
    font-weight: 300;
  }
}
.fv {
  padding-top: 60px;
  padding-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .fv {
    padding-top: 6.25rem;
  }
}

.fv-slider {
  width: 90%;
  min-width: 350px;
  min-width: 21.875rem;
  margin: 0 calc(50% - 50vw) 0 auto;
  border-radius: 40px 0px 0px 0px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .fv-slider {
    width: 53.125rem;
    max-width: 100%;
  }
}

.fv-slaider__item {
  border-radius: 40px 0px 0px 0px;
  overflow: hidden;
  aspect-ratio: 350/516;
}
@media screen and (min-width: 768px) {
  .fv-slaider__item {
    aspect-ratio: 850/712;
  }
}

.fv-slaider__item img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.fv__inner {
  position: relative;
  padding-top: 268px;
  padding-top: 16.75rem;
  padding-right: 40px;
  padding-right: 2.5rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .fv__inner {
    overflow: visible;
    overflow: initial;
    padding-top: 0;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.fv__copy {
  position: absolute;
  max-width: 100%;
  width: 290px;
  width: 18.125rem;
  z-index: 10;
  top: 0;
  left: 40px;
  left: 2.5rem;
}
@media screen and (min-width: 768px) {
  .fv__copy {
    top: 40%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 38.125rem;
  }
}

.fv__copy-image img {
  max-width: 100%;
  width: 290px;
  width: 18.125rem;
}
@media screen and (min-width: 768px) {
  .fv__copy-image img {
    width: 38.125rem;
  }
}

.fv__copy-bottm {
  display: inline-block;
  display: grid;
  place-items: center;
  height: 85px;
  height: 5.3125rem;
  width: 248px;
  width: 15.5rem;
  margin-top: 12px;
  margin-top: 0.75rem;
  color: #fff;
  background: #0F2D50;
  border: 1px solid #0F2D50;
  border-radius: 0px 30px 0px 0px;
}
@media screen and (min-width: 768px) {
  .fv__copy-bottm {
    margin-top: 4.1875rem;
    height: 6.125rem;
    width: 35.4375rem;
  }
}

.fv__copy-bottm p {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS P明朝", "MS PMincho", serif;
  letter-spacing: 0.2em;
  font-weight: 500;
  font-size: 20px;
  font-size: 1.25rem;
}
@media screen and (min-width: 768px) {
  .fv__copy-bottm p {
    font-size: 1.75rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .fv__copy-bottm p {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .fv__copy-bottm p {
    font-weight: 300;
  }
}
.hamburger {
  width: 38px;
  width: 2.375rem;
  z-index: 9998;
}
@media screen and (min-width: 1100px) {
  .hamburger {
    display: none;
  }
}

.is-openSP.header-hamburger {
  pointer-events: none;
}

body.js-fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

/*========= スクロール途中からヘッダーの高さが小さくなるためのCSS ===============*/
#header {
  /*はじめの高さを設定*/
  height: 170px;
  width: 100%;
  /*以下はレイアウトのためのCSS*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #333;
  color: #fff;
  text-align: center;
  padding: 20px;
}

/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
@media screen and (min-width: 768px) {
  #js-header.HeightMin {
    position: fixed;
    z-index: 999; /*最前面へ*/
    height: 80px;
    -webkit-animation: DownAnime 0.5s forwards;
            animation: DownAnime 0.5s forwards;
  }
}

@-webkit-keyframes DownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-170px);
            transform: translateY(-170px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes DownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-170px);
            transform: translateY(-170px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.header {
  position: fixed;
  width: 100%;
  height: 60px;
  height: 3.75rem;
  z-index: 9998;
  background-color: rgba(255, 255, 255, .9);
}
@media screen and (min-width: 1100px) {
  .header {
    height: 6.25rem;
  }
}

.header__inner {
  height: inherit;
  padding-left: 20px;
  padding-left: 1.25rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 1100px) {
  .header__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.header__nav {
  height: inherit;
}

.header__nav-items {
  height: inherit;
}
@media screen and (min-width: 1100px) {
  .header__nav-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 3.125rem;
  }
}

.header__nav-item {
  height: inherit;
  display: grid;
  place-items: center;
}

@media screen and (min-width: 1100px) {
  .header__nav-link {
    font-size: 0.9375rem;
    color: #000000;
  }
}

.header__logo {
  width: 113px;
  width: 7.0625rem;
}
@media screen and (min-width: 1100px) {
  .header__logo {
    width: 8.75rem;
  }
}

.inner {
  width: 100%;
  padding-right: 40px;
  padding-left: 40px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 1050px;
    padding-right: 25px;
    padding-left: 25px;
  }
}

@media screen and (min-width: 768px) {
  .inner--larg {
    max-width: 1250px;
    padding-left: 0;
  }
}

.menu {
  margin-top: 50px;
  margin-top: 50px;
  margin-top: 3.125rem;
  border-radius: 0px 40px 0px 45px;
  background: #0F2D50;
  padding-top: 50px;
  padding-top: 50px;
  padding-top: 3.125rem;
  padding-bottom: 50px;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
}

@media screen and (min-width: 768px) {
  .menu {
    margin-top: 7.8125rem;
    padding-top: 6.25rem;
    padding-bottom: 7.0625rem;
    border-radius: 0px 70px;
  }
}
.menu .orange-text {
  text-align: center;
}

.menu__notice {
  max-width: 288px;
  max-width: 288px;
  max-width: 18rem;
  width: 100%;
  margin-inline: auto;
  color: #fff;
  margin-top: 10px;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .menu__notice {
    max-width: 29.3125rem;
  }
}
.menu__notice-top {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__notice-top {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__notice-top {
    font-weight: 300;
  }
}
.menu__notice-top span {
  font-size: 18px;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.6666666667;
  font-weight: 700;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__notice-top span {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__notice-top span {
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .menu__notice-top span {
    font-size: 1.25rem;
    line-height: 1.5;
  }
}
.menu__notice-bottom {
  margin-top: 10px;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .menu__notice-bottom {
    margin-top: 0.5rem;
  }
}
.menu__notice-bottom p {
  font-size: 14px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2;
  font-weight: 500;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__notice-bottom p {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__notice-bottom p {
    font-weight: 300;
  }
}
.menu__list {
  margin-top: 50px;
  margin-top: 50px;
  margin-top: 3.125rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
  gap: 15px;
  gap: 0.9375rem;
}

.menu-item__sp {
  padding: 20px;
  padding: 20px;
  padding: 1.25rem;
  background: #E9EFF9;
  border: 1px solid #746B62;
}

.menu-item__sp-heading {
  font-size: 20px;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.15em;
  color: #0F2D50;
  text-align: center;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-item__sp-heading {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-item__sp-heading {
    font-weight: 600;
  }
}
.menu-item__sp-text {
  max-width: 270px;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
  margin-top: 15px;
  margin-top: 15px;
  margin-top: 0.9375rem;
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 500;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-item__sp-text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-item__sp-text {
    font-weight: 300;
  }
}
.menu-item__sp-image01 {
  max-width: 270px;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
  margin-top: 15px;
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.menu-item__sp-image01 img {
  overflow: hidden;
  border-radius: 0px 30px;
}

.sp-images__left,
.sp-images__right {
  max-width: 127px;
  max-width: 127px;
  max-width: 7.9375rem;
  width: 100%;
}

.sp-images__left img,
.sp-images__right img {
  border-radius: 0px 30px;
  overflow: hidden;
}

.menu-item__sp-images {
  max-width: 270px;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
  margin-top: 15px;
  margin-top: 15px;
  margin-top: 0.9375rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  gap: 15px;
  gap: 0.9375rem;
}

.menu__item-text {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__item-text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__item-text {
    font-weight: 300;
  }
}
.menu__item-content {
  margin-top: 15px;
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.menu-price {
  margin-top: 15px;
  margin-top: 15px;
  margin-top: 0.9375rem;
  max-width: 270px;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
}

.menu-price__item {
  border-radius: 0px 0px 30px 0px;
  overflow: hidden;
}

.menu-price__head {
  background-color: #0F2D50;
  color: #fff;
  padding-top: 10px;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 10px;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.menu-price__text {
  text-align: center;
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  position: relative;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price__text {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price__text {
    font-weight: 500;
  }
}
.menu-price__text::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/common/plus02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  width: 12px;
  width: 0.75rem;
  height: 12px;
  height: 12px;
  height: 0.75rem;
  top: 0.75em;
  right: 20px;
  right: 20px;
  right: 1.25rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

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

.price-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #A7A7A7;
}

.price-item:last-child {
  border-bottom: none;
}

.menu-price__left {
  font-size: 14px;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: 12px 0;
  padding: 12px 0;
  padding: 0.75rem 0;
  width: 24%;
  background-color: #0F2D50;
  color: #fff;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price__left {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price__left {
    font-weight: 500;
  }
}
.menu-price-right {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.1em;
  padding: 8px 11px 8px 0;
  padding: 8px 11px 8px 0;
  padding: 0.5rem 0.6875rem 0.5rem 0;
  width: 76%;
  color: #000000;
  background-color: #fff;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price-right {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price-right {
    font-weight: 300;
  }
}
.menu-price-right--b {
  position: relative;
  font-weight: 700;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price-right--b {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price-right--b {
    font-weight: 500;
  }
}
.menu-price-right--b::before {
  content: "";
  position: absolute;
  background: url(../images/common/notice.png);
  background-size: contain;
  background-repeat: no-repeat;
  max-width: 72px;
  max-width: 72px;
  max-width: 4.5rem;
  width: 100%;
  height: 28px;
  height: 28px;
  height: 1.75rem;
  bottom: 12px;
  bottom: 12px;
  bottom: 0.75rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .menu-price-right--b::before {
    max-width: 4rem;
    height: 2.125rem;
    left: auto;
    left: initial;
    right: 0.625rem;
    top: 55%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.menu-price__notice {
  font-size: 12px;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #fff;
  width: 72px;
  width: 72px;
  width: 4.5rem;
  margin-inline: auto;
  padding: 5px 0;
  padding: 5px 0;
  padding: 0.3125rem 0;
  background-color: #C89B4B;
  border-radius: 10px;
  display: block;
}

@media screen and (min-width: 768px) {
  .menu-price__notice {
    display: inline-block;
  }
}
/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price__notice {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price__notice {
    font-weight: 500;
  }
}
.menu-price__tax {
  font-size: 14px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu-price__tax {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu-price__tax {
    font-weight: 300;
  }
}
.menu__btn01 {
  margin-inline: auto;
  margin-top: 76.8px;
  margin-top: 4.8rem;
}
@media screen and (min-width: 768px) {
  .menu__btn01 {
    margin-top: 10.6875rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__btn01 {
  margin-top: 125px;
  margin-top: 7.8125rem;
}
@media screen and (min-width: 768px) {
  _::-webkit-full-page-media, _:future, :root .menu__btn01 {
    margin-top: 10.6875rem;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__btn01 {
    margin-top: 7.8125rem;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-width: 768px) {
  ::i-block-chrome, .menu__btn01 {
    margin-top: 10.6875rem;
  }
}
.menu-price__item[open]:not([data-accordion-before-close]) .menu-price__text::before {
  height: 1px;
  height: 1px;
  height: 0.0625rem;
  width: 12px;
  width: 12px;
  width: 0.75rem;
  background-color: #fff;
}

summary {
  display: block;
}

/* Safariで表示されるデフォルトの三角形アイコンを消します */
summary::-webkit-details-marker {
  display: none;
}

.menu-pc__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  gap: 30px;
  gap: 1.875rem;
  margin-top: 47px;
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.menu__item {
  background: #E9EFF9;
  border: 1px solid #746B62;
  padding: 35px;
  padding: 35px;
  padding: 2.1875rem;
}

.menu__item h3 {
  text-align: center;
  font-size: 24px;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0.15em;
  color: #0F2D50;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__item h3 {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__item h3 {
    font-weight: 600;
  }
}
.menu__item-text {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .menu__item-text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .menu__item-text {
    font-weight: 300;
  }
}
.menu__item-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  gap: 30px;
  gap: 1.875rem;
  margin-top: 30px;
  margin-top: 30px;
  margin-top: 1.875rem;
}

.menu__item-image01 {
  max-width: 450px;
  max-width: 450px;
  max-width: 28.125rem;
  width: 100%;
}

.menu__item-image01 img {
  overflow: hidden;
  border-radius: 0px 30px;
}

.pc-item__images {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  gap: 20px;
  gap: 1.25rem;
}

.menu__item-image02 {
  max-width: 210px;
  max-width: 210px;
  max-width: 13.125rem;
  width: 100%;
}

.menu__item-image02 img {
  overflow: hidden;
  border-radius: 0px 30px;
}

.pc-price__container {
  max-width: 450px;
  max-width: 450px;
  max-width: 28.125rem;
  width: 100%;
  border-radius: 0px 0px 30px 0px;
  overflow: hidden;
}

.pc-price__item {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 450px;
  max-width: 450px;
  max-width: 28.125rem;
  width: 100%;
}

.pc-price__item:not(:first-child) {
  border-top: 1px solid #A7A7A7;
}

.pc-price__left {
  width: 22%;
  padding: 8px 0;
  padding: 8px 0;
  padding: 0.5rem 0;
  background-color: #0F2D50;
  color: #fff;
  border-right: 1px solid #A7A7A7;
}

.pc-price__right {
  width: 78%;
  padding: 10px 11px 10px 0;
  padding: 10px 11px 10px 0;
  padding: 0.625rem 0.6875rem 0.625rem 0;
  color: #000000;
  background-color: #fff;
}

.pc-price__right--radius {
  border-radius: 0px 0px 30px 0px;
}

/* .pc-price__item:nth-child(2) {
  border: 4px solid #C89B4B;
} */
.menu-bottom__image01 {
  position: relative;
  width: 248px;
  width: 248px;
  width: 15.5rem;
  display: block;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .menu-bottom__image01 {
    width: 21.4375rem;
  }
}
.menu-bottom__image01::before {
  content: "";
  position: absolute;
  width: 248px;
  width: 248px;
  width: 15.5rem;
  height: 33px;
  height: 33px;
  height: 2.0625rem;
  top: 0;
  left: 20px;
  left: 20px;
  left: 1.25rem;
  display: block;
  background: url(../images/common/Frame.png);
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .menu-bottom__image01::before {
    width: 21.4375rem;
    height: 2.875rem;
    top: 3.125rem;
    left: -3.125rem;
  }
}
.menu-bottom__image02 {
  position: relative;
  width: 248px;
  width: 248px;
  width: 15.5rem;
  display: block;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .menu-bottom__image02 {
    width: 21.4375rem;
  }
}
.menu-bottom__image02::before {
  content: "";
  position: absolute;
  width: 248px;
  width: 248px;
  width: 15.5rem;
  height: 33px;
  height: 33px;
  height: 2.0625rem;
  top: 33px;
  top: 33px;
  top: 2.0625rem;
  left: -10px;
  left: -10px;
  left: -0.625rem;
  display: block;
  background: url(../images/common/Frame02.png);
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .menu-bottom__image02::before {
    width: 21.4375rem;
    height: 2.875rem;
    top: 5.625rem;
    left: -6.25rem;
  }
}
.menu__item:nth-child(1) {
  position: relative;
}

.menu__item:nth-child(1)::before {
  position: absolute;
  content: "";
  background: url(../images/menu/oil_dryfootcare.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 14rem;
  height: 4.875rem;
  display: block;
  top: 0.9375rem;
  right: 1.4375rem;
}

.menu__item:nth-child(2) {
  position: relative;
}

.menu__item:nth-child(2)::before {
  position: absolute;
  content: "";
  background: url(../images/menu/Body.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 88px;
  width: 88px;
  width: 5.5rem;
  height: 78px;
  height: 78px;
  height: 4.875rem;
  display: block;
  top: 15px;
  top: 15px;
  top: 0.9375rem;
  right: 23px;
  right: 23px;
  right: 1.4375rem;
}

.menu__item:nth-child(3) {
  position: relative;
}

.menu__item:nth-child(3)::before {
  position: absolute;
  content: "";
  background: url(../images/menu/Body\ and\ head.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 224px;
  width: 224px;
  width: 14rem;
  height: 78px;
  height: 78px;
  height: 4.875rem;
  display: block;
  top: 15px;
  top: 15px;
  top: 0.9375rem;
  right: 23px;
  right: 23px;
  right: 1.4375rem;
}

.menu__item:nth-child(4) {
  position: relative;
}

.menu__item:nth-child(4)::before {
  position: absolute;
  content: "";
  background: url(../images/menu/Body\ and\ oil\ foot.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 258px;
  width: 258px;
  width: 16.125rem;
  height: 78px;
  height: 78px;
  height: 4.875rem;
  display: block;
  top: 15px;
  top: 15px;
  top: 0.9375rem;
  right: 23px;
  right: 23px;
  right: 1.4375rem;
}

.menu__item:nth-child(5) {
  position: relative;
}

.menu__item:nth-child(5)::before {
  position: absolute;
  content: "";
  background: url(../images/menu/Full\ order.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 151px;
  width: 151px;
  width: 9.4375rem;
  height: 78px;
  height: 78px;
  height: 4.875rem;
  display: block;
  top: 15px;
  top: 15px;
  top: 0.9375rem;
  right: 23px;
  right: 23px;
  right: 1.4375rem;
}

.menu-sp__image-content01,
.menu-sp__image-content02,
.menu-sp__image-content03,
.menu-sp__image-content04 {
  position: relative;
  max-width: 270px;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
}

.menu-sp__image-content01::before {
  content: "";
  position: absolute;
  background: url(../images/menu/Body.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 72px;
  width: 72px;
  width: 4.5rem;
  height: 64px;
  height: 64px;
  height: 4rem;
  display: block;
  top: 39px;
  top: 39px;
  top: 2.4375rem;
  left: 190px;
  left: 190px;
  left: 11.875rem;
}

.menu-sp__image-content02::before {
  content: "";
  position: absolute;
  background: url(../images/menu/Body\ and\ head.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 185px;
  width: 185px;
  width: 11.5625rem;
  height: 64px;
  height: 64px;
  height: 4rem;
  display: block;
  top: 128px;
  top: 128px;
  top: 8rem;
  left: 8px;
  left: 8px;
  left: 0.5rem;
}

.menu-sp__image-content03::before {
  content: "";
  position: absolute;
  background: url(../images/menu/Body\ and\ oil\ foot.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 215px;
  width: 215px;
  width: 13.4375rem;
  height: 66px;
  height: 66px;
  height: 4.125rem;
  display: block;
  top: 113px;
  top: 113px;
  top: 7.0625rem;
  left: 15px;
  left: 15px;
  left: 0.9375rem;
}

.menu-sp__image-content04::before {
  content: "";
  position: absolute;
  background: url(../images/menu/Full\ order.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 151px;
  width: 151px;
  width: 9.4375rem;
  height: 78px;
  height: 78px;
  height: 4.875rem;
  display: block;
  top: 117px;
  top: 117px;
  top: 7.3125rem;
  left: 114px;
  left: 114px;
  left: 7.125rem;
}

/*料金表*/
.price-item--border {
  position: relative;
  /* border: 4px solid #C89B4B !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; */
}

.price-item--border::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border: 4px solid #C89B4B !important;
  top: 0;
  left: 0;
  z-index: 1;
}

.price-item--border--last {
  position: relative;
  overflow: hidden;
}

.price-item--border--last::before {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 0px 0px 30px 0px;
  border-bottom: 4px solid #C89B4B !important;
  top: 0;
  left: 0;
  z-index: 1;
}

.price-item--border .menu-price-right {
  padding: 8px 0 43px 0;
  padding: 8px 0 43px 0;
  padding: 0.5rem 0 2.6875rem 0;
}

.reason {
  padding-top: 50px;
  padding-top: 3.125rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .reason {
    overflow: visible;
    overflow: initial;
  }
}

.reason__title {
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 2.0588235294;
}
@media screen and (min-width: 768px) {
  .reason__title {
    font-size: 2.125rem;
  }
}

.reason-top__image {
  margin-top: -52px;
}

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

.reason__item {
  margin-top: 5px;
  margin-top: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .reason__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 3.125rem;
  }
}

.reason__item-image--r {
  position: relative;
}

.reason__item-image--r::before {
  content: "";
  position: absolute;
  top: 203px;
  right: -204px;
  border: 1px dashed #C89B4B;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  width: 407px;
  width: 25.4375rem;
  height: 1px;
}

.reason__item-image--l {
  position: relative;
}

.reason__item-image--l::before {
  content: "";
  position: absolute;
  top: 203px;
  left: -204px;
  border: 1px dashed #C89B4B;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  width: 407px;
  width: 25.4375rem;
  height: 1px;
}

@media screen and (max-width: 768px) {
  .reason__item-image--r {
    margin: 0 calc(50% - 50vw) 0 auto;
    width: 100vw;
  }
  .reason__item-image--l {
    margin: 0 auto 0 calc(50% - 50vw);
  }
}
.reason__item--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.reason__item-point {
  max-width: 100%;
  width: 94px;
  width: 5.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .reason__item-point {
    width: 5rem;
    margin-top: -0.625rem;
  }
}

.reason__item-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.9;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #0F2D50;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .reason__item-title {
    margin-top: 0;
    font-size: 1.5rem;
    line-height: 1.5833333333;
    letter-spacing: 0.15em;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .reason__item-title {
  font-weight: 600;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .reason__item-title {
    font-weight: 600;
  }
}
.reason__item-content {
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .reason__item-content {
    max-width: 22.5rem;
    margin-right: 1.8125rem;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .reason__item-content--revers {
    margin-left: 1.5625rem;
  }
}

.reason__item-text {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 500;
  margin-top: 10px;
  margin-top: 0.625rem;
  color: #000000;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .reason__item-text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .reason__item-text {
    font-weight: 300;
  }
}
.reason__item-image {
  aspect-ratio: 349/200;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .reason__item-image {
    max-width: 30.3125rem;
    width: 100%;
    margin-top: 0;
  }
}

.reason__item-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.reason__box {
  background: rgba(116, 107, 98, .7);
  border-radius: 30px;
  padding: 27px 20px 25px 20px;
  padding: 1.6875rem 1.25rem 1.5625rem 1.25rem;
  margin-inline: auto;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .reason__box {
    max-width: 50rem;
    width: 100%;
    padding: 2.5rem 1.5625rem 3rem 1.5625rem;
    margin-top: 1.875rem;
  }
}

.reason__box-item {
  margin-inline: auto;
  margin-top: 12px;
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .reason__box-item {
    display: grid;
    grid-template-columns: 22.5rem 22.5rem;
    gap: 1.875rem;
    margin: 1.5625rem 0 0 0;
  }
}

.reason__box-title {
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7777777778;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .reason__box-title {
    font-size: 1.25rem;
    line-height: 1.9;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .reason__box-title {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .reason__box-title {
    font-weight: 500;
  }
}
.reason__box-item p {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.8571428571;
  color: #fff;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .reason__box-item p {
    max-width: 22.5rem;
    width: 100%;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .reason__box-item p {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .reason__box-item p {
    font-weight: 300;
  }
}
.reason__box-image {
  overflow: hidden;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin: 20px auto 0 auto;
  margin: 1.25rem auto 0 auto;
  border-radius: 0px 20px;
}
@media screen and (min-width: 768px) {
  .reason__box-image {
    max-width: 22.5rem;
    margin-top: 0;
  }
}

.orange-text {
  font-family: "Josefin Sans", sans-serif;
  color: #C89B4B;
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 400;
}

.dot-text {
  position: relative;
  padding-left: 31px;
  padding-left: 1.9375rem;
}

.dot-text::before {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 100px;
  background-color: #C89B4B;
  top: 0.928em;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.boder {
  position: relative;
}

.boder::before {
  content: "";
  position: absolute;
  width: 152px;
  width: 9.5rem;
  max-width: 100%;
  height: 1px;
  height: 0.0625rem;
  border: 1px solid #C89B4B;
  bottom: -6px;
  bottom: -0.375rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .boder::before {
    width: 10.4375rem;
  }
}

.top-border {
  width: 100%;
  margin-inline: auto;
}
.bottom-border {
  width: 100%;
  padding: 0 40px;
  padding: 0 2.5rem;
  margin-inline: auto;
}

/*各セクションタイトル*/
.section-title {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.5em;
  line-height: 1.5;
  color: #0F2D50;
}
@media screen and (min-width: 768px) {
  .section-title {
    font-size: 2.125rem;
    line-height: 2.0588235294;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .section-title {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .section-title {
    font-weight: 300;
  }
}
.section-title--white {
  color: #fff;
}

.section-title span {
  line-height: 1.4583333333;
  font-size: 39px;
  font-size: 2.4375rem;
}
@media screen and (min-width: 768px) {
  .section-title span {
    font-size: 3rem;
  }
}

/*---------------------
ファーストビューのスライド
---------------------*/
/*slickのスライド高さ調整*/
.fv-slider .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.fv-slider .slick-slide {
  height: auto !important;
}

.fv-slider .slide-dots {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  gap: 0.9375rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
@media screen and (min-width: 768px) {
  .fv-slider .slide-dots {
    -webkit-transform: none;
            transform: none;
    -webkit-transform: initial;
            transform: initial;
    top: -40px;
  }
}

.fv-slider.slick-dotted.slick-slider {
  margin-bottom: 0;
}

/*数字を消す*/
.fv-slider .slide-dots li button {
  font-size: 0;
}

@media screen and (max-width: 768px) {
  .fv-slider .slide-dots {
    top: -16.5625rem;
    right: -10rem;
  }
}
.fv-slider .slide-dots li {
  width: 150px;
  width: 9.375rem;
  height: 5px;
  height: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .fv-slider .slide-dots li {
    width: 16.25rem;
    height: 0.4375rem;
  }
}

.fv-slider .slide-dots li button:before {
  content: "";
  display: block;
  width: 150px;
  width: 9.375rem;
  height: 5px;
  height: 0.3125rem;
  background: rgba(255, 255, 255, .6);
  opacity: 1;
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .fv-slider .slide-dots li button:before {
    width: 16.25rem;
    height: 0.4375rem;
  }
}

.fv-slider .slide-dots li.slick-active button:before {
  background: rgb(233, 239, 249);
}

/*---------------------
ご利用の流れスライド
---------------------*/
/*slickのスライド高さ調整*/
.flow-slider .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.flow-slider .slick-slide {
  height: auto !important;
}

/*slick矢印カスタマイズ*/
.flow-slider .slick-next,
.flow-slider .slick-prev {
  background-color: #0F2D50 !important;
  top: 103%;
  overflow: hidden;
  width: 35px;
  width: 2.1875rem;
  height: 35px;
  height: 2.1875rem;
  border-radius: 100px;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-next,
  .flow-slider .slick-prev {
    top: 110%;
    width: 3.5rem;
    height: 3.5rem;
  }
}

.flow-slider .slick-next {
  right: 5%;
}

.flow-slider .slick-prev {
  left: 3%;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-prev {
    left: 54%;
  }
}

.flow-slider .slick-next:before,
.flow-slider .slick-prev:before {
  background-size: contain;
  background-repeat: no-repeat;
  width: 13px;
  width: 0.8125rem;
  height: 12px;
  height: 0.75rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 3 !important;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-next:before,
  .flow-slider .slick-prev:before {
    width: 1.3125rem;
    height: 1.25rem;
  }
}

.flow-slider .slick-next:before {
  content: "";
  background-image: url(../images/flow/next-arrow.png);
}

.flow-slider .slick-next:hover::before {
  background-image: url(../images/flow/next-arrow-hover.png);
}

.flow-slider .slick-prev:before {
  content: "";
  background-image: url(../images/flow/prev-arrow.png);
}

.flow-slider .slick-prev:hover::before {
  background-image: url(../images/flow/prev-arrow-hover.png);
}

.flow-slider .slick-arrow {
  z-index: 2 !important;
}

.flow-slider .slick-arrow::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 50%;
  margin: auto;
  width: 35px;
  width: 2.1875rem;
  height: 35px;
  height: 2.1875rem;
  background-color: #E9EFF9;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: 0.6s ease all;
  transition: 0.6s ease all;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-arrow::after {
    width: 3.5rem;
    height: 3.5rem;
  }
}

.flow-slider .slick-arrow:hover::after {
  -webkit-transform: scale(4.2);
          transform: scale(4.2);
}

.flow-slider .slick-disabled[aria-disabled] {
  display: none !important;
}

/*ドットカスタマイズ*/
.flow-slider .slick-dots {
  bottom: -35px;
  bottom: -2.1875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-dots {
    -ms-flex-pack: distribute;
        justify-content: space-around;
    width: 100%;
    bottom: -4.375rem;
    max-width: 17.5rem;
    left: 75%;
  }
}

.flow-slider .slick-dots li button {
  font-size: medium;
  font-size: initial;
  color: #000;
  color: initial;
  background: transparent none repeat 0 0 / auto auto padding-box border-box scroll;
  background: initial;
}

.flow-slider .slick-dots li button:before {
  content: none;
}

.flow-slider .slick-dots li {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 500;
  margin: 0;
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-dots li {
    font-size: 1.25rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .flow-slider .slick-dots li {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .flow-slider .slick-dots li {
    font-weight: 300;
  }
}
.flow-slider .slick-dots li.slick-active::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -13px;
  bottom: -0.8125rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 13px;
  width: 0.8125rem;
  height: 13px;
  height: 0.8125rem;
  background: #C89B4B;
  border-radius: 100px;
}
@media screen and (min-width: 768px) {
  .flow-slider .slick-dots li.slick-active::before {
    width: 0.91875rem;
    height: 0.91875rem;
    bottom: -0.91875rem;
  }
}

.sp-nav {
  background-color: #E9EFF9;
  padding-left: 20px;
  padding-left: 1.25rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  width: 82%;
  height: 723px;
  height: 45.1875rem;
  position: fixed;
  top: 0;
  left: 10%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 9999;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
  border-radius: 0px 0px 30px 30px;
}
@media screen and (min-width: 1100px) {
  .sp-nav {
    display: none;
  }
}

.sp-nav__hamburger {
  margin-left: auto;
  margin: 23px 28px 0 auto;
  margin: 1.4375rem 1.75rem 0 auto;
  display: block;
}

.sp-nav__lists {
  background: #fff;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  border: 1px solid #0F2D50;
  border-radius: 20px;
  margin-inline: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 20px 20px 32px 20px;
  padding: 1.25rem 1.25rem 2rem 1.25rem;
}

.sp-nav__items {
  display: grid;
  grid-template-columns: 1fr;
  margin-inline: auto;
}

.sp-nav__item a {
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.8125;
  padding-right: 38px;
  padding-right: 2.375rem;
  color: #000000;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  white-space: nowrap;
}

.sp-nav__item a::before {
  position: absolute;
  content: "";
  background: url(../images/header/sp-navArrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 10px;
  width: 0.625rem;
  height: 10px;
  height: 0.625rem;
  right: 0;
  top: 1.406em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.is-openSP {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media screen and (min-width: 1100px) {
  .header__drawer {
    display: none;
  }
}

.sp-nav__btn {
  margin-inline: auto;
  margin-top: 25px;
  margin-top: 1.5625rem;
  max-width: 191px;
  max-width: 11.9375rem;
  width: 100%;
}

.sp-nav__logo {
  max-width: 141px;
  max-width: 8.8125rem;
  width: 100%;
  display: block;
  margin-inline: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.test {
  font-size: 20px;
  font-size: 1.25rem;
  background-color: #000000;
  color: #fff;
}

.therapist {
  margin-top: 50px;
  margin-top: 3.125rem;
  position: relative;
}

.therapist__container {
  position: relative;
  background-color: #0F2D50;
  width: 70%;
  max-width: 100%;
  min-width: 280px;
  min-width: 17.5rem;
  border-radius: 30px 30px 0px 0px;
  padding-left: 15px;
  padding-left: 0.9375rem;
  padding-right: 15px;
  padding-right: 0.9375rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
  padding-top: 39px;
  padding-top: 2.4375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .therapist__container {
    width: 50rem;
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
    padding-bottom: 2.3125rem;
  }
}

.therapist__container::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/therapist/SP-Helping\ you\ live\ comfortably.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 104px;
  width: 6.5rem;
  height: 52px;
  height: 3.25rem;
  top: 18px;
  top: 1.125rem;
  right: 14px;
  right: 0.875rem;
}
@media screen and (min-width: 768px) {
  .therapist__container::before {
    background: url(../images/therapist/Helping\ you\ live\ comfortably.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 18.3125rem;
    height: 3.8125rem;
    right: 1.5rem;
    top: 1.5rem;
  }
}

.therapist__items {
  position: relative;
  border-bottom: 1px solid #746B62;
  padding-bottom: 55px;
  padding-bottom: 3.4375rem;
}
@media screen and (min-width: 768px) {
  .therapist__items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 1.875rem;
       -moz-column-gap: 1.875rem;
            column-gap: 1.875rem;
    place-items: center;
    padding-bottom: 3.5625rem;
  }
}

.therapist__items::before {
  content: "";
  position: absolute;
  background: url(../images/therapist/therapist-name.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 111px;
  width: 6.9375rem;
  height: 20px;
  height: 1.25rem;
  bottom: 25px;
  bottom: 1.5625rem;
  right: 0;
}
@media screen and (min-width: 768px) {
  .therapist__items::before {
    bottom: 6.9375rem;
    right: 0;
  }
}

.therapist__ruby {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  color: #fff;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .therapist__ruby {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .therapist__ruby {
    font-weight: 300;
  }
}
.therapist__item01-heading h3 {
  font-size: 24px;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 500;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS P明朝", "MS PMincho", serif;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .therapist__item01-heading h3 {
    font-size: 2.125rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .therapist__item01-heading h3 {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .therapist__item01-heading h3 {
    font-weight: 300;
  }
}
.therapist__item01-heading h3 span {
  font-size: 16px;
  font-size: 1rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  letter-spacing: 0.1em;
  display: block;
}
@media screen and (min-width: 768px) {
  .therapist__item01-heading h3 span {
    display: inline-block;
    margin-left: 0.875rem;
  }
}

.therapist__image {
  width: 200px;
  width: 12.5rem;
  margin-inline: auto;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .therapist__image {
    width: 16.25rem;
    margin-top: 1.5625rem;
  }
}

.therapist__image img {
  border-radius: 100%;
}

.therapist__item01__text {
  background-color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  border-radius: 5px;
  padding: 10px;
  padding: 0.625rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 10px;
  margin-top: 0.625rem;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .therapist__item01__text {
    width: 22.5rem;
    margin-top: 0.75rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .therapist__item01__text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .therapist__item01__text {
    font-weight: 300;
  }
}
.therapist__text {
  position: relative;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-weight: 500;
  line-height: 1.875;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .therapist__text {
    margin-top: 0;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .therapist__text {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .therapist__text {
    font-weight: 300;
  }
}
.list-title {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 2.1111111111;
  font-weight: 500;
  letter-spacing: 0.15em;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .list-title {
    margin-top: 1.25rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .list-title {
  font-weight: 300;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .list-title {
    font-weight: 300;
  }
}
.therapist__list {
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .therapist__list {
    margin-top: 0.8125rem;
  }
}

.therapist__item02 {
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  font-weight: 500;
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .therapist__item02 {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .therapist__item02 {
    font-weight: 500;
  }
}
.therapist__bottom {
  margin-top: -1px;
  margin-top: -0.0625rem;
}

.voice-acordion {
  position: relative;
}

.voice-acordion__btn {
  position: absolute;
  bottom: -80px;
  bottom: -5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .voice-acordion__btn {
    bottom: -3.75rem;
  }
}

.voice {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .voice {
    margin-top: 6.25rem;
  }
}

.voice-container {
  padding: 35px 20px;
  padding: 2.1875rem 1.25rem;
  background-color: #E9EFF9;
  border-radius: 30px 0px;
}
@media screen and (min-width: 768px) {
  .voice-container {
    padding: 2.1875rem;
  }
}

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

.section-title.voice__title {
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 2.1111111111;
  letter-spacing: 0.5em;
}
@media screen and (min-width: 768px) {
  .section-title.voice__title {
    font-size: 2.125rem;
  }
}

.voice__title-bottom {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  color: #000000;
  width: 87%;
  min-width: 270px;
  min-width: 16.875rem;
  margin-top: 15px;
  margin-top: 0.9375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .voice__title-bottom {
    width: 22.5rem;
    max-width: 100%;
    margin-top: 0.625rem;
  }
}

/*Safariのみ適用*/
_::-webkit-full-page-media, _:future, :root .voice__title-bottom {
  font-weight: 500;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .voice__title-bottom {
    font-weight: 500;
  }
}
.voice__items {
  margin-inline: auto;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .voice__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 58.125rem;
    gap: 1.875rem;
    width: 100%;
  }
}

.voice__item:not(:first-child) {
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .voice__item:not(:first-child) {
    margin-top: 0;
  }
}

.voice__item-image {
  overflow: hidden;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
  border-radius: 30px;
}
@media screen and (min-width: 768px) {
  .voice__item-image {
    max-width: 18.125rem;
  }
}

.voice__item-title {
  text-align: center;
  margin-top: 15px;
  margin-top: 0.9375rem;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
  margin-inline: auto;
  background-color: #0F2D50;
  border-radius: 10px 0px 0px 0px;
  display: block;
}
.voice__item-title p {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  color: #fff;
}

.voice__btn01 {
  margin-inline: auto;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .voice__btn01 {
    margin-top: 5.625rem;
  }
}

.voice__btn03 {
  margin-top: 25px;
  margin-top: 1.5625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .voice__btn03 {
    margin-top: 5.625rem;
  }
}

.voice__btn03 a {
  margin-inline: auto;
}
/*# sourceMappingURL=styles.css.map */

.header {
  height: 6.25rem!important;
  padding-top: 1rem;
}
.head_title {
  font-size: 12px;
  padding-left: 1.5625rem;
}
.header__inner {
  height: 3.75rem;
}
.floating__link img, .floating__link-sp img {
  filter: unset;
}
.footer_caption {
  font-size: 12px;
  color: #FFF;
  text-align: left;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .footer_caption {
    text-align: center;
  }
}