@charset "utf-8";

/*--------------------
webfont
--------------------*/
* {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
}

/*--------------------
root
--------------------*/
:root {
  --font-en: "quiche-flare", sans-serif;
  --font-min: "Shippori Mincho", serif;
  --font-marcellus: "Marcellus", serif;
}

/*--------------------
common
--------------------*/
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  counter-reset: number 0;
  color: #574E43;
  background-size: 50%;
  position: relative;
}

.no-scroll {
  overflow: hidden;
}

a {
  color: #574E43;
  text-decoration: none;
  transition: ease-in .2s;

  &:hover {
    transition: ease-in .2s;
  }
}

picture {
  display: block;

  img {
    width: 100%;
  }
}

.container {
  width: calc(1440px + 4%);
  margin: auto;
  padding: 0 2%;

  @media (max-width: 1530px) {
    width: 100%;
  }

  @media (max-width: 767px) {
    width: 100%;
    padding: 0 5%;
  }
}

.container_m {
  width: calc(1200px + 4%);
  margin: auto;
  padding: 0 2%;

  @media (max-width: 1300px) {
    width: 100%;
    padding: 0 5%;
  }
}

.container_s {
  width: calc(980px + 4%);
  margin: auto;
  padding: 0 2%;

  @media (max-width: 1100px) {
    width: 100%;
    padding: 0 5%;
  }
}

.pc {
  display: block;

  @media (max-width: 767px) {
    display: none;
  }
}

.sp {
  display: none;

  @media (max-width: 767px) {
    display: block;
  }
}

.swiper_area {
  position: relative;
}

.swiper {
  ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
}

img {
  max-width: 100%;
}

/*--------------------
title
--------------------*/
.sec_ttl {
  /* 30px-60px:375px-1920px */
  margin-bottom: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
  text-align: center;

  .en {
    font-family: var(--font-en);
    font-weight: 400;
    color: #574E43;
    /* 40px-70px:375px-1920px */
    font-size: clamp(2.5rem, 2.045rem + 1.94vw, 4.375rem);
    margin: 0;
  }

  .ja {
    margin: 0;
    line-height: 1;
    /* 20px-30px:375px-1920px */
    font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
    font-family: var(--font-min);
    font-weight: 600;
    color: #DB6B7C;
  }
}

.en_bg_ttl {
  text-align: center;
  /* 30px-60px:375px-1920px */
  margin-bottom: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);

  &::after {
    content: "";
    display: block;
    /* 30px-44px:375px-1920px; */
    width: clamp(1.875rem, 1.663rem + 0.91vw, 2.75rem);
    height: 1px;
    border-bottom: 3px #9D7947 solid;
    /* 15px-30px:375px-1920px; */
    margin: clamp(0.938rem, 0.71rem + 0.97vw, 1.875rem) auto 0;
  }

  .en {
    font-family: var(--font-en);
    font-weight: 400;
    /* 50px-120px:375px-1920px; */
    font-size: clamp(3.125rem, 2.063rem + 4.53vw, 7.5rem);
    color: #F6F4F3;
    line-height: 1;
    margin: 0;
  }

  .ja {
    font-family: var(--font-min);
    /* 22px-40px:375px-1920px; */
    font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
    margin: -3.5vw auto 0;

    @media (max-width: 767px) {
      margin: -6vw auto 0;
    }
  }
}

/*--------------------
btn
--------------------*/
.btn_more {
  a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 400px;
    width: fit-content;
    background-color: #fff;
    border: 1px #9D7947 solid;
    border-radius: 100px;
    font-family: var(--font-min);
    font-weight: 600;
    /* 20px-30px:375px-1920px */
    font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
    color: #9D7947;
    margin: 0 auto;
    padding: 15px 20px;

    @media (max-width: 767px) {
      padding: 10px 15px;
      min-width: inherit;
      width: 80%;
    }

    &::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 30px;
      display: inline-block;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg transform='translate(0 0.358)'%3E%3Cg %3E%3Cpath d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline  x1='16' transform='translate(0 6.741)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") center center / contain no-repeat;
      width: 16px;
      height: 13px;
      transition: ease-in .2s;
    }

    @media (max-width: 767px) {
      &::after {
        right: 20px;
        width: 12px;
        height: 10px;
      }
    }

    &:hover {
      background-color: #F5F1EA;

      &::after {
        right: 25px;
      }
    }
  }
}

.btn_arrow_black {
  width: max-content;

  a {
    display: flex;
    align-items: center;
    color: #9D7947;
    font-family: var(--font-en);
    font-weight: 500;
    /* 18px-20px:375px-1920px */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
    gap: 10px;

    &::before {
      content: "";
      transform: rotate(-180deg);
      display: inline-block;
      background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
      width: 30px;
      height: 30px;
      margin-left: 0;
      transition: ease-in .2s;
    }

    @media (max-width: 767px) {
      &::before {
        width: 22px;
        height: 22px;
      }
    }

    &:hover {
      gap: 15px;
      margin-left: -5px;
    }
  }
}

/*--------------------
list
--------------------*/
.list_check {
  list-style: none;
  margin: 0;
  padding: 0;

  &>li {
    position: relative;
    /* 18px-20px:375px-1920px */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
    padding-left: 35px;

    @media (max-width: 767px) {
      padding-left: 30px;
    }

    &::before {
      content: "";
      position: absolute;
      top: 3px;
      left: 0;
      background: url("../img/icon_check_brown.svg") center center / contain no-repeat;
      display: inline-block;
      /* 20px-25px:375px-1920px */
      width: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
      height: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
    }

    @media (max-width: 767px) {
      &::before {
        top: 4px;
      }
    }

    &+li {
      margin-top: 20px;
    }
  }
}

.list_circle {
  list-style: none;
  margin: 0;
  padding: 0;

  &>li {
    position: relative;
    /* 18px-20px:375px-1920px */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
    padding-left: 15px;

    &::before {
      content: "";
      position: absolute;
      top: 10px;
      left: 0;
      display: inline-block;
      width: 10px;
      height: 10px;
      background-color: #C9B292;
      border-radius: 100px;
    }

    &+li {
      margin-top: 10px;
    }
  }
}

/*--------------------
ページネーション
--------------------*/
.navigation.pagination {
  text-align: center;
  margin-top: clamp(2.5rem, 2.06rem + 1.88vw, 3.75rem);

  * {
    font-family: var(--font-en);
    font-weight: 500;
  }

  a {
    color: #9D7947;
  }

  .page-numbers {
    padding: 0.5em;
    min-width: 2em;
    font-size: clamp(0.938rem, 0.827rem + 0.47vw, 1.25rem);
  }

  .current {
    display: inline-block;
    background-color: #9D7947;
    line-height: 1;
    border-radius: 100px;
    color: #fff;
  }

  .prev {
    color: #9D7947;
    display: inline-flex;
    align-items: center;
    gap: 0.2em;

    &::before {
      content: "";
      width: clamp(0.438rem, 0.393rem + 0.19vw, 0.563rem);
      height: clamp(0.438rem, 0.393rem + 0.19vw, 0.563rem);
      border: 0;
      border-top: solid 1px #9D7947;
      border-right: solid 1px #9D7947;
      transform: rotate(-135deg);
    }
  }

  .next {
    color: #9D7947;
    display: inline-flex;
    align-items: center;
    gap: 0.2em;

    &::after {
      content: "";
      width: clamp(0.438rem, 0.393rem + 0.19vw, 0.563rem);
      height: clamp(0.438rem, 0.393rem + 0.19vw, 0.563rem);
      border: 0;
      border-top: solid 1px #9D7947;
      border-right: solid 1px #9D7947;
      transform: rotate(45deg);
    }
  }
}

/*--------------------
header
--------------------*/
header {
  ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .header_inner {
    position: fixed;
    top: -100px;
    left: 0;
    right: 0;
    background-color: #fff;
    border-bottom: 1px #9D7947 solid;
    width: 100%;
    height: 96px;
    display: flex;
    align-items: center;
    z-index: 102;
    /* 20px-40px:375px-1920px */
    padding: 0 2.08vw 0 3.13vw;
    transition: top 0.4s ease;

    @media (max-width: 767px) {
      height: 60px;
      padding: 0 4vw 0 5.33vw;
    }

    .header_logo {
      margin: 0;
      /* 150px-263px:375px-1920px */
      width: clamp(9.375rem, 7.661rem + 7.31vw, 16.438rem);

      a {
        display: flex;
      }

      img {
        width: 100%;
      }
    }

    /* グローバルナビ */
    .g_nav {
      margin-left: auto;
      margin-right: 3.65vw;

      .g_nav_list {
        display: flex;
        justify-content: center;
        align-items: center;
        /* 20px-40px:1360px-1920px */
        gap: clamp(1.25rem, -1.786rem + 3.57vw, 2.5rem);

        @media (max-width: 1000px) {
          display: none;
        }

        .g_nav_item {
          a {
            /* 14px-25px:375px-1920px */
            font-size: clamp(0.875rem, 0.708rem + 0.71vw, 1.563rem);
            text-align: center;
            position: relative;

            &::after {
              /* content: "";
              position: absolute;
              left: 50%;
              transform: translateX(-50%);
              bottom: -10px;
              width: 20px;
              height: 3px;
              display: block;
              background-color: #9A7B42;
              opacity: 0;
              transition: ease-in .2s; */
            }

            &:hover {
              &::after {
                opacity: 1;
              }

              .en {
                color: #AF4B46;
              }
            }
          }
        }
      }
    }

    /* ハンバーガー */
    .g_ham_area {
      display: flex;
      align-items: center;
      /* 17px-20px:1360px-1920px */
      gap: clamp(1.063rem, 1.017rem + 0.19vw, 1.25rem);
      margin-left: 20px;

      @media (max-width: 767px) {
        margin-left: 0;
      }

      .btn {
        width: 45px;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        transition: ease-in .2s;

        @media (max-width: 767px) {
          width: 30px;
        }

        &.btn_hamburger {
          margin-top: 5px;
          height: 45px;

          @media (max-width: 767px) {
            height: 28px;
          }

          /* ハンバーガー */
          .hamburger_lines {
            position: relative;
            width: 100%;
            margin: auto;
            /* 7px-10px:375px-1920px */
            height: clamp(0.438rem, 0.392rem + 0.19vw, 0.625rem);
            -webkit-transition-duration: 300ms;
            transition-duration: 300ms;

            .line {
              position: absolute;
              right: 0;
              left: 0;
              display: block;
              width: 90%;
              height: 1px;
              margin: auto;
              -webkit-transition-duration: 300ms;
              transition-duration: 300ms;
              background-color: #fff;
            }

            .line:nth-child(1) {
              top: 0;
            }

            .line:nth-child(2) {
              bottom: 0;
            }

            .line:nth-child(3) {
              top: 50%;
              transform: translateY(-50%);
            }
          }
        }
      }
    }

    /* 追従ナビ */
    &.visible {
      top: 0;
    }
  }

  /* ハンバーガーメニューが開いているとき */
  &.active {
    .header_inner {
      position: fixed;
      background-color: transparent;
      border-bottom: none;
      justify-content: flex-end;

      .header_logo,
      .g_nav {
        display: none;
      }

      .g_ham_area {
        margin-left: auto;
      }
    }

    .ham_con {
      display: flex;

      &::-webkit-scrollbar {
        display: none;
      }
    }
  }
}

/*--------------------
ハンバーガー中身
--------------------*/
.ham_con {
  display: none;
  align-items: center;
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/ham_con_bg.webp") center center / cover no-repeat;
  transition: ease-in .2s;
  z-index: 101;
  overflow-y: scroll;
  overscroll-behavior: none;

  .ham_con_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /* height: 100%; */
    /* padding: 50px 8%; */
    padding: 50px 2%;

    @media (max-width: 767px) {
      padding: 50px 5%;
    }

    .ham_logo {
      /* 180px-263px:375px-1920px */
      width: clamp(11.25rem, 9.991rem + 5.37vw, 16.438rem);
      /* 40px-60px:375px-1920px */
      margin: 0 auto clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

      a {
        img {
          width: 100%;
        }
      }
    }

    .h_nav_list {
      display: flex;
      gap: 30px 40px;
      flex-wrap: wrap;
      /* 40px-70px:375px-1920px */
      margin-bottom: clamp(2.5rem, 2.045rem + 1.94vw, 4.375rem);

      @media (max-width: 767px) {
        gap: 20px;
      }

      .h_nav_item {
        width: calc((100% - 120px) / 4);

        @media (max-width: 767px) {
          width: calc((100% - 20px) / 2);
        }

        a {
          font-family: var(--font-min);
          font-weight: 500;
          /* 18px-22px:375px-1920px */
          font-size: clamp(1.125rem, 1.064rem + 0.26vw, 1.375rem);
          border-bottom: 1px #9D7947 solid;
          padding: 10px 0;
          position: relative;
          display: block;

          @media (max-width: 767px) {
            padding: 8px 0;
          }

          &::after {
            content: "";
            background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
            display: inline-block;
            position: absolute;
            top: 50%;
            right: 5px;
            transform: translateY(-50%);
            /* 16px-22px:375px-1920px */
            width: clamp(1rem, 0.909rem + 0.39vw, 1.375rem);
            height: clamp(1rem, 0.909rem + 0.39vw, 1.375rem);
            transition: ease-in .2s;
          }

          @media (max-width: 767px) {
            &::after {
              right: 0;
            }
          }

          &:hover {
            color: #DB6B7C;

            &::after {
              right: 0;
            }
          }
        }
      }
    }

    .map_area {
      width: 100%;
      display: flex;
      justify-content: space-between;
      margin-bottom: 20px;

      @media (max-width: 767px) {
        flex-direction: column;
      }

      .address {
        margin: 0;
        /* 16px-20px:375px-1920px */
        font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
      }

      .btn_map {
        margin-left: auto;
        margin-top: auto;

        @media (max-width: 767px) {
          margin-top: 10px;
          margin-left: 0;
        }

        a {
          color: #9D7947;
          /* 16px-20px:375px-1920px */
          font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
          border-bottom: 1px #9D7947 solid;

          &::after {
            content: "";
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M96,0V13.1h13.1V0Zm11.842,11.842H97.26V1.26h10.582Z' transform='translate(-93.102)' fill='%239d7947'/%3E%3Cpath d='M1.26,107.842V96H0v13.1H13.1v-1.26H1.26Z' transform='translate(0 -93.102)' fill='%239d7947'/%3E%3Cpath d='M205.422,132.55l3.712-3.712v2.671h1.26v-4.821h-4.821v1.26h2.671l-3.712,3.712Z' transform='translate(-198.168 -122.747)' fill='%239d7947'/%3E%3C/svg%3E%0A");
            width: 16px;
            height: 16px;
            display: inline-block;
            margin-left: 12px;
          }

          &:hover {
            opacity: 0.7;
          }
        }
      }
    }

    .clinic_time_table {
      tbody {
        background-color: #fff;
      }
    }

    .time_table_notes {
      align-self: flex-end;
    }

    .common_contact {
      background: none;
      border-top: none;
      width: 100%;
      text-align: center;
      padding-top: 40px;
      /* 40px-60px:375px-1920px */
      padding-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
    }

    .h_subnav_list {
      display: flex;
      gap: 20px;

      .h_subnav_item {
        a {
          color: #9D7947;
          border-bottom: 1px #9D7947 solid;
          padding-bottom: 1px;
          font-family: var(--font-min);
          font-weight: 600;
          /* 14px-18px:375px-1920px */
          font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);

          &:hover {
            opacity: 0.7;
          }
        }
      }
    }
  }
}

/*--------------------
main
--------------------*/
main {
  background: url("../img/ham_con_bg.webp") top center / 100% no-repeat;

  @media (max-width: 767px) {
    background-image: url("../img/ham_con_bg_sp.webp")
  }
}

/*--------------------
トップページ
--------------------*/
.home {
  main {
    background: none;
  }
}

/* mv */
.mv {
  background: url("../img/ham_con_bg.webp") top center / cover no-repeat;
  position: relative;
  width: 100%;
  height: 100svh;
  overflow: hidden;

  @media (max-width: 767px) {
    background-image: url("../img/mv_bg_sp.webp");
    height: auto;
    margin-bottom: 60px;
  }

  .bg_en {
    mix-blend-mode: multiply;
    width: 100%;
  }

  .logo {
    position: absolute;
    top: 1.7708333333333333vw;
    left: 3.125vw;
    z-index: 2;
    margin: 0;
    width: 263px;

    @media (max-width: 767px) {
      width: 200px;
      top: 4vw;
    }

    img {
      width: 100%;
    }
  }

  .mv_swiper {
    position: absolute;
    /* top: 100px; */
    top: 5.21vw;
    /* right: 80px; */
    right: 4.17vw;
    width: 70%;
    height: 70svh;
    border-radius: 20vw 10px 20vw 10px;
    overflow: hidden;

    @media (max-width: 767px) {
      position: static;
      width: 90%;
      height: 37svh;
      border-radius: 100px 10px 100px 10px;
      margin: 40px auto 40px;
    }

    .swiper-wrapper {
      margin: 0;

      .swiper-slide {
        img {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }
    }
  }

  .mv_copy {
    position: absolute;
    left: 100px;
    bottom: 40%;
    z-index: 2;
    font-family: var(--font-min);
    font-weight: 500;
    /* 35px-75px:375px-1920px */
    font-size: clamp(2.188rem, 1.581rem + 2.59vw, 4.688rem);
    margin: 0;
    text-shadow: 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1);

    @media (max-width: 767px) {
      position: static;
      margin: 80px 0 0 5%;
    }
  }

  .mv_news {
    position: absolute;
    bottom: 7vw;
    left: 0;
    z-index: 2;
    background-color: #fff;
    border-radius: 0 20px 0 0;
    max-width: 960px;
    width: 80%;
    padding: 0 40px 0 100px;

    @media (max-width: 767px) {
      position: static;
      width: 90%;
      background: none;
      margin: 0 auto;
      padding: 0 5%;
    }

    .news_list {
      position: relative;

      &::before {
        content: "";
        position: absolute;
        top: -20px;
        left: -70px;
        background: url("../img/mv_news_obj.svg") center center / contain no-repeat;
        width: 170px;
        height: 60px;
        display: block;
      }

      @media (max-width: 767px) {
        &::before {
          top: -30px;
          left: -40px;
        }
      }

      .news_item {
        a {
          border: none;

          @media (max-width: 767px) {
            border-bottom: 1px #9D7947 solid;
            flex-direction: column;
            align-items: flex-start;
            gap: 10px;
            padding: 20px 40px 20px 0;
          }
        }
      }
    }
  }

  .mv_nav_area {
    position: absolute;
    bottom: 0;
    z-index: 2;
    background-color: #fff;
    border-top: 1px #9D7947 solid;
    border-bottom: 1px #9D7947 solid;
    width: 100%;

    @media (max-width: 1000px) {
      bottom: inherit;
      top: 30px;
      right: 5.33vw;
      border: none;
      background-color: transparent;
      width: auto;
    }

    @media (max-width: 767px) {
      top: 7.2vw;
    }

    .g_nav {
      max-width: 1200px;
      width: 90%;
      margin: auto;
      display: flex;

      .g_nav_list {
        @media (max-width: 1000px) {
          display: none
        }
      }
    }

    .btn_hamburger {
      margin-right: 20px;
      margin: auto 0 auto auto;
    }
  }
}

.g_nav_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  /* 40px-50px:1000px-1920px */
  gap: clamp(2.5rem, 1.821rem + 1.09vw, 3.125rem);
  /* 25px-30px:1000px-1920px */
  padding: clamp(1.563rem, 1.223rem + 0.54vw, 1.875rem) 0;

  .g_nav_item {
    a {
      display: block;
      position: relative;
      font-family: var(--font-min);
      font-weight: 600;
      /* 20px-30px:1000px-1920px */
      font-size: clamp(1.25rem, 0.571rem + 1.09vw, 1.875rem);

      &::after {
        content: "";
        position: absolute;
        bottom: -10px;
        left: 50%;
        transform: translateX(-50%);
        /* 7px-9px:1000px-1920px */
        width: clamp(0.438rem, 0.302rem + 0.22vw, 0.563rem);
        height: clamp(0.438rem, 0.302rem + 0.22vw, 0.563rem);
        border-radius: 100px;
        background-color: #E59DA7;
        display: block;
        opacity: 0;
        transition: ease-in .2s;
      }

      &:hover {
        color: #DB6B7C;

        &::after {
          opacity: 1;
        }
      }
    }
  }
}

