@charset "UTF-8";
.top-line {
  background-color: #ede9e7;
}
.top-line .headline {
  color: #3f3f3f;
}
@media (max-width: 600px) {
  .top-line {
    padding-top: 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .top-line .left .headline {
    font-size: 34px;
  }
}

.section1 {
  padding: 100px 0 250px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ede9e7;
}
@media (max-width: 600px) {
  .section1 {
    padding: 40px 3% 80px 3%;
  }
}
.section1 .bot-text {
  font-size: 165px;
  letter-spacing: 0.06em;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (max-width: 600px) {
  .section1 .bot-text {
    font-size: 65px;
  }
}
.section1 .inner {
  padding: 80px 5%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
}
@media (max-width: 600px) {
  .section1 .inner {
    padding: 40px 3%;
    width: 100%;
  }
}
.section1 .inner .image {
  width: 100%;
  margin-bottom: 30px;
}
.section1 .inner .headline {
  font-size: 20px;
  font-weight: 600;
  line-height: calc(24 / 20);
  letter-spacing: 0.06em;
  color: #9d8064;
  margin-bottom: 20px;
  padding: 5px 0 5px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 5px solid #9d8064;
}
@media (max-width: 600px) {
  .section1 .inner .headline {
    font-size: 16px;
    line-height: calc(19 / 16);
  }
}
.section1 .inner .text {
  line-height: calc(25 / 14);
  margin-bottom: 60px;
}
.section1 .inner .text:last-child {
  margin-bottom: 0;
}

.section2 {
  margin-bottom: 130px;
  padding: 60px 0 80px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #5c5751;
}
@media (max-width: 600px) {
  .section2 {
    padding: 40px 3%;
    margin-bottom: 40px;
  }
}
.section2 .headline {
  font-size: 28px;
  text-align: center;
  letter-spacing: 0.08em;
  color: #fff;
  margin-bottom: 30px;
}
.section2 .list {
  width: 80%;
  margin: 0 auto;
  counter-reset: number;
}
@media (max-width: 600px) {
  .section2 .list {
    width: 100%;
  }
}
.section2 .list .box {
  width: calc(100% / 4 - 60px / 4);
  margin-right: 20px;
  background-color: #534e48;
  border-radius: 20px;
  padding: 60px 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.section2 .list .box:nth-child(4n) {
  margin-right: 0;
}
@media (max-width: 1000px) {
  .section2 .list .box {
    width: calc(100% / 2 - 20px / 2);
    margin-right: 20px;
    padding: 40px 30px;
    margin-bottom: 20px;
  }
  .section2 .list .box:nth-child(2n) {
    margin-right: 0;
  }
  .section2 .list .box:nth-last-child(-n+2) {
    margin-bottom: 0;
  }
}
@media (max-width: 600px) {
  .section2 .list .box {
    width: calc(100% / 2 - 10px / 2);
    margin-right: 10px;
    padding: 30px 20px;
  }
  .section2 .list .box:nth-child(2n) {
    margin-right: 0;
  }
}
.section2 .list .box .box-text {
  font-size: 18px;
  line-height: calc(24 / 18);
  letter-spacing: 0.06em;
  color: #fff;
}
@media (max-width: 600px) {
  .section2 .list .box .box-text {
    font-size: 12px;
  }
}
.section2 .list .box .box-text::before {
  counter-increment: number;
  content: counter(number, decimal-leading-zero);
  display: block;
  font-size: 55px;
  letter-spacing: 0.06em;
  color: #fff;
  margin-bottom: 25px;
  padding-bottom: 35px;
  border-bottom: 1px solid #fff;
  text-align: center;
}
@media (max-width: 600px) {
  .section2 .list .box .box-text::before {
    font-size: 33px;
    padding-bottom: 20px;
  }
}

.section3 .headline {
  font-size: 76px;
  color: #a98c6e;
  font-family: "Marcellus", serif;
  font-weight: 400;
  font-style: normal;
  text-align: center;
  margin-bottom: 70px;
}
@media (max-width: 600px) {
  .section3 .headline {
    font-size: 43px;
    margin-bottom: 35px;
  }
}
.section3 .headline span {
  display: block;
  font-size: 22px;
  margin-bottom: 20px;
}
@media (max-width: 600px) {
  .section3 .headline span {
    font-size: 12px;
    margin-bottom: 10px;
  }
}
.section3 .contact-list {
  width: 80%;
  margin: 0 auto;
}
@media (max-width: 600px) {
  .section3 .contact-list {
    width: 100%;
    padding: 0 3%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.section3 .contact-list .row {
  margin-bottom: 30px;
}
.section3 .contact-list .row .top {
  letter-spacing: 0.03em;
  color: #9f8264;
  margin-bottom: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section3 .contact-list .row .top span {
  font-size: 13px;
  letter-spacing: 0.03em;
  margin-left: 20px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 600px) {
  .section3 .contact-list .row .top span {
    letter-spacing: 0.03em;
    line-height: calc(18 / 13);
  }
}
.section3 .contact-list .row .bottom input[type=text],
.section3 .contact-list .row .bottom textarea,
.section3 .contact-list .row .bottom input[type=email],
.section3 .contact-list .row .bottom input[type=tel] {
  width: 100%;
}
.section3 .contact-list .row .bottom input,
.section3 .contact-list .row .bottom textarea,
.section3 .contact-list .row .bottom select {
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f0f0f0;
  color: #919191;
}
.section3 .contact-list .row .bottom input[type=radio],
.section3 .contact-list .row .bottom input[type=checkbox] {
  padding: 0;
  accent-color: #a98c6e;
}
.section3 .contact-list .row .bottom .wpcf7-list-item-label {
  letter-spacing: 0.03em;
  line-height: calc(26 / 14);
}
.section3 .contact-list .row .bottom .choice {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}
.section3 .contact-list .row .bottom .choice:last-child {
  margin-bottom: 0;
}
@media (max-width: 600px) {
  .section3 .contact-list .row .bottom .choice {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.section3 .contact-list .row .bottom .choice .left {
  margin-right: 20px;
  font-weight: 600;
}
@media (max-width: 600px) {
  .section3 .contact-list .row .bottom .choice .left {
    letter-spacing: 0.03em;
    line-height: calc(26 / 14);
    font-size: 14px;
  }
}
@media (max-width: 600px) {
  .section3 .contact-list .row .bottom .choice .right {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.section3 .contact-list .row .bottom .choice .right .date {
  position: relative;
  display: inline-block;
  margin-right: 15px;
}
@media (max-width: 600px) {
  .section3 .contact-list .row .bottom .choice .right .date {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}
.section3 .contact-list .row .bottom .choice .right .date input {
  width: 100%;
}
.section3 .contact-list .row .bottom .choice .right .date input[type=date]::-webkit-calendar-picker-indicator {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0; /* 消したい */
  background: transparent;
  z-index: 2;
  cursor: pointer;
}
.section3 .contact-list .row .bottom .choice .right .date::after {
  content: "";
  background-image: url(/wp-content/uploads/2025/06/calender.png);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.section3 .contact-list .row .bottom .choice .right .time {
  width: 200px;
  position: relative;
  display: inline-block;
}
@media (max-width: 600px) {
  .section3 .contact-list .row .bottom .choice .right .time {
    width: 100%;
  }
}
.section3 .contact-list .row .bottom .choice .right .time select {
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 2em; /* 擬似矢印の分だけ余白 */
}
.section3 .contact-list .row .bottom .choice .right .time::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 25px;
  height: 12px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
  background-image: url(/wp-content/uploads/2025/06/gray-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.section3 .contact-list .contact-text {
  width: 100%;
  text-align: center;
  font-size: 13px;
  line-height: calc(26 / 13);
  letter-spacing: 0.03em;
  color: #a98c6e;
  margin-bottom: 50px;
}
@media (max-width: 600px) {
  .section3 .contact-list .contact-text {
    text-align: left;
  }
}
.section3 .contact-list .submit-btn {
  position: relative;
  width: 50%;
  max-width: 400px;
  margin: 0 auto 100px auto;
}
.section3 .contact-list .submit-btn:after {
  content: "";
  display: block;
  background-image: url(/wp-content/uploads/2025/06/white-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 15px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
.section3 .contact-list .submit-btn .wpcf7-submit {
  width: 100%;
  padding: 20px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #a98c6e;
  color: #fff;
  border-radius: 30px;
  margin: 0 auto;
  display: block;
  position: relative;
}
.section3 .contact-list .submit-btn .wpcf7-spinner {
  display: none;
}