@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
  v2.0 | 20110126
  License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: "Noto Serif JP", serif;
  background-color: #fff;
  color: #332F26;
  letter-spacing: 0.1em;
}

html,
body {
  height: 100dvh;
  /* iOSでの高さズレを防ぐ */
}

main {
  overflow-x: hidden;
}

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

picture {
  vertical-align: middle;
}

a {
  display: inline-block;
  text-decoration: none;
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, filter 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  color: inherit;
}
@media (any-hover: hover) {
  a:hover {
    opacity: 0.6;
    -webkit-filter: brightness(90%);
            filter: brightness(90%);
  }
}
@media (hover: none) {
  a:hover {
    opacity: 1;
    -webkit-filter: none;
            filter: none;
    cursor: default;
  }
}

button {
  cursor: pointer;
  font: inherit;
  color: inherit;
  background: transparent;
  background: none;
  border: none;
}

h1,
h2,
h3,
h4,
p,
a {
  color: #332F26;
}

picture,
img,
a,
span {
  display: inline-block;
}

video,
img,
svg {
  width: 100%;
  height: 100%;
}

input,
textarea,
select {
  font: inherit;
}

.grad-text {
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.u-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-pc {
    display: none !important;
  }
}
@media screen and (max-width: 550px) {
  .u-pc {
    display: none !important;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-sp {
    display: block !important;
  }
}
@media screen and (max-width: 550px) {
  .u-sp {
    display: block !important;
  }
}

.u-xp {
  display: none;
}
@media screen and (max-width: 550px) {
  .u-xp {
    display: block !important;
  }
}

.btn {
  display: inline-block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.0714285714vw 3.0714285714vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 1.7857142857vw;
  background: #ED7F00;
  color: #fff;
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, filter 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, filter 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
  font-family: "Noto Sans JP";
  font-size: 1.0714285714vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  -webkit-box-shadow: 0.2857142857vw 0.2857142857vw 1.2857142857vw 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0.2857142857vw 0.2857142857vw 1.2857142857vw 0 rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 1401px) {
  .btn {
    padding: 15px 43px;
    border-radius: 25px;
    font-size: 15px;
    -webkit-box-shadow: 4px 4px 18px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 4px 4px 18px 0 rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 1023px) {
  .btn {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .btn {
    padding: 1.9556714472vw 5.6062581486vw;
    border-radius: 3.259452412vw;
    font-size: 1.5645371578vw;
    -webkit-box-shadow: 0.5215123859vw 0.5215123859vw 2.3468057366vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0.5215123859vw 0.5215123859vw 2.3468057366vw 0 rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 550px) {
  .btn {
    padding: 4vw 11.4666666667vw;
    border-radius: 6.6666666667vw;
    font-size: 3.2vw;
    -webkit-box-shadow: 1.0666666667vw 1.0666666667vw 4.8vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 1.0666666667vw 1.0666666667vw 4.8vw 0 rgba(0, 0, 0, 0.1);
  }
}

.btn__arrow {
  position: absolute;
  content: "";
  background: url("../img/btn__arrow.webp") center/cover no-repeat;
  width: 1.4285714286vw;
  height: 1.4285714286vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 3.0714285714vw;
}
@media screen and (min-width: 1401px) {
  .btn__arrow {
    width: 20px;
    height: 20px;
    right: 43px;
  }
}
@media screen and (max-width: 767px) {
  .btn__arrow {
    width: 2.3468057366vw;
    height: 2.3468057366vw;
    right: 3.1290743155vw;
  }
  .btn__arrow--surgery {
    right: 5.6062581486vw;
  }
}
@media screen and (max-width: 550px) {
  .btn__arrow {
    width: 4.8vw;
    height: 4.8vw;
    right: 6.4vw;
  }
  .btn__arrow--surgery {
    right: 11.4666666667vw;
  }
}

.section__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .section__heading {
    gap: 12px;
  }
}
@media screen and (max-width: 767px) {
  .section__heading {
    gap: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .section__heading {
    gap: 0.8vw;
  }
}

.heading__en {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.4285714286vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
@media screen and (min-width: 1401px) {
  .heading__en {
    font-size: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .heading__en {
    font-size: 1.9550342131vw;
  }
}
@media screen and (max-width: 767px) {
  .heading__en {
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .heading__en {
    font-size: 4.2666666667vw;
  }
}

.heading__ja {
  font-size: 2.8571428571vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .heading__ja {
    font-size: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .heading__ja {
    font-size: 3.5190615836vw;
  }
}
@media screen and (max-width: 767px) {
  .heading__ja {
    font-size: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .heading__ja {
    font-size: 6.4vw;
  }
}
.heading__ja--02 {
  margin-top: 0.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .heading__ja--02 {
    margin-top: 11px;
  }
}
@media screen and (max-width: 767px) {
  .heading__ja--02 {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .heading__ja--02 {
    margin-top: 0.5333333333vw;
  }
}

.heading__line::after {
  content: "";
  position: absolute;
  background: var(--blue_gd_02, linear-gradient(153deg, #0099BB 0%, #0564B5 100%));
  height: 0.0714285714vw;
  width: 25.8571428571vw;
  right: -6.7142857143vw;
  top: 50%;
}
@media screen and (min-width: 1401px) {
  .heading__line::after {
    height: 1px;
    width: 362px;
    right: -94px;
  }
}
@media screen and (max-width: 1023px) {
  .heading__line::after {
    height: 1px;
    width: 35.3861192571vw;
    right: -20.3323558162vw;
    z-index: -1;
  }
}
@media screen and (max-width: 767px) {
  .heading__line::after {
    height: 0.1303780965vw;
    width: 58.6701434159vw;
    right: 0vw;
  }
}
@media screen and (max-width: 550px) {
  .heading__line::after {
    height: 0.2666666667vw;
    width: 46.1333333333vw;
    right: 0.2666666667vw;
  }
}

.header {
  height: 83px;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .header {
    height: 44px;
  }
}

.fv {
  margin-top: 0px;
  width: 100vw;
  background-image: url("../img/fv (4).webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top right, center center;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1100px) {
  .fv {
    background-position: 80% 60%;
  }
}
@media screen and (max-width: 767px) {
  .fv {
    margin-top: -41px;
    background-size: contain;
    background-image: url("../img/fv-sp4.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

.fv__inner {
  padding-top: 10.5714285714vw;
  padding-bottom: 4.7142857143vw;
  padding-left: 4.6428571429vw;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .fv__inner {
    padding-top: 119.4666666667vw;
    padding-bottom: 35.2vw;
    padding-left: 5.3333333333vw;
  }
}

.fv__subtitle {
  color: #FFF;
  font-size: 2vw;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .fv__subtitle {
    font-size: 4.2666666667vw;
  }
}

.fv__title {
  color: #FFF;
  margin-top: 1.7142857143vw;
  font-size: 4.5714285714vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .fv__title {
    margin-top: 0.8vw;
    font-size: 8.5333333333vw;
  }
}

.fv__wrap {
  margin-top: 3.4285714286vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.7857142857vw;
}
@media screen and (max-width: 767px) {
  .fv__wrap {
    margin-top: 3.4666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px;
  }
}

.fv__features {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  color: rgba(255, 255, 255, 0.6);
  font-size: 3.4285714286vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  margin-left: -0.7857142857vw;
}
@media screen and (max-width: 767px) {
  .fv__features {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    font-size: 5.3333333333vw;
    margin-left: 0;
  }
}

.fv__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8571428571vw;
}
@media screen and (max-width: 767px) {
  .fv__list {
    gap: 0.2666666667vw;
  }
}
.fv__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 0.8571428571vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 1.1428571429vw 0.5928571429vw 0.7142857143vw;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
@media screen and (max-width: 767px) {
  .fv__list li {
    gap: 1.0666666667vw;
    padding: 0 1.0666666667vw 1.0666666667vw 1.0666666667vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.fv__list li P {
  background: #fff;
  display: block;
  max-width: 100%;
  color: #332F26;
  font-size: 1.4285714286vw;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding: 0 1.6428571429vw;
  margin-top: 0.1428571429vw;
}
@media screen and (max-width: 767px) {
  .fv__list li P {
    font-size: 3.2vw;
    padding: 0 1.6vw;
    margin-top: 0.5333333333vw;
  }
}
.fv__list li:nth-of-type(5) p {
  padding: 0vw 1.6428571429vw 0 0.3571428571vw;
}
@media screen and (max-width: 767px) {
  .fv__list li:nth-of-type(5) p {
    padding: 0 1.3333333333vw 0 1.3333333333vw;
  }
}

.fv-list__number {
  color: #FFF;
  opacity: 0.6;
  font-family: "EB Garamond", serif;
  font-size: 2.8571428571vw;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .fv-list__number {
    margin-top: 1.0666666667vw;
    font-size: 4.8vw;
    letter-spacing: 0.01em;
  }
}

@media screen and (max-width: 767px) {
  .fv-list__number-sp04 {
    margin-top: -4.2666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .fv-list__number-sp05 {
    margin-top: -6.4vw;
  }
}

.fv-text__blue {
  font-size: 1.7142857143vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .fv-text__blue {
    font-size: 4vw;
  }
}

.fv-text__gold {
  background: var(--gold_gd, linear-gradient(92deg, #7A6500 0%, #C3A419 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-left: -0.4285714286vw;
}
@media screen and (max-width: 767px) {
  .fv-text__gold {
    margin-left: -1.0666666667vw;
  }
}
.fv-text__gold--00 {
  background: var(--gold_gd, linear-gradient(92deg, #7A6500 0%, #C3A419 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-right: -0.3571428571vw;
}
@media screen and (max-width: 767px) {
  .fv-text__gold--00 {
    margin-right: -0.5333333333vw;
  }
}

.fv-text__gold--02 {
  background: var(--gold_gd, linear-gradient(92deg, #7A6500 0%, #C3A419 100%));
  padding: 0.2857142857vw 0.5714285714vw;
  color: #fff;
  font-size: 1vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
  -webkit-transform: translateY(-0.2857142857vw);
          transform: translateY(-0.2857142857vw);
  margin-right: 0.2857142857vw;
}

@media screen and (max-width: 767px) {
  .fv-text__sp P {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media screen and (max-width: 767px) {
  .fv-text__sp-line {
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
    padding: 0.2666666667vw !important;
    background: none !important;
    line-height: 0.1 !important;
  }
}

@media screen and (max-width: 767px) {
  .fv-text__sp-bule {
    line-height: 1;
  }
}

@media screen and (max-width: 767px) {
  .fv-text__gold--02-sp {
    background: var(--gold_gd, linear-gradient(92deg, #7A6500 0%, #C3A419 100%));
    padding: 0.5333333333vw 0.5333333333vw;
    font-size: 3.2vw;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
    color: #fff;
  }
}

.tv-info {
  position: absolute;
  bottom: 3.6428571429vw;
  right: 0;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .tv-info {
    bottom: 6.1333333333vw;
    left: 5.3333333333vw;
    right: auto;
  }
}

.tv-info a {
  color: inherit;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .tv-info a {
    display: block;
  }
}
.tv-info a:hover, .tv-info a:focus {
  color: inherit;
  text-decoration: none;
  opacity: 0.9;
  -webkit-filter: none;
          filter: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.tv-info__bg {
  background: url("../img/youtube_bg.webp") center/cover no-repeat;
  width: 33.3571428571vw;
  height: 9.3571428571vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-shadow: 0.2657142857vw 0.2657142857vw 1.1957857143vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.2657142857vw 0.2657142857vw 1.1957857143vw 0 rgba(0, 0, 0, 0.16);
  position: relative;
}
@media screen and (max-width: 767px) {
  .tv-info__bg {
    width: 89.3333333333vw;
    height: 25.0666666667vw;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.tv-info__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(178deg, #0099BB 0%, #0564B5 98.64%);
  opacity: 0.7;
  z-index: 1;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.tv-info__bg:hover::after {
  opacity: 0.5;
}

.tv-info__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  position: relative;
  z-index: 2;
  gap: 1.1428571429vw;
  padding: 1vw;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .tv-info__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.2vw;
    padding: 2.9333333333vw 2.6666666667vw;
  }
}

.tv-info__youtube {
  width: 11.4598571429vw;
  height: 7.2721428571vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  aspect-ratio: 160.44/101.81;
}
@media screen and (max-width: 767px) {
  .tv-info__youtube {
    width: 30.6906666667vw;
    height: 19.4754666667vw;
    aspect-ratio: 115.09/73.03;
  }
}

.tv-info__item {
  border-bottom: 0.0714285714vw solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 767px) {
  .tv-info__item {
    width: 100%;
  }
}

.tv-info__text {
  margin-top: 0.2142857143vw;
  color: #fff;
  font-size: 1.4285714286vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .tv-info__text {
    margin-top: 0.2666666667vw;
    font-size: 3.7333333333vw;
    letter-spacing: 0.13em;
  }
}

.tv-info__date {
  margin-top: 1vw;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.7857142857vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .tv-info__date {
    margin-top: 2.9333333333vw;
    font-size: 2.1333333333vw;
  }
}

.tv-info__title {
  margin-top: 0.5714285714vw;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8571428571vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .tv-info__title {
    margin-top: 1.3333333333vw;
    font-size: 2.1333333333vw;
    letter-spacing: 0.18em;
  }
}

.contact {
  background: url("../img/contact_bg.webp") center/cover no-repeat;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .contact {
    background: url("../img/contact_bg-sp.webp") center/cover no-repeat;
    z-index: 5;
  }
}
.contact::before {
  content: "contact";
  position: absolute;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  color: #fff;
  font-size: 17.1428571429vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  opacity: 0.2;
  left: 51.5%;
  top: -3.2857142857vw;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
@media screen and (min-width: 1401px) {
  .contact::before {
    font-size: 240px;
    top: -46px;
  }
}
@media screen and (max-width: 767px) {
  .contact::before {
    font-size: 13.5593220339vw;
    top: -2.6075619296vw;
    left: 53%;
  }
}
@media screen and (max-width: 550px) {
  .contact::before {
    font-size: 27.7333333333vw;
    top: -5.3333333333vw;
    left: 53%;
  }
}
.contact::after {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  opacity: 0.9;
  z-index: -1;
}

.contact__inner {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 1400px;
}
@media screen and (min-width: 1401px) {
  .contact__inner {
    padding-top: 80px;
    padding-bottom: 80px;
    padding-inline: 80px;
    width: min(1160px, 100%);
  }
}
@media screen and (max-width: 1023px) {
  .contact__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .contact__inner {
    padding-top: 6.258148631vw;
    padding-bottom: 6.1277705346vw;
    padding-inline: 5.2151238592vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .contact__inner {
    padding-top: 12.8vw;
    padding-bottom: 12.5333333333vw;
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
}

.contact__item {
  text-align: center;
}

.contact__heading {
  color: #fff;
  font-size: 2.8571428571vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .contact__heading {
    font-size: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .contact__heading {
    font-size: 3.5190615836vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__heading {
    font-size: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .contact__heading {
    font-size: 6.4vw;
  }
}

.contact__text {
  margin-top: 2.2857142857vw;
  margin-inline: auto;
  max-width: 57.1428571429vw;
  width: 100%;
  color: #fff;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .contact__text {
    margin-top: 32px;
    max-width: 800px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .contact__text {
    font-size: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__text {
    margin-top: 3.1290743155vw;
    font-size: 1.9556714472vw;
    max-width: 104.3024771838vw;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .contact__text {
    margin-top: 6.4vw;
    font-size: 3.2vw;
    max-width: 213.3333333333vw;
    line-height: 1.6;
  }
}

.contact__btns {
  margin-top: 3.2857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .contact__btns {
    margin-top: 46px;
    gap: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .contact__btns {
    margin-top: 4.4965786901vw;
    gap: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__btns {
    margin-top: 3.9113428944vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.2164276402vw;
  }
}
@media screen and (max-width: 550px) {
  .contact__btns {
    margin-top: 8vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4.5333333333vw;
  }
}

.contact-btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  width: 23vw;
  height: 5.7857142857vw;
  -webkit-box-shadow: 0.2857142857vw 0.2857142857vw 1.2857142857vw 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0.2857142857vw 0.2857142857vw 1.2857142857vw 0 rgba(0, 0, 0, 0.1);
  position: relative;
}
.contact-btn__wrap::after {
  content: "";
  position: absolute;
  bottom: 0.2857142857vw;
  right: 0.3571428571vw;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 0.6428571429vw 0.6428571429vw;
  border-color: transparent transparent #fff transparent;
}
@media screen and (min-width: 1401px) {
  .contact-btn__wrap {
    width: 322px;
    height: 81px;
    border-width: 1px;
    -webkit-box-shadow: 4px 4px 18px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 4px 4px 18px 0 rgba(0, 0, 0, 0.1);
  }
  .contact-btn__wrap::after {
    bottom: 4px;
    right: 5px;
    border-width: 0 0 9px 9px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__wrap {
    width: 31.4760508309vw;
    height: 7.7223851417vw;
    border-width: 1px;
    -webkit-box-shadow: 0.3910068426vw 0.3910068426vw 1.7595307918vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0.3910068426vw 0.3910068426vw 1.7595307918vw 0 rgba(0, 0, 0, 0.1);
  }
  .contact-btn__wrap::after {
    bottom: 0.1955034213vw;
    right: 0.4887585533vw;
    border-width: 0 0 0.8797653959vw 0.8797653959vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__wrap {
    width: 52.1512385919vw;
    height: 8.8657105606vw;
  }
  .contact-btn__wrap::after {
    bottom: 0.5215123859vw;
    right: 0.5215123859vw;
    border-width: 0 0 0.9126466754vw 0.9126466754vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__wrap {
    width: 89.3333333333vw;
    height: 18.1333333333vw;
  }
  .contact-btn__wrap::after {
    bottom: 0.8vw;
    right: 1.3333333333vw;
    border-width: 0 0 1.8666666667vw 1.8666666667vw;
  }
}

.contact-btn__items {
  padding: 0.4285714286vw 0.2857142857vw 0.4285714286vw 0.9285714286vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1vw;
  font-weight: 900;
  letter-spacing: 0.1em;
  height: 2vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 0.0714285714vw solid #fff;
  background: #fff;
  width: 100%;
}
@media screen and (min-width: 1401px) {
  .contact-btn__items {
    padding: 6px 4px 6px 13px;
    font-size: 14px;
    height: 28px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__items {
    padding: 0.5865102639vw 0.3910068426vw 0.5865102639vw 1.2707722385vw;
    font-size: 1.1730205279vw;
    height: 2.7370478983vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__items {
    padding: 0.6370273794vw 4.4464146023vw 0.6667535854vw 5.3319426336vw;
    font-size: 1.5645371578vw;
    height: 2.8683181226vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__items {
    padding: 1.3029333333vw 3vw 1.3637333333vw 3vw;
    font-size: 3.2vw;
    height: 5.8666666667vw;
  }
}

.contact-btn__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5714285714vw;
  height: 100%;
  border: 0.0714285714vw solid #fff;
}
@media screen and (min-width: 1401px) {
  .contact-btn__box {
    gap: 8px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__box {
    gap: 0.7820136852vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__box {
    gap: 1.0430247718vw;
    padding-top: 0.1303780965vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__box {
    gap: 2.1333333333vw;
    margin-bottom: 0.2666666667vw;
    padding-top: 0.2666666667vw;
    height: 100%;
  }
}

.contact-btn__tel-box {
  background: var(--blue_gd_02, linear-gradient(153deg, #0099BB 0%, #0564B5 100%));
  gap: 0.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .contact-btn__tel-box {
    gap: 8px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__tel-box {
    gap: 0.7820136852vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__tel-box {
    gap: 1.0430247718vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__tel-box {
    gap: 2.1333333333vw;
  }
}

.contact-btn__icon {
  width: 1.7142857143vw;
  height: 1.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .contact-btn__icon {
    width: 24px;
    height: 24px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__icon {
    width: 2.3460410557vw;
    height: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__icon {
    width: 2.8683181226vw;
    height: 2.8683181226vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__icon {
    width: 5.8666666667vw;
    height: 5.8666666667vw;
  }
}

.contact-btn__text {
  color: #fff;
  text-align: center;
  font-size: 1.7142857143vw;
  font-weight: 900;
  letter-spacing: 0.1em;
}
.contact-btn__text--2 {
  font-size: 1.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .contact-btn__text {
    font-size: 24px;
  }
  .contact-btn__text--2 {
    font-size: 22px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__text {
    font-size: 2.3460410557vw;
  }
  .contact-btn__text--2 {
    font-size: 2.1505376344vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__text {
    font-size: 2.8683181226vw;
  }
  .contact-btn__text--2 {
    font-size: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__text {
    font-size: 5.8666666667vw;
  }
  .contact-btn__text--2 {
    font-size: 5.3333333333vw;
  }
}

.contact-btn__reserve-text {
  color: #ED7F00;
  position: relative;
}
.contact-btn__reserve-text::before, .contact-btn__reserve-text::after {
  content: "/";
  position: absolute;
  top: 20%;
  color: #ED7F00;
  font-weight: normal;
}
.contact-btn__reserve-text::before {
  content: "\\";
  left: 3.2857142857vw;
}
.contact-btn__reserve-text::after {
  content: "/";
  right: 3.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .contact-btn__reserve-text::before {
    left: 46px;
  }
  .contact-btn__reserve-text::after {
    right: 46px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__reserve-text::before {
    left: 4.4965786901vw;
  }
  .contact-btn__reserve-text::after {
    right: 4.4965786901vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__reserve-text::before {
    top: 20%;
    left: 13.037809648vw;
    font-size: 1.8252933507vw;
  }
  .contact-btn__reserve-text::after {
    top: 20%;
    right: 13.037809648vw;
    font-size: 1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__reserve-text::before {
    top: 20%;
    left: 19.7333333333vw;
    font-size: 3.7333333333vw;
  }
  .contact-btn__reserve-text::after {
    top: 20%;
    right: 18.1333333333vw;
    font-size: 3.7333333333vw;
  }
}

.contact-btn__reserve-box {
  background: var(--orange_gd_01, linear-gradient(94deg, #CF7C1B 0%, #F59C35 100%));
}

.contact-btn__mail-text {
  color: #00A1B3;
  position: relative;
}
.contact-btn__mail-text::before, .contact-btn__mail-text::after {
  content: "/";
  position: absolute;
  top: 20%;
  color: #00A1B3;
  font-weight: normal;
}
.contact-btn__mail-text::before {
  content: "\\";
  left: 3.2857142857vw;
}
.contact-btn__mail-text::after {
  content: "/";
  right: 3.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .contact-btn__mail-text::before {
    left: 46px;
  }
  .contact-btn__mail-text::after {
    right: 46px;
  }
}
@media screen and (max-width: 1023px) {
  .contact-btn__mail-text::before {
    left: 4.4965786901vw;
  }
  .contact-btn__mail-text::after {
    right: 4.4965786901vw;
  }
}
@media screen and (max-width: 767px) {
  .contact-btn__mail-text::before {
    top: 20%;
    left: 13.037809648vw;
    font-size: 1.8252933507vw;
  }
  .contact-btn__mail-text::after {
    top: 20%;
    right: 13.037809648vw;
    font-size: 1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .contact-btn__mail-text::before {
    top: 20%;
    left: 19.7333333333vw;
    font-size: 3.7333333333vw;
  }
  .contact-btn__mail-text::after {
    top: 20%;
    right: 18.1333333333vw;
    font-size: 3.7333333333vw;
  }
}

.contact-btn__mail-box {
  background: -webkit-gradient(linear, left top, right top, from(#00B4C8), to(#00A1B3));
  background: linear-gradient(90deg, #00B4C8 0%, #00A1B3 100%);
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .contact-btn__reserve-text::before,
  .contact-btn__reserve-text::after {
    top: 42%;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .contact-btn__wrap::after {
    bottom: 2% !important;
    right: 2% !important;
  }
}
.nav {
  background: url("../img/nav_bg.webp") center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  .nav {
    background: url("../img/nav_bg-sp.webp") center/cover no-repeat;
    z-index: -2;
  }
}

.nav__inner {
  padding-top: 3.4285714286vw;
  padding-bottom: 3.4285714286vw;
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .nav__inner {
    padding-top: 48px;
    padding-bottom: 48px;
    padding-inline: 80px;
    width: min(1160px, 100%);
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .nav__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .nav__inner {
    padding-top: 5.2151238592vw;
    padding-bottom: 5.2151238592vw;
    padding-inline: 5.2151238592vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .nav__inner {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
}

.nav__heading {
  text-align: center;
}

.nav__lists {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.1428571429vw 1.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .nav__lists {
    gap: 16px 16px;
  }
}
@media screen and (max-width: 767px) {
  .nav__lists {
    margin-top: 3.1290743155vw;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.0860495437vw 3.1290743155vw;
  }
}
@media screen and (max-width: 550px) {
  .nav__lists {
    margin-top: 6.4vw;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.6666666667vw 2.6666666667vw;
  }
}

.nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 23vw;
  width: 100%;
  height: 4.5714285714vw;
  padding-right: 0.8571428571vw;
  padding-left: 0.8571428571vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: #fff;
  border: 0.0714285714vw solid #0099BB;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
  position: relative;
}
.nav__list::after {
  content: "";
  position: absolute;
  background: url("../img/nav-arrow.webp") no-repeat center/contain;
  width: 1.4285714286vw;
  height: 1.4285714286vw;
  right: 1.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .nav__list {
    max-width: 322px;
    height: 64px;
    padding-right: 12px;
    padding-left: 12px;
    gap: 14px;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
  }
  .nav__list::after {
    width: 20px;
    height: 20px;
    right: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .nav__list {
    max-width: 31.4760508309vw;
    height: 6.2561094819vw;
  }
}
@media screen and (max-width: 767px) {
  .nav__list {
    max-width: 52.1512385919vw;
    width: 100%;
    height: 6.3885267275vw;
    padding-right: 0;
    padding-left: 1.0430247718vw;
    gap: 0;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
  }
  .nav__list::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 3.1290743155vw;
    height: 3.1290743155vw;
    background: linear-gradient(178deg, #09B 0%, #0564B5 98.64%);
    -webkit-clip-path: polygon(100% 0, 0 100%, 100% 100%);
            clip-path: polygon(100% 0, 0 100%, 100% 100%);
    z-index: 2;
  }
  .nav__list::after {
    background: url("../img/nav-arrow-sp.webp") no-repeat center/contain;
    width: 2.6075619296vw;
    height: 2.6075619296vw;
    right: 0;
    bottom: -0.3911342894vw;
    z-index: 3;
  }
}
@media screen and (max-width: 550px) {
  .nav__list {
    max-width: 44.2666666667vw;
    width: 100%;
    height: 13.0666666667vw;
    padding-right: 0;
    padding-left: 2.1333333333vw;
    gap: 0;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
  }
  .nav__list::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 6.4vw;
    height: 6.4vw;
    background: linear-gradient(178deg, #09B 0%, #0564B5 98.64%);
    -webkit-clip-path: polygon(100% 0, 0 100%, 100% 100%);
            clip-path: polygon(100% 0, 0 100%, 100% 100%);
    z-index: 2;
  }
  .nav__list::after {
    background: url("../img/nav-arrow-sp.webp") no-repeat center/contain;
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    right: 0;
    bottom: -0.8vw;
    z-index: 3;
  }
}

.nav__number {
  font-family: "EB Garamond", serif;
  font-size: 2vw;
  font-weight: 400;
  opacity: 0.4;
}
@media screen and (min-width: 1401px) {
  .nav__number {
    font-size: 28px;
  }
}
@media screen and (max-width: 1023px) {
  .nav__number {
    font-size: 2.7370478983vw;
  }
}
@media screen and (max-width: 767px) {
  .nav__number {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  .nav__number {
    display: none;
  }
}

.nav__title {
  font-size: 1.2857142857vw;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .nav__title {
    font-size: 18px;
  }
}
@media screen and (max-width: 1023px) {
  .nav__title {
    font-size: 1.7595307918vw;
  }
}
@media screen and (max-width: 767px) {
  .nav__title {
    font-size: 1.8252933507vw;
    line-height: 1.4;
  }
}
@media screen and (max-width: 550px) {
  .nav__title {
    font-size: 3.2vw;
    line-height: 1.4;
  }
}

.about {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .about {
    padding-top: 80px;
    padding-bottom: 113px;
  }
}
@media screen and (max-width: 767px) {
  .about {
    padding-top: 5.7366362451vw;
    padding-bottom: 6.258148631vw;
  }
}
@media screen and (max-width: 550px) {
  .about {
    padding-top: 11.7333333333vw;
    padding-bottom: 12.8vw;
  }
}

.about__inner {
  width: min(74.1428571429vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .about__inner {
    width: min(1038px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 767px) {
  .about__inner {
    width: 100%;
    padding-inline: 7.8226857888vw;
  }
}
@media screen and (max-width: 550px) {
  .about__inner {
    width: 100%;
    padding-inline: 6.1333333333vw;
  }
}

.about__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 6.6428571429vw;
  width: 100%;
}
@media screen and (min-width: 1401px) {
  .about__items {
    gap: 93px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .about__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.2151238592vw;
  }
}
@media screen and (max-width: 550px) {
  .about__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10.6666666667vw;
  }
}

.about__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .about__wrap {
    gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .about__wrap {
    gap: 2.8683181226vw;
  }
}
@media screen and (max-width: 550px) {
  .about__wrap {
    gap: 5.8666666667vw;
  }
}

.about__description {
  max-width: 36.4285714286vw;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .about__description {
    max-width: 510px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .about__description {
    font-size: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .about__description {
    font-size: 2.0860495437vw;
    max-width: none;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .about__description {
    font-size: 3.2vw;
    max-width: none;
    line-height: 1.6;
  }
}

.about__img {
  width: 43vw;
  height: auto;
  aspect-ratio: 597/351;
  margin-right: calc(50% - 50vw);
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1401px) {
  .about__img {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(101px);
            transform: translateX(101px);
    width: 598px;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
    z-index: 1;
  }
}
@media screen and (max-width: 1023px) {
  .about__img {
    width: 42.7174975562vw;
    height: 25.0244379277vw;
  }
}
@media screen and (max-width: 767px) {
  .about__img {
    width: 56.9752281617vw;
    height: auto;
    -webkit-box-shadow: 0.5633637549vw 0.5633637549vw 2.535202086vw rgba(0, 0, 0, 0.16);
            box-shadow: 0.5633637549vw 0.5633637549vw 2.535202086vw rgba(0, 0, 0, 0.16);
    margin-right: calc(50% - 50vw);
    margin-left: auto;
  }
}
@media screen and (max-width: 550px) {
  .about__img {
    width: 86.1333333333vw;
    -webkit-box-shadow: 1.1522666667vw 1.1522666667vw 5.1853333333vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.1522666667vw 1.1522666667vw 5.1853333333vw rgba(0, 0, 0, 0.16);
    margin-right: calc(50% - 50vw);
    margin-left: auto;
  }
}

.symptoms {
  padding-top: 5.5714285714vw;
  padding-bottom: 5.5714285714vw;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1401px) {
  .symptoms {
    padding-top: 78px;
    padding-bottom: 78px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms {
    padding-top: 5.4758800522vw;
    padding-bottom: 6.258148631vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms {
    padding-top: 11.2vw;
    padding-bottom: 12.8vw;
  }
}

.symptoms__bg {
  position: absolute;
  inset: 0;
  background: url("../img/symptoms_bg.webp") center/cover no-repeat;
  background-position: 0 -0.1428571429vw;
  z-index: -1;
  opacity: 0.2;
}
@media (min-width: 1401px) {
  .symptoms__bg {
    background-position: 0 -2px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__bg {
    background: url("../img/symptoms_bg-sp.webp") center/cover no-repeat;
    background-position: 0 -0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__bg {
    background: url("../img/symptoms_bg-sp.webp") center/cover no-repeat;
    background-position: 0 -0.5333333333vw;
  }
}
.symptoms__bg::before {
  content: "symptoms";
  position: absolute;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  color: #fff;
  font-size: 17.1428571429vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  opacity: 0.6;
  background: var(--blue_gd_02, linear-gradient(153deg, #0099BB 0%, #0564B5 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  left: 51.5%;
  top: 3vw;
  -webkit-transform: translate(-50%, -20%);
          transform: translate(-50%, -20%);
  z-index: -1;
}
@media (min-width: 1401px) {
  .symptoms__bg::before {
    font-size: 240px;
    top: 42px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__bg::before {
    font-size: 18.2529335072vw;
    top: 3.1290743155vw;
    left: 53%;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__bg::before {
    font-size: 27.7333333333vw;
    top: 6.4vw;
    left: 53%;
  }
}
.symptoms__bg::after {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: -webkit-gradient(linear, left top, right bottom, from(#0099BB), to(#0564B5));
  background: linear-gradient(to bottom right, #0099BB, #0564B5);
  opacity: 0.4;
  z-index: -1;
}

.symptoms__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
  position: relative;
  z-index: 1;
}
@media (min-width: 1401px) {
  .symptoms__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .symptoms__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.symptoms__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.symptoms__heading {
  text-align: center;
}

.symptoms__description {
  margin-top: 2.2857142857vw;
  margin-inline: auto;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  max-width: 57.1428571429vw;
  width: 100%;
}
@media (min-width: 1401px) {
  .symptoms__description {
    margin-top: 32px;
    font-size: 16px;
    max-width: 800px;
  }
}
@media screen and (max-width: 1023px) {
  .symptoms__description {
    font-size: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__description {
    margin-top: 2.998696219vw;
    font-size: 2.0860495437vw;
    max-width: 78.2268578879vw;
    line-height: 1.59;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__description {
    margin-top: 6.1333333333vw;
    font-size: 3.2vw;
    max-width: none;
    line-height: 1.59;
  }
}

.symptoms__wrap {
  margin-top: 2.8571428571vw;
  max-width: 71.4285714286vw;
  width: 100%;
  background: #fff;
  border-bottom: 0.0714285714vw solid #0099BB;
  padding: 1.7142857143vw 4.2142857143vw 1.7142857143vw 4.2857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.1428571429vw;
}
@media (min-width: 1401px) {
  .symptoms__wrap {
    margin-top: 40px;
    max-width: 1000px;
    border-bottom: 1px solid #0099BB;
    padding: 24px 59px 24px 60px;
    gap: 16px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 1023px) {
  .symptoms__wrap {
    max-width: 97.7517106549vw;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__wrap {
    margin-top: 3.1290743155vw;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 65.1890482399vw;
    width: 100%;
    border-bottom: 1px solid #0099BB;
    padding: 3.1290743155vw 2.998696219vw 3.1290743155vw 4.8239895698vw;
    gap: 10.4302477184vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__wrap {
    margin-top: 6.4vw;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: none;
    border-bottom: 1px solid #0099BB;
    padding: 6.4vw 6.1333333333vw 6.4vw 9.8666666667vw;
    gap: 4.5333333333vw;
  }
}

.symptoms__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2.6428571429vw;
  font-size: 1.1428571429vw;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .symptoms__list {
    gap: 20px 37px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .symptoms__list {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.0860495437vw;
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4.2666666667vw;
    font-size: 3.4666666667vw;
  }
}
.symptoms__list li {
  position: relative;
}
.symptoms__list li::before {
  content: "";
  position: absolute;
  width: 0.4285714286vw;
  height: 0.4285714286vw;
  border-radius: 50%;
  background: var(--blue_gd_02, linear-gradient(153deg, #0099BB 0%, #0564B5 100%));
  left: -1.1428571429vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (min-width: 1401px) {
  .symptoms__list li::before {
    width: 6px;
    height: 6px;
    left: -16px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__list li::before {
    width: 0.7822685789vw;
    height: 0.7822685789vw;
    left: -1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__list li::before {
    width: 1.6vw;
    height: 1.6vw;
    left: -3.7333333333vw;
  }
}

.symptoms__text {
  margin-top: 3.9285714286vw;
  color: #7A6500;
  text-align: center;
  font-size: 1.7142857143vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  position: relative;
}
@media (min-width: 1401px) {
  .symptoms__text {
    margin-top: 55px;
    font-size: 24px;
  }
}
@media screen and (max-width: 1023px) {
  .symptoms__text {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__text {
    margin-top: 4.1720990874vw;
    font-size: 2.3468057366vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__text {
    margin-top: 8.5333333333vw;
    font-size: 4.8vw;
  }
}
.symptoms__text::before {
  content: "";
  position: absolute;
  background: url("../img/symptoms_line-left.webp") center/cover no-repeat;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 26.5714285714vw;
  height: 0.2857142857vw;
  left: -28.5714285714vw;
}
@media (min-width: 1401px) {
  .symptoms__text::before {
    width: 372px;
    height: 4px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__text::before {
    width: 26.075619296vw;
    height: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__text::before {
    width: 19.4666666667vw;
    height: 0.5333333333vw;
  }
}
.symptoms__text::after {
  content: "";
  position: absolute;
  background: url("../img/symptoms_line-right.webp") center/cover no-repeat;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 26.5714285714vw;
  height: 0.2857142857vw;
  right: -28.5714285714vw;
}
@media (min-width: 1401px) {
  .symptoms__text::after {
    width: 372px;
    height: 4px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__text::after {
    width: 26.075619296vw;
    height: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__text::after {
    width: 19.4666666667vw;
    height: 0.5333333333vw;
  }
}

.symptoms__imgs {
  margin-top: 4.2857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-inline: auto;
  gap: 4.5vw;
}
@media (min-width: 1401px) {
  .symptoms__imgs {
    margin-top: 60px;
    gap: 63px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__imgs {
    margin-top: 3.1290743155vw;
    gap: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .symptoms__imgs {
    margin-top: 6.4vw;
    gap: 5.3333333333vw;
  }
}

.symptoms__img {
  width: 22.2857142857vw;
  height: 22.2857142857vw;
  border-radius: 50%;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
}
@media (min-width: 1401px) {
  .symptoms__img {
    width: 312px;
    height: 312px;
  }
}
@media screen and (max-width: 767px) {
  .symptoms__img {
    width: 26.075619296vw;
    height: 26.075619296vw;
    -webkit-box-shadow: 0.5633637549vw 0.5633637549vw 2.535202086vw rgba(0, 0, 0, 0.16);
            box-shadow: 0.5633637549vw 0.5633637549vw 2.535202086vw rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 550px) {
  .symptoms__img {
    width: 38.4vw;
    height: 38.4vw;
    -webkit-box-shadow: 1.1522666667vw 1.1522666667vw 5.1853333333vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.1522666667vw 1.1522666667vw 5.1853333333vw rgba(0, 0, 0, 0.16);
  }
}

.causes {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .causes {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .causes {
    padding-top: 5.7366362451vw;
    padding-bottom: 0;
    background: #F7F4F2;
  }
}
@media screen and (max-width: 550px) {
  .causes {
    padding-top: 11.7333333333vw;
    padding-bottom: 0;
    background: #F7F4F2;
  }
}

.causes__inner {
  width: min(88.5714285714vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
}
@media screen and (min-width: 1401px) {
  .causes__inner {
    width: min(1240px, 100%);
    padding-inline: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .causes__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
  }
}

.causes__container {
  background: #F7F4F2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
  padding-inline: 7.1428571429vw;
  margin-inline: auto;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes__container {
    padding-top: 80px;
    padding-bottom: 80px;
    padding-inline: 100px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__container {
    padding-inline: 1.9550342131vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .causes__container {
    background: none;
    padding-top: 0;
    padding-bottom: 4.0417209909vw;
    padding-inline: 0;
  }
}
@media screen and (max-width: 550px) {
  .causes__container {
    background: none;
    padding-top: 0;
    padding-bottom: 8.2666666667vw;
    padding-inline: 0;
  }
}
.causes__container::after {
  content: "";
  position: absolute;
  bottom: -1.8571428571vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 3.2142857143vw solid transparent;
  border-right: 3.2142857143vw solid transparent;
  border-top: 2.4285714286vw solid #F7F4F2;
}
@media screen and (min-width: 1401px) {
  .causes__container::after {
    bottom: -26px;
    border-left: 45px solid transparent;
    border-right: 45px solid transparent;
    border-top: 34px solid #F7F4F2;
  }
}
@media screen and (max-width: 767px) {
  .causes__container::after {
    bottom: -2.3468057366vw;
    border-left: 5.4758800522vw solid transparent;
    border-right: 5.4758800522vw solid transparent;
    border-top: 4.4328552803vw solid #F7F4F2;
    z-index: 3;
  }
}
@media screen and (max-width: 550px) {
  .causes__container::after {
    bottom: -4.8vw;
    border-left: 11.2vw solid transparent;
    border-right: 11.2vw solid transparent;
    border-top: 9.0666666667vw solid #F7F4F2;
    z-index: 3;
  }
}

.causes__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  max-width: 71.1428571429vw;
  width: 100%;
}
@media screen and (min-width: 1401px) {
  .causes__wrap {
    max-width: 996px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__wrap {
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .causes__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .causes__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: none;
  }
}

.causes__items {
  width: 62%;
}
@media screen and (max-width: 767px) {
  .causes__items {
    width: 100%;
    margin-left: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__items {
    width: 100%;
    margin-left: 0.8vw;
  }
}

.causes__heading__ja {
  margin-top: 0.3571428571vw;
}
@media screen and (min-width: 1401px) {
  .causes__heading__ja {
    margin-top: 5px;
  }
}
@media screen and (max-width: 767px) {
  .causes__heading__ja {
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .causes__heading__ja {
    margin-top: 0;
  }
}

.causes__description {
  margin-top: 2.8571428571vw;
  width: 36.7142857143vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.62;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .causes__description {
    margin-top: 40px;
    width: 514px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__description {
    width: 48.8758553275vw;
    font-size: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .causes__description {
    margin-top: 2.8683181226vw;
    width: 100%;
    font-size: 2.0860495437vw;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .causes__description {
    margin-top: 5.8666666667vw;
    width: 100%;
    font-size: 3.2vw;
    line-height: 1.6;
  }
}

.causes__img {
  width: 30.7857142857vw;
  height: auto;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 1401px) {
  .causes__img {
    width: 431px;
    -webkit-box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 1023px) {
  .causes__img {
    width: 42.1309872923vw;
  }
}
@media screen and (max-width: 767px) {
  .causes__img {
    margin-top: 4.1720990874vw;
    width: 50%;
    margin-inline: auto;
    -webkit-box-shadow: 0.8501955671vw 0.8501955671vw 3.825684485vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0.8501955671vw 0.8501955671vw 3.825684485vw 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 550px) {
  .causes__img {
    margin-top: 8.5333333333vw;
    width: 100%;
    -webkit-box-shadow: 1.7389333333vw 1.7389333333vw 7.8248vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 1.7389333333vw 1.7389333333vw 7.8248vw 0 rgba(0, 0, 0, 0.16);
  }
}

.causes__title {
  margin-top: 4.2857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5714285714vw 2.8571428571vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 1.7142857143vw;
  background: var(--blue_gd_02, linear-gradient(153deg, #09B 0%, #0564B5 100%));
  color: #fff;
  text-align: center;
  font-size: 1.4285714286vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes__title {
    margin-top: 60px;
    padding: 8px 40px;
    border-radius: 24px;
    font-size: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__title {
    font-size: 1.9550342131vw;
  }
}
@media screen and (max-width: 767px) {
  .causes__title {
    margin-top: 5.2151238592vw;
    padding: 0.7822685789vw 2.6075619296vw;
    border-radius: 3.1290743155vw;
    font-size: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__title {
    margin-top: 8.5333333333vw;
    padding: 1.6vw 5.3333333333vw;
    border-radius: 6.4vw;
    font-size: 3.7333333333vw;
  }
}
.causes__title::before {
  content: "";
  position: absolute;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  height: 0.0714285714vw;
  width: 21.7857142857vw;
  left: -21.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .causes__title::before {
    height: 1px;
    width: 305px;
    left: -305px;
  }
}
@media screen and (max-width: 767px) {
  .causes__title::before {
    height: 0.1303780965vw;
    width: 13.037809648vw;
    left: -13.037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__title::before {
    height: 0.2666666667vw;
    width: 10.6666666667vw;
    left: -10.6666666667vw;
    top: 3.2vw;
  }
}
.causes__title::after {
  content: "";
  position: absolute;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  height: 0.0714285714vw;
  width: 21.7857142857vw;
  right: -21.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .causes__title::after {
    height: 1px;
    width: 305px;
    right: -305px;
  }
}
@media screen and (max-width: 767px) {
  .causes__title::after {
    height: 0.1303780965vw;
    width: 13.037809648vw;
    right: -13.037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__title::after {
    height: 0.2666666667vw;
    width: 10.6666666667vw;
    right: -10.6666666667vw;
    top: 3.2vw;
  }
}

@media screen and (max-width: 767px) {
  .causes__lists-scroll {
    overflow-x: scroll;
    width: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@media screen and (max-width: 550px) {
  .causes__lists-scroll {
    overflow-x: scroll;
    width: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}

.causes__lists-scroll::-webkit-scrollbar {
  display: none;
}

.causes__lists {
  margin-top: 3.4285714286vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 1.4285714286vw;
}
@media screen and (min-width: 1401px) {
  .causes__lists {
    margin-top: 48px;
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  .causes__lists {
    margin-top: 6.258148631vw;
    gap: 2.0860495437vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .causes__lists {
    margin-top: 8.2666666667vw;
    gap: 3.2vw;
    width: 100%;
  }
}

.causes__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  background: #fff;
  border: 0.0714285714vw solid #0099BB;
  width: 16.7142857143vw;
  height: 13.2142857143vw;
  padding: 0 1.6428571429vw 1.7142857143vw 1.7142857143vw;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes__list {
    border: 1px solid #0099BB;
    width: 234px;
    height: 185px;
    padding: 0 23px 24px 24px;
  }
}
@media screen and (max-width: 1023px) {
  .causes__list {
    width: 21.5053763441vw;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .causes__list {
    border: 1px solid #0099BB;
    width: 28.6831812256vw;
    height: 18.6440677966vw;
    padding: 0 1.1734028683vw 2.0860495437vw 1.1734028683vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
@media screen and (max-width: 550px) {
  .causes__list {
    border: 1px solid #0099BB;
    width: 53.8666666667vw;
    height: 38.1333333333vw;
    padding: 0 2.4vw 4.2666666667vw 2.4vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.causes-list__number {
  font-family: "EB Garamond", serif;
  font-size: 2.2857142857vw;
  font-weight: 400;
  position: absolute;
  top: -1.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .causes-list__number {
    font-size: 32px;
    top: -18px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-list__number {
    font-size: 3.128054741vw;
    top: -1.7595307918vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-list__number {
    font-size: 3.6505867014vw;
    top: -0.5333333333vw;
    -webkit-transform: translateY(-0.1303780965vw);
            transform: translateY(-0.1303780965vw);
    z-index: 10;
    position: relative;
  }
}
@media screen and (max-width: 550px) {
  .causes-list__number {
    font-size: 6.4vw;
    top: -3.4666666667vw;
    -webkit-transform: translateY(-0.2666666667vw);
            transform: translateY(-0.2666666667vw);
    z-index: 10;
    position: relative;
  }
}

.causes-list__title {
  margin-top: 2vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes-list__title {
    margin-top: 28px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-list__title {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-list__title {
    margin-top: -0.5215123859vw;
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .causes-list__title {
    margin-top: -1.0666666667vw;
    font-size: 3.7333333333vw;
  }
}
.causes-list__title::after {
  content: "";
  position: absolute;
  width: 2.2857142857vw;
  height: 0.0714285714vw;
  background: #ED7F00;
  bottom: -1.3571428571vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 1401px) {
  .causes-list__title::after {
    width: 32px;
    height: 1px;
    bottom: -19px;
  }
}
@media screen and (max-width: 767px) {
  .causes-list__title::after {
    width: 4.9543676662vw;
    height: 0.1303780965vw;
    bottom: -1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .causes-list__title::after {
    width: 8.5333333333vw;
    height: 0.2666666667vw;
    bottom: -3.2vw;
  }
}

.causes-list__text {
  margin-top: 2.5714285714vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-align: left;
}
@media screen and (min-width: 1401px) {
  .causes-list__text {
    margin-top: 36px;
    font-size: 14px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-list__text {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-list__text {
    margin-top: 3.259452412vw;
    font-size: 1.8252933507vw;
    display: block;
    width: 100%;
    letter-spacing: 0.08em;
    -moz-text-align-last: left;
         text-align-last: left;
  }
}
@media screen and (max-width: 550px) {
  .causes-list__text {
    margin-top: 6.6666666667vw;
    font-size: 3.2vw;
    display: block;
    width: 100%;
    letter-spacing: 0.08em;
    -moz-text-align-last: left;
         text-align-last: left;
  }
}

.causes__box {
  padding-top: 4.5714285714vw;
  padding-bottom: 5.2142857143vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1401px) {
  .causes__box {
    padding-top: 64px;
    padding-bottom: 73px;
  }
}
@media screen and (max-width: 767px) {
  .causes__box {
    padding-top: 6.3885267275vw;
    padding-bottom: 6.258148631vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-inline: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .causes__box {
    padding-top: 13.0666666667vw;
    padding-bottom: 12.8vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-inline: 5.3333333333vw;
  }
}

.causes-box__bg {
  position: absolute;
  inset: 0;
  background: url("../img/causes_bg.webp") center/cover no-repeat;
  z-index: -1;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .causes-box__bg {
    background: url("../img/causes_bg-sp.webp") center/cover no-repeat;
    width: 100vw;
    z-index: 0;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__bg {
    background: url("../img/causes_bg-sp.webp") center/cover no-repeat;
    width: 100vw;
    z-index: 0;
  }
}
.causes-box__bg::after {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: -webkit-gradient(linear, left top, right bottom, from(#0099BB), to(#0564B5));
  background: linear-gradient(to bottom right, #0099BB, #0564B5);
  opacity: 0.9;
  z-index: -1;
}

.causes-box__items {
  max-width: 71.4285714286vw;
  width: 100%;
  height: 24.1428571429vw;
  background: #fff;
  margin-inline: auto;
  padding: 2.8571428571vw 3.4285714286vw 2.9285714286vw 3.4285714286vw;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes-box__items {
    max-width: 1000px;
    height: 338px;
    padding: 40px 48px 41px 48px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-box__items {
    max-width: 78.2013685239vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__items {
    max-width: none;
    height: auto;
    padding: 3.259452412vw 3.1290743155vw 4.1720990874vw 3.1290743155vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__items {
    max-width: none;
    height: auto;
    padding: 6.6666666667vw 6.4vw 8.5333333333vw 6.4vw;
    width: 100%;
  }
}
.causes-box__items::before {
  content: "";
  position: absolute;
  top: 0.5714285714vw;
  right: 0.5714285714vw;
  bottom: 0.5714285714vw;
  left: 0.5714285714vw;
  border: 0.0714285714vw solid #0099BB;
  z-index: 1;
}
@media screen and (min-width: 1401px) {
  .causes-box__items::before {
    top: 8px;
    right: 8px;
    bottom: 8px;
    left: 8px;
    border: 1px solid #0099BB;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__items::before {
    top: 1.0430247718vw;
    right: 1.0430247718vw;
    bottom: 1.0430247718vw;
    left: 1.0430247718vw;
    border: 1px solid #0099BB;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__items::before {
    top: 2.1333333333vw;
    right: 2.1333333333vw;
    bottom: 2.1333333333vw;
    left: 2.1333333333vw;
    border: 1px solid #0099BB;
  }
}

.causes-box__title {
  text-align: center;
  font-size: 2vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .causes-box__title {
    font-size: 28px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-box__title {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__title {
    font-size: 3.1290743155vw;
    line-height: 1.4;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
  }
}
.causes-box__title span {
  color: #ED7F00;
}
.causes-box__title::after {
  position: absolute;
  content: "";
  background: linear-gradient(92deg, #7A6500 0%, #C3A419 100%);
  width: 64.5714285714vw;
  height: 0.0714285714vw;
  bottom: -1.6428571429vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 1401px) {
  .causes-box__title::after {
    width: 904px;
    height: 1px;
    bottom: -23px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-box__title::after {
    bottom: -1.1730205279vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__title::after {
    width: 35.2020860495vw;
    height: 0.1303780965vw;
    bottom: -2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__title::after {
    width: 72vw;
    height: 0.2666666667vw;
    bottom: -4.2666666667vw;
  }
}

.causes-box__text {
  margin-top: 3.4285714286vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .causes-box__text {
    margin-top: 48px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .causes-box__text {
    margin-top: 2.3460410557vw;
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__text {
    margin-top: 4.0417209909vw;
    font-size: 2.0860495437vw;
    padding-left: 0.7822685789vw;
    padding-right: 0.7822685789vw;
    line-height: 1.58;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__text {
    margin-top: 8.2666666667vw;
    font-size: 3.2vw;
    padding-left: 1.6vw;
    padding-right: 1.6vw;
    line-height: 1.58;
  }
}

.causes-box__items .causes-box__text:nth-of-type(3) {
  margin-top: 1.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .causes-box__items .causes-box__text:nth-of-type(3) {
    margin-top: 26px;
  }
}
@media screen and (max-width: 767px) {
  .causes-box__items .causes-box__text:nth-of-type(3) {
    margin-top: 1.3037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .causes-box__items .causes-box__text:nth-of-type(3) {
    margin-top: 2.6666666667vw;
  }
}

.causes__border-bottom {
  background: var(--blue_gd_02, linear-gradient(153deg, #0099BB 0%, #0564B5 100%));
  height: 0.0714285714vw;
  width: 100vw;
}
@media screen and (min-width: 1401px) {
  .causes__border-bottom {
    height: 1px;
  }
}
@media screen and (max-width: 767px) {
  .causes__border-bottom {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  .causes__border-bottom {
    display: none;
  }
}

.procedure {
  padding-top: 11.9285714286vw;
  padding-bottom: 5vw;
  position: relative;
  overflow: hidden;
}
.procedure::before {
  content: "surgical procedure";
  position: absolute;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 17.1428571429vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  white-space: nowrap;
  opacity: 0.15;
  background: linear-gradient(153deg, #09B 0%, #0564B5 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #fff;
  left: 51.8%;
  top: 3.3571428571vw;
  -webkit-transform: translate(-50%, -20%);
          transform: translate(-50%, -20%);
  z-index: -1;
}
@media screen and (min-width: 1401px) {
  .procedure {
    padding-top: 167px;
    padding-bottom: 70px;
  }
  .procedure::before {
    font-size: 240px;
    top: 47px;
  }
}
@media screen and (max-width: 767px) {
  .procedure {
    padding-top: 11.4732724902vw;
    padding-bottom: 7.4315514993vw;
  }
  .procedure::before {
    font-size: 13.5593220339vw;
    top: 3.1290743155vw;
    left: 49%;
  }
}
@media screen and (max-width: 550px) {
  .procedure {
    padding-top: 20vw;
    padding-bottom: 15.2vw;
  }
  .procedure::before {
    font-size: 27.7333333333vw;
    top: 6.4vw;
    left: 49%;
  }
}

.procedure__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .procedure__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .procedure__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .procedure__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .procedure__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.procedure__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 7.8571428571vw;
  width: 100%;
}
@media screen and (min-width: 1401px) {
  .procedure__items {
    gap: 110px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .procedure__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 6.6492829205vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 13.6vw;
  }
}

.procedure__img {
  width: 45.5vw;
  height: 27.5714285714vw;
  margin-left: calc(50% - 50vw);
  aspect-ratio: 639/386;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .procedure__img {
    position: absolute;
    top: 0;
    right: 50%;
    -webkit-transform: translateX(-65px);
            transform: translateX(-65px);
    width: 636px;
    z-index: 1;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .procedure__img {
    width: 65.1890482399vw;
    height: auto;
    margin-left: calc(50% - 50vw);
  }
}
@media screen and (max-width: 550px) {
  .procedure__img {
    width: 87.7333333333vw;
    height: 53.6vw;
    margin-left: calc(50% - 50vw);
  }
}

.procedure__img-bg {
  position: absolute;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  width: 48.9285714286vw;
  height: 23.4285714286vw;
  bottom: -3.1428571429vw;
  z-index: -1;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1401px) {
  .procedure__img-bg {
    width: 685px;
    height: 328px;
    bottom: -44px;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 767px) {
  .procedure__img-bg {
    width: 67.7966101695vw;
    height: 32.9856584094vw;
    bottom: -2.998696219vw;
    -webkit-box-shadow: 2.0860495437vw 2.0860495437vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 2.0860495437vw 2.0860495437vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 550px) {
  .procedure__img-bg {
    width: 94.6666666667vw;
    height: 45.3333333333vw;
    bottom: -6.1333333333vw;
    -webkit-box-shadow: 4.2666666667vw 4.2666666667vw 9.6vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 4.2666666667vw 4.2666666667vw 9.6vw 0 rgba(0, 0, 0, 0.16);
  }
}

.procedure__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.3571428571vw;
  width: 32.2142857143vw;
  margin-top: 7.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .procedure__wrap {
    gap: 33px;
    width: 451px;
    margin-top: 102px;
    margin-left: auto;
    margin-right: 0;
  }
}
@media screen and (max-width: 1023px) {
  .procedure__wrap {
    margin-top: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .procedure__wrap {
    margin-top: 0;
    gap: 2.8683181226vw;
    width: 100%;
    margin-right: 0;
    padding-inline: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure__wrap {
    margin-top: 0;
    gap: 5.8666666667vw;
    width: 100%;
    margin-right: 0;
    padding-inline: 0.8vw;
  }
}

.procedure__heading-ja {
  margin-top: 0.4285714286vw;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (min-width: 1401px) {
  .procedure__heading-ja {
    margin-top: 6px;
  }
}
@media screen and (max-width: 767px) {
  .procedure__heading-ja {
    line-height: 1;
  }
}
@media screen and (max-width: 550px) {
  .procedure__heading-ja {
    line-height: 1;
  }
}

.procedure__description {
  max-width: 36.4285714286vw;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .procedure__description {
    max-width: 510px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .procedure__description {
    font-size: 1.4662756598vw;
    max-width: 49.853372434vw;
  }
}
@media screen and (max-width: 767px) {
  .procedure__description {
    max-width: none;
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure__description {
    max-width: none;
    font-size: 3.2vw;
  }
}

.procedure__box {
  margin-top: 4.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .procedure__box {
    margin-top: 67px;
  }
}
@media screen and (max-width: 767px) {
  .procedure__box {
    margin-top: 7.6923076923vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure__box {
    margin-top: 15.7333333333vw;
  }
}

.procedure-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-inline: auto;
  gap: 2.8571428571vw;
  width: 62.0714285714vw;
  height: 20.1428571429vw;
  border: 0.0714285714vw solid #0099BB;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .procedure-box {
    gap: 40px;
    width: 869px;
    height: 282px;
    border: 1px solid #0099BB;
  }
}
@media screen and (max-width: 1023px) {
  .procedure-box {
    width: 68.4261974585vw;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.1290743155vw;
    width: 78.2268578879vw;
    height: auto;
    border: 1px solid #0099BB;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 6.4vw;
    width: 90.9333333333vw;
    height: 120vw;
    border: 1px solid #0099BB;
  }
}

.procedure-box__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.procedure-box__titles {
  position: absolute;
  top: -1.2142857143vw;
  left: -0.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .procedure-box__titles {
    top: -17px;
    left: -2px;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__titles {
    top: -2.2164276402vw;
    left: -0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__titles {
    top: -4.5333333333vw;
    left: -0.5333333333vw;
  }
}

.procedure-box__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  align-items: flex-end;
  padding: 0.2857142857vw 1.1428571429vw 0.5714285714vw 1.1428571429vw;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  color: #fff;
  font-size: 2.2857142857vw;
  font-weight: 500;
  letter-spacing: 0.09em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.procedure-box__title span {
  font-size: 1.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .procedure-box__title {
    padding: 4px 16px 8px 16px;
    font-size: 32px;
  }
  .procedure-box__title span {
    font-size: 24px;
  }
}
@media screen and (max-width: 1023px) {
  .procedure-box__title {
    font-size: 2.3460410557vw;
  }
  .procedure-box__title span {
    font-size: 1.7595307918vw;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__title {
    padding: 0.5215123859vw 1.5645371578vw 1.0430247718vw 1.5645371578vw;
    font-size: 2.8683181226vw;
  }
  .procedure-box__title span {
    font-size: 2.3468057366vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__title {
    padding: 1.0666666667vw 3.2vw 2.1333333333vw 3.2vw;
    font-size: 4.8vw;
  }
  .procedure-box__title span {
    font-size: 3.7333333333vw;
  }
}

.procedure-box__wrap .procedure-box__title:nth-of-type(2) {
  margin-top: 0.6428571429vw;
}
@media screen and (min-width: 1401px) {
  .procedure-box__wrap .procedure-box__title:nth-of-type(2) {
    margin-top: 9px;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__wrap .procedure-box__title:nth-of-type(2) {
    margin-top: 0.7822685789vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__wrap .procedure-box__title:nth-of-type(2) {
    margin-top: 1.6vw;
  }
}

.procedure-box__text {
  margin-top: 8.1428571429vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  width: 40.0714285714vw;
  padding-left: 2.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .procedure-box__text {
    margin-top: 114px;
    font-size: 16px;
    width: 561px;
    padding-left: 32px;
  }
}
@media screen and (max-width: 1023px) {
  .procedure-box__text {
    font-size: 1.3685239492vw;
    padding-bottom: 24px;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__text {
    margin-top: 9.9087353325vw;
    font-size: 1.9556714472vw;
    width: 100%;
    padding-left: 1.5645371578vw;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__text {
    margin-top: 17.6vw;
    font-size: 3.2vw;
    width: 100%;
    padding-left: 3.2vw;
    padding-bottom: 0;
  }
}

.procedure-box__img {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 28.7857142857vw;
  height: 21.1428571429vw;
  padding: 1.4285714286vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
  top: 1.2142857143vw;
  right: -9.4285714286vw;
}
@media screen and (min-width: 1401px) {
  .procedure-box__img {
    width: 403px;
    height: 296px;
    padding: 20px;
    top: 17px;
    right: -132px;
    -webkit-box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 1023px) {
  .procedure-box__img {
    width: 30.9872922776vw;
    height: 22.6783968719vw;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__img {
    position: relative;
    width: 52.1512385919vw;
    height: auto;
    padding: 1.9556714472vw;
    top: 0;
    right: 0vw;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-inline: auto;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__img {
    width: 84.5333333333vw;
    height: 61.8666666667vw;
    padding: 4vw;
  }
}

.procedure-box__img01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 25.9285714286vw;
  height: 18.2857142857vw;
  padding: 5.5714285714vw 1.3214285714vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: #C9C9C9;
  font-size: 1.7142857143vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .procedure-box__img01 {
    width: 363px;
    height: 256px;
    padding: 78px 18.5px;
    font-size: 24px;
  }
}
@media screen and (max-width: 1023px) {
  .procedure-box__img01 {
    width: 27.9116324536vw;
    height: 19.6842619746vw;
  }
}
@media screen and (max-width: 767px) {
  .procedure-box__img01 {
    width: 37.2276401565vw;
    height: 26.2542372881vw;
    padding: 7.9530638853vw 1.8252933507vw;
    font-size: 2.4771838331vw;
  }
}
@media screen and (max-width: 550px) {
  .procedure-box__img01 {
    width: 76.1429333333vw;
    height: 53.6986666667vw;
    padding: 16.2666666667vw 3.7333333333vw;
    font-size: 5.0666666667vw;
  }
}

.surgery {
  padding-top: 7.5714285714vw;
  padding-bottom: 6.9285714286vw;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1401px) {
  .surgery {
    padding-top: 106px;
    padding-bottom: 97px;
  }
}
@media screen and (max-width: 767px) {
  .surgery {
    padding-top: 3.520208605vw;
    padding-bottom: 6.258148631vw;
    overflow: visible;
  }
}
@media screen and (max-width: 550px) {
  .surgery {
    padding-top: 7.2vw;
    padding-bottom: 12.8vw;
    overflow: visible;
  }
}
.surgery::before {
  content: "types of surgery";
  position: absolute;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  color: #fff;
  font-size: 17.1428571429vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  white-space: nowrap;
  opacity: 0.15;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  left: 51.8%;
  top: 2.3571428571vw;
  -webkit-transform: translate(-50%, -20%);
          transform: translate(-50%, -20%);
  z-index: -1;
}
@media (min-width: 1401px) {
  .surgery::before {
    font-size: 240px;
    top: 33px;
  }
}
@media screen and (max-width: 767px) {
  .surgery::before {
    font-size: 13.5593220339vw;
    top: 2.1333333333vw;
    left: 53%;
    letter-spacing: 0.14em;
  }
}
@media screen and (max-width: 550px) {
  .surgery::before {
    font-size: 27.7333333333vw;
    top: 2.1333333333vw;
    left: 53%;
    letter-spacing: 0.14em;
  }
}

.surgery__inner {
  width: min(102.8571428571vw, 100%);
  padding-inline: 2.8571428571vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media (min-width: 1401px) {
  .surgery__inner {
    width: min(1440px, 100%);
    padding-inline: 40px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .surgery__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .surgery__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .surgery__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.surgery__heading {
  text-align: center;
}

.surgery__heading-ja {
  margin-top: 0.8571428571vw;
}
@media (min-width: 1401px) {
  .surgery__heading-ja {
    margin-top: 12px;
  }
}
@media screen and (max-width: 767px) {
  .surgery__heading-ja {
    margin-top: 0px;
  }
}
@media screen and (max-width: 550px) {
  .surgery__heading-ja {
    margin-top: 0px;
  }
}

.surgery__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 3.8571428571vw;
  gap: 9.6428571429vw;
}
@media (min-width: 1401px) {
  .surgery__wrap {
    margin-top: 54px;
    gap: 135px;
  }
}
@media screen and (max-width: 767px) {
  .surgery__wrap {
    margin-top: 5.3455019557vw;
    gap: 14.8631029987vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .surgery__wrap {
    margin-top: 10.9333333333vw;
    gap: 30.4vw;
    width: 100%;
  }
}

.surgery-block__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 3.5714285714vw;
}
@media (min-width: 1401px) {
  .surgery-block__wrap {
    gap: 50px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4.1720990874vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8.5333333333vw;
    width: 100%;
  }
}

.surgery-block__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.6428571429vw;
}
@media (min-width: 1401px) {
  .surgery-block__left {
    gap: 23px;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__left {
    gap: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__left {
    gap: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.surgery-block__number {
  font-family: "EB Garamond", serif;
  font-size: 10vw;
  font-weight: 400;
  line-height: 1;
  opacity: 0.15;
  display: block;
  -webkit-transform: translateY(-1.9285714286vw);
          transform: translateY(-1.9285714286vw);
}
@media (min-width: 1401px) {
  .surgery-block__number {
    font-size: 140px;
    -webkit-transform: translateY(-27px);
            transform: translateY(-27px);
  }
}
@media screen and (max-width: 1023px) {
  .surgery-block__number {
    font-size: 4.8875855327vw;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__number {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__number {
    display: none;
  }
}

.surgery-block__number-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .surgery-block__number-sp {
    font-family: "EB Garamond", serif;
    font-weight: 400;
    line-height: 1;
    opacity: 0.3;
    display: block;
    font-size: 40px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    line-height: 1;
    margin-left: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__number-sp {
    font-family: "EB Garamond", serif;
    font-weight: 400;
    line-height: 1;
    opacity: 0.3;
    display: block;
    font-size: 40px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    line-height: 1;
    margin-left: 0.5333333333vw;
  }
}

.surgery-block__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 2.5vw;
}
@media (min-width: 1401px) {
  .surgery-block__items {
    margin-top: 35px;
  }
}
@media screen and (max-width: 1023px) {
  .surgery-block__items {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__items {
    margin-top: 0;
    gap: 1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__items {
    margin-top: 0;
    gap: 3.7333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .surgery-block__sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 8.5333333333vw;
  }
}

.surgery-block__title {
  font-size: 1.7142857143vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
  border-left: 0.2857142857vw solid #0099BB;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 1.1428571429vw;
  gap: 0.5714285714vw;
  vertical-align: middle;
}
@media (min-width: 1401px) {
  .surgery-block__title {
    font-size: 24px;
    border-left: 4px solid #0099BB;
    padding-left: 16px;
    gap: 8px;
  }
}
@media screen and (max-width: 1023px) {
  .surgery-block__title {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__title {
    font-size: 2.6075619296vw;
    border-left: none;
    padding-left: 0;
    gap: 4.0417209909vw;
    line-height: 1;
    position: relative;
  }
  .surgery-block__title::before {
    content: "";
    position: absolute;
    background: #0099BB;
    width: 0.260756193vw;
    height: 3.6505867014vw;
    left: -2.3468057366vw;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__title {
    font-size: 5.3333333333vw;
    border-left: none;
    padding-left: 0;
    gap: 8.2666666667vw;
    line-height: 1;
    position: relative;
  }
  .surgery-block__title::before {
    content: "";
    position: absolute;
    background: #0099BB;
    width: 0.5333333333vw;
    height: 7.4666666667vw;
    left: -4.8vw;
  }
}

.surgery-block__text {
  margin-top: 2.2857142857vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  width: 32.2142857143vw;
}
@media (min-width: 1401px) {
  .surgery-block__text {
    margin-top: 32px;
    font-size: 16px;
    width: 451px;
  }
}
@media screen and (max-width: 1023px) {
  .surgery-block__text {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__text {
    margin-top: 0;
    font-size: 2.0860495437vw;
    width: 100%;
    padding-inline: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__text {
    margin-top: 0;
    font-size: 3.2vw;
    width: 100%;
    padding-inline: 0.5333333333vw;
  }
}

.surgery-block__right {
  width: 50vw;
  height: 18.1428571429vw;
  z-index: -1;
  margin-right: calc(50% - 50vw);
  -webkit-box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
}
@media screen and (min-width: 1401px) {
  .surgery-block__right {
    position: absolute;
    height: 254px;
    -webkit-box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
    top: 0;
    left: 50%;
    width: 699px;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__right {
    width: 80vw;
    height: 27.3794002608vw;
    margin-inline: auto;
    -webkit-box-shadow: none;
            box-shadow: none;
    z-index: 0;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__right {
    width: 100vw;
    height: 51.7333333333vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    -webkit-box-shadow: none;
            box-shadow: none;
    z-index: 0;
  }
}

.surgery-block__right-02 {
  width: 50vw;
  height: 18.1428571429vw;
  z-index: -1;
  margin-right: calc(50% - 50vw);
  -webkit-box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
}
@media screen and (min-width: 1401px) {
  .surgery-block__right-02 {
    position: absolute;
    height: 254px;
    -webkit-box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
    top: 0;
    left: 50%;
    width: 699px;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__right-02 {
    width: 80vw;
    height: 23.4680573664vw;
    margin-inline: auto;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__right-02 {
    width: 100vw;
    height: 34.4vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.step-box__img-bg {
  position: relative;
  width: 100%;
}

@media screen and (max-width: 550px) {
  .step-box__img-scroll {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    width: 100vw;
  }
  .step-box__img-scroll::-webkit-scrollbar {
    display: none;
  }
}

.steps {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 1.8571428571vw;
  right: 1.6428571429vw;
  top: 1.8571428571vw;
}
@media (min-width: 1401px) {
  .steps {
    gap: 26px;
    right: 23px;
    top: 26px;
  }
}
@media screen and (max-width: 767px) {
  .steps {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 2.6075619296vw;
    padding-top: 2.0860495437vw;
    margin-bottom: 1.9556714472vw;
  }
}
@media screen and (max-width: 550px) {
  .steps {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5.3333333333vw;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    padding-left: 6.9333333333vw;
    padding-top: 4.2666666667vw;
    margin-bottom: 4vw;
  }
}

.step-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 1.0714285714vw 1vw 0 1vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 14.2857142857vw;
  height: 21.0714285714vw;
  background: #fff;
  gap: 1.3571428571vw;
  position: relative;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
}
@media (min-width: 1401px) {
  .step-box {
    padding: 15px 14px 0 14px;
    width: 200px;
    height: 295px;
    gap: 19px;
    -webkit-box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 8px 8px 36px 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 1023px) {
  .step-box {
    height: 23.9491691105vw;
  }
}
@media screen and (max-width: 767px) {
  .step-box {
    padding: 1.5645371578vw 1.5645371578vw 4.1720990874vw 1.6949152542vw;
    width: 19.8174706649vw;
    height: 30.5084745763vw;
    gap: 2.0860495437vw;
    -webkit-box-shadow: 1.0430247718vw 1.0430247718vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 1.0430247718vw 1.0430247718vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
@media screen and (max-width: 550px) {
  .step-box {
    padding: 3.2vw 3.2vw 8.5333333333vw 3.4666666667vw;
    width: 40.5333333333vw;
    height: 62.4vw;
    gap: 4.2666666667vw;
    -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0.5714285714vw 0.5714285714vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.step-box img {
  width: 10.6428571429vw;
  height: 8vw;
}
@media (min-width: 1401px) {
  .step-box img {
    width: 149px;
    height: 112px;
  }
}
@media screen and (max-width: 767px) {
  .step-box img {
    width: 11.1007822686vw;
    height: 8.3441981747vw;
  }
}
@media screen and (max-width: 550px) {
  .step-box img {
    width: 22.7048vw;
    height: 17.0666666667vw;
  }
}

.step-box:nth-of-type(-n+2)::after {
  content: "";
  position: absolute;
  display: block;
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #fff;
  width: 1.2142857143vw;
  height: 1.9285714286vw;
  top: 30%;
  right: -1.0714285714vw;
}
@media (min-width: 1401px) {
  .step-box:nth-of-type(-n+2)::after {
    width: 17px;
    height: 27px;
    right: -15px;
  }
}
@media screen and (max-width: 767px) {
  .step-box:nth-of-type(-n+2)::after {
    width: 5.233767927vw;
    height: 8.9960886571vw;
    right: -1.6949152542vw;
  }
}
@media screen and (max-width: 550px) {
  .step-box:nth-of-type(-n+2)::after {
    width: 10.7048vw;
    height: 18.4vw;
    right: -3.4666666667vw;
  }
}

.step-box__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  gap: 0.5714285714vw;
  padding-bottom: 0.5714285714vw;
  border-bottom: 0.0714285714vw solid var(--orange, #ED7F00);
}
@media (min-width: 1401px) {
  .step-box__items {
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--orange, #ED7F00);
  }
}
@media screen and (max-width: 767px) {
  .step-box__items {
    gap: 1.0430247718vw;
    padding-bottom: 0.7822685789vw;
    border-bottom: 1px solid var(--orange, #ED7F00);
  }
}
@media screen and (max-width: 550px) {
  .step-box__items {
    gap: 2.1333333333vw;
    padding-bottom: 1.6vw;
    border-bottom: 1px solid var(--orange, #ED7F00);
  }
}

.step-box__number {
  color: #ED7F00;
  text-align: center;
  font-family: "Roboto", sans-serif;
  font-size: 1.4285714286vw;
  font-weight: 400;
  margin-top: 1px;
}
@media (min-width: 1401px) {
  .step-box__number {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .step-box__number {
    font-size: 1.5645371578vw;
  }
}
@media screen and (max-width: 550px) {
  .step-box__number {
    font-size: 3.2vw;
  }
}

.step-box__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2142857143vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .step-box__title {
    font-size: 18px;
  }
}
@media screen and (max-width: 1023px) {
  .step-box__title {
    font-size: 1.1730205279vw;
  }
}
@media screen and (max-width: 767px) {
  .step-box__title {
    font-size: 1.6949152542vw;
  }
}
@media screen and (max-width: 550px) {
  .step-box__title {
    font-size: 3.4666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .steps .step-box:nth-of-type(3) .step-box__title {
    font-size: 1.6949152542vw;
  }
}
@media screen and (max-width: 550px) {
  .steps .step-box:nth-of-type(3) .step-box__title {
    font-size: 3.4666666667vw;
  }
}

.step-box__desc {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .step-box__desc {
    font-size: 14px;
  }
}
@media screen and (max-width: 1023px) {
  .step-box__desc {
    font-size: 1.1730205279vw;
  }
}
@media screen and (max-width: 767px) {
  .step-box__desc {
    font-size: 1.5645371578vw;
  }
}
@media screen and (max-width: 550px) {
  .step-box__desc {
    font-size: 3.2vw;
  }
}

.surgery-block__btn {
  margin-top: 2.5vw;
  padding-right: 5.5vw;
}
@media (min-width: 1401px) {
  .surgery-block__btn {
    margin-top: 35px;
    padding-right: 77px;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__btn {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__btn {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .surgery-block__btn-sp {
    margin-top: 10.4302477184vw;
    padding-right: 10.0391134289vw;
    margin-inline: auto;
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__btn-sp {
    margin-top: 21.3333333333vw;
    padding-right: 20.5333333333vw;
    margin-inline: auto;
  }
}

.surgery-block__img {
  width: 48.2vw;
  position: absolute;
  top: 1.8571428571vw;
  right: 0;
  -webkit-box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
}
@media (min-width: 1401px) {
  .surgery-block__img {
    width: 675px;
    top: 26px;
    -webkit-box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .surgery-block__img {
    width: 58.6701434159vw;
    top: 3.1290743155vw;
    -webkit-box-shadow: 2.0860495437vw 2.0860495437vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 2.0860495437vw 2.0860495437vw 4.6936114733vw 0 rgba(0, 0, 0, 0.16);
    z-index: 1;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media screen and (max-width: 550px) {
  .surgery-block__img {
    width: 89.3333333333vw;
    top: 6.4vw;
    -webkit-box-shadow: 4.2666666667vw 4.2666666667vw 9.6vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 4.2666666667vw 4.2666666667vw 9.6vw 0 rgba(0, 0, 0, 0.16);
    z-index: 1;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.timing {
  padding-top: 5.9285714286vw;
  padding-bottom: 5.7142857143vw;
  background: #F7F4F2;
}
@media (min-width: 1401px) {
  .timing {
    padding-top: 83px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .timing {
    padding-top: 5.7366362451vw;
    padding-bottom: 6.6492829205vw;
  }
}
@media screen and (max-width: 550px) {
  .timing {
    padding-top: 11.7333333333vw;
    padding-bottom: 13.6vw;
  }
}

.timing__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media (min-width: 1401px) {
  .timing__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .timing__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .timing__inner {
    width: 100%;
    max-width: none;
    padding-inline: 5.2151238592vw;
  }
}
@media screen and (max-width: 550px) {
  .timing__inner {
    width: 100%;
    max-width: none;
    padding-inline: 5.3333333333vw;
  }
}

.timing__heading {
  text-align: center;
}

.timing__heading-ja {
  margin-top: 0.8571428571vw;
}
@media (min-width: 1401px) {
  .timing__heading-ja {
    margin-top: 12px;
  }
}
@media screen and (max-width: 767px) {
  .timing__heading-ja {
    margin-top: 0.260756193vw;
    line-height: 1.2;
  }
}
@media screen and (max-width: 550px) {
  .timing__heading-ja {
    margin-top: 0.5333333333vw;
    line-height: 1.2;
  }
}

.timing__wrap {
  margin-top: 3.4285714286vw;
  padding: 2.8571428571vw 3.4285714286vw;
  background: #fff;
  width: 71.4285714286vw;
}
@media (min-width: 1401px) {
  .timing__wrap {
    margin-top: 48px;
    padding: 40px 48px;
    width: 1000px;
  }
}
@media screen and (max-width: 1023px) {
  .timing__wrap {
    margin-inline: auto;
    width: 86.0215053763vw;
  }
}
@media screen and (max-width: 767px) {
  .timing__wrap {
    margin-top: 3.1290743155vw;
    padding: 2.0860495437vw 2.6075619296vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .timing__wrap {
    margin-top: 6.4vw;
    padding: 4.2666666667vw 5.3333333333vw;
    width: 100%;
  }
}

.timing__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .timing__text {
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .timing__text {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .timing__text {
    font-size: 1.9556714472vw;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .timing__text {
    font-size: 3.2vw;
    line-height: 1.6;
  }
}

.timing__items {
  margin-top: 2.1428571429vw;
  border: 0.0714285714vw solid #89826A;
}
@media (min-width: 1401px) {
  .timing__items {
    margin-top: 30px;
    border: 1px solid #89826A;
  }
}
@media screen and (max-width: 767px) {
  .timing__items {
    margin-top: 3.1290743155vw;
    border: 1px solid #89826A;
  }
}
@media screen and (max-width: 550px) {
  .timing__items {
    margin-top: 6.4vw;
    border: 1px solid #89826A;
  }
}

.timing__title {
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  color: #89826A;
  font-size: 1.4285714286vw;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  position: relative;
  padding-top: 0.5714285714vw;
  padding-bottom: 0.5714285714vw;
}
@media (min-width: 1401px) {
  .timing__title {
    font-size: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
@media screen and (max-width: 1023px) {
  .timing__title {
    font-size: 1.9550342131vw;
  }
}
@media screen and (max-width: 767px) {
  .timing__title {
    font-size: 2.6075619296vw;
    padding-top: 0.9126466754vw;
    padding-bottom: 0.9126466754vw;
  }
}
@media screen and (max-width: 550px) {
  .timing__title {
    font-size: 3.7333333333vw;
    padding-top: 1.8666666667vw;
    padding-bottom: 1.8666666667vw;
  }
}
.timing__title::before {
  content: "";
  position: absolute;
  width: 7.4285714286vw;
  height: 0.0714285714vw;
  background: #89826A;
  top: 50%;
  left: -8.5714285714vw;
}
@media (min-width: 1401px) {
  .timing__title::before {
    width: 104px;
    height: 1px;
    left: -120px;
  }
}
@media screen and (max-width: 767px) {
  .timing__title::before {
    width: 4.1720990874vw;
    height: 0.1303780965vw;
    left: -6.258148631vw;
    top: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .timing__title::before {
    width: 8.5333333333vw;
    height: 0.2666666667vw;
    left: -12.8vw;
    top: 4.5333333333vw;
  }
}
.timing__title::after {
  content: "";
  position: absolute;
  width: 7.4285714286vw;
  height: 0.0714285714vw;
  background: #89826A;
  top: 50%;
  right: -8.5714285714vw;
}
@media (min-width: 1401px) {
  .timing__title::after {
    width: 104px;
    height: 1px;
    right: -120px;
  }
}
@media screen and (max-width: 767px) {
  .timing__title::after {
    width: 4.1720990874vw;
    height: 0.1303780965vw;
    right: -6.258148631vw;
    top: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .timing__title::after {
    width: 8.5333333333vw;
    height: 0.2666666667vw;
    right: -12.8vw;
    top: 4.5333333333vw;
  }
}

.timing__lists {
  background: #89826A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 1.6428571429vw;
  padding-bottom: 1.7142857143vw;
  padding-left: 2.2142857143vw;
  row-gap: 0.9285714286vw;
}
@media (min-width: 1401px) {
  .timing__lists {
    padding-top: 23px;
    padding-bottom: 24px;
    padding-left: 31px;
    row-gap: 13px;
  }
}
@media screen and (max-width: 767px) {
  .timing__lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 1.6949152542vw;
    padding-bottom: 1.9556714472vw;
    padding-left: 1.5645371578vw;
    row-gap: 1.4341590613vw;
  }
}
@media screen and (max-width: 550px) {
  .timing__lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 3.4666666667vw;
    padding-bottom: 4vw;
    padding-left: 3.2vw;
    row-gap: 2.9333333333vw;
  }
}

.timing__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.1em;
  white-space: nowrap;
  font-size: 1vw;
  margin-right: 1.6428571429vw;
}
@media (min-width: 1401px) {
  .timing__list {
    font-size: 14px;
    margin-right: 23px;
  }
}
@media screen and (max-width: 1023px) {
  .timing__list {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .timing__list {
    font-size: 1.8252933507vw;
    margin-right: 0;
    white-space: wrap;
  }
}
@media screen and (max-width: 550px) {
  .timing__list {
    font-size: 3.2vw;
    margin-right: 0;
    white-space: wrap;
  }
}

.check-box {
  background: url("../img/check-box_img.svg") center/cover no-repeat;
  width: 1.4285714286vw;
  height: 1.4285714286vw;
  margin-right: 0.5714285714vw;
}
@media (min-width: 1401px) {
  .check-box {
    width: 20px;
    height: 20px;
    margin-right: 8px;
  }
}
@media screen and (max-width: 767px) {
  .check-box {
    width: 2.3468057366vw;
    height: 2.3468057366vw;
    margin-right: 8px;
  }
}
@media screen and (max-width: 550px) {
  .check-box {
    width: 4.8vw;
    height: 4.8vw;
    margin-right: 8px;
  }
}

.our-surgery {
  padding-top: 5.7142857143vw;
  padding-bottom: 8vw;
  background: url("../img/our_bg.webp") center/cover no-repeat;
  position: relative;
}
.our-surgery::after {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  opacity: 0.9;
  z-index: -1;
}
@media screen and (min-width: 1401px) {
  .our-surgery {
    padding-top: 80px;
    padding-bottom: 112px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery {
    padding-top: 6.7796610169vw;
    padding-bottom: 7.3011734029vw;
    background: url("../img/our_bg-sp.webp") right top no-repeat;
    background-size: 60%;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery {
    padding-top: 13.8666666667vw;
    padding-bottom: 14.9333333333vw;
    background: url("../img/our_bg-sp.webp") right top no-repeat;
    background-size: 60%;
  }
}

.our-surgery__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .our-surgery__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.our-surgery__heading {
  text-align: center;
}
.our-surgery__heading P {
  color: #fff;
}

.our-surgery__heading-ja {
  color: #fff;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-top: 0.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__heading-ja {
    margin-top: 11px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__heading-ja {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__heading-ja {
    margin-top: 0.5333333333vw;
  }
}
.our-surgery__heading-ja::before {
  position: absolute;
  content: "";
  opacity: 0.5;
  background: #fff;
  width: 20.4285714286vw;
  height: 0.0714285714vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -23.0714285714vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__heading-ja::before {
    width: 286px;
    height: 1px;
    left: -323px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__heading-ja::before {
    width: 6.1277705346vw;
    height: 0.1303780965vw;
    left: -8.6049543677vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__heading-ja::before {
    width: 12.5333333333vw;
    height: 0.2666666667vw;
    left: -17.6vw;
  }
}
.our-surgery__heading-ja::after {
  position: absolute;
  content: "";
  opacity: 0.5;
  background: #fff;
  width: 20.4285714286vw;
  height: 0.0714285714vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -23.0714285714vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__heading-ja::after {
    width: 286px;
    height: 1px;
    right: -323px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__heading-ja::after {
    width: 6.1277705346vw;
    height: 0.1303780965vw;
    right: -8.6049543677vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__heading-ja::after {
    width: 12.5333333333vw;
    height: 0.2666666667vw;
    right: -17.6vw;
  }
}

.our-surgery__wrap {
  margin-top: 6.7857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6.2142857143vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__wrap {
    margin-top: 95px;
    gap: 87px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__wrap {
    margin-top: 8.3441981747vw;
    gap: 8.7353324641vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__wrap {
    margin-top: 17.0666666667vw;
    gap: 17.8666666667vw;
  }
}

.our-surgery__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 5.6428571429vw;
}
.our-surgery__items--03 {
  margin-top: 1.5vw;
}
.our-surgery__items--04 {
  margin-top: 1.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__items {
    gap: 79px;
    position: relative;
    margin-left: auto;
    margin-right: 0;
  }
  .our-surgery__items--03 {
    margin-top: 21px;
  }
  .our-surgery__items--04 {
    margin-top: 18px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.8683181226vw;
    position: relative;
  }
  .our-surgery__items--03 {
    margin-top: 0;
  }
  .our-surgery__items--04 {
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.8666666667vw;
    position: relative;
  }
  .our-surgery__items--03 {
    margin-top: 0;
  }
  .our-surgery__items--04 {
    margin-top: 0;
  }
}

.our-surgery__img {
  width: 45.5vw;
  height: 27.4285714286vw;
  margin-left: calc(50% - 50vw);
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0vw rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0vw rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1401px) {
  .our-surgery__img {
    position: absolute;
    top: 0;
    right: 50%;
    -webkit-transform: translateX(-323px);
            transform: translateX(-323px);
    width: 637px;
    height: 384px;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__img {
    width: 59.9739243807vw;
    height: auto;
    overflow: hidden;
    -webkit-box-shadow: 1.1494132986vw 1.1494132986vw 2.5863102999vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.1494132986vw 1.1494132986vw 2.5863102999vw rgba(0, 0, 0, 0.16);
  }
  .our-surgery__img img {
    width: 100%;
    height: auto;
    display: block;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__img {
    width: 93.8666666667vw;
    height: 47.4666666667vw;
    overflow: hidden;
    -webkit-box-shadow: 2.3509333333vw 2.3509333333vw 5.2898666667vw rgba(0, 0, 0, 0.16);
            box-shadow: 2.3509333333vw 2.3509333333vw 5.2898666667vw rgba(0, 0, 0, 0.16);
  }
  .our-surgery__img img {
    width: 100%;
    height: auto;
    display: block;
  }
}

.our-surgery__items:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (min-width: 1401px) {
  .our-surgery__items:nth-of-type(even) {
    position: relative;
    margin-left: 0;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.our-surgery__items:nth-of-type(even) .our-surgery__img {
  margin-left: 0;
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 1401px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__img {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(323px);
            transform: translateX(323px);
    width: 636px;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__img {
    display: block;
    width: 59.9739243807vw;
    height: auto;
    margin-right: calc(50% - 50vw);
    margin-left: auto;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__img {
    display: block;
    width: 93.8666666667vw;
    margin-right: calc(50% - 50vw);
    margin-left: auto;
  }
}

.our-surgery__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.our-surgery__block--02 {
  margin-top: -0.3571428571vw;
}
.our-surgery__block--03 {
  margin-top: -1.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__block--02 {
    margin-top: -5px;
  }
  .our-surgery__block--03 {
    margin-top: -25px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__block--02 {
    margin-top: 0;
  }
  .our-surgery__block--03 {
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__block--02 {
    margin-top: 0;
  }
  .our-surgery__block--03 {
    margin-top: 0;
  }
}

.our-surgery__box {
  margin-top: -0.3571428571vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__box {
    margin-top: -5px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__box {
    position: absolute;
    top: -6.258148631vw;
    left: -2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__box {
    position: absolute;
    top: -12.8vw;
    left: -5.3333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__box {
    left: auto;
    right: -2.6075619296vw;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__box {
    left: auto;
    right: -5.3333333333vw;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.our-surgery__number {
  color: #fff;
  font-family: "EB Garamond", serif;
  font-size: 4vw;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 1401px) {
  .our-surgery__number {
    font-size: 56px;
  }
}
@media screen and (max-width: 1023px) {
  .our-surgery__number {
    font-size: 4.4965786901vw;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__number {
    font-size: 5.2151238592vw;
    margin-left: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__number {
    font-size: 10.6666666667vw;
    margin-left: 5.3333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__number {
    margin-left: auto;
    margin-right: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__number {
    margin-left: auto;
    margin-right: 5.3333333333vw;
  }
}

.our-surgery__title {
  margin-top: -0.5714285714vw;
  background: #fff;
  padding-inline: 0.5714285714vw;
  color: #F58300;
  font-size: 2vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 1401px) {
  .our-surgery__title {
    font-size: 28px;
    margin-top: -8px;
  }
}
@media screen and (max-width: 1023px) {
  .our-surgery__title {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__title {
    padding: 0 1.0430247718vw 0 2.6075619296vw;
    font-size: 3.1290743155vw;
    margin-top: -0.6518904824vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__title {
    padding: 0 2.1333333333vw 0 5.3333333333vw;
    font-size: 5.3333333333vw;
    margin-top: -1.3333333333vw;
  }
}
.our-surgery__title--02 {
  margin-top: 0.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__title--02 {
    margin-top: 8px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__title--02 {
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__title--02 {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__title {
    padding: 0 2.6075619296vw 0 1.0430247718vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__title {
    padding: 0 5.3333333333vw 0 2.1333333333vw;
  }
}

.our-surgery__title span {
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 400;
}

.our-surgery__text {
  margin-top: 1.1428571429vw;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  width: 34.5vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__text {
    margin-top: 16px;
    font-size: 16px;
    width: 483px;
  }
}
@media screen and (max-width: 1023px) {
  .our-surgery__text {
    font-size: 1.4662756598vw;
    width: 45.3567937439vw;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__text {
    margin-top: 0;
    font-size: 1.9556714472vw;
    width: 100%;
    padding-inline: 0.5215123859vw;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__text {
    margin-top: 0;
    font-size: 3.2vw;
    width: 100%;
    padding-inline: 1.0666666667vw;
  }
}
.our-surgery__text--02 {
  margin-top: 2.2142857143vw;
  width: 34.6428571429vw;
}
@media screen and (min-width: 1401px) {
  .our-surgery__text--02 {
    margin-top: 31px;
    width: 485px;
  }
}
@media screen and (max-width: 767px) {
  .our-surgery__text--02 {
    margin-top: 0;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__text--02 {
    margin-top: 0;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__text {
    padding-left: 3.7333333333vw;
    padding-right: 0;
  }
}
@media screen and (max-width: 550px) {
  .our-surgery__items:nth-of-type(even) .our-surgery__text {
    padding-left: 1.8252933507vw;
    padding-right: 0;
  }
}

.our-surgery__text span {
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 400;
}

.difference {
  padding-top: 5.7142857143vw;
  padding-bottom: 14.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .difference {
    padding-top: 80px;
    padding-bottom: 200px;
  }
}
@media screen and (max-width: 767px) {
  .difference {
    padding-top: 5.9973924381vw;
    padding-bottom: 6.258148631vw;
  }
}
@media screen and (max-width: 550px) {
  .difference {
    padding-top: 12.2666666667vw;
    padding-bottom: 12.8vw;
  }
}

.difference__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .difference__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .difference__inner {
    width: 100%;
    padding-inline: 2.6075619296vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .difference__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.difference__heading {
  margin-left: 3px;
  font-size: 2.7370478983vw;
}

.difference__heading-ja {
  position: relative;
  padding-bottom: 2.5vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.7857142857vw;
}
@media screen and (min-width: 1401px) {
  .difference__heading-ja {
    padding-bottom: 35px;
    margin-top: 11px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__heading-ja {
    padding-bottom: 2.9325513196vw;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .difference__heading-ja {
    padding-bottom: 2.6075619296vw;
    margin-top: 0;
    line-height: 1.2;
  }
}
@media screen and (max-width: 550px) {
  .difference__heading-ja {
    padding-bottom: 5.3333333333vw;
    margin-top: 0;
    line-height: 1.2;
  }
}
.difference__heading-ja::after {
  content: "";
  position: absolute;
  width: 78.8571428571vw;
  height: 0.0714285714vw;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  bottom: 0;
  right: -2.0714285714vw;
}
@media screen and (min-width: 1401px) {
  .difference__heading-ja::after {
    width: 78.8571428571vw;
  }
}
@media screen and (max-width: 1023px) {
  .difference__heading-ja::after {
    width: 107.917888563vw;
  }
}
@media screen and (max-width: 767px) {
  .difference__heading-ja::after {
    width: 104.3024771838vw;
    height: 0.1303780965vw;
    right: -7.8226857888vw;
  }
}
@media screen and (max-width: 550px) {
  .difference__heading-ja::after {
    width: 89.3333333333vw;
    height: 0.2666666667vw;
    right: -5.8666666667vw;
  }
}

.difference__description {
  margin-top: 3.4285714286vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.1em;
  width: 71.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .difference__description {
    margin-top: 48px;
    font-size: 16px;
    width: 1002px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__description {
    width: 87.9765395894vw;
    margin-inline: auto;
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .difference__description {
    margin-top: 3.1290743155vw;
    font-size: 1.9556714472vw;
    width: 100%;
    padding-inline: 0.5215123859vw;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .difference__description {
    margin-top: 6.4vw;
    font-size: 3.2vw;
    width: 100%;
    padding-inline: 1.0666666667vw;
    line-height: 1.6;
  }
}

.difference__wrap {
  margin-top: 3.1428571429vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 2.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .difference__wrap {
    margin-top: 44px;
    gap: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__wrap {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 4.3010752688vw;
  }
}
@media screen and (max-width: 767px) {
  .difference__wrap {
    margin-top: 4.9543676662vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .difference__wrap {
    margin-top: 9.3333333333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 6.1333333333vw;
  }
}

.difference__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 767px) {
  .difference__box {
    margin-inline: auto;
  }
}

.difference__title {
  background: #89826A;
  padding: 0.2857142857vw 1.1428571429vw;
  color: #fff;
  font-size: 1.1428571429vw;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: -1.1428571429vw;
  z-index: 2;
}
@media screen and (min-width: 1401px) {
  .difference__title {
    padding: 4px 16px;
    font-size: 16px;
    margin-bottom: -16px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__title {
    font-size: 1.5640273705vw;
  }
}
@media screen and (max-width: 767px) {
  .difference__title {
    padding: 0.260756193vw 1.4341590613vw;
    font-size: 2.0860495437vw;
    margin-bottom: -1.3037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .difference__title {
    padding: 0.5333333333vw 2.9333333333vw;
    font-size: 3.2vw;
    margin-bottom: -2.6666666667vw;
  }
}

.difference__img {
  background: #D9D9D9;
  -webkit-box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
  width: 34.2857142857vw;
  height: 22.8571428571vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.difference__img P {
  border: 0.0714285714vw solid #000;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.7857142857vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #000;
  font-size: 1.2857142857vw;
  font-weight: 400;
}
@media screen and (min-width: 1401px) {
  .difference__img {
    -webkit-box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
    width: 480px;
    height: 320px;
  }
  .difference__img P {
    border: 1px solid #000;
    padding: 11px;
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  .difference__img {
    -webkit-box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
    width: 43.5462842243vw;
    height: 29.074315515vw;
  }
  .difference__img p {
    border: 0.1303780965vw solid #000;
    padding: 0.6518904824vw;
    font-size: 1.5645371578vw;
  }
}
@media screen and (max-width: 550px) {
  .difference__img {
    -webkit-box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
    width: 89.0666666667vw;
    height: 59.4666666667vw;
  }
  .difference__img p {
    border: 0.2666666667vw solid #000;
    padding: 1.3333333333vw;
    font-size: 3.2vw;
  }
}

.difference__block {
  margin-top: 4.5vw;
  margin-inline: auto;
  position: relative;
}
.difference__block::after {
  content: "";
  position: absolute;
  margin-inline: auto;
  background: #F7F4F2;
  width: 82.8571428571vw;
  height: 42.7857142857vw;
  z-index: -1;
  top: -12.2857142857vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 1401px) {
  .difference__block {
    margin-top: 63px;
  }
  .difference__block::after {
    width: 1160px;
    height: 599px;
    top: -172px;
  }
}
@media screen and (max-width: 1023px) {
  .difference__block::after {
    width: 87.9765395894vw;
    top: -16.8132942326vw;
    height: 54.7409579668vw;
  }
}
@media screen and (max-width: 767px) {
  .difference__block {
    margin-top: 8.3441981747vw;
  }
  .difference__block::after {
    width: 100vw;
    height: 156.4537157757vw;
    top: -52.1512385919vw;
  }
}
@media screen and (max-width: 550px) {
  .difference__block {
    margin-top: 12.8vw;
  }
  .difference__block::after {
    width: 100vw;
    height: 273.3333333333vw;
    top: -112vw;
  }
}

.difference-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 2.6428571429vw;
}
@media screen and (min-width: 1401px) {
  .difference-block {
    gap: 37px;
  }
}
@media screen and (max-width: 1023px) {
  .difference-block {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .difference-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.7809647979vw;
  }
}
@media screen and (max-width: 550px) {
  .difference-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 7.7333333333vw;
  }
}

.difference-block__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.difference-block__title {
  background: url("../img/difference-block__title.webp") center/cover no-repeat;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  font-size: 1.1428571429vw;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  padding: 0.2857142857vw 4.0714285714vw 0.2857142857vw 1.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .difference-block__title {
    font-size: 16px;
    padding: 4px 57px 4px 16px;
  }
}
@media screen and (max-width: 1023px) {
  .difference-block__title {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .difference-block__title {
    font-size: 2.0860495437vw;
    padding: 0.5215123859vw 7.4315514993vw 0.5215123859vw 2.0860495437vw;
    margin-left: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .difference-block__title {
    font-size: 4.2666666667vw;
    padding: 1.0666666667vw 15.2vw 1.0666666667vw 4.2666666667vw;
    margin-left: 0.8vw;
  }
}

.difference-block__text {
  margin-top: 1.7142857143vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  width: 34.5vw;
}
@media screen and (min-width: 1401px) {
  .difference-block__text {
    margin-top: 24px;
    font-size: 16px;
    width: 483px;
  }
}
@media screen and (max-width: 1023px) {
  .difference-block__text {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .difference-block__text {
    margin-top: 2.6075619296vw;
    font-size: 1.9556714472vw;
    width: 100%;
    padding-left: 0.5215123859vw;
    padding-right: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .difference-block__text {
    margin-top: 5.3333333333vw;
    font-size: 3.2vw;
    width: 100%;
    padding-left: 1.0666666667vw;
    padding-right: 0.8vw;
  }
}

.difference-block__btn {
  margin-top: 2.5vw;
  padding: 1.0714285714vw 5.5vw 1.0714285714vw 2.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .difference-block__btn {
    margin-top: 35px;
    padding: 15px 77px 15px 40px;
  }
}
@media screen and (max-width: 767px) {
  .difference-block__btn {
    margin-inline: auto;
    margin-top: 4.9543676662vw;
    padding: 2.0860495437vw 7.4315514993vw 2.0860495437vw 3.520208605vw;
  }
}
@media screen and (max-width: 550px) {
  .difference-block__btn {
    margin-top: 10.1333333333vw;
    padding: 4.2666666667vw 15.2vw 4.2666666667vw 7.2vw;
  }
}

.difference-block__img {
  margin-top: 0.7142857143vw;
  width: 34.2857142857vw;
  height: 22.8571428571vw;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1401px) {
  .difference-block__img {
    margin-top: 10px;
    width: 480px;
    height: 320px;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 767px) {
  .difference-block__img {
    margin-top: 0;
    width: 52.1512385919vw;
    height: auto;
    margin-inline: auto;
    -webkit-box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 550px) {
  .difference-block__img {
    margin-top: 0;
    width: 100%;
    height: 57.8666666667vw;
    -webkit-box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
  }
}

.lenses {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
  background: #F7F4F2;
  position: relative;
}
.lenses::after {
  content: "";
  position: absolute;
  bottom: -1.8571428571vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 3.2142857143vw solid transparent;
  border-right: 3.2142857143vw solid transparent;
  border-top: 2.6428571429vw solid #F7F4F2;
}
@media screen and (min-width: 1401px) {
  .lenses {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .lenses::after {
    bottom: -26px;
    border-left: 45px solid transparent;
    border-right: 45px solid transparent;
    border-top: 37px solid #F7F4F2;
  }
}
@media screen and (max-width: 767px) {
  .lenses {
    background: #fff;
    padding-top: 5.7366362451vw;
    padding-bottom: 6.258148631vw;
  }
  .lenses::after {
    bottom: -2.3468057366vw;
    border-left: 5.4758800522vw solid transparent;
    border-right: 5.4758800522vw solid transparent;
    border-top: 4.4328552803vw solid #fff;
    z-index: 3;
  }
}
@media screen and (max-width: 550px) {
  .lenses {
    background: #fff;
    padding-top: 11.7333333333vw;
    padding-bottom: 12.8vw;
  }
  .lenses::after {
    bottom: -4.8vw;
    border-left: 11.2vw solid transparent;
    border-right: 11.2vw solid transparent;
    border-top: 9.0666666667vw solid #fff;
    z-index: 3;
  }
}

.lenses__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .lenses__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .lenses__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .lenses__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .lenses__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.lenses__heading {
  text-align: center;
}

.lenses__heading-ja {
  margin-top: 0.9285714286vw;
}
@media screen and (min-width: 1401px) {
  .lenses__heading-ja {
    margin-top: 13px;
  }
}
@media screen and (max-width: 767px) {
  .lenses__heading-ja {
    margin-top: 0;
    line-height: 1.2;
  }
}
@media screen and (max-width: 550px) {
  .lenses__heading-ja {
    margin-top: 0;
    line-height: 1.2;
  }
}

.lenses__table {
  margin-top: 4.0714285714vw;
}
@media screen and (min-width: 1401px) {
  .lenses__table {
    margin-top: 57px;
  }
}
@media screen and (max-width: 767px) {
  .lenses__table {
    margin-top: 5.2151238592vw;
  }
}
@media screen and (max-width: 550px) {
  .lenses__table {
    margin-top: 10.6666666667vw;
  }
}

.lenses__table + .lenses__table {
  margin-top: 3.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .lenses__table + .lenses__table {
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .lenses__table + .lenses__table {
    margin-top: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .lenses__table + .lenses__table {
    margin-top: 8.5333333333vw;
  }
}

.lenses-table__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2857142857vw;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 0.8571428571vw;
  border-left: 0.2857142857vw solid #ED7F00;
}
@media screen and (min-width: 1401px) {
  .lenses-table__title {
    font-size: 18px;
    padding-left: 12px;
    border-left: 4px solid #ED7F00;
  }
}
@media screen and (max-width: 1023px) {
  .lenses-table__title {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .lenses-table__title {
    font-size: 2.6075619296vw;
    padding-left: 1.5645371578vw;
    border-left: 0.5215123859vw solid #ED7F00;
  }
}
@media screen and (max-width: 550px) {
  .lenses-table__title {
    font-size: 3.7333333333vw;
    padding-left: 3.2vw;
    border-left: 1.0666666667vw solid #ED7F00;
  }
}

.table-wrap {
  margin-top: 1.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .table-wrap {
    margin-top: 24px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap {
    margin-top: 4.2666666667vw;
    width: 100%;
    margin-inline: auto;
    padding-bottom: 4vw;
    overflow-x: auto;
  }
  .table-wrap::-webkit-scrollbar {
    height: 0.8vw;
  }
  .table-wrap::-webkit-scrollbar-track {
    background-color: #F5F5F5;
  }
  .table-wrap::-webkit-scrollbar-thumb {
    border-radius: 2.1333333333vw;
    background: linear-gradient(153deg, #09B 0%, #0564B5 100%);
  }
}
@media screen and (max-width: 767px) {
  .table-wrap {
    margin-top: 2.0860495437vw;
    width: 100%;
    margin-inline: auto;
    padding-bottom: 1.9556714472vw;
    overflow-x: auto;
  }
  .table-wrap::-webkit-scrollbar {
    height: 0.3911342894vw;
  }
  .table-wrap::-webkit-scrollbar-track {
    background-color: #F5F5F5;
  }
  .table-wrap::-webkit-scrollbar-thumb {
    border-radius: 1.0430247718vw;
    background: linear-gradient(153deg, #09B 0%, #0564B5 100%);
  }
}
@media screen and (max-width: 550px) {
  .table-wrap {
    margin-top: 4.2666666667vw;
    width: 100%;
    margin-inline: auto;
    padding-bottom: 4vw;
    overflow-x: auto;
  }
  .table-wrap::-webkit-scrollbar {
    height: 0.8vw;
  }
  .table-wrap::-webkit-scrollbar-track {
    background-color: #F5F5F5;
  }
  .table-wrap::-webkit-scrollbar-thumb {
    border-radius: 2.1333333333vw;
    background: linear-gradient(153deg, #09B 0%, #0564B5 100%);
  }
}
.table-wrap .lens-table {
  border-collapse: collapse;
  table-layout: fixed;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.0714285714vw;
  text-align: center;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table {
    font-size: 15px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table {
    width: 1000px;
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table {
    font-size: 1.5645371578vw;
    width: 104.3024771838vw;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table {
    font-size: 2.4138666667vw;
    width: 160.8vw;
  }
}
.table-wrap .lens-table th,
.table-wrap .lens-table td {
  border: 0.0714285714vw solid #0564B5;
  padding: 0.5vw 0.3571428571vw;
  vertical-align: middle;
  word-break: break-word;
  width: 8.7142857143vw;
  table-layout: fixed;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table th,
  .table-wrap .lens-table td {
    border: 1px solid #0564B5;
    padding: 7px 8px;
    width: 122px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table th,
  .table-wrap .lens-table td {
    border: 1px solid #0564B5;
    padding: 7px 8px;
    width: 122px;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table th,
  .table-wrap .lens-table td {
    border: 1px solid #0564B5;
    padding: 0.5215123859vw 0;
    width: 9.5827900913vw;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table th,
  .table-wrap .lens-table td {
    border: 1px solid #0564B5;
    padding: 1.0666666667vw 0;
    width: 19.6vw;
  }
}
.table-wrap .lens-table th {
  background: #0564B5;
  color: #fff;
  font-weight: 700;
  border-right: 0.0714285714vw solid #fff;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table th {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table th {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table th {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table th {
    border-right: 1px solid #fff;
  }
}
.table-wrap .lens-table th:nth-child(8) {
  border-right: 0.0714285714vw solid #0564B5;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table th:nth-child(8) {
    border-right: 1px solid #0564B5;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table th:nth-child(8) {
    border-right: 1px solid #0564B5;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table th:nth-child(8) {
    border-right: 1px solid #0564B5;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table th:nth-child(8) {
    border-right: 1px solid #0564B5;
  }
}
.table-wrap .lens-table td {
  font-weight: 500;
  font-size: 1vw;
  padding: 0.8571428571vw 0.0714285714vw;
  letter-spacing: 0.06em;
  height: 8.5714285714vw;
  background: #fff;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table td {
    font-size: 14px;
    padding: 12px 1px;
    height: 120px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table td {
    font-size: 14px;
    padding: 12px 1px;
    height: 120px;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table td {
    font-size: 1.5645371578vw;
    padding: 0.7822685789vw 0.1303780965vw;
    height: 9.517601043vw;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table td {
    font-size: 2.2666666667vw;
    padding: 1.6vw 0.2666666667vw;
    height: 19.4666666667vw;
  }
}
.table-wrap .lens-table td img {
  width: 6.4285714286vw;
  height: 6.4285714286vw;
  aspect-ratio: 1/1;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table td img {
    width: 90px;
    height: 90px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table td img {
    width: 90px;
    height: 90px;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table td img {
    width: 7.0808344198vw;
    height: 7.0808344198vw;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table td img {
    width: 14.4826666667vw;
    height: 14.4826666667vw;
  }
}
.table-wrap .lens-table tbody tr:nth-child(even) td {
  background: #e8f4ff;
}
.table-wrap .lens-table tbody td:nth-child(2) {
  color: #0564B5;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-align: left;
  padding: 0.6428571429vw 0.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table tbody td:nth-child(2) {
    padding: 9px 8px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table tbody td:nth-child(2) {
    padding: 9px 8px;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table tbody td:nth-child(2) {
    padding: 0.7822685789vw 0.5215123859vw 0.7822685789vw 0.6518904824vw;
    letter-spacing: 0.049em;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table tbody td:nth-child(2) {
    padding: 1.6vw 1.0666666667vw 1.6vw 1.3333333333vw;
    letter-spacing: 0.049em;
  }
}
.table-wrap .lens-table tbody td:nth-child(8) {
  text-align: left;
  padding: 0vw 0.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .table-wrap .lens-table tbody td:nth-child(8) {
    padding: 0 8px;
  }
}
@media screen and (max-width: 1023px) {
  .table-wrap .lens-table tbody td:nth-child(8) {
    padding: 0 8px;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .lens-table tbody td:nth-child(8) {
    padding: 0 0.5215123859vw;
  }
}
@media screen and (max-width: 550px) {
  .table-wrap .lens-table tbody td:nth-child(8) {
    padding: 0 1.0666666667vw;
  }
}

.lens-table th:nth-child(2),
.lens-table td:nth-child(2) {
  width: 12.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .lens-table th:nth-child(2),
  .lens-table td:nth-child(2) {
    width: 176px;
  }
}
@media screen and (max-width: 1023px) {
  .lens-table th:nth-child(2),
  .lens-table td:nth-child(2) {
    width: 176px;
  }
}
@media screen and (max-width: 767px) {
  .lens-table th:nth-child(2),
  .lens-table td:nth-child(2) {
    width: 13.2985658409vw;
  }
}
@media screen and (max-width: 550px) {
  .lens-table th:nth-child(2),
  .lens-table td:nth-child(2) {
    width: 27.2vw;
  }
}
.lens-table th:nth-child(7),
.lens-table td:nth-child(7) {
  width: 6.6428571429vw;
}
@media screen and (min-width: 1401px) {
  .lens-table th:nth-child(7),
  .lens-table td:nth-child(7) {
    width: 93px;
  }
}
@media screen and (max-width: 1023px) {
  .lens-table th:nth-child(7),
  .lens-table td:nth-child(7) {
    width: 93px;
  }
}
@media screen and (max-width: 767px) {
  .lens-table th:nth-child(7),
  .lens-table td:nth-child(7) {
    width: 7.3011734029vw;
  }
}
@media screen and (max-width: 550px) {
  .lens-table th:nth-child(7),
  .lens-table td:nth-child(7) {
    width: 14.9333333333vw;
  }
}

.cost {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.8571428571vw;
  background: url("../img/cost_bg.webp") center/cover no-repeat;
  position: relative;
}
.cost::before {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#0099BB), to(#0564B5));
  background: linear-gradient(180deg, #0099BB 0%, #0564B5 100%);
  opacity: 1;
  z-index: -1;
}
@media screen and (min-width: 1401px) {
  .cost {
    padding-top: 80px;
    padding-bottom: 82px;
  }
}
@media screen and (max-width: 767px) {
  .cost {
    padding-top: 6.6492829205vw;
    padding-bottom: 7.3011734029vw;
  }
}
@media screen and (max-width: 550px) {
  .cost {
    padding-top: 13.6vw;
    padding-bottom: 14.9333333333vw;
  }
}

.cost__triangle {
  content: "";
  position: absolute;
  bottom: -1.8571428571vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 3.2142857143vw solid transparent;
  border-right: 3.2142857143vw solid transparent;
  border-top: 2.6428571429vw solid #0564B5;
  z-index: -3;
}
@media screen and (min-width: 1401px) {
  .cost__triangle {
    bottom: -26px;
    border-left: 45px solid transparent;
    border-right: 45px solid transparent;
    border-top: 37px solid #0564B5;
  }
}
@media screen and (max-width: 767px) {
  .cost__triangle {
    bottom: -2.3468057366vw;
    border-left: 5.4758800522vw solid transparent;
    border-right: 5.4758800522vw solid transparent;
    border-top: 4.4328552803vw solid #0564B5;
  }
}
@media screen and (max-width: 550px) {
  .cost__triangle {
    bottom: -4.8vw;
    border-left: 11.2vw solid transparent;
    border-right: 11.2vw solid transparent;
    border-top: 9.0666666667vw solid #0564B5;
  }
}

.cost__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .cost__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .cost__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .cost__inner {
    width: 100%;
    padding-inline: 2.6075619296vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .cost__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.cost__heading {
  text-align: center;
}
.cost__heading P {
  color: #fff;
}

.cost__heading-ja {
  color: #fff;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-top: 0.7857142857vw;
}
.cost__heading-ja::before {
  position: absolute;
  content: "";
  opacity: 0.5;
  background: #fff;
  width: 26.4285714286vw;
  height: 0.0714285714vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -29.2857142857vw;
}
.cost__heading-ja::after {
  position: absolute;
  content: "";
  opacity: 0.5;
  background: #fff;
  width: 26.4285714286vw;
  height: 0.0714285714vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -29.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .cost__heading-ja {
    margin-top: 11px;
  }
  .cost__heading-ja::before {
    width: 370px;
    height: 1px;
    left: -410px;
  }
  .cost__heading-ja::after {
    width: 370px;
    height: 1px;
    right: -410px;
  }
}
@media screen and (max-width: 767px) {
  .cost__heading-ja {
    margin-top: 0.260756193vw;
  }
  .cost__heading-ja::before {
    width: 13.037809648vw;
    height: 0.1303780965vw;
    left: -15.2542372881vw;
  }
  .cost__heading-ja::after {
    width: 13.037809648vw;
    height: 0.1303780965vw;
    right: -15.2542372881vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__heading-ja {
    margin-top: 0.5333333333vw;
  }
  .cost__heading-ja::before {
    width: 26.6666666667vw;
    height: 0.2666666667vw;
    left: -31.2vw;
  }
  .cost__heading-ja::after {
    width: 26.6666666667vw;
    height: 0.2666666667vw;
    right: -31.2vw;
  }
}

.cost__wrap {
  margin-top: 3.3571428571vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1401px) {
  .cost__wrap {
    margin-top: 47px;
  }
}
@media screen and (max-width: 767px) {
  .cost__wrap {
    margin-top: 7.2vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__wrap {
    margin-top: 7.2vw;
  }
}

.cost__block {
  background: #fff;
  padding: 2.8571428571vw 3.4285714286vw 2.7142857143vw 3.4285714286vw;
  max-width: 71.4285714286vw;
  width: 100%;
}
@media screen and (min-width: 1401px) {
  .cost__block {
    padding: 40px 48px 38px 48px;
    max-width: 1000px;
  }
}
@media screen and (max-width: 1023px) {
  .cost__block {
    max-width: 820px;
  }
}
@media screen and (max-width: 767px) {
  .cost__block {
    max-width: none;
    padding: 2.0860495437vw;
  }
  .cost__block:last-child {
    padding-bottom: 3.259452412vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__block {
    max-width: none;
    padding: 4.2666666667vw;
  }
  .cost__block:last-child {
    padding-bottom: 6.6666666667vw;
  }
}

.cost__block + .cost__block {
  margin-top: 2.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .cost__block + .cost__block {
    margin-top: 32px;
  }
}
@media screen and (max-width: 767px) {
  .cost__block + .cost__block {
    margin-top: 2.998696219vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__block + .cost__block {
    margin-top: 6.1333333333vw;
  }
}

.cost__title {
  font-size: 2vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-left: 1.4285714286vw;
  border-left: 0.2857142857vw solid #7A6500;
  position: relative;
}
.cost__title span {
  letter-spacing: -0.16em;
}
.cost__title::after {
  content: "";
  position: absolute;
  height: 0.0714285714vw;
  width: 64.5714285714vw;
  background: linear-gradient(92deg, #7A6500 0%, #C3A419 100%);
  bottom: -1.8571428571vw;
  left: -0.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .cost__title {
    font-size: 28px;
    padding-left: 20px;
    border-left: 4px solid #7A6500;
  }
  .cost__title::after {
    height: 1px;
    width: 904px;
    bottom: -26px;
    left: -4px;
  }
}
@media screen and (max-width: 1023px) {
  .cost__title {
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .cost__title {
    font-size: 2.8683181226vw;
    padding-left: 1.0430247718vw;
    border-left: 0.5215123859vw solid #7A6500;
  }
  .cost__title::after {
    height: 0.1303780965vw;
    width: 39.5045632334vw;
    bottom: -2.0860495437vw;
    left: -0.5215123859vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__title {
    font-size: 4.8vw;
    padding-left: 2.1333333333vw;
    border-left: 1.0666666667vw solid #7A6500;
  }
  .cost__title::after {
    height: 0.2666666667vw;
    width: 80.8vw;
    bottom: -4.2666666667vw;
    left: -1.0666666667vw;
  }
}

.cost__text {
  margin-top: 3vw;
  color: #0564B5;
  font-size: 1.4285714286vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .cost__text {
    margin-top: 42px;
    font-size: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .cost__text {
    font-size: 1.9550342131vw;
  }
}
@media screen and (max-width: 767px) {
  .cost__text {
    margin-top: 3.9113428944vw;
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__text {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
}

.cost__text--02 {
  margin-left: -0.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .cost__text--02 {
    margin-left: -8px;
  }
}
@media screen and (max-width: 767px) {
  .cost__text--02 {
    margin-left: -0.6518904824vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__text--02 {
    margin-left: -1.3333333333vw;
  }
}

.cost__text--03 {
  margin-left: -1.4285714286vw;
}
@media screen and (min-width: 1401px) {
  .cost__text--03 {
    margin-left: -20px;
  }
}
@media screen and (max-width: 767px) {
  .cost__text--03 {
    margin-left: -1.9556714472vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__text--03 {
    margin-left: -4vw;
  }
}

.cost-table {
  margin-top: 1.5714285714vw;
  width: 100%;
  border-collapse: collapse;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2857142857vw;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 700;
}
.cost-table th,
.cost-table td {
  border: 0.0714285714vw solid #89826A;
  padding: 0.8571428571vw 1.5714285714vw;
  color: #89826A;
}
.cost-table th {
  background: #89826A;
  color: #fff;
  text-align: left;
  white-space: nowrap;
  font-weight: 700;
  border-bottom: 0.0714285714vw solid #fff;
  width: 24.2857142857vw;
}
.cost-table tbody tr:last-child th {
  border-bottom: 0.0714285714vw solid #89826A;
}
.cost-table td {
  background: #fff;
}
.cost-table--02 th,
.cost-table--02 td {
  height: 4.4285714286vw;
  vertical-align: middle;
  padding: 0.6857142857vw 1.5vw 0.7142857143vw 1.7142857143vw;
  line-height: 1.4;
}
.cost-table--02 th span,
.cost-table--02 td span {
  margin-left: -0.4285714286vw;
}
.cost-table--02 th {
  font-size: 1.0714285714vw;
}
.cost-table--02 td {
  font-size: 1.2857142857vw;
  padding-left: 1.6428571429vw;
}
@media screen and (min-width: 1401px) {
  .cost-table {
    margin-top: 22px;
    font-size: 18px;
  }
  .cost-table th,
  .cost-table td {
    border: 1px solid #89826A;
    padding: 12px 22px;
  }
  .cost-table th {
    border-bottom: 1px solid #fff;
    width: 340px;
  }
  .cost-table tbody tr:last-child th {
    border-bottom: 1px solid #89826A;
  }
  .cost-table--02 th,
  .cost-table--02 td {
    height: 62px;
    padding: 9.6px 21px 10px 24px;
  }
  .cost-table--02 th span,
  .cost-table--02 td span {
    margin-left: -6px;
  }
  .cost-table--02 th {
    font-size: 15px;
  }
  .cost-table--02 td {
    font-size: 18px;
    padding-left: 23px;
  }
}
@media screen and (max-width: 1023px) {
  .cost-table {
    margin-top: 22px;
    font-size: 16px;
  }
  .cost-table th,
  .cost-table td {
    border: 1px solid #89826A;
    padding: 12px 22px;
  }
  .cost-table th {
    border-bottom: 1px solid #fff;
    width: 332px;
  }
  .cost-table tbody tr:last-child th {
    border-bottom: 1px solid #89826A;
  }
  .cost-table--02 th,
  .cost-table--02 td {
    height: 62px;
    padding: 9.6px 21px 10px 24px;
  }
  .cost-table--02 th span,
  .cost-table--02 td span {
    margin-left: -6px;
  }
  .cost-table--02 th {
    font-size: 15px;
  }
  .cost-table--02 td {
    font-size: 16px;
    padding-left: 23px;
  }
}
@media screen and (max-width: 767px) {
  .cost-table {
    margin-top: 1.9556714472vw;
    font-size: 1.9556714472vw;
  }
  .cost-table th,
  .cost-table td {
    border: 0.1303780965vw solid #89826A;
  }
  .cost-table th {
    border-bottom: 0.1303780965vw solid #fff;
    width: 32.5945241199vw;
    padding: 1.9556714472vw 0 2.0860495437vw 1.1734028683vw;
  }
  .cost-table tbody tr:last-child th {
    border-bottom: 0.1303780965vw solid #89826A;
  }
  .cost-table td {
    padding: 1.9556714472vw 0 2.0860495437vw 1.9556714472vw;
  }
  .cost-table--02 th,
  .cost-table--02 td {
    height: 6.1277705346vw;
    padding: 0.9126466754vw 0.1303780965vw 0.9126466754vw 1.0430247718vw;
    line-height: 1.2;
  }
  .cost-table--02 th span,
  .cost-table--02 td span {
    margin-left: -1.1734028683vw;
  }
  .cost-table--02 th {
    font-size: 1.8252933507vw;
  }
  .cost-table--02 td {
    font-size: 1.9556714472vw;
    padding-left: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .cost-table {
    margin-top: 4vw;
    font-size: 3.2vw;
  }
  .cost-table th,
  .cost-table td {
    border: 0.2666666667vw solid #89826A;
  }
  .cost-table th {
    border-bottom: 0.2666666667vw solid #fff;
    width: 37.6vw;
    padding: 4vw 0 4.2666666667vw 2.4vw;
  }
  .cost-table tbody tr:last-child th {
    border-bottom: 0.2666666667vw solid #89826A;
  }
  .cost-table td {
    padding: 4vw 0 4.2666666667vw 4vw;
  }
  .cost-table--02 th,
  .cost-table--02 td {
    height: 12.5333333333vw;
    padding: 1.8666666667vw 0.2666666667vw 1.8666666667vw 2.1333333333vw;
    line-height: 1.2;
  }
  .cost-table--02 th span,
  .cost-table--02 td span {
    margin-left: -2.4vw;
  }
  .cost-table--02 th {
    font-size: 3.2vw;
  }
  .cost-table--02 td {
    font-size: 3.2vw;
    padding-left: 4.2666666667vw;
  }
}

.cost__info {
  margin-top: 1.1428571429vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.9285714286vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 1401px) {
  .cost__info {
    margin-top: 16px;
    font-size: 13px;
  }
}
@media screen and (max-width: 1023px) {
  .cost__info {
    font-size: 1.1730205279vw;
  }
}
@media screen and (max-width: 767px) {
  .cost__info {
    margin-top: 2.0860495437vw;
    font-size: 1.3037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .cost__info {
    margin-top: 4.2666666667vw;
    font-size: 2.6666666667vw;
  }
}

.reduce-costs {
  padding-top: 5.7142857143vw;
  position: relative;
}
@media (min-width: 1401px) {
  .reduce-costs {
    padding-top: 80px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs {
    padding-top: 6.518904824vw;
    padding-bottom: 7.3011734029vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs {
    padding-top: 13.3333333333vw;
    padding-bottom: 14.9333333333vw;
  }
}

.reduce-costs__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media (min-width: 1401px) {
  .reduce-costs__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .reduce-costs__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .reduce-costs__heading {
    margin-left: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__heading {
    margin-left: 0.8vw;
  }
}

.reduce-costs__heading-ja {
  margin-top: 0.7857142857vw;
}
@media (min-width: 1401px) {
  .reduce-costs__heading-ja {
    margin-top: 11px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__heading-ja {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__heading-ja {
    margin-top: 0.5333333333vw;
  }
}

.reduce-costs__text {
  margin-top: 2.8571428571vw;
  font-family: "Noto Sans JP", sans-serif;
}
@media (min-width: 1401px) {
  .reduce-costs__text {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__text {
    margin-top: 3.520208605vw;
    font-size: 1.9556714472vw;
    padding-left: 0.260756193vw;
    padding-right: 0.260756193vw;
    letter-spacing: 0.1em;
    line-height: 1.4;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__text {
    margin-top: 7.2vw;
    font-size: 3.2vw;
    padding-left: 0.5333333333vw;
    padding-right: 0.5333333333vw;
    letter-spacing: 0.1em;
    line-height: 1.4;
  }
}

.reduce-costs__wrap {
  margin-top: 1.5vw;
  position: relative;
  z-index: 3;
}
@media (min-width: 1401px) {
  .reduce-costs__wrap {
    margin-top: 21px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__wrap {
    margin-top: 3.259452412vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__wrap {
    margin-top: 6.6666666667vw;
  }
}
.reduce-costs__wrap::before {
  position: absolute;
  content: "";
  background: #0099BB;
  top: 2.9285714286vw;
  width: 100vw;
  height: 0.0714285714vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
@media (min-width: 1401px) {
  .reduce-costs__wrap::before {
    top: 41px;
    height: 1px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__wrap::before {
    top: 3.1290743155vw;
    height: 0.1303780965vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__wrap::before {
    top: 6.4vw;
    height: 0.2666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .reduce-costs__items-01 {
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__items-01 {
    width: 100%;
  }
}

.reduce-costs__sub-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.reduce-costs__sub-heading--02 {
  margin-left: -1.1428571429vw;
  margin-top: -2.8571428571vw;
}
@media (min-width: 1401px) {
  .reduce-costs__sub-heading--02 {
    margin-left: -16px;
    margin-top: -40px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__sub-heading--02 {
    margin-left: -0.7822685789vw;
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__sub-heading--02 {
    margin-left: -1.6vw;
    margin-top: 0;
  }
}

.reduce-costs__number {
  font-family: "EB Garamond", serif;
  font-size: 4.5714285714vw;
  font-weight: 400;
  line-height: 1.2;
  padding-left: 1.1428571429vw;
}
@media (min-width: 1401px) {
  .reduce-costs__number {
    font-size: 64px;
    padding-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__number {
    font-size: 5.2151238592vw;
    padding-left: 0;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__number {
    font-size: 10.6666666667vw;
    padding-left: 0;
  }
}

.reduce-costs__heading-title {
  margin-left: 1vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5714285714vw 1.5714285714vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  color: #fff;
  font-size: 2vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .reduce-costs__heading-title {
    margin-left: 14px;
    padding: 8px 22px;
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__heading-title {
    margin-left: 0.5215123859vw;
    padding: 0.7822685789vw 2.0860495437vw;
    font-size: 3.1290743155vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__heading-title {
    margin-left: 1.0666666667vw;
    padding: 1.6vw 4.2666666667vw;
    font-size: 5.3333333333vw;
  }
}

.reduce-costs__description-01 {
  margin-top: 1.1428571429vw;
  width: 69.1428571429vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  margin-inline: auto;
  text-align: left;
}
@media (min-width: 1401px) {
  .reduce-costs__description-01 {
    margin-top: 16px;
    width: 968px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .reduce-costs__description-01 {
    margin-top: 1.5640273705vw;
    width: 78.2013685239vw;
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__description-01 {
    font-size: 1.8252933507vw;
    width: 100%;
    margin-top: 1.9556714472vw;
    padding-left: 0.6518904824vw;
    padding-right: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__description-01 {
    font-size: 3.2vw;
    width: 100%;
    margin-top: 4vw;
    padding-left: 1.3333333333vw;
    padding-right: 0.5333333333vw;
  }
}

.reduce-costs__block {
  margin-top: 2.2857142857vw;
  background: #F7F4F2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 71.4285714286vw;
  padding: 3.5714285714vw 3.4285714286vw 3.8571428571vw 3.4285714286vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 1401px) {
  .reduce-costs__block {
    margin-top: 32px;
    width: 1000px;
    padding: 50px 48px 54px 48px;
  }
}
@media screen and (max-width: 1023px) {
  .reduce-costs__block {
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__block {
    margin-top: 3.1290743155vw;
    padding: 3.1290743155vw 2.6075619296vw;
    margin-inline: calc(50% - 50vw);
    width: 100vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__block {
    margin-top: 6.4vw;
    padding: 6.4vw 5.3333333333vw;
    margin-inline: calc(50% - 50vw);
    width: 100vw;
  }
}

.reduce-costs__img {
  width: 64.5714285714vw;
  height: 23.0714285714vw;
  -webkit-box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
          box-shadow: 1.1428571429vw 1.1428571429vw 2.5714285714vw 0 rgba(0, 0, 0, 0.16);
}
@media (min-width: 1401px) {
  .reduce-costs__img {
    width: 904px;
    height: 323px;
    -webkit-box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 16px 16px 36px 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__img {
    width: 58.6701434159vw;
    height: auto;
    -webkit-box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 1.4559322034vw 1.4559322034vw 3.2757496741vw 0 rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__img {
    width: 89.3333333333vw;
    height: 49.8666666667vw;
    -webkit-box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
            box-shadow: 2.9778666667vw 2.9778666667vw 6.7vw 0 rgba(0, 0, 0, 0.16);
  }
}

.reduce-costs__box {
  margin-top: 6.4285714286vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  position: relative;
}
@media (min-width: 1401px) {
  .reduce-costs__box {
    margin-top: 90px;
  }
}
@media screen and (max-width: 1023px) {
  .reduce-costs__box {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 4.9543676662vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 10.1333333333vw;
  }
}
.reduce-costs__box::before, .reduce-costs__box::after {
  position: absolute;
  content: "";
  background: #0099BB;
  width: 180%;
  height: 0.0714285714vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
@media (min-width: 1401px) {
  .reduce-costs__box::before, .reduce-costs__box::after {
    height: 1px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__box::before, .reduce-costs__box::after {
    max-width: none;
    height: 0.1303780965vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__box::before, .reduce-costs__box::after {
    max-width: none;
    height: 0.2666666667vw;
  }
}
.reduce-costs__box::before {
  top: 0;
}
@media screen and (max-width: 767px) {
  .reduce-costs__box::before {
    top: 3.259452412vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__box::before {
    top: 6.6666666667vw;
  }
}
.reduce-costs__box::after {
  bottom: 0;
}
@media screen and (min-width: 1401px) {
  .reduce-costs__box::after {
    width: 300%;
    left: -100%;
    -webkit-transform: none;
            transform: none;
    max-width: none;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__box::after {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__box::after {
    display: none;
  }
}

.reduce-costs__items-02 {
  padding: 0 2.8571428571vw 6.5714285714vw 1.1428571429vw;
  border-right: 0.0714285714vw solid #0099BB;
  position: relative;
}
@media (min-width: 1401px) {
  .reduce-costs__items-02 {
    padding: 0 40px 92px 16px;
    border-right: 1px solid #0099BB;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__items-02 {
    border-right: none;
    padding: 0 0 0vw 0.7822685789vw;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__items-02 {
    border-right: none;
    padding: 0 0 0vw 1.6vw;
  }
}

.reduce-costs__description-02 {
  margin-top: 1.2857142857vw;
  width: 31.7142857143vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .reduce-costs__description-02 {
    margin-top: 18px;
    width: 444px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .reduce-costs__description-02 {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__description-02 {
    margin-top: 2.0860495437vw;
    font-size: 1.8252933507vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__description-02 {
    margin-top: 4.2666666667vw;
    font-size: 3.7333333333vw;
    width: 100%;
  }
}

.reduce-costs__items-03 {
  padding: 0 0 6.5714285714vw 4vw;
}
@media (min-width: 1401px) {
  .reduce-costs__items-03 {
    padding: 0 0 92px 56px;
  }
}
@media screen and (max-width: 767px) {
  .reduce-costs__items-03 {
    margin-top: 4.1720990874vw;
    padding: 0 0vw 0 0.7822685789vw;
    position: relative;
  }
  .reduce-costs__items-03::before {
    position: absolute;
    content: "";
    background: #0099BB;
    max-width: none;
    width: 180%;
    height: 0.1303780965vw;
    top: 3.259452412vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
  }
}
@media screen and (max-width: 550px) {
  .reduce-costs__items-03 {
    margin-top: 8.5333333333vw;
    padding: 0 0vw 0 1.6vw;
    position: relative;
  }
  .reduce-costs__items-03::before {
    position: absolute;
    content: "";
    background: #0099BB;
    max-width: none;
    width: 180%;
    height: 0.2666666667vw;
    top: 6.6666666667vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
  }
}

.risks {
  padding-top: 5.7142857143vw;
  padding-bottom: 5.7142857143vw;
  background: #F7F4F2;
  border-bottom: 0.0714285714vw solid #0099BB;
}
@media (min-width: 1401px) {
  .risks {
    padding-top: 80px;
    padding-bottom: 80px;
    border-bottom: 1px solid #0099BB;
  }
}
@media screen and (max-width: 767px) {
  .risks {
    padding-top: 5.6062581486vw;
    padding-bottom: 6.258148631vw;
    border-bottom: none;
  }
}
@media screen and (max-width: 550px) {
  .risks {
    padding-top: 11.4666666667vw;
    padding-bottom: 12.8vw;
    border-bottom: none;
  }
}

.risks__inner {
  width: min(74.2857142857vw, 100%);
  padding-inline: 1.4285714286vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media (min-width: 1401px) {
  .risks__inner {
    width: min(1040px, 100%);
    padding-inline: 20px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .risks__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .risks__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .risks__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.risks__heading {
  text-align: center;
}

.risks__heading-ja {
  margin-top: 0.7857142857vw;
}
@media (min-width: 1401px) {
  .risks__heading-ja {
    margin-top: 11px;
  }
}
@media screen and (max-width: 767px) {
  .risks__heading-ja {
    margin-top: 0px;
    line-height: 1.2;
  }
}
@media screen and (max-width: 550px) {
  .risks__heading-ja {
    margin-top: 0px;
    line-height: 1.2;
  }
}

.risks__lead {
  margin-top: 1.7142857143vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .risks__lead {
    margin-top: 24px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .risks__lead {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .risks__lead {
    margin-top: 2.6075619296vw;
    font-size: 1.9556714472vw;
    padding-left: 0.7170795306vw;
    padding-right: 0.260756193vw;
    line-height: 1.6;
  }
}
@media screen and (max-width: 550px) {
  .risks__lead {
    margin-top: 5.3333333333vw;
    font-size: 3.2vw;
    padding-left: 1.4666666667vw;
    padding-right: 0.5333333333vw;
    line-height: 1.6;
  }
}

.risks__list {
  margin-top: 3.7142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1.1428571429vw;
     -moz-column-gap: 1.1428571429vw;
          column-gap: 1.1428571429vw;
  row-gap: 2.8571428571vw;
}
@media (min-width: 1401px) {
  .risks__list {
    margin-top: 52px;
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
    row-gap: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .risks__list {
    width: 100%;
    max-width: 97.7517106549vw;
  }
}
@media screen and (max-width: 767px) {
  .risks__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 5.2151238592vw;
    -webkit-column-gap: 5.2151238592vw;
       -moz-column-gap: 5.2151238592vw;
            column-gap: 5.2151238592vw;
    row-gap: 5.2151238592vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width: 550px) {
  .risks__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    margin-top: 10.6666666667vw;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 10.6666666667vw;
  }
}

.risk-card {
  border: 0.0714285714vw solid #0099BB;
  background: #fff;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
  width: 23vw;
  height: 15vw;
  position: relative;
  padding-bottom: 2.2857142857vw;
}
@media (min-width: 1401px) {
  .risk-card {
    border: 1px solid #0099BB;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
    width: 322px;
    height: 210px;
    padding-bottom: 32px;
  }
}
@media screen and (max-width: 1023px) {
  .risk-card {
    width: 27.2727272727vw;
    height: 17.7908113392vw;
  }
}
@media screen and (max-width: 767px) {
  .risk-card {
    width: 36.3754889179vw;
    height: auto;
    padding-bottom: 2.3468057366vw;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 550px) {
  .risk-card {
    width: 85.8666666667vw;
    height: 50.1333333333vw;
    margin: 0 auto;
    padding-bottom: 8.5333333333vw;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
  }
}

.risk-card__number {
  font-family: "EB Garamond", serif;
  font-size: 2.8571428571vw;
  font-weight: 400;
  opacity: 0.4;
  position: absolute;
  top: -1.3571428571vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 1401px) {
  .risk-card__number {
    font-size: 40px;
    top: -19px;
  }
}
@media screen and (max-width: 1023px) {
  .risk-card__number {
    font-size: 3.9100684262vw;
    top: -1.8572825024vw;
  }
}
@media screen and (max-width: 767px) {
  .risk-card__number {
    font-size: 5.2151238592vw;
    top: -3.1290743155vw;
  }
}
@media screen and (max-width: 550px) {
  .risk-card__number {
    font-size: 10.6666666667vw;
    top: -5.7366362451vw;
  }
}

.risk-card__title {
  margin-top: 2.3571428571vw;
  text-align: center;
  font-size: 1.4285714286vw;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
  position: relative;
}
@media (min-width: 1401px) {
  .risk-card__title {
    margin-top: 33px;
    font-size: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .risk-card__title {
    font-size: 1.7595307918vw;
  }
}
@media screen and (max-width: 767px) {
  .risk-card__title {
    margin-top: 4.1720990874vw;
    font-size: 2.3468057366vw;
  }
}
@media screen and (max-width: 550px) {
  .risk-card__title {
    margin-top: 8.5333333333vw;
    font-size: 4.2666666667vw;
  }
}
.risk-card__title::after {
  position: absolute;
  content: "";
  width: 4.5714285714vw;
  height: 0.0714285714vw;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  bottom: -1.2857142857vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 1401px) {
  .risk-card__title::after {
    width: 64px;
    height: 1px;
    bottom: -18px;
  }
}
@media screen and (max-width: 767px) {
  .risk-card__title::after {
    width: 8.3441981747vw;
    height: 0.1303780965vw;
    bottom: -1.6949152542vw;
  }
}
@media screen and (max-width: 550px) {
  .risk-card__title::after {
    width: 17.0666666667vw;
    height: 0.2666666667vw;
    bottom: -3.4666666667vw;
  }
}

.risk-card__text {
  margin-top: 2.3571428571vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1vw;
  padding-inline: 1.5714285714vw;
}
@media (min-width: 1401px) {
  .risk-card__text {
    margin-top: 33px;
    font-size: 14px;
    letter-spacing: 1.4px;
    padding-inline: 22px;
  }
}
@media screen and (max-width: 1023px) {
  .risk-card__text {
    font-size: 1.1730205279vw;
  }
}
@media screen and (max-width: 767px) {
  .risk-card__text {
    margin-top: 3.1290743155vw;
    font-size: 1.8252933507vw;
    padding-inline: 3.1290743155vw;
    letter-spacing: 0.1564537158vw;
  }
}
@media screen and (max-width: 550px) {
  .risk-card__text {
    margin-top: 7.7333333333vw;
    font-size: 3.2vw;
    padding-inline: 6.4vw;
    letter-spacing: 0.32vw;
  }
}

.surgeon {
  padding-top: 6.1428571429vw;
  padding-bottom: 6.8571428571vw;
  position: relative;
}
@media (min-width: 1401px) {
  .surgeon {
    padding-top: 86px;
    padding-bottom: 96px;
  }
}
@media screen and (max-width: 767px) {
  .surgeon {
    padding-top: 8.8657105606vw;
    padding-bottom: 6.258148631vw;
  }
}
@media screen and (max-width: 550px) {
  .surgeon {
    padding-top: 18.1333333333vw;
    padding-bottom: 12.8vw;
  }
}
.surgeon::before {
  content: "surgeon";
  position: absolute;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  color: #fff;
  font-size: 17.1428571429vw;
  font-weight: 400;
  letter-spacing: 0.2em;
  white-space: nowrap;
  opacity: 0.15;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  left: 51.8%;
  top: 3.3571428571vw;
  -webkit-transform: translate(-50%, -20%);
          transform: translate(-50%, -20%);
  z-index: -1;
}
@media (min-width: 1401px) {
  .surgeon::before {
    font-size: 240px;
    top: 47px;
  }
}
@media screen and (max-width: 767px) {
  .surgeon::before {
    font-size: 13.5593220339vw;
    top: 6.518904824vw;
    left: 53%;
  }
}
@media screen and (max-width: 550px) {
  .surgeon::before {
    font-size: 27.7333333333vw;
    top: 13.3333333333vw;
    left: 53%;
  }
}

.surgeon__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media (min-width: 1401px) {
  .surgeon__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .surgeon__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .surgeon__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .surgeon__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.surgeon__heading {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .surgeon__heading-ja {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .surgeon__heading-ja {
    margin-top: 0.5333333333vw;
  }
}

.doctor__container {
  margin-top: 5.7857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 1401px) {
  .doctor__container {
    margin-top: 81px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__container {
    margin-top: 6.258148631vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__container {
    margin-top: 12.8vw;
  }
}

.doctor__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-column-gap: 5.5vw;
     -moz-column-gap: 5.5vw;
          column-gap: 5.5vw;
}
@media (min-width: 1401px) {
  .doctor__wrap {
    -webkit-column-gap: 77px;
       -moz-column-gap: 77px;
            column-gap: 77px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 3.9113428944vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 8vw;
  }
}
.doctor__wrap:nth-of-type(2) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-column-gap: 4.6428571429vw;
     -moz-column-gap: 4.6428571429vw;
          column-gap: 4.6428571429vw;
}
@media (min-width: 1401px) {
  .doctor__wrap:nth-of-type(2) {
    -webkit-column-gap: 65px;
       -moz-column-gap: 65px;
            column-gap: 65px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__wrap:nth-of-type(2) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 3.9113428944vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__wrap:nth-of-type(2) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 8vw;
  }
}

.doctor__wrap + .doctor__wrap {
  margin-top: 4.7857142857vw;
}
@media (min-width: 1401px) {
  .doctor__wrap + .doctor__wrap {
    margin-top: 67px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__wrap + .doctor__wrap {
    margin-top: 6.518904824vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__wrap + .doctor__wrap {
    margin-top: 13.3333333333vw;
  }
}

.doctor__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.doctor__image {
  width: 24vw;
  height: 28vw;
  position: relative;
}
@media (min-width: 1401px) {
  .doctor__image {
    width: 336px;
    height: 392px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__image {
    width: 52.1512385919vw;
    height: auto;
  }
}
@media screen and (max-width: 550px) {
  .doctor__image {
    width: 85.0666666667vw;
    height: 64vw;
  }
}
.doctor__image::after {
  position: absolute;
  content: "";
  background: linear-gradient(358deg, #0099BB 0.53%, #0564B5 99.17%);
  width: 24vw;
  height: 28vw;
  top: 1.1428571429vw;
  left: 1.1428571429vw;
  z-index: -1;
}
@media (min-width: 1401px) {
  .doctor__image::after {
    width: 336px;
    height: 392px;
    top: 16px;
    left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__image::after {
    width: 53.4550195567vw;
    height: 40.4172099087vw;
    top: 2.0860495437vw;
    left: 2.998696219vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__image::after {
    width: 83.2vw;
    height: 64vw;
    top: 4.2666666667vw;
    left: 6.1333333333vw;
  }
}

.doctor__image--02 {
  margin-right: 1.2142857143vw;
}
@media (min-width: 1401px) {
  .doctor__image--02 {
    margin-right: 17px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__image--02 {
    margin-right: 2.2164276402vw;
    margin-left: auto;
  }
}
@media screen and (max-width: 550px) {
  .doctor__image--02 {
    margin-right: 0;
  }
}

.doctor__info {
  margin-top: -4.7142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1.1428571429vw 2.2857142857vw 0 1.1428571429vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  z-index: 3;
  margin-left: -0.2142857143vw;
}
@media (min-width: 1401px) {
  .doctor__info {
    margin-top: -66px;
    padding: 16px 32px 0 16px;
    margin-left: -3px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__info {
    margin-top: -5.8670143416vw;
    padding: 1.0430247718vw 1.8252933507vw 1.1245110821vw 1.0430247718vw;
    margin-left: 1.0430247718vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__info {
    margin-top: -12vw;
    padding: 2.1333333333vw 3.7333333333vw 2.3vw 2.1333333333vw;
    margin-left: 0;
  }
}

.doctor__info--02 {
  margin-left: auto;
  margin-right: -0.9285714286vw;
  padding: 1.0714285714vw 2.2857142857vw 0.0714285714vw 1.0714285714vw;
}
@media (min-width: 1401px) {
  .doctor__info--02 {
    margin-right: -13px;
    padding: 15px 32px 1px 15px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__info--02 {
    padding: 1.0430247718vw 1.9556714472vw 1.1245110821vw 2.2164276402vw;
    margin-right: -1.1734028683vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__info--02 {
    padding: 2.1333333333vw 4vw 2.3vw 4.5333333333vw;
    margin-right: -2.4vw;
  }
}

.doctor__name {
  font-family: "Noto Serif JP";
  font-size: 2.2857142857vw;
  font-style: normal;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.1em;
  padding-bottom: 0.4285714286vw;
  border-bottom: 0.0714285714vw solid #332F26;
}
@media (min-width: 1401px) {
  .doctor__name {
    font-size: 32px;
    padding-bottom: 6px;
    border-bottom: 1px solid #332F26;
  }
}
@media screen and (max-width: 767px) {
  .doctor__name {
    font-size: 3.3898305085vw;
    padding-bottom: 0.4693611473vw;
    border-bottom: 1px solid #332F26;
  }
}
@media screen and (max-width: 550px) {
  .doctor__name {
    font-size: 5.8666666667vw;
    padding-bottom: 0.96vw;
    border-bottom: 1px solid #332F26;
  }
}

.doctor__name-en {
  margin-top: 0.4285714286vw;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.0714285714vw;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
@media (min-width: 1401px) {
  .doctor__name-en {
    margin-top: 6px;
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__name-en {
    margin-top: 0.3911342894vw;
    font-size: 1.5645371578vw;
    margin-left: -2.2164276402vw;
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 550px) {
  .doctor__name-en {
    margin-top: 0.8vw;
    font-size: 2.6666666667vw;
    margin-left: -4.5333333333vw;
    letter-spacing: 0.2em;
  }
}

.doctor__name-en--02 {
  margin-right: -0.2857142857vw;
}
@media (min-width: 1401px) {
  .doctor__name-en--02 {
    margin-right: -4px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__name-en--02 {
    margin-right: -0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__name-en--02 {
    margin-right: -0.5333333333vw;
  }
}

.doctor__text {
  margin-top: 1.1428571429vw;
  margin-left: 1.1428571429vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  width: 23vw;
}
@media (min-width: 1401px) {
  .doctor__text {
    margin-top: 16px;
    margin-left: 16px;
    font-size: 14px;
    width: 322px;
  }
}
@media screen and (max-width: 1023px) {
  .doctor__text {
    font-size: 1.2707722385vw;
  }
}
@media screen and (max-width: 767px) {
  .doctor__text {
    margin-top: 1.9556714472vw;
    margin-left: 0;
    font-size: 1.8252933507vw;
    width: 100%;
    line-height: 1.8;
  }
}
@media screen and (max-width: 550px) {
  .doctor__text {
    margin-top: 4vw;
    margin-left: 0;
    font-size: 3.2vw;
    width: 100%;
    line-height: 1.8;
  }
}

.doctor__details {
  margin-top: 0.6428571429vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (min-width: 1401px) {
  .doctor__details {
    margin-top: 9px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__details {
    margin-top: 0;
  }
}
@media screen and (max-width: 550px) {
  .doctor__details {
    margin-top: 0;
  }
}

.doctor__title {
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.2857142857vw 1.1428571429vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 1401px) {
  .doctor__title {
    padding: 4px 16px;
    font-size: 14px;
  }
}
@media screen and (max-width: 1023px) {
  .doctor__title {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .doctor__title {
    font-size: 1.8252933507vw;
    padding: 0.5215123859vw 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__title {
    font-size: 3.2vw;
    padding: 1.0666666667vw 4.2666666667vw;
  }
}

.doctor__title--02 {
  margin-top: -0.7857142857vw;
}
@media (min-width: 1401px) {
  .doctor__title--02 {
    margin-top: -11px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__title--02 {
    margin-top: -1.3037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__title--02 {
    margin-top: -2.6666666667vw;
  }
}

.doctor__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  padding: 0.8571428571vw 0 0.9285714286vw 1vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media (min-width: 1401px) {
  .doctor__list li {
    padding: 12px 0 13px 14px;
    font-size: 14px;
  }
}
@media screen and (max-width: 1023px) {
  .doctor__list li {
    font-size: 1.3685239492vw;
  }
}
@media screen and (max-width: 767px) {
  .doctor__list li {
    padding: 1.5645371578vw 0 1.5645371578vw 1.8252933507vw;
    font-size: 1.8252933507vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__list li {
    padding: 3.2vw 0 3.2vw 3.7333333333vw;
    font-size: 3.2vw;
  }
}

.doctor__list--01 li {
  border-bottom: 0.0714285714vw solid #BFBFBF;
}
@media (min-width: 1401px) {
  .doctor__list--01 li {
    border-bottom: 1px solid #BFBFBF;
  }
}
@media screen and (max-width: 767px) {
  .doctor__list--01 li {
    border-bottom: 1px solid #BFBFBF;
  }
}
@media screen and (max-width: 550px) {
  .doctor__list--01 li {
    border-bottom: 1px solid #BFBFBF;
  }
}

.doctor__list--02 {
  padding-top: 0.6428571429vw;
  padding-bottom: 1.0714285714vw;
  padding-inline: 2.2142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 0.5714285714vw;
}
@media (min-width: 1401px) {
  .doctor__list--02 {
    padding-top: 9px;
    padding-bottom: 15px;
    padding-inline: 31px;
    row-gap: 8px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__list--02 {
    padding-top: 1.0430247718vw;
    padding-bottom: 2.0860495437vw;
    padding-inline: 3.7809647979vw;
    row-gap: 0.7822685789vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__list--02 {
    padding-top: 2.1333333333vw;
    padding-bottom: 4.2666666667vw;
    padding-inline: 7.7333333333vw;
    row-gap: 1.6vw;
  }
}
.doctor__list--02 li {
  padding-top: 0;
  padding-left: 0;
  padding-bottom: 0;
  position: relative;
}
.doctor__list--02 li::before {
  content: "";
  position: absolute;
  top: 0.5vw;
  left: -0.9285714286vw;
  width: 0.4285714286vw;
  height: 0.4285714286vw;
  background: #9298AE;
  border-radius: 50%;
}
@media (min-width: 1401px) {
  .doctor__list--02 li::before {
    top: 7px;
    left: -13px;
    width: 6px;
    height: 6px;
  }
}
@media screen and (max-width: 1023px) {
  .doctor__list--02 li::before {
    top: 0.6842619746vw;
    left: -1.2707722385vw;
    width: 0.5865102639vw;
    height: 0.5865102639vw;
  }
}
@media screen and (max-width: 767px) {
  .doctor__list--02 li::before {
    width: 0.6518904824vw;
    height: 0.6518904824vw;
    top: 0.7822685789vw;
    left: -1.5645371578vw;
  }
}
@media screen and (max-width: 550px) {
  .doctor__list--02 li::before {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
    top: 1.6vw;
    left: -3.2vw;
  }
}

.year {
  margin-right: 0.4285714286vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  width: 10vw;
  position: relative;
}
@media (min-width: 1401px) {
  .year {
    margin-right: 6px;
    font-size: 14px;
    width: 125px;
  }
}
@media screen and (max-width: 1023px) {
  .year {
    font-size: 1.3685239492vw;
    width: 5.5718475073vw;
  }
}
@media screen and (max-width: 767px) {
  .year {
    margin-right: 0.7822685789vw;
    font-size: 1.8252933507vw;
    display: inline-block;
    width: 7.8226857888vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
@media screen and (max-width: 550px) {
  .year {
    margin-right: 1.6vw;
    font-size: 3.2vw;
    display: inline-block;
    width: 26vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.year::before {
  content: "";
  position: absolute;
  top: 0.5vw;
  left: -0.9285714286vw;
  width: 0.4285714286vw;
  height: 0.4285714286vw;
  background: #9298AE;
  border-radius: 50%;
}
@media (min-width: 1401px) {
  .year::before {
    top: 7px;
    left: -13px;
    width: 6px;
    height: 6px;
  }
}
@media screen and (max-width: 1023px) {
  .year::before {
    top: 0.6842619746vw;
    left: -1.2707722385vw;
    width: 0.5865102639vw;
    height: 0.5865102639vw;
  }
}
@media screen and (max-width: 767px) {
  .year::before {
    top: 0.9126466754vw;
    left: -1.6949152542vw;
    width: 0.6518904824vw;
    height: 0.6518904824vw;
  }
}
@media screen and (max-width: 550px) {
  .year::before {
    top: 1.8666666667vw;
    left: -3.4666666667vw;
    width: 1.3333333333vw;
    height: 1.3333333333vw;
  }
}

.doctor__section--bg {
  margin-top: 2.8571428571vw;
  background: #f7f4f2;
  width: 41.7142857143vw;
}
@media (min-width: 1401px) {
  .doctor__section--bg {
    margin-top: 40px;
    width: 584px;
  }
}
@media screen and (max-width: 767px) {
  .doctor__section--bg {
    margin-top: 5.3455019557vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .doctor__section--bg {
    margin-top: 10.9333333333vw;
  }
}

.flow {
  padding-top: 5.0714285714vw;
  padding-bottom: 5.7142857143vw;
  background: url("../img/flow_bg.webp") center/cover no-repeat;
  position: relative;
  z-index: 0;
}
.flow::after {
  content: "";
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  background: #EFF9FA;
  opacity: 0.92;
  z-index: -2;
}
@media screen and (min-width: 1401px) {
  .flow {
    padding-top: 71px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .flow {
    padding-top: 5.7366362451vw;
    padding-bottom: 6.258148631vw;
    background: url("../img/flow_bg-sp.webp") center/cover no-repeat;
  }
}
@media screen and (max-width: 550px) {
  .flow {
    padding-top: 11.7333333333vw;
    padding-bottom: 12.8vw;
    background: url("../img/flow_bg-sp.webp") center/cover no-repeat;
  }
}

.flow__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .flow__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .flow__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .flow__inner {
    width: 100%;
    padding-inline: 10.6666666667vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .flow__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.flow__heading {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .heading__ja--02 {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .heading__ja--02 {
    margin-top: 0.5333333333vw;
  }
}

.flow-steps {
  margin-top: 6.7857142857vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 71.4285714286vw;
  position: relative;
}
@media screen and (min-width: 1401px) {
  .flow-steps {
    margin-top: 95px;
    width: 1000px;
  }
}
@media screen and (max-width: 1023px) {
  .flow-steps {
    width: 78.2013685239vw;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .flow-steps {
    margin-top: 7.4315514993vw;
    width: 71.7079530639vw;
    margin-inline: auto;
  }
}
@media screen and (max-width: 550px) {
  .flow-steps {
    margin-top: 15.2vw;
    width: 100%;
  }
}
.flow-steps::before {
  position: absolute;
  content: "";
  width: 0.0714285714vw;
  height: 74.1428571429vw;
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
  top: -4.6428571429vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
@media screen and (min-width: 1401px) {
  .flow-steps::before {
    width: 1px;
    height: 1038px;
    top: -65px;
  }
}
@media screen and (max-width: 1023px) {
  .flow-steps::before {
    width: 0.0977517107vw;
    height: 87.9765395894vw;
  }
}
@media screen and (max-width: 767px) {
  .flow-steps::before {
    width: 0.1303780965vw;
    height: 102.3468057366vw;
    top: -4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-steps::before {
    width: 0.2666666667vw;
    height: 209.3333333333vw;
    top: -8.5333333333vw;
  }
}

.flow-step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2.8571428571vw;
     -moz-column-gap: 2.8571428571vw;
          column-gap: 2.8571428571vw;
  border: 0.0714285714vw solid #7A6500;
  background: #fff;
  height: 17.642857vw;
}
@media screen and (min-width: 1401px) {
  .flow-step {
    -webkit-column-gap: 40px;
       -moz-column-gap: 40px;
            column-gap: 40px;
    border: 1px solid #7A6500;
    height: 245px;
  }
}
@media screen and (max-width: 1023px) {
  .flow-step {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 20.835777vw;
  }
}
@media screen and (max-width: 767px) {
  .flow-step {
    display: block;
    border: 1px solid #7A6500;
    height: 22.4250325945vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step {
    display: block;
    border: 1px solid #7A6500;
    height: 54.866667vw;
  }
}

.flow-step + .flow-step {
  margin-top: 1.7142857143vw;
}
@media screen and (min-width: 1401px) {
  .flow-step + .flow-step {
    margin-top: 24px;
  }
}
@media screen and (max-width: 767px) {
  .flow-step + .flow-step {
    margin-top: 2.0860495437vw;
    position: relative;
  }
}
@media screen and (max-width: 550px) {
  .flow-step + .flow-step {
    margin-top: 4.2666666667vw;
    position: relative;
  }
}

.flow-step__items {
  padding-top: 1.2142857143vw;
  padding-left: 2.8571428571vw;
  padding-bottom: 2.2857142857vw;
}
@media screen and (min-width: 1401px) {
  .flow-step__items {
    padding-top: 17px;
    padding-left: 40px;
    padding-bottom: 32px;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__items {
    padding-top: 1.5645371578vw;
    padding-left: 2.0860495437vw;
    padding-bottom: 2.0860495437vw;
    padding-right: 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__items {
    padding-top: 3.2vw;
    padding-left: 4.2666666667vw;
    padding-bottom: 4.2666666667vw;
    padding-right: 4.2666666667vw;
  }
}

.flow-step__label {
  font-family: "Cormorant Garamond", serif;
  font-size: 2vw;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
@media screen and (min-width: 1401px) {
  .flow-step__label {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__label {
    font-size: 3.1290743155vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__label {
    font-size: 5.3333333333vw;
  }
}
.flow-step__label span {
  font-size: 2.5714285714vw;
  font-family: "EB Garamond", serif;
  margin-left: 0.2142857143vw;
}
@media screen and (min-width: 1401px) {
  .flow-step__label span {
    font-size: 36px;
    margin-left: 3px;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__label span {
    font-size: 3.6505867014vw;
    margin-left: 0.3911342894vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__label span {
    font-size: 7.4666666667vw;
    margin-left: 0.8vw;
  }
}

.flow-step__title {
  margin-top: 1.1428571429vw;
  font-size: 2.2857142857vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .flow-step__title {
    margin-top: 16px;
    font-size: 32px;
  }
}
@media screen and (max-width: 1023px) {
  .flow-step__title {
    margin-top: 0.3910068426vw;
    font-size: 2.3460410557vw;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__title {
    margin-top: 1.0430247718vw;
    font-size: 3.1290743155vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__title {
    margin-top: 2.1333333333vw;
    font-size: 5.3333333333vw;
  }
}

.flow-step__desc {
  margin-top: 1.4285714286vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  width: 39.8571428571vw;
}
@media screen and (min-width: 1401px) {
  .flow-step__desc {
    margin-top: 20px;
    font-size: 16px;
    width: 558px;
  }
}
@media screen and (max-width: 1023px) {
  .flow-step__desc {
    margin-top: 0.9775171065vw;
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__desc {
    margin-top: 2.6075619296vw;
    font-size: 1.9556714472vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__desc {
    margin-top: 5.3333333333vw;
    font-size: 3.2vw;
    width: 100%;
  }
}

.flow-step__img {
  width: 25.8278571429vw;
  height: 15.2142857143vw;
}
@media screen and (min-width: 1401px) {
  .flow-step__img {
    width: 361.59px;
    height: 213px;
  }
}
@media screen and (max-width: 767px) {
  .flow-step__img {
    position: absolute;
    width: 22.1642764016vw;
    height: auto;
    top: 0;
    right: 0;
  }
  .flow-step__img.is-first {
    top: 0.1303780965vw;
  }
}
@media screen and (max-width: 550px) {
  .flow-step__img {
    position: absolute;
    width: 41.8666666667vw;
    height: 20.2666666667vw;
    top: 0;
    right: 0;
  }
  .flow-step__img.is-first {
    top: 0.2666666667vw;
  }
}

.faq {
  padding-top: 5.2142857143vw;
  padding-bottom: 5.7142857143vw;
  border-top: 0.0714285714vw solid #0099BB;
  background: #F7F4F2;
}
@media screen and (min-width: 1401px) {
  .faq {
    padding-top: 73px;
    padding-bottom: 80px;
    border-top: 1px solid #0099BB;
  }
}
@media screen and (max-width: 767px) {
  .faq {
    padding-top: 5.4758800522vw;
    padding-bottom: 6.258148631vw;
    border-top: none;
  }
}
@media screen and (max-width: 550px) {
  .faq {
    padding-top: 11.2vw;
    padding-bottom: 12.8vw;
    border-top: none;
  }
}

.faq__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .faq__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .faq__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .faq__inner {
    width: 100%;
    padding-inline: 5.3333333333vw;
    max-width: none;
  }
}

.faq__heading {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .faq-heading__ja {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .faq-heading__ja {
    margin-top: 0.5333333333vw;
  }
}

summary {
  display: block;
}
summary::-webkit-details-marker {
  display: none;
}

.faq__items {
  margin-top: 3.2142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.4285714286vw;
  width: 57.1428571429vw;
  margin-inline: auto;
}
@media screen and (min-width: 1401px) {
  .faq__items {
    margin-top: 45px;
    gap: 20px;
    width: 800px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__items {
    width: 78.2013685239vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.9550342131vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__items {
    margin-top: 4.1720990874vw;
    gap: 1.8252933507vw;
    width: 78.2268578879vw;
  }
}
@media screen and (max-width: 550px) {
  .faq__items {
    margin-top: 8.5333333333vw;
    gap: 3.7333333333vw;
    width: 100%;
  }
}

.faq__item {
  width: 57.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .faq__item {
    width: 800px;
  }
}
@media screen and (max-width: 767px) {
  .faq__item {
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .faq__item {
    width: 100%;
  }
}

.faq__block {
  background: #0564B5;
  padding: 0.9285714286vw 1.1428571429vw 0.8571428571vw 2.8571428571vw;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 1401px) {
  .faq__block {
    padding: 13px 16px 12px 40px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__block {
    padding: 1.2707722385vw 1.5640273705vw 1.1730205279vw 3.9100684262vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__block {
    padding: 1.3037809648vw;
  }
}
@media screen and (max-width: 550px) {
  .faq__block {
    padding: 2.6666666667vw;
  }
}

.faq__question {
  position: relative;
  width: 100%;
}
.faq__question::before {
  position: absolute;
  content: "";
  display: block;
  width: 0.5714285714vw;
  height: 0.5714285714vw;
  border-bottom: 0.1428571429vw solid #fff;
  border-right: 0.1428571429vw solid #fff;
  -webkit-transform: translateY(0) rotate(45deg);
          transform: translateY(0) rotate(45deg);
  top: 11%;
  right: 0.4285714286vw;
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}
@media screen and (min-width: 1401px) {
  .faq__question::before {
    width: 8px;
    height: 8px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    right: 6px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__question::before {
    width: 0.7820136852vw;
    height: 0.7820136852vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__question::before {
    width: 1.0430247718vw;
    height: 1.0430247718vw;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    right: 0.7822685789vw;
    top: 17%;
  }
}
@media screen and (max-width: 550px) {
  .faq__question::before {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    right: 1.6vw;
    top: 17%;
  }
}

.is-opened .faq__question::before {
  -webkit-transform: translateY(0.5714285714vw) rotate(225deg);
          transform: translateY(0.5714285714vw) rotate(225deg);
}
@media screen and (min-width: 1401px) {
  .is-opened .faq__question::before {
    -webkit-transform: translateY(8px) rotate(225deg);
            transform: translateY(8px) rotate(225deg);
  }
}
@media screen and (max-width: 767px) {
  .is-opened .faq__question::before {
    -webkit-transform: translateY(1.0430247718vw) rotate(225deg);
            transform: translateY(1.0430247718vw) rotate(225deg);
  }
}
@media screen and (max-width: 550px) {
  .is-opened .faq__question::before {
    -webkit-transform: translateY(2.1333333333vw) rotate(225deg);
            transform: translateY(2.1333333333vw) rotate(225deg);
  }
}

.faq__question-text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
  position: relative;
  padding-inline: 2.2142857143vw 3.5714285714vw;
}
@media screen and (min-width: 1401px) {
  .faq__question-text {
    font-size: 16px;
    padding-inline: 31px 50px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__question-text {
    font-size: 1.4662756598vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__question-text {
    font-size: 1.8252933507vw;
    padding-inline: 3.520208605vw 4.6936114733vw;
  }
}
@media screen and (max-width: 550px) {
  .faq__question-text {
    font-size: 3.2vw;
    padding-inline: 7.2vw 9.6vw;
  }
}
.faq__question-text::before {
  content: "Q.";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
  color: #fff;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.4285714286vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
@media screen and (min-width: 1401px) {
  .faq__question-text::before {
    font-size: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__question-text::before {
    font-size: 1.6617790811vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__question-text::before {
    font-size: 2.2164276402vw;
  }
}
@media screen and (max-width: 550px) {
  .faq__question-text::before {
    font-size: 4.2666666667vw;
  }
}

.faq__answer-text {
  border: 0.0714285714vw solid #0564B5;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 8.5714285714vw;
  padding: 1.1428571429vw 2.8571428571vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1428571429vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .faq__answer-text {
    border: 1px solid #0564B5;
    height: 120px;
    padding: 16px 40px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  .faq__answer-text {
    height: auto;
    font-size: 1.4662756598vw;
    padding: 1.5640273705vw 3.9100684262vw;
  }
}
@media screen and (max-width: 767px) {
  .faq__answer-text {
    border: 1px solid #0564B5;
    height: 17.4706649283vw;
    padding: 2.0860495437vw 1.8252933507vw;
    font-size: 1.9556714472vw;
  }
}
@media screen and (max-width: 550px) {
  .faq__answer-text {
    border: 1px solid #0564B5;
    height: 35.7333333333vw;
    padding: 4.2666666667vw 3.7333333333vw;
    font-size: 3.2vw;
  }
}

.articles {
  padding-top: 5.2142857143vw;
  padding-bottom: 5.7142857143vw;
  border-top: 1px solid #0099BB;
  border-bottom: 1px solid #0099BB;
}
@media screen and (min-width: 1401px) {
  .articles {
    padding-top: 73px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .articles {
    padding-top: 5.6062581486vw;
    padding-bottom: 4.1720990874vw;
  }
}
@media screen and (max-width: 550px) {
  .articles {
    padding-top: 11.4666666667vw;
    padding-bottom: 8.5333333333vw;
  }
}

.articles__inner {
  width: min(82.8571428571vw, 100%);
  padding-inline: 5.7142857143vw;
  margin-inline: auto;
  max-width: 100vw;
}
@media screen and (min-width: 1401px) {
  .articles__inner {
    width: min(1160px, 100%);
    padding-inline: 80px;
    max-width: 1400px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__inner {
    padding-inline: 3.9100684262vw;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .articles__inner {
    width: 100%;
    padding-inline: 5.2151238592vw;
    max-width: none;
  }
}
@media screen and (max-width: 550px) {
  .articles__inner {
    width: 100%;
    padding-inline: 0;
    max-width: none;
  }
}

.articles__heading {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .articles-heading__ja {
    margin-top: 0.260756193vw;
  }
}
@media screen and (max-width: 550px) {
  .articles-heading__ja {
    margin-top: 0.5333333333vw;
  }
}

.articles__swiper-container {
  margin-top: 4.5714285714vw;
  width: 71.4285714286vw;
}
@media screen and (min-width: 1401px) {
  .articles__swiper-container {
    margin-top: 64px;
    width: 1000px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__swiper-container {
    width: 87.9765395894vw;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .articles__swiper-container {
    margin-top: 3.9113428944vw;
    width: 100%;
  }
}
@media screen and (max-width: 550px) {
  .articles__swiper-container {
    margin-top: 8vw;
    width: 100%;
  }
}

.articles__swiper {
  overflow: visible;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.articles__swiper-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  gap: 1.5714285714vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1401px) {
  .articles__swiper-wrapper {
    gap: 22px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__swiper-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .articles__swiper-wrapper {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0;
  }
}
@media screen and (max-width: 550px) {
  .articles__swiper-wrapper {
    gap: 0;
  }
}

.articles__item {
  display: grid;
  grid-template-rows: repeat(5, auto);
  margin-bottom: 1.4285714286vw;
  border: 0.0714285714vw solid #0099BB;
  background: #fff;
  -webkit-box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0.5714285714vw 0.5714285714vw 1.7142857143vw 0 rgba(0, 0, 0, 0.15);
  width: 22.7857142857vw;
  padding: 1.1428571429vw 1.1428571429vw 1.4285714286vw 1.1428571429vw;
}
@media screen and (min-width: 1401px) {
  .articles__item {
    margin-bottom: 20px;
    border: 1px solid #0099BB;
    -webkit-box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 8px 8px 24px 0 rgba(0, 0, 0, 0.15);
    width: 319px;
    padding: 16px 16px 20px 16px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__item {
    width: 27.3704789834vw;
  }
}
@media screen and (max-width: 767px) {
  .articles__item {
    margin-bottom: 2.6075619296vw;
    border: 0.1303780965vw solid #0099BB;
    -webkit-box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 1.0430247718vw 1.0430247718vw 3.1290743155vw 0 rgba(0, 0, 0, 0.15);
    width: 39.1134289439vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 2.0860495437vw 2.0860495437vw 3.1290743155vw 2.0860495437vw;
  }
}
@media screen and (max-width: 550px) {
  .articles__item {
    margin-bottom: 5.3333333333vw;
    border: 0.2666666667vw solid #0099BB;
    -webkit-box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
            box-shadow: 2.1333333333vw 2.1333333333vw 6.4vw 0 rgba(0, 0, 0, 0.15);
    width: 53.3333333333vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 4.2666666667vw 4.2666666667vw 6.4vw 4.2666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .articles__img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 550px) {
  .articles__img {
    width: 44.4112vw;
    height: 25.0666666667vw;
  }
}

.articles__date {
  margin-top: 1.1428571429vw;
  font-size: 0.8571428571vw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1401px) {
  .articles__date {
    margin-top: 16px;
    font-size: 12px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__date {
    font-size: 1.2707722385vw;
  }
}
@media screen and (max-width: 767px) {
  .articles__date {
    margin-top: 2.2164276402vw;
    font-size: 1.5645371578vw;
  }
}
@media screen and (max-width: 550px) {
  .articles__date {
    margin-top: 4.5333333333vw;
    font-size: 3.2vw;
  }
}

.articles__title {
  margin-top: 0.7142857143vw;
  padding-left: 0.5714285714vw;
  font-size: 1.2857142857vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-left: 0.1428571429vw solid #0099BB;
}
@media screen and (min-width: 1401px) {
  .articles__title {
    margin-top: 10px;
    padding-left: 8px;
    font-size: 18px;
    border-left: 2px solid #0099BB;
  }
}
@media screen and (max-width: 1023px) {
  .articles__title {
    font-size: 1.6617790811vw;
  }
}
@media screen and (max-width: 767px) {
  .articles__title {
    margin-top: 1.3037809648vw;
    padding-left: 0.7822685789vw;
    font-size: 2.2164276402vw;
    border-left: 0.260756193vw solid #0099BB;
  }
}
@media screen and (max-width: 550px) {
  .articles__title {
    margin-top: 2.6666666667vw;
    padding-left: 1.6vw;
    font-size: 4.2666666667vw;
    border-left: 0.5333333333vw solid #0099BB;
  }
}

.articles__text {
  margin-top: 1.1428571429vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.9285714286vw;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
@media screen and (min-width: 1401px) {
  .articles__text {
    margin-top: 16px;
    font-size: 13px;
  }
}
@media screen and (max-width: 1023px) {
  .articles__text {
    font-size: 1.2707722385vw;
  }
}
@media screen and (max-width: 767px) {
  .articles__text {
    margin-top: 2.0860495437vw;
    font-size: 1.6949152542vw;
  }
}
@media screen and (max-width: 550px) {
  .articles__text {
    margin-top: 4.2666666667vw;
    font-size: 3.2vw;
  }
}

.card__swiper-bottom {
  display: none;
}
@media screen and (max-width: 767px) {
  .card__swiper-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2.4771838331vw;
    -webkit-column-gap: 2.6075619296vw;
       -moz-column-gap: 2.6075619296vw;
            column-gap: 2.6075619296vw;
  }
}
@media screen and (max-width: 550px) {
  .card__swiper-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 5.0666666667vw;
    -webkit-column-gap: 5.3333333333vw;
       -moz-column-gap: 5.3333333333vw;
            column-gap: 5.3333333333vw;
  }
}

/* 位置のreset */
.swiper-button-prev,
.swiper-button-next,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  position: relative;
  /* ポイント！！ */
  top: unset;
  bottom: unset;
  left: unset;
  right: unset;
  margin: 0;
  padding: 0;
}

/* =============================
   ナビゲーションボタン
============================= */
/* デフォルトのボタンを初期化 */
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  /* デフォルトのものを初期化 */
}

/* 各ボタンのカスタマイズ */
.swiper-button-prev,
.swiper-button-next {
  display: none;
}
@media screen and (max-width: 767px) {
  .swiper-button-prev,
  .swiper-button-next {
    display: block;
    width: 5.2151238592vw;
    height: 5.2151238592vw;
  }
}
@media screen and (max-width: 550px) {
  .swiper-button-prev,
  .swiper-button-next {
    display: block;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}

/* =============================
   ページネーション (bullets)
============================= */
/* 位置の設定 (枠組み) */
.swiper-pagination-bullets.swiper-pagination-horizontal {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.6666666667vw;
}

/* それぞれのページネーション */
.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
  opacity: 1;
  width: 2.6666666667vw;
  height: auto;
  aspect-ratio: 1;
  background: #fff;
  border: 0.2666666667vw solid #0564B5;
  border-radius: 50%;
  margin-inline: 5.5px;
}
@media screen and (max-width: 767px) {
  .swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
    width: 2.6666666667vw;
  }
}

/* activeな部分 */
.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet-active {
  background: linear-gradient(153deg, #0099BB 0%, #0564B5 100%);
}/*# sourceMappingURL=style.css.map */