@charset "UTF-8";
/**
 * 
 * @authors TWM Marcom WebTeam
 * @date    2019-12-06
 * @version 1.2
 */

#containerBox {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	font-family: "Noto Sans TC", "Heiti TC", 微軟正黑體, "Microsoft JhengHei";
}

.sec {
	position: relative;
}

.pc-show {
	display: block;
}

.mobile-show {
	display: none;
}

/*#sharebar { display:none !important; visibility:hidden !important; }  打開註解即隱藏sharebar*/

@media screen and (min-width: 0px) and (max-width: 640px) {

	/*行動版*/
	#frameHeader {
		display: none;
	}

	#containerBox {
		padding: 0;
		width: 100%;
	}

	.mobile-show {
		display: block;
	}

	.pc-show {
		display: none;
	}
}

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

	/*平板版*/
	#frameHeader {
		/*display: none;*/
	}

	#containerBox {
		/*padding-top: 110px; width: 100%;*/
	}

	.pc-show {
		display: none;
	}

	.mobile-show {
		display: block;
	}
}


/* ================================================常用電腦版樣式================================================ */

/* 活動主視覺 */
/*.kv {
	width: 100%;
	height: 915px;
	background: url(../images/kv.jpg) no-repeat center top transparent;
	position: relative;
	background-size: cover;
	
}
*/
.kv .topbtn {
	width: 190px;
	height: 60px;
	top: 280px;
	margin-left: auto;
	margin-right: auto;
	left: 0;
	right: 450px;
	position: absolute;
}

.kv .topbtn a img {
	width: auto !important;
}

.container.container-md {
	max-width: 1280px;
}

/* 資費表格樣式 */
.plan-table-box {
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	box-shadow: 0 0 10px #ccc;
	border: 2px #ccc solid;
	margin: 30px 20px;
	line-height: 1.6em;
}



table.plan-table {
	width: 100%;
	margin: 0 auto;
	font-size: 1.2em;
	padding: 8px;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}

table.plan-table th {
	background: #434247;
	text-align: center;
	padding: 10px 5px;
	border-bottom: 1px #cccccc solid;
	border-right: 1px #cccccc solid;
	color: #ffffff;
	font-weight: bold;
	font-size: 1.25rem;
}

table.plan-table td {
	padding: 10px 5px;
	border-bottom: 1px #cccccc solid;
	border-right: 1px #cccccc solid;
	text-align: center;
	font-size: 1.25rem;
}

table.plan-table tr:nth-child(odd) {
	background-color: #fff;
}

table.plan-table tr:nth-child(even) {
	background-color: #ffffff;
}

table.plan-table ul {
	text-align: left;
	padding-left: 24px;
}

table.plan-table ul li {
	list-style: disc;
}

th.thbg1 {
	background-color: #906b3d !important;
}

th.thbg2 {
	background-color: #90443d !important;
}

.gift-table {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0 15px;
}

@media (max-width: 640px) {
	.gift-table {
		padding: 0px;
	}

	table.table-align-middle {
		width: 700px;
	}
}



/* 文字樣式 */
.txt-primary-orange {
	color: #ff6100 !important;
}

.txt-primary-blue {
	color: #00a0e9 !important;
}

.txt-support-red {
	color: #e66068 !important;
}

.txt-support-yellow {
	color: #f4b541 !important;
}

.txt-support-green {
	color: #90c242 !important;
}

.txt-support-blue {
	color: #3662a5 !important;
}

.txt-support-lite-blue {
	color: #7ea3c8 !important;
}

.txt-support-grey {
	color: #333333 !important;
}

.txt-support-lite-grey {
	color: #9b9b9b !important;
}

.txt-support-white {
	color: #ffffff !important;
}

.txt-support-lite-yellow {
	color: #ebe800 !important;
}

/* 內容標題樣式 */
.super {
	width: auto;
	margin: 1.5em auto 1.5em auto;
	padding: 10px 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	text-align: center;
	display: table;
}

.sub-title {
	color: #333;
	font-weight: bold;
	display: table;
	margin: 20px auto;
}

