@charset "UTF-8";


/* ========================================
   ロゴテキスト（画像なし代替）
======================================== */
.logo-text {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.2em;
  font-weight: 700;
  color: #2c1a0e;
  letter-spacing: 0.1em;
  line-height: 1.0;
}
.logo-text-en {
  display: block;
  font-family: "EB Garamond", serif;
  font-size: 0.55em;
  color: #8b6941;
  letter-spacing: 0.25em;
  font-weight: 400;
  margin-bottom: 0.2em;
}


/* ========================================
   ページトップボタン
======================================== */
.cmn-btn-pagetop {
  position: fixed;
  bottom: 28px;
  right: 22px;
  z-index: 200;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s;
  list-style: none;
}
.cmn-btn-pagetop.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.cmn-btn-pagetop a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  background: #5a3e28;
  border-radius: 50%;
  color: #f8f5ef;
  text-decoration: none;
  box-shadow: 0 3px 10px rgba(0,0,0,0.25);
  transition: background 0.3s;
}
.cmn-btn-pagetop a::before {
  content: "↑";
  font-size: 1.1em;
}
.cmn-btn-pagetop a:hover {
  background: #8b6941;
  text-decoration: none;
}


/* ========================================
   紹介エリア（ヒーロー直下・白背景）
======================================== */
#c-main .col-intro {
  padding: 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
  position: relative;
  /* ヒーローのオーバーラップ写真分の上padding（bottom: -100px分） */
  padding-top: 120px;
  padding-bottom: 1.5em;
}

#c-main .col-intro p.p01 {
  padding: 0;
  margin: 0;
  width: 320px;
  max-width: 16vw;
  position: absolute;
  top: -3%;
  left: 3%;
  z-index: -1;
  opacity: 0.4;
}
#c-main .col-intro p.p02 {
  padding: 0;
  margin: 0;
  width: 17vw;
  position: absolute;
  top: 55%;
  right:  -2%;
  z-index: -1;
}


#c-main .col-intro-inner {
  padding: 0;
  margin: 0 auto;
  width: 1080px;
  max-width: 90%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  align-items: flex-start;
  gap: 22%;
}

#c-main .col-intro-inner-l {
  flex-basis: auto;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-start;
  gap: 8%;
}
#c-main .col-intro-inner-r {
  flex-basis: auto;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 8%;
}

#c-main .intro-lead {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(1.3em, 1.7vw, 2.2em);
  font-weight: 600;
  color: #2c1a0e;
  line-height: 1.5em;
  margin: 0 0 1.2em;
  letter-spacing: 0.08em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

#c-main .intro-body {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(0.9em, 1.0vw, 1.4em);
  line-height: 1.5em;
  color: #000;
  margin: 0 0 1.0em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

#c-main .col-intro {
  padding-top: 3.0em;
  padding-bottom: 1.0em;
  position: relative;
}

#c-main .col-intro-inner {
  gap: 3%;
}

#c-main .col-intro-inner-l {
  flex-basis: auto;
  margin: 0 auto;
  justify-content: center;
  gap: 5%;
}
#c-main .col-intro-inner-r {
  flex-basis: auto;
  margin: 0 auto;
  justify-content: center;
  gap: 2%;
}
#c-main .intro-lead {
  font-size: 1.0em;
  line-height: 1.2em;
}
#c-main .intro-body {
  font-size: 0.8em;
  line-height: 1.1em;
}

	
#c-main .col-intro p.p01 {
  padding: 0;
  margin: 0;
  max-width: 25vw;
  position: absolute;
  top: 5%;
  left: 0;	
  opacity: 0.2;
}
#c-main .col-intro p.p02 {
  width: 30vw;
  top: 45%;
  right:  -2%;
}	
	

}


/* ========================================
   メニューエリア
======================================== */
#c-main .col-menu {
  padding: 0.5em 0 5.0em;
  margin: 0;
  width: 100%;
  max-width: 100%;
}

#c-main .col-menu-head {
  margin: 0 auto 3.5em;
  padding: 0;
  text-align: center;
}

#c-main h2.h2-menu {
  font-family: "Zen Old Mincho", serif;
  font-size: 2.4em;
  font-weight: 600;
  color: #2c1a0e;
  letter-spacing: 0.2em;
  line-height: 1.0;
  margin: 0 0 0.3em;
  padding: 0;
  border: none;
}

