@charset "utf-8";
	/*--CSS Document --*/
	/*--google字型 --*/
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=Noto+Sans+TC:wght@100;500;700;900&display=swap');


@font-face {
    /*--處理中文難字問題 --*/
    font-family: 'tcav';
    src: url('fonts/mingliu.ttf') format('truetype');}

  *{font-family: 'Noto Sans TC', sans-serif;
	margin: 0;
	padding: 0;
	text-align: center;
	position: relative;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	transition: 0.8s;
	color: #333333;
	outline: none;}

/*-- 隱藏input數字預設輸入上下箭頭調整功能 --*/
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button{
	-webkit-appearance: none;
	margin: 0;}

img{border: 0;}

a:link, a:checked, a:visited{
	color:#ffff00;
	text-decoration: none;}

/*-- 預載Loading --*/
.loader{
	position: fixed;
	display: inline-block;
	height: 100vh;
	width: 100%;
	background: rgba(255, 255, 255, 0.8) url(../images/loading.svg) center no-repeat;
	background-size: 25%;
	z-index: 2;
	top: 0;
	left: 0;}

/*-- header --*/
header{
	width: 100%;
	height: 70px;
	background: #007c7c;
	position: sticky;
    top: 0;
	z-index: 999;}

.header-wrap{
	display: flex;
	margin: 0 auto;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding: 15px 2%;
	max-width: 1200px;}

.logo-wrap{
	display: inline-block;
	position: relative;
	width: auto;
	text-align: left;
	height: 40px;
	line-height: 4px;
	z-index: 1;
	color: #fff;
	font-size: 22px;}

.logo-wrap img{
	height: 100%;
	vertical-align: middle}

/*-- 選單 --*/
.navi-warp{
	display: inline-block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);}

.navi-warp ul{
	display: flex;
	justify-content: center;
	padding: 10px;}

.navi-warp ul li{
	list-style: none;
	display: inline-block;
	padding: 5px 15px;
	margin: 0 2px;
	color: #fff;
	border: 1px #007c7c solid;
	font-weight: 500;
	letter-spacing: 2px;
	cursor: pointer;
	border-radius: 5px;}

.navi-warp ul li:hover{
	color: #ffff00;
	transform: translateY(-5px);}

.navi-warp ul li a{color: #fff;}
.navi-warp ul li div.break{ display: none;}

body{
	background: #f4f1e9;}
/*	background: linear-gradient(180deg, #ffea67 0%, rgba(0, 212, 255, 1) 100%);}*/

/*-- 主內容區 --*/
/*======START=======*/
/*
.container{
	display: inline-block;
	width: 100%;
	background: url(../images/bigbg-clouds.png) center;
	background-size: auto;}
*/

/*-- 主視覺 --*/
.theme-wrap{
	display: inline-block;
	width: 100%;
	overflow: hidden;}

.theme{
	display: inline-block;
	width: 100%;
	max-width: 1200px;
	padding: 20px 2% 300px;}

.theme .theme-title .title {
	display: inline-block;
	width: 100%;
	max-width: 763px;}

.theme .theme-title .title > h1 {
	position: absolute;
	display: inline-block;
	color: rgba(00, 00, 00, 0);
	height: 0;
	overflow: hidden;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);}

.theme .theme-title .title > img{
	display: inline-block;
	width: 100%;}

/*
.title::before{
	content: '';
	position: absolute;
	display: inline-block;
	width: 54.39%;
	max-width: 415px;
	height: 68px;
	background: url(../images/title2024.png) bottom center no-repeat;
	background-size: contain;
	left: 8%;
    bottom: 42%;
	opacity: 0;
	animation: subtitle-ani 1s ease-in-out forwards;
	animation-delay: 1s;}
	@keyframes subtitle-ani{
		0%{ opacity: 0;
			transform: translateY( 50px);}
		100%{ 
			opacity: 1;
			transform: translateY( 0px);}
	}
*/

/*
.theme-bgCloud{
	display: inline-block;
	position: absolute;
	width: 100%;
	height:257px;
	background: url(../images/bg-clouds.png) center no-repeat;
	background-size: auto;
	top: 25%;
	left: 50%;
	transform: translate(-50%, -50%);}
*/

.theme-alung{
	position: absolute;
	display: inline-block;
	width: 50%;
	height: 85%;
	max-width: 350px;
	max-height: 500px;
	background: url(../images/theme-alung.png) bottom center no-repeat;
	background-size: contain;
	top: 56%;
	left: 52%;
	transform: translate(-50%, -50%);
	animation: alung-ani 2s ease-in-out infinite;}
	@keyframes alung-ani{
		0%{transform: translate(-60%, -50%) rotate(-3deg) scale(1);}
		50%{transform: translate(-55%, -50%) rotate(3deg) scale(1.05);}
		100%{transform: translate(-60%, -50%) rotate(-3deg) scale(1);}}

.theme-alung::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 107.8%;
	height: 78.83%;
	max-width: 509px;
	max-height: 190px;
	background: url(../images/theme-starsShine.gif) bottom center no-repeat;
	background-size: contain;
	top: 0%;
	left: 50%;
	transform: translate(-50%, -50%);}