/* .sub-title:before,
.sub-title:after {
	display: inline-block;
	vertical-align: middle;
	width: 100px;
	height: 4px;
	border-top: 4px solid #333;
	content: '';
	margin: 0 10px;
} */

/* 按鈕樣式 */
.btnrow {
	text-align: center;
	margin: 1.2rem auto;
}

.btnrow a {
	width: auto;
	line-height: 2;
	font-size: 1.25rem;
	margin-right: 10px !important;
	margin-left: 10px !important;
	padding: 8px 36px;
}

.btn-primary-orange {
	color: #ffffff !important;
	background-color: #ff6100 !important;
	border-radius: 90px !important;
}

.btn-primary-orange:hover {
	color: #ffffff !important;
	background-color: #e24f38 !important;
}

.btn-primary-blue {
	color: #ffffff !important;
	background-color: #00a0e9 !important;
	border-radius: 90px !important;
}

.btn-primary-blue:hover {
	color: #ffffff !important;
	background-color: #2680eb !important;
}

.btn-disable {
	color: #ffffff !important;
	background-color: #999999 !important;
	border-radius: 90px !important;
	cursor: default !important;
	opacity: 0.7;
}

.btn-solid {
	color: #333 !important;
	border: 2px solid #333 !important;
	border-radius: 90px !important;
}

.btn-solid:hover {
	color: #ffffff !important;
	border: 2px solid #ff6100 !important;
	background-color: #ff6100 !important;
}

/* 頁籤樣式 */
ul.event-tab {
	list-style: none;
	margin: 15px 0 30px 0;
	text-align: center;
	padding-top: 30px;
	padding-left: 0;
	padding-bottom: 16px;
	border-bottom: 1px solid #dddddd;
}

_:-ms-fullscreen,
:root ul.event-tab {
	padding-bottom: 19px;
}

ul.event-tab li {
	font-size: 24px;
	display: inline-block;
	line-height: 24px;
	margin: 0 5px;
}

ul.event-tab li a {
	color: #333333;
	text-decoration: none;
	font-weight: bold !important;
	padding: 15px 20px 16px 20px;
	transition: 0.3s all;
	background: #ffffff;
	border-radius: 10px 10px 0 0;
}

ul.event-tab li a:hover {
	background: #dcdcdc;
}

ul.event-tab li.on a {
	color: #ffffff;
	background-color: #ff6100;
	padding: 15px 20px 16px 20px;
}

/* 貼心提醒樣式 */
.twm-note {
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
	padding: 2% 15px;
	letter-spacing: 1;
}

.twm-note h4 {
	margin: 10px 0 15px 0;
	font-size: 17px;
	line-height: 22px;
	color: #444;
	text-align: center;
}

.twm-note h4:before,
.twm-note h4:after {
	display: inline-block;
	vertical-align: middle;
	width: 60px;
	height: 1px;
	border-top: 1px solid #999;
	content: '';
	margin: 0 12px;
}

.twm-note p {
	margin: 15px 0 15px -20px;
	font-size: 20px;
	line-height: 20px;
	font-weight: 700;
	text-align: left;
}


.twm-note ol {
	list-style-type: decimal;
}

.twm-note ol li {
	margin: 10px 0;
	font-size: 15px;
	line-height: 22px;
	color: #444;
}

.twm-note ol li ul li {
	list-style: disc;
}

@media screen and (max-width:992px) {
	.twm-note {
		margin: 0 auto;
		width: 100%;
	}

	.twm-note h4 {
		margin: 4vw 0;
		font-size: 2.4vw;
	}

	.twm-note p {
		font-size: 1rem;
		line-height: 1.45;
	}

	.twm-note ol li {
		margin: 1.8vw 0;
		font-size: 1rem;
		line-height: 1.45;
	}
}

@media screen and (max-width:767px) {
	.twm-note h4 {
		font-size: 1.25rem;
	}

	.twm-note p {
		font-size: 1rem;
		line-height: 1.45;
	}

	.twm-note ol {
		margin: 0;
		padding: 0 4vw 0 4vw;
	}

	.twm-note ol li {
		margin: 2.5vw 0;
		font-size: .9rem;
		line-height: 1.45;
	}
}


