@charset "UTF-8";
:root {
  --text: #3a3a3a;
  --main: #A7A197;
  --bg: #F5F3EF;
  --gothic: Noto Sans JP, Helvetica Neue, Helvetica, Hiragino Sans, Hiragino Kaku Gothic ProN, Arial, Yu Gothic, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  --serif: Shippori Mincho, Times New Roman, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
  --en: Outfit, Helvetica Neue, Helvetica, Hiragino Sans, Hiragino Kaku Gothic ProN, Arial, Yu Gothic, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  --enSerif: EB Garamond, Times New Roman, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
  --marcells: Marcellus, Shippori Mincho, Times New Roman, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
  --ls: 0;
  --lh: 1.8;
  --headerHeight: 60px;
}
@media screen and (min-width: 1200px) {
  :root {
    --headerHeight: 80px;
  }
}
:root {
  --innerWidth: calc(100% - 40px);
  --innerMax: 600px;
}
@media screen and (min-width: 768px) {
  :root {
    --innerMax: 960px;
  }
}
:root {
  --speed: 0.3s;
  --color: transparent;
}

* {
  letter-spacing: var(--ls);
  line-height: var(--lh);
}

html {
  margin: 0 !important;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: #fff;
  color: var(--text);
  font-size: 16px;
  font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  overflow-x: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
  position: relative;
}
body::-webkit-scrollbar {
  display: none;
}

main {
  margin-top: var(--headerHeight);
}

body:has(.header.transparent) main {
  margin-top: 0;
}

section {
  position: relative;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  color: currentColor;
  text-decoration: none;
  cursor: pointer;
  transition: 0.3s;
}
a:hover {
  outline-width: 0;
  text-decoration: none;
  opacity: 0.8;
}
a.underline {
  text-decoration: underline;
}
a.underline:hover {
  text-decoration: none;
}
a.disabled {
  pointer-events: none;
}
a[href="#"] {
  pointer-events: none;
  cursor: default;
}
@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
  object-fit: contain;
  vertical-align: bottom;
}

strong {
  font-weight: 700;
}

/* ============= common class ================ */
.inner {
  width: var(--innerWidth);
  max-width: var(--innerMax);
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .inner--wide {
    max-width: 1200px;
  }
}

.block {
  width: 100%;
  display: block;
}

