@media only screen and (max-width: 1280px) {
  body {
  background-size: auto !important;
  }
  #cont {
    font-size: calc(22px + 1vw) !important;
    width: 70vw !important;
    height: 60vh !important;
  }
  #cont-bottom {
  width: 70vw !important;
  }
  #cont-right { 
  display:none;
  }
}
@media only screen and (min-width: 1281px) {
  #cont-top { 
  display:none;
  }
}
@media (hover: none) {
  #frame {
  overflow: auto !important;
  }
}
body {
  background-image: url("img/wallhaven-4vkvzp-b.jpg");
  background-color: #031015;
  background-size: 100vw 100vh;
  background-repeat: no-repeat;
  font-family: "KosugiMaru", monospace;
}
* {
  color: #fff;
  margin:0;padding:0;
  box-sizing:border-box;
}
#cont {
  width:30vw;
  height: 30vw;
  position: absolute;
  top:50%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
  writing-mode: vertical-lr;
}
#cont-left, #cont-right {
  position:absolute;
  text-align:center;
  height:30vw;
  font-size: calc(32px + 1vw);
}
#cont-top{
  position:absolute;
  text-align:center;
  height:30vw;
  top:-120px;
  font-size: calc(32px + 1vw);
  width:100%;
  writing-mode: lr-tb;
}
#cont-left{
  left:-10vw;
}
#cont-top nav, #cont-top nav a,
#cont-right nav, #cont-right nav a {
  font-size:18px;
  color:#aaa;
}
#cont-top nav {
margin-top:15px;
}
#cont-right nav {
  margin-left:40px;
}
#cont-right{
  right:-20vw;
}
#cont-bottom {
  position:absolute;
  bottom:-100px;
  font-size:18px;
  width:100%;
  text-align:center;
  writing-mode: initial;
}
#cont-bottom * {
  color:#aaa;
}
a{
  font-weight:bold;
  text-decoration:underline;
  cursor:pointer;
  transition:color 0.2s;
}
a:hover {
  color:#fff !important;
}
#frame {
  position:absolute;
  width:100%;height:100%;
  writing-mode: initial;
  overflow:hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  scroll-behavior: smooth;
}
#frame:hover {
overflow:auto;
}
#frame::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}
#frame section {
  min-height:100%;
  font-size: 16px;
  line-height:22pt;
  text-align:center;
}
#questionsect h1,#questionsect h2 {
  margin-bottom:20px;
}
#frame h1 {
  font-size:20px;
}
#frame h2 {
  font-size:18px;
}
#frame hr {
  width:40%;
  border:0 none;
  border-top:1px solid #aaa;
  height:1px;
  margin: 30px auto;
}
abbr {
  text-decoration:underline;
}
article {
  width: calc(100% - 5px);
  border:1px solid #fff;
  padding: 10px 15px;
  margin:0 auto;
  margin-bottom:20px;
  background: rgba(0,0,0,0.3);
}
article h1 {
  margin-bottom:15px;
}
article p {
  text-align:left;
}
article footer {
  text-align:right;
}
#questionsect table {
width:100%;
height:30vw;
}