/* ハンバーガー */
.btn_hamburger {
  width: 38px;

  @media (max-width: 767px) {
    width: 30px;
  }

  .hamburger_lines {
    position: relative;
    width: 100%;
    margin: auto;
    /* 7px-10px:375px-1920px */
    height: 30px;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;

    @media (max-width: 767px) {
      height: 23px;
    }

    .line {
      position: absolute;
      right: 0;
      left: 0;
      display: block;
      width: 90%;
      /* 2px-3px:375px-1920px */
      height: clamp(0.125rem, 0.11rem + 0.06vw, 0.188rem);
      margin: auto;
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
      background-color: #9D7947;
    }

    .line:nth-child(1) {
      top: 0;
    }

    .line:nth-child(2) {
      bottom: 0;
    }

    .line:nth-child(3) {
      top: 50%;
      transform: translateY(-50%);
    }
  }
}

/*--------------------
footer
--------------------*/
footer {
  position: relative;
  padding-top: 140px;
  margin-top: -140px;
  overflow: hidden;

  @media (max-width: 767px) {
    padding-top: 60px;
    margin-top: -60px;
  }

  &::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 0;
    display: block;
    width: 1844px;
    height: 1844px;
    border-radius: 2000px;
    background-color: #F7F4F0;
  }

  @media (max-width: 767px) {
    &::before {
      width: 450px;
      height: 450px;
    }
  }

  .footer_logo {
    width: 340px;
    position: absolute;
    top: 100px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;

    @media (max-width: 767px) {
      width: 180px;
      top: 50px;
    }

    img {
      width: 100%;
    }
  }

  .footer_inner {
    background-color: #F7F4F0;
    position: relative;
    z-index: 1;
    padding-top: 110px;
    padding-bottom: 20px;

    @media (max-width: 767px) {
      padding-top: 75px;
      padding-bottom: 75px;
    }

    .map_area {
      display: grid;
      /* 40px-60px:375px-1920px */
      margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

      @media (max-width: 767px) {
        display: flex;
        flex-direction: column;
      }

      .address {
        grid-column: 1;
        grid-row: 1;
        margin: 0;
        /* 16px-20px:375px-1920px */
        font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
      }

      .btn_map {
        grid-column: 2;
        grid-row: 1;
        margin-left: auto;
        margin-top: auto;

        @media (max-width: 767px) {
          margin-top: 10px;
        }

        a {
          color: #9D7947;
          /* 16px-20px:375px-1920px */
          font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
          border-bottom: 1px #9D7947 solid;

          &::after {
            content: "";
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M96,0V13.1h13.1V0Zm11.842,11.842H97.26V1.26h10.582Z' transform='translate(-93.102)' fill='%239d7947'/%3E%3Cpath d='M1.26,107.842V96H0v13.1H13.1v-1.26H1.26Z' transform='translate(0 -93.102)' fill='%239d7947'/%3E%3Cpath d='M205.422,132.55l3.712-3.712v2.671h1.26v-4.821h-4.821v1.26h2.671l-3.712,3.712Z' transform='translate(-198.168 -122.747)' fill='%239d7947'/%3E%3C/svg%3E%0A");
            width: 16px;
            height: 16px;
            display: inline-block;
            margin-left: 12px;
          }

          &:hover {
            opacity: 0.7;
          }
        }
      }

      .googlemap {
        grid-column: 1 / 3;
        grid-row: 2;
        width: 100%;
        height: 280px;
        /* 20px-30px:375px-1920px */
        margin-top: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);

        iframe {
          width: 100%;
          height: 100%;
        }
      }
    }
  }

  .copyright {
    /* 12px-16px:375px-1920px */
    font-size: clamp(0.75rem, 0.689rem + 0.26vw, 1rem);
    text-align: center;
    /* 40px-60px:375px-1920px */
    margin: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem) 0 0;
  }
}

.clinic_time_table {
  width: 100%;
  table-layout: fixed;

  * {
    /* 16px-25px:375px-1920px */
    font-size: clamp(1rem, 0.863rem + 0.58vw, 1.563rem);
    border: 1px #9D7947 solid;
    text-align: center;
  }

  .th_pc {
    @media (max-width: 767px) {
      display: none;
    }
  }

  .th_sp {
    display: none;

    @media (max-width: 767px) {
      display: table-row;
      padding: 5px;
    }
  }

  thead {
    background-color: #E9E0D5;

    tr {
      th {
        width: 25%;
        font-weight: normal;
        padding: 15px 0;

        @media (max-width: 767px) {
          padding: 5px 0;
        }
      }

      td {
        padding: 15px 0;

        @media (max-width: 767px) {
          padding: 5px 0;
        }
      }
    }
  }

  tbody {
    background-color: #FCF8F4;

    tr {
      th {
        font-weight: normal;
      }

      td {
        padding: 40px 0;

        @media (max-width: 767px) {
          padding: 20px 0;
        }

        &.on {
          background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cg fill='none' stroke='%23c19b67' stroke-width='4'%3E%3Ccircle cx='15' cy='15' r='15' stroke='none'/%3E%3Ccircle cx='15' cy='15' r='13' fill='none'/%3E%3C/g%3E%3C/svg%3E%0A") center center no-repeat;
          /* 18px-30px:375px-1920px */
          background-size: clamp(1.125rem, 0.943rem + 0.78vw, 1.875rem);
        }

        &.on2 {
          background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='27' viewBox='0 0 30 27'%3E%3Cg fill='none'%3E%3Cpath d='M15,0,30,27H0Z' stroke='none'/%3E%3Cpath d='M 15.00000095367432 8.236503601074219 L 6.798059463500977 23 L 23.20194244384766 23 L 15.00000095367432 8.236503601074219 M 15.00000095367432 0 L 30 27 L 1.9073486328125e-06 27 L 15.00000095367432 0 Z' stroke='none' fill='%23c19b67'/%3E%3C/g%3E%3C/svg%3E%0A") center center no-repeat;
          /* 20px-30px:375px-1920px */
          background-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
        }

        &.off {
          background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.322' height='4' viewBox='0 0 15.322 4'%3E%3Cline x2='15.322' transform='translate(0 2)' fill='none' stroke='%23c9b292' stroke-width='4'/%3E%3C/svg%3E%0A") center center no-repeat;
          /* 10px-15px:375px-1920px */
          background-size: clamp(0.625rem, 0.549rem + 0.32vw, 0.938rem);
        }
      }
    }
  }
}

.time_table_notes {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  /* 10px-15px:375px-1920px */
  margin: clamp(0.625rem, 0.549rem + 0.32vw, 0.938rem) 0 0;
  /* 14px-20px:375px-1920px */
  font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);

  svg {
    @media (max-width: 767px) {
      transform: scale(0.65);
    }
  }
}

/*--------------------
top
--------------------*/
.top_recommend {
  background: url("../img/reccomend_bg.webp") top 200px center / cover no-repeat;
  padding-top: 100px;
  /* 90px-160px:375px-1920px; */
  padding-bottom: clamp(5.625rem, 4.563rem + 4.53vw, 10rem);

  @media (max-width: 767px) {
    padding-top: 0;
    background-position-y: 60px;
  }

  .recommend_inner {
    position: relative;
    max-width: 1536px;
    width: 90%;
    margin: auto;
    background-color: #fff;
    border: 1px #9D7947 solid;
    /* 40px-80px:375px-1920px; */
    /* 65px-120px:375px-1920px; */
    padding: clamp(2.5rem, 1.893rem + 2.59vw, 5rem) 0 clamp(4.063rem, 3.228rem + 3.56vw, 7.5rem);

    .recommend_swiper_wrap {
      max-width: 1200px;
      width: 90%;
      margin: auto;

      @media (max-width: 767px) {
        width: 100%;
      }

      .recommend_swiper {
        margin-bottom: 30px;

        .swiper-slide {
          transition: transform 0.3s ease, opacity 0.3s ease;
          transform: scale(0.8);
          opacity: 0.5 !important;
        }

        .swiper-slide-prev {
          @media (max-width: 767px) {
            transform-origin: center right;
          }
        }

        .swiper-slide-active {
          transform: scale(1);
          opacity: 1 !important;

          @media (max-width: 767px) {
            /* transform: scale(0.8);
            opacity: 0.5 !important;
            transform-origin: center left; */
          }
        }

        .swiper-slide-next {
          @media (max-width: 767px) {
            transform-origin: center left;
            /* transform: scale(1);
            opacity: 1 !important; */
          }
        }

        /* スライドが2枚以下のときのPC */
        @media (min-width: 768px) {
          &.is-few {
            width: 500px;

            .swiper-wrapper {
              .swiper-slide {
                opacity: 1 !important;
                text-align: center;
                transform: scale(0.9) !important;
              }

              .swiper-slide-next {
                transform: inherit;
                opacity: 1 !important;
                transform: scale(0.9) !important;
              }
            }

            .swiper-button-prev {
              left: 0;
            }

            .swiper-button-next {
              right: 0;
            }
          }
        }
      }

      .recommend_text_swiper {
        transition: transform 0.3s ease, opacity 0.3s ease;
        width: 80%;

        @media (max-width: 767px) {
          width: 90%;
        }

        .swiper-slide {
          a {
            border-bottom: 1px #9D7947 solid;
            padding-bottom: 15px;
            display: block;

            time {
              color: #9D7947;
              /* 18px-25px:375px-1920px */
              font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
              margin-bottom: 10px;
            }

            .category {
              display: inline-block;
              margin-left: 20px;
              font-weight: 500;
              /* 14px-20px:375px-1920px */
              font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
              color: #fff;
              background-color: #9D7947;
              padding: 0 10px;
              margin-bottom: 10px;
            }

            .post_ttl {
              display: flex;
              align-items: center;
              font-family: var(--font-min);
              font-weight: 500;
              /* 18px-30px:375px-1920px */
              font-size: clamp(1.125rem, 0.943rem + 0.78vw, 1.875rem);
              margin: 0;

              &::after {
                content: "";
                background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
                /* 22px-30px:375px-1920px */
                width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
                height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
                flex-shrink: 0;
                margin-left: auto;
              }
            }
          }
        }
      }

      .swiper-button-prev,
      .swiper-button-next {
        background-color: #9D7947;
        /* 30px-50px:375px-1920px */
        width: clamp(1.875rem, 1.572rem + 1.29vw, 3.125rem);
        height: clamp(1.875rem, 1.572rem + 1.29vw, 3.125rem);
        border-radius: 100px;
        top: 50%;

        &::after {
          color: #fff;
          /* 14px-18px:375px-1920px */
          font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);
          font-weight: 600;
        }
      }

      .swiper-button-prev {
        left: calc((100% / 3) - 5vw);

        @media (max-width: 767px) {
          left: 5%;
        }
      }

      .swiper-button-next {
        right: calc((100% / 3) - 5vw);

        @media (max-width: 767px) {
          right: 5%;
        }
      }
    }

    .btn_more {
      position: absolute;
      bottom: -35px;
      width: 100%;

      @media (max-width: 767px) {
        bottom: -25px;
      }

      a {
        @media (max-width: 767px) {
          width: 70%;
        }
      }
    }
  }
}

.top_menu {
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .pick_up {
    display: grid;
    grid-template-columns: 6.25vw calc(100% - 12.5vw) 6.25vw;
    border-top: 1px #9D7947 solid;

    .box_left,
    .box_right {
      display: flex;
      justify-content: center;
      align-items: center;

      &::before {
        content: "PICK UP MENU";
        display: block;
        transform: rotate(90deg);
        font-family: var(--font-en);
        /* 22px-40px:375px-1920px; */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        color: #9D7947;
        white-space: nowrap;
        letter-spacing: 0.2em;
      }
    }

    .box_let {
      grid-column: 1;
      grid-row: 1;
    }

    .box_right {
      grid-column: 3;
      grid-row: 1;

      @media (max-width: 767px) {
        display: none;
      }

      &::before {
        transform: rotate(-90deg);
      }
    }

    .pick_up_main {
      grid-column: 2;
      grid-row: 1;
      border-left: 1px #9D7947 solid;
      border-right: 1px #9D7947 solid;
      /* 30px-60px:375px-1920px; */
      padding: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem) 0;

      @media (max-width: 767px) {
        grid-column: 2 / 4;
        border-right: none;
      }
    }
  }

  .by {
    display: grid;
    grid-template-columns: 6.25vw 1fr 6.25vw;
    border-top: 1px #9D7947 solid;
    background: url("../img/top_menu_bg.webp") bottom center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    &::before,
    &::after {
      content: "";
      border-bottom: 1px #9D7947 solid;
    }

    .by_main {
      grid-column: 2;
      grid-row: 1;
      border-left: 1px #9D7947 solid;
      border-right: 1px #9D7947 solid;
      border-bottom: 1px #9D7947 solid;
      background-color: #fff;
      /* 30px-60px:375px-1920px; */
      padding: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem) 0;

      .by_trouble {
        /* 40px-80px:375px-1920px; */
        margin-bottom: clamp(2.5rem, 1.893rem + 2.59vw, 5rem);
      }
    }
  }
}

.pickup_swiper_wrap {
  max-width: 1512px;
  width: 90%;
  margin: auto;

  @media (max-width: 767px) {
    width: 92%;
    margin-right: 0;
  }

  .pickup_swiper {
    .swiper-wrapper {
      .swiper-slide {
        a {
          display: block;

          .img {
            position: relative;

            .img_inner {
              border-radius: 5.21vw 5px 5.21vw 5px;
              overflow: hidden;
              aspect-ratio: 2 / 3;

              @media (max-width: 767px) {
                border-radius: 50px 5px 50px 5px;
              }

              img {
                width: 100%;
                height: 100%;
                object-fit: cover;
              }
            }

            .btn {
              position: absolute;
              bottom: -20px;
              right: 1px;
              margin: 0;

              span {
                position: relative;
                font-family: var(--font-en);
                font-weight: 500;
                /* 20px-25px:375px-1920px */
                font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
                color: #9D7947;
                background-color: #fff;
                border: 1px #9D7947 solid;
                display: flex;
                justify-content: center;
                align-items: center;
                /* 80px-108px:375px-1920px */
                width: clamp(5rem, 4.575rem + 1.81vw, 6.75rem);
                height: clamp(5rem, 4.575rem + 1.81vw, 6.75rem);
                border-radius: 100px;

                &::before {
                  content: "";
                  position: absolute;
                  /* 80px-108px:375px-1920px */
                  width: clamp(5rem, 4.575rem + 1.81vw, 6.75rem);
                  height: clamp(5rem, 4.575rem + 1.81vw, 6.75rem);
                  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='108.082' height='108.082' viewBox='0 0 108.082 108.082'%3E%3Cg transform='translate(0.541 0.541)'%3E%3Cpath d='M16.211,91.871l37.83,15.67,37.83-15.67,15.67-37.83-15.67-37.83L54.041.541l-37.83,15.67L.541,54.041Z' transform='translate(-0.541 -0.541)' fill='none' stroke='%239d7947' stroke-miterlimit='10' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
                  background-size: contain;
                  opacity: 0;
                  transform: scale(0.9);
                  transition: ease-in .2s;
                }

                &::after {
                  content: "";
                  position: absolute;
                  bottom: 15px;
                  left: 50%;
                  transform: translateX(-50%);
                  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg transform='translate(0 0.358)'%3E%3Cg %3E%3Cpath d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline x1='16' transform='translate(0 6.741)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
                  background-size: contain;
                  /* 12px-16px:375px-1920px */
                  width: clamp(0.75rem, 0.689rem + 0.26vw, 1rem);
                  /* 10px-13px:375px-1920px */
                  height: clamp(0.625rem, 0.579rem + 0.19vw, 0.813rem);
                  display: block;
                }
              }
            }
          }

          .menu_name {
            font-family: var(--font-min);
            font-weight: 500;
            /* 28px-30px:375px-1920px */
            font-size: clamp(1.75rem, 1.72rem + 0.13vw, 1.875rem);
            margin: 25px 0 0;
          }

          &:hover {
            opacity: 0.7;

            .img {
              .btn {
                span {
                  &::before {
                    opacity: 1;
                    transform: scale(1);
                  }
                }
              }
            }
          }
        }
      }
    }

    .swiper_navigation_area {
      @media (min-width: 1200px) {
        display: none;
      }

      @media (max-width: 767px) {
        margin-left: 0;
        width: calc(100% - 12.5vw);
      }
    }
  }
}

.swiper_navigation_area {
  position: relative;
  height: 40px;
  width: 300px;
  margin-left: auto;
  margin-top: 30px;
  width: 100%;

  .swiper-button-prev,
  .swiper-button-next {
    position: absolute;
    background-color: #C9B292;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    top: 50%;

    &::after {
      color: #fff;
      /* 14px-18px:375px-1920px */
      font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);
      font-weight: 600;
    }
  }

  .swiper-button-prev {
    left: inherit;
    right: 50px;
  }

  .swiper-button-next {
    right: 0;
    left: inherit;
  }

  .swiper-pagination {
    display: flex;

    .swiper-pagination-bullet {
      opacity: 1;
      background: #CBC4C5;
      width: 12px;
      height: 12px;
      margin: 0 7px;
    }

    .swiper-pagination-bullet-active {
      background: #E59DA7;
    }
  }
}

.by_trouble,
.by_treatment {
  .inner {
    max-width: 1200px;
    width: 90%;
    margin: auto;

    @media (max-width: 767px) {
      width: 84%;
    }
  }

  .menu_list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 40px 60px;

    @media (max-width: 767px) {
      flex-direction: column;
      gap: 20px;
    }

    .menu_item {
      width: calc((100% - 60px) / 2);
      display: flex;
      align-items: stretch;

      @media (max-width: 767px) {
        width: 100%;
      }

      a {
        position: relative;
        width: 100%;
        display: flex;
        align-items: center;
        background: url("../img/menu_btn_bg.webp") center center / cover no-repeat;
        border-bottom: 1px #9D7947 solid;
        padding: 15px 50px 15px 20px;

        @media (max-width: 767px) {
          padding: 8px 35px 8px 9px;
        }

        &::after {
          content: "";
          position: absolute;
          top: 50%;
          right: 20px;
          transform: translateY(-50%);
          display: inline-block;
          background: url("../img/arrow_circle_white.svg") center center / contain no-repeat;
          /* 22px-30px:375px-1920px; */
          width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          transition: ease-in .2s;
        }

        @media (max-width: 767px) {
          &::after {
            right: 5px;
          }
        }

        .icon {
          /* 45px-75px:375px-1920px; */
          width: clamp(2.813rem, 2.357rem + 1.94vw, 4.688rem);
          /* 7px-25px:375px-1920px; */
          margin-right: clamp(0.438rem, 0.164rem + 1.17vw, 1.563rem);
        }

        .name {
          font-family: var(--font-min);
          font-weight: 500;
          /* 22px-30px:375px-1920px; */
          font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          margin: 0;

          small {
            font-family: var(--font-min);
            /* 15px-25px:375px-1920px; */
            font-size: clamp(0.938rem, 0.786rem + 0.65vw, 1.563rem);
            display: inline-block;
          }
        }

        &:hover {
          opacity: 0.8;

          &::after {
            right: 15px;
            background-image: url("../img/arrow_circle_brown.svg");

            @media (max-width: 767px) {
              right: 5px;
            }
          }
        }
      }
    }
  }
}

.by_treatment {
  .inner {
    position: relative;
    max-height: 300px;
    /* 閉じたときに少し見える高さ */
    overflow: hidden;
    transition: max-height 0.5s ease;

    &.show {
      max-height: 2000px;
      /* 開いたときの十分な高さ */
      transition: max-height 0.5s ease;
    }

    .menu_list {
      gap: 30px 60px;

      @media (max-width: 767px) {
        gap: 20px;
      }

      .menu_item {
        a {
          .name {
            font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
          }
        }
      }
    }

    .btn_more {
      position: absolute;
      bottom: 0;
      z-index: 2;
      background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
      width: 100%;
      height: 180px;
      display: flex;
      align-items: flex-end;

      a {
        &::after {
          transform: translateY(-50%) rotate(90deg);
        }

        &:hover {
          &::after {
            right: 30px;
            top: 55%;
          }
        }
      }
    }

    .btn_close {
      margin-top: 30px;

      a {
        font-family: var(--font-min);
        font-weight: 500;
        font-size: 20px;
        display: flex;
        justify-content: flex-end;
        align-items: center;

        &::after {
          content: "";
          display: inline-block;
          background: url("../img/arrow_circle_brown.svg") center center / contain no-repeat;
          width: 20px;
          height: 20px;
          transform: rotate(-90deg);
          transition: ease-in .2s;
        }

        &:hover {
          opacity: 0.7;

          &::after {
            transform: rotate(-90deg) translateX(3px);
          }
        }
      }
    }

    &.show {
      .btn_more {
        display: none;
      }
    }
  }
}

