<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/* ============================================================
NAV
============================================================ */
.user-data{
	width: 160px;
	position: absolute;
	top: 70px;
	left: -70%;
	transform: translate(-50%,0);
	background: #ffffff;
	box-shadow: 3px 3px 10px rgba(0, 0, 0, .4);
	border-radius: 5px;
	/* position: relative; */
	display: none;
}

.user-data-container{
	width: 90%;
	position: relative;
	margin: 0 auto;
	padding-top: 20px;
}

.avatar{
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 3px solid #333333;
	margin: 0 auto;
	position: relative;
}

.avatar-container{
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.avatar img{
	width: 100%;
}

.avatar-camera{
	position: absolute;
	bottom: -5px;
	right: -5px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	text-align: center;
	line-height: 30px;
	font-size: 20px;
	color: #ffffff;
	background: rgba(0, 0, 0, .7);
}

.avatar-camera a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.user-link{
	width: 100%;
	position: relative;
	margin: 0 auto;
	margin-top: 20px;
}

.user-link ul li{
	width: 100%;
	height: 40px;
	text-align: center;
	line-height: 40px;
	color: #222222;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
    position: relative;
    border-top: 1px solid #cccccc;
}

.user-link ul li a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.user-log{
	width: 100%;
}

.logout .user-log{
	border-top: 1px solid #666666;
	padding-bottom: 10px;
}

.logout-btn{
	margin: 10px auto;
}

.login .user-log{
	border-top: none;
	padding: 2px 0;
}




/* ============================================================
SECTION.UPLOAD
============================================================ */
.upload-attention {
	margin-top: 30px;
}

.upload-attention h3 {
	margin: 2rem 0 0.5rem;
	padding-left: 15px;
	font-size: 1.25rem;
    line-height: 1.25rem;
	font-weight: normal;
    color: #98B63D;
    position: relative;
}

.upload-attention h3:before{
	content: '';
	width: 6px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-image: linear-gradient(180deg, #89C925 45%, #F5F2FF 100%);
	box-shadow: 0 2px 84px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
}

.upload-attention ul li{ 
	margin-left: 1.5rem;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: 1em;
	color: #ffffff;
	list-style: decimal;
	line-height: 1.8rem;
}

.upload-attention .cube-btn {
	margin:  20px 0;
}

/* step1 */
.upload-steps-tip{
	width: 90%;
	max-width: 600px;
	position: relative;
	margin: 10px auto;
}

.upload-steps-nums{
	display: flex;
	justify-content: space-between;
	align-content: center;
}

.steps-num{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.steps-circle{
	width: 50px;
	height: 50px;
	border: 4px solid #ffffff;
	box-sizing: border-box;
	border-radius: 50%;
	background: #2E2368;
	font-size: 1.5em;
	color: #ffffff;
	font-weight: 600;
	line-height: 40px;
	text-align: center;
	position: relative;
	margin: 0 auto;
}

.steps-info{
	text-align: center;
	color: #ffffff;
	font-size: 1em;
}

.steps-num.active .steps-circle{
	background: #ffcc00;
	color: #2B2265;
}

.steps-tip-line{
	width: 50%;
	border-top: 5px solid #ffffff;
	position: absolute;
}

.steps-tip-line:nth-child(1){
	top: 22px;
	left: 25px;
}

.steps-tip-line:nth-child(2){
	top: 22px;
	right: 25px;
}

@media all and (max-width: 640px) {
	.steps-circle{
		width: 40px;
		height: 40px;
		font-size: 1.25em;
		line-height: 30px;
	}

	.steps-tip-line:nth-child(1){
		top: 20px;
		left: 20px;
	}

	.steps-tip-line:nth-child(2){
		top: 20px;
		right: 30px;
	}
}

.upload-step1-form {
	width: 100%;
	position: relative;
}

.fillform-row2 {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}

.fillform-row2 .input-wrap {
	width: 48.5%;
}

.fillform-row2 .input-wrap:first-child {
	margin-right: 2.5%;
}

.input-wrap {
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	position: relative;
	padding: 10px 0;
}
@media all and (max-width: 705px) {
	.input-wrap{
		padding: 20px 0;
	}
}

.input-wrap.show-flex {
	display: flex;
	justify-content: start;
}

.input-wrap a {
	color: #ffffff;
	font-weight: 500;
	border-bottom: 1px solid #ffcc00;
	transition: .2s linear;
	text-decoration: none;
}

.input-wrap a:hover {
	background: #ffcc00;
}
.input-item{
	margin-bottom: 5px;
}

.input-item, 
.input-wrap label{
	color: #ffffff;
	font-size: 1em;
	font-weight: 400;
	display: block;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.input-wrap label{
	margin: 0 10px;
}

.input-wrap input[type="checkbox"] {
	margin-top: 7px;
	transform: scale(1.5);
}

.input-wrap input[type="checkbox"] + label {
	width: calc(100% - 40px);
	color: #ffffff;
	display: inline-block;
	margin-left: 10px;
	cursor: pointer;
}

.input-wrap label em{
	font-size: 1.25rem;
	font-weight: 500;
}

.input-content{
	/* padding: 15px 10px; */
	font-size: 1em;
	color: #000000;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    /* min-width: 200px; */
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}

.input-content.divide2{
	width: 49%;
}

.input-br{
	margin: 1% 1% 1% 0;
	background: #111111;
    border-radius: 5px;
    padding: 10px;
    position: relative;
    box-sizing: border-box;
    width: 48%;
}

.input-br-3{
	width: calc(94%/3);
}

.input-br.divide2{
	width: 49%;
	margin: 0;
	
}
.input-br.divide2:first-child {
	margin: 0 2% 0 0;
}

.input-br.divide3{
	width: 23%;
	margin: 0 1% 0 0;
}

.input-br.divide3:last-child{
	width: 49%;
}

.input-br.divide4 {
	width: calc(93%/4);
    margin: 0 1% 8px 0;
}
@media all and (max-width: 991px) {
	/* mobile will be 3 column */
	.input-br.divide4 {
		width: calc(93%/3);
		margin: 0 1% 8px 0;
	}
}

.input-br.full {
	width: 100%;
	margin: 10px 0;
}

.input-inline{
	display: inline-block;
}

.input-text{
	padding: 10px;
	font-size: 1em;
	color: #ffffff;
	font-weight: 500;
	border: none;
    box-sizing: border-box;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    width: 100%;
	border-bottom: 1px solid #666666;
	background-color: transparent;
}
.input-text option {
	background-color: #000;
	color: #fff;
}

.input-br input[type=radio] {
    transform: scale(1.5);
}

.input-br input[type=radio] + label {
	width: calc(100% - 60px);
	height: 100%;
	padding: 8px 0;
	cursor: pointer;
}

.input-br input[type=radio]:checked + label  {
    color: #ffcc00;
}

.input-gender label{
	width: 70px;
	color: #000000;
}

.input-wrap label.input-inline{
	display: inline-block;
}

input::-webkit-input-placeholder{
	color: #666666;
}

form.form-address{
	width: 100%;
	position: relative;
	display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}

.input-address {
	width: 100%;
}

.input-full {
	width: 100%;
}

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

.pro-spec {
	font-size: 0.875rem;
	color: #cccccc;
	display: block;
}

@media all and (max-width: 480px) {
	.input-br{
		margin: 1% 0;
		width: 100%;
	}
	
	.input-inline{
		width: 48%;
	}
}

.upload-remind ol, 
.upload-remind ol li{
	list-style: decimal;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	margin-left: -0.5em;
}

.upload-remind a{
	padding-bottom: 1px;
	color: #ffffff;
	border-bottom: 1px solid #ffcc00;
	display: inline-block;
}

.upload-btns{
	width: 100%;
	position: relative;
	margin: 0 auto;
}

.upload-back-btn{
	float: left;
}

.upload-next-btn{
	width: calc(100% - 140px);
	float: right;
}

.upload-btns:after{
	content: '';
	display: table;
	clear: both;
}

p.step1-fixed {
	font-size: 1em;
    color: #000000;
    font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    width: 100%;
    height: 25px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
@media all and (max-width: 480px) {
	.cube-btn.upload-back-btn, 
	.cube-btn.upload-next-btn{
		width: 100%;
		float: none;
		margin: 10px 0;
	}
}


/* step2 */
.upload-step2{
	width: 100%;
	position: relative;
}

.step2-wrap{
	margin: 20px 0;
}

.step2-wrap .upload-remind{
	color: #ffffff;
}

.upload-step2-period{
	width: 100%;
	max-width: 400px;
}

.upload-step2-period tr td{
	width: 50%;
	text-align: center;
	padding: 10px 0;
	vertical-align: middle;
	font-size: 1em;
	color: #222222;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    border: 1px solid #999999;
    opacity: .5;
}

.upload-step2-period tr.step2-period-active td{
	opacity: 1;
	border: 2px solid #222222;
	background: #000000;
    color: #ffcc00;
}

.step2-form{
	margin: 20px 0;
	color: #ffffff;
}

.step2-form input[type=radio]{
	width: 20px;
	height: 20px;
	zoom: 1.1;
}

.step2-form label{
	font-size: 1.2em;
	color: #ffcc00;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.step2-form label p{
	font-size: .85em;
	color: #eeeeee;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    margin-left: 32px;
    line-height: 1.4em;
}

.bill-wrap{
	width: 100%;
	padding: 20px 0;
	background: #111111;
	position: relative;
	box-sizing: border-box;
	border-radius: 5px;
}

.bill-container{
	width: 90%;
	position: relative;
	margin: 0 auto;
}

.bill-container table{
	width: 100%;
	position: relative;
	border-collapse: collapse;
}
.bill-container table a {
	color: #ffffff;
	border-bottom: 2px solid #ffcc00;
	transition: .2s linear;
	text-decoration: none;
}

.bill-container table tr td{
	padding: 10px 0;
	color: #fff;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1.1em;
}
.bill-container table tr:last-child {
	border-top: 3px solid #333333;
}

.bill-container table tr td .store-pay {
    padding: 10px;
	box-sizing: border-box;
	border: 3px solid #454545;
}

.bill-container table tr td .store-pay span{
	padding-bottom: 15px;
	display: block;
	font-size: 14px;
}

.bill-container table tr td .store-pay p{
	letter-spacing: 1px;
}

.bill-container table tr td .store-pay em{
	margin-top: 5px; 
	font-size: 14px; 
	color: #FF5555;
	letter-spacing: 1px;
	display: block;
}

.bill-container table tr td:nth-child(1){
	width: 40%;
}

.bill-container table tr td:nth-child(2){
	text-align: right;
	font-weight: 600;
}

.bill-container table tr td.total{
	text-align: right;
	font-weight: 600;
}

.bill-container table tr td.total h6{
	font-size: 2em;
	color: #FF5555;
}

.bill-container table tr.sum-cost {
	border-top: 1px solid #cccccc;
}

.bill-container table tr:nth-last-child(1) td h6 em{
	font-size: .5em;
	color: #fff;
}

.bill-container table tr td .note{
	font-size: 0.875rem;
	color: #666666;
}

.bill-container ol.remind-little {
	margin: 20px 0 0 -1em;
    padding-top: 20px;
    margin-left: -1em;
    border-top: 1px solid #eeeeee;
}

.bill-container ol.remind-little li {
	list-style: disc;
}



/* step3 */
.upload-step3 {
	/* margin-top: 80px; */
}

.upload-step3-tab{
	width: 100%;
	background: #ffffff;
	position: relative;
}

.step3-tab-container{
	width: 95%;
	max-width: 700px;
	position: relative;
	margin: 0 auto;
}

.step3-tab-container ul{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: stretch;
}

.step3-tab{
	width: 20%;
	text-align: center;
	color: #222222;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1.1em;
    padding: 10px 0;
    position: relative;
}

br.w415{
	display: none;
}

@media all and (max-width: 415px) {
	.step3-tab{
		font-size: .9em;
		line-height: 1.2em;
	}

	br.w415{
		display: block;
	}

	.step3-tab-container ul{
		align-items: center;
	}
}

.step3-tab:after{
	content: '';
	display: table;
	position: absolute;
	width: 100%;
	height: 5px;
	bottom: 0;
	left: 0;
	background: #ffcc00;
	opacity: 0;
	transition: .2s linear;
}

.step3-tab:hover.step3-tab:after{
	opacity: 1;
}

.step3-tab a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.step3-tab.active:after{
	content: '';
	display: table;
	position: absolute;
	width: 100%;
	height: 5px;
	bottom: 0;
	left: 0;
	background: #ffcc00;
	opacity: 1;
}

.item-container{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	margin: 30px 0;
	flex-wrap: wrap;
}

ul.list-point li {
	list-style-type: disc;
	line-height: 1.5rem;
}

.widget-wrap {
	display: flex;
	flex-wrap: wrap;
}

.widget-notice { 
	width: calc(50% - 10px);
    margin: 0 10px 0 0;
    padding: 20px;
	box-sizing: border-box;
	border: 2px solid rgba(255,255,255,0.16);
	background-image: linear-gradient(25deg, rgba(0,0,0,0.00) 1%, #000000 81%);
	box-shadow: 0 10px 20px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
	text-align: center;
	position: relative;
}
@media all and (max-width: 991px) {
	.widget-notice { 
		width: 100%;
		margin: 20px auto;
	}
}

.widget-notice ul {
	margin-left: 1.5rem;
    margin-top: 1rem;
}

.widget-notice ul li{
	list-style-type: decimal;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	text-align: left;
	letter-spacing: 1px;
}

.widget-notice img{
	margin-bottom: -10px;
}

.widget-miles {
	width: calc(25% - 10px);
	padding: 20px 10px;
	box-sizing: border-box;
	position: relative;
	border: 2px solid rgba(255,255,255,0.16);
	background-image: linear-gradient(25deg, rgba(0,0,0,0.00) 1%, #000000 81%);
	box-shadow: 0 10px 20px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
	text-align: center;
	position: relative;
}
@media all and (max-width: 991px) {
	.widget-miles {
		width: calc(50% - 10px);
		padding: 10px 10px;
	}
}

.widget-miles:last-of-type{
	margin-left: 10px;
}

.widget-miles p {
	margin: 10px auto 0;
	text-align: center;
}

.widget-miles img {
	margin-bottom: -10px;
	margin-right: 10px;
}

@media all and (max-width: 480px) {
	.widget-notice img,
	.widget-miles img {
		margin: 10px auto;
		display: block;
	}
}

.widget-miles p span {
	color: #ffcc00;
	font-size: 3em;
	display: inline-block;
    padding: 0 10px;
}

.widget-tip {
	margin-top: 60px;
	padding: 30px 30px;
	background-image: linear-gradient(35deg, rgba(0,0,0,0.00) 0%, #000000 42%);
	border: 2px solid rgba(255,255,255,0.16);
	box-shadow: 0 10px 20px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
}

.widget-tip .left {
	width: 40%;
	padding: 20px;
	box-sizing: border-box;
	font-size: 1.5em;
	border-right: 1px solid #666666;
	text-align: center;
}

.widget-tip .right {
	width: 60%;
	padding: 0 20px;
	box-sizing: border-box;
}

@media all and (max-width: 991px) {
	.widget-tip {
		margin-top: 40px;
		padding: 20px 30px;
	}

	.widget-tip .left {
		width: 100%;
		padding: 0 0 20px;
		text-align: left;
		border: 0;
	}

	.widget-tip .right {
		width: 100%;
		padding: 0;
	}
}

.widget-tip ul {
	margin-left: 1.5em;
}
.widget-tip ul li {
	list-style-type: decimal;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.widget-notice::after,
.widget-tip::after,
.widget-miles::after {
	content: "";
	width: 6px;
	height: 100%;
	position: absolute;
	left: 0;
	top:0;
	background-image: linear-gradient(180deg, #3D2C7C 0%, #F5F2FF 100%);
	box-shadow: 0 2px 84px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
}

.finish-status.block {
	padding: 5rem 0;
}
.finish-status p {
	text-align: center;
	font-size: 1.2em;
}

.finish-status p a {
	color: #000000;
	position: relative;
}

.finish-status p a:after{
	content: "";
	width: 100%;
	height: 3px;
	background: #ffcc00;
	position: absolute;
	left: 0;
	bottom: -5px;
}

.finish-status .upload-remind {
	padding: 0 0 20px;
}

.card-list-title {
	margin: 40px 0 10px;
	padding-left: 20px;
	font-size: 1.5em;
    position: relative;
    font-weight: 500;
    letter-spacing: 2px;
}

.card-list-title::after {
	content: '';
	width: 6px;
	height: 90%;
	position: absolute;
	left: 2px;
	top: 5px;
	background-image: linear-gradient(180deg, #3D2C7C 0%, #F5F2FF 100%);
}

.card-wrap {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
}

.photo-card {
	width: calc(25% - 20px);
    height: 350px;
    margin: 0 20px 20px 0;
	box-sizing: border-box;
	position: relative;
	transition: all 0.4s ease;
	border-radius: 10px;
	overflow: hidden;
	background-color: #222222;
}
@media all and (max-width: 991px) {
	.photo-card {
		width: calc(50% - 20px);
		
	}
}
@media all and (max-width: 750px) {
	.photo-card {
		width: 100%;
		margin: 20px auto;
	}
}

.photo-card.empty {
	border: 2px dashed #666666;
	display: flex;
    justify-content: center;
    align-items: center;
}

.photo-card a {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
	top: 0;
	opacity: 0;
	transition: all 0.4s ease;
}

.photo-card:hover a {
    opacity: 1;
}

.photo-card.empty:hover {
	cursor: pointer;
	background: #333333;
	border: 2px dashed #666666;
}
.photo-card .btn-overlay {
	background: rgba(0,0,0,0.30);
}

.photo-card .delete{
    padding: 10px;
    position: absolute;
    right: 0;
	top: 0;
	z-index: 3;
	opacity: 0;
}

.photo-card:hover .delete{
	opacity: 1;
	cursor: pointer;
}

.photo-card .btn-overlay .edit{
	text-align: center;
	border: 1px solid;
	padding: 10px;
    width: 100px;
    position: absolute;
    left: 54px;
    color: #ffffff;
    top: 120px;
    border-radius: 3px;
}

.photo-card .cover {
	width: 100%;
	height: 200px;
	overflow: hidden;
    background: #ffcc00;
}
.photo-card .cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.photo-card .text {
	padding: 1rem;
}
.photo-card .riding-date {
	font-size: 14px;
	color: #999999;
	line-height: 1rem;
}

.photo-card .caption {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	text-align: left;
	font-weight: bold;
}

.photo-card .category {
	margin-top: 1rem;
	color: #eeeeee;
}

.photo-card .category &gt; span {
	color: #EDBE00;
}

.photo-card .finish-mark {
	width: 60px;
    border: 1px solid #666666;
    color: #999999;
    border-radius: 5px;
    transform: rotate(-10deg);
    margin-left: 75%;
    margin-top: -20px;
    text-align: center;
    font-size: 13px;
}

.btn-create {
	background: url(../img/icon-add.svg) no-repeat center top;
    width: 100px;
    text-align: center;
	padding-top: 2.3rem;
	color: #999999;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.photo-card .coner-ribbon {
	width: 85px;
    text-align: center;
    color: #2B2B2B;
    transform: rotate(-42deg);
	background: #FACC01;
	position: absolute;
    left: -20px;
    top: 10px;
    letter-spacing: 3px;
}


.upload-top {
	width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    margin: 30px 0;
}

.upload-top .upload-info {
	width: 100%;
	max-width: 528px;
}

.upload-top .photos-number {
	text-align: center;
}

.upload-top .photos-number em {
	font-size: 2rem;
	margin: 0 1rem;
}

.upload-left, .upload-right{
	width: 48%;
}

.upload-left .upload-intro {
	padding-left: 1rem;
	padding-bottom: 1rem;
}

.upload-left .upload-intro p,
.upload-right .upload-intro p {
	text-indent: -1rem;
	font-weight: 500;
}

h5.mobile-hint{
	font-size: 1.2em;
	font-weight: 600;
}


.upload-area{
	margin-bottom: 30px;
	position: relative;
	z-index: 1;
}

.upload-drag{
	width: 100%;
	padding-bottom: 66.6667%;
	border: 3px dotted #999999;
	box-sizing: border-box;
	position: relative;
}

.upload-drag a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.upload-img{
	position: absolute;
	max-width: 100%;
	max-height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 2;
}

.upload-drag-text{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 1;
}

.upload-drag-text p{
	text-align: center;
	color: #999999;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
}

.upload-drag-text p em{
	font-size: 4em;
}

.upload-file{
	width: 150px;
	padding: 10px 0;
	text-align: center;
}

p.upload-unit{
	margin-bottom: 5px;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-size: 1.1rem;
	text-align: left;
}

p.upload-unit em{
	font-size: 1em;
	color: #ffffff;
}

.upload-img-info{
	margin-top: 20px;
	padding-bottom: 30px;
	border-bottom: 1px solid #cccccc;
}

.upload-img-info textarea{
	width: 100%;
	color: #222222;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
    padding: 10px 5px;
    box-sizing: border-box;
    border: 1px solid #cccccc;
}

.upload-plus{
	width: 100%;
	height: 40px;
	background: #000000;
	color: #ffffff;
	text-align: center;
	line-height: 40px;
	font-size: 1.5em;
	cursor: pointer;
}

.rotate-img {
	text-align: center;
	margin-top: 1rem;
}

.rotate-img .turn-left,
.rotate-img .turn-right {
	width: 32px;
	height: 32px;
	display: inline-block;
	margin: 0 4px;
	padding: 4px;
	border-radius: 3px;
	background-image: url(../img/icon-turnleft.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-color: #333333;
	cursor: pointer;
	transition: all 0.4s ease;
}

.rotate-img .turn-left:hover,
.rotate-img .turn-right:hover {
	background-color: #000000;
} 

.rotate-img .turn-right {
	background-image: url(../img/icon-turnright.svg);
}


/* right */
.upload-info{
	margin-bottom: 20px;
}

.upload-info .input-text{
	width: 100%;
	/* margin-top: 10px; */
}

input.input-text:disabled {
	color: #666;
}

.input-br input[type=radio]:disabled {
	display: none;
}

.input-br input[type=radio]:disabled + label {
	color: #666;
}

.upload-info .input-br label {
	color: #ffffff;
}

.upload-info input[type=checkbox]{
	/* width: 20px;
	height: 20px;
	zoom: 1.1;
	vertical-align: middle; */

	position: absolute;
	opacity: 0;
	height: 0;
	width: 0;
}

.upload-info input[type=checkbox] ~ label {
	position: relative;
	display: block;
	padding-left: 30px;
	cursor: pointer;
}

.upload-info input[type=checkbox] + label:before {
	content: '';
	position: absolute;
	top: 50%;
	margin-top: -10px;
	left: 0;
	display: block;
	height: 16px;
	width: 16px;
	/* background-color: #cccccc; */
	border: 2px solid #fff;
	border-radius: 2px;
}

.upload-info input[type=checkbox] + label:hover:before {
	background-color: #000;
}

.upload-info input[type=checkbox] + label:after {
	content: '';
	position: absolute;
	left: 7px;
	top: 1px;
	width: 5px;
	height: 10px;
	border: solid #ffcc00;
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
	opacity: 0;
}


.upload-info input:checked + label:after {
	opacity: 1;
}

.mobile-assign{
	color: #222222;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
}

.upload-info textarea{
	width: 100%;
	color: #222222;
	font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
    border: 1px solid #cccccc;
    box-sizing: border-box;
    padding: 10px;
    text-align: justify;
}

.upload-remind ol.ol-number li{
	color: #ff0000;
	margin-left: 0;
}

.upload-remind ol.ol-number{
	margin-left: 0;
}

.upload-remind ol.ol-number li em{
	border-bottom: 2px solid #ff0000;
}

.upload-step3-btns{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}

.youth-form{
	padding-bottom: 30px;
}


@media all and (max-width: 768px) {
	.item-container{
		display: block;
	}

	.upload-left, .upload-right{
		width: 100%;
	}
}

@media all and (max-width: 480px) {
	.upload-step3-btns{
		display: block;
	}

	.cube-btn.half-width{
		width: 100%;
	}
}

.sub-nav-fixed{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 19;
}

.download-content {
	margin: 30px 0;
	text-align: center;
}

.download-content p {
	margin: 1rem 0;
	text-align: center;
}

.download-content img{
	width: 100%;
}





/* ============================================================
SECTION.AVATAR CROPPER
============================================================ */
.avatar-cropper-btns{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}

@media all and (max-width: 480px) {
	.avatar-cropper-btns{
		display: block;
	}

	.cube-btn.half-width{
		width: 100%;
	}
}


/* ============================================================
SECTION MEMBER
============================================================ */
.member-intro{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: flex-start;
}

.member-avatar{
	width: 120px;
	height: 120px;
	border-radius: 50%;
	overflow: hidden;
	position: relative;/* 
	background: url('../img/avatar-sample.jpg') no-repeat;
	background-size: cover;
	background-position: center center; */
}

.member-avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.member-avatar a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.member-info{
	width: calc(100% - 150px);
	position: relative;
	border-bottom: 1px solid #cccccc;
}

h3.user-name{
	font-size: 1.5em;
	font-weight: 600;
	text-transform: uppercase;
	color: #222222;
	line-height: 1.4em;
	width: calc(100% - 70px);
}

h6.user-jointime{
	color: #999999;
	font-size: .9em;
	font-weight: 400;
	width: calc(100% - 70px);
}

p.user-description{
	color: #666666;
	font-size: 1em;
	font-weight: 400;
	margin: 10px 0;
	width: 100%;
	height: 50px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.member-setting{
	width: 40px;
	height: 40px;
	border: 1px solid #222222;
	box-sizing: border-box;
	color: #222222;
	line-height: 40px;
	text-align: center;
	font-size: 1.5em;
	position: absolute;
	top: 0;
	right: 0;
	transition: .2s linear;
}

.member-setting a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.member-setting:hover{
	color: #ffffff;
	background: #222222;
}

@media screen and (orientation: portrait) {
	.member-setting:hover{
		color: #222222;
		background: none;
	}

}

.membertemp{
	width: 100%;
	position: relative;
	margin: 20px auto;
	display: flex;
	justify-content: space-between;
}

.member-tab{
	min-width: 120px;
	margin-left: 150px;
}

.member-tab ul li{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: 1em;
	color: #222222;
	text-transform: uppercase;
}

.member-tab ul li em{
	font-weight: 600;
	color: #f3c200;
	font-size: 1.1em;
}

.member-tab ul li em a{
	color: #f3c200;
}

.member-sort label{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: .9em;
	color: #222222;
}

.member-sort select{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: .9em;
	color: #222222;
	width: 120px;
	height: 36px;
	border: 1px solid #cccccc;
    background: #ffffff;

    /*ç§»é™¤ç®­é&nbsp;­æ¨£å¼*/
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;

	/*æ”¹è®Šå³é‚Šç®­é&nbsp;­æ¨£å¼*/
	background: url("../img/sort-down.svg") no-repeat 90% center transparent;
	background-size: 12%;
    padding: 0 10px;
}

.member-photos{
	width: 100%;
	position: relative;
	margin: 0 auto;
}

.member-photos ul{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-content: center;
	flex-wrap: wrap;
}

.member-photos ul li{
	width: 32%;
	padding-bottom: 32%;
	position: relative;
	margin: 0.6%;
}

.photo-container{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.photo-container img{
	object-fit: cover;
	object-position: 50% 50%; /* default value: image is centered*/
	height: 100%;
	width: 100%;
}

a.photo-link{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.vote-btn{
	width: 90px;
	height: 90px;
	background: rgba(0, 0, 0, .7);
	position: absolute;
	left: 0;
	bottom: 0;
	text-align: center;
}

.vote-clap{
	width: 36px;
	position: relative;
	margin: 0 auto;
	padding-top: 5px;
	transform: scale(1);
	transition: .2s linear;
}

.vote-clap img{
	width: 100%;
}

.vote-clap-animate{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.vote-clap-animate-run{
	animation: clapVote .65s ease-in-out forwards;
}

.vote-clap-animate img{
	width: 100%;
}

.vote-btn h6{
	font-size: .9em;
	color: #ffcc00;
	font-weight: 500;
	text-align: center;
	margin-top: -2px;
}

.vote-btn p{
	font-size: 1em;
	color: #ffffff;
	font-weight: 400;
	text-align: center;
}

.vote-btn a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.vote-btn:hover .vote-clap{
	transform: rotate(-10deg);
}

.album-icon{
	width: 35px;
	height: 35px;
	background: rgba(0, 0, 0, .7);
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
	line-height: 35px;
	color: #cccccc;
}

@keyframes clapVote{
	0%{
		transform: scale(1.5);
		opacity: 0;
	}

	50%{
		transform: scale(2.5);
		opacity: 1;
	}

	100%{
		transform: scale(1);
		opacity: 0;
	}
}

.photo-share{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .7);
	display: none;
	opacity: 0;
}

.photo-share, .share-back{
	z-index: 2;
}

.share-btns{
	width: 100%;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	display: flex;
	justify-content: center;
}

.share-btns a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.share-circle{
	width: 60px;
	height: 60px;
	border-radius: 50%;
	color: #ffffff;
	text-align: center;
	line-height: 60px;
	font-size: 2em;
	margin: 10px;
	position: relative;
	opacity: 1;
	transition: .2s linear;
}

.share-circle a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.share-circle:hover{
	opacity: .7;
}

.photoshare-fb{
	background: #3b5998;
}

.photoshare-line{
	background: #00c300;
}

.photoshare-link{
	background: #ffffff;
	color: #222222;
}

.share-back{
	width: 80px;
	height: 30px;
	border-radius: 5000px;
	background: #ffcc00;
	color: #000000;
	text-align: center;
	line-height: 30px;
	text-transform: uppercase;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-size: 1em;
	font-weight: 400;
	position: absolute;
	bottom: 10px;
	right: 10px;
	cursor: pointer;
	transition: .2s linear;
}

.share-back:hover{
	background: #ffffff;
}

@media all and (max-width: 1100px) {
	.member-photos ul li{
		width: 49%;
		padding-bottom: 49%;
		margin: 0.5%;
	}
}


@media all and (max-width: 640px) {
	.member-intro{
		display: block;
	}

	.member-avatar{
		margin: 0 auto;
		margin-bottom: 20px;
	}

	.member-info{
		width: 100%;
	}

	h3.user-name{
		/* text-align: center; */
		width: 100%;
		font-size: 1.2em;
	}

	h6.user-jointime{
		text-align: center;
		width: 100%;
	}

	p.user-description{
		height: 70px;
	    overflow: hidden;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 3;
	}

	.member-tab{
		margin-left: 0;
	}

	.member-sort form{
		text-align: right;
	}

	.share-circle{
		margin: 5px;
	}

	
}

@media all and (max-width: 480px) {
	.vote-btn{
		width: 70px;
		height: 70px;
	}

	.vote-clap{
		width: 25px;
	}

	.vote-btn h6{
		font-size: .8em;
	}

	.vote-btn p{
		font-size: .9em;
	}

	.photo-share, .share-back{
		display: none;
	}
}

/* ============================================================
COLLECTION
============================================================ */
.search-btn{
	position: absolute;
	top: 0;
	right: 0;
	padding: 10px 20px;
	font-size: 1.1em;
	color: #222222;
}

.search-btn a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.collection-tab{
	margin: 20px 0;
}

.ad300250{
	background: #ffffff;
	border: 5px solid #ffcc00;
	box-sizing: border-box;
	/* box-shadow: 5px 5px 0px rgba(0,0,0,.5); */
}

.ad300250-container{
	position: absolute;
	width: 300px;
	height: 280px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.ad300250-container p{
	width: 100%;
	height: 30px;
	text-align: center;
	line-height: 30px;
	color: #999999;
	font-size: .9em;
}

.member-sort.collection{
	margin: 10px 0;
}

@media all and (max-width: 960px){
	.search-btn{
		top: 50px;
		padding: 0;
		width: 50px;
	    height: 50px;
	    text-align: center;
	    line-height: 50px;
	    background: #ffcc00;
	    border-radius: 50%;
	}
}


@media all and (max-width: 700px) {
	.member-photos ul li.ad300250{
		width: 320px;
		height: 300px;
		margin: 20px auto;
	}
}

@media all and (max-width: 640px) {
	.member-sort.collection form {
	    text-align: left;
	}

	
}


.searchpop{
	width: 90%;
	max-width: 900px;
	height: 70vh;
	background: rgba(0, 0, 0, .9);
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	z-index: 2;
	display: none;
}

.searchpop-container{
	width: 90%;
	height: calc(70vh - 60px);
	position: absolute;
	left: 5%;
	top: 30px;
}

.close-btn{
	width: 50px;
	height: 50px;
	position: absolute;
	cursor: pointer;
	top: 0;
	right: 0;
	z-index: 2;
}

.close-line{
	width: 50px;
	height: 2px;
	background: #ffffff;
	position: absolute;
	top: 50%;
	/* left: 50%; */
	transform: translate(-50%, -50%);
}

.close-line:nth-child(1){
	transform: rotate(45deg);
}

.close-line:nth-child(2){
	transform: rotate(-45deg);
}

.searchpop-content{
	position: absolute;
	width: 100%;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}

.searchpop-sort label{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: .9em;
	color: #ffffff;
}

.searchpop-sort select{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: .9em;
	color: #ffffff;
	width: 120px;
	height: 36px;
	border: 1px solid #cccccc;
    background: #000000;

    /*ç§»é™¤ç®­é&nbsp;­æ¨£å¼*/
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;

	/*æ”¹è®Šå³é‚Šç®­é&nbsp;­æ¨£å¼*/
	background: url("../img/sort-down_w.svg") no-repeat 90% center transparent;
	background-size: 12%;
    padding: 0 10px;
}

.searchpop-input{
	width: 100%;
	position: relative;
	margin: 20px 0;
}

.searchpop-input-css{
	width: 100%;
	height: 50px;
	padding: 0 60px 0 10px;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 50px;
	color: #ffffff;
	border: 1px solid #cccccc;
	background: none;
	box-sizing: border-box;
	border-radius: 5px;
}

.searchpop-icon{
	position: absolute;
	width: 50px;
	height: 50px;
	right: 10px;
	top: 0;
	line-height: 50px;
	text-align: center;
	font-size: 1.25em;
	color: #ffffff;
}

.searchpop-icon a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

/* ============================================================
prev-next
============================================================ */
.prev-next{
	width: 100%;
	position: relative;
	margin: 24px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.collection-direction{
	width: 120px;
	padding: 10px 0;
	border-top: 1px solid #666666;
	border-bottom: 1px solid #666666;
	opacity: 1;
	transition: .2s linear;
	position: relative;
}

.collection-direction:hover{
	opacity: .7;
}

.collection-direction p{
	font-size: 1em;
	vertical-align: middle;
	color: #222222;
}

.collection-direction i{
	vertical-align: middle;
}

.collection-direction a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.collection-prev p{
	text-align: left;
}

.collection-next p{
	text-align: right;
}

.collection-direction.disable{
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}

.collection-direction.disable p{
	color: #999999;
}

.collection-direction.disable:hover{
	opacity: 1;
}



/* ============================================================
SEARCH RESULT
============================================================ */
.search-result-text{
	width: 100%;
	position: relative;
	margin: 20px auto;
}

.search-result-text p{
	color: #666666;
	font-size: .9em;
	font-weight: 400;
	text-align: left;
}

.search-result-text h3{
	color: #222222;
	font-size: 2em;
	font-weight: 600;
	text-align: left;
	line-height: 1.4em;
}

.search-result-text.sub-nav-fixed{
	background: #f5f5f5;
    margin: 0;
    padding: 10px 0;
    box-shadow: 0px 2px 8px rgba(0,0,0,.3);
}

.search-result-text.sub-nav-fixed p, .search-result-text.sub-nav-fixed h3{
	text-align: center;
}

.search-result-text.sub-nav-fixed h3{
	font-size: 1.5em;
}

/* ============================================================
PICTURE
============================================================ */
.picture-container{
	width: 100%;
	padding-bottom: 66.66667%;
	position: relative;
	margin: 20px auto;
	background: #ffffff;
	overflow: hidden;
}

.album-container{
	padding-bottom: 60px;
	/* margin-bottom: 60px; */
	background: none;
}

.picimg-container{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.picimg-container img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.picture-author{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 30px 0;
}

.author-content{
	width: calc(100% - 180px);
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

.author-avatar{
	width: 90px;
	height: 90px;
	border-radius: 50%;
	overflow: hidden;
	position: relative;
	margin-right: 20px;
}

.author-avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.author-avatar a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.author-text p{
	color: #222222;
}

h3.author-name{
	color: #ffcc00;
	line-height: 1.6em;
	width: auto;
}

.author-name a{
	color: #ffcc00;
}

.picture-vote{
	width: 170px;
}

.picture-vote-btn{
	position: relative;
	left: auto;
	bottom: auto;
	margin-left: calc(170px - 90px);
	margin-bottom: 20px;
}

.picture-circle{
	width: 40px;
	height: 40px;
	font-size: 1.5em;
	line-height: 42px;
	margin: 5px;
}

.picture-share-btns{
	width: 160px;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@media all and (max-width: 640px) {
	.picture-author{
		display: block;
	}

	.author-content{
		width: 100%;
	}

	.picture-vote-btn{
		margin: 0;
		float: right;
	}

	.picture-share{
		float: left;
	}

	.picture-vote{
		width: 100%;
		position: relative;
		margin-top: 20px;
	}

	.picture-vote:after{
		content: '';
		display: table;
		clear: both;
	}
}

@media all and (max-width: 480px){
	.author-content{
		/* display: block; */
	}

	.author-avatar{
		width: 100px;
		height: 100px;
		/* margin: 15px auto; */
	}

	/* .author-text, .author-text h3, .author-text p{
		width: 100%;
		text-align: center;
	} */

	.author-text{
		width: calc(80% - 100px);
	}
}

.picture-info{
	width: 100%;
	position: relative;
	margin: 20px auto;
}

.picture-ad{
	width: 320px;
    height: 300px;
    position: relative;
    /* float: right; */
    margin: 10px auto;
}

.picture-intro{
	width: 100%;
	position: relative;
	float: left;
}

.picture-info:after{
	content: '';
	display: table;
	clear: both;
}

.picture-sub{
	font-size: 1em;
	color: #ffbc38;
	font-weight: 500;
}

.picture-title{
	font-size: 2em;
	color: #222222;
	font-weight: 600;
	line-height: 1.8em;
}

.picture-description{
	font-size: 1.1em;
	color: #444444;
	line-height: 1.4em;
	letter-spacing: .05em;
	/* margin: 10px 0; */
}

.picture-description em{
	font-weight: 500;
	color: #111111;
}

.picture-info{
	margin: 10px 0;
}

h6.hashtag{
	font-size: 1.1em;
	font-weight: 400;
	color: #444444;
	margin: 20px 0;
}

h6.hashtag a{
	color: #444444;
	text-decoration: underline;
}

@media all and (max-width: 768px) {
	.picture-ad, .picture-ad{
		float: none;
	}

	.picture-ad{
		width: 100%;
		margin: 20px auto;
	}

	.picture-intro{
		width: 100%;
	}
}


.picture-recommend{
	width: 100%;
	position: relative;
	padding: 20px;
	margin: 50px 0;
	background: #ffffff;
	box-sizing: border-box;
}

h5.recommend-title{
	font-size: 1.25em;
	font-weight: 600;
	border-left: 5px solid #ffcc00;
	padding-left: 10px;
	margin-bottom: 10px;
}

.recommend-content ul{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.recommend-content ul li{
	width: calc(88%/6);
	padding-bottom: calc(88%/6);
	margin: 1%;
	position: relative;
	overflow: hidden;
}

.recommend-content ul li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
}

.recommend-content ul li a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

@media all and (max-width: 768px){
	.recommend-content ul li{
		width: calc(94%/3);
		padding-bottom: calc(94%/3);
	}
}

@media all and (max-width: 480px){
	.recommend-content ul li{
		width: calc(96%/2);
		padding-bottom: calc(96%/2);
	}
}


/* ============================================================
ALBUM SLIDE
============================================================ */

.content-album{
	width: 100%;
	position: relative;
	/* margin: 20px auto; */
	border-bottom: 5px solid #000000;
	/* overflow: hidden; */
}

.con-slide{
	width: 100%;
	padding-bottom: 66.66666%;
	position: relative;
	background: #ffffff;
	overflow: hidden;
}

.con-slide{
	width: 100%;
	margin: auto;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.slide-list{
	/* width: 300%; */
	overflow: hidden;
	position: absolute;
}

.album-memo .slide-list{
	position: relative;
}

.slide-list li{
	float: left;
	text-align: center;
	overflow: hidden;
}

.slide-list li img{
	width: 100%;
	position: relative;
	margin: 0 auto;
}

.slide-list li p{
	width: 90%;
	position: relative;
	margin: 20px auto;
	/* overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; */
}

.slide-list:after{
	content: '';
	display: table;
	clear: both;
}


.slide-control{
	position: absolute;
	bottom: -51px;
	right: 0;
	z-index: 2;
}

.slide-prev, .slide-next{
	width: 50px;
	height: 50px;
	font-size: 2em;
	color: #ffffff;
	text-align: center;
	line-height: 50px;
	background: rgba(0, 0, 0, .8);
	float: right;
	margin-left: 5px;
	cursor: pointer;
}

.slide-control:after{
	content: '';
	display: table;
	clear: both;
}

.slide-prev a, .slide-next a{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.slide-page{
	width: 120px;
	height: 50px;
	position: relative;
	text-align: center;
	line-height: 50px;
	color: #ffffff;
	background: rgba(0, 0, 0, .8);
	float: right;
}

.slide-current, .slide-sum{
	display: inline-block;
}

h5.slide-current{
	font-size: 1.7em;
}

h6.slide-sum{
	font-size: 1.2em;
}

.album-memo{
	/* width: calc(100% - 250px); */
	height: auto;
	overflow: hidden;
	position: relative;
	background: #ffffff;
}

.album-item img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}



/* ============================================================
SETTING
============================================================ */
.setting-avatar{
	width: 120px;
	height: 120px;
	border: none;
	margin-bottom: 20px;
}

.setting-camera{
	position: absolute;
	bottom: 0;
	right: 0;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-align: center;
	line-height: 50px;
	font-size: 25px;
	color: #ffffff;
	background: rgba(0, 0, 0, .7);
}

.setting-avatar a{
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

.avatar-camera a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.setting-profile{
	margin-bottom: 20px;
}

.setting-profile h3.user-name{
	text-align: center;
	width: 100%;
}

.setting-profile h6.user-jointime{
	text-align: center;
	width: 100%;
}

.setting-tab {
	width: 100%;
	/* padding: 10px 0; */
	position: relative;
	margin: 0 auto;
	/* background: #ffffff; */
}


.setting-tab ul{
	width: 100%;
	max-width: 500px;
	position: relative;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.setting-tab ul li{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: 1.1em;
	color: #222222;
	width: calc(100%/2);
	position: relative;
	text-align: center;
	border-bottom: 5px solid #222222;
	padding: 10px 0;
	margin: 2px;
	transition: .2s linear;
}

.setting-tab ul li a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.setting-tab ul li:hover{
	border-bottom: 5px solid #ffcc00;
}

.setting-tab ul li.active{
	border-bottom: 5px solid #ffcc00;
}

.setting-tab ul li.active:after{
	content: 'â–¼';
	display: table;
	position: absolute;
	text-align: center;
	color: #ffcc00;
	width: 100%;
    margin-top: 5px;
}

.account-content, .user-content{
	width: 100%;
	max-width: 500px;
	position: relative;
	margin: 20px auto;
}

.setting-wrap{
	margin: 20px 0;
	width: 100%;
	position: relative;
}

.setting-item{
	margin-bottom: 5px;
	color: #666666;
	font-size: 1.15em;
	font-weight: 400;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.setting-content{
	padding: 10px 0;
	font-size: 1em;
	color: #000000;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    min-width: 200px;
    border-bottom: 1px solid #cccccc;
    position: relative;
}

.passwords-content{
	width: calc(100% - 150px);
	float: left;
	min-width: auto;
}

.mail2-content{
	width: calc(100% - 150px);
	float: left;
	min-width: auto;
}

.area-content, .intro-content{
	width: 100%;
	min-width: auto;
	font-size: 1em;
	color: #222222;
	font-weight: 500;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	background: #f5f5f5;
	box-sizing: border-box;
	display: inline-table;
}

.intro-content{
	border: 1px solid #cccccc;
}

.passwords-btn, .area-btn, .intro-btn, .situation-btn{
	float: right;
	margin: 0;
}

.account-passwords:after, .account-mail:after, .user-area:after, .account-intro:after{
	content: '';
	display: table;
	clear: both;
}

.area-content{
	border-bottom: none;
}

.area-content select{
	width: 100%;
	height: 40px;
	font-size: 1em;
	color: #222222;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    border: 1px solid #cccccc;
    background: #ffffff;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url('../img/sort-down.svg') no-repeat 95% center transparent;
    background-size: 10%;
    padding: 0 10px;
}


.setting-content label {
    color: #666666;
    font-size: 1.15em;
    font-weight: 400;
    margin: 0 10px;
}

.user-situation select{
	width: 100%;
	height: 40px;
	font-size: 1em;
	color: #222222;
	font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    border: 1px solid #cccccc;
    background: #ffffff;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url('../img/sort-down.svg') no-repeat 95% center transparent;
    background-size: 3%;
    padding: 0 10px;
}

.input-text.situation {
    width: 100%;
    height: 45px;
    padding: 0 10px;
}

.situation-content{
	width: calc(100% - 150px);
	float: left;
	min-width: auto;
}

.situation-container:after{
	content: '';
	display: table;
	clear: both;
}

.situation-container{
	margin: 5px 0;
	display: none;
}

.situation-content{
	border-bottom: none;
	color: #ff0000;
}


/* work */
.work-content{
	width: 100%;
	max-width: 900px;
	position: relative;
	margin: 20px auto;
}

h6.all-photo-num{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: 1em;
	color: #222222;
	text-transform: uppercase;
	text-align: right;
	margin-bottom: 5px;
	padding: 0 10px;
	box-sizing: border-box;
}

h6.all-photo-num em{
	font-weight: 600;
	color: #f3c200;
	font-size: 1.1em;
}

.work-sort select{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 400;
	font-size: .9em;
	color: #222222;
	width: 180px;
	height: 36px;
	border: 1px solid #cccccc;
    background: #ffffff;

    /*ç§»é™¤ç®­é&nbsp;­æ¨£å¼*/
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;

	/*æ”¹è®Šå³é‚Šç®­é&nbsp;­æ¨£å¼*/
	background: url("../img/sort-down.svg") no-repeat 90% center transparent;
	background-size: 7%;
    padding: 0 10px;
}

.work-item{
	width: 100%;
	position: relative;
	padding: 0 0 10px 0;
	margin: 20px 0;
	border-bottom: 1px solid #cccccc;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

li.work-item:nth-child(1){
	border-top: 1px solid #cccccc;
	padding: 20px 0 10px 0;
}

.work-collection{
	width: 100%;
	position: relative;
	margin: 20px auto;
}

.work-item-photo{
	width: 25%;
	padding-bottom: 25%;
	position: relative;
}

.work-item-intro{
	width: 72%;
	position: relative;
}

.picture-title.work-title{
	font-size: 1.5em;
}

.picture-description.work-description{
	margin: 5px 0;
}

br.w370{
	display: none;
}

@media all and (max-width: 480px) {
	/* .work-item {
		display: block;
	}

	.work-item-photo{
		width: 100%;
		padding-bottom: 100%;
	}

	.work-item-intro{
		width: 100%;
		margin-top: 15px;
	} */

	.picture-title.work-title{
		font-size: 1.2em;
	}

	.picture-description.work-description{
		margin: 0;
		letter-spacing: 0;
		font-size: 1em;
	}

	.work-btn{
		margin: 10px 0;
	}
}

@media all and (max-width: 370px) {
	br.w370{
		display: block;
	}
}

.page-num{
	width: 100%;
	position: relative;
	margin: 0 auto;
}

.page-num-container{
	width: 100%;
	position: relative;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

li.page-num-item{
	width: 45px;
	height: 45px;
	margin: 3px;
	position: relative;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-weight: 500;
	font-size: 1.2em;
	color: #222222;
	text-align: center;
	line-height: 45px;
	background: #e2e2e2;
	transition: .2s linear;
}

li.page-num-item a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

li.page-num-item.active{
	background: #ffcc00;
}

li.page-num-item.arrow-left{
	border: 1px solid #222222;
	background: none;
	box-sizing: border-box;
}

li.page-num-item.arrow-right{
	background: #000000;
	color: #ffffff;
}

li.page-num-item.disable{
	background: #999999;
	color: #666666;
	border: none;
}

li.page-num-item:hover{
	background: #ffcc00;
}

li.page-num-item.arrow-left:hover{
	background: none;
}

li.page-num-item.arrow-right:hover{
	background: #000000;
}

li.page-num-item.disable:hover{
	background: #999999;
	color: #666666;
	border: none;
}

@media screen and (orientation: portrait) {
	li.page-num-item:hover{
		background: #e2e2e2;
	}
}

@media all and (max-width: 480px) {
	li.page-num-item:nth-child(6),
	li.page-num-item:nth-child(7){
		display: none;
	}

	li.page-num-item{
		width: 40px;
		height: 40px;
		line-height: 40px;
	}
}

/* edit */
.edit-img{
	border: 1px dotted #999999;
}

.edit-sub{
	float: left;
}

.edit-description{
	font-size: 1em;
	margin: 5px 0;
	float: right;
	letter-spacing: 0;
}

.edit-info:after{
	content: '';
	display: table;
	clear: both;
}

.cube-btn.mobile-half {
    width: 48%;
}


/* edit album */
.drag-intro{
	margin: 5px 0;
}

.drag-intro p{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	font-size: 1.1em;
    font-weight: 500;
    color: #000000;
}
.edit-drag{
	width: 100%;
	position: relative;
	background: #ffffff;
}

.edit-drag-container{
	width: 96%;
	position: relative;
	margin: 0 auto;
	margin-bottom: 20px;
	padding: 2% 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.edit-album-item{
	width: 31.3333%;
	padding-bottom: 31.3333%;
	margin: 1%;
	position: relative;
	cursor: move;
}

.edit-album-img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.edit-album-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* .edit-album-item a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
} */

.popup-edit{
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .9);
	z-index: 10;
	opacity: 0;
	display: none;
}

.popup-edit-container{
	width: 90%;
	max-width: 600px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: #ffffff;
}

.popup-edit-content{
	width: 90%;
	position: relative;
	margin: 5% auto;
}

.popup-edit-0{
	display: none;
}

.popup-img{
	width: 100%;
	padding-bottom: 50%;
	position: relative;
}

.popup-img img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}


.popup-intro p {
    color: #222222;
    font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1.1em;
}

.popup-intro textarea {
    width: 100%;
    color: #222222;
    font-weight: 400;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-size: 1em;
    padding: 10px 5px;
    box-sizing: border-box;
    border: 1px solid #cccccc;
}

.popup-btns{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.popup-btns .cube-btn{
	margin: 1%;
}

/* ============================================================
CONTACT
============================================================ */
.mail-form{
	width: 90%;
	max-width: 800px;
	position: relative;
	margin: 20px auto;
	background: #ffffff;
}

.mail-form-contaoner{
	width: 90%;
	position: relative;
	margin: 0 auto;
	padding: 5% 0;
}

.mail-form-wrap{
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    position: relative;
	color: #222222;
}

.mail-item label, .contact-item{
	color: #666666;
	font-size: 1.1em;
	margin-right: 10px;
}

.mail-item-inline input{
	min-width: 160px;
}

.mail-item{
	margin: 10px 0;
	margin-right: 20px;
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.mail-agree{
	align-items: flex-start;
}

.mail-item-inline{
	display: inline-block;
}

.mail-item input{
	width: calc(100% - 175px);
}

.mail-item-contact input{
	width: calc(100% - 120px);
}

.mail-item input.agree-check{
	width: 20px;
    zoom: 1.5;
}

.mail-select{
	width: calc(100% - 120px);
    height: 45px;
    padding: 0 10px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url('../img/sort-down.svg') no-repeat 96% center transparent;
    background-size: 2.5%;
}

.mail-content{
	width: 100%;
	padding: 15px 10px;
    font-size: 1em;
    color: #000000;
    font-weight: 500;
    border: 1px solid #cccccc;
    box-sizing: border-box;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.mail-item-out{
	display: block;
}

.mail-thx{
	text-align: center;
	font-size: 1.1em;
    color: #222222;
    font-weight: 500;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.refund-all, .bank-related{
	display: none;
}

.contact-br{
	padding: 10px 0;
	margin: 0;
}

@media all and (max-width: 640px){
	.mail-item-inline{
		display: block;
	}

	.mail-item input{
		width: calc(100% - 60px);
	}

	.mail-item{
		border-bottom: 1px solid #cccccc;
    	padding-bottom: 15px;
	}

	.mail-item input.agree-check{
		width: 50px;
	    zoom: 1.5;
	}
}



/* ============================================================
Marquee
============================================================ */
.cp_wrapper {
	position: fixed;
    width: 100%;
    left: 0;
    z-index: 99;
}

section#marquee{
	isolation: isolate;
}

section &gt; .marquee {
	padding: 8px;
	font-size: clamp(16px, 16vw, 16px);
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	color: var(--color-text, #ffffff);
    box-sizing: border-box;
    background: #454545;
}

.marquee{
	--translate-3d-x: -5%;
	overflow: hidden;
	display: flex;
	align-items: center;
}

.marquee::before {
	display: block;
	white-space: pre;
	content: attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text)  " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text)  " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text) " " attr(data-text);
	width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
	transform: translate3d(var(--translate-3d-x, -2%), 0, 0);
	will-change: transform;
}

@media (prefers-reduced-motion: no-preference) {
	.marquee::before {
		animation: marquee 20s linear infinite;
	}
	.marquee--reverse::before {
		animation-direction: reverse;
	}
}

@keyframes marquee {
	0% {
		transform: translate3d(var(--translate-3d-x, -2%), 0, 0);
	}
	100% {
		transform: translate3d(calc(var(--translate-3d-x) - 5% - 1px), 0, 0);
	}
}

@media(max-width:991px){
	section#marquee{
		/* padding-bottom:var(--padding-sectionY, 50px); */
	}
	section &gt; .marquee {
		bottom:0;
		font-size: clamp(14px, 14vw, 16px);
	}
}




/* ============================================================
INDEX
============================================================ */
header.index-header{
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
}

.kv-mention {
	width: 360px;
	bottom: 20px;
	left: 20px;
	position: absolute;
	z-index: 4;
	color: #ffffff;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	display: flex;
	align-items: flex-end;
}

.kv-mention p.date{
	width: calc(40% - 20px);
    margin-right: 20px;
    font-size: 4rem;
}

@media all and (max-width: 991px){
	.kv-mention p.date{
		width: initial;
		font-size: 2.2rem;
	}
}

.kv-mention p.date span {
	height: 40px;
	margin-left: 16px;
	border-left: 1px solid #ffffff;
    display: block;
}
@media all and (max-width: 991px){
	.kv-mention p.date span {
		height: 24px;
	}
}

.kv-mention p.host{
	width: 60%;
	padding-bottom: 12px;
	letter-spacing: 1px;
}
@media all and (max-width: 991px){
	.kv-mention p.host{
		padding-bottom: 10px;
		font-size: 0.875rem;
	}
}

.kv-bg{
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	overflow: hidden;
	background: #000000;
}

.kv-img{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	/* opacity: 0; */
	z-index: 1;
}

.kv-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.kv-img-1 {
	z-index: 2; 
	opacity: 1;
}

.kv-img &gt; img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	/* opacity: 0; */
	animation: AiniPhotowall 15s ease-in-out 1 forwards;
}
/* @media all and (max-width: 1200px){
	.kv-img &gt; img{
		object-position: center;
	}
} */


@keyframes AiniPhotowall {
	0% {
		transform: scale(1.2);
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}


.kv-desktop{
	display: block;
}

.kv-mobile{
	display: none;
}

.kv-stage {
	position: absolute;
    width: 100%;
    height: 20%;
    bottom: 0;
    left: 0;
	z-index: 3;
	background-image: linear-gradient(180deg, rgba(0,0,0,0.00) 1%, rgba(0,0,0,0.70) 100%);
}

.kv-stage img {
	object-fit: cover;
	object-position: right;
}

.kv-stage .layer_101 {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
}

.kv-img-go{
	animation: kvSwipe 2s forwards;
}

.kv-img-back{
	animation: kvSwipe 2s forwards reverse;
}

@keyframes kvSwipe{
	0%{
		opacity: 0;
	}

	100%{
		opacity: 1;
	}
}

@media screen and (orientation: portrait) {
	.kv-stage,
	.kv-desktop{
		display: none;
	}

	.kv-mobile{
		display: block;
	}
}

.bigtitle {
	width: 540px;
    padding-top: 60px;
    box-sizing: border-box;
    height: 500px;
	top: 180px;
    left: 50%;
	position: absolute;
	z-index: 3;
	text-align: center;
}

@media screen and (orientation: portrait) {
	.bigtitle {
		left: 24%;
	}
}

@media all and (max-width: 828px){
	.bigtitle {
		width: 280px;
    	height: 260px;
		left: 20%;
	}
}

@media all and (max-width: 400px){
	.bigtitle {
		width: 240px;
        height: 230px;
        top: 140px;
        left: 24%;
	}
}

.bigtitle .parallelogram {
	width: 100%;
    height: 100%;
    position: absolute;
    top: 90px;
    left: -30px;
    background-image: url(../img/bigtitle_bike.svg);
	background-size: contain;
    background-repeat: no-repeat;
    z-index: 9;
}
@media all and (max-width: 750px){
	.bigtitle .parallelogram {
		top: -62px;
		left: -17px;
		background-position: bottom left;
	}
}

.bigtitle img{
	position: absolute;
	z-index: 4;
}

.bigtitle .maga {
	width: 80%;
    left: 0;
    top: 0;
}

.bigtitle .tce {
	width: 80%;
    left: 0;
    top: 12%;
}
.bigtitle .t1 {
	width: 40%;
    left: -5%;
    top: 30%;
}

.bigtitle .t2 {
	width: 30%;
    left: 33%;
    top: 30%;
}

.bigtitle .t3 {
	width: 20%;
    left: 65%;
    top: 30%;
}

.bigtitle .subtitle {
	width: 55%;
    left: 10%;
    top: 80%;
}

.bigtitle .date {
	width: 55%;
    left: 10%;
    top: 89%;
}

.index-logo {
	width: 230px;
	height: 120px;
	margin-top: 30px;
	margin-left: 30px;
}

.index-nav {
	margin-top: 38px;
	background: rgba(32, 32, 32, 1);
}

@media all and (max-width: 640px){
	.index-logo {
	    width: 145px;
	    height: 75px;
	    margin-top: 20px;
	    margin-left: 20px;
	}
}

section.index-about {
	text-align: center;
	background-image: url(../img/index_about_bg.svg),
					  linear-gradient(134deg, #A2A2A2 0%, #FFFFFF 24%, #FFFFFF 78%, #7C7C7C 100%);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, cover;
	background-position: right 40% top 0%, left;
}
@media all and (max-width: 991px){
	section.index-about {
		background-size: cover, cover;
		background-position: right 110% top 0%, left;
	}
}

.index-about .screen-container{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.index-about .about-intro {
	width: 38%;
	padding: 20px 40px;
	box-sizing: border-box;
	color: #ffffff;
	background-image: linear-gradient(-22deg, rgba(0,0,0,0.50) 0%, rgba(38,38,38,0.77) 18%, #1B1B1B 84%);
	box-shadow: 0 22px 34px 0 rgba(0,0,0,0.50), inset 0 1px 20px 0 rgba(255,255,255,0.48);
}
@media all and (max-width: 991px){
	.index-about .about-intro {
		width: 100%;
		margin: 0 auto;
		padding: 20px 20px;
	}
}

.index-about .about-intro h4 {
	font-weight: bold;
	color: #98B63D;
	text-align: left;
	font-size: 1rem;
}

.index-about .about-intro p{
	margin-bottom: 1rem;
}

.index-about .about-gift{
	width: 62%;
	padding: 20px 40px;
	box-sizing: border-box;
	background: #000000;
	color: #ffffff;
}
@media all and (max-width: 991px){
	.index-about .about-gift {
		width: 100%;
		margin: 20px auto;
		padding: 20px 20px;
	}
}

.index-about .about-gift img {
	width: 100%;
}

.index-about .about-gift p{
	padding: 10px 0;
	text-align: left;
	border-bottom: 1px solid #555555;
	display: flex;
	/* position: relative; */
}

.index-about .about-gift p em{
	width: 120px;
	font-weight: bold;
	color: #98B63D;
	text-align: center;
	position: relative;
}
@media all and (max-width: 750px){
	.index-about .about-gift p em{
		width: 90px;
	}
}
.index-about .about-gift p span{
	width: calc(100% - 125px);
}
@media all and (max-width: 750px){
	.index-about .about-gift p span{
		width: calc(100% - 95px);
		font-size: 0.875rem;
		text-align: justify;
	}
}


section.index-about .cube-btn {
	margin: 1rem auto;
}

/* Preorder */
section.index-preorder {
	background: #000000;
	background-image: url(../img/pattern_grid_left.png), url(../img/pattern_grid_right.png);
	background-repeat: repeat-y, no-repeat;
	background-size: initial, initial;
	background-position: left bottom, right bottom;
}

.index-preorder .screen-container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.preorder-pic {
	width: 50%;
}
@media all and (max-width: 991px){
	.preorder-pic {
		width: 100%;
		max-width: 660px;
		margin: 20px auto;
	}
}

.preorder-pic img{
	width: 100%;
}

.preorder-des {
	width: calc(50% - 30px);
	margin-left: 30px;
	text-align: left;
}
@media all and (max-width: 991px){
	.preorder-des {
		width: 100%;
	}
}

.preorder-des h2{
	margin-bottom: 1rem;
	color: #ffffff;
	position: relative;
	text-align: left;
	display: inline-block;
}

.preorder-des h2::after{
	content: '';
	width: 100%;
	height: 6px;
	position: absolute;
	left: 0;
	top: 60px;
	background-image: linear-gradient(104deg, #FFF706 0%, #8DB033 71%, rgba(128,168,57,0.00) 92%);
}

.preorder-des h3{
	font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: 500;
    color: #98B63D;
    margin: 20px 0 5px;
}

.preorder-des div {
	letter-spacing: 2px;
}

.preorder-des p {
	margin: 15px 0;
	color: #ffffff;
}

.preorder-des a {
	color: #ffffff;
}

.preorder-des ul {
	margin-left: 1.5rem;
}

.preorder-des ul li {
	list-style-type: disc;
}

.preorder-des .cube-btn  {
	margin: 20px 0;
}


.index-title {
	position: relative;
	padding-bottom: 0.5rem;
	background: url(../img/title-line.svg) bottom center no-repeat;
}

.index-title h3{
	font-size: 1.5em;
	color: #ffffff;
	text-align: center;
	position: relative;
	z-index: 1;
	letter-spacing: 4px;
}

/* Related Activity */
.index-activity {
	background-image: linear-gradient(0deg, #000000 56%, #373737 93%, #4C4C4C 100%);
}

.activity-wrap {
	display: flex;
	flex-wrap: wrap;
}
@media all and (max-width: 991px){
	.activity-wrap {
		margin: 40px auto;
	}
}

.activity-wrap .cover {
	width: calc(45% - 40px);
	height: 360px;
	margin-right: 40px;
	overflow: hidden;
	position: relative;
}
@media all and (max-width: 991px){
	.activity-wrap .cover {
		width: 100%;
		height: initial;
		margin: 0;
	}
}

.activity-wrap .cover img {
	width: calc(100% - 20px);
	margin-left: 20px;
    margin-top: 20px;
	object-fit: cover;
    object-position: center;
}
@media all and (max-width: 991px){
	.activity-wrap .cover img {
		width: 100%;
		margin: 20px 0 0;
	}
}

.activity-wrap .des{
	width: 50%;
	padding-top: 50px;
}
@media all and (max-width: 991px){
	.activity-wrap .des{
		width: 100%;
		padding-top: 20px;

	}
}

.activity-wrap .des p {
	margin-bottom: 1rem;
	color: #ffffff;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.activity-wrap .des p.caption {
	color: #98B63D;
	font-size: 1.5rem;
	font-weight: bold;
}

.activity-wrap .cube-btn{
	margin: 20px 0;
}


/* override style */
.index-activity .swiper-pagination {
	height: 40px;
	top: 10px;
    left: initial;
    right: 40px;
    width: 120px;
}

.index-activity .swiper-pagination .swiper-pagination-bullet{
	width: 10px; 
    height: 10px;
    border: 3px solid #ffffff;
	background: transparent;
	opacity: 1;
}

.index-activity .swiper-pagination .swiper-pagination-bullet-active {
	background: #ffffff;
}

.index-activity .swiper-button-prev{
	width: 40px;
	height: 40px;
	left: initial;
	right: 160px;
	top: 20px;
	background: #585858;
}

.index-activity .swiper-button-next{
    width: 40px;
	height: 40px;
	right: 0;
    top: 20px;
	background: #585858;
}

.index-activity .swiper-button-prev:after,
.index-activity .swiper-button-next:after {
	font-size: 20px;
	color: #ffffff;
}

/* Index Luckydraw Gift*/
section.index-lucky {
	background-color: #98B63D;
	background-image: url(../img/angle.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left 66% top 0%;
}
@media all and (max-width: 1400px){
	section.index-lucky {
		background-position: left 80% top 0%;
	}
}
@media all and (max-width: 991px){
	section.index-lucky {
		background-image: none;
	}
}

.index-lucky .screen-container {
	margin: 40px auto;
	padding: 30px;
	box-sizing: border-box;
	background-image: linear-gradient(180deg, rgba(255,255,255,0.00) 0%, rgba(255,255,255,0.65) 100%);
	border: 1px solid #FFFFFF;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
@media all and (max-width: 991px){
	.index-lucky .screen-container {
		margin: 20px 20px;
	}
}

.index-lucky .lucky-pic{
	width: 50%;
}

.index-lucky .lucky-pic img {
	width: 100%;
}
@media all and (max-width: 991px){
	.index-lucky .lucky-pic {
		width: 100%;
	}
	.index-lucky .lucky-pic img {
		max-width: 480px;
	}
}

.index-lucky .lucky-text {
	width: calc(40% - 80px);
	margin-left: 80px;
}
@media all and (max-width: 991px){
	.index-lucky .lucky-text {
		width: 100%;
		margin: 20px 0;
	}
}

.index-lucky h2 {
	color: #333333;
	text-align: left;
	line-height: 3rem;
}

.index-lucky p{
	margin-bottom: 1rem;
	color: #333333;
	text-align: left;
}

.index-lucky p em {
	font-weight: bold;
}

.index-lucky .cube-btn{
	margin: 20px 0 0;
}


section.sponsor{
	width: 100%;
	position: relative;
	margin: 0 auto;
	background-image: linear-gradient(134deg, #A2A2A2 0%, #FFFFFF 24%, #FFFFFF 78%, #7C7C7C 100%);
}

.sponsor-title h3{
	font-size: 1.5rem;
	line-height: 1.5rem;
    text-align: center;
    letter-spacing: 3px;
    color: #333;
}

.sponsor-title:before{
	left: 50px;
}

.sponsor-logos{
	width: 100%;
	position: relative;
	margin: 0 0 30px 0;
}

.sponsor-logos ul{
	width: 100%;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.sponsor-logos ul li{
	width: 25%;
	height: 80px;
	position: relative;
	margin: 5px 0;
	opacity: 1;
	transition: .2s linear;
}

.sponsor-logos ul li img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.sponsor-logos ul li.narrow {
	width: 180px;
}

.sponsor-logos ul li a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.sponsor-logos ul li:hover{
	opacity: .7;
}

.sponsor-container{
	padding: 40px 0 20px 0;
}

@media all and (max-width: 750px) {
	.sponsor-logos ul li{
    	width: 48%;
		margin: 0 2% 0 0;
		text-align: center;
	}

	.sponsor-logos ul li.narrow {
		width: 35%;
	}
}

/* index section -  competition groups */
.competition {
	width: 100%;
	max-width: 660px;
	margin: 0 auto;
}

.competition .group {
	width: 100%;
	height: 200px;
	color: #ffffff;
	text-align: center;
	border: 5px solid #facc01;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/comp-group1.jpg) center;
	background-size: cover;
	position: relative;
	transition: all 0.4 ease-in;
}

.competition .group:hover {
	opacity: 0.9;
}

.group h4 {
	color: #ffffff;
	margin: 4rem 0 0.5rem;
    font-size: 2.5rem;
}

.group p {
	color: #ffffff;
}

.group .special-mark {
	background: #facc01;
	color: #000000;
	font-size: 1rem;
	position: absolute;
	left: 0;
	top: 8%;
    padding: 2px 8px;
	font-weight: 500;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.block-link {
	width: 100%;
    height: 100%;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    position: absolute;
}

.competition p {
	margin-top: 1rem;
}

@media all and (max-width: 480px) {
	
	.competition .group {
		height: 140px;
	}

	.group h4 {
		margin: 2rem 0 0.5rem;
		font-size: 1rem;
	}

	.group p,
	.group .special-mark { 
		font-size: 0.75rem;
	}
}

/* ============================================================
PAGES
============================================================ */
.top-banner{
	width: 100%;
	/* height: 100px; */
	padding-top: 60px;
	padding-bottom: 20px;
	background-image: url(../img/top_banner.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
@media all and (max-width: 750px) {
	.top-banner{
		padding-top: 100px;
	}
}

.top-banner.tour {
	padding-top: 100px;
	padding-bottom: 40px;
	background-image: url(../img/top_banner_tour.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

@media all and (max-width: 750px) {
	.top-banner.tour::after{
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
        left: 0;
        z-index: 0;
		background-image: linear-gradient(180deg, rgba(28,109,53,1) 0%, rgba(51,142,86,0.30) 100%);
	}
}
.top-banner.tour .screen-container {
	position: relative;
	z-index: 2;
}




/* ============================================================
NEWS
============================================================ */
.piece-of-news {
	margin: 60px 0;
	padding-bottom: 20px;
	border-bottom: 1px solid #cccccc;
}
.piece-of-news .cube-btn {
	width: 100%;
    max-width: 290px;
	margin: 20px auto;
}
.news-container p a {
	color: #000000;
	font-weight: 500;
	border-bottom: 2px solid #ffcc00;
    transition: .2s linear;
}

.news-container p a:hover {
	background:  #ffcc00;
}

.news-bigtitle {
	margin-top: 30px;
	text-align: center;
	font-size: 2rem;
}

.news-bigtitle .sub-title {
	margin-top: 30px;
    text-align: center;
	font-size: 0.8em;
}

.news-bigtitle h3 {
	line-height: 1em;
    margin: 10px 0 25px;
}

.news-bigtitle h4 {
	font-size: 0.6em;
    line-height: 1.4em;
    letter-spacing: 0.2em;
}
.news-bigtitle h4 i {
	font-weight: bold;
}

.news-bigtitle h4.en-style {
    letter-spacing: 0;
}

.news-bigtitle h5 {
	font-size: 0.6em;
    line-height: 1.4em;
    letter-spacing: 0.2em;
}

.news-kv-shot {
	width: 100%;
	max-width: 720px;
	margin: 20px auto;
	text-align: center;
}

.news-kv-shot img {
	width: 100%;
}

.news-container p {
	margin-bottom: 15px;
	line-height: 1.68em;
}

.news-container p em {
	font-weight: bold;
}

.news-container h5 {
	margin-bottom: 0;
    margin-top: 30px;
	font-weight: 500;
	letter-spacing: 0;
	font-size: 0.8em;
}

ul.list-decimal {
	padding-left: 1.5em;
}

ul.list-decimal li {
	list-style: decimal;
	margin-bottom: 20px;
}


.news-table {
	width: 100%;
	margin: 0 auto;
	border-spacing: 0;
	border-top: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
}

.news-table td {
	padding: 15px;
	background: #ffffff;
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}

.news-table td:first-child {
	width: 150px;
	text-align: center;
	font-weight: 500;
}

@media all and (max-width: 640px){
	.news-container p {
		text-align: left;
	}

	.photo-theme td {
		padding: 15px 5px;
	}

	.news-table td:first-child {
		width: 90px;
	}
}


.photo-theme td.special {
	background: #fff7d8;
	color: #222222;
	font-weight: 500;
	text-align: center;
	font-weight: bold;
}

.news-article {
	width: calc(88%/3);
	margin: 2% 2%;
	position: relative;
	opacity: 1;
	transition: .2s linear;
	background: #ffffff;
}

.news-article:hover{
	opacity: .9;
}

@media all and (max-width: 960px) {
	.news-article{
		width: calc(92%/2);
		margin: 2% 2%;
		position: relative;
	}
}

@media all and (max-width: 480px) {
	.news-article {
		width: 100%;
		margin: 2% 0;
		position: relative;
	}
}

.news-article a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.news-article-pic {
	width: 100%;
	padding-bottom: 66.6667%;
	position: relative;
}

.article-pic-container{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	/* overflow: hidden; */
}

.article-pic-container img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.photo-share, .share-back{
	z-index: 2;
}

@media screen and (orientation: portrait) {
	.news-article:hover{
		opacity: 1;
	}
}

/* NEWS on index page */
.news-index-title {
	margin-top: 30px;
}

.news-index-title p{
	font-size: 1.5rem;
    line-height: 1.5rem;
    margin-bottom: 1rem;
    text-align: center;
    margin: 0px 0 20px;
    letter-spacing: 2px;
}

.news-wrap {
	display: flex;
	flex-wrap: wrap;
}

.news-wrap .news-column {
	width: calc(50% - 20px);
	display: flex;
	flex-wrap: wrap;
}
@media all and (max-width: 991px) {
	.news-wrap .news-column {
		width: 100%;
	}
}

.news-card{
	margin: 10px;
	background: #ffffff;
	position: relative;
	transition: all 0.4s ease;
}
@media all and (max-width: 750px) {
	.news-card{
		margin: 10px 0;
	}
}

.news-card.lg{
	width: 100%;
	height: 326px;
}
@media all and (max-width: 750px) {
	.news-card.lg{
		height: 240px;
	}
}

.news-card.sm{
	width: calc(50% - 20px);
	height: 240px;
}
@media all and (max-width: 750px) {
	.news-card.sm{
		width: 100%;
	}
}

.news-card .cover{
	width: 100%;
	height: 100%;
}

.news-card .cover img {
	width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-card .caption {
	width: calc(100% - 40px);
	position: absolute;
	bottom: 20px;
	left: 20px;
	z-index: 3;
	text-align: left;
	color: #ffffff;
	font-weight: 500;
	font-size: 1.125rem;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.news-card .caption span {
	display: block;
}
@media all and (max-width: 991px) {
	.news-card .caption span {
		display: inline;
	}
}

.news-card a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	transition: all 0.4s ease;
}

.news-card a:hover {
	border: 5px solid #98B63D;
	box-sizing: border-box;
	transition: all 0.4s ease;
}


/* ============================================================
Index Workshop
============================================================ */
section.index-foreword {
	background-color: #668700;
	background-image: url(../img/pattern_grid.png);
	background-repeat: repeat-y;
	background-size: initial;
	background-position: right top;
}

.index-foreword .screen-container {
	margin: 0 auto;
	padding: 40px 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.foreword-left {
	width: 35%;
}

.foreword-right {
	width: 64%;
}

.foreword-right p {
	margin: 1rem 0;
	letter-spacing: 1px;
	color: #ffffff;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

.foreword-right p span{
	font-size: 2rem;
	font-weight: bold;
}

.foreword-right .cube-btn{
	margin: 20px 0;
}

@media all and (max-width: 991px) {
	.foreword-left,
	.foreword-right{
		width: 100%;
	}
}



/* ============================================================
RULES
============================================================ */
.rules-title {
	display: inline-block;
}

.rules-title h3 {
	text-align: left;
	color: #222222;
	font-size: 1.5em;
	display: inline;
	position: relative;
	z-index: 2;
}

.rules-title-long:before {
	left: 23%;
}

@media all and (max-width: 640px) {
	.rules-title h3 {
		font-size: 1.2em;
		line-height: 1.25em;
		font-weight: bold;
	}
}

.rules-title-short:before {
	left: 25px;
}

.rules-container{
	margin: 0 0 50px;
	color: #ffffff;
}

.rules-container a {
	color: #ffffff;
	border-bottom: 2px solid #ffcc00;
	font-weight: 500;
	transition: all 0.2s ease;
}

.rules-container a:hover {
	background: #ffcc00;
	color: #000000;
	transition: all 0.2s ease;
}

.rules-container ul {
	margin-left: 1.5rem;
}

.rules-container ul li{
	margin: 0.5rem 0;
	list-style: decimal;
	letter-spacing: 1px;
}

.rules-container ul li em{
	color: #ffcc00;
}

h4.sub-title-mention {
	margin: 40px auto 10px;
	font-size: 1.5rem;
	text-align: center;
}

table.delivery-fee  {
	margin: 10px 0;
}

table.delivery-fee  tr{
	background-color: #000000;
	color: #ffffff;
} 

table.delivery-fee tr:first-child{
	background-color: #eeeeee;
	color: #333333;
} 

table.delivery-fee tr td {
	padding: 10px 20px;
	border-bottom: 1px solid #333333;
	border-right: 1px solid #333333;
}

.rules-container .notice-box {
	margin-bottom: 30px;
}

.notice-box .title{
	padding: 10px 20px;
	font-size: 1.25rem;
	line-height: 1.25rem;
	color: #000000;
	letter-spacing: 1px;
	font-weight: 500;
	background-image: linear-gradient(102deg, #FFFFFF 0%, #707070 99%);
	border-radius: 5px 5px 0 0 ;
}

.notice-box .content{
	padding: 10px 20px;
	box-sizing: border-box;
	background: #333333;
	border-radius: 0 0 5px 5px;
}

.desktop-only{
	display: inline-block;
}

.mobile-only{
	display: none;
}

@media all and (max-width: 768px) {
	h5.rules-title{
		display: block;
	}

	.rules-table{
		display: block;
	}

	.table-wrap {
		display: block;
	}
	
	.rules-table-left,
	.rules-table-right {
		width: 100%;
		border: 0;
	}

	.desktop-only{
		display: none;
	}

	.mobile-only{
		display: block;
	}
}

ul.list-number &gt; li {
	list-style: decimal;
	font-weight: 500;
}

.submission-tr {
	margin-top: 1rem;
    color: #eeeeee;
    font-weight: normal;
}

.submission-tr em{
	font-size: 24px;
    font-weight: 500;
}

.submission-tr a {
	color: #ffffff;
	border-bottom: 2px solid #ffcc00;
	font-weight: 500;
	transition: all 0.2s ease;
}

.submission-tr a:hover {
	background: #ffcc00;
	color: #000000;
	transition: all 0.2s ease;
}

.submission-tr:last-of-type{
	margin-bottom: 4rem;
}

table.prize-set tr td{
	padding: 10px 20px;
	background-color: #000000;
	border-bottom: 1px solid #333333;
	border-right: 1px solid #333333;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	position: relative;
}

table.prize-set tr td:first-child{
	padding: 10px 30px;
	font-size: 1.25rem;
	font-weight: 500;
}

table.prize-set tr td em{
	color: #98B63D;
}

@media all and (max-width: 750px) {
	table.prize-set tr td{
		padding: 5px 10px;
	}
	table.prize-set tr td:first-child{
		font-size: 1.1rem;
		font-weight: bold;
	}
}
.sell-out{
	position: absolute;
    left: -30px;
    top: 15px;
    color: #ff0000;
    border: 1px solid #ff0000;
    padding: 0 6px;
    transform: rotate(-12deg);
	font-style: normal;
}
.sell-out-big{
	position: absolute;
    left: -80px;
    top: 15px;
    color: #ff0000;
    border: 1px solid #ff0000;
    padding: 0 6px;
    transform: rotate(-12deg);
	font-style: normal;
	font-size: 24px;
}

@media all and (max-width: 750px) {
	.sell-out{
		left: -10px;
	}
	
	.sell-out-big{
		left: 0px;
		top: -30px;
	}
}

.submission-process-wrap {
	margin: 10px 0 40px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.submission-process-wrap .process {
	width: 160px;
	height: 160px;
	margin: 10px;
	padding: 20px 20px 0;
	box-sizing: border-box;
	border-radius: 100%;
	background: #000000;
	text-align: center;
	box-shadow: 0 5px 14px 0 rgba(255,255,255,0.33);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
}
@media all and (max-width: 991px) {
	.submission-process-wrap .process {
		width: 135px;
		height: 135px;
		margin: 5px;
		padding: 20px 8px 0;
		font-size: 0.875rem;
	}
}

.submission-process-wrap .process img {
	width: 30%;
	margin-bottom: 10px;
}

.submission-process-wrap .arrow {
	width: 5%;
	text-align: center;
}



table.rules-table-in{
	width: 100%;
	position: relative;
}

table.rules-table-in tr td{
	width: 28%;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
	padding: 5px 10px;
	box-sizing: border-box;
	background: #ffffff;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
}

table.rules-table-in tr td:nth-child(1){
	width: 10%;
	background: #eaeaea;
}

table.rules-table-in tr td:nth-last-child(1){
	border-right: 1px solid #cccccc;
}

table.rules-table-in tr:nth-last-child(1) td{
	border-bottom: 1px solid #cccccc;
}

@media all and (max-width: 480px) {
	table.rules-table-in tr td{
		width: 22%;
		padding: 3px 5px;
	}

	table.rules-table-in tr td:nth-child(1){
		width: 7%;
	}

	table.rules-table-in tr td{
	    font-size: .9em;
	}
}

ul.list-square, ul.list-square li{
	list-style: square;
}



.em-blod {
	font-weight: 700;
	margin: 1rem 0;
}

.em-color {
	color: #ffcc00;
}

.space-bottom {
	margin: 0 0 1rem;
}

.info-center {
	margin: 0 0 10px;
	text-align: center;
}




/* ============================================================
SHORTLIST
============================================================ */
.shortlist-container{
	margin: 20px 0;
}

.shortlist-container .tip {
	margin-top: 15px;
	padding: 5px 15px;
	background: #E8E8E8;
	color: #666666;
	border-left: 5px solid #B0B0B0;
	font-size: 0.875em;
	display: block;
    width: fit-content;
}

.shortlist-container p {
	text-align: left;
	margin-bottom: 1rem;
}

.photo-wall-wrap .tabs a {
	width: calc(100%/10);
	color: #666666;
}

.photo-wall-wrap .tabs ul {
	/* border-bottom: 1px solid #D6D6D6; */
	background: #ffffff;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

/* for winner */
.past-winners {
	display: flex;
	justify-content: center;
}

.past-winners .year-tag {
    margin: 10px 5px;
    padding: 10px 20px;
	background: #dddddd;
	border-radius: 5px;
	color: #999999;
	font-weight: 500;
	transition: all 0.4s ease;
}

.past-winners .year-tag:hover {
	background: #ffcc00;
	color: #333333;
	transition: all 0.4s ease;
}

.past-winners .year-tag.active {
	background: #000000;
	color: #ffcc00;
}

.past-winners .year-tag.active:hover {
	background: #000000;
	color: #ffcc00;
}

.photo-wall-wrap.final-winner .tabs ul {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto 20px;
}

.tab-limited {
	width: 90%;
    max-width: 1100px;
	margin: auto;
	padding-bottom: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.photo-wall-wrap .tabs ul li {
	margin-right: 15px;
    padding: 10px;
}

.photo-wall-wrap .tabs ul li.active {
	border-bottom: 4px solid #ffcc00;
}

.photo-wall-wrap .tabs ul li.active a {
	color: #000000;
	font-weight: 700;
}

.photo-wall-wrap .tabs &gt;  div {
	min-height: 560px;
	margin-top: 20px;
}

.photo-wall {
	display: flex;
	flex-wrap: wrap;
}

.photo-wall img {
	width: 100%;
	height: auto;
	display: block;
	transition: all 0.2s ease;
	background: #ffcc00;
}

.photo-wall img:hover {
	border: 5px solid #ffcc00;
	box-sizing: border-box;
	transform: scale(1.3);
	cursor: pointer;
}

.modal-content a {
	width: 100%;
	max-width: 400px;
	height: 44px;
	line-height: 44px;
	display: block;
	margin: 30px auto;
	background: #ffcc00;
	color: #000000;
	font-weight: 500;
	text-align: center;
}

.modal-content.zoom-mode {
	display: flex;
	flex-wrap: wrap;
}

.detail-photo-wrap {
	width: calc(80% - 50px);
	margin-right: 30px;
	background-color: #333333;
}

.detail-photo {
	width: 100%;
	/* min-height: 600px; */
	min-height: 80vh;
	text-align: center;
    background-size: contain;
    background-repeat: no-repeat;
	background-position: center;
}

.detail-text-wrap {
	width: 20%;
}

.detail-title,
.detail-author {
	/* width: calc(50% - 18px); */
    margin: 20px 0;
}

.detail-title span,
.detail-author span {
	color: #666666;
}

.detail-title span:first-child,
.detail-author span:first-child {
	border-left: 5px solid #ffcc00;
	padding-left: 10px;
}

.detail-title span:last-child,
.detail-author span:last-child {
	padding-left: 5px;
	color: #000000;
	font-weight: 500;
}

.detail-desc {
	color: #666666;
	padding-bottom: 2em;
}
.detail-desc &gt; span:first-child {
	margin: 30px 0 10px;
    display: block;
}

.detail-desc p {
	color: #000000;
	text-align: left;
}

.modal-content.rule-mode h3 {
	text-align: center;
	line-height: 1.5rem;
}

ul.prize-rule {
	margin: 1rem 0;
	padding-left: 1.5rem;
}
ul.prize-rule li{
	margin: 0.5rem 0;
	list-style: decimal;
}

/* override modal */
body .blocker {
	padding: 0;
}

body .modal {
	max-width: 1000px;
	padding: 15px;
	margin-top: 80px;
	color: #333333;
}
@media all and (max-width: 728px) {
	body .modal {
		margin-top: 80px;
	}
}

body .modal.narrow {
	max-width: 640px;
}

body .modal a.close-modal {
    width: 32px;
    height: 32px;
}
@media all and (max-width: 1024px) {
	.photo-wall-wrap .tabs a {
		width: calc(100%/8);
	}
	.detail-photo {
		height: 500px;
	}
}

@media all and (max-width: 840px) {
	.photo-wall-wrap .tabs a {
		width: calc(100%/5);
	}
	.photo-wall-wrap .tabs ul li {
		margin-bottom: 10px;
		margin-right: 0;
	}
	.photo-wall-wrap .tabs ul li.active {
		background: #ffffff;
	}

	.detail-photo-wrap,
	.detail-text-wrap{
		width: 100%;
		margin: 0;
	}

	.detail-photo {
		min-height: 400px;
	}
}

@media all and (max-width: 640px) {
	.photo-wall-wrap .tabs a {
		width: calc(100%/4);
	}
	.detail-photo {
		height: 280px;
		min-height: initial;
	}
}


/* ============================================================
Prizes
============================================================ */
.prizes-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.prizes-wrap .box{
	margin: 10px;
	padding: 20px;
	box-sizing: border-box;
	background-image: linear-gradient(1deg, #000000 0%, #8C8C8C 100%);
	border: 1px solid #848484;
	border-radius: 10px;
}

.prizes-wrap .box.divide1{
	width: calc(100% - 20px);
	/* height: 300px; */
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.prizes-wrap .box.divide1 .pic{
	width: 58%;
	position: relative;
	z-index: 1;
}
.prizes-wrap .box.divide1 .pic.sellout::after{
	content: 'å®Œå”®';
    position: absolute;
    left: calc(50% - 40px);
    top: 43%;
    color: #ff0000;
    border: 2px solid #ff0000;
    background: rgb(220 220 220 / 38%);
    padding: 4px 12px;
    font-size: 30px;
    transform: rotate(-12deg);
    font-style: normal;
    z-index: 3;
    filter: drop-shadow(1px 4px 4px white);
}

.prizes-wrap .box.divide1 .pic img{
	width: 100%;
}

.prizes-wrap .box.divide1 .des{
	width: 42%;
	padding: 15px;
	box-sizing: border-box;
}
@media all and (max-width: 991px) {
	.prizes-wrap .box.divide1 .pic,
	.prizes-wrap .box.divide1 .des{
		width: 100%;
		margin: 10px auto;
	}
}

.prizes-wrap .box.divide1 ul li{
	list-style-type: disc;
}

.prizes-wrap .box.divide1 .des a{
	font-weight: normal;
}

.prizes-wrap .box.divide3{
	width: calc(100%/3 - 20px);
	height: 520px;
}

.prizes-wrap .box.divide3 .pic img{
	width: 100%;
    margin: 0 auto;
    display: block;
}
@media all and (max-width: 991px) {
	.prizes-wrap .box.divide3{
		width: 100%;
		height: auto;
	}
	.prizes-wrap .box.divide3 .pic img{
		width: 100%;
		max-width: 480px;
	}
}

.prizes-wrap .box.divide3 ul li {
	list-style: disc;
}

.prizes-wrap .box .souvenir{
	font-size: 1.8rem;
	font-weight: 500;
	color: #98B63D;
}

.prizes-wrap .box .price {
	font-size: 0.875rem;
	margin-bottom: 10px;
}

.prizes-set{
	margin-bottom: 20px;
	padding: 20px 25px;
	background-image: linear-gradient(25deg, rgba(0,0,0,0.00) 1%, #000000 81%);
	border: 1px solid rgba(255,255,255,0.16);
	box-shadow: 0 15px 24px 0 rgba(0,0,0,0.40), inset 0 1px 13px 0 rgba(255,255,255,0.48);
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.prizes-set::before{
	content: '';
	position: absolute;
	width: 6px;
	height: calc(100% + 2px);
	left: 0;
	top: -1px;
	background-image: linear-gradient(210deg, #89C925 19%, #F5F2FF 100%);
}

.prizes-set-plan {
	width: 55%;
	position: relative;
}
@media all and (max-width: 991px) {
	.prizes-set-plan {
		width: 100%;
	}
}

.prizes-set-photo {
	width: calc(25% - 40px);
	margin: 0 20px;
}
@media all and (max-width: 991px) {
	.prizes-set-photo {
		width: 100%;
        max-width: 240px;
        margin: 20px auto 0;
	}
}

.prizes-set-price {
	width: 20%;
}
@media all and (max-width: 991px) {
	.prizes-set-price {
		width: 100%;
	}
}

.prizes-set-price .cube-btn {
	width: 100%;
	margin: 0;
}
@media all and (max-width: 991px) {
	.prizes-set-price .cube-btn{
		max-width: 240px;
		margin: 20px auto 0;
	}
}

.prizes-set-price a{
	border: 0;
	background: none;
}

.prizes-set-price a:hover{
	background: none;
}

.prizes-set-plan span{
	padding-right: 15px;
	font-weight: 500;
	font-size: 1.5rem;
}

.prizes-set-plan em{
	color: #98B63D;
	padding: 0 30px 0 0;
	font-size: 1.5rem;
	font-weight: 500;
}
@media all and (max-width: 991px) {
	.prizes-set-plan p{
		font-size: 0.875rem;
	}
}

.modal-content.tshirt-spec h4,
.modal-content.lucky-spec h4{
	color: #333333;
	text-align: center;
}

.modal-content.tshirt-spec ul,
.modal-content.lucky-spec ul{
	margin-left: 2.5rem;
	margin-top: 1rem;
}

.modal-content.tshirt-spec ul li,
.modal-content.lucky-spec ul li{
	color: #333333;
	list-style-type: disc;
}
.modal-content.lucky-spec ul{
	max-width: 730px;
}

.modal-content.tshirt-spec &gt; p{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.modal-content.tshirt-spec img{
	width: 50%;
	margin: 20px auto;
}
@media all and (max-width: 991px) {
	.modal-content.tshirt-spec img{
		width: 100%;
		max-width: 480px;
	}
}

.modal-content.tshirt-spec img.size-mark {
	max-width: 360px;
}


.countdown-timer{
	margin: 20px auto;
	padding-bottom: 80px;
	background-image: url(../img/bg_deco.png);
	background-repeat: no-repeat;
	background-size: initial;
	background-position: center bottom;
}
@media all and (max-width: 991px) {
	.countdown-timer{
		background-size: 100%;
	}
}

.countdown-timer h4{
	margin: 50px 0 10px;
	text-align: center;
}

.countdown-timer h4 span{
	color: #ffcc00;
}

.countdown-timer .time{
	width: 100%;
	max-width: 480px;
    margin: 0 auto;
    padding: 10px 0;
    font-weight: 500;
    background-color: #000000;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media all and (max-width: 991px) {
	.countdown-timer .time{
		padding: 10px 10px;
		box-sizing: border-box;
		font-size: 0.875rem;
	}
}

.countdown-timer .time img{
	width: 40px;
    height: 40px;
    margin: 10px;
    padding: 10px;
    background: #ffffff;
    border-radius: 50px;
}
@media all and (max-width: 991px) {
	.countdown-timer .time img{
		width: 30px;
		margin: 10px 0;
		height: 30px;
		padding: 5px;
	}
}

.countdown-timer div em{
	width: 48px;
    text-align: center;
	padding: 0 10px;
	font-size: 2.5rem;
    color: #98B63D;
}
@media all and (max-width: 991px) {
	.countdown-timer div em{
		width: 40px;
		text-align: center;
		padding: 0 5px;
		font-size: 1.5rem;
		color: #98B63D;
	}
}


/* ============================================================
Lucky Draw
============================================================ */
.lucky .screen-container{
	padding: 20px 0 60px;
}
.lucky .screen-container &gt; h4{
	margin-bottom: 10px;
	text-align: left;
	color: #ffcc00;
}

.lucky .screen-container &gt; h4 ~ p{
	padding-bottom: 10px;
	padding-left: 4px;
	font-size: 1.25rem;
}

.lucky .screen-container table.winner {
	width: 100%;
	max-width: 920px;
	border-collapse: collapse;
}

.lucky .screen-container table.winner tr td {
	padding: 5px;
    border-right: 1px solid #444;
    border-bottom: 1px solid #444;
    background-color: #fff;
    color: #000000;
    text-align: center;
    font-weight: 500;
    letter-spacing: 2px;
}

.lucky .screen-container table.winner tr td:first-child{
	width: 33%;
}

.lucky .screen-container table.winner tr td.item {
	background-color: #ffcc00;
    color: #000000;
}

ul.luckydraw-step {
    margin: 1rem 0;
    margin-left: 0.5rem;
	padding-left: 40px;
    border-left: 5px solid #ffcc00;
}

ul.luckydraw-step li {
	list-style: decimal;
	line-height: 1.8rem;
    letter-spacing: 1px;
}

ul.luckydraw-step li em{
	color: #ffcc00;
	font-weight: 500;
}

.luckydraw-step button.cube-btn {
	margin: 10px 10px;
    padding: 0px 0px;
    height: 40px;
    width: 200px;
    line-height: 40px;
    border: 0;
    background-color: #ffcc00;
    color: #000000;
    font-weight: 500;
    font-size: 1rem;
}

.luckydraw-step button.cube-btn:hover{
	cursor: pointer;
	background: #FFDA46;
	border: 0;
}

@media all and (max-width: 991px) {
	.hashtag-wrap {
		flex-direction: column
	}
	.hashtag-wrap button {
		width: 80%;
		margin-top: 10px;
	}
}

.lucky-card-wrap {
	display: flex;
	flex-wrap: wrap;
}

.lucky-card {
	width: calc(100%/3 - 20px);
	margin: 10px;
	padding: 20px;
	box-sizing: border-box;
	text-align: center;
	background-image: linear-gradient(0deg, #474747 0%, #000000 100%);
	border: 1px solid #555555;
	border-radius: 10px;
}

@media all and (max-width: 991px) {
	.lucky-card {
		width: 100%;
		max-width: 320px;
		margin: 10px auto;
	}
}

.lucky-card .cover img{
	width: 100%;
	border-radius: 20px;
}

.lucky-card h5{
	margin: 10px 0;
	font-size: 1.25rem;
	text-align: center;
}

.lucky-card p {
	text-align: center;
	color: #cccccc;
	font-size: 0.875rem;
}

.lucky-card a {
	padding: 10px;
	color: #ffffff;
	transition: all 0.4s ease;
	/* border-bottom: 1px solid #ffcc00; */
	letter-spacing: 2px;
	display: inline-block;
}

.lucky-card a:hover {
	color: #ffcc00;
	transition: all 0.4s ease;
}

.lucky-notice {
	padding: 15px;
}

.lucky-notice &gt; p {
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 1.25rem;
}

.lucky-notice ul{
	margin-left: 1.5rem;
}

.lucky-notice ul li {
	list-style: decimal;
	margin-bottom: 0.5rem;
}

.ig-wall-content {
	margin-top: 20px;
	background-image: linear-gradient(0deg, #474747 0%, #000000 100%);
    border: 1px solid #555555;
	border-radius: 10px;
}

.ig-wall-content p {
	margin: 15px 0;
	font-weight: 500;
	font-size: 1.5rem;
	text-align: center;
}

.ig-wall-content .ig-photo {
	padding-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.ig-wall-content .ig-photo img{
	width: calc(25% - 25px);
    margin: 10px;
}

.lucky-draw-notice {
   margin-top: 30px;
}

.lucky-draw-notice h5{
	font-weight: bold;
}

.lucky-draw-notice ul {
	padding-left: 1.5rem;
}

.lucky-draw-notice ul li {
	list-style-type: decimal;
	line-height: 1.8rem;
    letter-spacing: 1px;
}


/* ============================================================
Route Map
============================================================ */
.route-wrap .tabs ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.route-wrap .tabs ul li {
	margin-right: 15px;
	margin-bottom: 15px;
}

.route-wrap .tabs a {
	padding: 5px 20px;
    color: #ffffff;
    font-weight: 500;
    font-size: 1.1rem;
    display: block;
    border: 1px solid #cccccc;
    border-radius: 5px;
}
@media all and (max-width: 991px) {
	.route-wrap .tabs a {
		padding: 5px 5px;
		font-size: 1rem;
	}
}

.route-wrap .tabs ul li.active a {
	background-color:#ffcc00;
	border: 1px solid #ffcc00;
	color: #000000;
}


.route-wrap .tabs &gt;  div {
	min-height: 560px;
	margin-top: 20px;
}

.route-mention {
	margin-bottom: 1rem;
    text-align: justify;
}

.route-mention span em {
	font-size: 0.875em;
	color: #666;
	padding-left: 1em;
}

.route-wall-list {
	display: flex;
	flex-wrap: wrap;
}

.route-wall-list .route-box {
	width: calc(25% - 20px);
	margin: 10px;
	padding-bottom: 60px;
	background: #111111;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	transition: all 0.3s ease;
	position: relative;
}

@media all and (max-width: 1200px) {
	.route-wall-list .route-box {
		width: calc(33% - 20px);
	}
}

@media all and (max-width: 991px) {
	.route-wall-list .route-box {
		width: calc(50% - 20px);
	}
}

@media all and (max-width: 750px) {
	.route-wall-list .route-box {
		width: 100%;
	}
}

.route-wall-list .route-box:hover{
	transform: scale(1.05);
	transform-origin: center;
	box-shadow: 0 10px 14px 0 rgba(165,165,165,0.40);
	transition: all 0.3s ease;
}

.route-wall-list .route-box::after{
	content: 'MORE';
	border-bottom: 1px solid #ffffff;
	text-align: right;
	letter-spacing: 2px;
	position: absolute;
	bottom: 10px;
	right: 10px;
}

.route-wall-list .route-box a {
	padding: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
    top: 0;
    border: 0;
}

.route-wall-list .route-box img {
	width: 100%;
	background: #ffffff;
}

.route-wall-list .route-box h4 {
	padding: 10px;
	font-size: 1.25rem;
	font-weight: 500;
}

.route-wall-list .route-box p {
	margin:0 10px;
	padding-left: 30px;
	background-size: contain;
	color: #cccccc;
	font-size: 0.875rem;
	letter-spacing: 1px;
}

.route-wall-list .route-box p.cate {
	margin-top: 15px;
	background-image: url(../img/icon/icon-tag.svg);
	background-position: left center;
	background-repeat: no-repeat;
}

.route-wall-list .route-box p.distance {
	background-image: url(../img/icon/icon-distance.svg);
	background-position: left center;
	background-repeat: no-repeat;
}

.route-wall-list .route-box p.climb{
	background-image: url(../img/icon/icon-climb.svg);
	background-position: left center;
	background-repeat: no-repeat;
	
}

.route-wall-list .route-box p a {
	text-align: center;
}

.route-wall-list .route-box p a:hover {
	font-weight: 500;
	color: #333333;
}

.route-expert-wrap {
	margin: 20px auto;
	padding: 20px 40px;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	background-image: url(../img/cool_pattern.png) ,linear-gradient(35deg, rgba(0,0,0,0.00) 0%, #000000 42%);
	background-repeat: no-repeat;
	background-position: left top, left top;
	border: 1px solid rgba(255,255,255,0.16);
	box-shadow: 0 10px 20px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
	border-radius: 10px;
}



.route-expert-wrap .expert-avatar{
	width: 200px;
	height: 200px;
	margin-right: 40px;
	border-radius: 50%;
	overflow: hidden;
}

@media all and (max-width: 991px) {
	.route-expert-wrap {
		flex-direction: column;
		align-content: center;
	}
	.route-expert-wrap .expert-avatar{
		width: 180px;
		height: 180px;
		margin: 0 auto;
	}
}

.route-expert-wrap .expert-avatar img {
	width: 100%;
	max-width: 320px;
}

.route-expert-wrap .expert-text{
	width: calc(80% - 240px);
}

@media all and (max-width: 991px) {
	.route-expert-wrap .expert-text{
		width: 100%;
		margin: 20px auto;
	}
}

.route-expert-wrap .expert-text h3{
	font-size: 1rem;
	line-height: 1rem;
	color: #cccccc;
	letter-spacing: 2px;
}

.route-expert-wrap .expert-text h4{
	margin: 5px 0 20px;
	font-size: 1.5rem;
	color: #ffcc00;
	letter-spacing: 1px;
	font-weight: 500;
}

.caption-warp {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	border-bottom: 1px solid #626262;
}

@media all and (max-width: 991px) {
	.caption-warp {
		flex-direction: column-reverse;
		align-items: flex-end;
		justify-content: flex-end;
	}
}

.caption-warp .left {
	width: calc(100% - 250px);
}

@media all and (max-width: 991px) {
	.caption-warp .left {
		width: 100%;
	}

	.caption-warp .download{
		width: 120px;
		margin: 20px 0 -20px 0;
		padding: 5px;
		font-size: 0.875rem;
	}
}

.caption-warp .download img{
	width: 24px;
	margin-bottom: -6px;
    padding-right: 6px;
}

@media all and (max-width: 991px) {
	.caption-warp .download img{
		width: 20px;
		margin-bottom: -3px;
		padding-right: 0;
	}
}

.caption-warp .download:hover img{
	filter: invert(14%) sepia(11%) saturate(0%) hue-rotate(178deg) brightness(55%) contrast(83%);
	transition: all 0.3s ease;
}

.caption-warp h3 {
	font-size: 1.1rem;
	line-height: 1.1rem;
	color: #A58DFF;
	letter-spacing: 3px;
}

.caption-warp h2 {
	font-size: 2rem;
	font-weight: bold;
	color: #ffffff;
	text-align: left;
}

.route-intro-text {
	margin: 20px 0;
}

.route-intro-text ul {
	margin-left: 1.5rem;
}

.route-intro-text ul li {
	margin: 0.5rem;
	list-style: disc;
}

.route-intro-text ul li a {
	color: #ffffff;
	border-bottom: 1px solid #ffcc00;
	transition: all 0.3s ease;
}

.route-intro-text ul li a:hover {
	color: #000000;
	background-color: #ffcc00;
	transition: all 0.3s ease;
}

.route-embed-map{
	width: 100%;
	padding-left: 10px;
	background-color: #ffffff;
	box-sizing: border-box;
	height: 600px;
	overflow-x: scroll;
	overflow-y: hidden;
}

.route-embed-map iframe {
	width:100%;
	height:100%;
}






/* ============================================================
WINNERS
============================================================ */
.winner-outside {
	background-image: linear-gradient(90deg, #FFCC00 50%, #FFFFFF 50%);
	padding: 40px 0;
}

.winner-1 {
	width: 90%;
	max-width: 1100px;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.winner-1 .winner-intro {
	width: 35%;
	margin-left: 3%;
}

.winner-photo {
	position: relative;
	background: #333333;
}

.winner-1 .winner-photo {
	width: 60%;
	background: none;
}

.winner-photo img {
	width: 100%;
	display: block;
	transition: all 0.4s ease;
	min-height: 150px;
}

.winner-photo.absent{
	padding: 26px 0;
}

.winner-photo.portrait img {
	width: 50%;
	margin: auto;
}

.winner-1 .winner-photo.portrait img {
	width: 60%;
	margin-right: 50px;
}

.winner-1:hover .winner-photo img {
	box-shadow: 0 10px 35px 0 rgba(0,0,0,0.32);
}

.winner-2,
.winner-3 {
	width: calc(50% - 20px);
    margin: 60px 10px 30px;
	padding: 20px;
	box-sizing: border-box;
	background: #ffffff;
	box-shadow: 0 5px 35px 0 rgba(0,0,0,0.12);
	transition: all 0.4s;
	position: relative;
}

.winner-nice {
	width: calc(33% - 18px);
    margin: 20px 10px;
	padding: 20px;
	box-sizing: border-box;
	background: #ffffff;
	box-shadow: 0 5px 35px 0 rgba(0,0,0,0.12);
	transition: all 0.4s;
	position: relative;
}

.winner-2:hover,
.winner-3:hover,
.winner-nice:hover {
	box-shadow: 0 5px 35px 0 rgba(0,0,0,0.32);
	cursor: pointer;
}

.winner-nice.absent:hover{
	box-shadow: 0 5px 35px 0 rgba(0,0,0,0.12);
	cursor: none;
}

.winner-intro .title {
	margin-top: 15px;
	font-size: 1.5em;
	font-weight: 700;
	color: #000000;
	text-align: left;
}

.winner-intro .author {
    margin: 20px 0;
    padding-left: 10px;
    display: inline-block;
	border-left: 5px solid #ffcc00;
	width: calc(100% - 92px);
}

.winner-intro .desc {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	white-space: normal;
}

.winner-intro .zoom {
    color: #666666;
    font-size: 0.875em;
    text-align: right;
    background: url(../img/zoom-len.svg) no-repeat;
    background-position: left;
    background-size: contain;
    width: 70px;
    transition: all 0.4s;
    display: inline-block;
}

.winner-1:hover .winner-intro .zoom ,
.winner-2:hover .winner-intro .zoom ,
.winner-3:hover .winner-intro .zoom, 
.winner-nice:hover .winner-intro .zoom {
	color: #ffcc00;
	background: url(../img/zoom-len-yellow.svg) no-repeat;
	background-position: left;
    background-size: contain;
}

.winner-1 .winner-intro .zoom {
	margin: 15px 0;
	display: block;
}

.winner-intro .zoom img {
	width: 20px;
    margin-bottom: -5px;
    margin-right: 5px;
}

.winner-flag {
	width: 90px;
	height: 100px;
	padding-top: 26px;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: -35px;
	text-align: center;
    font-weight: bold;
	font-size: 1.25em;
}

.winner-flag.no1 {
	background: url(../img/flag-winner-1.svg) no-repeat;
	color: #4D3D00;
	right: 10px;
}

.winner-flag.no2 {
	background: url(../img/flag-winner-2.svg) no-repeat;
	color: #525252;
	right: 0;
}

.winner-flag.no3 {
	background: url(../img/flag-winner-3.svg) no-repeat;
	color: #733715;
	right: 0;
}

.winner-flag.nice {
	background: #ffcc00;
	width: 80px;
    height: 80px;
    padding-top: 25px;
	border-radius: 100%;
	color: #635109;
	right: -10px;
}
a.modal-fade.winner-detail {
	display: block;
	width: 100%;
	height: 100%;
    position: absolute;
	top: 0;
	left: 0;
    z-index: 1;
}

@media all and (max-width: 768px) {
	.winner-1 {
		display: block;
		padding: 20px;
		box-sizing: border-box;
		background: #ffffff;
		box-shadow: 0 5px 35px 0 rgba(0,0,0,0.12);
		transition: all 0.4s;
	}

	.winner-1 .winner-photo {
		width: 100%;
	}
	
	.winner-1 .winner-intro {
		width: 100%;
		margin-left: 0;
	}

	.winner-1 .winner-intro .zoom {
		margin: 15px 0 15px auto;
	}

	.tab-limited {
		display: block;
	}

	.winner-2,
	.winner-3,
	.winner-nice { 
		width: 100%;
		margin: 60px auto 30px;
		padding: 20px;
		box-sizing: border-box;
		background: #ffffff;
		box-shadow: 0 5px 35px 0 rgba(0,0,0,0.12);
	}
}

.lang-en.runner-up {
    /* display: inline-block !important; */
    margin-top: -10px;
	padding: 0 15px;
    font-size: 16px;
    line-height: 1em;
}
.lang-en.runner-up p {
	margin-top: -35px;
    padding: 0 15px;
	text-align: center;
}
/* ============================================================
MOBILE
============================================================ */
.mobile-banner{
	width: 100%;
	position: relative;
	margin: 20px auto;
}

.mobile-banner-main{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

.mobile-banner-cricle{
	width: 100%;
	padding-bottom: 100%;
	border-radius: 50%;
	background: #ffcc00;
	position: absolute;
	left: -30%;
	top: 50%;
	transform: translate(0, -50%);
}

.mobile-title{
	width: 46%;
	max-width: 500px;
	position: relative;
	margin: 2%;
}

.mobile-product{
	width: 46%;
	max-width: 500px;
	position: relative;
	margin: 2%;
}

.mobile-product img{
	width: 100%;
	padding-top: 35px;
}

.mobile-title h2{
	font-size: 2em;
	color: #000000;
	text-align: left;
	font-weight: 600;
	line-height: 1.8em;
}

.mobile-title h5{
	font-size: 1.25em;
	color: #000000;
	text-align: left;
	font-weight: 400;
	line-height: 1.4em;
}

@media all and (max-width: 768px) {
	.mobile-banner-main{
		display: block;
	}

	.mobile-product{
		width: 80%;
		margin: 0 auto;
	}

	.mobile-title{
		width: 90%;
		margin: 0 auto;
		padding: 50px 0 30px 0;
	}

	.mobile-banner-cricle{
		left: 50%;
		top: -30%;
		transform: translate(-50%, 0);
	}

	.mobile-title h2, .mobile-title h5{
		text-align: center;
	}
}

@media all and (max-width: 480px){
	.mobile-title h2{
		font-size: 1.5em;
	}

	.mobile-title h5{
		font-size: 1em;
	}
}


.mobile-intro-container{
	width: 100%;
	position: relative;
	margin: 50px auto;
}

.mobile-info{
	width: 100%;
	position: relative;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.mobile-info.reverse{
	flex-direction: row-reverse;
}

.mobile-text{
	width: 50%;
	position: relative;
}

.mobile-text-100, .mobile-text-100center {
	width: 100%;
	margin: 30px 0;
}

.mobile-pic{
	width: 50%;
	position: relative;
}

.mobile-pic-100{
	width: 100%;
	margin-bottom: 30px;
}

.mobile-text.mobile-screen{
	width: 40%;
}

.mobile-pic.mobile-screen{
	width: 30%;
	margin: 2%;
}

.mobile-text-container{
	width: 80%;
	position: relative;
	margin: 0 auto;
	padding: 50px 0;
}

.mobile-text h3{
	color: #333333;
	font-size: 1.5em;
	font-weight: 600;
	text-align: left;
	line-height: 1.5em;
}

.mobile-text p{
	color: #222222;
	font-size: 1em;
	font-weight: 400;
	text-align: justify;
}

.mobile-pic img{
	width: 100%;
}

.mobile-num{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.mobile-num-item{
	width: 50%;
	position: relative;
	margin: 15px 0;
}

.mobile-text-100center h3, .mobile-text-100center p{
	text-align: center;
}

@media all and (max-width: 1100px){
	.mobile-num{
		flex-wrap: wrap;
	}

	.mobile-num-item{
		width: 50%;
	}
} 

@media all and (max-width: 480px){
	.mobile-num-item{
		width: 100%;
	}
}

.mobile-num-item h5{
	font-size: 1.3em;
	color: #f3c200;
	font-weight: 600;
	text-align: left;
}

.mobile-num-item p{
	font-size: 1em;
	color: #333333;
	font-weight: 400;
	text-align: left;
}

h4.mobile-gift{
	font-size: 1.5em;
	line-height: 1.5em;
	font-weight: 600;
	color: #222222;
	text-align: center;
}

p.mobile-price{
	color: #333333;
	font-size: 1.1em;
	font-weight: 500;
	text-align: center;
}

p.mobile-price em{
	font-size: 1.25em;
	color: #ff0000;
	font-weight: 600;
}

p.mobile-memo{
	font-size: .95em;
	color: #333333;
	text-align: center;
}

p.mobile-feature{
	font-size: 1em;
	color: #333333;
	text-align: center;
	margin-top: 20px;
}

.mobile-list{
	width: 90%;
	max-width: 440px;
	position: relative;
	margin: 10px auto;
}

ul.mobile-list, ul.mobile-list li{
	list-style: disc;
}

.mobile-gift-pic{
	width: 80%;
	max-width: 500px;
	position: relative;
	margin: 20px auto;
}

.mobile-gift-pic img{
	width: 100%;
}

@media all and (max-width: 768px) {
	.mobile-info{
		display: block;
	}

	.mobile-text, .mobile-pic{
		width: 100%;
	}

	.mobile-text.mobile-screen{
		width: 100%;
	}

	.mobile-pic.mobile-screen{
		width: 100%;
		max-width: 350px;
		position: relative;
		margin: 0 auto;
	}

	.mobile-text-container{
		width: 90%;
	}
}


/* ============================================================
ADVERTISEMENT
============================================================ */
.ad-tip{
	color: #999999;
	font-size: 0.8em;
	text-align: center;
	text-transform: uppercase;
}

/* 300 */
.ad-300250, .ad-300600{
	width: 300px;
	position: relative;
	margin: 20px auto;
}

/* 970 */
.ad-970250{
	width: 970px;
	position: relative;
	margin: 50px auto;
}

.ad-300250 .ad-content{
	width: 300px;
	height: 250px;
	position: relative;
	overflow: hidden;
}

.ad-300600 .ad-content{
	width: 300px;
	height: 600px;
	position: relative;
	overflow: hidden;
}

.ad-970250 .ad-content{
	width: 970px;
	height: 250px;
	position: relative;
	overflow: hidden;
}

.ad-content picture{
	width: 100%;
}

@media all and (max-width: 1100px){
	.ad-970250{
		width: 300px;
		margin: 20px auto;
	}

	.ad-300600 .ad-content{
		width: 300px;
		height: 250px;
	}
}

/* ============================================================
aw-winner
============================================================ */
.aw-winner-content{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.aw-win&gt;a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 3;
}

.aw-win-1{
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.aw-win-pic{
	position: relative;
} 

.aw-win-pic img{
	width: 100%;
	position: relative;
	z-index: 2;
}

.aw-win-album{
	background: #333333;
}

.aw-award-item{
	width: 100%;
	max-width: 200px;
	height: 40px;
	position: relative;
	padding: 0 7px;
	box-sizing: border-box;
	background-image: linear-gradient(to right, rgba(255, 204, 0, 1.0), rgba(255, 204, 0, 0));
	margin-bottom: 10px;
}

.aw-award-item h3{
	font-size: 1.2em;
	color: #000000;
	line-height: 40px;
}

.aw-win-text{
	position: relative;
}

.aw-win-text h2{
	color: #000000;
	font-size: 2em;
	font-weight: 700;
}

.aw-win-text h4{
	color: #222222;
	font-size: 1.3em;
	font-weight: 500;
	margin: 5px 0;
}

.aw-win-text p{
	color: #333333;
	font-size: 1em;
	font-weight: 400;
}

.aw-win-text a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.aw-pic-logo {
	width: 100px;
	position: absolute;
	bottom: 10px;
	right: 15px;
}

.aw-pic-logo img{
	width: 100%;
}

.aw-win-pic-1{
	width: 65%;
	position: relative;
}

.aw-win-pic-1:before{
	content: '';
	display: table;
	width: 100%;
	padding-bottom: 66.6667%;
	background: #ffcc00;
	position: absolute;
	bottom: -5%;
	right: -2.5%;
	z-index: 1;
}

.aw-win-text-1{
	width: 30%;
}

.aw-win-2{
	width: 55%;
	position: relative;
	margin: 100px 0;
}

.aw-win-pic-2{
	width: 100%;
	position: relative;
	/* margin-left: 15%; */
	z-index: 1;
}

.aw-win-text-2{
	width: 100%;
	/* position: absolute;
	bottom: -30px;
	left: 0; */
	background: rgba(245,245,245,.8);
	z-index: 2;
	padding: 0 20px 0 0;
	font-size: 13px;
}

.aw-win-3{
	width: 40%;
	position: relative;
}

.aw-win-pic-3{
	width: 100%;
	position: relative;
	z-index: 1;
}

.aw-win-text-3{
	width: 100%;
	/* position: absolute;
	bottom: -30px;
	right: 0; */
	position: relative;
	/* background: rgba(245,245,245,.8); */
	z-index: 2;
	padding: 0 20px 0 0;
	font-size: 13px;
}

.aw-win-4, .aw-win-5, .aw-win-6{
	width: 32%;
	position: relative;
}

.aw-win-text-4, .aw-win-text-5, .aw-win-text-6{
	position: relative;
	font-size: 13px;
}

.aw-win-2.aw-win-0{
	margin: 0 auto;
}

.aw-win-3.aw-win-00{
	width: 55%;
    margin-left: 22.5%;
    position: relative;
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px solid #999999;
}

@media all and (max-width: 768px){
	.aw-winner-content{
		display: block;
	}

	.aw-win-pic-1{
		width: 100%;
		position: relative;
	}

	.aw-win-text-1{
		width: 100%;
		margin-top: 50px;
	}

	.aw-win-2, .aw-win-3,
	.aw-win-4, .aw-win-5, .aw-win-6{
		width: 100%;
	}

	.aw-win-2{
		margin: 50px 0;
	}

	.aw-win-3, .aw-win-4, .aw-win-5, .aw-win-6{
		margin-bottom: 50px;
	}

	.aw-win-3.aw-win-00{
		width: 100%;
		margin-left: 0;
	}
}

/* ============================================================
SLIDER
============================================================ */
.slider{
	width: 100%;
	/* height: 500px; */
	position: relative;
	margin: 0 auto;
	overflow-x: hidden;
	/* margin-top: -30px; */
	padding-bottom: 66.67%;
}

.slider-btn-all{
	position: absolute;
    top: 0;
    left: 0;
}

.slider-btn{
	/* width: 100%; */
	float: left;
	/* margin-left: 100px; */
	position: relative;
}

.slider-btn img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	vertical-align: bottom;
}



/*control*/
.slider-control-aw{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}

.slider-prev, .slider-next{
	width: 50px;
	height: 50px;
	font-size: 2em;
	color: #ffffff;
	text-align: center;
	line-height: 50px;
	background: rgba(0, 0, 0, .8);
	float: right;
	margin-left: 5px;
	cursor: pointer;
}

.slider-control:after{
	content: '';
	display: table;
	clear: both;
}

.slider-prev a, .slider-next a{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* ============================================================
award tag
============================================================ */
.pic-award-tag{
	width: 100%;
    max-width: 300px;
    text-align: center;
    padding: 5px 5px;
    box-sizing: border-box;
    background: #9a0a0a;
    border-radius: 5px;
    margin: 10px 0;
}

.pic-award-tag h5{
	color: #ffffff;
	font-size: 1.15em;
	font-weight: 500;
}

.pic-award-tag h5 em{
	font-size: .8em;
	font-weight: 400;
}

.pic-award-icon{
	width: 5%;
	min-width: 60px;
	position: absolute;
	top: 0;
	left: 15px;
	background: rgba(255, 204, 0, .8);
	color: #ffffff;
	text-align: center;
	padding: 10px 0;
	font-size: 2em;
}

.pic-award-tag.pic-up{
	font-size: 13px;
    position: absolute;
    background: rgba(154, 10, 10, .8);
    max-width: 250px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

@media all and (max-width: 768px){
	.pic-award-tag.pic-up{
		display: none;
	}
}


/* ============================================================
SECTION.TOUR
============================================================ */
.screen-container.tour {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

p.tour-subtitle {
	text-align: center;
}

h3.title-tour {
	margin: 0 0 2rem;
	padding-bottom: 1rem;
	font-size: 2rem;
    font-weight: 600;
    text-align: center;
    color: #ffffff;
    position: relative;
	line-height: 3rem;
}

h3.title-tour::after {
    content: "";
    width: 60px;
    height: 5px;
    position: absolute;
    left: calc(50% - 30px);
    bottom: 0;
    background-color: #ffcc00;
}

.tour-apply-box {
	width: 30%;
	padding: 30px;
	box-sizing: border-box;
	background-image: linear-gradient(25deg, rgba(0,0,0,0.00) 1%, #000000 81%);
	border: 2px solid rgba(255,255,255,0.16);
	box-shadow: 0 2px 84px 0 rgba(0,0,0,0.50);
	border-radius: 10px;
}
@media all and (max-width: 991px){
	.tour-apply-box {
		width: 100%;
		margin: 30px auto;
	}
}

.tour-apply-box h3 {
    margin: 10px 0 0;
	font-size: 1.5rem;
	line-height: 2rem;
}

.tour-apply-box .reminder{
	color: #ffcc00;
}

.tour-apply-box img{
	width: 100%;
}

.tour-headline {
	width: 70%;
}
@media all and (max-width: 991px){
	.tour-headline {
		width: 100%;
	}
}

.tour-headline h3 {
	margin: 2rem 0 0.5rem;
    padding-left: 15px;
    font-size: 1.25rem;
    line-height: 1.25rem;
    font-weight: normal;
    color: #7DFFA8;
    position: relative;
}

.tour-headline h3:first-of-type {
	margin: 0 0 0.5rem;
}

.tour-headline h3:before {
    content: '';
    width: 6px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
	background-image: linear-gradient(180deg, #B9FFD1 4%, #4BF685 97%);
	box-shadow: 0 2px 84px 0 rgba(0,0,0,0.50), inset 0 1px 33px 0 rgba(255,255,255,0.48);
}

.tour-headline ul li {
    margin-left: 1.5rem;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
    font-weight: 400;
    font-size: 1em;
    color: #ffffff;
    list-style: disc;
    line-height: 1.8rem;
}

.tour-headline ul.list-number li {
    list-style: decimal;
}

.tour-area {
	display: flex;
	background-color: #666666;
	align-items: center;
}

.tour-area .left {
	width: 35%;
	text-align: right;
}

.tour-area .left img {
	width: 100%;
	max-width: 180px;
}

.tour-area .right {
	width: 65%;
	padding: 30px;
}

table.tour-set {
	width: 100%;
}

table.tour-set tr td{
	padding: 10px 20px;
    background-color: #666666;
    border-bottom: 1px solid #333333;
    border-right: 1px solid #333333;
    font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	text-align: center;
}

table.tour-set tr td:first-child {
	font-weight: 500;
	letter-spacing: 2px;
}

/* ============================================================
index POPUP
============================================================ */
.popup-index{
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .7);
	z-index: 100;
}

.popup-index-container{
	width: 90%;
	max-width: 720px;
	border-radius: 10px;
	background: #ffffff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	overflow-y: scroll;
    /* height: 90vh; */
}

.popup-index-content{
	width: 90%;
	position: relative;
	margin: 0 auto;
	padding: 30px 0; 
}

.popup-index-content h2{
	font-size: 3rem;
	line-height: 3rem;
	text-align: center;
	color: #ffcc00;
	margin-bottom: 10px;
}

.popup-index-content h4{
	font-size: 1rem;
	margin-bottom: 0.5rem;
	color: #333333;
	text-align: justify;
	
}

.popup-index-container p {
	color: #333333;
	text-align: left;
}

.popup-index-container p a,
.popup-index-container ul li a{
	padding-bottom: 1px;
	color: #333333;
	font-weight: bold;
	border-bottom: 2px solid #ffcc00;
}

.popup-index-container ul {
	text-align: left;
}

.popup-index-container ul li {
	margin: 0.5rem 0;
	color: #333333;
	text-align: left;
}

.popup-index-container ul li em{
	color: #896221;
    font-weight: bold;
}

.popup-index-container .lucky-gift {
	display: flex;
	flex-wrap: wrap;
}

.popup-index-container .lucky-gift img{
	width: calc(100%/3);
}
@media all and (max-width: 991px){
	.popup-index-container .lucky-gift img {
		width: 50%;
	}
}

.break-lines{
	display: block;
}

@media all and (max-width: 991px){
	.break-lines{
		display: inline-block;
	}
}


.popup-index-content .shortlist-gift {
	width: 100%;
}

.popup-index-content ul.list-num li{
	list-style-type: decimal;

}

.popup-index-content ul.list-dot {
	margin-left: 1.5rem;
}

.popup-index-content ul.list-dot li{
	margin-bottom: 1rem;
	list-style-type: disc;
}

.popup-index-content ul.list-dot li p {
	font-weight: bold;
}
.popup-index-btn{
	max-width: 200px;
	height: 45px;
	background: #ffcc00;
	position: relative;
	margin: 10px auto;
	text-align: center;
	line-height: 45px;
	color: #000000;
	font-family: "Geograph", "Roboto", "Noto Sans TC", sans-serif;
	border-radius: 5px;
	cursor: pointer;
}

.scrollfixed{
	overflow: hidden;
}



/* ============================================================
! IMPORTANT
============================================================ */
.sub-nav-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 19;
    box-shadow: 0 2px 10px rgba(0,0,0,.3)
}



</pre></body></html>