.top {
  position: relative;
  width: 100%;
  max-width: 900px;
  margin: 0 auto 4rem;
  padding: 40px 0 0;
  display: grid;
  grid-template-columns: 5.4fr 4.6fr;
  align-items: center;
  z-index: 10;
}

.top-left {
  position: relative;
}

.waku {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.top-right {
  padding: 0 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top-logo {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.top-logo img {
  filter: drop-shadow(0 0 10px var(--bg-color))
    drop-shadow(0 0 10px var(--bg-color)) drop-shadow(0 0 10px var(--bg-color))
    drop-shadow(0 0 10px var(--bg-color));
}

.top-text {
  position: relative;
  width: 100%;
  margin: 0.8em 0 0;
  text-align: center;
  font-family: "Rye", serif;
  font-weight: 400;
  font-style: normal;
  color: var(--color);
  font-size: min(1.6vw, 22px);
  line-height: 1.2;
}

@media screen and (min-width: 1px) and (max-width: 743px) {
  .top {
    width: 100%;
    margin: 0 auto 1.5rem;
    padding: 2rem 5% 0;
    grid-template-columns: 1fr;
  }

  .top-right {
    display: none;
  }

  .top-logo {
    position: absolute;
    bottom: 5%;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .top-logo img {
    width: 76%;
    filter: drop-shadow(0 0 6px var(--bg-color))
      drop-shadow(0 0 6px var(--bg-color))
      drop-shadow(0 0 6px var(--bg-color))
      drop-shadow(0 0 6px var(--bg-color));
  }

  .top-text {
    position: relative;
    width: 100%;
    margin: 0.8em 0 0;
    font-size: 5.128vw;
    text-shadow:
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color),
      0 0 15px var(--bg-color);
  }
}

@media screen and (min-width: 744px) and (max-width: 1024px) {
  .top {
    width: 90%;
    padding: 2rem 0 0;
  }

  .top-text {
    margin: 0.6em 0 0;
    font-size: 2.8vw;
  }
}

@media screen and (min-width: 1025px) {
}
