html {
	font-size: 55%
}

@media (min-width:768px) {
	html {
		font-size: 62.5%
	}

}

body {
	overflow-x: hidden;
	font-family: 'Josefin Sans', Arial, sans-serif, "微軟正黑體", "Microsoft JhengHei";
	background-color: #FCFCFC;
	color: #666666;
	text-align: center;
	font-size: 1.6rem;
}

p {
	line-height: 1.75;
}

h1 {
	font-size: 4rem;
}

h2 {
	font-size: 2.1rem;
}

h3 {
	font-size: 2.2rem;
}

a {
	color: #32b48e;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out
}

a.active,
a:active,
a:focus,
a:hover {
	color: #002E5D;
}

section {
	padding: 75px 0;
}

section .title-circle {
	display: inline-block;
	background: url(../img/icon_title.png) no-repeat left top;
	font-weight: 800;
	color: #FFFFFF;
	font-size: 5.5rem;
	background-size: 90%;
	height: 90px;
	width: 90px;
	line-height: 100px;
}

section .title {
	font-weight: 800;
	margin-bottom: 50px;
	font-size: 3.5rem;
}

section .pink {
	color: #32b48e;
	border-bottom: 4px #32b48e solid;
}

section .white {
	color: #FFFFFF;
	border-bottom: 4px #FFF solid;
}

@media (min-width:768px) {
	section {
		padding: 100px 0
	}

	section .title-circle {
		height: 100px;
		width: 100px;
		line-height: 120px;
	}

}

::-moz-selection {
	background: #FFDD00;
	text-shadow: none
}

::selection {
	background: #FFDD00;
	text-shadow: none
}

img::selection {
	background: 0 0
}

img::-moz-selection {
	background: 0 0
}

.flexbox {
	display: flex;
	align-items: center;
}

.d-1 {
	animation-delay: 0.1s
}

.d-2 {
	animation-delay: 0.2s
}

.d-3 {
	animation-delay: 0.3s
}

.d-4 {
	animation-delay: 0.4s
}

.d-5 {
	animation-delay: 0.5s
}

.d-6 {
	animation-delay: 0.6s
}

.d-7 {
	animation-delay: 0.7s
}

.d-8 {
	animation-delay: 0.8s
}

.mb-50 {
	margin-bottom: 5rem;
}

/* Nav */
.mainNav {
	background-color: #0176a2;
	min-height: 60px;

}
@media (max-width:767px) {
	.mainNav {
		display:table-cell;
		overflow:auto;
		
	}
	.mainNav .language-ul{padding-bottom: 50px;} 
}
.responsive{height:100% !important;}

			

.mainNav .navbar-toggler {
	right: 0;
	padding: 10px;
	color: #FFFFFF;
	border: 0
}

.mainNav .navbar-nav .nav-item .nav-link {
	font-weight: 900;
	padding: 0.8em 0;
	color: #FFFFFF;
}
.mainNav .navbar-nav .nav-itemspec .nav-link {
	font-weight: 900;
	padding: 0.8em 0;
	color: #cc0000;

	text-shadow: -1px 0 #ffdd00, 0 1px #ffdd00,
	  1px 0 #ffdd00, 0 -1px #ffdd00;
	background: url(../img/nav-itemspec.png) top left no-repeat;
}
.mainNav .navbar-nav .nav-item .nav-link.active,
.mainNav .navbar-nav .nav-item .nav-link:hover {
	color: #32b48e;
}
.mainNav .navbar-nav .nav-itemspec .nav-link.active,
.mainNav .navbar-nav .nav-itemspec .nav-link:hover {
	color: #ffffff;
	text-shadow: -1px 0 #cc0000, 0 1px #cc0000,
      1px 0 #cc0000, 0 -1px #cc0000;
}
.dropdown-menu {
	font-size: 1.8rem;
}


@media (min-width: 768px){

	.modal-dialog img{
		max-width: 768px;

	}

}


@media (max-width: 767px){
	.mainNav .navbar-nav .nav-itemspec .nav-link {
		background:transparent !important;	}
	
}
.dropdown-item {
	padding: 0.5rem 3rem;
}

@media (min-width:992px) {
	.mainNav .navbar-nav .nav-item .nav-link {
		padding: 1rem 1.5rem !important;
	}
	.mainNav .navbar-nav .nav-itemspec .nav-link {
		padding: 1rem 1.5rem 1rem 1.9rem !important;
	}
}

.language a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f57d";
	margin-right: 5px;
}

header.masthead {
	margin-top: 60px;
}

header.masthead img {
	margin: 0
}

/* gifts */
section.gifts {
	padding: 50px 0 0 0;
}