/* 更多活動樣式 */
.mores {
	background-color: #f7f7f7;
	padding: 20px;
	border-radius: 20px;
	clear: both;
	margin-bottom: 1rem;
}

.mores img {
	width: 46% !important;
	margin: 1rem;
	text-align: center;
	border: 1px solid #ccc;
}

.mores a:hover img {
	border: 1px solid #c62934;
}

/* contaniner背景樣式 */
.wrapper-grey {
	background-color: #eeeeee;
}

.wrapper-pink {
	background-color: #ffeeee;
}

.wrapper-bg {
	background: url(../images/wrap-bg.jpg) no-repeat bottom #747473;
	background-attachment: fixed;
	position: relative;
}

.wrapper-bg h1 {
	color: #ffffff;
	font-weight: bold;
	text-shadow: 0 0 10px 30% #000;
}

/* 商品排列樣式 */
.card {
	background-color: #ffffff;
	border-radius: 10px !important;
	border: none !important;
	padding-top: 15px;
	padding-bottom: 15px;
}

/* IE11 hack 修正圖片 */
@media all and (-ms-high-contrast: none) {

	*::-ms-backdrop,
	img.card-img-top {
		height: 100% !important;
	}
}

/* CSS litebox樣式 */
.lightbox {
	/** Default lightbox to hidden */
	display: none;
	/** Position and style */
	position: fixed;
	z-index: 99999;
	width: 100%;
	height: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.8);
	transition: all 1s ease 0.3s;
}

.lightbox img {
	/** Pad the lightbox image */
	max-width: 90%;
	max-height: 80%;
	margin-top: 10%;
	border-radius: 10px;
	background-color: #258dc6;
	padding: 10px;
	width: auto;
	height: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto !important;
	transition: all 1s ease 0.3s;
}

.lightbox:target {
	/** Remove default browser outline */
	outline: none;
	/** Unhide lightbox **/
	display: block;
}

/* ================================================行動版樣式================================================ */

@media screen and (min-width: 0px) and (max-width: 640px) {
	.sub-title {
		font-size: 1.4em;
	}

	.sub-title:before,
	.sub-title:after {
		width: 40px;
		height: 2px;
		border-top: 2px solid;
		margin: 0 8px;
	}

	.plan-table-box {
		margin: 20px 0;
	}

	.btnrow a {
		width: auto !important;
		line-height: 1.45;
		font-size: 1.25rem;
		margin-bottom: 10px !important;
	}

	.twm-content-note {
		background: #eeeeee;
		padding: 15px 20px;
		box-shadow: inset 0px 4px 8px -3px rgba(50, 50, 50, .2);
	}

	table.plan-table th {
		font-size: 0.9em;
	}

	table.plan-table td {
		font-size: 0.8em;
	}

	.twm-content-note ul li {
		color: #000;
	}

	.plan-table-box {
		margin: 20px 0;
	}

	.mores img {
		width: 100% !important;
		display: block;
		margin: 1rem 0 !important;
	}

	ul.event-tab {
		margin: 10px 0 30px 0;
		padding-top: 20px;
		padding-bottom: 7px;
	}

	ul.event-tab li {
		font-size: 13px;
		line-height: 20px;
		margin: 0 1px;
	}

	ul.event-tab li a {
		padding: 10px 10px;
	}

	ul.event-tab li.on a {
		padding: 10px 10px;
	}

	.wrapper-bg {
		background-attachment: fixed;
		background-size: cover;
	}
}

/* event bug fix */
.shadow {
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0) !important;
}

header#twm-global-header a:hover,
footer#twm-global-footer a:hover {
	text-decoration: none !important;
}

/*  ==================================  */
.section {
	width: 100%;
	max-width: 940px;
	margin: 0 auto;
	padding: 2.5rem 0;
}

.page-title {
	font-size: 2.65rem;
	font-weight: bold;
	line-height: 1.6;
	color: #111;
}

.page-subtitle {
	font-size: 1.45rem;
	line-height: 1.45;
	color: #ff6100;
	border: 1px solid #ff6100;
	background-color: #fff;
	border-radius: 16px;
	display: inline-block;
	padding: 5px 15px;
	position: relative;
	z-index: 2;
}

