@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css?family=Oxygen:300,400,700');

html, body { margin:0px; }

body { width:100%; margin:0px; font-size-adjust:100%; -webkit-text-size-adjust:100%; background:#0384ce; color:#333333; font-size:16px; font-family:"Oxygen", "微軟正黑體", "Microsoft JhengHei", sans-serif; }

a { outline:none; text-decoration:none; }

ul, ol { list-style:none; margin:0; padding:0; }
li { vertical-align:top; }

h1, h2, h3, h4, h5, p { padding:0; margin:0; }

img { border:none; }

input { font-family:"Oxygen", "微軟正黑體", "Microsoft JhengHei", sans-serif; }

/* ---------------- clear fix ---------------- */

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
 
.clearfix {
	display: inline-block;
}
 
html[xmlns] .clearfix {
	display: block;
}
 
* html .clearfix {
	height: 1%;
}

/*-------------------------------------------------------------------------------------*/
/* LAYOUT */

#wrap { width:100%; min-width:1024px; background-color:#ffffff; position:relative; z-index:1000; overflow:hidden; transition:transform 0.5s ease; -webkit-transition:transform 0.5s ease; -moz-transition:transform 0.5s ease; transform:translate3d(0, 0, 0); -webkit-transform:translate3d(0, 0, 0); -moz-transform:translate3d(0, 0, 0); }
#wrap .container { width:100%; max-width:1024px; margin:0px auto; position:relative; box-sizing:border-box; display:block; }
#wrap .overlay { position:absolute; left:0; top:0; z-index:5000; width:0; height:0; background-color:rgba(0,0,0,0.3); opacity:0; }

#top { border-bottom:6px solid #0384ce; }
#top .logo { float:left; width:350px; padding:27px 0 15px 11px; }
#top .logo img { width:100%; }
#top .toolbar { position:absolute; right:6px; top:9px; z-index:10px; font-size:0; }
#top .toolbar a { display:inline-block; zoom:1; *display:inline; vertical-align:top; width:26px; height:26px; background:#b1ddf2; border-radius:100%; margin:0 2px; font-size:14px; color:#0384ce; text-align:center; font-weight:bold; line-height:26px; }
#top .toolbar a i.fa-home { font-size:16px; }
#top .toolbar a:hover { background-color:#0384ce; color:#ffffff; }
#top .mobile_btn { position:absolute; right:15px; top:0; width:40px; height:100%; display:none; font-size:0; }
#top .mobile_btn:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:middle; height:100%; }
#top .mobile_btn i { display:inline-block; zoom:1; *display:inline; vertical-align:middle; width:40px; height:40px; background-color:#0384ce; border-radius:100%; line-height:40px; font-size:20px; color:#ffffff; font-weight:bold; text-align:center; cursor:pointer; }
#top .menu_area { float:right; width:600px; }
#top ul.menu_list { text-align:right; font-size:0; }
#top ul.menu_list > li { display:inline-block; zoom:1; *display:inline; vertical-align:top; padding-left:14px; }
#top ul.menu_list > li.mobile_menu { display:none; }
#top ul.menu_list > li > a.lv1 { display:block; height:109px; padding:72px 12px 0 12px; background-image:none; background-color:transparent; background-position:center 30px; background-repeat:no-repeat; box-sizing:border-box; font-size:17px; color:#4db1e2; font-weight:bold; transition:all 0.2s ease; }
#top ul.menu_list > li > a.lv1 i { font-size:11px; }
#top ul.menu_list > li > a.lv1:hover { background-image:url(../img/menu_active_img.png); background-color:#4db1e2; color:#ffffff; }
#top .other_menu { display:none; }

#mobile_menu { position:fixed; top:0; left:0; z-index:1; visibility:hidden; width:250px; height:100%; padding-bottom:31px; background-color:#0384ce; transition:all 0.3s ease; overflow:hidden; box-sizing:border-box; }
#mobile_menu .menu_area { width:100%; height:100%; overflow-x:hidden; overflow-y:auto; }
#mobile_menu ul.menu_list { }
#mobile_menu ul.menu_list > li { display:block; border-top:1px solid #4db1e2; }
#mobile_menu ul.menu_list > li:first-child { border-top:none; }
#mobile_menu ul.menu_list > li > a.lv1 { display:block; width:100%; padding:10px 25px; font-size:17px; color:#ffffff; font-weight:bold; }
#mobile_menu ul.menu_list > li > a.lv1 i { display:none; }

#mobile_menu .other_menu { position:absolute; left:0; bottom:0; width:100%; border-top:1px solid #4db1e2; font-size:0; }
#mobile_menu .other_menu a { display:inline-block; zoom:1; *display:inline; vertical-align:top; width:33.33%; height:30px; border-left:1px solid #4db1e2; box-sizing:border-box; text-align:center; line-height:30px; font-size:17px; color:#ffffff; font-weight:bold; }
#mobile_menu .other_menu a:first-child { border-left:none; }

#main { background:url(../img/main_bg.jpg) no-repeat center top; }
#main .banner_area { width:100%; position:relative; }
#main .banner_area > img { width:100%; }
#main .banner_tel { position:absolute; right:0; top:0; z-index:100; xwidth:315px; height:33px; padding-right:14px; background-color:#0384ce; text-align:left; line-height:28px; font-size:18px; color:#ffffff; font-weight:bold; }
#main .banner_tel:before { position:absolute; left:-25px; top:0; content:""; width:25px; height:33px; background:url(../img/banner_tel_bar_left.png) no-repeat right top; }
#main .banner_tel i,
#main .banner_tel img { padding-right:6px; }
#main .banner_tel img { vertical-align:middle; }
#main .banner_tel a { color:#ffffff; }
#main .banner_tel a:hover { }
#main .banner_show { width:100%; }
#main .banner_show .banner { width:100%; }
#main .banner_show .banner img { width:100%; }
#main .banner_dots { position:absolute; left:17px; bottom:17px; }
#main .banner_dot { float:left; width:9px; height:9px; background-color:#999999; border-radius:100%; margin:0 5px; transition:all 0.2s ease; cursor:pointer; }
#main .banner_dot.active,
#main .banner_dot:hover { background-color:#3156a3; }

#main .title_area { width:100%; background-color:#46c9c6; }
#main .title_area .title { display:inline-block; zoom:1; *display:inline; vertical-align:top; min-width:244px; height:42px; padding-left:62px; padding-right:26px; background:url(../img/icon_service.png) no-repeat #0cb8b6 26px center; position:relative; box-sizing:border-box; line-height:42px; font-size:24px; color:#ffffff; font-weight:bold; }
#main .title_area .title:before { position:absolute; right:-26px; top:0; content:""; width:0; height:0; border-style:solid; border-width:42px 26px 0 0; border-color:#0cb8b6 transparent transparent transparent; }
#main .title_area .title span { padding-left:8px; font-size:18px; line-height:42px; vertical-align:top; font-weight:bold; }
#main .content_area { }

#footer { padding:16px 0 12px 0; background-color:#0384ce; }
#footer .footer_sitemap { width:100%; padding:0 11px; font-size:0; display:none; }
#footer .footer_sitemap_row { display:inline-block; zoom:1; *display:inline; vertical-align:top; min-height:115px; padding-left:32px; padding-right:38px; position:relative; }
#footer .footer_sitemap_row:first-child { padding-left:0; border-right:1px solid #ffffff; }
#footer .footer_sitemap_row ul { }
#footer .footer_sitemap_row ul li { padding-top:8px; font-size:17px; color:#ffffff; font-weight:bold; }
#footer .footer_sitemap_row ul li:first-child { padding-top:0; }
#footer .footer_sitemap_row ul li a { color:#ffffff; transition:all 0.2s ease; }
#footer .footer_sitemap_row ul li a:hover { }
#footer .footer_sitemap_contact { min-height:76px; padding-left:73px; margin-top:8px; background:url(../img/footer_sitemap_img.png) no-repeat left 5px; font-size:17px; color:#ffffff; line-height:27px; }
#footer .footer_sitemap_contact:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:middle; height:76px; }
#footer .footer_sitemap_contact p { display:inline-block; zoom:1; *display:inline; vertical-align:middle; }
#footer .copyright { position:static; right:11px; bottom:4px; padding:0 5px; font-size:12px; color:#ffffff; }
#footer .copyright p { float:right; text-align:right; }
#footer .copyright p:first-child { float:left; text-align:left; }
#footer .copyright a { color:#ffffff; }
#footer .copyright a:hover { text-decoration:underline; }

.openResponsive, 
.openResponsive body { height:100%; }
.openResponsive #wrap { height:100%; transform:translate3d(250px, 0, 0); -webkit-transform:translate3d(250px, 0, 0); -moz-transform:translate3d(250px, 0, 0); }
.openResponsive #wrap .overlay { width:100%; height:100%; opacity:1; transition:opacity 0.5s ease; -webkit-transition:opacity 0.5s ease; -moz-transition:opacity 0.5s ease; }
.openResponsive #mobile_menu { visibility:visible; transition:all 0s ease; -webkit-transition:all 0s ease; -moz-transition:all 0s ease; 
transform:translate3d(0, 0, 0); -webkit-transform:translate3d(0, 0, 0); -moz-transform:translate3d(0, 0, 0); }

