/* ==============================================
   Main stylesheet
   ============================================== */
body:lang(zh-Hans) {
    font-family: 'Hiragino Sans GB',STXihei,'Microsoft YaHei',Arial,sans-serif;
}

.page-container {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    margin: 0 auto;
    width: 1200px;
}

.clearfix {
    clear: both;
}

a {
    text-decoration: none;
}

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

/* ======================
   @Section: Top slider
   ======================*/
.top-slide-container {
    position: relative;
}

.top-logo-container {
    position: absolute;
    top: 225px;
    left: 309px;
    z-index: 10;
}

.top-language-container {
    position: absolute;
    top: 0;
    right: 20px;
    z-index: 10;
}

.top-language-container .btn {
    color: #323232;
    font-weight: bold;
    letter-spacing: 1px;
    padding: 9px 12px;
    text-transform: uppercase;
}

.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 140px;
}

/* ======================
   @Section: map
   ======================*/
.map-around-wrapper {
    height: 496px;
    position: relative;
    width: 100%;
}

.page-map-around {
    width: 100%;
    height: 100%;
}


.zoom-container {
    background: rgba(8, 61, 98, 0.51);
    z-index: 12;
    width: 100%;
    height: 100%;
}

.map-content-container {
    position: relative;
}

.map-content {
    position: absolute;
    top: 175px;
    left: 315px;
    text-align: center;
    width: 591px;
}

.map-content:lang(fr) {
    width: 595px;
}

