﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+TC:wght@100;200;300;400;500;600;700;800;900&display=swap');

:root {
    --main-color: #002551;
    --second-color: #0049a0;
    --font-style: 'Noto Sans TC', sans-serif;
    --font-second-style: 'Lato', sans-serif
}

.row>* {
    padding: 0;
}

body {
    font-family:  'Lato', sans-serif, 'Noto Sans TC', sans-serif;
}

body >*{
    box-sizing: border-box;
}

ul {
    list-style: none;
    padding: 0px;
}

a:hover {
    color: #002551;
}

.container {
    max-width: 1400px;
    margin: 0 auto;
}

.ellipsis {
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.ellipsis.rows-2{
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
} 

.side-warp {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    min-height: 100vh;
    background: #fff;
    z-index: 1;
    position: fixed;
    width: 30%;
    gap: 24px;
    padding: 0 3vw;
}

.side-warp img {
    width: 100%;
}

ul.info {
    padding-left: 18px;
    border-left: 3px solid#0049a0;
}

.primary-text {
    color:#0049a0;
} 

ul.info li ~ li{
    margin-top: 16px;
}

.main-bg {
    position: relative;
    height: 100%;
    min-height: 100vh;
    /* display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; */
    background: url("../images/all/index-bg.jpg")no-repeat right  top;
    background-size: cover;
    margin: 0 0 0 auto;
    width: 70%;
}

.login-box {
    background: rgba(255,255,255,0.9);
    box-shadow: 8px 8px 0px 0px rgba(0,37,81,0.7);
    width: 560px;
    height: auto;
    padding: 55px 8%  30px;
    position: absolute;
    top: 20%;
    right: 15%;
}

.login-box:before {
    content: '';
    display: block;
    width: 20%;
    height: 12px;
    background-color: #002551;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.login-form {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.login-form .tit {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}

.form-horizontal {
    display: flex;
    flex-direction: column;
}

.form-horizontal .form-control {
    border-radius: 0;
    padding: 2px 8px;
}

.form-horizontal .form-label {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 5px;
    color: #002551;
}

.login-btn a {
    display: block;
    width: 100%;
    background-color: #002551;
    color: #fff;
    text-align: center;
    padding: 4px 0;
    transition: .3;
}

.login-btn a:hover {
    background-color:#0049a0;
}

.login-tip {
    color: #e44545;
    font-size: 18px;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 0;
}

body.case .header {
    background: url(../images/all/page-banner.jpg)no-repeat center;
    background-size: cover;
    padding: 60px 0;
}
body.case.show .header {
    background: url(../images/all/page-banner2.jpg)no-repeat center;
    background-size: cover;
    padding: 60px 0;
}

body.case  .header_ex {
    display: flex;
    justify-content: center;
    align-items: center;
}

body.case  .header_ex .title {
    background-color: rgba(255,255,255,0.8);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1% 15% ;
}

body.case  .header_ex .title h2 {
    font-size: 28px;
    letter-spacing: 2px;
    margin: 0;
    font-weight: bold;
    color: #002551;
}
body.case  .header_ex .title img {
    max-width: 220px;
}

.inquire {
    border: 1px solid #002551;
    padding: 0px 56px 36px;
    margin-top: 80px;
}

.inquire h4 {
    font-size: 24px;
    font-weight: bold;
    color: #002551;
}

.inquire .warp {
    border-bottom: 1px solid #e4e4e4;
    padding-bottom: 40px;
    position: relative;
    padding-top: 20px;
}
.inquire .warp:before {
    display: block;
    content: "";
    width: 50px;
    height: 8px;
    background-color: #002551;
    position: absolute;
    top: -4px;
    left: 0;
}

.inquire .form-box {
    display: flex;
    gap: 32px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.inquire .form-box .form-sec {
    display: flex;
    gap: 8px;
    align-items: center;
}

.inquire .form-box .form-sec.checklist label > input {
    width: 490px;
}


.inquire .form-box .form-sec label {
    color: #002551;
    margin: 0;
}


.inquire .form-box .form-control,
.inquire .form-box .form-select {
    width: unset;
    border-radius: 0;
    padding: 0;
    background-color: #f7f7f7b8;
    padding: 2px;
    font-size: 14px;
}

.inquire .form-box .form-select {
    width: 120px;
    text-align: center;
    padding-right: 14px;
}

.btn-warp {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 32px;
}
.btn-warp a {
    padding: 8px 32px;
    font-size: 14px;
}

.btn-warp a:hover {
    color: #fff;
    opacity: .9;
}

.primary-btn {
    background-color: #002551;
    color: #fff;
}
.light-btn {
    background-color: #a9a9a9;
    color: #fff;
}
table  {
    table-layout: fixed;
}

table .table-primary {
    --bs-table-bg: #002551;
    color: #fff;
    border-color: unset;
}

table .table-primary a {
    color: #fff;
}

table thead td{
    border-bottom-width: 0px !important;
    border: 0 !important
}


table tbody td {
    padding: 1rem !important;
}

body.case.show table tbody td img {
    width: 100%;
}

table thead tr td:nth-child(1){
    width: 35%;
}

.page-btn  {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 60px 0;
}

.page-btn .btn-warp {
    display: flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    margin: 0;
}

.page-btn .btn-warp a {
    padding: 0 4px;
}


.page-btn .btn-warp.page-number {
    margin: 0 14px;
}

.page-btn .btn-warp.page-number  a {
    padding: 10px 14px;
    background-color: #e5e9ed;
    transition: .3;
}

.page-btn .btn-warp.page-number a:hover ,
.page-btn .btn-warp a.active{
    background-color: #002551;
    color: #fff;
}

body.case.show table{ 
    table-layout: auto;
    margin: 0;
}

body.case.show table thead td{
    text-align: center;
}

body.case.show table.base tbody tr td:first-child {
    background: #ebebeb;
    width: 6%;
    vertical-align: middle;
    text-align: center;
}

body.case.show table tbody tr td:before{display: none;}

body.case.show table tbody td {
    padding: 0.6rem !important;
}

body.case.show table tbody tr td a {
    color: #000;
    font-weight: normal;
    transition: .3s;
    display: block;
    margin: 0;
    padding:0;
}

body.case.show table tbody tr td a:hover {
    color: #1b7cef;
}

body.case.show table tbody tr td a img {
    transition: .3s;
}

body.case.show table.download tbody tr td a img {
    max-width: 220px;
    margin: 0 auto;
}



body.case.show table.base tbody {
    display: table-row-group;
}

body.case.show table tbody tr td a:hover img{
    opacity: .8;
}   

body.case.show table tbody .sec {
    margin: 12px 0;
}

body.case.show table tbody .sec.file-warp {
    background: #ecf3ff;
    padding: 5px 0;
}

body.case.show table tbody .sec.file-warp.bg-tip {
    background: #ffdcdc;
}

body.case.show table tbody .sec img{
    width: unset;
    margin-left: 4px;
}

body.case.show table tbody .sec h5 {
    font-size: 16px;
    color:#0049a0;
    display: flex;
    align-items: center;
}

body.case.show table tbody .sec h5:before {
    content: '';
    display: block;
    background-color:#0049a0;
    width: 4px;
    height: 16px;
    margin-right: 8px;
}

a.more-btn {
    padding: 8px 16px;
    border: 1px solid #002551;
    color: #002551;
    display: table;
    margin: 16px auto 0;
}
a.more-btn:hover {
    background-color: #002551;
    color: #fff;
}

.primary-bg {
    background-color: #002551;
    color: #fff;
}

.second-bg {
    background-color: #ebebeb;
    text-align: center;
}

body.case.show table.future  .sub-tit td {
    text-align: left;
}

body.case  .case-body tr td  {
    vertical-align: middle;
}

body.case.show table.download tbody tr td {
    display: flex;
    flex-wrap: wrap;
}

body.case .table thead {
    cursor: pointer;
}

body.case table.history {
    vertical-align: middle;
}

body.case .histry-warp a,
body.case .future-warp a {
    display: none;
    margin-top: 20px;
}

body.case thead:hover {
    --bs-table-bg: #373737;
}

.future-warp, .histry-warp {
    display: flex;
    flex-direction: column;
}

body.case .table.history tr ~ tr td:nth-child(1) {
    font-size: 16px;
    font-weight: 600;
    color: #0049a0;
}



body.case .table tr {
    transition: .3s;
}

body.case .table tr:hover {
    background-color: #d1e2ff;
}

body.case .case-body tr td {
    padding: 16px 0.5rem !important;
}

body.case.index tr td ~ td {
    text-align: center;
}

body.case .table_btn {
    text-align: center;
    padding: 10px 0;
    background: #002551;
    color: #fff;
    margin-top: 40px;
    cursor: pointer;
    position: relative;
    transition: .3s;
}

body.case .table_btn:hover {
    background: #373737;
}

body.case .tog_tip {
    font-size: 18px;
    position: absolute;
    right: 14px;
}

body.case .table.download td p {
    white-space-collapse: preserve-breaks;
}

.table_base .icon {
    color: #002551;
}

.table_btn svg {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    transform-origin: center;
    transition: .3s;
}

.table_btn svg.arrowtop {
    transform-origin: center;
    transform: rotate(180deg) translateY(50%);
}

body.case.show table tbody tr td:first-child{
    text-align: left;
}

body.case .inquire .form-box .form-sec label {

    margin: 7px 12px 7px 7px;
}

body.case .table .phone-tit {
    display: none;
}