.dateRibend{
	position: absolute;
	display: inline-block;
	width: 100%;
	max-width: 800px;
	height: 50%;
	max-height: 250px;
	background: url(../images/dateRiban.png)  center no-repeat;
	background-size: contain;
	left: 50%;
	bottom: -25%;
	transform: translate(-50%, 0);}

.dateRibendBack{
	position: absolute;
	display: inline-block;
	width: 89.64%;
	max-width: 684px;
	height: 35%;
	max-height: 350px;
	background: url(../images/theme-dateRibandback.png)  center no-repeat;
	background-size: contain;
	left: 50%;
	bottom: -42%;
	transform: translate(-50%, 0);}

.theme-shine{
	display: inline-block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(../images/theme-shine.png) center no-repeat;
	background-size: contain;
	top: 25%;
	left: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
	animation: shine-ani 2s ease-in-out infinite;}
	@keyframes shine-ani{
		0%{	opacity: 1; transform: translate(-50%, -50%) rotate(-5deg) ;}
		50%{ opacity: 0; transform: translate(-50%, -50%) rotate(5deg) ;}
		100%{ opacity: 1; transform: translate(-50%, -50%) rotate(-5deg) ;}
	}

.theme-bgMount{
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 60%;
	background: url(../images/theme-bgMount.png) top center no-repeat;
	background-size: auto;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);}


.theme-bush{
	position: absolute;
	display: inline-block;
	width: 100%;
	max-width: 1920px;
	height: 100%;
	left: 50%;
	top: 10px;
	transform: translateX(-50%);
	overflow: hidden;}

.theme-bush > span:nth-of-type(5){
	position: absolute;
	display: inline-block;
	width: 50%;
	height: 100%;
	max-width: 720px;
	background: url(../images/theme-bushR.png) center no-repeat;
	background-size: contain;
	left: -8%;
	top: 240px;}
	
.theme-bush > span:nth-of-type(6){
	position: absolute;
	display: inline-block;
	width: 50%;
	max-width: 723px;
	height: 100%;
	background: url(../images/theme-bushL.png) center no-repeat;
	background-size: contain;
	right: -8%;
	top: 255px;}

.theme-bush > span:nth-of-type(3){
	position: absolute;
	display: inline-block;
	width: 50%;
	height: 95%;
	max-width: 720px;
	background: url(../images/theme-bushR2.png) center no-repeat;
	background-size: contain;
	left: -8%;
	top:-6px;}
	
.theme-bush > span:nth-of-type(4){
	position: absolute;
	display: inline-block;
	width: 50%;
	max-width: 723px;
	height: 95%;
	background: url(../images/theme-bushL2.png) center no-repeat;
	background-size: contain;
	right: -10%;
	top:-6px;}
