@charset "UTF-8";
/* unusual */
.destination {
  display: grid;
  place-items: center;
  margin: 0 auto 8px;
  padding-left: 15%;
  width: min(90vw, 240px);
  aspect-ratio: 240 / 118;
  background: url(images/destination-bg.png) no-repeat center / contain;
}
.destination-text {
   text-align: center;
}
.lead-text-box {
  display: contents;
}
.guide {
  order: 1;
  margin-top: 8px;
}
.color-pink {
  color: #b73580;
}
.spot > .post-container {
  display: contents;
}
.spot .post-container h3 {
  order: -1;
  margin-bottom: 16px;
}
.post-container * + * {
  margin-top: 16px;
}
.spot-info img {
  margin-bottom: 24px;
}
.label-text {
  width: 54%;
  margin-inline: auto;
}
.view,
.fes,
.eat {
  position: relative;
}
.view::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 100px;
  height: 78px;
  right: -12px;
  top: -20px;
  background: url(images/balloon-view.png) no-repeat;
  background-size: contain;
}
.fes::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 100px;
  height: 88px;
  right: -12px;
  top: -30px;
  background: url(images/balloon-fes.png) no-repeat;
  background-size: contain;
}
.eat::before {
  content: "";
  position: absolute;
  display: block;
  width: 96px;
  height: 94px;
  left: -10px;
  top: -24px;
  background: url(images/balloon-eat.png) no-repeat;
  background-size: contain;
}
#article figure.gallery-wrap {
  margin-bottom: 0;
}
.gallery-spot {
  justify-content: center;
}
.gallery-spot figure img {
  width: 80%;
  margin-inline: auto;
}
.gallery-spot figure + figure {
  margin-top: 8px;
}
.gallery img {
  width: 80%;
}
.date {
  display: block;
  font-size: 15px;
}
.column-box {
  position: relative;
  padding: 32px 24px 24px;
  border: 1px solid #333;
}
.item-image {
  margin-bottom: 8px;
}
.event-wrap {
  margin-top: 16px;
  margin-bottom: 16px;
}
.hd-event {
  margin-bottom: 8px;
  color: #714040;
}
.event-balloon {
  position: absolute;
  top: -16px;
  left: 50%;
  translate: -50%;
  width: 70%;
}
.event-info dt {
  padding: 0 16px;
  width: fit-content;
  border-radius: 50vh;
  background: #714040;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.event-info dd {
  margin-bottom: 8px;
}
.comment {
  display: inline;
  padding-bottom: 3px;
  border-bottom: 1px dashed #333;
  line-height: 2;
}
.comment-ph {
  margin-inline: auto;
  margin-top: 8px;
  width: 50%;
}
.comment-ph img {
  width: 50%;
}
@media screen and (min-width:768px) {
  .destination {
    margin-inline: 0;
    padding-left: 8%;
  }
  .shopping::before {
    width: 100px;
    height: 98px;
  }
  .event::before {
    width: 120px;
    height: 76px;
    right: -10px;
    top: -30px;
  }
  .learning::before {
    width: 100px;
    height: 100%;
    left: -20px;
    top: -50px;
  }
  .column-box {
    position: relative;
    padding: 50px 24px 24px;
    border: 1px solid #333;
  }
  .comment-ph {
      margin-inline: auto;
      margin-top: 8px;
      width: 50%;
    }
    .comment-ph img {
      width: 30%;
    }
}
@media screen and (min-width:1024px) {
  .lead-wrap {
    align-items: flex-end;
  }
  .lead-text-box {
    display: block;
  }
  .guide {
    margin-top: 16px;
  }
  #article figure.gallery-wrap {
      margin-top: -60px;
      margin-inline: inherit;
      margin-bottom: 60px;
      /* width: 48%; */
    }
    #article figure.gallery-wrap:nth-of-type(1) {
      margin-top: -60px;
      margin-right: auto;
    }
    .gallery-spot {
      display: flex;
      gap: 16px;
      margin-bottom: 0;
    }
    .gallery-spot > * {
      width: 48%;
    }
    .gallery img {
      margin: inherit;
      width: 100%;
    }
    #article figure.gallery-wrap {
      margin-top: -160px;
    }
    .spot > .post-container {
      display: inline-block;
    }
    .post-container * + * {
      margin-top: 24px;
    }
    .label-text {
      flex-shrink: 0;
      width: 30%;
      margin-inline: 0;
    }
    .label-text img {
      width: 240px;
    }
    .column-box {
      display: flex;
      padding: 50px 40px 40px;
      gap: 24px;
    }
    .l-box {
      width: 62%;
    }
    .s-box {
      width: 35%;
    }
    .item-image {
      flex-shrink: 0;
      margin-right: 16px;
      width: 40%;
    }
    .event-info {
      display: flex;
      align-items: flex-start;
      flex-wrap: wrap;
      justify-content: space-between;
    }
    .event-info dt {
      width: 20%;
    }
    .event-info dd {
      width: 75%;
    }
    .comment-ph {
      position: absolute;
      width: 24%;
      right: -144px;
      top: 40%;
    }
}

@media screen and (min-width:1280px) {
  .gallery img {
    width: 80%;
  }
  #article figure.gallery-wrap {
      margin-top: 40px;
  }


}