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

html { width:100%; height:100%; overflow:auto; min-height:0 !important; }
body { background:white; color:white; -webkit-text-size-adjust:none; }
html, body, textarea, select, input, button { font:12px/18px "Helvetica","微軟正黑體","Microsoft Jhenghei", Helvetica, Arial, sans-serif; }
body, html, *, div { margin:0; padding:0; box-sizing:border-box; }
h1, h2, h3, h4, h5, h6 { cursor:default; }
select { font-family:"Montserrat",Lucida Grande, Arial, Helvetica, sans-serif; letter-spacing:0; color:#5F5C5C; }
table { border:none; border-collapse:collapse; border-spacing:0; }
img { border:none; }
a { text-decoration:none; color:#ffffff; cursor:pointer; transition:color 300ms; }
a:hover { color:#ee3124; text-decoration:none; }
a.active { color:#583f3b; }
a:focus { outline:none; color:#ee3124; }
p { font-size:1em; margin-bottom:1.5em; line-height:1.5em; cursor:text; }
input[type="button"], input[type="reset"], input[type="submit"] { padding:4px 15px; background:#ee3124; color:white; border:0; cursor:pointer; }
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { background:#ff9900; }
input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active { border:1px solid #f74096; padding:5px 14px 3px 16px; }
input[type="text"],input[type="password"],input[type="data"], input[type="number"] { padding:8px; color:#666666; border:0; border-radius:1px; }
textarea { padding:8px; color:#666666; border:0; border-radius:1px; }
::-webkit-input-placeholder { color:#bcbec0; font-size:1em; }
:-moz-placeholder { color:#bcbec0; }
::-moz-placeholder { color:#bcbec0; }
:-ms-input-placeholder { color:#bcbec0; }

@font-face {
  font-family: 'Montserrat';
  src: url('font-face/montserrat-semibold-webfont.eot'); /* IE9 Compat Modes */
  src: url('font-face/montserrat-semibold-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('font-face/montserrat-semibold-webfont.woff') format('woff'), /* Modern Browsers */
       url('font-face/montserrat-semibold-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('font-face/montserrat-semibold-webfont.svg#2eb9a020d90588d099da01ff1a93c338') format('svg'); /* Legacy iOS */
       
  font-style:   normal;
  font-weight:  700;
}

@font-face {
  font-family: 'Montserrat';
  src: url('font-face/montserrat-light-webfont.eot'); /* IE9 Compat Modes */
  src: url('font-face/montserrat-light-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('font-face/montserrat-light-webfont.woff') format('woff'), /* Modern Browsers */
       url('font-face/montserrat-light-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('font-face/montserrat-light-webfont.svg#c152625b71562a7bb7b752375273b2d5') format('svg'); /* Legacy iOS */
       
  font-style:   normal;
  font-weight:  200;
}

@font-face {
  font-family: 'Montserrat';
  src: url('font-face/montserrat-regular-webfont.eot'); /* IE9 Compat Modes */
  src: url('font-face/montserrat-regular-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('font-face/montserrat-regular-webfont.woff') format('woff'), /* Modern Browsers */
       url('font-face/montserrat-regular-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('font-face/montserrat-regular-webfont.svg#95d90f2cd2aa64bdfee0e9f34c516e71') format('svg'); /* Legacy iOS */
       
  font-style:   normal;
  font-weight:  400;
}




/* UTIL */

.clr { clear:both; zoom:1; height:0; font-size:0; line-height:0; }
.floatL { float:left; }
.floatR { float:right; }
.hide { display:none; }
.alignCtr { text-align:center; }
.alignBtm { vertical-align:bottom; }
.alignRight { text-align:right; }

.desktop { display:block !important; }
.mobile { display:none !important; }

.underline { text-decoration:underline; }
.underline:hover { text-decoration:underline; }

@media screen and (max-width: 767px) {
	.desktop { display:none !important; }
	.mobile { display:block !important; }
}




/* COMMON */

body { text-align:center; width:100%; height:100%; }

.fa { font-family:FontAwesome !important; }

.block_group, .block_wrapper { position:relative; float:left; display:block; width:100%; vertical-align:top; }
.block_container { margin:0 auto; display:block; max-width:1320px; width:100%; }
.base { text-align:left; margin:0 auto; }

.errmsg { color:red; font-size:12px; padding:5px 0; position:absolute; }

.drop_shadow { box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.3); }

.general_btn { background-color:#ee3124; padding:8px; border-radius:4px; width:100%; text-align:center; color:white; }
.general_btn:hover { background-color:#ff9900; color:white; }




/* SHELL */

.app { position:relative; display:inline-block; vertical-align:top; overflow:hidden; min-height:100%; width:100%; }

.page_box {
	position:relative; display:inline-block; vertical-align:top; width:100%; background-color:#333333;
	transition:transform 300ms; -webkit-transition:-webkit-transform 300ms; -ms-transition:-ms-transform 300ms;
	
	transform:translate3d(0, 0px, 0px); -webkit-transform:translate3d(0, 0px, 0px); -ms-transform:translate3d(0, 0px, 0px);
}


@media screen and (min-width: 768px) {
	
}
@media screen and (max-width: 767px) {
	
}




/* MAIN */

#base_main { background-color:#f2f2f2; }
#base_main h1 { font-size:48px; font-weight:700; color:#efc917; line-height:1.3em; margin-bottom:1.49em; }
#base_main h2 { font-size:36px; color:#404041; line-height:1.1em; margin-bottom:.54em; letter-spacing:-2px; }
#base_main h3 { font-size:24px; color:#404041; line-height:1.3em; margin-bottom:.54em; }
#base_main p { font-size:20px; line-height:1.3em; margin-bottom:1.54em; }
#base_main p.big { font-size:28px; margin-bottom:1.54em; }
#base_main ul, #base_main ol { font-size:18px; line-height:1.3em; text-align:left; padding-left:24px; margin-bottom:0; }
#base_main ul li, #base_main ol li { margin-bottom:4px; }
#base_main .img + p { margin-top:1.54em; }

.block_wrapper .content_block { padding:225px 138px 120px; position:relative; }

#base_contents .base { padding:0 28px; }
.content_block { width:100%; display:inline-block; vertical-align:top; }

#box_intro { background:#3a568f url('../img/bg-radial.jpg') no-repeat center top; background-size:1920px; }
#box_intro .content_block { padding:225px 138px 120px; position:relative; }

.box_prize { background:#eec918 no-repeat center top; background-size:1920px; }
.box_prize .content_block { padding:225px 138px 328px; position:relative; text-align:center; }
#box_prize_2hr { background-image:url('../img/bg-prize_2hr.jpg'); }

.box_desc { background-color:white; }
.box_desc .content_block { padding:0 138px 60px; position:relative; text-align:center; }

#box_prize_isle_hdr { background-color:#3a568f; border-top:10px solid #293d66; }
#box_prize_isle_hdr .content_block { padding:90px 138px 36px; position:relative; }

#box_prize_isle { background-color:#c7b299; background-image:url('../img/bg-prize_isle.jpg'); }


.img { display:inline-block; vertical-align:top; position:relative; }
.img img { width:100%; float:left; }

.img.logo { text-align:center; width:100%; max-width:1047px; margin-bottom:103px; }
.img.kiss { width:100%; max-width:285px; display:inline-block; vertical-align:top; position:absolute; right:10%; top:756px; }
.img.slogan { width:100%; display:inline-block; vertical-align:top; text-align:center; }
.img.prize_2hr { width:100%; max-width:286px; margin-bottom:36px; }
.img.app { width:100%; margin:18px 0 0; }
.img.app a { float:left; width:40%; margin-right:28px; margin-bottom:18px; }
.img.emoji_love { width:100%; max-width:112px; margin-bottom:28px; }


.intro_hdr { width:100%; float:left; }
.intro_hdr h1 { float:left; }
.intro_hdr .img { float:right; }

.deco_border { width:100%; position:absolute; background-size:1920px; background-position:top center; background-repeat:repeat-x; width:100%; height:42px; left:0; top:100%; z-index:2; }
.deco_border.wave { background-image:url('../img/art-wave.png'); }

.deco { position:absolute; }
.deco img { width:100%; position:relative; float:left; }
.deco.mouth_splash { width:133px; right:-10%; bottom:-50px; min-width:100px; }
.deco.fruits { width:214px; right:-10%; bottom:-50px; min-width:100px; }
.deco.tree { width:130px; left:10%; bottom:100%; min-width:65px; }

.prize_card { max-width:518px; width:100%; border-top:15px solid #404041; border-radius:8px; padding:60px 40px; background-color:white; display:inline-block; vertical-align:top; color:#404041; position:relative; } 
.prize_card h3 { text-align:left; }
.prize_card h3 br { display:none; }
.prize_card .table { display:table; width:100%; line-height:1.6em; font-size:18px; }
.prize_card .table > * { display:table-row; }
.prize_card .table > * > * { display:table-cell; text-align:left; }

.prize_howto { width:100%; background-color:#404041; border-radius:16px; padding:36px 80px; margin-top:-250px; margin-bottom:50px; display:flex; justify-content:flex-start; position:relative; }
.prize_howto .icon { width:12%; }
.prize_howto .howto { width:88%; padding-left:28px; text-align:left; }
.prize_howto .howto h2 { color:white !important; }
.prize_howto .howto ol { width:100%; }

.terms { color:#b3b3b3; display:inline-block; width:60%; }
.terms h2 { color:#b3b3b3 !important; text-align:left; }

.title h1 { margin-bottom:28px !important; }




@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { 

}

@media screen and (min-width: 1921px) {
	
}
@media screen and (max-width: 1480px) {
	
}
@media screen and (max-width: 1320px) {	
	#base_main h1 { font-size:36px; }
	#base_main h2 { font-size:28px; }
	#base_main h3 { font-size:18px; }
	#base_main p { font-size:18px; }
	#base_main p.big { font-size:24px; }
	#base_main ul, #base_main ol { font-size:18px; }
	
	#box_intro { background-size:145.45%; }
	#box_prize_2hr { background-size:145.45%; }
	#base_main > .block_wrapper .content_block { padding:17vw 10.45vw 9vw; }
	
	.box_prize .content_block { padding-bottom:24.848vw !important; }
	
	.box_desc .content_block { padding-top:0 !important; padding-bottom:6.54vw !important; }
	
	#box_prize_isle_hdr .content_block { padding-top:10vw !important; padding-bottom:5vw !important; }

	.img.logo { margin-bottom:7.8vw; }
	.img.kiss { width:21.59vw; top:57.27vw; }
	
	.deco_border { height:3.18vw; background-size:145.45%; }
	.deco.mouth_splash { bottom:-3.787vw; width:10vw; }
	.deco.fruits { right:-5%; bottom:-3.787vw; width:16.21vw; }
	.deco.tree { width:9.8vw; }
	
	.prize_card .table { font-size:18px; }
	
	.prize_howto { margin-top:-18.939vw; margin-bottom:5.787vw; }
	
	.terms { width:100%; }
	
}
@media screen and (max-width: 1215px) {
	
}
@media screen and (min-width: 1199px) {

}
@media screen and (min-width: 1081px) {
	
}
@media screen and (max-width: 1080px) {
	
}
@media screen and (min-width: 960px) {

}
@media screen and (max-width: 959px) {/* Essential */	
	#base_main h1 { font-size:28px; }
	#base_main h2 { font-size:24px; }
	#base_main h3 { font-size:18px; }
	#base_main p { font-size:18px; }
	#base_main p.big { font-size:18px; }
	#base_main ul, #base_main ol { font-size:18px; }
	
	.prize_card .table { font-size:18px; }
	
	.prize_howto { display:inline-block; }
	.prize_howto .icon { width:100%; }
	.prize_howto .howto { width:100%; padding-left:28px; text-align:left; padding-left:0; padding-right:0; }
}
@media screen and (min-width: 768px) {
	
}
@media screen and (max-width: 767px) {	
	#base_contents .base { padding:0 18px; }
	
	#base_main h1 { font-size:24px; }
	#base_main h2 { font-size:24px; }
	#base_main h3 { font-size:16px; }
	#base_main p { font-size:16px; }
	#base_main p.big { font-size:16px; }
	#base_main ul, #base_main ol { font-size:14px; }
	
	.img.kiss { top:55.27vw; }
	.img.prize_2hr { max-width:172px; margin-bottom:18px; }
	.img.app a { width:70%; max-width:250px; clear:both; margin-right:0; margin-bottom:18px; }
	.img.emoji_love { max-width:56px; }
	
	.prize_card { padding:30px 28px; }
	.prize_card .table { font-size:14px; }
	
	.prize_howto { padding:30px 28px; border-radius:8px; }
}
@media screen and (max-width: 669px) {/* Essential */
	
}
@media screen and (max-width: 600px) {/* Coupon Card */
	
}
@media screen and (max-width: 479px) {/* Essential */
	#base_main > .block_wrapper .content_block { padding-left:5vw; padding-right:5vw; }
	
	#base_contents .base { padding:0 10px; }
	
	.img.app a { width:95%; max-width:none; }
	
	.deco.mouth_splash { right:0; }
	
	.prize_card h3 br { display:block; }
	.prize_card .table { line-height:1.3em; }
	.prize_card .table > * > * { display:block; }
	.prize_card .table > * > *:nth-child(even){ margin-bottom:10px; }
	
	.prize_howto { margin-bottom:7.272vw; }
	.terms { padding-left:10px; padding-right:10px;  }
}
@media screen and (max-width: 349px) {
	
}
@media print and (max-width: 1320px) {
	
}
