.contact-form-wrapper .contact {
  background-color: #f4f4f4;
  padding-block: 50px
}

@media(width >=768px) {
  .contact-form-wrapper .contact {
    padding-block: 100px
  }
}

.contact-form-wrapper .contact-wrap {
  max-width: 728px;
  margin: 0 auto
}

.contact-form-wrapper .contact .form-group {
  letter-spacing: .05em;
  margin-bottom: 2rem
}

@media(width >=768px) {
  .contact-form-wrapper .contact .form-group {
    gap: 3rem
  }
}

.contact-form-wrapper .contact .label-grop {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 16px;
  margin-bottom: .5rem
}

@media(width >=576px) {
  .contact-form-wrapper .contact .label-grop {
    width: 210px;
    margin-bottom: 0
  }
}

@media(width >=768px) {
  .contact-form-wrapper .contact .label-grop {
    width: 180px
  }
}

.contact-form-wrapper .contact .label-grop label {
  gap: .5rem
}

.contact-form-wrapper .contact#contact .input-group-text {
  font-size: 12px;
  font-weight: 700;
  padding: 4px 6px;
  background: #bc9354;
  border: 0 none;
  letter-spacing: 0
}

.contact-form-wrapper .contact#contact .input-group input[type=email],
.contact-form-wrapper .contact#contact .input-group input[type=text] {
  height: 56px
}

.contact-form-wrapper .contact#contact .input-group input[type=email],
.contact-form-wrapper .contact#contact .input-group input[type=text],
.contact-form-wrapper .contact#contact .input-group textarea {
  padding: 16px 12px;
  border-radius: 4px;
  border: 0 none;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px
}

.contact-form-wrapper .contact#contact .input-group input[type=email]::-webkit-input-placeholder,
.contact-form-wrapper .contact#contact .input-group input[type=text]::-webkit-input-placeholder,
.contact-form-wrapper .contact#contact .input-group textarea::-webkit-input-placeholder {
  color: #999;
  line-height: 1.5;
  font-size: 12px
}

.contact-form-wrapper .contact#contact .input-group input[type=email]::-moz-placeholder,
.contact-form-wrapper .contact#contact .input-group input[type=text]::-moz-placeholder,
.contact-form-wrapper .contact#contact .input-group textarea::-moz-placeholder {
  color: #999;
  line-height: 1.5;
  font-size: 12px
}

.contact-form-wrapper .contact#contact .input-group input[type=email]:-ms-input-placeholder,
.contact-form-wrapper .contact#contact .input-group input[type=text]:-ms-input-placeholder,
.contact-form-wrapper .contact#contact .input-group textarea:-ms-input-placeholder {
  color: #999;
  line-height: 1.5;
  font-size: 12px
}

.contact-form-wrapper .contact#contact .input-group input[type=email]::-ms-input-placeholder,
.contact-form-wrapper .contact#contact .input-group input[type=text]::-ms-input-placeholder,
.contact-form-wrapper .contact#contact .input-group textarea::-ms-input-placeholder {
  color: #999;
  line-height: 1.5;
  font-size: 12px
}

.contact-form-wrapper .contact#contact .input-group input[type=email]::placeholder,
.contact-form-wrapper .contact#contact .input-group input[type=text]::placeholder,
.contact-form-wrapper .contact#contact .input-group textarea::placeholder {
  color: #999;
  line-height: 1.5;
  font-size: 12px
}

@media(width >=576px) {

  .contact-form-wrapper .contact#contact .input-group input[type=email]::-webkit-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group input[type=text]::-webkit-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group textarea::-webkit-input-placeholder {
    font-size: 16px
  }

  .contact-form-wrapper .contact#contact .input-group input[type=email]::-moz-placeholder,
  .contact-form-wrapper .contact#contact .input-group input[type=text]::-moz-placeholder,
  .contact-form-wrapper .contact#contact .input-group textarea::-moz-placeholder {
    font-size: 16px
  }

  .contact-form-wrapper .contact#contact .input-group input[type=email]:-ms-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group input[type=text]:-ms-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group textarea:-ms-input-placeholder {
    font-size: 16px
  }

  .contact-form-wrapper .contact#contact .input-group input[type=email]::-ms-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group input[type=text]::-ms-input-placeholder,
  .contact-form-wrapper .contact#contact .input-group textarea::-ms-input-placeholder {
    font-size: 16px
  }

  .contact-form-wrapper .contact#contact .input-group input[type=email]::placeholder,
  .contact-form-wrapper .contact#contact .input-group input[type=text]::placeholder,
  .contact-form-wrapper .contact#contact .input-group textarea::placeholder {
    font-size: 16px
  }
}

