html,
body {
    position: relative;
    height: 100%;
}


body {
    font-family: "Microsoft YaHei","微軟正黑體",Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    /* color: #000; */
    margin: 0;
    padding: 0;
}
/* img {
    pointer-events: none;
} */
button,.btn{
    color: #444444;
    width: 50%;
    padding: 2.5vw 0;
    border-radius: 10vh;
    background-color: rgba(255, 255, 255, 1);
    text-align: center;
    font-size: 5vw;
    font-weight: bolder;
    letter-spacing: 1.5px;
    bottom: 5%;
}
section{
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#photoOpDefault{
    background-image: url('../images/photo_op_default.png');
    background-size: 100%;
    width: 100%;
    height: 100%;
    background-position: center;
    z-index: 999;
    position: absolute;
}
.downloadNotice{
    color: rgba(255, 243, 181, .85);
    text-align: center;
    font-size: 6vw;
    margin: 1.5vh auto 3vh;
}
#pageReload{
    display: none;
}
.requestCameraGuide{
    padding: 8vh 3vh;
    line-height: 1.3em;
    font-weight: bold;
}
.requestCameraGuide img{
    width: 100%;
    margin: 2vh auto 1vh;
}
.requestCameraGuide p:first-child{
    font-size: 5vw;
    text-align: center;
}
.requestCameraGuide p{
    font-size: 4.3vw;
    text-align: left;
}
.smallText{
    font-size: 3.5vw;
}
.requestCameraGuide hr{
    border-top: 1px solid #444;
    border-bottom: none;
}
.btnButtom{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 3%;
    margin: auto;
    @media (min-width: 768px) and (max-width: 979px) {
        bottom: 20vh;
    }
}
#wrapBtn{
    /* bottom: 5%; */
    border: 3px solid;
}
.btnCloseCapture{
    margin: 1vh auto;
    width: 80%;
    vertical-align: middle;
}
button.btnPhotoCtrl{
    width: 90%;
    margin: 0 5%;
    display: inline-block;
    vertical-align: middle;
    display: -webkit-inline-box;
    -webkit-box-pack: center;
    -webkit-box-align: center;
}
.btnCloseCapture a {
    width: 30%;
    height: auto;
    vertical-align: middle;
    display: -webkit-inline-box;
    -webkit-box-pack: center;
    -webkit-box-align: center;
}
.btnCloseCapture a img {
    width: 64px;
    height: 64px;
    margin: 0 auto;
    display: block;
}
.btnDownload{
    position: absolute;
    left: 0;
    right: 0;
    margin: 3vh auto;
}
.requestBrowser,.requestCamera{
    display: none;
}
.requestCamera{
    overflow: scroll;
}
.requestBrowser{
    padding: 8vh 0;
}
.userGuide{
    width: 100%;
    height: 100%;
    /* background-image: url(./images/松菸-活動頁.png);
    background-repeat: no-repeat;
    background-position: left top, right bottom, center center;
    background-attachment: fixed;
    background-position: center; 
    background-size: cover;  */
    /* background: rgb(255,243,181); /* Old browsers */
    /* background: -moz-linear-gradient(top,  rgba(255,243,181,1) 20%, rgba(216,23,59,1) 100%); FF3.6-15 */
    /* background: -webkit-linear-gradient(top,  rgba(255,243,181,1) 20%,rgba(216,23,59,1) 100%); Chrome10-25,Safari5.1-6 */
    /* background: linear-gradient(to bottom,  rgba(255,243,181,1) 20%,rgba(216,23,59,1) 100%); W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    /* filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff3b5', endColorstr='#d8173b',GradientType=0 ); IE6-9 */ 
    text-align: center;
    font-size: 5vw;
    position: relative;
    z-index: 12;
}
.show{
    display: block;
}
.wrap{
    width: 100%;
    height: 100%;
    /* background-image: url(./images/alert.jpg);  */
    /* background-repeat: no-repeat; */
    background-size: 100% 100%; 
    /* background-size: cover;  */
    /* text-shadow: 0 0 1vw #fff; */
    text-align: center;
    font-size: 5.5vw;
    position: relative;
    z-index: 10;
    font-weight: bolder;
    letter-spacing: 1.5px;
}
.wrap img{
    width: 100%;
    margin: 0 auto;
}
.event-boyyom{
    width: 100%;
    display: block;
    position: absolute;
    bottom: -5px;
}
.event-boyyom img{
    width: 100%;
    margin: auto;
}
img.tyLogo {
    display: block;
    margin: auto;
    width: 50%;
    position: absolute;
    left: 0;
    right: 0;
    top: 2vw;
}
img.tyLogoP1 {
    display: block;
    margin: auto;
    width: 45%;
    position: absolute;
    left: 0vw;
    top: 2vw;
}
img.bottom {
    width: 45%;
    position: absolute;
    bottom: 10vh;
    left: 3vh;
}
.photoframeCanvas{
    width: 100%;
    height: 100%;
    z-index: -1;
}

.locationDiagram{
    position: absolute;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    z-index: 10;
}
.scanImg{ 
    width: 100%;
    height: 100%;
}

