@charset "UTF-8";
/* 藤井クリニック 2026ver */
@font-face {
  font-family: "Noto Serif JP";
  src: url("../font/NotoSerifJP.woff2") format("woff2-variations"), url("../font/NotoSerifJP.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/NotoSansJP.woff2") format("woff2-variations"), url("../font/NotoSansJP.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cormorant";
  src: url("../font/Cormorant.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../font/PlayfairDisplay.woff2") format("woff2");
}
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
          text-size-adjust: none;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  min-height: 100dvh;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
}

ul,
ol {
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  opacity: 0.8;
}

img,
picture,
svg,
video,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
  transition: opacity 0.3s ease;
}

input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
  background: transparent;
  border: none;
  border-radius: 0;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}

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

textarea {
  resize: vertical;
}

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

/************
共通
***********/
.txt_red {
  color: #a72037;
}

.is-pink {
  color: #ffc2c2 !important;
}

.is-bg-pink {
  background-color: #fbd3ca;
}

.is-bg-baby-peach {
  background-color: #fde3d5;
}

.m_center {
  margin-left: auto;
  margin-right: auto;
}

html {
  font-size: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 5rem;
}
@media (max-width: 767px) {
  html {
    scroll-padding-top: 4.375rem;
  }
}

body {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  letter-spacing: 0.06em;
  font-size: 1rem;
}

/***ログイン時の処理***/
body.logged-in header.header {
  top: 2rem;
}
body.logged-in main {
  padding-top: 7rem;
}
body.logged-in main::before {
  top: 2rem;
}
@media screen and (max-width: 782px) {
  body.logged-in header.header {
    top: 2.875rem;
  }
  body.logged-in main {
    padding-top: 7.25rem;
  }
  body.logged-in main::before {
    top: 2.875rem;
  }
  body.logged-in #wpadminbar {
    position: fixed;
  }
}

/***figure { margin: 0 0 1em; }対策***/
body figure {
  margin: 0;
}

.inner_1040,
.u-inner {
  max-width: 1040px;
  width: 100%;
  padding-left: 2%;
  padding-right: 2%;
  margin-left: auto;
  margin-right: auto;
}

.inner_1300,
.u-inner02 {
  max-width: 1300px;
  width: 100%;
  padding-left: 2%;
  padding-right: 2%;
  margin-left: auto;
  margin-right: auto;
}

.inner_1400 {
  max-width: 1400px;
  width: 100%;
  padding-left: 2%;
  padding-right: 2%;
  margin-left: auto;
  margin-right: auto;
}

.flex {
  display: flex;
}

.grid {
  display: grid;
}

.underline {
  border-bottom: 1px solid #74190d;
  padding-bottom: 5px;
}

@media (max-width: 767px) {
  .inner_1040,
  .inner_1300,
  .inner_1400 {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
.font-sans {
  font-family: "Noto Sans JP", sans-serif;
}

.notoserif {
  font-family: "Noto Serif JP", serif;
}

.playfair-display,
.u-font-playfair {
  font-family: "Playfair Display", serif;
  font-weight: 400;
}

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

.text_a-right {
  text-align: right;
}

.text_a-left {
  text-align: left;
}

.mb-10 {
  margin-bottom: 0.625rem !important;
}

.mt-10 {
  margin-top: 0.625rem !important;
}

.mb-20 {
  margin-bottom: 1.25rem !important;
}

.mt-20 {
  margin-top: 1.25rem !important;
}

.mb-30 {
  margin-bottom: 1.875rem !important;
}

.mt-30 {
  margin-top: 1.875rem !important;
}

.mb-40 {
  margin-bottom: 2.5rem !important;
}

.mt-40 {
  margin-top: 2.5rem !important;
}

.mb-50 {
  margin-bottom: 3.125rem !important;
}

.mt-50 {
  margin-top: 3.125rem !important;
}

.mb-60 {
  margin-bottom: 3.75rem !important;
}

.mt-60 {
  margin-top: 3.75rem !important;
}

.mb-70 {
  margin-bottom: 4.375rem !important;
}

.mt-70 {
  margin-top: 4.375rem !important;
}

.mb-80 {
  margin-bottom: 5rem !important;
}

.mt-80 {
  margin-top: 5rem !important;
}

.mb-90 {
  margin-bottom: 5.625rem !important;
}

.mt-90 {
  margin-top: 5.625rem !important;
}

.mb-100 {
  margin-bottom: 6.25rem !important;
}

.mt-100 {
  margin-top: 6.25rem !important;
}

.mb-110 {
  margin-bottom: 6.875rem !important;
}

.mt-110 {
  margin-top: 6.875rem !important;
}

.mb-120 {
  margin-bottom: 7.5rem !important;
}

.mt-120 {
  margin-top: 7.5rem !important;
}

.mb-130 {
  margin-bottom: 8.125rem !important;
}

.mt-130 {
  margin-top: 8.125rem !important;
}

.mb-140 {
  margin-bottom: 8.75rem !important;
}

.mt-140 {
  margin-top: 8.75rem !important;
}

.mb-150 {
  margin-bottom: 9.375rem !important;
}

.mt-150 {
  margin-top: 9.375rem !important;
}

/* ===========
レスポンシブ
==============*/
.br-sp,
.sp-only,
.sp-inline {
  display: none !important;
}

.br-sp1020 {
  display: none;
}

@media (max-width: 1020px) {
  .br-sp1020 {
    display: inline-block;
  }
}
@media screen and (max-width: 1020px) and (max-width: 747px) {
  .br-sp1020 {
    display: none;
  }
}
.br-pc {
  display: inline-block !important;
}

.pc-only {
  display: block !important;
}

@media (max-width: 767px) {
  .br-sp,
  .sp-inline {
    display: inline-block !important;
  }
  .sp-only {
    display: block !important;
  }
  .pc-only,
  .br-pc {
    display: none !important;
  }
}
/*********************************************************
共通パーツ
**********************************************************/
p {
  font-size: clamp(0.875rem, 0.723rem + 0.316vw, 1rem);
  color: #3b190d;
}

.normal-h2 {
  color: #3b190d;
  font-size: clamp(1.125rem, -0.084rem + 2.528vw, 2.125rem);
  text-align: center;
  font-weight: 600;
}

/**************elegant-btn******************************/
.elegant-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 6px;
  max-width: 330px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  color: #fff;
  font-weight: 600;
  font-size: 1.125rem;
  text-decoration: none;
  position: relative;
  z-index: 1;
}
.elegant-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-color: #3b190d;
  -webkit-mask-image: url("../img/mv/elegant.svg");
  mask-image: url("../img/mv/elegant.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center;
  mask-position: center;
  transition: background-color 0.3s ease;
}
.elegant-btn span {
  display: flex;
  align-items: center;
}
.elegant-btn span img {
  transition: filter 0.3s ease;
}
.elegant-btn:hover {
  opacity: 1;
}
.elegant-btn:hover::before {
  background-color: #b69262;
}
.elegant-btn:hover span img {
  filter: brightness(0) invert(1);
}

/**角丸ボタン**/
@font-face {
  font-family: "iconfont";
  src: url("../font/iconfont.woff2") format("woff2");
  font-display: swap;
}
.radius-brown-btn.type-icon a span::after,
.radius-brown-btn.type-icon a .c-btn01__txt::after,
.c-btn01.type-icon a span::after,
.c-btn01.type-icon a .c-btn01__txt::after {
  position: relative;
  display: inline-block;
  font-family: "iconfont";
  content: "\e012";
  margin: auto 0;
  line-height: 1;
  color: #b69262;
  padding-left: 0.4em;
  transform: scale(0.9);
  top: 0.1em;
}
.radius-brown-btn.type-icon a::before,
.c-btn01.type-icon a::before {
  display: none;
}
.radius-brown-btn a,
.c-btn01 a {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  background-color: #3b190d;
  color: #fff;
  max-width: 25rem;
  min-height: 3.125rem;
  border-radius: 1.875rem;
  position: relative;
  margin: 0 auto;
  font-size: 1.125rem;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  border: 1px solid transparent;
  padding: 0.5rem 1.5rem;
  line-height: 1.2;
}
.radius-brown-btn a span,
.radius-brown-btn a .c-btn01__txt,
.c-btn01 a span,
.c-btn01 a .c-btn01__txt {
  flex: 1;
  text-align: center;
  line-height: 1;
}
.radius-brown-btn a::before,
.c-btn01 a::before {
  content: "";
  background: url(../img/mv/ico_arw_brown.svg) no-repeat center center;
  background-size: contain;
  width: 1.875rem;
  height: 0.375rem;
  transition: filter 0.3s ease;
}
.radius-brown-btn a:hover,
.c-btn01 a:hover {
  background-color: #b69262;
  opacity: 1;
}
.radius-brown-btn a:hover::before,
.c-btn01 a:hover::before {
  filter: brightness(0) invert(1);
}
.radius-brown-btn a.is-reverse,
.c-btn01 a.is-reverse {
  background-color: #fff;
  color: #3b190d;
  border-color: #3b190d;
}
.radius-brown-btn a.is-reverse::before,
.c-btn01 a.is-reverse::before {
  filter: none;
}
.radius-brown-btn a.is-reverse:hover,
.c-btn01 a.is-reverse:hover {
  background-color: #3b190d;
  color: #fff;
}
.radius-brown-btn a.is-reverse:hover::before,
.c-btn01 a.is-reverse:hover::before {
  filter: brightness(0) invert(1);
}
.radius-brown-btn a.is-white,
.c-btn01 a.is-white {
  background-color: #fff;
  color: #3b190d;
  border-color: #3b190d;
}
.radius-brown-btn a.is-white::before,
.c-btn01 a.is-white::before {
  filter: none;
}
.radius-brown-btn a.is-white:hover,
.c-btn01 a.is-white:hover {
  background-color: #3b190d;
  color: #fff;
}
.radius-brown-btn a.is-white:hover::before,
.c-btn01 a.is-white:hover::before {
  filter: brightness(0) invert(1);
}
.radius-brown-btn a.is-white:hover span::after,
.radius-brown-btn a.is-white:hover .c-btn01__txt::after,
.c-btn01 a.is-white:hover span::after,
.c-btn01 a.is-white:hover .c-btn01__txt::after {
  color: #fff;
}
@media (max-width: 767px) {
  .radius-brown-btn,
  .c-btn01 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .radius-brown-btn a,
  .c-btn01 a {
    font-size: 0.875rem;
  }
}

/**************両サイドラインh2*********************/
.lined-heading-h2 {
  text-align: center;
}
.lined-heading-h2 span {
  display: inline-block;
  font-size: 1.875rem;
  color: #3b190d;
  position: relative;
  padding: 0 1.25rem;
}
.lined-heading-h2 span::before, .lined-heading-h2 span::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 3.125rem;
  height: 0.125rem;
  top: 50%;
  background-color: #3b190d;
}
.lined-heading-h2 span::before {
  left: 0;
  transform: translate(-100%, -50%);
}
.lined-heading-h2 span::after {
  right: 0;
  transform: translate(100%, -50%);
}
@media (max-width: 767px) {
  .lined-heading-h2 span {
    font-size: 1.25rem;
  }
  .lined-heading-h2 span::before, .lined-heading-h2 span::after {
    height: 0.0625rem;
  }
}

/****************sec-h2-tit*******************************/
.sec-h2-tit,
.c-head01 {
  position: relative;
  margin-bottom: 40px;
  text-align: center;
  display: block;
}
.sec-h2-tit.left,
.c-head01.left {
  text-align: left;
}
.sec-h2-tit h2,
.sec-h2-tit h3,
.sec-h2-tit .c-head01__head,
.c-head01 h2,
.c-head01 h3,
.c-head01 .c-head01__head {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  margin-top: 3px;
  line-height: 1.4;
  color: #3b190d;
  font-size: clamp(26px, 1.838vw + 12.273px, 38px);
}
.sec-h2-tit p,
.sec-h2-tit .c-head01__sub,
.c-head01 p,
.c-head01 .c-head01__sub {
  line-height: 0.7;
  color: #ffe9e9;
  font-size: clamp(45px, 8.6888vw - 21.643px, 100px);
  letter-spacing: 0.175em;
  font-family: "Playfair Display", serif;
}
@media (max-width: 767px) {
  .sec-h2-tit p,
  .sec-h2-tit .c-head01__sub,
  .c-head01 p,
  .c-head01 .c-head01__sub {
    margin-bottom: 25px;
  }
  .sec-h2-tit p h2,
  .sec-h2-tit .c-head01__sub h2,
  .c-head01 p h2,
  .c-head01 .c-head01__sub h2 {
    line-height: 1.3;
    font-size: 2rem;
  }
  .sec-h2-tit p p,
  .sec-h2-tit .c-head01__sub p,
  .c-head01 p p,
  .c-head01 .c-head01__sub p {
    font-size: 4.5rem;
  }
}
.sec-h2-tit p.is-bg-pink,
.c-head01 p.is-bg-pink {
  color: #fbd3ca;
}

/***************sec-titl02***************/
.sec-titl02,
.c-head02 {
  margin: 0 auto clamp(1.25rem, -0.9029375rem + 4.505vw, 1.875rem);
  text-align: center;
  color: #3b190d;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.sec-titl02 > div,
.c-head02 > div {
  display: inline-flex;
  padding: 0 0 clamp(1.5rem, -3.0700625rem + 9.524vw, 3.125rem) 0;
  background: url(../img/front/sec-titl02-bg.webp) center 70% no-repeat;
  background-size: 100% 45px;
  gap: clamp(0.25rem, -0.6273125rem + 1.832vw, 0.875rem);
  min-width: 12.5rem;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .sec-titl02 > div,
  .c-head02 > div {
    background-size: contain;
    min-width: initial;
  }
}
.sec-titl02 p,
.c-head02 p {
  font-size: clamp(2.1875rem, -5.3949375rem + 15.839vw, 5rem);
  font-family: "Cormorant", serif;
  font-style: italic;
  margin: 0;
}
@media (max-width: 767px) {
  .sec-titl02 p,
  .c-head02 p {
    bottom: -0.125rem;
    margin-right: 0.625rem;
  }
}
.sec-titl02 h3,
.sec-titl02 h2,
.c-head02 h3,
.c-head02 h2 {
  font-size: clamp(1.25rem, -2.2591875rem + 7.326vw, 2.125rem);
  font-weight: 700;
  margin: 0;
}
.sec-titl02 span,
.c-head02 span {
  font-size: clamp(1.0625rem, 6.227vw - 0.0525rem, 2.125rem);
}

.top-p-and-c .sec-titl02 h3 {
  font-size: clamp(1.25rem, -2.2591875rem + 7.326vw, 3rem);
}

/*************elegant-box********************/
.elegant-box {
  position: relative;
  background-color: #b69262;
  z-index: 1;
}
.elegant-box > div::before, .elegant-box > div::after {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  background: url(../img/front/ico_corner09.png) no-repeat center/contain;
  pointer-events: none;
  z-index: 2;
}
.elegant-box > div::before {
  bottom: 0;
  right: 0;
  transform: scaleY(-1);
}
.elegant-box > div::after {
  bottom: 0;
  left: 0;
  transform: rotate(180deg);
}
.elegant-box::before, .elegant-box::after {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  background: url(../img/front/ico_corner09.png) no-repeat center/contain;
  pointer-events: none;
  z-index: 2;
}
.elegant-box::before {
  top: 0;
  right: 0;
}
.elegant-box::after {
  top: 0;
  left: 0;
  transform: scaleX(-1);
}

/*******************
header
********************/
header.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  transition: transform 0.4s ease, opacity 0.4s ease;
  width: 100%;
  max-height: 5rem;
  padding: 0.5rem 0 0.375rem;
  background-color: #ffeeeb;
}
header.header.is-hidden {
  position: fixed;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 767px) {
  header.header.is-hidden {
    position: fixed;
    top: 0;
    left: 0;
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
}
header.header.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 767px) {
  header.header {
    position: fixed;
  }
}
header.header .inner_1400 {
  justify-content: space-between;
  gap: 6.25rem;
}
@media (max-width: 1100px) {
  header.header .inner_1400 {
    gap: 1.25rem;
  }
}
header.header h1,
header.header .header-logo {
  font-size: 0.6875rem;
  white-space: nowrap;
}
header.header h1 img,
header.header .header-logo img {
  width: 16.875rem;
}

/***********g_nav**************/
.g_nav {
  display: flex;
  align-items: center;
  width: 100%;
}
.g_nav ul.flex {
  gap: 0.5rem;
  width: 100%;
  justify-content: space-between;
}

