@charset "UTF-8";
/*  #header
-------------------------------------------------------------------------------*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 7777;
}
.header:before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0);
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
  -webkit-transition: 0.8s ease;
  transition: 0.8s ease;
  z-index: -1;
}

.header--renewal {
  opacity: 0;
  -webkit-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
}

.header--renewal.is-show {
  opacity: 1;
}

.header__top {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 6.1333333333vw;
  width: 100%;
  height: 17.6vw;
}
@media screen and (min-width: 800px) {
  .header__top {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 2.34375vw;
    height: 6.640625vw;
    border-bottom-color: #909090;
    border-bottom-style: solid;
    border-bottom-width: 0.078125vw;
  }
}
@media screen and (min-width: 1280px) {
  .header__top {
    padding: 0 30px;
    height: 110px;
    border-bottom-width: 1px;
  }
}

.header__logo {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__logo .header__logo-img {
  width: 21.3333333333vw;
}
@media screen and (min-width: 800px) {
  .header__logo {
    width: 9.6875vw;
  }
}
@media screen and (min-width: 1280px) {
  .header__logo {
    width: 146px;
  }
}
.header__logo img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

.header__magazinelink {
  font-size: 3.2vw;
}
@media screen and (min-width: 800px) {
  .header__magazinelink {
    display: none !important;
  }
}
@media screen and (min-width: 1280px) {
  .header__magazinelink {
    display: none !important;
  }
}

.header__logo a {
  display: block;
}

@media screen and (max-width: 799px) {
  .header__navi {
    display: none;
  }
}
@media screen and (min-width: 800px) {
  .header__navi {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.header__search {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 4.375vw;
  height: 8.59375vw;
}
@media screen and (min-width: 1280px) {
  .header__search {
    margin-left: 56px;
    height: 110px;
  }
}
.header__search:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -2.1875vw;
  width: 0.078125vw;
  height: 1.09375vw;
  background-color: #909090;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1280px) {
  .header__search:before {
    left: -28px;
    width: 1px;
    height: 14px;
  }
}

.header__search-label {
  position: relative;
  padding-left: 1.953125vw;
  color: #ffffff;
  font-size: 1.09375vw;
  font-weight: 500;
  cursor: pointer;
}
@media screen and (min-width: 1280px) {
  .header__search-label {
    padding-left: 25px;
    font-size: 14px;
  }
}
.header__search-label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.25vw;
  height: 1.25vw;
  background-image: url(../../img/renewal/common/search-wh.svg);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1280px) {
  .header__search-label:before {
    width: 16px;
    height: 16px;
  }
}

.header__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 2.1875vw;
  width: 20vw;
}
@media screen and (min-width: 1280px) {
  .header__btn {
    margin-left: 28px;
    width: 256px;
  }
}

.header__btn a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3.4375vw;
  background-color: #111;
  border-radius: 1.71875vw;
  -webkit-transition: background-color 0.4s ease-in-out;
  transition: background-color 0.4s ease-in-out;
}
@media screen and (min-width: 1280px) {
  .header__btn a {
    height: 44px;
    border-radius: 22px;
  }
}
.header__btn a span {
  color: #ffffff;
  font-size: 1.09375vw;
  font-weight: 500;
}
@media screen and (min-width: 1280px) {
  .header__btn a span {
    font-size: 14px;
  }
}
.header__btn a:hover {
  background-color: #958C68;
}
.header__btn a.-request:hover {
  background-color: #535b8b;
}

.header__btn a:nth-child(1) {
  width: 11.875vw;
}
@media screen and (min-width: 1280px) {
  .header__btn a:nth-child(1) {
    width: 152px;
  }
}

.header__btn a:nth-child(2) {
  width: 7.5vw;
}
@media screen and (min-width: 1280px) {
  .header__btn a:nth-child(2) {
    width: 96px;
  }
}

.header:before {
  background-color: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.header--sub:before {
  background-color: #ffffff !important;
  backdrop-filter: blur(0) !important;
  -webkit-backdrop-filter: blur(0) !important;
}

.header .header__logo img,
.header--sub .header__logo img {
  -webkit-filter: none;
  filter: none;
}
.header .gnavi__label,
.header--sub .gnavi__label {
  color: #111;
}
.header .gnavi__label:after,
.header--sub .gnavi__label:after {
  background-color: #111111;
}
.header .header__search-label,
.header--sub .header__search-label {
  color: #111;
}
.header .header__search-label:before,
.header--sub .header__search-label:before {
  background-image: url(../../img/renewal/common/search-bk.svg);
}

/* ------------------------------------------- bg - */
.header__bg {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  -webkit-transition: opacity 0.4s cubic-bezier(0, 0.55, 0.45, 1);
  transition: opacity 0.4s cubic-bezier(0, 0.55, 0.45, 1);
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 8888;
}
@media screen and (min-width: 800px) {
  .header__bg {
    display: none;
  }
}

