@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&display=swap");

/* Video player custom ++ */
.jwplayer {
    width: 100% !important;
    height: 100% !important;
    padding-bottom: 56.25% !important;
}

.volume-mute-btn {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 999;
    background-color: #eee;
    padding: 15px 20px 15px 15px;
    border-radius: 30px;
    cursor: pointer;
}

.volume-mute-btn p {
    margin: 0;
    color: #444;
    font-size: 16px;
    font-weight: 400;
}

.volume-mute-btn i {
    font-size: 24px;
    color: #bb4440;
    vertical-align: text-bottom;
    margin-right: 10px;
}

@media screen and (max-width: 425px) {
    .volume-mute-btn {
        top: 10px;
        left: 10px;
        padding: 8px 15px 10px 10px;
        border-radius: 30px;
    }

    .volume-mute-btn i {
        margin-right: 5px;
    }
}

@media screen and (min-width: 426px) {}

/* Video player custom -- */

.text-right {
    text-align: right
}

.text-center {
    text-align: center
}

.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.d-none {
    display: none
}

.d-block {
    display: inline-block
}

.d-inline {
    display: inline
}

.p-relative {
    position: relative
}

.p-absolute {
    position: absolute
}

.card-box {
    position: relative;
    background: url("../img/dot_bgx.png") #fff1ad; /*#bb4440*/
}

.card-content {
    position: relative;
    overflow: hidden;
    background: url("../img/paper_bg_640x400.jpg") #fff7ec;
    background-size: cover;
    margin: 0 auto;
    -webkit-box-shadow: 0px -5px 20px 20px rgba(255, 184, 184, 0.12);
    box-shadow: 0px -5px 20px 20px rgb(255 184 184 / 12%);
}

@media screen and (max-width: 425px) {
    .card-content {
        max-width: 100%;
        padding: 0;
    }
}

@media screen and (min-width: 426px) {
    .card-content {
        padding: 0 50px 50px;
        max-width: 900px;
    }
}

.card-title {
    color: #fff;
    text-shadow: 0px 0px 2px #fff;
    font-weight: normal;
    letter-spacing: 3px;
    background: url("../img/dot_bg.png") #ba9760
}

@media screen and (max-width: 425px) {
    .card-title {
        margin: 0 -15px 0;
        font-size: 20px;
        padding: 7px
    }
}

@media screen and (min-width: 426px) {
    .card-title {
        padding: 0 50px 50px;
        max-width: 900px;
        margin: 0 -50px 50px;
        padding: 10px 0
    }
}

.section {
    position: relative;
    padding: 65px 0 120px;
    background: url("../img/asanoha-400px.png");
    margin: 0 auto
}

@media screen and (max-width: 768px) {
    .section {
        padding: 10px 0
    }
}

.section h1 {
    color: #a4a4a7;
    margin: 0 0 10px;
    letter-spacing: 2px
}

@media screen and (max-width: 768px) {
    .section h1 {
        font-size: 24px
    }
}

.comments {
    background: url("../img/bg2x.png") #bb4440; /*#2c345d;*/
    color: #444
}

@media screen and (max-width: 768px) {
    .comments {
        padding: 30px 0
    }
}

@media screen and (min-width: 769px) {
    .comments {
        padding: 50px 0 50px
    }
}

.comments main {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #ddd;
    -webkit-box-shadow: 0px 0px 12px 5px rgba(149, 162, 249, 0.2);
    box-shadow: 0px 0px 12px 5px rgba(149, 162, 249, 0.2)
}

@media screen and (max-width: 768px) {
    .comments main {
        max-width: 100%;
        margin: 0 20px 30px;
        padding: 20px;
        border-radius: 15px
    }
}

@media screen and (min-width: 769px) {
    .comments main {
        padding: 50px;
        max-width: 900px;
        margin: 0 auto 50px;
        padding: 50px 80px;
        border-radius: 30px
    }
}

.comments h2 {
    font-weight: 700;
    letter-spacing: .05em
}

@media screen and (max-width: 768px) {
    .comments h2 {
        font-size: 24px;
        margin: 10px 0
    }
}

@media screen and (min-width: 769px) {
    .comments h2 {
        font-size: 30px;
        margin: 10px 0 30px
    }
}

.about-comments {
    max-width: 900px;
    margin: 0 auto 50px;
    padding: 50px 80px
}

@media screen and (max-width: 768px) {
    .about-comments {
        max-width: 100%;
        margin: 0 20px 30px;
        padding: 20px
    }
}