.g_nav-mega {
  display: grid;
  gap: 0.5rem;
  width: 100%;
}
.g_nav-mega > a {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #3b190d;
  line-height: 1;
  height: 4.375rem;
  padding-top: 1.125rem;
  position: relative;
  border-bottom: 0.25rem solid #ffeeeb;
  transition: 0.3s;
}
.g_nav-mega > a .en {
  font-family: "Times New Roman", "Times", "Baskerville", "Georgia", serif;
  font-weight: bold;
}
.g_nav-mega > a .jp {
  font-size: 0.6875rem;
}
.g_nav-mega > a::before {
  content: "";
  position: absolute;
  width: 0.375rem;
  height: 0.375rem;
  border-top: 2px solid #3b190d;
  border-right: 2px solid #3b190d;
  transform: rotate(135deg);
  right: 0;
  left: 0;
  bottom: 0.375rem;
  margin-left: auto;
  margin-right: auto;
}
.g_nav-mega > a:hover {
  border-bottom: 0.25rem solid #3b190d;
  color: #3b190d;
}
.g_nav-mega:hover .nav-mega-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.nav-mega-menu {
  position: absolute;
  top: 5rem;
  left: 0;
  width: 100vw;
  transform: translateY(-10px);
  z-index: 999;
  opacity: 1;
  visibility: hidden;
  pointer-events: none;
  background-color: #ffeeeb;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
.nav-mega-menu .nav-mega-menu__inner {
  padding: 5% 2% 5%;
}

.nav-mega-menu__body {
  display: grid;
  grid-template-columns: 7.5fr 2.5fr;
  grid-template-rows: auto auto;
  gap: 1.25rem;
}
.nav-mega-menu__body > *:nth-child(1) {
  grid-column: 1;
  grid-row: 1/3;
}
.nav-mega-menu__body > *:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}
.nav-mega-menu__body > *:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}
.nav-mega-menu__body .nav-mega-menu__col {
  display: flex;
  flex-direction: column;
}
.nav-mega-menu__body .nav-mega-menu__col h2 {
  display: inline-block;
  font-size: 1.125rem;
  border-bottom: 1px solid #d4d4d4;
  padding-bottom: 0.625rem;
  margin-bottom: 0.875rem;
  text-align: left;
  font-weight: 700;
  color: #3b190d;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__link a {
  font-size: 0.875rem;
  display: inline-block;
  padding: 0.875rem 0;
  text-decoration: underline;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__txt {
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
}
.nav-mega-menu__body .nav-mega-menu__col h3 {
  position: relative;
  font-size: 0.9375rem;
  padding-left: 1.5em;
  margin-bottom: 0.5rem;
}
.nav-mega-menu__body .nav-mega-menu__col h3::before {
  content: "";
  position: absolute;
  width: 0.8em;
  height: 0.0625rem;
  background-color: #0a0a0a;
  left: 0;
  top: 50%;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list {
  font-size: 0.8125rem;
  padding-left: 2em;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li {
  position: relative;
  padding-left: 1.2em;
  padding-bottom: 0.25rem;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li::before {
  content: ">";
  position: absolute;
  left: 0;
  top: 0;
}
.nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list.col-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.nav-mega-menu__body.v2 {
  display: block;
  max-width: 37.5rem;
  margin-left: auto;
  margin-right: auto;
}
.nav-mega-menu__body.v2 .nav-mega-menu__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.nav-mega-menu__body.v3 {
  display: block;
}
.nav-mega-menu__body.v3 .nav-mega-menu__list {
  display: flex;
  max-width: 18.75rem;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
}

.nav-mega-menu__grid {
  display: grid;
  grid-template-columns: 7fr 3fr;
  gap: 0.75rem;
}

/*****************予約・電話******************/
.fixed-web,
.fixed-tel {
  position: fixed;
  right: 0;
  color: #fff;
  padding: 0.625rem;
  border-radius: 0.625rem 0 0 0.625rem;
  width: 15rem;
  z-index: 9000;
}
.fixed-web a,
.fixed-tel a {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.fixed-web {
  bottom: 2%;
  background: #b69262;
}

.fixed-tel {
  bottom: 15%;
  background: #5a4438;
}

@media (max-width: 767px) {
  .fixed-web,
  .fixed-tel {
    position: fixed;
    bottom: 0;
    height: 3.75rem;
    z-index: 1001;
    right: auto;
  }
  .fixed-web a,
  .fixed-tel a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 0.875rem;
  }
  .fixed-web,
  .fixed-tel {
    width: 100%;
    border-radius: 0;
  }
  .fixed-web .header-web-btn,
  .fixed-web .header-tel-btn,
  .fixed-tel .header-web-btn,
  .fixed-tel .header-tel-btn {
    display: flex;
    gap: 0.375rem;
    border: none;
    padding: 0;
    height: 100%;
  }
  .fixed-web .header-web-btn::before,
  .fixed-web .header-tel-btn::before,
  .fixed-tel .header-web-btn::before,
  .fixed-tel .header-tel-btn::before {
    display: none;
  }
  .fixed-web {
    left: 0;
  }
  .fixed-tel {
    right: 0;
  }
}
.kutikomi-bnr {
  position: fixed;
  bottom: 0.625rem;
  left: 0.625rem;
  width: 21.875rem;
}

/*************************************sp**************************************/
.sp-hamburger,
.nav-info {
  display: none;
}

@media (max-width: 767px) {
  header {
    max-height: none;
    height: 5rem;
    padding: 0.625rem 0;
  }
  header .inner_1400 {
    gap: 0;
    padding: 0 2%;
    align-items: center;
  }
  header h1,
  header .header-logo {
    font-size: 0.625rem;
    line-height: 1.2;
    z-index: 1001;
    transition: color 0.3s ease;
  }
  header h1 a,
  header .header-logo a {
    color: inherit;
    text-decoration: none;
  }
  header h1 picture img,
  header .header-logo picture img {
    width: 11.25rem;
    height: auto;
    transition: filter 0.3s ease;
  }
  body.m-open header h1 picture img,
  body.m-open header div picture img {
    filter: brightness(0) invert(1);
  }
  header:has(.sp-hamburger.is-active) h1,
  header:has(.sp-hamburger.is-active) p.header-logo {
    position: fixed;
    top: 0;
    left: 0;
    background-color: #3b190d;
    padding: 0.625rem 0.4375rem;
    color: #fff;
    width: 100%;
  }
  header .inner_1400 .sp-hamburger {
    display: block;
    position: relative;
    width: 3rem;
    height: 3rem;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1002;
  }
  header .inner_1400 .sp-hamburger span:nth-child(1) {
    position: absolute;
    left: 0.75rem;
    top: 1rem;
    width: 1.5rem;
    height: 2px;
    background-color: #3b190d;
    transition: all 0.3s ease;
  }
  header .inner_1400 .sp-hamburger span:nth-child(1)::before {
    content: "";
    position: absolute;
    left: 0;
    top: -0.5rem;
    width: 100%;
    height: 100%;
    background-color: #3b190d;
    transition: all 0.3s ease;
  }
  header .inner_1400 .sp-hamburger span:nth-child(1)::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0.5rem;
    width: 100%;
    height: 100%;
    background-color: #3b190d;
    transition: all 0.3s ease;
  }
  header .inner_1400 .sp-hamburger .txt-menu,
  header .inner_1400 .sp-hamburger .txt-close {
    position: absolute;
    bottom: 0.375rem;
    left: 0;
    width: 100%;
    font-size: 0.625rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 1;
  }
  header .inner_1400 .sp-hamburger .txt-menu {
    display: block;
    color: #3b190d;
  }
  header .inner_1400 .sp-hamburger .txt-close {
    display: none;
  }
  header .inner_1400 .sp-hamburger.is-active {
    position: fixed;
    top: 0.625rem;
    right: 0.9375rem;
  }
  header .inner_1400 .sp-hamburger.is-active span:nth-child(1) {
    background-color: transparent;
    top: 50%;
    transform: translateY(-50%);
  }
  header .inner_1400 .sp-hamburger.is-active span:nth-child(1)::before {
    top: 0;
    background-color: #fff;
    transform: rotate(45deg);
  }
  header .inner_1400 .sp-hamburger.is-active span:nth-child(1)::after {
    top: 0;
    background-color: #fff;
    transform: rotate(-45deg);
  }
  header .inner_1400 .sp-hamburger.is-active .txt-menu {
    display: none;
  }
  header .inner_1400 .sp-hamburger.is-active .txt-close {
    display: block;
    color: #fff;
    bottom: 0;
  }
  .g_nav {
    position: fixed;
    top: -100vh;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #3b190d;
    z-index: 999;
    overflow-y: auto;
    transition: top 0.35s cubic-bezier(0.25, 1, 0.5, 1);
    padding: 5rem 0 6.25rem;
    box-sizing: border-box;
    display: block;
  }
  .g_nav.is-active {
    top: 0;
    overscroll-behavior: none;
  }
  .g_nav ul.flex {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0;
  }
  .g_nav .sp-nav-ico01,
  .g_nav .sp-nav-ico02,
  .g_nav .sp-nav-ico03,
  .g_nav .sp-nav-ico04,
  .g_nav .sp-nav-ico05,
  .g_nav .sp-nav-ico06,
  .g_nav .sp-nav-ico07,
  .g_nav .sp-nav-ico08,
  .g_nav .sp-nav-ico09,
  .g_nav .sp-nav-ico10,
  .g_nav .sp-nav-ico11,
  .g_nav .sp-nav-ico-price,
  .g_nav .sp-nav-ico-case {
    display: inline-block;
    width: 18px;
    height: 21px;
    margin-right: 0.375rem;
  }
  .g_nav .sp-nav-ico01 {
    background: url(../img/header/sp-nav-ico01.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico02 {
    background: url(../img/header/sp-nav-ico02.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico03 {
    background: url(../img/header/sp-nav-ico03.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico04 {
    background: url(../img/header/sp-nav-ico04.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico05 {
    background: url(../img/header/sp-nav-ico05.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico-price {
    background: url(../img/header/sp-nav-ico-price.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico-case {
    background: url(../img/header/sp-nav-ico-case.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico06 {
    background: url(../img/header/sp-nav-ico06.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico07 {
    background: url(../img/header/sp-nav-ico07.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico08 {
    background: url(../img/header/sp-nav-ico08.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico09 {
    background: url(../img/header/sp-nav-ico09.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico10 {
    background: url(../img/header/sp-nav-ico10.svg) center center/contain no-repeat;
  }
  .g_nav .sp-nav-ico11 {
    background: url(../img/header/sp-nav-ico11.svg) center center/contain no-repeat;
  }
  .g_nav .g_nav-mega,
  .g_nav .no-accordion {
    position: relative;
    display: block;
    width: 100%;
    border-bottom: 1px solid #535353;
  }
  .g_nav .g_nav-mega:first-of-type,
  .g_nav .no-accordion:first-of-type {
    border-top: 1px solid #535353;
  }
  .g_nav .g_nav-mega.g_nav-mega::before, .g_nav .g_nav-mega.g_nav-mega::after,
  .g_nav .no-accordion.g_nav-mega::before,
  .g_nav .no-accordion.g_nav-mega::after {
    content: "";
    position: absolute;
    top: 1.875rem;
    right: 1rem;
    width: 1rem;
    height: 0.0625rem;
    background-color: #b69262;
    transition: all 0.3s ease;
  }
  .g_nav .g_nav-mega.g_nav-mega::before,
  .g_nav .no-accordion.g_nav-mega::before {
    transform: rotate(90deg);
  }
  .g_nav .g_nav-mega.g_nav-mega.is-open::before,
  .g_nav .no-accordion.g_nav-mega.is-open::before {
    transform: rotate(0deg);
    opacity: 0;
  }
  .g_nav .g_nav-mega.no-accordion::before,
  .g_nav .no-accordion.no-accordion::before {
    content: "";
    position: absolute;
    background: url(../img/header/ico_arw_brown01.webp) 0 0/contain no-repeat;
    width: 1.125rem;
    height: 0.25rem;
    top: 50%;
    transform: translateY(-50%);
    right: 1rem;
  }
  .g_nav .g_nav-mega.no-accordion::after,
  .g_nav .no-accordion.no-accordion::after {
    display: none;
  }
  .g_nav .g_nav-mega > a,
  .g_nav .no-accordion > a {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    height: auto;
    padding: 1.125rem 0;
    border-bottom: none;
    text-align: left;
    color: #fff;
    padding-left: 4%;
    padding-right: 4%;
  }
  .g_nav .g_nav-mega > a .en,
  .g_nav .no-accordion > a .en {
    display: none;
  }
  .g_nav .g_nav-mega > a .jp,
  .g_nav .no-accordion > a .jp {
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    display: flex;
    align-items: center;
    font-size: 0.8125rem;
    color: #fff;
  }
  .g_nav .g_nav-mega > a::before,
  .g_nav .no-accordion > a::before {
    display: none;
  }
  .g_nav-mega .nav-mega-menu {
    position: static;
    width: auto;
    transform: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    display: none;
    background-color: #3b190d;
    width: 100%;
  }
  .g_nav-mega .nav-mega-menu .nav-mega-menu__inner {
    padding: 0;
  }
  .nav-mega-menu .nav-mega-menu__body,
  .nav-mega-menu .nav-mega-menu__body.v2,
  .nav-mega-menu .nav-mega-menu__body.v3,
  .g_nav-mega .nav-mega-menu__grid {
    display: block;
    max-width: 100%;
  }
  .nav-mega-menu .nav-mega-menu__body > *,
  .nav-mega-menu .nav-mega-menu__body.v2 > *,
  .nav-mega-menu .nav-mega-menu__body.v3 > *,
  .g_nav-mega .nav-mega-menu__grid > * {
    grid-column: auto;
    grid-row: auto;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col {
    display: block;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col h2,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col h2,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col h2,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col h2 {
    display: none;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__link a,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__link a,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__link a,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__link a {
    display: none;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__txt,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__txt,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__txt,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__txt {
    display: none;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col h3,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col h3,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col h3,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col h3 {
    font-size: 1rem;
    margin-bottom: 0rem;
    color: #fff;
    background-color: #7f5d37;
    font-family: "Noto Sans JP";
    height: 3rem;
    font-weight: bold;
    display: flex;
    align-items: center;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col h3::before,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col h3::before,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col h3::before,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col h3::before {
    display: none;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__list,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__list,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__list {
    padding-left: 0;
    margin: 0;
    background-color: #4b2d20;
    grid-template-columns: repeat(1, 1fr);
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__list li,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__list li,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__list li {
    font-weight: bold;
    width: 84%;
    margin-left: 12%;
    margin-right: 4%;
    padding-bottom: 0;
    padding-left: 1.8em;
    border-top: 1px solid #6f574c;
    order: 0;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li:first-of-type,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__list li:first-of-type,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__list li:first-of-type,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__list li:first-of-type {
    border-top: none;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li a,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__list li a,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__list li a,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__list li a {
    color: #fff;
    height: 3rem;
    display: grid;
    align-items: center;
  }
  .nav-mega-menu .nav-mega-menu__body .nav-mega-menu__col .nav-mega-menu__list li::before,
  .nav-mega-menu .nav-mega-menu__body.v2 .nav-mega-menu__col .nav-mega-menu__list li::before,
  .nav-mega-menu .nav-mega-menu__body.v3 .nav-mega-menu__col .nav-mega-menu__list li::before,
  .g_nav-mega .nav-mega-menu__grid .nav-mega-menu__col .nav-mega-menu__list li::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    width: 0.375rem;
    height: 0.375rem;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translateY(-50%) rotate(45deg);
    display: inline-block;
  }
  .g_nav .flex li:nth-child(1) {
    order: 1;
  }
  .g_nav .flex li:nth-child(2) {
    order: 2;
  }
  .g_nav .flex li:nth-child(3) {
    order: 3;
  }
  .g_nav .flex li:nth-child(4) {
    order: 4;
  }
  .g_nav .flex li:nth-child(5) {
    order: 9;
  }
  .g_nav .flex li:nth-child(6) {
    order: 6;
  }
  .g_nav .flex li:nth-child(7) {
    order: 15;
  }
  .g_nav .flex li:nth-child(8) {
    order: 7;
  }
  .g_nav .flex li:nth-child(9) {
    order: 8;
  }
  .g_nav .flex li:nth-child(10) {
    order: 10;
  }
  .g_nav .flex li:nth-child(11) {
    order: 5;
  }
  .g_nav .flex li:nth-child(12) {
    order: 15;
  }
  .g_nav .flex li:nth-child(13) {
    order: 15;
  }
  /***************nav-info*******************/
  .nav-info {
    padding: 1.875rem 4%;
    text-align: center;
    display: block;
  }
  .nav-info svg path {
    fill: #fff;
  }
  .nav-info-contact__txt {
    font-size: clamp(0.75rem, 0.6065rem + 0.3827vw, 0.9rem);
    color: #b69262;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
  }
  .nav-info-contact__txt::before,
  .nav-info-contact__txt::after {
    content: "";
    background-color: #b69262;
    width: 1px;
    height: 30px;
    position: absolute;
    top: 0;
  }
  .nav-info-contact__txt::before {
    transform: rotate(-25deg);
    left: -0.25rem;
  }
  .nav-info-contact__txt::after {
    transform: rotate(25deg);
    right: -0.25rem;
  }
  .nav-info-contact__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    width: 100%;
    height: 4.5rem;
    position: relative;
    background-color: #7f5d37;
    box-sizing: border-box;
    text-decoration: none;
    padding: 0 1.25rem;
    border-radius: 1.25rem;
    box-shadow: inset 0 0 0 1px #b69262;
    margin: 0 auto 1.875rem;
  }
  .nav-info-contact__btn::before, .nav-info-contact__btn::after,
  .nav-info-contact__btn .btn-icon::before,
  .nav-info-contact__btn .btn-icon::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url(../img/header/ico_corner06.webp);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 2;
    pointer-events: none;
  }
  .nav-info-contact__btn::before {
    top: 0;
    right: 0;
    transform: scaleY(-1);
  }
  .nav-info-contact__btn::after {
    bottom: 0;
    right: 0;
  }
  .nav-info-contact__btn .btn-icon {
    display: flex;
    align-items: center;
    width: 1.625rem;
    height: auto;
    position: static;
  }
  .nav-info-contact__btn .btn-icon::before {
    top: 0;
    left: 0;
    transform: scale(-1, -1);
  }
  .nav-info-contact__btn .btn-icon::after {
    bottom: 0;
    left: 0;
    transform: scaleX(-1);
  }
  .nav-info-contact__btn .btn-icon img {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 3;
  }
  .nav-info-contact__btn .btn-text {
    color: #fff;
    font-size: 1.125rem;
    line-height: 1;
    position: relative;
    z-index: 3;
    padding-right: 1.5625rem;
  }
  .nav-info-contact__btn .btn-text::after {
    content: "";
    background: url(../img/header/ico_arw_brown01.webp) 0 0 no-repeat;
    background-size: contain;
    width: 16px;
    height: 4px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
  }
  .nav-info.v2 {
    padding: 1.25rem 4%;
  }
  .nav-info.v2 .nav-info-contact {
    display: flex;
    justify-content: center;
    gap: 1rem;
  }
  .nav-info.v2 a {
    color: #fff;
    font-size: 0.75rem;
  }
  .nav-info.v3 {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.625rem 4%;
    gap: 1rem;
  }
  .nav-info.v3 .nav-info-sns.flex {
    flex-direction: column;
    gap: 0.625rem;
  }
  .nav-info.v3 .nav-info-sns a {
    display: grid;
    align-items: center;
    justify-content: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    background-color: #51311c;
  }
  .nav-info.v3 .sp-nav-insta {
    display: inline-block;
    width: 1.375rem;
    height: 1.375rem;
    background: url(../img/header/Instagram-icon.svg) center center/contain no-repeat;
  }
  .nav-info.v3 .sp-nav-line {
    display: inline-block;
    width: 1.625rem;
    height: 1.625rem;
    background: url(../img/header/line-icon.svg) center center/contain no-repeat;
  }
  .nav-info.v3 .nav-info-sns_item {
    display: flex;
    align-items: center;
    gap: 1rem;
  }
  .nav-info.v3 .nav-info-sns_item p {
    color: #fff;
  }
}
/*************mdl-overlay*******************/
.mdl-card {
  padding: 20px 20px 40px;
  border-bottom: 1px dashed #d6587c;
}
.mdl-card:last-of-type {
  margin-top: 10px;
  margin-bottom: 0;
  border: none;
}
.mdl-card h3 {
  font-size: 1.5rem;
  font-weight: bold;
  color: #3b190d;
  margin: 0 0 15px;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .mdl-card {
    padding: 10px 0px 30px;
  }
  .mdl-card h3 {
    font-size: 1.25rem;
    text-align: center;
  }
  .mdl-card a {
    min-width: inherit;
    width: 100%;
  }
}

.m-line {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 33px;
  padding: 12px 15px;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  height: 5.25rem;
  min-width: 230px;
  transition: background-color 0.2s ease, color 0.2s ease;
  box-sizing: border-box;
  gap: 0.625rem;
  flex: 1;
  z-index: 1;
  background-color: #fff;
  color: #3b190d;
  border: none;
  box-shadow: 0 0 0 1px #b69262 inset;
}
.m-line span:last-child {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.3;
  position: static;
  font-size: 120%;
}
.m-line small {
  font-size: 12px;
  font-weight: normal;
  display: block;
  white-space: nowrap;
}
.m-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(-90deg);
  background-image: url("../img/front/ico_corner05-invert.svg");
}
.m-line::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  background-image: url("../img/front/ico_corner05-invert.svg");
}
.m-line span:last-child::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(180deg);
  background-image: url("../img/front/ico_corner05-invert.svg");
}
.m-line span:last-child::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(90deg);
  background-image: url("../img/front/ico_corner05-invert.svg");
}
.m-line:hover {
  background-color: #b69262;
  color: #fff;
}
.m-line:hover img {
  filter: brightness(0) invert(1);
}
.m-line:hover::before, .m-line:hover::after {
  background-image: url("../img/front/ico_corner05.svg");
}
.m-line:hover span:last-child::before, .m-line:hover span:last-child::after {
  background-image: url("../img/front/ico_corner05.svg");
}
@media (max-width: 767px) {
  .m-line {
    min-width: inherit;
    width: 100%;
    border-radius: 22px;
  }
  .m-line::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(-90deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
  .m-line::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
  .m-line span:last-child::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(180deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
  .m-line span:last-child::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(90deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
  .m-line:hover::before, .m-line:hover::after {
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
  .m-line:hover span:last-child::before, .m-line:hover span:last-child::after {
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
}

.mdl-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 2000;
  box-sizing: border-box;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Noto Sans JP";
}
.mdl-overlay:target {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  overscroll-behavior: none;
}
.mdl-overlay > div {
  position: relative;
  background-color: #fff;
  border-radius: 12px;
  width: 100%;
  max-width: 820px;
  padding: 40px 30px 30px;
  box-sizing: border-box;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  max-height: calc(100vh - 40px);
  overflow-y: auto;
}
.mdl-overlay > div::before, .mdl-overlay > div::after {
  content: "";
  position: absolute;
  width: calc(100% - 30px);
  height: calc(100% - 40px);
  mix-blend-mode: multiply;
}
.mdl-overlay > div::before {
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  bottom: 0;
  right: 0;
  background: #f7f6f2;
}
.mdl-overlay > div::after {
  clip-path: polygon(0 0, 100% 100%, 0 100%);
  bottom: 0;
  left: 0;
  background: #f1f0e7;
}
.mdl-overlay .mdl-close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  position: absolute;
  top: 15px;
  right: 15px;
  width: 32px;
  height: 32px;
  display: block;
  cursor: pointer;
}
.mdl-overlay .mdl-close::before, .mdl-overlay .mdl-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background-color: #999;
  transition: background-color 0.2s ease;
}
.mdl-overlay .mdl-close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.mdl-overlay .mdl-close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.mdl-overlay .mdl-close:hover::before, .mdl-overlay .mdl-close:hover::after {
  background-color: #333;
}
.mdl-overlay p {
  font-size: 0.875rem;
  font-weight: bold;
  color: #d6587c;
  text-align: left;
}
.mdl-overlay .mdl-grid-cv {
  display: flex;
  align-items: center;
  gap: 10px;
}
.mdl-overlay .mdl-grid-cv img {
  width: 38px;
  height: 36px;
  transition: filter 0.3s ease;
}
.mdl-overlay .mdl-grid-cv a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 33px;
  padding: 12px 15px;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  height: 70px;
  min-width: 230px;
  transition: background-color 0.2s ease, color 0.2s ease;
  box-sizing: border-box;
  gap: 0.625rem;
  flex: 1;
  z-index: 1;
}
.mdl-overlay .mdl-grid-cv a span:last-child {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.3;
  position: static;
}
.mdl-overlay .mdl-grid-cv a small {
  font-size: 12px;
  font-weight: normal;
  display: block;
  white-space: nowrap;
}
.mdl-overlay .m-tel,
.mdl-overlay .m-web {
  border: none;
  box-shadow: 0 0 0 1px #b69262 inset;
}
.mdl-overlay .m-tel::before,
.mdl-overlay .m-web::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(-90deg);
}
.mdl-overlay .m-tel::after,
.mdl-overlay .m-web::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
}
.mdl-overlay .m-tel span:last-child::before,
.mdl-overlay .m-web span:last-child::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(180deg);
}
.mdl-overlay .m-tel span:last-child::after,
.mdl-overlay .m-web span:last-child::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 30px;
  height: 30px;
  background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
  pointer-events: none;
  z-index: -1;
  transition: background-image 0.2s ease;
  transform: rotate(90deg);
}
.mdl-overlay .m-tel {
  background-color: #b69262;
  color: #fff;
  cursor: default;
  pointer-events: none;
}
.mdl-overlay .m-tel small {
  color: #fff;
  transition: color 0.2s ease;
}
.mdl-overlay .m-web {
  background-color: #b69262;
  color: #fff;
}
.mdl-overlay .m-web:hover {
  background-color: #fff;
  color: #b69262;
}
.mdl-overlay .m-web:hover img {
  filter: brightness(0) saturate(100%) invert(64%) sepia(19%) saturate(823%) hue-rotate(355deg) brightness(88%) contrast(85%);
}
.mdl-overlay .m-web:hover::before, .mdl-overlay .m-web:hover::after {
  background-image: url("../img/front/ico_corner05-invert.svg");
}
.mdl-overlay .m-web:hover span:last-child::before, .mdl-overlay .m-web:hover span:last-child::after {
  background-image: url("../img/front/ico_corner05-invert.svg");
}
@media (max-width: 767px) {
  .mdl-overlay > div {
    width: calc(100% - 20px);
    padding: 20px;
    overflow: hidden;
  }
  .mdl-overlay p {
    font-size: 0.875rem;
  }
  .mdl-overlay .mdl-grid-cv {
    flex-direction: column;
  }
  .mdl-overlay .mdl-grid-cv a {
    border-radius: 1.375rem;
  }
  .mdl-overlay .mdl-grid-cv .m-tel,
  .mdl-overlay .mdl-grid-cv .m-web {
    border-radius: 22px;
  }
  .mdl-overlay .mdl-grid-cv .m-tel {
    cursor: pointer;
    pointer-events: auto;
  }
  .mdl-overlay .mdl-grid-cv .m-tel:hover {
    background-color: #fff;
    color: #b69262;
  }
  .mdl-overlay .mdl-grid-cv .m-tel:hover small {
    color: #b69262;
  }
  .mdl-overlay .mdl-grid-cv .m-tel:hover img {
    filter: brightness(0) saturate(100%) invert(64%) sepia(19%) saturate(823%) hue-rotate(355deg) brightness(88%) contrast(85%);
  }
  .mdl-overlay .mdl-grid-cv .m-tel::before,
  .mdl-overlay .mdl-grid-cv .m-web::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(-90deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
  .mdl-overlay .mdl-grid-cv .m-tel::after,
  .mdl-overlay .mdl-grid-cv .m-web::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
  .mdl-overlay .mdl-grid-cv .m-tel span:last-child::before,
  .mdl-overlay .mdl-grid-cv .m-web span:last-child::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(180deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
  .mdl-overlay .mdl-grid-cv .m-tel span:last-child::after,
  .mdl-overlay .mdl-grid-cv .m-web span:last-child::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background: url("../img/front/ico_corner05.svg") no-repeat center/contain;
    pointer-events: none;
    z-index: -1;
    transition: background-image 0.2s ease;
    transform: rotate(90deg);
    width: 20px;
    height: 20px;
    background-image: url("../img/front/ico_corner05-sp.svg");
  }
  .mdl-overlay .mdl-grid-cv .m-tel:hover::before, .mdl-overlay .mdl-grid-cv .m-tel:hover::after,
  .mdl-overlay .mdl-grid-cv .m-web:hover::before,
  .mdl-overlay .mdl-grid-cv .m-web:hover::after {
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
  .mdl-overlay .mdl-grid-cv .m-tel:hover span:last-child::before, .mdl-overlay .mdl-grid-cv .m-tel:hover span:last-child::after,
  .mdl-overlay .mdl-grid-cv .m-web:hover span:last-child::before,
  .mdl-overlay .mdl-grid-cv .m-web:hover span:last-child::after {
    background-image: url("../img/front/ico_corner05-invert-sp.svg");
  }
}

/*******************
mv
********************/
main {
  padding-top: 5rem;
  overflow: hidden;
  position: relative;
}
@media (max-width: 767px) {
  main {
    padding-top: 4.375rem;
    padding-bottom: 3.75rem;
  }
}
main::before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 80px;
  background-color: #ffeeeb;
  top: 0;
}

.top-mv {
  position: relative;
}

/**************mvtext*************/
.top-mv-text-box {
  position: absolute;
  top: 0;
  right: 0;
  padding-right: 2.5rem;
}
.top-mv-text-box .elegant-btn {
  margin: 1.25rem 0 0 auto;
}
.top-mv-text-box .top-tel-btn_wrap {
  opacity: 0;
  animation: top-fadeInContainer 3s ease forwards;
  animation-delay: 2s;
  text-align: right;
}
.top-mv-text-box .top-tel-btn_wrap .top-tel-btn-text {
  font-size: 0.85rem;
  color: #3b190d;
  padding-top: 0.375rem;
  margin-bottom: 1.875rem;
}
.top-mv-text-box .top-mv-h2 {
  padding: 1.875rem;
  background-color: hsla(16, 64%, 14%, 0.6);
  max-width: 47.25rem;
}
.top-mv-text-box .top-mv-h2 h2 {
  color: #fff;
  font-size: 2.5rem;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.top-mv-text-box .top-mv-h2 p {
  color: #fff;
  font-size: 1.25rem;
  line-height: 2;
}
@media (max-width: 767px) {
  .top-mv-text-box {
    padding-right: 0;
  }
  .top-mv-text-box .top-tel-btn_wrap {
    display: none;
  }
  .top-mv-text-box .top-mv-h2 {
    padding: 0.625rem;
    max-width: 70%;
    margin: 6.25rem 0.625rem 0 auto;
  }
  .top-mv-text-box .top-mv-h2 h2 {
    font-size: 1.0625rem;
  }
  .top-mv-text-box .top-mv-h2 .top-mv-text {
    font-size: 0.75rem;
  }
}

@keyframes top-fadeInContainer {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.top-mv-text span {
  display: inline-block;
  opacity: 0;
  animation: fadeInChar 0.5s ease forwards;
}
.top-mv-text span:nth-of-type(1) {
  animation-delay: 0.9s;
}
.top-mv-text span:nth-of-type(2) {
  animation-delay: 1s;
}
.top-mv-text span:nth-of-type(3) {
  animation-delay: 1.1s;
}
.top-mv-text span:nth-of-type(4) {
  animation-delay: 1.2s;
}
.top-mv-text span:nth-of-type(5) {
  animation-delay: 1.3s;
}
.top-mv-text span:nth-of-type(6) {
  animation-delay: 1.4s;
}
.top-mv-text span:nth-of-type(7) {
  animation-delay: 1.5s;
}
.top-mv-text span:nth-of-type(8) {
  animation-delay: 1.6s;
}
.top-mv-text span:nth-of-type(9) {
  animation-delay: 1.7s;
}
.top-mv-text span:nth-of-type(10) {
  animation-delay: 1.8s;
}
.top-mv-text span:nth-of-type(11) {
  animation-delay: 1.9s;
}
.top-mv-text span:nth-of-type(12) {
  animation-delay: 2s;
}
.top-mv-text span:nth-of-type(13) {
  animation-delay: 2.1s;
}
.top-mv-text span:nth-of-type(14) {
  animation-delay: 2.2s;
}
.top-mv-text span:nth-of-type(15) {
  animation-delay: 2.3s;
}
.top-mv-text span:nth-of-type(16) {
  animation-delay: 2.4s;
}
.top-mv-text span:nth-of-type(17) {
  animation-delay: 2.5s;
}
.top-mv-text span:nth-of-type(18) {
  animation-delay: 2.6s;
}
.top-mv-text span:nth-of-type(19) {
  animation-delay: 2.7s;
}
.top-mv-text span:nth-of-type(20) {
  animation-delay: 2.8s;
}
.top-mv-text span:nth-of-type(21) {
  animation-delay: 2.9s;
}
.top-mv-text span:nth-of-type(22) {
  animation-delay: 3s;
}
.top-mv-text span:nth-of-type(23) {
  animation-delay: 3.1s;
}
.top-mv-text span:nth-of-type(24) {
  animation-delay: 3.2s;
}
.top-mv-text span:nth-of-type(25) {
  animation-delay: 3.3s;
}
.top-mv-text span:nth-of-type(26) {
  animation-delay: 3.4s;
}
.top-mv-text span:nth-of-type(27) {
  animation-delay: 3.5s;
}
.top-mv-text span:nth-of-type(28) {
  animation-delay: 3.6s;
}
.top-mv-text span:nth-of-type(29) {
  animation-delay: 3.7s;
}
.top-mv-text span:nth-of-type(30) {
  animation-delay: 3.8s;
}
.top-mv-text span:nth-of-type(31) {
  animation-delay: 3.9s;
}
.top-mv-text span:nth-of-type(32) {
  animation-delay: 4s;
}
.top-mv-text span:nth-of-type(33) {
  animation-delay: 4.1s;
}
.top-mv-text span:nth-of-type(34) {
  animation-delay: 4.2s;
}
.top-mv-text span:nth-of-type(35) {
  animation-delay: 4.3s;
}
.top-mv-text span:nth-of-type(36) {
  animation-delay: 4.4s;
}
.top-mv-text span:nth-of-type(37) {
  animation-delay: 4.5s;
}
.top-mv-text span:nth-of-type(38) {
  animation-delay: 4.6s;
}
.top-mv-text span:nth-of-type(39) {
  animation-delay: 4.7s;
}
.top-mv-text span:nth-of-type(40) {
  animation-delay: 4.8s;
}
.top-mv-text span:nth-of-type(41) {
  animation-delay: 4.9s;
}
.top-mv-text span:nth-of-type(42) {
  animation-delay: 5s;
}
.top-mv-text span:nth-of-type(43) {
  animation-delay: 5.1s;
}
.top-mv-text span:nth-of-type(44) {
  animation-delay: 5.2s;
}
.top-mv-text span:nth-of-type(45) {
  animation-delay: 5.3s;
}
.top-mv-text span:nth-of-type(46) {
  animation-delay: 5.4s;
}
.top-mv-text span:nth-of-type(47) {
  animation-delay: 5.5s;
}
.top-mv-text span:nth-of-type(48) {
  animation-delay: 5.6s;
}
.top-mv-text span:nth-of-type(49) {
  animation-delay: 5.7s;
}
.top-mv-text span:nth-of-type(50) {
  animation-delay: 5.8s;
}
.top-mv-text span:nth-of-type(51) {
  animation-delay: 5.9s;
}
.top-mv-text span:nth-of-type(52) {
  animation-delay: 6s;
}
.top-mv-text span:nth-of-type(53) {
  animation-delay: 6.1s;
}
.top-mv-text span:nth-of-type(54) {
  animation-delay: 6.2s;
}
.top-mv-text span:nth-of-type(55) {
  animation-delay: 6.3s;
}
.top-mv-text span:nth-of-type(56) {
  animation-delay: 6.4s;
}
.top-mv-text span:nth-of-type(57) {
  animation-delay: 6.5s;
}
.top-mv-text span:nth-of-type(58) {
  animation-delay: 6.6s;
}
.top-mv-text span:nth-of-type(59) {
  animation-delay: 6.7s;
}
.top-mv-text span:nth-of-type(60) {
  animation-delay: 6.8s;
}
.top-mv-text span:nth-of-type(61) {
  animation-delay: 6.9s;
}
.top-mv-text span:nth-of-type(62) {
  animation-delay: 7s;
}
.top-mv-text span:nth-of-type(63) {
  animation-delay: 7.1s;
}
.top-mv-text span:nth-of-type(64) {
  animation-delay: 7.2s;
}
.top-mv-text span:nth-of-type(65) {
  animation-delay: 7.3s;
}
.top-mv-text span:nth-of-type(66) {
  animation-delay: 7.4s;
}
.top-mv-text span:nth-of-type(67) {
  animation-delay: 7.5s;
}
.top-mv-text span:nth-of-type(68) {
  animation-delay: 7.6s;
}
.top-mv-text span:nth-of-type(69) {
  animation-delay: 7.7s;
}
.top-mv-text span:nth-of-type(70) {
  animation-delay: 7.8s;
}
.top-mv-text span:nth-of-type(71) {
  animation-delay: 7.9s;
}
.top-mv-text span:nth-of-type(72) {
  animation-delay: 8s;
}
.top-mv-text span:nth-of-type(73) {
  animation-delay: 8.1s;
}
.top-mv-text span:nth-of-type(74) {
  animation-delay: 8.2s;
}
.top-mv-text span:nth-of-type(75) {
  animation-delay: 8.3s;
}
.top-mv-text span:nth-of-type(76) {
  animation-delay: 8.4s;
}
.top-mv-text span:nth-of-type(77) {
  animation-delay: 8.5s;
}
.top-mv-text span:nth-of-type(78) {
  animation-delay: 8.6s;
}
.top-mv-text span:nth-of-type(79) {
  animation-delay: 8.7s;
}
.top-mv-text span:nth-of-type(80) {
  animation-delay: 8.8s;
}
.top-mv-text span:nth-of-type(81) {
  animation-delay: 8.9s;
}
.top-mv-text span:nth-of-type(82) {
  animation-delay: 9s;
}
.top-mv-text span:nth-of-type(83) {
  animation-delay: 9.1s;
}
.top-mv-text span:nth-of-type(84) {
  animation-delay: 9.2s;
}
.top-mv-text span:nth-of-type(85) {
  animation-delay: 9.3s;
}
.top-mv-text span:nth-of-type(86) {
  animation-delay: 9.4s;
}
.top-mv-text span:nth-of-type(87) {
  animation-delay: 9.5s;
}
.top-mv-text span:nth-of-type(88) {
  animation-delay: 9.6s;
}
.top-mv-text span:nth-of-type(89) {
  animation-delay: 9.7s;
}
.top-mv-text span:nth-of-type(90) {
  animation-delay: 9.8s;
}
.top-mv-text span:nth-of-type(91) {
  animation-delay: 9.9s;
}
.top-mv-text span:nth-of-type(92) {
  animation-delay: 10s;
}
.top-mv-text span:nth-of-type(93) {
  animation-delay: 10.1s;
}
.top-mv-text span:nth-of-type(94) {
  animation-delay: 10.2s;
}
.top-mv-text span:nth-of-type(95) {
  animation-delay: 10.3s;
}
.top-mv-text span:nth-of-type(96) {
  animation-delay: 10.4s;
}
.top-mv-text span:nth-of-type(97) {
  animation-delay: 10.5s;
}
.top-mv-text span:nth-of-type(98) {
  animation-delay: 10.6s;
}
.top-mv-text span:nth-of-type(99) {
  animation-delay: 10.7s;
}
.top-mv-text span:nth-of-type(100) {
  animation-delay: 10.8s;
}

@keyframes fadeInChar {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*******************
top-cont
********************/
.campaign-bnr {
  margin: 20px auto 30px;
}

.campaign-bnr img {
  margin: 0 auto;
}

/************top-case-slider****************/
.best_case {
  padding: 3.75rem 0;
}
.best_case h2 {
  margin-bottom: 1.875rem;
}

#top-case {
  max-width: 1920px;
  padding: 20px 30px;
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  #top-case {
    padding: 20px 25px;
  }
}
#top-case .top-case-slider {
  margin: 0 -8px;
}
#top-case .top-case-slider__item {
  padding: 0 8px;
  box-sizing: border-box;
}
#top-case .top-case-slider__item article {
  background: #fff;
  border: 1px solid #c9b18b;
  border-radius: 8px;
  padding: 20px 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
  height: 100%;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  color: #3b190d;
}
#top-case .top-case-slider__item h3 {
  font-size: 15px;
  color: #3b190d;
  margin: 0 0 15px 0;
  text-align: center;
  font-weight: 500;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #3b190d;
}
#top-case .top-case-slider__item figure {
  display: flex;
  margin: 0 0 15px 0;
  padding: 0;
}
#top-case .top-case-slider__item figure > div {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#top-case .top-case-slider__item figure span {
  display: block;
  width: 100%;
  padding-top: 75%;
  background-size: cover;
  background-position: center;
  background-color: #f7f7f5;
}
#top-case .top-case-slider__item figure div:first-of-type span {
  border-radius: 4px 0 0 4px;
}
#top-case .top-case-slider__item figure div:last-of-type span {
  border-radius: 0 4px 4px 0;
}
#top-case .top-case-slider__item figcaption {
  font-size: 12px;
  text-align: center;
  margin: 0 0 4px 0;
  font-weight: 600;
}
#top-case .top-case-slider__item h4 {
  font-size: 15px;
  text-align: center;
  background: #fff2ea;
  padding: 8px 12px;
  margin: 12px 0 0 20px;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: background 0.2s ease;
}
#top-case .top-case-slider__item h4:hover {
  background: #b69262;
  color: #fff;
}
#top-case .top-case-slider__item h4::after {
  content: "";
  position: absolute;
}
#top-case .top-case-slider__item h4.is-active::after {
  transform: translateY(-30%) rotate(-135deg);
}
#top-case .top-case-slider__item .top-case-accordion-cont {
  display: none;
  margin-top: 8px;
}
#top-case .top-case-slider__item table {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
  color: #111;
}
#top-case .top-case-slider__item th,
#top-case .top-case-slider__item td {
  padding: 8px 6px;
  border-bottom: 1px solid #eee;
  text-align: left;
  vertical-align: top;
}
#top-case .top-case-slider__item th {
  width: 35%;
  font-weight: bold;
  background: #fafaf9;
}
#top-case .top-case-slider__item td {
  width: 65%;
}
#top-case .top-case-slider__item p {
  margin: 15px 0 0 0;
  text-align: center;
  margin-top: auto;
  padding-top: 1em;
}
#top-case .top-case-slider__item p a {
  display: inline-block;
  width: 100%;
  max-width: 160px;
  padding: 8px 15px;
  background-color: #3b190d;
  color: #fff;
  border: 1px solid #3b190d;
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  box-sizing: border-box;
  border-radius: 0.25rem;
}
#top-case .top-case-slider__item p a:hover {
  background-color: #fff;
  color: #3b190d;
}

#top-case .slick-prev,
#top-case .slick-next {
  width: 40px;
  height: 40px;
  z-index: 10;
}
#top-case .slick-prev {
  left: -20px;
}
#top-case .slick-next {
  right: -20px;
}
#top-case .slick-prev:before,
#top-case .slick-next:before {
  font-size: 30px;
  color: #b69262;
  opacity: 1;
}

/*******************
TOPメニュー一覧
********************/
.top-menu-list-sec {
  padding: 0 0.9375rem 4.375rem;
}
.top-menu-list-sec input[type=radio] {
  display: none;
}
.top-menu-list-sec .tab-panel {
  display: none;
}
.top-menu-list-sec #tab-ctrl-1:checked ~ .tab-contents #panel-content-1,
.top-menu-list-sec #tab-ctrl-2:checked ~ .tab-contents #panel-content-2 {
  display: block;
}
.top-menu-list-sec .tab-menu {
  display: flex;
  justify-content: space-between;
  list-style: none;
  margin-bottom: 0;
  padding: 0;
  gap: 6px;
}
.top-menu-list-sec .tab-menu li {
  width: 50%;
}
.top-menu-list-sec .tab-menu label {
  display: block;
  padding: 14px 0;
  background: #e8e8e8;
  color: #444;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: background 0.2s, color 0.2s;
}
.top-menu-list-sec #tab-ctrl-1:checked ~ .tab-menu label[for=tab-ctrl-1],
.top-menu-list-sec #tab-ctrl-2:checked ~ .tab-menu label[for=tab-ctrl-2] {
  background-color: #fee4d6;
  color: #3b190d;
  pointer-events: none;
}
.top-menu-list-sec .list-wrap {
  display: flex;
  gap: 20px;
  border: 1px solid #e8e8e8;
  padding: 10px;
  align-items: flex-start;
  margin-bottom: 1.25rem;
}
.top-menu-list-sec .list-wrap.top-list-wrap {
  margin-bottom: 3.75rem;
}
.top-menu-list-sec .list-col {
  flex: 1;
  min-width: 0;
  width: 50%;
}
.top-menu-list-sec .list-ttl {
  background: #f7f6f2;
  text-align: center;
  font-weight: 600;
  font-size: 1.4rem;
  padding: 9px 0;
  margin-bottom: 15px;
}
.top-menu-list-sec .list-items {
  list-style: none;
}
.top-menu-list-sec .list-items a:hover {
  color: #ed7470;
  opacity: 1;
}
.top-menu-list-sec .list-items li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 15px;
  margin-bottom: 12px;
}
.top-menu-list-sec .storesd {
  display: inline-flex;
  gap: 5px;
  flex-shrink: 0;
  min-width: 120px;
}
.top-menu-list-sec .storesd span {
  display: inline-block;
  padding: 2px 10px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  border-radius: 20px;
  text-align: center;
}
.top-menu-list-sec .storesd .umeda {
  background: #ed7470;
}
.top-menu-list-sec .storesd .kobe {
  background: #b54151;
}
@media (max-width: 767px) {
  .top-menu-list-sec .tab-menu label {
    padding: 9px 0;
    font-size: 1.125rem;
  }
  .top-menu-list-sec .list-wrap {
    flex-direction: column;
    gap: 30px;
    padding: 15px;
  }
  .top-menu-list-sec .list-col {
    width: 100%;
  }
  .top-menu-list-sec .list-ttl {
    font-size: 1.4rem;
  }
  .top-menu-list-sec .list-items li {
    font-size: 1.3rem;
    flex-direction: column;
    margin-bottom: 6px;
    gap: 2px;
  }
  .top-menu-list-sec .list-items li a {
    text-align: right;
    width: 100%;
    font-size: 1rem;
  }
  .top-menu-list-sec .tab-panel:nth-of-type(2) .list-items li a {
    text-align: left;
  }
  .top-menu-list-sec .top-menu-list-sec .stores span {
    font-size: 10px;
  }
}

