/* ==========================================================================
    clear
 ========================================================================== */

.clear,
.clearfix{
    clear: both;
}
a,
a:hover,
a:active,
a:focus,
a:visited{
    text-decoration: none;
    outline: 0;
    outline-offset: 0px;
}
a[href="javascript:void(0)"]{
    cursor: text;
}

/* Remove tap highlight on iOS */
button,
input,
select,
textarea,
a {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

button,
input,
select,
textarea {
    font-size: 100%;
    margin: 0;
}

button,
input {
    line-height: normal;
    outline: 0;
}

button,
select {
    text-transform: none
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    nowhitespace: afterproperty;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

button {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    display: inline-block;
}
textarea.form-control{
    resize: none;
}
figure,
address {
    padding: 0;
    margin: 0;
}

/* ==========================================================================
   html
   ========================================================================== */
html {
    box-sizing: border-box;
    position: relative;
    height: 100%;
    min-height: 100% !important;
    font-size: 100%;
    font-size: 16px;
}
* {
    outline: 0;
    -webkit-font-smoothing: antialiased;
}
*,
*::before,
*::after,
*:before,
*:after{
    box-sizing: inherit;
    margin: 0;
    padding: 0;
}
html,
body{
    width: 100%;
    height:100%;
}
body{
    overflow-x: hidden;
}
.wp{
    overflow: hidden;
}
section{
    background: transparent;
}
body, p, li, a, h1, h2, h3, h4, h5, h6, span, label, input, select, button, tr, th, td, .txt{
    font-family: "Roboto", Arial, Verdana, "微軟正黑體", "Heiti TC", "Microsoft JhengHei";
    letter-spacing: 0px;
    font-size: 15px;
    color: #000;
}
.index .banner h2{
    font-family: "BodoniMT", Arial, Verdana, "微軟正黑體", "Heiti TC", "Microsoft JhengHei";
}
.html img,
.maxpic img {
    max-width: 100%;
}
.maxpic {
    text-align: center;
    margin: 0 0 25px 0;
}
.textHidden{
    clip: rect(1px, 1px, 1px, 1px) !important;
    height: 0px !important;
    overflow: hidden !important;
    position: absolute !important;
    width: 0px !important;
    text-indent: 100%!important;
    white-space: nowrap!important;
}



/* 768 */
@media only screen and (min-width: 48em){
    .container {
        width: 46rem;
        padding: 0 15px;
    }
}

/* 992 (62) */
@media
screen and (min-width: 62em),
screen and (min-width: 64em) {
    .container{
        width: 61rem;
    }
}
/* 1200 */
@media
screen and (min-width: 80em),
screen and (min-width: 75em) {
    .container{
        width: 74rem;
    }
}
/* 1408 */
@media screen and (min-width: 88em) {
    .container{
        width: 87rem;
    }
}
/* 1520 */
@media screen and (min-width: 95em) {
    .container{
        width: 94rem;
    }
}
/* 1600 */
@media screen and (min-width: 100em) {
    .container{
        width: 99rem;
    }
}
@media screen and (max-width: 1599px) {
    html{
        font-size: 90%;
    }
}
@media screen and (max-width: 1439px) {
    html{
        font-size: 80%;
    }
}
@media screen and (max-width: 1199px) {
    html{
        font-size: 75%;
    }
}
@media screen and (max-width: 991px) {
    html{
        font-size: 70%;
    }
}
@media screen and (max-width: 767px) {
    html{
        font-size: 62.5%
    }
    .container,
    .container-fluid{
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media screen and (max-width: 479px) {
    html{
        font-size: 50%
    }
}
.links > .container,
.tabs-area > .container{
    padding: 0 15px;
    margin-left: -2rem;
    margin-right: -2rem;
}

/* ==========================================================================
        圖片
========================================================================== */

.jqimgFill {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: inline-block;
}

.jqimgFill > img,
.jqimgFill-tc > img {
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
    display: block;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    max-height: none;
    max-width: none;
}

.max-sm-size .jqimgFill.sm {
    background: none!important;
    height: auto!important;
    width: 100%!important;
}

.max-sm-size .jqimgFill.sm img {
    width: 100%!important;
    height: auto!important;
    display: block!important;
}

.max-xs-size .jqimgFill.xs {
    background: none!important;
    height: auto!important;
    width: 100%!important;
}

.max-xs-size .jqimgFill.xs img {
    width: 100%!important;
    height: auto!important;
    display: block!important;
}

/* ==========================================================================
    public
 ========================================================================== */

.pd0 {
    padding: 0;
}

.col {
    display: inline-block;
    width: auto;
    vertical-align: middle;
}

hr {
    border-top-style: none;
    border-bottom-width: 0px;
    border-bottom-style: none;
    clear: both;
    border-right-style: none;
    border-left-style: none;
    border-top-width: 0px;
    border-right-width: 0px;
    border-left-width: 0px;
    padding-top: 20px;
    display: block;
    margin-bottom: 25px;
}


/*實線*/

hr.line {
    border-top-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 1px;
    border-left-width: 0px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: solid;
    border-left-style: none;
    border-bottom-color: #CCC;
    margin-top: 10px;
    margin-right: 0px;
    margin-bottom: 10px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}


/*虛線*/

hr.dashed {
    border-top-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 1px;
    border-left-width: 0px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: dashed;
    border-left-style: none;
    border-bottom-color: #CCC;
    margin-top: 10px;
    margin-right: 0px;
    margin-bottom: 10px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}


/* ==========================================================================
   Rows
   ========================================================================== */

.rows,
ul.rows,
ol.rows,
dl.rows {
    margin: 0;
    padding: 0;
    list-style: none
}

.rows .listItem,
ul.rows > li,
ol.rows > li,
dl.rows > dt,
dl.rows > dd {
    margin: 0;
    padding: 0;
    display: block;
    clear: both
}


/* ==========================================================================
   Columns [float]
   ========================================================================== */

.columns,
ul.columns,
ol.columns,
dl.columns {
    margin: 0;
    padding: 0;
    list-style: none;
}

.columns:after,
ul.columns:after,
ol.columns:after,
dl.columns:after {
    content: "";
    clear: both;
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
    visibility: hidden;
}

.columns .list-item,
ul.columns > li,
ol.columns > li,
dl.columns > dt,
dl.columns > dd {
    margin: 0;
    padding: 0;
    float: left;
}


/* ==========================================================================
   Columns [inline]
   ========================================================================== */

.columns.inline,
ul.columns.inline,
ol.columns.inline,
dl.columns.inline {
    letter-spacing: -0.31em;
}

opera-hack:-o-prefocus,
ul.columns.inline,
ol.columns.inline,
dl.columns.inline {
    *word-spacing: -0.43em;
}

.columns.inline .listItem,
ul.columns.inline > li,
ol.columns.inline > li,
dl.columns.inline > dt,
dl.columns.inline > dd {
    float: none;
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal
}

opera-hack:-o-prefocus,
ul.columns.inline > li,
ol.columns.inline > li,
dl.columns.inline > dt dl.columns.inline > dd {
    word-spacing: normal;
    letter-spacing: normal;
}

/* ==========================================================================
   Responsive Data Tables
   ========================================================================== */

.data-table {
  width: 100%;
  border-collapse: collapse;
}
.data-table th {
  background: #eee;
  color: white;
}
.data-table th,
.data-table td {
  padding: 9px 15px;
  border: 1px solid #ccc;
  text-align: left;
}
@media
only screen and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 1024px) {

    .data-table,
    .data-table thead,
    .data-table tbody,
    .data-table th,
    .data-table tr,
    .data-table td {
        display: block;
    }
    .data-table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .data-table tr {
        border: 1px solid #ccc;
    }
    .data-table td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
    }
    .data-table td:before {
        position: absolute;
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
    }
    .data-table td:nth-of-type(1):before { content: "First Name"; }
    .data-table td:nth-of-type(2):before { content: "Last Name"; }
    .data-table td:nth-of-type(3):before { content: "Job Title"; }
    .data-table td:nth-of-type(4):before { content: "Favorite Color"; }
    .data-table td:nth-of-type(5):before { content: "Wars of Trek?"; }
    .data-table td:nth-of-type(6):before { content: "Porn Name"; }
    .data-table td:nth-of-type(7):before { content: "Date of Birth"; }
    .data-table td:nth-of-type(8):before { content: "Dream Vacation City"; }
    .data-table td:nth-of-type(9):before { content: "GPA"; }
    .data-table td:nth-of-type(10):before { content: "Arbitrary Data"; }
}

.table{
    display: table;
}
.thead{
    display: table-header-group;
}
.tbody{
    display: table-row-group;
}
.tr{
    display: table-row;
}
.td,
.th{
    display: table-cell;
    float: none;
}

/* ==========================================================================
    文字
========================================================================== */

a:hover {
    text-decoration: none;
}

a {
    color: #535353;
    cursor: pointer;
}

ul{
    margin-bottom: 0;
}

ul.disc {
    list-style-type: disc;
}
ul.circle {
    list-style-type: circle;
}
ul.square {
    list-style-type: square;
}

ul.upper {
    list-style-type: upper-alpha;
}
ul.lower{
    list-style-type: lower;
}
ul.decimal{
    list-style-type: decimal;
}

time {
    font-size: 10px;
    color: #999;
    margin: 0;
    padding: 0;
}

address {
    font-style: normal;
    font-weight: normal;
}

.more {
    font-family: Verdana, sans-serif;
}

/*備註文字*/

.notes {
    color: #999;
    font-size: 12px;
}

.num {
    font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, serif;
}


/*自動100%撐開*/

.auto {
    overflow: hidden;
    zoom: 1;
}

.auto .left {
    float: left;
}

.auto .right {
    overflow: hidden;
    zoom: 1;
}


/*穿透*/

.pointer {
    pointer-events: none;
}


/*圓角*/

.radius {
    border-radius: 5px;
}


/*文字陰影*/

.text-shadow {
    text-shadow: 1px 1px 2px #777;
}

/*區塊陰影*/

.box-shadow {
    box-shadow: 0px 0px 5px #E3E3E3;
}

/*手指效果*/

.cursor {
    cursor: pointer;
}

/*3角型*/

[class^="caret-"]:after,
[class*="caret-"]:after {
    display: inline-block;
    margin-left: 10px;
    content: '';
    border-width: 4px;
    border-color: transparent;
    border-style: solid;
}

.caret-t:after {
    border-top-width: 0;
    border-bottom-color: #000000;
}

.caret-b:after {
    border-bottom-width: 0;
    border-top-color: #000000;
}

.caret-r:after {
    border-right-width: 0;
    border-left-color: #000000;
}

.caret-l:after {
    border-left-width: 0;
    border-right-color: #000000;
}

/*顏色*/

.rgba {
    background-color: rgb(143, 83, 156);
    filter: progid: DXImageTransform.Microsoft.Alpha(opacity=0);
    background-color: rgba(143, 83, 156, 0);
}

/*去除div無物件的區塊不影響階層*/

.pointer-events {
    pointer-events: none;
    /*外圍物件*/
    pointer-events: auto;
    /*外圍物件*/
}

/*ie9以上支援*/

:root .root {}