.contact-form-wrapper .contact#contact .input-group textarea {
  resize: none
}

.contact-form-wrapper .contact#contact .input-group input[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 18px;
  height: 18px;
  border: 1px solid #767676;
  border-radius: 2px;
  -webkit-transform: translateY(-0.075em);
  transform: translateY(-0.075em);
  display: grid;
  place-content: center
}

@media(width >=576px) {
  .contact-form-wrapper .contact#contact .input-group input[type=radio] {
    width: 26px;
    height: 26px
  }
}

.contact-form-wrapper .contact#contact .input-group input[type=radio]::before {
  content: "";
  width: 12px;
  height: 12px;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: 120ms -webkit-transform ease-in-out;
  transition: 120ms -webkit-transform ease-in-out;
  transition: 120ms transform ease-in-out;
  transition: 120ms transform ease-in-out, 120ms -webkit-transform ease-in-out;
  -webkit-box-shadow: inset 1em 1em var(--form-control-color);
  box-shadow: inset 1em 1em var(--form-control-color);
  background-color: #767676
}

@media(width >=576px) {
  .contact-form-wrapper .contact#contact .input-group input[type=radio]::before {
    width: 20px;
    height: 20px
  }
}

.contact-form-wrapper .contact#contact .input-group input[type=radio]:checked::before {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.contact-form-wrapper .contact#contact button[type=submit] {
  background-color: #bb9553 !important;
  border-radius: 0 !important;
  font-size: 18px;
  padding: 14px 56px !important;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-weight: 700 !important;
  border: 0 none;
  color: #fff
}

@media(width >=576px) {
  .contact-form-wrapper .contact#contact button[type=submit] {
    width: 284px;
    padding: 25px !important;
    font-size: 20px
  }
}

div.mfp_err {
  right: auto !important
}

#mfp_button_cancel {
  background: rgba(0, 0, 0, 0) !important;
  color: #333 !important;
  border: 0 !important;
  height: 38px;
  width: 110px
}

#mfp_button_send {
  background-color: #bb9553 !important;
  height: 38px;
  width: 110px
}

.great-taste {
  position: relative;
  padding-block: 35px
}

@media(width >=768px) {
  .great-taste {
    padding-block: 75px
  }
}

@media(width >=1200px) {
  .great-taste .container {
    max-width: 1230px
  }
}

