@charset "utf-8";
/*****************************************
共通
*****************************************/
.wrapper {
   width: 100%;
   padding: 0;
 }
.container {
   width: 100%;
   padding: 0;
}
#book_a_visit * {
   box-sizing: content-box;
}
#book_a_visit ul,
#book_a_visit ol {
	list-style: none;
}
#aoki_main a:hover,
#aoki_main a:focus {
	text-decoration: none;
}

/* mv */
#book_a_visit {
	width: 100%;
	color: #333;
	background: #fff;
	margin: 0 auto;
	font-size: 18px;
	line-height: 1.5;
}
#book_a_visit .mv {
   width: 100%;
   margin: 0 auto;
   padding: 0 !important;
   box-sizing: border-box;
}
#book_a_visit .mv p {
   width: 100%;
   text-align: center;
}

/* leadArea */
#aoki_main .leadArea {
   width: 1200px;
   margin: 0 auto;
   padding: 30px 0 0;
}
#aoki_main h1 {
   line-height: 1.8;
   margin-bottom: 10px;
   color: #333;
   font-size: 28px;
   font-weight: bold;
   text-align: center;
}
#aoki_main .leadArea p {
   line-height: 1.8;
   color: #333;
   font-size: 16px;
	text-align: center;
}

/* contents */
#book_a_visit .cmn-inner {
   width: 1200px;
   margin: 0 auto;
}
#book_a_visit h2 {
   display: inline-block;
   font-size: 40px;
   text-align: center;
   color: #1c65a9;
   border-top: 5px #1c65a9 solid;
   padding: 15px 0 30px
}

/*  btn-area */
#aoki_main .btn-area {
   margin-top: 30px;
   text-align: center;
}
#aoki_main .btn-area .cmn-btn + .cmn-btn {
   margin-top: 40px;
}
/* 1カラム（ベタ背景色 ⇒ ボーダー） */
#aoki_main .cmn-btn.bg a {
   display: flex;
   position: relative;
   width: 500px;
   height: 80px;
   margin: 0 auto;
   justify-content: center;
   align-items: center;
   background: #333;
   color: #fff;
   border-radius: 100vw;
   font-size: 20px;
   font-weight: bold;
   box-sizing: border-box;
}
#aoki_main .cmn-btn.bg a:hover {
   background-color: #fff;
   color: #333;
   border: 2px solid #333;
   text-decoration: none;
}
/* 1カラム（ボーダー ⇒ ベタ背景色） */
#aoki_main .cmn-btn.bd a {
   display: block;
   position: relative;
   width: 500px;
   height: auto;
   margin: 0 auto;
   padding: 18px;
   color: #333;
   border: 2px solid #333;
   border-radius: 100vw;
   font-size: 20px;
   font-weight: bold;
   box-sizing: border-box;
}
#aoki_main .cmn-btn.bd a::after {
   content: "";
   position: absolute;
   top: 50%;
   right: 40px;
   width: 10px;
   height: 10px;
   margin-top: -4px;
   border-top: 2px solid #333;
   border-right: 2px solid #333;
   transform: translateY(-40%) rotate(45deg);
   -webkit-transform: translateY(-40%) rotate(45deg);
}
#aoki_main .cmn-btn.bd a:hover {
   background-color: #333;
   color: #fff;
   transition: 0.4s;
   -webkit-transition: 0.4s;
   text-decoration: none;
}
#aoki_main .cmn-btn.bd a:hover::after {
   border-top: 2px solid #fff;
   border-right: 2px solid #fff;
}
/* 2カラム */
#aoki_main .btn-area-others {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   margin-top: 50px;
}
#aoki_main .btn-area-others .cmn-btn:nth-of-type(2n) {
   margin-left: 20px;
}