.top_features {
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .feature_list {
    list-style: none;
    margin: 0;
    padding: 0;

    .feature_item {
      display: grid;
      grid-template-columns: 1fr 50%;
      grid-template-rows: auto auto;
      column-gap: 45px;

      @media (max-width: 767px) {
        display: flex;
        flex-direction: column;
      }

      .img {
        grid-column: 1;
        grid-row: 1 / 3;
        display: flex;
        position: relative;
        padding-bottom: 50px;
        border-left: 1px #9D7947 solid;

        @media (max-width: 767px) {
          padding-bottom: 25px;
          width: 80%;
          /* 30px-40px:375px-1920px */
          margin: 0 auto clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
        }

        &::after {
          content: "";
          position: absolute;
          bottom: 0;
          left: 0;
          background: url("../img/top_menu_bg.webp") bottom center / cover no-repeat;
          width: 85%;
          height: 60%;
        }

        img {
          width: calc(100% - 3.13vw);
          position: relative;
          z-index: 2;

          @media (max-width: 767px) {
            width: calc(100% - 8vw);
          }
        }

        .num {
          position: relative;
          z-index: 2;
          margin: 0;
          width: 3.13vw;

          @media (max-width: 767px) {
            width: 8vw;
          }

          span {
            display: block;
            font-family: var(--font-en);
            /* 19px-40px:375px-1920px; */
            font-size: clamp(1.188rem, 0.869rem + 1.36vw, 2.5rem);
            color: #9D7947;
            line-height: 1;
            writing-mode: tb;
            /* transform: rotate(90deg); */
            white-space: nowrap;
          }
        }
      }

      .ttl {
        grid-column: 2;
        grid-row: 1;
        font-family: var(--font-min);
        font-weight: 500;
        /* 22px-30px:375px-1920px; */
        font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        color: #9D7947;
        /* 30px-40px:375px-1920px */
        margin: auto 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
      }

      .txt {
        grid-column: 2;
        grid-row: 2;
        /* 18px-20px:375px-1920px; */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        line-height: 2;
        margin: 0 0 auto;
      }

      &:nth-child(even) {
        grid-template-columns: 50% 1fr;

        .img {
          grid-column: 2;
          flex-direction: row-reverse;
          border-left: none;
          border-right: 1px #9D7947 solid;

          &::after {
            left: inherit;
            right: 0;
          }

          .num {
            display: flex;
            justify-content: flex-end;
          }
        }

        .ttl {
          grid-column: 1;
        }

        .txt {
          grid-column: 1;
        }
      }

      &+.feature_item {
        /* 60px-80px:375px-1920px */
        margin-top: clamp(3.75rem, 3.447rem + 1.29vw, 5rem);
      }
    }
  }
}

.top_greeting {
  background: url("../img/greeting_bg.webp") bottom center / cover no-repeat;
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .message_box {
    background-color: #fff;
    border: 1px #9D7947 solid;
    max-width: 1200px;
    width: 90%;
    margin: 180px auto 0;
    /* 40px-60px:375px-1920px */
    padding-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

    @media (max-width: 767px) {
      margin-top: 90px;
    }

    .message_box_inner {
      max-width: 980px;
      width: 90%;
      margin: auto;
    }

    .dr_img {
      max-width: 380px;
      width: 80%;
      border-radius: 200px 200px 0 0;
      overflow: hidden;
      /* 30px-60px:375px-1920px */
      margin: -120px auto clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);

      @media (max-width: 767px) {
        margin-top: -60px;
      }
    }

    .ttl {
      font-family: var(--font-min);
      font-weight: 500;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      text-align: center;
      color: #9D7947;
      /* 30px-60px:375px-1920px */
      margin: 0 0 clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
    }

    .txt {
      /* 18px-20px:375px-1920px; */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 2;
      margin: 0;
    }

    .name_area {
      /* 30px-40px:375px-1920px */
      margin-top: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);

      .name {
        font-family: var(--font-min);
        font-weight: 500;
        /* 22px-30px:375px-1920px; */
        font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        text-align: right;
        margin: 0;

        small {
          font-family: var(--font-min);
          font-weight: 500;
          /* 18px-20px:375px-1920px; */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          margin-right: 10px;
        }
      }

      .en {
        font-family: var(--font-en);
        /* 14px-20px:375px-1920px; */
        font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
        color: #9D7947;
        text-align: right;
        margin: 10px 0 0;
      }
    }
  }

  .btn_more {
    /* 40px-60px:375px-1920px */
    margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
  }
}

.career_box {
  max-width: 1200px;
  width: 90%;
  margin: 60px auto 0;
  display: flex;
  gap: 40px;

  @media (max-width: 767px) {
    flex-direction: column;
  }

  .inner {
    background-color: #fff;
    border-top: 1px #9D7947 solid;
    width: calc((100% - 40px) / 2);
    padding: 30px 40px 40px;

    @media (max-width: 767px) {
      width: 100%;
      padding: 30px 20px 30px 30px;
    }

    .ttl {
      font-family: var(--font-min);
      font-weight: 500;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      color: #9D7947;
      text-align: center;
      /* 30px-40px:375px-1920px */
      margin: 0 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
    }

    .scroll {
      height: 200px;
      overflow-y: scroll;
      padding-right: 30px;

      /* scrollbar-color: #C9B292 transparent;
        scrollbar-width: thin; */
      &::-webkit-scrollbar {
        width: 4px;
        background-color: transparent;
      }

      &::-webkit-scrollbar-thumb {
        background: #C9B292;
        width: 4px;
        border-radius: 10px;
      }

      &::-webkit-scrollbar-track {
        background-color: #EBEBEB;
      }
    }

    .career_dl {
      display: flex;
      flex-wrap: wrap;
      margin: 0;

      dt {
        width: 70px;
        color: #9D7947;
        /* 18px-20px:375px-1920px; */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        /* 10px-20px:375px-1920px; */
        margin: 0 0 clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);
      }

      dd {
        width: calc(100% - 70px);
        /* 18px-20px:375px-1920px; */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        /* 10px-20px:375px-1920px; */
        margin: 0 0 clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);
      }
    }
  }
}

/*--- INSTAGRAM ---*/
.sec_instagram {
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .instagram_area {
    @media (max-width: 767px) {
      overflow-x: scroll;
    }

    iframe {
      @media (max-width: 767px) {
        width: 750px !important;
      }
    }
  }

  .btn {
    text-align: right;
    /* 20px-40px:375px-1920px */
    margin: clamp(1.25rem, 0.947rem + 1.29vw, 2.5rem) 0 0;

    a {
      font-family: var(--font-min);
      font-weight: 500;
      font-size: 20px;
      color: #9D7947;
      position: relative;
      padding-right: 30px;

      &::after {
        content: "";
        background: url("../img/arrow_circle_brown.svg") center center / contain no-repeat;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        display: inline-block;
        width: 20px;
        height: 20px;
        transition: ease-in .2s;
      }

      &:hover {
        &::after {
          right: -5px;
        }
      }
    }
  }
}

/*--- お知らせ ---*/
.top_news {
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .btn_more {
    /* 40px-60px:375px-1920px */
    margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
  }
}

.news_list {
  list-style: none;
  margin: 0;
  padding: 0;

  .news_item {
    a {
      position: relative;
      display: flex;
      align-items: center;
      gap: 40px;
      border-bottom: 1px #9D7947 solid;
      padding: 40px 40px 40px 0;

      @media (max-width: 767px) {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 20px 40px 20px 20px;
      }

      &::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
        display: inline-block;
        /* 22px-30px:375px-1920px; */
        width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        transition: ease-in .2s;
      }

      @media (max-width: 767px) {
        &::after {
          top: inherit;
          bottom: 20px;
          transform: inherit;
        }
      }

      time {
        color: #9D7947;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        flex-shrink: 0;
      }

      .news_ttl {
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        margin: 0;
        display: flex;
        /* 15px-40px:375px-1920px */
        gap: clamp(0.938rem, 0.558rem + 1.62vw, 2.5rem);
      }

      &:hover {
        opacity: 0.7;

        &::after {
          background-image: url("../img/arrow_circle_brown.svg");
          right: -5px;
        }
      }
    }
  }
}

.circle_list {
  list-style: none;
  margin: 0;
  padding: 0;

  &>li {
    position: relative;
    padding-left: 15px;
    /* 18px-20px:375px-1920px; */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

    &::before {
      content: "";
      position: absolute;
      top: 8px;
      left: 0;
      width: 8px;
      height: 8px;
      background-color: #C9B292;
      border-radius: 50px;
    }

    &+li {
      /* 10px-20px:375px-1920px; */
      margin-top: clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);
    }
  }
}

.common_contact {
  background: url("../img/ham_con_bg.webp") top center / cover no-repeat;
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  /* padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem); */
  padding-bottom: 230px;
  border-top: 1px #9D7947 solid;

  @media (max-width: 767px) {
    padding-bottom: 100px;
  }

  .contact_inner {
    max-width: 1190px;
    width: 92%;
    margin: auto;
    /* 40px-80px:375px-1920px; */
    padding: clamp(2.5rem, 1.893rem + 2.59vw, 5rem) 0;
    border: 1px #9D7947 solid;
    outline: 1px #9D7947 solid;
    outline-offset: -7px;
    background-color: #fff;
    text-align: center;

    @media (max-width: 767px) {
      outline-offset: -5px;
    }
  }

  .sec_ttl {
    font-family: var(--font-min);
    font-weight: 600;
    /* 22px-40px:375px-1920px; */
    font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
    /* 30px-40px:375px-1920px */
    margin: 0 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
  }

  .txt {
    font-family: var(--font-min);
    font-weight: 500;
    /* 20px-25px:375px-1920px; */
    font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
    margin: 0;
  }

  .tel {
    width: fit-content;
    margin: 10px auto 0;

    a {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      font-family: var(--font-en);
      /* 30px-45px:375px-1920px; */
      font-size: clamp(1.875rem, 1.647rem + 0.97vw, 2.813rem);

      &::before {
        content: "";
        background: url("../img/icon_tel_brown.svg") center center / contain no-repeat;
        /* 22px-31px:375px-1920px; */
        width: clamp(1.375rem, 1.238rem + 0.58vw, 1.938rem);
        height: clamp(1.375rem, 1.238rem + 0.58vw, 1.938rem);
        display: inline-block;
      }
    }
  }

  .tel_time {
    /* 14px-20px:375px-1920px; */
    font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
    margin: 0;

    @media (max-width: 767px) {
      margin-top: 10px;
    }
  }
}

.common_cta_btn {
  display: flex;
  gap: 20px;
  max-width: 820px;
  width: 88%;
  /* 30px-40px:375px-1920px */
  margin: 0 auto clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);

  @media (max-width: 767px) {
    flex-direction: column;
    gap: 10px;
  }

  .btn_cta {
    width: calc((100% - 20px) / 2);

    @media (max-width: 767px) {
      width: 100%;
    }

    a {
      position: relative;
      font-family: var(--font-min);
      color: #fff;
      /* 25px-32px:375px-1920px; */
      font-size: clamp(1.563rem, 1.456rem + 0.45vw, 2rem);
      background: linear-gradient(0deg, rgba(242, 171, 181, 1) 0%, rgba(219, 107, 124, 1) 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      height: 76px;
      border-radius: 100px;

      @media (max-width: 767px) {
        height: 67px;
      }

      &::before {
        content: "";
        display: inline-block;
        /* 25px-30px:375px-1920px; */
        width: clamp(1.563rem, 1.487rem + 0.32vw, 1.875rem);
        height: clamp(1.563rem, 1.487rem + 0.32vw, 1.875rem);
        background: url("../img/icon_web_white.svg") center center / contain no-repeat;
        margin-right: 10px;
      }

      &::after {
        content: "";
        position: absolute;
        right: 30px;
        top: 50%;
        transform: translateY(-50%);
        display: inline-block;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg  transform='translate(0 0.358)'%3E%3Cg %3E%3Cpath  d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline  x1='16' transform='translate(0 6.741)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
        background-size: contain;
        width: 16px;
        height: 14px;
        transition: ease-in .2s;
      }

      @media (max-width: 767px) {
        &::after {
          right: 20px;
          width: 12px;
          height: 10px;
        }
      }

      span {
        font-family: var(--font-en);
        /* 27px-35px:375px-1920px; */
        font-size: clamp(1.688rem, 1.566rem + 0.52vw, 2.188rem);
        margin-top: 6px;
      }

      &:hover {
        opacity: 0.8;

        &::after {
          right: 25px;
        }

        @media (max-width: 767px) {
          &::after {
            right: 20px;
          }
        }
      }
    }

    &.line {
      a {
        background: linear-gradient(0deg, rgba(129, 209, 149, 1) 0%, rgba(85, 175, 107, 1) 100%);

        &::before {
          background-image: url("../img/icon_line_white.svg");
        }
      }
    }
  }
}

.fixed_cta {
  position: fixed;
  right: 1.56vw;
  bottom: 20px;
  z-index: 99;

  @media (max-width: 767px) {
    width: 100%;
    right: 0;
    bottom: 0;
  }

  .common_cta_btn {
    max-width: inherit;
    width: auto;
    flex-direction: column;
    margin: auto;
    gap: 10px;
    transition: opacity 0.5s ease;

    @media (max-width: 767px) {
      flex-direction: row;
      gap: 0;
    }

    .btn_cta {
      width: auto;

      @media (max-width: 767px) {
        width: 100%;
      }

      a {
        width: 120px;
        height: 120px;
        border-radius: 200px;
        flex-direction: column;
        line-height: 1;
        font-size: 18px;
        font-weight: 600;

        @media (max-width: 767px) {
          width: 100%;
          height: 67px;
          border-radius: 0;
          flex-direction: row;
          font-size: 22px;
        }

        span {
          line-height: 1;
          font-family: var(--font-marcellus);
          font-size: 28px;
          font-weight: normal;
          margin-top: 3px;

          @media (max-width: 767px) {
            font-size: 25px;
            margin-top: 0;
          }
        }

        &::before {
          margin-top: -5px;
          margin-right: 0;
          margin-bottom: 5px;
          width: 24px;
        }

        @media (max-width: 767px) {
          &::before {
            width: 26px;
            margin: 0 6px 0 0;
          }
        }

        &::after {
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='140' height='140' viewBox='0 0 140 140'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='長方形_92' data-name='長方形 92' width='140' height='140' transform='translate(0 0)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='グループ_15' data-name='グループ 15' clip-path='url(%23clip-path)'%3E%3Cpath id='パス_14' data-name='パス 14' d='M20.822,118.749l48.964,20.281,48.963-20.281,20.281-48.964L118.749,20.822,69.786.541,20.822,20.822.541,69.786Z' transform='translate(0.214 0.214)' fill='none' stroke='%23fff' stroke-miterlimit='10' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
          background-size: contain;
          top: 0;
          right: 0;
          transform: scale(0.9);
          width: 120px;
          height: 120px;
          opacity: 0;
        }

        @media (max-width: 767px) {
          &::after {
            display: none;
          }
        }

        &:hover {
          opacity: 1;

          &::after {
            transform: scale(1);
            opacity: 1;
          }
        }
      }
    }
  }

  .pagetop {
    margin: 0;

    @media (max-width: 767px) {
      margin-right: 10px;
    }

    a {
      width: 60px;
      height: 60px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      font-family: var(--font-en);
      font-size: 16px;
      background-color: #fff;
      border-radius: 100px;
      box-shadow: 0px 0px 6px 1px #EDE8E1;
      line-height: 1;

      &::before {
        content: "";
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.363' height='19.481' viewBox='0 0 22.363 19.481'%3E%3Cg id='グループ_357' data-name='グループ 357' transform='translate(0.369 19.481) rotate(-90)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M0,0,11.538,10.544,0,21.634' transform='translate(7.212)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='18.749' transform='translate(0 10.601)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        width: 18px;
        height: 21px;
      }
    }
  }

  &.is-visible {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
  }

  &.is-hidden {
    opacity: 0;
    visibility: hidden;
  }
}

.common_cta_btn.hidden {
  opacity: 0;
  pointer-events: none;
}

/*--------------------
下層ページタイトル
--------------------*/
.page_title {
  background: url("../img/about/page_title.webp") center right / contain no-repeat;
  /* 150px-300px:375px-1920px; */
  height: clamp(9.375rem, 7.1rem + 9.71vw, 18.75rem);
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-top: 96px;

  @media (max-width: 767px) {
    background: url("../img/about/page_title_sp.webp") center right / contain no-repeat;
    margin-top: 60px;
  }

  .ja {
    font-family: var(--font-min);
    /* 22px-50px:375px-1920px; */
    font-size: clamp(1.375rem, 0.95rem + 1.81vw, 3.125rem);
    color: #9D7947;
    margin: 0 auto;
    max-width: 1200px;
    width: 90%;
  }

  .en {
    font-family: var(--font-en);
    /* 12px-20px:375px-1920px; */
    font-size: clamp(0.75rem, 0.629rem + 0.52vw, 1.25rem);
    color: #9D7947;
    margin: 0 auto;
    max-width: 1200px;
    width: 90%;

    &::before {
      content: "";
      /* 50px-90px:375px-1920px; */
      width: clamp(3.125rem, 2.518rem + 2.59vw, 5.625rem);
      height: 1px;
      display: block;
      border-top: 1px #9D7947 solid;
      margin-top: 30px;
      padding-top: 15px;
    }

    @media (max-width: 767px) {
      &::before {
        margin-top: 10px;
        padding-top: 10px;
      }
    }
  }
}

/*--------------------
パンくず
--------------------*/
.breadcrumb {
  max-width: 1200px;
  width: 90%;
  /* 40px-100px:375px-1920px */
  margin: 0 auto clamp(2.5rem, 1.59rem + 3.88vw, 6.25rem);
  padding: 20px 0 0;

  @media (max-width: 1500px) {
    padding: 20px 0 0;
  }

  .breadcrumb_list {
    /* 14px-20px:375px-1920px */
    font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
    display: flex;
    align-items: center;
    margin: auto;
    padding: 0;
    flex-wrap: wrap;
    list-style: none;

    * {
      font-family: var(--font-min);
      font-weight: 500;
    }

    .breadcrumb_item {
      display: flex;
      align-items: center;

      &>span {
        color: #9D7947;
      }

      &+.breadcrumb_item {
        &::before {
          content: "";
          display: block;
          width: 10px;
          height: 1px;
          background-color: #574E43;
          margin: 0 8px;
        }
      }
    }
  }
}

/*--------------------
当院について
--------------------*/
.page_about {
  .about_first {
    .inner {
      max-width: 1200px;
      width: 90%;
      margin: auto;
      /* 50px-80px:375px-1920px */
      padding: clamp(3.125rem, 2.67rem + 1.94vw, 5rem) 5%;
      background-color: #fff;
      border: 1px #9D7947 solid;

      .copy {
        font-family: var(--font-min);
        font-weight: 500;
        /* 22px-40px:375px-1920px */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        /* 40px-60px:375px-1920px */
        margin: 0 0 clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
        text-align: center;

        &::after {
          content: "";
          display: block;
          /* 30px-45px:375px-1920px */
          width: clamp(1.875rem, 1.647rem + 0.97vw, 2.813rem);
          /* 2px-3px:375px-1920px */
          height: clamp(0.125rem, 0.11rem + 0.06vw, 0.188rem);
          background-color: #9D7947;
          /* 15px-30px:375px-1920px */
          margin: clamp(0.938rem, 0.71rem + 0.97vw, 1.875rem) auto 0;
        }
      }

      .txt {
        font-family: var(--font-min);
        font-weight: 500;
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        line-height: 2;
        margin: 0;
        text-align: center;

        @media (max-width: 767px) {
          text-align: left;
        }
      }
    }
  }

  .about_clinic {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .clinic_swiper_area {
      .clinic_swiper {
        .swiper-wrapper {
          .swiper-slide {
            transform: scale(0.8);
            opacity: 0.4;
            transition: transform 0.3s ease, opacity 0.3s ease, transform-origin 0.3s ease;

            .room_name {
              font-family: var(--font-min);
              /* 20px-30px:375px-1920px */
              font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
              /* 15px-30px:375px-1920px */
              margin: clamp(0.938rem, 0.71rem + 0.97vw, 1.875rem) 0 0;
              display: flex;
              justify-content: center;
              align-items: center;
              /* 13px-20px:375px-1920px */
              gap: clamp(0.813rem, 0.706rem + 0.45vw, 1.25rem);

              &::before,
              &::after {
                content: "";
                /* 20px-30px:375px-1920px */
                font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
                display: inline-block;
                /* 10px-20px:375px-1920px */
                width: clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);
                height: 1px;
                border-bottom: 1px #9D7947 solid;
              }
            }

            &.swiper-slide-active {
              transform: scale(1);
              opacity: 1;
            }

            &.swiper-slide-prev {
              transform-origin: center right;
            }

            &.swiper-slide-next {
              transform-origin: center left;
            }
          }
        }

        .swiper-button-prev,
        .swiper-button-next {
          background-color: #9D7947;
          /* 30px-50px:375px-1920px */
          width: clamp(1.875rem, 1.572rem + 1.29vw, 3.125rem);
          height: clamp(1.875rem, 1.572rem + 1.29vw, 3.125rem);
          border-radius: 100px;
          top: 50%;

          &::after {
            color: #fff;
            /* 14px-18px:375px-1920px */
            font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);
            font-weight: 600;
          }
        }

        .swiper-button-prev {
          left: calc((100% / 3) - 7vw);

          @media (max-width: 767px) {
            left: 7%;
          }
        }

        .swiper-button-next {
          right: calc((100% / 3) - 7vw);

          @media (max-width: 767px) {
            right: 7%;
          }
        }
      }
    }
  }

  .sec_instagram {
    padding-top: 0;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  }
}