.about-comments h3 {
    font-size: 22px;
    letter-spacing: 1px;
    font-weight: lighter;
    color: #fff
}

@media screen and (max-width: 768px) {
    .about-comments h3 {
        font-size: 18px
    }
}

#card-greeting-1,
#card-greeting-2,
#card-greeting-3,
#card-greeting-4 {
    opacity: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out
}

@media screen and (max-width: 768px) {

    #card-greeting-1,
    #card-greeting-2,
    #card-greeting-3,
    #card-greeting-4 {
        height: 150px
    }

    #card-greeting-1 img,
    #card-greeting-2 img,
    #card-greeting-3 img,
    #card-greeting-4 img {
        width: 95%
    }
}

@media screen and (min-width: 769px) {

    #card-greeting-1,
    #card-greeting-2,
    #card-greeting-3,
    #card-greeting-4 {
        height: 180px
    }
}

#card-greeting-1.visible,
#card-greeting-2.visible,
#card-greeting-3.visible,
#card-greeting-4.visible {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
}

#card-greeting-4 {
    height: 200px
}

@media screen and (max-width: 768px) {
    #card-greeting-4 {
        padding-top: 90px
    }
}

@media screen and (min-width: 769px) {
    #card-greeting-4 {
        padding-top: 100px
    }
}

#card-item-1,
#card-item-2,
#card-item-3,
#card-item-4 {
    opacity: 0.1
}

#card-item-1.visible,
#card-item-2.visible,
#card-item-3.visible,
#card-item-4.visible {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out
}

#card-item-1 {
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px)
}

@media screen and (max-width: 768px) {
    #card-item-1 img {
        width: 250px;
        margin: 0 0 0 -40px
    }
}

@media screen and (min-width: 769px) {
    #card-item-1 {
        height: 200px;
        margin: 0 0 0 -90px
    }
}

#card-item-2 {
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    height: 50px;
    left: 50%;
    margin: -30px 0 0 -280px
}

@media screen and (max-width: 426px) {
    #card-item-2 {
        left: 2px;
        margin: -30px 0 0
    }

    #card-item-2>img {
        width: 25px
    }
}

@media screen and (min-width: 426px) and (max-width: 768px) {
    #card-item-2 {
        margin: -40px 0 0 -345px
    }
}

#card-item-3 {
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px)
}

@media screen and (max-width: 768px) {
    #card-item-3 img {
        width: 150px;
        margin: 0 0 0 -40px
    }
}

@media screen and (min-width: 769px) {
    #card-item-3 {
        height: 50px;
        right: 0;
        margin-top: -70px
    }
}

#card-item-4 {
    width: 100%;
    left: 0;
    bottom: 0
}

@media screen and (max-width: 425px) {
    .cover-l {
        display: none
    }
}

@media screen and (min-width: 426px) {
    .cover-l {
        display: block
    }
}

@media screen and (max-width: 425px) {
    .cover-m {
        display: block
    }
}

@media screen and (min-width: 426px) {
    .cover-m {
        display: none
    }
}

.scroll-down {
    font-family: sans-serif;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 16px;
    color: #444;
    margin: 15px 0 30px
}

@media screen and (max-width: 768px) {
    .scroll-down {
        margin: 10px 0
    }
}

.scroll-down svg {
    width: 30px;
    height: 35px;
    display: block;
    margin: 10px auto;
    fill: #444
}

.scroll-down svg:hover {
    fill: #bd9a5e
}

.scroll-down svg .arrow {
    -webkit-animation: scroll .35s ease-in alternate infinite;
    animation: scroll .35s ease-in alternate infinite
}

@-webkit-keyframes scroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}

@keyframes scroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}

@media screen and (max-width: 768px) {
    .form-item:nth-child(n+2) {
        margin-top: 15px
    }
}

@media screen and (min-width: 769px) {
    .form-item:nth-child(n+2) {
        margin-top: 24px
    }
}

.form label {
    display: block;
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em
}

.form label:after {
    content: "\203B必填";
    margin-left: 10px;
    font-size: 12px;
    font-weight: 400;
    color: #d72232
}

@media only screen and (min-width: 769px) {
    .form-input.small {
        width: 45%
    }
}

.form-text[type=text],
.form textarea.form-text {
    width: 100%;
    padding: 15px;
    font-size: 16px;
    border-radius: 5px;
    border: 1px solid #ddd;
    background: #fff;
    resize: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.form-text[type=text].error,
.form textarea.form-text.error {
    border: 1px solid #d72232
}

.form-copy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 400px;
    margin: 0 auto;
    cursor: pointer
}

