@-webkit-keyframes horizontal-loop {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes horizontal-loop {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@-webkit-keyframes star-drop {
  0% {
    -webkit-transform: scale(0.8, 1.4) translate(0%, -100%);
    transform: scale(0.8, 1.4) translate(0%, -100%);
  }

  10% {
    -webkit-transform: scale(0.8, 1.4) translate(0%, -15%);
    transform: scale(0.8, 1.4) translate(0%, -15%);
  }

  20% {
    -webkit-transform: scale(1.4, 0.6) translate(0%, 30%);
    transform: scale(1.4, 0.6) translate(0%, 30%);
  }

  30% {
    -webkit-transform: scale(0.9, 1.1) translate(0%, -10%);
    transform: scale(0.9, 1.1) translate(0%, -10%);
  }

  40% {
    -webkit-transform: scale(0.95, 1.2) translate(0%, -30%);
    transform: scale(0.95, 1.2) translate(0%, -30%);
  }

  50% {
    -webkit-transform: scale(0.95, 1.2) translate(0%, -10%);
    transform: scale(0.95, 1.2) translate(0%, -10%);
  }

  60% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
    transform: scale(1.1, 0.9) translate(0%, 5%);
  }

  70% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
    transform: scale(1, 1) translate(0%, 0%);
  }

  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
    transform: scale(1, 1) translate(0%, 0%);
  }
}

@keyframes star-drop {
  0% {
    -webkit-transform: scale(0.8, 1.4) translate(0%, -100%);
    transform: scale(0.8, 1.4) translate(0%, -100%);
  }

  10% {
    -webkit-transform: scale(0.8, 1.4) translate(0%, -15%);
    transform: scale(0.8, 1.4) translate(0%, -15%);
  }

  20% {
    -webkit-transform: scale(1.4, 0.6) translate(0%, 30%);
    transform: scale(1.4, 0.6) translate(0%, 30%);
  }

  30% {
    -webkit-transform: scale(0.9, 1.1) translate(0%, -10%);
    transform: scale(0.9, 1.1) translate(0%, -10%);
  }

  40% {
    -webkit-transform: scale(0.95, 1.2) translate(0%, -30%);
    transform: scale(0.95, 1.2) translate(0%, -30%);
  }

  50% {
    -webkit-transform: scale(0.95, 1.2) translate(0%, -10%);
    transform: scale(0.95, 1.2) translate(0%, -10%);
  }

  60% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
    transform: scale(1.1, 0.9) translate(0%, 5%);
  }

  70% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
    transform: scale(1, 1) translate(0%, 0%);
  }

  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
    transform: scale(1, 1) translate(0%, 0%);
  }
}

@-webkit-keyframes star-spin {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  30% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes star-spin {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  30% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes star-spin-onetime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes star-spin-onetime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.table th,
.table td {
  vertical-align: top;
}

.table td {
  position: relative;
}

.list-icon li {
  position: relative;
  margin-left: 1.2em;
  text-indent: -1.2em;
}

.list-icon li::before {
  content: '●';
  color: #b4b4b4;
  margin-right: 0.2em;
}

@media screen and (min-width: 760px), print {
  .table-wp {
    margin-inline: auto;
  }

  .table {
    margin-inline: auto;
  }

  .table tr:last-child th,
  .table tr:last-child td {
    padding-bottom: 0;
  }

  .table tr:last-child td::before {
    height: calc(100% - 0.7vw);
  }

  .table th,
  .table td {
    font-size: calc(16 / (var(--w-navigation-size) * 0.01) * 1cqi);
    padding-bottom: calc(28 / (var(--w-navigation-size) * 0.01) * 1cqi);
    font-weight: 700;
    line-height: 1.75;
  }

  .table th {
    width: calc(108 / (var(--w-navigation-size) * 0.01) * 1cqi);
    padding-right: calc(40 / (var(--w-navigation-size) * 0.01) * 1cqi);
    -moz-text-align-last: justify;
    text-align-last: justify;
  }

  .table td {
    padding-left: calc(42 / (var(--w-navigation-size) * 0.01) * 1cqi);
  }

  .table td::before {
    width: 0.21vw;
    height: calc(100% - 2.8vw);
    top: 0.35vw;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    background-color: #e6e6e6;
  }

  .list li:nth-child(n + 2) {
    margin-top: calc(10 / (var(--w-navigation-size) * 0.01) * 1cqi);
  }

  .list-icon li:nth-child(n + 2) {
    margin-top: calc(10 / (var(--w-navigation-size) * 0.01) * 1cqi);
  }
}

@media screen and (min-width: 1440px), print {
  .table tr:last-child td::before {
    height: calc(100% - 10px);
  }

  .table td::before {
    width: 3px;
    height: calc(100% - 40px);
    top: 5px;
  }
}

@media screen and (max-width: 759.98px) {
  .table {
    display: block;
  }

  .table tbody {
    display: block;
  }

  .table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .table tr:nth-child(n + 2) {
    margin-top: 7.12vw;
  }

  .table th,
  .table td {
    display: block;
    font-weight: 700;
    line-height: 1.35;
  }

  .table th {
    font-size: 2.32vw;
    color: #8c8c8c;
  }

  .table td {
    font-size: 3.12vw;
    line-height: 1.657;
    margin-top: 2.49vw;
  }

  .table td span {
    display: block;
    line-height: 1.55;
  }

  .list li:nth-child(n + 2) {
    margin-top: 1.43vw;
  }

  .list-icon li:nth-child(n + 2) {
    margin-top: 1.43vw;
  }
}

@media screen and (min-width: 760px) and (max-width: 1024.98px) {
  .table td::before {
    width: 0.3vw;
    height: calc(100% - 2.8vw);
    top: 0.49vw;
  }
}