#c-main .menu-sub {
  font-size: 0.85em;
  color: #8b6941;
  letter-spacing: 0.2em;
  margin: 0 0 1.2em;
}

#c-main .menu-deco {
  display: block;
  width: 36px;
  height: 1px;
  background: #8b6941;
  margin: 0 auto;
}

/* メニューグリッド：2行×3列 */
#c-main .col-menu-grid {
  padding: 0;
  margin: 0 auto;
  width: 1080px;
  max-width: 86%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3.0em 4%;
}

/* メニューアイテム */
#c-main .menu-item {
  flex-basis: calc(100% / 3 - 4%);
  max-width: 100%;
  cursor: pointer;
  text-align: center;
  transition: transform 0.3s ease;
  position: relative;
}

#c-main .menu-item:hover {
  transform: translateY(-5px);
}

/* 丸形画像 */
#c-main .menu-item-img {
  position: relative;
  width: 220px;
  height: 220px;
  margin: 0 auto 1.0em;
  border-radius: 50%;
  overflow: hidden;
  background: #f0e8d8;
}

#c-main .menu-item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

#c-main .menu-item:hover .menu-item-img img {
  transform: scale(1.07);
}

#c-main .menu-item-img .img-placeholder {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.0em;
  color: #c9a96e;
}

#c-main .menu-item-name {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.05em;
  font-weight: 600;
  color: #fff;
  margin: 0 0 0.3em;
  letter-spacing: 0.05em;
  background: #7a2535;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  position: absolute;
  top : 0 ;
  right: 5%;
  padding: 0.5em 0.3em;
  display: inline-block;
}

#c-main .menu-item-desc {
  font-size: 0.82em;
  color: #7a6a58;
  line-height: 1.5em;
  margin: 0 0 0.4em;
}

#c-main .menu-item-price {
  font-family: "EB Garamond", serif;
  font-size: 1.05em;
  color: #8b6941;
  font-weight: 500;
  margin: 0;
  letter-spacing: 0.05em;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

#c-main .col-menu {
  padding: 1.0em 0 3.0em;
}

#c-main h2.h2-menu {
  font-size: 2.0em;
}

#c-main .col-menu-grid {
  gap: 2.5em 5%;
}

#c-main .menu-item {
  flex-basis: calc(50% - 3%);
}

#c-main .menu-item-img {
  width: 130px;
  height: 130px;
}
#c-main .menu-item-name {
  height: 140px;
  padding: 0.3em 0.1em;
  line-height: 1.2em;
  font-size: 1.0em;
}

}


/* ========================================
   コンセプトエリア（テキスト左・写真右）
======================================== */
#c-main .col-concept {
  padding: 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
  background: url("../images/bg_taisetsu.jpg") no-repeat center center;
  background-size: 100%;
}

#c-main .col-concept-inner {
  padding: 0;
  margin: 0 auto;
  width: 1080px;
  max-width: 96%;
  height: 60vh;
  display: flex;
  flex-direction: row;
}

#c-main .col-concept-c {
  flex-basis: 49%;
  padding: 5.0em 1.0em 5.0em 8%;
  text-align: left;
  display: flex;
  flex-direction: row-reverse;
}

#c-main .col-concept-r {
  flex-basis: 5%;
  padding: 5.0em 0 ;
  text-align: left;
  display: flex;
  flex-direction: row-reverse;
  margin: 0 0 0 auto;
}

#c-main .concept-title {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(0.8em, 1.0vw, 1.1em);
  font-weight: 600;
  color: #2c1a0e;
  line-height: 1.8em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: 0.15em;
  margin: 0 0 0 2.0em;
  padding: 0;
}

#c-main .concept-title span.txt-box {
  padding: 0.8em 0.5em;
  display: inline-block;
  border: solid 1px #2c1a0e;
}

/* 縦書きキャッチ */
#c-main .concept-vert {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(1.4em, 3.5vw, 4.4em);
  font-weight: 400;
  color: #2c1a0e;
  line-height: 1.4em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: 0.15em;
  margin: 0 0 0 0.8em;
  padding: 0;
}

#c-main .concept-body {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(1.0em, 1.2vw, 2.0em);
  line-height: 2.0em;
  color: #5a4a3a;
  margin: 0 0 1.0em 0.8em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-weight: 600;
}