.great-taste-img {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

.great-taste__inner {
  padding: 1.5rem 1rem;
  border-radius: 30px;
  background-color: #fff;
  position: relative;
  z-index: 2
}

@media(width >=768px) {
  .great-taste__inner {
    padding: 40px 60px
  }
}

.great-taste .gt-grid {
  grid-template-columns: repeat(24, 1fr);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.5rem
}

@media(width >=768px) {
  .great-taste .gt-grid {
    display: grid
  }
}

.great-taste .gt-item-1 {
  grid-row: 1;
  grid-column: 1/14
}

.great-taste .gt-item-2 {
  grid-row: 1;
  grid-column: 14/-1
}

.great-taste .gt-title {
  font-size: 20px;
  font-weight: 700
}

@media(width >=768px) {
  .great-taste .gt-title {
    font-size: 28px
  }
}

.introduction {
  position: relative;
  margin-top: 45px;
  padding-block: 22px
}

@media(width >=768px) {
  .introduction {
    margin-top: 90px;
    padding-block: 44px
  }
}

.introduction-bg {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

.introduction-wrap {
  position: relative;
  z-index: 2;
  color: #fff;
  padding: 1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px
}

@media(width >=768px) {
  .introduction-wrap {
    padding: 40px 50px;
    border-radius: 20px
  }
}

.introduction-title {
  font-weight: 700;
  letter-spacing: .05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: .5rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333
}

@media(width >=768px) {
  .introduction-title {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 0;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
  }
}

.introduction-title span {
  font-size: 20px;
  letter-spacing: .05em
}

@media(width >=768px) {
  .introduction-title span {
    font-size: 24px
  }
}

.introduction-title span span {
  position: relative
}

.introduction-title span span::after {
  content: "";
  position: absolute;
  top: 0px;
  left: 50%;
  -webkit-transform: translate(-100%, -50%);
  transform: translate(-100%, -50%);
  width: 4px;
  height: 4px;
  background-color: #e4a82c;
  border-radius: 50%
}

@media(width >=768px) {
  .introduction-title span span::after {
    top: -5px;
    width: 6px;
    height: 6px
  }
}

.introduction-subtitle {
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .05em;
  padding-top: .5rem;
  color: #333
}

@media(width >=768px) {
  .introduction-subtitle {
    font-size: 20px
  }
}

@media(767px >=width) {
  .introduction .a-custom-btn {
    max-width: 250px
  }
}

.anime-btn {
  position: relative
}

.anime-btn-wrap {
  position: relative;
  z-index: 2
}

.anime-btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(35%, #443C3C), to(#443C3C));
  background: linear-gradient(90deg, #443C3C 35%, #443C3C 100%);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-animation: anime 1s ease-out 1s infinite;
  animation: anime 1s ease-out 1s infinite;
  border-radius: 10px
}

.anime-btn.anime-btn-white::before {
  background: -webkit-gradient(linear, left top, right top, color-stop(35%, #fff), to(#fff));
  background: linear-gradient(90deg, #fff 35%, #fff 100%)
}

@-webkit-keyframes anime {
  0% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 1
  }

  90% {
    opacity: .1
  }

  100% {
    -webkit-transform: scale(1.1, 1.3);
    transform: scale(1.1, 1.3);
    opacity: 0
  }
}

@keyframes anime {
  0% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 1
  }

  90% {
    opacity: .1
  }

  100% {
    -webkit-transform: scale(1.1, 1.3);
    transform: scale(1.1, 1.3);
    opacity: 0
  }
}

.breadcrumb {
  background: rgba(0, 0, 0, 0) !important
}

.contact-form-wrapper .contact {
  background-color: #b7b9ba
}

.contact-form-wrapper .contact#contact .input-group-text {
  background-color: #333
}

.contact-form-wrapper .contact#contact button[type=submit],
#mfp_button_send {
  background-color: #333 !important
}

html {
  scroll-behavior: smooth
}

body {
  font-family: "NotoSans", sans-serif;
  font-weight: 400
}

.bottom-0 {
  bottom: 0 !important
}

.a-title-en {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: .05em
}

@media(width >=768px) {
  .a-title-en {
    font-size: 36px
  }
}

.a-title-jp {
  font-weight: 500;
  letter-spacing: .2em
}

@media(width >=768px) {
  .a-title-jp {
    padding-top: .5rem
  }
}

.a-text-lg {
  font-size: 18px;
  line-height: 2;
  letter-spacing: .1em;
  font-weight: 500;
  padding-top: 1.5rem
}

@media(width >=768px) {
  .a-text-lg {
    padding-top: 2.5rem;
    font-size: 20px
  }
}

@media(width >=768px) {
  .mt-md-6 {
    margin-top: 80px !important
  }
}

@media(width >=768px) {
  .pt-md-6 {
    padding-top: 80px !important
  }
}

@media(width >=768px) {
  .pb-md-6 {
    padding-bottom: 80px !important
  }
}

.a-text {
  line-height: 1.9;
  font-weight: 400;
  letter-spacing: .05em
}

.a-text p {
  padding-top: 1rem
}

@media(width >=768px) {
  .a-text p {
    padding-top: 2rem
  }
}

.text {
  letter-spacing: .05em;
  line-height: 1.9
}

.a-custom-btn {
  padding: 1rem;
  background-color: #333;
  border-radius: 10px;
  width: 100%;
  max-width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  font-weight: 700;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: .05em;
  margin: 0 auto
}

@media(width >=768px) {
  .a-custom-btn {
    max-width: 400px;
    font-size: 20px;
    padding: 1.75rem 2rem
  }
}

.a-custom-btn:hover {
  color: #fff
}

.a-custom-btn span {
  width: 100%;
  text-align: center
}

.a-custom-btn svg {
  -ms-flex-negative: 0;
  flex-shrink: 0
}

.hero-top {
  position: relative
}

.hero-top .swiper {
  width: 100%;
  height: 300px
}

@media(width >=768px) {
  .hero-top .swiper {
    height: 585px
  }
}

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

.hero-top__inner {
  position: absolute;
  z-index: 2;
  top: 0;
  color: #fff;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media(width >=1200px) {
  .hero-top__inner .container {
    max-width: 1160px
  }
}

.hero-top .scroll-down-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: end;
  padding-right: 16px;
  padding-bottom: 16px
}

@media(width >=768px) {
  .hero-top .scroll-down-wrap {
    padding-right: 50px;
    padding-bottom: 34px
  }
}

.hero-top .scroll-down-wrap .scroll-down {
  cursor: pointer
}

.hero-top .scroll-down-wrap .scroll-down svg {
  width: 62px;
  height: 62px
}

@media(width >=768px) {
  .hero-top .scroll-down-wrap .scroll-down svg {
    width: 124px;
    height: 124px
  }
}

.hero-top__subtitle {
  background-color: #333;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 3px 10px;
  padding-left: 16px;
  margin-top: .75rem;
  letter-spacing: .1em;
  font-size: 16px;
  font-weight: 500
}

@media(width >=768px) {
  .hero-top__subtitle {
    font-size: 18px;
    letter-spacing: .4em;
    margin-top: 1.5rem;
    padding-left: 50px
  }
}

.hero-top__title {
  background-color: #333;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 15px 20px;
  padding-left: 16px
}

@media(width >=768px) {
  .hero-top__title {
    padding-left: 50px
  }
}

.hero-top__title img {
  width: 220px
}

@media(width >=768px) {
  .hero-top__title img {
    width: auto
  }
}

.--style-title {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .1em
}

@media(width >=768px) {
  .--style-title {
    line-height: 2;
    font-size: 20px
  }
}

.global-wrapper {
  overflow: hidden
}

.cot {
  padding-block: 50px
}

@media(width >=768px) {
  .cot {
    padding-block: 100px
  }
}

@media(width >=1200px) {
  .cot .container {
    max-width: 1330px
  }
}

.cot-wrap {
  position: relative;
  max-width: 1400px;
  margin: 0 auto
}

.cot-wrap .blue-shape,
.cot-wrap .red-shape,
.cot-wrap .yellow-shape,
.cot-wrap .green-shape {
  position: absolute;
  width: 125px
}

@media(width >=768px) {

  .cot-wrap .blue-shape,
  .cot-wrap .red-shape,
  .cot-wrap .yellow-shape,
  .cot-wrap .green-shape {
    width: 200px
  }
}

.cot-wrap .blue-shape {
  left: 1rem;
  top: 5rem;
  width: 150px;
  height: 180px;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transform-origin: left;
  transform-origin: left
}

@media(width >=920px) {
  .cot-wrap .blue-shape {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

@media(width >=1120px) {
  .cot-wrap .blue-shape {
    left: 10%
  }
}

.cot-wrap .red-shape {
  right: 1rem;
  top: 2rem;
  width: 155px;
  height: 170px;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transform-origin: right;
  transform-origin: right
}

@media(width >=920px) {
  .cot-wrap .red-shape {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

@media(width >=1120px) {
  .cot-wrap .red-shape {
    right: 10%
  }
}

.cot-wrap .yellow-shape {
  left: -1rem;
  top: calc(100% - 2rem);
  width: 179px;
  height: 220px;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transform-origin: left;
  transform-origin: left
}

@media(width >=920px) {
  .cot-wrap .yellow-shape {
    left: -3rem;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.cot-wrap .green-shape {
  right: -1rem;
  top: 100%;
  width: 150px;
  height: 180px;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transform-origin: right;
  transform-origin: right
}

@media(width >=920px) {
  .cot-wrap .green-shape {
    right: -3rem;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.cot-content {
  max-width: 763px;
  margin: 0 auto;
  text-align: center;
  position: relative
}

.cot-content-inner {
  position: relative
}

.cot-content .cot-title-en {
  width: 100%;
  -webkit-transform: translateY(-15px);
  transform: translateY(-15px);
  position: absolute;
  top: 0;
  color: rgba(194, 167, 96, .16);
  font-size: 35px;
  line-height: 1;
  font-weight: 700
}

@media(width >=768px) {
  .cot-content .cot-title-en {
    -webkit-transform: translateY(-23px);
    transform: translateY(-23px);
    font-size: 60px
  }
}

@media(width >=992px) {
  .cot-content .cot-title-en {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px);
    font-size: 80px
  }
}

.cot-content .cot-title {
  line-height: 1.3;
  letter-spacing: 0;
  font-size: 24px
}

@media(width >=768px) {
  .cot-content .cot-title {
    line-height: 1.3;
    letter-spacing: .1em;
    font-size: 32px
  }
}

.cot-content .cot-text {
  padding-top: 1rem;
  line-height: 1.5;
  text-align: left;
  max-width: 620px;
  margin: 0 auto
}

@media(width >=768px) {
  .cot-content .cot-text {
    line-height: 2;
    padding-top: 1.5rem;
    text-align: center
  }
}

@media(991px > width) {
  .cot-content .cot-text {
    letter-spacing: .025em
  }
}

.cot-content .cot-text p+p {
  padding-top: 1rem
}

@media(width >=768px) {
  .cot-content .cot-text p+p {
    padding-top: 1.5rem
  }
}

.recommendation {
  padding-block: 50px
}

@media(width >=768px) {
  .recommendation {
    padding-block: 100px
  }
}

.recommendation-inner {
  background-color: #e4a82c;
  border-radius: 20px;
  padding: 30px 1rem;
  max-width: 1070px;
  margin: 0 auto;
  margin-top: 1.5rem
}

@media(width >=768px) {
  .recommendation-inner {
    padding: 60px 1rem;
    margin-top: 3rem;
    border-radius: 30px
  }
}

.recommendation-list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto
}

.recommendation-list li {
  background-color: #fff;
  padding: 16px 16px 16px 42px;
  font-weight: 700;
  position: relative;
  letter-spacing: .05em;
  border-radius: 20px
}

@media(width >=576px) {
  .recommendation-list li {
    padding: 20px 62px 20px 82px
  }
}

@media(width >=768px) {
  .recommendation-list li {
    border-radius: 30px
  }
}

.recommendation-list li:not(:first-child) {
  margin-top: 1rem
}

.recommendation-list li::before {
  content: "";
  position: absolute;
  left: 11.5px;
  top: 17px;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15 30C16.9698 30 18.9204 29.612 20.7403 28.8582C22.5601 28.1044 24.2137 26.9995 25.6066 25.6066C26.9995 24.2137 28.1044 22.5601 28.8582 20.7403C29.612 18.9204 30 16.9698 30 15C30 13.0302 29.612 11.0796 28.8582 9.25975C28.1044 7.43986 26.9995 5.78628 25.6066 4.3934C24.2137 3.00052 22.5601 1.89563 20.7403 1.14181C18.9204 0.387986 16.9698 -2.93527e-08 15 0C11.0218 5.92805e-08 7.20644 1.58035 4.3934 4.3934C1.58035 7.20644 0 11.0218 0 15C0 18.9782 1.58035 22.7936 4.3934 25.6066C7.20644 28.4196 11.0218 30 15 30ZM14.6133 21.0667L22.9467 11.0667L20.3867 8.93333L13.22 17.5317L9.51167 13.8217L7.155 16.1783L12.155 21.1783L13.445 22.4683L14.6133 21.0667Z' fill='%23E4A82C'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center
}

@media(width >=576px) {
  .recommendation-list li::before {
    width: 30px;
    height: 30px;
    left: 27px
  }
}

.line-up {
  background-color: #91857d;
  padding-block: 50px
}

@media(width >=768px) {
  .line-up {
    padding-block: 100px
  }
}

@media(width >=1200px) {
  .line-up .container {
    max-width: 1160px
  }
}

.line-up .a-title-en,
.line-up .a-title-jp {
  color: #fff
}

.line-up-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 1rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 3rem
}

@media(width >=768px) {
  .line-up-grid {
    max-width: 500px;
    margin: 0 auto;
    gap: 0 2rem
  }
}

@media(width >=992px) {
  .line-up-grid {
    max-width: unset;
    grid-template-columns: repeat(4, 1fr)
  }
}

.line-up-item {
  background-color: #fff;
  -webkit-box-shadow: 0px 4px 10px rgba(0, 0, 0, .17);
  box-shadow: 0px 4px 10px rgba(0, 0, 0, .17);
  padding: 15px;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4
}

.line-up-item:nth-child(3),
.line-up-item:nth-child(4) {
  margin-top: 1rem
}

@media(width >=768px) {
  .line-up-item {
    padding: 20px
  }

  .line-up-item:nth-child(3),
  .line-up-item:nth-child(4) {
    margin-top: 2rem
  }
}

@media(width >=768px)and (width >=992px) {

  .line-up-item:nth-child(3),
  .line-up-item:nth-child(4) {
    margin-top: 0
  }
}

.line-up-item__title {
  padding-top: 2rem;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .025em;
  line-height: 1.3
}

@media(width >=768px) {
  .line-up-item__title {
    font-size: 22px;
    letter-spacing: .05em
  }
}

.line-up-item__text {
  font-weight: 600;
  letter-spacing: 0;
  padding-bottom: 1.25rem;
  padding-top: .5rem
}

.line-up-item__btn {
  padding: 16px 19px;
  background-color: #333;
  border-radius: 5px;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0;
  width: 100%;
  max-width: 190px;
  margin: 0 auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media(width >=768px) {
  .line-up-item__btn {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

.line-up-item__btn svg {
  position: absolute;
  top: 50%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  right: 10px;
  -webkit-transform: translateY(-50%) scale(0.85);
  transform: translateY(-50%) scale(0.85)
}

@media(width >=768px) {
  .line-up-item__btn svg {
    right: 19px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
}

.--hs-title {
  font-weight: 600;
  letter-spacing: 0;
  padding-top: .5rem
}

.--hs-title-en {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .05em
}

@media(width >=576px) {
  .--hs-title-en {
    font-size: 36px
  }
}

.house-style {
  position: relative;
  padding-top: 50px
}

@media(width >=768px) {
  .house-style {
    padding-top: 100px
  }
}

@media(width >=1200px) {
  .house-style .container {
    max-width: 1160px
  }
}

@media(width >=768px) {
  .house-style .hs-top__sing-icon+.text {
    font-size: 20px
  }
}

.house-style .hs-top__subtitle {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0
}

@media(width >=576px) {
  .house-style .hs-top__subtitle {
    font-size: 24px
  }
}

@media(width >=768px) {
  .house-style .hs-top__subtitle {
    font-size: 32px;
    padding-bottom: .5rem
  }
}

.house-style .hs-top__sing-icon {
  padding-block: .5rem 1rem
}

.house-style .hs-top__price {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto
}

.house-style .hs-top__price .d-flex {
  gap: 12px
}

.house-style .hs-top__price-text {
  font-size: 22px;
  font-weight: 600
}

@media(width >=576px) {
  .house-style .hs-top__price-text {
    font-size: 32px
  }
}

.house-style .hs-top__price span {
  font-size: 44px;
  font-weight: 700;
  letter-spacing: .05em
}

@media(width >=576px) {
  .house-style .hs-top__price span {
    font-size: 64px
  }
}

.house-style .hs-top__price small {
  font-size: 14px
}

@media(width >=768px) {
  .house-style .hs-top__price small {
    font-size: 16px
  }
}

.house-style .hs-top__img {
  padding-block: 1.5rem
}

@media(width >=576px) {
  .house-style .hs-top__img {
    padding-block: 2rem
  }
}

.house-style .hs-top__img img {
  width: 100%
}

.house-style .hs-concept {
  padding-block: 40px;
  position: relative;
  overflow: hidden
}

@media(width >=768px) {
  .house-style .hs-concept {
    padding-block: 80px
  }
}

.house-style .hs-concept__number {
  font-size: 64px;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 1;
  padding-top: .5rem
}

@media(width >=768px) {
  .house-style .hs-concept__number {
    font-size: 128px;
    padding-top: 0
  }
}

.house-style .hs-concept__img {
  position: relative
}

.house-style .hs-concept__img .concept-element-1 {
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform: translate(-30%, -50%) scale(0.5);
  transform: translate(-30%, -50%) scale(0.5);
  width: 261px;
  height: 236px;
  z-index: -1;
  -webkit-transform-origin: left;
  transform-origin: left
}

@media(width >=768px) {
  .house-style .hs-concept__img .concept-element-1 {
    -webkit-transform: translate(-30%, -50%) scale(0.6);
    transform: translate(-30%, -50%) scale(0.6)
  }
}

@media(width >=992px) {
  .house-style .hs-concept__img .concept-element-1 {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1)
  }
}

.house-style .hs-concept__img .concept-element-2 {
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translate(30%, -40%) scale(0.5);
  transform: translate(30%, -40%) scale(0.5);
  width: 244px;
  height: 300px;
  z-index: -1;
  -webkit-transform-origin: right;
  transform-origin: right
}

@media(width >=768px) {
  .house-style .hs-concept__img .concept-element-2 {
    -webkit-transform: translate(30%, -40%) scale(0.6);
    transform: translate(30%, -40%) scale(0.6)
  }
}

@media(width >=992px) {
  .house-style .hs-concept__img .concept-element-2 {
    -webkit-transform: translate(50%, -30%) scale(1);
    transform: translate(50%, -30%) scale(1)
  }
}

.house-style .hs-concept__img img {
  border-radius: 10px
}

@media(width >=768px) {
  .house-style .hs-concept__img img {
    border-radius: 20px
  }
}

.house-style .hs-concept__title {
  padding-block: 0px 10px;
  font-size: 18px;
  line-height: 30px;
  font-weight: 700;
  letter-spacing: .05em
}

@media(width >=768px) {
  .house-style .hs-concept__title {
    padding-block: 10px 15px;
    font-size: 20px
  }
}

@media(width >=768px) {
  .house-style .hs-plan {
    padding-top: 80px
  }
}

@media(min-width: 992px) {
  .house-style .hs-plan .pr-lg-4\.5 {
    padding-right: 35px !important
  }

  .house-style .hs-plan .pl-lg-4\.5 {
    padding-left: 35px !important
  }
}

.house-style .hs-plan__box {
  position: relative;
  padding: 26px 25px 21px;
  background-color: #f8f7f0;
  max-width: 721px;
  margin: 0 auto;
  margin-top: 3rem;
  border-radius: 10px
}

.house-style .hs-plan__box-title {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #e4a82c;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: .05em
}

@media(width >=768px) {
  .house-style .hs-plan__box-title {
    font-size: 36px
  }
}

.house-style .hs-plan .plan-grid {
  grid-template-columns: repeat(24, 1fr)
}

@media(width >=576px) {
  .house-style .hs-plan .plan-grid {
    margin: 0 auto;
    max-width: 66.666667%
  }
}

@media(width >=768px) {
  .house-style .hs-plan .plan-grid {
    display: grid;
    max-width: unset
  }
}

.house-style .hs-plan .plan-grid .plan-item-1 {
  grid-column: 1/14
}

.house-style .hs-plan .plan-grid .plan-item-2 {
  grid-column: 14/-1
}

@media(width >=768px) {
  .house-style .hs-plan .plan-grid .plan-item-2 {
    margin-top: -10px
  }
}

.house-style .hs-point {
  padding-top: 40px
}

@media(width >=768px) {
  .house-style .hs-point {
    padding-top: 80px
  }

  .house-style .hs-point .container {
    max-width: 950px
  }
}

.house-style .hs-point .point-grid {
  display: grid;
  gap: 1rem
}

@media(width >=768px) {
  .house-style .hs-point .point-grid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem
  }
}

@media(width >=992px) {
  .house-style .hs-point .point-grid {
    gap: 70px
  }
}

.outline-text {
  color: #fff;
  font-weight: 700;
  font-size: 36px;
  text-shadow: 1px 0 #e4a82c, -1px 0 #e4a82c, 0 1px #e4a82c, 0 -1px #e4a82c
}

@media(width >=768px) {
  .outline-text {
    font-size: 74px
  }
}

.marquee {
  --gap: 20px;
  --width: 175px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  gap: var(--gap);
  padding-bottom: 50px
}

@media(width >=768px) {
  .marquee {
    padding-bottom: 80px;
    --gap: 80px;
    --width: 350px
  }
}

.marquee__content {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  gap: var(--gap);
  min-width: 100%;
  -webkit-animation: scroll 75s linear infinite;
  animation: scroll 75s linear infinite
}

.marquee__content-reverse {
  -webkit-animation: scroll 25s linear infinite;
  animation: scroll 25s linear infinite;
  animation-direction: reverse
}

.marquee__content img {
  width: var(--width)
}

@-webkit-keyframes scroll {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }

  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
    transform: translateX(calc(-100% - var(--gap)))
  }
}

@keyframes scroll {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }

  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
    transform: translateX(calc(-100% - var(--gap)))
  }
}

@media(prefers-reduced-motion: reduce) {
  .marquee__content {
    -webkit-animation-play-state: paused !important;
    animation-play-state: paused !important
  }
}

.spec {
  background-color: #fff3e1;
  padding-block: 50px;
  margin-top: 50px
}

@media(width >=768px) {
  .spec {
    padding-block: 100px;
    margin-top: 100px
  }
}

.spec-grid {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  grid-template-columns: minmax(1rem, 1fr) repeat(24, minmax(0, 48.3333333333px)) minmax(1rem, 1fr)
}

@media(width >=768px) {
  .spec-grid {
    display: grid
  }
}

.spec-grid:not(:first-child) {
  padding-top: 35px !important
}

@media(width >=768px) {
  .spec-grid:not(:first-child) {
    padding-top: 70px !important
  }
}

.spec-grid.spec-grid-reverse .spec-item.spec-item-text {
  grid-row: 1;
  grid-column: 2/16;
  padding-block: 20px;
  z-index: 2
}

.spec-grid.spec-grid-reverse .spec-item.spec-item-text .spec-item-box {
  max-width: 640px
}

.spec-grid.spec-grid-reverse .spec-item.spec-item-img {
  grid-row: 1;
  grid-column: 13/-1
}

.spec-grid.spec-grid-reverse .spec-item.spec-item-img img {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px
}

.spec-item:first-child {
  grid-row: 1;
  grid-column: 1/14
}

.spec-item:first-child img {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  width: 95%
}

@media(width >=768px) {
  .spec-item:first-child img {
    width: 100%
  }
}

.spec-item:last-child {
  grid-row: 1;
  grid-column: 13/-2;
  padding-block: 20px
}

.spec-item .spec-item-box {
  background-color: #fff;
  border-radius: 20px;
  padding: 20px 30px;
  max-width: 600px;
  margin: 0 auto
}

@media(width >=768px) {
  .spec-item .spec-item-box {
    margin: unset
  }
}

@media(width >=992px) {
  .spec-item .spec-item-box {
    padding: 40px 60px
  }
}

.spec-item__title {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: .05em
}

@media(width >=768px) {
  .spec-item__title {
    font-size: 32px
  }
}

.spec-item__text {
  padding-top: 1rem
}

@media(width >=768px) {
  .spec-item__text {
    padding-top: 1.5rem
  }
}

.life-items {
  padding-top: 2rem;
  gap: 18px
}

@media(767px >=width) {
  .life-items {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important
  }
}

.life-item {
  padding: 15px 10px;
  background-color: #fff;
  font-weight: 600;
  color: #443c3c;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  border: 1px solid #bc9354
}

@media(767px >=width) {
  .life-item {
    width: calc(50% - 9px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

@media(width >=768px) {
  .life-item {
    padding: 20px 40px
  }
}

.home-selection {
  padding-block: 60px;
  background-color: #fbfbfb
}

@media(width >=768px) {
  .home-selection {
    padding-block: 120px
  }

  .home-selection .container {
    max-width: 850px
  }
}

.home-selection .hs-title {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.4
}

@media(width >=768px) {
  .home-selection .hs-title {
    font-size: 28px
  }
}

.home-selection .hs-title span {
  font-size: 24px;
  color: #e4a82c
}

@media(width >=768px) {
  .home-selection .hs-title span {
    font-size: 34px
  }
}

.inquiries {
  position: relative;
  color: #fff;
  padding-block: 40px
}

@media(width >=768px) {
  .inquiries {
    padding-block: 80px
  }
}

.inquiries-bg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0
}

.inquiries-inner {
  position: relative;
  z-index: 2
}

.inquiries-btn {
  color: #e4a82c;
  background-color: #fff;
  margin-top: 2rem;
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: unset;
  letter-spacing: .05em;
  border-radius: 0 !important
}

@media(width >=768px) {
  .inquiries-btn {
    font-size: 48px
  }
}

.inquiries-btn svg {
  -ms-flex-negative: 0;
  flex-shrink: 0
}

.inquiries-btn:hover {
  color: #e4a82c
}

.inquiries-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .1em
}

@media(width >=768px) {
  .inquiries-title {
    font-size: 20px
  }
}

.inquiries-title.inquiries-title-2 {
  letter-spacing: .05em;
  padding-top: 14px
}

.swiper-wrapper-marquee {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear
}

.no-animation {
  -webkit-animation: none !important;
  animation: none !important;
  -webkit-transition: none !important;
  transition: none !important;
  margin-left: -80px
}

.images-grid {
  grid-template-columns: 1fr 1fr;
  display: grid;
  gap: 20px;
  padding-bottom: 2rem
}

@media(width >=768px) {
  .images-grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
    padding-bottom: 1rem;
    padding-inline: 20px
  }
}

@media(width >=1200px) {
  .images-grid {
    gap: 80px;
    padding-inline: 80px
  }
}

.images-grid li img {
  width: 100%
}

/*# sourceMappingURL=style-plus.css.map */