.top-menu-list-sec .list-items.top-case-item li {
  display: inline-block;
}
.top-menu-list-sec .list-items.top-case-item li a {
  display: inline-block;
  border: 1px solid #a16767;
  padding: 4px 10px;
  border-radius: 4px;
  background-color: #fdf7f7;
  font-size: 14px;
}
.top-menu-list-sec .list-items.top-case-item li a::before {
  content: ">";
  margin-right: 5px;
  color: #a16767;
  font-size: 0.9em;
}
.top-menu-list-sec .list-items.top-case-item li a:hover {
  background-color: #a16767;
  color: #fff;
}
.top-menu-list-sec .list-items.top-case-item li a:hover::before {
  color: #fff;
}

/*******************
.top-p-and-c
********************/
.top-p-and-c h2,
.top-internist h2,
.top-firstuser .inner_1400 h2 {
  font-size: clamp(20px, 2.2117vw + 3.0363px, 34px);
  text-align: center;
  margin-bottom: clamp(22px, 5.819vw - 21.47px, 60px);
  font-weight: bold;
}
.top-p-and-c > p,
.top-internist > p,
.top-firstuser .inner_1400 > p {
  font-size: clamp(0.875rem, -0.034rem + 1.896vw, 1.625rem);
  margin-bottom: 60px;
  line-height: 2;
  text-align: center;
  padding: 0 0.9375rem;
}
@media (max-width: 767px) {
  .top-p-and-c > p,
  .top-internist > p,
  .top-firstuser .inner_1400 > p {
    text-align: left;
  }
}

.top-internist > p,
.top-firstuser .inner_1400 > p {
  font-size: clamp(0.875rem, 0.269rem + 1.264vw, 1.375rem);
}

.top-p-and-c-area {
  display: flex;
  align-items: center;
  position: relative;
}
.top-p-and-c-area.is-reverse {
  flex-direction: row-reverse;
}
.top-p-and-c-area.is-reverse .top-p-and-c__box {
  margin: 0 -7% 0 -2%;
}
@media (max-width: 767px) {
  .top-p-and-c-area.is-reverse .top-p-and-c__box {
    margin: -35px -30px 0 36px;
  }
}
@media (max-width: 767px) {
  .top-p-and-c-area {
    display: block;
  }
}
.top-p-and-c-area figure {
  width: 44%;
  max-width: 570px;
  margin: 0;
}
@media (max-width: 767px) {
  .top-p-and-c-area figure {
    width: auto;
    max-width: none;
    min-width: 0;
    margin: 0 36px 0 -20px;
  }
}
.top-p-and-c-area figure img {
  display: block;
  width: 100%;
  height: auto;
}

.top-p-and-c__box {
  flex: 1;
  display: flex;
  border: 10px solid #f9dfd1;
  padding: 4px;
  margin: 0 -2% 0 -7%;
  min-height: 250px;
  box-sizing: border-box;
  position: relative;
}
@media (max-width: 767px) {
  .top-p-and-c__box {
    display: block;
    border: 5px solid #fee4d6;
    padding: 2px;
    min-height: 0;
    margin: -35px -30px 0 36px;
  }
}
.top-p-and-c__box.green {
  border-color: #c7e2dc;
}
.top-p-and-c__box.green ul {
  flex-direction: column;
  max-width: 300px;
}
.top-p-and-c__box.green li {
  margin: 8px;
  width: 100%;
}
.top-p-and-c__box.green li:nth-child(n+3) {
  margin: 8px;
}
.top-p-and-c__box > div {
  display: flex;
  align-items: center;
  width: 100%;
  background-color: #f9dfd1;
  padding: 40px 10%;
  box-sizing: border-box;
}
.top-p-and-c__box > div.green {
  background-color: #c7e2dc;
  justify-content: center;
}
@media (max-width: 767px) {
  .top-p-and-c__box > div {
    display: block;
    background-color: #fee4d6;
    padding: 0 25px;
  }
}
.top-p-and-c__box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 -15px;
  padding: 0;
  width: 100%;
  list-style: none;
}
@media (max-width: 767px) {
  .top-p-and-c__box ul {
    display: block;
    margin: 0;
    padding: 10px 0;
  }
}
.top-p-and-c__box li {
  width: calc(50% - 30px);
  margin: 0 15px;
}
.top-p-and-c__box li:nth-child(n+3) {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .top-p-and-c__box li + li {
    border-top: 1px solid #e9d9d5;
  }
}
@media (max-width: 767px) {
  .top-p-and-c__box li {
    width: auto;
    margin: 0;
  }
  .top-p-and-c__box li:nth-child(n+3) {
    margin-top: 0;
  }
}
.top-p-and-c__box li a {
  display: block;
  position: relative;
  text-decoration: none;
  font-weight: 600;
  line-height: 1.5;
  padding: 0 0 0 20px;
  color: inherit;
  transition: all 0.3s ease;
  color: #3b190d;
}
.top-p-and-c__box li a:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #3b190d;
  border-right: 1px solid #3b190d;
  transform: rotate(45deg);
}
@media (max-width: 767px) {
  .top-p-and-c__box li a:before {
    top: 18px;
  }
}
.top-p-and-c__box li a:hover {
  color: #b69262;
}
@media (max-width: 767px) {
  .top-p-and-c__box li a {
    padding: 12px 0 12px 15px;
  }
}

.top-face,
.top-skin,
.top-body {
  padding-bottom: 60px;
}
@media (max-width: 767px) {
  .top-face,
  .top-skin,
  .top-body {
    padding-bottom: 35px;
  }
}
.top-face .inner_1400,
.top-skin .inner_1400,
.top-body .inner_1400 {
  position: relative;
  overflow: hidden;
}
.top-face .inner_1400:before,
.top-skin .inner_1400:before,
.top-body .inner_1400:before {
  content: "";
  position: absolute;
  top: 0;
}
@media (max-width: 767px) {
  .top-face .inner_1400:before,
  .top-skin .inner_1400:before,
  .top-body .inner_1400:before {
    width: 105px;
    height: 127px;
    top: 0;
    right: -2rem;
  }
}

.top-body {
  margin-bottom: 6.25rem;
}

