@charset "utf-8";
html{ overflow-x: hidden;}
body{ 
	font-family:"微軟正黑體", "新細明體", "Arial Unicode MS";
	overflow: hidden;
}

.container-fluid{ /*max-width:1200px; padding-left:0; padding-right:0;*/}

.footer{
	color:#fff;
	background-color:#000;
	text-align:center;
	padding:24px 15px 24px 0;
}

.footer a{
	color: #fffac6;
}
.footer a:hover{
	color: #33a9e4;
	text-decoration:none;
}
.share{margin:8px 0;}
.share img{margin:0 2px;}

.backtop{
	position:fixed;
	z-index:15;
	width:48px;
	height:48px;
	left:100%;
	top:100%;
	margin-top:-135px;
	margin-left:-64px;
	padding:5px;
	background-color:rgba(000,000,000,0.5);
	text-align:center;
	color:#fff;
	font-size:1.3rem;
	border-radius:4px;
	cursor:pointer;
	-webkit-transition: background 0.3s; /* Safari */ 
	transition: background 0.3s;
}
.backtop:hover{ background-color:#09f;}

.sidebar{
	position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 20%;
}
.sidebar ul{
    padding: 0px;
}
.sidebar li {
    list-style: none;
    padding-bottom: 25px;
    cursor: pointer;
}
.sidebar li img{width:65px;}
.sidebar li img:hover{ opacity:0.7;}

.navbar{ padding:0px;}
.navbar-brand{ margin-left:15px;}
@media (min-width:768px){.navbar-brand{ margin-left:0;}}
.navbar-toggler{ margin:15px;}
.navbar-nav .nav-item .nav-link{ padding:15px;}
.navbar-nav .nav-item .nav-link:hover{ background-color:#999;}

.menu_header{ position:fixed; z-index:9000; top:0; left:0; width:240px; height:100%; background-color:#464646; -webkit-transition: margin 0.3s; /* Safari */ transition: margin 0.3s; overflow-y: auto;}

.menu_header img{ margin:12px 0;}

.menu_close{ left:100%; margin-left:0px;}
.menu_open{ left:100%; margin-left:-240px;}

.menu_header .container-fluid{ padding:0; position:relative; max-width:1280px;}


@media (min-width:992px){
	.menu_header{ position:fixed; width:100%; /*height:auto;*/ background:#000; color:#fff; overflow-y: hidden; height:88px;}
	.menu_open, .menu_close{ left:0; margin-left:0;}
	.menu_header .container-fluid{ padding:0 15px;}
}

.logo_big{ display:none}
@media (min-width:992px){
	.logo_big{ display: block; text-align:center;  float:left;}
}
.logo_big img{ -webkit-transition: all 0.3s; /* Safari */ transition: all 0.3s; width:230px; height:auto; margin-top:20px;}

.menu_ul{list-style:none; padding:0; font-family:"華康儷中宋", Geneva, sans-serif;}
.menu_ul li{ border-bottom:1px dotted #2a2a2a;}

.menu_ul li a{ color:#fff; display:block; font-size:1.1rem; -webkit-transition: background 0.3s; /* Safari */ transition: background 0.3s;  padding:15px;}
.menu_ul li a:hover, .menu_ul li a:focus{ text-decoration:none; background-color:#2a2a2a;}

.menu_ul li a span{ display:block; font-size:0.8rem;}


@media (min-width:992px){
	.menu_ul{ text-align:center; border-radius:4px; height:48px; float:right; padding-top:10px;}
	.menu_ul li{ float:left; border:none; position:relative;}
	.menu_ul li:last-child{ background:none;}

	.menu_ul li a{ color:#fff; font-size:1rem; width:100px; text-align:center; padding:20px 0 17px 0;}
	.menu_ul li a:hover, .menu_ul li a:focus{ background-color:#5e5e5e;}
	.menu_ul .mobile_home{ display:none;}
}
@media (min-width:1200px){
	.menu_ul li a{ font-size:1.1rem; width:120px; text-align:center; padding:17px 0;}
}


.mobile_hide{ background-color:#000; opacity:0; position:fixed; z-index:8999; top:0; left:0; width:100%; height:100%;}

.mobile_header{ background-color:#000; color:#FFF; position:fixed; z-index:8900; height:88px; width:100%;}

.mobile_header img{ margin:24px 0 0 15px; width:200px;}

.iconbar{float:right; width:48px; height:36px; margin:24px 15px; border:2px solid #fff; border-radius:4px; cursor:pointer; background-position:center; background-repeat:no-repeat;-webkit-transition: background 0.2s; /* For Safari 3.1 to 6.0 */ transition: background 0.2s;}

.iconbar_open{background-image:url(../images/iconbar.png);}
.iconbar_close{background-image:url(../images/iconbar2.png); border-color:#2a2a2a;}

.menu_title{ margin:3px 15px; padding-top:23px; padding-bottom:16px; color:#fff; font-family:Verdana, Geneva, sans-serif;}

@media (min-width:992px){
	.mobile_hide{ display:none;}
	.mobile_header{ display:none;}
	.iconbar_close{ display:none;}
	.menu_title{ display:none;}
}


/*========================================================
                     置頂選單
=========================================================*/
/*.top_menu{ position:fixed; top:0; z-index:999; width:100%;}
.top_menu ul{ list-style:none; padding-inline-start:4%;}
.top_menu li{ width:13%; display:inline-block;}
.top_menu li img{ width:100%;}*/

/*========================================================
                     內頁設定
=========================================================*/
.top_banner{ /*background:url(../images/top_banner_bg_s.jpg) left top no-repeat; background-size:cover;*/ background:#fff; /*min-height:800px;*/ position:relative;}
.top_banner img{ width:100%;}
.top_banner .container-fluid{ padding:40px;}
.top_banner .blank{ height:250px;}
.top_banner .logo{ padding-bottom:30px;}
.top_banner .text{ }
.top_banner .flower-1{
	position: absolute;
    left: 0;
    top: -42px;
    z-index: 999;
    width: 104vw;
    transform-origin: center left;
    animation: flower-detail1 4s infinite alternate-reverse ease-in-out, mosaic-detail1 3s ease-in-out;
}
.top_banner video{ width:100%; object-fit:cover;}


@keyframes flower-detail1 {
    0% {
        transform: skewY(2deg)
    }
    50% {
        transform: skewY(0deg)
    }
	100% {
        transform: skewY(4deg)
    }
}

@media (min-width:768px){ 
	.top_banner{ /*background:url(../images/top_banner_bg.jpg) left top no-repeat; background-size:cover;*/ min-height:300px;} 
	/*.top_banner .blank{ height:300px;}*/
	.top_banner .logo{ padding-top:40%;}
	.top_banner .flower-1 {
		position: absolute;
		left: 0;
		top: -57px;
		z-index: 999;
		width: 50vw;
	}
}
@media (min-width:1024px){ .top_banner .container-fluid{ padding:100px;}}
@media (min-width:1440px){ .top_banner .container-fluid{ padding:150px 190px;} .top_banner .logo{ max-width:80%;} .top_banner .text{ max-width:80%;}}


/*.top_banner {
	position: relative;
	overflow-y: hidden;
}
.banner_ande {
    display: block;
    background: url(../images/top_banner_text_bg.png) right center;
    background-repeat: repeat-x;
	background-size: 1920px 100%;
    position: absolute;
    top: 0%;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(../images/top_banner_text1.png);
    mask-image: url(../images/top_banner_text1.png);
	-webkit-mask-size: contain;
	mask-size: contain;
    animation: aitf1 3s linear, aitf2 5s linear 3s infinite;
}

.banner_ande_s{
    display: block;
	position: absolute;
    top: 0%;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../images/top_banner_text_bg.png) right center;
    background-repeat: repeat-x;
	background-size: 900px 60%;
   
    -webkit-mask-image: url(../images/top_banner_text1s.png);
    mask-image: url(../images/top_banner_text1s.png);
	-webkit-mask-size: contain;
	mask-size: contain;
    animation: aitf1 3s linear, aitf2 5s linear 3s infinite;
}

@keyframes aitf1 {
    0% {
        background-repeat: no-repeat;
        background-position: -857px center;
    }
    100% {
        background-repeat: no-repeat;
        background-position: 0 center;
    }
}
@keyframes aitf2 {
    0% {
        background-position: -857px center;
    }
    100% {
        background-position: 0 center;
    }
}
.top_banner_text {
	position: absolute;
	z-index: 11;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	animate-delay: 4s;
	animation-duration: 3s;
}
.top_banner_mobile{ padding-bottom:60px;}*/

.for_pc{display:none;}
.for_m{display:block;}
@media (min-width:768px){.for_pc{display:block;}.for_m{display:none;}}

.top_block img{ width:100%;}
.top_block .container-fluid{ padding:0 15px;}
.top_block video{ width:100%; object-fit:cover;}
.grecaptcha-badge{ visibility:hidden;}
@media (max-width:1023px){ 
	.top_block.block8 .container-fluid{ padding:40px 15px 0 15px;}
	.top_block.top_contact_block .container-fluid{ padding:0 15px 40px 15px;}
}
@media (min-width:1024px){ 
	.top_block .container-fluid{ padding:40px 100px;}
	.top_block.block1 .container-fluid{ padding:200px 190px;}
}
@media (min-width:1440px){ 
	.top_block .container-fluid{ padding:80px 190px;}
}



.top_block .text_block{ position:relative; z-index:10;}
.top_block .text_block .text{ font-family:"華康儷中宋", Geneva, sans-serif; color:#231815; border-top:none; /*padding-top:60px;*/ padding:50px 0; /*background:url(../images/text_block_bg.jpg) bottom center no-repeat; background-size:100%;*/}
.top_block .text_block .text h2{ font-weight:bold; text-align:center; padding-bottom:25px; line-height:1.5;}

.top_block.block2 .text_block{ position:unset;}
.block1{ position:relative; padding-bottom:60px;}
.block1 .blank{ min-height:350px;}
.block1 .text{ max-width:80%; margin:0 auto; display:block;}
.block1 .flower-2{
	position: absolute;
    right: 0;
    top: 0;
    z-index: 999;
    width: 70vw;
    transform-origin: center right;
    animation: flower-detail2 4s infinite alternate-reverse ease-in-out, mosaic-detail1 3s ease-in-out;
}
/*.block1 .logo{ position:relative;}
.block1 .logo video { width:100%; object-fit:cover;}
.block1 .flower2 video{ position:absolute; right:0; top:0; width:90%; object-fit:cover;}*/
.block3 video,.block4 video{ padding-bottom:10px;}
.block5 video{ max-width:100%;}



@keyframes flower-detail2 {
    0% {
        transform: skewY(2deg)
    }
    50% {
        transform: skewY(0deg)
    }
	100% {
        transform: skewY(4deg)
    }
}



/*.block5 .text_block { background:url(../images/block5_bg.jpg) center center no-repeat; background-size:cover;}
.block5 .pic_block{ text-align:right;}
.top_block.block5 .text_block .text{ border-top:none; border-bottom:none; padding:30px 0; max-width:100%; bottom:20%;}*/
.block5 .text_block { background:url(../images/block5_bg.jpg) center center no-repeat; background-size:100%;}
.block5 .pic_block{ text-align:right;}
.top_block.block5 .text_block .text{ border-top:none; border-bottom:none; padding:30px 0; bottom:20%;}
.top_block.block8 .text_block .text{ background:none; padding-top:0; padding-bottom:30px;}

.top_block.block8 video{ width:130%; margin-left:-14%;}

.map_box .pic_block{ position:relative;}
.map_box .pic_block video{ position:absolute; bottom:0; left:0;}

@media (min-width:768px){
	.top_block .text_block .text h2{ font-size:1.5rem;}
	/*.block1{ background:url(../images/block1a_bg.jpg) left top no-repeat; background-size:80%;}*/
	.block1 .text{ max-width:90%;}
	.block1 .flower-2{ width:30vw;}
	/*.block1 .flower2 video{ top:-10%; width:46%;}*/
	
	.top_block .text_block .text{ /*border-top:1px solid #8DC11F; border-bottom:2px solid #8DC11F;*/ margin:0 auto; position:absolute; bottom:0; right:20px; background:none; padding-top:0; max-width:85%;}
	.top_block.block10 .text_block .text{ right:auto;}
	
	
	.top_block.block2 .text_block .text{ margin:0; position:unset; background:none; padding-top:16px; max-width:85%;}
	.block5 .pic_block img{ margin:0 auto; max-width:75%;}
	.block5 video{ max-width:75%;}
	
	.top_block.block5 .text_block .text{ bottom:5%; right:8%;}
	.top_block.block8 .text_block .text{ top:0; bottom:auto; left:20px; right:auto;}
	.top_block.block8 video{ width:130%; margin-left:-25%;}
	.top_block.block8 .text_block{ margin-top:7%;}
	.map_box .pic_block video{ left:12px;}

}
@media (min-width:1024px){
	.top_block .text_block .text{ max-width:70%;}
	/*.block5 .pic_block img{ max-width:80%;}
	.top_block.block5 .text_block .text{ bottom:12%;}*/
	.top_block.block5 .text_block .text{ bottom:10%; right:16%;}
}

/*========================================================
                     360
=========================================================*/
.panorama_block{ position:relative;}
.panorama_block .panorama{ height:70vh;}
.panorama-container img{ max-width:50%; height:auto!important;}

/*.panorama_cover{ position:absolute; top:20px; left:10px; text-align:left; z-index:10;}
.panorama_cover img{ width:100%;}*/

@media (min-width:768px) {
	.panorama_block .panorama{ height:80vh;}
	.panorama-container img{ max-width:50%;}
}
@media (min-width:992px) {
	.ariel_pic .ariel_title{ top:120px; left:18%;}
	/*.panorama_cover img{ max-width:70%;}*/
	
	.panorama_block .panorama{ height:90vh;}
	.panorama-container img{ max-width:54%;}
}




/*========================================================
                     聯絡我們
=========================================================*/
.top_contact_block{ text-align:left;}
.top_contact_block .pic_block{ position:relative; min-height:320px; max-width:93.5%; margin:0 auto;}
.top_contact_block .pic_block img{ position:absolute; left:0; bottom:0;}
.top_contact_block .pic_block .deco{ z-index:99; animation: fade 2s linear 0s infinite;}
@keyframes fade {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
	100% {
        opacity: 0;
    }
}



.top_contact_block .text_block img{ margin:0 auto; padding-bottom:20px;}
.top_contact_block .map_pic img{ margin:0 auto; padding-bottom:0; display:block; max-width:75%;}
.top_contact_block .map_pic{ }


.top_contact_block .nav_link{ padding:0; list-style:none;}
.top_contact_block .nav_link li{ margin:0 0 15px 0;}
.top_contact_block .nav_link li a{
	font-family:"華康儷中宋(P)", Geneva, sans-serif;
	text-align:left;
	padding:40px 20px;
	width:100%;
	font-size:1rem;
	margin:0;
	color:#fff;
	display:block;
	text-shadow:none;
	-webkit-transition: all 0.3s; /* Safari */
	transition: all 0.3s;
	background: #8FC31F;
	text-decoration:none;
}
.top_contact_block .nav_link li a:hover{
	color:#fff;
	background:#6A8C0C;
}
.top_contact_block .nav_link li a img{ float:left; padding:0px; margin:0 15px; max-width:40px; width:100%; height:auto;}


.mobile_footer{ display:block; position:fixed; z-index:8000; top:100%; left:0; width:100vw; height:60px; margin-top:-60px; text-align:center;}
.mobile_footer .row .col-3{ font-size:0.9rem; padding:0;}
.mobile_footer .row img{ display:block; margin:2px auto 2px auto;}

.mobile_footer .row a{ display:block; background-color:rgba(68,68,68,0.6); color:#fff; padding:8px; border-left:1px solid #fff; text-decoration:none;}
.mobile_footer .row a:hover{background-color:rgba(125,125,125,0.6); text-decoration:none;}
.mobile_footer .row .col-3:first-child a{ border-left:none;}

@media (min-width:768px){
	.top_block.top_contact_block .text_block .text{ position:static; border-top:none; border-bottom:none;}
	.top_contact_block .pic_block img{ position:absolute; left:12px; bottom:0;}
	.top_contact_block .map_pic img{ padding-bottom:40px;}
	.top_contact_block .text_block img{ max-width:65%;}
	.mobile_footer{ display:none;}
}

.video_block{ padding:0 15px 20px 15px;}
.video_block video{ display:block; margin:0 auto; width:100%;}
@media (min-width:768px){ 
	.video_block{ padding:0 20px;}
	.video_block video{ width:80%;}
}

/*彈跳視窗*/
.fancybox-content{ background:none!important; padding:0!important;}

.p_box{
	color: #06306c;
    font-weight: bold;
	text-align: center;
}


/*========================================================
                     預約表單
=========================================================*/
.contact_block{ font-family:"華康儷中宋(P)", Geneva, sans-serif; padding-bottom:60px;}
.contact_block h2{ text-align:center; font-weight:bold; letter-spacing:2px; color:#231815;}


/*表單樣式*/
.form_block{ padding:20px 0;}
.form_block .title_line{
	width: 100%;
    border-top: 1px solid #fff;
    text-align: center;
    margin: 20px 10px 30px;
}


#form1{ margin-top:12px; text-align:left; font-size:1rem;}
#form1 .row{ margin:0;}
#form1 .form-group { padding-bottom:20px;}
#form1 .form-control{ border-radius:0; display: inline-block; }
#form1 label{ padding-left:0;}
#form1 label span{ color:#F00;}

#form1 .btn{ background-color:#8fc31f; color:#fff; border:0; border-radius:0; padding:5px 0;}
#form1 .btn:hover{ background-color:#6a8c0c; cursor:pointer; -webkit-transition: background 0.3s; /* Safari */ transition: background 0.3s;}
#form1 .btn_group{ text-align:center; padding:0 13px;}
#form1 .text_box{ /*font-size:1rem;*/ padding-top:25px;}
#form1 .form-check{ padding-left:0; }
#form1 .form-check label{ display:inline;}
.contact_block .row{ margin-left:0; margin-right:0;}


/*webkit瀏覽器專用*/
/*#form1 ::-webkit-input-placeholder { color:#fff; }*/
/*Firefox 19+瀏覽器專用*/
/*#form1 input::-moz-placeholder{color:#fff;}*/
/*IE10瀏覽器專用*/
/*#form1:-ms-input-placeholder{color:#fff;}*/
@media (min-width:992px){
	.contact_block{ padding-bottom:0;}
	.contact_block h2{ font-size:2.5rem;}
	
	#form1{ font-size:1.2rem;}
	#form1 label{ font-size:1.5rem;}
	#form1 .text_box{ font-size:1.5rem;}
	
	.map_block{ padding-bottom:0;}
	.form_block{ padding:30px;}
}


/*========================================================
                     選單
=========================================================*/
.menu{
    opacity: 0;
    transform: translateY(-10px);
    transition:all 0.5s;

}

.Sticky{
    opacity: 1;
    transform: translateY(0px);
    transition:all 0.5s;
}

.navbar {
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    background-color: #333 !important;
}

.navbar .navbar-brand {
    padding: 10px 2%;
}

.navbar .btn {
    padding: 20px 0px;
    min-width: 150px;
    border-radius: 0;
    font-size: 20px;
    font-weight: 300;
    color: #fff;
}

.btn-info,
.btn-dark {
    color: #fff !important;
}

.tellLink {
    color: #555;
    padding: 10px 2rem;
    font-size: 20px;
}

.tellLink:hover {
    color: #17a2b8;
}

.tellLink span {
    display: block;
    font-size: 10px;
}

.btn-fb {
    background-color: #3865b2;
}

.btn-fb:hover {
    background-color: #19499c;
}

.m_contactBox {
    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.3);
    position: fixed;
    z-index: 998;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #444;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}

.m_contactBox a {
    width: calc(100%/2);
    display: inline-block;
    text-align: center;
    padding: 10px 0;
    font-size: 1rem;
    color: #fff;
}

.m_contactBox a+a {
    border-left: 1px solid #999;
}

.navbar .btn span {
    display: block;
    font-size: 1rem;
}

.top_performance_pic img {
    max-width: 100%;
    vertical-align: bottom;
}
.performance-list p {
	text-align: center;
	color: #fff;
	position: relative;
	margin: 0 0 20px 0;
}


/*.slick-next {
    right: 25px;
	 z-index: 9999;
}
.slick-prev {
    left: 25px;
    z-index: 9999;
}

.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;
    opacity: .75;
    color: #FFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
	
.top_menu ul{ text-align:center;  padding-inline-start:0; padding:0;}
.top_menu li{ width:15%;}
@media (min-width:992px){
	.top_menu{ width:640px; left:50%; margin-left:-320px;}
}*/