#c-main .col-concept-l {
  flex-basis: 43%;
  padding: 5.0em 1.5em ;
}

#c-main .concept-photo {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  border-top-right-radius: 100px;
}

#c-main .concept-photo img {
  width: 100%;
  display: block;
}

/* concept slideshow (old single-image, kept for safety) */
#c-main .concept-slideshow .cs-slide {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 1.2s ease-in-out;
}

#c-main .concept-slideshow .cs-slide.is-active {
  opacity: 1;
}

/* concept lc slideshow: 写真＋テキストをセットでフェード（Grid重ね方式） */
#c-main .concept-lc-slides {
  flex: 1;
  display: grid;           /* flex子として伸びつつ */
  align-self: stretch;     /* col-concept-inner の高さ(60vh)に合わせて伸張 */
  overflow: hidden;
}

#c-main .concept-lc-slide {
  grid-area: 1 / 1;        /* 全スライドを同じセルに重ねる */
  display: flex;
  flex-direction: row;
  width: 100%;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
}

#c-main .concept-lc-slide.is-active {
  opacity: 1;
}

#c-main .concept-lc-slide .col-concept-l {
  display: flex;
  flex-direction: column;
}

#c-main .concept-lc-slide .concept-photo {
  flex: 1;
  overflow: hidden;
}

#c-main .concept-lc-slide .concept-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

#c-main .col-concept {
  background-size: cover;
}	
	
#c-main .col-concept-inner {
  flex-direction: column-reverse;
  height: auto;
}

	
#c-main .col-concept-l {
  flex-basis: 100%;
  padding: 0 5% 1.0em;
  justify-content: center;
  margin-top: 0.8em;
}

#c-main .col-concept-r {
  flex-basis: 100%;
  padding: 1.5em 5% 1.0em;
  text-align: center;
  margin: 0 auto;
}

#c-main .concept-photo {
  min-height: 260px;
}
	
#c-main .concept-title {
  margin: 0 0 0 0.8em;
  writing-mode: horizontal-tb;
  font-size:1.2em;
}

#c-main .concept-title span.txt-box {
  padding: 0 0.5em;
  border: none;
}
	


#c-main .concept-vert {
  font-size: 1.2em;
  margin: 0 1.0em;
}
	
#c-main .concept-body {
  font-size: 1.0em;
  line-height: 1.2em;
  color: #5a4a3a;
  margin: 0 0 0 1.0em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

/* concept lc slideshow SP */
#c-main .concept-lc-slides {
  width: 100%;
}

#c-main .concept-lc-slide {
  flex-direction: column; /* 縦並び：上=写真、下=テキスト */
  align-items: flex-start;
}

#c-main .concept-lc-slide .col-concept-l {
  flex-basis: auto;
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 220px; /* 写真エリアの高さ固定 */
}

#c-main .concept-lc-slide .concept-photo {
  min-height: 0;
  height: 220px;
}

#c-main .concept-lc-slide .col-concept-c {
  flex: 1;
  flex-basis: auto;
  padding: 1.5em 5%;
  width: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: row-reverse;
}

}


/* ========================================
   お知らせ＋コンタクトエリア（ワインレッド）
======================================== */
#c-main .col-info-contact {
  padding: 0 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
  background-color: #7a2535;
  position: relative;
}

/* 店舗写真：::before は廃止（col-info-contact-l のスライドショーに置き換え） */
#c-main .col-info-contact::before {
  display: none;
}

#c-main .col-info-contact-inner {
  padding: 3.0em 0 3.0em 38%;
  margin: 0 auto;
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  height: auto;
  position: relative;
  z-index: 1;
}

/* PC: 左エリアに絶対配置でスライドショー表示 */
#c-main .col-info-contact-l {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 35%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}

/* 店舗写真スライドショー（PC・SP 共通） */
#c-main .shop-slides {
  width: 100%;
  height: 100%;
  display: grid;
}

#c-main .shop-slide {
  grid-area: 1 / 1;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
  overflow: hidden;
}

#c-main .shop-slide.is-active {
  opacity: 1;
}

#c-main .shop-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


#c-main .info-box {
  padding: 0;
  margin-bottom: 2.0em;
}