.textMessage{
    position: absolute; 
    width: 100%;
    padding: 5% 0;
    background-color: #000;
    opacity: 70%;
    color:white;
    text-align: center;
    font-size: 30px;
    z-index: 10;
}
#store-link{
    display: block;
    width: 100%;
}
#openCamera{
    z-index: 9;
}
.loadingBlock,.requestCamera{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
}
.containerBlock{
    width: 40%;
    margin: 6vh auto;
    position: relative;
}
.notSupportText{
    font-size: 5.5vw;
    margin: 0vw auto 0vw;
}
.suggestText{
    line-height: 7vw;
    font-size: 5.5vw;
    padding: 2% 0;
}
.suggestImg{
    width: 10%;
    /* padding: 1% 0; */
}
.unableToExperienceText{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 25vh;
    margin: auto;
    line-height: 9vw;
    font-size: 8vw;
}
.fandoraLOGO{
    width: 50%;
    margin: 8vh auto 2vh;
}
.eventTitle{
    width: 80%;
    margin: 8vh auto 2vh;
    font-size: 3.5vh;
}
.fandoraLOGO img{
    width: 100%;
}
.arplanetPowered{
    width: 80%;
    margin: auto;
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    color: #fff;
}
.arplanetPowered img{
    width: 30%;
    vertical-align: middle;
}

.swiper-container {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: transparent;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.show-photo {
    display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    /* padding: 5%; */
    z-index: 99;
    background-color: rgba(0, 0, 0, .7);
    overflow: hidden;
    top: 0;
}
@media (min-width: 768px)  {
    .show-photo {
        width:100%;
        height: 100%;
        padding: 0;
    }
}

.show-photo img {
    width: 75%;
    height: auto;
    margin: auto;
    display: block;
    
}
@media (min-width: 768px)  {
    .show-photo img {
        height:65%;
    }
}


#outputVideo {
    width: 75%;
    height: auto;
    margin: auto;
    display: block;
    z-index: -5;
}

.notice{
    color: #fff;
    width: 80%;
    margin: 1vh auto;
    font-size: 5vw;
    text-align: center;
}

video,
canvas {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}
#threeDcontainer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

video {
    right: 0;
    top: 0;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    width: 100%;
}

canvas {
    z-index: 1;
}

.photoframe-block {
    position: absolute;
    top: 0;
    background-color: transparent;
    width: 100%;
    height: 100%;
    z-index: 4;
}

.photoframe {
    top: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: transparent;
    background-position: center;
}

.photoframeImgBk{
    background-size: 150%;
    width: 100%;
    height: 100%;
    background-position: center 40%;
    display: none;
}

.photoframe-1 {
    background-image: url("../images/static/static01.png");
    background-size: 150%;
    width: 100%;
    height: 100%;
    background-position: center 40%;
}

.photoframe-2 {
    background-image: url("../images/animation/1/01.png");
    background-size: 150%;
    width: 100%;
    height: 100%;
    background-position: center center;
}

.photoframe-3 {
    background-image: url("../images/animation/2/01.png");
    background-size: 150%;
    width: 100%;
    height: 100%;
    background-position: center center;
}

.photoframe-4 {
    background-image: url("../images/animation/3/01.png");
    background-size: 150%;
    width: 100%;
    height: 100%;
    background-position: center center;
}

footer {
    width: 100%;
    height: 10%;
    position: absolute;
    z-index: 4;
    bottom: 1%;
    text-align: center;
}

footer img {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    height: 95%;
    display: inline-block;
    line-height: 10%;
    margin: 0 10%;
}

footer.footer-1 {
    height: 15%;
    bottom: 3%;
}

.audioBtn{
    width: 30%;
}

footer.footer-1 img{
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

footer.footer-1 img#playAudio {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    position: absolute;
    right: 5%;
    height: 50%;
    top: 15%;
    padding: 5%;
    webkit-filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.7));
    filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.9));
}

footer.footer-1 .dot-block,
footer.footer-1 img#make {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}

footer.footer-1 img#make,footer.footer-1 img.recorderIcon {
    height: 75%;
    top: 25%;
    webkit-filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.7));
    filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.9));
}

footer.footer-1 img.recorderIcon {
    position: absolute;
    left: 10%;
    top: 40%;
    margin: 0 10%;
    height: 50%;
}
#RecorderEnd{
    display: none;
}

footer.footer-1 .dot-block .swiper-pagination-bullet {
    background-color: #FFF;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    margin: 0 2px;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    -webkit-transform: scale(.88);
    -ms-transform: scale(.88);
    transform: scale(.88);
    opacity: .8;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    -webkit-transform: scale(.66);
    -ms-transform: scale(.66);
    transform: scale(.66);
    opacity: .6;
}

iframe {
    border: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 10;
}

/* iPhone X */
@media only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) {
    /* .photoframe {
        background-size: 130% 100%;
    } */
}

/* Samsung 9 & 9+ */
@media (min-width: 680px) and (min-height: 1400px) {
    /* .photoframe {
        background-size: 130% 100%;
    } */
}


@media (max-width: 320px) {
    button.btnPhotoCtrl {
        width: 90%;
    }
}

@media (min-width: 600px) and (max-width: 1023px) {
    .btnCloseCapture a img {
        width: 10vh;
        height: 10vh;
    }
}


@media (min-width: 768px) and (max-width: 1023px) {
    .btnCloseCapture a img {
        width: 10vh;
        height: 10vh;
    }
}
@media (min-width: 1024px) {
    .btnCloseCapture a img {
        width: 12vh;
        height: 12vh;
    }
}