/* =========================================================
   店舗情報（/store）  Studio の実測値（tree_store_pc / sp）で再現
   ========================================================= */

/* ---------- 上の写真 ---------- */
.store-hero { display: flex; justify-content: flex-end; align-items: center; height: 477px; padding-left: var(--side); }
.store-hero__img { width: 100%; height: 100%; background-color: var(--gray-bg); background-repeat: no-repeat; background-position: center bottom; background-size: 1387px; }

/* ---------- HISTORY（年表） ---------- */
.store-history { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; max-width: calc(100% - var(--side)); margin-left: var(--side); padding: 50px 0; color: var(--navy); }
.store-history__head { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; }
.store-history__titles { display: flex; flex-direction: column; align-items: center; gap: 30px; }
.store-history__en { font-family: var(--mont); font-weight: 600; font-size: 40px; line-height: 1; letter-spacing: .15em; text-align: center; }
.store-history__ja { font-family: var(--serif); font-weight: 400; font-size: 18px; line-height: 1.4; letter-spacing: .5em; text-align: center; }
.store-history__wrap { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 20px; width: 100%; }
.store-history__list { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; width: 100%; padding: 80px; }
.store-history__item { display: flex; flex-direction: column; align-items: center; gap: 40px; width: 100%; }
.store-history__row { display: flex; justify-content: space-between; align-items: center; gap: 24px; width: 100%; padding: 20px; border: 1px solid #dcdcdc; }
.store-history__left { flex: none; display: flex; align-items: center; gap: 16px; width: 320px; max-width: 100%; }
.store-history__year { flex: none; display: flex; align-items: center; height: 60px; padding: 0 40px; border-radius: 2px; background: var(--pink); color: #01183d; font-family: var(--serif); font-size: 20px; line-height: 1.5; letter-spacing: .01em; white-space: nowrap; }
.store-history__title { flex: none; display: flex; align-items: center; width: 150px; height: 40px; padding: 0 20px; font-family: "Shippori Mincho", var(--serif); font-weight: 400; font-size: 18px; line-height: 1.2; letter-spacing: .01em; }
.store-history__vline { flex: none; width: 1px; height: 34px; background: #dcdcdc; }
.store-history__hline { display: none; flex: none; width: 100%; height: 1px; background: var(--gray-bg); }
.store-history__text { flex: 1 1 0; font-family: "Shippori Mincho B1", "Shippori Mincho", var(--serif); font-size: 18px; line-height: 1.5; letter-spacing: .1em; text-align: left; }
.store-history__arrow { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; color: #dcdcdc; font-size: 24px; line-height: 24px; }

/* ---------- 代表挨拶 ---------- */
.store-greet { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 0 0 90px var(--side); color: var(--navy); }
.store-greet__h2 { margin: 0 0 30px; font-family: var(--mont); font-weight: 600; font-size: 40px; line-height: 1; letter-spacing: .15em; text-align: center; }
.store-greet__wrap { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; }
.store-greet__box { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 900px; max-width: 100%; padding: 20px; border: 5px double var(--beige); }
.store-greet__photo { flex: none; width: 461px; max-width: 100%; height: 437px; }
.store-greet__photo img { width: 100%; height: 100%; object-fit: cover; }
.store-greet__body { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; }
.store-greet__text { font-size: 16px; line-height: 1.8; text-align: center; }

/* ---------- 1140px 以下 ---------- */
@media (max-width: 1140px) {
	.store-greet { padding: 50px 20px 50px 200px; }
}

/* ---------- 990px 以下（左メニューが上の帯に） ---------- */
@media (max-width: 990px) {
	.store-history { max-width: 100%; margin-left: 0; }
	.store-history__ja { letter-spacing: .15em; }
	.store-history__list { padding: 80px 10px; }
	.store-history__left { gap: 0; }
	.store-history__row--license .store-history__title { padding: 0 6px; }
	.store-greet { padding: 50px 20px; }
	.store-greet__box { padding: 20px 10px; }
}

/* ---------- 690px 以下（スマホ） ---------- */
@media (max-width: 690px) {
	.store-hero { padding-left: 0; }
	.store-history__titles { gap: 20px; }
	.store-history__en { font-size: 32px; }
	.store-history__ja { font-size: 15px; }
	.store-history__list { padding: 80px 20px; }
	.store-history__item { gap: 20px; }
	.store-history__row { flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 12px; }
	.store-history__year { height: 40px; padding: 0 20px; font-size: 16px; }
	.store-history__vline { display: none; }
	.store-history__hline { display: block; }
	.store-history__text { flex: none; font-size: 14px; }
	.store-greet__h2 { font-size: 32px; }
	.store-greet__box { gap: 20px; width: 100%; }
	.store-greet__body { width: auto; }
	.store-greet__text { text-align: left; }
}
