﻿footer {
    width: 100%;
    display: block;
    position: relative;
    background-color: #005888;
}

.footer-box {
    width: 1300px;
    max-width: 100%;
    display: block;
    margin: 0 auto;
    position: relative;
    font-size: 0;
    box-sizing: border-box;
    padding: 60px 0;
}

.footer-title {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #fff;
    font-family: 'Noto Sans TC';
    font-weight: 700;
    margin-bottom: 20px;
}

.footer-info-box {
    width: 400px;
    display: inline-block;
    vertical-align: top;
}

.footer-info-url-box {
    width: 100%;
    height: 60px;
    display: flex;
    display: -webkit-flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-direction: column;
    flex-wrap: wrap;
}

.footer-info-url02 {
    width: 100%;
    height: 60px;
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.06em;
    color: #ddd;
    font-family: 'Noto Sans TC';
    font-weight: 300;
    transition: all .3s linear;
}

.footer-info-url {
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.06em;
    color: #ddd;
    font-family: 'Noto Sans TC';
    font-weight: 300;
    transition: all .3s linear;
}

.footer-info-url:nth-child(1),
.footer-info-url:nth-child(2) {
    width: 170px;
}

.footer-info-text-box {
    width: 100%;
    display: block;
    margin-top: 20px;
}

.footer-info-text-box>p {
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.06em;
    color: #ddd;
    font-family: 'Noto Sans TC';
    font-weight: 300;
}

.footer-download-box {
    display: inline-block;
    vertical-align: top;
    margin-left: 160px;
}

.footer-download-title {
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #fff;
    font-family: 'Noto Sans TC';
    font-weight: 700;
}

.footer-download-text {
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.06em;
    color: #ddd;
    font-family: 'Noto Sans TC';
    font-weight: 300;
    display: block;
    transition: all .3s linear;
}

.footer-web {
    font-size: 12px;
    line-height: 30px;
    letter-spacing: 0.06em;
    color: #ddd;
    font-family: 'Noto Sans TC';
    font-weight: 300;
    display: block;
}

.footer-web span {
    font-weight: 300;
}

.footer-top-box {
    width: 30px;
    display: block;
    text-align: center;
    cursor: pointer;
    position: absolute;
    bottom: 0;
    right: 0;
}

.footer-top-box p {
    font-size: 12px;
    font-family: 'Noto Sans TC';
    font-weight: 300;
    color: #ddd;
    line-height: 30px;
    letter-spacing: 0.06em;
    transition: all .3s linear;
}

.footer-top-box span {
    width: 1px;
    height: 120px;
    background-color: #90a7b3;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    transition: all .3s linear;
}

.footer-top-box span::before {
    content: '';
    width: 5px;
    height: 1px;
    background-color: #90a7b3;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: top;
    transform: rotateZ(0);
    opacity: 1;
    transition: all .3s linear;
}

.footer-top-box span::after {
    content: '';
    width: 5px;
    height: 1px;
    background-color: #90a7b3;
    position: absolute;
    top: 0;
    right: 0;
    transform-origin: top;
    transform: rotateZ(0);
    opacity: 1;
    transition: all .3s linear;
}


@media only screen and (max-width: 1300px) {
    .footer-box {
        width: 1200px;
    }
}

@media only screen and (max-width: 1200px) {
    .footer-box {
        width: 1000px;
    }
}

@media only screen and (max-width: 1000px) {
    .footer-box {
        width: 750px;
    }

    .footer-download-box {
        margin-left: 80px;
    }
}

@media only screen and (max-width: 768px) {
    .footer-box {
        width: 550px;
    }

    .footer-top-box {
        display: none;
    }

    .footer-info-box {
        width: 350px;
    }
}

@media only screen and (max-width: 550px) {
    .footer-box {
        width: 95vw;
        padding: 20px 0;
    }

    .footer-info-box {
        width: 100%;
    }

    .footer-download-box {
        width: 100%;
        margin-left: 0;
        margin-top: 20px;
    }

    .footer-download-text {
        line-height: 2;
    }

    .footer-web {
        line-height: 1.4;
        margin-top: 10px;
    }

    .footer-web span {
        display: block;
    }
}

@media only screen and (max-width: 400px) {
    .footer-info-url-box {
        height: initial;
        display: block;
    }

    .footer-info-url:nth-child(n) {
        display: block;
        width: 100%;
        font-size: 12px;
        line-height: 2;
    }

    .footer-title {
        font-size: 16px;
        margin-bottom: 10px;
    }

    .footer-info-text-box {
        margin-top: 10px;
    }

    .footer-info-text-box p {
        font-size: 12px;
        line-height: 2;
    }

    .footer-download-title,
    .footer-download-text {
        font-size: 12px;
        line-height: 2;
    }
}



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

    a.footer-info-url:hover,
    .footer-download-text:hover {
        color: #e60012;
    }

    .footer-top-box:hover p {
        color: #e60012;
    }

    .footer-top-box:hover span {
        background-color: #e60012;
        transform: scaleY(0.8);
        transform-origin: top;
    }

    .footer-top-box:hover span::before {
        transform: rotateZ(45deg);
        transform-origin: left;
        width: 15px;
        background-color: #e60012;
    }

    .footer-top-box:hover span::after {
        transform: rotateZ(-45deg);
        transform-origin: right;
        width: 15px;
        background-color: #e60012;
    }
}