.p-top_mv {
  position: relative;
}
.p-mv_box01 {
  background: url(../img/top_mv01.webp) no-repeat center;
  aspect-ratio: 1920/740;
  background-size: cover;
}
.p-mv_box02 {
  background: url(../img/top_mv02.webp) no-repeat center;
  aspect-ratio: 1920/740;
  background-size: cover;
}
.p-mv_box03 {
  background: url(../img/top_mv03.webp) no-repeat center;
  aspect-ratio: 1920/740;
  background-size: cover;
}
.p-top_mv::before {
  content: "";
  background: url(../img/top_mvdec.webp) no-repeat;
  background-size: contain;
  width: calc(1856 / 1920 * 100vw);
  aspect-ratio: 1920/284;
  position: absolute;
  bottom: calc(37 / 1920 * 100vw);
  z-index: 99;
  left: 50%;
  transform: translate(-50%, 0);
}
.p-top__ttl {
  position: absolute;
  top: calc(264 / 1920 * 100vw);
  right: calc(74 / 1920 * 100vw);
  color: #fff;
  line-height: 2;
}
.p-top__ttl h1 {
  font-size: min(calc(70 / 1440 * 100vw), 7rem);
  text-align: center;
  white-space: nowrap;
  text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.4);
  font-weight: 700;
}

.p-top__news--inner {
  background-color: #86bcd1;
  max-width: calc(1320 / 1920 * 100vw);
  margin: calc(102 / 1920 * 100vw) auto calc(120 / 1920 * 100vw);
  padding: calc(24 / 1920 * 100vw) calc(50 / 1920 * 100vw)
    calc(50 / 1920 * 100vw);
  border-radius: calc(60 / 1920 * 100vw);
}
.p-top__news--ttl h1 {
  font-size: min(calc(60 / 1920 * 100vw), 6rem);
  color: #fff;
  text-align: center;
}
.p-top__news--box {
  background-color: #fff;
  padding: calc(40 / 1920 * 100vw) calc(90 / 1920 * 100vw);
  margin-top: calc(33 / 1920 * 100vw);
}
.p-top__news--box .date {
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
}

.p-top__news--box li a{
  border-top: dotted 1px #000000;
  display: flex;
  align-items: center;
  padding: calc(40 / 1920 * 100vw) 0;
  color: #000;
  gap: calc(20/1920*100vw);
}
.p-top__clinichours--inner {
  display: flex;
  gap: calc(108 / 1920 * 100vw);
  justify-content: center;
  align-items: center;
}
.biz-hour {
  display: block;
  border-collapse: collapse;
  overflow-x: none;
}
.biz-hour tbody {
  border: solid #333 1px;
}
.biz-hour th,
.biz-hour td {
  padding: calc(30 / 1920 * 100vw) 2vw;
  border-bottom: 1px solid #333333;
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  text-align: left;
  letter-spacing: 0.2rem;
  border-right: solid 1px #333;
  font-weight: 400;
}
.biz-hour th:first-child {
  padding: calc(14 / 1920 * 100vw) calc(24 / 1920 * 100vw);
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  font-weight: 400;
}
.biz-hour td:first-child {
  padding: calc(20 / 1920 * 100vw) calc(24 / 1920 * 100vw);
}
.tcb {
  color: #333;
}

