/* footer.css — 最終整理版 */
:root{
  --site-accent-start: #3b2b5a;
  --site-accent-end:   #1e1a3a;
  --site-accent-gradient: linear-gradient(90deg,var(--site-accent-start),var(--site-accent-end));
  --footer-text-color: #ffffff;
}

/* ベース */
.footer {
  background: var(--site-accent-gradient);
  color: var(--footer-text-color);
  text-shadow: 0 1px 0 rgba(0,0,0,0.25);
  padding: 18px 0;
  font-family: "Noto Sans", sans-serif;
  box-sizing: border-box;
}

/* 内部ラッパー */
.footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  box-sizing: border-box;
}

/* コピーライト（テキスト用） */
.footer-copy {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  color: var(--footer-text-color);
  font-weight: 600;
  line-height: 1.4;

  /* PC〜スマホまで自動調整 */
  font-size: clamp(12px, 2vw, 16px);

  /* 2行許容・貫通防止 */
  white-space: normal;
  overflow-wrap: break-word;
  word-break: break-word;
}

/* 画像用CSS（残しても害なし） */
.footer-copy img {
  display: block;
  margin: 0 auto;
  height: 32px;
  width: auto;
  max-width: none;
}

/* スマホ対応（1つに統合済み） */
@media (max-width: 640px) {

  .footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
  }

  .footer-copy {
    display: block;
    width: auto;
    margin: 0 auto;
    padding: 0;
  }

  .footer-copy img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
  }

}