.map-title {
    font-family: 'Hiragino Sans',"ヒラギノ角ゴシック", 'Hiragino Kaku Gothic ProN', "ヒラギノ角ゴ ProN W3", 'Roboto', "Droid Sans", 'YuGothic',"游ゴシック",'Meiryo',"メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
    color: #fff;
    font-size: 38px;
    font-weight: bold;
    margin: 0 0 25px 0;
    line-height: 1.13;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.map-title:lang(de) {
    font-size: 30px;
}

.map-title span {
    font-size: 27px;
}

.map-title:lang(de) span {
    font-size: 24px;
}

.map-description {
    font-family: 'Hiragino Sans',"ヒラギノ角ゴシック", 'Hiragino Kaku Gothic ProN', "ヒラギノ角ゴ ProN W3", 'Roboto', "Droid Sans", 'YuGothic',"游ゴシック",'Meiryo',"メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* ======================
   @Section: food culture
   ======================*/
.food-culture-container {
    position: relative;
}

.food-culture-content {
    position: absolute;
    top: 182px;
    left: 0;
    text-align: center;
    width: 100%;
}

.food-culture-title {
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 10px 0;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.food-culture-description {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.89;
    margin: 0 auto;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
    width: 740px;
}

/* ======================
   @Section: service
   ======================*/
.service-container {
    background: url(../img/bg_white.png);
    background-size: 100% 100%;
    padding: 60px 150px;
    text-align: center;
}

.service-description {
    color: #5b6670;
    font-size: 18px;
    line-height: 1.5;
    margin: 12px 0 70px 0;
}

.service-title {
    color: #d0021b;
    font-size: 26px;
    font-weight: normal;
    margin: 0 auto;
    text-align: center;
    display: table;
    white-space: nowrap;
}

.service-title:lang(de) {
    text-transform: uppercase;
}

.service-title:before,
.service-title:after {
    border-top: 1px solid #d0021b;
    content: '';
    display: table-cell;
    position: relative;
    top: 0.5em;
    width: 140px;
}

.service-title:before {
    right: 25px;
}

.service-title:after {
    left: 25px;
}

.service-grid {
    margin-top: 40px;
}

.service-item {
    float: left;
    margin-left: 89px;
    width: 240px;
}

.service-item:lang(fr) {
    margin-left: 75px;
    width: 249px;
}

.service-item:first-child {
    margin-left: 0;
}

.service-item-image img {
    max-height: 234px;
}

.service-item-title {
    color: #d0021b;
    font-size: 19px;
    font-weight: bold;
    margin: 30px 0 10px 0;
}

.service-item-title:lang(en) {
    font-size: 18px;
}

.service-item-title:lang(fr) {
    font-size: 16px;
}

.service-item-description {
    color: #5b6670;
    font-size: 16px;
    line-height: 1.69;
    margin: 0;
}

.service-item-description:lang(fr) {
    font-size: 13px;
}

/* ======================
   @Section: entertaiment
   ======================*/
.entertaiment-container {
    background: url('../img/bg_black.png');
    background-size: 100% 100%;
    padding: 45px 150px 60px 150px;
}

.entertaiment-title {
    color: #fff;
    font-size: 26px;
    font-weight: normal;
    margin: 0 auto;
    text-align: center;
    display: table;
    white-space: nowrap;
}

.entertaiment-title:lang(de) {
    text-transform: uppercase;
}

.entertaiment-title:before,
.entertaiment-title:after {
    border-top: 1px solid #fff;
    content: '';
    display: table-cell;
    position: relative;
    top: 0.5em;
    width: 140px;
}

.entertaiment-title:before {
    right: 28px;
}

.entertaiment-title:after {
    left: 28px;
}

.entertaiment-description {
    color: #fff;
    font-size: 16px;
    line-height: 1.69;
    text-align: center;
    margin: 30px 0 40px 0;
    padding: 0 100px;
}

.entertaiment-description:lang(en) {
    padding: 0 85px;
}

.entertaiment-description:lang(fr) {
    padding: 0 75px;
}

.video-container {
    width: 760px;
    margin: 0 auto;
}

.video-container iframe {
    border: 0;
}

.entertaiment-slider-container {
    width: 760px;
    margin: 20px auto 0 auto;
    position: relative;
}

.entertaiment-slide-title {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin: 15px 0 0 0;
}

.entertaiment-slide-title:lang(ko) {
    font-size: 16px;
}

.video-slide-image {
    width: 240px;
    height: 135px;
}

.video-slide-active .video-slide-image {
    border: 5px solid #fff;
}

.btn-control-entertaiment-slide {
    cursor: pointer;
    position: absolute;
    top: 40px;
    z-index: 20;
}

.btn-control-entertaiment-slide  img {
    width: 48px;
    height: 48px;
}

.btn-next-entertaiment-slide {
    right: -70px;
}

.btn-prev-entertaiment-slide {
    left: -70px;
}

/* ======================
   @Section: company info
   ======================*/
.company-info-container {
    background: url(../img/bg_white.png);
    background-size: 100% 100%;
    padding: 50px 120px;
}

.company-info-title {
    color: #000;
    font-size: 26px;
    font-weight: bold;
    margin: 0 0 40px 0;
    text-align: center;
}

.company-info-title:lang(en) {
    font-size: 24px;
}

.company-info-panel {
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.2);
    padding: 40px;
    width: 898px;
    margin: 0 auto;
}

.company-info-panel-left {
    float: left;
    margin-right: 40px;
    width: 450px;
}

.company-info-panel-right {
    float: left;
    width: 327px;
}

.company-info-panel-description {
    color: #000000;
    font-size: 16px;
    line-height: 1.69;
    margin: 0 0 16px 0;
}

.rikisha-description:lang(zh-Hans),
.rikisha-description:lang(zh-Hant) {
    font-size: 15px;
}

.company-info-panel-description-small {
    font-size: 14px;
}

.btn-download-document {
    background-color: #3cc6db;
    border-radius: 4px;
    color: #ffffff;
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    height: 54px;
    line-height: 54px;
    text-align: center;
    text-transform: uppercase;
    width: 400px;
}

.btn-download-document:hover,
.btn-download-document:active,
.btn-download-document:focus {
    color: #fff;
}

.company-info-panel-title {
    color: #000000;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.69;
    margin: 0 0 10px 0;
}

.rikisha-logo {
    margin-bottom: 15px;
}

.impregion-logo {
    margin-bottom: 15px;
}

/* ======================
   @Section: footer
   ======================*/
.footer {
    background: #1d1d1d;
    padding: 40px 0 90px 0;
}

.copy-right {
    color: #fff;
    font-size: 12px;
    margin: 0;
    text-align: center;
    line-height: 1.6;
}

/* ======================
   @Section: go to top
   ======================*/
.go-to-top {
    position: fixed;
    display: none;
    bottom: 30px;
    right: 30px;
    text-align: center;
    z-index: 99;
}

.go-to-top img {
    width: 40px;
    height: 40px;
}

.go-to-top p {
    color: #999999;
    font-size: 12px;
    font-weight: bold;
    margin: 10px 0 0 0;
    text-align: center;
}