html {
    box-sizing: border-box;
  }

  *,
  *:before,
  *:after {
    box-sizing: inherit;
  }

  body {
    margin: 0;
    padding: 0;
    background: #000;
    height:100%;
    width:100%;
    position: absolute;
    overflow: hidden;
  }

  body.ios-full-screen{
    overflow-y: auto;
  }

  #unity-canvas {
    position:fixed;
    top: 0px;
    height: 0px;
    height:100%;
    width:100%;
  }

  canvas {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
  }

  /* try to handle mobile dialog */
  canvas+* {
    z-index: 2;
  }

  .logo {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    width: 100%;
  }
  .logo img {
    width: 22vw;
    margin: auto;
    margin-top: 13vh;
  }

  .bg {
    background: url(bg.png) 100% 100%;
    background-position-x: 50%;
    background-position-y: 50%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
  }

  .progress {
    width: 93%;
    height: 100%;
    overflow: hidden;
    z-index: 9;
    transform: translateX(-3px);
  }

  .progress .full {
    margin: auto;
    margin-left: 0px;
    width: 100%;
    height: 45%;
    transform-origin: top right;
    background-image: url(loading-full2.png);
    background-position: right center;
    background-size: auto 100%;
    background-repeat: no-repeat;
    transform: translateX(-0.8vw);
  }

  .mask{
    background-image: url(loading_full1.png);
    height: 45%;
    width: 5.4%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    transform: translate(1px, 0.35vh);
    background-position: right;
  }

  #unity-loading-bar {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    touch-action: none;
    pointer-events: none;
  }

  .loading-bar{
    width: 37.1vw;
    height: 6vw;
    margin: auto;
    position: absolute;
    display: flex;
    flex-wrap: nowrap;
    left: 50%;
    transform: translate(-50%, 0px);
    background-image: url(loading-bar.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    padding-left: 1.2vw;
    padding-top: 1vw;
  }

  #fullScreenTapContainer{
    background:#000000;
    opacity:0.0;
    width:100%;
    height:100%;
    position:fixed;
    top:0%;
    z-index:2147483647;
    display: none;
  }

  #fullScreenSwipeContainer{
    width: 100%;
    height: 400vh;
    position: absolute;
    display: block;
    z-index: -1;
    overflow: hidden;
  }

  .scroll-helper{
    width: 100%;
    height: 200vh;
  }

  body.ios-full-screen #fullScreenSwipeContainer{
    z-index: 1000;
    overflow-y: auto;
  }

  body.android-full-screen #fullScreenTapContainer{
    display: block;
  }

  @media (orientation: landscape) {
    .logo img{
      width: 39vh;
    }
    .loading-bar{
      bottom: 21vh;
      width: 55.1vh;
      height: 10vh;
      padding-left: 1.3vh;
      padding-top: 2.1vh;
    }
    .progress .full{
        transform: translate(0vh, 1vh);
    }

    .mask{
        transform: translate(-1px, 1vh);
    }
  }

  @media (orientation: portrait) {
    .loading-bar{
      bottom: 21vw;
      width: 55.1vw;
      height: 10vw;
      padding-left: 1.3vw;
      padding-top: 2.1vw;
    }

    .logo img{
      width: 39vw;
    }
    .progress .full{
      transform: translate(-1px, 1vw)
    }

    .mask{
      transform: translate(-1px, 1vw);
    }
  }