/* ========================================
   設立支援者一覧
======================================== */


/* =========================
   HERO
========================= */

.supporters-page{
  padding-top:0;
}

.supporters-hero{
  padding:90px 0 70px;
  background:#fffdf8;
}

.supporters-hero-inner{
  max-width:850px;
}

.supporters-hero-inner .kicker{
  display:block;
  margin:0 0 14px;
}

.supporters-hero-inner h1{
  margin:0 0 28px;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  font-size:clamp(2.5rem,5vw,4.8rem);
  line-height:1.2;
  letter-spacing:-.03em;
}

.supporters-hero-inner p{
  max-width:760px;
  margin:0 0 12px;
  color:var(--muted);
  font-size:16px;
  line-height:1.9;
}

.supporters-hero-inner p:last-child{
  margin-bottom:0;
}


/* =========================
   支援者一覧
========================= */

.supporters-list-section{
  padding:80px 0;
  background:#eef4eb;
}

.supporters-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:start;
}

.supporter-card{
  box-sizing:border-box;
  min-width:0;
  padding:20px;
  border:1px solid #d9d3c8;
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}

.supporter-card::after{
  content:"";
  display:block;
  clear:both;
}


/* =========================
   写真・ロゴあり
========================= */

.supporter-avatar{
  float:left;
  width:66px;
  height:66px;
  margin:1px 14px 6px 0;
  border:1px solid rgba(79,111,77,.18);
  border-radius:50%;
  background:var(--soft);
  overflow:hidden;
  box-sizing:border-box;
}

.supporter-avatar img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}


/* =========================
   写真・ロゴなし
========================= */

.supporter-card--no-image .supporter-card-content{
  width:100%;
}

.supporter-card--no-image .supporter-name{
  font-size:1.08rem;
}

.supporter-card--name-only{
  padding-top:18px;
  padding-bottom:18px;
  text-align:center;
}

.supporter-card--name-only::after{
  display:none;
}

.supporter-card--name-only .supporter-card-content{
  width:100%;
}

.supporter-card--name-only .supporter-name{
  margin:0;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  font-size:1.18rem;
  line-height:1.45;
}


/* =========================
   支援者情報
========================= */

.supporter-card-content{
  min-width:0;
}

.supporter-name{
  margin:0 0 3px;
  padding:0;
  color:var(--text);
  font-size:1.02rem;
  font-weight:700;
  line-height:1.4;
}

.supporter-company{
  margin:0 0 7px;
  color:var(--muted);
  font-size:15px;
  line-height:1.45;
}

.supporter-description{
  clear:both;
  padding-top:6px;
  color:var(--text);
  font-size:15px;
  line-height:1.65;
}

.supporter-card--no-image .supporter-description{
  padding-top:4px;
}

.supporter-description p{
  margin:0 0 7px;
}

.supporter-description p:last-child{
  margin-bottom:0;
}

.supporter-link{
  display:inline-block;
  clear:both;
  margin-top:9px;
  color:var(--accent-dark);
  font-size:15px;
  font-weight:700;
  line-height:1.4;
  text-decoration:none;
}

.supporter-link:hover{
  text-decoration:underline;
}


/* =========================
   支援者未登録
========================= */

.supporters-empty{
  padding:36px 26px;
  border:1px solid #d9d3c8;
  border-radius:8px;
  background:#fff;
  text-align:center;
}

.supporters-empty p{
  margin:0;
  color:var(--muted);
  font-size:16px;
}


/* =========================
   設立支援案内
========================= */

.supporters-support-section{
  padding:80px 0;
  background:#f4eee8;
}

.supporters-page .founding-support-guide{
  max-width:820px;
  margin:0 auto;
  text-align:center;
}

.supporters-page .founding-support-guide .kicker{
  display:block;
  margin:0 0 14px;
}

.supporters-page .founding-support-guide h2{
  margin:0 0 24px;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.35;
}

.supporters-page .founding-support-guide p{
  margin:0 0 12px;
  font-size:16px;
  line-height:1.9;
}

.supporters-page .founding-support-guide .actions{
  justify-content:center;
  margin-top:30px;
}


/* =========================
   タブレット
========================= */

@media(max-width:900px){

  .supporters-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}


/* =========================
   スマホ
========================= */

@media(max-width:640px){

  .supporters-hero{
    padding:65px 0 50px;
  }

  .supporters-hero-inner{
    text-align:left;
  }

  .supporters-hero-inner h1{
    font-size:2.45rem;
  }

  .supporters-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .supporters-list-section{
    padding:60px 0;
  }

  .supporter-card{
    padding:18px;
  }

  .supporter-card--name-only{
    padding-top:16px;
    padding-bottom:16px;
  }

  .supporter-avatar{
    width:60px;
    height:60px;
    margin:1px 12px 5px 0;
  }

  .supporter-name{
    font-size:1.02rem;
  }

  .supporter-card--no-image .supporter-name{
    font-size:1.06rem;
  }

  .supporter-card--name-only .supporter-name{
    font-size:1.14rem;
  }

  .supporter-description{
    padding-top:5px;
  }

  .supporters-support-section{
    padding:60px 0;
  }

  .supporters-page .founding-support-guide{
    text-align:center;
  }

}
