@charset "UTF-8";
/*** THEME ***/
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}

@font-face {
  font-family: 'FuturaHeavyBT';
  /* フォント名 */
  /* フォーマットごとにパスを指定 */
  src: url("/common/css/fonts/FuturaHeavyBT.ttf");
}

body {
  background: #f1f1f1;
}

button {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}

main {
  min-height: 100vh;
  position: relative;
}

@media only screen and (max-width: 736px) {
  main {
    padding-top: 5.8rem;
  }
  main #viewer {
    width: 100%;
    height: 70vh;
    position: relative;
  }
  main #viewer canvas {
    width: 100%;
    height: 100%;
  }
  main #viewer .ar_btn {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 250px;
    background: #82c8c8;
    border-radius: 0.71429rem;
  }
  main #viewer .ar_btn a {
    color: #fff;
    font-size: 1.14286rem;
    padding: 0.71429rem 0.35714rem;
    display: block;
    text-align: center;
    text-decoration: none;
  }
  main .txt {
    display: none;
  }
}

*:focus {
  outline: none;
}

.QR {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 28.57143rem;
}

model-viewer {
  width: 100%;
  height: 100%;
  outline: none;
}

model-viewer:focus {
  outline: none;
}

.txt {
  text-align: center;
  width: 100%;
  position: absolute;
  top: 10.71429rem;
  font-size: 1.14286rem;
}
