@charset "utf-8";
/* CSS Information========

Table of Contents:
 * info

========================== */

/*　余白　*/
.access_inner {
  display: grid;
  gap: 20px;
}
/*　アクセスマップ　*/
.accessIframMap > iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
}
.accessIframMap > iframe + iframe {
  margin-top: 10px;
}
.accessMap {
  margin-top: 10px;
}
.route_inner {
  display: grid;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .accessIframMap {
    margin-top: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .accessIframMap > iframe + iframe {
    margin-top: 0;
  }
}
/* .hotelInfo　*/
.hotelInfo_name {
  font-size: 2.6rem;
  font-weight: 600;
  margin-bottom: 10px;
}
.hotelInfo_inner {
  display: grid;
  gap: 20px;
}
.hotelInfo_heading {
  font-size: clamp(1.5rem, calc(1.608rem + 0.1vw), 1.8rem);
  margin-bottom: 10px;
  font-weight: 600;
}
.hotelInfo_item {
  display: flex;
  gap: 4px;
}
.hotelInfo_subHeading {
  display: flex;
  align-items: center;
  gap: 6px;
}
.hotelInfo_subHeading::before {
  content: "■";
  font-size: 0.5em;
  color: var(--yellow);
}
.hotelInfo_front > * + * {
  margin-top: 4px;
}
@media screen and (min-width: 768px) {
  .hotelInfo_inner {
    grid-template-columns: auto 1fr;
    gap: 50px;
  }
}

/* =======================
	ページ内リンク　index_list
========================== */
.section_wrap.index_section {
  margin-top: 100px;
}
.index_list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  row-gap: 16px;
  align-items: stretch;
}
.index_list .btn {
  padding-inline: initial;
  width: 100%;
  padding-inline: 4px;
  height: 100%;
}
.index_list_item {
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  margin-right: -1px;
}
@media only screen and (min-width: 768px) {
  .section_wrap.index_section {
    margin-top: 150px;
  }
  .i .index_list {
    grid-auto-flow: column;
    grid-template-columns: initial;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  }
}
@media only screen and (min-width: 1024px) {
  .index_list {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    row-gap: 8px;
  }
}
/*アクセスルート*/
.accessText_box > * + * {
  margin-top: 16px;
}
.accessText_list {
  display: grid;
  gap: 15px;
}
.carText_list {
  gap: 8px;
}
.accessText_item {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
}
.dot_indent {
  position: relative;
  padding-left: 0.8em;
}
.dot_indent:before {
  content: "・";
  position: absolute;
  left: -0.08em;
  top: 0;
}
.attention_indent {
  position: relative;
  padding-left: 1em;
}
.attention_indent:before {
  content: "※";
  position: absolute;
  left: -0.08em;
  top: 0;
}
@media screen and (min-width: 768px) {
  .accessText_item {
    word-break: keep-all;
    overflow-wrap: break-word;
  }
}

.route_list {
  display: grid;
  row-gap: 15px;
}
.route_list_body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
  padding: 0;
}
.route_list_body.is-open {
  max-height: 1000px;
}

.route_list_item {
  border: none;
}
.route_list_body {
  line-height: inherit;
}
.route_list_heading {
  border: #ccc 1px solid;
  padding: 13px 26px 13px;
  position: relative;
  text-align: center;
}
.route_list_heading span {
  position: absolute;
  right: 10px;
  top: 50%;
  translate: 0 -50%;
}
.route_steps li:nth-child(odd) {
  width: 90%;
  margin-inline: auto;
  text-align: left;
  border-left: 1px solid #333;
  padding: 1.6rem;
  box-sizing: border-box;
}
.route_steps li:nth-child(even) {
  background: #ededed;
  text-align: center;
  padding: 15px;
  margin-left: 0;
}
.route_steps li:last-child {
  background-color: var(--yellow);
}

/* コンビニ*/
.accessConvenience_list {
  display: grid;
  gap: 15px 0;
}
.accessConvenience_item {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  border-bottom: 1px solid var(--gray);
  padding: 16px 4px;
}
.accessConvenience_shop {
  width: 100%;
}
.accessConvenience_address {
  flex-grow: 1;
}
