html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video
{
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}


/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section
{
    display: block;
}

body
{
    line-height: 1;
}

ol,
ul
{
    list-style: none;
}

blockquote,
q
{
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after
{
    content: '';
    content: none;
}

table
{
    border-collapse: collapse;
    border-spacing: 0;
}

*
{
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    font-family: 'Microsoft JhengHei', sans-serif!important;
    /*font-family: Arial, "文泉驛正黑", "WenQuanYi Zen Hei", "儷黑 Pro", "LiHei Pro", "微軟正黑體", "Microsoft JhengHei", "標楷體", DFKai-SB, sans-serif !important;*/
}

span
{
    color: #fff;
}

input[type="text"],
input[type="number"]
{
    width: 100%;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #969595;
}

.wrapper
{
    position: relative;
    margin: 0 auto;
}

.wrapper.outer
{
    width: 1024px;
}

.wrapper.inner
{
    width: 960px;
}

.slider-container
{
    width: 100%!important;
}

#active
{
    border-bottom: 3px solid #e6323b!important;
}

#resp-button
{
    display: none;
}

#slider
{
    position: absolute;
    /*width: 100%;*/
    left: 100%;
    margin-left: -700px;
    z-index: 0;
}

#map-canvas
{
    height: 370px;
}

#breadcrumb
{
    background-color: #fff;
    line-height: 45px;
    padding: 0 20px;
    font-size: 13px;
}

#breadcrumb a
{
    font-size: 13px;
    color: #878787;
}

#breadcrumb a:first-child
{
    color: #015DAB;
}

#content
{
    background-color: #eeeeee;
    overflow-y: hidden;
}

#content .wrapper.inner
{
    box-shadow: 0px 0px 25px 4px #C2C2C1;
}


/*header*/

#resp-nav .menu span
{
    color: #015DAB;
}

#resp-header,
#resp-nav,
#resp-nav.menu
{
    display: none;
}

#header
{
    background-color: #eeeeee;
}

#header .wrapper.inner
{
    vertical-align: top;
}

#logo .wrapper.inner
{
    background-color: #fff;
}

#logo-img
{
    padding: 0 20px;
}

#header-top
{
    background-color: #015DAB;
    line-height: 25px;
    z-index: 1;
}

#slogan
{
    color: #fff;
    font-size: 14px;
    display: inline-block;
    *display: block;
    zoom: 1;
}

#lang
{
    position: absolute;
    right: 0;
    display: inline-block;
    *display: block;
    zoom: 1;
}

#lang > div
{
    color: #fff;
    font-size: 13px;
    display: inline-block;
    *display: block;
    zoom: 1;
    padding: 0 5px;
}

#lang > div > a
{
    color: #fff;
    font-size: 13px;
}


/*#header-bottom
{
	overflow-y:hidden;
	}*/

#header-bottom .wrapper
{
    box-shadow: 0px 0px 25px 4px #C2C2C1;
}

#nav
{
    font-size: 0;
}

#nav > div
{
    width: 159px;
    display: inline-block;
    *display: block;
    zoom: 1;
    border: 1px solid #eeeeee;
}

#nav > div > a
{
    display: table-cell;
    background-image: url(/images/btn.png);
    width: 159px;
    line-height: 40px;
    font-size: 15px;
    text-align: center;
    font-weight: bold;
    color: #015DAB;
    border-bottom: 3px solid #015DAB;
}

#nav > div:not(:first-child)
{
    margin-left: 1px;
}

.popup
{
    position: absolute;
    font-size: 20px;
    z-index: 1;
    display: none;
}

.popup a
{
    background-color: #fff;
    display: block;
    width: 157px;
    line-height: 40px;
    font-size: 15px;
    color: #222222;
    padding: 0 20px;
    border-bottom: 1px solid #eee;
}

.popup.en a
{
    background-color: #fff;
    display: block;
    width: 245px;
    line-height: 20px;
    font-size: 15px;
    color: #222222;
    padding: 10px 20px;
    border-bottom: 1px solid #eee;
}

.popup.en,
.popup
{
    box-shadow: 0px 0px 7px #ABABAB;
}

.popup a:hover
{
    background-color: #F1F1F1;
}


/*End Header*/


/*footer*/

#footer
{
    background-color: #eeeeee;
    overflow-y: hidden;
}

#footer .wrapper.inner
{
    background-color: #015DAB;
    box-shadow: 0px 0px 25px 4px #C2C2C1;
    line-height: 30px;
}

#copyright
{
    font-size: 14px;
    color: #fff;
    margin: auto;
    text-align: center;
    background-color: #015DAB;
}

#category
{
    background-color: #fff;
    padding: 40px 40px;
    font-size: 0;
    border-top: 1px solid #eeeeee;
}

#category > div
{
    display: inline-block;
    *display: block;
    zoom: 1;
    width: 200px;
    font-size: 16px;
    vertical-align: top;
    /*height: 185px;*/
}

#category > div:not(:first-child)
{
    border-left: 1px solid #eeeeee;
}

#category > div > div
{
    padding-left: 15px;
}

#category li
{
    font-size: 15px;
    line-height: 25px;
}

#category li a
{
    color: #6c6b6b;
    display: inline-block;
    line-height: 20px;
}

.f-title
{
    font-weight: bold;
    font-weight: 700!important;
    font-family: 'Open Sans', sans-serif!important;
    color: #6c6b6b;
    padding-bottom: 10px;
}

#footer .row
{
    background-color: #fff;
    padding: 0 20px;
}


/*End footer*/


/*home*/

#home
{
    font-size: 0;
}

#home .wrapper.inner
{
    background-color: #fff;
}

#home .row
{
    font-size: 0;
    padding: 0 20px 25px 20px;
}

#home .row.first
{
    padding-top: 10px;
}

#home .cell
{
    width: 300px;
    display: inline-block;
    *display: block;
    zoom: 1;
    border: 1px solid #ececec;
    vertical-align: top;
    border-bottom: 3px solid #e6323b;
}

#home .cell:not(:first-child)
{
    margin-left: 10px;
}

#home .title
{
    background-color: #015DAB;
    font-size: 20px;
    color: #fff;
    line-height: 40px;
    padding-left: 20px;
}

#home .title > div
{
    display: inline-block;
    *display: block;
    zoom: 1;
    font-weight: bold;
}

#home .title > div:not(:first-child)
{
    position: absolute;
    right: 20px;
    line-height: 46px;
}

#home .article
{
    font-size: 16px;
    color: #6c6b6b;
    padding: 15px 20px;
    min-height: 237px;
}

#home .article .sub-title
{
    font-size: 16px;
    color: #015DAB;
    font-weight: bold;
}

#home .article .sub-title + div
{
    margin-top: 5px;
    line-height: 20px;
}

#home li::before
{
    content: '■';
    color: #e6323b;
    list-style-position: outside;
    vertical-align: text-bottom;
    font-size: 10px;
    line-height: 22px;
}

#home li a
{
    text-indent: -0.88em;
    margin-left: 10px;
    position: relative;
    line-height: 25px;
    color: #015DAB;
    font-weight: bold;
}

#home .cell:last-child .article .tel,
#home .cell:last-child .article .fax,
#home .cell:last-child .article .email
{
    font-weight: bold!important;
    /*font-family: 'Open Sans', sans-serif!important;*/
    color: #6c6b6b;
}

#home .cell:last-child .article .tel + div
{
    font-weight: 700!important;
    font-family: 'Open Sans', sans-serif!important;
    color: #1986e3;
    font-size: 22px;
    font-style: italic;
}

#home .cell:last-child .article .tel + div,
#home .cell:last-child .article .fax + div,
#home .cell:last-child .article .email + div
{
    margin-top: 5px;
    margin-bottom: 10px;
    word-wrap: break-word;
}

#home .row .services
{
    display: inline-block;
    *display: block;
    zoom: 1;
    vertical-align: top;
    width: 24.59%;
    -webkit-box-shadow: 0px 0px 1px 1px rgba(207, 205, 207, 1);
    -moz-box-shadow: 0px 0px 1px 1px rgba(207, 205, 207, 1);
    box-shadow: 0px 0px 1px 1px rgba(207, 205, 207, 1);
}

#home .row a:not(:first-child)
{
    margin-left: 5px;
}

#home .row .services img
{
    width: 100%;
}

#home .row .services > div
{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 18px;
    text-align: center;
    position: relative;
    margin-top: -30px;
    line-height: 30px;
    background-color: rgba(255, 255, 255, 0.85);
    color: #015DAB;
    font-weight: bold;
}


/*End home*/


/*about*/

#about
{
    font-size: 0px;
}

#banner
{
    position: relative;
}

#banner2
{
    bottom: -1px;
    position: absolute;
}

#banner2 img
{
    width: 100%;
}

#banner2 .banner-title
{
    position: absolute;
    top: 35%;
    width: 80%;
    left: 20px;
    font-size: 25px;
    color: #015DAB;
    font-weight: bold;
    text-align: center;
}


/*end about*/


/*pioneer*/

#pioneer
{
    padding: 0 20px;
    background-color: #fff;
}

#pioneer .title
{
    color: #015DAB;
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 15px;
}

#pioneer .article
{
    font-size: 17px;
    color: #222222;
    /*font-weight:bold;*/
    line-height: 25px;
}

#pioneer .row
{
    padding: 30px 70px;
    font-size: 0px;
}

#pioneer .cell.aim
{
    display: inline-block;
    *display: inline;
    zoom: 1;
}

#pioneer .cell.aim:first-child
{
    width: 44%;
    vertical-align: top;
}

#pioneer .cell.aim:last-child
{
    width: 56%;
    padding-left: 20px;
    vertical-align: top;
}


/*end pioneer*/


/*architecture*/

#architecture
{
    padding: 15px 20px;
    background-color: #fff;
}

#architecture .row
{
    padding: 10px 75px;
}

#architecture .title
{
    background-color: #015DAB;
    height: 40px;
    font-size: 0px;
    cursor: pointer;
}

#architecture .title > div
{
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    *display: inline;
    zoom: 1;
}

#architecture .title div:first-child
{
    padding-left: 20px;
    line-height: 40px;
}

#architecture .title div:last-child
{
    position: absolute;
    right: 20px;
    line-height: 36px;
}

#architecture .article
{
    font-size: 0;
    display: none;
}

#architecture .article .left img
{
    width: auto!important;
}

#architecture .article .left,
#architecture .article .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    vertical-align: top;
}

