@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;600&display=swap');

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
	padding: 0;
	margin: 0;
	font-family: "Noto Sans TC", '微軟正黑體', 'Helvetica', 'Arial', sans-serif !important;
}

* {
	box-sizing: border-box;
}

p {
	font-family: 'Noto Sans TC';
	font-weight: 400;
	font-size: 20px;
	line-height: 30px;
	letter-spacing: 1px;
}

ol {
	font-family: 'Noto Sans TC';
	font-weight: 400;
	font-size: 20px;
	line-height: 30px;
	letter-spacing: 1px;
	margin-left: 23px;
}

.blue {
	color: #0000ff;
}

.red {
	color: #ff0000;
}

.disc {
	list-style-image: url(../images/disc.png);
}

.square {
	list-style-image: url(../images/square.png);
}

.bg1 {
	position: relative;
	display: block;
	width: 100%;
	height: 1080px;
	background: #a07455 url(../images/bg_01.jpg) top center no-repeat;
	margin: 0 auto;
	overflow: hidden;
}

.petals {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1400px;
	pointer-events: none;
	z-index: 3;
	overflow: hidden;
}

.petal {
	position: absolute;
	top: -60px;
	width: 46px;
	height: 46px;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M16 2 C22 10, 28 14, 16 30 C4 14, 10 10, 16 2 Z' fill='%23ffffff' opacity='0.8'/></svg>") no-repeat center center;
	background-size: contain;
	opacity: 0;
	filter: blur(1px) drop-shadow(0 0 4px rgba(255, 255, 255, 0.9)) drop-shadow(0 0 10px rgba(255, 236, 200, 0.7));
	will-change: transform, opacity;
}

@keyframes petal-fall {
	0% {
		transform: translate(0, -60px) rotate(0deg);
		opacity: 0;
	}

	10% {
		opacity: 1;
	}

	60% {
		transform: translate(40px, 680px) rotate(220deg);
		opacity: 1;
	}

	100% {
		transform: translate(-30px, 1400px) rotate(500deg);
		opacity: 0;
	}
}

@keyframes petal-fall-alt {
	0% {
		transform: translate(0, -60px) rotate(0deg);
		opacity: 0;
	}

	10% {
		opacity: 1;
	}

	60% {
		transform: translate(-50px, 680px) rotate(-200deg);
		opacity: 1;
	}

	100% {
		transform: translate(20px, 1400px) rotate(-480deg);
		opacity: 0;
	}
}

.petal.p1 {
	left: 8%;
	animation: petal-fall 13s linear 0s infinite;
	transform: scale(0.9);
}

.petal.p2 {
	left: 22%;
	animation: petal-fall-alt 14s linear 2.5s infinite;
	transform: scale(1.1);
}

.petal.p3 {
	left: 38%;
	animation: petal-fall 12s linear 4.5s infinite;
	transform: scale(1);
}

.petal.p4 {
	left: 55%;
	animation: petal-fall-alt 13s linear 1.2s infinite;
	transform: scale(1.15);
}

.petal.p5 {
	left: 72%;
	animation: petal-fall 14s linear 3.2s infinite;
	transform: scale(0.85);
}

.petal.p6 {
	left: 88%;
	animation: petal-fall-alt 12s linear 5.5s infinite;
	transform: scale(1);
}

.center {
	position: relative;
	width: 100%;
	min-width: 1920px;
	max-width: 1920px;
	margin: 0 auto;
	display: flex;
}

.logo {
	position: absolute;
	display: block;
	width: 283px;
	height: 145px;
	background: url(../images/logo.png) top center no-repeat;
	top: 15px;
	left: 15px;
	cursor: pointer;
	z-index: 4;
}

.logo:hover {
	opacity: 0.9;
}

.links {
	position: absolute;
	width: 366px;
	height: 43px;
	background: url(../images/link_bg.png) top center no-repeat;
	top: 25px;
	right: 25px;
	padding: 5px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 1;
}

