* {
  padding: 0;
  margin: 0;
  line-height: 1;
  box-sizing: border-box;
}

img {
  max-width: 100%;
}

text-hidden, .footer p a, .top a, .main .product .sample-voice a, .header h1, shop-hp, .main .special .pokedra a, .main .special .dlsite a, .main .special .stela a {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

shop-hp, .main .special .pokedra a, .main .special .dlsite a, .main .special .stela a {
  display: inline-block;
  width: 198px;
  height: 46px;
  background: url(../img/shop_hp_nor.png) no-repeat 0 0/cover;
  transition: 0.3s;
}
shop-hp:hover, .main .special .pokedra a:hover, .main .special .dlsite a:hover, .main .special .stela a:hover {
  background: url(../img/shop_hp_on.png) no-repeat 0 0/cover;
}

body {
  background: url(../img/bg-img.png) no-repeat center/cover;
}

.container {
  max-width: 1000px;
  margin: auto;
}

.header {
  padding-top: 90px;
  margin-bottom: 48px;
}
@media (width <= 430px) {
  .header {
    padding-top: 1rem;
  }
}
.header h1 {
  background: url(../img/main_visual.png) no-repeat center top/cover;
  aspect-ratio: 1000/369;
}

@media (width <= 430px) {
  .main {
    padding: 0 1.5rem;
  }
}
.main .youtube {
  max-width: 1067px;
  margin: 0 auto 40px;
  aspect-ratio: 1208/680;
}
.main .youtube iframe {
  width: 100%;
  height: 100%;
}
.main .outline {
  margin-bottom: 90px;
  text-align: center;
}
.main .outline + .border {
  margin-bottom: 18px;
}
.main .border {
  height: 16px;
  background: url(../img/line.png) no-repeat center top/cover;
}
.main .story {
  text-align: center;
  margin-bottom: 90px;
}
.main .story + .border {
  margin-bottom: 8px;
}
.main .character {
  text-align: center;
  margin-bottom: 18px;
}
@media (width <= 430px) {
  .main .character {
    margin-bottom: 90px;
  }
}
.main .product {
  text-align: center;
  margin-bottom: 90px;
}
.main .product p {
  margin-bottom: 24px;
}
.main .product .sample-voice a {
  display: inline-block;
  width: 196px;
  height: 49px;
  margin: 0 40px;
  background: url(../img/sample_voice01_nor.png) no-repeat 0 0/cover;
  transition: 0.3s;
}
@media (width <= 430px) {
  .main .product .sample-voice a {
    margin: 0 0 20px;
  }
}
.main .product .sample-voice a.play {
  background: url(../img/sample_voice01_on.png) no-repeat 0 0/cover;
}
@media (width > 430px) {
  .main .product .sample-voice a:hover, .main .product .sample-voice a.play {
    background: url(../img/sample_voice01_on.png) no-repeat 0 0/cover;
  }
}
.main .product .sample-voice a:nth-child(2) {
  background: url(../img/sample_voice02_nor.png) no-repeat 0 0/cover;
}
.main .product .sample-voice a:nth-child(2).play {
  background: url(../img/sample_voice02_on.png) no-repeat 0 0/cover;
}
@media (width > 430px) {
  .main .product .sample-voice a:nth-child(2):hover, .main .product .sample-voice a:nth-child(2).play {
    background: url(../img/sample_voice02_on.png) no-repeat 0 0/cover;
  }
}
.main .product .sample-voice a:nth-child(3) {
  background: url(../img/sample_voice03_nor.png) no-repeat 0 0/cover;
}
.main .product .sample-voice a:nth-child(3).play {
  background: url(../img/sample_voice03_on.png) no-repeat 0 0/cover;
}
@media (width > 430px) {
  .main .product .sample-voice a:nth-child(3):hover, .main .product .sample-voice a:nth-child(3).play {
    background: url(../img/sample_voice03_on.png) no-repeat 0 0/cover;
  }
}
.main .product + .border {
  margin-bottom: 18px;
}
.main .special {
  margin-bottom: 40px;
}
.main .special .stela {
  margin-bottom: 76px;
  text-align: center;
}
@media (width <= 430px) {
  .main .special .stela p {
    margin-bottom: 18px;
  }
}
.main .special .stela p + p {
  margin-top: -40px;
}
@media (width <= 430px) {
  .main .special .stela p + p {
    margin-top: 0;
  }
}
.main .special .pokedra, .main .special .dlsite {
  margin-bottom: 76px;
  text-align: center;
}
.main .special .pokedra p, .main .special .dlsite p {
  margin-bottom: 18px;
}
.main .special .dlsite a {
  display: none;
}
.main .coution {
  margin-bottom: 30px;
  text-align: center;
}

.top {
  position: fixed;
  max-width: 104.4px;
  width: 100%;
  right: 20px;
  bottom: 30px;
  opacity: 0;
}
@media (width <= 430px) {
  .top {
    max-width: 69.6px;
  }
}
.top a {
  display: block;
  max-width: 174px;
  width: 100%;
  aspect-ratio: 174/232;
  background: url(../img/ret_top.png) no-repeat center/contain;
  transition: 0.4s;
}
.top a:hover {
  filter: drop-shadow(0 0 3px #fff);
}
.top.view {
  opacity: 1;
}

.footer {
  height: 100px;
  background: #E6E6E6 url(../img/footer.png) no-repeat center top;
}
.footer p {
  height: 100px;
  padding: 19.5px 0;
}
.footer p a {
  display: block;
  width: 100%;
  max-width: 176px;
  aspect-ratio: 176/61;
  margin: auto;
  background: url(../img/logo_primrose.png) no-repeat center/contain;
  transition: 0.3s;
}
.footer p a:hover {
  filter: drop-shadow(0 0 3px #beaaff);
}/*# sourceMappingURL=style.css.map */