.page_first-guide {
  main {
    background: none;
  }

  .first_intro {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .copy {
      font-family: var(--font-min);
      font-weight: 500;
      /* 18px-25px:375px-1920px */
      font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
      line-height: 2;
      /* 40px-60px:375px-1920px */
      margin: 0 0 clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
      text-align: center;

      @media (max-width: 767px) {
        text-align: left;
      }
    }

    .first_features_list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 3.13vw;

      @media (max-width: 767px) {
        flex-direction: column;
        gap: 20px;
      }

      .features_item {
        width: calc((100% - 6.26vw) / 3);
        background: url("../img/greeting_bg.webp") center center / cover no-repeat;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        border-radius: 20px;
        border: 1px #9D7947 solid;
        padding: 40px 0 25px;

        @media (max-width: 767px) {
          width: 100%;
          flex-direction: row;
          gap: 10px;
          border-radius: 10px;
          padding: 10px 20px 10px 10px;
        }

        .img {
          @media (max-width: 767px) {
            width: 90px;
          }

          &.after_care {
            margin-left: 25px;

            @media (max-width: 767px) {
              margin-left: 0;
            }
          }
        }

        .txt {
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          text-align: center;
          margin: 0;

          @media (max-width: 767px) {
            text-align: left;
          }
        }
      }
    }
  }

  .first_attention {
    background-color: #FAFAFA;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .attention_inner {
      .attention_ttl {
        font-family: var(--font-min);
        font-weight: 500;
        /* 22px-40px:375px-1920px */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        border-left: 10px #9D7947 solid;
        /* 20px-30px:375px-1920px */
        margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
        padding-left: 20px;

        @media (max-width: 767px) {
          border-left: 6px #9D7947 solid;
          padding-left: 10px;
        }
      }

      .read {
        font-family: var(--font-min);
        font-weight: 500;
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        line-height: 2;
        /* 20px-30px:375px-1920px */
        margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      }

      .box {
        border: 1px #9D7947 solid;
        background-color: #fff;
        /* 30px-40px:375px-1920px */
        /* 20px-60px:375px-1920px */
        padding: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem) clamp(1.25rem, 0.643rem + 2.59vw, 3.75rem);

        .txt {
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          line-height: 2;
          margin: 0;
        }

        .download {
          font-family: var(--font-min);
          font-weight: 500;
          /* 20px-258px:375px-1920px */
          font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
          color: #9D7947;
          border-bottom: 1px #9D7947 solid;
          margin-top: 30px;
          padding-bottom: 5px;
          display: inline-flex;
          align-items: flex-end;
          gap: 10px;

          &::after {
            content: "";
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.041' height='21.334' viewBox='0 0 14.041 21.334'%3E%3Cg id='グループ_1019' data-name='グループ 1019' transform='translate(-1150.484 -4261.666)'%3E%3Cg id='グループ_265' data-name='グループ 265' transform='translate(1164.167 4261.666) rotate(90)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3Cline id='線_325' data-name='線 325' x2='14' transform='translate(1150.5 4282.5)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
            background-repeat: no-repeat;
            background-size: contain;
            width: 14px;
            height: 20px;
            display: inline-block;
            margin-bottom: 5px;
            transition: ease-in .2s;
          }

          &:hover {
            opacity: 0.7;

            &::after {
              margin-bottom: 0;
            }
          }
        }
      }

      &.attention_inner {
        /* 60px-80px:375px-1920px */
        margin-top: clamp(3.75rem, 3.447rem + 1.29vw, 5rem);
      }
    }
  }

  .first_payment {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .payment_inner {
      max-width: 800px;
      width: 90%;
      margin: auto;

      .read {
        font-family: var(--font-min);
        font-weight: 500;
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        line-height: 2;
        /* 30px-60px:375px-1920px */
        margin: 0 0 clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
        text-align: center;

        @media (max-width: 767px) {
          text-align: left;
        }
      }

      .payment_list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 40px;

        @media (max-width: 767px) {
          gap: 30px;
          padding: 0 25px;
        }

        .payment_item {
          width: calc((100% - 40px) / 2);
          border: 1px #9D7947 solid;
          padding: 20px 40px;
          text-align: center;

          @media (max-width: 767px) {
            width: 100%;
            padding: 15px 20px;
          }

          .ttl {
            border-bottom: 1px #9D7947 solid;
            padding-bottom: 20px;
            margin: 0 0 15px;
            font-family: var(--font-min);
            font-weight: 600;
            /* 20px-25px:375px-1920px */
            font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
            color: #9D7947;

            @media (max-width: 767px) {
              padding-bottom: 15px;
            }
          }

          .txt {
            width: calc(100% + 80px);
            margin: 10px 0 -20px -40px;
            background-color: #F7F4F0;
            padding: 10px 20px;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

            @media (max-width: 767px) {
              width: calc(100% + 40px);
              margin: 0 0 -15px -20px;
            }
          }

          .img {
            @media (max-width: 767px) {
              width: 120px;
            }
          }

          &:last-child {
            width: 100%;
            font-family: var(--font-min);
            font-weight: 500;
            /* 20px-25px:375px-1920px */
            font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
            color: #9D7947;
          }
        }
      }

      .notes {
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        margin: 20px 0 0;

        @media (max-width: 767px) {
          padding: 0 25px;
        }
      }
    }
  }

  .first_caution {
    background-color: #FAFAFA;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .caution_ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      color: #9D7947;
      background-color: #fff;
      border: 1px #9D7947 solid;
      outline: 1px #9D7947 solid;
      outline-offset: -6px;
      margin: 0 0 30px;
      padding: 15px;
      text-align: center;

      @media (max-width: 767px) {
        outline-offset: -4px;
      }
    }

    .list_circle+.notes {
      /* 30px-40px:375px-1920px */
      margin-top: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
    }

    .txt+.caution_ttl {
      /* 60px-120px:375px-1920px; */
      margin-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    }

    .txt {
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 2;
    }
  }
}

/*--------------------
カスタム投稿 シングルページ
--------------------*/
.single {
  .page_title {
    background: url("../img/news/page_title.webp") center center / cover no-repeat;
    /* 110px-200px:375px-1920px */
    height: clamp(6.875rem, 5.51rem + 5.83vw, 12.5rem);
    border-bottom: 1px #9D7947 solid;

    @media (max-width: 767px) {
      background: url("../img/news/page_title_sp.webp") center right / cover no-repeat;
    }

    .ja {
      text-align: center;
      font-weight: 500;
    }
  }
}

/*--- お知らせ、おすすめ情報 詳細 ---*/
.single-news,
.single-recommend {
  main {
    background: none;
    /* 60px-120px:375px-1920px; */
    margin-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  }

  .post_main {
    .post_ttl_area {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      gap: 10px 15px;
      /* 40px-60px:375px-1920px */
      margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

      @media (max-width: 767px) {
        gap: 20px;
      }

      time {
        grid-column: 1;
        grid-row: 1;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        color: #9D7947;
      }

      .category {
        grid-column: 2;
        grid-row: 1;
        background-color: #9D7947;
        color: #fff;
        width: fit-content;
        height: fit-content;
        margin: 0;
        padding: 0 10px;
        font-size: 16px;
      }

      .post_ttl {
        grid-column: 1 / 3;
        grid-row: 2;
        font-family: var(--font-min);
        font-weight: 600;
        /* 22px-40px:375px-1920px; */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        margin: 0;
      }
    }

    .eye_catch {
      max-width: 600px;
      width: 80%;
      /* 60px-120px:375px-1920px; */
      margin: 0 auto clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    }
  }
}

/*--- お知らせ、おすすめ情報 詳細 ---*/
.single-recommend {
  .breadcrumb {
    padding-top: 120px;

    @media (max-width: 767px) {
      padding-top: 70px;
    }
  }

  .post_main {
    .eye_catch {
      width: 100%;
    }
  }
}

/*--- サイドバー ---*/
.aside_news {
  background-color: #FAFAFA;
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .aside_inner {
    max-width: 980px;
    width: 90%;
    margin: auto;
    display: grid;
    grid-template-columns: calc((100% - 3.13vw) / 2);
    gap: 80px 3.13vw;

    @media (max-width: 767px) {
      gap: 60px;
      display: flex;
      flex-direction: column;
    }

    .aside_ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      color: #9D7947;
      background-color: #fff;
      border: 1px #9D7947 solid;
      outline: 1px #9D7947 solid;
      outline-offset: -6px;
      margin: 0 0 30px;
      padding: 15px;
      text-align: center;

      @media (max-width: 767px) {
        outline-offset: -4px;
      }
    }

    .new_post {
      grid-column: 1 / 3;
      grid-row: 1;

      .post_list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 30px 40px;

        .post_item {
          width: calc((100% - 40px) / 2);
          display: flex;
          align-items: stretch;

          @media (max-width: 767px) {
            width: 100%;
          }

          a {
            width: 100%;
            display: grid;
            grid-template-columns: auto auto 1fr;
            grid-template-rows: auto 1fr;
            align-items: center;
            gap: 10px 0;
            padding: 0 0 30px;
            border-bottom: 1px #9D7947 solid;

            @media (max-width: 767px) {
              padding: 0 0 20px;
            }

            .img {
              grid-column: 1;
              grid-row: 1 / 3;
              width: 80px;
              margin-right: 20px;
            }

            time {
              grid-column: 2;
              grid-row: 1;
              height: fit-content;
              /* 18px-20px:375px-1920px */
              font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
              color: #9D7947;
            }

            .category {
              grid-column: 3;
              grid-row: 1;
              margin: 0;
              width: fit-content;
              height: fit-content;
              background-color: #9D7947;
              /* 14px-16px:375px-1920px */
              font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
              color: #fff;
              margin-left: 10px;
              padding: 0 10px;
            }

            .post_ttl {
              grid-column: 2 / 4;
              grid-row: 2;
              margin: 0;
              align-self: flex-start;
            }

            &:hover {
              opacity: 0.7;
            }
          }
        }
      }
    }

    .category_area {
      grid-column: 1;
      grid-row: 2;

      .category_list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 5px;

        &>li {
          a {
            display: block;
            background-color: #9D7947;
            color: #fff;
            padding: 5px 15px;

            &:hover {
              opacity: 0.7;
            }
          }
        }
      }
    }

    .month_archive {
      grid-column: 2;
      grid-row: 2;

      .archive_list {
        list-style: none;
        margin: 0;
        padding: 0;

        .year {
          border-bottom: 1px #9D7947 solid;

          .year_toggle {
            /* 22px-25px:375px-1920px */
            font-size: clamp(1.375rem, 1.329rem + 0.19vw, 1.563rem);
            display: flex;
            color: #9D7947;
            margin: 0 0 20px;

            &::after {
              content: "";
              /* 30px-40px:375px-1920px */
              width: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
              height: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
              display: block;
              background: url("../img/arrow_accordion_toggle.svg") center center / contain no-repeat;
              margin-left: auto;
              transition: ease-in .2s;
            }

            &.show {
              &::after {
                transform: rotate(180deg);
              }
            }
          }

          .month_list {
            display: none;
            padding-bottom: 40px;

            &>ul {
              list-style: none;
              margin: 0;
              padding: 0;
              display: flex;
              flex-wrap: wrap;
              gap: 20px 40px;

              &>li {
                width: calc((100% - 120px) / 3);
                color: #9D7947;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                display: flex;
                align-items: center;
                transition: ease-in .2s;

                &::before {
                  content: "";
                  /* 10px-12px:375px-1920px */
                  width: clamp(0.625rem, 0.595rem + 0.13vw, 0.75rem);
                  height: 1px;
                  border-top: 1px #9D7947 solid;
                  margin-right: 10px;
                }

                a {
                  color: #9D7947;
                  /* 18px-20px:375px-1920px */
                  font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                }

                &:hover {
                  opacity: 0.7;
                }
              }
            }
          }

          &+li {
            margin-top: 20px;
          }
        }
      }
    }
  }
}

.wysiwyg_area {
  hr {
    height: 0;
    margin: 20px 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #9D7947;
  }

  p {
    line-height: 1.8;
    /* 18px-20px:375px-1920px; */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
    /* 30px-40px:375px-1920px */
    margin-bottom: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);

    &:has(.aligncenter) {
      text-align: center;
    }
  }

  h2 {
    position: relative;
    font-family: var(--font-min);
    font-weight: 600;
    /* 22px-30px:375px-1920px; */
    font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
    border-top: 1px #9D7947 solid;
    border-bottom: 1px #9D7947 solid;
    margin: 80px 0 40px;
    padding: 20px 0;

    &::before {
      content: "";
      position: absolute;
      top: -6px;
      display: block;
      width: 100%;
      height: 1px;
      border-bottom: 1px #9D7947 solid;
    }

    &::after {
      content: "";
      position: absolute;
      bottom: -6px;
      display: block;
      width: 100%;
      height: 1px;
      border-top: 1px #9D7947 solid;
    }
  }

  h3 {
    font-family: var(--font-min);
    font-weight: 600;
    /* 22px-30px:375px-1920px; */
    font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
    /* 6px-10px:375px-1920px; */
    border-left: clamp(0.375rem, 0.314rem + 0.26vw, 0.625rem) #9D7947 solid;
    /* 10px-15px:375px-1920px; */
    padding-left: clamp(0.625rem, 0.549rem + 0.32vw, 0.938rem);
    /* 60px-80px:375px-1920px; */
    margin: clamp(3.75rem, 3.447rem + 1.29vw, 5rem) 0 30px;
  }

  h4 {
    font-family: var(--font-min);
    font-weight: 500;
    /* 20px-25px:375px-1920px; */
    font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
    border-bottom: 1px #9D7947 solid;
    color: #9D7947;
    /* 50px-60px:375px-1920px; */
    margin: clamp(3.125rem, 2.973rem + 0.65vw, 3.75rem) 0 30px;
    padding-bottom: 10px;
  }

  a {
    text-decoration: underline;
    color: #9D7947;

    &:hover {
      text-decoration: none;
    }
  }

  ul {
    list-style: none;
    margin: 30px 0;
    padding: 0;

    &>li {
      position: relative;
      padding-left: 15px;
      /* 18px-20px:375px-1920px; */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

      &::before {
        content: "";
        position: absolute;
        top: 12px;
        left: 0;
        width: 8px;
        height: 8px;
        background-color: #C9B292;
        border-radius: 50px;
      }

      &+li {
        margin-top: 5px;
      }
    }
  }

  .list_check {
    list-style: none;
    margin: 30px 0;
    padding: 0;

    &>li {
      position: relative;
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      padding-left: 35px;

      @media (max-width: 767px) {
        padding-left: 30px;
      }

      &::before {
        content: "";
        position: absolute;
        top: 3px;
        left: 0;
        background: url("../img/icon_check_brown.svg") center center / contain no-repeat;
        display: inline-block;
        /* 20px-25px:375px-1920px */
        width: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
        height: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
        border-radius: 0;
      }

      @media (max-width: 767px) {
        &::before {
          top: 4px;
        }
      }

      &+li {
        margin-top: 5px;
      }
    }
  }

  .list_triangle {
    list-style: none;
    margin: 30px 0;
    padding: 0;

    &>li {
      position: relative;
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      padding-left: 20px;

      &::before {
        content: "";
        position: absolute;
        top: 8px;
        left: 0;
        background-color: transparent;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.667' height='14' viewBox='0 0 11.667 14'%3E%3Cpath id='多角形_36' data-name='多角形 36' d='M7,0l7,11.667H0Z' transform='translate(11.667) rotate(90)' fill='%239d7947'/%3E%3C/svg%3E%0A");
        background-repeat: no-repeat;
        display: inline-block;
        width: 11px;
        height: 14px;
        border-radius: 0;
      }

      @media (max-width: 767px) {
        &::before {
          top: 6px;
        }
      }

      &+li {
        margin-top: 5px;
      }
    }
  }

  .list_check_wrap {
    &>li {
      background-color: #F7F4F0;
      padding: 40px 60px 40px 100px;

      @media (max-width: 767px) {
        padding: 20px 25px 20px 55px;
      }

      &::before {
        content: "";
        position: absolute;
        top: 43px;
        left: 60px;
        background: url("../img/icon_check_brown.svg") center center / contain no-repeat;
        display: inline-block;
        /* 20px-25px:375px-1920px */
        width: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
        height: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
        border-radius: 0;
      }

      @media (max-width: 767px) {
        &::before {
          top: 24px;
          left: 25px;
          width: 20px;
          height: 20px;
        }
      }

      &+li {
        margin-top: 10px;

        @media (max-width: 767px) {
          margin-top: 5px;
        }
      }
    }
  }

  ol {
    list-style: none;
    margin: 30px 0;
    padding: 0;

    &>li {
      position: relative;
      padding-left: 30px;
      /* 18px-20px:375px-1920px; */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

      &::before {
        position: absolute;
        top: 4px;
        left: 0;
        counter-increment: number 1;
        content: counter(number) " ";
        display: inline-flex;
        justify-content: center;
        align-items: center;
        width: 23px;
        height: 23px;
        background-color: #9D7947;
        border-radius: 50px;
        color: #fff;
        line-height: 0;
        font-weight: 500;
        font-size: 14px;
        flex-shrink: 0;
      }
    }
  }

  table {
    border: 1px #9D7947 solid;
    margin: 30px 0;

    tr {
      th {
        background-color: #F7F4F0;
        color: #9D7947;
        text-align: left;
        padding: 20px;
        border: 0.5px #9D7947 solid;
      }

      td {
        text-align: left;
        padding: 20px;
        border: 0.5px #9D7947 solid;
      }
    }
  }

  a.btn {
    position: relative;
    display: block;
    background: linear-gradient(90deg, rgba(157, 121, 71, 1) 0%, rgba(199, 172, 134, 1) 100%);
    border-radius: 100px;
    text-decoration: none;
    max-width: 500px;
    width: 90%;
    padding: 10px 60px;
    margin: auto;
    font-family: var(--font-min);
    font-weight: 500;
    /* 20px-30px:375px-1920px */
    font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
    text-align: center;
    color: #fff;

    @media (max-width: 767px) {
      padding: 10px 40px;
    }

    &::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 30px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_532' data-name='グループ 532' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
      background-repeat: no-repeat;
      background-size: contain;
      width: 16px;
      height: 13px;
      transition: ease-in .2s;
    }

    @media (max-width: 767px) {
      &::after {
        right: 20px;
      }
    }

    &:hover {
      filter: brightness(1.10);

      &::after {
        right: 25px;
      }

      @media (max-width: 767px) {
        &::after {
          right: 20px;
        }
      }
    }

    &.white {
      background: #fff;
      color: #9D7947;
      border: 1px #9D7947 solid;

      &::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_532' data-name='グループ 532' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
      }

      &:hover {
        background: #F5F1EA;
        filter: none;
      }
    }

    &.pink {
      background: linear-gradient(0deg, rgba(242, 171, 181, 1) 0%, rgba(219, 107, 124, 1) 100%);
    }

    &.red {
      background: linear-gradient(0deg, rgba(242, 119, 119, 1) 0%, rgba(222, 76, 76, 1) 100%);
    }

    &.green {
      background: linear-gradient(0deg, rgba(129, 209, 149, 1) 0%, rgba(85, 175, 107, 1) 100%);
    }
  }

  /* こんな方にオススメ */
  .recommend_box {
    position: relative;
    width: 100%;
    /* 60px-80px:375px-1920px */
    margin: clamp(3.75rem, 3.447rem + 1.29vw, 5rem) auto;
    /* 20px-120px:375px-1920px */
    padding: 0 clamp(1.25rem, -0.267rem + 6.47vw, 7.5rem);
    border: 1px #9D7947 solid;

    .recommend_ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      color: #9D7947;
      width: fit-content;
      margin: -22px auto 0;
      padding: 0 20px;
      background-color: #fff;
      border: none;

      &::before,
      &::after {
        display: none;
      }
    }

    .list_check {
      padding: 0;
      margin: 50px 0 40px;
      width: 65%;

      @media (max-width: 767px) {
        margin-bottom: 20px;
        width: 100%;
      }

      &>li {
        position: relative;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        padding-left: 35px;

        @media (max-width: 767px) {
          padding-left: 30px;
        }

        &::before {
          content: "";
          position: absolute;
          top: 3px;
          left: 0;
          background: url("../img/icon_check_brown.svg") center center / contain no-repeat;
          display: inline-block;
          /* 20px-25px:375px-1920px */
          width: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
          height: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
          border-radius: 0;
        }

        @media (max-width: 767px) {
          &::before {
            top: 4px;
          }
        }

        &+li {
          margin-top: 20px;
        }
      }
    }

    &::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 30px;
      /* 260px-320px:375px-1920px; */
      width: clamp(16.25rem, 15.34rem + 3.88vw, 20rem);
      height: 196px;
      display: block;
      background: url("../img/menu/recommend_obj.svg") center center / contain no-repeat;
    }

    @media (max-width: 767px) {
      &::after {
        position: static;
        transform: none;
        margin: auto;
      }
    }
  }

  /* 注意事項 */
  .notes_box {
    /* 60px-80px:375px-1920px */
    margin: clamp(3.75rem, 3.447rem + 1.29vw, 5rem) auto;

    .notes_inner {
      background-color: #F7F4F0;
      width: 100%;
      margin: auto;
      /* 20px-110px:375px-1920px */
      padding: 40px clamp(1.25rem, -0.115rem + 5.83vw, 6.875rem);
    }

    .ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      display: flex;
      justify-content: center;
      gap: 10px;
      /* 20px-30px:375px-1920px */
      margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      padding: 0;
      border: none;

      &::before,
      &::after {
        content: "";
        width: 40px;
        height: 40px;
        display: inline-block;
        background: url("../img/icon_exclamation_mark.svg") center center / contain no-repeat;
        position: initial;
        border: none;
      }
    }

    .txt {
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 2;
      margin: 0;
    }
  }

  .special_price_box {
    margin: 30px 0 50px;

    * {
      font-family: var(--font-min);
      font-weight: 600;
    }

    .ttl {
      width: fit-content;
      border: 1px #9D7947 solid;
      margin: 0 0 15px;
      padding: 0 15px;
      color: #9D7947;
    }

    .usually_price_inner {
      .usually_price {
        margin: 0;
        line-height: 1;
        display: flex;
        align-items: baseline;

        .price_type {
          margin-right: 15px;
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          align-self: center;

          @media (max-width: 767px) {
            margin-right: 10px;
          }
        }

        .price {
          /* 30px-40px:375px-1920px */
          font-size: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
        }

        .yen {
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        }
      }

      &+.special_price_inner {
        display: flex;
        align-items: flex-end;

        &::before {
          content: "";
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='14' viewBox='0 0 25 14'%3E%3Cg id='グループ_5330' data-name='グループ 5330' transform='translate(-718.385 -4524.363)'%3E%3Cpath id='多角形_48' data-name='多角形 48' d='M7,0l7,11H0Z' transform='translate(729.385 4524.363) rotate(90)' fill='%23de4b4b'/%3E%3Cpath id='多角形_49' data-name='多角形 49' d='M7,0l7,11H0Z' transform='translate(743.385 4524.363) rotate(90)' fill='%23de4b4b'/%3E%3C/g%3E%3C/svg%3E%0A");
          width: 25px;
          height: 14px;
          display: inline-block;
          margin: 0 20px 8px 20px;
        }

        @media (max-width: 767px) {
          &::before {
            margin: 0 10px 5px 0;
          }
        }
      }
    }

    .special_price_inner {
      .special_price {
        display: grid;
        align-items: flex-end;
        margin: 0;
        /* 30px-40px:375px-1920px */
        font-size: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
        color: #DE4C4C;
        line-height: 1;

        .price_type {
          grid-column: 1 / 4;
          grid-row: 1;
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          display: block;
          margin-bottom: 5px;
        }

        .off {
          grid-column: 1;
          grid-row: 2;
          background-color: #DE4C4C;
          color: #fff;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          margin-right: 10px;
          padding: 3px 8px;
          height: fit-content;
        }

        .price {
          grid-column: 2;
          grid-row: 2;
          /* 30px-40px:375px-1920px */
          font-size: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
        }

        .yen {
          grid-column: 3;
          grid-row: 2;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        }
      }
    }

    &.flex {
      display: flex;
      align-items: flex-end;

      @media (max-width: 767px) {
        flex-direction: column;
        gap: 10px;
        align-items: flex-start;
      }
    }
  }
}

