body{
    font-family: Arial, "文泉驛正黑", "WenQuanYi Zen Hei", "儷黑 Pro", "LiHei Pro", "微軟正黑體", "Microsoft JhengHei", "標楷體", DFKai-SB, sans-serif !important;
}

.required:after,.required_field:after{
    content: ' * ';
    color: red;
}

.italic{
    font-style: italic;
}

.bold{
    font-weight: bold;
}

.underline{
    text-decoration: underline;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

.fnone {
    float: none !important;
}

.tc {
    text-align: center;
}

.tl {
    text-align: left;
}

.tr {
    text-align: right;
}

.nobg {
    background: none !important;
}

.vt{
    vertical-align: top;
}

.vm{
    vertical-align: middle;
}

.vb{
    vertical-align: bottom;
}


.margin_top_10{
    margin-top: 10px;
}


.margin_top_20{
    margin-top: 20px;
}

.margin_bottom_10{
    margin-bottom: 10px;
}


.margin_bottom_20{
    margin-bottom: 20px;
}

.width100p{
    width: 100%!important;
}

.datatable tr:hover{
    background-color: #eee;
}

.margin0 {
    margin: 0;
}

.padding0 {
    padding: 0;
}

.error_message, .message {
    color: red;
    font-size: 12px;
}

img {
    max-width: 100%;
    max-height: 100%;
}

.inline {
    display: inline;
}

.inline_block {
    display: inline-block;
}

.datatable td{
    padding: 5px;
}

a:focus, a:hover{
    text-decoration: none;
}

table.dataTable thead .sorting:after, table.dataTable thead .sorting_asc:after, table.dataTable thead .sorting_desc:after, table.dataTable thead .sorting_asc_disabled:after, table.dataTable thead .sorting_desc_disabled:after{
    bottom: 5px !important;
}

.datatable td, .datatable th{
    border: 1px solid #ccc;
    padding: 5px;
}

.datatable th{
    white-space: nowrap;
}


/*.form_label{
    margin-bottom: 10px;
}*/

.nowrap{
    white-space: nowrap;
}

.width1px{
    width: 1px;
}

.pointer {
    cursor: pointer;
}

.checkbox_position_fix{
    position: relative;
    top: 3px;
}

.form_text_padding{
    padding-top: 7px;
}

.language_dropdown li.active a, .language_dropdown li.active a:hover{
    color: #fff !important;
    background-color: #3c8dbc !important;
}

.affix {
    top: 5px;
}

/*************************************************************************************/

#login_company_container .active a{
    color: #fff;
    background-color: #3c8dbc;
}

.clearboth{
    clear: both;
}

.control-label2{
    padding-top: 7px;
    margin-bottom: 0;
}

#general_item_container .rows{
    padding-bottom: 45px;
}

.select2, .select2-dropdown{
    width: 100%;
}

.invoice_item{
    padding-top: 10px;
    margin-bottom: 10px;
    border: 1px #3c8dbc solid;
}

/* loading css */
#loading {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: fixed;
    display: block;
    opacity: 0.7;
    background-color: #000;
    z-index: 990;
    text-align: center;
}
.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 100px;
    height: 100px;
    animation: spin 2s linear infinite;
    position: absolute;
    top: 30%;
    left: 48%;
    z-index: 1000;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* /.loading css */