.account,
.download,
.comeback,
.fb,
.fbs {
	position: relative;
	display: block;
	cursor: pointer;
}

.account,
.download,
.comeback {
	width: 82px;
	height: 19px;
}

.account {
	background: url(../images/link_01.png);
	margin-left: 5px;
}

.account:hover {
	opacity: 0.75;
}

.download {
	background: url(../images/link_02.png);
}

.download:hover {
	opacity: 0.75;
}

.comeback {
	background: url(../images/link_03.png);
}

.comeback:hover {
	opacity: 0.75;
}

.fb,
.fbs {
	width: 33px;
	height: 32px;
}

.fb {
	background: url(../images/link_04.png);
}

.fb:hover {
	opacity: 0.75;
}

.fbs {
	background: url(../images/link_05.png);
}

.fbs:hover {
	opacity: 0.75;
}

.slogan {
	position: relative;
	display: block;
	flex-shrink: 0;
	width: 780px;
	height: 407px;
	background: url(../images/slogan.png) top center no-repeat;
	margin: 250px auto 0 100px;
	z-index: 2;
	overflow: hidden;
}

.slogan::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/slogangif.gif) top center no-repeat;
	z-index: 1;
	pointer-events: none;
}

#sloganSparkle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 3;
}

@keyframes slogan-shine {
	0% {
		left: -60%;
	}

	50% {
		left: 120%;
	}

	100% {
		left: 120%;
	}
}

.people {
	position: relative;
	display: block;
	width: 925px;
	height: 801px;
	background: url(../images/people.png) top center no-repeat;
	left: -100px;
	top: 60px;
	z-index: 2;
}

.bg2 {
	position: relative;
	width: 100%;
	background: #a07455 url(../images/bg_02.jpg) top center no-repeat;
	margin: 0 auto;
	padding: 0 0 100px 0;
}

.txtbgtop {
	position: absolute;
	width: 100%;
	height: 591px;
	background: url(../images/bg_03.png) top center no-repeat;
	margin-left: auto;
	margin-right: auto;
	margin-top: max(-30%, -576px);
	margin-bottom: max(-30%, -576px);
	z-index: 2;
}

.txtbg {
	position: relative;
	width: 100%;
	background: url(../images/bg_04.png) top center repeat-y;
	margin: 0 auto;
}

.txtbgbottom01 {
	position: relative;
	width: 100%;
	height: 157px;
	background: url(../images/bg_04_01.png) top center no-repeat;
}

.txtbgbottom02 {
	position: relative;
	width: 100%;
	height: 90px;
	background: url(../images/bg_04_02.png) bottom center no-repeat;
	margin: -43px auto 0 auto;
}

.txtbox {
	width: 950px;
	margin: 0 auto;
	padding: 0 0 40px 0;
	transform: translateY(-110px);
}

.title {
	display: block;
	width: 365px;
	height: 100px;
	margin: 45px auto 0 auto;
}

.txtsbg {
	background-color: #eddfc7;
	border: 5px #fff6ef solid;
	border-radius: 25px;
	padding: 35px 25px 25px 25px;
	margin-top: -30px;
}

.olbtnbox {
	display: flex;
	justify-content: center;
}

.olbtn {
	position: relative;
	display: inline-block;
	height: 30px;
	font-family: 'Noto Sans TC';
	font-weight: 600;
	font-size: 20px;
	line-height: 20px;
	letter-spacing: 1px;
	background-color: #d15700;
	border-radius: 5px;
	text-align: center;
	margin: 5px 5px 0 5px;
	padding: 5px 10px;
	cursor: pointer;
	transition: all .5s;
	-moz-transition: all .5s;
	/* Firefox 4 */
	-webkit-transition: all .5s;
	/* Safari and Chrome */
	-o-transition: all .5s;
	/* Opera */
}

.olbtn:link {
	color: #fff;
	text-decoration: none;
}

