.machigai_kv_area {
  background: url(/csr/toki-iku/tokiq-machigaisagashi/img/img_machigaisagashi_title_bg.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom;
  padding: 40px 40px 60px;
}

.machigai_main_h1_img {
  margin: auto auto 24px;
}

.machigai_main_h1_text {
  text-align: center;
  font-size: 24px;
  font-weight: 700;
}

.machigai_anq_policy_area_inner_link {
  color: #000000;
  border-bottom: solid 1px;
}

.machigai_main {
  background: url(/csr/toki-iku/tokiq-nazotoki/img/bg_top.jpg) no-repeat;
  background-size: 100%;
}

.machigai_main_contents {
  background: #fff;
  border-radius: 24px 24px 0 0;
  max-width: 574px;
  margin: -24px auto 0;
  padding: 32px 24px 0;
  position: relative;
}

.machigai_main_lead {
  font-size: 16px;
  font-weight: 700;
  line-height: 26px;
  text-align: center;
  margin: auto auto 16px;
}

.machigai_main_machigaisagshi_modal {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: auto auto 16px;
}
.machigai_main_caption {
  text-align: center;
  font-size: 14px;
  margin: auto auto 40px;
}
.machigai_print_btn {
  background: #d2c2a7;
  border-radius: 8px;
  color: #000000;
  padding: 16px 60px;
  font-weight: 700;
  font-size: 16px;
  line-height: 26px;
  margin: auto auto 32px;
  display: block;
  position: relative;
  cursor: pointer;
}
.machigai_print_btn:after {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  background: url(/csr/toki-iku/tokiq-machigaisagashi/img/icon_dl.svg);
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.machigai_anq_lead_img {
  margin: auto;
}

.machigai_anq_arrow {
  margin: auto;
}

.machigai_anq_area {
  margin: -32px -24px 0;
  background: #fff;
  border-radius: 24px 24px 0 0;
  color: #ffffff;
  padding: 48px 24px;
}

.machigai_anq_policy {
  border: #bfa982 solid 1px;
  border-radius: 8px;
  overflow: hidden;
}

.machigai_anq_policy_title {
  background: #bfa982;
  color: #000000;
  font-weight: 700;
  padding: 8px 16px;
  line-height: 26px;
  font-size: 16px;
}

.machigai_anq_policy_area {
  background: #fff;
  font-size: 16px;
  line-height: 26px;
  color: #000000;
  padding: 16px 24px;
  max-height: 216px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.machigai_anq_policy_area::-webkit-scrollbar {
  display: block;
}

.machigai_anq_policy_area::-webkit-scrollbar-track {
  background: #eeeeee;
  border-radius: 0;
}

.machigai_anq_policy_area::-webkit-scrollbar-thumb {
  background: #aaaaaa;
  border-radius: 4px;
  border: 1px solid #eeeeee;
}

.machigai_anq_policy_area::-webkit-scrollbar-thumb:active {
  background: #888888;
}

body.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #bfa982;
}

.modal_image_wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: max-content;
  gap: 32px;
  margin: auto;
}

.modal_scroll_container::-webkit-scrollbar {
  display: none;
}

/* モーダルガイド全体の配置 */
.modal_guide {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  pointer-events: none; /* 下の画像を触れるように */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s;
}

.modal_guide.is-active {
  opacity: 1;
  visibility: visible;
}

/* 指定された黒いチップ背景 */
.scroll-hint-chip {
  width: 120px;
  height: 80px;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 5px;
  padding: 20px 10px 10px 10px;
  box-sizing: border-box;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}

/* 指アイコン */
.scroll-hint-icon {
  display: block;
  width: 26px;
  height: 31px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjJsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjE2TDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  z-index: 2;
  /* 右から左へスワイプ */
  animation: swipeRightToLeft 1.2s ease-in-out 2;
}

/* 矢印アイコン（最後に指の横に出現） */
.scroll-hint-icon::after {
  content: "";
  position: absolute;
  top: -10%;
  left: -7px; /* 指の左側（指先の方）に配置 */
  width: 34px;
  height: 12px;
  transform: translateY(-50%);
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  animation: arrowShow 0.4s forwards 2.4s; /* スワイプ2回終了後に出現 */
  right: 0;
  margin: auto;
}

/* テキスト（流れない） */
.scroll-hint-text {
  color: #fff;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 700;
  margin-top: 5px;
}

/* アニメーション：右から左へスワイプ */
@keyframes swipeRightToLeft {
  0% {
    transform: translateX(30px);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    transform: translateX(-30px);
    opacity: 0;
  }
}

/* 矢印表示アニメーション */
@keyframes arrowShow {
  to {
    opacity: 1;
  }
}

.modal_close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2020;
  cursor: pointer;
  width: 40px;
}

