@charset "UTF-8";

/* 全体設定 */
body {
  font-family: "Noto Sans JP", sans-serif;
  background-color: #fff;
  color: #333;
  margin: 0;
  padding: 0;
  line-height: 1.8;
  display: flex;
  flex-direction: column;
  min-height: 100svh; /* iPhone SEなど安全なビューポート高さ対応 */
}

/* ヘッダー */
.site-header {
  text-align: center;
  padding: 70px 0 8px;
}

.logo {
  width: clamp(140px, 40vw, 120px);
  height: auto;
}

/* メインコンテンツ */
.main-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 30px 16px;
  box-sizing: border-box;
}

.intro {
  max-width: 90%;
}

.intro h1 {
  font-size: clamp(1.3rem, 4vw, 1.6rem);
  margin-bottom: 16px;
  font-weight: 700;
}

.intro p {
  font-size: clamp(1.125rem, 3vw, 1rem);
  margin-bottom: 28px;
}

/* オンラインストアボタン */
.store-link img {
  width: clamp(180px, 55vw, 220px);
  height: auto;
  transition: opacity 0.3s ease;
}

.store-link img:hover {
  opacity: 0.7;
}

/* 電話番号部分 */
.tel {
  margin-top: 28px;
  font-size: 1.125rem;
  font-weight: 700;
  color: #333;
  letter-spacing: 0.05em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px; /* 初期（スマホ）時の余白 */
}

.tel-link {
  text-decoration: none;
  color: #333; /* ← 基本は黒 */
  font-weight: 700;
  margin-right: 4px;
}

/*.tel::before {
  content: "📞 ";
}*/

/* ===== スマホ（767px以下） ===== */
@media (max-width: 767px) {
  .tel {
    flex-direction: column;
    line-height: 1.6;
    gap: 0; /* 縦並び時は余白なし */
  }

  .tel-link {
    color: #0072bc; /* ← スマホ時のみ青に変更 */
  }
}

/* ===== PC（768px以上） ===== */
@media (min-width: 768px) {
  .tel-link {
    pointer-events: none; /* クリック無効 */
    cursor: default;
    color: #333; /* PC時は黒に戻す */
    text-decoration: none;
  }

  .tel {
    flex-direction: row;
    gap: 25px; /* PC時のみTELとFAXの間隔を広くする */
  }
}

/* フッター */
.site-footer {
  text-align: center;
  font-size: 0.8rem;
  padding: 16px 0;
  color: #666;
  border-top: 1px solid #eee;
}
