body {
	background: #121122;
	color: #fedbe6;
    margin: 1em;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-family: sans-serif;
  }

  .novel-container {
    font-family: serif;
    width: 41em;
    font-size: 125%;
    line-height: 2em;
    letter-spacing: 0.075em;
    font-feature-settings: "palt";
    text-align:justify;
    word-break:break-word; 
    text-justify:inter-ideograph;
    text-justify:inter-character;
    word-wrap:break-word;
    overflow-wrap:break-word;
    }




  @media only screen and (max-width: 750px) {
    .novel-container {
      font-family: serif;
      font-size: 90%;
      line-height: 2em;
      font-feature-settings: "palt";
    }
  }

  ruby rt {
    font-size: 50%;
  }

sup {
    display: block;
    color: #8b093b;
    margin-right: 0.5em;
    font-size: 75%;
}


a {
    color: #feb2c9;
}



@media only screen and (min-width: 750px) { /* PC */
  .footer  {
    font-family: serif;
	color: #554466;
    margin-top: 8em;
	font-size: 0.8em;
    position: absolute;
    bottom: 0;
}
  }
  
  
  @media only screen and (max-width: 750px) { /* Mobile */
    .footer  {
      font-family: serif;
    color: #554466;
      margin-top: 8em;
    font-size: 0.3em;
      position: absolute;
      bottom: 0;
  }
      }

.caret {
    animation: blink 1s infinite;
  }

  @keyframes blink {
    50% {
      opacity: 0;
    }
  }