#architecture .article .left
{
    width: 20%;
    display: none;
    font-size: 12px;
    color: #8a8a8a;
}

#architecture .article .left li
{
    font-size: 12px;
    color: #8a8a8a;
    text-indent: -10px;
    margin-left: 10px;
    position: relative;
}

#architecture .article .left .top,
#architecture .article .left .bottom
{
    padding-top: 20px;
}

#architecture .article .right
{
    /*width:80%;*/
    width: 100%;
    font-size: 16px;
}

#architecture .article .right .top,
#architecture .article .right .bottom
{
    padding-top: 20px;
    line-height: 25px;
    color: #222222;
    padding-left: 10px;
    /*font-weight:bold;*/
}

#architecture .article .right .bottom
{
    color: #015DAB;
    font-size: 14px;
}

#architecture li
{
    padding-top: 10px;
}

#architecture li:before
{
    content: '-';
    list-style-position: outside;
    vertical-align: text-bottom;
}


/*end architecture*/


/*administrative*/

#administrative
{
    padding: 0 20px;
    background-color: #fff;
}

#administrative .left,
#administrative .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
}

#administrative .left
{
    width: 20%;
}

#administrative .right
{
    width: 80%;
    padding-left: 20px;
}

#administrative .row
{
    margin: 0 75px;
    font-size: 0;
    border-bottom: 1px solid #e1e1e1;
    padding-bottom: 40px;
    padding-top: 40px;
}