/*-------------------------------------------------------------------------------------*/
/* INDEX */

#indexType #footer { padding:22px 0 30px 0; }
#indexType #footer .footer_sitemap { display:block; }
#indexType #footer .copyright { position:absolute; padding:0; }
#indexType #footer .copyright p { float:none !important; text-align:right !important; }

.index_box_area { padding:14px 0 35px 0; box-sizing:border-box; }

.index_box { float:left; width:500px; }
.index_box .index_box_title { width:100%; height:42px; padding-left:48px; background-color:#0384ce; background-repeat:no-repeat; background-position:10px center; box-sizing:border-box; line-height:42px; font-size:16px; color:#ffffff; font-weight:bold; }
.index_box .index_box_title p { }
.index_box .index_box_title span { padding-left:6px; font-size:16px; font-weight:bold; vertical-align:top; line-height:40px; }
.index_box .index_box_title a { position:absolute; right:12px; top:18px; line-height:normal; font-size:12px; color:#ffffff; transition:all 0.2s ease; }
.index_box .index_box_title a:hover { }
.index_box .index_box_content { padding-top:12px; }

.index_service_box { float:left; width:682px; }
.index_service_box .index_box_title { background-image:url(../img/icon_service.png); background-color:#0cb8b6; background-position:14px center; }
.index_service_list { font-size:0; text-align:left; }
.index_service_list .index_service_item { display:inline-block; zoom:1; *display:inline; vertical-align:top; width:50%; padding:0 3px; box-sizing:border-box; }
.index_service_list .index_service { width:100%; padding-left:15px; padding-right:40px; border-bottom:1px solid #0cb8b6; position:relative; box-sizing:border-box; line-height:29px; font-size:15px; color:#111f27; }
.index_service_list .index_service:before { position:absolute; right:16px; top:0; content:"+"; font-size:20px; color:#0384ce; display:none; }
.index_service_list .index_service a { color:#111f27; transition:all 0.2s ease; }
.index_service_list .index_service a:hover { color:#0384ce; }
.index_service_list .index_service.more { padding-top:8px; padding-right:12px; border-bottom:none; text-align:right; font-size:12px; font-weight:bold; line-height:normal; }
.index_service_list .index_service.more:before { display:none; }
.index_service_list .index_service.more img { vertical-align:text-bottom; padding-right:4px; }
.index_service_list .index_service.more a { color:#0384ce; }
.index_service_list .index_service.more a:hover { }

.index_contact_box { float:right; width:338px; }
.index_contact_box .index_box_title { background-image:url(../img/icon_contact.png); background-color:#0384ce; background-position:14px center; }
.index_contact_area { width:100%; padding:0 24px; box-sizing:border-box; position:relative; }
.index_contact_area .index_contact_info { padding:3px 0; font-size:15px; color:#111f27; line-height:22px; }
.index_contact_area .index_contact_info table.info_table { width:100%; }
.index_contact_area .index_contact_info table.info_table td { width:auto; padding:3px 0; vertical-align:top; line-height:18px; text-align:left; }
.index_contact_area .index_contact_info table.info_table td:first-child { width:24px; line-height:normal; }
.index_contact_area .index_contact_info table.info_table td i { margin-top:-1px; color:#0384ce; font-size:18px; }
.index_contact_area .index_contact_info table.info_table td i.fa-map-marker { font-size:20px; }
.index_contact_area .index_contact_info h4 { color:#0384ce; font-weight:bold; }
.index_contact_area .index_contact_info p { }
.index_contact_area .index_contact_info a { color:#111f27; }
.index_contact_area .index_contact_info a:hover { text-decoration:underline; }

/*-------------------------------------------------------------------------------------*/
/* ABOUT US */

.about_us_area { min-height:462px; background:url(../img/about_us_bg.jpg) no-repeat center top; }
.about_us_area .about_us_info { float:left; width:380px; padding:88px 0 20px 40px; box-sizing:border-box; }
.about_us_area .about_us_title { padding-bottom:20px; font-size:32px; color:#0384ce; font-weight:bold; }
.about_us_area .about_us_content { min-height:76px; padding-left:72px; background:url(../img/footer_sitemap_img.png) no-repeat left 5px; font-size:17px; color:#0384ce; font-weight:bold; font-style:italic; line-height:27px; }
.about_us_area .about_us_content:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:middle; height:76px; }
.about_us_area .about_us_content p { display:inline-block; zoom:1; *display:inline; vertical-align:middle; }
.about_us_area .about_us_img { float:right; width:635px; padding:40px 36px 20px 0; box-sizing:border-box; }
.about_us_area .about_us_img img { width:100%; }

/*-------------------------------------------------------------------------------------*/
/* OUR SERVICES */

.service_area { background:url(../img/service_bg.jpg) no-repeat center top; }
.service_area .service_list_area { width:100%; padding:30px 0 32px 0; }
.service_area .service_list { float:left; padding-left:40px; border-left:1px solid #d3f1fc; box-sizing:border-box; }
.service_area .service_list:first-child { border-left:none; }
.service_area .service_list ul { }
.service_area .service_list ul li { min-width:232px; max-width:380px; padding:0 30px 0 16px; margin-top:14px; background:url(../img/list_row.png) no-repeat left 7px; font-size:18px; color:#111f27; }
.service_area .service_list ul li:first-child { margin-top:0; }
.service_area .service_list ul li a { color:#111f27; transition:all 0.2s ease; cursor:default; }
.service_area .service_list ul li a:hover { xcolor:#0384ce; }
.service_area .service_sub_photo { display:none; }

.service_area .service_photo_area { width:100%; padding:28px 20px; background:url(../img/service_shadow.png) repeat-x center top; box-sizing:border-box; }
.service_area .service_photo_list { width:100%; box-sizing:border-box; }
.service_area .service_photo_row { float:left; width:656px; }
.service_area .service_photo_item { float:left; width:328px; padding:10px; box-sizing:border-box; }
.service_area .service_photo { width:100%; border:3px solid #fafdff; box-shadow:0 0 10px #7abee5; box-sizing:border-box; position:relative; }
.service_area .service_photo img { width:100%; }

.service_area .service_photo_row:first-child .service_photo_item:first-child+.service_photo_item { float:right; }

.quick_view_enabled { overflow:hidden; }
.quick_view_container { position:fixed; left:0; top:0; z-index:9990; width:100%; height:100%; background:rgba(10,10,10,0.85); }
.quick_view_content { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:calc(100% - 40px); height:calc(100% - 40px); max-width:624px; max-height:702px; }
.quick_view_carousel { position:absolute; left:0; top:0; bottom:0; right:0; width:100%; background:url(../img/popup_box_top.jpg) no-repeat #ffffff left top; background-size:100% auto; }

.quick_view_slider_wrap { position:absolute; top:70px; left:66px; right:66px; bottom:24px; padding:0; margin:0; z-index:99993; -webkit-backface-visibility:hidden; backface-visibility:hidden; overflow:hidden; }
.quick_view_slider_wrap .slider_area { width:100%; height:100%; }
.quick_view_slider_wrap .slider_item { position:absolute; left:0; top:0; width:100%; height:100%; text-align:center; }
.quick_view_slider_wrap .slider_item:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:middle; height:100%; }
.quick_view_slider_wrap .slider_item img { max-width:100%; max-height:100%; vertical-align:middle; cursor:-webkit-grab; cursor:grab; }

.quick_view_close { position:absolute; top:0; right:0; width:25px; height:25px; background:url(../img/popup_box_close.jpg) transparent no-repeat left top; padding:0; margin:0; border:0; outline:none; cursor:pointer; transition:all .2s; }
.quick_view_btn { position:absolute; left:0; top:0; right:0; bottom:0; width:100%; height:100%; }
.quick_view_btn.disabled { display:none; }
.quick_view_btn .image_row { position:absolute; top:50%; width:19px; height:34px; background-color:transparent; background-image:url(../img/service_popup_row.png); background-repeat:no-repeat; margin-top:-17px; cursor:pointer; display:block; }
.quick_view_btn .prev_image { left:22px; background-position:left top; }
.quick_view_btn .next_image { right:22px; background-position:right top; }
.quick_view_title { position:absolute; top:18px; left:23px; width:100%; height:44px; padding:0 66px 0 42px; background:url(../img/menu_active_img.png) no-repeat left top; background-size:30px auto; box-sizing:border-box; font-size:0; }
.quick_view_title:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:top; height:100%; }
.quick_view_title p { display:inline-block; zoom:1; *display:inline; vertical-align:middle; font-size:24px; color:#0384ce; line-height:1; }

/*
.quick-view-container { background:rgba(10,10,10,0.85); }
.quick-view-content { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:calc(100% - 40px); height:calc(100% - 40px); max-width:624px; max-height:702px; }
.quick-view-carousel { position:absolute; left:0; top:0; bottom:0; right:0; width:100%; background:url(../img/popup_box_top.jpg) no-repeat #ffffff left top; background-size:100% auto; }
.quick-view-carousel .popup_slider_wrap { top:70px; left:66px; right:66px; bottom:24px; }
.quick-view-aside { position:absolute; left:0; top:0; right:0; bottom:0; width:100%; height:100%; }
.quick-view-aside .popup_button { position:absolute; top:50%; width:19px; height:34px; background-color:transparent; background-image:url(../img/service_popup_row.png); background-repeat:no-repeat; margin-top:-17px; cursor:pointer; display:block; }
.quick-view-aside .prev_button { left:22px; background-position:left top; }
.quick-view-aside .next_button { right:22px; background-position:right top; }
.quick-view-aside .popup_button:hover { background-color:transparent; }
.quick-view-title { position:absolute; top:18px; left:23px; width:100%; height:44px; padding:0 66px 0 42px; background:url(../img/menu_active_img.png) no-repeat left top; background-size:30px auto; box-sizing:border-box; font-size:0; }
.quick-view-title:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:top; height:100%; }
.quick-view-title p { display:inline-block; zoom:1; *display:inline; vertical-align:middle; font-size:24px; color:#0384ce; line-height:1; }
.quick-view-close { position:absolute; top:0; right:0; width:25px; height:25px; background:url(../img/popup_box_close.jpg) transparent no-repeat left top; padding:0; margin:0; border:0; cursor:pointer; transition:all .2s; }
*/

/*-------------------------------------------------------------------------------------*/
/* OUR DENTAL CLINIC */

.dental_clinic_area { padding:22px 22px 27px 22px; background-color:rgba(255,255,255,0.7); filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b2ffffff', endColorstr='#b2ffffff'); }
.dental_clinic_area .dental_clinic_list { width:100%; }
.dental_clinic_area .dental_clinic_item { float:left; width:326px; padding:11px 9px; box-sizing:border-box; }
.dental_clinic_area .dental_clinic { width:100%; border:3px solid #fafdff; box-shadow:0 0 10px #7abee5; box-sizing:border-box; position:relative; }
.dental_clinic_area .dental_clinic > img { width:100%; }
.dental_clinic_area .dental_clinic .photo { position:absolute; left:0; top:0; width:100%; height:100%; text-align:center; font-size:0; }
.dental_clinic_area .dental_clinic .photo:after { content:""; display:inline-block; zoom:1; *display:inline; vertical-align:middle; height:100%; }
.dental_clinic_area .dental_clinic .photo img { max-width:100%; max-height:100%; vertical-align:middle; }

/*-------------------------------------------------------------------------------------*/
/* CONTACT US */

.contact_us_area { padding-bottom:42px; background-color:rgba(255,255,255,0.7); filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b2ffffff', endColorstr='#b2ffffff'); }
.contact_us_area .contact_us_info { float:left; width:360px; padding:34px 0 0 60px; box-sizing:border-box; position:relative; font-size:15px; color:#111f27; line-height:24px; }
.contact_us_area .contact_us_info table.info_table { width:100%; padding-bottom:20px; font-size:15px; color:#111f27; line-height:24px; }
.contact_us_area .contact_us_info table.info_table td { width:auto; padding-bottom:10px; vertical-align:top; }
.contact_us_area .contact_us_info table.info_table td:first-child { width:22px; }
.contact_us_area .contact_us_info table.info_table td i { margin-top:-1px; color:#0384ce; font-size:16px; }
.contact_us_area .contact_us_info table.info_table td i.fa-map-marker { font-size:20px; }
.contact_us_area .contact_us_info h4 { color:#0384ce; font-weight:bold; }
.contact_us_area .contact_us_info p { }
.contact_us_area .contact_us_info a { color:#111f27; }
.contact_us_area .contact_us_info a:hover { text-decoration:underline; }
.contact_us_area .contact_us_map { float:right; width:558px; padding:34px 50px 0 0; box-sizing:border-box; }
.contact_us_area .contact_us_map .map { width:100%; border:3px solid #fafdff; box-shadow:0 0 10px #7abee5; box-sizing:border-box; position:relative; }
.contact_us_area .contact_us_map .map img { width:100%; }
.contact_us_area .contact_us_map .map iframe { position:absolute; left:0; top:0; width:100%; height:100%; border:0; }