.olbtn:visited {
	color: #fff;
	text-decoration: none;
}

.olbtn:hover {
	color: #fff;
	background-color: #eb6100;
}

.olbtn:active {
	color: #fff;
	background-color: #eb6100;
}

.btnbox {
	width: 100%;
	margin-top: 25px;
	display: flex;
	justify-content: space-around;
}

.luck1,
.luck2,
.inquire,
.login,
.logout {
	position: relative;
	height: 270px;
	cursor: pointer;
}

.luck1,
.luck2,
.inquire,
.login {
	display: block;
}

.luck1 {
	width: 143px;
	background: url(../images/btn_01.png) top center no-repeat;
}

.luck1:hover {
	background: url(../images/btn_01-.png) top center no-repeat;
}

.luck2 {
	width: 222px;
	background: url(../images/btn_02.png) top center no-repeat;
}

.luck2:hover {
	background: url(../images/btn_02-.png) top center no-repeat;
}

.inquire {
	width: 170px;
	background: url(../images/btn_03.png) top center no-repeat;
}

.inquire:hover {
	background: url(../images/btn_03-.png) top center no-repeat;
}

.login,
.logout {
	width: 178px;
}

.login {
	background: url(../images/btn_04.png) top center no-repeat;
}

.login:hover {
	background: url(../images/btn_04-.png) top center no-repeat;
}

.logout {
	display: block;
	background: url(../images/btn_05.png) top center no-repeat;
}

.logout:hover {
	background: url(../images/btn_05-.png) top center no-repeat;
}

.luck1_table,
.luck2_table {
	width: 100%;
	border: 0px;
	border-spacing: 3px;
	font-size: 20px;
	line-height: 30px;
	text-align: center;
	vertical-align: middle;
	margin-top: 5px;
}

.luck1_table th,
.luck2_table th {
	border-radius: 5px;
	color: #fff;
	padding: 5px 10px;
}

.luck1_table th {
	background-color: #009b04;
}

.luck2_table th {
	background-color: #b43b3b;
}

.luck1_table td,
.luck2_table td {
	border-radius: 5px;
	line-height: 30px;
	padding: 10px 20px;
}

.luck1_table td {
	background-color: #dce9dc;
}

.luck2_table td {
	background-color: #f1d9d9;
}

.luck1_table tr.sr td {
	background-color: #bbcfbb;
}

.luck2_table tr.sr td {
	background-color: #e8bfbf;
}

.luck1_table td.tc,
.luck2_table td.tc {
	text-align: left;
}

.icon01,
.icon02 {
	display: block;
	width: 30px;
	height: 30px;
	background: url(../images/icon.png) top center no-repeat;
	margin: 0 auto;
	cursor: pointer;
}

.notice {
	margin-left: 25px;
}

.cy {
	width: 100%;
	background-color: rgb(87 60 42);
}

.cycenter {
	width: 100%;
	max-width: 1000px;
	padding: 25px;
	margin: 0 auto;
	display: flex;
	box-sizing: border-box;
	align-items: center;
}

.gflogo {
	position: relative;
	width: 135px;
	height: 37px;
	background: url(../images/gflogo.png) top center no-repeat;
}

.pwlogo {
	position: relative;
	width: 151px;
	height: 34px;
	background: url(../images/pwlogo.png) top center no-repeat;
	margin-left: 15px;
}

.cytxt {
	position: relative;
	width: 574px;
	font-size: 12px;
	color: #FFF;
	margin-left: 15px;
}

.cytxt .txt1 {
	line-height: 12px;
}

.cytxt .txt2 {
	line-height: 17px;
	margin-top: 10px;
}

.cr15 {
	position: relative;
	width: 45px;
	height: 45px;
	background: url(../images/cr15.png) top center no-repeat;
	margin-left: 15px;
}

/* 遮罩 */
.mask {
	position: fixed;
	display: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.7);
	z-index: 999;
}

.mask.on {
	display: flex !important;
	justify-content: center;
	align-items: center;
}