#administrative .title
{
    color: #015DAB;
    font-size: 20px;
    padding-bottom: 20px;
    font-weight: bold;
    line-height: 25px;
}

#administrative .article
{
    color: #222222;
    font-size: 17px;
    /*font-weight:bold;*/
    line-height: 25px;
}


/*end administrative*/


/*services*/

#services
{
    font-size: 0px;
}


/*end services*/


/*life_insurance*/

#life_insurance
{
    background-color: #fff;
    padding: 0 20px;
}

#life_insurance .row
{
    padding: 35px 0px;
    margin: auto 70px;
    font-size: 0px;
}

#life_insurance .left,
#life_insurance .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    vertical-align: top;
}

#life_insurance .left
{
    width: 15%;
}

#life_insurance .right
{
    width: 85%;
}

#life_insurance .title
{
    font-size: 20px;
    font-weight: bold;
    color: #015DAB;
}

#life_insurance .article
{
    font-size: 17px;
    padding-top: 15px;
    color: #222222;
    line-height: 25px;
}

#services .left img
{
    width: auto!important;
}


/*end life_insurance*/

.insurance
{
    border-top: 2px solid #e4e4e4;
}

.row .more
{
    font-size: 25px;
    font-weight: bold;
    color: #015DAB;
    width: 20%;
    margin: 30px auto;
}