/* event content */
.event-intro-bg {
	background-color: #f9ede2
}

.itembox {
	background-color: #fff;
	border-radius: 12px;
	border: 1px solid #e2e2e2;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, .085);
}

.item-head {
	background-color: #ffc003;
	border-bottom: 1px solid #e2e2e2;
	padding: 15px 0;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	text-align: center;
	font-size: 1.45rem;
	font-weight: 600;
	line-height: 1.6;
	color: #fff;
	margin-bottom: 0;
}

.item {
	padding: 2rem 15px;
	text-align: center;
}

.item-sub {
	font-size: 1.25rem;
	font-weight: 500;
	margin-bottom: 0;
}

.item-sub:after,
.item-sub:before {
	content: "";
	display: inline-block;
	width: 10%;
	height: 1px;
	background-color: #222;
	vertical-align: middle;
	margin: 0 5px;
}

.item-title {
	font-size: 1.45rem;
	font-weight: 600;
	color: #222;
	text-align: center;
	padding: 0;
	margin: 0;
}

.item-dec {
	font-size: 2.25rem;
	line-height: 1;
	font-weight: 600;
	color: #222;
	padding: 0;
	margin: 0;
	vertical-align: middle;
}

.icon-cicle {
	border-radius: 100%;
	background-color: tomato;
	line-height: 1;
	vertical-align: baseline;
	color: #fff;
	display: inline-block;
	padding: 5px;
	font-size: 1.25rem;
	margin: 0 5px;
}

.em-txt {
	font-size: .85rem;
}

.sm-txt {
	font-size: 1.25rem;
}

.sp-txt {
	display: inline-block;
	font-size: 1rem;
	padding: 5px;
}

/* event footer */
.event_card {
	background-color: #fff;
	border-radius: 12px;
	border: 1px solid #e2e2e2;
	margin: 15px 0px;
}

.top-info {
	display: block;
	background-color: #f4f4f4;
	padding: 2rem 0rem;
	margin: 30px 15px;
	margin-top: -1.5rem;
	border-radius: 16px;
}

.top-info h3 {
	font-size: 2rem;
	line-height: 1.6;
	color: #000;
	text-align: center;
	font-weight: 600;
}

.infor {
	width: 60%;
	margin: 10px auto;
	background-color: #fff;
	padding: 10px 30px 20px;
	text-align: center;
	border-radius: 16px;
}

.infor p {
	font-size: 1.6rem;
	line-height: 1.6;
	color: #000;
	margin: 0;
	padding: 0;
}

.give-icon {
	width: 35px;
	height: 35px;
	border-radius: 35px;
	line-height: 35px;
	text-align: center;
	color: #fff;
	background-color: #ff6100;
	font-size: 1.45rem;
	display: inline-block;
	margin: 0 5px;
}

.supertxt {
	font-size: 2.65rem;
	font-weight: 500;
	font-family: Arial;
}

.greenColor {
	color: #04bd41;
}


/*  */
.icon-bg-org {
	width: 20px;
	height: 20px;
	background-color: #ff6100;
	text-align: center;
}

.card-head {
	background-color: #ff6100;
	padding: 15px .85em;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	text-align: center;
}

.card-title {
	font-size: 1.6rem;
	line-height: 1.6;
	color: #fff;

}

.card-item {
	position: relative;
	padding-left: 40px;
}

.card-item:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 35px;
	height: 35px;
	background-image: url(../images/done-24px.svg);
	background-position: center center;
	background-repeat: no-repeat;
}

.card-txt {
	font-size: 1.45rem;
	font-weight: 500;
	line-height: 1.6;
	color: #222;
}

.cardbody {
	padding: 2rem .85rem;
	min-height: 180px;
}

.cardbody a.txt-link {
	color: #ff6100 !important;
	text-decoration: underline !important;
	display: block;
	font-size: 1.25rem;
	line-height: 1.6;
	padding-bottom: 2px;
	display: block;
	font-weight: 400;
	position: relative;
	padding-left: 36px;
}

.cardbody a.txt-link:hover {
	opacity: .75;
}

.cardbody a.txt-link:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 35px;
	height: 35px;
	background-image: url(../images/arrow_right_alt-24px.svg);
	background-position: center center;
	background-repeat: no-repeat;
}