.modal {
  display: none;
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #bfa982;
}

.modal_scroll_container {
  width: 100%;
  height: calc(100% - 60px);
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  padding: 80px 24px 24px;
  cursor: grab;
  user-select: none;
}

.modal_image_wrapper img {
  height: 50%;
  width: auto;
  flex-shrink: 0;
  display: block;
  margin: auto 0;
  pointer-events: none;
}

.modal_image_wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: max-content;
  box-sizing: border-box;
}

.custom_scrollbar_container {
  position: absolute;
  bottom: 32px;
  left: 24px;
  right: 24px;
  height: 8px;
  background: #f5f2eb;
  overflow: hidden;
}

.progress_bar {
  width: 0%;
  height: 100%;
  background: #000000;
  transition: width 0.1s ease-out;
}

iframe#formIframe {
  width: 100%;
  height: 520px;
  overflow: hidden;
}

.header_nazotoki_link {
  background: #1c4e89;
  color: #ffffff;
  border-radius: 8px;
  display: block;
  text-align: center;
  font-size: 18px;
  margin: 8px auto auto;
  font-weight: 700;
  padding: 16px 48px;
  position: relative;
}

.header_nazotoki_link:before {
  content: "";
  width: 55px;
  height: 51px;
  display: block;
  background: url(/csr/toki-iku/tokiq-machigaisagashi/img/btn_machigaisagashi_illust_left.svg) no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0px;
  bottom: 0;
  cursor: pointer;
  margin: auto;
}

.header_nazotoki_link:after {
  content: "";
  width: 55px;
  height: 51px;
  display: block;
  background: url(/csr/toki-iku/tokiq-machigaisagashi/img/btn_machigaisagashi_illust_right.svg) no-repeat;
  background-size: 100%;
  position: absolute;
  right: 8px;
  bottom: 0;
  cursor: pointer;
  margin: auto;
}

.header_nazotoki_link_area {
  margin: 56px auto;
}

.header_nazotoki_link_text {
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 8px;
}

.nazotoki__header__menu__navi__list {
  display: none;
}

.machigai_anq_policy_area p + p {
  margin-top: 26px;
}

.machigai_anq_ans_btn{
  position: relative;
  display: block;
  width: fit-content;
  margin: 24px auto 0;
}

.machigai_anq_ans_btn_text{
  font-weight: 700;
  color: #fff;
  background-color: #BFA982;
  border-radius: 8px;
  padding: 16px 88px;
  font-size: 1.6rem;
  width: 293px;
  display: block;
}

.machigai_anq_ans_btn::before{
  content: "";
  position: absolute;
  width: 55px;
  height: 51px;
  background: url(/csr/toki-iku/tokiq-nazotoki/result/img/btn_answer_check_illust.svg) no-repeat;
  top: 0;
  left: 23px;
}

.machigai_anq_ans_btn::after{
  content: "";
  position: absolute;
  width: 35px;
  height: 31px;
  background: url(/csr/toki-iku/tokiq-nazotoki/result/img/arrow.svg) no-repeat;
  top: 30%;
  right: 20px;
}

.machigai__pdf__link{
  width: fit-content;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .machigai_main_h1_img {
    width: 242px;
  }

  .machigai_main_contents {
    width: 100%;
    max-width: 100%;
    margin: auto;
    padding: 80px 0 0;
  }

  .machigai_main_h1_text {
    font-size: 42px;
  }

  .machigai_main {
    background: url(/csr/toki-iku/tokiq-nazotoki/img/bg_top_pc.jpg) no-repeat;
    background-size: 100%;
  }

  .machigai_kv_area {
    padding: 80px 80px 132px;
    background-image: url(/csr/toki-iku/tokiq-machigaisagashi/img/img_machigaisagashi_title_bg_pc.svg);
  }

  .machigai_main_lead {
    font-size: 24px;
    margin: auto auto 40px;
  }

  .machigai_main_machigaisagshi_modal {
    max-width: 840px;
    margin: auto auto 40px;
    pointer-events: none;
  }

  .machigai_main_caption {
    display: none;
  }

  .machigai_print_btn {
    margin: auto auto 40px;
  }

  .machigai_anq_lead_img {
    width: 600px;
    margin: auto auto 16px;
  }

  .machigai_anq_area {
    margin: -83px 0 0;
    padding: 80px 80px 100px;
    text-align: center;
  }

  #formIframe {
    max-width: 1200px;
    margin: auto auto;
  }

  .machigai_anq_policy {
    max-width: 1200px;
    margin: auto;
    text-align: left;
  }
}