.row .more.en
{
    width: 40%;
}

.row .case:not(:nth-of-type(1))
{
    margin-left: 20px;
}

.row .others
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 31.62%;
}

.row .mpf.others
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 23%;
}

.row .others > div
{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 18px;
    text-align: center;
    position: relative;
    margin-top: -30px;
    line-height: 30px;
    background-color: rgba(255, 255, 255, 0.85);
    color: #015DAB;
    font-weight: bold;
}

.row .others img
{
    width: 100%;
}


/*investment*/

#investment
{
    background-color: #fff;
    padding: 0 20px;
}

#investment .row
{
    padding: 25px 0;
    margin: auto 70px;
}

#investment .article
{
    font-size: 17px;
    padding-bottom: 100px;
    color: #222222;
    /*font-weight:bold;*/
    line-height: 25px;
}


/*end investment*/


/*mpf*/

#mpf
{
    background-color: #fff;
    padding: 0 20px;
}

#mpf .row
{
    padding: 25px 0;
    margin: auto 70px;
}

#mpf .title
{
    font-size: 20px;
    color: #015DAB;
    padding-bottom: 10px;
    font-weight: bold;
}

#mpf .article
{
    color: #222222;
    font-size: 17px;
    /*font-weight:bold;*/
    line-height: 25px;
}


/*end mpf*/


/*property*/

#property
{
    background-color: #fff;
    padding: 0 20px;
}

#property .row
{
    padding: 35px 0px;
    margin: auto 70px;
    font-size: 0px;
}

#property .left,
#property .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    vertical-align: top;
}

#property .left
{
    width: 15%;
}

#property .right
{
    width: 85%;
}

#property .title
{
    font-size: 20px;
    font-weight: bold;
    color: #015DAB;
}

#property .article
{
    font-size: 17px;
    padding-top: 15px;
    color: #222222;
    line-height: 25px;
}

#property b
{
    font-weight: bold;
}


/*end property*/


/*contact*/

#contact .row
{
    font-size: 0px;
    padding: 30px 20px;
}

#contact .title
{
    font-size: 20px;
    color: #015DAB;
    font-weight: bold;
}

#contact .cell
{
    font-size: 17px;
    color: #222222;
    padding-top: 25px;
    line-height: 20px;
}

#contact .cell.office
{
    padding-top: 15px;
}

#contact .wrapper
{
    background-color: #fff;
}

#contact .info
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 50%;
    vertical-align: top;
}

#contact form
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    vertical-align: top;
    width: 50%;
}

#contact label
{
    color: #222222;
    font-size: 17px;
    line-height: 40px;
    width: 20%;
    display: inline-block;
    vertical-align: top;
}

#contact input,
#contact textarea
{
    width: 80%;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #969595;
}

#contact textarea
{
    height: 100px;
}

#btn-contact-form
{
    background-color: #015DAB;
    border: 0px;
    /*width: 64px;*/
    height: 40px;
    color: #fff;
    font-size: 17px;
    position: relative;
    left: 78px;
    padding: 0 20px;
    cursor: pointer;
}

#btn-contact-form:active
{
    background-color: #034175;
}

#contact .input
{
    padding-top: 30px;
    padding-right: 75px;
    line-height: 40px;
}