.top-face .inner_1400:before {
  background: url(../img/front/img_face_icon01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 244px;
  height: 279px;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 767px) {
  .top-face .inner_1400:before {
    width: 105px;
    height: 127px;
    top: 0;
    right: -2rem;
  }
}

.top-skin .inner_1400:before {
  background: url(../img/front/img_skin_icon01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 300px;
  height: 206px;
  position: absolute;
  top: 7rem;
  left: 0;
}
@media (max-width: 767px) {
  .top-skin .inner_1400:before {
    width: 8.875rem;
    height: 6.125rem;
    top: 2rem;
    left: 0;
  }
}
@media (max-width: 767px) {
  .top-skin .inner_1400 .top-p-and-c-area.is-reverse {
    top: 0.625rem;
  }
  .top-skin .inner_1400 .top-p-and-c-area.is-reverse figure {
    margin: 0 -1.25rem 0 2.25rem;
  }
  .top-skin .inner_1400 .top-p-and-c-area.is-reverse .top-p-and-c__box {
    margin: -2.1875rem 2.25rem 1rem -1.875rem;
  }
}

.top-body .inner_1400:before {
  background: url(../img/front/img_body_icon01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 350px;
  height: 244px;
  position: absolute;
  top: 5rem;
  right: -3.125rem;
}
@media (max-width: 767px) {
  .top-body .inner_1400:before {
    width: 10.9375rem;
    height: 7.625rem;
    top: 1rem;
    right: -2rem;
  }
}

.top-internist {
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
}
.top-internist:before {
  content: "";
  position: absolute;
  background: url(../img/front/img_internist_icon01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 366px;
  height: 313px;
  top: -77px;
  left: -160px;
  z-index: -1;
}
@media (max-width: 767px) {
  .top-internist:before {
    width: 10rem;
    height: 9.0625rem;
    top: -2.75rem;
    left: -2rem;
  }
}

.top-internist .inner_1400:before {
  display: none;
}

/*******************
人気施術メニュー
********************/
.top-popular {
  margin-bottom: 3.75rem;
}
@media (max-width: 767px) {
  .top-popular {
    padding: 0 3vw;
  }
}
.top-popular .inner_1040 {
  position: relative;
  background-color: #fee4d6;
  border-radius: 2.5rem;
  padding: clamp(2.5rem, 0.4074rem + 4.3598vw, 4.375rem) 2.5rem;
}
@media (max-width: 767px) {
  .top-popular .inner_1040 {
    padding: 2.5rem 3vw;
  }
}
.top-popular .inner_1040::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: url(../img/front/ico_corner04.png) no-repeat center/contain;
  transform: scaleX(-1);
  z-index: 1;
}
.top-popular .inner_1040::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: url(../img/front/ico_corner04.png) no-repeat center/contain;
  z-index: 1;
}
.top-popular .top-popular__area::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: url(../img/front/ico_corner04.png) no-repeat center/contain;
  transform: rotate(180deg);
  z-index: 1;
}
.top-popular .top-popular__area::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: url(../img/front/ico_corner04.png) no-repeat center/contain;
  transform: scaleY(-1);
  z-index: 1;
}
.top-popular ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: space-between;
  gap: clamp(0.625rem, -0.2117rem + 1.743vw, 1.5rem);
  margin-top: 0;
}
@media (max-width: 767px) {
  .top-popular ul {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }
}
.top-popular ul li {
  height: 100%;
}
@media (max-width: 767px) {
  .top-popular ul li {
    margin-bottom: 0;
  }
}
.top-popular ul li figure {
  min-width: 6.625rem;
  height: 9.375rem;
}
@media (max-width: 767px) {
  .top-popular ul li figure {
    max-width: 4.25rem;
    height: auto;
    min-width: auto;
  }
}
@media (max-width: 767px) {
  .top-popular ul li figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.top-popular ul li h3 {
  font-size: clamp(1.0625rem, -0.1691rem + 2.5641vw, 1.5rem);
  color: #a50c00;
  font-weight: 500;
}
.top-popular ul li p {
  font-size: clamp(0.6875rem, 0.1607rem + 1.1vw, 0.875rem);
}
.top-popular ul li a {
  display: flex;
  text-decoration: none;
  background: #fff url(../img/front/ico_arw_brown01.png) right clamp(0.25rem, -1.4319rem + 4.0293vw, 0.9375rem) center no-repeat;
  background-size: clamp(0.9375rem, -1.3491rem + 4.7619vw, 1.75rem) auto;
}
.top-popular ul li a > div {
  display: grid;
  align-content: center;
  padding: 0 clamp(1.25rem, -4.0152rem + 10.989vw, 3.125rem) 0 clamp(0.8125rem, -0.415rem + 2.5641vw, 1.25rem);
}

/*******************
初めて受診される方へ
********************/
.top-firstuser {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.top-firstuser-box {
  color: #3b190d;
}
.top-firstuser-box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.75rem;
  margin-bottom: 3.125rem;
}
.top-firstuser-box ul li {
  max-width: 25.75rem;
  padding: 1.25rem 1.25rem 3.125rem;
  background-color: #fff;
  border-radius: 2.5rem;
}
.top-firstuser-box h3 {
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 1.25rem;
  height: 3em;
  display: grid;
  align-items: center;
}
.top-firstuser-box figure {
  margin-bottom: 0.625rem;
}
.top-firstuser-box p {
  font-size: 1rem;
  line-height: 1.7;
  margin-bottom: 1.25rem;
}
.top-firstuser-box .radius-brown-btn a.is-reverse {
  max-width: 18.75rem;
}

/*******************
サポートします
********************/
.top-support {
  height: clamp(20.625rem, -0.0375rem + 43.15vw, 35rem);
  background: url(../img/front/bg_intro01_pc.webp) center center no-repeat;
  background-size: cover;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}
.top-support::before {
  content: "";
  background: url(../img/front/img_ribon01.webp) 50% 0 no-repeat;
  background-size: contain;
  position: absolute;
  width: clamp(8.4375rem, -6.39375rem + 30.96vw, 18.75rem);
  height: clamp(6.375rem, -2.88125rem + 19.32vw, 12.8125rem);
  top: clamp(-5.25rem, 1.75625rem - 14.63vw, -2.375rem);
  right: clamp(0rem, -0.93125rem + 0.38vw, -0.625rem);
}
.top-support h2 {
  color: #fff;
  font-size: clamp(1.0625rem, -0.46875rem + 3.19vw, 2.125rem);
  font-weight: 700;
  margin-bottom: clamp(2.5rem, -1.09375rem + 7.5vw, 5rem);
}
.top-support p {
  color: #fff;
  font-size: clamp(0.6875rem, 0.2375rem + 0.94vw, 1rem);
}

/*******************
guide
********************/
.top-guide {
  padding-bottom: 7.5rem;
  color: #3b190d;
}
.top-guide .inner_1040 {
  border: clamp(0.25rem, -0.600625rem + 1.77vw, 0.625rem) solid #fff;
  padding: 0.25rem;
  margin-top: -3.75rem;
  position: relative;
  z-index: 1;
}
.top-guide .inner_1040 > div {
  background-color: #fff;
  padding: clamp(1.25rem, -3.006875rem + 8.88vw, 3.125rem) 0.875rem 0;
}
.top-guide .inner_1040 > div:last-of-type {
  padding-bottom: clamp(2.5rem, -3.175625rem + 11.83vw, 5rem);
}
.top-guide .inner_1040 > div h2,
.top-guide .inner_1040 > div h4 {
  font-size: clamp(0.875rem, -0.54375rem + 2.96vw, 1.5rem);
  text-align: center;
  margin-bottom: 1.875rem;
  font-weight: 600;
}
.top-guide .inner_1040 > div:nth-of-type(2) h2 {
  font-size: clamp(1.125rem, -0.29375rem + 2.96vw, 1.75rem);
}
.top-guide .inner_1040 > div .top-guide-last {
  font-size: clamp(0.9375rem, -0.339375rem + 2.66vw, 1.5rem);
  font-weight: 600;
  margin-bottom: 3.75rem;
}
.top-guide .inner_1040 > div .top-guide-last::before {
  content: "";
  background: url(../img/front/img_guide01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 20.125rem;
  height: 22.8125rem;
  bottom: -13rem;
  left: -12rem;
  position: absolute;
}
@media (max-width: 767px) {
  .top-guide .inner_1040 > div .top-guide-last::before {
    width: 7.5rem;
    height: 8.4375rem;
    bottom: -5rem;
    left: -3.75rem;
  }
}
@media (max-width: 767px) {
  .top-guide .inner_1040 > div .top-guide-last {
    text-align: left;
  }
}
@media (min-width: 768px) {
  .top-guide .inner_1040 > div .top-guide-last {
    text-align: center;
  }
}
.top-guide .inner_1040 .top-guide-box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  align-items: center;
  margin: 0 auto;
  max-width: 45rem;
}
.top-guide .inner_1040 .top-guide-box p {
  font-size: clamp(1.25rem, 0.6825rem + 1.18vw, 1.5rem);
  text-align: center;
}
.top-guide .inner_1040 .top-guide-box:nth-of-type(2) {
  gap: clamp(1.25rem, -4.425625rem + 11.83vw, 3.75rem);
}
.top-guide .inner_1040 .top-guide-box.v2 {
  max-width: 51.25rem;
  margin-bottom: 3.125rem;
}
@media (min-width: 768px) {
  .top-guide .inner_1040 .top-guide-box.v2 {
    grid-template-columns: 2.5fr 2fr;
    gap: 2.5rem;
  }
}
@media (min-width: 768px) {
  .top-guide .inner_1040 .top-guide-box {
    grid-template-columns: repeat(2, 1fr);
  }
  .top-guide .inner_1040 .top-guide-box p {
    text-align: left;
  }
}
.top-guide .top-guide-txt {
  font-size: clamp(0.875rem, 0.3075rem + 1.18vw, 1.125rem);
  padding-bottom: 3.125rem;
  position: relative;
}
@media (max-width: 767px) {
  .top-guide .top-guide-txt {
    text-align: left;
  }
}
@media (min-width: 768px) {
  .top-guide .top-guide-txt {
    text-align: center;
  }
}
.top-guide .top-guide-txt:before {
  content: "";
  width: 4.75rem;
  height: 1px;
  background-color: #3b190d;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.top-guide__video {
  width: 100%;
  max-width: 35rem;
  margin: 0 auto 2.5rem;
}
.top-guide__video .youtube_area {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.top-guide h3 {
  text-align: center;
  margin-bottom: 3.125rem;
}
.top-guide h3 span {
  display: inline-block;
  border: 1px solid #3b190d;
  border-radius: 3.75rem;
  padding: 0.625rem 2.1875rem;
  position: relative;
  font-size: clamp(1rem, -0.135rem + 2.37vw, 1.5rem);
}
.top-guide h3 span::before {
  content: "";
  position: absolute;
  width: 0.625rem;
  height: 1.5625rem;
  background-color: #fff;
  bottom: -1.5625rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  border-right: 1px solid #3b190d;
  box-sizing: border-box;
}
.top-guide ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem;
  padding: 0 5vw;
  margin-bottom: 3.75rem;
}
@media (min-width: 768px) {
  .top-guide ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
.top-guide figcaption {
  font-size: 0.875rem;
  text-align: center;
}
.top-guide h5 {
  font-size: clamp(1.25rem, 0.6825rem + 1.18vw, 1.5rem);
  font-weight: 600;
  line-height: 2;
}
@media (max-width: 767px) {
  .top-guide h5 {
    text-align: center;
  }
}
.top-guide h5 .underline {
  font-size: 120%;
}
.top-guide small {
  font-size: clamp(0.75rem, 0.46625rem + 0.59vw, 0.875rem);
}
.top-guide .radius-brown-btn.v2 a {
  font-size: 95%;
}
@media (max-width: 767px) {
  .top-guide .radius-brown-btn.v2 a {
    line-height: 1.1;
  }
}

/*******************
ドクター
********************/
.top-doctor {
  color: #3b190d;
  padding-bottom: clamp(40px, 6vw, 80px);
}
.top-doctor .inner_1300 {
  position: relative;
}
.top-doctor .inner_1300::before {
  content: "";
  position: absolute;
  background: url(../img/front/img_history01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 292px;
  height: 295px;
  bottom: 460px;
  right: -130px;
}
.top-doctor .top-p-and-c-area figure {
  max-width: 764px;
  width: 100%;
}
.top-doctor .top-p-and-c-area .top-p-and-c__box {
  max-width: 820px;
  min-width: 600px;
  width: 100%;
  border: 10px solid #fff;
  margin: 0 0 0 -18%;
}
.top-doctor .top-p-and-c-area .top-p-and-c__box > div {
  background-color: #fff;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(16px, 2vw, 20px);
  padding: clamp(30px, 5vw, 60px) clamp(20px, 10%, 80px);
}
.top-doctor .top-p-and-c-area .top-p-and-c__box::before, .top-doctor .top-p-and-c-area .top-p-and-c__box::after {
  content: "”";
  position: absolute;
  font-size: clamp(90px, 8vw, 120px);
  color: #fbd3ca;
  line-height: 0;
}
.top-doctor .top-p-and-c-area .top-p-and-c__box::before {
  top: clamp(0rem, 3.752vw - 1.799rem, 1.25rem);
  left: 20px;
  transform: rotate(180deg);
}
.top-doctor .top-p-and-c-area .top-p-and-c__box::after {
  bottom: 20px;
  right: 20px;
}
.top-doctor .top-p-and-c-area .top-p-and-c__box .flex {
  align-items: center;
  gap: clamp(8px, 1vw, 10px);
}
.top-doctor .top-p-and-c-area .top-p-and-c__box figure {
  max-width: 192px;
}

.top-doctor-his {
  max-width: 822px;
  margin: -110px auto clamp(40px, 5vw, 60px);
  background: url(../img/front/bg_history01_pc.webp) top center no-repeat;
  background-size: 280%;
  padding: 170px clamp(20px, 6vw, 80px) clamp(40px, 5vw, 60px);
}
.top-doctor-his p {
  font-size: 14px;
}
.top-doctor-his .top-doctor-his-a {
  text-decoration: underline;
  padding-top: 20px;
  padding-bottom: 30px;
  display: inline-block;
}
.top-doctor-his .flex {
  align-items: center;
  gap: clamp(20px, 3vw, 30px);
  margin-bottom: 20px;
}
.top-doctor-his .flex:nth-of-type(2) {
  margin-bottom: 40px;
}
.top-doctor-his .flex dt {
  min-width: 120px;
  text-align: right;
}
.top-doctor-his .flex dd {
  border-left: 1px solid #3b190d;
  padding-left: clamp(12px, 2vw, 20px);
}
.top-doctor-his ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px 16px;
}
.top-doctor-his ul li {
  font-size: 12px;
}
.top-doctor-his ul li a {
  text-decoration: underline;
}

.dr-accordion {
  border: 1px solid #ddd;
  padding: 1rem;
  margin-bottom: 1rem;
  display: inline-block;
}
.dr-accordion ul li {
  font-size: clamp(14px, 1.2vw, 16px);
}
.dr-accordion.active .dr-accordion-title::after {
  transform: translateY(-30%) rotate(-135deg);
}

.dr-accordion-title {
  cursor: pointer;
  font-weight: bold;
  position: relative;
  padding-right: 24px;
}
.dr-accordion-title::after {
  content: "";
  position: absolute;
  right: 5px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: translateY(-70%) rotate(45deg);
  transition: 0.3s;
}

.dr-accordion-cont {
  display: none;
  margin-top: 1rem;
}

@media (max-width: 767px) {
  .top-doctor .inner_1300 {
    overflow: hidden;
  }
  .top-doctor .inner_1300::before {
    width: 146px;
    height: 154px;
    bottom: 62px;
    right: -50px;
  }
  .top-doctor .top-p-and-c-area .top-p-and-c__box {
    min-width: inherit;
    margin: -7vw 0 0 5vw;
    border-width: 5px;
  }
  .top-doctor .top-p-and-c__box figure {
    width: 119px;
    margin: 0;
  }
  .top-doctor .top-p-and-c__box .flex {
    padding-top: 20px;
  }
  .top-doctor-his {
    margin: -110px auto 60px -5vw;
    padding: 170px 20px 60px;
    background-size: 880%;
  }
  .top-doctor-his .flex {
    flex-direction: column;
    gap: 20px;
  }
  .top-doctor-his .flex dt {
    text-align: center;
  }
  .top-doctor-his .flex dd {
    border-left: none;
    padding-left: 0;
    padding-top: 20px;
    border-top: 1px solid #3b190d;
    width: 260px;
  }
  .top-doctor-his ul {
    grid-template-columns: 1fr;
  }
}
/*******************
top-four-links
********************/
.top-four-links ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0;
}
.top-four-links li {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .top-four-links li {
    width: 50%;
  }
}
.top-four-links figure {
  position: relative;
  margin: 0;
  overflow: hidden;
}
.top-four-links figure > img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.4s ease;
}
.top-four-links a:hover figure > img {
  transform: scale(1.08);
}
.top-four-links figcaption {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: clamp(10px, 1.5vw, 20px);
  margin: 0;
}
.top-four-links figcaption span {
  max-width: clamp(25px, 3vw, 35px);
}
.top-four-links p {
  position: relative;
  padding-bottom: clamp(20px, 2.5vw, 30px);
  font-size: clamp(16px, 1.8vw, 24px);
  line-height: 1.2;
  font-weight: 600;
  color: #fff;
  margin: 0;
}
.top-four-links p::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: clamp(15px, 1.5vw, 20px);
  height: clamp(15px, 1.5vw, 20px);
  background: url("../img/front/ico_arw_white01.png") no-repeat center center;
  background-size: contain;
}

/*******************
top-faq
********************/
.home-faq,
.top-faq {
  background-color: #fbd3ca;
  padding: 7.5rem 0 5rem;
}
@media screen and (max-width: 767px) {
  .home-faq,
  .top-faq {
    padding: 4.375rem 0 3.75rem;
  }
}
.home-faq .home-faq__inner,
.home-faq > div,
.top-faq .home-faq__inner,
.top-faq > div {
  position: relative;
  padding: 0 0.9375rem;
}
.home-faq .home-faq__inner::before,
.home-faq > div::before,
.top-faq .home-faq__inner::before,
.top-faq > div::before {
  content: "";
  position: absolute;
  background: url(../img/front/img_faq01.webp) 0 0 no-repeat;
  background-size: contain;
  width: 9.125rem;
  height: 15.8125rem;
  top: -10.625rem;
  left: -1.5625rem;
}
@media screen and (max-width: 767px) {
  .home-faq .home-faq__inner::before,
  .home-faq > div::before,
  .top-faq .home-faq__inner::before,
  .top-faq > div::before {
    width: 4.5rem;
    height: 8.1875rem;
    top: -5rem;
    left: -0.9375rem;
  }
}
.home-faq .home-faq__list,
.home-faq ul,
.top-faq .home-faq__list,
.top-faq ul {
  max-width: 65rem;
  margin: 0 auto clamp(1.5625rem, 3vw, 2.5rem);
}
.home-faq .home-faq__item,
.home-faq ul li,
.top-faq .home-faq__item,
.top-faq ul li {
  background-color: #fff;
  line-height: 1.45;
}
.home-faq .home-faq__item + .home-faq .home-faq__item, .home-faq .home-faq__item:not(:first-child),
.home-faq .home-faq__item + .home-faq ul li,
.home-faq ul li:not(:first-child),
.home-faq .home-faq__item + .top-faq .home-faq__item,
.top-faq .home-faq__item:not(:first-child),
.home-faq .home-faq__item + .top-faq ul li,
.top-faq ul li:not(:first-child),
.home-faq ul li + .home-faq .home-faq__item,
.home-faq ul li + .home-faq ul li,
.home-faq ul li + .top-faq .home-faq__item,
.home-faq ul li + .top-faq ul li,
.top-faq .home-faq__item + .home-faq .home-faq__item,
.top-faq .home-faq__item + .home-faq ul li,
.top-faq .home-faq__item + .top-faq .home-faq__item,
.top-faq .home-faq__item + .top-faq ul li,
.top-faq ul li + .home-faq .home-faq__item,
.top-faq ul li + .home-faq ul li,
.top-faq ul li + .top-faq .home-faq__item,
.top-faq ul li + .top-faq ul li {
  margin-top: clamp(0.5rem, 1vw, 0.75rem);
}
.home-faq .home-faq__head,
.home-faq ul li div,
.top-faq .home-faq__head,
.top-faq ul li div {
  display: flex;
  position: relative;
  width: 100%;
  min-height: clamp(3rem, 6vw, 4.375rem);
  padding: 0.9375rem clamp(0.9375rem, 3vw, 2.5rem) 0.875rem clamp(2.5rem, 5vw, 4.0625rem);
  box-sizing: border-box;
  line-height: 1.5;
  cursor: pointer;
}
.home-faq .home-faq__head::before, .home-faq .home-faq__head::after,
.home-faq ul li div::before,
.home-faq ul li div::after,
.top-faq .home-faq__head::before,
.top-faq .home-faq__head::after,
.top-faq ul li div::before,
.top-faq ul li div::after {
  position: absolute;
  top: 50%;
  right: clamp(0.9375rem, 2vw, 1.5625rem);
  content: "";
  display: block;
  width: clamp(0.9375rem, 1.5vw, 1.0625rem);
  height: 0.0625rem;
  background: #3b190d;
  transition: all 0.3s ease;
}
.home-faq .home-faq__head::before,
.home-faq ul li div::before,
.top-faq .home-faq__head::before,
.top-faq ul li div::before {
  transform: rotate(-90deg);
}
.home-faq .home-faq__head.is-active::before,
.home-faq ul li div.is-active::before,
.top-faq .home-faq__head.is-active::before,
.top-faq ul li div.is-active::before {
  transform: rotate(0deg);
}
.home-faq .home-faq__icon,
.home-faq ul li div p:nth-of-type(1),
.top-faq .home-faq__icon,
.top-faq ul li div p:nth-of-type(1) {
  position: absolute;
  top: 0;
  bottom: 0;
  left: clamp(1.125rem, 2vw, 1.5625rem);
  width: 1em;
  height: 1em;
  margin: auto 0;
  line-height: 1;
  font-size: clamp(1.25rem, 2.5vw, 2.125rem);
  transform: translateY(-0.1875rem);
  font-family: "Playfair Display";
}
.home-faq .home-faq__tit,
.home-faq ul li div p:nth-of-type(2),
.top-faq .home-faq__tit,
.top-faq ul li div p:nth-of-type(2) {
  display: flex;
  align-items: center;
  font-weight: 600;
  line-height: 1.3;
  flex: 1;
  font-size: clamp(0.875rem, 1.5vw, 1.125rem);
  color: #3b190d;
}
@media screen and (max-width: 767px) {
  .home-faq .home-faq__tit,
  .home-faq ul li div p:nth-of-type(2),
  .top-faq .home-faq__tit,
  .top-faq ul li div p:nth-of-type(2) {
    max-width: 15rem;
  }
}
.home-faq .home-faq__txt,
.home-faq .js-qa-content,
.top-faq .home-faq__txt,
.top-faq .js-qa-content {
  position: relative;
  font-size: clamp(0.8125rem, 1.3vw, 1rem);
  color: #494949;
  line-height: 1.45;
  padding: clamp(0.625rem, 2vw, 1.25rem) clamp(0.9375rem, 2vw, 1.25rem) clamp(0.9375rem, 2vw, 1.875rem);
  display: none;
}
.home-faq .home-faq__txt::before,
.home-faq .js-qa-content::before,
.top-faq .home-faq__txt::before,
.top-faq .js-qa-content::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: calc(100% - clamp(1.875rem, 4vw, 2.5rem));
  height: 0.0625rem;
  margin: 0 auto;
  background-color: #e9d9d5;
}

/*******************
コラム
********************/
.top-an-column {
  background-color: #fde3d5;
  padding: clamp(1.875rem, 7vw, 6.25rem) 0 clamp(3.125rem, 5vw, 4.375rem);
}
.top-an-column ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
}
.top-an-column ul li a {
  display: block;
  padding: clamp(0.875rem, 2vw, 1.25rem) clamp(1.75rem, 5vw, 3.75rem) clamp(0.875rem, 2.5vw, 1.5rem) clamp(0.875rem, 3.5vw, 2.25rem);
  background: url(../img/mv/ico_arw_brown.svg) no-repeat right clamp(0.625rem, 2.5vw, 1.875rem) center;
  background-size: clamp(1.25rem, 2.5vw, 1.875rem) auto;
  background-color: #fff;
  transition: color 0.3s ease;
}
.top-an-column ul li a:hover {
  color: #7f5d37;
}
.top-an-column ul li a p:nth-of-type(1) {
  color: #777;
  font-family: "Noto Sans JP", sans-serif;
}
.top-an-column ul li a p:nth-of-type(2) {
  color: #3b190d;
  font-weight: 600;
  font-size: clamp(0.8125rem, 2vw, 1.5rem);
}

/*******************
雑誌掲載top-magazine
********************/
.top-magazine {
  padding: clamp(3.125rem, 7vw, 6.25rem) 0 clamp(2.5rem, 6vw, 5rem);
  background-color: #ffedea;
}
.top-magazine .sec-h2-tit {
  margin-bottom: clamp(2.5rem, 6vw, 5rem);
}
@media (max-width: 767px) {
  .top-magazine .inner_1040 {
    padding: 0;
  }
}
.top-magazine ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .top-magazine ul {
    display: flex;
    flex-wrap: wrap;
  }
}
.top-magazine ul li {
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .top-magazine ul li {
    width: 33.3333%;
  }
}
@media (max-width: 767px) {
  .top-magazine ul li:nth-of-type(1), .top-magazine ul li:nth-of-type(2) {
    width: 50%;
  }
  .top-magazine ul li:nth-of-type(1) figure figcaption, .top-magazine ul li:nth-of-type(2) figure figcaption {
    padding: 0.5rem;
  }
  .top-magazine ul li:nth-of-type(1) figure figcaption p:nth-of-type(2), .top-magazine ul li:nth-of-type(2) figure figcaption p:nth-of-type(2) {
    text-align: center;
  }
}
.top-magazine ul li:nth-of-type(2) {
  text-align: center;
}
.top-magazine ul li a {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
}
.top-magazine ul li a figure {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  aspect-ratio: 3/4;
}
.top-magazine ul li a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.top-magazine ul li a figure figcaption {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding: clamp(0.25rem, 1.5vw, 0.9375rem);
  transition: opacity 0.3s ease;
  box-sizing: border-box;
}
.top-magazine ul li a figure figcaption p {
  color: #fff;
  text-align: center;
  margin: 0;
}
.top-magazine ul li a figure figcaption p:nth-of-type(1) {
  font-size: clamp(0.8125rem, 1.2vw, 1rem);
  display: block;
  text-align: left;
  width: 100%;
  font-family: "Noto Sans JP";
  padding: 0 0.5rem;
}
.top-magazine ul li a figure figcaption p:nth-of-type(2) {
  position: relative;
  border: 2px solid #b69262;
  border-radius: 2.5rem;
  margin: 0 0 0.625rem;
  padding: 0.1875rem 0.3125rem;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
  font-size: clamp(0.625rem, 1.1vw, 1rem);
  line-height: 2;
  background: url(../img/front/ico_blank01.png) no-repeat right 0.75rem center;
  background-size: 0.875rem;
}
@media (max-width: 767px) {
  .top-magazine ul li a figure figcaption p:nth-of-type(2) {
    text-align: left;
    padding-left: 0.5rem;
  }
}
.top-magazine ul li a figure figcaption p:nth-of-type(2) span {
  background-color: #b69262;
  color: #fff;
  margin-right: 0.1875rem;
  font-size: clamp(0.625rem, 1.1vw, 1rem);
  padding: 0 0.3125rem;
}
.top-magazine ul li a:hover figure img {
  transform: scale(1.05);
}

/*******************
WEBメディアtop-media
********************/
.top-media {
  padding: clamp(40px, 7vw, 100px) 0;
  background-color: #ffedea;
}
.top-media .sec-h2-tit {
  margin-bottom: clamp(40px, 6vw, 80px);
}
.top-media ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px 30px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .top-media ul {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}
.top-media ul li {
  display: flex;
  align-items: center;
  gap: clamp(15px, 2.5vw, 25px);
  background-color: #fff;
  padding: clamp(15px, 2vw, 20px);
  box-sizing: border-box;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}
@media (max-width: 767px) {
  .top-media ul li {
    gap: 8px;
    padding: 4px 0;
    border-radius: 0;
    box-shadow: none;
    border-bottom: 1px solid #ffedea;
  }
}
.top-media ul li figure {
  flex-shrink: 0;
  width: 204px;
  height: 107px;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
@media (max-width: 767px) {
  .top-media ul li figure {
    width: 76px;
    height: auto;
    aspect-ratio: 204/107;
  }
}
.top-media ul li figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.top-media ul li p {
  color: #3b190d;
  font-size: clamp(13px, 1.3vw, 16px);
  line-height: 1.6;
  margin: 0;
  width: 100%;
}
.top-media ul li p a {
  display: block;
  margin-left: 8px;
  white-space: nowrap;
  text-decoration: underline;
}
.top-media ul li p a:hover {
  text-decoration: underline;
}

/*******************
診療ウイークカレンダーtop-hours
********************/
.top-hours {
  padding: clamp(2.5rem, 7.51vw - 3.111rem, 5rem) 0;
  color: #3b190d;
  background-color: #fde3d5;
}
.top-hours > div {
  overflow: hidden;
}
.top-hours-txt {
  text-align: center;
}
@media (max-width: 767px) {
  .top-hours-txt {
    font-size: 0.8125rem;
    text-align: left;
  }
}
.top-hours .sec-h2-tit {
  margin-bottom: clamp(1.875rem, 2.82vw - 2.333rem, 3.75rem);
}
.top-hours h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  font-size: clamp(0.875rem, -0.563rem + 3.003vw, 1.5rem);
  text-align: center;
  margin-bottom: 2.5rem;
}
.top-hours h3::before, .top-hours h3::after {
  content: "";
  display: block;
  height: 0.375rem;
  border-top: 1px solid #3b190d;
  border-bottom: 1px solid #3b190d;
  flex: 1 1 auto;
}
@media (max-width: 767px) {
  .top-hours h3 {
    gap: 0.625rem;
  }
}

.hours-grid {
  margin: 0 auto 3.75rem;
  border-radius: 0.75rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media (min-width: 992px) {
  .hours-grid {
    max-width: 71.25rem;
    display: grid;
    grid-template-columns: 7.125rem repeat(7, 1fr);
    grid-template-rows: auto auto auto;
    overflow: hidden;
    box-shadow: 0 0.625rem 1.875rem rgba(59, 25, 13, 0.05);
  }
  .hours-grid::before, .hours-grid::after {
    white-space: pre-wrap;
    grid-column: 1;
    background-color: #3b190d;
    color: #fff;
    font-weight: bold;
    font-size: 0.8125rem;
    line-height: 1.5;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1.25rem 0.625rem;
  }
  .hours-grid::before {
    content: "午前\a 10:00～14:00";
    grid-row: 2;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .hours-grid::after {
    content: "午後\a 14:00～19:00";
    grid-row: 3;
  }
  .hours-grid.int-medicine::before, .hours-grid.int-medicine::after {
    background-color: #d2e9e3;
    color: #b69262;
  }
}
@media (max-width: 991px) {
  .hours-grid {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    padding: 0;
  }
  .hours-grid::before, .hours-grid::after {
    display: none;
  }
}

@media (min-width: 992px) {
  .hours-col {
    display: contents;
  }
  .hours-col:nth-child(1) .hours-day,
  .hours-col:nth-child(1) .hours-slot {
    grid-column: 2;
  }
  .hours-col:nth-child(2) .hours-day,
  .hours-col:nth-child(2) .hours-slot {
    grid-column: 3;
  }
  .hours-col:nth-child(3) .hours-day,
  .hours-col:nth-child(3) .hours-slot {
    grid-column: 4;
  }
  .hours-col:nth-child(4) .hours-day,
  .hours-col:nth-child(4) .hours-slot {
    grid-column: 5;
  }
  .hours-col:nth-child(5) .hours-day,
  .hours-col:nth-child(5) .hours-slot {
    grid-column: 6;
  }
  .hours-col:nth-child(6) .hours-day,
  .hours-col:nth-child(6) .hours-slot {
    grid-column: 7;
  }
  .hours-col:nth-child(7) .hours-day,
  .hours-col:nth-child(7) .hours-slot {
    grid-column: 8;
  }
}
@media (max-width: 991px) {
  .hours-col {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 0.25rem 1rem rgba(59, 25, 13, 0.05);
  }
}

.hours-day {
  font-weight: bold;
  color: #fff;
  text-align: center;
}
@media (min-width: 992px) {
  .hours-day {
    grid-row: 1;
    background-color: #3b190d;
    font-size: 1rem;
    padding: 1rem 0;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
  }
  .int-medicine .hours-day {
    background-color: #d2e9e3;
    color: #b69262;
    border-left: 1px solid #fff;
  }
  .hours-col:nth-child(6) .hours-day {
    color: #a4ceeb;
  }
  .hours-col:nth-child(7) .hours-day {
    color: #f2a0a0;
  }
}
@media (max-width: 991px) {
  .hours-day {
    background-color: #3b190d;
    padding: 0.625rem 1rem;
    font-size: 0.9375rem;
    letter-spacing: 0.05em;
  }
  .int-medicine .hours-day {
    background-color: #d2e9e3;
    color: #b69262;
  }
  .hours-col:nth-child(6) .hours-day {
    background-color: #4a7ebb;
    color: #fff;
  }
  .hours-col:nth-child(7) .hours-day {
    background-color: #c94a4a;
    color: #fff;
  }
}

@media (min-width: 992px) {
  .hours-slots {
    display: contents;
  }
}
@media (max-width: 991px) {
  .hours-slots {
    display: flex;
    flex-direction: column;
    background-color: #fff;
  }
}

.hours-slot {
  background-color: #fff;
}
@media (min-width: 992px) {
  .hours-col:nth-child(even) .hours-slot {
    background-color: #fffbfb;
  }
  .hours-slot {
    padding: 1rem 0.375rem;
    border-left: 1px solid #ffedea;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .hours-slot:nth-child(1) {
    grid-row: 2;
    border-bottom: 1px solid #ffedea;
  }
  .hours-slot:nth-child(2) {
    grid-row: 3;
  }
  .hours-slot > div {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
}
@media (max-width: 991px) {
  .hours-slot {
    display: grid;
    grid-template-columns: 5.3125rem 1fr;
    padding: 0;
  }
  .hours-col:nth-child(even) .hours-slot {
    background-color: #fff;
  }
  .hours-slot:nth-child(1) {
    border-bottom: 1px dashed #ffedea;
  }
  .hours-slot::before {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0.9375rem 0.3125rem;
    white-space: pre-wrap;
    color: #3b190d;
    font-weight: bold;
    font-size: 0.6875rem;
    line-height: 1.4;
  }
  .hours-slot:nth-child(1)::before {
    content: "午前\a 10:00\a～14:00";
    background-color: #ffedea;
  }
  .int-medicine .hours-slot:nth-child(1)::before {
    background-color: #e6f2ef;
  }
  .hours-slot:nth-child(2)::before {
    content: "午後\a 14:00\a～19:00";
    background-color: #fcedea;
  }
  .int-medicine .hours-slot:nth-child(2)::before {
    background-color: #f0f7f5;
  }
  .hours-slot > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0.9375rem;
  }
  .int-medicine .hours-slot > div {
    padding: 1.25rem 0.9375rem;
  }
}

.hours-title {
  font-weight: bold;
  color: #3b190d;
  line-height: 1.4;
}
@media (min-width: 992px) {
  .hours-title {
    font-size: 0.8125rem;
    margin: 0 0 0.625rem 0;
    min-height: 2.25rem;
  }
}
@media (max-width: 991px) {
  .hours-title {
    font-size: 0.875rem;
    margin: 0 0 0.375rem 0;
  }
  .int-medicine .hours-title {
    margin-bottom: 0;
  }
}

.hours-note {
  font-weight: bold;
  color: #c93a3a;
}
@media (min-width: 992px) {
  .hours-note {
    font-size: 0.6875rem;
    margin: 0 0 0.625rem 0;
  }
}
@media (max-width: 991px) {
  .hours-note {
    font-size: 0.6875rem;
    margin: 0 0 0.5rem 0;
  }
}

.hours-slot ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 991px) {
  .hours-slot ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem 0.75rem;
  }
}
@media (min-width: 992px) {
  .hours-slot ul li {
    margin-bottom: 0.3125rem;
    display: inline-block;
    padding-left: 0.125rem;
  }
  .hours-slot ul li:last-child {
    margin-bottom: 0;
  }
}
@media (max-width: 991px) {
  .hours-slot ul li {
    display: inline-block;
    padding-left: 0.125rem;
  }
}
.hours-slot ul li a {
  font-size: 0.75rem;
  color: #3b190d;
  text-decoration: none;
  border-bottom: 1px solid rgba(59, 25, 13, 0.2);
  transition: color 0.2s, border-color 0.2s;
}
.hours-slot ul li a:hover {
  color: #b69262;
  border-bottom-color: #b69262;
}