/* cmn-recommend */
#aoki_main .cmn-recommend {
   padding: 120px 0 50px;
}
#aoki_main .cmn-recommend h2 {
   margin: 0 auto 47px;
   color: #333;
   font-size: 26px;
   font-weight: bold;
   text-align: center;
}
#aoki_main .cmn-recommend .bnr_box {
   display: flex;
   max-width: 1200px;
   width: 100%;
   margin: 0 auto;
   justify-content: space-between;
   -webkit-box-pack: justify;
}
#book_a_visit #scene .case:nth-of-type(2) .case_box {
   margin-top: 80px;
}
#book_a_visit .case_box {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 672px;
   margin: 40px auto 0;
}
#book_a_visit .case_img {
  width: 300px;
}
#book_a_visit .case_text {
  width: 560px;
  text-align: left;
  margin-left: 40px;
}
#book_a_visit .case_title {
   font-size: 20px;
   font-weight: bold;
}
#book_a_visit .case_order {
   margin-top: 10px;
   font-size: 24px;
   font-weight: bold;
}
#book_a_visit h3 {
  margin: 0;
  letter-spacing: 0.1em;
  color: #1c65a9;
  font-size: 22px;
}
#book_a_visit .store_wrap_btn {
  margin-top: 35px;
}
#book_a_visit .store_wrap_btn p {
  font-size: 20px;
}
#book_a_visit .case_explanation {
   margin-top: 10px;
   line-height: 1.7
}
#book_a_visit .case_btn a {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 400px;
   margin: 0 auto;
   height: 60px;
   border-radius: 45px;
   border: 2px solid #333;
   color: #333;
   font-weight: bold;
  text-decoration: none;
}
#book_a_visit .case_btn a:hover {
   opacity: 1;
   text-decoration: none;
   background: #333;
   color: #fff;
   transition: .4s;
   font-weight: bold;
}
#book_a_visit .case_btn a::before {
   content: "";
   position: absolute;
   top: 41%;
   right: 7%;
   width: 8px;
   height: 8px;
   border-top: 1px solid #333;
   border-left: 1px solid #333;
   transform: rotate(135deg);
}
#book_a_visit .case_btn a:hover::before {
   border-top: 1px solid #fff;
   border-left: 1px solid #fff;
   transition: .4s;
}
#book_a_visit .case_btn {
   margin-top: 40px;
}
#book_a_visit #flow h2 {
   padding-bottom: 50px;
}
#book_a_visit #service {
  background: #faf9f7;
}
#book_a_visit section {
  padding: 60px 0 74px;
}
#book_a_visit #service .service__inner > p {
  font-size: 18px;
  margin-bottom: 40px;
  text-align: left;
  line-height: 1.8;
}
#book_a_visit #service .wrap {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
}
#book_a_visit #service .wrap .service_p {
    background: #fff;
    border: 5px #ccc solid;
    border-radius: 10px;
    margin-bottom: 0;
    padding: 20px 30px;
    width: 51%;
    font-size: 15px;
    text-align: left;
    line-height: 2;
}
#book_a_visit #service .wrap .service_p .service_note {
    font-size: 12px;
    color: #e00;
}
#book_a_visit #scene a.reserveLink {
    margin: 50px auto 0;
}
#book_a_visit .reserveLink {
    position: relative;
    align-items: center;
    background: #1c65a9;
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 20px;
    height: 200px;
    justify-content: center;
    border: 2px solid #1c65a9;
    width: 200px;
    transition: .4s;
}
#book_a_visit .reserveLink:hover {
  text-decoration: none;
  background: #fff;
  border: 2px solid #1c65a9;
  transition: .4s;
  color: #1c65a9;
}
#book_a_visit .reserveLink::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 47%;
    right: 9%;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(135deg);
    transition: .4s;
}
#book_a_visit .reserveLink:hover::after {
    border-top: 2px solid #1c65a9;
    border-left: 2px solid #1c65a9;
    transition: .4s;
}
#book_a_visit #flow ol li {
   padding-bottom: 80px;
}
#book_a_visit #flow ol li {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    font-size: 24px;
    padding-bottom:80px;
    position: relative;
    text-align: left;
    width: 100%;
}
#book_a_visit #flow ol li:nth-of-type(3) {
   padding-bottom: 0;
}
#book_a_visit #flow ol li:nth-of-type(1)::before {
    height: 139.5px;
    left: 1.6%;
    width: 54px;
    background-image:url("../_img/250722/icon_book_a_visit_1.png");
}
#book_a_visit #flow ol li:nth-of-type(2)::before {
    background-image:url("../_img/250722/icon_book_a_visit_2.png");
    height: 144.5px;
    left: 26%;
    top: 0;
    width: 100px;
}
#book_a_visit #flow ol li:nth-of-type(2) .wrap {
   margin-left: 380px;
}
#book_a_visit #flow ol li:nth-of-type(3)::before {
    background-image:url("../_img/250722/icon_book_a_visit_3.png");
    height: 147px;
    left: 0;
    top: 0;
    width: 100px;
}
#book_a_visit section {
     padding: 60px 0 60px;
     text-align: center;
}
#book_a_visit #flow ol li .wrap strong {
  font-size: 24px;
  line-height: 1;
  margin-bottom: 10px;
}
#book_a_visit strong, #book_a_visit em {
  font-style: normal;
  font-weight: 600;
}
#book_a_visit #flow ol li .wrap p {
  line-height: 1.8;
  font-size: 15px;
  margin-top: 10px;
}
#book_a_visit #flow ol li .wrap {
    margin: 0 0 0 140px;
    width: 58%;
}
#book_a_visit #flow ol li:nth-of-type(3) .reserveLink {
    margin: 0;
}
#book_a_visit #stores {
    padding-bottom: 38px;
}
#book_a_visit #stores .wrap .stores_btn a{
    border:2px #1c65a9 solid;
    border-radius:20px;
    color:#1c65a9;
    font-size:26px;
    font-weight:600;
    line-height:1;
    max-width:900px;
    padding:40px 0;
    text-align:center;
    width:70%;
    text-decoration:none;
    transition: .4s;
}
#book_a_visit #stores .wrap .stores_btn a:hover {
   background: #1c65a9;
   color: #fff;
   transition: .4s;
}
#book_a_visit .stores_btn {
  width:100%;
  margin: 9px auto 0;
  display:flex;
  justify-content:center;
  position: relative;
}
#book_a_visit .store_wrap_btn .btn_box:nth-of-type(2){
  margin-top: 70px;
}
#book_a_visit #stores .wrap .stores_btn a:after{
  content: "";
  display:inline-block;
  width: 0;
  height: 0;
  border-top: solid 15px transparent;
  border-right: solid 15px transparent;
  border-bottom: solid 15px transparent;
  border-left: solid 15px #1c65a9;
  position: absolute;
  top: 42%;
  right:20%;
  margin-top:-6px;
  transition: .4s;
}
#book_a_visit #stores .wrap .stores_btn a:hover:after {
  border-top: solid 15px transparent;
  border-right: solid 15px transparent;
  border-bottom: solid 15px transparent;
  border-left: solid 15px #fff;
  transition: .4s;
}
#book_a_visit #campaign .wrap, #book_a_visit #service .service__inner, #book_a_visit #scene #slider, #book_a_visit #chat a, #book_a_visit #flow ol, #book_a_visit #stores .wrap, #book_a_visit #caution .dots {
  max-width: 900px;
  margin: 0 auto;
}
#book_a_visit p, #book_a_visit .dots {
  font-size: 15px;
}
#book_a_visit #stores .wrap p {
  font-size: 15px;
  font-weight: bold;
  margin-top: 20px;
  line-height: 1.7;
}
#book_a_visit #caution .dots {
  width: 700px;
  text-align: left;
}
#book_a_visit .dots li, #book_a_visit .dots dd {
  line-height: 2;
  list-style-type: none;
  position: relative;
}
#book_a_visit .dots li::before, #book_a_visit .dots dd::before {
  content: "\30FB";
  position: absolute;
  text-indent: -1em;
}
#book_a_visit #caution {
  padding-bottom: 77px;
}
#book_a_visit #flow ol li::before {
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: inline-block;
  height: 144px;
  position: absolute;
  width: 100px;
}
#book_a_visit .service_img {
  width: 300px;
  margin: 0 auto;
}
#book_a_visit .dots {
  margin-top: 100px;
}
#book_a_visit .dots_servise {
  position: relative;
  font-size: 24px!important;
  font-weight: bold;
}
#book_a_visit .dots_servise::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  top: 36px;
  left: 46px;
  border-top: 2px solid #495061;
  transform: rotate(53deg);
}
#book_a_visit .dots_servise::after {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  top: 36px;
  right: 57px;
  border-top: 2px solid #495061;
  transform: rotate(-53deg);
}
#book_a_visit .targetstores li {
  text-align: left;
}
#book_a_visit .targetstores li + li {
  margin-top: 30px;
}
#book_a_visit .targetstores li h3 {
   font-size: 24px;
   border-top: none;
   color: #333;
   padding: 2px 0 15px;
}
#book_a_visit .targetstores li h4::before {
   content: "";
   position: absolute;
   border-bottom: 1px solid #495061;
   top: -57%;
   left: 0;
   width: 394px;
}
#book_a_visit .targetstores li h4 {
   font-size: 19px;
   border-top: none;
  position: relative;
}
#book_a_visit .targetstores li p {
   font-size: 15px;
   margin-top: 3px;
   line-height: 1.5;
   margin-bottom: 23px
}
#book_a_visit .service_btn {
   margin: 30px auto 40px;
}
#book_a_visit .service_btn a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 300px;
  height: 50px;
  border: 2px solid #1c65a9;
  border-radius: 13px;
  color: #1c65a9;
  font-weight: bold;
  font-size: 20px;
  text-decoration: none;
  transition: .4s;
}
#book_a_visit .service_btn a:hover {
  background: #1c65a9;
  color: #fff;
  transition: .4s;
}
#book_a_visit .service_btn a::after {
  content: "";
  position: absolute;
   width: 0;
  height: 0;
  border-top: solid 10px transparent;
  border-right: solid 10px transparent;
  border-bottom: solid 10px transparent;
  border-left: solid 10px #1c65a9;
  top: 30%;
  right: 4%;
  transition: .4s;
}
#book_a_visit .service_btn a:hover::after {
  border-top: solid 10px transparent;
  border-right: solid 10px transparent;
  border-bottom: solid 10px transparent;
  border-left: solid 10px #fff;
  transition: .4s;
}
#book_a_visit .scene_caption {
  font-size: 20px;
  margin: -12px 0 0;
}
.targetstores h2 {
   font-size: 31px!important;
   border-top: none!important;
   color: #333!important;
}
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
}
.modal__bg {
  background: rgba(0,0,0,0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
  overflow-y: scroll;
  left: 50%;
  padding: 20px;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 420px;
  height: 700px;
}
.modal_btn a{
   position: relative;
   display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border-radius: 45px;
  width: 200px;
  height: 30px;
  font-size: 15px;
  border: 1px solid #333;
}
.modal_btn a:hover {
  opacity: 0.8;
  text-decoration: none;
}
.modal_btn a::before,
.modal_btn a::after{
  content: "";
  position: absolute;
  width: 11px;
  height: 1px;
  background: #333;
  top: 50%;
  right: 8%;
}
.modal_btn a::before {
  transform: rotate(45deg);
}
.modal_btn a::after {
  transform: rotate(-45deg);
}
.js-modal-area a {
  text-decoration: underline;
}
.js-modal-area .modal_btn a {
  text-decoration: none!important;
}
.js-modal-area a:hover {
  text-decoration: none;
}

/*****************************************
PC only
*****************************************/
@media screen and (min-width: 769px) {
  .sp {
      display: none;
   }

   /* cmn-recommend */
   #aoki_main .cmn-recommend h2 {
      display: flex;
      align-items: center;
      justify-content: center;
   }
   #aoki_main .cmn-recommend h2::before,
   #aoki_main .cmn-recommend h2::after {
      content: "";
      border-bottom: 2px solid #333;
   }
   #aoki_main .cmn-recommend h2::before {
      margin-right: 20px;
      padding-left: 120px;
   }
   #aoki_main .cmn-recommend h2::after {
      margin-left: 20px;
      padding-right: 120px;
   }

   /* bottom_recommend_area */
   #aoki_main #bottom_recommend_area .bottom_newitem,
   #aoki_main #bottom_recommend_area .bottom_service {
      width: 1100px !important;
   }
   #aoki_main #bottom_recommend_area .bottom_bnrBox a {
      width: 24% !important;
   }
   #aoki_main #bottom_recommend_area .bottom_bnrBox a + a {
      margin-left: 12px !important;
   }
}