.gifts-bonus-pic {
	position: relative;
	border-radius: 1rem;
	margin-bottom: 30px;
}
.gifts-bonus-pic h2{

	color: #32b48e;;
	font-weight: bold;
	width: 100%;
	padding: 10px 10px;
	margin: 0;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	text-align: left;
	box-sizing: border-box;

	
}
.gifts-bonus-pic .h2spec{

}
.gifts-bonus-pic img {
	width: 100%;
}

.gifts-bonus-text {
	color: #FFFFFF;
	text-align: left;
}

.gifts-bonus-text h2 {
	position: absolute;
	font-weight: 700;
	top: 2rem;
	left: 15px;
	background-color: #f7ab43;
	padding: 0.8rem 2rem 0.2rem 2rem;
	border-radius: 0 10rem 10rem 0;
	display: inline-block;
}

.gifts-bonus-text h3 {
	position: absolute;
	font-weight: 700;
	line-height: 1.1;
	bottom: 2rem;
	left: 5px;
	font-size: 2rem;
	margin: 0 2rem;
	text-shadow: rgba(0, 0, 0, 0.6) 1px 1px 3px;
}

/* bonus */
section.bonus {
	padding: 10px 0;
}

/* shop */
.shop {
	background: url(../img/bg_store.jpg) no-repeat center center fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

@media (max-width:1199.98px) {
	.shop {
		background-attachment: scroll;
	}

}

/* map */
.img-fluid{
	margin-bottom: 20px;
}
section.map {
	padding: 100px 0 0 0;
}

.map .container {
	padding-right: 0;
	padding-left: 0;
}

.map .map-pic img {
	border-radius: 0rem;

}

.map .map-pic {
	position: relative;
}

.map .map-download {
	position: absolute;
	top: 2rem;
	right: 2rem;
}

.map .btn-warning {
	padding: 0.5rem 1.5rem;
	border-radius: 10rem;
	font-size: 1.8rem;
	color: #FFFFFF;
	font-weight: 700;
}

@media (min-width:576px) {
	.map .map-pic img {
		border-radius: 2rem;
	}

}

@media (min-width:992px) {
	.map .container {
		padding-right: 15px;
		padding-left: 15px;
	}

}

/* discounts */
section.discounts {
	padding: 0;

}

.discounts h1 {
	color: #32b48e;
	font-weight: 700;
	margin: 50px 0 30px 0;
}

.discounts h1 img {
	margin-right: 10px;
	vertical-align: initial;
}

.discounts .store-list {
	background-color: #FFFFFF;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	border-radius: 10px;
	margin-bottom: 30px;
}
.discounts .store-list p{
	margin: 15px;
	padding-bottom: 15px;
	border-bottom: 5px dotted #d2d2d2;
	min-height: 120px;
}
.discounts .store-list .fa-ul li{
	margin: 5px 0;
}
.discounts .store-title {
	padding: 15px 10px 15px 10px;
	color: #32b48e;
}

.discounts .store-number {
	position: relative;
	display: table-cell;
}

.discounts .store-number h2 {
	position: absolute;
	color: #FFFFFF;
	padding: 5px;
	font-weight: 700;
}

.discounts .store-number i {
	font-size: 3.5rem;
}

.discounts .store-name {
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.1;
	display: table-cell;
	padding: 0 0 0 5px;
}

.discounts .store-img {
	position: relative;
}

.discounts .store-img img {
	width: 100%;
}

.discounts .store-logo {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	text-align: right;
}
.discounts .store-logo img{
	width: 70%;
}
.discounts .store-content {
	padding: 5px 15px 5px 0px;
}

.discounts .store-content i {
	color: #32b48e;
}
.store-content .fa-ul li{
	word-wrap:break-word;
	word-break:break-all;
}
@media (min-width:768px) {
	.discounts .tw .store-content {
		min-height: 270px;
	}

	.discounts .en .store-content {
		min-height: 340px;
	}

	.discounts .en .store-name {
		font-size: 2.2rem;
	}

	.discounts .jp .store-content {
		min-height: 380px;
	}

	.discounts .kr .store-content {
		min-height: 340px;
	}

}

/* exchange */
.exchange h3 {
	color: #F9587B;
	margin-top: 30px;
}

.exchange .badge-block {
	background-color: #F9587B;
	color: #FFFFFF;
	padding: 0.8rem 2rem 0.2rem 2rem;
	border-radius: 10rem;
	width: 100%;
}

/* traffic */
.traffic {
	background: url(../img/bg_traffic.jpg) no-repeat center center fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

@media (max-width:1199.98px) {
	.traffic {
		background-attachment: scroll;
	}

}

.traffic h2 {
	margin: 50px 0 25px 0;
	background-color: #FF8DA8;
	color: #FFFFFF;
	font-weight: 700;
	padding: 0.8rem 2rem 0.2rem 2rem;
	border-radius: 10rem;
	display: inline-block;
}

.traffic p {
	color: #FFFFFF;
	margin: 0;
}

/* Notice */
.notice {
	background: url(../img/bg_notice.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.notice .badge-block {
	background-color: #F9587B;
	color: #FFFFFF;
	padding: 0.4rem 1.2rem 0.1rem 1.2rem;
	border-radius: 10rem;
	display: inline-block;
}

.notice ol {
	padding-inline-start: 15px;
}

footer {
	background: #32b48e;
	color: #FFFFFF;
	padding: 5px;
}

.col-margin-bottom {
	margin-bottom: 5rem
}

.col-margin-bottom:last-child {
	margin-bottom: 0
}

@media (min-width:992px) {
	.col-margin-bottom {
		margin-bottom: 0
	}

}

/* scrollup */
.scrollup {
	width: 50px;
	height: 50px;
	border-radius: 100%;
	opacity: .75;
	position: fixed;
	bottom: 20px;
	right: 20px;
	color: #FFFFFF;
	cursor: pointer;
	background-color: #F9C300;
	z-index: 1000;
	transition: opacity .5s, background-color .5s;
	-moz-transition: opacity .5s, background-color .5s;
	-webkit-transition: opacity .5s, background-color .5s;
	display: none
}

.scrollup:hover {
	opacity: 1
}

.scrollup i {
	font-size: 28px;
	position: absolute;
	opacity: 1;
	color: #FFFFFF;
	left: 50%;
	top: 50%;
	margin-top: -15px;
	margin-left: -12px;
	text-decoration: none
}


/*兌換點資訊*/
.redemption_img{
	padding: 10px 10px 20px 10px;
}
#eticket .store-list{
	background: #fff;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	border-radius: 10px;
	margin-bottom:30px;
}
#eticket .store-title{
	padding: 10px;
	color: #F9587B;
}
#eticket .store-name{
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.1;
	display: table-cell;
	padding: 0 0 0 5px;
	text-align:left;
}
#eticket .store-number{
	position:relative;
	display:table-cell;
}
#eticket .store-number h2{
	position:absolute;
	color: #fff;
	padding: 5px;
	font-weight:700;
}
#eticket .store-number i{
	font-size:3.25rem;
}
#eticket .store-content{
	padding: 15px 15px 5px 0;
}
#eticket .store-content i{
	color: #FF8DA8;
}
#eticket .fa-ul{
	list-style: none;
	margin-left: 2.5em;
	padding-left: 0;
}
#eticket .fa-ul li{
	position:relative;
	text-align: left;
}
#eticket .fa-ul li ul{
	padding: 0;
	margin:0;
}
#eticket .fa-ul li ul li{
	list-style:none;
	list-style-image: none;
	margin:5px 0;
}