.form-copy .form-text[type=text] {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-radius: 5px 0 0 5px;
    border-right: 1px solid #eee
}

.form-copy .form-btn {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 130px;
    flex: 0 0 130px;
    color: #fff;
    background: #999;
    padding: 14px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 0 5px 5px 0;
    letter-spacing: 4px;
    font-weight: 500;
    cursor: pointer
}

#displayErrorArea {
    color: #d72232
}

#displayErrorArea ul {
    list-style: none;
    border-bottom: 4px solid rgba(215, 34, 50, 0.5);
    display: inline-block;
    padding: 0 0 5px;
    margin: 0
}

#displayErrorArea li:before {
    content: "\f06a";
    font-family: Font Awesome\ 5 Free;
    font-weight: 900;
    margin-right: 10px;
    font-size: 20px
}

.refresh-captcha {
    position: relative;
    display: inline-block;
    top: -15px;
    left: 10px;
    cursor: pointer
}

.refresh-captcha i {
    font-size: 30px
}

@media screen and (max-width: 426px) {
    .msg-title {
        padding: 15px
    }
}

.msg-title p {
    font-size: 20px;
    font-weight: 300
}

@media screen and (max-width: 426px) {
    .msg-title p {
        margin: 5px 0 0
    }
}

.msg-box {
    overflow: hidden;
    position: relative;
    background-color: #fff;
    -webkit-box-shadow: 21px 21px 40px 0 rgba(133, 133, 133, 0.12);
    box-shadow: 21px 21px 40px 0 rgba(133, 133, 133, 0.12)
}

.msg-box:nth-child(n+2) {
    margin-top: 20px
}

@media screen and (max-width: 768px) {
    .msg-box {
        margin: 0 20px 20px;
        padding: 40px 40px 10px;
        border-radius: 15px
    }
}

@media screen and (max-width: 376px) {
    .msg-box {
        padding: 30px 25px 10px
    }
}

@media screen and (min-width: 769px) {
    .msg-box {
        max-width: 400px;
        margin: 0 auto;
        border-radius: 20px;
        padding: 30px 40px 15px
    }
}

.msg-list {
    position: relative;
    letter-spacing: .02em
}

@media screen and (min-width: 426px) {
    .msg-list {
        max-width: 900px;
        margin: 0 auto
    }
}

.msg-list.over3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (min-width: 1200px) {
    .msg-list.over3 {
        max-width: 1300px;
        margin: 0 auto
    }
}

.msg-list.over3 .msg-box {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 400px;
    flex: 1 1 400px
}

.msg-share {
    position: absolute;
    right: 28px;
    top: 25px;
    border-radius: 100%;
    color: #4F4F4F;
    background-color: #f7f7f7;
    padding: 4px 9px;
    font-size: 1.1em;
    cursor: pointer;
    width: 35px;
    height: 35px;
    border-radius: 100%
}

.msg-share:hover {
    background-color: #e9e9e9
}

.msg-send {
    font-size: 20px;
    color: #4F4F4F;
    margin: 0 0 15px;
    min-height: 15px
}

.msg-send::before {
    margin-right: 5px
}

.msg-content {
    position: relative;
    font-size: 24px;
    color: #4F4F4F;
    margin: 7px 0 0;
    padding: 20px 15px;
    background-color: rgba(247, 226, 15, 0.2)
}

.msg-content::before {
    content: "“";
    position: absolute;
    font-size: 5rem;
    left: -60px;
    top: -30px;
    font-weight: bolder;
    color: #f7e20f
}

.msg-content-comment {
    font-size: 16px;
    margin: 15px 0;
    color: #4F4F4F
}

.msg-from {
    margin: 0;
    padding-top: 6px;
    color: #a4a4a7
}

.msg-from::before {
    content: "—";
    margin-right: 5px
}

.msg-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 30px 0 0
}

.msg-footer .col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    color: #a4a4a7
}

.msg-footer a {
    cursor: pointer
}

.msg-footer a:hover {
    color: #f7e20f
}

.msg-date {
    margin: 0;
    font-size: 14px
}

.msg .like-btn.checked i {
    content: "\f004";
    color: #d72232
}

.msg .more-comment-box {
    margin: 15px 0 0;
    border-top: 1px solid #ddd
}

.msg .more-comment-box .btn {
    padding-top: 10px;
    letter-spacing: 0.02em;
    color: #a4a4a7;
    cursor: pointer
}

.msg .more-comment-box .btn:hover {
    color: #f7e20f
}