/*******************
装飾用無限スクロール
********************/
.top-section-scroll {
  display: flex;
  overflow: hidden;
  margin: 0 auto;
}

.top-section-scroll.slick-initialized {
  display: block;
  overflow: visible;
}

.top-section-scroll .slick-track {
  transition-timing-function: linear !important;
}

.top-section-scroll figure {
  margin: 0;
  padding: 0;
  height: auto;
  width: 100%;
  display: block;
}

.top-section-scroll figure img {
  width: 100%;
  height: auto;
  display: block;
}

/***ページ診療時間**************/
.home-hours__skin h3,
.home-hours__internal h3 {
  text-align: center;
  font-size: 110%;
  font-weight: 700;
  margin-bottom: 2.5rem;
}

.page-hours {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.page-hours .hours-grid {
  display: grid;
  grid-template-columns: 5rem 1fr 1fr;
  grid-template-rows: auto repeat(7, minmax(6.25rem, auto));
  gap: 0.0625rem;
  background-color: #ddd;
  min-width: 31.25rem;
}
.page-hours .hours-grid::before {
  content: "";
  grid-row: 1;
  grid-column: 1;
  font-weight: bold;
  text-align: center;
  padding: 0.75rem 0.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
}
.page-hours .hours-grid::after {
  content: "午前10時～14時";
  grid-row: 1;
  grid-column: 2;
  font-weight: bold;
  text-align: center;
  padding: 0.75rem 0.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #3b190d;
  color: #fff;
}
.page-hours .hours-grid.int-medicine > .hours-col:first-child::before {
  background-color: #d2e9e3;
  color: #b69262;
}
.page-hours .hours-grid.int-medicine::after {
  background-color: #d2e9e3;
  color: #b69262;
}
.page-hours .hours-grid > .hours-col:first-child::before {
  content: "午後14時～19時";
  grid-row: 1;
  grid-column: 3;
  background-color: #3b190d;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 0.75rem 0.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-hours .hours-grid > .hours-col {
  display: contents;
}
.page-hours .hours-grid > .hours-col > .hours-day {
  font-weight: bold;
  text-align: center;
  padding: 0.625rem 0.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}
.page-hours .hours-grid > .hours-col:nth-child(1) > .hours-day {
  grid-row: 2;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(1) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 2;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(1) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 2;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(2) > .hours-day {
  grid-row: 3;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(2) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 3;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(2) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 3;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(3) > .hours-day {
  grid-row: 4;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(3) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 4;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(3) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 4;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(4) > .hours-day {
  grid-row: 5;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(4) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 5;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(4) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 5;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(5) > .hours-day {
  grid-row: 6;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(5) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 6;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(5) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 6;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(6) > .hours-day {
  grid-row: 7;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(6) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 7;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(6) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 7;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col:nth-child(7) > .hours-day {
  grid-row: 8;
  grid-column: 1;
}
.page-hours .hours-grid > .hours-col:nth-child(7) > .hours-slots > .hours-slot:nth-child(1) {
  grid-row: 8;
  grid-column: 2;
}
.page-hours .hours-grid > .hours-col:nth-child(7) > .hours-slots > .hours-slot:nth-child(2) {
  grid-row: 8;
  grid-column: 3;
}
.page-hours .hours-grid > .hours-col > .hours-slots {
  display: contents;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot {
  background-color: #fff;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot p.hours-title {
  font-weight: bold;
  margin: 0 0 0.375rem 0;
  font-size: 0.95rem;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot ul {
  margin: 0;
  padding-left: 0.9375rem;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot ul li {
  margin-bottom: 0.25rem;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot .hours-note {
  font-size: 0.8rem;
  color: #e60000;
  margin-top: auto;
  padding-top: 0.375rem;
}
.page-hours .hours-grid > .hours-col > .hours-slots > .hours-slot::before {
  display: none;
}

@media (max-width: 767px) {
  .page-hours .inner_1040 {
    padding: 0;
  }
  .page-hours .hours-grid {
    display: grid;
    grid-template-columns: 1.25rem 1fr 1fr;
    grid-template-rows: auto repeat(7, minmax(6.25rem, auto));
    gap: 0.0625rem;
    background-color: #ddd;
    min-width: inherit;
  }
  .page-hours .hours-grid > .hours-col > .hours-day,
  .page-hours .hours-grid > .hours-col:first-child::before {
    padding: 0;
  }
  .page-hours .hours-grid > .hours-col > .hours-day,
  .page-hours .hours-grid::after,
  .page-hours .hours-grid > .hours-col:first-child::before,
  .page-hours .hours-slot p.hours-title {
    font-size: clamp(0.625rem, 1.56vw + 0.354375rem, 0.75rem);
  }
  .page-hours .hours-slot ul li {
    font-size: clamp(0.5rem, 1.56vw + 0.229375rem, 0.625rem);
  }
  .page-hours .hours-slot > div {
    padding: 0;
  }
  .home-hours__skin h3,
  .home-hours__internal h3 {
    text-align: center;
    font-size: clamp(0.6875rem, 1.56vw + 0.416875rem, 0.9rem);
    font-weight: 700;
    margin-bottom: 2.5rem;
  }
  .page-hours .top-hours-txt {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}
/*******************
VC top-cv-reserve 
********************/
.top-cv-reserve {
  padding: clamp(2.5rem, -0.732rem + 6.742vw, 5rem) 0;
  text-align: center;
  background: url(../img/front/bg_contact01_pc.webp) no-repeat center center;
  background-size: cover;
}
.top-cv-reserve h2 {
  margin-bottom: clamp(1.25rem, -0.366rem + 3.371vw, 2.5rem);
}
.top-cv-reserve p {
  margin-bottom: clamp(1.875rem, -0.548rem + 5.056vw, 3.75rem);
}
.top-cv-reserve > div {
  display: grid;
  justify-items: center;
}
.top-cv-reserve .elegant-btn {
  max-width: 495px;
  height: 90px;
  line-height: 90px;
  font-size: 1.125rem;
  gap: 26px;
}
.top-cv-reserve .elegant-btn span img {
  transform: scale(1.5);
}
@media (max-width: 767px) {
  .top-cv-reserve {
    background: url(../img/front/bg_contact01_sp.webp) no-repeat center center;
    background-size: cover;
  }
  .top-cv-reserve .elegant-btn {
    max-width: 310px;
    height: 120px;
    line-height: 25px;
    font-size: 1rem;
    gap: 6px;
  }
  .top-cv-reserve .elegant-btn span img {
    transform: none;
  }
  .top-cv-reserve .elegant-btn::before {
    -webkit-mask-image: url(../img/front/elegant-02.svg);
    mask-image: url(../img/front/elegant-02.svg);
  }
}

/*******************
top-access-area
********************/
.top-access-area {
  padding: clamp(3.125rem, 6.78vw, 5rem) 0;
}
.top-access-area h2 {
  margin-bottom: clamp(1.5625rem, 4.5vw, 2.5rem);
}
.top-access-area .top-access-txt {
  font-size: clamp(1rem, 1.2vw, 1.25rem);
  text-align: center;
  margin-bottom: clamp(2.1875rem, 7.5vw, 3.75rem);
}
.top-access-area .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.875rem;
  max-width: 65rem;
  margin: 0 auto;
}
.top-access-area address {
  font-style: normal;
  padding: 0.9375rem;
  color: #3b190d;
}
.top-access-area address span {
  display: inline-block;
  padding: 0.625rem 0 0.625rem 1em;
  position: relative;
}
.top-access-area address span::before {
  position: absolute;
  content: ">";
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1em;
  height: 1em;
  font-weight: 600;
  line-height: 1;
}

.access-area-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  border: solid 1px #ffd8d2;
}
.access-area-card h3 {
  margin: 0;
}
.access-area-card h3 a {
  display: block;
  width: 100%;
}
.access-area-card figure {
  position: relative;
  display: grid;
  place-items: center;
}
.access-area-card figure img {
  width: 100%;
  height: auto;
  display: block;
}
.access-area-card figure figcaption {
  position: absolute;
  text-align: center;
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 1.25rem;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.2;
}
.access-area-card figure figcaption strong {
  font-size: 150%;
}
.access-area-card iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  display: block;
}
.access-area-card .top-access-link {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  margin-top: auto;
  gap: 0.875rem;
  padding: 0.625rem;
}
.access-area-card .radius-brown-btn span {
  font-size: 0.875rem;
}
.access-area-card .radius-brown-btn a {
  height: 4rem;
  padding: 0 0.5rem;
}
.access-area-card .m-line {
  height: 4rem;
}

@media (max-width: 991px) {
  .top-access-area .grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding: 0 0.9375rem;
  }
  .top-access-area .top-access-txt {
    text-align: left;
    padding: 0 0.9375rem;
  }
}
@media (max-width: 767px) {
  .top-access-area address {
    padding: 0.625rem 0.9375rem;
    font-size: 0.875rem;
  }
  .access-area-card {
    gap: 0.9375rem;
  }
  .access-area-card figure figcaption {
    padding: 0.9375rem;
    font-size: 1rem;
    width: calc(100% - 1.875rem);
    box-sizing: border-box;
  }
  .access-area-card .top-access-link {
    grid-template-columns: 1fr;
    gap: 0.625rem;
    padding: 0.9375rem;
  }
  .access-area-card .radius-brown-btn span {
    margin-left: 0;
  }
  .access-area-card .radius-brown-btn a {
    height: 3.375rem;
    width: 100%;
    max-width: 22rem;
    margin: 0 auto;
  }
  .access-area-card .m-line {
    height: 3.375rem;
    width: 100%;
    max-width: 22rem;
    margin: 0 auto;
  }
}
/*******************
フッター
********************/
.footer-nav {
  padding: clamp(2.5rem, 4.6vw, 3.75rem) 0;
  background-color: #3b190d;
  color: #fff;
}
.footer-nav h2 {
  font-size: clamp(0.6875rem, 1.2vw, 1rem);
  line-height: 1.6;
  text-align: center;
  margin-bottom: 2.5rem;
}
.footer-nav h2 span {
  display: block;
  font-size: clamp(0.6875rem, 1.4vw, 1.125rem);
  font-weight: bold;
  margin-bottom: 0.3125rem;
}
.footer-nav nav > div {
  display: grid;
  grid-template-columns: 1fr 1fr 2fr 1fr;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  max-width: 75rem;
  margin: 0 auto;
}
@media (max-width: 991px) {
  .footer-nav nav > div {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}
.footer-nav .footer-col.is-products ul:first-child {
  margin-bottom: 1.5rem;
}
@media (max-width: 991px) {
  .footer-nav .footer-col.is-products ul:first-child {
    margin-bottom: 0;
  }
}
.footer-nav .footer-col.is-services ul {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: clamp(0.625rem, 1.4vw, 0.875rem);
       column-gap: clamp(0.625rem, 1.4vw, 0.875rem);
}
@media (max-width: 991px) {
  .footer-nav .footer-col.is-services ul {
    -moz-columns: auto;
         columns: auto;
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
.footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
}
.footer-nav li {
  font-size: 0.8125rem;
  line-height: 1.4;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.footer-nav li.footer-n-toggle {
  border-bottom: 1px solid #818181;
  margin-bottom: 0.3125rem;
}
.footer-nav li:not(.is-caption) a::before {
  content: "-";
  margin-right: 0.5rem;
}
.footer-nav li.is-caption a::before,
.footer-nav li.is-caption span::before, .footer-nav li.is-link a::before,
.footer-nav li.is-link span::before {
  content: ">";
  font-size: 0.625rem;
  margin-right: 0.5rem;
  font-family: monospace;
}
@media (max-width: 991px) {
  .footer-nav li.is-caption a::before,
  .footer-nav li.is-caption span::before, .footer-nav li.is-link a::before,
  .footer-nav li.is-link span::before {
    display: none;
  }
}
.footer-nav li.is-caption {
  font-size: 105%;
  font-weight: bold;
  margin-top: 1.5rem;
  padding-bottom: 0.3125rem;
  display: block;
  -moz-column-span: all;
       column-span: all;
}
.footer-nav li.is-caption:first-child {
  margin-top: 0;
}
.footer-nav li.is-caption a,
.footer-nav li.is-caption span {
  align-items: center;
  position: relative;
  display: inline-flex;
  width: 100%;
}
.footer-nav a {
  color: #fff;
  text-decoration: none;
  transition: opacity 0.3s ease;
  display: inline-flex;
}
.footer-nav a:hover {
  opacity: 1;
  color: #ffeeeb;
}
@media (max-width: 991px) {
  .footer-nav .footer-col:last-of-type ul {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .footer-nav li {
    font-size: 0.9375rem;
  }
  .footer-nav li.footer-n-toggle {
    border-bottom: none;
    margin-bottom: 0;
  }
  .footer-nav li:not(.is-caption) a::before {
    display: none;
  }
  .footer-nav li.is-caption {
    font-size: 0.9375rem;
    font-weight: normal;
  }
  .footer-nav li.is-caption.footer-n-toggle {
    margin-top: 0;
    padding: 0.9375rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    width: 100%;
    display: block !important;
    cursor: pointer;
    position: relative;
  }
  .footer-nav li.is-caption.footer-n-toggle a,
  .footer-nav li.is-caption.footer-n-toggle span {
    padding-right: 1.25rem;
    display: block;
    width: 100%;
  }
  .footer-nav li.is-caption.footer-n-toggle a::before,
  .footer-nav li.is-caption.footer-n-toggle span::before {
    display: none !important;
  }
  .footer-nav li.is-caption.footer-n-toggle::before, .footer-nav li.is-caption.footer-n-toggle::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0.625rem;
    background-color: currentColor;
    transform: translate(50%, -50%);
    transition: transform 0.2s ease, opacity 0.2s ease;
  }
  .footer-nav li.is-caption.footer-n-toggle::before {
    width: 0.875rem;
    height: 0.125rem;
  }
  .footer-nav li.is-caption.footer-n-toggle::after {
    width: 0.125rem;
    height: 0.875rem;
  }
  .footer-nav li.is-caption.footer-n-toggle.is-open::after {
    transform: translate(50%, -50%) rotate(90deg);
    opacity: 0;
  }
  .footer-nav li.is-caption.footer-n-toggle:last-of-type {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .footer-nav li:not(.is-caption) {
    display: none;
    opacity: 0;
  }
  .footer-nav li:not(.is-caption).is-open {
    display: block;
    opacity: 1;
    animation: footerFadeIn 0.2s ease-out forwards;
  }
  .footer-col.is-main .footer-nav li:not(.is-caption).is-open {
    padding: 0.625rem 0.9375rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .footer-nav li:not(.is-caption).is-link {
    display: block;
    opacity: 1;
    padding: 0.9375rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }
  .footer-nav li:not(.is-caption).is-link a {
    width: 100%;
  }
  .footer-nav li:not(.is-caption):not(.is-link) a::before {
    content: "-";
    margin-right: 0.5rem;
  }
  .footer-col.is-main .footer-nav li:not(.is-caption):not(.is-link)::before {
    content: "-";
    display: inline-block;
    margin-right: 0.5rem;
  }
  .footer-col:not(.is-main) .footer-nav li:not(.is-caption):not(.is-link)::before {
    display: none !important;
  }
  .footer-nav .is-products li:not(.is-caption) a::before,
  .footer-nav .is-services li:not(.is-caption) a::before,
  .footer-nav .is-trouble li:not(.is-caption) a::before {
    display: none !important;
  }
  .footer-nav .is-products ul:nth-of-type(2) li.is-open,
  .footer-nav .is-services li.is-open,
  .footer-nav .is-trouble li.is-open {
    display: inline;
  }
  .footer-nav .is-products li.is-open:not(.footer-n-toggle) a,
  .footer-nav .is-services li.is-open:not(.footer-n-toggle) a,
  .footer-nav .is-trouble li.is-open:not(.footer-n-toggle) a {
    display: inline-flex;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0.25rem;
    padding: 0.375rem 0.75rem;
    margin: 0.25rem 0.375rem 0.25rem 0;
  }
  .footer-nav ul {
    margin-bottom: 0;
  }
  .footer-nav ul.is-opened {
    padding-bottom: 1rem;
  }
}

@keyframes footerFadeIn {
  0% {
    opacity: 0;
    transform: translateY(-0.3125rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/*******************
.footer-info
********************/
.footer-info {
  background-color: #3b190d;
  color: #fff;
  padding: clamp(1.875rem, 2.809rem - 1.95vw, 2.5rem) 0 clamp(1.25rem, 2.378rem - 2.35vw, 1.875rem);
}
.footer-info .inner_1300 {
  display: grid;
  grid-template-columns: 3fr 7fr;
  align-items: center;
  margin-bottom: clamp(1.875rem, 0.463rem + 2.94vw, 2.5rem);
}
.footer-info h3 {
  font-size: clamp(1rem, 0.435rem + 1.18vw, 1.125rem);
  font-weight: bold;
  white-space: nowrap;
}
.footer-info address {
  font-style: normal;
  font-size: 0.875rem;
  line-height: 1.6;
}
.footer-info a {
  transition: color 0.3s ease;
}
.footer-info a:hover {
  color: #ffc2c2;
}
.footer-info a:hover svg path,
.footer-info a:hover svg circle {
  fill: #ffc2c2;
}
.footer-info a:hover img:not([alt*=マイナビ]) {
  filter: brightness(0) saturate(100%) invert(84%) sepia(11%) saturate(1142%) hue-rotate(314deg) brightness(103%) contrast(101%);
}
.footer-info svg path,
.footer-info svg circle,
.footer-info img {
  transition: fill 0.3s ease, filter 0.3s ease;
}
.footer-info > figure {
  margin-bottom: 1.875rem;
}
.footer-info > figure img {
  margin: 0 auto;
}

.footer-info-logo {
  display: grid;
  justify-items: center;
  align-items: center;
  gap: clamp(1rem, 1.339rem - 0.7vw, 1.25rem);
}
.footer-info-logo figure {
  width: auto;
  margin: 0;
}
.footer-info-logo figure:nth-of-type(2) {
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.3);
  padding: 0.625rem;
}

.footer-info-shop {
  display: grid;
  gap: clamp(1.625rem, 0.61rem + 2.12vw, 2.188rem);
}
.footer-info-shop > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.footer-info-shop address a:first-of-type {
  display: inline-flex;
  align-items: center;
  margin-left: 1em;
  text-decoration: underline;
}
.footer-info-shop address a:first-of-type ::before {
  content: ">";
  margin-right: 0.313rem;
}
.footer-info-shop figure {
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.3);
  padding: 0.625rem;
}

.footer {
  overflow: hidden;
}
.footer .copyright {
  font-family: "Times New Roman", "Times", "Baskerville", "Georgia", serif;
  padding: clamp(1.25rem, 0.286rem + 2.01vw, 1.875rem) 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .footer-info {
    padding: 2.5rem 1.25rem 1.875rem;
  }
  .footer-info .inner_1300 {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    margin-bottom: 1.875rem;
    padding: 0;
  }
  .footer-info > figure {
    margin-bottom: 0;
  }
  .footer-info-shop > div {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    padding-bottom: 2.188rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .footer-info-shop > div:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .footer-info-shop address a:first-of-type {
    margin-left: 0;
    margin-right: 1.5em;
  }
  .footer-info-shop figure {
    align-self: stretch;
    display: flex;
    justify-content: center;
    margin: 0.5rem 0 0 0;
    background-color: transparent;
    padding: 0;
  }
  .footer-info-shop figure a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.125rem;
    height: 3.125rem;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.3);
  }
}
/*******************
固定ページ
********************/
/********パンクズリスト**********/
.l-breadcrumb {
  margin-bottom: 2.5rem;
}
.l-breadcrumb ol {
  padding: 0.375rem 1.25rem 0.3125rem;
}
@media all and (min-width: 768px) {
  .l-breadcrumb ol {
    max-width: 67.5rem;
    margin: 0 auto;
    padding: 0.875rem 1.25rem 0.4375rem;
  }
}
@media all and (min-width: 768px) {
  .l-breadcrumb ol:before {
    margin-right: 0.3125rem;
  }
}
.l-breadcrumb ol a {
  color: #b08c62;
  text-decoration: underline;
}
.l-breadcrumb ol a:hover {
  text-decoration: none;
}
.l-breadcrumb ol li {
  vertical-align: top;
  line-height: 1.5;
  color: #777;
  font-size: 0.75rem;
  display: inline-block;
}
.l-breadcrumb ol li + li {
  padding-left: 0.3125rem;
}
.l-breadcrumb ol li + li:before {
  content: ">";
  margin-right: 0.25rem;
  color: #777;
}

/********ページMV**********/
.pege-mv figure {
  position: relative;
  box-sizing: border-box;
}
.pege-mv figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  display: block;
  max-height: 25rem;
}
.pege-mv figure h1 {
  position: absolute;
  font-size: clamp(1.3125rem, 0.8875rem + 1.41vw, 2.625rem);
  max-width: 65rem;
  font-weight: 700;
  width: 100%;
  right: 0;
  left: 0;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  padding: 0.875rem 1.25rem 0.4375rem;
}
.pege-mv.internal-mv figure img {
  max-height: 5rem;
}

.menu-internal {
  background-color: #d2e9e3;
}
.menu-internal.top-popular {
  margin-bottom: 3.75rem;
}
.menu-internal.top-popular .inner_1040 {
  background-color: transparent;
  padding-top: 0;
}
.menu-internal .tit-wrap {
  padding: 3.75rem 0 1.25rem;
}

.sec-h2-tit.is-green {
  background: #d2e9e3;
}
.sec-h2-tit.is-green p {
  color: #c7e2dc;
}

.top-popular ul.internal-list {
  grid-template-columns: repeat(1, 1fr);
}
.top-popular ul.internal-list h3 {
  color: #000;
}
.top-popular ul.internal-list span {
  font-size: 50%;
}
.top-popular ul.internal-list figure {
  min-width: 19.875rem;
}
@media (max-width: 767px) {
  .top-popular ul.internal-list figure {
    height: 5rem;
    min-width: auto;
  }
  .top-popular ul.internal-list li:last-child img {
    -o-object-position: right center;
       object-position: right center;
  }
}

.page-temp .menu-lead {
  text-align: center;
  margin-bottom: 5rem;
  line-height: 2;
}
@media (max-width: 767px) {
  .page-temp .menu-lead {
    text-align: left;
  }
}

/*******************
CTA
********************/
.c-cta {
  border-radius: inherit;
  padding: 1.25rem 0.375rem;
  box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  width: 100%;
  margin: 0 auto 3.75rem;
  border-radius: 0;
  border-top: 1px solid #3b190d;
  border-bottom: 1px solid #3b190d;
}
@media only screen and (min-width: 768px) {
  .c-cta {
    border: 1px solid #3b190d;
    border-radius: 5px;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    padding: 1.25rem;
  }
}
.c-cta__mail {
  background-color: #9a535c;
}
.c-cta__block:not(:last-child) {
  margin-bottom: 1.25rem;
  padding-bottom: 1.5625rem;
  border-bottom: 1px solid #dd4f39;
}
@media only screen and (min-width: 768px) {
  .c-cta__block:not(:last-child) {
    margin-bottom: 0.9375rem;
    padding-bottom: 0.9375rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-cta__block {
    display: flex;
    align-items: center;
    gap: 1.25rem;
  }
}
.c-cta__clinic {
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.9375rem;
}
@media only screen and (min-width: 768px) {
  .c-cta__clinic {
    margin-bottom: 0.625rem;
  }
}
.c-cta__clinic a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}
.c-cta__clinic a:hover {
  opacity: 0.6;
}
.c-cta__buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3125rem;
}
@media only screen and (min-width: 768px) {
  .c-cta__buttons {
    gap: 0.9375rem;
  }
}
.c-cta__link {
  display: grid;
  flex: 1;
  transition: opacity 0.3s;
  text-decoration: none;
  box-sizing: border-box;
  border: #000 solid 1px;
  justify-items: center;
  align-items: center;
  height: clamp(4rem, 22.299vw - 2.689875rem, 8rem);
}
.c-cta__link:hover {
  opacity: 0.8;
}
.c-cta__link img {
  width: auto;
  height: auto;
  display: block;
  max-height: 4.25rem;
}
@media only screen and (min-width: 768px) {
  .c-cta__link {
    height: 4rem;
  }
  .c-cta__link img {
    width: auto;
    height: 3.75rem;
  }
}
.c-cta__link.--tel {
  background-color: #53281d;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.1875rem;
  border: 1px solid #000;
  aspect-ratio: 110/60;
}
@media only screen and (min-width: 768px) {
  .c-cta__link.--tel {
    width: 12.8125rem;
    height: 3.75rem;
    flex: initial;
    aspect-ratio: auto;
  }
}
.c-cta__tel-txt {
  font-size: clamp(0.75rem, 1.8vw, 0.875rem);
  font-weight: normal;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) {
  .c-cta__tel-txt {
    font-size: 0.75rem;
  }
}
.c-cta__tel-no {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  width: 100%;
}
.c-cta__tel-no img {
  width: clamp(0.625rem, 2.5vw, 1.125rem) !important;
  height: auto !important;
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .c-cta__tel-no img {
    width: 1.125rem !important;
  }
}
.c-cta__tel-no span {
  font-size: clamp(0.75rem, 2.8vw, 1.125rem);
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) {
  .c-cta__tel-no span {
    font-size: 1.125rem;
  }
}

/*******************
人気施術＆ランキング
********************/
.page-temp .top-popular .inner_1040 {
  border-radius: 0;
  max-width: none;
}
.page-temp .top-popular.beauty-ranking .inner_1040 {
  background-color: transparent;
}
.page-temp .top-popular.beauty-ranking .inner_1040 ul li {
  border: 1px solid #b69262;
}
.page-temp .top-popular ul {
  grid-template-columns: repeat(1, 1fr);
}
.page-temp .top-popular ul .clinic-span-wrap {
  position: absolute;
  top: clamp(0rem, 2.198vw - 0.9285625rem, 0.375rem);
  right: clamp(0.375rem, 5.128vw - 1.707125rem, 1.25rem);
}
.page-temp .top-popular ul li {
  position: relative;
}
.page-temp .top-popular figure {
  width: clamp(12.575625rem, 22.341vw + 1.865875rem, 16.875rem);
}
.page-temp .top-popular figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.page-temp .top-popular .umeda,
.page-temp .top-popular .kobe {
  display: inline-block;
  padding: clamp(0.125rem, 2.198vw - 0.9285625rem, 0.5rem) clamp(0.625rem, 3.663vw - 1.1309375rem, 1.25rem);
  font-size: clamp(0.6875rem, 1.099vw + 0.1606875rem, 0.875rem);
  color: #fff;
  font-weight: bold;
  border-radius: 1.25rem;
  text-align: center;
}
.page-temp .top-popular .umeda {
  background: #ed7470;
}
.page-temp .top-popular .kobe {
  background: #b54151;
}
@media (max-width: 767px) {
  .page-temp .top-popular.page-custom ul li a > div {
    padding-top: 1.625rem;
  }
}

.top-popular .rank-badge,
.top-ranking .rank-badge {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(1.875rem, 4.8vw, 3.125rem);
  height: clamp(3.125rem, 6.7vw, 4.375rem);
  background-color: #3b190d;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  color: #fff;
  font-weight: bold;
  font-size: clamp(1rem, 1.7vw, 1.125rem);
  padding-top: clamp(0.125rem, 0.5vw, 0.375rem);
  padding-left: clamp(0.375rem, 0.9vw, 0.625rem);
}
.top-popular ul li:nth-of-type(1) .rank-badge,
.top-ranking ul li:nth-of-type(1) .rank-badge {
  background-color: #b69262;
}
.top-popular ul li:nth-of-type(2) .rank-badge,
.top-ranking ul li:nth-of-type(2) .rank-badge {
  background-color: #b4b2b2;
}
.top-popular ul li:nth-of-type(3) .rank-badge,
.top-ranking ul li:nth-of-type(3) .rank-badge {
  background-color: #c47022;
}

/*******************
クリニックについて
********************/
.about-message,
.about-introduce {
  margin-bottom: clamp(2.5rem, -0.52925rem + 6.319vw, 5rem);
}

.about-message .sec-h2-tit {
  margin-bottom: clamp(2.5rem, -1.0073125rem + 5.495vw, 3.75rem);
}

.c-imgset04-area,
.c-imgset05-area {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
  margin-bottom: clamp(2.5rem, -1.0073125rem + 5.495vw, 3.75rem);
}
@media (min-width: 768px) {
  .c-imgset04-area,
  .c-imgset05-area {
    flex-direction: row-reverse;
    align-items: center;
  }
}

.c-imgset05-area {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .c-imgset05-area {
    flex-direction: row;
  }
}

.c-imgset04__img,
.c-imgset05__img {
  width: 100%;
  margin-bottom: 0;
}

.c-imgset04__img {
  margin-left: -1.25rem;
}
@media (min-width: 768px) {
  .c-imgset04__img {
    margin: -4.375rem -8.125rem 0 0;
  }
}

.c-imgset05__img {
  margin-left: 0.75rem;
}
@media (min-width: 768px) {
  .c-imgset05__img {
    max-width: 70%;
    margin: -5.625rem 0 0 -8.125rem;
  }
}

@media (min-width: 768px) {
  .about-treatment-medical .c-imgset04__img {
    margin: 0 -8.125rem 0 0;
  }
}

@media (min-width: 768px) {
  .about-treatment .c-imgset05__img {
    margin: 0 0 0 -8.125rem;
  }
}

.c-imgset04__head {
  text-align: left;
}

.c-imgset04__box,
.c-imgset05__box {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  border: 0.3125rem solid #fee4d6;
  padding: 0.125rem;
}
@media (min-width: 768px) {
  .c-imgset04__box,
  .c-imgset05__box {
    width: 100%;
    border-width: 0.625rem;
    padding: 0.25rem;
  }
}
@media (min-width: 768px) {
  .c-imgset04__box::before, .c-imgset04__box::after,
  .c-imgset05__box::before,
  .c-imgset05__box::after {
    content: "";
    position: absolute;
    width: 3.625rem;
    height: 2.75rem;
  }
}
@media (min-width: 768px) {
  .c-imgset04__box::before,
  .c-imgset05__box::before {
    top: 2.1875rem;
    left: 2.3125rem;
  }
}
@media (min-width: 768px) {
  .c-imgset04__box::after,
  .c-imgset05__box::after {
    bottom: 2.8125rem;
    right: 7.3125rem;
  }
}

.c-imgset04__box {
  margin: -2.9375rem -1.875rem 0 0.625rem;
}
@media (min-width: 768px) {
  .c-imgset04__box {
    margin: 11% -17% 0 -26%;
  }
}

.c-imgset05__box {
  margin: -2.1875rem 1.75rem 0 -1.875rem;
}
@media (min-width: 768px) {
  .c-imgset05__box {
    max-width: 70%;
    margin: 10% -26% 0 -17%;
  }
}

@media (min-width: 768px) {
  .about-treatment-medical .c-imgset04__box {
    margin: 0 -17% 0 -26%;
  }
}

.about-treatment .c-imgset05__box {
  margin: -2.25rem -10% 0 9%;
}
@media (min-width: 768px) {
  .about-treatment .c-imgset05__box {
    margin: 0 -26% 0 -17%;
  }
}

.c-imgset04__lead,
.c-imgset05__lead {
  background-color: #fee4d6;
  box-sizing: border-box;
}

.c-imgset04__lead {
  padding: 2.5rem 1.25rem;
}
@media (min-width: 768px) {
  .c-imgset04__lead {
    padding: 4.375rem 1.875rem 4.375rem 20%;
  }
}

.c-imgset05__lead {
  padding: 2.1875rem 1.25rem 2.1875rem 1.5625rem;
}
@media (min-width: 768px) {
  .c-imgset05__lead {
    padding: 6.25rem 20% 4.375rem 7%;
  }
}

.about-treatment-beauty-imgset__lead.c-imgset05__lead {
  padding: 2.5rem 1.25rem;
}

.c-imgset04__txt,
.c-imgset05__txt {
  line-height: 1.5;
}

.about-message-imgset__area,
.about-introduce-area {
  margin-bottom: clamp(2.5rem, -1.0073125rem + 5.495vw, 3.75rem);
}

.about-introduce-area-name-box {
  max-width: 12rem;
  margin-bottom: 1.875rem;
}

.about-message-imgset__name {
  max-width: 11.1875rem;
}

.about-message-imgset__name-box {
  display: flex;
  gap: 0.625rem;
  padding-top: 1.25rem;
}

.c-head03 {
  font-size: clamp(1.0625rem, -0.867875rem + 4.029vw, 1.75rem);
  margin-bottom: 1.25rem;
}

iframe.youtube_area {
  display: block;
  margin: 0 auto 1.25rem;
  width: 90%;
  max-width: 35rem;
  height: auto;
  max-height: 18.75rem;
}
@media (min-width: 768px) {
  iframe.youtube_area {
    height: 18.75rem;
    max-height: none;
  }
}

.youtube {
  width: 100%;
  aspect-ratio: 16/9;
  max-height: 18.75rem;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

.about-guide {
  background-color: #ffffff;
  padding-top: 5rem;
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .about-guide {
    padding-bottom: 5rem;
  }
}

.initial-guide__box {
  position: relative;
  box-sizing: border-box;
  border: 0.3125rem solid #fee4d6;
  padding: 0.125rem;
  margin-top: -2.1875rem;
}
@media (min-width: 768px) {
  .initial-guide__box {
    border-width: 0.625rem;
    padding: 0.25rem;
    max-width: 65rem;
    margin: -4.375rem auto 0;
  }
}

.initial-guide__in {
  background-color: #fee4d6;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 2.5rem 1.25rem 1.25rem;
}
@media (min-width: 768px) {
  .initial-guide__in {
    padding: 3.75rem 0 2.5rem;
  }
}

.about-ideal {
  margin-top: 3.125rem;
  padding: 5rem 0;
  background: url(../img/about/bg_ideal01_sp.webp) no-repeat center/cover;
}

.about-ideal__txt {
  text-align: center;
  line-height: 2;
  margin-bottom: 3.75rem;
}

.about-doctors {
  background: #fee4d6;
  padding: 5rem 0 3.0625rem;
}
@media (min-width: 768px) {
  .about-doctors {
    padding: 3.3125rem 0 3.5rem;
  }
}

.about-doctors-head {
  margin-bottom: 2.6875rem;
}
@media (min-width: 768px) {
  .about-doctors-head {
    margin-bottom: 3.5rem;
  }
}

.about-doctors-btn {
  margin-top: 1.8125rem;
}
@media (min-width: 768px) {
  .about-doctors-btn {
    margin-top: 3.5rem;
  }
}

@media (min-width: 768px) {
  .about-doctors-btn__link {
    max-width: 26.25rem;
  }
}

.about-doctors__list {
  margin-top: 1.875rem;
}
@media (min-width: 768px) {
  .about-doctors__list {
    display: flex;
    max-width: 65rem;
    margin: 3.125rem auto 0;
  }
}

@media (min-width: 768px) {
  .about-doctors__item {
    width: calc(50% - 1.875rem);
    margin: 0 0.9375rem;
  }
}
.about-doctors__item + .about-doctors__item {
  margin-top: 0.9375rem;
}
@media (min-width: 768px) {
  .about-doctors__item + .about-doctors__item {
    margin-top: 0;
  }
}

.about-doctors__item-txt {
  margin-top: 0.3125rem;
  color: #777;
}

.about-doctors__lead {
  margin-top: 0.9375rem;
  margin-bottom: 3.75rem;
}
@media (min-width: 768px) {
  .about-doctors__lead {
    margin-top: 2.125rem;
    text-align: center;
    line-height: 2.2;
  }
}

.about-doctors .radius-brown-btn a,
.about-swift .radius-brown-btn a {
  font-size: 95%;
}

.about-swift {
  padding: 2.375rem 0 3.0625rem;
}
@media (min-width: 768px) {
  .about-swift {
    padding: 4.625rem 0 3.625rem;
  }
}

.about-swift-btn {
  margin-top: 1.8125rem;
}

.about-swift__list {
  margin-top: 1.875rem;
}
@media (min-width: 768px) {
  .about-swift__list {
    display: flex;
    max-width: 65rem;
    margin: 3.125rem auto 0;
  }
}

@media (min-width: 768px) {
  .about-swift__item {
    width: calc(50% - 1.875rem);
    margin: 0 0.9375rem;
  }
}
.about-swift__item + .about-swift__item {
  margin-top: 0.9375rem;
}
@media (min-width: 768px) {
  .about-swift__item + .about-swift__item {
    margin-top: 0;
  }
}

.about-swift__item-txt {
  margin-top: 0.3125rem;
  color: #777;
}

.about-swift__lead {
  font-size: clamp(1.0625rem, -0.867875rem + 4.029vw, 1.75rem);
  font-weight: 600;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .about-swift__lead {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .about-swift__txt {
    margin-top: 2.875rem;
    text-align: center;
    line-height: 2.3;
  }
}

.campaign-about {
  margin-bottom: 3.125rem;
}
@media (min-width: 768px) {
  .campaign-about {
    margin-bottom: 0.9375rem;
  }
}

.campaign-about__item {
  background: #f7f6f2;
  box-sizing: border-box;
  padding: 1.25rem 0.9375rem;
  border-radius: 0.3125rem;
  margin-bottom: 0.625rem;
}
@media (min-width: 768px) {
  .campaign-about__item {
    padding: 2.8125rem 2.8125rem 1.25rem;
    border-radius: 0.5rem;
    margin-bottom: 0.9375rem;
  }
}

.campaign-about__head {
  font-weight: bold;
  font-size: 1rem;
  margin-bottom: 0.3125rem;
}
@media (min-width: 768px) {
  .campaign-about__head {
    font-size: 1.125rem;
    margin-bottom: 0.9375rem;
  }
}

.campaign-about__txt {
  margin-bottom: 0.625rem;
}
@media (min-width: 768px) {
  .campaign-about__txt {
    margin-bottom: 1.5625rem;
  }
}

@media (min-width: 768px) {
  .campaign-about__wrap {
    overflow: hidden;
  }
}
.campaign-about__wrap .is_therma {
  width: 51%;
}
@media (min-width: 768px) {
  .campaign-about__wrap .is_therma {
    width: 26%;
    margin: 0 4% 0 0;
  }
}
@media (min-width: 768px) {
  .campaign-about__wrap .is_thermatxt {
    width: 69%;
  }
}

.campaign-about__wrap-img {
  width: 75%;
  margin: 0.625rem auto 1.25rem;
}
@media (min-width: 768px) {
  .campaign-about__wrap-img {
    float: left;
    width: 38%;
    margin: 0 5% 0 0;
  }
}

@media (min-width: 768px) {
  .campaign-about__wrap-txt {
    float: right;
    width: 56%;
  }
}

.campaign-doctor {
  margin-bottom: 3.125rem;
}
@media (min-width: 768px) {
  .campaign-doctor {
    margin-bottom: 6.25rem;
  }
}

.campaign-doctor__bg {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  background: #fee4d6;
  padding: 2.1875rem 1.25rem 2.8125rem;
}
@media (min-width: 768px) {
  .campaign-doctor__bg {
    padding: 4.0625rem 3.125rem 4.375rem;
    border-radius: 0.5rem;
  }
}
.campaign-doctor__bg::before {
  position: absolute;
  display: block;
  content: "";
  border: 0.125rem solid #fff;
  top: 0.3125rem;
  left: 0.3125rem;
  right: 0.3125rem;
  bottom: 0.3125rem;
}
@media (min-width: 768px) {
  .campaign-doctor__bg::before {
    top: 0.625rem;
    left: 0.625rem;
    right: 0.625rem;
    bottom: 0.625rem;
  }
}

.campaign-doctor__head {
  margin-bottom: 0.9375rem;
}
@media (min-width: 768px) {
  .campaign-doctor__head {
    margin-bottom: 2.1875rem;
  }
}

.campaign-doctor__head-inner {
  padding: 0 0 0.625rem;
}

@media (min-width: 768px) {
  .campaign-doctor__head-sub {
    font-size: 2.125rem;
  }
}

@media (min-width: 768px) {
  .campaign-doctor__wrap {
    overflow: hidden;
  }
}

.campaign-doctor__img {
  width: 57%;
  margin: 0 auto 0.625rem;
}
@media (min-width: 768px) {
  .campaign-doctor__img {
    float: left;
    width: 26%;
    margin: 0 auto 0.625rem;
  }
}

@media (min-width: 768px) {
  .campaign-doctor__txtbox {
    float: right;
    width: 70%;
  }
}

.campaign-doctor__txt {
  margin-bottom: 0.9375rem;
}

.campaign-doctor__name {
  width: 50%;
  float: right;
}
@media (min-width: 768px) {
  .campaign-doctor__name {
    margin-top: 1.875rem;
    width: 40%;
    float: none;
  }
}

.about-initial {
  padding: 2.5625rem 0 3.1875rem;
}
@media (min-width: 768px) {
  .about-initial {
    padding: 5.5rem 0 3.875rem;
  }
}

@media (min-width: 768px) {
  .about-initial-head {
    margin-bottom: 2.875rem;
  }
}

@media (min-width: 768px) {
  .about-initial__txt {
    text-align: center;
    font-size: 1.125rem;
  }
}

.about-initial__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 16.625rem;
  margin: 1.4375rem auto 1.1875rem;
}
@media (min-width: 768px) {
  .about-initial__list {
    flex-wrap: nowrap;
    max-width: 48.4375rem;
    margin: 3.125rem auto 2.4375rem;
  }
}

.about-initial__item {
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: cover;
  width: 7.9375rem;
  height: 7.9375rem;
  margin-bottom: 0.625rem;
}
@media (min-width: 768px) {
  .about-initial__item {
    width: 10.9375rem;
    height: 10.9375rem;
    margin-bottom: 0;
  }
}
.about-initial__item.is-item01 {
  background-image: url(../img/about/bg_guide01.png);
}
.about-initial__item.is-item02 {
  background-image: url(../img/about/bg_guide02.png);
}
.about-initial__item.is-item03 {
  background-image: url(../img/about/bg_guide03.png);
}
.about-initial__item.is-item04 {
  background-image: url(../img/about/bg_guide04.png);
}

.about-initial__item-txt {
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  .about-initial__item-txt {
    font-size: 1.5rem;
  }
}

.about-initial__item-txt__stxt {
  display: inline-block;
  font-weight: normal;
  line-height: 1.3;
  font-size: 0.75rem;
  margin-bottom: 0.1875rem;
}
@media (min-width: 768px) {
  .about-initial__item-txt__stxt {
    font-size: 0.9375rem;
  }
}

.about-facitity {
  background: #fee4d6;
  padding: 2.5rem 0 1.5625rem;
}
@media (min-width: 768px) {
  .about-facitity {
    padding: 5rem 0 4.1875rem;
  }
}

.about-facitity-head {
  margin-bottom: clamp(3.0625rem, -4.996125rem + 16.85vw, 5.9375rem);
}

.about-facitity-sec.is-medicine {
  margin-top: clamp(2.4375rem, -0.1909375rem + 5.495vw, 3.375rem);
}
.about-facitity-sec.is-medicine .about-facitity-sec__head {
  background: url(../img/about/bg_medicine01_sp.webp) no-repeat center/cover;
}
@media (min-width: 768px) {
  .about-facitity-sec.is-medicine .about-facitity-sec__head {
    background-image: url(../img/about/bg_medicine01_pc.webp);
  }
}

.about-facitity-sec__head {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  color: #fff;
  text-align: center;
  font-weight: 600;
  background: url(../img/about/bg_facilty01_sp.webp) no-repeat center/cover;
  font-size: clamp(1.0625rem, -1.9208125rem + 6.227vw, 2.125rem);
  height: clamp(17.5rem, -4.4208125rem + 45.788vw, 25.3125rem);
}
@media (min-width: 768px) {
  .about-facitity-sec__head {
    background-image: url(../img/about/bg_facilty01_pc.webp);
  }
}

.about-facitity-sec-box {
  position: relative;
  box-sizing: border-box;
  border: 0.3125rem solid #fff;
  padding: 0.125rem;
  margin-top: -2.1875rem;
}
@media (min-width: 768px) {
  .about-facitity-sec-box {
    border-width: 0.625rem;
    padding: 0.25rem;
    max-width: 65rem;
    margin: -3.75rem auto 0;
  }
}

.about-facitity-sec-list {
  background-color: #fff;
  padding: 1.25rem 0.9375rem 1.5625rem;
}
@media (min-width: 768px) {
  .about-facitity-sec-list {
    display: flex;
    flex-wrap: wrap;
    padding: 2.5rem;
  }
}

.about-facitity-sec-list__head {
  font-size: 1.0625rem;
}
@media (min-width: 768px) {
  .about-facitity-sec-list__head {
    margin: 0.625rem 0 0.9375rem;
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.about-facitity-sec-list__txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .about-facitity-sec-list__txt {
    font-size: 0.9375rem;
  }
}

@media (min-width: 768px) {
  .about-facitity-sec-list__item {
    width: 31.9%;
    max-width: 18.5625rem;
    margin-right: 2.1%;
  }
}
.about-facitity-sec-list__item + .about-facitity-sec-list__item {
  margin-top: 1.3125rem;
}
@media (min-width: 768px) {
  .about-facitity-sec-list__item + .about-facitity-sec-list__item {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .about-facitity-sec-list__item:nth-child(3n) {
    margin-right: 0;
  }
  .about-facitity-sec-list__item:nth-child(n+4) {
    margin-top: 2.6875rem;
  }
}

#kobe .secInterior {
  padding: 2.5rem 0 3.125rem;
}
@media (min-width: 768px) {
  #kobe .secInterior {
    padding: 4.375rem 0 4.375rem;
  }
}
@media (min-width: 768px) {
  #kobe .secInterior__head {
    margin-bottom: 3.125rem;
  }
}
#kobe .secInterior__lead {
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  #kobe .secInterior__lead {
    margin-bottom: 2.5rem;
    text-align: center;
    line-height: 2.125;
  }
}
#kobe .secInterior__imgs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem 0;
}
@media (min-width: 768px) {
  #kobe .secInterior__imgs {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.1875rem 1.875rem;
  }
}

.secInterior__img {
  display: flex;
  justify-content: center;
}

.about-treatment-area,
.about-treatment-beauty,
.about-treatment-medical,
.about-treatment-medical-imgset__area {
  margin-bottom: clamp(2.5rem, -1.0073125rem + 5.495vw, 3.75rem);
}

.about-treatment-medical .c-imgset04__box {
  margin: -2.9375rem 0.625rem 0 -1.375rem;
}
.about-treatment-medical .c-imgset04__img {
  margin-left: 1.75rem;
}

.about-treatment-beauty .c-imgset05__img {
  margin-left: -1.25rem;
}

.initial-links__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.initial-links__item {
  width: calc(50% - 0.0625rem);
}
.initial-links__item:nth-child(n+3) {
  border-top: 0.125rem solid #fbd3ca;
}
@media (min-width: 768px) {
  .initial-links__item:nth-child(n+3) {
    border-top: 0;
  }
}
@media (min-width: 768px) {
  .initial-links__item {
    width: 25%;
    overflow: hidden;
    box-sizing: border-box;
    border-left: 0.125rem solid #fbd3ca;
  }
  .initial-links__item:nth-child(4n+1) {
    border-left: 0;
  }
  .initial-links__item:nth-child(n+5) {
    border-top: 0.125rem solid #fbd3ca;
  }
}
.initial-links__item.is-item01 .initial-links__img {
  background-image: url(../img/about/pic_links01.webp);
}
.initial-links__item.is-item02 .initial-links__img {
  background-image: url(../img/about/pic_links02.webp);
}
.initial-links__item.is-item03 .initial-links__img {
  background-image: url(../img/about/pic_links03.webp);
}
.initial-links__item.is-item04 .initial-links__img {
  background-image: url(../img/about/pic_links04.webp);
}
.initial-links__item.is-item05 .initial-links__img {
  background-image: url(../img/about/pic_links05.webp);
}
.initial-links__item.is-item06 .initial-links__img {
  background-image: url(../img/about/pic_links06.webp);
}
.initial-links__item.is-item07 .initial-links__img {
  background-image: url(../img/about/pic_links07.webp);
}
.initial-links__item.is-item08 .initial-links__img {
  background-image: url(../img/about/pic_links02.webp);
}
.initial-links__item.is-item01 .initial-links__icon svg {
  width: 1.75rem;
  height: 1.75rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item01 .initial-links__icon svg {
    width: 2.8125rem;
    height: 2.8125rem;
  }
}
.initial-links__item.is-item02 .initial-links__icon svg {
  width: 2.0625rem;
  height: 1.8125rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item02 .initial-links__icon svg {
    width: 3.125rem;
    height: 3.125rem;
  }
}
.initial-links__item.is-item03 .initial-links__icon svg {
  width: 1.0625rem;
  height: 1.9375rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item03 .initial-links__icon svg {
    width: 3.125rem;
    height: 3.125rem;
  }
}
.initial-links__item.is-item04 .initial-links__icon svg {
  width: 1.75rem;
  height: 1.9375rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item04 .initial-links__icon svg {
    width: 2.625rem;
    height: 2.625rem;
  }
}
.initial-links__item.is-item05 .initial-links__icon svg {
  width: 1.75rem;
  height: 1.75rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item05 .initial-links__icon svg {
    width: 3.125rem;
    height: 3.125rem;
  }
}
.initial-links__item.is-item06 .initial-links__icon svg {
  width: 1.75rem;
  height: 1.8125rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item06 .initial-links__icon svg {
    width: 2.8125rem;
    height: 3.125rem;
  }
}
.initial-links__item.is-item07 .initial-links__icon svg {
  width: 1.75rem;
  height: 1.75rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item07 .initial-links__icon svg {
    width: 2.625rem;
    height: 3.125rem;
  }
}
.initial-links__item.is-item08 .initial-links__icon svg {
  width: 1.8125rem;
  height: 1.9375rem;
}
@media (min-width: 768px) {
  .initial-links__item.is-item08 .initial-links__icon svg {
    width: 3.125rem;
    height: 3.125rem;
  }
}

.initial-links__link {
  display: block;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  height: clamp(9.8125rem, 0.2129375rem + 20.024vw, 12.5rem);
}
.initial-links__link::before {
  content: "";
  background: url(../img/about/ico_arw_white01.png) 0 0 no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3;
  margin: auto;
  bottom: 1.5rem;
  width: clamp(0.9375rem, -1.691375rem + 5.495vw, 1.875rem);
  height: clamp(0.1875rem, -0.51325rem + 1.465vw, 0.4375rem);
}
@media (min-width: 768px) {
  .initial-links__link::before {
    bottom: 1.5625rem;
  }
}
@media (min-width: 768px) {
  .initial-links__link {
    height: 12.5rem;
  }
  .initial-links__link:hover .initial-links__img {
    transform: scale(1.1);
  }
}

.initial-links__img {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  height: clamp(9.8125rem, 0.2129375rem + 20.024vw, 12.5rem);
}
@media (min-width: 768px) {
  .initial-links__img {
    height: 12.5rem;
    overflow: hidden;
    transition: transform 0.3s ease;
    will-change: transform;
  }
}

.initial-links__in {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, calc(-50% - 0.5rem));
}
@media (min-width: 768px) {
  .initial-links__in {
    min-height: 7.1875rem;
    transform: translate(-50%, calc(-50% - 0.75rem));
  }
}

.initial-links__icon {
  text-align: center;
  height: clamp(2.25rem, 1.54925rem + 1.465vw, 2.5rem);
}
.initial-links__icon svg {
  fill: #fff;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .initial-links__icon {
    height: 2.5rem;
  }
}

.initial-links__txt {
  color: #fff;
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
  font-size: clamp(1.0625rem, 0.536375rem + 1.099vw, 1.25rem);
}
@media (min-width: 768px) {
  .initial-links__txt {
    margin-top: 1.25rem;
    font-size: 1.25rem;
  }
}

.initial-links__bnr {
  margin: 1.875rem 1.25rem 3.125rem;
}
@media (min-width: 768px) {
  .initial-links__bnr {
    margin-top: 5.625rem;
    padding: 0;
  }
}

.c-head07 {
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin-bottom: clamp(1.5625rem, -1.068rem + 5.495vw, 2.5rem);
}
@media (min-width: 768px) {
  .c-head07 {
    padding-bottom: 0.9375rem;
  }
}

.c-head07__en {
  font-style: italic;
  font-size: clamp(2.1875rem, -1.4995625rem + 7.692vw, 3.5rem);
  margin-right: clamp(0.625rem, -1.1286875rem + 3.663vw, 1.25rem);
}

.c-head07__jp {
  font-weight: 600;
  font-size: clamp(1.0625rem, -0.164625rem + 2.564vw, 1.5rem);
}

.c-list03 {
  color: #3b190d;
}

.c-list03__item {
  position: relative;
  padding: 0.375rem 0 0.375rem 0.3125rem;
}
.c-list03__item::before {
  content: "";
  display: inline-block;
  transform: rotate(45deg);
  border-top: 0.0625rem solid #3b190d;
  border-right: 0.0625rem solid #3b190d;
  width: 0.375rem;
  height: 0.375rem;
  margin: 0 0.625rem 0.0625rem 0;
}
.c-list03__item + .c-list03__item {
  border-top: 0.0625rem solid #d3a0a0;
}
@media (min-width: 768px) {
  .c-list03__item {
    padding: 0.625rem 0 0.625rem 0.3125rem;
  }
}

.c-list03.is-link .c-list03__item::before {
  content: none;
}
.c-list03.is-link .c-list03__link {
  position: relative;
  display: block;
}
.c-list03.is-link .c-list03__link::before {
  content: "";
  display: inline-block;
  transform: rotate(45deg);
  border-top: 0.0625rem solid #3b190d;
  border-right: 0.0625rem solid #3b190d;
  width: 0.375rem;
  height: 0.375rem;
  margin: 0 0.625rem 0.0625rem 0;
}

.initial-search {
  margin: clamp(3.4375rem, -2.7014375rem + 12.821vw, 5.625rem) 0 clamp(3.4375rem, -4.4505625rem + 16.484vw, 6.25rem);
}
.initial-search .initial-search__item + .initial-search__item {
  margin-top: 0.9375rem;
}
@media (min-width: 768px) {
  .initial-search .initial-search__item + .initial-search__item {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .initial-search {
    display: flex;
    margin: 5.625rem 0 6.25rem;
  }
}

@media (min-width: 768px) {
  .initial-search__list {
    display: flex;
    margin: 0 -0.625rem;
  }
}

.initial-search__item {
  position: relative;
}
@media (min-width: 768px) {
  .initial-search__item {
    width: calc(33.3% - 1.25rem);
    margin: 0 0.625rem;
  }
}
.initial-search__item::before, .initial-search__item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/about/ico_corner08.png) left top no-repeat;
  background-size: contain;
}
.initial-search__item::after {
  right: 0;
  left: auto;
  transform: rotate(90deg);
}

.initial-search__inner {
  position: relative;
}
.initial-search__inner::before, .initial-search__inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/about/ico_corner08.png) left top no-repeat;
  background-size: contain;
  transform: rotate(-90deg);
}
.initial-search__inner::after {
  right: 0;
  left: auto;
  transform: rotate(-180deg);
}

@media (min-width: 768px) {
  .initial-search__child {
    padding: 0.3125rem 0;
  }
}

.initial-search__header {
  position: relative;
}

.initial-search__head {
  position: absolute;
  top: 50%;
  margin: 0;
  transform: translateY(-50%);
  right: clamp(1.875rem, 10.6341875rem - 18.315vw, 5rem);
}
@media (min-width: 768px) {
  .initial-search__head {
    right: 1.875rem;
    padding: 0;
  }
}

@media (min-width: 768px) {
  .initial-search__head-en {
    font-size: 2.125rem;
  }
}

@media (min-width: 768px) {
  .initial-search__head-ja {
    font-size: 1.125rem;
  }
}

.initial-search__txt {
  background-color: #fee4d6;
  color: #3b190d;
  min-height: auto;
  padding: clamp(1.25rem, -0.5036875rem + 3.663vw, 1.875rem) clamp(1.5625rem, 0.6865625rem + 1.832vw, 1.875rem);
}
@media (min-width: 768px) {
  .initial-search__txt {
    box-sizing: border-box;
    min-height: 25rem;
  }
}

/*******************
初めての方へ
********************/
.c-cv02 {
  max-width: 20.625rem;
  margin: auto;
}

.c-cv02__link {
  display: block;
  text-decoration: none;
  background-color: #3b190d;
  border-radius: 1.25rem;
  position: relative;
}
.c-cv02__link:before, .c-cv02__link:after {
  content: "";
  background: url(../img/common/ico_corner01.png) 0 0 no-repeat;
  background-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 0;
  z-index: 1;
}
.c-cv02__link:before {
  left: 0;
  transform: rotate(-90deg);
}
.c-cv02__link:after {
  right: 0;
}
@media all and (min-width: 48rem) {
  .c-cv02__link {
    border-radius: 2.5rem;
    transition: all 0.3s ease;
  }
  .c-cv02__link:before, .c-cv02__link:after {
    width: 2.5rem;
    height: 2.5rem;
    transition: all 0.3s ease;
  }
  .c-cv02__link:hover {
    background-color: #b69262;
  }
  .c-cv02__link:hover:before, .c-cv02__link:hover:after {
    background: url(../img/common/ico_corner05.png) 0 0 no-repeat;
  }
  .c-cv02__link:hover .c-cv02__in:before,
  .c-cv02__link:hover .c-cv02__in:after {
    background: url(../img/common/ico_corner05.png) 0 0 no-repeat;
  }
  .c-cv02__link:hover .c-cv02__icon .cls-1 {
    fill: #fff;
  }
  .c-cv02__link:hover .c-cv02__txt:after {
    background: url(../img/common/ico_arw_white01.png) 0 0 no-repeat;
    background-size: contain;
  }
}

.c-cv02__in {
  display: flex;
  justify-content: center;
  align-items: center;
  height: clamp(5.3125rem, 4.08310625rem + 2.5645vw, 5.75rem);
}
.c-cv02__in:before, .c-cv02__in:after {
  content: "";
  background: url(../img/common/ico_corner01.png) 0 0 no-repeat;
  background-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  bottom: 0;
  z-index: 1;
}
.c-cv02__in:before {
  left: 0;
  transform: rotate(180deg);
}
.c-cv02__in:after {
  right: 0;
  transform: rotate(90deg);
}
@media all and (min-width: 48rem) {
  .c-cv02__in:before, .c-cv02__in:after {
    width: 2.5rem;
    height: 2.5rem;
    transition: all 0.3s ease;
  }
}

.c-cv02__txt {
  color: #fff;
  font-size: clamp(1rem, 0.64880625rem + 0.7326vw, 1.125rem);
  font-weight: bold;
  text-align: center;
  line-height: 1;
}
.c-cv02__txt:after {
  content: "";
  background: url(../img/common/ico_arw_brown01.png) 0 0 no-repeat;
  background-size: contain;
  width: 0.9375rem;
  height: 0.1875rem;
  position: absolute;
  top: 50%;
  right: 0.9375rem;
}
@media all and (min-width: 48rem) {
  .c-cv02__txt {
    position: relative;
    font-family: "Noto Sans JP";
  }
  .c-cv02__txt:after {
    width: 1.75rem;
    height: 0.375rem;
    top: 30%;
    right: -2.5rem;
    transition: all 0.3s ease;
  }
}

.c-cv02__icon {
  display: inline-block;
  margin: 0 0.9375rem -0.3125rem 0;
}
.c-cv02__icon svg {
  width: 1.75rem;
  height: 1.625rem;
}
.c-cv02__icon .cls-1 {
  fill: #b69262;
}
@media all and (min-width: 48rem) {
  .c-cv02__icon {
    margin: 0;
    position: absolute;
    left: -3.75rem;
    top: -0.875rem;
    z-index: 2;
  }
  .c-cv02__icon svg {
    width: 2.75rem;
    height: 2.625rem;
    transition: all 0.3s ease;
  }
}

@media all and (min-width: 48rem) {
  .c-cv02 {
    max-width: 42.5rem;
    margin: 0;
  }
}
.btn-tel {
  cursor: pointer;
}

.c-imgset04__img {
  margin-left: -1.25rem;
}

.c-imgset04__head {
  text-align: left;
}

.c-imgset04__box {
  border: 0.3125rem solid #fee4d6;
  box-sizing: border-box;
  padding: 0.125rem;
  margin: -2.9375rem -1.875rem 0 0.625rem;
  position: relative;
  z-index: 2;
}

.c-imgset04__lead {
  background-color: #fee4d6;
  padding: 2.5rem 1.25rem;
}

.c-imgset04__lead-txt {
  margin-bottom: 0.3125rem;
  font-weight: 500;
  line-height: 1.6;
}

.c-imgset04__txt {
  line-height: 1.5;
}

@media all and (min-width: 48rem) {
  .c-imgset04-area {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: relative;
    z-index: 2;
  }
  .c-imgset04__img {
    max-width: 70%;
    width: 100%;
    margin: 0 -8.125rem 0 0;
  }
  .c-imgset04__box {
    max-width: 70%;
    width: 100%;
    border: 0.625rem solid #fee4d6;
    padding: 0.25rem;
    margin: 0 -17% 0 -26%;
  }
  .c-imgset04__box:before, .c-imgset04__box:after {
    width: 3.625rem;
    height: 2.75rem;
  }
  .c-imgset04__box:before {
    top: 2.1875rem;
    left: 2.3125rem;
  }
  .c-imgset04__box:after {
    bottom: 2.8125rem;
    right: 7.3125rem;
  }
  .c-imgset04__lead {
    padding: clamp(2.5rem, -2.76556875rem + 10.9853vw, 4.375rem) 1.875rem clamp(2.5rem, -2.76556875rem + 10.9853vw, 4.375rem) 20%;
    box-sizing: border-box;
  }
  .c-imgset04__lead-txt {
    font-size: 1.375rem;
    margin-bottom: 0.3125rem;
  }
  .c-imgset04-set__head {
    text-align: center;
  }
}
.ft-contact__txt {
  font-size: clamp(0.875rem, 0.5234rem + 0.7326vw, 1rem);
  letter-spacing: -0.05em;
  line-height: 1.5;
  text-align: center;
  margin-bottom: clamp(1.875rem, -2.3388rem + 8.7912vw, 3.75rem);
}

.ft-contact-cv-tel {
  margin-bottom: clamp(0.9375rem, -3.4487rem + 9.1575vw, 2.5rem);
}

@media all and (min-width: 48rem) {
  .ft-contact-btns {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 0.625rem;
    box-sizing: border-box;
  }
  .ft-contact-btns__item {
    width: 50%;
    margin-top: 0;
    margin-right: 0.9375rem;
  }
}
.initial-lead {
  padding: clamp(2.1875rem, -3.9571875rem + 12.8205vw, 4.375rem) 0 3.125rem;
}

.initial-lead__txt {
  line-height: 2.1;
}

@media all and (min-width: 48rem) {
  .initial-lead {
    padding: 4.375rem 0;
  }
  .initial-lead__txt {
    text-align: center;
  }
}
.initial-anchor {
  margin-top: clamp(2.8125rem, -1.4011rem + 8.7912vw, 4.375rem);
}

.initial-anchor__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media all and (min-width: 48rem) {
  .initial-anchor__list {
    margin: 0 -0.625rem;
  }
}

.initial-anchor__item {
  position: relative;
  width: calc(33.3% - 0.625rem);
  margin: 0 0.3125rem;
}
.initial-anchor__item:nth-child(n+4) {
  margin-top: 0.625rem;
}
.initial-anchor__item:before, .initial-anchor__item:after {
  position: absolute;
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  top: 0;
  z-index: 1;
}
.initial-anchor__item:before {
  background: url(../img/common/ico_corner04.png) 0 0 no-repeat;
  background-size: contain;
  right: 0;
}
.initial-anchor__item:after {
  background: url(../img/common/ico_corner04.png) 0 0 no-repeat;
  background-size: contain;
  left: 0;
  transform: rotate(-90deg);
}
@media all and (min-width: 48rem) {
  .initial-anchor__item {
    width: calc(20% - 1.25rem);
    margin: 0 0.625rem;
  }
  .initial-anchor__item:nth-child(n+4) {
    margin-top: 0;
  }
  .initial-anchor__item:before, .initial-anchor__item:after {
    content: none;
  }
}

.initial-anchor__in {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3.125rem;
  position: relative;
}
.initial-anchor__in:before {
  position: absolute;
  content: "";
  bottom: -0.1875rem;
  left: 47%;
  width: 0.4375rem;
  height: 0.4375rem;
  border-bottom: 0.0625rem solid #3b190d;
  border-right: 0.0625rem solid #3b190d;
  transform: rotate(45deg);
}
@media all and (min-width: 48rem) {
  .initial-anchor__in:before {
    bottom: -1.875rem;
  }
}

.initial-anchor__in-txt {
  position: relative;
  font-size: clamp(0.75rem, -1.2299rem + 4.1245vw, 1.3125rem);
  line-height: 1.45;
  z-index: 11;
}
.initial-anchor__in-txt.is-small {
  font-size: clamp(0.6875rem, -0.4245rem + 2.3172vw, 1rem);
}
@media all and (min-width: 48rem) {
  .initial-anchor__in-txt {
    font-weight: bold;
  }
}

.initial-anchor__link {
  display: block;
  position: relative;
  padding: 0.3125rem 0.625rem 1.25rem;
  text-align: center;
  background-color: #fee4d6;
  border-radius: 1.25rem;
  text-decoration: none;
  box-sizing: border-box;
  height: 4.375rem;
}
.initial-anchor__link:before, .initial-anchor__link:after {
  position: absolute;
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  bottom: 0;
  z-index: 1;
}
.initial-anchor__link:before {
  background: url(../img/common/ico_corner04.png) 0 0 no-repeat;
  background-size: contain;
  right: 0;
  transform: rotate(90deg);
}
.initial-anchor__link:after {
  background: url(../img/common/ico_corner04.png) 0 0 no-repeat;
  background-size: contain;
  left: 0;
  transform: rotate(180deg);
}
@media all and (min-width: 48rem) {
  .initial-anchor__link {
    padding: 4.0625rem 0.625rem;
    text-align: center;
    border-radius: 50%;
    height: 11.5625rem;
    box-sizing: border-box;
    background: no-repeat center center;
    background-size: contain;
  }
  .initial-anchor__link:before, .initial-anchor__link:after {
    content: none;
  }
  .initial-anchor__link.is-bg01 {
    background-image: url(../img/about/bg_guide01.png);
  }
  .initial-anchor__link.is-bg02 {
    background-image: url(../img/about/bg_guide02.png);
  }
  .initial-anchor__link.is-bg03 {
    background-image: url(../img/about/bg_guide03.png);
  }
  .initial-anchor__link.is-bg04 {
    background-image: url(../img/about/bg_guide04.png);
  }
  .initial-anchor__link.is-bg05 {
    background-image: url(../img/about/bg_guide05.png);
  }
}

@media all and (min-width: 48rem) and (max-width: 52.5rem) {
  .initial-anchor__list {
    max-width: 40rem;
    margin: 0 auto;
  }
  .initial-anchor__item {
    width: calc(33% - 1.25rem);
  }
  .initial-anchor__item:nth-child(n+4) {
    margin-top: 0;
  }
}
.initial-lady {
  padding: clamp(2.1875rem, -0.44643125rem + 5.4945vw, 3.125rem) 0 2.8125rem;
  background-color: #fee4d6;
}

.initial-lady__list {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-lady__list {
    max-width: 65rem;
    display: flex;
    margin: 3.125rem auto 0;
  }
}

.initial-lady__item-txt {
  margin-top: 0.3125rem;
  color: #777;
}

.initial-lady__item + .initial-lady__item {
  margin-top: 1.25rem;
}
@media all and (min-width: 48rem) {
  .initial-lady__item {
    width: calc(33.3% - 1.5625rem);
    margin: 0 0.75rem;
  }
  .initial-lady__item + .initial-lady__item {
    margin-top: 0;
  }
}

@media all and (min-width: 48rem) {
  .initial-lady {
    padding: 3.125rem 0 3.75rem;
  }
  .initial-lady__lead {
    text-align: center;
    font-weight: 600;
    line-height: 2.2;
  }
}
.initial-first {
  padding: clamp(1.875rem, -5.1511rem + 14.652vw, 4.375rem) 0 3.125rem;
}

.initial-first__lead {
  margin-top: 0.9375rem;
}
@media all and (min-width: 48rem) {
  .initial-first__lead {
    line-height: 2.2;
    text-align: center;
    margin-top: 0;
  }
}

.initial-first__area {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-first__area {
    margin-top: clamp(1.875rem, -5.1511rem + 14.652vw, 4.375rem);
  }
}

.initial-first__set-btns {
  margin-top: 0.9375rem;
}

@media all and (min-width: 48rem) {
  .initial-first {
    padding: 4.375rem 0;
  }
  .initial-first__set {
    padding: 7.8125rem 3.125rem 3.125rem;
  }
}
.c-imgset05__img {
  margin-right: -1.25rem;
}

.c-imgset05__head {
  text-align: left;
}

.c-imgset05__box {
  border: 0.3125rem solid #fee4d6;
  box-sizing: border-box;
  padding: 0.125rem;
  margin: -2.1875rem 0 0 -1.875rem;
  position: relative;
  z-index: 2;
}

.c-imgset05__lead {
  background-color: #fee4d6;
  padding: 2.1875rem 1.25rem 2.1875rem 1.5625rem;
}

.c-imgset05__lead-txt {
  margin-bottom: 0.3125rem;
  font-weight: 500;
  line-height: 1.6;
}

.c-imgset05__txt {
  line-height: 1.5;
}

.c-imgset05.is-white .c-imgset05__box {
  border: 0.3125rem solid #fff;
}
.c-imgset05.is-white .c-imgset05__lead {
  background-color: #fff;
}

@media all and (min-width: 48rem) {
  .c-imgset05-area {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
  }
  .c-imgset05__img {
    max-width: 70%;
    width: 100%;
    margin: 0 0 0 -8.125rem;
  }
  .c-imgset05__box {
    max-width: 70%;
    width: 100%;
    border: 0.625rem solid #fee4d6;
    padding: 0.25rem;
    margin: 10% -26% 0 -17%;
  }
  .c-imgset05__box:before, .c-imgset05__box:after {
    width: 3.625rem;
    height: 2.75rem;
  }
  .c-imgset05__box:before {
    top: 2.1875rem;
    left: 2.3125rem;
  }
  .c-imgset05__box:after {
    bottom: 2.8125rem;
    right: 7.3125rem;
  }
  .c-imgset05__lead {
    padding: clamp(2.1875rem, -9.219325rem + 23.7949vw, 6.25rem) 20% 4.375rem 7%;
    box-sizing: border-box;
  }
  .c-imgset05__lead-txt {
    font-size: 1.5rem;
    margin-bottom: 0.3125rem;
  }
}
.initial-quality {
  padding: clamp(3.125rem, -0.3777475rem + 7.326vw, 4.375rem) 0;
  background-color: #fee4d6;
}

.initial-quality__list {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-quality__list {
    max-width: 65rem;
    margin: 3.125rem auto 0;
    display: flex;
  }
}

.initial-quality__item-txt {
  margin-top: 0.3125rem;
  color: #777;
}

.initial-quality .initial-quality__item + .initial-quality__item {
  margin-top: 0.9375rem;
}
@media all and (min-width: 48rem) {
  .initial-quality__item {
    width: calc(50% - 1.875rem);
    margin: 0 0.9375rem;
  }
  .initial-quality .initial-quality__item + .initial-quality__item {
    margin-top: 0;
  }
}

.initial-quality__btn {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-quality__btn {
    min-width: 25rem;
    margin-top: 2.5rem;
  }
}

.initial-quality__area {
  margin-top: 4.6875rem;
}

@media all and (min-width: 48rem) {
  .initial-quality__lead {
    text-align: center;
    font-weight: 600;
    line-height: 2.2;
  }
}
.c-imgset04-set {
  position: relative;
  background: url(../img/common/bg-box01_sp.webp) 0 0 repeat;
  background-size: 31.25rem;
  margin: -4.625rem 0 0 -1.25rem;
  padding: 3.125rem 1.25rem 1.25rem 2.1875rem;
}

@media all and (min-width: 48rem) {
  .c-imgset04__lead {
    padding: clamp(2.5rem, -2.76556875rem + 10.9853vw, 4.375rem) 1.875rem clamp(2.5rem, -2.76556875rem + 10.9853vw, 4.375rem) 16%;
  }
  .c-imgset04-set {
    background: url(../img/common/bg-box01_pc.webp) 0 0 no-repeat;
    background-size: cover;
    padding: clamp(3.125rem, -10.03891875rem + 27.4652vw, 7.8125rem) 3.125rem 3.125rem 6.25rem;
    position: relative;
    margin: -5.625rem 0 2.5rem;
    box-sizing: border-box;
    text-align: center;
  }
}
.initial-patient {
  padding: clamp(3.125rem, 21.9048rem + 3.663vw, 3.75rem) 0 3.4375rem;
}

.initial-patient__area {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-patient__area {
    margin-top: 3.75rem;
  }
}

.initial-patient__set-box {
  padding: 1.5625rem 1.25rem;
  background-color: #fff;
}
@media all and (min-width: 48rem) {
  .initial-patient__set-box {
    padding: 2.5rem 1.875rem;
  }
}

.initial-patient__set-head {
  font-size: clamp(1.0625rem, -0.4474rem + 3.1502vw, 1.5rem);
  line-height: 1.45;
}
@media all and (min-width: 48rem) {
  .initial-patient__set-head {
    font-weight: bold;
    margin-right: 0.9375rem;
  }
}

.initial-patient__set-note {
  color: #777;
  font-size: clamp(0.6875rem, -0.1174rem + 1.685vw, 0.8125rem);
}

.initial-patient__list {
  counter-reset: patient;
  margin-top: 1.25rem;
}
@media all and (min-width: 48rem) {
  .initial-patient__list {
    display: inline-block;
  }
}

.initial-patient__item {
  counter-increment: patient;
  position: relative;
  padding-left: 1.5em;
  line-height: 1.5;
}
.initial-patient__item:before {
  content: counter(patient) ".";
  display: inline-block;
  position: absolute;
  top: -0.0625rem;
  left: 0;
  line-height: 1;
  font-size: clamp(1.125rem, -0.3844rem + 3.1502vw, 1.5625rem);
  font-family: "Playfair Display";
}
.initial-patient__item:nth-child(n+2) {
  margin-top: 0.1875rem;
}
@media all and (min-width: 48rem) {
  .initial-patient__item {
    margin-left: 0.9375rem;
    text-align: left;
  }
  .initial-patient__item:before {
    top: -0.1875rem;
  }
  .initial-patient__item:nth-child(n+2) {
    margin-top: 0.3125rem;
  }
}

.initial-patient__link {
  margin-top: 1.25rem;
  line-height: 1.5;
}
@media all and (min-width: 48rem) {
  .initial-patient__link {
    margin-top: 1.25rem;
    line-height: 1.5;
    text-align: center;
  }
}

@media all and (min-width: 48rem) {
  .initial-patient {
    padding: 3.75rem 0;
  }
  .initial-patient__lead {
    text-align: center;
    font-weight: 600;
    line-height: 2.3;
  }
  .initial-patient__set {
    padding: 6.25rem 3.125rem 3.125rem 2.1875rem;
  }
  .initial-patient__set-header {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media all and (min-width: 48rem) and (max-width: 56.875rem) {
  .initial-patient__set-header {
    flex-direction: column;
  }
  .initial-patient__set-head {
    margin-right: 0;
  }
  .initial-patient__set-note {
    margin-top: 0.5rem;
  }
}
.initial-flow {
  padding: clamp(3.125rem, 1.3653rem + 3.663vw, 4.375rem) 0;
  background-color: #fee4d6;
}

.initial-flow__list {
  margin-top: 1.875rem;
}
@media all and (min-width: 48rem) {
  .initial-flow__list {
    margin: 3.125rem 0;
  }
}

.initial-flow__item {
  background-color: #fff;
  position: relative;
  border-radius: 1.375rem;
}
.initial-flow__item:before, .initial-flow__item:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/common/ico_corner09.png) left top no-repeat;
  background-size: contain;
}
.initial-flow__item:after {
  right: 0;
  top: auto;
  bottom: 0;
  transform: rotate(90deg);
}
.initial-flow .initial-flow__item + .initial-flow__item {
  margin-top: 0.9375rem;
}

.initial-flow__item-num {
  font-size: clamp(1.5625rem, -1.0714rem + 5.4945vw, 3rem) !important;
}
@media all and (min-width: 48rem) {
  .initial-flow__item-num {
    font-style: italic;
  }
}

.initial-flow__in {
  padding: 1.5625rem clamp(0.9375rem, -1.7015rem + 5.4945vw, 2.8125rem) clamp(1.5625rem, -2.8315rem + 9.1575vw, 3.125rem);
  position: relative;
}
.initial-flow__in:before, .initial-flow__in:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/common/ico_corner09.png) left top no-repeat;
  background-size: contain;
  transform: rotate(-180deg);
}
.initial-flow__in:after {
  top: 0;
  bottom: auto;
  transform: rotate(-90deg);
}