/*--------------------
おすすめ情報一覧
--------------------*/
.post-type-archive-recommend,
.tax-recommend-category {
  main {
    background: none;
  }

  .post_archive {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .recommend_list {
      display: flex;
      flex-wrap: wrap;
      gap: 60px;
      list-style: none;
      margin: 0;

      @media (max-width: 767px) {
        flex-direction: column;
      }

      &:has(+ .pagination) {
        /* 60px-80px:375px-1920px */
        padding: 0 0 clamp(3.75rem, 3.447rem + 1.29vw, 5rem);
        border-bottom: 1px #9D7947 solid;
      }

      .recommend_item {
        width: calc((100% - 120px) / 3);

        @media (max-width: 767px) {
          width: 100%;
        }

        a {
          display: grid;
          grid-template-columns: auto 1fr;

          .img {
            grid-column: 1 / 3;
            grid-row: 1;
            margin-bottom: 20px;

            @media (max-width: 767px) {
              width: 80%;
              margin: 0 auto 20px;
            }

            img {
              width: 100%;
            }
          }

          time {
            grid-column: 1;
            grid-row: 2;
            color: #9D7947;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          }

          .category {
            grid-column: 2;
            grid-row: 2;
            align-self: center;
            background-color: #9D7947;
            font-size: 16px;
            color: #fff;
            padding: 0 10px;
            margin-left: 10px;
            width: fit-content;
            height: fit-content;
          }

          .post_ttl {
            grid-column: 1 / 3;
            grid-row: 3;
            position: relative;
            padding-right: 45px;
            margin: 10px 0 0;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

            @media (max-width: 767px) {
              padding-right: 35px;
            }

            &::after {
              content: "";
              position: absolute;
              top: 50%;
              right: 0;
              transform: translateY(-50%);
              display: inline-block;
              /* 22px-30px:375px-1920px; */
              width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
              height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
              background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
              transition: ease-in .2s;
            }
          }

          &:hover {
            opacity: 0.7;

            .post_ttl {
              &::after {
                right: -5px;
              }
            }
          }
        }
      }
    }
  }
}

/*--------------------
お知らせ一覧
--------------------*/
.post-type-archive-news,
.tax-news-category {
  .page_title {
    background-image: url("../img/first-guide/page_title.webp");

    @media (max-width: 767px) {
      background-image: url("../img/first-guide/page_title_sp.webp");
    }
  }

  main {
    background: none;
  }

  .post_archive {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .news_list {
      .news_item {
        a {
          width: 100%;
          display: grid;
          grid-template-columns: auto auto 1fr;
          grid-template-rows: auto 1fr;
          align-items: center;
          gap: 10px 0;
          padding: 0 40px 30px 0;
          border-bottom: 1px #9D7947 solid;

          @media (max-width: 767px) {
            padding: 0 40px 20px 0;
          }

          .img {
            grid-column: 1;
            grid-row: 1 / 3;
            width: 80px;
            margin-right: 20px;
          }

          time {
            grid-column: 2;
            grid-row: 1;
            height: fit-content;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
            color: #9D7947;
          }

          .category {
            grid-column: 3;
            grid-row: 1;
            margin: 0;
            width: fit-content;
            height: fit-content;
            background-color: #9D7947;
            /* 14px-16px:375px-1920px */
            font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
            color: #fff;
            margin-left: 10px;
            padding: 0 10px;
          }

          .news_ttl {
            grid-column: 2 / 4;
            grid-row: 2;
            margin: 0;
            align-self: flex-start;
          }
        }

        &+.news_item {
          a {
            margin-top: 30px;

            @media (max-width: 767px) {
              margin-top: 20px;
            }
          }
        }
      }
    }
  }
}

/*--------------------
プライバシーポリシー
--------------------*/
.page_privacypolicy {
  main {
    background: none;

    .txt {
      /* 18px-20px:375px-1920px; */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 1.8;
      /* 40px-60px:375px-1920px */
      margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
    }

    h2 {
      position: relative;
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      border-top: 1px #9D7947 solid;
      border-bottom: 1px #9D7947 solid;
      margin: 80px 0 40px;
      padding: 20px 0;

      &::before {
        content: "";
        position: absolute;
        top: -6px;
        display: block;
        width: 100%;
        height: 1px;
        border-bottom: 1px #9D7947 solid;
      }

      &::after {
        content: "";
        position: absolute;
        bottom: -6px;
        display: block;
        width: 100%;
        height: 1px;
        border-top: 1px #9D7947 solid;
      }
    }
  }
}

/*--------------------------
症例検索フォーム
--------------------------*/
.case_search {
  /* 40px-110px:375px-1920px */
  margin: 0 auto clamp(2.5rem, 1.438rem + 4.53vw, 6.875rem);

  .inner {
    border: 1px #9D7947 solid;
    border-radius: 20px;
    max-width: 1200px;
    width: 90%;
    margin: auto;
    /* 30px-30px:375px-1920px */
    /* 20px-110px:375px-1920px */
    /* 40px-60px:375px-1920px */
    padding: clamp(1.875rem, 1.117rem + 3.24vw, 5rem) clamp(1.25rem, -0.115rem + 5.83vw, 6.875rem) clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

    @media (max-width: 767px) {
      border-radius: 10px;
    }
  }

  .search_box {
    display: flex;
    flex-wrap: wrap;
    row-gap: 20px;
    margin: 0;

    @media (max-width: 767px) {
      flex-direction: column;
    }

    dt {
      width: 90px;
      flex-shrink: 0;
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      color: #9D7947;
      font-weight: 600;
      padding-top: 10px;

      @media (max-width: 767px) {
        width: 100%;
      }
    }

    dd {
      width: calc(100% - 90px);
      margin: 0;
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      font-weight: 600;

      @media (max-width: 767px) {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(3, auto);

        &:has(select) {
          grid-template-columns: 1fr;
        }
      }

      select {
        appearance: none;
        /* Chrome, Safari, Edge */
        -moz-appearance: none;
        /* Firefox */
        -webkit-appearance: none;
        width: 100%;
        border-radius: 6px;
        border: none;
        padding: 10px 25px;
        color: #9D7947;
        background: #F7F4F0;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        font-weight: 500;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.345' height='10.275' viewBox='0 0 19.345 10.275'%3E%3Cpath id='パス_1145' data-name='パス 1145' d='M0,8.182,8.964,0,18,8.182' transform='translate(18.671 8.923) rotate(180)' fill='none' stroke='%239d7947' stroke-width='2'/%3E%3C/svg%3E%0A");
        background-size: 16px;
        background-repeat: no-repeat;
        background-position: center right 30px;

        @media (max-width: 767px) {
          background-position: center right 15px;
        }

        &:focus-visible {
          outline: none;
        }

        &:focus {
          outline: none;
          border-color: #666;
        }

        option {
          background: #fff;
        }

        option:first-child {
          color: #A2998F;
        }
      }

      label {
        margin: 10px 0;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        min-width: calc(100% / 8);
        padding-right: 30px;

        @media (max-width: 767px) {
          min-width: inherit;
          padding-right: 0;
        }

        span {
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          font-weight: normal;
        }
      }

      input[type="checkbox"] {
        position: relative;
        width: 16px;
        height: 16px;
        background-color: #CBC4C5;
        vertical-align: -1px;
        border-radius: 3px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
      }

      input[type="checkbox"]::before {
        position: absolute;
        top: 1px;
        left: 5px;
        transform: rotate(50deg);
        width: 6px;
        height: 10px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        content: '';
      }

      input[type="checkbox"]:checked {
        background-color: #9D7947;

        &+span {
          font-weight: 600;
        }
      }
    }
  }

  .submit {
    background: linear-gradient(0deg, rgba(199, 172, 134, 1) 0%, rgba(157, 121, 71, 1) 100%);
    border: none;
    /* 20px-25px:375px-1920px */
    font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
    font-family: var(--font-min);
    font-weight: 500;
    /* 250px-300px:375px-1920px */
    width: clamp(15.625rem, 14.867rem + 3.24vw, 18.75rem);
    margin: 40px auto 0;
    padding: 10px;
    border-radius: 100px;
    display: block;
    color: #fff;
    line-height: 1.5;
    transition: ease-in 0.35s;
    cursor: pointer;
    position: relative;

    &::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 30px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_1606' data-name='グループ 1606' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
      background-repeat: no-repeat;
      background-size: contain;
      display: block;
      width: 16px;
      height: 13px;
      transform: translateY(-50%);
      transition: ease-in .2s;
      margin-left: auto;
    }

    @media (max-width: 767px) {
      &::after {
        width: 12px;
        height: 10px;
        right: 25px;
      }
    }

    &:hover {
      filter: brightness(1.10);

      &::after {
        right: 25px;
      }
    }
  }
}

.post-type-archive-case {
  &.body_b {
    background: var(--bg-color4);
  }

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

/*--------------------
症例一覧
--------------------*/
.post-type-archive-case {
  .page_title {
    background-image: url("../img/case/page_title.webp");

    @media (max-width: 767px) {
      background: url("../img/case/page_title_sp.webp");
    }
  }

  main {
    background: none;
  }

  .case_archive {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .case_list {
      display: flex;
      flex-direction: column;
    }
  }
}

.case_photo {
  display: flex;
  gap: 6px;

  @media (max-width: 1000px) {
    margin-bottom: 20px;
    justify-content: center;
  }

  .case_before,
  .case_after {
    .img {
      max-width: 300px;
      aspect-ratio: 1 / 1;

      @media (max-width: 1000px) {
        /* width: calc((100% - 6px) / 2); */
        width: 100%;
        height: auto;
      }

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }

    .caption {
      text-align: center;
      color: #9D7947;
      font-family: var(--font-en);
      /* 20px-30px:375px-1920px */
      font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      margin: 6px 0 0;
    }
  }

  .case_after {
    .caption {
      color: #A9717A;
    }
  }
}

.case_list {
  list-style: none;
  margin: 0;
  padding: 0;

  .case_item {
    display: grid;
    gap: 0 30px;
    border-bottom: 1px #9D7947 solid;
    /* 40px-60px:375px-1920px */
    padding-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

    @media (max-width: 1000px) {
      display: flex;
      flex-direction: column;
    }

    .case_ttl {
      grid-column: 1 / 3;
      grid-row: 1;
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      margin: 0 0 15px;
      padding-left: 15px;
      border-left: 10px #9D7947 solid;

      @media (max-width: 767px) {
        border-left: 6px #9D7947 solid;
        padding-left: 10px;
      }
    }

    .case_photo {
      grid-column: 1;
      grid-row: 2;
    }

    .btn_more {
      grid-column: 1 / 3;
      grid-row: 3;
      /* 20px-30px:375px-1920px */
      margin-top: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      display: flex;
      justify-content: center;

      a {
        font-size: 20px;
        padding: 10px;
        min-width: inherit;
        /* 250px-300px:375px-1920px */
        width: clamp(15.625rem, 14.867rem + 3.24vw, 18.75rem);
      }
    }

    &+.case_item {
      /* 40px-60px:375px-1920px */
      padding-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
    }
  }
}

.case_detail {
  grid-column: 2;
  grid-row: 2;

  .case_detail_list {
    display: flex;
    flex-wrap: wrap;

    dt {
      width: 120px;
      flex-shrink: 0;
      color: #9D7947;
      /* 15px-20px:375px-1920px */
      padding-bottom: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
      margin-bottom: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
      /* 16px-20px:375px-1920px */
      font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
      font-weight: 500;

      @media (max-width: 767px) {
        width: 70px;
      }
    }

    dd {
      position: relative;
      width: calc(100% - 120px);
      margin: 0;
      /* 15px-20px:375px-1920px */
      padding-bottom: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
      margin-bottom: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
      padding-left: 10px;
      /* 16px-20px:375px-1920px */
      font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);

      @media (max-width: 767px) {
        width: calc(100% - 70px);
      }

      &::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        display: block;
        width: calc(100% + 120px);
        height: 3px;
        /* ドット全体の高さ */
        background-image: radial-gradient(circle, #9D7947 1px, transparent 1px);
        background-size: 6px 3px;
        /* ドットの横間隔と縦サイズ */
        background-repeat: repeat-x;
      }

      @media (max-width: 767px) {
        &::after {
          width: calc(100% + 70px);
        }
      }

      &.price {
        .price_detail {
          /* 16px-20px:375px-1920px */
          font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
          margin: 10px 0 0;
          font-weight: normal;
          color: #9D7947;
        }
      }
    }
  }
}

/*--------------------
症例 詳細
--------------------*/
.single-case {
  .case_main {
    /* 60px-120px:375px-1920px; */
    margin-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .case_ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-40px:375px-1920px */
      font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
      /* 30px-40px:375px-1920px */
      margin: 0 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
    }

    .case_photo_swiper_area {
      position: relative;
      max-width: 606px;
      width: 90%;
      /* 60px-80px:375px-1920px */
      margin: 0 auto clamp(3.75rem, 3.447rem + 1.29vw, 5rem);

      .case_photo {
        @media (max-width: 1000px) {
          margin-bottom: 0;
        }
      }

      /* .swiper-button-prev,
      .swiper-button-next {
        background-color: #C9B292;
        width: 30px;
        height: 45px;
        top: 45%;

        @media (max-width: 767px) {
          width: 14px;
          height: 26px;
        }

        &::after {
          color: #fff;
          font-size: 15px;
          font-weight: bold;
        }

        @media (max-width: 767px) {
          &::after {
            font-size: 12px;
          }
        }
      } */
      /* .swiper-button-prev {
        left: -30px;

        @media (max-width: 767px) {
          left: -14px;
        }
      }

      .swiper-button-next {
        right: -30px;

        @media (max-width: 767px) {
          right: -14px;
        }
      } */
      /* .swiper-pagination {
        bottom: -20px;

        .swiper-pagination-bullet {
          background-color: #C7B342;
          margin: 0 7px;
        }
      } */
    }

    .case_detail {
      .case_detail_list {
        dt {
          width: 145px;

          @media (max-width: 767px) {
            width: 90px;
          }
        }

        dd {
          width: calc(100% - 145px);

          @media (max-width: 767px) {
            width: calc(100% - 90px);
          }

          &::after {
            width: calc(100% + 145px);
          }

          @media (max-width: 767px) {
            &::after {
              width: calc(100% + 90px);
            }
          }
        }
      }
    }

    .case_comment {
      /* 60px-80px:375px-1920px */
      margin-top: clamp(3.75rem, 3.447rem + 1.29vw, 5rem);
      /* 30px-40px:375px-1920px */
      /* 20px-60px:375px-1920px */
      padding: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem) clamp(1.25rem, 0.643rem + 2.59vw, 3.75rem);
      border: 1px #9D7947 solid;

      .ttl {
        color: #9D7947;
        font-family: var(--font-min);
        font-weight: 600;
        /* 22px-30px:375px-1920px; */
        font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        margin: -60px auto 20px;
        padding: 0 20px;
        width: fit-content;
        background-color: #fff;

        @media (max-width: 767px) {
          margin: -50px auto 20px;
        }
      }

      .txt {
        /* 16px-20px:375px-1920px */
        font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
        margin: 0;
        line-height: 2;
      }
    }
  }

  .case_info {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    background-color: #FAFAFA;

    .case_info_inner {
      /* 60px-120px:375px-1920px; */
      padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    }

    .treatment_name {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      /* 20px-30px:375px-1920px */
      margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      padding-left: 15px;
      border-left: 10px #9D7947 solid;

      @media (max-width: 767px) {
        padding-left: 10px;
        border-left: 6px #9D7947 solid;
      }
    }

    .treatment_table {
      width: 100%;
      margin: auto;
      border-collapse: collapse;
      border-spacing: 0;
      border: 1px #9D7947 solid;

      tbody {
        tr {
          border: 1px #9D7947 solid;

          th {
            width: 185px;
            background-color: #F7F4F0;
            padding: 20px 0;
            text-align: center;
            vertical-align: middle;
            font-weight: 500;
            line-height: 1.5;
            /* 16px-20px:375px-1920px */
            font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
            color: #9D7947;

            @media (max-width: 767px) {
              display: block;
              width: 100%;
              padding: 10px 20px;
              border-bottom: none;
            }
          }

          td {
            background: #fff;
            padding: 20px 30px;
            text-align: left;
            vertical-align: middle;
            line-height: 1.5;
            /* 16px-20px:375px-1920px */
            font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);

            @media (max-width: 767px) {
              display: block;
              width: 100%;
              padding: 20px;
              border-top: none;
            }
          }
        }
      }
    }

    .btn_more {
      /* 20px-30px:375px-1920px */
      margin-top: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);

      a {
        font-size: 20px;
        padding: 10px;
        min-width: inherit;
        /* 250px-300px:375px-1920px */
        width: clamp(15.625rem, 14.867rem + 3.24vw, 18.75rem);
      }
    }
  }
}