.p-top__clinichours--txt p:last-child {
  padding-left: 2rem;
  text-indent: -2rem;
}
.p-top__reservation {
  max-width: calc(1680 / 1920 * 100vw);
  margin: calc(85 / 1920 * 100vw) auto 0;
}
.p-top__reservation--box {
  background-color: #d6afb5;
  padding: calc(18 / 1920 * 100vw) 0;
  color: #fff;
  text-align: center;
}
.p-top__reservation--box p {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
}
.p-top__reservation th {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
}
.p-top__reservation td {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  text-align: center;
  padding-right: calc(71 / 1920 * 100vw);
}
.p-top__reservation tbody {
  background-color: #f2f2f2;
  display: flex;
}
.p-top__reservation tbody tr {
  width: calc(777 / 1920 * 100vw);
  padding: calc(34 / 1920 * 100vw) 0 calc(34 / 1920 * 100vw)
    calc(63 / 1920 * 100vw);
}
.c-top__ttl {
  position: relative;
  text-align: center;
}
.c-top__ttl::before {
  content: "";
  background: url(../img/ttl_dec.png) no-repeat;
  background-size: contain;
  width: calc(232 / 1920 * 100vw);
  aspect-ratio: 232/112;
  position: absolute;
  top: calc(-140 / 1920 * 100vw);
  left: 50%;
  transform: translate(-50%, 0);
}
.c-top__ttl h1 {
  font-size: min(calc(64 / 1440 * 100vw), 6.4rem);
  margin-bottom: calc(10 / 1920 * 100vw);
}
.c-top__ttl h2 {
  font-size: min(calc(64 / 1440 * 100vw), 6.4rem);
  font-family: "Alex Brush", cursive;
  color: #86bcd1;
}
.p-top__feature.c-top__ttl h1,
.p-top__feature.c-top__ttl h2 {
  position: relative;
}
.p-top__feature .c-top__ttl h1::before {
  content: "";
  position: absolute;
  background: url(../img/dec01.webp) no-repeat;
  background-size: contain;
  width: calc(215 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  left: calc(530 / 1920 * 100vw);
  aspect-ratio: 215/204;
}
.p-top__feature .c-top__ttl h1::after {
  content: "";
  position: absolute;
  background: url(../img/dec02.webp) no-repeat;
  background-size: contain;
  width: calc(214 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  right: calc(530 / 1920 * 100vw);
  aspect-ratio: 214/248;
}
.p-top__feature .c-top__ttl h2::before {
  content: "";
  position: absolute;
  background: url(../img/dec03.webp) no-repeat;
  background-size: contain;
  width: calc(436 / 1920 * 100vw);
  top: 0;
  left: 0;
  aspect-ratio: 436/470;
}
.p-top__feature .c-top__ttl h2::after {
  content: "";
  position: absolute;
  background: url(../img/dec04.webp) no-repeat;
  background-size: contain;
  width: calc(263 / 1920 * 100vw);
  top: 0;
  right: calc(34 / 1920 * 100vw);
  aspect-ratio: 263/206;
}

.p-top__feature {
  margin: calc(471 / 1920 * 100vw) 0 calc(139 / 1920 * 100vw);
}
.p-top__feature--box {
  display: flex;
  justify-content: center;
  gap: calc(84 / 1920 * 100vw);
  align-items: center;
  margin-bottom: calc(120 / 1920 * 100vw);
}
.p-top__feature--box01 {
  margin-top: calc(87 / 1920 * 100vw);
}
.p-top__feature--box01 img {
  width: calc(620 / 1920 * 100vw);
}
.p-top__feature--box01 .p-top__feature--lead img {
  width: calc(280 / 1920 * 100vw);
}
.p-top__feature--lead img {
  margin: 0 auto;
}
.p-top__feature--txt {
  width: calc(706 / 1920 * 100vw);
  margin-top: calc(70 / 1920 * 100vw);
}
.p-top__feature--txt h1 {
  font-size: min(calc(48 / 1440 * 100vw), 4.8rem);
  margin-bottom: calc(22 / 1920 * 100vw);
}
.p-top__feature--txt p {
  font-size: min(calc(20 / 1440 * 100vw), 2rem);
}
.p-top__feature--box02 {
  flex-direction: row-reverse;
}
.p-top__feature--box02 img {
  width: calc(600 / 1920 * 100vw);
}
.p-top__feature--box02 .p-top__feature--lead img {
  width: calc(298 / 1920 * 100vw);
}

.p-top__feature--box03 img {
  width: calc(726 / 1920 * 100vw);
}
.p-top__feature--box03 .p-top__feature--lead img {
  width: calc(346 / 1920 * 100vw);
}
.p-top__medical--box01 {
  margin-top: calc(94 / 1920 * 100vw);
}
.p-top__medical {
  background-color: #d8f0f6;
  padding: calc(158 / 1920 * 100vw) 0;
  position: relative;
  z-index: 99;
}
.p-top__medical .c-top__ttl h1,
.p-top__medical .c-top__ttl h2 {
  position: relative;
}
.p-top__medical .c-top__ttl h1::before {
  content: "";
  position: absolute;
  background: url(../img/dec05.webp) no-repeat;
  background-size: contain;
  width: calc(109 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  left: calc(530 / 1920 * 100vw);
  aspect-ratio: 109/216;
}
.p-top__medical .c-top__ttl h1::after {
  content: "";
  position: absolute;
  background: url(../img/dec06.webp) no-repeat;
  background-size: contain;
  width: calc(155 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  right: calc(530 / 1920 * 100vw);
  aspect-ratio: 155/230;
}
.p-top__medical .c-top__ttl h2::before {
  content: "";
  position: absolute;
  background: url(../img/dec07.webp) no-repeat;
  background-size: contain;
  width: calc(420 / 1920 * 100vw);
  top: 0;
  left: 0;
  aspect-ratio: 420/256;
}
.p-top__medical .c-top__ttl h2::after {
  content: "";
  position: absolute;
  background: url(../img/dec04.webp) no-repeat;
  background-size: contain;
  width: calc(263 / 1920 * 100vw);
  top: 0;
  right: calc(34 / 1920 * 100vw);
  aspect-ratio: 263/206;
}

.p-top__medical--box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(147 / 1920 * 100vw);
  margin-bottom: calc(130 / 1920 * 100vw);
}
.p-top__medical--box:nth-of-type(odd) {
  flex-direction: row-reverse;
}
.p-top__medical--box img {
  width: calc(500 / 1920 * 100vw);
}
.p-top__medical--lead {
  width: calc(663 / 1920 * 100vw);
}
.p-top__medical--lead h1 {
  font-size: min(calc(48 / 1920 * 100vw), 4.8rem);
  position: relative;
  text-align: center;
  padding-bottom: calc(20 / 1920 * 100vw);
}
.p-top__medical--lead h1::after {
  content: "";
  border-bottom: solid #98b576 5px;
  width: calc(200 / 1920 * 100vw);
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  bottom: 0;
}

.p-top__medical--lead a {
  background-color: #86bcd1;
  padding: calc(20 / 1920 * 100vw) 0;
  width: calc(436 / 1920 * 100vw);
  font-size: min(calc(32 / 1440 * 100vw), 3.2rem);
  text-align: center;
  position: relative;
  margin-top: calc(40 / 1920 * 100vw);
}

.p-top__medical--lead a::after {
  content: "";
  background: url(../img/arw_w.webp) no-repeat;
  background-size: contain;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  right: calc(20 / 1920 * 100vw);
  transform: translate(0, -50%);
}
.p-top__medical--dec img {
  position: absolute;
}
.p-top__medical--dec01,
.p-top__medical--dec04,
.p-top__medical--dec05,
.p-top__medical--dec08 {
  width: calc(186 / 1920 * 100vw);
}
.p-top__medical--dec01 {
  top: calc(917 / 1920 * 100vw);
  left: calc(96 / 1920 * 100vw);
}
.p-top__medical--dec02 {
  width: calc(236 / 1920 * 100vw);
  top: calc(874 / 1920 * 100vw);
  right: calc(57 / 1920 * 100vw);
  z-index: -1;
}
.p-top__medical--dec03 {
  width: calc(278 / 1920 * 100vw);
  top: calc(1553 / 1920 * 100vw);
  left: calc(96 / 1920 * 100vw);
}
.p-top__medical--dec04 {
  top: calc(1604 / 1920 * 100vw);
  right: calc(57 / 1920 * 100vw);
  z-index: -1;
}
.p-top__medical--dec05 {
  bottom: calc(1492 / 1920 * 100vw);
  left: calc(96 / 1920 * 100vw);
}
.p-top__medical--dec06 {
  width: calc(278 / 1920 * 100vw);
  bottom: calc(1568 / 1920 * 100vw);
  right: calc(57 / 1920 * 100vw);
  z-index: -1;
}
.p-top__medical--dec07 {
  width: calc(186 / 1920 * 100vw);
  bottom: calc(865 / 1920 * 100vw);
  left: calc(96 / 1920 * 100vw);
}
.p-top__medical--dec08 {
  bottom: calc(874 / 1920 * 100vw);
  right: calc(57 / 1920 * 100vw);
}
.p-top__medical--dec09 {
  width: calc(184 / 1920 * 100vw);
  bottom: calc(329 / 1920 * 100vw);
  right: calc(57 / 1920 * 100vw);
}

.p-top__greet {
  background: url(../img/top_greet_bg.webp) no-repeat;
  background-size: cover;
  padding: calc(30 / 1920 * 100vw) 0;
}
.p-top__greet--box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(91 / 1920 * 100vw);
}
.p-top__greet .p-top__medical--lead h1 {
  text-align: left;
  line-height: 1.6;
  font-weight: 700;
}
.p-top__greet .p-top__medical--lead h1::after {
  content: unset;
}
.p-top__greet .p-top__feature--txt {
  margin-top: calc(32 / 1920 * 100vw);
}
.p-top__greet--box img {
  width: calc(438 / 1920 * 100vw);
}
.p-top__greet h3 {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  text-align: right;
}
.p-top__greet .c-20 {
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  margin-right: calc(20 / 1920 * 100vw);
}
.p-top__greet .p-top__medical--lead a {
  margin: calc(20 / 1920 * 100vw) 0 0 auto;
}
.p-top__info {
  padding: calc(275 / 1920 * 100vw) 0 0;
}
.p-top__info .c-top__ttl h1,
.p-top__info .c-top__ttl h2 {
  position: relative;
}
.p-top__info .c-top__ttl h1::before {
  content: "";
  position: absolute;
  background: url(../img/dec14.webp) no-repeat;
  background-size: contain;
  width: calc(204 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  left: calc(530 / 1920 * 100vw);
  aspect-ratio: 204/201;
}
.p-top__info .c-top__ttl h1::after {
  content: "";
  position: absolute;
  background: url(../img/dec15.webp) no-repeat;
  background-size: contain;
  width: calc(176 / 1920 * 100vw);
  top: calc(-80 / 1920 * 100vw);
  right: calc(530 / 1920 * 100vw);
  aspect-ratio: 176/242;
}
.p-top__info .c-top__ttl h2::before {
  content: "";
  position: absolute;
  background: url(../img/dec16.webp) no-repeat;
  background-size: contain;
  width: calc(369 / 1920 * 100vw);
  top: calc(-140 / 1920 * 100vw);
  left: 0;
  aspect-ratio: 369/360;
}
.p-top__info .c-top__ttl h2::after {
  content: "";
  position: absolute;
  background: url(../img/dec04.webp) no-repeat;
  background-size: contain;
  width: calc(263 / 1920 * 100vw);
  top: calc(-40 / 1920 * 100vw);
  right: calc(34 / 1920 * 100vw);
  aspect-ratio: 263/206;
}

.p-top__info--box {
  display: flex;
  justify-content: center;
  gap: calc(105 / 1920 * 100vw);
  margin: calc(122 / 1920 * 100vw) 0 calc(199 / 1920 * 100vw);
}
.p-top__info--box img {
  width: calc(712 / 1920 * 100vw);
}

.gallery-slider {
  width: 100%;
  margin: 0 auto;
}
.gallery-slider {
  margin: 60px 0 0;
}
.gallery-slider li {
  margin-right: 20px; /* 右側の余白を20pxに設定 */
}
.gallery-slider img {
  width: 100%; /* 画像を親要素に合わせる */
  display: block;
}

.map {
  margin-top: calc(198 / 1920 * 100vw);
  aspect-ratio: 1920/846;
}

@media screen and (max-width: 768px) {
  .p-mv_box01 {
    background: url(../img/top_mv01_sp.webp) no-repeat center;
    aspect-ratio: 375/739;
    background-size: cover;
  }
  .p-mv_box02 {
    background: url(../img/top_mv02_sp.webp) no-repeat center;
    aspect-ratio: 375/739;
    background-size: cover;
  }
  .p-mv_box03 {
    background: url(../img/top_mv03_sp.webp) no-repeat center;
    aspect-ratio: 375/739;
    background-size: cover;
  }
  .p-top_mv::before {
    background: url(../img/top_mvdec_sp.webp) no-repeat;
    width: 93vw;
    aspect-ratio: 375/350;
    bottom: calc(34 / 375 * 100vw);
    left: calc(10 / 375 * 100vw);
    transform: unset;
    background-size: contain;
  }
  .p-top__ttl {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    right: unset;
  }
  .p-top__news--inner {
    padding: 32px 4% 63px;
    max-width: unset;
    margin: 57px 4% 64px;
  }
  .p-top__news--box {
    padding: 32px 4%;
    margin-top: 15px;
  }
  .p-top__ttl h1 {
    font-size: 3.6rem;
  }
  .p-top__news--box li a{
    display: block;
    padding: 15px 4%;
  }
  .p-top__news--ttl h1 {
    font-size: 3.2rem;
  }

  .p-top__news--box .date {
    font-size: 2rem;
  }
  .p-top__clinichours--inner {
    display: block;
    padding: 0 4%;
  }
  .biz-hour th:first-child {
    padding: 9px 11px;
    font-size: 2rem;
  }
  .biz-hour th,
  .biz-hour td {
    font-size: 1.6rem;
    padding: 13px 8px;
  }
  .biz-hour td:first-child {
    font-size: 1.6rem;
  }
  .p-top__clinichours--txt {
    margin: 20px 0 57px;
  }
  .p-top__clinichours--txt p {
    padding-left: 1.5rem;
    text-indent: -1.5rem;
    font-size: 1.5rem;
  }
  .p-top__reservation--box {
    padding: 14px 0;
  }
  .p-top__reservation--box p {
    font-size: 2.4rem;
  }
  .p-top__reservation tbody {
    display: block;
  }
  .p-top__reservation td {
    font-size: 2rem;
  }
  .p-top__reservation {
    max-width: unset;
    margin: 0 4%;
  }
  .p-top__reservation--txt {
    background-color: #f2f2f2;
    text-align: center;
    padding: 19px 0;
    font-size: 2rem;
  }
  .p-top__reservation--flex {
    display: flex;
    justify-content: center;
    gap: 17px;
  }
  .p-top__reservation--flex p {
    font-size: 2rem;
    text-align: center;
  }
  .p-top__feature {
    margin: 128px 0 64px;
  }
  .c-top__ttl h1 {
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
  .c-top__ttl h2 {
    font-size: 4rem;
  }

  .c-top__ttl::before {
    width: 93px;
    top: -50px;
  }
  .p-top__feature .c-top__ttl h1::before {
    width: 79px;
    top: 49px;
    left: calc(14 / 375 * 100vw);
  }
  .p-top__feature .c-top__ttl h1::after {
    width: 70px;
    top: -68px;
    right: calc(39 / 375 * 100vw);
  }
  .p-top__feature .c-top__ttl h2::before {
    width: 149px;
    top: 149px;
    left: 0;
  }
  .p-top__feature .c-top__ttl h2::after {
    width: 79px;
    top: 311px;
    right: calc(14 / 375 * 100vw);
  }
  .p-top__feature--box {
    flex-direction: column-reverse;
  }
  .p-top__feature--txt h1 {
    font-size: 3.2rem;
    margin-bottom: 37px;
  }
  .p-top__feature--txt p {
    font-size: 1.6rem;
  }
  .p-top__feature--lead {
    padding: 0 4%;
  }
  .p-top__feature--box01 .p-top__feature--lead img {
    width: 146px;
  }
  .p-top__feature--txt {
    width: auto;
    margin-top: 20px;
  }
  .p-top__feature--lead img {
    margin: 0 0 0 auto;
  }
  .p-top__feature--box01 img {
    width: 307px;
  }
  .p-top__feature--box02 .p-top__feature--lead img {
    margin: 0 auto 0 0;
    width: 166px;
  }
  .p-top__feature--box02 img {
    width: 323px;
  }
  .p-top__feature--box03 .p-top__feature--lead img {
    width: 182px;
  }
  .p-top__feature--box03 img {
    width: 344px;
  }
  .c-btn a {
    font-size: 2rem;
    font-weight: 600;
  }
  .p-top__medical {
    padding: 120px 4% 82px;
  }
  .p-top__medical .c-top__ttl h1::before {
    width: 44px;
    top: 26px;
    left: calc(14 / 375 * 100vw);
  }
  .p-top__medical .c-top__ttl h1::after {
    width: 61px;
    top: -94px;
    right: calc(14 / 375 * 100vw);
  }
  .p-top__medical .c-top__ttl h2::before {
    width: 88px;
    top: 156px;
    left: calc(14 / 375 * 100vw);
  }
  .p-top__medical .c-top__ttl h2::after {
    width: 73px;
    top: 46px;
    right: calc(14 / 375 * 100vw);
  }
  .p-top__medical--box {
    flex-direction: column-reverse;
  }
  .p-top__medical--box img {
    width: 177px;
  }
  .p-top__medical--lead {
    width: auto;
  }
  .p-top__medical--lead h1::after {
    width: 108px;
  }
  .p-top__medical--lead h1 {
    font-size: 2.4rem;
    padding-bottom: 14px;
  }
  .p-top__medical--btn {
    background-color: #86bcd1;
    padding: 11px 0;
    width: 251px;
    font-size: 2rem;
    text-align: center;
    position: relative;
    margin: 23px auto 64px;
  }
  .p-top__medical--box:nth-of-type(odd) {
    flex-direction: column-reverse;
  }
  .p-top__medical--dec01 {
    width: 62px;
    top: 619px;
    left: calc(13 / 375 * 100vw);
  }
  .p-top__medical--dec02 {
    width: 89px;
    top: 628px;
    right: calc(57 / 1920 * 100vw);
  }
  .p-top__medical--dec03 {
    width: 137px;
    top: 1777px;
    left: 0;
  }
  .p-top__medical--dec04 {
    width: 62px;
    top: 1267px;
    right: calc(14 / 375 * 100vw);
  }
  .p-top__medical--dec05 {
    width: 62px;
    top: 1798px;
    right: calc(14 / 375 * 100vw);
    left: unset;
  }
  .p-top__medical--dec06 {
    width: 139px;
    bottom: 1138px;
    right: 0;
  }
  .p-top__medical--dec07 {
    width: 83px;
    bottom: 261px;
    left: 0;
  }
  .p-top__medical--dec08 {
    width: 62px;
    bottom: 951px;
    left: 0;
  }
  .p-top__medical--dec09 {
    width: 82px;
    bottom: 215px;
    right: 0;
  }

  .p-top__greet {
    padding: 54px 4% 125px;
  }
  .p-top__greet--box {
    flex-direction: column-reverse;
  }
  .p-top__greet .p-top__medical--lead h1 {
    text-align: left;
  }
  .p-top__greet .p-top__medical--lead a {
    width: 293px;
    padding: 11px 0;
    font-size: 2rem;
    margin: 31px auto 58px;
  }
  .p-top__medical--lead a::after {
    width: 17px;
    height: 17px;
    right: 10px;
  }
  .p-top__greet--box img {
    width: 325px;
  }
  .p-top__greet .c-20 {
    font-size: 2rem;
    font-weight: 500;
    margin-right: 20px;
  }
  .p-top__greet h3 {
    font-size: 3.2rem;
    text-align: center;
  }
  .p-top__info {
    padding: 132px 4% 95px;
  }
  .p-top__info--box {
    flex-direction: column-reverse;
  }
  .p-top__info--box img {
    width: auto;
  }
  .p-top__info .c-top__ttl h1::before {
    width: 79px;
    top: 15px;
    left: calc(-2/375*100vw);
  }
  .p-top__info .c-top__ttl h1::after {
    width: 70px;
    right: calc(24 / 375 * 100vw);
    top: -96px;
  }
  .p-top__info .c-top__ttl h2::before {
    width: 143px;
    top: 599px;
    left: calc(-16/375*100vw);
  }
  .p-top__info .c-top__ttl h2::after {
    width: 73px;
    right:calc(-10/375*100vw);
    top: 24px;
  }
  .map {
    aspect-ratio: 375/335;
    margin-top: 75px;
  }
}
/* ----------------
クリニック
----------------------*/
.p-mv {
  position: relative;
}
.mv {
  aspect-ratio: 1920/536;
  background: url(../img/mv.webp) no-repeat center;
  background-size: cover;
}
.p-mv_ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-mv_ttl h1 {
  color: #fff;
  font-size: min(calc(70 / 1920 * 100vw), 7rem);
  white-space: nowrap;
  font-weight: 900;
  text-shadow: 0px 0px 8px rgba(86, 56, 56, 0.8);
}
.p-mv_ttl p {
  color: #fff;
  font-size: min(calc(64 / 1920 * 100vw), 6.4rem);
  text-align: center;
  text-shadow: 0px 0px 8px rgba(86, 56, 56, 0.8);
  font-weight: 500;
}
.p-clinic {
  background: url(../img/bg.webp);
  background-size: contain;
  background-color: #fffaeb;
  padding: calc(77 / 1920 * 100vw) 0;
}
.p-top__clinic--box {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: calc(120 / 1920 * 100vw);
}
.p-top__clinic--box01 {
  margin-top: calc(57 / 1920 * 100vw);
}
.p-top__clinic--box01 img {
  width: calc(542 / 1920 * 100vw);
}
.p-top__clinic--box01 .p-top__clinic--lead img {
  width: calc(280 / 1920 * 100vw);
}
.p-top__clinic--lead {
  margin-left: calc(-70 / 1920 * 100vw);
}
.p-top__clinic--box02 .p-top__clinic--lead {
  margin-right: calc(-150 / 1920 * 100vw);
  margin-left: unset;
}
.p-top__clinic--box02 .p-top__clinic--lead img {
  margin: 0 auto 0 calc(110 / 1920 * 100vw);
}
.p-top__clinic--lead img {
  margin: 0 calc(110 / 1920 * 100vw) 0 auto;
}
.p-top__clinic--txt {
  width: calc(706 / 1920 * 100vw);
  margin-top: calc(57 / 1920 * 100vw);
}
.p-top__clinic--txt h1 {
  font-size: min(calc(48 / 1440 * 100vw), 4.8rem);
  margin-bottom: calc(22 / 1920 * 100vw);
}
.p-top__clinic--txt p {
  font-size: min(calc(20 / 1440 * 100vw), 2rem);
}
.p-top__clinic--box02 {
  flex-direction: row-reverse;
  justify-content: space-around;
}
.p-top__clinic--box02 img {
  width: calc(525 / 1920 * 100vw);
}
.p-top__clinic--box02 .p-top__clinic--lead img {
  width: calc(298 / 1920 * 100vw);
}

.p-top__clinic--box03 img {
  width: calc(635 / 1920 * 100vw);
}
.p-top__clinic--box03 .p-top__clinic--lead img {
  width: calc(346 / 1920 * 100vw);
}
.p-clinic__inner {
  max-width: calc(1280 / 1920 * 100vw);
  margin: 0 auto;
}
.p-clinic__feature,
.p-clinic__access,
.p-clinic__intro {
  background-color: #fff;
  border: solid #7bbaa9 8px;
  padding: calc(225 / 1920 * 100vw) calc(64 / 1920 * 100vw) 0;
  border-radius: calc(60 / 1920 * 100vw);
  margin-bottom: calc(120 / 1920 * 100vw);
}
.p-clinic__access,
.p-clinic__intro {
  padding-bottom: calc(142 / 1920 * 100vw);
}
.p-clinic__access .map {
  margin-top: calc(71 / 1920 * 100vw);
  aspect-ratio: 1920 / 846;
}
.p-clinic__access .biz-hour {
  width: calc(970 / 1920 * 100vw);
  margin: calc(70 / 1920 * 100vw) auto calc(30 / 1920 * 100vw);
}
.p-clinic__access .biz-hour th,
.biz-hour td {
  padding: calc(30 / 1920 * 100vw) 2.5vw;
}
.p-clinic__access .p-top__clinichours--txt {
  width: calc(622 / 1920 * 100vw);
  margin: 0 auto;
}

.p-clinic__intro--box ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(20 / 1920 * 100vw);
}
.p-clinic__intro--box h3 {
  text-align: center;
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  border-bottom: solid #f9cd9e 2px;
  padding: calc(20 / 1920 * 100vw) 0 calc(9 / 1920 * 100vw);
  margin-bottom: calc(28 / 1920 * 100vw);
}
@media screen and (max-width: 768px) {
  .mv {
    background: url(../img/mv_sp.webp) no-repeat;
    background-size: contain;
    aspect-ratio: 375/739;
  }
  .p-mv_ttl h1 {
    font-size: 2.4rem;
    letter-spacing: 0.2rem;
  }
  .p-mv_ttl p {
    font-size: 2rem;
    letter-spacing: 0.2rem;
  }
  .p-clinic {
    padding: 40px 0;
  }
  .p-clinic__inner {
    max-width: unset;
    margin: 0 4%;
  }
  .p-clinic__feature,
  .p-clinic__access,
  .p-clinic__intro {
    padding: 100px 4% 40px;
  }
  .p-top__clinic--box {
    flex-direction: column-reverse;
  }
  .p-top__clinic--txt h1 {
    font-size: 3.1rem;
    margin-bottom: 37px;
    line-height: 1.6;
  }
  .p-top__clinic--txt p {
    font-size: 1.6rem;
  }
  .p-top__clinic--lead {
    margin-left: unset;
  }
  .p-top__clinic--box01 .p-top__clinic--lead img {
    width: 146px;
  }
  .p-top__clinic--box02 .p-top__clinic--lead {
    margin-right: unset;
  }
  .p-top__clinic--txt {
    width: auto;
    margin-top: 20px;
  }
  .p-top__clinic--lead img {
    margin: 0 0 0 auto;
  }
  .p-top__clinic--box01 img {
    width: 307px;
  }
  .p-top__clinic--box02 .p-top__clinic--lead img {
    margin: 0 auto 0 0;
    width: 166px;
  }
  .p-top__clinic--box02 img {
    width: 323px;
  }
  .p-top__clinic--box03 .p-top__clinic--lead img {
    width: 182px;
  }
  .p-top__clinic--box03 img {
    width: 344px;
  }
  .p-clinic__access .biz-hour {
    width: auto;
  }
  .p-clinic__access .p-top__clinichours--txt {
    width: auto;
  }
  .p-clinic__intro--box ul {
    grid-template-columns: repeat(1, 1fr);
  }
  .p-clinic__intro--box h3 {
    font-size: 2rem;
    padding: 20px 0 10px;
  }
  .p-clinic__intro--box li {
    margin-bottom: 20px;
  }
}
/* -------------------
medical
----------------------*/
.p-medical {
  background: url(../img/bg.webp);
  background-size: contain;
  background-color: #fffaeb;
  padding: calc(77 / 1920 * 100vw) 0;
}
.p-medical__inner {
  max-width: calc(1280 / 1920 * 100vw);
  margin: 0 auto;
}
.p-medical__general {
  background-color: #fff;
  border: solid #7bbaa9 8px;
  padding: calc(225 / 1920 * 100vw) calc(60 / 1920 * 100vw)
    calc(146 / 1920 * 100vw);
  border-radius: calc(60 / 1920 * 100vw);
  margin-bottom: calc(72 / 1920 * 100vw);
}
.p-medical__general--flex {
  display: flex;
  gap: calc(46 / 1920 * 100vw);
  margin-top: calc(70 / 1920 * 100vw);
}
.p-medical__general--flex img {
  width: calc(470 / 1920 * 100vw);
}

.p-medical__lead {
  text-align: center;
}
.p-medical__lead h2 {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  padding: calc(90 / 1920 * 100vw) 0 calc(9 / 1920 * 100vw);
  margin-bottom: calc(28 / 1920 * 100vw);
  position: relative;
}
.p-medical__lead h2::after {
  content: "";
  border-bottom: solid 2px #d17537;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: calc(368 / 1920 * 100vw);
}
.p-medical__lead p {
}
@media screen and (max-width: 768px) {
  .p-medical {
    padding: 40px 0;
  }
  .p-medical__inner {
    max-width: unset;
    margin: 0 4%;
  }
  .p-medical__general {
    padding: 70px 4% 40px;
  }
  .p-medical__general--flex {
    display: block;
  }
  .p-medical__general--flex img {
    width: auto;
    margin-top: 20px;
  }
  .p-medical__lead h2 {
    font-size: 2rem;
    padding: 20px 0 10px;
  }
}
/* -------------
doctor
-----------------*/
.p-doctor {
  background: url(../img/bg.webp);
  background-size: contain;
  background-color: #fffaeb;
  padding: calc(77 / 1920 * 100vw) 0;
}
.p-doctor__inner {
  max-width: calc(1280 / 1920 * 100vw);
  margin: 0 auto;
}
.p-doctore__introduction,
.p-doctor__clinic--introduction {
  background-color: #fff;
  border: solid #7bbaa9 8px;
  padding: calc(225 / 1920 * 100vw) calc(37 / 1920 * 100vw)
    calc(146 / 1920 * 100vw);
  border-radius: calc(60 / 1920 * 100vw);
  margin-bottom: calc(72 / 1920 * 100vw);
}

.p-doctore--flex {
  display: flex;
  gap: calc(21 / 1920 * 100vw);
  justify-content: center;
}
.p-doctore__introduction .p-doctore--flex {
  margin-top: calc(70 / 1920 * 100vw);
}
.p-doctore__introduction img {
  width: calc(567 / 1920 * 100vw);
}
.p-doctore__introduction p {
  width: calc(602 / 1920 * 100vw);
  line-height: 1.6;
}
.p-doctor__intro--img h3 {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  margin-top: calc(32 / 1920 * 100vw);
  text-align: right;
}
.p-doctor__intro--img span {
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  margin-right: 20px;
}

.p-doctor__box01 {
  margin: calc(95 / 1920 * 100vw) auto calc(75 / 1920 * 100vw);
}
.p-doctor__box01 h3 {
  background-color: #e5dbbd;
  width: calc(893 / 1920 * 100vw);
  margin: 0 auto calc(22 / 1920 * 100vw);
  padding: calc(11 / 1920 * 100vw) 0;
  text-align: center;
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  letter-spacing: 1rem;
  font-weight: 500;
}
.p-doctor__box01 dl {
  display: flex;
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  gap: calc(78 / 1920 * 100vw);
  width: calc(712 / 1920 * 100vw);
  margin: 0 auto calc(22 / 1920 * 100vw);
}
.p-doctor__box01 dt {
  width: calc(140 / 1920 * 100vw);
}
.p-doctor__box01 dd {
  line-height: 1.6;
}

.p-doctor__box02 h3,
.p-doctor__box03 h3 {
  background-color: #e5dbbd;
  width: calc(433 / 1920 * 100vw);
  margin: 0 0 calc(22 / 1920 * 100vw);
  padding: calc(11 / 1920 * 100vw) 0;
  text-align: center;
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  letter-spacing: 1rem;
  font-weight: 500;
}
.p-doctor__box02 li {
  line-height: 1.6;
}
.p-doctor__box03 ul {
  width: calc(424 / 1920 * 100vw);
}
.p-doctor__box03 ul li {
  text-indent: -2.5rem;
  padding-left: 2.5rem;
  line-height: 1.6;
}
.p-doctor__clinic--introduction .p-doctore--flex {
  margin-top: calc(72 / 1920 * 100vw);
}
.p-doctor__list dl {
  font-size: min(calc(20 / 1920 * 100vw), 2.4rem);
  display: flex;
  width: calc(707 / 1920 * 100vw);
  margin-bottom: calc(32 / 1920 * 100vw);
  gap: calc(68 / 1920 * 100vw);
  line-height: 1.6;
}
.p-doctor__list dt {
  width: calc(80 / 1920 * 100vw);
}
.p-doctor__clinic--img img {
  width: calc(448 / 1920 * 100vw);
}

@media screen and (max-width: 768px) {
  .p-doctor__inner {
    max-width: unset;
    margin: 40px 4%;
  }
  .p-doctore__introduction,
  .p-doctor__clinic--introduction {
    padding: 100px 4% 40px;
  }
  .p-doctore--flex {
    display: block;
  }
  .p-doctore__introduction p {
    width: auto;
  }
  .p-doctore__introduction img {
    width: auto;
    margin-top: 20px;
  }
  .p-doctor__intro--img h3 {
    font-size: 2.4rem;
  }
  .p-doctor__intro--img span {
    font-size: 1.6rem;
    margin-right: 10px;
  }
  .p-doctor__box01 {
    margin: 40px auto;
  }
  .p-doctor__box01 h3 {
    font-size: 2rem;
    width: auto;
    margin: 0 auto 20px;
    padding: 11px 0;
  }
  .p-doctor__box01 dl {
    font-size: 1.6rem;
    width: auto;
    margin: 0 auto 20px;
    gap: 10px;
  }
  .p-doctor__box01 dt {
    width: 150px;
  }
  .p-doctor__box01 dd {
    width: 100%;
  }
  .p-doctor__box02 h3,
  .p-doctor__box03 h3 {
    width: auto;
    padding: 11px 0;
    font-size: 2rem;
    margin-bottom: 20px;
  }
  .p-doctor__box02 li {
    font-size: 1.6rem;
  }
  .p-doctor__box03 {
    margin-top: 40px;
  }
  .p-doctor__box03 ul {
    width: auto;
  }
  .p-doctor__box03 ul li {
    font-size: 1.6rem;
  }
  .p-doctor__clinic--introduction .p-doctore--flex {
    margin-top: 40px;
  }
  .p-doctor__list dl {
    font-size: 1.6rem;
    width: auto;
  }
  .p-doctor__list dt {
    width: 110px;
  }
  .p-doctor__list dd {
    width: 100%;
  }
  .p-doctor__clinic--img {
    margin-top: 20px;
  }
  .p-doctor__clinic--img img {
    width: auto;
  }
}


/* ---------------

-----------------*/
.p-news__detail {
background: url(../img/bg.webp);
  background-size: contain;
  background-color: #fffaeb;
  padding: calc(77 / 1920 * 100vw) 0;

}
.works-detail {
  padding: calc(100 / 1920 * 100vw) calc(37 / 1920 * 100vw)
    calc(146 / 1920 * 100vw);
  max-width: calc(1280 / 1920 * 100vw);
  margin: 0 auto;
  background-color: #fff;
  border: #98b576 8px solid;
  border-radius: calc(60/1920*100vw);
}
.works-detail .ttl-block {
  position: relative;
  padding: calc(50 / 1920 * 100vw) 0 calc(22 / 1920 * 100vw);
  line-height: 1.4;
}
.works-detail .txt-block {
  padding: calc(24 / 1920 * 100vw) 0 calc(42 / 1920 * 100vw);
}
.works-detail .ttl-block .date {
  padding: 0 0 4px;
  font-weight: 500;
  letter-spacing: 0;
}
.works-detail .ttl-block .works-title {
  font-weight: 700;
  font-size: min(calc(28 / 1920 * 100vw), 2.8rem);
}

@media screen and (max-width: 768px) {
  .p-news__detail {
    padding: 100px 4%;
  }
  .works-detail {
    padding: 60px 4% 40px;
    max-width: unset;
  }
  .works-detail .ttl-block .date {
    font-size: 1.4rem;
  }
  .works-detail .ttl-block .works-title {
    font-size: 2rem;
  }
  .works-detail .txt-block {
    padding: 24px 0 42px;
  }
}
}