#c-main h2.h2-info {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.4em;
  font-weight: 600;
  color: #f8f5ef;
  margin: 0 0 1.2em;
  padding: 0 0 0.8em;
  border-bottom: solid 1px rgba(248,245,239,0.3);
  text-align: left;
  letter-spacing: 0.1em;
}

/* お知らせリスト */
#c-main .info-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

#c-main .info-list li {
  margin: 0;
  padding: 0;
  border-bottom: solid 1px rgba(248,245,239,0.12);
}

#c-main .info-list li:first-child {
  border-top: solid 1px rgba(248,245,239,0.12);
}

#c-main .info-list .info-item-btn {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2em;
  padding: 1.0em 0;
  cursor: pointer;
  background: transparent;
  border: none;
  width: 100%;
  text-align: left;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  transition: opacity 0.2s;
}

#c-main .info-list .info-item-btn:hover {
  opacity: 0.7;
}

#c-main .info-list .info-date {
  font-family: "EB Garamond", serif;
  font-size: 0.88em;
  color: #f0c080;
  white-space: nowrap;
  letter-spacing: 0.05em;
  min-width: 85px;
}

#c-main .info-list .info-title {
  font-size: 0.92em;
  color: rgba(248,245,239,0.88);
  line-height: 1.5em;
  flex: 1;
}

#c-main .info-list .info-arrow {
  font-size: 0.75em;
  color: #f0c080;
  white-space: nowrap;
}

#c-main .info-empty {
  color: rgba(248,245,239,0.4);
  font-size: 0.9em;
  padding: 1.5em 0;
  text-align: center;
  margin: 0;
}

/* コンタクトボックス */
#c-main .col-info-contact-r {
  flex-basis: 75%;
  max-width: 720px;
  padding-left: 0.5em;
}

#c-main .contact-box {
  text-align: left;
}

#c-main .col-logo {
  display: flex;
  flex-direction: row;
  gap : 30px;
  align-items: center;
}


#c-main .contact-logo {
  font-size: 1.6em;
  font-weight: 700;
  color: #f8f5ef;
  margin: 0 0 0.3em;
  letter-spacing: 0.1em;
}

#c-main .contact-label {
  font-size: 1.2em;
  letter-spacing: 0.15em;
  margin: 0 0 0.5em;
  color: #fff;
  font-weight: 500;
  text-transform: uppercase;
}

#c-main .contact-box address {
  font-size: 0.92em;
  line-height: 2.0em;
  color: rgba(248,245,239,0.75);
  margin: 0;
}

#c-main .contact-tel {
  font-size: 1.5em;
  color: #f8f5ef;
  margin: 0 0 0.5em;
  letter-spacing: 0.05em;
}

#c-main .contact-tel a:link,
#c-main .contact-tel a:visited {
  color: #f8f5ef;
  text-decoration: none;
}

#c-main .contact-hours {
  font-size: 0.88em;
  color: rgba(248,245,239,0.6);
  line-height: 1.9em;
  margin: 0;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

#c-main .col-info-contact {
  padding: 0 0 3.0em;
}
	
/* 店舗写真：左30%エリアにcover表示 */
#c-main .col-info-contact::before {
  display: none;
}	

#c-main .col-info-contact-inner {
  flex-direction: column;
  gap: 2.5em;
  padding: 0 ;
  max-width: 100%;
}
	
#c-main .col-info-contact-l {
  display: block;
  position: relative; /* PC の absolute を上書き */
  width: 100%;
  height: 250px;
}

#c-main .col-info-contact-l .shop-slide img {
  height: 250px;
}	

#c-main .col-info-contact-r {
  flex-basis: 100%;
  max-width: 86%;
  margin: 0 auto;
}
	
#c-main .contact-logo {
  font-size: 1.4em;
  font-weight: 700;
  line-height: 1.3em;
}	

}


/* ========================================
   マップ・アクセスエリア
======================================== */
#c-main .col-map-access {
  padding: 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
  position: relative;
}

.map-area {
  width: 100%;
  height: 400px;
  overflow: hidden;
}

.map-placeholder {
  width: 100%;
  height: 100%;
}

.map-area iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

.access-info-overlay {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 360px;
  max-width: 90%;
  background: rgba(248,245,239,0.95);
  padding: 1.8em 2.0em;
  text-align: left;
}