.disp_none {
  display: none !important;
}
@media screen and (min-width: 576px) {
  .disp_xs {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .disp_tab, .disp_pc, .disp_notsp {
    display: none !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .disp_sp, .disp_pc {
    display: none !important;
  }
}
@media screen and (max-width: 1023px) {
  .disp_lg {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .disp_sp, .disp_tab, .disp_notpc {
    display: none !important;
  }
}
@media screen and (min-width: 1200px) {
  .disp_lg {
    display: none !important;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.en {
  font-family: var(--en);
}

.serif {
  font-family: var(--serif);
}

.enSerif {
  font-family: var(--enSerif);
}

.marcells {
  font-family: var(--marcells);
}

.num {
  font-family: var(--serif);
  --ls: 0.05em;
}

.txt--main {
  color: var(--main);
}

.bg {
  background-color: var(--bg);
}

.fit {
  position: relative;
  overflow: hidden;
}
.fit__item {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}

.js-collapse {
  cursor: pointer;
}

/*------------------------------------------------------
    animation
-------------------------------------------------------*/
.scrollanime {
  /*ここで全体のアニメーション秒数を設定*/
  transition: all ease 1.5s;
  /*出現前は全て透明に*/
  opacity: 0;
}
/*classに応じて出現前の位置や大きさを設定*/
.toUp {
  transform: translateY(50px);
}
.toDown {
  transform: translateY(-50px);
}
.toLeft {
  transform: translateX(50px);
}
.toRight {
  transform: translateX(-50px);
}
.toBig {
  transform: scale(0.8);
}
/*画面に入った後は元の位置や大きさに戻る*/
.fadeIn.scrollanime {
  opacity: 1;
}
.fadeIn.toUp {
  transform: translateY(0);
}
.fadeIn.toDown {
  transform: translateY(0);
}
.fadeIn.toLeft {
  transform: translateX(0);
}
.fadeIn.toRight {
  transform: translateX(0);
}
.fadeIn.toBig {
  transform: scale(1);
}

.textAnime {
  overflow: hidden;
}
.textAnime span {
  display: inline-block;
  transition: all ease .8s;
}
.txtToTop span {
  transform: translateY(100%);
}
.txtToBottom span {
  transform: translateY(-100%);
}
.txtToRight span {
  transform: scaleX(0);
  transform-origin: left;
}
.txtColor span {
  color: #E0E0E0;
}
.txtRotateX span {
  opacity: 0;
  transform: rotateY(360deg);
}
.txtRotateY span {
  opacity: 0;
  transform: rotateX(360deg);
}
.fadeIn.txtToTop span {
  transform: translateY(0);
}
.fadeIn.txtToBottom span {
  transform: translateY(0);
}
.fadeIn.txtToRight span {
  transform: scaleX(1);
}
.fadeIn.txtColor span {
  color: #333333;
}
.fadeIn.txtRotateX span {
  opacity: 1;
  transform: rotateY(0);
}
.fadeIn.txtRotateY span {
  opacity: 1;
  transform: rotateX(0);
}

/*------------------------------------------------------
    header
-------------------------------------------------------*/
.header {
  width: 100%;
  height: var(--headerHeight);
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
}
.header__inner {
  height: 100%;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  grid-gap: 10px;
}
@media screen and (min-width: 768px) {
  .header__inner {
    width: 100%;
    padding: 0 0 0 20px;
    grid-gap: 0;
  }
}
@media screen and (min-width: 1440px) {
  .header__inner {
    padding-left: 30px;
  }
}
.header__sitelogo {
  width: 100px;
  position: relative;
}
.header__sitelogo a {
  display: flex;
  align-items: center;
}
.header__sitelogo a:hover {
  opacity: 1;
}
.header__sitelogo a:hover img {
  opacity: 0.8;
}
.header__sitelogo img {
  width: 100%;
  mix-blend-mode: difference;
  display: block;
  transition: var(--speed);
}
@media screen and (min-width: 1024px) {
  .header__sitelogo {
    width: 130px;
  }
}
@media screen and (min-width: 1200px) {
  .header__sitelogo {
    width: 172px;
  }
}
.header__navWrap {
  height: 100%;
  margin-left: auto;
}
.header__gnav {
  height: 100%;
  display: flex;
  font-size: 15px;
}
.header__gnav li {
  height: 100%;
  display: block;
}
.header__gnav li a {
  height: 100%;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__gnav_btn {
  font-size: 14px;
}
.header__gnav_btn a {
  width: 120px;
  padding: 0 !important;
  background-color: var(--color);
  color: #fff;
}
.header__gnav_btn a:hover {
  background-color: #fff;
  color: var(--color);
  opacity: 1;
}
.header__gnav_btn--doc {
  margin-left: 10px;
  --color: #A7A197;
}
.header__gnav_btn--event {
  --color: #A28C77;
}
.header__gnav_btn--modelhouse {
  --color: #837A6C;
}
@media screen and (min-width: 1200px) {
  .header__gnav li a {
    padding: 0 15px;
  }
  .header__gnav_btn {
    font-size: 15px;
  }
  .header__gnav_btn a {
    width: 140px;
  }
  .header__gnav_btn--doc {
    margin-left: 15px;
  }
}
@media screen and (min-width: 1440px) {
  .header__gnav li a {
    padding: 0 20px;
  }
  .header__gnav_btn {
    font-size: 16px;
  }
  .header__gnav_btn a {
    width: 150px;
  }
  .header__gnav_btn--doc {
    margin-left: 20px;
  }
}
.header__menu {
  width: 100%;
  height: 100vh;
  padding: 115px 20px 50px;
  background-color: var(--bg);
  position: fixed;
  top: 0;
  left: 0;
  overflow-y: scroll;
  opacity: 0;
  pointer-events: none;
  transition: var(--speed);
  overflow-x: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.header__menu::-webkit-scrollbar {
  display: none;
}
.header__menu.visible {
  opacity: 1;
  pointer-events: auto;
}
.header__menu_wrap {
  display: contents;
}
.header__menu_navList {
  width: 100%;
  max-width: 600px;
  margin: 0 auto 30px;
  font-size: 14px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: row dense;
  grid-gap: 10px 30px;
}
.header__menu_navList > li:nth-child(2) {
  grid-row: 2/9;
}
.header__menu_navList > li:nth-child(3) {
  grid-row: 9;
}
.header__menu_navList > li:nth-child(4) {
  grid-row: 10;
  grid-column: span 2;
}
.header__menu_navList > li:nth-child(5) {
  grid-row: 11;
}
.header__menu_navList > li:nth-child(6) {
  grid-row: 12;
}
.header__menu_navList > li:nth-child(7) {
  grid-row: 13;
}
.header__menu_navList > li.instagram a::after {
  content: "";
  width: 18px;
  height: 18px;
  margin-left: -10px;
  background: url(../img/icon-insta.svg) center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}
.header__menu_navList a {
  white-space: nowrap;
  display: flex;
  align-items: center;
  grid-gap: 15px;
}
.header__menu_navList a::before {
  content: "";
  width: 10px;
  height: 2px;
  background-color: var(--text);
  display: block;
  flex-shrink: 0;
	opacity: 0.6;
}
.header__menu_navList a:hover {
  color: var(--main);
  opacity: 1;
}
.header__menu_navList .footerOnly {
  display: none !important;
}
.header__menu_navList .sub-menu {
  padding-top: 7px;
  padding-left: 40px;
  display: grid;
  grid-gap: 9px;
}
.header__menu_btnWrap {
  width: 100%;
  max-width: 600px;
  margin: 0 auto 40px;
  display: grid;
  grid-gap: 20px;
}
.header__menu_btnWrap_btn {
  width: 100%;
  height: 50px;
  background-color: var(--color);
  border: 1px solid var(--color);
  color: #fff;
  font-size: 18px;
  font-weight: 45;
  --ls: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 16px;
}
.header__menu_btnWrap_btn::after {
  content: "";
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23fff"/></svg>') center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}
.header__menu_btnWrap_btn:hover {
  background-color: #fff;
  color: var(--color);
  opacity: 1;
}
.header__menu_btnWrap_btn--contact {
  --color: #837A6C;
}
.header__menu_btnWrap_btn--contact:hover::after {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23837A6C"/></svg>') center/contain no-repeat;
}
.header__menu_btnWrap_btn--owner {
  --color: #A48C78;
  font-size: 16px;
}
.header__menu_btnWrap_btn--owner:hover::after {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23A48C78"/></svg>') center/contain no-repeat;
}
.header__menu_infoWrap {
  display: contents;
}
.header__menu_tel {
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 12px;
}
.header__menu_tel_icon {
  width: 35px;
  height: 35px;
  background: var(--text) url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="54" height="54" viewBox="0 0 54 54" fill="none"><path d="M29.1328 17.4425C29.1566 17.3532 29.1978 17.2694 29.254 17.1961C29.3102 17.1227 29.3803 17.0611 29.4603 17.0149C29.5402 16.9686 29.6286 16.9386 29.7202 16.9265C29.8118 16.9144 29.9049 16.9205 29.9942 16.9444C31.6924 17.3874 33.2419 18.2751 34.4829 19.5162C35.724 20.7572 36.6117 22.3067 37.0547 24.005C37.0786 24.0942 37.0847 24.1873 37.0726 24.2789C37.0605 24.3705 37.0305 24.4589 36.9842 24.5389C36.938 24.6188 36.8764 24.6889 36.803 24.7451C36.7297 24.8013 36.6459 24.8425 36.5567 24.8663C36.4974 24.882 36.4363 24.8899 36.375 24.8897C36.2201 24.8898 36.0695 24.8387 35.9466 24.7444C35.8237 24.6501 35.7353 24.5179 35.6953 24.3682C35.315 22.9095 34.5526 21.5785 33.4866 20.5125C32.4206 19.4465 31.0896 18.6841 29.6309 18.3038C29.5416 18.28 29.4579 18.2388 29.3845 18.1826C29.3111 18.1264 29.2496 18.0563 29.2033 17.9764C29.1571 17.8964 29.127 17.808 29.1149 17.7164C29.1028 17.6248 29.1089 17.5317 29.1328 17.4425ZM28.6934 22.0538C30.3984 22.5085 31.4906 23.6007 31.9453 25.3057C31.9853 25.4554 32.0737 25.5876 32.1966 25.6819C32.3195 25.7762 32.4701 25.8273 32.625 25.8272C32.6863 25.8274 32.7474 25.8195 32.8067 25.8038C32.8959 25.78 32.9797 25.7388 33.053 25.6826C33.1264 25.6264 33.188 25.5563 33.2342 25.4764C33.2805 25.3964 33.3105 25.308 33.3226 25.2164C33.3347 25.1248 33.3286 25.0317 33.3047 24.9425C32.7188 22.7499 31.2492 21.2803 29.0567 20.6944C28.9674 20.6706 28.8743 20.6645 28.7827 20.6766C28.6911 20.6888 28.6028 20.7188 28.5228 20.765C28.4429 20.8113 28.3728 20.8728 28.3166 20.9462C28.2604 21.0195 28.2192 21.1032 28.1953 21.1925C28.1715 21.2817 28.1654 21.3748 28.1776 21.4664C28.1897 21.558 28.2197 21.6463 28.266 21.7263C28.3122 21.8062 28.3738 21.8763 28.4471 21.9325C28.5204 21.9887 28.6041 22.0299 28.6934 22.0538ZM38.0027 33.421C37.802 34.9529 37.0502 36.3593 35.8879 37.3772C34.7257 38.3952 33.2325 38.9551 31.6875 38.9522C22.5117 38.9522 15.0469 31.4874 15.0469 22.3116C15.0439 20.7671 15.6033 19.2744 16.6206 18.1122C17.6378 16.95 19.0433 16.1979 20.5746 15.9964C20.9271 15.9535 21.284 16.0262 21.5917 16.2035C21.8993 16.3808 22.1412 16.6531 22.2809 16.9796L24.7535 22.4991C24.8627 22.749 24.9079 23.0221 24.885 23.2938C24.862 23.5656 24.7718 23.8273 24.6223 24.0553C24.6072 24.0786 24.5908 24.1009 24.5731 24.1221L22.1039 27.0589C22.0889 27.0893 22.0811 27.1228 22.0811 27.1567C22.0811 27.1906 22.0889 27.2241 22.1039 27.2546C23.0016 29.0921 24.9281 31.0046 26.7914 31.901C26.8225 31.9152 26.8565 31.922 26.8907 31.9208C26.9249 31.9195 26.9583 31.9104 26.9883 31.894L29.8817 29.4331C29.9024 29.4152 29.9243 29.3987 29.9473 29.3839C30.1743 29.2325 30.4355 29.1401 30.7073 29.1152C30.979 29.0902 31.2527 29.1334 31.5035 29.2409L37.0395 31.7217C37.3616 31.8645 37.6292 32.1072 37.8027 32.4138C37.9761 32.7205 38.0463 33.0749 38.0027 33.4245V33.421ZM36.6094 33.2475C36.6133 33.1985 36.6017 33.1495 36.5763 33.1075C36.5508 33.0654 36.5128 33.0324 36.4676 33.0132L30.9305 30.5323C30.9002 30.5206 30.8678 30.5156 30.8355 30.5176C30.8031 30.5197 30.7715 30.5287 30.743 30.544L27.8508 33.005C27.8297 33.0225 27.8074 33.0389 27.7852 33.0542C27.5493 33.2115 27.2766 33.305 26.9938 33.3255C26.711 33.3461 26.4277 33.2929 26.1715 33.1714C24.0199 32.1319 21.8754 30.0073 20.8359 27.8757C20.7137 27.621 20.6593 27.339 20.678 27.0572C20.6966 26.7753 20.7878 26.503 20.9426 26.2667C20.9578 26.2432 20.9746 26.2209 20.993 26.1999L23.4598 23.2596C23.4739 23.2289 23.4812 23.1956 23.4812 23.1618C23.4812 23.128 23.4739 23.0946 23.4598 23.0639L20.993 17.5432C20.9767 17.4989 20.9474 17.4605 20.9089 17.4331C20.8704 17.4057 20.8246 17.3906 20.7774 17.3897H20.7504C19.5585 17.5483 18.4651 18.1352 17.6743 19.0409C16.8836 19.9466 16.4495 21.1092 16.4531 22.3116C16.4531 30.7116 23.2875 37.546 31.6875 37.546C32.89 37.5496 34.0528 37.1153 34.9585 36.3243C35.8643 35.5333 36.4511 34.4396 36.6094 33.2475Z" fill="%23F5F5F5"/></svg>') center/contain no-repeat;
  border-radius: 50%;
  display: block;
}
.header__menu_tel_telNumber {
  font-size: 24px;
  --ls: 0.05em;
  --lh: 1;
}
.header__menu_opentime {
  font-size: 12px;
  --ls: 0.05em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .header__menu {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;
  }
  .header__menu_navList, .header__menu_btnWrap, .header__menu_infoWrap {
    max-width: 790px;
  }
  .header__menu_navList {
    padding: 5px 0 0;
    margin: 0 0 50px;
    font-size: 15px;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 27px 50px;
  }
  .header__menu_navList > li {
    padding-left: 0;
  }
  .header__menu_navList > li:nth-child(2) {
    grid-row: 2/6;
  }
  .header__menu_navList > li:nth-child(3) {
    grid-row: 6;
  }
  .header__menu_navList > li:nth-child(4) {
    grid-row: 7;
  }
  .header__menu_navList > li:nth-child(5) {
    grid-row: 8;
  }
  .header__menu_navList > li:nth-child(6) {
    grid-row: 1;
    grid-column: 2;
  }
  .header__menu_navList > li:nth-child(7) {
    grid-row: 2/6;
    grid-column: 2;
  }
  .header__menu_navList > li:nth-child(n+8) {
    grid-column: 3;
  }
  .header__menu_navList .sub-menu {
    grid-gap: 7px;
  }
  .header__menu_btnWrap {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 60px;
    order: 1;
  }
  .header__menu_infoWrap {
    width: 100%;
    margin-bottom: 60px;
    display: flex;
    align-items: center;
    grid-gap: 25px;
  }
  .header__menu_tel {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1024px) {
  .header__menu_navList {
    margin-bottom: 75px;
    grid-gap: 27px 80px;
  }
  .header__menu_navList .sub-menu {
    padding-left: 65px;
  }
  .header__menu_btnWrap {
    grid-template-columns: repeat(2, 335px);
  }
  .header__menu_infoWrap {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 1240px) {
  .header__menu {
    padding-right: calc(50vw - 560px);
  }
}
.header__toggler {
  width: 32px;
  height: 32px;
  padding: 0;
  background: #fff;
  border: 0;
  line-height: 1;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  grid-gap: 5px;
  flex-shrink: 0;
  position: relative;
}
.header__toggler:focus {
  outline: 0;
  box-shadow: none;
}
.header__toggler span {
  width: 22px;
  height: 1px;
  margin: 0 auto;
  background-color: #262625;
  display: block;
  transition: var(--speed);
}
.header__toggler.open span {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(45deg);
}
.header__toggler.open span + span {
  transform: rotate(-45deg);
}
.header__toggler.open span + span + span {
  transform: scale(0);
}
@media screen and (min-width: 1024px) {
  .header__toggler {
    width: 60px;
    height: 60px;
    background-color: #3A3A3A;
  }
  .header__toggler span {
    background-color: #fff;
  }
}
@media screen and (min-width: 1200px) {
  .header__toggler {
    width: 80px;
    height: 80px;
  }
}
.header.open {
  background-color: #F5F3EF;
}
.header.open .header__sitelogo {
  background-color: #F5F3EF;
}
.header.open .header__sitelogo img {
  mix-blend-mode: difference;
  z-index: 1;
}
.header.open .header__toggler {
  background-color: transparent;
}
@media screen and (min-width: 1024px) {
  .header.open .header__sitelogo {
    margin-top: 50px;
    transition: var(--speed);
  }
  .header.open .header__toggler span {
    background-color: var(--text);
  }
}

/*------------------------------------------------------
  parts
-------------------------------------------------------*/
.breadcrumbArea {
  width: 100%;
  padding: 10px 0;
  color: var(--main);
  font-size: 10px;
}
.breadcrumbArea__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  grid-gap: 4px 16px;
}
.breadcrumbArea .sep {
  width: 5.5px;
  height: 10px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="7" height="12" viewBox="0 0 7 12" fill="none"><path d="M0.353516 0.353516L5.85352 5.85352L0.353516 11.3535" stroke="%23A7A197"/></svg>') center/contain no-repeat;
  color: transparent;
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .breadcrumbArea {
    padding: 20px 0;
    font-size: 12px;
  }
}

.pageTtlArea {
  width: 100%;
  height: 130px;
  border-bottom: 1px solid #E5E3E0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.pageTtlArea.noBorder {
  border-bottom: 0;
}
.pageTtlArea__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.pageTtlArea__ttl {
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 500;
  --ls: 0.1em;
  --lh: 1.6;
  text-align: center;
  position: relative;
  z-index: 1;
}
.pageTtlArea__en {
  --ls: 0.05em;
}
@media screen and (min-width: 768px) {
  .pageTtlArea {
    height: 215px;
  }
  .pageTtlArea__ttl {
    font-size: 28px;
  }
}
@media screen and (min-width: 1024px) {
  .pageTtlArea__ttl {
    font-size: 32px;
  }
}
.pageTtlArea--hasImg {
  height: auto;
  border-bottom: 0;
}
.pageTtlArea--hasImg::before {
  content: "";
  width: 100%;
  height: 87%;
  background: linear-gradient(180deg, #F5F3EF 75%, rgba(250, 249, 246, 0) 100%);
  border-top-left-radius: 10px;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
}
.pageTtlArea--hasImg .pageTtlArea__inner {
  align-items: flex-start;
  grid-gap: 22px;
}
.pageTtlArea--hasImg .pageTtlArea__ttlWrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 4px;
  position: relative;
}
.pageTtlArea--hasImg .pageTtlArea__enTtl {
  font-size: 12px;
  --ls: 0.05em;
  --lh: 1;
  position: relative;
  z-index: 1;
}
.pageTtlArea--hasImg .pageTtlArea__en {
  mix-blend-mode: multiply;
  color: #F7F7F7;
  font-size: 64px;
  --ls: 0;
  --lh: 1;
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
}
.pageTtlArea--hasImg .pageTtlArea__img {
  width: calc(100% + 20px);
  border-radius: 10px 0 0 10px;
  order: -1;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .pageTtlArea--hasImg {
    height: 320px;
  }
  .pageTtlArea--hasImg::before {
    width: 68.3333%;
    height: 68.5%;
    border-top-left-radius: 30px;
  }
  .pageTtlArea--hasImg .pageTtlArea__inner {
    height: 100%;
    justify-content: center;
  }
  .pageTtlArea--hasImg .pageTtlArea__ttlWrap {
    grid-gap: 10px;
  }
  .pageTtlArea--hasImg .pageTtlArea__enTtl {
    font-size: 16px;
  }
  .pageTtlArea--hasImg .pageTtlArea__en {
    padding-left: 20px;
    margin-top: 0.3906em;
    font-size: 80px;
    position: relative;
    inset: 0;
    transform: translate(0);
  }
  .pageTtlArea--hasImg .pageTtlArea__img {
    width: 60%;
    padding-top: 43%;
    border-radius: 30px 0 0 30px;
    position: absolute;
    top: -62px;
    right: -20px;
  }
  .pageTtlArea--hasImg .pageTtlArea__img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
  }
}
@media screen and (min-width: 1024px) {
  .pageTtlArea--hasImg {
    height: 400px;
  }
  .pageTtlArea--hasImg .pageTtlArea__en {
    padding-left: 0.5em;
    font-size: 100px;
  }
}
@media screen and (min-width: 1200px) {
  .pageTtlArea--hasImg {
    height: 450px;
  }
  .pageTtlArea--hasImg .pageTtlArea__en {
    font-size: 128px;
  }
}
@media screen and (min-width: 1240px) {
  .pageTtlArea--hasImg .pageTtlArea__img {
    right: calc(-50vw + 600px);
  }
}
@media screen and (min-width: 1440px) {
  .pageTtlArea--hasImg {
    height: 600px;
  }
  .pageTtlArea--hasImg .pageTtlArea__img {
    width: min(75%, 900px);
    padding-top: min(50%, 600px);
  }
}
.pageTtlArea--hasTxt .pageTtlArea__en {
  top: 0;
  transform: translateY(-10%);
}
.pageTtlArea--hasTxt .pageTtlArea__ttlWrap_txt {
  margin-top: 20px;
  font-size: 14px;
  font-weight: 500;
  font-family: var(--serif);
  --ls: 0.09em;
  --lh: 2;
}
.pageTtlArea--hasTxt .pageTtlArea__ttlWrap_txt + .pageTtlArea__ttlWrap_txt {
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .pageTtlArea--hasTxt .pageTtlArea__ttlWrap {
    max-width: 350px;
  }
  .pageTtlArea--hasTxt .pageTtlArea__ttlWrap_txt {
    margin-top: 30px;
  }
  .pageTtlArea--hasTxt .pageTtlArea__en {
    position: absolute;
    top: 50%;
    transform: translateY(-15%);
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .pageTtlArea--hasTxt {
    height: auto;
    min-height: 320px;
  }
  .pageTtlArea--hasTxt .pageTtlArea__img {
    width: 50%;
    padding-top: 35%;
  }
}
@media screen and (min-width: 1024px) {
  .pageTtlArea--hasTxt .pageTtlArea__img {
    width: 57%;
    padding-top: 40.85%;
  }
  .pageTtlArea--hasTxt .pageTtlArea__ttlWrap {
    max-width: 400px;
  }
  .pageTtlArea--hasTxt .pageTtlArea__ttlWrap_txt {
    margin-top: 50px;
  }
}
@media screen and (min-width: 1200px) {
  .pageTtlArea--hasTxt .pageTtlArea__img {
    width: 60%;
    padding-top: 43%;
  }
}
@media screen and (min-width: 1440px) {
  .pageTtlArea--hasTxt .pageTtlArea__img {
    width: min(75%, 900px);
    padding-top: min(50%, 600px);
  }
}

.btn {
  padding-bottom: 5px;
  --ls: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 16px;
  position: relative;
}
.btn::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">  <path d="M11.6667 5.83203L7.5 9.9987L11.6667 14.1654V5.83203Z" fill="%233a3a3a"/></svg>') center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}
.btn::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--text);
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn:hover {
  opacity: 1;
}
.btn:hover::after {
  animation: btnHover 0.5s ease;
}
@keyframes btnHover {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

.ctaArea {
  padding: 50px 0 40px;
  background: url(../img/common/cta_bg-sp.jpg) center/cover no-repeat;
}
@media screen and (min-width: 768px) {
  .ctaArea {
    padding: 60px 0 70px;
    background-image: url(../img/common/cta_bg-pc.jpg);
  }
}
@media screen and (min-width: 1024px) {
  .ctaArea {
    padding: 70px 0 90px;
  }
}
.ctaArea__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .ctaArea__inner {
    max-width: 916px;
  }
}
.ctaArea__ttl {
  margin-bottom: 40px;
  color: #FFF;
  font-size: 24px;
  --ls: 0.05em;
  --lh: 1;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .ctaArea__ttl {
    font-size: 32px;
  }
}
@media screen and (min-width: 1024px) {
  .ctaArea__ttl {
    font-size: 40px;
  }
}
.ctaArea__boxWrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 16px;
}
@media screen and (min-width: 768px) {
  .ctaArea__boxWrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;
  }
}
@media screen and (min-width: 1024px) {
  .ctaArea__boxWrap {
    grid-gap: 40px;
  }
}
.ctaArea__box {
  width: 100%;
  padding: 30px;
  background-color: rgba(255, 255, 255, 0.6);
  border: 1px solid #FFF;
  border-radius: 5px;
  display: block;
}
.ctaArea__box_ttl {
  font-size: 20px;
  font-weight: 400;
  --lh: 1;
  text-align: center;
  display: block;
}
.ctaArea__box_list {
  padding: 10px 0 15px;
  display: grid;
  grid-gap: 35px;
}
.ctaArea__box_list .listItem:not(:has(.listItem__link)) {
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 16px;
}
.ctaArea__box_list .listItem:not(:has(.listItem__link))::before {
  content: "";
  width: 20px;
  height: 1px;
  background-color: var(--text);
  display: block;
  flex-shrink: 0;
}
.ctaArea__box_list .listItem__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 16px;
}
.ctaArea__box_list .listItem__link::before {
  content: "";
  width: 20px;
  height: 1px;
  background-color: var(--text);
  display: block;
  flex-shrink: 0;
  transition: var(--speed);
}
.ctaArea__box_list .listItem__icon {
  width: 54px;
  height: 54px;
  background-color: var(--text);
  border-radius: 50%;
  display: block;
  order: -1;
  transition: background-color var(--speed) ease;
}
.ctaArea__box_list .listItem__icon--tel {
  background: var(--text) url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="54" height="54" viewBox="0 0 54 54" fill="none"><path d="M29.1328 17.4425C29.1566 17.3532 29.1978 17.2694 29.254 17.1961C29.3102 17.1227 29.3803 17.0611 29.4603 17.0149C29.5402 16.9686 29.6286 16.9386 29.7202 16.9265C29.8118 16.9144 29.9049 16.9205 29.9942 16.9444C31.6924 17.3874 33.2419 18.2751 34.4829 19.5162C35.724 20.7572 36.6117 22.3067 37.0547 24.005C37.0786 24.0942 37.0847 24.1873 37.0726 24.2789C37.0605 24.3705 37.0305 24.4589 36.9842 24.5389C36.938 24.6188 36.8764 24.6889 36.803 24.7451C36.7297 24.8013 36.6459 24.8425 36.5567 24.8663C36.4974 24.882 36.4363 24.8899 36.375 24.8897C36.2201 24.8898 36.0695 24.8387 35.9466 24.7444C35.8237 24.6501 35.7353 24.5179 35.6953 24.3682C35.315 22.9095 34.5526 21.5785 33.4866 20.5125C32.4206 19.4465 31.0896 18.6841 29.6309 18.3038C29.5416 18.28 29.4579 18.2388 29.3845 18.1826C29.3111 18.1264 29.2496 18.0563 29.2033 17.9764C29.1571 17.8964 29.127 17.808 29.1149 17.7164C29.1028 17.6248 29.1089 17.5317 29.1328 17.4425ZM28.6934 22.0538C30.3984 22.5085 31.4906 23.6007 31.9453 25.3057C31.9853 25.4554 32.0737 25.5876 32.1966 25.6819C32.3195 25.7762 32.4701 25.8273 32.625 25.8272C32.6863 25.8274 32.7474 25.8195 32.8067 25.8038C32.8959 25.78 32.9797 25.7388 33.053 25.6826C33.1264 25.6264 33.188 25.5563 33.2342 25.4764C33.2805 25.3964 33.3105 25.308 33.3226 25.2164C33.3347 25.1248 33.3286 25.0317 33.3047 24.9425C32.7188 22.7499 31.2492 21.2803 29.0567 20.6944C28.9674 20.6706 28.8743 20.6645 28.7827 20.6766C28.6911 20.6888 28.6028 20.7188 28.5228 20.765C28.4429 20.8113 28.3728 20.8728 28.3166 20.9462C28.2604 21.0195 28.2192 21.1032 28.1953 21.1925C28.1715 21.2817 28.1654 21.3748 28.1776 21.4664C28.1897 21.558 28.2197 21.6463 28.266 21.7263C28.3122 21.8062 28.3738 21.8763 28.4471 21.9325C28.5204 21.9887 28.6041 22.0299 28.6934 22.0538ZM38.0027 33.421C37.802 34.9529 37.0502 36.3593 35.8879 37.3772C34.7257 38.3952 33.2325 38.9551 31.6875 38.9522C22.5117 38.9522 15.0469 31.4874 15.0469 22.3116C15.0439 20.7671 15.6033 19.2744 16.6206 18.1122C17.6378 16.95 19.0433 16.1979 20.5746 15.9964C20.9271 15.9535 21.284 16.0262 21.5917 16.2035C21.8993 16.3808 22.1412 16.6531 22.2809 16.9796L24.7535 22.4991C24.8627 22.749 24.9079 23.0221 24.885 23.2938C24.862 23.5656 24.7718 23.8273 24.6223 24.0553C24.6072 24.0786 24.5908 24.1009 24.5731 24.1221L22.1039 27.0589C22.0889 27.0893 22.0811 27.1228 22.0811 27.1567C22.0811 27.1906 22.0889 27.2241 22.1039 27.2546C23.0016 29.0921 24.9281 31.0046 26.7914 31.901C26.8225 31.9152 26.8565 31.922 26.8907 31.9208C26.9249 31.9195 26.9583 31.9104 26.9883 31.894L29.8817 29.4331C29.9024 29.4152 29.9243 29.3987 29.9473 29.3839C30.1743 29.2325 30.4355 29.1401 30.7073 29.1152C30.979 29.0902 31.2527 29.1334 31.5035 29.2409L37.0395 31.7217C37.3616 31.8645 37.6292 32.1072 37.8027 32.4138C37.9761 32.7205 38.0463 33.0749 38.0027 33.4245V33.421ZM36.6094 33.2475C36.6133 33.1985 36.6017 33.1495 36.5763 33.1075C36.5508 33.0654 36.5128 33.0324 36.4676 33.0132L30.9305 30.5323C30.9002 30.5206 30.8678 30.5156 30.8355 30.5176C30.8031 30.5197 30.7715 30.5287 30.743 30.544L27.8508 33.005C27.8297 33.0225 27.8074 33.0389 27.7852 33.0542C27.5493 33.2115 27.2766 33.305 26.9938 33.3255C26.711 33.3461 26.4277 33.2929 26.1715 33.1714C24.0199 32.1319 21.8754 30.0073 20.8359 27.8757C20.7137 27.621 20.6593 27.339 20.678 27.0572C20.6966 26.7753 20.7878 26.503 20.9426 26.2667C20.9578 26.2432 20.9746 26.2209 20.993 26.1999L23.4598 23.2596C23.4739 23.2289 23.4812 23.1956 23.4812 23.1618C23.4812 23.128 23.4739 23.0946 23.4598 23.0639L20.993 17.5432C20.9767 17.4989 20.9474 17.4605 20.9089 17.4331C20.8704 17.4057 20.8246 17.3906 20.7774 17.3897H20.7504C19.5585 17.5483 18.4651 18.1352 17.6743 19.0409C16.8836 19.9466 16.4495 21.1092 16.4531 22.3116C16.4531 30.7116 23.2875 37.546 31.6875 37.546C32.89 37.5496 34.0528 37.1153 34.9585 36.3243C35.8643 35.5333 36.4511 34.4396 36.6094 33.2475Z" fill="%23F5F5F5"/></svg>') center/contain no-repeat;
}
.ctaArea__box_list .listItem__icon--email {
  background: var(--text) url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="54" height="54" viewBox="0 0 54 54" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M17 21.2868V32.7154C17 33.4732 17.301 34.1999 17.8368 34.7357C18.3727 35.2715 19.0994 35.5725 19.8571 35.5725H34.1429C34.9006 35.5725 35.6273 35.2715 36.1632 34.7357C36.699 34.1999 37 33.4732 37 32.7154V21.2868C37 20.5291 36.699 19.8023 36.1632 19.2665C35.6273 18.7307 34.9006 18.4297 34.1429 18.4297H19.8571C19.0994 18.4297 18.3727 18.7307 17.8368 19.2665C17.301 19.8023 17 20.5291 17 21.2868Z" stroke="%23F5F5F5" stroke-width="1.42857" stroke-linecap="round" stroke-linejoin="round"/><path d="M19.8594 22.7148L27.0022 27.0006L34.1451 22.7148" stroke="%23F5F5F5" stroke-width="1.42857" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat;
}
.ctaArea__box_list .listItem__telNumber {
  font-size: 32px;
  --ls: 0.05em;
  --lh: 1;
}
.ctaArea__box_list .listItem__txt {
  font-size: 14px;
  --ls: 0.05em;
  --lh: 1.6;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .ctaArea__box--col2 {
    padding: 30px;
    grid-column: span 2;
  }
  .ctaArea__box_ttl {
    font-size: 24px;
  }
  .ctaArea__box_list {
    padding: 10px 0;
    grid-template-columns: repeat(2, 1fr);
    grid-row: span 4;
    position: relative;
  }
  .ctaArea__box_list::before {
    content: "";
    width: 1px;
    height: 130px;
    background-color: var(--text);
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .ctaArea__box_list .listItem:not(:has(.listItem__link)) {
    display: grid;
    grid-template-rows: subgrid;
    grid-gap: 20px;
    grid-row: span 4;
    justify-content: center;
  }
  .ctaArea__box_list .listItem:not(:has(.listItem__link))::before {
    margin: 0 auto;
  }
  .ctaArea__box_list .listItem:has(.listItem__link) {
    display: contents;
  }
  .ctaArea__box_list .listItem__link {
    display: grid;
    grid-template-rows: subgrid;
    grid-gap: 20px;
    grid-row: span 4;
    justify-content: center;
  }
  .ctaArea__box_list .listItem__link::before {
    margin: 0 auto;
  }
  .ctaArea__box_list .listItem__link:hover {
    color: #837A6C;
    opacity: 1;
  }
  .ctaArea__box_list .listItem__link:hover::before {
    background-color: #837A6C;
  }
  .ctaArea__box_list .listItem__link:hover .listItem__icon {
    background-color: #837A6C;
  }
  .ctaArea__box_list .listItem__icon {
    margin: 0 auto;
  }
}
@media screen and (min-width: 1024px) {
  .ctaArea__box {
    padding: 30px 30px;
  }
  .ctaArea__box:not(:has(.ctaArea__box_list)) {
    padding: 45px 30px;
  }
}
.ctaArea a.ctaArea__box:hover {
  color: #837A6C;
  opacity: 1;
}

.scroll-hint-icon {
  top: calc(50% - 50px);
  z-index: 10;
}

/*------------------------------------------------------
    footer
-------------------------------------------------------*/
.footer {
  padding: 40px 0 110px;
  background: linear-gradient(180deg, #F5F3EF 0%, #F5F3EF 70%, rgba(250, 249, 246, 0) 100%);
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .footer {
    padding: 40px 0 110px;
  }
}
@media screen and (min-width: 1024px) {
  .footer {
    padding: 50px 0 70px;
  }
}
.footer__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 65px;
}
@media screen and (min-width: 768px) {
  .footer__inner {
    width: var(--innerWidth);
    flex-direction: row;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
    grid-gap: 65px 10px;
  }
}
.footer__addressBlk {
  width: 100%;
  font-size: 13px;
  --lh: 24px;
}
.footer__addressBlk_address dt {
  font-weight: 300;
}
.footer__addressBlk_address dt::before {
  content: "・";
}
.footer__addressBlk_address dd:not(:last-child) {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .footer__addressBlk {
    max-width: 290px;
    padding: 10px 0 0;
    flex-shrink: 0;
  }
}
@media screen and (min-width: 1024px) {
  .footer__addressBlk {
    max-width: 340px;
    font-size: 15px;
  }
}
.footer__navBlk {
  width: 100%;
  font-size: 13px;
  --lh: 1;
}
.footer__navBlk_navList {
  display: grid;
  grid-gap: 20px;
}
.footer__navBlk_navList li a {
  white-space: nowrap;
  display: flex;
  align-items: center;
  grid-gap: 15px;
}
.footer__navBlk_navList li a::before {
  content: "";
  width: 10px;
  height: 2px;
  background-color: var(--text);
  display: block;
  flex-shrink: 0;
	opacity: 0.6;
}
.footer__navBlk_navList li a:hover {
  color: var(--main);
  opacity: 1;
}
.footer__navBlk_navList li.instagram a::after {
  content: "";
  width: 18px;
  height: 18px;
  margin-left: -10px;
  background: url(../img/icon-insta.svg) center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}
.footer__navBlk_navList .headerOnly {
  display: none !important;
}
.footer__navBlk_navList .sub-menu {
  padding-top: 25px;
  padding-left: 65px;
  display: grid;
  grid-gap: 20px;
}
@media screen and (min-width: 768px) {
  .footer__navBlk {
    max-width: 400px;
    justify-content: space-between;
    grid-gap: 0;
  }
  .footer__navBlk > .column_sp {
    display: contents;
  }
  .footer__navBlk_navList {
    padding: 12px 0 0;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: row dense;
    grid-gap: 18px 5px;
  }
  .footer__navBlk_navList > li {
    grid-column: 1;
  }
  .footer__navBlk_navList > li:nth-child(2) {
    grid-row: span 6;
  }
  .footer__navBlk_navList > li:nth-child(7) {
    grid-column: 2;
    grid-row: 1/6;
  }
  .footer__navBlk_navList > li:nth-child(n+8) {
    grid-column: 2;
  }
}
@media screen and (min-width: 1024px) {
  .footer__navBlk {
    max-width: 600px;
    font-size: 14px;
  }
  .footer__navBlk_navList {
    grid-template-columns: repeat(3, 1fr);
  }
  .footer__navBlk_navList li:nth-child(n+8) {
    grid-column: 3;
  }
}
@media screen and (min-width: 1200px) {
  .footer__navBlk {
    max-width: 695px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1439px) {
  .footer__navBlk li .sub-menu {
    padding-left: 35px;
  }
}
.footer__btnWrap {
  width: 100%;
  display: grid;
  grid-gap: 20px;
}
.footer__btnWrap_btn {
  width: 100%;
  height: 50px;
  background-color: var(--color);
  border: 1px solid var(--color);
  color: #fff;
  font-size: 18px;
  font-weight: 45;
  --ls: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 16px;
}
.footer__btnWrap_btn::after {
  content: "";
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23fff"/></svg>') center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}
.footer__btnWrap_btn:hover {
  background-color: #fff;
  color: var(--color);
  opacity: 1;
}
.footer__btnWrap_btn--contact {
  --color: #837A6C;
}
.footer__btnWrap_btn--contact:hover::after {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23837A6C"/></svg>') center/contain no-repeat;
}
.footer__btnWrap_btn--owner {
  --color: #A48C78;
  font-size: 16px;
}
.footer__btnWrap_btn--owner:hover::after {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M8.33333 5.83203L12.5 9.9987L8.33333 14.1654V5.83203Z" fill="%23A48C78"/></svg>') center/contain no-repeat;
}
@media screen and (min-width: 768px) {
  .footer__btnWrap {
    max-width: 320px;
  }
}
@media screen and (min-width: 1024px) {
  .footer__btnWrap {
    max-width: 300px;
    margin-left: auto;
  }
}
@media screen and (min-width: 1200px) {
  .footer__btnWrap {
    max-width: 335px;
  }
}
.footer__dataBlk {
  width: 100%;
  display: grid;
  grid-gap: 64px;
  order: 1;
}
.footer__dataBlk_dataWrap {
  font-size: 13px;
  font-weight: 300;
  --lh: 1.6;
}
@media screen and (min-width: 768px) {
  .footer__dataBlk_dataWrap {
    font-size: 15px;
  }
}
.footer__dataBlk_ttl {
  margin-bottom: 10px;
  font-size: 13px;
  --lh: 24px;
}
.footer__dataBlk_table {
  width: 100%;
  max-width: 548px;
  font-size: 12px;
  --lh: 24px;
  text-align: center;
  table-layout: fixed;
}
.footer__dataBlk_table thead {
  border-bottom: 1px solid #A7A197;
  --lh: 1.2;
}
.footer__dataBlk_table thead td {
  padding-bottom: 5px;
  vertical-align: middle;
}
.footer__dataBlk_table thead td:last-child {
  min-width: 55px;
  border-left: 1px solid #A7A197;
  white-space: nowrap;
}
.footer__dataBlk_table tbody th, .footer__dataBlk_table tbody td {
  padding: 3px 0;
  text-align: center;
  vertical-align: middle;
}
.footer__dataBlk_table tbody th:last-child, .footer__dataBlk_table tbody td:last-child {
  border-left: 1px solid #A7A197;
}
.footer__dataBlk_table tbody th {
  font-weight: 300;
  --lh: 1.4;
}
.footer__dataBlk_table + p {
  margin-top: 15px;
  font-size: 12px;
  --lh: 1.6;
}
.footer__dataBlk_areaTxt {
  font-size: 12px;
  --lh: 24px;
}
.footer__dataBlk_areaTxt dt {
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .footer__dataBlk_ttl {
    margin-bottom: 16px;
    font-size: 15px;
  }
  .footer__dataBlk_table {
    table-layout: auto;
    font-size: 13px;
  }
  .footer__dataBlk_table thead td {
    padding: 6px 0;
  }
  .footer__dataBlk_table thead td:last-child {
    width: 103px;
  }
  .footer__dataBlk_table tbody th, .footer__dataBlk_table tbody td {
    padding: 7px 0;
  }
  .footer__dataBlk_areaTxt {
    font-size: 14px;
    display: flex;
    flex-wrap: wrap;
    grid-gap: 5px 40px;
  }
  .footer__dataBlk_areaTxt .areaWrap > dt {
    margin-bottom: 8px;
  }
  .footer__dataBlk_areaTxt .areaWrap:has(.areaWrap__areaList) {
    width: 100%;
  }
  .footer__dataBlk_areaTxt .areaWrap__areaList {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 0px 45px;
  }
  .footer__dataBlk_areaTxt .areaWrap__areaList--1 > div {
    min-width: 504px;
  }
}
.footer__btmBlk {
  width: 100%;
  padding: 40px 0 0;
  border-top: 1px solid var(--main);
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 42px;
  order: 1;
}
.footer__btmBlk_logo {
  width: 231px;
}
.footer__btmBlk_opentime {
  width: 100%;
  max-width: 260px;
	justify-content: center;
  --lh: 1;
  display: flex;
  flex-wrap: wrap;
  grid-gap: 32px 20px;
  position: relative;
}
@media screen and (min-width: 768px){
	.footer__btmBlk_opentime{
		max-width: 202px;
	}
}
.footer__btmBlk_opentime::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #D5D5D5;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
}
.footer__btmBlk_opentime dt {
  width: 70px;
  font-weight: 500;
  text-align: center;
}
.footer__btmBlk_opentime dd {
  font-weight: 300;
}
.footer__btmBlk_jwda {
  width: 100%;
  max-width: 175px;
}
.footer__btmBlk_policy {
  margin-top: 10px;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 30px;
}
@media screen and (max-width: 767px) {
  .footer__btmBlk--pc {
    display: contents;
  }
}
@media screen and (min-width: 768px) {
  .footer__btmBlk {
    padding: 65px 0 0;
    margin-top: 20px;
  }
  .footer__btmBlk--pc {
    flex-direction: row;
    align-items: flex-start;
    flex-wrap: wrap;
    grid-gap: 35px 40px;
  }
  .footer__btmBlk--sp {
    display: contents;
  }
  .footer__btmBlk_logo {
    width: 207px;
  }
  .footer__btmBlk_opentime {
    margin-top: 6px;
  }
  .footer__btmBlk_policy {
    width: 335px;
    margin-left: auto;
    align-self: flex-end;
    justify-content: flex-end;
    order: 1;
  }
}
@media screen and (min-width: 1024px) {
  .footer__btmBlk--pc {
    grid-gap: 35px 30px;
  }
  .footer__btmBlk_logo {
    width: 180px;
  }
  .footer__btmBlk_policy {
    width: 100%;
    margin-top: 0;
    align-self: center;
  }
}
@media screen and (min-width: 1200px) {
  .footer__btmBlk--pc {
    grid-gap: 35px 40px;
  }
  .footer__btmBlk_logo {
    width: 207px;
  }
}
.footer__floatBlk {
  width: 100%;
  height: 60px;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1020;
}
.footer__floatBlk_list {
  width: 100%;
  height: 100%;
  font-size: 15px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.footer__floatBlk_list > li {
  width: 100%;
  height: 100%;
}
.footer__floatBlk_list_btn {
  width: 100%;
  height: 100%;
  background-color: var(--color);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer__floatBlk_list_btn:hover {
  background-color: #fff;
  color: var(--color);
  opacity: 1;
}
.footer__floatBlk_list_btn--doc {
  --color: #A7A197;
}
.footer__floatBlk_list_btn--event {
  --color: #A28C77;
}
.footer__floatBlk_list_btn--modelhouse {
  --color: #837A6C;
  --ls: -0.03em;
}

