body, html {
  margin:0;
  padding: 0;
  overflow: hidden;
  font-family: "Andada Pro", serif;
  font-size:16pt;
}
.main-logo{
  position: absolute;
  top: 10px;
  left: 5%;
  z-index: 10;
}
.main-logo img{
  width:120px;
  height:auto;
}
#webgl {
  position: fixed;
  inset: 0;
  z-index: 0;
  width: 100vw;

  /* 100vh 問題対策：順に評価され、対応していれば後勝ち */
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100); /* JSで--vhを更新（下で追加） */
  height: 100svh;  /* iOS15+ */
  height: 100dvh;  /* iOS16+ / 最新 */
}
#webgl canvas {
  width: 100%;
  height: 100%;
  display: block;
}
h1{
  position: fixed;          /* ← absolute から変更 */
  top: 80%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 2;
  color: #000;
  text-align: center;
  z-index: 10;              /* canvas より上 */
  pointer-events: none;
  width: 100%;
}
h1 span{
  font-family: "Outfit", sans-serif;
  font-weight: 500;
}

/* コピーライトも fixed＋セーフエリア対応＋最前面 */
.copyright{
  position: fixed;          /* ← absolute から変更 */
  left: 50%;
  bottom: calc(env(safe-area-inset-bottom, 0px) + 6px);
  transform: translateX(-50%);
  font-size: 0.6rem;
  color:#333;
  z-index: 10;
  pointer-events: none;
  font-family: "Outfit", sans-serif;
}


@media screen and (max-width:500px){
h1{
  font-size: 0.8rem;
}
}