.msg .more-comment-box .item:nth-child(n+2) {
    border-top: 1px solid #ddd;
    margin-top: 10px
}

.msg .more-comment {
    padding: 15px 0
}

.msg .more-comment .msg-footer {
    padding-top: 10px
}

.reply {
    padding: 20px 0 0
}

.reply .form-item:nth-child(n+2) {
    margin-top: 10px
}

.reply .btn-box {
    margin: 15px 0 20px
}

.reply .btn-box .button {
    width: 100%;
    height: 40px;
    border-radius: 5px
}

.popup {
    background: rgba(255, 255, 255, 0.7);
    overflow: hidden;
    position: fixed;
    display: none;
    z-index: 5000;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0
}

.popup>div {
    position: fixed;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    z-index: 5001;
    background: url("../img/dot_bg.png") #fefefe;
    text-align: center;
    border-radius: 30px;
    -webkit-box-shadow: 21px 21px 40px 0 rgba(0, 0, 0, 0.12);
    box-shadow: 21px 21px 40px 0 rgba(0, 0, 0, 0.12)
}

@media screen and (max-width: 768px) {
    .popup>div {
        width: 96%;
        padding: 70px 10px 30px
    }
}

@media screen and (min-width: 769px) {
    .popup>div {
        max-width: 500px;
        width: 70%;
        padding: 70px 50px 20px
    }
}

.popup .close {
    position: absolute;
    font-size: 50px;
    background: transparent;
    border: none;
    cursor: pointer
}

@media screen and (max-width: 768px) {
    .popup .close {
        top: 0px;
        right: 20px
    }
}

@media screen and (min-width: 769px) {
    .popup .close {
        top: 10px;
        right: 30px
    }
}

.popup .share .letter {
    background: url("../img/dot_bg.png") #bb4440;
    border-radius: 100%;
    width: 150px;
    height: 150px;
    font-size: 69px;
    margin: 0 auto;
    color: #fff;
    padding-top: 20px
}

.popup .share h1 {
    letter-spacing: 2px;
    line-height: 30px;
    font-weight: 400;
    margin: 30px 0 5px;
    color: #bb4440
}

.popup .share p {
    font-size: 16px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: 2px;
    margin: 0 0 30px;
    color: #4f4f4f
}

.popup .share .close {
    color: #999
}

.popup .share .close:hover {
    color: rgba(153, 153, 153, 0.7)
}

.popup .social-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 20px
}

.popup .social-media .fb,
.popup .social-media .tg,
.popup .social-media .line {
    margin: 0 20px
}

.popup .welcome {
    position: relative;
    color: #fff;
    background: url("../img/dot_bg.png") #bb4440
}

@media screen and (max-width: 768px) {
    .popup .welcome {
        width: 96%;
        padding: 70px 10px 30px
    }
}

@media screen and (min-width: 769px) {
    .popup .welcome {
        max-width: 500px;
        padding: 70px 30px 30px
    }
}

.popup .welcome .letter {
    background: url("../img/dot_bg.png") #ba9760;
    border-radius: 100%;
    width: 130px;
    height: 130px;
    font-size: 68px;
    margin: 0 auto;
    color: #fff;
    padding-top: 13px
}

.popup .welcome h1 {
    letter-spacing: 2px;
    line-height: 30px;
    font-weight: 400;
    color: #fff;
    margin: 50px 0 10px
}

.popup .welcome h1 .num {
    font-size: 35px;
    line-height: 50px
}

.popup .welcome h2 {
    font-weight: 300;
    letter-spacing: 2px;
    line-height: 30px;
    margin: 0 0 40px
}

.popup .welcome p {
    font-size: 16px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: 2px;
    margin: 0;
    color: rgba(255, 255, 255, 0.7)
}

.popup .welcome .close {
    color: rgba(255, 255, 255, 0.9)
}

.popup .welcome .close:hover {
    color: #fff
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Noto Sans TC', sans-serif
}

.num {
    font-family: 'Roboto', sans-serif
}

html,
body {
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    position: relative
}

.btn-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media screen and (max-width: 768px) {
    .btn-box {
        margin-top: 20px
    }
}

@media screen and (max-width: 768px) {
    .btn-box.full {
        padding: 0 20px
    }
}

.btn-box .button {
    min-width: 300px;
    height: 60px;
    padding: 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    background-color: #d72232;
    border-radius: 999em;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: .1em;
    color: #fff;
    border: none;
    cursor: pointer
}

@media screen and (min-width: 769px) {
    .btn-box .button {
        letter-spacing: .3em
    }
}

