/* 飲食C「あじわい」: 白×ベージュ×モカの上品なカフェ風。写真とゆとりの余白が主役の来店誘導型。 */
body.pat-ic {
  font-family: "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  background: #fffcf7;
  color: #4a4138;
  line-height: 2.1;
  letter-spacing: .04em;
  font-weight: 300;
}

.pat-ic .site-header { background: rgba(255, 252, 247, .95); border-bottom: 1px solid #ece3d4; }
.pat-ic .site-header__name { letter-spacing: .2em; font-weight: 600; }
.pat-ic .site-footer { background: #4a4138; }

/* CTAバー: 来店導線 */
.ic-bar__tel { background: #8c6d46; color: #fff; }
.ic-bar__map { background: #fff; color: #8c6d46; border: 2px solid #8c6d46; }

/* ヒーロー: 店内写真フル */
.ic-hero { position: relative; min-height: 68vh; display: flex; align-items: flex-end; background: #ece3d4; }
.ic-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ic-hero__overlay {
  position: relative; width: 100%; padding: 110px 24px 44px; text-align: center;
  background: linear-gradient(transparent, rgba(50, 40, 28, .65));
  color: #fff;
}
.ic-hero__name { font-size: 26px; font-weight: 600; letter-spacing: .35em; }
.ic-hero__copy { font-size: 14px; letter-spacing: .15em; margin-top: 10px; }
.ic-hero__hours { font-size: 12px; opacity: .9; margin-top: 14px; letter-spacing: .1em; }

/* セクション */
.ic-section { padding: 60px 24px; max-width: 760px; margin: 0 auto; }
.ic-section--tint { background: #f7f1e6; max-width: none; }
.ic-section--tint > * { max-width: 760px; margin-left: auto; margin-right: auto; }
.ic-h2 {
  text-align: center; font-size: 20px; font-weight: 600; letter-spacing: .3em;
  margin-bottom: 36px; position: relative; padding-bottom: 16px; color: #8c6d46;
}
.ic-h2::after {
  content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);
  width: 36px; height: 1px; background: #8c6d46;
}
.ic-intro { text-align: center; }
.ic-text p { margin-bottom: 1.4em; font-size: 15px; }

/* こだわり */
.ic-reasons { display: grid; gap: 26px; }
.ic-reason { text-align: center; }
.ic-reason__no { font-family: Georgia, serif; font-size: 22px; color: #c9b491; }
.ic-reason__title { font-size: 16px; font-weight: 600; margin: 6px 0 8px; }
.ic-reason__body { font-size: 13px; color: #7a6e5d; text-align: left; }

/* メニュー */
.ic-menus { display: grid; gap: 28px; }
.ic-menu__img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 6px; }
.ic-menu__body { padding: 14px 4px 0; }
.ic-menu__title { font-size: 16px; font-weight: 600; display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.ic-menu__price { color: #8c6d46; font-size: 14px; white-space: nowrap; }
.ic-menu__text { font-size: 13px; color: #7a6e5d; margin-top: 6px; }
.ic-menus__note { text-align: center; font-size: 11px; color: #a89a85; margin-top: 26px; }

/* 店舗情報 */
.ic-shopinfo { width: 100%; border-collapse: collapse; font-size: 14px; margin-bottom: 22px; }
.ic-shopinfo th, .ic-shopinfo td { border-bottom: 1px solid #e2d7c3; padding: 13px 8px; text-align: left; vertical-align: top; }
.ic-shopinfo th { color: #a89a85; font-weight: normal; white-space: nowrap; width: 7em; }
.ic-shopinfo__note { display: block; font-size: 12px; color: #a89a85; }
.ic-map { border-radius: 6px; overflow: hidden; }
.ic-map iframe { width: 100%; height: 300px; border: 0; display: block; }
.ic-shop__cta { text-align: center; margin-top: 20px; }

/* ボタン */
.ic-btn {
  display: inline-block; background: #8c6d46; color: #fff; padding: 14px 36px;
  text-decoration: none; font-size: 14px; letter-spacing: .15em; border-radius: 2px;
}
.ic-btn--ghost { background: transparent; border: 1px solid #fff; }

/* お客様の声 */
.ic-voice { border-top: 1px solid #e2d7c3; padding: 20px 4px; }
.ic-voice:last-child { border-bottom: 1px solid #e2d7c3; }
.ic-voice__body { font-size: 14px; }
.ic-voice__meta { font-size: 12px; color: #8c6d46; margin-top: 8px; text-align: right; }

/* 採用帯（控えめ） */
.ic-recruit { background: #4a4138; color: #f7f1e6; padding: 30px 24px; }
.ic-recruit__inner { max-width: 760px; margin: 0 auto; }
.ic-recruit__label { font-size: 11px; letter-spacing: .4em; color: #c9b491; }
.ic-recruit__text { font-size: 14px; margin: 6px 0 10px; }
.ic-recruit__job { display: block; color: #fff; font-size: 14px; padding: 5px 0; }

/* 締め */
.ic-closing { text-align: center; padding: 64px 24px 76px; background: #f7f1e6; }
.ic-closing__title { font-size: 19px; font-weight: 600; letter-spacing: .2em; margin-bottom: 10px; color: #4a4138; }
.ic-closing__hours { font-size: 13px; color: #7a6e5d; margin-bottom: 24px; }
.ic-closing__btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.ic-closing .ic-btn--ghost { border-color: #8c6d46; color: #8c6d46; }

@media (min-width: 768px) {
  .ic-hero__name { font-size: 34px; }
  .ic-reasons { grid-template-columns: repeat(3, 1fr); }
  .ic-menus { grid-template-columns: repeat(3, 1fr); }
}
