#ptGridContainer {
    opacity: 0;
    margin: 20px auto 0;
    padding-bottom: 40px;
}
.grid-container {
    position: relative;
    overflow: hidden;
    text-align: center;
}
.pt-col {background: #FFF;}
.grid-inner-container {
    float: left;
    width: 100%;
}
.pt-left-container { /* 左側會被固定的欄位 */
    border-left: 1px solid #E0E0E0;
    border-right: 1px solid #E0E0E0; 
}
.pt-right-container { /* 右側整體內容 - (外)容器 */
    overflow: auto;
}
.table-hori-row {
    width: 100%;
    overflow: hidden;
}

.pt-left-container .pt-col { /* 左側欄 */
    width: 100%;
    background: #f0f0f0;
}
.fixed-col { /* 房價/房間欄位 */
    border-top: 1px solid #E0E0E0;
}
.table-right-header { /* 右側表頭 */
    width: 100%;
    overflow: hidden;
}
.right-header-col {
    float: left;
}
.table-right-header .pt-col { /* 右側表頭-房型欄位 */
    border-top: 1px solid #E0E0E0;
    background: #f0f0f0;
}
.table-right-header .cnt-col { /* 右側表頭-人數欄位 */
    background: #fafafa;
} 
.table-hori-row .pt-col { /* 右側每一個欄位 */
    float: left;
}
.pt-col span, .cnt-col span {
    position: absolute;
    display: block;
    width: 100%;
    margin: auto;
    padding: 0 4px;
    top: 50%;
    left: 50%;
    transform: -ms-translate(-50%, -50%);
    transform: -webkit-translate(-50%, -50%);
    transform: translate(-50%, -50%);
    line-height: 22px;
}
.arr-box { /* 手機裝置才會出現的箭頭 */
    position: absolute;
    width: 100%;
    top: 45%;
    padding: 6px;
}
.rr-prev { float: left; }
.rr-next { float: right; }
.rr-prev, .rr-next {
    position: relative;
    width: 48px;
    height: 48px;
    line-height: 48px;
    background: rgba(255,255,255,0.85);
    border-radius: 50%;
    border: 1px solid #e0e0e0;
    z-index: 1000;
}
.rr-prev.op0, .rr-next.op0 {
    opacity: 0;
}
.room-caro-arr { /* 手機裝置才會出現的箭頭 */
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border: 9px solid transparent;
}
.rr-next .room-caro-arr {
    right: 8px;
    border-left-color: #555;
}
.rr-prev .room-caro-arr {
    left: 8px;
    border-right-color: #555;
}
@media screen and (min-width: 961px) {
    #ptGridContainer {
        width: 96%;
        max-width: 1140px;
    }
}
@media screen and (min-width: 768px) {
    .cont-sec-capt.pt-40 {
        padding-top: 40px;
    }
}
@media screen and (max-width: 960px) {
    #ptGridContainer {
        width: 90%;
    }
}
@media screen and (min-width: 415px) {
    .pt-col, .cnt-col { /*每一個欄位*/
        position: relative;
        min-height: 72px;
        border-right: 1px solid #E0E0E0;
        border-bottom: 1px solid #E0E0E0;
    }
}
@media screen and (max-width: 414px) {
    .pt-left-container { /* 左側會被固定的欄位 */
        width: 38%;
    }
    .pt-right-container { /* 右側整體內容 - (外)容器 */
        width: 62%;
        overflow: auto;
        /* border-right: 1px solid #E0E0E0; */
    }
    .table-inner-container { /* 右側整體內容 - (內)容器 */
        width: 900px;
    }
    .table-hori-row .pt-col {
        width: 180px;
    }
    .pt-col, .cnt-col { /*每一個欄位*/
        position: relative;
        min-height: 80px;
        border-right: 1px solid #E0E0E0;
        border-bottom: 1px solid #E0E0E0;
        overflow: hidden;
    }
    .pt-col span, .cnt-col span {
        position: absolute;
        margin: auto;
        padding: 0 4px;
        line-height: 22px;
        z-index: 10;
    }
    .pt-left-container .pt-col.active {
        overflow: visible;
    }
    .pt-left-container .pt-col.active span {
        border-top: 1px solid #E0E0E0;
        border-bottom: 1px solid #E0E0E0;
        background: #f0f0f0;
        z-index: 100;
    }
}