/*--------------------
施術一覧
--------------------*/
.post-type-archive-menu {
  .page_title {
    background-image: url("../img/menu/page_title.webp");

    @media (max-width: 767px) {
      background: url("../img/menu/page_title_sp.webp");
    }
  }

  .top_menu {
    padding-top: 0;

    .box_left,
    .box_right {
      display: none;
    }

    .pick_up {
      border: none;

      .pick_up_main {
        grid-column: 1 / 4;
        border: none;
        padding-top: 0;

        .pickup_swiper_wrap {
          @media (max-width: 1200px) {
            max-width: 100%;
            margin: 0 0 0 auto;
          }

          .swiper_navigation_area {
            @media (max-width: 1200px) {
              width: 90%;
              margin-right: 10%;
            }
          }
        }
      }
    }

    .by {
      .by_main {
        .by_treatment {
          .inner {
            max-height: inherit;

            .btn_more {
              display: none;
            }

            .btn_close {
              display: none;
            }
          }
        }
      }
    }
  }
}

/*--------------------
施術 詳細
--------------------*/
.single-menu {
  .page_title {
    flex-direction: column;

    .ja_sub {
      display: block;
      font-family: var(--font-min);
      font-weight: 500;
      /* 18px-30px:375px-1920px */
      font-size: clamp(1.125rem, 0.943rem + 0.78vw, 1.875rem);
      color: #9D7947;
    }
  }

  /* とは */
  .menu_about {
    margin-bottom: 80px;

    .main_img {
      max-width: 600px;
      width: 80%;
      /* 40px-60px:375px-1920px */
      margin: 0 auto clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
    }

    .read {
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 2;
      margin: 0;
    }
  }

  /* こんな方にオススメ */
  .menu_recommend {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .recommend_box {
      position: relative;
      max-width: 980px;
      width: 90%;
      margin: auto;
      /* 20px-120px:375px-1920px */
      padding: 0 clamp(1.25rem, -0.267rem + 6.47vw, 7.5rem);
      border: 1px #9D7947 solid;

      .recommend_ttl {
        font-family: var(--font-min);
        font-weight: 600;
        /* 22px-30px:375px-1920px; */
        font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        color: #9D7947;
        width: fit-content;
        margin: -22px auto 0;
        padding: 0 20px;
        background-color: #fff;
      }

      .list_check {
        margin: 50px 0 40px;
        width: 65%;

        @media (max-width: 767px) {
          margin-bottom: 20px;
          width: 100%;
        }
      }

      &::after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 30px;
        /* 260px-320px:375px-1920px; */
        width: clamp(16.25rem, 15.34rem + 3.88vw, 20rem);
        height: 196px;
        display: block;
        background: url("../img/menu/recommend_obj.svg") center center / contain no-repeat;
      }

      @media (max-width: 767px) {
        &::after {
          position: static;
          transform: none;
          margin: auto;
        }
      }
    }
  }

  /* M'sクリニックの治療 */
  .menu_features {
    background: url("../img/menu/menu_features_bg.webp") top center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    overflow-x: hidden;

    .features_intro {
      position: relative;
      /* 410px-550px:1000px-1300px; */
      min-height: clamp(25.625rem, -3.542rem + 46.67vw, 34.375rem);
      margin-bottom: 60px;

      @media (max-width: 767px) {
        min-height: inherit;
        position: static;
      }

      .en_bg_ttl {
        text-align: left;
        width: 50%;

        @media (max-width: 1300px) {
          width: 50%;
        }

        @media (max-width: 1000px) {
          width: 100%;
        }

        .en {
          color: #fff;
        }

        .ja {
          color: #9D7947;
        }

        &::after {
          width: 100px;
          height: 1px;
          border-width: 1px;
          margin-top: 30px;
          margin-left: 0;
        }
      }

      .read {
        width: 55%;
        font-family: var(--font-min);
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        line-height: 2;
        margin: 0;

        @media (max-width: 1300px) {
          width: 50%;
        }

        @media (max-width: 1000px) {
          width: 100%;
          margin-bottom: 30px;
        }
      }

      .img {
        position: absolute;
        top: 0;
        right: -10%;
        max-width: 600px;
        width: 50%;

        @media (max-width: 1300px) {
          width: 45%;
          right: 0;
        }

        @media (max-width: 1000px) {
          max-width: 500px;
          width: 90%;
          position: static;
          margin: auto;
        }
      }
    }
  }

  .features_list_area {
    max-width: 1200px;
    width: 90%;
    /* 30px-60px:375px-1920px */
    margin: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem) auto 0;

    .features_list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 60px;

      @media (max-width: 767px) {
        gap: 30px;
      }

      .features_item {
        width: calc((100% - 60px) / 2);
        background-color: #fff;
        padding: 40px;

        @media (max-width: 767px) {
          width: 100%;
          padding: 30px 20px;
        }

        .ttl {
          margin: 0 0 30px;
          padding-bottom: 10px;
          border-bottom: 1px #9D7947 solid;
          font-family: var(--font-min);
          font-weight: 600;
          /* 22px-30px:375px-1920px; */
          font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          color: #9D7947;
        }

        .img {
          margin: 0 auto 30px;

          @media (max-width: 767px) {
            width: 80%;
          }

          img {
            width: 100%;
          }
        }

        .txt {
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          line-height: 2;
          margin: 0;
        }
      }
    }
  }

  /* 症例 */
  .menu_case {
    border-top: 1px #9D7947 solid;
    border-bottom: 1px #9D7947 solid;
    display: grid;
    grid-template-columns: 6.25vw calc(100% - 12.5vw) 6.25vw;
    border-top: 1px #9D7947 solid;

    .box_left,
    .box_right {
      display: flex;
      justify-content: center;
      align-items: center;

      &::before {
        content: "CASE";
        display: block;
        transform: rotate(90deg);
        font-family: var(--font-en);
        /* 22px-40px:375px-1920px; */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        color: #9D7947;
        white-space: nowrap;
        letter-spacing: 0.2em;
      }
    }

    .box_let {
      grid-column: 1;
      grid-row: 1;
    }

    .box_right {
      grid-column: 3;
      grid-row: 1;

      @media (max-width: 767px) {
        display: none;
      }

      &::before {
        transform: rotate(-90deg);
      }
    }

    .box_center {
      grid-column: 2;
      grid-row: 1;
      border-left: 1px #9D7947 solid;
      border-right: 1px #9D7947 solid;
      /* 40px-60px:375px-1920px */
      padding-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
      padding-bottom: 60px;

      @media (max-width: 767px) {
        grid-column: 2 / 4;
        border-right: none;
      }

      .case_swiper_area {
        max-width: 1530px;
        width: 90%;
        margin: auto;

        .case_swiper {
          .case_list {
            .case_item {
              border-bottom: none;

              &+.case_item {
                padding-top: 0;
              }
            }
          }
        }
      }
    }
  }

  /* 注意事項 */
  .menu_notes {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .notes_inner {
      background-color: #F7F4F0;
      max-width: 1200px;
      width: 90%;
      margin: auto;
      /* 40px-60px:375px-1920px */
      /* 20px-110px:375px-1920px */
      padding: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem) clamp(1.25rem, -0.115rem + 5.83vw, 6.875rem);
    }

    .ttl {
      font-family: var(--font-min);
      font-weight: 600;
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      display: flex;
      justify-content: center;
      gap: 10px;
      /* 20px-30px:375px-1920px */
      margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);

      &::before,
      &::after {
        content: "";
        width: 40px;
        height: 40px;
        display: inline-block;
        background: url("../img/icon_exclamation_mark.svg") center center / contain no-repeat;
      }
    }

    .txt {
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
      line-height: 2;
      margin: 0;

      &+.ttl {
        /* 40px-60px:375px-1920px */
        margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
      }
    }
  }

  /* 料金 */
  .menu_price {
    background: url("../img/ham_con_bg.webp") top center / 100% no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    @media (max-width: 767px) {
      background-image: url("../img/ham_con_bg_sp.webp")
    }
  }

  /* よくあるご質問 */
  .sec_faq {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  }

  /* 監修医師 */
  .menu_supervised {
    background: url("../img/menu/supervised_bg.webp") top center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .bg_en {
      max-width: 748px;
      width: 100%;
      /* 15px-35px:375px-1920px */
      margin-bottom: clamp(0.938rem, 0.634rem + 1.29vw, 2.188rem);
    }

    .supervised_box {
      background-color: #fff;
      max-width: 1680px;
      width: 90%;
      margin: auto;
      /* 40px-80px:375px-1920px */
      padding: clamp(2.5rem, 1.893rem + 2.59vw, 5rem) 0;

      .inner {
        display: grid;
        grid-template-columns: 30% 1fr;
        column-gap: 40px;
        max-width: 980px;
        width: 90%;
        margin: auto;

        @media (max-width: 767px) {
          display: flex;
          flex-direction: column;
        }

        .supervised_ttl {
          grid-column: 1 / 3;
          grid-row: 1;
          font-family: var(--font-min);
          font-weight: 600;
          /* 22px-40px:375px-1920px */
          font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
          /* 30px-40px:375px-1920px */
          margin: 0 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
          color: #9D7947;
          display: flex;
          align-items: center;
          justify-content: center;
          /* 10px-20px:375px-1920px */
          gap: clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);

          &::before,
          &::after {
            content: "";
            /* 20px-40px:375px-1920px */
            width: clamp(1.25rem, 0.947rem + 1.29vw, 2.5rem);
            height: 1px;
            border-bottom: 1px #9D7947 solid;
          }
        }

        .dr_img {
          grid-column: 1;
          grid-row: 2 / 5;

          @media (max-width: 767px) {
            width: 200px;
            margin: 0 auto 30px;
          }

          img {
            border-radius: 500px 500px 0 0;
          }
        }

        .dr_name {
          position: relative;
          grid-column: 2;
          grid-row: 2;
          /* 20px-30px:375px-1920px */
          margin: 0 0 clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
          padding-bottom: 10px;
          font-family: var(--font-min);
          font-weight: 500;
          /* 22px-30px:375px-1920px; */
          font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          height: fit-content;
          /* ドット全体の高さ */
          background-image: radial-gradient(circle, #9D7947 1px, transparent 1px);
          background-size: 6px 3px;
          /* ドットの横間隔と縦サイズ */
          background-repeat: repeat-x;
          background-position: left bottom;

          @media (max-width: 767px) {
            padding-bottom: 15px;
          }

          small {
            font-family: var(--font-min);
            font-weight: 500;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
            margin-right: 10px;
          }
        }

        .license_area {
          grid-column: 2;
          grid-row: 3;

          @media (max-width: 767px) {
            display: flex;
            flex-direction: column;
          }

          .ttl {
            font-family: var(--font-min);
            font-weight: 600;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
            color: #9D7947;
            margin: 0 0 10px;

            &::before {
              content: "";
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='14' viewBox='0 0 16 14'%3E%3Cpath id='多角形_15' data-name='多角形 15' d='M8,0l8,14H0Z' transform='translate(16 14) rotate(180)' fill='%239d7947'/%3E%3C/svg%3E%0A");
              width: 16px;
              height: 14px;
              display: inline-block;
              margin-right: 5px;
            }
          }

          .scroll {
            display: flex;
            gap: 40px;

            @media (max-width: 767px) {
              flex-direction: column;
              gap: 10px;
              height: 130px;
              overflow-y: scroll;

              &::-webkit-scrollbar {
                width: 4px;
                background-color: transparent;
              }

              &::-webkit-scrollbar-thumb {
                background: #C9B292;
                width: 4px;
                border-radius: 10px;
              }

              &::-webkit-scrollbar-track {
                background-color: #EBEBEB;
              }
            }

            .list_circle {
              grid-column: 1;
              grid-row: 2;

              &>li {
                /* 14px-16px:375px-1920px */
                font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);

                &::before {
                  top: 6px;
                }
              }

              &+.list_circle {
                grid-column: 2;
              }
            }
          }
        }

        .btn_more {
          grid-column: 2;
          grid-row: 4;
          justify-self: flex-start;
          margin-top: 30px;

          a {
            font-size: 20px;
            padding: 10px;
            min-width: inherit;
            /* 250px-300px:375px-1920px */
            width: clamp(15.625rem, 14.867rem + 3.24vw, 18.75rem);
          }
        }
      }
    }
  }

  /* 医療広告ガイドライン */
  .menu_guidelines {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .guideline_table {
      border: 1px #9D7947 solid;

      @media (max-width: 767px) {
        border: 0.5px #9D7947 solid;
      }

      tbody {
        tr {
          border: 0.5px #9D7947 solid;

          th {
            background-color: #FCFAF9;
            font-weight: normal;
            /* 14px-16px:375px-1920px */
            font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
            width: 230px;
            padding: 20px;

            @media (max-width: 767px) {
              padding: 15px;
              display: block;
              width: 100%;
            }
          }

          td {
            /* 14px-16px:375px-1920px */
            font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
            padding: 20px;
            background-color: #fff;

            @media (max-width: 767px) {
              padding: 15px;
              display: block;
              width: 100%;
            }
          }
        }
      }
    }
  }

  /* 悩んでいませんか？ */
  .trouble_intro {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .intro_box {
      max-width: 1200px;
      width: 90%;
      margin: auto;
      background-color: #fff;
      border: 1px #9D7947 solid;
      /* 50px-80px:375px-1920px */
      padding: clamp(3.125rem, 2.67rem + 1.94vw, 5rem) 0;

      @media (max-width: 767px) {
        padding-left: 5%;
        padding-right: 5%;
      }

      .en_bg_ttl {
        .ja {
          margin-top: 0;
        }
      }

      .main_img {
        max-width: 600px;
        width: 100%;
        /* 30px-60px:375px-1920px */
        margin: 0 auto clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
      }

      .read {
        font-family: var(--font-min);
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        text-align: center;
        line-height: 2;
        margin: 0;
        padding: 0 40px;

        @media (max-width: 767px) {
          text-align: left;
          padding: 0 20px;
        }
      }
    }
  }

  /* 種類と特徴 */
  .trouble_about {
    border-bottom: 1px #9D7947 solid;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .about_list {
      list-style: none;
      margin: 0;
      padding: 0;

      .about_item {
        background: url("../img/greeting_bg.webp") center center / cover no-repeat;
        display: grid;
        /* grid-template-columns: 1fr 33%; */
        grid-template-rows: auto 1fr;

        @media (max-width: 767px) {
          display: flex;
          flex-direction: column;
          padding: 30px 5%;
        }

        .ttl {
          grid-column: 1;
          grid-row: 1;
          font-family: var(--font-min);
          font-weight: 500;
          /* 22px-30px:375px-1920px; */
          font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          color: #9D7947;
          border-bottom: 1px #9D7947 solid;
          margin: 40px 40px 30px 40px;
          padding-bottom: 10px;

          @media (max-width: 767px) {
            margin: 0 0 30px;
          }
        }

        .txt {
          grid-column: 1;
          grid-row: 2;
          margin: 0 40px 40px;

          @media (max-width: 767px) {
            margin: 0;
          }
        }

        .img {
          grid-column: 2;
          grid-row: 1 / 3;
          max-width: 400px;
          width: 40vw;

          @media (max-width: 767px) {
            width: 70%;
            margin: 30px auto 0;
          }

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
          }
        }

        &.about_item {
          margin-top: 40px;
        }
      }
    }
  }

  /* 原因とは */
  .trouble_cause {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .read {
      font-family: var(--font-min);
      /* 18px-25px:375px-1920px */
      font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
      text-align: center;
      line-height: 2;
      /* 30px-60px:375px-1920px */
      margin: 0 0 clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);

      @media (max-width: 767px) {
        text-align: left;
      }
    }

    .list_check {
      &>li {
        background-color: #F7F4F0;
        padding: 40px 60px 40px 100px;

        @media (max-width: 767px) {
          padding: 20px 25px 20px 55px;
        }

        &::before {
          top: 43px;
          left: 60px;
        }

        @media (max-width: 767px) {
          &::before {
            top: 24px;
            left: 25px;
            width: 20px;
            height: 20px;
          }
        }

        &+li {
          margin-top: 10px;

          @media (max-width: 767px) {
            margin-top: 5px;
          }
        }
      }
    }
  }

  .trouble_menu {
    background: url("../img/menu/trouble_menu_bg.jpg") bottom center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    border-bottom: 1px #9D7947 solid;

    .en_bg_ttl {
      .en {
        color: #fff;
      }
    }

    .trouble_menu_list {
      list-style: none;
      margin: 0;
      padding: 0;

      .trouble_menu_item {
        display: grid;
        grid-template-columns: 40% 1fr;
        grid-template-rows: auto auto 1fr;
        column-gap: 40px;
        background-color: #fff;
        /* 30px-60px:375px-1920px */
        /* 20px-110px:375px-1920px */
        padding: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem) clamp(1.25rem, -0.115rem + 5.83vw, 6.875rem);

        @media (max-width: 767px) {
          display: flex;
          flex-direction: column;
        }

        .img {
          grid-column: 1;
          grid-row: 1 / 4;

          @media (max-width: 767px) {
            width: 85%;
            margin: 0 auto 30px;
          }
        }

        .ttl {
          grid-column: 2;
          grid-row: 1;
          font-family: var(--font-min);
          font-weight: 500;
          /* 22px-30px:375px-1920px; */
          font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
          color: #9D7947;
          margin: 0 0 30px;
          /* 10px-20px:375px-1920px; */
          padding-bottom: clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem);
          border-bottom: 1px #9D7947 solid;
        }

        .txt {
          grid-column: 2;
          grid-row: 2;
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          line-height: 2;
          margin: 0;
        }

        .btn_more {
          grid-column: 2;
          grid-row: 3;
          justify-self: flex-start;
          margin-top: 30px;

          a {
            font-size: 20px;
            padding: 10px;
            min-width: inherit;
            /* 250px-300px:375px-1920px */
            width: clamp(15.625rem, 14.867rem + 3.24vw, 18.75rem);
          }
        }

        &+.trouble_menu_item {
          /* 40px-60px:375px-1920px */
          margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
        }
      }
    }

    /* ポイント */
    .point_box {
      background: url("../img/menu/trouble_menu_point_bg.webp") center center / cover no-repeat;
      position: relative;
      /* 70px-80px:375px-1920px */
      margin-top: clamp(4.375rem, 4.223rem + 0.65vw, 5rem);
      padding: 50px 60px 60px;
      width: calc(100% - 10px);
      margin-left: auto;

      @media (max-width: 767px) {
        padding: 20px 25px 40px 15px;
      }

      &::before {
        content: "";
        position: absolute;
        top: -10px;
        left: -10px;
        width: 100%;
        height: 100%;
        border: 1px #9D7947 solid;
        pointer-events: none;
      }

      &::after {
        content: "";
        position: absolute;
        right: 30px;
        bottom: 0;
        max-width: 320px;
        width: 30%;
        height: 338px;
        background: url("../img/menu/point_obj.webp") bottom center / contain no-repeat;
      }

      @media (max-width: 767px) {
        &::after {
          max-width: inherit;
          width: 120px;
          height: 88px;
          top: -60px;
          right: inherit;
          bottom: inherit;
          left: -25px;
          background: url("../img/menu/point_obj_sp.webp") bottom center / contain no-repeat;
        }
      }

      .ttl {
        font-family: var(--font-min);
        font-weight: 600;
        /* 22px-40px:375px-1920px; */
        font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
        color: #9D7947;
        border-bottom: 1px #9D7947 solid;
        margin: 0 0 30px;
        padding-bottom: 10px;
        max-width: 830px;
        width: 80%;

        @media (max-width: 1300px) {
          width: 65%;
        }

        @media (max-width: 767px) {
          width: 100%;
          text-align: center;
          margin: 0 0 20px;
          padding-bottom: 20px;
        }

        br {
          display: none;

          @media (max-width: 767px) {
            display: block;
          }
        }
      }

      .txt {
        max-width: 830px;
        width: 80%;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        line-height: 2;
        margin: 0;

        @media (max-width: 1300px) {
          width: 65%;
        }

        @media (max-width: 767px) {
          width: 100%;
        }
      }
    }
  }

  /* 当院のこだわり */
  .trouble_feature {
    background: url("../img/menu/supervised_bg.webp") top center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .bg_en {
      max-width: 900px;
      width: 100%;
      /* 30px-48px:375px-1920px */
      margin-bottom: clamp(1.875rem, 1.602rem + 1.17vw, 3rem);
    }

    .feature_box {
      display: flex;
      background-color: #fff;
      max-width: 1680px;
      width: 90%;
      margin: auto;
      /* 40px-80px:375px-1920px */
      padding: clamp(2.5rem, 1.893rem + 2.59vw, 5rem) 0;

      .inner {
        /* 1165px-1380px:1400px-1920px */
        width: clamp(72.813rem, 36.635rem + 41.35vw, 86.25rem);
        /* width: 82%; */
        margin-left: auto;
        margin-right: 60px;
        display: grid;
        grid-template-columns: 1fr 40%;
        grid-template-rows: auto 1fr;
        column-gap: 50px;

        @media (max-width: 1430px) {
          width: 90%;
          margin: auto;
        }

        @media (max-width: 1000px) {
          display: flex;
          flex-direction: column;
        }

        .feature_ttl {
          grid-column: 1;
          grid-row: 1;
          font-family: var(--font-min);
          font-weight: 600;
          /* 22px-40px:375px-1920px */
          font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
          /* 30px-40px:375px-1920px */
          margin: 60px 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
          color: #9D7947;

          @media (max-width: 1000px) {
            margin-top: 0;
          }

          &::after {
            content: "";
            display: block;
            /* 50px-100px:375px-1920px */
            width: clamp(3.125rem, 2.367rem + 3.24vw, 6.25rem);
            height: 1px;
            border-bottom: 1px #9D7947 solid;
            /* 20px-30px:375px-1920px */
            margin-top: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
          }
        }

        .txt_area {
          grid-column: 1;
          grid-row: 2;

          @media (max-width: 1000px) {
            margin-bottom: 30px;
          }

          p {
            font-family: var(--font-min);
            /* 18px-25px:375px-1920px */
            font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
            line-height: 2;
            margin: 0;

            @media (max-width: 1000px) {
              br {
                display: none;
              }

              &+p {
                margin-top: 30px;
              }
            }
          }
        }

        .img {
          grid-column: 2;
          grid-row: 1 / 3;

          @media (max-width: 1000px) {
            max-width: 400px;
            width: 100%;
            margin: auto;
          }
        }
      }
    }
  }

  /* セルフケア */
  .trouble_selfcare {
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .read {
      font-family: var(--font-min);
      /* 18px-25px:375px-1920px */
      font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
      text-align: center;
      line-height: 2;
      /* 30px-60px:375px-1920px */
      margin: 0 0 clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);

      @media (max-width: 767px) {
        text-align: left;
      }
    }

    .list_check {
      &>li {
        background-color: #F7F4F0;
        padding: 40px 60px 40px 100px;

        @media (max-width: 767px) {
          padding: 20px 25px 20px 55px;
        }

        &::before {
          top: 43px;
          left: 60px;
        }

        @media (max-width: 767px) {
          &::before {
            top: 24px;
            left: 25px;
            width: 20px;
            height: 20px;
          }
        }

        &+li {
          margin-top: 10px;

          @media (max-width: 767px) {
            margin-top: 5px;
          }
        }
      }
    }
  }
}

