.sq_mgn {
  margin-top: -202px;
  padding-top: 202px;
}
.shop_wrapper {
  width: 100%;
}
.shop_outer {
  max-width: 1280px;
  margin: 0 auto 4rem auto;
  padding: 0rem 40px;
}
.shop_menu {
  position: sticky;
  top: 74px;
  width: 100%;
  height: 130px;
  border-top: #fff 10px solid;
  border-bottom: #fff 10px solid;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: wrap;
  background-color: #f2f2f2;
  padding: 1rem 1rem;
  z-index: 5
}
.b_sq_shop {
  margin: 0rem 1rem 0rem 1rem;
  font-size: 1rem;
  line-height: 1rem;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  color: #000;
  font-feature-settings: "palt";
  letter-spacing: 0.05rem;
}
.b_sq_shop:hover {
  text-decoration: underline
}
.shop_region {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  line-height: 1rem;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  color: #000;
  font-feature-settings: "palt";
  letter-spacing: 0.05rem;
  width: 100%;
  border-bottom: #000 2px solid;
  margin-top: 1rem;
  padding: 1rem 1rem;
}
.shop_row {
  position: relative;
}
.shop_list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 1.2rem 140px 1.2rem 1rem;
  border-bottom: #ccc 1px solid;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  background: url("../images/arr_right.svg") right 2px center / 20px 13px no-repeat;
  font-size: .9rem;
  line-height: 1.2rem;
  margin: 0 0 0 auto;
  font-feature-settings: "palt";
  color: #000;
  background-color: #ffffff;
  transition: .3s;
}
.no_site {
  background: none;
}
.plus_rvoice {
  padding: 1.2rem 140px 1.2rem 1rem;
}
.shop_list:hover {
  background: url("../images/arr_right.svg") right 0px center / 20px 13px no-repeat;
  background-color: #f2f2f2;
}
.shop_list.no_site:hover {
  background: none;
  background-color: #fff;
}
.shop_name {
  width: 30%;
  font-size: 1rem;
  line-height: 1.3rem;
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  margin-right: 1rem;
}
.shop_add {
  margin-right: 1rem;
  width: 40%;
}
.shop_tel {
  width: 15%;
  margin-right: 1rem;
  white-space: nowrap
}
.shop_rvoice {
  display: block;
  position: absolute;
  top: 50%;
  right: 50px;
  transform: translateY(-50%);
  width: 100px;
  background-color: #A3000D;
  border-radius: 6px;
  overflow: hidden;
  cursor: pointer;
  transition: .3s;
}
.shop_rvoice:hover {
  background-color: #D90011;
}
/*--------------------------*/
.window_base {
  display: none;
  position: fixed;
  padding: 10px 0;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh; /* デフォルトで全画面 */
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 100;
  justify-content: center;
  align-items: center;
  cursor: pointer
}
.window_base.app {
  display: flex; /* モーダルが表示されるときにフレックスを適用 */
  flex-direction: column;
}
#window_area {
  display: flex;
  width: 70%;
  max-height: 96%;
  flex-direction: column;
  flex-flow: wrap;
  justify-content: center;
  background-color: #fff;
  border-radius: 6px;
  overflow: hidden;
  cursor: default
}
.shop_header {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;height:110px;
  padding: 1rem 1rem;
  background: url("../images/bg_shop_window.jpg") no-repeat right center;
  background-color: #000;
  background-size: auto 100%; /* 高さをボックスに合わせる */
}
.rvoice_icon {
  align-self: flex-start;
  width: 100px;
  background-color: #A3000D;
  border-radius: 6px;
  overflow: hidden;
}
.shop_nm {
  display: flex;
  justify-content: center;
  margin: 1rem 0 .5rem 0;
  width: 100%;
  font-size: 1.3em;
  line-height: 1.3rem;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #fff
}
.shop_contents {
  width: 100%;
  height: calc(100% - 110px);
  flex: 1;
  overflow: auto;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 300;
  font-style: normal;
  margin: 0rem 0 2rem 0;
  padding: 1.5rem 3%;
}
.shop_upper {
  display: flex;
}
.shop_photo_main {
  display: flex;
  align-items: center;
  width: 50%;
  background-color: #000
}

.shop_photo_lower {  display: flex;
 justify-content: center;
  margin: 2rem auto 2rem auto;
  width: 100%;
  background-color: #F0F0F0
}
.shop_photo_lower img{
;
  width: 50%;

}




.shop_info {
  display: flex;
  flex-direction: column;
	flex: 1 1;

  background-color: #fff;
  padding: 0rem 0rem 0rem 1rem
}
.row_shop_detail {
  display: flex;
  flex-flow: nowrap;
  margin: 0rem 0rem .4rem 0rem;
}
.shop_detail_item {
  width: 30%;
	max-width: 150px;
  margin: 0rem 0;
  padding: 0.25rem .5rem;
  display: flex;
  align-items: center;
  font-size: .9rem;
  line-height: 1.2rem;
  background-color: #F0F0F0;
  border-radius: 4px
}
.face {
  padding: 0rem ;
}
.shop_detail_ctn {
  flex: 1 0;
  word-break: break-all;

  margin: 0rem 0 0rem .5rem;
  padding: 0.25rem .25rem;
  display: flex;
  align-items: center;
  font-size: .9rem;
  line-height: 1.2rem;
  border-bottom: #ddd 1px solid;
}
.shop_detail_ctn a {
  color: rgba(185, 0, 3, 1.00);
  text-decoration: underline
}
.shopicon img {
  height: 1.2rem;
}
.shop_txt {
  margin: 2rem auto 1rem auto;
  width: 90%;
  font-size: 1rem;
  line-height: 1.7rem;
  font-feature-settings: "palt";
  letter-spacing: 0.075rem;
  text-align: justify;
  color: #000
}

.Rexat_caption {

  margin: 0rem auto .5rem auto;
  width: 100%;
  font-size: 1rem;
  line-height: 1.7rem;
  font-feature-settings: "palt";
  letter-spacing: 0.075rem;
  text-align: justify;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 700;
  font-style: normal;border-bottom: #BA0003 2px solid;
  color: #000
}

.shop_photo_2nd_area {
  margin: 2rem auto 0rem auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background-color: #F0F0F0;
}
.shop_photo_2nd_area img {
  width: 49.5%;
}
.bt_close {
  margin: 1rem auto 0 auto;
  font-family: "UniversNextPro-Cond";
  font-feature-settings: "palt";
  font-size: 1.6rem;
  color: #fff;
  cursor: pointer
}
.bt_close:hover {
  text-decoration: underline
}