@charset "UTF-8";
/* =====================
	店舗情報
 ======================= */
.p-bnrArea {
  margin: 0 0 40px;
}

.p-bnrArea__item:first-child {
  border-top: 1px solid var(--c_border);
  padding-top: 40px;
}

.p-bnrArea__item img {
  display: block;
  width: 100%;
  max-width: 336px;
  margin: 0 auto;
}

.p-shop {
  margin: 40px 0 64px;
}

.p-shop__shopList {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 64px;
}

.p-shop__shopList__item {
  display: grid;
  grid-template-columns: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-shop__shopList__item__img img {
  display: block;
  margin: 0 auto;
}

.p-shop__shopList__item__detail {
  grid-row: 1;
  margin: 0 0 40px;
}

.p-shop__shopList__item__detail .c-title__h3 {
  margin-bottom: 16px;
}

.p-shop__shopList__item__address {
  font-style: normal;
  margin: 16px 0;
}

.p-shop__shopList__item__dl {
  margin: 16px 0 0;
  display: grid;
  grid-template-columns: auto 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 12px;
}

.p-shop__shopList__item__dl dt {
  color: var(--c_text_g);
  padding-right: 8px;
  border-right: 1px solid var(--c_border);
}

.p-shop__shopList__item__link {
  margin: 32px 0 0;
}

.p-shop__shopList__item__link__list {
  display: grid;
  grid-template-columns: 235px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 16px;
}

.p-shopNotice {
  margin: 64px 0;
}

.p-shopNotice__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}

.p-lineFriend {
  background: var(--c_bg_g);
  padding: 32px 20px;
  display: grid;
  grid-template-columns: 100%;
  row-gap: 28px;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 350px;
          flex: 0 1 350px;
}

.p-lineFriend__img {
  grid-row: 2;
  width: 187px;
  margin: 0 auto;
}

.p-lineFriend__txt {
  text-align: center;
  font-family: var(--font_mix);
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.15em;
}

