@charset "utf-8";

:root {
  --bg-color: #DA8899;
  --black: #0C000A;
  --white: #FFFFFB;
  --box-color: #CA5069;
  --border-color: #B50C6C;
  --button-color: #89006E;
  --font: "Mochiy Pop One", sans-serif;
  --shadow: rgba(0, 0, 0, 0.3);
}

body {
  background-color: var(--button-color);
}

main {
  overflow: hidden;
}

.mainbox {
  position: relative;
}

.ue {
  position: absolute;
  top: 0px;
  width: 100%;
  fill: #57004B;
}

.ue svg {
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.8));
}

.mainbox h1 {
  position: relative;
  z-index: 10;
  padding-top: 62px;
  font-family: var(--font);
  font-weight: normal;
  font-size: 52px;
  text-align: center;
  color: #7AA635;
  text-shadow: 4px 6px 0 #222F0F;
}

.mainbox ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 40px;
  row-gap: 460px;
  width: 1200px;
  max-width: 93%;
  margin: 460px auto 0;
}

.mainbox ul li {
  position: relative;
  width: 260px;
}

.mainbox ul li::after {
  z-index: -1;
  position: absolute;
  content: 'AMANOCO';
  left: 4px;
  bottom: 146px;
  font-size: 70px;
  font-family: Inter, Roboto, 'Helvetica Neue', 'Arial Nova', 'Nimbus Sans', Arial, sans-serif;
  font-weight: 900;
  writing-mode: vertical-rl;
  line-height: 1;
  transition-duration: 0.2s;
  color: rgba(0, 0, 0, 0.3);
}

.mainbox ul li:hover::after {
  color: rgba(255, 255, 251, 0.95);
}

.mainbox ul li a img:first-child {
  z-index: 4;
  position: absolute;
  bottom: 90px;
  left: 30px;
  transition-duration: 0.2s;
}

.mainbox ul li a img:nth-child(2) {
  position: relative;
  z-index: 10;
}

.mainbox ul li a:hover img:first-child {
  bottom: 110px;
  scale: calc(1.05);
  filter: drop-shadow(0 1px 3px black) brightness(1.25);
}

/* 一覧へ戻る */
.maid a {
  width: max-content;
  position: relative;
  margin: 80px auto 54px;
  background-color: var(--border-color);
  border-radius: 100px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  color: var(--white);

  display: block;
  font-family: var(--font);
  font-size: 20px;
  line-height: 1;
  padding: 13px 26px 15px;
}

.maid a::before {
  content: '';
  position: absolute;
  top: -4px;
  left: -130%;
  background: #4AF393;
  mix-blend-mode: darken;
  width: 120%;
  height: calc(100% + 8px);
  transform: skewX(-25deg);
  transition-duration: .5s;
}

.maid a:hover::before {
  left: -10%;
}

@media (max-width: 800px) {
  .mainbox h1 {
    font-size: 40px;
    padding-top: 46px;
  }

  .mainbox ul {
    column-gap: 20px;
    row-gap: 290px;
    margin: 297px auto 0;
  }

  .mainbox ul li {
    width: 160px;
  }

  .mainbox ul li::after {
    left: 4px;
    bottom: 57px;
    font-size: 50px;
  }

  .mainbox ul li a img:first-child {
    bottom: 65px;
    left: 18px;
  }

  .mainbox ul li a:hover img:first-child {
    bottom: 75px;
  }

}