@charset "utf-8";

:root {
  --color-brown01: #F7F5EF;
}

.btn_brown01 {
  margin-bottom: 30px;
}
.btn_brown01.font_s{
  font-size: 12px;
}
.btn_brown01.btn_twol {
  border-radius: 40px;
}

.btn_brown01.btn_thrl {
  border-radius: 50px;
}

.center {
  text-align: center;
}

#dvd_top {
  padding: 80px 0;
}

#dvd_top .txt_intro {
  text-align: center;
}

#pickup {
  padding: 80px 0;
}

#tokuten,
#oshikai_more,
#mamakai_top,
#pack {
  padding: 80px 0 20px;
}
.mv_mamakai{
  margin-bottom: 20px;
}
.pick_box, .toku_box {
  margin-bottom: 40px;
}

.toku_box p+img {
  margin-top: 10px;
}

.toku_box .txt_intro {
  word-break: normal;
}

.plan_slide img {
  aspect-ratio: auto;
}

#price,
#price02 {
  background: #FFF;
  padding-bottom: 40px;
}

#price.bg_brown01 {
  background: var(--color-brown01);
}

#shop {
  padding: 80px 0;
}

#plan {
  padding-bottom: 80px;
}

#pack .toku_box{
  padding-top: 20px;

}

#stamps {
  margin: 0 0 0;
  padding: 80px 0;
  background: url(/images_2024r/shop/common/plan/mamakai/bg_izu.webp);
  background-size: cover;
}

.list_shop_kansyou {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 10px;
  margin: auto;
  margin-bottom: 30px;
}

.list_shop_kansyou .txt_intro {
  text-align: center;
  margin-bottom: 10px;
}

.area_link {
  display: flex;
  justify-content: center;
  margin: 0 auto 20px;
}

.area_link li {
  width: 20%;
  margin: 0 20px 20px 0;
}

.area_link li:last-child {
  margin-right: 0;
}

.area_link li a {
  display: block;
  padding: 10px 16px 10px 0;
  background: var(--color-brown03);
  border-radius: 30px;
  text-align: center;
  color: #FFF;
}

.kansyou_btn_bx .box_in_btn {
  max-width: 310px;
  width: 85%;
  padding: 10px 8px 10px 0;
  border: none;
  color: #fff;
  font-size: 10px;
  margin-bottom: 10px;
}

#shop .area_link .btn_brown01:after {
  width: 14px;
  height: 14px;
  background-size: contain;
}

.kansyou_btn_bx .box_in_btn:after {
  width: 12px;
  height: 12px;
  background: url(/images_2024r/shop/common/icon/ico_btn_arror_white.svg);
  background-size: cover;
}

#stamps h2.ttl_sec_01 span {
  font-size: 12px;
  text-align: center;
}

#stamps .list_content {
  margin-top: 40px;
}

#stamps .list_content .item_select {
  display: grid;
  grid-template-columns: 20%;
  grid-template-rows: repeat(auto-fit, minmax(60px, auto));
  align-items: center;
  gap: 10px;
  padding: 0 20px 20px;
}

#stamps .item_content {
  margin-bottom: 30px;
  padding-bottom: 1px;
  background: #fff;
  border-radius: 30px;
}

#stamps .item_content > .img_hotel {
  width: 100%;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}

#stamps .item_content .name_content {
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
}

#stamps .list_content .item_select .caption_content {
  grid-column: 1 / 3;
}

.img_link:last-of-type {
  margin-bottom: 40px;
}

#room {
  padding: 80px 0 20px;
}

.room_content {
  margin: 40px 0;
}

.room_img {
  display: block;
  position: relative;
  width: 235px;
  height: 132px;
  object-fit: cover;
}

.room_intxt {
  position: absolute;
  background: #00000091;
  color: #fff;
  padding: 3px 5px;
  z-index: 2;
  font-size: 12px;
}

.room_wrap {
  width: fit-content;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 10px;
  margin: auto;
  margin-bottom: 30px;
}

.room_box {
  width: fit-content;
  margin: 0 auto;
  position: relative;
}

.slide_room_in{
  position: relative;
}

.slide_room_inbox{
  width: 100%;
  position: relative;
}

.slide_room_inbox img{
  width: 100%;
}

.slide_room_inbox_cap{
  position: absolute;
  bottom: 0;
  color: #fff;
  background: #000000a6;
  width: 100%;
  padding: 5px 0;
  text-align: center;
}

.slide_room_in .slick-dots{
  bottom: 0;
  top:0;
  position: relative;
}
.slide_room_in .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    padding: 0;
    margin: 0 4px;
    border-radius: 5px;
}
.slide_room_in .slick-dots li button {
    width: 100%;
    height: 100%;
    padding:3px;
    border-radius: 5px;
    background: #E8E4D3;
}
.slide_room_in .slick-dots li.slick-active button{
    background: var(--color-red01);
}
.slide_room_in .slick-dots li button:before{
  width: 100%;
  height: 100%;
  content:"�@";
}

.room_box ul {
  margin: 10px 0;
  font-size: 12px;
  line-height: 1.6;
}

#top #shop {
  background: #FFF;
}

#shop .btn_red01 span:before {
  background-size: contain;
  width: 12px;
  height: 14px;
  top: -2px;
  left: -23px;
}

#bnr {
  padding: 40px 0;
}

.toku_box {
  padding: 80px 0 0;
}

@media screen and (max-width: 768px) {

  .under_h1 {
    line-height: 1.2;
  }

  #price {
    padding: 80px 0;
  }

  .area_link li {
    width: 30%;
  }


  .kansyou_btn_bx .box_in_btn {
    min-width: 75px;
  }
}

@media screen and (min-width: 1020px) {

  #pickup .sec_inner > div {
      background: #fff;
      border-radius: 10px;
  }

  #price .sec_inner,
  #price02 .sec_inner {
      padding: 40px 0 0;
  }
}

.area_shop_ttl {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  color: #000;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.area_content .table_ttl.bg_brown04 {
  border-radius: 5px 5px 0 0;
    padding: 10px;
    color: #fff;
    text-align: center;
    font-size: 18px;
    line-height: 1.2;
}

.toku_box .area_content .area_address {
  margin: 0 0 10px;
}


#connect_notice{
  padding:80px 0;
}