.close01,
.close02 {
	position: absolute;
	width: 30px;
	height: 30px;
	background: url(../images/close.png) top center no-repeat;
	top: -35px;
	right: -35px;
	cursor: pointer;
}

.picture01,
.picture02 {
	position: relative;
	width: 800px;
	height: 464px;
	display: none;
}

.picture01.on,
.picture02.on {
	display: block;
}

.carousel {
	position: absolute;
	top: 0;
	left: 0;
}

/* 輪播 */
.slick-custom-arrow {
	width: 20px !important;
	height: 30px !important;
}

.slick-next {
	top: 227px !important;
	right: -35px !important;
}

.slick-prev {
	top: 227px !important;
	left: -35px !important;
}

.slick-prev:before,
.slick-next:before {
	display: block !important;
	color: rgba(0, 0, 0, 0) !important;
	width: 20px !important;
	height: 30px !important;
	background-size: 100% !important;
	background-position: top center !important;
	background-repeat: no-repeat !important;
	opacity: 1 !important;
}

.slick-prev:before {
	background: url(../images/arrow_prev.png) top center no-repeat !important;
}

.slick-next:before {
	background: url(../images/arrow_before.png) top center no-repeat !important;
}

.slick-dots {
	bottom: -25px !important;
}

.slick-dots li {
	width: 10px !important;
	height: 10px !important;
}

.slick-dots li img:nth-child(1) {
	display: block;
}

.slick-dots li img:nth-child(2) {
	display: none;
}

.slick-dots li.slick-active img:nth-child(1) {
	display: none;
}

.slick-dots li.slick-active img:nth-child(2) {
	display: block;
}


@media screen and (max-width:1440px) {
	.slogan {
		margin: 205px auto 0 29px;
	}

	.people {
		top: 264px;
		left: -31vw;
	}
}

@media screen and (max-width:1400px) {
	.center {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.slogan {
		max-width: 780px;
		height: auto;
		aspect-ratio: 780 / 407;
		background-size: contain;
		left: -9vw;
	}

	.slogan::before {
		background-size: contain;
	}

	.people {
		transform: scale(0.9);
		left: 2vh;
		top: -45vw;
	}

	.txtbgtop {
		margin: -42% auto;
		background-position: center center;
		background-size: contain;
		background-size: 135% auto;
	}

	.notice {
		margin-left: 50px;
	}
}

@media screen and (max-width:1280px) {
		.people {
		top: -60vh;
	}

}

@media screen and (max-width:1024px) {
	.center {
		min-width: unset;
	}

	.bg1 {
		height: auto;
		background-size: cover;
	}

	.links {
		display: none;
	}

	.slogan {
		width: 85%;
		max-width: 780px;
		height: auto;
		aspect-ratio: 780 / 407;
		background-size: contain;
		margin: 150px auto 0 auto;
		left: 0;
	}

	.slogan::before {
		background-size: contain;
	}

	.people {
		width: 80%;
		max-width: 925px;
		height: auto;
		aspect-ratio: 925 / 801;
		background-size: contain;
		left: 0;
		top: -5vw;
		margin: 0 auto;
		transform: none;
	}

	.txtbgtop {
		background-size: 140% auto;
	}

	.txtbox {
		width: 90%;
		max-width: 950px;
	}

	.title {
		width: 80%;
		max-width: 365px;
		height: auto;
		aspect-ratio: 365 / 100;
	}

	.title img {
		width: 100%;
		height: auto;
	}

	p {
		font-size: 16px;
		line-height: 26px;
	}

	ol {
		font-size: 16px;
		line-height: 26px;
	}

	.picture01,
	.picture02 {
		width: 100%;
		height: auto;
		aspect-ratio: 800 / 464;
	}

	.cycenter {
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
	}

	.cytxt {
		width: 100%;
		text-align: center;
		margin-left: 0;
	}

	.notice {
		margin-left: 20px;
	}
}
