@charset "utf-8";

body{
	font-family:"微軟正黑體", Geneva, sans-serif;
	overflow-x:hidden;
}

.backtop{
	position:fixed;
	z-index:99;
	width:48px;
	height:48px;
	left:100%;
	top:100%;
	margin-top:-130px;
	margin-left:-70px;
	padding:7px ;
	background-color:rgba(196,176,152,0.5);
	text-align:center;
	color:#fff;
	font-size:1.3rem;
	border-radius:50%;
	cursor:pointer;
	-webkit-transition: background 0.3s; /* Safari */ 
	transition: background 0.3s;
}
.backtop:hover{ background-color:#9a7d5a;}

@media (min-width:992px){
	.backtop{margin-top:-148px;}
}


/*==========header css==========*/

.fadeInRight{
  -webkit-animation: fadeInRight 0.4s; /* Safari 4+ */
  -moz-animation:    fadeInRight 0.4s; /* Fx 5+ */
  -o-animation:      fadeInRight 0.4s; /* Opera 12+ */
  animation:         fadeInRight 0.4s; /* IE 10+, Fx 29+ */
}


/*========================================================
                     main css
=========================================================*/
.view_lg{ display:none;}
@media (min-width:992px){
	.view_sm{ display:none;}
	.view_lg{ display:block;}
}

/*========================================================
                     top_banner
=========================================================*/

.top_link_section{ width:100%; position:absolute; top:0; left:0; z-index:90; padding:40px;}
.top_link_section .site_logo{ max-width:15%;}
@media (min-width:992px){
	.top_link_section{ padding:40px 100px;}
	.top_link_section .site_logo{ max-width:7%;}
}

.top_banner_section{ position:relative; overflow:hidden;}
.top_banner_section img{ width:100%;}
.top_banner_section .boat{position:absolute; top:0; left:0; width:100%; z-index:10;}
.top_banner_section .title_block{ 
	position:absolute; 
	z-index: 11;
	top:50%; 
	left:50%; 
	transform:translate(-50%,-50%);  
	width:80%;
	text-align: center;
	overflow:hidden;
	padding:35px 0;
}
.top_banner_section .title_block .title{ padding-bottom:15px;}
.top_banner_section .title_block .text img{ max-width:65%;}

.top_banner_section .scroll{
	position:absolute;
	bottom:4%;
	left:50%; 
	transform:translate(0,-50%); 
	width:5%;
	text-align: center;
	overflow:hidden;
	z-index:15;
}

@media (min-width: 992px) {
	.top_banner_section{ }
	.top_banner_section .title_block{ width:48%;}
	.top_banner_section .title_block .title{ padding-bottom:5%;}
	.top_banner_section .title_block .title img{ max-width:88%;}
	.top_banner_section .title_block .text img{ max-width:40%;}
	.top_banner_section .scroll{ bottom:5%; width:3%;}
}


/*-------------------------流水效果-------------------------*/

.water_effect{ 
	position: absolute;
	bottom:0;
	top:0;
	width: 100%;
	height: 100%;
 }
.water_effect img{
	width: 100%;
	height: 100%;
	mix-blend-mode: soft-light;
	filter: blur(.05vw);
}

/*-------------------------雲朵效果-------------------------*/

.cloud_effect{ 
	position: absolute;
	bottom:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index:5;
	mix-blend-mode: multiply;
 }
.cloud_effect img{
	width: 100%;
	height: 100%;
	filter: blur(.05vw);
	/*opacity:0.2;*/
}

/*-------------------------流光效果-------------------------*/

.shine_effect{ 
	position: absolute;
	bottom:0;
	left:0;
	width: 100%;
	height: 100%;
 }
.shine_effect img{
	width: 100%;
	height: 100%;
	mix-blend-mode: soft-light;
	filter: blur(.05vw);
	opacity:0.4;
}


/*-------------------------光點效果-------------------------*/
.light_effect{
	position:absolute;
	width:50px;  
	height:50px;
	animation:light 4s infinite;
	z-index:12;
	right:-2%;
	top:-27%;
}

@keyframes light {
  0%{ opacity:0; /*left:0;*/ transform:scale(0);}
  50%{ opacity:1; transform:scale(1);}
  100%{ opacity:0; /*left:100%;*/ transform:scale(0);}
}


/*========================================================
                     內頁設定
=========================================================*/
.top_block{}
.top_block img{ width:100%;}
.top_block .container-fluid{ padding:40px 20px;}
@media (min-width:992px){ .top_block .container-fluid{ padding:60px 100px;}}
@media (min-width:1920px){ .top_block .container-fluid{ padding:80px 100px;}}

.anime_block{ position:relative; color:#fff;}
.anime_block .container-fluid{ position:absolute; top:0; left:0; width:100%; z-index:15;}
.anime_block .text_block .title{ max-width:83%; padding-bottom:20px;}
.anime_block .text_block .text p{ letter-spacing:2px; font-size:0.9rem; line-height:2;}
.anime_block .cover{ position:absolute; top:0; left:0; width:100%; z-index:10;}
.anime_block .pictext{ position:absolute; right:10px; bottom:10px; color:#fff; z-index:12; font-size:0.5rem; letter-spacing:1px;}

.block1{ color:#fff;}
.block1 .cloud_effect{ transform:scaleX(-1);}
.block2 .water_effect img{ opacity:0.7;}
.block4{ color:#000;}
.block4 .cloud_effect{ opacity:0.7; mix-blend-mode:overlay;}

.map_block .build{ position:absolute; bottom:27%; left:29%; width:9%; z-index:15; overflow:hidden;}
/*.map_block .build:before{
	content: "";
	background-color: rgba(255, 255, 255, 0.2);
	height: 100%;
	width: 2em;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index:10;
	transform: skewX(-45deg) translateX(0);
	transition: none;
	animation:build_light 4s infinite;
}
@keyframes build_light {
	0%{ transform: skewX(-45deg) translateX(0);}
	100%{ transform: skewX(-45deg) translateX(40em); transition: all 1s ease-in-out;}
}*/

.map_block .build span:nth-child(1),
.map_block .build span:nth-child(2),
.map_block .build span:nth-child(3),
.map_block .build span:nth-child(4) {
    content: "";
    display: block;
    position: absolute;
    background-color: #FFFFFF;
}
.map_block .build span:nth-child(1) { width:1px; left:0; bottom:0; animation: move1 2000ms infinite ease;}
.map_block .build span:nth-child(2) { height:1px; left:0 ;top:0; animation: move2 2000ms infinite ease;}
.map_block .build span:nth-child(3) { width:1px; right:0; top:0; animation: move3 2000ms infinite ease;}
.map_block .build span:nth-child(4) { height:1px; right:0; bottom:0; animation: move4 2000ms infinite ease;}
@keyframes move1 {
    0% { height: 100%; bottom: 0; }
    54% { height: 0; bottom: 100%; }
    55% { height: 0; bottom: 0; }
    100% { height: 100%; bottom: 0; }
}
@keyframes move2 {
    0% { width: 0; left: 0; }
    50% { width: 100%; left: 0; }
    100% { width: 0; left: 100%; }
}
@keyframes move3 {
    0% { height: 100%; top: 0; }
    54% { height: 0; top: 100%; }
    55% { height: 0; top: 0; }
    100% { height: 100%; top: 0; }
}
@keyframes move4 {
    0% { width: 0; right: 0; }
    55% { width: 100%; right: 0; }
    100% { width: 0; right: 100%; }
}



@media (min-width:992px){ 
	.anime_block .text_block .title{ max-width:55%; padding-bottom:30px;}
	.anime_block .text_block .text p{ font-size:1.2rem; letter-spacing:3px;}
	.anime_block .pictext{ right:2%; bottom:2%; font-size:1rem;}
	.block1 .pictext{ right:2%; bottom:2%;}
}
@media (min-width:1440px){ 
	.anime_block .text_block .title{ max-width:32%;}
}


/*========================================================
                         contact
=========================================================*/

.contact_section{ background:url(../img/contact_bgs.jpg) top center no-repeat; background-size:cover; position:relative;}
.contact_section .container-fluid{ position:relative; z-index:50;}
.info_block{ padding:18% 0;}
.info_block .title{ max-width:70%; margin:0 auto; padding-bottom:2%;}
.info_block .build_logo{ max-width:55%; margin:0 auto; padding-bottom:20%;}
.info_block .text{ max-width:70%; margin:0 auto;}

.form_block{ color:#fff; text-align:center; padding:0 8%;}
.form_block .text_block{ padding-bottom:30px;}
.form_block .text_block .title{ max-width:60%; margin:0 auto; padding-bottom:15px;}
.form_block .text_block .text p{ font-size:0.8rem; letter-spacing:0.2rem;}

/*--表單樣式----*/
#form1{
	font-size:0.8rem;
	padding-bottom:20%;
}
#form1 .form-group{
	margin-bottom:30px;
	text-align:left;
	position:relative;
}
#form1 label {
    color:#fff;
    margin-bottom:0;
	letter-spacing:3px;
	position:absolute;
	top:10px;
}
#form1 .form-control {
    border-radius:0;
    border:none;
    border-bottom:1px solid #fff;
	color:#fff;
	width:75%;
    margin-left:80px;
	margin-bottom:6px;
}

#form1 .style3 label{
	position:static;
}

#form1 input, #form1 textarea {
    background: transparent;
    color: #111;
}
#form1 .btn-send {
    display: inline-block;
    padding:7px;
    color: #fff;
    background-color:#c4af97;
	color:#000;
    width:100%;
    border-radius:0;
}
#form1 .btn-send:hover {
    background-color:#9a7d5a;
}
#form1 select {
    color: #111;
    width: 100%;
    height: 38px;
    padding: 4px 5px;
    font-size: 1rem;
    background: transparent;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background-image: url(../img/arrow.png);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 24px auto;
}
#form1 select option {
    color: #111;
}
#form1 .check-group a{ color:#c4af97; text-decoration:none;}