.theme-bush > span:nth-of-type(1) {
    position: absolute;
    display: inline-block;
    width: 14%;
    height: 100%;
    max-width: 500px;
    background: url(../images/theme-bushL3.png) center no-repeat;
    background-size: contain;
    left: 17%;
    top: 72px;
}
	
.theme-bush > span:nth-of-type(2) {
    position: absolute;
    display: inline-block;
    width: 20%;
    max-width: 500px;
    height: 100%;
    background: url(../images/theme-bushR3.png) center no-repeat;
    background-size: contain;
    right: 12%;
    top: 83px;
}

.theme-bluehead{
	display: inline-block;
	position: absolute;
	width: 100%;
	height: 80px;
	background: url(../images/theme-bgblueHead.png) center no-repeat;
	background-size: auto;
	left: 50%;
	transform: translateX(-50%);}

.tag-memberOnly{
	display: inline-block;
	position: absolute;
	width: 21%;
	max-width: 153px;
	height: 38%;
	max-height: 152px;
	background: url(../images/tag-memberonly.png) center no-repeat;
	background-size: contain;
	top: 30%;
	left: 25%;
	transform: translate(-50%, -50%);
	animation: memberOnly-ani 2s ease-in-out infinite;}
	@keyframes memberOnly-ani{
		0%{ transform: translate(-50%, -50%) rotate(3deg);
			transform-origin:  right bottom;}
		50%{ transform: translate(-50%, -50%) rotate(-3deg);
			transform-origin:  right bottom;}
		100%{ transform: translate(-50%, -50%) rotate(3deg);
			transform-origin:  right bottom;}
	}


/*-- 按鈕 --*/
.btn-wrap{
	display: inline-block;
	width: 100%;
	margin-bottom: 190px;}

.btn-wrap .btn{
	display: inline-block;
	position: absolute;
	width: 70%;
	max-width: 1200px;
	padding: 2%;
	left: 50%;
	top: 0;
	transform: translate( -50%, -45%);}

.btn a{
	display: inline-block;
	width: 100%;
	max-width: 600px;}

.btn-wrap a > img{
	display: inline-block;
	width: 100%;
	top: -5%;}


.btn a::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 16.33%;
	max-width: 90px;
	height: 38.76%;
	max-height: 88px;
	background: url(../images/alung-hand.png) center no-repeat;
	background-size: contain;
	left: 85%;
	top: 50%;
	transform: translate(-50%, -50%);
	animation: alung-hand-ani 2s ease-in-out infinite;}
	@keyframes alung-hand-ani{
		0%{ transform: translate(-50%, -50%) scale(1);}
		10%{ transform: translate(-62%, -62%) scale(0.85);}
		20%{ transform: translate(-50%, -50%) scale(1);}
		30%{ transform: translate(-62%, -62%) scale(0.85);}
		40%{ transform: translate(-50%, -50%) scale(1);}
		100%{ transform: translate(-50%, -50%) scale(1);}
	}


/*-- 裝飾小鳥群 --*/
/*
.birds-wrap{
	position: absolute;
	display: inline-block;
	text-align: center;
	width: 100%;
	height: 21.15%;
	max-height: 48px;
	top: -20px;
	left: 0;
	z-index: 1;}

.birds-wrap > span{
	display: inline-block;
	width: 9.5%;
	max-width: 58px;
	height: 100%;
	top: -0.1%;
	background: url(../images/deco-chick.png) center no-repeat;
	background-size: contain;
	animation: chick-ani 1s ease-in-out infinite;}
	@keyframes chick-ani{
		0%{transform: translateY(0);}
		50%{transform: translateY(-10%);}
		100%{transform: translateY(0px);}
	}

.birds-wrap > span:nth-of-type(2){
	width: 7%;
	animation-delay: 0.2s;}

.birds-wrap > span:nth-of-type(3){
	width: 7%;
	animation-delay: 0.4s;}

.birds-wrap > span:nth-of-type(4){
	width: 7%;
	animation-delay: 0.6s;}
*/

/*-- 活動區 --*/
.campaign-wrap{
	display: inline-block;
	width: 100%;
	padding: 0 2%;
	margin-bottom: 8%;}