/*popup2*/
.modal-content-dm{

	background: url(../img/module_dm.jpg) repeat left top;
	
}
.modal-content-info{

	margin: 15px;
	min-height: 300px;
	border: 6px solid #df3018;
	padding: 20px;
	background: url(../img/red_paper.png) top right no-repeat;
}
.modal-content-info h2{
	color: #df3018;
	font-weight: 900;
	margin-bottom: 15px;
}
.modal-content-item-title{
	text-align:left;
}
.modal-content-item-title label{
	border-radius: 30px;
	padding:3px 16px;
	background: #df3018;
	color: #fff;
	font-size:18px;
	font-weight:bold;
	margin-right:15px;
	margin-top: 10px;
}
.modal-content-item-title span{
	color: #df3018;
	font-weight: bold;
	text-align:left;
	font-size:18px;
	line-height: 1.9em;
}
.modal-content-item{
	color: #df3018;
	font-weight: bold;
	text-align:left;
	font-size:18px;
}
.modal-content-item label{
	color: #df3018;
	font-weight: bold;
	text-align:left;
	font-size:16px;
}
@media (max-width: 767px) {
	.modal-content-item label{
		display: block;
		font-size: 18px;
	}
	.modal-content-item span{
		display: none;
	}	
  }
.modal-content-item a:link,.modal-content-item a:visited{
	color: #df3018;
	text-decoration: underline;
}
.modal-content-item a:hover{
	text-decoration: underline;
}

.modal-content-item-logo{
	margin-top:15px;
	margin-bottom: 15px;
}