/*webkit瀏覽器專用*/
#form1 ::-webkit-input-placeholder { color: #c4af97; }
/*Firefox 4-18瀏覽器專用*/
#form1 input::-moz-placeholder { color: #c4af97; }
/*Firefox 19+瀏覽器專用*/
#form1 input::-moz-placeholder{color:#c4af97;}
/*IE10瀏覽器專用*/
#form1 :-ms-input-placeholder{color: #c4af97;}


.form_block .contact_btn{ padding:0 20%;}
.form_block .contact_btn ul{ list-style:none; padding:0;}
.form_block .contact_btn ul li{ display:inline-block; width:35%;}
.form_block .contact_btn ul li img{ max-width:100%;}
.form_block .contact_btn .btn:hover{ opacity:0.5; transition:all .3s;}

.footer_block{ padding:10px 0 40px 0;}
.footer_block img{ margin:0 auto; max-width:90%;}

/*--表單送出彈跳----*/
.swal-modal{ background:rgba(255,255,255,0.9); border-radius:20px;}
.swal-title{ color:#716256;}
.swal-text{ color:#4d4c4c;}
.swal-footer{ text-align:center;}
.swal-button{ background-color:#c4af97; color:#000; border-radius:0;}
.swal-icon--success:after, .swal-icon--success:before,.swal-icon--success__hide-corners{ background:transparent;}
.swal-icon--success,.swal-icon--success__line{ border-color:#c4af97;}

/*--google recaptcha 隱藏----*/
.grecaptcha-badge{ 
	visibility:hidden;
}


@media (min-width:992px){
	.contact_section{ background:url(../img/contact_bg.jpg) top center no-repeat; background-size:cover;}
	.info_block{ padding:60px 0;}
	.info_block .title{ max-width:40%; padding-bottom:5%;}
	.info_block .build_logo{ max-width:20%; padding-bottom:5%;}
	.info_block .text{ max-width:50%; margin:0 auto;}
	
	.form_block{ padding:0 5%;}
	.form_block .text_block .title{ max-width:30%; padding-bottom:30px;}
	.form_block .text_block .text p{ font-size:1rem;}
	
	#form1{ font-size:1rem; padding-bottom:15%;}
	#form1 .form-control{ width:88%; margin-left:100px;}
	#form1 .style2 .form-control{ width:75%;}	
	
	.form_block .contact_btn ul li{ width:25%;}
	.form_block .contact_btn ul li img{ max-width:60%;}
	
}
@media (min-width:1440px){
	.form_block{ padding:0 15%;}
}


/*------------------cookies--------------------*/

#cookies-box {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 9999999;
    background-color: rgba(0,0,0,0.9);
    padding: 20px;
    width: 100%;
	font-size: 1rem;
	line-height: 36px;
	color: #fff;
/*	display: none;*/
}
#cookies-box h4 {
    font-size: 1.3rem;
	font-weight: bold;
}
#cookies-box p {
    margin: 0;
}
#cookies-box a {
    color: #fff;
	border-bottom: 2px solid #443e89;
	padding-bottom: 2px;
	margin: 0 3px;
}
#cookies-box .cookies-btn {
	margin-top: 10px;
	text-align: center;
}
#cookies-box .cookies-btn a {
    display: inline-block;
    width: 140px;
    border: 1px solid #fff;
    color: #fff;
    text-decoration: none;
	text-align: center;
}
#cookies-box .cookies-btn a:hover {
    background-color: #443e89;
	transition:all .3s;
}

