﻿.store_location-box{
    width: 100%;
    display: block;
    position: relative;
    font-size: 0;
    overflow: hidden;
}
#store-list-ajax .noInformation{
    font-size:15px;color:#fff
}
/*<------ 以下為 地圖 css ------>*/
.store_location-map-box{
    width: calc(100% - 320px);
    height: 830px;
    display: block;
}
/*<------ 以下為 公司資訊 css ------>*/
.store_location-info-box{
    width: 400px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.9);
    box-sizing: border-box;
    padding: 60px 40px;
    z-index: 2;
}
.store_location-info-title{
    font-size: 32px;
    font-family: 'Times New Roman';
    color: #fff;
    letter-spacing: 1px;
    margin-bottom: 20px;
}
.store_location-info{
    font-size: 14px;
    font-family: 'arial';
    color: #fff;
    margin-bottom: 15px;
}
.store_location-info a{
    transition: all .3s linear;
    word-break:break-all;
}
.store_location-info i{
    width: 14px;
    height: 14px;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
}
.store_location-info span{
    width: calc(100% - 23px);
    display: inline-block;
    vertical-align: middle;
}
/*<------ 以下為 選擇篩選 css ------>*/
.store_location-select-arrow{
    display: none;
    font-size: 30px;
    color: #661118;
    position: fixed;
    right: 0;
    bottom:  60px;
    background-color: rgba(255,255,255,0.8);
    border: 1px solid #f1f1f1;
    transition: all .3s linear;
    cursor: pointer;
    line-height: 1;
}
.store_location-select-arrow-left i,
.store_location-select-arrow-right i{
    vertical-align: middle;
}
.store_location-select-arrow-left span,
.store_location-select-arrow-right span{
    font-size: 14px;
    vertical-align: middle;
    margin: 0 5px;
    font-weight: bold;
    font-family: 'arial';
}
.store_location-select-box{
    width: 320px;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background-color: rgba(102,17,24,0.9);
    box-sizing: border-box;
    padding: 0 20px;
    transition: all .3s linear; 
    z-index: 5;
}
.store_location-select-title{
    font-size: 32px;
    color: #fff;
    font-family: 'arial';
}
.store_location-select-class{
    margin-bottom: 10px;
    position: relative;
}
.store_location-select-name{
    font-size: 16px;
    font-family: 'arial';
    color: #fff;
    letter-spacing: 1px;
}
.store_location-select-class-list{
    width: 280px;
    height: 30px;    
    background-color: #fff;
    border-radius: 5px;
    font-size: 14px;
    letter-spacing: 1px;
    display: block;
    line-height: 30px;
    position: relative;
    padding: 0 5px;
    padding-right: 30px;
    box-sizing: border-box;
    font-family: 'arial';
    color: #661118;
    cursor: pointer;
}
.store_location-select-class select { 
    -webkit-appearance: none; /*Chrome*/
    -moz-appearance: none; /*FF*/
    appearance: none;/*CSS3*/
}

.store_location-select-class select::-ms-expand {
    display: none; /*IE*/
}
.store_location-select-class:after {
    content: '';
    width: 0px;
    height: 0px;
    margin: 0 auto;
    border-right: 4px solid transparent;
    border-top: 8px solid #661118;
    border-left: 4px solid transparent;
    display: block;
    position: absolute;
    bottom: calc(25% - 3px);
    right: 4%;
    box-sizing: border-box;
}
.store_location-select-address-box{
    position: relative;
    margin-top: 30px;
    box-sizing: border-box;
    padding-top: 30px;
}
.store_location-select{
    width: 100%;
    height: 100%
}
.store_location-select-border-a{
    overflow: auto;
    max-height: calc(100vh - 495px);
}

.store_location-select-border-box{
    height: 1px;
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
}
.store_location-select-border-box:after {
    content: "normal";
    display: block;
    height: 100%;
    font-size: 0;
    border-top-style: dashed;
    border-top-width: 4px;
    border-top-color: #fff;
}
.store_location-select-address{
    font-size: 14px;
    font-family: 'arial';
    color: #fff;
    margin-bottom: 10px;
    display: block;
}
.store_location-select-address span{
    cursor: pointer;
    position: relative;
}

.store_location-select-address span:before{
    content: '';
    width: 0%;
    box-sizing: border-box;

    height: 1px;
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    background-color: #fff;

    transition: all .3s linear;
}

/*<----------hover---------->*/
.store_location-info-url a:hover,
.store_location-info-tel a:hover{
    color: #d0011b;
}
.store_location-select-address span:hover:before{
    width: 100%;
}
.store_location-select-address:hover {
    color: #fff;
}


@media only screen and (max-width: 1000px){
    .store_location-map-box{
        width: 100%;
    }
    .store_location-select-border-a{
        max-height: calc(100vh - 454px)
    }
    .store_location-box{
        padding-top: 63px;
    }
    .store_location-select-box{
        right: -320px;
        position: fixed;
        top: 63px;
        height: calc(100vh - 63px);
    }
    .store_location-select-arrow{
        display: block;
    }
    .store_location-select-arrow-right{
        display: none;
    }
    .store_location-select-arrow-left.active{
        display: none;
    }
    .store_location-select-arrow-right.active{
        display: block;
    }
    .store_location-select-box.active{
        right: 0;
        z-index: 7;
    }
    .store_location-info-box{
        width: 100%;
        position: static;
        padding: 10px 20px;
    }
    .store_location-select-arrow.active{
        left: inherit;
        right: 20px;
        color: #fff;
        bottom: inherit;
        top: 52px;
        background-color: transparent;
        border: none;
    }
}
@media only screen and (max-width: 800px){
    .store_location-box{
        padding-top: 48px;
    }
    .store_location-select-box{
        top: 47px;
        height: calc(100vh - 47px);
    }
}
@media only screen and (max-width: 600px){
    .store_location-info-title{
        font-size: 28px;
        margin-bottom: 10px;
    }
    .store_location-info{
        margin-bottom: 5px;
    }
    .store_location-map-box{
        height: 730px;
    }
    .store_location-select-title{
        font-size: 28px;
    }
    .store_location-select-name{
        font-size: 14px;
    }
    .store_location-select-class-list{
        font-size: 12px;
    }
    .store_location-select-class{
        margin-bottom: 5px;
    }
    .store_location-select-address-box{
        padding-top: 15px;
        margin-top: 15px;
    }
}
@media only screen and (max-width: 400px){

    .store_location-info-title{
        font-size: 24px;
    }
    .store_location-info-box{
        padding: 10px;
    }
}

/*animation*/
/*<-------------動畫------------->*/

@keyframes store_location_info {
    0%{
        left: -100%;
    }
    to {
        left: 0;
    }
}
@keyframes store_location_select {
    0%{
        right: -100%;
    }
    to {
        right: 0;
    }
}
@media only screen and (min-width: 1001px){
    .store_location-info-box{
        animation: store_location_info .8s ease 0s 1 both;
    }
    .store_location-select-box{
        animation: store_location_select .8s ease 0s 1 both;
    }
}