@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
body {
  background: linear-gradient(141.05deg, #f9f8f6 -7.58%, #ebebeb 77.65%);
}

a,
img {
  width: 100%;
  display: block;
}

.bold {
  font-weight: 700;
}

* {
  white-space: nowrap;
  font-family: "Noto Sans JP", sans-serif;
}

header {
  height: 96px;
}
header img {
  width: 260px;
  display: block;
  position: fixed;
  top: 40px;
  left: 64px;
}
@media only screen and (max-width: 959px) {
  header {
    display: none;
  }
}

main {
  display: flex;
}
main .pc_list_area {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  left: min(141px, 9.4vw);
}
main .pc_list_area ul {
  width: 210px;
  margin-left: auto;
  margin-right: auto;
  list-style: none;
  text-align: center;
  padding: 0;
}
main .pc_list_area ul li {
  margin-bottom: 20px;
}
main .pc_list_area ul li a {
  font-family: "Zen Old Mincho";
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 119%;
  text-align: center;
  letter-spacing: 0.01em;
  color: #433f37;
  text-decoration: none;
}
@media only screen and (max-width: 959px) {
  main .pc_list_area {
    display: none;
  }
}
main .pc_line_area {
  height: min(188.45px, 12.5633333333vw);
  position: fixed;
  bottom: min(138px, 9.2vw);
  right: min(62px, 4.1333333333vw);
  position: fixed;
}
main .pc_line_area img {
  width: min(372px, 24.8vw);
  margin-left: auto;
  margin-right: auto;
}
main .pc_line_area .button {
  width: min(336px, 22.4vw);
  position: fixed;
  bottom: min(56px, 3.7333333333vw);
  right: min(84px, 5.6vw);
}
@media only screen and (max-width: 959px) {
  main .pc_line_area {
    display: none;
  }
}

.main_content {
  background: #dfe6ea;
  margin: 0 auto;
  font-weight: 400;
  overflow-x: hidden;
  width: min(396px, 26.4vw);
}
@media only screen and (min-width: 960px) {
  .main_content.fixed {
    padding-top: min(52px, 3.4666666667vw);
  }
}
@media only screen and (max-width: 959px) {
  .main_content {
    width: 100vw;
    padding-top: 13.1313131313vw;
  }
}
.main_content .countdown-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: min(12px, 0.8vw) min(16px, 1.0666666667vw);
  height: min(52px, 3.4666666667vw);
  background: linear-gradient(90deg, #433f37 0%, #22305a 132.45%);
  z-index: 9999;
}
@media only screen and (min-width: 960px) {
  .main_content .countdown-container.fixed {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
  }
}
@media only screen and (max-width: 959px) {
  .main_content .countdown-container {
    padding: 3.0303030303vw 4.0404040404vw;
    height: 13.1313131313vw;
    position: fixed;
    top: 0;
    left: 0;
    transform: translateX(0);
    width: 100vw;
  }
}
.main_content .countdown-container .label {
  font-size: min(12px, 0.8vw);
  color: #ffffff;
  font-style: normal;
  font-weight: 500;
  margin-right: min(19px, 1.2666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .countdown-container .label {
    font-size: 3.0303030303vw;
    margin-right: 4.797979798vw;
  }
}
.main_content .countdown-container .time-box {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: min(4px, 0.2666666667vw) min(6px, 0.4vw);
  gap: min(10px, 0.6666666667vw);
  width: min(35px, 2.3333333333vw);
  height: min(28px, 1.8666666667vw);
  background: #ffffff;
  border-radius: min(3px, 0.2vw);
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-size: min(20px, 1.3333333333vw);
  line-height: 100%;
  text-align: center;
  color: #433f37;
  margin-right: min(6px, 0.4vw);
}
@media only screen and (max-width: 959px) {
  .main_content .countdown-container .time-box {
    padding: 1.0101010101vw 1.5151515152vw;
    gap: 2.5252525253vw;
    width: 8.8383838384vw;
    height: 7.0707070707vw;
    border-radius: 0.7575757576vw;
    font-size: 5.0505050505vw;
    margin-right: 1.5151515152vw;
  }
}
.main_content .countdown-container .unit {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-size: min(14px, 0.9333333333vw);
  line-height: 100%;
  color: #ffffff;
  margin-right: min(12px, 0.8vw);
}
@media only screen and (max-width: 959px) {
  .main_content .countdown-container .unit {
    font-size: 3.5353535354vw;
    margin-right: 3.0303030303vw;
  }
}
.main_content .countdown-container .unit.last {
  margin-right: 0;
}
.main_content .section1 {
  position: relative;
}
.main_content .section2 {
  padding-bottom: min(42px, 2.8vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section2 {
    padding-bottom: 10.6060606061vw;
  }
}
.main_content .section2 .swiper {
  padding-top: min(24px, 1.6vw);
  padding-bottom: min(38px, 2.5333333333vw);
  /* ページネーション（ドット） */
  /* 前・次ボタン */
}
@media only screen and (max-width: 959px) {
  .main_content .section2 .swiper {
    padding-top: 6.0606060606vw;
    padding-bottom: 9.595959596vw;
  }
}
.main_content .section2 .swiper .swiper-wrapper .swiper-slide {
  padding-left: min(31px, 2.0666666667vw);
  padding-right: min(31px, 2.0666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section2 .swiper .swiper-wrapper .swiper-slide {
    padding-left: 7.8282828283vw;
    padding-right: 7.8282828283vw;
  }
}
.main_content .section2 .swiper .swiper-pagination-bullet {
  background-color: #f4f4f4;
  opacity: 1;
  border-radius: 50%;
  transition: background-color 0.3s;
  bottom: 30px;
  width: min(10px, 0.6666666667vw);
  height: min(10px, 0.6666666667vw);
  margin: 0 min(7.5px, 0.5vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section2 .swiper .swiper-pagination-bullet {
    width: 2.5252525253vw;
    height: 2.5252525253vw;
    margin: 0 1.8939393939vw;
  }
}
.main_content .section2 .swiper .swiper-pagination-bullet-active {
  background-color: #433f37; /* アクティブなドットの色 */
}
.main_content .section2 .swiper .swiper-button-next,
.main_content .section2 .swiper .swiper-button-prev {
  color: #fff;
  top: 50%;
  transform: translateY(-50%);
  width: min(18px, 1.2vw);
  height: min(18px, 1.2vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section2 .swiper .swiper-button-next,
  .main_content .section2 .swiper .swiper-button-prev {
    width: 4.5454545455vw;
    height: 4.5454545455vw;
  }
}
.main_content .section2 .swiper .swiper-button-prev {
  background-image: url(./../img/00_slider_arrow_left.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.main_content .section2 .swiper .swiper-button-next {
  background-image: url(./../img/00_slider_arrow_right.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.main_content .section3 {
  padding-bottom: min(65px, 4.3333333333vw);
  position: relative;
}
.main_content .section3 #trouble {
  position: absolute;
  top: 0;
  content: "";
  height: 1px;
  width: 1px;
}
.main_content .section3 #cause {
  position: absolute;
  content: "";
  height: 1px;
  width: 1px;
  top: min(414px, 27.6vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section3 #cause {
    top: 104.5454545455vw;
  }
}
@media only screen and (max-width: 959px) {
  .main_content .section3 {
    padding-bottom: 16.4141414141vw;
  }
}
.main_content .section06 {
  position: relative;
}
.main_content .section06 #price {
  position: absolute;
  content: "";
  height: 1px;
  width: 1px;
  top: min(2000px, 133.3333333333vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section06 #price {
    top: 505.0505050505vw;
  }
}
.main_content .section06 .button {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: min(336px, 22.4vw);
  bottom: min(16px, 1.0666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section06 .button {
    width: 84.8484848485vw;
    bottom: 4.0404040404vw;
  }
}
.main_content .section07 {
  padding-top: min(96px, 6.4vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section07 {
    padding-top: 24.2424242424vw;
  }
}
.main_content .section07 .section07_title__img {
  margin-left: auto;
  margin-right: auto;
  width: min(360px, 24vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section07 .section07_title__img {
    width: 90.9090909091vw;
  }
}
.main_content .section07 .swiper {
  padding-top: min(48px, 3.2vw);
  padding-bottom: min(38px, 2.5333333333vw);
  /* ページネーション（ドット） */
  /* 前・次ボタン */
}
@media only screen and (max-width: 959px) {
  .main_content .section07 .swiper {
    padding-top: 12.1212121212vw;
    padding-bottom: 9.595959596vw;
  }
}
.main_content .section07 .swiper .swiper-wrapper .swiper-slide {
  padding-left: min(12px, 0.8vw);
  padding-right: min(12px, 0.8vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section07 .swiper .swiper-wrapper .swiper-slide {
    padding-left: 3.0303030303vw;
    padding-right: 3.0303030303vw;
  }
}
.main_content .section07 .swiper .swiper-pagination-bullet {
  background-color: #f4f4f4;
  opacity: 1;
  border-radius: 50%;
  transition: background-color 0.3s;
  bottom: 30px;
  width: min(10px, 0.6666666667vw);
  height: min(10px, 0.6666666667vw);
  margin: 0 min(7.5px, 0.5vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section07 .swiper .swiper-pagination-bullet {
    width: 2.5252525253vw;
    height: 2.5252525253vw;
    margin: 0 1.8939393939vw;
  }
}
.main_content .section07 .swiper .swiper-pagination-bullet-active {
  background-color: #433f37; /* アクティブなドットの色 */
}
.main_content .section07 .swiper .swiper-button-next,
.main_content .section07 .swiper .swiper-button-prev {
  color: #fff;
  top: 50%;
  transform: translateY(-50%);
  width: min(18px, 1.2vw);
  height: min(18px, 1.2vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section07 .swiper .swiper-button-next,
  .main_content .section07 .swiper .swiper-button-prev {
    width: 4.5454545455vw;
    height: 4.5454545455vw;
  }
}
.main_content .section07 .swiper .swiper-button-prev {
  background-image: url(./../img/00_slider_arrow_left.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.main_content .section07 .swiper .swiper-button-next {
  background-image: url(./../img/00_slider_arrow_right.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.main_content .section10 {
  padding-top: min(64px, 4.2666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 {
    padding-top: 16.1616161616vw;
  }
}
.main_content .section10 .section10_title__img {
  margin-left: auto;
  margin-right: auto;
  width: min(360px, 24vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .section10_title__img {
    width: 90.9090909091vw;
  }
}
.main_content .section10 .faq {
  margin-top: min(48px, 3.2vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq {
    margin-top: 12.1212121212vw;
  }
}
.main_content .section10 .faq-item {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.25);
  flex: none;
  order: 0;
  align-self: stretch;
  flex-grow: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: min(18px, 1.2vw);
  padding: min(24px, 1.6vw) min(12px, 0.8vw);
  width: min(359px, 23.9333333333vw);
  box-shadow: inset 0px 0px min(19.5px, 1.3vw) #ffffff;
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq-item {
    margin-bottom: 4.5454545455vw;
    padding: 6.0606060606vw 3.0303030303vw;
    width: 90.6565656566vw;
    box-shadow: inset 0px 0px 4.9242424242vw #ffffff;
  }
}
.main_content .section10 .faq-question {
  display: flex;
  cursor: pointer;
}
.main_content .section10 .faq-question .label {
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  text-align: center;
  color: #937756;
  flex: none;
  width: min(16.69px, 1.1126666667vw);
  height: min(22px, 1.4666666667vw);
  font-size: min(14.544px, 0.9696vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq-question .label {
    width: 4.2146464646vw;
    height: 5.5555555556vw;
    font-size: 3.6727272727vw;
  }
}
.main_content .section10 .faq-question .question-text {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
  color: #433f37;
  flex: none;
  font-size: min(14px, 0.9333333333vw);
  width: min(271px, 18.0666666667vw);
  margin-left: min(14px, 0.9333333333vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq-question .question-text {
    font-size: 3.5353535354vw;
    width: 68.4343434343vw;
    margin-left: 3.5353535354vw;
  }
}
.main_content .section10 .faq-question .toggle-icon {
  margin-left: 10px;
  transition: transform 0.3s ease;
  display: flex;
  align-items: center;
  transform: rotate(180deg);
}
.main_content .section10 .faq-question .toggle-icon .faq_button {
  width: min(13px, 0.8666666667vw);
  height: min(8px, 0.5333333333vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq-question .toggle-icon .faq_button {
    width: 3.2828282828vw;
    height: 2.0202020202vw;
  }
}
.main_content .section10 .faq .open .faq-question {
  padding-bottom: min(18px, 1.2vw);
  border-bottom: min(1px, 0.0666666667vw) solid #beb4a8;
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq .open .faq-question {
    padding-bottom: 4.5454545455vw;
    border-bottom: 0.2525252525vw solid #beb4a8;
  }
}
.main_content .section10 .faq .open .faq-answer {
  padding-top: min(18px, 1.2vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq .open .faq-answer {
    padding-top: 4.5454545455vw;
  }
}
.main_content .section10 .faq .open .toggle-icon {
  transform: rotate(0deg);
}
.main_content .section10 .faq .faq-answer {
  overflow: hidden;
  height: 0;
  transition: height 0.4s ease;
  display: flex;
  align-items: flex-start;
}
.main_content .section10 .faq .faq-answer .label {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0px;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  text-align: center;
  color: #937756;
  font-size: min(14.544px, 0.9696vw);
  gap: min(10px, 0.6666666667vw);
  width: min(22px, 1.4666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq .faq-answer .label {
    font-size: 3.6727272727vw;
    gap: 2.5252525253vw;
    width: 5.5555555556vw;
  }
}
.main_content .section10 .faq .faq-answer .question-text {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
  color: #433f37;
  margin-left: min(14px, 0.9333333333vw);
  font-size: min(14px, 0.9333333333vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section10 .faq .faq-answer .question-text {
    margin-left: 3.5353535354vw;
    font-size: 3.5353535354vw;
  }
}
.main_content .section11 {
  padding-bottom: min(66px, 4.4vw);
  position: relative;
}
.main_content .section11_anker {
  position: absolute;
  bottom: min(110px, 7.3333333333vw);
  width: min(360px, 24vw);
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 959px) {
  .main_content .section11 {
    padding-bottom: 16.6666666667vw;
  }
  .main_content .section11_anker {
    bottom: 27.7777777778vw;
    width: 90.9090909091vw;
  }
}
.main_content .section12 {
  position: relative;
  background: #433f37;
}
@media only screen and (max-width: 959px) {
  .main_content .section12 {
    padding-bottom: 30.303030303vw;
  }
}
.main_content .section12 .telnumber {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: min(311px, 20.7333333333vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section12 .telnumber {
    top: 78.5353535354vw;
  }
}
.main_content .section12 .telnumber a {
  width: 350px;
  height: 25px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
  font-size: min(14px, 0.9333333333vw);
  line-height: 180%;
  text-align: center;
  letter-spacing: 0.07em;
  text-decoration-line: underline;
  color: #ffffff;
}
@media only screen and (max-width: 959px) {
  .main_content .section12 .telnumber a {
    font-size: 3.5353535354vw;
  }
}
.main_content .section12 .map {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: min(336px, 22.4vw);
  bottom: min(92px, 6.1333333333vw);
  width: min(324px, 21.6vw);
  height: min(193px, 12.8666666667vw);
}
@media only screen and (max-width: 959px) {
  .main_content .section12 .map {
    width: 84.8484848485vw;
    bottom: 53.5353535354vw;
    width: 81.8181818182vw;
    height: 48.7373737374vw;
  }
}

.floating_button {
  position: fixed;
  display: none;
  z-index: 1000;
}
@media only screen and (max-width: 959px) {
  .floating_button {
    bottom: 5.0505050505vw;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 90.9090909091vw;
  }
}
.floating_button a {
  display: block;
  width: 100%;
}
.floating_button a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

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