@media (min-width: 992px) {
	#cookies-box{
		padding:50px;
	}
	#cookies-box .cookies-btn{
		margin-top: -5px;
		margin-left: 50px;
	}  
}

.privacy_block .container-fluid{ max-width:1200px; }
.privacy_block h3{ color:#555; font-weight: 700; border-bottom:1px solid #ccc; padding-bottom:15px; margin-bottom:15px; }

/*========================================================
                  隱私權聲明
=========================================================*/
.fancybox-container {z-index: 9999999;}
.modal-body{ overflow-y:auto; padding:20px;}
.modal-header{ border-bottom:none;}
.modal-body h2{ text-align:center; margin-bottom:20px;}
.modal-body p span{ font-weight:bold; font-size:1.1rem;}
.modal-dialog{ margin-bottom:80px;}

@media (min-width:576px){
	.modal-body{ padding:20px 40px;}
	.modal-dialog{ max-width:1000px;}
}
@media (min-width:1024px){
	.modal-body{ padding:20px 80px;}
	.modal-dialog{ max-width:1200px; margin-bottom:0;}
}
/*========================================================
                     選單
=========================================================*/
.icon_Community a.js-btn-icon_Community {
    text-align: center;
    width: 50px;
    line-height: 47px;
    border-radius: 100px;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0;
    cursor: pointer;
    color: #fff;
    background: #000;
    font-size: 22px;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.5);
    height: 50px;
    pointer-events: auto;
	overflow: hidden;
    font-family: "微軟正黑體", Arial, Verdana, Helvetica, sans-serif;
}

