.shop-content {
   max-width: 1280px;
   margin: 80px auto;
   display: flex;
   justify-content: space-between;
   align-items: center;
}

.shop-content>div:first-child img {
   width: 100%;
}


.shop-content>div:first-child {
   width: calc(100% - 430px - 50px);
}

.swiper-button-prev:after {
   content: "";
   background: url(/img/shop/detail/arrow-left.png) no-repeat center;
   width: 56px;
   height: 56px;
}

.swiper-button-next:after {
   content: '';
   background: url(/img/shop/detail/arrow-right.png)no-repeat center;
   width: 56px;
   height: 56px;
}

.swiper-button-prev,
.swiper-button-next {
   width: 56px;
   height: 56px;
}


.shop-content>div:last-child {
   width: calc(100% * 430 / 1280);
}

.shop-outline h2 {
   margin-bottom: 53px;
}

.shop-outline h2 img {
   max-width: 200px;
}

.shop-outline h2:before,
.shop-outline h2:after {
   content: none;
}

.shop-info {
   border-top: 1px solid #ccc;
   border-bottom: 1px solid #ccc;
   padding: 32px 0;
   margin: 32px 0;
}

li.shop-time p:first-child,
li.shop-web p:first-child {
   white-space: nowrap;
}

.shop-info a {
   text-decoration: underline;
   word-break: break-all;
}

.shop-info ul li {
   display: flex;
}

.shop-sns ul {
   display: flex;
}

.shop-sns ul li {
   height: 32px;
   margin-right: 16px;
}

.shop-sns ul li img {
   height: 100%;
}

.shop-news {
   background-color: #f5f2e1;
   padding: 50px 0;
}

.shop-news>div {
   max-width: 1280px;
   margin: 0 auto;
}

.shop-news ul {
   display: flex;
}

.shop-news ul li {
   background-color: #fff;
   /*width: 23.5% !important;*/
   font-size: 1.4rem;
   margin-bottom: calc((1280px - (1280px * 0.235 * 4)) / 3);
   margin-right: calc((1280px - (1280px * 0.235 * 4)) / 3);
   display: flex;
}

.shop-news ul li a {
   color: #000;
   display: flex;
   flex-direction: column;
   width: 100%;
}

.swiper-slide {
   height: auto !important;
}

.shop-news ul li a>div:first-child {
   overflow: hidden;
   height: calc(1090px * 0.235);
   position: relative;
}

.shop-news ul li a div img {
   position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   width: 100%;
}

.shop-news ul li a>div:nth-child(2) {
   margin: 22px 15px;
   flex-grow: 1;
}

p.shop-news-title {
   font-weight: 600;
}

.shop-news ul li a>p {
   text-decoration: underline;
   margin: 0 53px 22px 15px;
   position: relative;
   text-align: right;
}

.shop-news ul li a>p:before {
   content: '';
   position: absolute;
   bottom: 30%;
   right: -32px;
   width: 22px;
   height: 1px;
   background: #e6002d;
}

.shop-news ul li a>p:after {
   content: '';
   position: absolute;
   bottom: 10px;
   right: -33px;
   width: 10px;
   height: 1px;
   background: #e6002d;
   transform: rotate(35deg);
}

.floor-map {
   padding: 50px;
}

.swiper {
   height: 800px;
}

dd.fl_map {
   width: 1000px;
   margin: 0 auto;
   border: 1px solid #ccc;
}

p.flmp_b {
   text-align: center;
   margin-top: 20px;
}

.floorguide-btn {
   width: 1280px;
   margin: 50px auto;
   text-align: center;
}

.floorguide-btn a {
   background-color: #e6002d;
   color: #fff;
   padding: 20px 50px;
   border-radius: 5px;
   font-size: 2.0rem;
}

/* メイン画像カルーセル */

.shop-content .swiper-area,
.shop-news .swiper-area {
   position: relative;
}

.shop-content .swiper-button-next {
   right: -28px;
}

.shop-content .swiper-button-prev {
   left: -28px;
}

.shop-content .swiper-pagination {
   bottom: -30px;
}

/* ショップニュースカルーセル */

.shop-news .swiper {
   height: auto;
}

.shop-news .swiper-button-prev {
   left: -65px;
}

.shop-news .swiper-button-next {
   right: -65px;
}

.shop-news .swiper-pagination {
   bottom: -20px;
}



/* --------------------------------------------------------------------------------------
   ios用のリンク対策
--------------------------------------------------------------------------------------- */

@media (min-width: 1024px) {}

/* --------------------------------------------------------------------------------------
   スマホ
--------------------------------------------------------------------------------------- */

@media (max-width: 1024px) {

   .article ul li {
      width: 100% !important;
      /*margin: 0 5vw 5vw 0;*/
   }

   .shop-news ul li {
      margin: 0;
   }

   .shop-content {
      display: inline-block;
      width: 100%;
      margin: 0;
   }

   .shop-content>div:first-child {
      width: 100vw;
      height: 100vw;
   }

   .swiper-button-prev,
   .swiper-button-next {
      width: 10vw;
      height: 10vw;
   }

   .swiper-button-next:after,
   .swiper-button-prev:after {
      width: 10vw;
      height: 10vw;
      background-size: contain;
   }

   .shop-content>div:last-child {
      width: 90%;
      margin: 10vw auto;
   }

   .shop-info {
      padding: 5vw 0;
      margin: 5vw 0;
   }

   .shop-news h3 {
      font-size: 2.8rem;
      line-height: 2.2rem;
   }

   h2::before,
   h2::after,
   h3::before,
   h3::after {
      content: "";
      margin: 0px 35px;
      background: url(/img/common/slash.png) 0px 0px / 11px 15px no-repeat;
      display: inline-block;
      width: 11px;
      height: 15px;
      padding-left: 5px;
   }

   p.subheading {
      font-size: 1.2rem;
      margin-top: 2vw;
   }

   .shop-outline h2 {
      margin: 15vw auto 5vw;
   }


   /* メイン画像カルーセル */

   .shop-content .swiper {
      height: 100vw;
   }

   .shop-content .swiper-button-prev {
      left: 2vw;
   }

   .shop-content .swiper-button-next {
      right: 2vw;
   }

   /* ショップニュースカルーセル */

   .shop-news .swiper-area {
      padding: 0 4vw 4vw;
   }

   .shop-news ul {
      justify-content: space-between;
      width: 100%;
      margin: 0 auto;
   }

   .shop-news ul li a>div:first-child {
      height: 96vw;
   }

   .shop-news .swiper-button-prev {
      left: 2vw;
   }

   .shop-news .swiper-button-next {
      right: 2vw;
   }

   .floorguide-btn {
      width: 100%;
      margin: 0 auto;
   }

   .floorguide-btn a {
      font-size: 1.6rem;
      padding: 7vw 15vw;
   }

}