@charset 'utf-8';

.link_text { width:100%; margin-bottom:80px; display:flex; align-items:center; justify-content:center; text-align:right; margin-top:20px; }
.link_text img { width:16px; margin-left:10px; }
.link_text:hover { text-decoration:underline;}
.contents_inner .contents { border:1px solid #707070; }
.contents_inner .contents.noborder { border:none; }
.lalapark_map { width:100%; }

.contents_inner.margintop0 { position:relative; margin-top:0; }
.contents_inner.margintop0 .top_animation { width:30%; position:absolute; left:5%; top:10%; z-index:2; }
.contents.noborder.shop { padding:0; }
@media screen and (min-width:768px) {
  .lalapark_map { width:100%; margin-bottom:80px; }
  .link_text {justify-content:right;  }
  .contents_inner.margintop0 .top_animation { width:280px; position:absolute; left:30px; top:30px; z-index:2; }
}


.bg_lightgreen { background:#E4ECCD; }


@media screen and (max-width:768px) {
  .lead { margin-bottom:0; }
  .contents_inner .contents .contents_in { width:100%; margin:0 auto; display:block; padding-bottom:0; }
  .contents.bg_white { background:none; border:none; }
  .caution { width:100%; text-align:center; margin-top:10px; display:inline-block; }

/* サムネイル */
.lalapark_map {
  width: 100%;
  max-width: 700px;
  cursor: zoom-in;
}

/* モーダル */
.map-modal {
  position: fixed;
  inset: 0;
  display: none;
  justify-content: center;
  align-items: center;
  background: rgba(0,0,0,0.85);
  z-index: 9999;
  touch-action: none;
}
.map-modal.is-open {
  display: flex;
}

/* 閉じるボタン */
.map-close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  color: #fff;
  background: rgba(0,0,0,0.4);
  border: 1px solid rgba(255,255,255,0.5);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  font-size: 18px;
  line-height: 28px;
  text-align: center;
  cursor: pointer;
}

/* ステージ領域 */
.map-stage {
  position: relative;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}


#mapZoom{
  position:absolute; left:50%; top:50%;
  height:70vh; width:auto; max-width:none; max-height:none;
  transform:translate(-50%, -50%);   /* ← 縦は中央に固定 */
  will-change:transform;
  cursor:grab;
  user-select:none; -webkit-user-drag:none;
  /* ブラウザのスクロール/ズームを無効化して自前制御にする */
  touch-action: none;
}
#mapZoom.is-drag{ cursor:grabbing; }
#mapZoom{
  touch-action: pan-x; /* ← ここを pan-x に */
}

}

@media screen and (min-width:768px) {
  .map-modal { display:none; }
  .caution { display:none;}

}

.contents_wrap.bg_lalapark {position:relative; width: 100%; height:auto; background:#6896c7;overflow: hidden;color:#fff; }
.contents_wrap.toplink .contents_inner { margin-top:0; }
@media screen and (min-width:375px) {
  .contents_wrap.bg_lalapark { height:auto; }
}

.contents_wrap.bg_lalapark strong { width:100%;text-align:center; font-size:24px; letter-spacing:0.1em; margin-top:120px; margin-bottom:32px; line-height:2em; }
.contents_wrap.bg_lalapark span { width:100%;text-align:center; font-size:20px; letter-spacing:0.1em; margin-bottom:80px; line-height:2em; }
.contents_wrap.bg_lalapark p { width:90%; text-align:left; font-size:16px; line-height:2em; margin:0 auto; text-align:justify; }
.inline_pad { display:block; width:100%; }
@media screen and (min-width:768px) {
  .contents_wrap.bg_lalapark {position:relative; width: 100%; height:auto;color:#fff; }
  .contents_wrap.bg_lalapark strong { font-size:28px; }
  .contents_wrap.bg_lalapark span { font-size:20px; }
  .contents_wrap.bg_lalapark p { width:100%; font-size:18px; text-align:center; }
  .contents_wrap .image_top { margin-bottom:80px; }
}
@media screen and (min-width:1280px) {
  .contents_wrap.bg_lalapark {position:relative; width: 100%; height:180vh; background: url("../img/lalapark/lalapark_large.jpg") no-repeat center center;background-size: cover; overflow: hidden;color:#fff; }
  .inline_pad { display:none; }
  .contents_wrap .image_top { margin-bottom:initial; }
}




.shop.top { border-top:1px solid #79A400;}
.shop { width:100%; display: flex;justify-content: space-between;border-bottom: 1px solid #79A400; flex-direction: column; padding:25px 0;}
.shop dt {width:100%; text-align:center; }
.shop dt img { width:30%; margin:0 auto; }
.shop dd {width:100%;display: flex; flex-direction: column; }
.shop dd strong {font-size:20px; letter-spacing: 0.1em;margin: 24px 0; text-align:center; display:block; }
.shop dd strong em { font-size:13px; font-weight:normal; margin-top:10px; background:#9DC52C;color:#fff;padding:0.2em 0.8em;border-radius:9999px;display:inline-block;}
.shop dd p {line-height: 2.25em; text-align:justify; }
.contents.noborder.shop p.lead { margin-bottom:80px; }
@media screen and (min-width:768px) {
  .shop { flex-direction:initial; padding:25px 0;}
  .shop dt {width: 14%;}
  .shop dt img { width:100%; }
  .shop dd strong { font-size:24px; text-align:left; display:flex; align-items:center;}
  .shop dd strong em { display:inline; margin-top:initial; margin-left:20px; }
  .shop dd { width:82%; }
  .contents.noborder.shop { width:100%; display:flex; flex-wrap:wrap; }
}
@media screen and (min-width:1280px) {
  .contents.noborder.shop { width:1080px; margin:0 auto 80px auto; display:block; }
}


.text-wrap { width:100%; display:flex; justify-content: space-between; margin:0 0 50px 0; flex-wrap:wrap; align-items:flex-start;}
.text-wrap p { width:100%; display:block;  }
.text-wrap img { width:40%; margin: 30px auto 0 auto; }
@media screen and (min-width:768px) {
  .text-wrap p { width:60%; }
  .text-wrap img { width:280px; height:auto; margin:0; }
}
@media screen and (min-width:1280px) {
.text-wrap p { width:auto; }
}

.h2_wrap  { margin-top:80px; margin-bottom:40px; }
.h2_wrap strong { width:auto; }
.h2_wrap .title_en { font-size:45px; line-height:1.2em; }
.h2_wrap h2 { font-size:16px; margin-top:10px; }
@media screen and (min-width:768px) {
  .h2_wrap  { margin-top:120px; display:flex; align-items:center;}
  .h2_wrap h2 { font-size:18px; margin-left:20px; }
  .h2_wrap .title_en { font-size:74px;}



}
@media screen and (min-width:1280px) {
.contents_wrap.toplink { margin-bottom:80px; }
}

.contents_wrap { padding-bottom:0; }