.xs-txt {
	font-size: 1.25rem;
	padding: 0 2px;
}

@media screen and (max-width: 1080px) {

	.page-subtitle {
		font-size: 1.25rem;
	}

	.top-info {
		margin: 0px 0;
		margin-top: -1rem;
	}

	.infor {
		width: 90%;
		margin: 10px auto;
		padding: 20px 10px;
	}

	.infor p {
		font-size: 1.45rem;
	}

	.event_card {
		margin: 15px 0
	}

	.cardbody a.txt-link,
	.card-txt {
		font-size: 1.25rem;
	}

	.card-title {
		font-size: 1.45rem;
		line-height: 1.45;
	}

	.card-item {
		padding-left: 35px;
	}

	.cardbody {
		padding: 1.25rem .85rem;
		min-height: auto;
	}
}

@media screen and (max-width:1024px) {
	.section {
		padding: 20px 0px 1rem;
	}
}

@media screen and (max-width:767px) {
	.section {
		padding: 1.5rem 0px 1rem;
	}
}


img {
	width: auto;
	max-width: 100%;
	width: expression(document.body.clientWidth>100?"100%": "auto");
	overflow: hidden;
}

/*top*/
.topbg {
	width: 100%;
	background: url(../images/bg.jpg) top center no-repeat #000;
	-moz-background-size: cover;
	background-size: cover;
	z-index: 99;
}

.top-header {
	width: 100%;
	max-width: 1288px;
	margin: 0 auto;
	position: relative;
	top: 0;
}


/*intro*/
.twm-events {
	position: relative;
	z-index: 99
}

.inner-container {
	width: 100%;
	margin: 0 auto;
	background-color: #ff8606;
	/*	background: linear-gradient(90deg, rgba(255, 143, 8, 1)42%, rgba(149, 136, 0, 1)46%);
background: -moz-linear-gradient(90deg, rgba(255, 143, 8, 1)42%, rgba(149, 136, 0, 1)46%);
background: -webkit-linear-gradient(90deg, rgba(255, 143, 8, 1)42%, rgba(149, 136, 0, 1)46%);
background: -o-linear-gradient(90deg, rgba(255, 143, 8, 1)42%, rgba(149, 136, 0, 1)46%);*/
}

.inner-container .inner {
	margin: 0 auto;
	text-align: center;
	width: 100%;
	max-width: 920px;
}

.inner-container .inner .title-txt {
	font-size: 2.5rem;
	line-height: 1.45;
	display: inline-block;
	color: #fff;
	font-weight: 600;
	font-style: italic;

}

.inner-container .inner .title-txt:after,
.inner-container .inner .title-txt:before {
	display: inline-block;
	vertical-align: middle;
	width: 60px;
	height: 1px;
	border-top: 2px solid #fff;
	content: '';
	margin: 0 12px;

}

.inner-container .inner .mo-price {
	font-size: 2.85rem;
	color: #ff8606;
	text-shadow: 2px 2px 5px #fff;
}

.inner-container .inner .sub-txt {
	font-size: 1.6rem;
	line-height: 1.45;
	background-color: #ffd60b;
	display: inline-block;
	color: #000;
	padding: 2px 12px;
	font-weight: 600;
}

@media screen and (min-width: 640px) and (max-width: 960px) {
	.inner-container .inner {
		width: 90%
	}
}



/*intro end*/

.box {
	position: relative;
	background-color: #f2f2f2;
	padding: 30px 30px 15px;
	text-align: center;
	margin-bottom: 20px;
	border-radius: 8px;
}

.box h3 {
	font-size: 2.35rem;
	line-height: 1.6;
	color: #111;
}

.box h3 span {
	color: #ff8606
}


/*table*/
@media screen and (max-width:1024px) {
	.box {
		padding: 20px;
	}

	.box h3 {
		font-size: 1.8rem;
		padding-top: 3%
	}
}

@media screen and (max-width:767px) {
	.box {
		padding: 10px;
	}

	.box h3 {
		font-size: 1.45rem;
	}
}



/*keyframes*/

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 10%, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}