#remark
{
    font-size: 17px;
    display: inline-block;
    margin-left: 90px;
    color: #015DAB;
    padding: 20px 0;
    width: 260px;
}


/*end contact*/


/*partners*/

#partners-button
{
    padding: 15px 20px;
    background-color: #fff;
    padding-bottom: 19px;
}

#partners-button .row
{
    padding: 10px 75px;
}

#partners-button .title
{
    background-color: #015DAB;
    line-height: 40px;
    font-size: 0px;
    cursor: pointer;
}

#partners-button .title div:last-child
{
    position: absolute;
    right: 20px;
}

#partners-button .title > div
{
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    zoom: 1;
    vertical-align: middle;
}

#partners-button .article
{
    font-size: 0;
    padding-bottom: 25px;
    border-bottom: 1px solid #dedede;
    display: none;
}

#partners-button .left,
#partners-button .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 50%;
    vertical-align: top;
}

#partners-button .cell
{
    font-size: 15px;
    color: #878787;
    padding: 0 20px;
    padding-top: 25px;
    line-height: 25px;
    font-weight: bold;
    width: 100%;
    word-wrap: break-word;
}

#partners-button .cell a
{
    font-size: 15px;
    color: #222222;
}

#partners-button .title div:first-child
{
    padding-left: 20px;
}


/*end partners*/


/*link*/

#link
{
    font-size: 0px;
}

#link .list
{
    background-color: #fff;
    padding: 0 20px;
    padding-bottom: 40px;
}

#link .cell
{
    font-size: 15px;
    color: #878787;
    padding: 0 70px;
    padding-top: 25px;
    line-height: 20px;
    font-weight: bold;
}

#link .cell a
{
    color: #222222;
}

#link .left,
#link .right
{
    display: inline-block;
    *display: inline;
    zoom: 1;
    width: 50%;
    vertical-align: top;
}


/*end link*/


/*financial*/

#financial
{
    font-size: 0px;
    background-color: #fff;
    padding: 30px 20px;
}

#financial .button a
{
    font-size: 15px;
    color: #222222;
    width: 100%;
    height: 40px;
    display: block;
    line-height: 40px;
    background-image: url(/images/btn.png);
    text-align: center;
    border: 1px solid #eeeeee;
}

#financial .row
{
    margin: auto 70px;
    padding-bottom: 20px;
    /*border-bottom:1px solid #eeeeee;*/
}

#financial .cul
{
    display: inline-block;
    *display: block;
    zoom: 1;
    width: 25%;
    padding-bottom: 10px;
}

#financial .cell
{
    padding: 30px 0;
}

#financial .cell button
{
    background-color: #015DAB;
    border: 0px;
    /*width: 64px;*/
    padding: 0 20px;
    height: 40px;
    color: #fff;
    font-size: 17px;
    cursor: pointer;
    /*padding:0;*/
}

#financial .cell > div
{
    color: #227ecf;
    font-size: 16px;
    display: inline-block;
    *display: block;
    zoom: 1;
    vertical-align: top;
}

#financial .cell > div:nth-child(1)
{
    width: 30%;
    /*padding:0 10px;*/
    padding-right: 10px;
    font-weight: bold;
}

#financial .cell > div:nth-child(2)
{
    width: 50%;
    height: 11px;
}

#financial .cell > div:nth-child(3)
{
    width: 20%;
    padding: 0 20px;
    margin-top: -10px;
}

#financial .cul:not(:first-child)
{
    padding-left: 5px;
}

.slider
{
    height: 40px;
}


/*end financial*/


/*pension*/

#pension,
#fund,
#mortgage,
#large,
#save
{
    padding: 20px 0;
    border-bottom: 1px solid #eeeeee;
}

#pension .title,
#fund .title,
#mortgage .title,
#large .title,
#save .title
{
    color: #222222;
    font-size: 20px;
    font-weight: bold;
}

.cell.hidden
{
    display: none;
}


/*end pension*/


/*button*/

#financial .cell button:active
{
    background-color: #034175;
}


/*end button*/

.xdebug-var-dump
{
    font-size: 10px;
}

.err
{
    color: red;
    font-size: 10px;
}

.title span
{
    font-size: 14px;
}