.p-lineFriend__link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 12px;
     -moz-column-gap: 12px;
          column-gap: 12px;
  padding: 8px;
  border: 1px solid #56BD38;
  background: #56BD38;
  color: var(--c_wht);
  letter-spacing: 0.2em;
  width: 100%;
  max-width: 291px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.p-lineFriend__link a:before {
  content: "";
  width: 32px;
  height: 32px;
  background: url(../images/shop-info/line.png) no-repeat center/contain;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-lineFriend__link a:after {
  content: "";
  width: 0;
  height: 100%;
  background: var(--c_wht);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}

.p-lineFriend__link a:active, .p-lineFriend__link a:visited {
  color: var(--c_wht);
}

.p-lineFriend__link a:hover {
  opacity: 1.0;
  color: #56BD38;
}

.p-lineFriend__link a:hover:after {
  width: 100%;
}

.p-membership {
  background: var(--c_bg_w);
  padding: 36px 20px;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 350px;
          flex: 0 1 350px;
}

.p-membership__title {
  text-align: center;
  font-family: var(--font_min);
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.0;
  margin: 0 0 32px;
}

.p-membership__title:before {
  content: "";
  width: 180px;
  height: 70px;
  background: url(../images/shop-info/membership.png) no-repeat center/contain;
  display: block;
  margin: 0 auto 12px;
}

.p-membership__detail {
  max-width: 291px;
  margin: 0 auto;
}

.p-membership__detail ul {
  margin: 24px 0 40px;
}

.p-membership__link {
  margin: 24px 0 0;
  text-align: center;
}

.p-membership__link a {
  text-decoration: underline;
  color: var(--c_attention);
}

.p-shopInfo {
  margin: 64px 0;
}

.p-shopInfo:last-child {
  margin-bottom: 0;
}

.p-shopInfo__item {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 32px;
  margin: 0 0 64px;
}

.p-shopInfo__item:last-child {
  margin-bottom: 0;
}

.p-shopInfo__item__txtbox {
  font-size: 1.4rem;
  line-height: 2.0;
}

.p-shopInfo__item__title {
  font-family: var(--font_min);
  font-size: 2.0rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.75;
  margin: 0 0 16px;
}

.p-shopInfo__item__linkbox {
  grid-row: 3;
  max-width: 235px;
  margin: 0 auto;
}

/* タブレット縦以上
  ------------------------ */
@media (min-width: 768px) {
  .p-shop__shopList__item {
    grid-template-columns: 1fr auto;
    gap: 20px;
  }
  .p-shop__shopList__item__img {
    grid-column: 1 / 3;
    max-width: 500px;
    margin: 0 auto;
  }
  .p-shop__shopList__item__detail {
    grid-row: auto;
    margin: 0;
  }
  .p-shop__shopList__item__link {
    margin: 0;
  }
}

/* タブレット横以上
  ------------------------ */
@media (min-width: 981px) {
  .p-bnrArea {
    margin: 0 0 80px;
  }
  .p-bnrArea__item:first-child {
    padding-top: 80px;
  }
  .p-bnrArea img {
    max-width: 906px;
  }
  .p-shop {
    margin: 80px 0;
  }
  .p-shop__shopList {
    row-gap: 56px;
  }
  .p-shop__shopList__item {
    grid-template-columns: 45% 1fr;
  }
  .p-shop__shopList__item__img {
    grid-row: 1 / 3;
    grid-column: auto;
  }
  .p-shop__shopList__item__link__list {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
  .p-shopNotice {
    margin: 80px 0;
  }
  .p-shopNotice__list {
    gap: 40px;
  }
  .p-lineFriend {
    padding: 0;
    grid-template-columns: 50% 308px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 24px 28px;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 75.5%;
            flex: 0 1 75.5%;
  }
  .p-lineFriend__img {
    grid-row: 1 / 3;
    width: auto;
    margin-top: -12px;
  }
  .p-lineFriend__img img {
    width: 207px;
    margin: 0 auto;
  }
  .p-lineFriend__txt {
    -ms-flex-item-align: end;
        align-self: flex-end;
    line-height: 1.1875;
    margin: 0;
    text-align: left;
  }
  .p-lineFriend__link {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .p-membership {
    padding: 56px 20px;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 75.5%;
            flex: 0 1 75.5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 14%;
       -moz-column-gap: 14%;
            column-gap: 14%;
  }
  .p-membership__title {
    font-size: 2.0rem;
    margin: 0;
  }
  .p-membership__detail {
    max-width: none;
    margin: 0;
  }
  .p-membership__detail ul {
    margin: 28px 0;
  }
  .p-membership__link {
    margin-top: 16px;
    font-size: 1.3rem;
  }
  .p-shopInfo {
    margin: 80px 0;
  }
  .p-shopInfo__item {
    max-width: 1040px;
    margin: 0 auto 64px;
    grid-template-columns: 47% 46%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
  }
  .p-shopInfo__item__title {
    font-size: 2.2rem;
  }
  .p-shopInfo__item__imgbox {
    grid-column: 2;
  }
  .p-shopInfo__item__linkbox {
    grid-row: auto;
    max-width: 216px;
    margin: 32px 0 0;
  }
  .p-shopInfo__item__linkbox + .p-shopInfo__item__imgbox {
    grid-row: 1 / 3;
  }
}
/* PCのみ
  ------------------------ */
@media (min-width: 1241px) {
  .p-shop__shopList__item {
    grid-template-columns: 340px 1fr 291px;
    gap: 0 28px;
  }
  .p-shop__shopList__item__img {
    grid-row: auto;
  }
  .p-shop__shopList__item__address {
    margin: 20px 0;
  }
  .p-shop__shopList__item__dl {
    margin: 20px 0 0;
  }
  .p-shop__shopList__item__link__list {
    grid-template-columns: 100%;
  }
}

