@charset "UTF-8";
/* Scss Document */
/*  
---------------------------------------
supporters
---------------------------------------
*/
@media (max-width: 999px) {
  #supporters01 .schoolIntro--reverse {
    gap: 0; } }
@media (max-width: 999px) {
  #supporters01 .schoolIntro--reverse .schoolIntro__txt {
    flex: 1; } }

.supportTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 .4rem; }
  .supportTable th,
  .supportTable td {
    padding: clamp(1.5rem, calc(0.5434782609vw + 0.9565217391rem), 2rem) clamp(2rem, calc(0.5434782609vw + 1.4565217391rem), 2.5rem);
    text-align: left;
    vertical-align: middle;
    font-size: clamp(1.6rem, calc(0.2173913043vw + 1.3826086957rem), 1.8rem); }
  .supportTable thead th {
    padding: clamp(2rem, calc(0.5434782609vw + 1.4565217391rem), 2.5rem);
    background: #2DA338;
    background-clip: padding-box;
    border-right: .4rem solid transparent;
    border-radius: .8rem;
    color: #fff;
    font-weight: 700; }
    .supportTable thead th:first-child {
      width: 30%; }
    .supportTable thead th:nth-child(2) {
      width: 32%; }
    .supportTable thead th:last-child {
      border-right: 0; }
  .supportTable tbody td {
    background: #E9F6EA; }
    .supportTable tbody td:first-child {
      border-radius: .8rem 0 0 .8rem; }
    .supportTable tbody td:last-child {
      border-radius: 0 .8rem .8rem 0; }
    .supportTable tbody td a {
      color: #373737;
      text-decoration: none; }
      .supportTable tbody td a:hover {
        text-decoration: underline; }
  .supportTable tbody tr:nth-child(even) td {
    background: #fff; }
  .supportTable tbody tr:nth-child(10n) td {
    border-bottom: 8rem solid transparent;
    background-clip: padding-box; }
  @media (max-width: 999px) {
    .supportTable {
      display: block;
      border-spacing: 0; }
      .supportTable thead {
        display: none; }
      .supportTable tbody {
        display: block; }
        .supportTable tbody tr {
          display: block;
          margin-bottom: 1rem;
          overflow: hidden;
          background: #E9F6EA;
          border-radius: 1rem; }
          .supportTable tbody tr:nth-child(even) {
            background: #fff; }
          .supportTable tbody tr:nth-child(10n) {
            margin-bottom: 3rem; }
            .supportTable tbody tr:nth-child(10n) td {
              border-bottom: 1px solid rgba(45, 163, 56, 0.2); }
            .supportTable tbody tr:nth-child(10n) td:last-child {
              border-bottom: 0; }
          .supportTable tbody tr:last-child {
            margin-bottom: 0; }
        .supportTable tbody td {
          display: grid;
          grid-template-columns: 8rem minmax(0, 1fr);
          gap: 1.5rem;
          padding: 1.2rem 1.5rem;
          background: transparent !important;
          border-bottom: 1px solid rgba(45, 163, 56, 0.2);
          border-radius: 0 !important;
          font-size: 1.4rem; }
          .supportTable tbody td:last-child {
            border-bottom: 0; }
          .supportTable tbody td::before {
            color: #2DA338;
            font-weight: 700; }
          .supportTable tbody td:nth-child(1)::before {
            content: "支援者名"; }
          .supportTable tbody td:nth-child(2)::before {
            content: "氏名"; }
          .supportTable tbody td:nth-child(3)::before {
            content: "URL"; }
          .supportTable tbody td a {
            overflow-wrap: anywhere; } }

.supportNames {
  background: #F7F7F7;
  padding: 4rem 2vw;
  border-radius: 2rem; }
  .supportNames__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2vw;
    padding: 0; }
    .supportNames__list p {
      position: relative;
      margin: 0;
      padding-left: 2.8rem;
      white-space: nowrap; }
      .supportNames__list p::before {
        content: "";
        position: absolute;
        top: .5em;
        left: 0;
        width: 1.8rem;
        height: 1.8rem;
        background: #2DA338;
        border-radius: 50%; }
  @media (max-width: 999px) {
    .supportNames__list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem 0.5rem;
      padding: 0 2rem; }
      .supportNames__list p {
        padding-left: 2rem;
        white-space: normal; }
        .supportNames__list p::before {
          width: 1.2rem;
          height: 1.2rem; } }

.supportNames__note {
  text-align: center; }

#supporters02 .inner14 {
  position: relative; }
  @media (max-width: 999px) {
    #supporters02 .inner14 {
      padding-bottom: 0; } }
#supporters02 .inner12 {
  position: relative; }
#supporters02 .whiteBox {
  overflow: inherit; }
#supporters02 .illust1 {
  position: absolute;
  left: -6rem;
  top: -28rem;
  width: 22rem;
  height: auto;
  z-index: 2;
  display: block; }
  @media (max-width: 999px) {
    #supporters02 .illust1 {
      left: -4rem;
      top: -14rem;
      width: 11rem; } }
#supporters02 .illust2 {
  position: absolute;
  right: -20rem;
  top: 14%;
  width: 27rem;
  height: auto;
  z-index: 2;
  display: block; }
  @media (max-width: 999px) {
    #supporters02 .illust2 {
      right: -6rem;
      top: 18%;
      width: 10rem; } }
#supporters02 .illust3 {
  position: absolute;
  left: -13rem;
  top: -32rem;
  width: 15rem;
  height: auto;
  z-index: 2;
  display: block; }
  @media (max-width: 999px) {
    #supporters02 .illust3 {
      left: -4rem;
      top: -16rem;
      width: 7rem; } }
#supporters02 .illust4 {
  position: absolute;
  right: -24rem;
  bottom: -17rem;
  width: 30rem;
  height: auto;
  z-index: 2;
  display: block; }
  @media (max-width: 999px) {
    #supporters02 .illust4 {
      right: -4rem;
      bottom: -10rem;
      width: 12rem; } }