.initial-flow__wrap {
  display: flex;
}
@media all and (min-width: 48rem) {
  .initial-flow__wrap {
    position: relative;
    flex-wrap: wrap;
  }
}

.initial-flow__wrap-img {
  width: 40%;
  margin: 0 0.9375rem 0.9375rem 0;
}
@media all and (min-width: 48rem) {
  .initial-flow__wrap-img {
    width: 28%;
  }
}

.initial-flow__wrap-txt {
  line-height: 1.45;
}
@media all and (min-width: 48rem) {
  .initial-flow__wrap-txt {
    line-height: 1.7;
  }
  .initial-flow__wrap .initial-flow__wrap-txt + .initial-flow__wrap-txt {
    margin-top: 1.875rem;
  }
}

.initial-flow__wrap-area {
  width: calc(60% - 0.9375rem);
}
@media all and (min-width: 48rem) {
  .initial-flow__wrap-area {
    flex: 1;
  }
}

.initial-flow__wrap-note {
  margin-top: 1.25rem;
  font-size: clamp(0.6875rem, -0.1174rem + 1.685vw, 0.8125rem);
  color: #777;
  line-height: 1.45;
}
@media all and (min-width: 48rem) {
  .initial-flow__wrap-note {
    margin-top: 1.875rem;
  }
}