/*****************************************
SP only
*****************************************/
@media screen and (max-width: 768px) {
   .pc {
      display: none;
   }
   .wrapper {
      padding: 0;
      margin: 0;
   }
   .container {
      padding-left: 0;
      padding-right: 0;
   }

   /* mv */
   #book_a_visit {
      max-width: 768px;
      width: 100%;
      line-height: 1.5;
      margin: 0 auto;
      background: #fff;
      color: #333;
      font-size: 4.2666666vw;
   }
   #book_a_visit .mv {
      width: 100%;
   }
   #book_a_visit .mv p {
      width: 100%;
   }

   /* leadArea */
   #book_a_visit .leadArea {
      width: 100%;
      margin: 0 auto;
      padding: 6vw 0;
      box-sizing: border-box;
   }
   #book_a_visit h1 {
      margin-bottom: 4.8vw;
      font-size: 3.7vw;
   }
   #aoki_main .leadArea p {
      line-height: 1.6;
      font-size: 3.2vw;
      text-align: left;
   }

   /* contents */
   #book_a_visit .cmn-inner {
      width: 100%;
      box-sizing: border-box;
   }
  #book_a_visit section {
    padding: 14vw 0 12vw;
    text-align: center;
  }
  #book_a_visit #flow,
  #book_a_visit #scene,
  #book_a_visit #stores,
  #book_a_visit .store{
    padding-bottom: 0!important;
  }
   #book_a_visit h2 {
    display: inline-block;
    font-size: 6.46vw;
    border-top: 5px #1c65a9 solid;
    padding: 2vw 0 6vw;
  }
  #book_a_visit #flow h2 {
    padding-bottom: 6vw;
}
  #book_a_visit #service .service__inner > p {
    font-size: 3.46vw;
    margin-bottom: 5.6vw;
    line-height: 2;
    padding: 0 4vw;
  }
  #book_a_visit #service .wrap .service_p {
    background: #fff;
    border: 2px #ccc solid;
    border-radius: 10px;
    margin: 0 auto;
    padding: 4vw 5vw;
    width: 80vw;
    font-size: 3.2vw;
    text-align: left;
    line-height: 2;
}
  #book_a_visit .service_img {
     width: 60vw;
     margin: 6vw auto 0;
  }
  #book_a_visit #service .wrap {
    display: block;
}
  #book_a_visit .service_text {
  font-size: 3.46vw;
}
  #book_a_visit h3 {
    display: inline-block;
    margin: 0;
    letter-spacing: 0.1em;
    color: #1c65a9;
    font-size: 4.8vw;
}
  #book_a_visit .store_wrap_btn {
    margin-top: 0;
  }
  #book_a_visit #stores .wrap p {
    font-size: 3.46vw;
    padding: 0 5vw;
  }
  #book_a_visit .case_box {
    display: block;
    width: 92vw;
    margin: 0 auto;
  }
  #book_a_visit .case_img {
    width: 88vw;
    margin: 0 auto;
  }
  #book_a_visit .case_text {
    width: 88vw;
    text-align: left;
    margin:0 auto;
  }
  #book_a_visit .case_btn {
    margin-top: 5vw;
  }
  #book_a_visit .case_title {
    margin-top: 4vw;
    font-size: 4.5vw;
  }
  #book_a_visit .case_btn a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92vw;
    margin: 0 auto;
    height: 16vw;
    border-radius: 100vw;
    border: 2px solid #333;
    font-weight: bold;
    font-size: 3.73vw;
  }
  #book_a_visit .reserveLink {
    font-size: 4vw;
    height: 38vw;
    width: 38vw;
    margin: 10vw auto 0;
  }
  #book_a_visit .reserveLink::after {
    width: 2vw;
    height: 2vw;
    top: 47%;
    right: 11%;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
}
  #book_a_visit .case_explanation {
    font-size: 3.46vw;
    line-height: 1.8;
  }
  #book_a_visit #scene .case:nth-of-type(2) .case_box {
    margin-top: 12.6vw;
}
  #book_a_visit .case_order {
    margin-top: 0;
    font-size: 5vw;
  }
  #book_a_visit #flow ol li:nth-of-type(1)::before {
    width: 2em;
    height: 5.25em;
    left: -1%;
  }
  #book_a_visit #flow ol li:nth-of-type(2)::before {
    width: 3.6875em;
    height: 5.25em;
    left: -3%;
  }
  #book_a_visit #flow ol li:nth-of-type(3)::before {
    width: 3.75em;
    height: 5.6em;
    left: -3%;
  }
  #book_a_visit #flow ol li:nth-of-type(2) .wrap {
    margin-left: 15vw;
  }
  #book_a_visit #flow ol li .wrap {
    margin: 0;
    width: 80%;
    margin-left: 15vw;
  }
  #book_a_visit #flow a {
    margin: 10vw auto 0!important;
  }
  #book_a_visit #flow ol li {
    font-size: 3.46vw;
    padding-bottom: 8vw;
    position: relative;
    text-align: left;
    width: 80%;
    margin: 0 auto;
  }
  #book_a_visit #stores .wrap .stores_btn a {
    font-size: 4.46vw;
    font-weight: bold;
    padding: 7vw 0;
    width: 92vw;
}
  #book_a_visit .dots {
    margin-top: 15vw;
  }
  #book_a_visit #stores .wrap .stores_btn a:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: solid 2.5vw transparent;
    border-right: solid 2.5vw transparent;
    border-bottom: solid 2.5vw transparent;
    border-left: solid 2.5vw #1c65a9;
    position: absolute;
    top: 39%;
    right: 8%;
    margin-top: 0;
}
  #book_a_visit #stores .wrap .stores_btn a:hover:after {
    border-top: solid 2.5vw transparent;
    border-right: solid 2.5vw transparent;
    border-bottom: solid 2.5vw transparent;
    border-left: solid 2.5vw #fff;
  }
  #book_a_visit .dots_servise {
    font-size: 4vw!important;
    margin-top: 10vw;
    line-height: 1.7;
    padding: 0 4vw;
    text-align: center;
}
  #book_a_visit .dots_servise::before {
    width: 10vw;
    height: 10vw;
    top: 57%;
    left: 2%;
    border-top: 2px solid #333;
}
   #book_a_visit .dots_servise::after {
    width: 10vw;
    height: 10vw;
    top: 57%;
    right: 2%;
    border-top: 2px solid #333;
}
  #book_a_visit .dots_servise02 {
    font-size: 3.46vw!important;
    text-align: left;
    padding: 0 4vw;
  }
  #book_a_visit #stores {
    padding-bottom: 12vw;
}
  #book_a_visit #flow ol li:nth-of-type(3) {
    display: block;
    padding-bottom: 0;
  }
  #book_a_visit #flow ol li .wrap strong {
    font-size: 3.73vw;
    line-height: 1;
    margin-bottom: 1.33vw;
  }
  #book_a_visit #flow ol li .wrap p {
    font-size: 3.46vw;
    margin-top: 2.33vw;
    line-height: 1.7;
  }
  #book_a_visit #caution .dots  {
    width: 92vw;
    margin: 0 auto;
    font-size: 3.2vw;
  }
  #book_a_visit #caution {
    padding-bottom: 12vw;
}
  #book_a_visit .store_wrap_btn .btn_box:nth-of-type(2) {
    margin-top: 9vw;
  }
  #book_a_visit #stores .wrap p {
    margin-top: 3vw;
    text-align: left;
  }
  #book_a_visit .targetstores li + li {
    margin-top: 8vw;
}
  #book_a_visit .targetstores li h3 {
    font-size: 4.73vw;
    padding: 0 0 3vw;
}
  #book_a_visit .targetstores li h4 {
    font-size: 3.86vw;
    margin-top: 1.2vw;
}
#book_a_visit .targetstores li p {
    font-size: 3.2vw;
    margin-top: 0.5vw;
    margin-bottom: 5.5vw;
}
#book_a_visit .dots li {
    line-height: 1.8;
}
  #book_a_visit .scene_caption {
    font-size: 3.7vw;
    margin: -4vw 0 4vw;
  }
  #book_a_visit .service_text a {
    font-size: 3.6vw;
  }
  #book_a_visit .service_btn a {
    width: 70vw;
    height: 11vw;
    font-size: 4.46vw;
  }
  #book_a_visit .service_btn a::after {
    border-top: solid 2.5vw transparent;
    border-right: solid 2.5vw transparent;
    border-bottom: solid 2.5vw transparent;
    border-left: solid 2.5vw #1c65a9;
    top: 26%;
    right: 4%;
}
  .modal__content {
  overflow-y: scroll;
  left: 50%;
  padding: 3vw;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 84vw;
  height: 141vw;
}
  .targetstores h2 {
    font-size: 5.8vw!important;
  }
  #book_a_visit .targetstores li h4::before {
    content: "";
    position: absolute;
    border-bottom: 1px solid #495061;
    top: -49%;
    left: 0;
    width: 78vw;
}
  #book_a_visit #scene a.reserveLink {
    margin: 10vw auto 0 !important;
  }
   /* cmn-recommend */
   #aoki_main .cmn-recommend h2 {
      margin: 0 auto 5vw;
      font-size: 6.4vw;
   }
   #aoki_main .cmn-recommend .bnr_box {
      width: 100%;
      flex-wrap: wrap;
   }
   #aoki_main .cmn-recommend .bnr_box .bnr_img {
      width: 48%;
   }
   #aoki_main .cmn-recommend .bnr_box .bnr_img a {
      display: block;
   }
   #aoki_main .cmn-recommend .bnr_box .bnr_img:nth-of-type(n+3) {
      margin-top: 4vw;
   }

   /* ------ btn-area ------ */
   #aoki_main .btn-area {
      width: 100%;
      margin: 19vw auto 0;
   }
   /* 1カラム（ベタ背景色 ⇒ ボーダー） */
   #aoki_main .cmn-btn.bg a {
      width: 100%;
      height: 16vw;
      border-radius: 100vw;
      font-size: 3.73vw;
      text-align: center;
   }
   /* 1カラム（ボーダー ⇒ ベタ背景色） */
   #aoki_main .cmn-btn.bd a {
      width: 100%;
      padding: 4.5vw;
      font-size: 3.73vw;
   }
   /* 2カラム */
   #aoki_main .btn-area-others {
      justify-content: space-between;
   }
   #aoki_main .btn-area-others .cmn-btn {
      width: 49%;
   }
   #aoki_main .btn-area-others .cmn-btn a {
      display: flex;
      justify-content: center;
      align-items: center;
   }
   #aoki_main .btn-area-others .cmn-btn:nth-of-type(2n) {
      margin-left: 0;
   }
   #book_a_visit #flow ol li .wrap strong {
      font-size: 5vw;
      margin: 0 auto 1.33vw;
      line-height: 1.4;
    }

   /* 商品モジュール調整 */
   #aoki_main .topicModuleCredit,
   #aoki_main .topicModuleCredit.mb_0 {
      margin: 30px auto!important;
  }
}

/*****************************************
Tablet only (min-width:576px)
*****************************************/
@media screen and (min-width: 576px) {
   .container {
      width: 100%;
   }
}