.campaign-wrap.campLine{ margin-bottom: 2%;}

.campaign-wrap .campaign {
    display: inline-block;
    width: 100%;
    max-width: 1200px;
    padding: 30px 40px 30px 40px;
    border-radius: 20px;
}

.campaign-wrap.campNew .campaign:nth-of-type(1){
	display: inline-block;
    width: 100%;
    max-width: 680px;
	background: url(../images/cam1-contentBG.png) center no-repeat;
	background-size: contain;
	cursor: pointer;}

.campaign-wrap.campNew .campaign:nth-of-type(2){
	display: inline-block;
    width: 100%;
    max-width: 680px;
	background: url(../images/cam1-contentBG2.png) center no-repeat;
	background-size: contain;}

.campaign-wrap.campMember .campaign{
	background: #e6d9cb;}

.campaign-wrap.campLine .campaign{
	background: #7fed7f;}

.campaign h2{
	text-align: left;
	font-size: 10px;
	left: 0;
	top: 0;
	z-index: 1;}

.campaign-wrap.campNew h2{color: #7bb8e2;}
.campaign-wrap.campMember .campaign h2{color: #f7c5a5;}
.campaign-wrap.campLine .campaign h2{color: #a6eda6;}

.campaign > h2 > span {
    position: absolute;
    display: inline-block;
    width: 40%;
    max-width: 300px;
    left: 37%;
    top: 32%;
    transform: translate(-0, -30%);
}

.campLine .campaign > h2 > span{
	position: absolute;
	display: inline-block;
	width: 100%;
	max-width: 603px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);}

.campLine .campaign > h2 > span > img,
.campaign > h2 > span > img{
	display: inline-block;
	width: 100%;}


.campaign > .gift{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	background: #fff;
	padding: 20px;}

.campaign > div > span{
	display: inline-block;
	flex: 1;}

.campaign-wrap.campNew .campaign > div > span > img{
	display: inline-block;
	width: 100%;
	max-width: 460px;}

/*
.campNew .campaign > div::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 22%;
	max-width: 157px;
	height: 128px;
	background: url(../images/deco-gift1.png) center no-repeat;
	background-size: contain;
	right: -10%;
	bottom: -60px;
	z-index: 2;}

.campMember .campaign > div::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 22%;
	max-width: 157px;
	height: 128px;
	background: url(../images/deco-gift2.png) center no-repeat;
	background-size: contain;
	left: -10%;
	bottom: -60px;
	z-index: 2;}
*/

.linePoints{cursor: pointer;}
.linePoints::after{
	content: '';
	position: absolute;
    display: inline-block;
    width: 50.26%;
    max-width: 150px;
    height: 47.85%;
    max-height: 150px;
    background: url(../images/early-birds.png) center no-repeat;
    background-size: contain;
    left: 78%;
    top: 68%;
	transform: translate(-50%, -50%);
	animation: earlyBird-ani 3s linear infinite;}
	@keyframes earlyBird-ani{
		0%{transform: translate(-50% , -50%);}
		10%{transform: translate(-50% , -45%);}
		20%{transform: translate(-50% , -50%);}
		30%{transform: translate(-50% , -45%);}
		40%{transform: translate(-40% , -50%);}
		50%{transform: translate(-50% , -45%);}
		60%{transform: translate(-40% , -50%);}
		70%{transform: translate(-50% , -45%);}
		100%{transform: translate(-50% , -50%);}
	}

.campaign::before{
	content: '';
	position: absolute;
	display: inline-block;
	width: 10%;
	max-width: 74px;
	height: 21px;
	right: 5px;
	top: 20%;
	z-index: 1;}

/*
.campNew .campaign::before{
	background: url(../images/deco-doublelines-p.png) center no-repeat;
	background-size: contain;}
	
.campMember .campaign::before{
	background: url(../images/deco-doublelines-b.png) center no-repeat;
	background-size: contain;}
	
.campLine .campaign::before{
	background: url(../images/deco-doublelines-g.png) center no-repeat;
	background-size: contain;}
	
.campNew .campaign::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 46px;
	background: url(../images/deco-lightballs-y.png) center repeat-x;
	background-size: auto;
	left: 0;
	bottom: -20px;
	z-index: 1;
	pointer-events: none;}

.campMember .campaign::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 46px;
	background: url(../images/deco-lightballs-r.png) center repeat-x;
	background-size: auto;
	left: 0;
	bottom: -20px;
	z-index: 1;
	pointer-events: none;}
*/

/*新會員加碼*/
.tag-bonus{
	display: inline-block;
	position: absolute;
	width: 100%;
	max-width: 500px;
	height: 100%;
	max-height: 200px;
	background: url(../images/tag-bonus.png) center repeat-x;
	background-size: contain;
	z-index: 1;
	cursor: pointer;
	top: 50%;
	right: -5%;
	animation: tagbonus-ani 1s ease-in-out infinite;}
	@keyframes tagbonus-ani{
		0%{ transform:scale(1);}
		50%{ transform: scale(0.9);}
		100%{ transform: scale(1);}
	}
.tag-bonus2{
	display: inline-block;
	position: absolute;
	width: 100%;
	max-width: 500px;
	height: 100%;
	max-height: 200px;
	background: url(../images/tag-bonus2.png) center repeat-x;
	background-size: contain;
	z-index: 1;
	cursor: pointer;
	top: 50%;
	right: -5%;
		animation: tagbonus-ani 1s ease-in-out infinite;}
	@keyframes tagbonus-ani{
		0%{ transform:scale(1);}
		50%{ transform: scale(0.9);}
		100%{ transform: scale(1);}
/*
	animation: tagbonus-ani 1s ease-in-out infinite;}
	@keyframes tagbonus-ani{
		0%{ transform:scale(1);}
		50%{ transform: scale(0.9);}
		100%{ transform: scale(1);}
*/
	}

.tag-win {
    content: '';
    position: absolute;
    display: inline-block;
    width: 100%;
    max-width: 202px;
    height: 20%;
    max-height: 55px;
    top: 88%;
    left: 42%;
    transform: translate(-50%, -50%);
    z-index: 1;
}


/*會員限定*/
.campaign-wrap.campMember .campaign > div > span{margin: 2% 2% 4%;}
.campaign-wrap.campMember .campaign > div > span::after{
	content: '';
	position: absolute;
	display: inline-block;
	width: 17.1%;
	max-width: 53px;
	height: 14.76%;
	max-height: 53px;
	left: 5%;
	top: -5px;}


.campaign-wrap.campMember .campaign > div > span > img{
	display: inline-block;
	width: 100%;
	max-width: 600px;
	left: -15%;}



.cam2-g1,
.cam2-g2,
.cam2-g3-1,
.cam2-g3-2{
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 100%;
	background: url(../images/gift-5points.png) center no-repeat;
	background-size: contain;
	top: 0;
	left: 32%;}



.cam2-g1::before,
.cam2-g2::before,
.cam2-g3-1::before,
.cam2-g3-2::before{
	content: '';
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(../images/gift2-shines.png) center no-repeat;
	background-size: contain;
	animation: shine2-ani 1s ease-in-out infinite;
	animation-delay: 0s;}
	@keyframes shine2-ani{
		0%{ opacity: 1;}
		50%{ opacity: 0;}
		100%{ opacity: 1;}
	}
.cam2-g2::before{animation-delay: 0.2s;}
.cam2-g3-1::before{animation-delay: 0.4s;}
.cam2-g3-2::before{animation-delay: 0.4s;}
	
#gift3-2{display: none;}
#giftRule3-2{display: none;}
#giftRule3-2.show{display: flex;}


/*-- LINE優惠 --*/
.campaign-wrap.campLine .campaign > div {padding: 0;}
.campaign-wrap.campLine .campaign > div > span {
	display: inline-block;
	width: 100%;
    max-width: 600px;
	overflow: hidden;}
	
.campaign-wrap.campLine .campaign > div > span > img{
	display: inline-block;
	width: 100%;
	max-width: 600px;}

.linegifts{
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;}

.linegifts > span{
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	animation: linegifts-ani 2s ease-in-out infinite;}
	@keyframes linegifts-ani{
		0%{transform: translateY(-8px);}
		50%{transform: translateY(0px);}
		100%{transform: translateY(-8px);}
	}

.linegifts > span:nth-of-type(1){
	background: url(../images/giftLine-50points.png) center left 50px no-repeat;
	background-size: contain;
	animation-delay: 0.2s;}

.linegifts > span:nth-of-type(2){
	background: url(../images/giftLine-giftbox.png) center left 40px no-repeat;
	background-size: contain;
	animation-delay: 0.6s;}

.linegifts > span:nth-of-type(3){
	background: url(../images/giftLine-shine.gif) center left 40px no-repeat;
	background-size: contain;
	animation-delay: 0.6s;}

.bgShine{
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;}

.bgShine > span{
	position: absolute;
	display: inline-block;
	width: 300px;
	height: 300px;
	border-radius: 200000px;
	background: #fff;
	top: 50%;
	left: 50%;
	opacity: 0;
	transform: translate(-50%, -50%);
	animation: line-shine 5s ease infinite;}
	@keyframes line-shine {
		0%{opacity: 0;}
		25%{opacity: 1;}
		50%{opacity: 1;}
		75%{opacity: 0;}
		100%{opacity: 0;}
	}

.bgShine > span:nth-of-type(1){
	width: 1000px;
	height: 1000px;
	background: #6ed46e;
	animation-delay: 3s;}

.bgShine > span:nth-of-type(2){
	width: 700px;
	height: 700px;
	background: #91f191;
	animation-delay: 2s;}

.bgShine > span:nth-of-type(3){
	width: 500px;
	height: 500px;
	background: #b1ffb1;
	animation-delay: 1s;}

.bgShine > span:nth-of-type(4){
	background: #fff;
	opacity: 1;
	animation: none;}

/*alung*/
.deco-lineAlung{
	position: absolute;
	display: inline-block;
	width: 39.16%;
	max-width: 253px;
	height: 287px;
	background: url(../images/deco-camp3alung.png) bottom center no-repeat;
	background-size: contain;
	left: 0;
	bottom: -25%;
	animation:  lineAlung-ani 2s ease-in-out infinite;}
	@keyframes lineAlung-ani{
		0%{transform: translateY(0px);}
		20%{transform: translateY(-10px);}
		40%{transform: translateY(0px);}
		60%{transform: translateY(-10px);}
		80%{transform: translateY(0px);}
		100%{transform: translateY(0px);}
	}


.campaign-wrap.campLine > div::after{
	content: '★ 活動詳情依LINE活動網頁公告為準';
	display: inline-block;
	position: absolute;
	text-align: right;
	width: 100%;
	right: 0;
	bottom: 10px ;
	font-size: 14px;
	color: #333333;
	padding: 0 40px;}

#cam3-giftw_m{display: none;}


/*-- 按鈕 --*/
.btn-cta {
    display: inline-block;
    position: absolute;
    width: 100%;
    max-width: 300px;
    height: 70px;
    bottom: -44px;
    left: 50%;
    transform: translate(-50%, 0);}

.btn-cta.btn1{
	bottom: 0%;
	background: url(../images/btn-cta1.png) center no-repeat;
	background-size: contain;}

.btn-cta.btn2{
	background: url(../images/btn-cta2.png) center no-repeat;
	background-size: contain;
	left:30%;}

.btn-cta.btn3{
	background: url(../images/btn-cta3.png) center no-repeat;
	background-size: contain;
	left:70%;}



.btn-cta:hover,
.btn-cta:active{
	transform: translate(-50%, -5px)}


/*=======END========*/


/*-- 活動辦法 --*/
.rules-wrap{
	padding: 20px 2%;}

#rules-switch{display: none;}

.rules-title{
	display: inline-block;
	width: 100%;
	cursor: pointer;}

.rules-title h3 {
	display: block;
	color: #333333;
	font-size: 46px;
	width: 100%;}

.rules-title h3 > span{
	display: inline-block;
	position: absolute;
	width: 100%;
	max-width: 314px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;}

.rules-title h3 > span > img{
	display: inline-block;
	width: 100%;}

.rules{	max-width: 1200px;
	margin: 20px auto 10px;
	padding: 20px 2%;
	height: 0;
	overflow: hidden;
	padding: 0;
	background: #fff;
	border: 1px solid #fff;}

.rules-title::after{
	content: '';
	display: inline-block;
	position: absolute;
	width: 35px ;
	height: 30px;
	background: url(../images/deco-triangle.png) center no-repeat;
	background-size: contain;
	bottom: -40px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	transition: 0.5s;}

.rules ol {
	padding-left: 30px;
    padding-right: 10px;}

.rules > ol > li{
	color: #326360;
	font-size: 15px;}

.rules ol li{
	font-weight: 400;
	text-align: left;
	line-height: 24px;
	margin-bottom: 10px;}

.rules ol li h3{
	margin: 10px 0;
	text-align: left;
	font-size: 17px;
	white-space: pre-line;
	color: #326360;}
	
.rules ol li h3 span.break{display: none;}	
	
.rules ol li ol{
	padding: 5px;
	padding-left: 30px;
	margin-top: -5px;}

.rules ol li ol li{
	margin-left: 10px;
	list-style: square;
	font-weight: 400;
	margin-bottom: 5px;}

.rules ol li ul li span{color: #22b9ff;}

.rules ol li ol{padding-left: 5px;}
.rules ol li ol li{
	list-style: inherit;
    margin-bottom: 0;
    font-size: 15px;
    margin-left: 10px;
	color: #326360;}

.rules li{
	font-weight: 400;
	text-align: left;
	line-height: 24px;
	margin-bottom: 10px;}

/*活動辦法開關控制器*/
#rules-switch:checked ~ .rules{
	height: auto;
	padding: 30px 2%;}

#rules-switch:checked ~ .rules-title::after{
	bottom: -60px;
	transform: translateX(-50%) rotate(180deg);}

.rules a {color: #ff3c00;}

/* 獎項表格 */
.prize-table{
	display: inline-block;
	width: 100%;
	background: #fff;
	padding: 2px;
	margin: 20px 0;}

.prize-table .table-title,
.prize-table .table-content{
	display: flex;
 	align-items: center;}

.prize-table .table-title > span{color: #fff;}

.prize-table .table-title{background: #326360;}

.prize-table .table-title > span:nth-of-type(1),
.prize-table .table-content > span:nth-of-type(1){
	flex: 1;
	padding: 5px;
	word-break: break-all;}

.prize-table .table-title > span:nth-of-type(2),
.prize-table .table-content > span:nth-of-type(2){
	flex: 1;
	text-align: center;
	padding: 5px 10px;
	border-left: 1px #eee solid;
	border-right: 1px #eee solid;}

.prize-table .table-content > span:nth-of-type(2){text-align: left;}

.prize-table .table-title > span:nth-of-type(3),
.prize-table .table-content > span:nth-of-type(3){
	flex: 3;
	text-align: left;
	padding: 5px 10px;
	border-left: 1px #eee solid;
	border-right: 1px #eee solid;}

.prize-table .table-title > span:nth-of-type(3){text-align: center;}

.prize-table .table-title > span:nth-of-type(4),
.prize-table .table-content > span:nth-of-type(4){
	flex: 2;
	text-align: left;
	padding: 5px;}

.prize-table .table-title > span:nth-of-type(4){text-align: center;}

.mark-red{
	color: #db491d;
	font-weight: 600;}

.prize-table .table-content:nth-of-type(odd){background: #daedec;}

.prize-table-note{
	padding: 10px;
	padding-left: 30px;}

.prize-table-note > li{
	font-size: 13px;
	color: #ff1414;
	text-align: left;
	list-style: disc;
	letter-spacing: 0.2px;}



/*-----------------*/
/*----TO TOP ------*/
/*-----------------*/

.section-btnTop{
	display: inline-block;
	position: fixed;
	width: 100%;
	max-width: 1200px;
	height: 1px;
	margin: 0 auto;
	bottom: 25%;
	left: 50%;
	transform: translate(-50% , -50%);
	text-align: right;
	z-index: 99;}

.btnTop-Wrap{
	display: inline-block;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;}

.btnTop{
	position: relative;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 60px;
	border-radius: 30px;
	font-weight: 600;
	padding: 5px;
	background: #db491d;
	line-height: 50px;
	color: #fff;
	font-size: 1.2em;
	cursor: pointer;
	transition: 0.5s;
	box-shadow: 0 6px 16px -9px rgba(00, 00, 00, 0.8);}

.btnTop:active,
.btnTop:hover{
	color: #db491d;
	background: #ffff00;
	box-shadow: 0 6px 16px -9px rgba(00, 00, 00, 0);} 

.cno{
	display: block;
	text-align: right;
	width: 100%;
	background: #007c7c;
	color: #fff;
	padding: 5px 2%;
	z-index: -1;}

footer{
	padding: 10px 2%;
	background: #fff;
	font-size: 15px;
	z-index: 1;}

footer a{ color: #ff0943 !important;}


/*錨點--*/
#section1, #section2,
#section3, #section4{top: -100px;}



/* 2024-03 調整新增*/
.campaign-wrap.campMember h3{
	font-size: 28px;
    margin: 10px 0;
    padding: 10px 40px;
    width: 100%;
    display: inline-block;
    color: #333;}

.campaign-wrap.campMember h3 span{
    color: #ff1010;
	border-bottom: 2px solid #ff1010;}


/*popUp蓋版*/
.popUp-wrap{
	position: fixed;
	display: inline-block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(96, 116, 128, 0.8);
	z-index: 999;
	display: none;}

.popUp-wrap .popUp{
	position: absolute;
	display: inline-block;
	width: 96%;
	height: auto;
	max-width: 1000px;
	max-height: 90vh;
	padding: 20px 2%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	border-radius: 20px;
	display: none;
	animation: popUp-ani 0.5s ease forwards;}
	@keyframes popUp-ani{
		0%{opacity: 0;}
		100%{opacity: 1;}
	}

.popUp-wrap .popUp h2{
	font-size: 48px;
	color: #ff5400;
	padding: 5px;}

.popUp-wrap .popUp p{
	font-size: 26px;	
	padding: 5px;}

.popUp-wrap .popUp p span{ color: #ff5400;}

.popUp-wrap .popUp .pic-wrap{
	display: inline-block;
	width: 100%;
    height: 100%;
	max-width: 90%;
    max-height: calc(100% - 25%);
	overflow-y: auto;
	padding: 2%;}

.popUp-wrap .popUp .pic-wrap img{
	display: inline-block;
	width: 100%;}

#step01Pc, #step02Pc{ max-width: 926px;}
#step01Mobile, #step02Mobile{
	display: none;
	max-width: 630px;}

.popUp.pop01::after{
	content: '';
	position: absolute;
	display: inline-block;
	left: 50%;
	top: 0px;
	transform: translate(-50%,-50%);
	width: 53px;
	height: 53px;
	background: url(../images/tag-b.png) center no-repeat;
	background-size: contain;}

.popUp.pop02::after{
	content: '';
	position: absolute;
	display: inline-block;
	left: 50%;
	top: 0px;
	transform: translate(-50%,-50%);
	width: 53px;
	height: 53px;
	background: url(../images/tag-c.png) center no-repeat;
	background-size: contain;}

.btn-close1,
.btn-close2{
	position: absolute;
	display: inline-block;
	top: 2%;
	right: 2%;
	width: 40px;
	height: 40px;
	cursor: pointer;
	background: url(../images/btn-close.png) center no-repeat;
	background-size: auto;
	z-index: 1;}