.js-btn-icon_Community:hover,
.js-btn-icon_Community:focus {
    color: #fff;
    background-color: #276850;
    border-color: #276850;
}

.js-icon_Community .icon_li {
    position: relative;
    left: -100px;
    
}
.icon_li_img {
        max-width: 50px;
        width: 100%;
        height: auto;
        display: block;
        position: absolute;
        left: 0;
        z-index: 1;
    }
.js-icon_Community.active .icon_li {
    left: 0;
    pointer-events: auto;
}

.js-icon_Community .icon_li:nth-child(1) {
    transition: all 0.1s ease-out;
    -moz-transition: all 0.1s ease-out;
    -o-transition: all 0.1s ease-out;
    -webkit-transition: all 0.1s ease-out;
}

.js-icon_Community .icon_li:nth-child(2) {
    transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
}

.js-icon_Community .icon_li:nth-child(3) {
    transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    -webkit-transition: all 0.5s ease-out;
}


.icon_li a:hover .icon{
 animation: go 3s linear infinite;
}
@keyframes go {
  10% {
    transform: rotate(15deg);
  }
  20% {
    transform: rotate(-10deg);
  }
  30% {
    transform: rotate(5deg);
  }
  40% {
    transform: rotate(-5deg);
  }
  50%,100% {
    transform: rotate(0deg);
  }
}  