.header__bg.is-show {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

/*  #main
-------------------------------------------------------------------------------*/
.main {
  position: relative;
}

.main--sub {
  padding-top: 25.6vw;
}
@media screen and (max-width: 799px) {
  .main--sub {
    padding-top: 8.59375vw;
  }
}
@media screen and (min-width: 800px) {
  .main--sub {
    padding-top: 110px;
  }
}

.single .main--sub {
  padding-top: 25.6vw;
}
@media screen and (max-width: 799px) {
  .single .main--sub {
    padding-top: 8.59375vw;
  }
}
@media screen and (min-width: 1280px) {
  .single .main--sub {
    padding-top: 110px;
  }
}
@media screen and (min-width: 800px) {
  .single .main--sub {
    padding-top: 0px;
  }
}

/*  #footer
-------------------------------------------------------------------------------*/
.footer {
  position: relative;
  padding-bottom: 18.6666666667vw;
  background-color: #1C1C1C;
}
@media screen and (min-width: 800px) {
  .footer {
    padding-bottom: 0;
  }
}

.footer__in {
  margin: 0 auto;
  width: 87.4666666667vw;
}
@media screen and (min-width: 800px) {
  .footer__in {
    width: 90.625vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__in {
    width: 1160px;
  }
}

.footer__top {
  position: relative;
  padding-top: 17.3333333333vw;
}
@media screen and (min-width: 800px) {
  .footer__top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 6.25vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__top {
    padding-top: 80px;
  }
}

@media screen and (min-width: 800px) {
  .footer__head {
    margin: 0;
    width: 26.171875vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__head {
    width: 335px;
  }
}

.footer__logo {
  width: 52.2666666667vw;
}
.footer__logo img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
@media screen and (min-width: 800px) {
  .footer__logo {
    width: 15.3125vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__logo {
    width: 196px;
  }
}

.footer__logo a {
  display: block;
}

.footer .sns {
  margin-top: 14.6666666667vw;
}
@media screen and (min-width: 800px) {
  .footer .sns {
    margin-top: 0;
  }
}

.footer__menu {
  position: relative;
  margin-top: 8vw;
}
@media screen and (min-width: 800px) {
  .footer__menu {
    margin: 0;
    width: 60.546875vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__menu {
    width: 775px;
  }
}

.footer .external {
  margin-top: 12vw;
}
@media screen and (min-width: 800px) {
  .footer .external {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer .external {
    margin-top: 100px;
  }
}

.footer__bottom {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 12vw;
  padding: 9.3333333333vw 0;
  border-top-color: #393939;
  border-top-style: solid;
  border-top-width: 1px;
}
@media screen and (min-width: 800px) {
  .footer__bottom {
    margin-top: 2.734375vw;
    padding: 1.953125vw 0;
    border-top-width: 0.078125vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__bottom {
    margin-top: 35px;
    padding: 25px 0;
    border-top-width: 1px;
  }
}

@media screen and (min-width: 800px) {
  .footer__bottom > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (min-width: 800px) {
  .footer .privacypolicy {
    margin-left: 1.953125vw;
    font-size: 0.9375vw;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (min-width: 1280px) {
  .footer .privacypolicy {
    margin-left: 25px;
    font-size: 12px;
  }
}

.footer .copyright {
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .footer .copyright {
    margin: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}

.footer__pagetop {
  position: relative;
  padding-right: 5.3333333333vw;
  color: #ffffff;
  font-family: "Crimson Text", serif;
  font-size: 3.7333333333vw;
  cursor: pointer;
  margin-right: 0 !important;
}
.footer__pagetop:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.8666666667vw;
  height: 4.2666666667vw;
  background-image: url(../../img/renewal/common/pagetop.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .footer__pagetop {
    padding-right: 1.5625vw;
    font-size: 1.25vw;
  }
  .footer__pagetop:after {
    width: 0.546875vw;
    height: 1.25vw;
  }
}
@media screen and (min-width: 1280px) {
  .footer__pagetop {
    padding-right: 20px;
    font-size: 16px;
  }
  .footer__pagetop:after {
    width: 7px;
    height: 16px;
  }
}

/*  #background
-------------------------------------------------------------------------------*/
.background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 160vw;
  background-size: cover;
  background-position: center;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
}
.background:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 160vw;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.background--top {
  max-height: 133.3333333333vw;
}
.background--top:before {
  max-height: 133.3333333333vw;
}

.background--about {
  background-image: url(../../img/renewal/about/bg_sp.jpg);
}
@media screen and (min-width: 800px) {
  .background--about {
    background-image: url(../../img/renewal/about/bg.jpg);
  }
}

.background--showroom {
  background-image: url(../../img/renewal/showroom/bg_sp.jpg);
}
@media screen and (min-width: 800px) {
  .background--showroom {
    background-image: url(../../img/renewal/showroom/bg.jpg);
  }
}

.background--sub {
  opacity: 0.1;
  -webkit-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
}

.background--sub.is-show {
  opacity: 1;
}

#background-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  min-width: 100%;
  min-height: 100%;
  max-height: 141.3333333333vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/*  #bar
-------------------------------------------------------------------------------*/
.bar {
  position: fixed;
  left: 0;
  bottom: 0 !important;
  width: 100%;
  height: 13.3333333333vw;
  z-index: 999;
  -webkit-transform: translate3d(0, 0, 0) !important;
          transform: translate3d(0, 0, 0) !important;
}
@media screen and (min-width: 800px) {
  .bar {
    display: none !important;
  }
}

.bar__in {
  position: relative;
}

.bar__reserve {
  width: 82.6666666667vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.bar__reserve a {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 13.3333333333vw;
  background-color: #958C68;
}
.bar__reserve a.-request {
  background-color: #535b8b;
}
.bar__reserve a span {
  color: #ffffff;
  font-size: 4vw;
  font-weight: 500;
}

.bar--pc {
  position: fixed;
  right: 0;
  bottom: 150px;
  z-index: 999;
  -webkit-transform: translate3d(0, 0, 0) !important;
          transform: translate3d(0, 0, 0) !important;
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  display: none;
}
@media screen and (min-width: 800px) {
  .bar--pc {
    display: block !important;
  }
}

.bar--pc.is-show {
  opacity: 1;
}

.bar__in--pc {
  position: relative;
}

.bar__reserve--pc {
  width: 300px;
}
.bar__reserve--pc a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 60px;
  background-color: #958C68;
  -webkit-box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
}
.bar__reserve--pc a span {
  color: #ffffff;
  font-size: 15px;
  font-weight: 500;
}

/*  button
-------------------------------------------------------------------------------*/
/* ------------------------------------------- box - */
.btn-box {
  position: relative;
}

.btn-box__head {
  position: relative;
  padding-bottom: 4vw;
  border-bottom-color: #CCCCCC;
  border-bottom-style: solid;
  border-bottom-width: 0.2666666667vw;
}
@media screen and (min-width: 800px) {
  .btn-box__head {
    padding-bottom: 0.78125vw;
    border-bottom-width: 0.078125vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-box__head {
    padding-bottom: 10px;
    border-bottom-width: 1px;
  }
}

.btn-box__en {
  margin-bottom: 0.5em;
  color: #909090;
  font-family: "Crimson Text", serif;
}

.btn-box__catch {
  margin-bottom: 0.5em;
  color: #222222;
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 1.5em;
}
@media screen and (min-width: 800px) {
  .btn-box__catch {
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-box__catch {
    font-size: 1.4rem;
  }
}

.btn-box__ttl {
  position: relative;
  padding-right: 10.6666666667vw;
  font-family: "Zen Old Mincho", serif;
  font-size: 7.4666666667vw;
  font-weight: 500;
  line-height: 1.4em;
}
.btn-box__ttl:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 6.9333333333vw;
  height: 6.9333333333vw;
  background-image: url(../../img/renewal/common/arrow-c-gy.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .btn-box__ttl {
    padding-right: 4.6875vw;
    font-size: 2.8125vw;
  }
  .btn-box__ttl:after {
    right: 0.78125vw;
    width: 2.34375vw;
    height: 2.34375vw;
    -webkit-transition: background-image 0.4s ease-in-out;
    transition: background-image 0.4s ease-in-out;
  }
}
@media screen and (min-width: 1280px) {
  .btn-box__ttl {
    padding-right: 60px;
    font-size: 36px;
    font-size: 3.6rem;
  }
  .btn-box__ttl:after {
    right: 10px;
    width: 30px;
    height: 30px;
  }
}

.btn-box__cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}

.btn-box__text {
  margin-top: 5.3333333333vw;
}
.btn-box__text p {
  color: #232323;
  font-size: 3.2vw;
  line-height: 1.78em;
}
@media screen and (min-width: 800px) {
  .btn-box__text {
    margin-top: 1.5625vw;
  }
  .btn-box__text p {
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-box__text {
    margin-top: 20px;
  }
  .btn-box__text p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.btn-box a {
  position: relative;
  display: block;
}

@media screen and (min-width: 800px) {
  .on--btn:hover .btn-box .btn-box__ttl:after,
  .btn-box a:hover .btn-box__ttl:after {
    background-image: url(../../img/renewal/common/arrow-c-bk.svg);
  }
}
.btn-box--bk .btn-box__en {
  color: #909090;
}
.btn-box--bk .btn-box__ttl:after {
  background-image: url(../../img/renewal/common/arrow-c-gy.svg);
}
.btn-box--bk .btn-box__text p {
  color: #232323;
}

.btn-box--wh .btn-box__en {
  color: #ccc;
}
.btn-box--wh .btn-box__ttl {
  color: #ffffff;
}
.btn-box--wh .btn-box__ttl:after {
  background-image: url(../../img/renewal/common/arrow-c-wh.svg);
}
.btn-box--wh .btn-box__text p {
  color: #ffffff;
}

/* ------------------------------------------- arrow - */
.btn-arrow {
  position: relative;
  display: inline-block;
  padding-right: 10.1333333333vw;
  font-weight: 500;
}
.btn-arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 6.9333333333vw;
  height: 6.9333333333vw;
  background-image: url(../../img/renewal/common/arrow-c-gy.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .btn-arrow {
    padding-right: 3.28125vw;
  }
  .btn-arrow:after {
    width: 2.34375vw;
    height: 2.34375vw;
    -webkit-transition: background-image 0.4s ease-in-out;
    transition: background-image 0.4s ease-in-out;
  }
  .btn-arrow:hover:after {
    background-image: url(../../img/renewal/common/arrow-c-bk.svg);
  }
}
@media screen and (min-width: 1280px) {
  .btn-arrow {
    padding-right: 42px;
  }
  .btn-arrow:after {
    width: 30px;
    height: 30px;
  }
}

/* ------------------------------------------- mail - */
.btn-mail {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 16vw;
  background-color: #232323;
  border-color: #909090;
  border-style: solid;
  border-width: 0.2666666667vw;
  border-radius: 8vw;
}
.btn-mail span {
  position: relative;
  padding-left: 10.6666666667vw;
  color: #ffffff;
  font-size: 4.2666666667vw;
  font-weight: 500;
}
.btn-mail span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url(../../img/renewal/common/mail-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .btn-mail {
    height: 4.6875vw;
    border-width: 0.078125vw;
    border-radius: 2.34375vw;
    -webkit-transition: background-color 0.4s ease-in-out, border-color 0.4s ease-in-out;
    transition: background-color 0.4s ease-in-out, border-color 0.4s ease-in-out;
  }
  .btn-mail span {
    padding-left: 3.125vw;
    font-size: 1.25vw;
  }
  .btn-mail span:before {
    width: 1.875vw;
    height: 1.875vw;
  }
  .btn-mail:hover {
    background-color: #958C68;
    border-color: #958C68;
  }
}
@media screen and (min-width: 1280px) {
  .btn-mail {
    height: 60px;
    border-width: 1px;
    border-radius: 30px;
  }
  .btn-mail span {
    padding-left: 40px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .btn-mail span:before {
    width: 24px;
    height: 24px;
  }
}

/* ------------------------------------------- radius - */
.btn-radius {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 13.3333333333vw;
  height: 13.3333333333vw;
  border-style: solid;
  border-width: 0.2666666667vw;
  border-radius: 6.6666666667vw;
}
.btn-radius:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 13.3333333333vw;
  width: 0.2666666667vw;
  height: 6.6666666667vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn-radius:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 5.3333333333vw;
  display: inline-block;
  width: 4.2666666667vw;
  height: 4.2666666667vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .btn-radius {
    padding-right: 3.90625vw;
    height: 3.90625vw;
    border-width: 0.078125vw;
    border-radius: 1.953125vw;
    -webkit-transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
    transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
  }
  .btn-radius:before {
    right: 3.90625vw;
    width: 0.078125vw;
    height: 1.953125vw;
    -webkit-transition: background-color 0.4s ease-in-out;
    transition: background-color 0.4s ease-in-out;
  }
  .btn-radius:after {
    right: 1.5625vw;
    width: 1.25vw;
    height: 1.25vw;
    -webkit-transition: background-image 0.4s ease-in-out;
    transition: background-image 0.4s ease-in-out;
  }
}
@media screen and (min-width: 1280px) {
  .btn-radius {
    padding-right: 50px;
    height: 50px;
    border-width: 1px;
    border-radius: 25px;
  }
  .btn-radius:before {
    right: 50px;
    width: 1px;
    height: 25px;
  }
  .btn-radius:after {
    right: 20px;
    width: 16px;
    height: 16px;
  }
}

.btn-radius--bk {
  border-color: #909090;
  color: #111;
}
.btn-radius--bk:before {
  background-color: #909090;
}
.btn-radius--bk:after {
  background-image: url(../../img/renewal/common/arrow-s-bk.svg);
}
@media screen and (min-width: 800px) {
  .btn-radius--bk:hover {
    background-color: #393939;
    color: #ffffff;
  }
  .btn-radius--bk:hover:before {
    background-color: #ffffff;
  }
  .btn-radius--bk:hover:after {
    background-image: url(../../img/renewal/common/arrow-s-wh.svg);
  }
}

.btn-radius--wh {
  border-color: #ffffff;
  color: #ffffff;
}
.btn-radius--wh:before {
  background-color: #ffffff;
}
.btn-radius--wh:after {
  background-image: url(../../img/renewal/common/arrow-s-wh.svg);
}
@media screen and (min-width: 800px) {
  .btn-radius--wh:hover {
    background-color: #ffffff;
    color: #111;
  }
  .btn-radius--wh:hover:before {
    background-color: #111;
  }
  .btn-radius--wh:hover:after {
    background-image: url(../../img/renewal/common/arrow-s-bk.svg);
  }
}

.btn-radius--bk {
  background-color: #393939;
  color: #ffffff;
}
.btn-radius--bk:before {
  background-color: #ffffff;
}
.btn-radius--bk:after {
  background-image: url(../../img/renewal/common/arrow-s-wh.svg);
}
@media screen and (min-width: 800px) {
  .btn-radius--bk:hover {
    border-color: #909090;
    color: #111;
    background-color: #ffffff;
  }
  .btn-radius--bk:hover:before {
    background-color: #909090;
  }
  .btn-radius--bk:hover:after {
    background-image: url(../../img/renewal/common/arrow-s-bk.svg);
  }
}

/* ------------------------------------------- btn-icon - */
.btn-icon {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-style: solid;
  border-width: 0.2666666667vw;
}
@media screen and (min-width: 800px) {
  .btn-icon {
    border-width: 0.078125vw;
    -webkit-transition: background-color 0.4s ease-in-out, border-color 0.4s ease-in-out;
    transition: background-color 0.4s ease-in-out, border-color 0.4s ease-in-out;
  }
  .btn-icon:hover {
    background-color: #958C68;
    border-color: #958C68;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon {
    border-width: 1px;
  }
}
.btn-icon span {
  position: relative;
  color: #ffffff;
  font-weight: 500;
}
.btn-icon span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-icon--wh {
  background-color: rgba(35, 35, 35, 0.6);
  border-color: rgba(204, 204, 204, 0.6);
}

.btn-icon--bk {
  background-color: #232323;
  border-color: #232323;
}

.btn-icon--mail span:before {
  background-image: url(../../img/renewal/common/mail-wh.svg);
}

.btn-icon--call span:before {
  background-image: url(../../img/renewal/common/call-wh.svg);
}

.btn-icon--i18 span {
  padding-left: 6.6666666667vw;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--i18 span {
    padding-left: 1.953125vw;
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--i18 span {
    padding-left: 25px;
    font-size: 1.4rem;
  }
}
.btn-icon--i18 span:before {
  width: 4.8vw;
  height: 4.8vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--i18 span:before {
    width: 1.40625vw;
    height: 1.40625vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--i18 span:before {
    width: 18px;
    height: 18px;
  }
}

.btn-icon--i24 span {
  padding-left: 6.6666666667vw;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--i24 span {
    padding-left: 3.125vw;
    font-size: 1.25vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--i24 span {
    padding-left: 40px;
    font-size: 1.6rem;
  }
}
.btn-icon--i24 span:before {
  width: 6.4vw;
  height: 4.8vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--i24 span:before {
    width: 1.875vw;
    height: 1.875vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--i24 span:before {
    width: 24px;
    height: 24px;
  }
}

.btn-icon--h40 {
  height: 10.6666666667vw;
  border-radius: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--h40 {
    height: 3.125vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--h40 {
    height: 40px;
    border-radius: 20px;
  }
}

.btn-icon--h46 {
  height: 10.6666666667vw;
  border-radius: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--h46 {
    height: 3.59375vw;
    border-radius: 1.796875vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--h46 {
    height: 46px;
    border-radius: 23px;
  }
}

.btn-icon--h60 {
  height: 16vw;
  border-radius: 16vw;
}
@media screen and (min-width: 800px) {
  .btn-icon--h60 {
    height: 4.6875vw;
    border-radius: 2.34375vw;
  }
}
@media screen and (min-width: 1280px) {
  .btn-icon--h60 {
    height: 60px;
    border-radius: 30px;
  }
}

/*  copyright
-------------------------------------------------------------------------------*/
.copyright {
  color: #909090;
  font-size: 3.2vw;
  font-family: "DM Sans", sans-serif;
}
@media screen and (min-width: 800px) {
  .copyright {
    font-size: 0.9375vw;
  }
}
@media screen and (min-width: 1280px) {
  .copyright {
    font-size: 12px;
  }
}

/*  #drawer
-------------------------------------------------------------------------------*/
.drawer {
  position: fixed;
  inset: 0;
  height: 100svh;
  height: -webkit-fill-available;
  height: calc(var(--vh, 1vh) * 100);
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 0.4s cubic-bezier(0.43, 0.05, 0.17, 1);
  transition: opacity 0.4s cubic-bezier(0.43, 0.05, 0.17, 1);
  z-index: 9999;
}
@media screen and (min-width: 800px) {
  .drawer {
    display: none !important;
  }
}

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

.drawer__scroll {
  position: relative;
  margin: 5.3333333333vw 0 0 auto;
  padding: 8vw 0 16vw 0;
  width: 86.6666666667vw;
  height: 100%;
  background-color: #1C1C1C;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
}

.drawer__in {
  position: relative;
  margin: 0 auto;
  width: 69.3333333333vw;
}

.drawer__reserve {
  margin-bottom: 8vw;
}

.drawer__reserve a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 13.3333333333vw;
  background-color: #958C68;
  border-radius: 6.6666666667vw;
}
.drawer__reserve a span {
  color: #ffffff;
  font-size: 4vw;
  font-weight: 500;
}

.drawer .sns {
  padding: 4.8vw 0;
  border-bottom-color: #393939;
  border-bottom-style: solid;
  border-bottom-width: 0.2666666667vw;
}

.drawer .external {
  padding: 8vw 0;
  border-bottom-color: #393939;
  border-bottom-style: solid;
  border-bottom-width: 0.2666666667vw;
}

.drawer__logo {
  margin-top: 10.6666666667vw;
  width: 38.6666666667vw;
}
.drawer__logo img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

.drawer .privacypolicy {
  margin-top: 8vw;
}

.drawer .copyright {
  margin-top: 4vw;
}

.drawer__close {
  position: fixed;
  right: 3.7333333333vw;
  bottom: 3.7333333333vw;
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  background-image: url(../assets/img/renewal/common/close.svg);
  background-size: contain;
  background-position: center;
  cursor: pointer;
  z-index: 10000;
}

/*  gnavi
-------------------------------------------------------------------------------*/
/* ------------------------------------------- gnavi - */
.gnavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1.09375vw;
}
@media screen and (min-width: 1280px) {
  .gnavi {
    gap: 14px;
  }
}

.gnavi__item--mega {
  position: relative;
}

.gnavi__label {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 8.59375vw;
  color: #ffffff;
  font-size: 1.015625vw;
  font-weight: 500;
  cursor: pointer;
}
@media screen and (min-width: 800px) {
  .gnavi__label {
    height: 6.640625vw;
  }
}
@media screen and (min-width: 1280px) {
  .gnavi__label {
    height: 110px;
    font-size: 13px;
  }
}
.gnavi__label:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.0390625vw;
  width: 0%;
  height: 0.078125vw;
  background-color: #ffffff;
  -webkit-transition: width 0.4s;
  transition: width 0.4s;
}
@media screen and (min-width: 1280px) {
  .gnavi__label:after {
    bottom: -0.5px;
    height: 1px;
  }
}
.gnavi__label:hover:after {
  width: 100%;
}

.gnavi__label a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/* 閲覧ページに下線追加 */
body.about .gnavi__label--about,
body.post-type-archive-another .gnavi__label--post-type-archive-another,
body.faq_first .gnavi__label--faq_first,
body.planning .gnavi__label--planning,
body.online .gnavi__label--online,
body.showroom .gnavi__label--showroom,
body.case .gnavi__label--case,
body.case .gnavi__label--single-case,
body.post-type-archive-case .gnavi__label--post-type-archive-case,
body.post-type-archive-story .gnavi__label--post-type-archive-story,
body.post-type-archive-voice .gnavi__label--post-type-archive-voice {
  border-bottom: solid 1px;
}

/*  keyword
-------------------------------------------------------------------------------*/
.keyword__label {
  margin-bottom: 1em;
  font-size: 1.09375vw;
  font-weight: 500;
}
@media screen and (min-width: 1280px) {
  .keyword__label {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.keyword__word {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.625vw;
}
@media screen and (min-width: 1280px) {
  .keyword__word {
    gap: 8px;
  }
}

.keyword__word a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1em;
  height: 2.34375vw;
  background-color: #ffffff;
  border-color: rgba(17, 17, 17, 0.2);
  border-style: solid;
  border-width: 0.078125vw;
  border-radius: 1.171875vw;
  font-size: 1.015625vw;
  font-weight: 500;
  -webkit-transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
  transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
}
@media screen and (min-width: 1280px) {
  .keyword__word a {
    height: 30px;
    border-width: 1px;
    border-radius: 15px;
    font-size: 13px;
    font-size: 1.3rem;
  }
}
.keyword__word a:hover {
  background-color: #111;
  color: #ffffff;
}

/*  #loading
-------------------------------------------------------------------------------*/
#loading {
  position: fixed;
  inset: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #232323;
  z-index: 9999;
}

.loading__logo {
  width: 58.1333333333vw;
}
@media screen and (min-width: 800px) {
  .loading__logo {
    width: 17.03125vw;
  }
}
@media screen and (min-width: 1280px) {
  .loading__logo {
    width: 218px;
  }
}
.loading__logo img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

.loading__progress {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1.0666666667vw;
  background-color: transparent;
}
@media screen and (min-width: 800px) {
  .loading__progress {
    height: 0.3125vw;
  }
}
@media screen and (min-width: 1280px) {
  .loading__progress {
    height: 4px;
  }
}

.loading__bar {
  width: 0%;
  height: 100%;
  background-color: #F4F4F4;
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

/*  megamenu
-------------------------------------------------------------------------------*/
.megamenu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  padding-top: 8.59375vw;
  width: 100%;
  z-index: -1;
}
@media screen and (min-width: 1280px) {
  .megamenu {
    padding-top: 110px;
  }
}
.megamenu:before {
  content: "";
  position: fixed;
  top: 0;
  left: 50%;
  display: block;
  width: calc(100vw + 30px);
  height: calc(100vh + 30px);
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  pointer-events: none;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -2;
}
.megamenu:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #F4F4F4;
  z-index: -1;
}

.megamenu__gnavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 2.34375vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__gnavi {
    padding: 30px;
  }
}

.megamenu__gnavi-content {
  width: 48.4375vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__gnavi-content {
    width: 620px;
  }
}

.megamenu__head {
  margin-bottom: 4.6875vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__head {
    margin-bottom: 40px;
  }
}

.megamenu__en {
  margin-bottom: 0.8em;
  color: #909090;
  font-family: "Crimson Text", serif;
}

.megamenu__ttl {
  font-family: "Zen Old Mincho", serif;
  font-size: 2.34375vw;
  font-weight: 400;
  line-height: 1.4em;
}
@media screen and (min-width: 1280px) {
  .megamenu__ttl {
    font-size: 30px;
    font-size: 30px;
  }
}

.megamenu__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1.171875vw 3.125vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__menu {
    gap: 15px 40px;
  }
}

.megamenu__menu li {
  width: 22.65625vw;
  border-bottom-color: #CCCCCC;
  border-bottom-style: solid;
  border-bottom-width: 0.078125vw;
  margin: 0;
}
@media screen and (min-width: 1280px) {
  .megamenu__menu li {
    width: 290px;
    border-bottom-width: 1px;
  }
}

.megamenu__menu a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 3.90625vw;
  height: 3.90625vw;
  font-weight: 500;
}
@media screen and (min-width: 1280px) {
  .megamenu__menu a {
    padding-right: 50px;
    height: 50px;
  }
}
.megamenu__menu a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.875vw;
  height: 1.875vw;
  background-image: url(../../img/renewal/common/arrow-c-gy.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: background-image 0.4s ease-in-out;
  transition: background-image 0.4s ease-in-out;
}
@media screen and (min-width: 1280px) {
  .megamenu__menu a:after {
    width: 24px;
    height: 24px;
  }
}
.megamenu__menu a:hover:after {
  background-image: url(../../img/renewal/common/arrow-c-bk.svg);
}

.megamenu__gnavi-image {
  width: 33.59375vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__gnavi-image {
    width: 360px;
  }
}

.megamenu__gnavi-image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.3125vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__gnavi-image img {
    border-radius: 4px;
  }
}

.megamenu__search {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3.125vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__search {
    padding: 40px;
  }
}

.megamenu__search-box {
  width: 53.90625vw;
}
@media screen and (min-width: 1280px) {
  .megamenu__search-box {
    width: 690px;
  }
}

.megamenu__search-keyword {
  width: calc(100% - 57.03125vw);
}
@media screen and (min-width: 1280px) {
  .megamenu__search-keyword {
    width: calc(100% - 730px);
  }
}

/*  cta-repeat
-------------------------------------------------------------------------------*/
.cta-fixed {
  position: fixed;
  left: 50%;
  bottom: 80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 94%;
  z-index: 1000;
  padding: 12px 0px 12px 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  border: solid 1px #968d68;
  /* PC表示 */
}
@media screen and (min-width: 800px) {
  .cta-fixed {
    width: 380px;
    left: auto;
    right: 24px;
    bottom: 24px;
    -webkit-transform: none;
            transform: none;
  }
}

.cta-fixed__img {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 112px;
}
.cta-fixed__img img {
  width: 100%;
  height: auto;
  display: block;
}

.cta-fixed__content {
  margin: 0 12px 0 12px;
}

.cta-fixed__sub {
  display: block;
  font-size: 13px;
  color: #666;
}
.cta-fixed__sub em {
  font-style: normal;
  font-size: 1.3em;
}

.cta-fixed__main {
  font-size: 14px;
  font-weight: bold;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  line-height: 1.4;
}

.cta-fixed__icon {
  width: 28px;
}

/*  #mv
-------------------------------------------------------------------------------*/
.mv {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 106.6666666667vw;
  max-height: 146.6666666667vw;
}
@media screen and (min-width: 800px) {
  .mv {
    min-height: 62.5vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv {
    min-height: 800px;
  }
}

.mv__content {
  position: absolute;
  bottom: 30%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 0;
}
@media screen and (max-width: 799px) {
  .mv__content {
    width: 88vw;
  }
}
@media screen and (min-width: 800px) {
  .mv__content {
    bottom: 40%;
    left: 4.6%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media screen and (max-width: 799px) {
  .mv--sub .mv__content {
    padding-bottom: 26.6666666667vw;
  }
}

/* ------------------------------------------- CTA - */
.mv__contact {
  position: absolute;
  bottom: 4vw;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
          transform: translate(-50%, 0%);
  z-index: 0;
  width: 88vw;
  background-color: rgba(35, 35, 35, 0.7);
  padding: 4vw 4vw;
}
@media screen and (min-width: 800px) {
  .mv__contact {
    left: 4.6%;
    -webkit-transform: translate(0%);
            transform: translate(0%);
    width: 360px;
    padding: 20px;
  }
}
.mv__contact li {
  color: #fff;
  margin: 2.6666666667vw 0;
}
@media screen and (min-width: 800px) {
  .mv__contact li {
    margin: 10px 0;
    font-size: 15px;
  }
}

.mv__contact-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mv__contact-button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8em;
}

.mv__contact-maincopy {
  width: 100%;
  color: #ffffff;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 60px;
  background-color: #958C68;
  -webkit-box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 800px) {
  .mv__contact-maincopy {
    font-size: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__contact-maincopy {
    font-size: 20px;
  }
}

.mv__contact-microcopy {
  font-size: 3.2vw;
  color: #ffffff;
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 800px) {
  .mv__contact-microcopy {
    font-size: 1.25vw;
    margin-top: 15px;
  }
}
@media screen and (min-width: 1280px) {
  .mv__contact-microcopy {
    font-size: 14px;
  }
}

/* ------------------------------------------- TOPページ用 - */
.mv__copy {
  position: relative;
  margin-bottom: 10.6666666667vw;
  display: inline-block;
  color: #ffffff;
  font-family: "Zen Old Mincho", serif;
  font-size: 9.0666666667vw;
  font-weight: 400;
  line-height: 1.44em;
  opacity: 0;
  overflow: hidden;
}
.mv__copy span {
  position: relative;
}
@media screen and (min-width: 800px) {
  .mv__copy {
    margin-bottom: 3.125vw;
    font-size: 5.46875vw !important;
  }
}
@media screen and (min-width: 1280px) {
  .mv__copy {
    margin-bottom: 40px;
    font-size: 7rem !important;
  }
}

.mv__copy.is-show {
  opacity: 1;
  visibility: visible;
}

.mv__copy.is-show span {
  -webkit-animation: popanime 0.6s ease-out forwards;
          animation: popanime 0.6s ease-out forwards;
}

.mv__text.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.mv__text {
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: all 1.2s ease;
  transition: all 1.2s ease;
}
.mv__text p {
  color: #ffffff;
  font-size: 3.7333333333vw;
  line-height: 1.71em;
}
@media screen and (min-width: 800px) {
  .mv__text p {
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 800px) and (min-width: 1280px) {
  .mv__text p {
    font-size: 1.4rem;
  }
}

.mv__news {
  position: absolute;
  bottom: 8vw;
  width: 87.4666666667vw;
}
@media screen and (max-width: 799px) {
  .mv__news {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media screen and (min-width: 800px) {
  .mv__news {
    right: 4.6%;
    bottom: 3.125vw;
    width: 31.25vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__news {
    bottom: 40px;
    width: 400px;
  }
}

.mv__news-post a {
  position: relative;
  display: block;
  padding-bottom: 4.2666666667vw;
  border-bottom-color: rgba(255, 255, 255, 0.5);
  border-bottom-style: solid;
  border-bottom-width: 0.2666666667vw;
}
@media screen and (min-width: 800px) {
  .mv__news-post a {
    padding-bottom: 1.5625vw;
    border-bottom-width: 0.078125vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__news-post a {
    padding-bottom: 20px;
    border-bottom-width: 1px;
  }
}

.mv__news-post__date {
  margin-bottom: 0.8em;
  color: #CCCCCC;
  font-family: "Crimson Text", serif;
  font-size: 3.2vw;
}
@media screen and (min-width: 800px) {
  .mv__news-post__date {
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__news-post__date {
    font-size: 1.4rem;
  }
}

.mv__news-post__ttl {
  position: relative;
  padding-right: 10.6666666667vw;
  max-height: 1.5em;
  color: #ffffff;
  font-size: 3.4666666667vw;
  font-weight: 400;
  line-height: 1.5em;
  -webkit-line-clamp: 1;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mv__news-post__ttl:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background-image: url(../../img/renewal/common/arrow-s-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .mv__news-post__ttl {
    padding-right: 3.28125vw;
    font-size: 1.09375vw;
  }
  .mv__news-post__ttl:after {
    width: 1.71875vw;
    height: 1.71875vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__news-post__ttl {
    padding-right: 42px;
    font-size: 1.4rem;
  }
  .mv__news-post__ttl:after {
    width: 22px;
    height: 22px;
  }
}

/*  #mv（トップのみUX改善用）
-------------------------------------------------------------------------------*/
.mv--top {
  min-height: 106.6666666667vw;
  max-height: 133.3333333333vw;
}
@media screen and (min-width: 800px) {
  .mv--top {
    min-height: 62.5vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv--top {
    min-height: 800px;
  }
}
.mv--top .mv__inner {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 800px) {
  .mv--top .mv__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 3.125vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv--top .mv__inner {
    padding: 6.25vw;
  }
}
@media screen and (min-width: 1360px) {
  .mv--top .mv__inner {
    padding: 9.375vw;
  }
}
.mv--top .mv__cta {
  margin-top: 100px;
}
.mv--top .mv__badge {
  width: 89.6vw;
  height: auto;
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .mv--top .mv__badge {
    width: 46.875vw;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 1280px) {
  .mv--top .mv__badge {
    width: 550px;
  }
}
.mv--top .mv__button {
  display: none;
}
@media screen and (min-width: 800px) {
  .mv--top .mv__button {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (min-width: 800px) {
  .mv--top .mv__button__maincopy {
    width: 336px;
  }
}
.mv--top .mv__content {
  position: relative;
  top: auto;
  left: auto;
  bottom: auto;
  right: auto;
  -webkit-transform: translate(0%);
          transform: translate(0%);
  margin-top: 26.6666666667vw;
}
@media screen and (min-width: 800px) {
  .mv--top .mv__content {
    margin-top: 0;
  }
}

.mv__button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
}

.mv__button__microcopy {
  font-size: 3.2vw;
  color: #ffffff;
}
@media screen and (min-width: 800px) {
  .mv__button__microcopy {
    font-size: 1.25vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__button__microcopy {
    font-size: 14px;
  }
}

.mv__button__maincopy {
  width: 86.4vw;
  color: #ffffff;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 60px;
  background-color: #958C68;
  -webkit-box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 16px 4px rgba(0, 0, 0, 0.2);
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 800px) {
  .mv__button__maincopy {
    font-size: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__button__maincopy {
    font-size: 20px;
    width: 360px;
  }
}

/* ------------------------------------------- 新下層ページ用 - */
.mv__en {
  margin-bottom: 0.5em;
  color: rgba(255, 255, 255, 0.5);
  font-family: "Crimson Text", serif;
  font-size: 4vw;
  font-weight: 400;
  line-height: 1.25em;
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}
@media screen and (min-width: 800px) {
  .mv__en {
    font-size: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__en {
    font-size: 2rem;
  }
}

.mv__en.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.mv__ttl {
  color: #ffffff;
  font-family: "Zen Old Mincho", serif;
  font-size: 9.6vw;
  font-weight: 500;
  line-height: 1.45em;
  opacity: 0;
  overflow: hidden;
}
@media screen and (min-width: 800px) {
  .mv__ttl {
    font-size: 4.6875vw;
    line-height: 1.45em;
  }
}
@media screen and (min-width: 1280px) {
  .mv__ttl {
    font-size: 6rem;
  }
}

.mv__ttl.is-show {
  opacity: 1;
  visibility: visible;
}

.mv__ttl.is-show span {
  -webkit-animation: popanime 0.6s ease-out forwards;
          animation: popanime 0.6s ease-out forwards;
}

.mv__index {
  padding-top: 4vw;
  width: 100%;
  -webkit-transition: opacity 2s ease;
  transition: opacity 2s ease;
  background-color: #393939;
  padding: 8vw;
}
@media screen and (min-width: 800px) {
  .mv__index {
    opacity: 0;
    border-top-color: rgba(244, 244, 244, 0.3);
    border-top-style: solid;
    border-top-width: 0.2666666667vw;
    position: absolute;
    right: 4.6%;
    bottom: 3.125vw;
    padding: 0;
    background: none;
    padding-top: 1.171875vw;
    width: 31.25vw;
    border-top-width: 0.078125vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index {
    bottom: 40px;
    padding-top: 15px;
    width: 400px;
    border-top-width: 1px;
  }
}

.mv__index.is-show {
  opacity: 1;
}

.mv__index-ttl {
  margin-bottom: 0.8em;
  font-family: "DM Sans", sans-serif;
  color: #ffffff;
  font-weight: 400;
}

.mv__index-menu > li {
  position: relative;
  padding-left: 6.9333333333vw;
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li {
    padding-left: 2.03125vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index-menu > li {
    padding-left: 26px;
  }
}
.mv__index-menu > li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 1.6vw;
  height: 1.6vw;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li:before {
    width: 0.46875vw;
    height: 0.46875vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index-menu > li:before {
    width: 6px;
    height: 6px;
  }
}

.mv__index-menu > li:nth-child(n+2) {
  margin-top: 3.2vw;
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li:nth-child(n+2) {
    margin-top: 0.9375vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index-menu > li:nth-child(n+2) {
    margin-top: 12px;
  }
}

.mv__index-menu > li a {
  position: relative;
  display: inline-block;
  padding-right: 6.9333333333vw;
  color: #ffffff;
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: 1.5em;
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li a {
    padding-right: 2.03125vw;
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index-menu > li a {
    padding-right: 26px;
    font-size: 1.4rem;
  }
}
.mv__index-menu > li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 4.8vw;
  height: 4.8vw;
  background-image: url(../../img/renewal/common/down-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li a:after {
    width: 1.40625vw;
    height: 1.40625vw;
    -webkit-transition: background-image 0.4s ease-in-out;
    transition: background-image 0.4s ease-in-out;
  }
}
@media screen and (min-width: 1280px) {
  .mv__index-menu > li a:after {
    width: 18px;
    height: 18px;
  }
}
@media screen and (min-width: 800px) {
  .mv__index-menu > li a:hover:after {
    background-image: url(../../img/renewal/common/down-bk.svg);
  }
}

/*  .parallax
-------------------------------------------------------------------------------*/
.parallax {
  position: relative;
  overflow: hidden;
}

/*  privacypolicy
-------------------------------------------------------------------------------*/
.privacypolicy {
  color: #ffffff;
  font-size: 3.2vw;
}
@media screen and (min-width: 800px) {
  .privacypolicy {
    font-size: 0.9375vw;
  }
}
@media screen and (min-width: 1280px) {
  .privacypolicy {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

/*  search
-------------------------------------------------------------------------------*/
.search {
  position: relative;
}

.search__form {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0.78125vw;
  width: 100%;
  height: 4.6875vw;
  border-color: rgba(17, 17, 17, 0.2);
  border-style: solid;
  border-width: 0.078125vw;
  border-radius: 2.34375vw;
  overflow: hidden;
  background-color: #ffffff;
}
@media screen and (min-width: 1280px) {
  .search__form {
    padding: 0 10px;
    height: 60px;
    border-width: 1px;
    border-radius: 30px;
  }
}

.search__form input[type=text] {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 1.5625vw;
  color: #111;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.25vw;
  font-weight: 500;
  background: transparent;
}
@media screen and (min-width: 1280px) {
  .search__form input[type=text] {
    padding: 0 20px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.search__form input[type=text]::-webkit-input-placeholder {
  color: rgba(35, 35, 35, 0.3);
}

.search__form input[type=text]::-moz-placeholder {
  color: rgba(35, 35, 35, 0.3);
}

.search__form input[type=text]:-ms-input-placeholder {
  color: rgba(35, 35, 35, 0.3);
}

.search__form input[type=text]::-ms-input-placeholder {
  color: rgba(35, 35, 35, 0.3);
}

.search__form input[type=text]::placeholder {
  color: rgba(35, 35, 35, 0.3);
}

.search__submit {
  width: 9.375vw;
}
@media screen and (min-width: 1280px) {
  .search__submit {
    width: 120px;
  }
}

.search__submit button {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 3.515625vw;
  width: 100%;
  height: 3.4375vw;
  background-color: #1a1a1a;
  border-radius: 1.71875vw;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.09375vw;
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: background-color 0.4s ease-in-out;
  transition: background-color 0.4s ease-in-out;
}
@media screen and (min-width: 1280px) {
  .search__submit button {
    padding-left: 45px;
    height: 44px;
    border-radius: 22px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.search__submit button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.5625vw;
  display: inline-block;
  width: 1.25vw;
  height: 1.25vw;
  background-image: url(../../img/renewal/common/search-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1280px) {
  .search__submit button:before {
    left: 20px;
    width: 16px;
    height: 16px;
  }
}
.search__submit button:hover {
  background-color: #958C68;
}

/*  section
-------------------------------------------------------------------------------*/
.sec {
  position: relative;
}

.sec__in {
  position: relative;
  margin: 0 auto;
  width: 87.4666666667vw;
  z-index: 1;
}
@media screen and (min-width: 800px) {
  .sec__in {
    width: 90.625vw;
  }
}
@media screen and (min-width: 1280px) {
  .sec__in {
    width: 1160px;
  }
}

.sec-head {
  position: relative;
}

.sec__en {
  position: relative;
  margin-bottom: 0.5em;
  font-family: "Crimson Text", serif;
}

.sec__ttl {
  position: relative;
  font-family: "Zen Old Mincho", serif;
  font-size: 7.4666666667vw;
  font-weight: 500;
  line-height: 1.5em;
}
.sec__ttl--bk {
  color: #111;
}
.sec__ttl--wh {
  color: #ffffff;
}
@media screen and (min-width: 800px) {
  .sec__ttl {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 1280px) {
  .sec__ttl {
    font-size: 40px;
    font-size: 4rem;
  }
}

.sec__head--bk .sec__en {
  color: #909090;
}
.sec__head--bk .sec__ttl {
  color: #111;
}
.sec__head--wh .sec__en {
  color: #ccc;
}
.sec__head--wh .sec__ttl {
  color: #ffffff;
}

/*  slide (swiper)
-------------------------------------------------------------------------------*/
.slide {
  position: relative;
}

/* ------------------------------------------- disable - */
.swiper-wrapper-disable {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* ------------------------------------------- control - */
.slide__control {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 20.3125vw;
}
@media screen and (min-width: 1280px) {
  .slide__control {
    width: 260px;
  }
}
@media screen and (max-width: 799px) {
  .slide__control {
    display: none;
  }
}

.slide__navi {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 7.03125vw;
}
@media screen and (min-width: 1280px) {
  .slide__navi {
    width: 90px;
  }
}

.slide__prev,
.slide__next {
  width: 3.125vw;
  height: 3.125vw;
  background-size: contain;
  -webkit-transition: background-image 0.4s ease-in-out;
  transition: background-image 0.4s ease-in-out;
  cursor: pointer;
}
@media screen and (min-width: 1280px) {
  .slide__prev,
  .slide__next {
    width: 40px;
    height: 40px;
  }
}

.slide__fraction {
  bottom: 0 !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 11.71875vw !important;
  z-index: 1;
}
@media screen and (min-width: 1280px) {
  .slide__fraction {
    width: 150px !important;
  }
}
.slide__fraction .swiper-pagination-current,
.slide__fraction .swiper-pagination-total {
  font-family: "DM Sans", sans-serif;
  font-size: 1.09375vw;
  font-optical-sizing: auto;
}
@media screen and (min-width: 1280px) {
  .slide__fraction .swiper-pagination-current,
  .slide__fraction .swiper-pagination-total {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.slide__fraction .slide__bar {
  position: relative;
  width: 7.8125vw;
  height: 0.15625vw;
  background-color: #a1a1a1;
}
@media screen and (min-width: 1280px) {
  .slide__fraction .slide__bar {
    width: 100px;
    height: 2px;
  }
}
.slide__fraction .slide__bar span {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #232323;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.slide__control--bk .slide__prev {
  background-image: url(../../img/renewal/slide/prev-tp.svg);
}
.slide__control--bk .slide__prev:hover {
  background-image: url(../../img/renewal/slide/prev-bk.svg);
}
.slide__control--bk .slide__next {
  background-image: url(../../img/renewal/slide/next-tp.svg);
}
.slide__control--bk .slide__next:hover {
  background-image: url(../../img/renewal/slide/next-bk.svg);
}
.slide__control--bk .slide__fraction .swiper-pagination-current,
.slide__control--bk .slide__fraction .swiper-pagination-total {
  color: #111;
}
.slide__control--bk .slide__fraction .slide__bar {
  background-color: #a1a1a1;
}
.slide__control--bk .slide__fraction .slide__bar span {
  background-color: #232323;
}

.slide__control--wh .slide__prev {
  background-image: url(../../img/renewal/slide/prev-gy.svg);
}
.slide__control--wh .slide__prev:hover {
  background-image: url(../../img/renewal/slide/prev-wh.svg);
}
.slide__control--wh .slide__next {
  background-image: url(../../img/renewal/slide/next-gy.svg);
}
.slide__control--wh .slide__next:hover {
  background-image: url(../../img/renewal/slide/next-wh.svg);
}
.slide__control--wh .slide__fraction .swiper-pagination-current,
.slide__control--wh .slide__fraction .swiper-pagination-total {
  color: #ffffff;
}
.slide__control--wh .slide__fraction .slide__bar {
  background-color: #676767;
}
.slide__control--wh .slide__fraction .slide__bar span {
  background-color: #cccccc;
}

#case-fraction.is-active .slide__bar span,
#voice-fraction.is-active .slide__bar span {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transition: -webkit-transform 3000ms linear;
  transition: -webkit-transform 3000ms linear;
  transition: transform 3000ms linear;
  transition: transform 3000ms linear, -webkit-transform 3000ms linear;
}

/* ------------------------------------------- pagination - */
.slide__pagination {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 3;
}

.slide__pagination {
  bottom: auto !important;
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .slide__pagination {
    margin-top: 0;
  }
}

.swiper-pagination-bullet {
  margin: 0 !important;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  border-radius: 50% !important;
  -webkit-transition: background-color 0.4s;
  transition: background-color 0.4s;
  opacity: 1;
}
@media screen and (min-width: 800px) {
  .swiper-pagination-bullet {
    width: 0.625vw;
    height: 0.625vw;
  }
}
@media screen and (min-width: 1280px) {
  .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
  }
}

.slide__pagination .swiper-pagination-bullet:nth-child(n+2) {
  margin-left: 3.2vw !important;
}
@media screen and (min-width: 800px) {
  .slide__pagination .swiper-pagination-bullet:nth-child(n+2) {
    margin-left: 0.9375vw !important;
  }
}
@media screen and (min-width: 800px) {
  .slide__pagination .swiper-pagination-bullet:nth-child(n+2) {
    margin-left: 12px !important;
  }
}

.slide__pagination--wh .swiper-pagination-bullet {
  background-color: #454545;
}
.slide__pagination--wh .swiper-pagination-bullet-active {
  background-color: #cccccc !important;
}

.slide__pagination--bk .swiper-pagination-bullet {
  background-color: #cecece;
}
.slide__pagination--bk .swiper-pagination-bullet-active {
  background-color: #393939 !important;
}

/*  toggle
-------------------------------------------------------------------------------*/
.toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 17.3333333333vw;
  height: 13.3333333333vw;
  background-color: #222222;
  cursor: pointer;
}

.toggle span {
  position: absolute;
  left: 50%;
  width: 9.6vw;
  height: 0.5333333333vw;
  background-color: #ffffff;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 2;
}

.toggle span:nth-of-type(1) {
  top: 5.3333333333vw;
}

.toggle span:nth-of-type(2) {
  top: 8vw;
}

.case__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin: 24px 0;
}

.case__nav-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid #eee;
  border-radius: 10px;
  background: #fff;
  -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 12px rgba(0, 0, 0, 0.1);
  text-decoration: none;
  color: #000;
  cursor: pointer;
}

.case__nav-item svg {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.case__nav-item--category {
  /* カテゴリー用スタイルがあればここに追加 */
}

.case__nav-item--filter {
  /* 条件絞り込み用スタイルがあればここに追加 */
}

.case__nav-accordion {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: max-height 0.4s ease, opacity 0.4s ease;
  transition: max-height 0.4s ease, opacity 0.4s ease;
  margin-bottom: 40px;
  text-align: left;
  display: none;
  padding: 20px;
}
.case__nav-accordion + * {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.case__nav-accordion.is-active {
  max-height: 1000px; /* 十分大きな値で高さを確保 */
  opacity: 1;
  display: block;
}

.case__nav-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.case__nav-list-item {
  margin: 0;
}

.case__nav-list-link {
  text-decoration: none;
  color: #333;
  padding: 12px;
  display: block;
  border-radius: 6px;
  font-size: 14px;
  background: #f0f0f0;
}

.case__nav-list-link:hover {
  background: #f0f0f0;
}

/* --------------------------------
  Author Box
-------------------------------- */
.author-box {
  border: 2px solid #3E3A39;
  border-radius: 16px;
  padding: 32px;
  background-color: #fff;
}

.author-box__header {
  margin-bottom: 24px;
}

.author-box__title {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}

/* body */
.author-box__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}

/* avatar */
.author-box__avatar img {
  border-radius: 50%;
  display: block;
}

/* profile */
.author-box__profile {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.author-box__name {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}

.author-box__description {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 16px;
}

/* sns */
.author-box__sns > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.author-box__sns a {
  background-color: #3E3A39;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 32px;
  height: 32px;
}

.author-box__sns svg {
  width: 16px;
  height: 16px;
}

/*  external
-------------------------------------------------------------------------------*/
.external {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 4vw 8vw;
}
@media screen and (min-width: 800px) {
  .external {
    gap: 2.34375vw;
  }
}
@media screen and (min-width: 800px) {
  .external {
    gap: 30px;
  }
}

.external a {
  position: relative;
  display: block;
  padding-right: 5.3333333333vw;
  color: #ffffff;
  font-size: 3.7333333333vw;
  font-weight: 500;
}
.external a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 3.2vw;
  height: 3.2vw;
  background-image: url(../../img/renewal/common/external-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 800px) {
  .external a {
    padding-right: 1.5625vw;
    font-size: 1.09375vw;
  }
  .external a:after {
    width: 0.9375vw;
    height: 0.9375vw;
  }
  .external a {
    -webkit-transition: opacity 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out;
  }
}
@media screen and (min-width: 1280px) {
  .external a {
    padding-right: 20px;
    font-size: 14px;
  }
  .external a:after {
    width: 12px;
    height: 12px;
  }
}
@media screen and (min-width: 800px) {
  .external a:hover {
    opacity: 0.7;
  }
}

/*  #group
-------------------------------------------------------------------------------*/
.sec--group {
  background-color: #232323;
}
@media screen and (min-width: 800px) {
  .sec--group {
    padding: 3.125vw 0;
  }
}
@media screen and (min-width: 1280px) {
  .sec--group {
    padding: 40px 0;
  }
}

.gyosha .sec--group,
.faq_first .sec--group,
.post-type-archive-blog .sec--group,
.post-type-archive-voice .sec--group,
.post-type-archive-story .sec--group,
.post-type-archive-another .sec--group,
.single-story .sec--group,
.single-another .sec--group,
.single-voice .sec--group,
.contact .sec--group,
.nagoya_contact_form .sec--group,
.thanks .sec--group,
.request .sec--group,
.mail_contact_form .sec--group,
.corporate_form .sec--group,
.nagoya_reserve_form .sec--group,
.yokohama_reserve_form .sec--group,
.ginza_reserve_form .sec--group,
.reserve-online .sec--group {
  margin-top: 100px;
}
@media screen and (min-width: 800px) {
  .gyosha .sec--group,
  .faq_first .sec--group,
  .post-type-archive-blog .sec--group,
  .post-type-archive-voice .sec--group,
  .post-type-archive-story .sec--group,
  .post-type-archive-another .sec--group,
  .single-story .sec--group,
  .single-another .sec--group,
  .single-voice .sec--group,
  .contact .sec--group,
  .nagoya_contact_form .sec--group,
  .thanks .sec--group,
  .request .sec--group,
  .mail_contact_form .sec--group,
  .corporate_form .sec--group,
  .nagoya_reserve_form .sec--group,
  .yokohama_reserve_form .sec--group,
  .ginza_reserve_form .sec--group,
  .reserve-online .sec--group {
    margin-top: 3.125vw;
  }
}
@media screen and (min-width: 1280px) {
  .gyosha .sec--group,
  .faq_first .sec--group,
  .post-type-archive-blog .sec--group,
  .post-type-archive-voice .sec--group,
  .post-type-archive-story .sec--group,
  .post-type-archive-another .sec--group,
  .single-story .sec--group,
  .single-another .sec--group,
  .single-voice .sec--group,
  .contact .sec--group,
  .nagoya_contact_form .sec--group,
  .thanks .sec--group,
  .request .sec--group,
  .mail_contact_form .sec--group,
  .corporate_form .sec--group,
  .nagoya_reserve_form .sec--group,
  .yokohama_reserve_form .sec--group,
  .ginza_reserve_form .sec--group,
  .reserve-online .sec--group {
    margin-top: 100px;
  }
}

@media screen and (max-width: 799px) {
  .group {
    padding: 8vw 6.2666666667vw;
    overflow-x: scroll;
  }
}
@media screen and (min-width: 800px) {
  .group {
    margin: 0 auto;
    width: 90.625vw;
  }
}
@media screen and (min-width: 1280px) {
  .group {
    width: 1160px;
  }
}

.group__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 799px) {
  .group__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.3333333333vw;
  }
}

.group__menu a {
  display: block;
  width: 100%;
}
@media screen and (min-width: 800px) {
  .group__menu a {
    width: 21.71875vw;
  }
}
@media screen and (min-width: 1280px) {
  .group__menu a {
    width: 278px;
  }
}

.group__menu img {
  width: 85%;
  margin: auto;
  display: block;
}
@media screen and (min-width: 800px) {
  .group__menu img {
    width: 100%;
  }
}

/*  link
-------------------------------------------------------------------------------*/
.link {
  position: relative;
  height: 106.6666666667vw;
}
@media screen and (min-width: 800px) {
  .link {
    height: 39.0625vw;
  }
}
@media screen and (min-width: 1280px) {
  .link {
    height: 500px;
  }
}

.link a {
  position: relative;
  display: block;
  overflow: hidden;
}
.link a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

@media screen and (min-width: 800px) {
  .link a:hover .link__bg img {
    -webkit-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1);
    cursor: pointer;
  }
}

.link__bg {
  position: relative;
  width: 100%;
}
.link__bg img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  height: 106.6666666667vw;
  -o-object-position: center center;
     object-position: center center;
  font-family: "object-fit: cover; object-position: center top;";
}
@media screen and (min-width: 800px) {
  .link__bg img {
    height: 39.0625vw;
  }
}
@media screen and (min-width: 1280px) {
  .link__bg img {
    height: 500px;
  }
}

.link .btn-box {
  position: absolute;
  left: 50%;
  bottom: 8vw;
  width: 87.4666666667vw;
  z-index: 2;
}
@media screen and (max-width: 799px) {
  .link .btn-box {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.link .btn-box .btn-box__ttl > span {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.link .btn-box .btn-box__ttl span.label {
  position: relative;
  top: 0.15em;
  display: inline-block;
  margin-right: 0.5em;
  padding: 0.4em 0.5em 0.5em 0.5em;
  border-color: #ffffff;
  border-style: solid;
  border-width: 0.2666666667vw;
  border-radius: 1.0666666667vw;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 1;
}
.link .btn-box .btn-box__ttl--online > span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 800px) {
  .link .btn-box {
    left: 4.6875vw;
    bottom: 4.6875vw;
    width: 40.625vw;
  }
  .link .btn-box .btn-box__ttl span.label {
    border-width: 0.078125vw;
    border-radius: 0.3125vw;
    font-size: 1.171875vw;
  }
}
@media screen and (min-width: 1280px) {
  .link .btn-box {
    left: 60px;
    bottom: 60px;
    width: 520px;
  }
  .link .btn-box .btn-box__ttl span.label {
    border-width: 1px;
    border-radius: 4px;
    font-size: 1.5rem;
  }
}

/*  navi
-------------------------------------------------------------------------------*/
@media screen and (max-width: 799px) {
  .navi {
    border-top-color: #393939;
    border-top-style: solid;
    border-top-width: 0.2666666667vw;
  }
}
@media screen and (min-width: 800px) {
  .navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 799px) {
  .navi > ul:not(.navi__level) {
    border-bottom-color: #393939;
    border-bottom-style: solid;
    border-bottom-width: 0.2666666667vw;
  }
}

.navi__level {
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

@media screen and (max-width: 799px) {
  .navi__level li {
    border-bottom-color: #393939;
    border-bottom-style: solid;
    border-bottom-width: 0.2666666667vw;
  }
}

.navi > ul > li > div {
  position: relative;
}

.navi > ul > li > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 18.6666666667vw;
  color: #ffffff;
  font-size: 4.2666666667vw;
  font-weight: 400;
  line-height: 1.6em;
  white-space: nowrap;
}
@media screen and (min-width: 800px) {
  .navi > ul > li > a {
    display: block;
    height: auto;
    font-size: 1.09375vw;
    -webkit-transition: opacity 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out;
  }
}
@media screen and (min-width: 1280px) {
  .navi > ul > li > a {
    font-size: 14px;
  }
}
@media screen and (min-width: 800px) {
  .navi > ul > li > a:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 800px) {
  .navi > ul > li:nth-child(n+2) {
    margin-top: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .navi > ul > li:nth-child(n+2) {
    margin-top: 20px;
  }
}

@media screen and (max-width: 799px) {
  .navi__parent {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 18.6666666667vw;
    color: #ffffff;
    font-size: 4.2666666667vw;
    font-weight: 500;
    line-height: 1.6em;
    white-space: nowrap;
  }
}

@media screen and (max-width: 799px) {
  .navi > ul > li > .navi__parent:nth-child(1):after {
    content: "";
    position: absolute;
    top: 50%;
    right: 4vw;
    display: inline-block;
    width: 3.2vw;
    height: 3.2vw;
    background-image: url(../assets/img/renewal/common/plus.svg);
    background-size: contain;
    background-position: center;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 2;
    background-repeat: no-repeat;
  }
}

@media screen and (max-width: 799px) {
  .navi > ul > li > .navi__parent:nth-child(1).is-open:after {
    background-image: url(../assets/img/renewal/common/minus.svg);
  }
}

.navi__parent p {
  color: #fff;
  font-size: 4.2666666667vw;
  font-weight: 400;
  line-height: 1.6em;
  margin: 0;
}
@media screen and (min-width: 800px) {
  .navi__parent p {
    margin-bottom: 1.5625vw;
    color: #999;
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .navi__parent p {
    margin-bottom: 20px;
    font-size: 14px;
  }
}

.navi__child {
  position: relative;
}
@media screen and (max-width: 799px) {
  .navi__child {
    display: none;
  }
}

@media screen and (max-width: 799px) {
  .navi__child > ul {
    margin-bottom: 5.3333333333vw;
  }
}

.navi__child > ul > li a {
  display: block;
  color: #ccc;
  font-weight: 400;
  line-height: 1.6em;
  white-space: nowrap;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 800px) {
  .navi__child > ul > li a {
    height: auto;
    color: #ffffff;
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1280px) {
  .navi__child > ul > li a {
    font-size: 14px;
  }
}
@media screen and (min-width: 800px) {
  .navi__child > ul > li a {
    -webkit-transition: opacity 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out;
  }
}
@media screen and (min-width: 800px) {
  .navi__child > ul > li a:hover {
    opacity: 0.7;
  }
}

.navi__child > ul > li:nth-child(n+2) {
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 800px) {
  .navi__child > ul > li:nth-child(n+2) {
    margin-top: 0.78125vw;
  }
}
@media screen and (min-width: 1280px) {
  .navi__child > ul > li:nth-child(n+2) {
    margin-top: 10px;
  }
}

/*  #consul
-------------------------------------------------------------------------------*/
.sec--consul {
  padding: 13.3333333333vw 0;
  background-color: #ffffff;
}
@media screen and (min-width: 800px) {
  .sec--consul {
    padding: 6.25vw 0;
  }
}
@media screen and (min-width: 1280px) {
  .sec--consul {
    padding: 80px 0;
  }
}

@media screen and (min-width: 800px) {
  .consul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.consul__image {
  position: relative;
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .consul__image {
    margin: 0;
    width: 43.75vw;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (min-width: 1280px) {
  .consul__image {
    width: 560px;
  }
}

@media screen and (min-width: 800px) {
  .consul__content {
    width: 39.0625vw;
  }
}
@media screen and (min-width: 1280px) {
  .consul__content {
    width: 500px;
  }
}

/*  #reserve
-------------------------------------------------------------------------------*/
.sec--reserve {
  padding: 18.6666666667vw 0;
  background-image: url(../../img/renewal/front/reserve-bg_sp.jpg);
  background-size: cover;
}
@media screen and (min-width: 800px) {
  .sec--reserve {
    padding: 6.25vw 0;
    background-image: url(../../img/renewal/front/reserve-bg.jpg);
  }
}
@media screen and (min-width: 1280px) {
  .sec--reserve {
    padding: 80px 0;
  }
}

.reserve {
  position: relative;
  padding-top: 22.6666666667vw;
}
@media screen and (min-width: 800px) {
  .reserve {
    padding: 0 0 0 51.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .reserve {
    padding-left: 660px;
  }
}

@media screen and (max-width: 799px) {
  .reserve .sec__head {
    position: absolute;
    top: 0;
    left: 0;
  }
}

.reserve__text {
  margin-top: 5.3333333333vw;
}
.reserve__text p {
  color: #CCCCCC;
  line-height: 1.5em;
}
@media screen and (min-width: 800px) {
  .reserve__text {
    margin-top: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .reserve__text {
    margin-top: 20px;
  }
}

@media screen and (min-width: 800px) {
  .reserve__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 43.75vw;
    height: 22.03125vw;
  }
}
@media screen and (min-width: 1280px) {
  .reserve__image {
    width: 560px;
    height: 282px;
  }
}

.reserve__btn {
  margin: 9.3333333333vw auto 0 auto;
  width: 74.6666666667vw;
}
@media screen and (min-width: 800px) {
  .reserve__btn {
    margin: 3.125vw 0 0 0;
    width: 21.875vw;
  }
}
@media screen and (min-width: 1280px) {
  .reserve__btn {
    margin: 40px 0 0 0;
    width: 280px;
  }
}

/*  sns
-------------------------------------------------------------------------------*/
.sns {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .sns {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
    gap: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .sns {
    gap: 20px;
  }
}

.sns a {
  display: block;
  width: 5.8666666667vw;
}
.sns a img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 800px) {
  .sns a {
    width: 1.71875vw;
  }
}
@media screen and (min-width: 1280px) {
  .sns a {
    width: 22px;
  }
}

/*  sns
-------------------------------------------------------------------------------*/
.sns {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 5.3333333333vw;
}
@media screen and (min-width: 800px) {
  .sns {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
    gap: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .sns {
    gap: 20px;
  }
}

.sns a {
  display: block;
  width: 5.8666666667vw;
}
.sns a img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 800px) {
  .sns a {
    width: 1.71875vw;
  }
}
@media screen and (min-width: 1280px) {
  .sns a {
    width: 22px;
  }
}

.sales-area {
  padding: 18.6666666667vw 0;
  background-color: #ffffff;
}
@media screen and (min-width: 800px) {
  .sales-area {
    padding: 7.8125vw 0;
  }
}
@media screen and (min-width: 1280px) {
  .sales-area {
    padding: 100px 0;
  }
}

/* -------------------------
  header
------------------------- */
.sales-area__header {
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 800px) {
  .sales-area__header {
    margin-bottom: 48px;
  }
}

.sales-area__en {
  font-size: 12px;
  color: #999;
  display: block;
  margin-bottom: 6px;
}
@media screen and (min-width: 800px) {
  .sales-area__en {
    font-size: 14px;
    margin-bottom: 8px;
  }
}

.sales-area__title {
  font-size: 6.4vw;
  font-weight: 600;
}
@media screen and (min-width: 800px) {
  .sales-area__title {
    font-size: 28px;
  }
}
@media screen and (min-width: 1280px) {
  .sales-area__title {
    font-size: 32px;
  }
}

/* -------------------------
  layout
------------------------- */
.sales-area__content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12.8vw;
  margin-top: 4.2666666667vw;
  grid-auto-rows: auto;
}
@media screen and (min-width: 800px) {
  .sales-area__content {
    grid-template-columns: 3fr 2fr;
    gap: 48px;
    margin-top: 40px;
  }
}

.sales-area__showrooms {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

/* -------------------------
  description
------------------------- */
.sales-area__description-title {
  font-size: 4.8vw;
  line-height: 1.6;
  margin-bottom: 4.2666666667vw;
  font-weight: 500;
}
@media screen and (min-width: 800px) {
  .sales-area__description-title {
    font-size: 18px;
    margin-bottom: 16px;
  }
}

.sales-area__description-text {
  font-size: 3.7333333333vw;
  line-height: 1.8;
  margin-bottom: 8.5333333333vw;
}
@media screen and (min-width: 800px) {
  .sales-area__description-text {
    font-size: 14px;
    margin-bottom: 32px;
  }
}

/* -------------------------
  showroom
------------------------- */
.sales-area__showroom {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.sales-area__showroom-title {
  font-size: 4.2666666667vw;
  font-weight: 500;
  margin-bottom: 8px;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (min-width: 800px) {
  .sales-area__showroom-title {
    font-size: 16px;
  }
}

.sales-area__showroom-address {
  font-size: 3.4666666667vw;
  line-height: 1.6;
  margin-bottom: 12px;
}
@media screen and (min-width: 800px) {
  .sales-area__showroom-address {
    font-size: 13px;
  }
}

.sales-area__showroom-map iframe {
  width: 100%;
  height: 53.3333333333vw;
  border: none;
}
@media screen and (min-width: 800px) {
  .sales-area__showroom-map iframe {
    height: 220px;
  }
}
@media screen and (min-width: 1280px) {
  .sales-area__showroom-map iframe {
    height: 200px;
  }
}

/* -------------------------
  area list
------------------------- */
.sales-area-list {
  padding-top: 4.2666666667vw;
  border-top: solid 1px #eee;
}
@media screen and (min-width: 800px) {
  .sales-area-list {
    margin-top: 24px;
    padding-top: 16px;
  }
}
.sales-area-list + .sales-area-list {
  margin-top: 6.4vw;
}
@media screen and (min-width: 800px) {
  .sales-area-list + .sales-area-list {
    margin-top: 24px;
  }
}

.sales-area-list__heading {
  font-size: 4.2666666667vw;
  font-weight: 500;
  margin-bottom: 16px;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (min-width: 800px) {
  .sales-area-list__heading {
    font-size: 16px;
  }
}

.sales-area-list__title {
  font-size: 3.7333333333vw;
  font-weight: 500;
  font-family: "Zen Old Mincho", serif;
  margin: 1.3333333333vw 0 2.1333333333vw;
  cursor: pointer;
  -webkit-flex-basis: 80px;
      -ms-flex-preferred-size: 80px;
          flex-basis: 80px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 800px) {
  .sales-area-list__title {
    font-size: 14px;
    margin: 5px 0 8px;
  }
}

.sales-area-list__text {
  font-size: 3.4666666667vw;
  line-height: 1.7;
}
@media screen and (min-width: 800px) {
  .sales-area-list__text {
    font-size: 13px;
  }
}

.sales-area-list__lead::after {
  content: "...";
}

.sales-area-list__lead,
.sales-area-list__more {
  color: #777;
}

.sales-area-list__more {
  display: none;
}

.sales-area-list__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  padding-right: 28px;
}

.sales-area-list__item.is-open .sales-area-list__more {
  display: inline;
}
.sales-area-list__item.is-open .sales-area-list__lead::after {
  display: none;
}

.sales-area-list__title::after {
  content: "＋";
  position: absolute;
  right: 0;
  top: 4px;
}

.sales-area-list__item.is-open .sales-area-list__title::after {
  content: "−";
}

@media screen and (max-width: 800px) {
  .none--sp {
    display: none !important;
  }
}

@media screen and (min-width: 1280px) {
  .none--pc {
    display: none !important;
  }
}

.br--pc {
  display: none;
}
@media screen and (min-width: 800px) {
  .br--pc {
    display: block;
  }
}

.br--sp {
  display: block;
}
@media screen and (min-width: 1280px) {
  .br--sp {
    display: none;
  }
}

main {
  padding-top: 20px;
}
@media screen and (min-width: 1280px) {
  main {
    padding-top: 80px;
  }
}
@media screen and (min-width: 800px) {
  main {
    padding-top: 80px;
  }
}

header {
  font-size: 62.5%;
  width: 100%;
  height: 100%;
  font-size: vw-sp(14);
  font-weight: 400;
  line-height: 1em;
}
@media screen and (min-width: 1280px) {
  header {
    font-size: vw-pc(16);
  }
}
@media screen and (min-width: 800px) {
  header {
    font-size: 16px;
  }
}

body {
  letter-spacing: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul {
  width: auto;
}/*# sourceMappingURL=common.css.map */