/* 流れ */
.sec_flow {
  background: url("../img/greeting_bg.webp") top center / cover no-repeat;
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .en_bg_ttl {
    .en {
      color: #fff;
    }
  }

  .flow_list {
    list-style: none;
    margin: auto;
    padding: 0;

    .flow_item {
      display: grid;
      grid-template-columns: 130px 1fr 200px;
      background-color: #fff;
      border: 1px #9D7947 solid;
      position: relative;

      @media (max-width: 767px) {
        grid-template-columns: 55px 1fr;
      }

      &::before {
        content: "";
        position: absolute;
        bottom: -27px;
        left: 50%;
        transform: translateX(-50%);
        width: 53px;
        height: 26px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='53' height='26' viewBox='0 0 53 26'%3E%3Cpath id='多角形_9' data-name='多角形 9' d='M26.5,0,53,26H0Z' transform='translate(53 26) rotate(180)' fill='%23c9b292'/%3E%3C/svg%3E%0A");
        background-size: contain;
        background-repeat: no-repeat;
      }

      @media (max-width: 767px) {
        &::before {
          bottom: -25px;
          width: 50px;
          height: 25px;
        }
      }

      .num {
        grid-column: 1;
        grid-row: 1 / 3;
        font-family: var(--font-en);
        font-weight: 400;
        /* 30px-60px:375px-1920px; */
        font-size: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
        color: #9D7947;
        border-right: 1px #9D7947 solid;
        display: flex;
        justify-content: center;
        align-items: center;

        @media (max-width: 767px) {
          grid-column: 1;
          grid-row: 1 / 4;
        }
      }

      .ttl {
        grid-column: 2;
        grid-row: 1;
        font-family: var(--font-min);
        font-weight: 500;
        /* 22px-30px:375px-1920px; */
        font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
        color: #9D7947;
        margin: 0 40px 10px;
        padding-top: 30px;

        @media (max-width: 767px) {
          grid-column: 2;
          grid-row: 1;
          margin: 0 20px 10px;
          padding-top: 20px;
        }
      }

      .txt {
        grid-column: 2;
        grid-row: 2;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        line-height: 1.5;
        margin: 0 40px;
        padding-bottom: 30px;

        @media (max-width: 767px) {
          grid-column: 2;
          grid-row: 2;
          margin: 0 20px;
          padding-bottom: 20px;
        }
      }

      .img {
        grid-column: 3;
        grid-row: 1 / 3;

        @media (max-width: 767px) {
          grid-column: 2;
          grid-row: 3;
          width: 200px;
          margin: 0 auto 20px;
        }

        img {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }

      &+.flow_item {
        /* 40px-50px:375px-1920px; */
        margin-top: clamp(2.5rem, 2.348rem + 0.65vw, 3.125rem);
      }

      &:last-child {
        &::before {
          display: none;
        }
      }
    }
  }
}

/* よくあるご質問 */
.faq_list {
  list-style: none;
  margin: 0;
  padding: 0;

  .faq_item {
    margin: 0;
    padding: 0;

    .faq_q {
      display: flex;
      align-items: center;
      gap: 20px;
      margin: 0 0 20px;
      padding-bottom: 10px;
      border-bottom: 1px #9D7947 solid;
      font-family: var(--font-min);
      font-weight: 600;
      /* 20px-30px:375px-1920px */
      font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);

      &::before {
        content: "";
        background: url("../img/faq/faq_q.svg") center center/100% no-repeat;
        line-height: 1;
        flex-shrink: 0;
        align-self: flex-start;
        width: 50px;
        height: 52px;

        @media (max-width: 767px) {
          width: 30px;
          height: 31px;
        }
      }

      &::after {
        content: "";
        display: block;
        margin-left: auto;
        flex-shrink: 0;
        width: 40px;
        height: 40px;
        background: url("../img/icon_accordion_toggle.svg") center center / contain no-repeat;
        transition: ease-in .2s;

        @media (max-width: 767px) {
          width: 30px;
          height: 30px;
        }
      }

      &.show::after {
        transform: rotate(180deg);
        transition: ease-in .2s;
      }
    }

    .faq_a {
      background-color: #FCFAF9;
      padding: 35px 30px;
      display: flex;
      align-items: start;
      gap: 20px;
      line-height: 2;
      /* 18px-20px:375px-1920px */
      font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);

      @media (max-width: 767px) {
        padding: 30px 20px 30px 10px;
        gap: 10px;
      }

      &::before {
        content: "";
        background: url("../img/faq/faq_a.svg") center center/100% no-repeat;
        flex-shrink: 0;
        line-height: 1;
        width: 50px;
        height: 41px;

        @media (max-width: 767px) {
          width: 30px;
          height: 24px;
          margin-top: 5px;
        }
      }

      .list_circle {
        margin: 20px 0;

        &>li {
          line-height: 1.5;
        }
      }

      strong {
        color: #DB6B7C;
      }
    }

    &+.faq_item {
      /* 30px-60px:375px-1920px */
      margin-top: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
    }
  }
}

/*--------------------
料金表 一覧
--------------------*/
.post-type-archive-price {
  main {
    background: none;
  }

  .page_title {
    background-image: url("../img/menu/page_title.webp");

    @media (max-width: 767px) {
      background-image: url("../img/menu/page_title_sp.webp");
    }
  }

  .en_bg_ttl {
    .ja {
      small {
        font-family: var(--font-min);
        font-weight: 600;
        /* 18px-30px:375px-1920px */
        font-size: clamp(1.125rem, 0.943rem + 0.78vw, 1.875rem);
      }
    }
  }

  /* 目次 */
  .price_index {
    .index_list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 30px 60px;

      @media (max-width: 767px) {
        gap: 10px;
      }

      .index_item {
        width: calc((100% - 120px) / 3);
        display: flex;
        align-items: stretch;

        @media (max-width: 767px) {
          width: 100%;
        }

        a {
          position: relative;
          width: 100%;
          font-family: var(--font-min);
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          display: flex;
          flex-direction: column;
          justify-content: center;
          border-bottom: 1px #9D7947 solid;
          padding: 20px 40px 20px 0;

          @media (max-width: 767px) {
            padding: 10px 0;
          }

          small {
            font-family: var(--font-min);
            font-weight: 500;
            /* 16px-20px:375px-1920px; */
            font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
            width: 100%;
          }

          &::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            transform: translateY(-50%);
            background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
            /* 22px-30px:375px-1920px; */
            width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
            height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
            transition: ease-in .2s;
          }

          &:hover {
            opacity: 0.7;

            &::after {
              background-image: url("../img/arrow_circle_brown.svg");
              right: -5px;
            }
          }
        }
      }
    }
  }

  /* 基本料金 */
  .sec_basic_price {
    max-width: 1200px;
    width: 90%;
    /* 40px-120px:375px-1920px */
    margin: 0 auto clamp(2.5rem, 1.286rem + 5.18vw, 7.5rem);

    .basic_price_inner {
      background-color: #fff;
      border: 1px #9D7947 solid;
      outline: 1px #9D7947 solid;
      outline-offset: -7px;
      /* 30px-60px:375px-1920px */
      padding: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem) 0;

      @media (max-width: 767px) {
        outline-offset: -5px;
      }

      dl {
        max-width: 980px;
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        margin: -10px auto 0;

        * {
          font-family: var(--font-min);
        }

        dt {
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          color: #9D7947;
          /* 15px-20px:375px-1920px */
          padding: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0;
          text-align: left;
          width: 50%;
        }

        dd {
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          color: #9D7947;
          margin-left: 0;
          /* 15px-20px:375px-1920px */
          padding: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0;
          text-align: right;
          width: 50%;
          position: relative;

          &::after {
            content: "";
            position: absolute;
            bottom: 0;
            right: 0;
            display: block;
            width: 200%;
            height: 3px;
            background-image: radial-gradient(circle, #9D7947 1px, transparent 1px);
            background-size: 6px 3px;
            background-repeat: repeat-x;
          }
        }
      }
    }

    .price_notes {
      font-family: var(--font-noto);
      /* 16px-18px:375px-1920px */
      font-size: clamp(1rem, 0.97rem + 0.13vw, 1.125rem);
      /* 15px-20px:375px-1920px */
      margin: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0 0;
    }
  }
}

.sec_price {
  /* 60px-120px:375px-1920px; */
  padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

  .price_group {
    &+.price_group {
      /* 60px-100px:375px-1920px */
      margin-top: clamp(3.75rem, 3.143rem + 2.59vw, 6.25rem);
    }
  }

  .price_box {
    .price_ttl {
      font-family: var(--font-min);
      /* 22px-30px:375px-1920px; */
      font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
      /* 20px-40px:375px-1920px; */
      margin: 0 0 clamp(1.25rem, 0.947rem + 1.29vw, 2.5rem);
      padding-left: 20px;
      border-left: 10px #9D7947 solid;

      @media (max-width: 767px) {
        border-left: 6px #9D7947 solid;
        padding-left: 10px;
      }
    }

    .price_box_inner {
      border: 1px #9D7947 solid;
      /* 30px-40px:375px-1920px */
      padding-bottom: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
      background-color: #fff;

      .price_sub_ttl {
        background-color: #F7F4F0;
        font-family: var(--font-min);
        font-weight: 500;
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        color: #9D7947;
        text-align: center;
        margin: 0 0 10px;
        /* 20px-30px:375px-1920px */
        padding: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
      }

      dl {
        max-width: 980px;
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;

        * {
          font-family: var(--font-min);
        }

        dt {
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          color: #9D7947;
          /* 15px-20px:375px-1920px */
          padding: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0;
          text-align: left;
          width: 50%;

          @media (max-width: 767px) {
            width: 100%;
            display: block;
            border-bottom: none;
            padding: 10px 0 0;
          }
        }

        dd {
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          color: #9D7947;
          margin-left: 0;
          /* 15px-20px:375px-1920px */
          padding: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0;
          text-align: right;
          width: 50%;
          position: relative;

          @media (max-width: 767px) {
            width: 100%;
            display: block;
            padding: 6px 0 10px;
          }

          &::after {
            content: "";
            position: absolute;
            bottom: 0;
            right: 0;
            display: block;
            width: 200%;
            height: 3px;
            background-image: radial-gradient(circle, #9D7947 1px, transparent 1px);
            background-size: 6px 3px;
            background-repeat: repeat-x;
          }

          @media (max-width: 767px) {
            &::after {
              width: 100%;
            }
          }

          &:has(p) {
            display: flex;
            flex-direction: column;

            p {
              margin: 0;

              &:has(span) {
                display: flex;
                justify-content: space-between;

                span {
                  width: 70%;
                  font-family: initial;
                  font-weight: normal;
                  /* 16px-20px:375px-1920px */
                  font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);

                  @media (max-width: 767px) {
                    width: 68%;
                  }
                }
              }

              &+p {
                margin-top: 10px;
              }
            }
          }
        }
      }

      &+.price_box_inner {
        /* 40px-60px:375px-1920px */
        margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
      }
    }

    .price_notes {
      font-family: var(--font-noto);
      /* 16px-18px:375px-1920px */
      font-size: clamp(1rem, 0.97rem + 0.13vw, 1.125rem);
      /* 15px-20px:375px-1920px */
      margin: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem) 0 0;
    }

    &+.price_box {
      /* 40px-60px:375px-1920px */
      margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
    }
  }
}

