@charset "utf-8";

/*access_intro */
#access_intro{
  padding:60px 0;
}
#access_intro .grid{
  display: grid;
  gap:30px;
}
#access_intro .grid img{
  display: block;
  aspect-ratio: 1 / 1;
  width: 100%;
  object-fit: cover;
}
#access_intro .grid iframe{
  aspect-ratio:1/1;
  height: 100%;
}
/* access_intro end*/

/*shop_info */
#shop_info{
  padding:80px 0;
}
#shop_info table {
    border-bottom: solid 1px #000;
    font-size: 12px;
}
#shop_info table th,
#shop_info table td{
  padding: 10px 0;
  border-top: solid 1px #000;
  text-align: left;
}
#shop_info table th{
    text-align: left;
    vertical-align: baseline;
    width: 26%;
    font-weight: normal;
}

.mapshere{
  margin-top: 20px;
  border: solid 1px #000;
  padding: 20px;
  display: flex;
  flex-wrap: wrap;
}

.ttl_mapshere{
  text-align: center;
  font-size: 16px;
  border-bottom:solid 1px #000;
  padding-bottom: 20px;
  width: 100%;
}

.mapshere a{
    width: 48%;
    display: block;
    margin: 20px auto 20px auto;
    padding: 12px 6px;
    text-align: center;
    border: 1px solid #fff;
    border-radius: 6px;
    color: #fff;
    font-size: 15px;
    transition: all 200ms 0s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.map_line{
  background-color: #1cc759;
}

.map_line::before {
    font-family: "icomoon";
    padding-right: 5px;
    font-size: 18px;
    content: "\e918";
    vertical-align: middle;
    position: relative;
}

.map_mail{
  background-color: #715A2D;
}

.map_mail::before {
    font-family: "icomoon";
    padding-right: 5px;
    font-size: 18px;
    content: "\e94b";
    vertical-align: middle;
    position: relative;
}

.btn_location{
  display: block;
    margin: 0 auto 20px auto;
    text-align: center;
    border: 1px solid #fff;
    border-radius: 6px;
    color: #fff;
    transition: all 200ms 0s ease;
    padding: 10px 15px;
    font-size: 13px;
    width: 80%;
    background-color: #715A2D;
}

.btn_location::before {
    font-family: "icomoon";
    padding-right: 5px;
    font-size: 18px;
    content: "\e919";
    vertical-align: middle;
    position: relative;
}
/*shop_info end*/


/*　route　*/
#route{
  padding:80px 0;
}
.route_box > div{
  border:solid 1px var(--color-brown04);
  border-radius: 5px;
  background: #fff;
  margin-bottom:45px;
}
.route_box > div > p{
  background: var(--color-brown04);
  color:#fff;
  text-align: center;
  font-size: 14px;
  padding:10px 0;
}
.route_box > div > .grid{
  padding:15px;
  display: grid;
  gap:20px;
}

.route_box dl dd{
  font-size: 12px;
}
.route_box dt img{
  aspect-ratio:1/1;
  width: 100%;
  height:100%;
  object-fit: cover;
}


.nearest_route{
  padding: 20px;
}

ul.nearest_route li.col1::before {
    content: attr(data-index);
}

ul.nearest_route li.col1 {
    display: grid;
    grid-template-columns: max-content 1fr;
    margin: 0px 0 20px;
    column-gap: 0;
}

ul.nearest_route li.col1 {
    display: grid;
    grid-template-columns: max-content 1fr;
    margin: 0px 0 20px;
    column-gap: 0;
}

.nearest_route li.col1:not(:last-child):after {
    left: 0;
    bottom: -10px;
}

.nearest_route li:not(:last-child):after {
    position: relative;
    left: 45%;
    bottom: -14px;
    content: "▼";
    display: inline-block;
    width: 1em;
    height: 1.5em;
}
/* route end */

/* rel_partk */
.rel_park{
  margin-bottom:50px;
}
.rel_park dl{
  padding:15px;
  background: #fff;
  border-radius: 10px;
  font-size: 12px;
  margin-bottom:10px;
}
.rel_park dt{
  font-weight: bold;
}

.rel_park dt a::after{
  content: "";
  display: block;
  display: inline-flex;
  margin-top: 6px;
  height: 10px;
  width: 10px;
  background: url(/images_2024r/shop/common/icon/ico_btn_new_tab.svg) no-repeat;
}


/* rel_partk end*/

/* rel_shop */
#rel_shop {
  margin-bottom: 40px;
}
.shop_relative{
  margin-bottom:40px;
}
.shop_rel_box a{
  display: flex;
  gap:20px;
  padding:15px 0;
  border-top:solid 1px #000;
  line-height: 1.6;
}
.shop_rel_box a:last-of-type{
  border-bottom:solid 1px #000;
}
.shop_rel_box a img{
  display: block;
  width: 100px;
  aspect-ratio:1/1;
  height: fit-content;
  height: 100%;
}
.shop_rel_box a dl{
  width: 100%;
}
.shop_rel_box a dt{
  font-size: 14px;
}
.shop_rel_box a dd{
  font-size: 10px;
}
.shop_rel_box a dd p{
  margin-bottom:5px;
}
.shop_rel_box a dd .box_in_btn{
  max-width:100%;
  text-align: center;
  background: #fff;
}
/* rel_shop  end*/
@media screen and (min-width: 1020px) {
  #access_intro .grid {
    gap:20px;
    grid-template-columns: 1fr 1fr;
  }
  #access_intro .grid img {
    aspect-ratio: 23 / 15;
  }
  #access_intro .grid iframe {
    aspect-ratio: 23 / 15;
  }
  #shop_info .text_intro{
    margin-bottom:40px;
    font-size: 12px;
  }

  .route_box > div > .grid {
    grid-template-columns: 1fr 1fr;
    padding:30px;
  }

}