.initial-flow__wrap-set {
  margin-top: 1.5625rem;
}

.initial-flow__ico {
  margin-top: 0.9375rem;
}
@media all and (min-width: 48rem) {
  .initial-flow__ico {
    margin-top: 2.5rem;
  }
}

.initial-flow__set-mail {
  margin-top: 0.9375rem;
}

.initial-flow__faq {
  margin-top: 0.9375rem;
}

.initial-flow__item:first-child .initial-flow__wrap {
  flex-wrap: wrap;
}
.initial-flow__item:first-child .initial-flow__wrap.grid {
  flex-wrap: nowrap;
}
@media all and (min-width: 48rem) {
  .initial-flow__item:first-child .initial-flow__wrap {
    display: block;
  }
  .initial-flow__item:first-child .initial-flow__wrap.grid .initial-flow__wrap-area {
    width: calc(60% - 0.9375rem);
    margin-left: calc(24% + 2.5rem);
  }
}
@media all and (min-width: 48rem) {
  .initial-flow__item:first-child .initial-flow__wrap-area {
    margin-left: calc(24% + 2.5rem);
  }
}

@media all and (min-width: 48rem) {
  .initial-flow__lead {
    text-align: center;
    font-weight: 600;
  }
}
@media all and (min-width: calc(48px * 1rem)) and (max-width: 60rem) {
  .initial-flow__item:first-child .initial-flow__wrap-area + .initial-flow__wrap-area {
    width: 86%;
    clear: both;
    margin: 0 0 0 auto;
  }
}
.initial-flow__wrap-grid {
  display: grid;
  grid-template-columns: minmax(0, 28%) 1fr;
  grid-template-rows: auto auto;
  gap: 1.25rem;
}
.initial-flow__wrap-grid > *:nth-child(1) {
  grid-column: 1/2;
  grid-row: 1/3;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.initial-flow__wrap-grid > *:nth-child(2) {
  grid-column: 2/3;
  grid-row: 1/2;
}
.initial-flow__wrap-grid > *:nth-child(3) {
  grid-column: 2/3;
  grid-row: 2/3;
  width: 100%;
}
@media screen and (max-width: 47.9375rem) {
  .initial-flow__wrap-grid {
    grid-template-columns: minmax(0, 40%) 1fr;
    grid-template-rows: auto;
    gap: 0.9375rem;
  }
  .initial-flow__wrap-grid > *:nth-child(1) {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .initial-flow__wrap-grid > *:nth-child(2) {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .initial-flow__wrap-grid > *:nth-child(3) {
    grid-column: 1/-1;
    width: 100%;
  }
}

.initial-flow__wrap-area .top-faq ul li div {
  padding-left: 0.625rem;
}

.initial-flow__wrap-grid-area .top-faq {
  background-color: transparent;
  padding: 1.25rem 0;
}
.initial-flow__wrap-grid-area .top-faq li {
  background-color: #e1e1e1;
}

.initial-quality__btn.c-btn01 .c-btn01__txt {
  font-size: 1rem !important;
}

.initial-patient__link.c-text01 {
  color: #b69262;
}
.initial-patient__link.c-text01 a {
  position: relative !important;
}
.initial-patient__link.c-text01 a:after {
  position: absolute;
  content: "";
  right: -3.75rem;
  width: 2.125rem;
  height: 0.875rem;
  background: url(../img/common/icon/ico_pdf01.png) left center no-repeat;
  background-size: contain;
  bottom: 0.125rem;
}
@media all and (min-width: 48rem) {
  .initial-patient__link.c-text01 a:after {
    top: 50%;
    transform: translate(-50%, -50%);
  }
}

/*******************
症例写真single
********************/
.case-single article,
.taxonomy-case-wrap article {
  max-width: 65rem;
  margin: 0 auto clamp(2.5rem, 3.84vw + 0.625rem, 5rem);
  padding: 0 1.25rem;
}
@media screen and (max-width: 767px) {
  .case-single article,
  .taxonomy-case-wrap article {
    padding: 0 2vw;
  }
}
.case-single article > h2,
.taxonomy-case-wrap article > h2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.9375rem;
  font-size: clamp(1.25rem, 1.92vw + 0.625rem, 1.625rem);
  font-weight: 500;
  color: #3b190d;
  letter-spacing: 0.1em;
  margin-bottom: clamp(1.875rem, 3.84vw + 0.625rem, 3.125rem);
  position: relative;
  padding-bottom: 1.25rem;
}
@media screen and (max-width: 767px) {
  .case-single article > h2,
  .taxonomy-case-wrap article > h2 {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
.case-single article > h2::after,
.taxonomy-case-wrap article > h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: #b69262;
}
.case-single article > h2 span.stores,
.taxonomy-case-wrap article > h2 span.stores {
  display: flex;
  gap: 0.625rem;
  margin-left: auto;
}
.case-single article > section,
.taxonomy-case-wrap article > section {
  margin-bottom: clamp(2.5rem, 5.76vw + 0.625rem, 4.375rem);
}
.case-single article section:has(dl),
.taxonomy-case-wrap article section:has(dl) {
  margin-bottom: clamp(2.5rem, 5.76vw + 0.625rem, 4.375rem);
}
.case-single article section:has(dl) h2,
.taxonomy-case-wrap article section:has(dl) h2 {
  font-size: 1.25rem;
  color: #3b190d;
  letter-spacing: 0.08em;
  border-bottom: 0.0625rem solid #d4d4d4;
  padding-bottom: 0.9375rem;
  margin-bottom: 1.875rem;
  font-weight: 500;
}
.case-single article section:has(dl) dl,
.taxonomy-case-wrap article section:has(dl) dl {
  margin: 0;
  padding: 0;
  border: 0.0625rem solid #a16f5d;
  border-radius: 0.375rem;
  overflow: hidden;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .case-single article section:has(dl) dl,
  .taxonomy-case-wrap article section:has(dl) dl {
    display: grid;
    grid-template-columns: 25% 75%;
  }
}
.case-single article section:has(dl) dl dt,
.taxonomy-case-wrap article section:has(dl) dl dt {
  font-size: 0.9375rem;
  font-weight: bold;
  color: #3b190d;
  letter-spacing: 0.05em;
  padding: 1.25rem 0.9375rem;
  background-color: #fbf9f8;
  margin: 0;
  box-sizing: border-box;
  border-bottom: 0.0625rem solid #b7b7b7;
}
@media screen and (min-width: 768px) {
  .case-single article section:has(dl) dl dt,
  .taxonomy-case-wrap article section:has(dl) dl dt {
    float: none;
    width: auto;
    padding: 1.5625rem 1.25rem;
    border-right: 0.0625rem solid #b7b7b7;
  }
}
@media screen and (min-width: 768px) {
  .case-single article section:has(dl) dl dt:last-of-type,
  .taxonomy-case-wrap article section:has(dl) dl dt:last-of-type {
    border-bottom: none;
  }
}
@media screen and (max-width: 767px) {
  .case-single article section:has(dl) dl dt:last-of-type,
  .taxonomy-case-wrap article section:has(dl) dl dt:last-of-type {
    border-bottom: 0.0625rem solid #3b190d;
  }
}
.case-single article section:has(dl) dl dd,
.taxonomy-case-wrap article section:has(dl) dl dd {
  font-size: 0.875rem;
  color: #333333;
  line-height: 1.8;
  margin: 0;
  padding: 0.9375rem 0.9375rem 1.25rem 0.9375rem;
  box-sizing: border-box;
  border-bottom: 0.0625rem solid #b7b7b7;
}
@media screen and (min-width: 768px) {
  .case-single article section:has(dl) dl dd,
  .taxonomy-case-wrap article section:has(dl) dl dd {
    float: none;
    width: auto;
    padding: 1.5625rem 1.25rem;
    border-left: none;
  }
}
.case-single article section:has(dl) dl dd:last-of-type,
.taxonomy-case-wrap article section:has(dl) dl dd:last-of-type {
  font-weight: bold;
  color: #a72037;
  border-bottom: none;
}
.case-single article section:has(dl) dl::after,
.taxonomy-case-wrap article section:has(dl) dl::after {
  content: none;
}
.case-single article section:has(figure img.attachment-medium),
.taxonomy-case-wrap article section:has(figure img.attachment-medium) {
  margin-bottom: clamp(2.5rem, 5.76vw + 0.625rem, 4.375rem);
}
.case-single article section:has(figure img.attachment-medium) h2,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) h2 {
  font-size: 1.25rem;
  color: #3b190d;
  letter-spacing: 0.08em;
  border-bottom: 0.0625rem solid #d4d4d4;
  padding-bottom: 0.9375rem;
  margin-bottom: 1.875rem;
  font-weight: 500;
}
.case-single article section:has(figure img.attachment-medium) figure,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure {
  margin: 0;
  display: flex;
  gap: 1.875rem;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .case-single article section:has(figure img.attachment-medium) figure,
  .taxonomy-case-wrap article section:has(figure img.attachment-medium) figure {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}
.case-single article section:has(figure img.attachment-medium) figure img,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure img {
  width: 8.75rem;
  height: 8.75rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  border: 0.125rem solid #b69262;
  box-shadow: 0 0.25rem 0.9375rem rgba(0, 0, 0, 0.05);
  flex-shrink: 0;
}
.case-single article section:has(figure img.attachment-medium) figure figcaption,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption {
  flex-grow: 1;
}
.case-single article section:has(figure img.attachment-medium) figure figcaption .doctor-name,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption .doctor-name {
  font-size: 1rem;
  color: #3b190d;
  margin: 0 0 0.9375rem 0;
  letter-spacing: 0.05em;
}
.case-single article section:has(figure img.attachment-medium) figure figcaption .doctor-name strong,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption .doctor-name strong {
  font-size: 1.125rem;
  font-weight: 500;
}
.case-single article section:has(figure img.attachment-medium) figure figcaption blockquote,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption blockquote {
  margin: 0;
  background-color: #ffeeeb;
  border-radius: 0.5rem;
  padding: 1.25rem 1.5625rem;
  position: relative;
  border: none;
}
@media screen and (min-width: 768px) {
  .case-single article section:has(figure img.attachment-medium) figure figcaption blockquote::before,
  .taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption blockquote::before {
    content: "";
    position: absolute;
    top: 1.875rem;
    left: -0.625rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.625rem 0.625rem 0.625rem 0;
    border-color: transparent #ffeeeb transparent transparent;
  }
}
.case-single article section:has(figure img.attachment-medium) figure figcaption blockquote p,
.taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption blockquote p {
  margin: 0;
  font-size: 0.875rem;
  color: #333333;
  line-height: 1.8;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .case-single article section:has(figure img.attachment-medium) figure figcaption blockquote p,
  .taxonomy-case-wrap article section:has(figure img.attachment-medium) figure figcaption blockquote p {
    text-align: left;
  }
}
.case-single .case-photo-gallery,
.case-single .related-case-photos .case-photo-gallery,
.taxonomy-case-wrap .case-photo-gallery,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem 0rem;
  list-style: none;
  padding: 0;
  margin: 0 auto 2.5rem auto;
  width: 100%;
  max-width: 50rem;
}
.case-single .case-photo-gallery li,
.case-single .related-case-photos .case-photo-gallery li,
.taxonomy-case-wrap .case-photo-gallery li,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li {
  flex: 1 1 calc(50% - 0.625rem);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.case-single .case-photo-gallery li figure,
.case-single .related-case-photos .case-photo-gallery li figure,
.taxonomy-case-wrap .case-photo-gallery li figure,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  background: #ffffff;
  border: none;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
  text-align: center;
}
.case-single .case-photo-gallery li figure .case-photo-comment,
.case-single .related-case-photos .case-photo-gallery li figure .case-photo-comment,
.taxonomy-case-wrap .case-photo-gallery li figure .case-photo-comment,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure .case-photo-comment {
  flex-grow: 1;
  font-size: 0.8125rem;
  color: #999999;
  line-height: 1.6;
  margin: 0 auto 0.9375rem auto;
  border: none;
  padding: 0 0.9375rem;
  text-align: center;
  max-width: 100%;
}
.case-single .case-photo-gallery li figure img,
.case-single .related-case-photos .case-photo-gallery li figure img,
.taxonomy-case-wrap .case-photo-gallery li figure img,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure img {
  margin-top: auto;
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0;
}
.case-single .case-photo-gallery li figure figcaption,
.case-single .related-case-photos .case-photo-gallery li figure figcaption,
.taxonomy-case-wrap .case-photo-gallery li figure figcaption,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure figcaption {
  font-size: clamp(1rem, 1.15vw + 0.625rem, 1.25rem);
  font-weight: bold;
  color: #3b190d;
  display: inline-block;
  padding: 0.375rem;
  margin: 0 auto 0.75rem auto;
  border-radius: 0.125rem;
}
.case-single .case-photo-gallery li figure figcaption span,
.case-single .related-case-photos .case-photo-gallery li figure figcaption span,
.taxonomy-case-wrap .case-photo-gallery li figure figcaption span,
.taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure figcaption span {
  font-size: 0.75rem;
  font-weight: normal;
  color: #3b190d;
  margin-left: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .case-single .case-photo-gallery li figure figcaption span,
  .case-single .related-case-photos .case-photo-gallery li figure figcaption span,
  .taxonomy-case-wrap .case-photo-gallery li figure figcaption span,
  .taxonomy-case-wrap .related-case-photos .case-photo-gallery li figure figcaption span {
    display: block;
  }
}

.related-cases-wrapper {
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .related-cases-wrapper {
    margin-bottom: 0;
  }
}
.related-cases-wrapper > div {
  margin-bottom: clamp(1.875rem, 5.76vw + 0.625rem, 3.75rem);
}
.related-cases-wrapper > nav {
  margin-bottom: 2.5rem;
}
.related-cases-wrapper span.sec-h2-tit {
  display: block;
  margin-bottom: 80px;
}
.related-cases-wrapper .related-case-info {
  margin-bottom: clamp(2.5rem, 5.76vw + 0.625rem, 4.375rem);
}
.related-cases-wrapper .related-case-info .top-case-accordion-cont {
  display: none;
}
.related-cases-wrapper .related-case-info dl {
  margin: 0;
  padding: 0;
  border: 0.0625rem solid #a16f5d;
  border-radius: 0.375rem;
  overflow: hidden;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .related-cases-wrapper .related-case-info dl {
    display: grid;
    grid-template-columns: 25% 75%;
  }
}
.related-cases-wrapper .related-case-info dl dt {
  font-size: 0.9375rem;
  font-weight: bold;
  color: #3b190d;
  letter-spacing: 0.05em;
  padding: 1.25rem 0.9375rem;
  background-color: #fbf9f8;
  margin: 0;
  box-sizing: border-box;
  border-bottom: 0.0625rem solid #b7b7b7;
}
@media screen and (min-width: 768px) {
  .related-cases-wrapper .related-case-info dl dt {
    float: none;
    width: auto;
    padding: 1.5625rem 1.25rem;
    border-right: 0.0625rem solid #b7b7b7;
  }
}
@media screen and (min-width: 768px) {
  .related-cases-wrapper .related-case-info dl dt:last-of-type {
    border-bottom: none;
  }
}
@media screen and (max-width: 767px) {
  .related-cases-wrapper .related-case-info dl dt:last-of-type {
    border-bottom: 0.0625rem solid #3b190d;
  }
}
.related-cases-wrapper .related-case-info dl dd {
  font-size: 0.875rem;
  color: #333333;
  line-height: 1.8;
  margin: 0;
  padding: 0.9375rem 0.9375rem 1.25rem 0.9375rem;
  box-sizing: border-box;
  border-bottom: 0.0625rem solid #b7b7b7;
}
@media screen and (min-width: 768px) {
  .related-cases-wrapper .related-case-info dl dd {
    float: none;
    width: auto;
    padding: 1.5625rem 1.25rem;
    border-left: none;
  }
}
.related-cases-wrapper .related-case-info dl dd:last-of-type {
  font-weight: bold;
  color: #a72037;
  border-bottom: none;
}
.related-cases-wrapper .related-case-info dl::after {
  content: none;
}
.related-cases-wrapper .related-case-comment {
  margin-bottom: clamp(2.5rem, 5.76vw + 0.625rem, 4.375rem);
}
.related-cases-wrapper .related-case-comment figure {
  margin: 0;
  display: flex;
  gap: 1.875rem;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .related-cases-wrapper .related-case-comment figure {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}
.related-cases-wrapper .related-case-comment figure img {
  width: 8.75rem;
  height: 8.75rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  border: 0.125rem solid #b69262;
  box-shadow: 0 0.25rem 0.9375rem rgba(0, 0, 0, 0.05);
  flex-shrink: 0;
}
.related-cases-wrapper .related-case-comment figure figcaption {
  flex-grow: 1;
}
.related-cases-wrapper .related-case-comment figure figcaption .doctor-name {
  font-size: 1rem;
  color: #3b190d;
  margin: 0 0 0.9375rem 0;
  letter-spacing: 0.05em;
}
.related-cases-wrapper .related-case-comment figure figcaption .doctor-name strong {
  font-size: 1.125rem;
  font-weight: 500;
}
.related-cases-wrapper .related-case-comment figure figcaption blockquote {
  margin: 0;
  background-color: #ffeeeb;
  border-radius: 0.5rem;
  padding: 1.25rem 1.5625rem;
  position: relative;
  border: none;
}
@media screen and (min-width: 768px) {
  .related-cases-wrapper .related-case-comment figure figcaption blockquote::before {
    content: "";
    position: absolute;
    top: 1.875rem;
    left: -0.625rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.625rem 0.625rem 0.625rem 0;
    border-color: transparent #ffeeeb transparent transparent;
  }
}
.related-cases-wrapper .related-case-comment figure figcaption blockquote p {
  margin: 0;
  font-size: 0.875rem;
  color: #333333;
  line-height: 1.8;
  font-style: normal;
}

.related-case-item h3 {
  font-size: 1.375rem;
  border-bottom: 0.0625rem solid #d4d4d4;
  padding-bottom: 0.25rem;
  margin-bottom: 0.625rem;
}

.accordion-trigger,
.top-case-slider__item h4 {
  position: relative;
  padding: 0.375rem 2.5rem 0.375rem 0.625rem;
  border-radius: 0.25rem;
  cursor: pointer;
  background-color: #ffdcc8;
  font-size: 1.125rem;
  margin-bottom: 0.375rem;
}
.accordion-trigger::before, .accordion-trigger::after,
.top-case-slider__item h4::before,
.top-case-slider__item h4::after {
  content: "";
  position: absolute;
  right: 1.25rem;
  top: 50%;
  background-color: #3b190d;
  transition: transform 0.3s ease;
}
.accordion-trigger::before,
.top-case-slider__item h4::before {
  width: 0.875rem;
  height: 0.125rem;
  margin-top: -0.0625rem;
}
.accordion-trigger::after,
.top-case-slider__item h4::after {
  width: 0.125rem;
  height: 0.875rem;
  margin-top: -0.4375rem;
  right: 1.625rem;
}
.accordion-trigger.is-active::after,
.top-case-slider__item h4.is-active::after {
  transform: rotate(90deg);
  opacity: 0;
}
.accordion-trigger.is-active::before,
.top-case-slider__item h4.is-active::before {
  transform: rotate(180deg);
}

.btn-more.radius-brown-btn {
  padding-top: 2.5rem;
}
.btn-more.radius-brown-btn a {
  justify-content: center;
  max-width: 14.375rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .btn-more.radius-brown-btn {
    padding-top: 0.625rem;
  }
}

/*******************
ページネーション
********************/
.archive-pager-wrapper {
  max-width: 65rem;
  margin: clamp(2.5rem, 5.76vw + 0.625rem, 5rem) auto 0;
  padding: 0 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .archive-pager-wrapper {
    padding: 0 2vw;
    gap: 0.9375rem;
  }
}

.archive-pagination {
  width: 100%;
}
.archive-pagination .pagination .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.archive-pagination .pagination .nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .archive-pagination .pagination .nav-links {
    gap: 0.375rem;
  }
}
.archive-pagination .page-numbers {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.625rem;
  font-size: 0.9375rem;
  color: #3b190d;
  background-color: #ffffff;
  border: 0.0625rem solid #b69262;
  border-radius: 0.25rem;
  text-decoration: none;
  transition: all 0.3s ease;
  box-sizing: border-box;
  letter-spacing: 0.05em;
}
.archive-pagination .page-numbers:not(.current):hover {
  background-color: #fbf9f8;
  border-color: #3b190d;
  color: #3b190d;
}
.archive-pagination .page-numbers.current {
  background-color: #3b190d;
  border-color: #3b190d;
  color: #ffffff;
  font-weight: bold;
  cursor: default;
}
.archive-pagination .page-numbers.prev, .archive-pagination .page-numbers.next {
  font-size: 0.8125rem;
  padding: 0 0.9375rem;
  background-color: #fbf9f8;
}
.archive-pagination .page-numbers.prev:hover, .archive-pagination .page-numbers.next:hover {
  background-color: #ffdcc8;
  border-color: #a16f5d;
}
@media screen and (max-width: 767px) {
  .archive-pagination .page-numbers {
    min-width: 2.25rem;
    height: 2.25rem;
    font-size: 0.875rem;
    padding: 0 0.375rem;
  }
  .archive-pagination .page-numbers.prev, .archive-pagination .page-numbers.next {
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }
}

.archive-counter {
  font-size: 0.875rem;
  color: #666666;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .archive-counter {
    font-size: 0.8125rem;
  }
}

/*******************
施術ページ追加
********************/
.each_area table {
  width: 100%;
}

.single-beauty-cont section {
  margin-bottom: 3.75rem;
}

.page-mv > div {
  position: absolute;
  top: 10px;
  margin: 0 auto;
  max-width: 1400px;
  width: 100%;
  right: 0;
  left: 0;
  padding-left: 40px;
  top: 50%;
  transform: translateY(-50%);
}

.page-mv > div .stores {
  margin-bottom: 20px;
}

.page-mv > div p:nth-of-type(2) {
  font-size: 24px;
}

.pege-mv figure div h1 {
  position: static;
  max-width: none;
  transform: none;
  padding: 0;
  margin-bottom: 16px;
}

.page-mv > div p:nth-of-type(3) {
  color: #b54151;
}

.page-mv > div p,
.pege-mv figure div h1 {
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0px -1px 0 #fff, 1px 0px 0 #fff, -1px 0px 0 #fff;
}

@media screen and (max-width: 767px) {
  .page-mv > div p:nth-of-type(3) {
    font-size: 12px;
  }
  .page-mv > div p:nth-of-type(2) {
    font-size: 20px;
  }
  .page-mv > div {
    padding-left: 16px;
  }
}
/*******************
00
********************//*# sourceMappingURL=style.css.map */