@media (max-width: 991.98px){
    .icon_Community {
        width: 100%;
        position: fixed;
        left: auto;
        bottom: 0;
        z-index: 999998;
        pointer-events: none;
    }
    .icon_Community_ul {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
    }
    .icon_Community_ul .icon_li {
        width: 33.33%;
        border-right: 1px solid #fff;
    }
    .icon_Community_ul .icon_li:last-child {
        border-right: none;
    }
	 .icon_Community_ul .icon_name {
        font-size: 0.8rem;
  		padding-top: 5px;
		display: inline-block;
    }
    .icon_img {
        display: block;
        background-color: #c4b098;
        overflow: hidden;
        text-align: center;
        color: #fff;
        position: relative;
        padding: 4px 0 8px 0;
        text-decoration: none;
		transition:all .3s;
    }
 .icon_Community a{
	  color: #fff;
	  text-decoration:none;
	  font-size:11px;
 }
 .icon_Community a img{
	  display: block;
	  margin: 0 auto;
	  width: 22px;
 }
 .icon_Community a:hover{
	  background-color: #9a7d5a;
 }
 .icon_Community a:hover img{
	  animation: go 3s linear infinite;
 }
}

@media (min-width: 992px){
    .icon_Community {
        position: fixed;
        right: 20px;
        bottom: 92px;
        z-index: 9998;
        pointer-events: none;
    }
    .icon_Community_ul {
        list-style: none;
        padding: 0;
        flex-direction: column;
        align-items: flex-end;
        display: flex;
        margin-bottom: 59px;
    }
    .icon_img {
        background-color:#c4b098;
        border: none;
        overflow: hidden;
        text-align: center;
        margin-bottom: 6px;
        width: 50px;
        text-decoration: none;
        border-radius: 100px;
        color: #fff;
        transition: all 0.3s ease;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .icon_img.active {
        width: 142px;
    }
    .icon_img.active .icon_name {
        text-indent: 0;
        opacity: 1;
    }
    .icon_img:hover {
        text-decoration: none;
        width: 142px;
		background-color: #9a7d5a;
    }
    .icon_img:before {
        opacity: 0;

    }
    .icon_img .icon {
        color: #fff;
        font-size: 22px;
        width: 50px;
        line-height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        right: 0;
        z-index: 1;
    }
    .icon_img:hover .icon {
        text-decoration: none;
    }
    .icon_img:hover .icon_name {
        opacity: 1;
        text-indent: 0;
    }
    .icon_name {
        position: relative;
        line-height: 50px;
        padding-left: 15px;
        padding-right: 50px;
        transition: all 0.3s ease;
        opacity: 0;
        text-decoration: none;
        color: #fff;
        white-space: nowrap;
        border-radius: 100px;
        overflow: hidden;
        font-family: Arial, "Microsoft JhengHei", sans-serif;
    }
}

