@charset "UTF-8";
@import url(component.css?251205);
/* -------------------------------------
カラー
------------------------------------- */
:root {
  --leading-trim: calc((1em - 1lh) / 2);
}

@supports not (top: 1lh) {
  :root {
    --leading-trim: 0px;
  }
}
:is(p, h1, h2, h3, h4, h5, h6, figcaption) {
  margin-block: var(--leading-trim);
}

html {
  font-size: 2.6666666667vw;
  /* = (10 / 375) * 100) SPデザインが375の場合 */
}

@media screen and (min-width: 769px) {
  html {
    font-size: 0.6944444444vw;
    /* = (10 / 1440) * 100) デザインが1440pxの場合 */
  }
}
@media screen and (min-width: 1200px) {
  html {
    font-size: 10px;
  }
}
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #463635;
  background-color: #fff;
  font-weight: 500;
  font-size: 1.6rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}

.font-en {
  font-family: "Nunito", sans-serif;
}

.font-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
}

.font-body {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.l-mainInner {
  width: min(110.5rem, 100%);
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .l-mainInner {
    width: 112rem;
  }
}
@media screen and (max-width: 768px) {
  .l-mainInner {
    width: 33.5rem;
    padding-inline: 0;
  }
}

.l-mainInner_lg {
  width: min(136rem, 100%);
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .l-mainInner_lg {
    width: 112rem;
  }
}
@media screen and (max-width: 768px) {
  .l-mainInner_lg {
    width: 33.5rem;
    padding-inline: 0;
  }
}

.l-singleInner {
  width: min(93.5rem, 100%);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .l-singleInner {
    width: 33.5rem;
    padding-inline: 0;
  }
}

.font-bold {
  font-weight: 700;
}

.color-g60 {
  color: #9C6666;
}

.l-bg-grob5 {
  background-color: #FAF6F6;
}

.pc-only {
  display: block;
}
@media screen and (max-width: 1024px) {
  .pc-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp-only {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .tb-none {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .tb-none {
    display: block;
  }
}

.all-none {
  display: none !important;
}

.no-scroll {
  overflow: hidden;
  height: 100vh;
}

/* -------------------------------------
ヘッダー
------------------------------------- */
#pageHeader {
  overflow-x: clip;
  width: 100%;
}

.l-overlay {
  opacity: 0;
  pointer-events: none;
  transition: 1s ease;
}

.l-head {
  background-color: #F5F3EE;
  padding-bottom: 36rem;
}

/* アクセス */
.l-head_access {
  display: flex;
  align-items: center;
  position: absolute;
  top: 3.7rem;
  left: 0;
  translate: -1.2rem 0;
}
@media screen and (max-width: 768px) {
  .l-head_access {
    top: 1.7rem;
  }
}

.l-head_access_icon {
  rotate: 30deg;
}
@media screen and (max-width: 1200px) {
  .l-head_access_icon svg {
    width: 3.6rem;
    height: 3.7rem;
  }
}
@media screen and (max-width: 768px) {
  .l-head_access_icon {
    width: 3.157rem;
    height: 3.231rem;
  }
}

.l-head_access_text_box {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  display: inline-block;
  margin-left: 1.7rem;
  margin-bottom: 1.6rem;
  border-radius: 9999px;
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .l-head_access_text_box {
    margin-left: 0.9rem;
    margin-bottom: -0.4rem;
  }
}
.l-head_access_text_box svg {
  position: absolute;
  z-index: -1;
}
@media screen and (max-width: 1200px) {
  .l-head_access_text_box svg {
    width: 21.7rem;
    height: 4.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-head_access_text_box svg {
    width: 17.4rem;
    height: 3.2rem;
  }
}

/* 電話番号 */
.l-head_tel {
  position: absolute;
  right: 3.7rem;
  top: 3.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media screen and (max-width: 768px) {
  .l-head_tel {
    display: none;
  }
}

.l-head_tel-btn {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.l-head_tel-icon {
  width: 2.8rem;
  aspect-ratio: 1/1;
  clip-path: url(#curved-box);
  background-color: #fff;
  display: grid;
  place-content: center;
}
.l-head_tel-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}

.l-head_tel-num {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.02em;
}

.l-head_tel-dayoff {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.03em;
  color: #5D5150;
  text-align: center;
}

.l-head_access_text {
  margin-block: var(--leading-trim);
  padding-top: 1rem;
  margin-left: 2rem;
  position: relative;
  left: 50%;
  translate: -50% 0;
}
@media screen and (max-width: 768px) {
  .l-head_access_text {
    font-size: 1.3rem;
    line-height: 1.3;
    letter-spacing: 0.03em;
  }
}

.l-head_title {
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  translate: -0.6rem 0;
  padding-top: 7.1rem;
}
@media screen and (max-width: 768px) {
  .l-head_title {
    translate: -0.5rem 0;
    padding-top: 10.8rem;
    gap: 1rem;
  }
}

.l-head_logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 1200px) {
  .l-head_logo {
    width: 31.3rem;
  }
}
@media screen and (max-width: 768px) {
  .l-head_logo {
    width: 24.814rem;
    height: 5.4rem;
  }
}

.l-head_instagram {
  width: 4rem;
}

.l-head_nav {
  margin-top: 3.1rem;
  margin-right: 1.5rem;
  display: flex;
  align-self: center;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .l-head_nav {
    display: none;
  }
}
.l-gnav_instagram {
  padding-left: 2.1rem;
  margin: auto 0;
  translate: 0rem 0.2rem;
}
.l-gnav_instagram a {
  transition: 0.3s;
}
@media (hover: hover) {
  .l-gnav_instagram a:hover {
    opacity: 0.7;
    transition: 0.3s;
  }
}

.l-gnav_instagram_icon {
  width: 1.7rem;
  aspect-ratio: 1/1;
}
.l-gnav_instagram_icon svg {
  width: 100%;
  height: 100%;
  display: block;
  color: #463635;
}

.l-gnav {
  height: 100%;
}

.l-gnav_list {
  height: 100%;
  display: flex;
  justify-content: center;
}
.l-gnav_list .l-gnav_item {
  position: relative;
  display: flex;
  transition: 0.3s;
}
.l-gnav_list .l-gnav_item::after {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%222%22%20height%3D%2212%22%20viewBox%3D%220%200%202%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%221%22%20cy%3D%221%22%20r%3D%221%22%20fill%3D%22%23BC8F8F%22%2F%3E%3Ccircle%20cx%3D%221%22%20cy%3D%226%22%20r%3D%221%22%20fill%3D%22%23BC8F8F%22%2F%3E%3Ccircle%20cx%3D%221%22%20cy%3D%2211%22%20r%3D%221%22%20fill%3D%22%23BC8F8F%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.l-gnav_list .l-gnav_item:last-of-type {
  border-right: none;
}
.l-gnav_list .l-gnav_item > a {
  height: 100%;
  display: grid;
  padding-inline: 1.6rem 1.5rem;
  place-content: center;
  color: #463635;
  letter-spacing: 0.03em;
  font-family: "Zen Maru Gothic", sans-serif;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-gnav_list .l-gnav_item > a:hover {
    opacity: 0.7;
    transition: 0.3s;
  }
}
@media (hover: hover) {
  .l-gnav_list .l-gnav_item:hover .l-gnav_sub_box {
    opacity: 1;
    pointer-events: auto;
    transition: 0.3s;
  }
}
.l-gnav_list .l-gnav_item.--has-sub > a {
  padding-inline: 1.6rem 3.6rem;
  position: relative;
  gap: 0.2rem;
}
.l-gnav_list .l-gnav_item.--has-sub > a::after, .l-gnav_list .l-gnav_item.--has-sub > a::before {
  content: "";
  display: block;
  width: 1rem;
  height: 0.12rem;
  right: 2rem;
  position: absolute;
  top: 60%;
  translate: 0 -50%;
  background-color: #463635;
  border-radius: 9999px;
}
.l-gnav_list .l-gnav_item.--has-sub > a::after {
  rotate: 90deg;
}

.l-gnav_sub_box {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  left: 50%;
  bottom: 0;
  translate: -50% 100%;
  z-index: 100;
  width: 30rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  transition: 0.3s;
}

.l-gnav_sub_list {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: 2rem;
  padding: 1.4rem 2.4rem;
  border-radius: 1.5rem;
  background-color: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  position: relative;
  /* 白三角形 */
}
.l-gnav_sub_list .l-gnav_sub_item:last-of-type a {
  background-image: none;
}
.l-gnav_sub_list .l-gnav_sub_item a {
  margin-block: var(--leading-trim);
  width: 100%;
  display: flex;
  align-items: center;
  padding: 1.4rem 0.3rem 1.8rem;
  background-image: radial-gradient(#5D5150 1px, transparent 1px);
  background-size: 7.3px 7.3px;
  background-position: left bottom;
  background-repeat: repeat-x;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #5D5150;
  transition: 0.3s;
}
.l-gnav_sub_list .l-gnav_sub_item a::before {
  margin-right: 1.1rem;
  margin-top: 0.2rem;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-gnav_sub_list .l-gnav_sub_item a:hover {
    color: #6D4747;
    transition: 0.3s;
  }
  .l-gnav_sub_list .l-gnav_sub_item a:hover::before {
    translate: 0.5rem 0;
    transition: 0.3s;
  }
}
.l-gnav_sub_list .l-gnav_sub_item a.c-arrow_mini::before {
  height: 0.729rem;
}
.l-gnav_sub_list::before {
  content: "";
  width: 1.9rem;
  height: 1.4rem;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -100%;
  background-color: inherit;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

/* -------------------------------------
下層ページ用ヘッダー
------------------------------------- */
.l-head_child {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 11.8rem;
  background-color: #F5F3EE;
  position: relative;
}
.l-head_child .l-head_title {
  width: 22.057rem;
  margin: unset;
  padding-top: unset;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -52% -42%;
}
@media screen and (max-width: 768px) {
  .l-head_child .l-head_title {
    position: static;
    translate: unset;
    margin: 0 auto;
  }
}

.l-head_child_inner {
  display: flex;
  flex-direction: column-reverse;
  padding-top: 3rem;
}

/* -------------------------------------
画面下部の追従メニュー
------------------------------------- */
.l-follow {
  position: fixed;
  bottom: 1.3rem;
  left: 50%;
  translate: -50% 0;
  z-index: 200;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .l-follow {
    scale: 1;
    bottom: 0;
    left: 0;
    translate: 0 0;
    display: flex;
    flex-direction: column;
  }
  .l-follow.l-mainInner_lg {
    width: 100%;
  }
}

/* ニュース */
.l-follow_left {
  pointer-events: auto;
}
@media screen and (max-width: 768px) {
  .l-follow_left {
    height: 4rem;
  }
}

.l-follow_news {
  width: 40rem;
  height: 4.8rem;
  border-radius: 10rem;
  background-color: #6D4747;
  display: flex;
  justify-content: space-between;
  overflow-y: hidden;
}
@media screen and (max-width: 1024px) {
  .l-follow_news {
    width: 100%;
    height: 9.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news {
    width: 100%;
    height: 4.8rem;
    border-radius: 0;
    background-color: #fff;
    height: 4rem;
    border-top: 1px solid #F4ECEC;
    border-bottom: 1px solid #F4ECEC;
  }
}

.l-follow_news-list {
  position: relative;
  min-height: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list {
    width: 50rem;
    min-height: 9.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list {
    width: auto;
    min-height: 4rem;
  }
}
.l-follow_news-list li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4.8rem;
  padding-inline: 2rem 0;
  opacity: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease, -webkit-transform 0.5s ease;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list li {
    min-height: 9.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list li {
    min-height: 4rem;
    height: 100%;
  }
}
.l-follow_news-list li.active {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  z-index: 2;
}
.l-follow_news-list li a {
  width: 35rem;
  height: 100%;
  display: flex;
  align-items: center;
  color: #fff;
  overflow: hidden;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list li a {
    width: 50rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list li a {
    width: 32rem;
    color: #463635;
  }
}
.l-follow_news-list li a .c-news-date {
  font-size: 1.2rem;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list li a .c-news-date {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list li a .c-news-date {
    font-size: 1rem;
  }
}
.l-follow_news-list li a .c-news-cate {
  font-size: 1.2rem;
  margin-left: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff;
  border-color: #fff;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list li a .c-news-cate {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list li a .c-news-cate {
    color: #9C6666;
    border-color: #9C6666;
    margin-left: 1.2rem;
    font-size: 1rem;
    padding: 0.3rem 0.5rem;
    min-width: -webkit-fit-content;
    min-width: -moz-fit-content;
    min-width: fit-content;
  }
}
.l-follow_news-list li a .c-news-title {
  font-size: 1.4rem;
  margin-left: 1.5rem;
  transition: 0.3s;
  border-bottom: 1px solid transparent;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-list li a .c-news-title {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-list li a .c-news-title {
    font-size: 1.3rem;
    margin-left: 1rem;
  }
}
@media (hover: hover) {
  .l-follow_news-list li a:hover .c-news-title {
    border-bottom: 1px solid #fff;
    transition: 0.3s;
  }
}

.l-follow_news-dots {
  width: 0.4rem;
  display: flex;
  flex-direction: column;
  margin: auto 1.6rem auto 0;
  row-gap: 0.4rem;
}
.l-follow_news-dots span {
  display: block;
  width: 0.3rem;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 9999px;
  opacity: 0.2;
}
@media screen and (max-width: 1024px) {
  .l-follow_news-dots span {
    width: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_news-dots span {
    width: 0.3rem;
    background-color: #BC8F8F;
  }
}
.l-follow_news-dots span.active {
  opacity: 1;
}

.l-follow_right {
  display: flex;
  gap: 1rem;
  pointer-events: auto;
  height: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .l-follow_right {
    height: 9.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_right {
    height: 4.8rem;
    gap: 0;
  }
}

/* -------------------------------------
その他ヘッダーコンテンツ
------------------------------------- */
.l-head_action {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.l-head_action .l-head_action_tel {
  width: 13.5rem;
  height: 4.4rem;
  display: grid;
  place-content: center;
  color: #fff;
  font-weight: 300;
  font-size: 1.4rem;
  line-height: 1.7;
  background-color: #60605f;
  border-radius: 0.5rem;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-head_action .l-head_action_tel:hover {
    background-color: #F5F0E1;
    color: #2A2A2A;
    transition: 0.3s;
  }
}
@media screen and (max-width: 1024px) {
  .l-head_action {
    display: none;
  }
}

.l-head_action_web {
  width: 12.6rem;
  height: 4.4rem;
  cursor: pointer;
}
.l-head_action_web .c-btn {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.3;
  padding: 0.5rem 0.5rem 0.5rem 1rem;
}
.l-head_action_web .c-btn_iconBox {
  width: 2.6rem;
  height: 3.5rem;
}

/* -------------------------------------
ハンバーガーメニュー
------------------------------------- */
/* ボタン　 */
.l-openbtn,
.l-menu_btn {
  width: 4.8rem;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  clip-path: url(#curved-box);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M47.793%2011.6705C46.8928%206.41392%2041.588%201.10917%2036.3315%200.208965C34.8204%20-0.0482356%2033.3415%20-0.0643106%2031.9269%200.12859C26.6543%200.851965%2021.3656%200.851965%2016.093%200.12859C14.6784%20-0.0643106%2013.1995%20-0.0482356%2011.6885%200.208965C6.41587%201.10917%201.11112%206.41392%200.210918%2011.6705C-0.0462825%2013.1815%20-0.0623575%2014.6604%200.130543%2016.0911C0.853918%2021.3637%200.853918%2026.6524%200.130543%2031.925C-0.0623575%2033.3396%20-0.0462825%2034.8185%200.210918%2036.3295C1.11112%2041.5861%206.41587%2046.8908%2011.6724%2047.791C13.1835%2048.0482%2014.6624%2048.0643%2016.077%2047.8714C21.3496%2047.148%2026.6382%2047.148%2031.9109%2047.8714C33.3255%2048.0643%2034.8044%2048.0482%2036.3154%2047.791C41.5719%2046.8908%2046.8767%2041.5861%2047.7769%2036.3295C48.0341%2034.8185%2048.0502%2033.3396%2047.8573%2031.925C47.1339%2026.6524%2047.1339%2021.3637%2047.8573%2016.0911C48.0502%2014.6765%2048.0341%2013.1976%2047.7769%2011.6705H47.793Z%22%20fill%3D%22%236D4747%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: 0.3s;
}
@media screen and (max-width: 1024px) {
  .l-openbtn,
  .l-menu_btn {
    width: 9.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-openbtn,
  .l-menu_btn {
    width: 4.8rem;
    position: fixed;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 300;
  }
}
@media (hover: hover) {
  .l-openbtn:hover,
  .l-menu_btn:hover {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M31.9941%200.623047C33.3583%200.437022%2034.7864%200.45261%2036.2471%200.701172V0.702148C38.7497%201.13074%2041.3011%202.6175%2043.3428%204.65918C45.2491%206.56552%2046.671%208.91645%2047.2002%2011.2568L47.2842%2011.7539C47.5019%2013.0467%2047.5402%2014.3016%2047.4219%2015.5088L47.3623%2016.0234C46.6784%2021.0088%2046.6349%2026.0089%2047.2334%2030.9961L47.3623%2031.9932C47.5482%2033.3572%2047.5327%2034.7847%2047.2842%2036.2451C46.8556%2038.7477%2045.3679%2041.2991%2043.3262%2043.3408C41.412%2045.2549%2039.05%2046.6811%2036.7002%2047.2051L36.2314%2047.2979C34.9533%2047.5154%2033.7004%2047.5548%2032.4932%2047.4365L31.9785%2047.376C26.6609%2046.6465%2021.3264%2046.6464%2016.0088%2047.376C14.6446%2047.5619%2013.2165%2047.5465%2011.7559%2047.2979H11.7568C9.25424%2046.8693%206.70282%2045.3825%204.66113%2043.3408C2.74708%2041.4268%201.32095%2039.0646%200.796875%2036.7148L0.704102%2036.2451C0.455551%2034.7846%200.440033%2033.3572%200.625977%2031.9932C1.30994%2027.0079%201.35236%2022.0077%200.753906%2017.0205L0.625977%2016.0234C0.439882%2014.6426%200.455613%2013.215%200.704102%2011.7549C1.13266%209.25246%202.6197%206.70171%204.66309%204.66016C6.57894%202.74614%208.94469%201.31903%2011.3018%200.794922L11.7725%200.702148C13.0507%200.484586%2014.3035%200.445182%2015.5107%200.563477L16.0254%200.624023C21.343%201.35354%2026.6775%201.35357%2031.9951%200.624023L31.9941%200.623047Z%22%20fill%3D%22white%22%20stroke%3D%22%236D4747%22%2F%3E%3C%2Fsvg%3E");
    transition: 0.3s;
  }
  .l-openbtn:hover .l-openbtn_lineBox span,
  .l-menu_btn:hover .l-openbtn_lineBox span {
    background-color: #6D4747;
    transition: 0.3s;
  }
}
.l-openbtn .l-openbtn_lineBox,
.l-menu_btn .l-openbtn_lineBox {
  width: 1.694rem;
  height: 1.2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .l-openbtn .l-openbtn_lineBox,
  .l-menu_btn .l-openbtn_lineBox {
    width: 4.694rem;
    height: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-openbtn .l-openbtn_lineBox,
  .l-menu_btn .l-openbtn_lineBox {
    width: 1.694rem;
    height: 1.2rem;
  }
}
.l-openbtn span,
.l-menu_btn span {
  height: 1px;
  width: 100%;
  display: inline-block;
  position: absolute;
  left: 0;
  background-color: #fff;
  border-radius: 9999px;
  transition: 0.3s;
}
.l-openbtn span:first-of-type,
.l-menu_btn span:first-of-type {
  width: 1.353rem;
  top: 0;
  left: 50%;
  translate: -50% 0;
}
@media screen and (max-width: 1024px) {
  .l-openbtn span:first-of-type,
  .l-menu_btn span:first-of-type {
    width: 3.353rem;
  }
}
@media screen and (max-width: 768px) {
  .l-openbtn span:first-of-type,
  .l-menu_btn span:first-of-type {
    width: 1.353rem;
  }
}
.l-openbtn span:nth-of-type(2),
.l-menu_btn span:nth-of-type(2) {
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.l-openbtn span:last-of-type,
.l-menu_btn span:last-of-type {
  width: 1.353rem;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
}
@media screen and (max-width: 1024px) {
  .l-openbtn span:last-of-type,
  .l-menu_btn span:last-of-type {
    width: 3.353rem;
  }
}
@media screen and (max-width: 768px) {
  .l-openbtn span:last-of-type,
  .l-menu_btn span:last-of-type {
    width: 1.353rem;
  }
}
@media screen and (max-width: 768px) {
  .l-openbtn.active span:first-of-type,
  .l-menu_btn.active span:first-of-type {
    width: 1.83rem;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    rotate: 45deg;
  }
  .l-openbtn.active span:nth-of-type(2),
  .l-menu_btn.active span:nth-of-type(2) {
    opacity: 0;
  }
  .l-openbtn.active span:last-of-type,
  .l-menu_btn.active span:last-of-type {
    width: 1.83rem;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    rotate: -45deg;
  }
}

/* メニュー背景 */
.l-open_sp {
  width: 100vw;
  height: 100vh;
  padding-bottom: 6rem;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 299;
  background-color: #fff;
  opacity: 0;
  transition: 0.3s;
  overflow-y: scroll;
  pointer-events: none;
}
.l-open_sp.openbgactive {
  opacity: 1;
  transition: 0.3s;
  pointer-events: auto;
}

@media screen and (min-width: 1025px) {
  .l-open_sp {
    display: none;
  }
}
/* -------------------------------------
診療時間ボタン
------------------------------------- */
.l-subMenu_btn {
  width: 13.6rem;
}
@media screen and (max-width: 1024px) {
  .l-subMenu_btn {
    width: 22.6rem;
    height: 100%;
  }
}
@media screen and (max-width: 768px) {
  .l-subMenu_btn {
    width: 100%;
    height: auto;
  }
  .l-subMenu_btn:not(:first-of-type) a,
  .l-subMenu_btn:not(:first-of-type) button {
    border-left: 1px solid #6D4747;
  }
}
@media screen and (max-width: 1024px) {
  .l-subMenu_btn .c-follow_btn {
    height: 100%;
  }
}
.l-subMenu_btn .c-follow_btn-icon {
  width: 2rem;
  height: 2rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 1024px) {
  .l-subMenu_btn .c-follow_btn-icon {
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .l-subMenu_btn .c-follow_btn-icon {
    width: 2rem;
    height: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .l-subMenu_btn .c-follow_btn-text {
    font-size: 3.1rem;
  }
}
@media screen and (max-width: 768px) {
  .l-subMenu_btn .c-follow_btn-text {
    font-size: inherit;
  }
}

.l-timetable_btn .c-follow_btn-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url(%23clip0_2570_7032)%22%3E%3Cpath%20d%3D%22M18.1087%2018.7367C18.0773%2018.7472%2018.0459%2018.7498%2018.0146%2018.7498H1.98814C1.95678%2018.7498%201.92542%2018.7472%201.89406%2018.7367C1.72421%2018.6842%201.63013%2018.5033%201.6824%2018.3328L2.5369%2015.5682C2.90796%2014.3643%203.56125%2013.7506%204.72149%2013.5171L7.18569%2013.0214C7.4653%2012.9637%207.80239%2013.1263%207.93566%2013.3834L9.61853%2016.6515C9.78055%2016.9662%2010.2274%2016.9662%2010.3894%2016.6515L12.0671%2013.3912C12.2003%2013.1316%2012.5426%2012.9663%2012.8275%2013.024L15.2838%2013.5171C16.4441%2013.7506%2017.0974%2014.3643%2017.4684%2015.5682L18.3229%2018.3328C18.3752%2018.5033%2018.2811%2018.6842%2018.1113%2018.7367H18.1087Z%22%20fill%3D%22%239C6666%22%2F%3E%3Cpath%20d%3D%22M14.2707%205.52533C14.2184%205.45976%2014.1583%205.40205%2014.093%205.35222C14.2288%204.04077%2013.9806%203.01784%2013.3534%202.30965C12.7315%201.60671%2011.7725%201.25%2010.5025%201.25C9.55131%201.25%208.27609%201.57524%207.68552%202.48014C7.10018%202.51686%206.63242%202.74243%206.31885%203.13587C5.92165%203.63946%205.80667%204.36863%205.98175%205.30238C5.89029%205.36271%205.80667%205.43615%205.73089%205.52533C5.52967%205.76401%205.41992%206.08925%205.41992%206.43548C5.41992%207.05973%205.73089%207.54759%206.23261%207.7443C6.38679%208.92723%206.84148%209.92656%207.55748%2010.6452C7.77698%2010.8656%208.00694%2011.0623%208.26303%2011.2065C8.40414%2011.2852%208.6942%2011.4269%208.84053%2011.4898C9.20638%2011.6498%209.60619%2011.7075%2010.0008%2011.7075C10.3954%2011.7075%2010.7952%2011.6472%2011.1636%2011.4898C11.31%2011.4269%2011.6%2011.2826%2011.7385%2011.2065C11.9972%2011.0623%2012.2272%2010.8656%2012.4467%2010.6452C13.1627%209.92656%2013.6174%208.92723%2013.7689%207.7443C14.2707%207.54759%2014.5842%207.05973%2014.5842%206.43548C14.5842%206.08925%2014.4719%205.76401%2014.2707%205.52533ZM12.951%205.81385H12.9249C11.9894%205.72205%2011.0852%205.52795%2010.3144%205.25255C9.71594%205.04009%209.20899%204.78829%208.81702%204.49978L8.71772%204.42633L8.64977%204.53125C8.3362%205.01386%207.77437%205.44402%207.13937%205.67484C7.11324%205.68533%207.08189%205.69057%207.05314%205.69057C6.94339%205.69057%206.8467%205.62238%206.81012%205.52008C6.76308%205.38894%206.83102%205.23943%206.96429%205.1896C7.65155%204.9378%208.24212%204.40797%208.37017%203.93061C8.39369%203.84143%208.46163%203.77061%208.55047%203.747C8.57399%203.74176%208.5949%203.73913%208.61842%203.73913C8.68636%203.73913%208.74907%203.76536%208.79872%203.81257C9.53041%204.54699%2011.1297%205.11616%2012.9771%205.29976C13.0451%205.30501%2013.1052%205.33648%2013.1496%205.39156C13.194%205.44402%2013.2149%205.51222%2013.2071%205.58041C13.194%205.71156%2013.0843%205.81123%2012.9536%205.81123L12.951%205.81385Z%22%20fill%3D%22%239C6666%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_2570_7032%22%3E%3Crect%20width%3D%2216.6667%22%20height%3D%2217.5%22%20fill%3D%22white%22%20transform%3D%22translate(1.66699%201.25)%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
}

.l-reservation_btn .c-follow_btn-icon {
  background-image: url(../img/common/icon_calendar_brown.svg);
}

.l-tel_btn .c-follow_btn-icon {
  background-image: url(../img/common/icon_tel_brown.svg);
}

/* -------------
SPメニュー
------------- */
.l-head_sp_main {
  margin-top: 3rem;
}
.l-head_sp_main .l-modal__nav-list {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0.6rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.l-head_sp_main .l-modal__nav-list li a {
  width: 33.4rem;
  min-height: 5.6rem;
  gap: 1.1rem;
}
.l-head_sp_main .l-modal__nav-list li a .l-modal__nav-text {
  font-size: 1.5rem;
}
.l-head_sp_main .l-modal__nav-sub {
  flex-direction: column;
  width: 33.4rem;
  margin: 0.7rem auto 0;
  padding: 1.6rem 2rem 3.8rem;
  gap: 0rem;
}
.l-head_sp_main .l-modal__nav-sub > a {
  margin-top: 0;
}
.l-head_sp_main .l-modal__nav-sub .l-modal__nav-sub-list {
  width: 100%;
  grid-template-columns: repeat(1, 1fr);
}
.l-head_sp_main .l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item {
  width: 100%;
}
.l-head_sp_main .l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item > a {
  padding: 1.7rem 0.4rem;
}

.l-sp_menu {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media screen and (max-width: 1024px) {
  .l-sp_menu:not(:first-of-type) {
    margin-top: 3rem;
  }
}

.l-head_sp_inner {
  padding: 9.9rem 2rem 5rem;
}

.l-sp_ttl {
  position: relative;
  padding: 0;
  line-height: 2.5;
  color: #F5F0E1;
  opacity: 0.7;
}
.l-sp_ttl a {
  transition: 0.3s;
  padding: 0 1rem 1rem 0;
}
@media (hover: hover) {
  .l-sp_ttl a:hover {
    color: #797979;
    transition: 0.3s;
  }
}

.l-sp_list {
  padding-top: 2.2rem;
  display: grid;
  grid-template-columns: repeat(2, auto);
  -webkit-column-gap: 2.3rem;
     -moz-column-gap: 2.3rem;
          column-gap: 2.3rem;
  row-gap: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .l-sp_list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .l-sp_list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.l-sp_list li a {
  padding: 0.2rem 1.5rem 1.7rem 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #F5F0E1;
}

.l-sp_menu:nth-of-type(3) .l-sp_list {
  grid-template-columns: 1fr;
  margin-right: 3rem;
}
@media screen and (max-width: 1024px) {
  .l-sp_menu:nth-of-type(3) .l-sp_list {
    grid-template-columns: repeat(3, 1fr);
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .l-sp_menu:nth-of-type(3) .l-sp_list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 1024px) {
  .l-sp_item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
}
.l-sp_item a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  transition: 0.3s;
}
@media screen and (max-width: 1024px) {
  .l-sp_item a {
    width: 100%;
  }
}
@media (hover: hover) {
  .l-sp_item a:hover {
    color: #797979;
    transition: 0.3s;
  }
}

/* ------------- */
.l-sp_aside_menu {
  margin-top: 5rem;
}
.l-sp_aside_menu a {
  font-size: 1.2rem;
  line-height: 1.7;
  color: #DEDFDA;
}
.l-head_sp_btn {
  margin-top: 3.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.l-head_web_btn {
  width: 24rem;
  height: 6rem;
}

.l-head_sp_tel {
  width: 24rem;
  height: 6rem;
  border-radius: 0.5rem;
  background-color: rgba(222, 223, 218, 0.3019607843);
}
.l-head_sp_tel a {
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  line-height: 1.7;
  color: #fff;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-head_sp_tel a:hover {
    background-color: #F5F0E1;
    color: #2A2A2A;
    transition: 0.3s;
  }
}

.l-head_sp_copyright {
  border-top: 1px solid #3F3F3F;
  padding-block: 3rem 2rem;
}

.l-head_sp_copyright_inner {
  padding-inline: 2rem;
}

.l-head_sp_c_text {
  font-size: 1.1rem;
  line-height: 1.7;
  color: #F5F0E1;
}

/* -------------------------------------
フッター
------------------------------------- */
#pageFooter {
  overflow-x: clip;
}

.l-mainInner_footer {
  width: min(102rem, 100%);
  margin: 0 auto;
  padding: 2rem 0 14.9rem;
}
@media screen and (max-width: 768px) {
  .l-mainInner_footer {
    width: 33.5rem;
  }
}

/* 予約ボタン */
.l-foot_reservation {
  background-image: url(../img/common/reservation_bubble.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 30rem;
  padding: 3rem 4.2rem;
}
@media screen and (max-width: 768px) {
  .l-foot_reservation {
    padding: 3rem 2.2rem;
    background-image: url(../img/common/reservation_bubble_sp.svg);
  }
}

.l-foot_res-ttl {
  font-size: 1.4rem;
  line-height: 1.25;
  color: #9C6666;
  text-align: center;
}
.l-foot_res-text {
  font-size: 2.4rem;
  letter-spacing: 0.03em;
  font-weight: 700;
  position: relative;
  padding-inline: 3.4rem;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-top: calc((1em - 1lh) / 2 + 1.7rem);
}
@supports not (top: 1lh) {
  .l-foot_res-text {
    margin-top: 1.7rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_res-text {
    font-size: 1.8rem;
    margin-top: calc((1em - 1lh) / 2 + 1.1rem);
    padding-inline: 2.8rem;
  }
  @supports not (top: 1lh) {
    .l-foot_res-text {
      margin-top: 1.1rem;
    }
  }
}
.l-foot_res-text::before, .l-foot_res-text::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 1.6rem;
  height: 1.8rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.l-foot_res-text::before {
  left: 0;
  background-image: url(../img/common/icon_footer_slash.svg);
}
.l-foot_res-text::after {
  background-image: url(../img/common/icon_footer_slash.svg);
  right: 0;
  scale: -1 1;
}

.l-foot_res-btnBox {
  display: flex;
  justify-content: space-between;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .l-foot_res-btnBox {
    flex-direction: column;
    gap: 1rem;
    margin-top: 2rem;
  }
}

.l-foot_res-btn {
  width: 45.9rem;
  height: 12rem;
}
@media screen and (max-width: 768px) {
  .l-foot_res-btn {
    width: 29.5rem;
    height: 8rem;
    margin: 0 auto;
  }
}
.l-foot_res-btn a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #fff;
  border-radius: 1rem;
  position: relative;
  padding: 3.1rem 1rem;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .l-foot_res-btn a {
    padding: 1.1rem 1rem;
  }
}

.l-foot_res-text_sub {
  color: #9C6666;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .l-foot_res-text_sub {
    font-size: 1.2rem;
  }
}

.l-foot_res-text_main {
  font-weight: 700;
  margin-top: calc((1em - 1lh) / 2 + 1.3rem);
}
@supports not (top: 1lh) {
  .l-foot_res-text_main {
    margin-top: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_res-text_main {
    margin-top: calc((1em - 1lh) / 2 + 0.8rem);
  }
  @supports not (top: 1lh) {
    .l-foot_res-text_main {
      margin-top: 0.8rem;
    }
  }
}

.l-foot_res-btn.--tel .l-foot_res-text_main {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .l-foot_res-btn.--tel .l-foot_res-text_main {
    font-size: 2rem;
  }
}
.l-foot_res-btn.--web .l-foot_res-text_main {
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .l-foot_res-btn.--web .l-foot_res-text_main {
    font-size: 2rem;
  }
}
.l-foot_res-btn .c-btn_iconBox {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  background-color: #F4ECEC;
}
.l-foot_res-btn .c-btn_icon {
  width: 1rem;
  height: 1rem;
  position: relative;
  overflow: hidden;
}
.l-foot_res-btn .c-btn_icon::before {
  rotate: -45deg;
}
.l-foot_res-btn .c-btn_icon::after {
  rotate: -45deg;
  bottom: 0;
  translate: -100% 100%;
  -webkit-filter: unset;
          filter: unset;
}

@media (hover: hover) {
  .l-foot_res-btn a:hover {
    background-color: #9C6666;
    transition: 0.3s;
  }
  .l-foot_res-btn a:hover .l-foot_res-text_sub {
    color: #fff;
    transition: 0.3s;
  }
  .l-foot_res-btn a:hover .l-foot_res-text_main {
    color: #fff;
    transition: 0.3s;
  }
  .l-foot_res-btn a:hover .c-btn_icon::before {
    opacity: 0;
    translate: 100% -100%;
  }
  .l-foot_res-btn a:hover .c-btn_icon::after {
    opacity: 1;
    translate: 0 0;
  }
}

.l-foot_header {
  margin-top: 4.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.l-foot_title a {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  translate: -0.6rem 0;
}

.l-foot_logo_img {
  width: 28.5rem;
  height: 6.2rem;
}
@media screen and (max-width: 768px) {
  .l-foot_logo_img {
    width: 24.8rem;
    height: 5.4rem;
  }
}
.l-foot_logo_img img {
  display: block;
}
@media screen and (max-width: 768px) {
  .l-foot_logo_img img {
    margin: 0 auto;
    width: 100%;
  }
}

.l-foot_instagram {
  width: 4.8rem;
}

.l-foot_content {
  padding: 4.7rem 4.25rem 0;
}
@media screen and (max-width: 768px) {
  .l-foot_content {
    padding: 2.4rem 0;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_content.l-col2 {
    flex-direction: column-reverse;
  }
}

@media screen and (max-width: 768px) {
  .l-foot_left {
    margin-top: 4rem;
  }
}

.l-foot_map {
  width: 38.3rem;
  height: 42.9rem;
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .l-foot_map {
    width: 100%;
    height: 33.5rem;
  }
}
.l-foot_map iframe {
  width: 100%;
  height: 100%;
  border-radius: inherit;
}

.l-foot_access {
  margin-top: 1.9rem;
}

.l-foot_access-text {
  display: flex;
  align-items: flex-end;
}

.l-foot_postcode {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  font-weight: 400;
  margin-block: var(--leading-trim);
  display: block;
}

.l-foot_address_text {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  font-weight: 500;
  margin-block: var(--leading-trim);
  margin-top: calc((1em - 1lh) / 2 + 0.9rem);
  display: block;
}
@supports not (top: 1lh) {
  .l-foot_address_text {
    margin-top: 0.9rem;
  }
}

.l-foot_map_btn {
  border-radius: 9999px;
  margin-left: 1rem;
  translate: 0 0.5rem;
}
.l-foot_map_btn a {
  display: grid;
  place-content: center;
  width: 7.9rem;
  height: 2.4rem;
  background-color: rgba(221, 196, 196, 0.7);
  color: #6D4747;
  font-size: 1.2rem;
  line-height: 1.5;
  border-radius: inherit;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .l-foot_map_btn a {
    width: 6.8rem;
    height: 2.3rem;
    font-size: 1rem;
  }
}
@media (hover: hover) {
  .l-foot_map_btn a:hover {
    opacity: 0.7;
    transition: 0.3s;
  }
}

.l-foot_access-list {
  margin-top: 1.6rem;
}
.l-foot_access-list li {
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  margin-block: var(--leading-trim);
}
@media screen and (max-width: 768px) {
  .l-foot_access-list li {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_access-list li:not(:last-of-type) {
    margin-bottom: 0.2rem;
  }
}

.l-foot_right {
  width: 50.8rem;
}
@media screen and (max-width: 768px) {
  .l-foot_right {
    width: 100%;
  }
}

.l-foot_office-hours .c-office-hours__table {
  padding-top: 0;
  width: 100%;
}
.l-foot_office-hours .c-table-time__header {
  padding: 1.7rem 2.5rem 1.9rem 3.1rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__header {
    padding: 1.5rem 1.1rem 1.9rem 1.1rem;
  }
}
.l-foot_office-hours .c-table-time__title {
  font-size: 1.4rem;
  margin-right: 4.1rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__title {
    font-size: 1.2rem;
    margin-right: 2.7rem;
  }
}
.l-foot_office-hours .c-table-time__day {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__day {
    font-size: 1.2rem;
  }
}
.l-foot_office-hours .c-table-time__time {
  gap: 0.1rem;
  margin-right: 0.7rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__time {
    margin-right: 1.8rem;
  }
}
.l-foot_office-hours .c-table-time__time-main {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__time-main {
    font-size: 1.2rem;
  }
}
.l-foot_office-hours .c-table-time__time-note {
  font-size: 1.2rem;
  margin-top: calc((1em - 1lh) / 2 + 0.5rem);
}
@supports not (top: 1lh) {
  .l-foot_office-hours .c-table-time__time-note {
    margin-top: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__time-note {
    font-size: 1rem;
  }
}
.l-foot_office-hours .c-table-time__indicator {
  width: 1.2rem;
  height: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__indicator {
    width: 1rem;
    height: 1rem;
  }
}
.l-foot_office-hours .c-table-time__indicator.--not {
  width: 1.2rem;
  height: 0.2rem;
}
.l-foot_office-hours .c-table-time__row {
  padding: 1.3rem 4.4rem 1.1rem 0.8rem;
}
@media screen and (max-width: 768px) {
  .l-foot_office-hours .c-table-time__row {
    padding: 0.9rem 2rem 1.2rem 1rem;
  }
}
.l-foot_office-hours .c-table-time__note-mark {
  font-size: 1.2rem;
}

.l-foot_menu {
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .l-foot_menu {
    gap: 3rem;
  }
}

.l-foot_menu-block {
  width: 23.2rem;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .l-foot_menu-block {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:first-child {
    order: 1;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(2) {
    order: 3;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(3) {
    order: 5;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(4) {
    order: 7;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(5) {
    order: 2;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(6) {
    order: 4;
  }
  .l-foot_menu-block:first-of-type .l-foot_menu-list li:nth-child(7) {
    order: 6;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_menu-block:nth-of-type(2) .l-foot_menu-list li:first-child {
    order: 1;
  }
  .l-foot_menu-block:nth-of-type(2) .l-foot_menu-list li:nth-child(2) {
    order: 3;
  }
  .l-foot_menu-block:nth-of-type(2) .l-foot_menu-list li:nth-child(3) {
    order: 2;
  }
  .l-foot_menu-block:nth-of-type(2) .l-foot_menu-list li:nth-child(4) {
    order: 4;
  }
}

.l-foot_menu-title {
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: 0.03em;
  font-weight: 700;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid #BC8F8F;
}

.l-foot_menu-list {
  display: flex;
  flex-direction: column;
  margin-top: 0.9rem;
}
@media screen and (max-width: 768px) {
  .l-foot_menu-list {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_menu-list li {
    width: 15.6rem;
  }
}
.l-foot_menu-list li a {
  width: 100%;
  display: flex;
  align-items: center;
  padding: 0.8rem 0.3rem 1.15rem;
  background-image: radial-gradient(#5D5150 1px, transparent 1px);
  background-size: 7.3px 7.3px;
  background-position: left bottom;
  background-repeat: repeat-x;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #5D5150;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .l-foot_menu-list li a {
    padding: 0.8rem 0.3rem 1.9rem;
  }
}
.l-foot_menu-list li a::before {
  margin-right: 1.1rem;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .l-foot_menu-list li a::before {
    margin-right: 0.9rem;
  }
}
@media (hover: hover) {
  .l-foot_menu-list li a:hover {
    color: #6D4747;
    transition: 0.3s;
  }
  .l-foot_menu-list li a:hover::before {
    translate: 0.5rem 0;
    transition: 0.3s;
  }
}

.l-foot_menu-btn {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-top: auto;
}
@media screen and (max-width: 768px) {
  .l-foot_menu-btn {
    flex-direction: row;
    margin-top: 3.7rem;
    gap: 0.8rem;
  }
}
.l-foot_menu-btn .c-btn {
  height: 4.2rem;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #9C6666;
  border-radius: 0.5rem;
  background-color: #9C6666;
  font-size: 1.4rem;
  color: #fff;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-foot_menu-btn .c-btn:hover {
    color: #9C6666;
    transition: 0.3s;
  }
  .l-foot_menu-btn .c-btn:hover .l-foot_menu-btn_icon {
    -webkit-filter: unset;
            filter: unset;
    transition: 0.3s;
  }
}

.l-foot_menu-btn_icon {
  width: 1.6rem;
  height: 1.6rem;
  translate: -0.5rem 0;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
  transition: 0.3s;
}
.l-foot_menu-btn_icon img {
  width: 100%;
  height: 100%;
  display: block;
}

.l-foot_bottom {
  width: min(134.428rem, 100%);
  height: 21rem;
  margin: 0 auto;
  position: relative;
  background-color: #F5F3EE;
}
@media screen and (max-width: 768px) {
  .l-foot_bottom {
    overflow-x: clip;
  }
}

.l-foot_pagetop {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .l-foot_pagetop {
    position: absolute;
    top: -13.5rem;
    left: 50%;
    translate: -50% 0;
  }
}

.l-foot_pagetop-btn {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.l-foot_pagetop-btn .c-btn_text {
  color: #6D4747;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .l-foot_pagetop-btn .c-btn_iconBox {
    background-color: #F4ECEC;
  }
}
.l-foot_pagetop-btn .c-btn_icon {
  rotate: -90deg;
}
.l-foot_pagetop-btn .c-btn_icon::after {
  -webkit-filter: unset;
          filter: unset;
  opacity: 1;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-foot_pagetop-btn:hover .c-btn_iconBox {
    scale: 1.1;
    transition: 0.3s;
  }
  .l-foot_pagetop-btn:hover .c-btn_icon::before {
    opacity: 0;
    transition: 0.3s;
  }
  .l-foot_pagetop-btn:hover .c-btn_icon::after {
    translate: 0 0;
    transition: 0.3s;
  }
}

.l-foot_back {
  width: 100vw;
  position: absolute;
  top: -1.3rem;
  left: 50%;
  z-index: -1;
  translate: -50% 0;
}
.l-foot_back img {
  width: 100%;
  display: block;
}

.l-foot_cloud {
  position: absolute;
}
.l-foot_cloud.--01 {
  top: -33rem;
  left: 3.4rem;
}
@media screen and (max-width: 768px) {
  .l-foot_cloud.--01 {
    display: none;
  }
}
.l-foot_cloud.--02 {
  top: -22.2rem;
  left: -5.5rem;
}
@media screen and (max-width: 768px) {
  .l-foot_cloud.--02 {
    width: 4.7rem;
    height: 2.774rem;
    top: -16.5rem;
    left: -1rem;
  }
}
.l-foot_cloud.--03 {
  top: -35.9rem;
  right: 3.3rem;
  scale: -1 1;
}
@media screen and (max-width: 768px) {
  .l-foot_cloud.--03 {
    width: 4.226rem;
    height: 2.446rem;
    top: -8.9rem;
    right: 25.1rem;
  }
}
.l-foot_cloud.--04 {
  top: -22.6rem;
  right: -5rem;
  scale: -1 1;
}
@media screen and (max-width: 768px) {
  .l-foot_cloud.--04 {
    width: 4.522rem;
    height: 2.669rem;
    top: -17.9rem;
    right: -0.3rem;
  }
}

.l-foot_clinic {
  width: 20.5rem;
  position: absolute;
  top: -4.7rem;
  left: 1.1rem;
}
@media screen and (max-width: 768px) {
  .l-foot_clinic {
    width: 13.752rem;
    left: 0.3rem;
    display: block;
  }
}

.l-foot_people {
  position: absolute;
  top: -9rem;
  right: -1.2rem;
}
@media screen and (max-width: 1200px) {
  .l-foot_people {
    width: 27rem;
  }
}
@media screen and (max-width: 768px) {
  .l-foot_people {
    width: 16.892rem;
    top: -7rem;
    right: 0.5rem;
  }
  .l-foot_people > img {
    width: 100%;
    display: block;
  }
}

.l-foot_copyright {
  text-align: center;
  position: absolute;
  bottom: 3rem;
  left: 50%;
  translate: -50% 0;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  color: #5D5150;
}
@media screen and (max-width: 768px) {
  .l-foot_copyright {
    bottom: 12.3rem;
    font-size: 1rem;
  }
}

/* フッター頭装飾 */
.l-footer_line {
  width: 100vw;
  background-color: transparent;
  position: relative;
}
.l-footer_line.--radius .l-footer_lineBox {
  height: 10rem;
  background-color: #fff;
  border-radius: 5.75rem 5.75rem 0 0;
  margin-top: -5rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .l-footer_line.--radius .l-footer_lineBox {
    border-radius: 2.875rem 2.875rem 0 0;
    height: 5rem;
  }
}
.l-footer_line.--line {
  padding-bottom: 9.8rem;
}
@media screen and (max-width: 768px) {
  .l-footer_line.--line {
    padding-bottom: 7.4rem;
  }
}
.l-footer_line.--line .l-footer_lineBox {
  width: min(110.5rem, 100%);
  margin: 0 auto;
  height: 1px;
  background-color: #BC8F8F;
}
@media screen and (max-width: 1200px) {
  .l-footer_line.--line .l-footer_lineBox {
    width: 112rem;
  }
}
@media screen and (max-width: 768px) {
  .l-footer_line.--line .l-footer_lineBox {
    width: 33.5rem;
    padding-inline: 0;
  }
}

/* -------------------------------------
追従ボタン
------------------------------------- */
.l-follow_btn {
  display: none;
  height: 5rem;
  position: fixed;
  bottom: 2rem;
  left: 50%;
  translate: -50% 0;
  z-index: 80;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .l-follow_btn {
    display: block;
    max-width: 31rem;
    left: 50%;
    translate: -50% 0;
  }
}
@media screen and (max-width: 768px) {
  .l-follow_btn {
    max-width: unset;
    left: 50%;
    translate: -50% 0;
  }
}
.l-follow_btn .c-btn_text {
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.l-follow_btn .c-btn_iconBox {
  width: 4rem;
  height: 4rem;
}
.l-follow_btn.fade-out {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* -------------------------------------
モーダル
------------------------------------- */
.l-modal__btn,
.js-modal__btn {
  cursor: pointer;
}

.l-modal__overlay {
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: 0.3s;
}

.l-modal__overlay.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.l-modal__container {
  position: fixed;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 1001;
  width: 95%;
  height: 58.4rem;
  max-width: 1020px;
  max-height: 600px;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: 0.3s;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.l-modal__container::-webkit-scrollbar {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-modal__container {
    width: 100%;
    height: 39.1rem;
  }
}

.l-modal__container.active {
  opacity: 1;
  visibility: visible;
  z-index: 1000;
  pointer-events: auto;
}

.l-modal__close {
  position: absolute;
  top: 2.3rem;
  right: 2.2rem;
  width: 1.83rem;
  height: 1.83rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .l-modal__close {
    top: unset;
    bottom: 3rem;
    left: 50%;
  }
}

.l-modal__close::before,
.l-modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #6D4747;
}

.l-modal__close::before {
  translate: -50% -50%;
  rotate: 45deg;
}

.l-modal__close::after {
  translate: -50% -50%;
  rotate: -45deg;
}

.l-modal__content {
  width: 100%;
  height: 100%;
  background: #fff;
  padding: 7.6rem 6.1rem;
  border-radius: 2rem;
}
@media screen and (max-width: 768px) {
  .l-modal__content {
    padding: 3.6rem 2rem;
  }
}

/* モーダル汎用書体スタイル */
.l-modal__title {
  font-size: 2.3rem;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .l-modal__title {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}

.l-modal__description {
  margin-bottom: 3rem;
}
.l-modal__description p {
  line-height: 2em;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .l-modal__description p {
    font-size: 1.4rem;
  }
}

.l-modal__section {
  margin-bottom: 3rem;
}

.l-modal__section-header {
  background-color: rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-width: 1px 0;
  padding: 0.2rem 0 0.2rem 0.6rem;
  margin-bottom: 2rem;
  position: relative;
}

.l-modal__section-title {
  font-weight: 500;
  line-height: 2;
  text-align: left;
  margin: 0;
  font-size: 1.6rem;
}

.l-modal__section-content p {
  line-height: 2em;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .l-modal__section-content p {
    font-size: 1.4rem;
  }
}

.l-modal__section-list {
  margin: 0;
  padding-left: 2rem;
  list-style: disc;
}
.l-modal__section-list li {
  font-size: 1.6rem;
  font-weight: 350;
  line-height: 2em;
  text-align: left;
}
.l-modal__section-list li::marker {
  font-size: 1rem;
}
.l-modal__section-list li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .l-modal__section-list li {
    font-size: 1.4rem;
  }
}

.l-modal__btn {
  width: 21.4rem;
  height: 5rem;
  margin: 5rem auto 0;
}
.l-modal__btn .c-btn_text {
  font-size: 1.2rem;
}

/* ナビゲーション */
.l-modal__nav-list {
  display: flex;
  gap: 0.8rem;
}
.l-modal__nav-list li a {
  width: 17.3rem;
  min-height: 6.4rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  background-color: #F5F3EE;
  padding: 1.2rem;
  border-radius: 0.5rem;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-modal__nav-list li a:hover {
    background-color: #998C6D;
    transition: 0.3s;
  }
  .l-modal__nav-list li a:hover .l-modal__nav-text {
    color: #fff;
  }
}

.l-modal__nav-sub {
  margin-top: 0.8rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 3rem;
  padding: 2.5rem 4rem 3.8rem;
  background-color: #FAF6F6;
  border-radius: 0.5rem;
}
.l-modal__nav-sub > a {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-top: 0.6rem;
}
.l-modal__nav-sub > a .c-icon_box {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 3rem;
}
.l-modal__nav-sub > a .l-modal__nav-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.03em;
}
.l-modal__nav-sub .l-modal__nav-sub-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 3.2rem;
  margin-top: 0;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  position: relative;
  list-style: none;
}
.l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item {
  width: 25rem;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item a {
  margin-block: var(--leading-trim);
  width: 100%;
  display: flex;
  align-items: center;
  padding: 1.4rem 0.4rem 1.6rem;
  background-image: radial-gradient(#5D5150 1px, transparent 1px);
  background-size: 7.3px 7.3px;
  background-position: left bottom;
  background-repeat: repeat-x;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #5D5150;
  font-size: 1.4rem;
  font-weight: 500;
  transition: 0.3s;
}
.l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item a::before {
  margin-right: 1rem;
  margin-top: 0;
  transition: 0.3s;
}
@media (hover: hover) {
  .l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item a:hover {
    color: #6D4747;
    transition: 0.3s;
  }
  .l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item a:hover::before {
    translate: 0.5rem 0;
    transition: 0.3s;
  }
}
.l-modal__nav-sub .l-modal__nav-sub-list .l-modal__nav-sub-item a.c-arrow_mini::before {
  height: 0.729rem;
}

.l-modal_header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

.l-modal__logo {
  display: flex;
  justify-content: center;
}
.l-modal__logo img {
  width: 28.4rem;
  height: auto;
  margin-top: 0.9rem;
}

.l-modal_instagram {
  width: 4.8rem;
  margin-bottom: 0.4rem;
  margin-left: 0.4rem;
  align-self: flex-end;
}

.l-modal__nav {
  margin-top: 3.8rem;
}

.l-modal__nav-text {
  line-height: 1.25;
  margin-block: var(--leading-trim);
  letter-spacing: 0.03em;
  font-weight: 700;
  font-family: "Zen Maru Gothic", sans-serif;
  transition: 0.3s;
}

/* テーブル下予約ボタン */
.l-modal__reservation {
  width: 68rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .l-modal__reservation {
    width: 100%;
  }
}
.l-modal__reservation .l-foot_res-btn {
  width: 33.4rem;
  height: 8.8rem;
}
@media screen and (max-width: 768px) {
  .l-modal__reservation .l-foot_res-btn {
    width: 16.4rem;
    height: 7.2rem;
  }
}
.l-modal__reservation .l-foot_res-btn a {
  background-color: #F5F3EE;
}
@media (hover: hover) {
  .l-modal__reservation .l-foot_res-btn a:hover {
    background-color: #9C6666;
  }
}
.l-modal__reservation .l-foot_res-btn .c-btn_iconBox {
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .l-modal__reservation .l-foot_res-btn .c-btn_iconBox {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-modal__reservation .l-foot_res-btnBox {
    flex-direction: row;
    margin-top: 2rem;
  }
}

/* -------------------------------------
ニュース news お知らせ
------------------------------------- */
.l-news_cat .c-sub-heading__link-list {
  flex-wrap: wrap;
  flex-direction: row;
}
@media screen and (max-width: 768px) {
  .l-news_cat .c-sub-heading__link-list {
    justify-content: flex-start;
    gap: 2rem;
  }
}
.l-news_cat .c-sub-heading__link::before {
  display: none;
}

.l-single_content {
  padding-top: 6.2rem;
  padding-bottom: 6rem;
}

/* -------------------------------------
2カラム用レイアウト
------------------------------------- */
.l-col2 {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-col2 {
    flex-direction: column;
  }
}
.l-col2.--sticky {
  position: relative;
}
.l-col2.--sticky .l-content_side {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: sticky;
  top: 3rem;
}
@media screen and (max-width: 768px) {
  .l-col2.--sticky .l-content_side {
    position: static;
  }
}

/* -------------------------------------
下層ページ
------------------------------------- */
.l-page_intro-inner {
  margin: 7rem auto;
}

.l-pageNav_area {
  background-color: #F8F9FB;
}

.l-pageNav_inner {
  padding-block: 13.5rem 19rem;
}
@media screen and (max-width: 768px) {
  .l-pageNav_inner {
    padding-block: 8rem 14rem;
  }
}

.l-pageNav_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .l-pageNav_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}
.l-pageNav_list li .c-btn {
  width: 35.5rem;
  height: 11rem;
  display: flex;
  border-radius: 1rem;
  background-color: #fff;
  border: none;
  padding: 2rem 3rem 2rem 2rem;
}
@media screen and (max-width: 768px) {
  .l-pageNav_list li .c-btn {
    width: 100%;
    height: 8rem;
    padding: 1.5rem 2.5rem 1.5rem 0rem;
  }
}
@media screen and (max-width: 768px) {
  .l-pageNav_list li .c-btn .c-btn_iconArea {
    width: 4.4rem;
    margin: 0 auto;
  }
}
.l-pageNav_list li .c-btn .c-btn_text {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #463635;
}
@media screen and (max-width: 768px) {
  .l-pageNav_list li .c-btn .c-btn_text {
    font-size: 1.4rem;
  }
}
.l-pageNav_list li .c-btn .c-btn_iconBox {
  background-color: #F4ECEC;
}
.l-pageNav_list li .c-btn .c-btn_iconBox .c-btn_icon::after {
  -webkit-filter: unset;
          filter: unset;
}
@media (hover: hover) {
  .l-pageNav_list li .c-btn:hover {
    background-color: #9C6666;
  }
  .l-pageNav_list li .c-btn:hover .c-btn_text {
    color: #fff;
  }
  .l-pageNav_list li .c-btn:hover .c-btn_iconBox {
    background-color: #F4ECEC;
    scale: 1.1;
  }
}

.l-pageCnt_inner {
  padding-block: 4rem 8rem;
}
.l-pageCnt_inner2 {
  padding-block: 8rem 8rem;
}
@media screen and (max-width: 768px) {
  .l-pageCnt_inner2 {
    padding-block: 4rem 8rem;
  }
}

/* -------------------------------------
animation
------------------------------------- */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* -------------------------------------
ローディングアニメーション
------------------------------------- */
.l-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #F5F3EE;
  z-index: 9999;
  transition: opacity 0.5s;
}
.l-loading.l-fade-out {
  opacity: 0;
}

.l-loading_text {
  width: 100%;
  height: 100%;
  position: relative;
  opacity: 1;
  transition: opacity 0.5s;
}
.l-loading_text svg {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.l-loading_text svg.show {
  opacity: 0;
}

.l-loading_logo {
  width: 100%;
  height: 100%;
  position: relative;
}
.l-loading_logo > svg {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -12% -50%;
  opacity: 0;
  transition: opacity 0.5s, translate 1s, top 1s, width 1s;
}
.l-loading_logo > svg.show {
  opacity: 1;
  z-index: 2;
}
.l-loading_logo > svg.moved {
  translate: -52% -50%;
}
.l-loading_logo > svg.movedTop {
  top: 10.5rem;
}
@media screen and (max-width: 768px) {
  .l-loading_logo > svg.movedTop {
    top: 13.8rem;
    width: 23.76rem;
  }
}
.l-loading_logo .l-loading_clip {
  clip-path: inset(0 100% 0 0);
  transition: 1s cubic-bezier(0.83, 0, 0.17, 1);
}
.l-loading_logo .l-loading_clip.clipped {
  clip-path: inset(0 0 0 0);
}

/* -------------------------------------
その他
------------------------------------- */
@media screen and (max-width: 768px) {
  .u-txt-right {
    display: block;
    text-align: right;
  }
}