/*--------------------
アートメイク
--------------------*/
.single-menu.artmake {
  .fixed_cta {
    .common_cta_btn {
      display: none;
    }
  }

  .artmake_mv {
    position: relative;
    margin-top: 96px;
    background: url("../img/menu/artmake/artmake_mv_1920.webp") top center / cover no-repeat;
    aspect-ratio: 1920 / 766;

    @media (max-width: 1601px) {
      background-image: url("../img/menu/artmake/artmake_mv_1440.webp");
      aspect-ratio: 1440 / 766;
    }

    @media (max-width: 767px) {
      background-image: url("../img/menu/artmake/artmake_mv_375.webp");
      aspect-ratio: 375 / 516;
      margin-top: 60px;
    }

    .mv_con {
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      max-width: 1520px;
      width: 90%;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;

      .artmake_page_title {
        font-family: var(--font-min);
        font-weight: 500;
        /* 30px-60px:375px-1920px */
        font-size: clamp(1.875rem, 1.42rem + 1.94vw, 3.75rem);
        margin: 0 0 2.08vw;

        @media (max-width: 767px) {
          margin-bottom: 5.33vw;
        }
      }

      .read {
        font-family: var(--font-min);
        font-weight: 500;
        /* 16px-30px:375px-1920px */
        font-size: clamp(1rem, 0.788rem + 0.91vw, 1.875rem);
        line-height: 2;
        margin: 0 0 2.6vw;

        @media (max-width: 767px) {
          margin-bottom: 16vw;
        }
      }

      .mv_case_list {
        list-style: none;
        margin: 0 0 2.6vw;
        padding: 0;
        display: flex;
        gap: 9px;

        @media (max-width: 767px) {
          margin-bottom: 10.67vw;
          gap: 4px;
        }

        .mv_case_item {
          max-width: 186px;
          width: 14vw;
          aspect-ratio: 1;
          margin: 0;

          @media (max-width: 767px) {
            width: 22.4vw;
          }

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
          }

          &.btn {
            a {
              display: flex;
              align-items: center;
              justify-content: center;
              background-color: #fff;
              border: 1px #9D7947 solid;
              aspect-ratio: 1;
              font-family: var(--font-min);
              font-weight: 500;
              /* 14px-25px:375px-1920px */
              font-size: clamp(0.875rem, 0.708rem + 0.71vw, 1.563rem);
              text-align: center;
              line-height: 1.5;
              color: #9D7947;
              position: relative;

              @media (max-width: 767px) {
                line-height: 1.2;
              }

              &::after {
                content: "";
                position: absolute;
                left: 50%;
                bottom: 2vw;
                transform: translateX(-50%);
                display: block;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_933' data-name='グループ 933' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
                background-repeat: no-repeat;
                background-size: contain;
                width: 16px;
                height: 13px;
                transition: ease-in .2s;
              }

              @media (max-width: 767px) {
                &::after {
                  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.924' height='6.749' viewBox='0 0 7.924 6.749'%3E%3Cg id='グループ_933' data-name='グループ 933' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l3.021,2.945-3.021,3.1' transform='translate(-7805.805 -930)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='7.25' transform='translate(0 3.055)' fill='none' stroke='%239d7947' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
                  width: 8px;
                  height: 7px;
                  bottom: 3.52vw;
                }
              }

              &:hover {
                opacity: 0.7;

                &::after {
                  left: 52%;
                }
              }
            }
          }

          &:nth-child(3) {
            @media (max-width: 767px) {
              display: none;
            }
          }
        }
      }
    }

    .btn_counseling {
      @media (max-width: 767px) {
        width: 90%;
        margin: 0 auto;
      }

      a {
        display: flex;
        justify-content: center;
        padding: 10px 0;
        max-width: 500px;
        width: 50vw;
        background: linear-gradient(0deg, rgba(199, 172, 134, 1) 0%, rgba(157, 121, 71, 1) 100%);
        font-family: var(--font-min);
        font-weight: 500;
        /* 20px-30px:375px-1920px */
        font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
        color: #fff;
        position: relative;
        border-radius: 100px;

        @media (max-width: 767px) {
          width: 100%;
        }

        &::after {
          content: "";
          position: absolute;
          top: 50%;
          right: 30px;
          transform: translateY(-50%);
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_532' data-name='グループ 532' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
          background-repeat: no-repeat;
          background-size: contain;
          width: 16px;
          height: 13px;
          transition: ease-in .2s;
        }

        @media (max-width: 767px) {
          &::after {
            width: 12px;
            height: 10px;
            right: 20px;
          }
        }

        &:hover {
          filter: brightness(1.10);

          &::after {
            right: 25px;
          }
        }
      }
    }
  }

  .breadcrumb {
    position: relative;

    .seo_h1 {
      position: absolute;
      top: 20px;
      right: 20px;
      font-family: var(--font-min);
      font-weight: 500;
      /* 10px-18px:375px-1920px */
      font-size: clamp(0.625rem, 0.504rem + 0.52vw, 1.125rem);
      color: #9D7947;
      margin: 0;

      @media (max-width: 767px) {
        text-align: right;
      }
    }
  }

  .menu_about {
    border-bottom: 1px #9D7947 solid;
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    margin-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .read {
      /* 40px-60px:375px-1920px */
      margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

      strong {
        color: #DB6B7C;
        font-weight: 600;
      }
    }

    .artmake_about_swiper_area {
      max-width: 1513px;
      width: 90%;
      margin: auto;

      @media (max-width: 767px) {
        width: 100%;
      }

      .artmake_about_swiper {
        .swiper-wrapper {
          .swiper-slide {
            .img {
              overflow: hidden;
              border-radius: 500px 500px 0 0;
            }

            .txt {
              text-align: center;

              strong {
                color: #9D7947;
                font-weight: 600;
              }
            }
          }
        }
      }

      .swiper_navigation_area {
        display: none;
        width: 80%;
        margin: auto;

        @media (max-width: 767px) {
          display: block;
        }
      }
    }
  }

  .artmake_features {
    /* 60px-120px:375px-1920px; */
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .artmake_features_list {
      list-style: none;
      margin: 0;
      padding: 0;

      .artmake_features_item {
        display: grid;
        grid-template-rows: auto 1fr;
        column-gap: 60px;
        max-width: calc(((100% - 1200px) / 2) + 1200px);
        width: 95%;

        @media (max-width: 767px) {
          display: flex;
          flex-direction: column;
          width: 90%;
          margin: auto;
        }

        .img {
          grid-column: 1;
          grid-row: 1 / 3;
          position: relative;

          @media (max-width: 767px) {
            margin-bottom: 50px;
          }

          img {
            border-radius: 0 100px 0 0;

            @media (max-width: 767px) {
              border-radius: 0 50px 0 0;
            }
          }

          span {
            position: absolute;
            z-index: -1;
            font-family: var(--font-en);
            /* 47px-100px:375px-1920px; */
            font-size: clamp(2.938rem, 2.133rem + 3.43vw, 6.25rem);
            color: rgba(219, 201, 204, 0.4);
            margin-top: -50px;
            display: block;
            width: 100%;

            @media (max-width: 767px) {
              margin-top: -25px;
            }
          }
        }

        .ttl {
          grid-column: 2;
          grid-row: 1;
          font-family: var(--font-min);
          font-weight: 500;
          /* 22px-40px:375px-1920px; */
          font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
          color: #9D7947;
          border-bottom: 1px #9D7947 solid;
          margin: 40px 0 30px;
          padding: 0 0 10px;

          @media (max-width: 767px) {
            margin-top: 0;
          }
        }

        .txt {
          grid-column: 2;
          grid-row: 2;
          /* 18px-20px:375px-1920px */
          font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
          line-height: 2;
          margin: 0;
        }

        &:nth-child(even) {
          margin-left: auto;

          .img {
            grid-column: 2;

            img {
              border-radius: 100px 0 0 0;

              @media (max-width: 767px) {
                border-radius: 50px 0 0 0;
              }
            }

            span {
              text-align: right;
            }
          }

          .ttl {
            grid-column: 1
          }

          .txt {
            grid-column: 1
          }
        }

        &+.artmake_features_item {
          /* 60px-120px:375px-1920px; */
          margin-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
        }
      }
    }
  }

  .artmake_menu {
    background-color: #F7F4F0;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .en_bg_ttl {
      .en {
        color: #fff;
      }
    }

    .artmake_menu_intro {
      /* 60px-120px:375px-1920px; */
      margin-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

      .read {
        font-family: var(--font-min);
        /* 18px-25px:375px-1920px */
        font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
        text-align: center;
        /* 40px-60px:375px-1920px */
        margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

        @media (max-width: 767px) {
          text-align: left;
        }
      }

      .menu_list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 40px;

        @media (max-width: 767px) {
          gap: 30px;
        }

        .menu_item {
          width: calc((100% - 40px) / 2);

          @media (max-width: 767px) {
            width: 100%;
          }

          a {
            display: block;
            border: 1px #9D7947 solid;

            .block_top {
              display: grid;
              grid-template-columns: 200px 1fr;
              align-items: center;
              background: url("../img/greeting_bg.webp") top center / cover no-repeat;
              border-bottom: 1px #9D7947 solid;

              @media (max-width: 767px) {
                grid-template-columns: 120px 1fr;
              }

              .img {
                grid-column: 1;
                grid-row: 1 / 3;
                width: 200px;
                height: 100%;

                @media (max-width: 767px) {
                  width: 120px;
                  aspect-ratio: 24 / 29;
                }

                img {
                  width: 100%;
                  height: 100%;
                  object-fit: cover;
                }
              }

              .ttl {
                grid-column: 2;
                grid-row: 1;
                font-family: var(--font-min);
                font-weight: 500;
                /* 22px-30px:375px-1920px; */
                font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
                margin: auto 20px 0;

                @media (max-width: 767px) {
                  margin: auto 18px 0;
                }
              }

              .txt {
                grid-column: 2;
                grid-row: 2;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                color: #9D7947;
                padding-top: 10px;
                position: relative;
                margin: 10px 20px auto;

                @media (max-width: 767px) {
                  margin: 10px 18px auto;
                }

                &::after {
                  content: "";
                  position: absolute;
                  top: 0;
                  right: 0;
                  display: block;
                  width: 100%;
                  height: 3px;
                  /* ドット全体の高さ */
                  background-image: radial-gradient(circle, #9D7947 1px, transparent 1px);
                  background-size: 6px 3px;
                  /* ドットの横間隔と縦サイズ */
                  background-repeat: repeat-x;
                }
              }

              &:not(:has(.txt)) {
                .ttl {
                  grid-row: 1 / 3;
                  margin-top: inherit;
                }
              }
            }

            .block_bottom {
              background-color: #fff;
              padding: 30px;

              @media (max-width: 767px) {
                padding: 20px;
              }

              .description {
                margin: 0;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                line-height: 2;
              }

              .btn {
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                color: #9D7947;
                display: flex;
                align-items: center;
                justify-content: flex-end;
                margin-top: 20px;

                &:after {
                  content: "";
                  /* 22px-30px:375px-1920px; */
                  width: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
                  height: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
                  background: url("../img/arrow_circle_gray.svg") center center / contain no-repeat;
                  margin: 0 5px 0 10px;
                  transition: ease-in .2s;
                }
              }
            }

            &:hover {
              opacity: 0.7;

              .block_bottom {
                .btn {
                  &::after {
                    margin: 0 0 0 15px;
                  }
                }
              }
            }
          }
        }
      }
    }

    .menu_box {
      background-color: #fff;
      max-width: 1860px;
      width: 95%;
      margin: auto;
      position: relative;
      overflow: hidden;

      @media (max-width: 767px) {
        width: 90%;
      }

      .head_en {
        position: absolute;
        top: -15px;
        left: -12px;
        font-family: var(--font-en);
        font-size: 120px;
        line-height: 1;
        color: rgba(219, 201, 204, 0.24);
        margin: 0;

        @media (max-width: 767px) {
          font-size: 45px;
          top: -5px;
          left: -4px;
        }
      }

      .inner {
        position: relative;
        z-index: 2;
        max-width: 980px;
        width: 90%;
        margin: auto;
        /* 40px-80px:375px-1920px */
        padding-top: clamp(2.5rem, 1.893rem + 2.59vw, 5rem);
        padding-bottom: clamp(2.5rem, 1.893rem + 2.59vw, 5rem);

        .about {
          display: grid;
          grid-template-columns: 400px 1fr;
          grid-template-rows: auto auto 1fr;
          column-gap: 40px;

          @media (max-width: 767px) {
            display: flex;
            flex-direction: column;
          }

          .img {
            grid-column: 1;
            grid-row: 1 / 4;

            @media (max-width: 767px) {
              width: 70%;
              margin: 0 auto 30px;
            }
          }

          .ttl {
            grid-column: 2;
            grid-row: 1;
            font-family: var(--font-min);
            font-weight: 600;
            /* 22px-40px:375px-1920px */
            font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
            color: #9D7947;
            /* 30px-40px:375px-1920px */
            margin: 0 0 clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
            border-bottom: 1px #9D7947 solid;

            .sub_ttl {
              display: block;
              font-weight: normal;
              /* 18px-20px:375px-1920px */
              font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
              color: #9D7947;
              margin: 15px 0 0;
              padding: 6px 0;
              border-top: 1px #9D7947 solid;
            }

            &:not(:has(.sub_ttl)) {
              padding-bottom: 15px;
            }
          }

          .txt {
            grid-column: 2;
            grid-row: 3;
            /* 18px-20px:375px-1920px */
            font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
            margin: 0;

            small {
              display: block;
              /* 16px-18px:375px-1920px */
              font-size: clamp(1rem, 0.97rem + 0.13vw, 1.125rem);
              margin-top: 20px;
            }
          }
        }

        .recommend_box {
          position: relative;
          max-width: 800px;
          width: 100%;
          /* 40px-50px:375px-1920px */
          margin: 65px auto clamp(2.5rem, 2.348rem + 0.65vw, 3.125rem);
          /* 20px-40px:375px-1920px */
          padding: 0 clamp(1.25rem, 0.947rem + 1.29vw, 2.5rem);
          border: 1px #9D7947 solid;

          .recommend_ttl {
            font-family: var(--font-min);
            font-weight: 600;
            /* 22px-30px:375px-1920px; */
            font-size: clamp(1.375rem, 1.254rem + 0.52vw, 1.875rem);
            color: #9D7947;
            width: fit-content;
            margin: -22px auto 0;
            padding: 0 20px;
            background-color: #fff;
          }

          .list_check {
            margin: 20px 0 30px;
            display: flex;
            flex-direction: column;
            gap: 20px;

            &>li {
              &+li {
                margin-top: initial;
              }
            }

            &.column2 {
              flex-direction: row;
              flex-wrap: wrap;

              &>li {
                width: calc((100% - 20px) / 2);

                @media (max-width: 767px) {
                  width: 100%;
                }
              }
            }
          }
        }

        .artmake_menu_accordion {
          /* 40px-60px:375px-1920px */
          margin-bottom: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);

          .accordion_list {
            display: none;
            list-style: none;
            margin: 0;
            padding: 0;

            .accordion_item {
              display: grid;
              grid-template-columns: 1fr 300px;
              column-gap: 30px;

              @media (max-width: 767px) {
                display: flex;
                flex-direction: column;
              }

              .ttl {
                grid-column: 1 / 3;
                grid-row: 1;
                font-family: var(--font-min);
                font-weight: 500;
                /* 20px-30px:375px-1920px */
                font-size: clamp(1.25rem, 1.098rem + 0.65vw, 1.875rem);
                color: #9D7947;
                border-bottom: 1px #9D7947 solid;
                margin: 0 0 30px;
                padding-bottom: 20px;
              }

              .img {
                grid-column: 2;
                grid-row: 2;

                @media (max-width: 767px) {
                  width: 70%;
                  margin: 0 auto 30px;
                }
              }

              .txt {
                grid-column: 1;
                grid-row: 2;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                line-height: 2;
                margin: 0;
              }

              &+.accordion_item {
                /* 40px-60px:375px-1920px */
                margin-top: clamp(2.5rem, 2.197rem + 1.29vw, 3.75rem);
              }
            }
          }

          .btn_more {
            a {
              &::after {
                transform: translateY(-50%) rotate(90deg);
              }

              &:hover {
                &::after {
                  right: 30px;
                  top: 55%;
                }
              }
            }
          }

          .btn_close {
            /* 30px-40px:375px-1920px */
            margin-top: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
            display: none;

            a {
              font-family: var(--font-min);
              font-weight: 500;
              font-size: 20px;
              display: flex;
              justify-content: flex-end;
              align-items: center;

              &::after {
                content: "";
                display: inline-block;
                background: url("../img/arrow_circle_brown.svg") center center / contain no-repeat;
                width: 20px;
                height: 20px;
                transform: rotate(-90deg);
                transition: ease-in .2s;
              }

              &:hover {
                opacity: 0.7;

                &::after {
                  transform: rotate(-90deg) translateX(3px);
                }
              }
            }
          }

          &.show {
            .btn_more {
              display: none;
            }

            .btn_close {
              display: block
            }
          }
        }

        .info_table {
          width: 100%;

          tbody {
            tr {
              th {
                background-color: #EBE2D6;
                font-weight: 500;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                color: #9D7947;
                padding: 20px;
                width: 182px;

                @media (max-width: 767px) {
                  display: block;
                  width: 100%;
                  padding: 15px;
                }
              }

              td {
                background-color: #F8F6F2;
                /* 18px-20px:375px-1920px */
                font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
                padding: 20px;

                @media (max-width: 767px) {
                  display: block;
                  width: 100%;
                  padding: 15px;
                }

                .underline {
                  text-decoration: underline;
                }
              }

              &:nth-child(even) {
                th {
                  background-color: #F4EDE4;
                }

                td {
                  background-color: #FDFBF8;
                }
              }
            }
          }
        }
      }

      &.menu_box {
        /* 60px-80px:375px-1920px */
        margin-top: clamp(3.75rem, 3.447rem + 1.29vw, 5rem);
      }
    }
  }

  .artmake_artist {
    background: url("../img/menu/menu_features_bg.webp") top center / cover no-repeat;
    /* 60px-120px:375px-1920px; */
    padding-top: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);
    padding-bottom: clamp(3.75rem, 2.84rem + 3.88vw, 7.5rem);

    .en_bg_ttl {
      .en {
        color: #fff;
      }
    }

    .message_box {
      max-width: 1200px;
      width: 90%;
      margin: auto;
      padding: 80px;
      background-color: #fff;
      display: grid;
      grid-template-columns: 380px 1fr;
      grid-template-rows: auto 1fr;
      column-gap: 40px;

      @media (max-width: 767px) {
        display: flex;
        flex-direction: column;
        padding: 40px 5%;
      }

      .img {
        grid-column: 1;
        grid-row: 1;

        @media (max-width: 767px) {
          max-width: 300px;
          width: 80%;
          margin: auto;
        }

        img {
          border-radius: 200px 200px 0 0;
        }
      }

      .name_area {
        grid-column: 1;
        grid-row: 2;

        @media (max-width: 767px) {
          margin-bottom: 30px;
        }

        .position {
          font-family: var(--font-min);
          font-weight: 500;
          /* 18px-25px:375px-1920px */
          font-size: clamp(1.125rem, 1.019rem + 0.45vw, 1.563rem);
          text-align: center;
          margin: 20px 0 0;
        }

        .name {
          font-family: var(--font-en);
          /* 30px-40px:375px-1920px */
          font-size: clamp(1.875rem, 1.723rem + 0.65vw, 2.5rem);
          color: #9D7947;
          line-height: 1;
          margin: 5px 0 0;
          display: flex;
          gap: 10px;
          align-items: center;
          justify-content: center;

          .instagram {
            &:hover {
              opacity: 0.7;
            }
          }
        }
      }

      .message {
        grid-column: 2;
        grid-row: 1 / 3;
        /* 18px-20px:375px-1920px */
        font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
        line-height: 2;
        letter-spacing: 0.02em;
        margin: 0;
      }
    }

    .career_box {
      margin: 40px auto 0;

      .inner:nth-child(2) {
        .scroll {
          @media (max-width: 767px) {
            height: auto;
            overflow: auto;
          }
        }
      }
    }

    .certification {
      max-width: 1200px;
      width: 90%;
      margin: 40px auto 0;

      @media (max-width: 767px) {
        overflow-x: scroll;
      }

      .certification_list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        gap: 20px;

        @media (max-width: 767px) {
          width: 670px;
          overflow-x: scroll;
        }

        .certification_item {
          width: calc((100% - 40px) / 3);
        }
      }
    }
  }

  .btn_counseling_fixed {
    position: fixed;
    right: -100px;
    bottom: 20px;
    z-index: 10;
    transition: right 0.4s ease;

    @media (max-width: 767px) {
      right: inherit;
      bottom: 0;
      width: 100%;
    }

    a {
      position: relative;
      display: flex;
      background: linear-gradient(0deg, rgba(199, 172, 134, 1) 0%, rgba(157, 121, 71, 1) 100%);
      color: #fff;
      font-family: var(--font-min);
      font-weight: 500;
      /* 22px-25px:375px-1920px; */
      font-size: clamp(1.375rem, 1.329rem + 0.19vw, 1.563rem);
      writing-mode: vertical-rl;
      letter-spacing: 0.05em;
      padding: 30px 20px 50px;
      border-radius: 10px 0 0 10px;

      @media (max-width: 767px) {
        writing-mode: inherit;
        letter-spacing: 0;
        border-radius: 0;
        padding: 17px 0 18px;
        justify-content: center;
      }

      &::after {
        content: "";
        position: absolute;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.633' height='14.041' viewBox='0 0 16.633 14.041'%3E%3Cg id='グループ_1531' data-name='グループ 1531' transform='translate(0 0.358)'%3E%3Cg id='グループ_19' data-name='グループ 19'%3E%3Cpath id='パス_16' data-name='パス 16' d='M7810,930l6.667,6.5L7810,943.333' transform='translate(-7800.742 -930)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline id='線_13' data-name='線 13' x1='16' transform='translate(0 6.741)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
        background-repeat: no-repeat;
        background-size: contain;
        width: 16px;
        height: 13px;
        transition: ease-in .2s;
      }

      @media (max-width: 767px) {
        &::after {
          display: none;
        }
      }

      &:hover {
        filter: brightness(1.10);

        &::after {
          left: 55%;
        }
      }
    }

    &.active {
      right: 0;
    }
  }

  .menu_guidelines {
    background-color: #FAFAFA;
  }
}

.calendar_area {
  /* 60px-80px:375px-1920px */
  margin-top: clamp(3.75rem, 3.447rem + 1.29vw, 5rem);

  .sec_ttl {
    font-family: var(--font-min);
    font-weight: 500;
    /* 22px-40px:375px-1920px; */
    font-size: clamp(1.375rem, 1.102rem + 1.17vw, 2.5rem);
    display: flex;
    justify-content: center;
    align-items: center;
    /* 15px-30px:375px-1920px; */
    gap: clamp(0.938rem, 0.71rem + 0.97vw, 1.875rem);

    &::before,
    &::after {
      content: "";
      display: inline-block;
      border-bottom: 1px #9D7947 solid;
      /* 20px-50px:375px-1920px; */
      width: clamp(1.25rem, 0.795rem + 1.94vw, 3.125rem);
      height: 1px;
    }
  }

  .notes {
    /* 10px-20px:375px-1920px; */
    margin: clamp(0.625rem, 0.473rem + 0.65vw, 1.25rem) 0 0;
    /* 14px-20px:375px-1920px; */
    font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
    text-align: right;

    span {
      color: #C9B292;
    }
  }

  .month_wrap {
    display: flex;
    gap: 50px;

    @media (max-width: 767px) {
      flex-direction: column;
      gap: 30px;
    }

    * {
      font-family: var(--font-min);
      font-weight: 500;
    }
  }

  .fc {
    background-color: #fff;
    border: 1px #9D7947 solid;
  }

  .fc .fc-toolbar.fc-header-toolbar {
    margin: 0;
    padding: 10px;
    border-bottom: 1px #9D7947 solid;

    @media (max-width: 767px) {
      padding: 5px;
    }

    .fc-toolbar-title {
      /* 20px-25px:375px-1920px */
      font-size: clamp(1.25rem, 1.174rem + 0.32vw, 1.563rem);
      color: #9D7947;
    }
  }

  .fc .fc-view-harness {
    /* 30px-45px:375px-1920px */
    padding: 0 clamp(1.875rem, 1.647rem + 0.97vw, 2.813rem);
  }

  .fc-theme-standard td,
  .fc-theme-standard th {
    border: none;
    /* 18px-20px:375px-1920px */
    font-size: clamp(1.125rem, 1.095rem + 0.13vw, 1.25rem);
  }

  .fc-theme-standard .fc-scrollgrid {
    border: none;
  }

  .fc .fc-col-header-cell-cushion {
    padding: 10px 4px 2px;
  }

  .fc-h-event {
    border: none !important;
    background: none !important;
  }

  .fc-h-event .fc-event-main {
    color: #C9B292 !important;
    text-align: center;
  }

  .fc .fc-daygrid-day-top {
    justify-content: center;
  }

  .fc-col-header-cell-cushion {
    color: #9D7947;
  }

  .fc-day-sun .fc-col-header-cell-cushion,
  .fc-day-sun .fc-daygrid-day-number {
    color: #DB6B7C;
  }

  .fc-scrollgrid-sync-table tr {
    border-bottom: 1px #C9B292 solid;
  }

  .fc .fc-daygrid-body-natural .fc-daygrid-day-events {
    margin-bottom: 0;
  }

  .fc .fc-daygrid-day-number {
    padding-top: 10px;
    padding-bottom: 0;

    @media (max-width: 767px) {
      padding-top: 2px;
    }
  }

  .fc .fc-daygrid-day.fc-day-today {
    background: none;
  }

  .fc-daygrid-block-event .fc-event-time,
  .fc-daygrid-block-event .fc-event-title {
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1;
  }

  .fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    min-height: 1.9em;

    @media (max-width: 767px) {
      min-height: 1.6em;
    }
  }

  .fc .fc-daygrid-day-events {
    @media (max-width: 767px) {
      margin-top: 0;
    }
  }

  .fc .fc-day-other .fc-daygrid-day-top,
  .fc .fc-day-other .fc-daygrid-day-events {
    display: none;
  }

  .fc-daygrid-event {
    pointer-events: none;
    cursor: default;
    color: inherit;
    /* optional: 見た目調整 */
  }
}