.access-info-overlay .access-label {
  font-family: "EB Garamond", serif;
  font-size: 1.5em;
  color: #5a3e28;
  font-weight: 400;
  letter-spacing: 0.15em;
  margin: 0 0 0.5em;
}

.access-info-overlay address {
  font-size: 0.88em;
  line-height: 1.9em;
  color: #5a4a3a;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

.map-area {
  height: 280px;
}

.access-info-overlay {
  position: static;
  width: 100%;
  max-width: 100%;
  background: #f8f5ef;
}

}


/* ========================================
   モーダル（メニュー詳細・お知らせ詳細）
======================================== */
.modal-overlay {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.72);
  z-index: 1000;
  justify-content: center;
  align-items: center;
  padding: 20px;
}

.modal-overlay.is-open {
  display: flex;
}

.modal-box {
  background: #fff;
  border-radius: 4px;
  width: 100%;
  max-width: 700px;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  animation: modal-in 0.28s ease;
}

@keyframes modal-in {
  from { opacity: 0; transform: scale(0.96) translateY(10px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}

.modal-close {
  position: absolute;
  top: 12px; right: 12px;
  width: 34px; height: 34px;
  background: rgba(0,0,0,0.18);
  border: none; border-radius: 50%;
  cursor: pointer;
  font-size: 1.1em; color: #fff;
  display: flex; align-items: center; justify-content: center;
  z-index: 10;
  transition: background 0.2s;
}
.modal-close:hover { background: rgba(0,0,0,0.38); }

/* メニューモーダル */
.menu-modal-imgs {
  width: 100%;
  background: #f0e8d8;
  min-height: 180px;
  overflow: hidden;
}

.menu-modal-imgs img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
}

.menu-modal-img-placeholder {
  width: 100%;
  height: 200px;
  display: flex; align-items: center; justify-content: center;
  font-size: 4em; color: #c9a96e;
  background: #f0ead8;
}

.menu-modal-thumbs {
  display: flex;
  gap: 6px;
  padding: 8px 12px;
  background: #f8f5ef;
  overflow-x: auto;
}

.menu-modal-thumbs .thumb {
  width: 54px; height: 54px;
  flex-shrink: 0;
  border-radius: 3px; overflow: hidden;
  cursor: pointer;
  border: 2px solid transparent;
  transition: border-color 0.2s;
}
.menu-modal-thumbs .thumb.active { border-color: #8b6941; }
.menu-modal-thumbs .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

.menu-modal-body {
  padding: 2.0em;
  text-align: left;
}

.menu-modal-body .modal-price {
  font-family: "EB Garamond", serif;
  font-size: 1.3em;
  color: #8b6941;
  margin: 0 0 0.2em;
}

.menu-modal-body h3.menu-modal-title {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.55em;
  color: #2c1a0e;
  margin: 0 0 0.8em;
  padding: 0;
  border: none;
  font-weight: 600;
}

.menu-modal-body .modal-short {
  font-size: 0.92em;
  color: #7a6a58;
  margin: 0 0 1.2em;
  padding: 0 0 1.2em;
  border-bottom: solid 1px #e8e2d8;
}

.menu-modal-body .modal-detail {
  font-size: 0.92em;
  line-height: 1.9em;
  color: #5a4a3a;
}

/* お知らせモーダル */
.info-modal-body {
  padding: 2.5em;
  text-align: left;
}

.info-modal-body .modal-date {
  font-family: "EB Garamond", serif;
  font-size: 0.9em;
  color: #8b6941;
  letter-spacing: 0.1em;
  margin: 0 0 0.5em;
}

.info-modal-body h3.info-modal-title {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.4em;
  color: #2c1a0e;
  margin: 0 0 1.2em;
  padding: 0 0 0.8em;
  border-bottom: solid 1px #e8e2d8;
  font-weight: 600;
}

.info-modal-body .modal-content {
  font-size: 0.92em;
  line-height: 2.0em;
  color: #5a4a3a;
  white-space: pre-line;
}

/*//////////////////
レスポンシブ（スマートフォン用）
//////////////////*/
@media screen and (max-width: 640px) {

.modal-box { max-height: 88vh; }
.menu-modal-imgs img { height: 210px; }
.menu-modal-body { padding: 1.5em; }
.info-modal-body { padding: 1.8em; }

}