@media screen and (max-width: 768px) {
    .btn-box .button {
        height: 50px;
        min-width: auto;
        width: 100%;
        letter-spacing: .3em;
        font-size: 16px;
        font-weight: 400
    }
}

.btn-box .button:hover {
    background-color: rgba(215, 34, 50, 0.9)
}

.btn-box .button span {
    width: 24px;
    height: 24px;
    position: absolute;
    top: 50%;
    right: 25px;
    margin-top: -12px;
    background-color: #fff;
    border-radius: 50%
}

.btn-box .button span:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    top: 50%;
    left: 50%;
    border-top: 2px solid #d72232;
    border-right: 2px solid #d72232;
    -webkit-transform: translate(-60%, -50%) rotate(45deg);
    -ms-transform: translate(-60%, -50%) rotate(45deg);
    transform: translate(-60%, -50%) rotate(45deg)
}

.btn-box.more-btn>.button {
    min-width: 300px;
    height: 60px;
    padding: 0 30px;
    background-color: #2e365f
}

@media screen and (max-width: 768px) {
    .btn-box.more-btn>.button {
        height: 50px;
        min-width: auto;
        margin-bottom: 10px
    }
}

.btn-box.more-btn>.button:hover {
    background-color: rgba(46, 54, 95, 0.9)
}

.fixed-btn {
    z-index: 20
}

.fixed-btn>div {
    position: fixed;
    bottom: 20px;
    right: 30px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #d71b2c;
    cursor: pointer
}

.fixed-btn>div:hover {
    opacity: .95
}

.fixed-btn>div.bgm {
    right: 100px
}

.fixed-btn>div>.icon {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: opacity 0.1s ease;
    -o-transition: opacity 0.1s ease;
    transition: opacity 0.1s ease;
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
    color: #fff;
    font-size: 1.2em
}

.fixed-pop {
    z-index: 30;
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3), background-color 0.25s ease;
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3), background-color 0.25s ease;
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3), background-color 0.25s ease;
    -webkit-box-shadow: 0px 0px 12px 5px rgba(133, 133, 133, 0.12);
    box-shadow: 0px 0px 12px 5px rgba(133, 133, 133, 0.12)
}

.fixed-pop.open {
    width: calc(100% - 50px);
    height: 186px;
    border-radius: 3px;
    background: url("../img/dot_bg.png") #ba9760;
    cursor: default
}

@media screen and (min-width: 769px) {
    .fixed-pop.open {
        width: calc(30% - 50px)
    }
}

.fixed-pop.open>.fixed-pop-link {
    display: block;
    -webkit-transition-delay: 0.25s;
    -o-transition-delay: 0.25s;
    transition-delay: 0.25s;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3)
}

.fixed-pop.open .icon {
    opacity: 0;
    -webkit-transition-delay: 0.01s;
    -o-transition-delay: 0.01s;
    transition-delay: 0.01s;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3)
}

.fixed-pop.open .cancel {
    display: block;
    opacity: 1;
    -webkit-transition-delay: 0.25s;
    -o-transition-delay: 0.25s;
    transition-delay: 0.25s;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3)
}

.fixed-pop.open button {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3)
}

.fixed-pop .cancel {
    display: none;
    opacity: 0;
    position: absolute;
    right: 25px;
    bottom: 18px;
    font-size: 1.3em;
    -webkit-transition-delay: 0.01s;
    -o-transition-delay: 0.01s;
    transition-delay: 0.01s;
    cursor: pointer;
    color: #333
}

.fixed-pop button {
    background: transparent;
    border: transparent;
    color: #333;
    font-size: 18px;
    display: block;
    opacity: 0;
    width: 100%;
    line-height: 60px;
    opacity: 0;
    letter-spacing: 2px;
    font-weight: 300;
    -webkit-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    -o-transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    transition: all 0.35s cubic-bezier(0.91, -0.28, 0.06, 1.3);
    cursor: pointer
}

@media screen and (min-width: 769px) {
    .fixed-pop button {
        font-size: 20px;
        font-weight: normal
    }
}

.fixed-pop-link {
    display: none
}

footer {
    background: url("../img/dot_bg.png") #bb4440
}

@media screen and (max-width: 768px) {
    footer {
        padding-bottom: 70px
    }
}

footer p {
    color: #fff;
    letter-spacing: 1px;
    margin: 0;
    padding: 10px 15px
}

@media screen and (max-width: 768px) {
    footer p {
        font-size: 14px
    }
}