@charset "utf-8";

*,
:after,
:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
svg,
img {
  display: block;
  border: 0;
  page-break-inside: avoid;
  vertical-align: bottom;
}
span {
  display: inline-block;
}
select {
  outline: none;
}
input::-ms-clear {
  display: none !important;
}

input[type="text"],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.noclick {
  pointer-events: none;
}
body {
  width: 100vw;
  height: 100vh;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
section {
  position: absolute;
  top: 0;
  left: 0;
  width: 1080px;
  height: 100%;
}
#canvas-container {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
}
.down {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  width: 1080px;
  height: 100%;
}
.down img {
  margin-top: -200px;
}
.bg {
  position: absolute;
  bottom: -320px;
  width: 1080px;
}
.mid_shot {
  position: absolute;
  z-index: 1;
  bottom: -534px;
  width: 1080px;
}
.near_shot {
  position: absolute;
  z-index: 2;
  bottom: -300px;
  width: 1080px;
}
.near_shot .left {
  display: flex;
  align-items: flex-end;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48%;
  height: 300px;
  background-image: url(../img/man.gif);
  background-repeat: no-repeat;
  background-size: auto 224px;
  background-position: top 16px left 80px;
}
.near_shot .right {
  display: flex;
  align-items: flex-end;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 48%;
  height: 300px;
  background-image: url(../img/woman.gif);
  background-repeat: no-repeat;
  background-size: auto 204px;
  background-position: top 16px  right 80px;
}
.whale {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  width: 1000px;
}
.cloud {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  width: 1080px;
}
.lamp_main {
  position: absolute;
  top: 160%;
  width: 1080px;
}
.lamp {
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 2;
  background-image: url(../img/lamp_b.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.lamps {
  position: absolute;
  z-index: 2;
  top: 70%;
  left: 0;
  width: 1080px;
  height: 200px;
}
.title {
  display: flex;
  justify-content: center;
  position: absolute;
  z-index: 9;
  top: 400px;
  left: 0;
  width: 1080px;
}
.title #title {
  display: none;
}
.info {
  display: flex;
  justify-content: center;
  position: absolute;
  z-index: 9;
  top: 800px;
  left: 0;
  width: 1080px;
}
.info #info {
  display: none;
}
.info_text {
  display: none;
  position: absolute;
  z-index: 99;
  top: 0;
  left: 0;
  width: 1080px;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(40px);
}
.info_text .info_close {
  position: fixed;
  top: 40px;
  right: 40px;
}
.info_text .info_content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  border: 12px solid #fff;
}
.info_text #con {
  display: none;
  align-items: center;
  background: #EEE;
  margin: 2px;
  font-size: 32px;
  color: #666;
  padding: 16px;
}
.info_text #con #empty {
  padding: 8px 16px;
  background: #FFF;
  border: 1px solid rgba(0, 0, 0, 0.4);
  border-radius: 8px;
  font-size: 32px;
}
.info_text #rest {
  font-size: 26px;
  color: rgba(0, 0, 0, 0.7);
}
.info_text #btText {
  overflow: hidden;
  margin: 2px;
  padding: 48px;
  font-size: 64px;
  color: #FFF;
  text-align: center;
}
.info_text .btTexta {
  background: #FFF;
  color: #666 !important;
}
.info_text #wishText {
  height: 20em;
  overflow: hidden;
  margin: 2px;
  padding: 0 48px;
  font-size: 48px;
  line-height: 2em;
  text-align: left;
  color: #FFF;
  text-align: justify;
}
.info_text .wishTexta {
  background: #FFF;
  color: #666 !important;
}
.info_text #qmText {
  overflow: hidden;
  padding: 48px;
  margin: 2px;
  font-size: 48px;
  text-align: right;
  color: #FFF;
}
.info_text .qmTexta {
  background: #FFF;
  color: #666 !important;
}
.info_text #btn_edit {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.info_text #btn_save {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
}
.btn_help {
  position: absolute;
  z-index: 9;
  top: 40px;
  right: 40px;
}
.help_text {
  display: none;
  position: absolute;
  z-index: 99;
  width: 1080px;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(40px);
}
.help_text .close {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.btn_close {
  position: absolute;
  top: 40px;
  right: 40px;
}
.btn_sound_o {
  position: absolute;
  z-index: 9;
  top: 160px;
  right: 40px;
}
.btn_sound {
  display: none;
  position: absolute;
  z-index: 9;
  top: 160px;
  right: 40px;
}
.load {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 999;
  top: 0;
  left: 0;
  width: 1080px;
  height: 100%;
  background-color: #0D1628;
  color: #FF9F25;
  font-size: 24px;
}
/**闪烁动画 //**/
.an_flash {
  animation: flash 2s linear infinite;
}
@keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.1;
  }
  100% {
    opacity: 1;
  }
}
/**旋转动画 //**/
.an_rotate {
  animation: rotate 1s linear infinite;
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.shake {
  animation: icon-bounce 4s infinite;
}
.shake_2 {
  animation: icon-bounce 6s infinite;
}
.shake_3 {
  animation: icon-bounce 8s infinite;
}
@keyframes icon-bounce {
  0%,
  100% {
    margin-top: 15px;
  }
  50% {
    margin-top: -15px;
  }
}

@media screen and (min-width: 1020px) {
  #wide {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: #050A10;
  }
  #wide span {
    display: inline-block;
    width: 800px;
    padding: 20px;
    background: #FFF;
    color: #333;
    font-size: 18px;
    line-height: 34px;
    text-align: left;
  }
}
