
@charset "UTF-8";
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, figure, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}

fieldset, img {
	border: 0;
	margin: 0;
}

/* remember to define focus styles!*/
:focus {
	outline: 0;
}

address, caption, cite, code, dfn, em, th, var, optgroup {
	font-style: normal;
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}

abbr, acronym {
	border: 0;
	font-variant: normal;
}

input, button, textarea, select, optgroup, option {
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
}

code, kbd, samp, tt {
	font-size: 100%;
}

ul, menu, dir, figure {
	display: block;
	margin: 0;
	padding: 0;
	list-style-type: disc;
	-webkit-margin-before: 0;
	-webkit-margin-after: 0;
	-webkit-margin-start: 0;
	-webkit-margin-end: 0;
	-webkit-padding-start: 0;
}

/*@purpose To enable resizing for IE */
/*@branch For IE6-Win, IE7-Win*/

body {
	line-height: 1.5;
}

ol, ul {
	list-style: none;
}

/* tables still need 'cellspacing="0"' in the markup*/
table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th {
	text-align: left;
}

sup, sub {
	font-size: 100%;
	vertical-align: baseline;
}

/* remember to highlight anchors and inserts somehow!*/
:link, :visited, ins {
	text-decoration: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after {
	content: '';
	content: none;
}

q:before, q:after {
	content: '';
	content: none;
}


/*===================layout===================*/
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

html {
	font-size: 18px;
	font-family: "微軟正黑體", "Noto Sans TC";
	line-height: 27px;
	letter-spacing: 0.1em;
}

body {
	position: relative;
	background-color: #fff;
	word-break: break-word;
	-webkit-text-size-adjust: none;
}

.body-hidden {
	height: 100%;
	overflow: hidden;
}

a {
	color: #AE0E16;
	text-decoration: none;
	-webkit-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

a:hover {
	color: #AE0E16;
	text-decoration: none;
	-webkit-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

.a1 {
	font-size: 20.34px;
	font-size: 1.13rem;
	line-height: 1.722rem;
}

.a2 {
	font-size: 22.68px;
	font-size: 1.26rem;
	line-height: 1.944rem;
}

.a3 {
	font-size: 25.02px;
	font-size: 1.39rem;
	line-height: 2.111rem;
}

.a4 {
	font-size: 27.36px;
	font-size: 1.52rem;
	line-height: 2.333rem;
}

.a5 {
	font-size: 29.7px;
	font-size: 1.65rem;
	line-height: 2.5rem;
}

.a6 {
	font-size: 32.04px;
	font-size: 1.78rem;
	line-height: 2.722rem;
}

.a7 {
	font-size: 34.38px;
	font-size: 1.91rem;
	line-height: 2.889rem;
}

.a8 {
	font-size: 36.72px;
	font-size: 2.04rem;
	line-height: 3.111rem;
}

.a9 {
	font-size: 39.06px;
	font-size: 2.17rem;
	line-height: 3.278rem;
}

@media only screen and (max-width: 1280px) {
	.a1 {
		font-size: 19.17px;
		font-size: 1.065rem;
		line-height: 1.611rem;
	}
	.a2 {
		font-size: 20.34px;
		font-size: 1.13rem;
		line-height: 1.722rem;
	}
	.a3 {
		font-size: 21.51px;
		font-size: 1.195rem;
		line-height: 1.833rem;
	}
	.a4 {
		font-size: 22.68px;
		font-size: 1.26rem;
		line-height: 1.944rem;
	}
	.a5 {
		font-size: 23.85px;
		font-size: 1.325rem;
		line-height: 2rem;
	}
	.a6 {
		font-size: 25.02px;
		font-size: 1.39rem;
		line-height: 2.111rem;
	}
	.a7 {
		font-size: 26.19px;
		font-size: 1.455rem;
		line-height: 2.222rem;
	}
	.a8 {
		font-size: 27.36px;
		font-size: 1.52rem;
		line-height: 2.333rem;
	}
	.a9 {
		font-size: 28.53px;
		font-size: 1.585rem;
		line-height: 2.389rem;
	}
}

@media only screen and (max-width: 768px) {
	.a1 {
		font-size: 18.8775px;
		font-size: 1.049rem;
		line-height: 1.611rem;
	}
	.a2 {
		font-size: 19.755px;
		font-size: 1.098rem;
		line-height: 1.667rem;
	}
	.a3 {
		font-size: 20.6325px;
		font-size: 1.146rem;
		line-height: 1.722rem;
	}
	.a4 {
		font-size: 21.51px;
		font-size: 1.195rem;
		line-height: 1.833rem;
	}
	.a5 {
		font-size: 22.3875px;
		font-size: 1.244rem;
		line-height: 1.889rem;
	}
	.a6 {
		font-size: 23.265px;
		font-size: 1.293rem;
		line-height: 1.944rem;
	}
	.a7 {
		font-size: 24.1425px;
		font-size: 1.341rem;
		line-height: 2.056rem;
	}
	.a8 {
		font-size: 25.02px;
		font-size: 1.39rem;
		line-height: 2.111rem;
	}
	.a9 {
		font-size: 25.8975px;
		font-size: 1.439rem;
		line-height: 2.167rem;
	}
}

@media only screen and (max-width: 480px) {
	.a1 {
		font-size: 18.702px;
		font-size: 1.039rem;
		line-height: 1.611rem;
	}
	.a2 {
		font-size: 19.404px;
		font-size: 1.078rem;
		line-height: 1.667rem;
	}
	.a3 {
		font-size: 20.106px;
		font-size: 1.117rem;
		line-height: 1.722rem;
	}
	.a4 {
		font-size: 20.808px;
		font-size: 1.156rem;
		line-height: 1.778rem;
	}
	.a5 {
		font-size: 21.51px;
		font-size: 1.195rem;
		line-height: 1.833rem;
	}
	.a6 {
		font-size: 22.212px;
		font-size: 1.234rem;
		line-height: 1.889rem;
	}
	.a7 {
		font-size: 22.914px;
		font-size: 1.273rem;
		line-height: 1.944rem;
	}
	.a8 {
		font-size: 23.616px;
		font-size: 1.312rem;
		line-height: 2rem;
	}
	.a9 {
		font-size: 24.318px;
		font-size: 1.351rem;
		line-height: 2.056rem;
	}
}

input {
	line-height: 27px;
	-webkit-box-shadow: none;
	        box-shadow: none;
	border-radius: 0;
}

input[type="file"], input[type="button"], input[type="submit"], input[type="reset"], input[type="text"], input[type="number"], input[type="email"] {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}

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

input::-moz-placeholder {
	color: #888;
}

input:-ms-input-placeholder {
	color: #888;
}

input::-ms-input-placeholder {
	color: #888;
}

input::placeholder {
	color: #888;
}

input:focus::-webkit-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

input:focus::-moz-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

input:focus:-ms-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

input:focus::-ms-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

input:focus::placeholder {
	color: rgba(136, 136, 136, 0.5);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	        appearance: none !important;
}

select, textarea {
	border-radius: 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	line-height: 27px;
}

textarea {
	width: 100%;
	max-width: 100%;
	padding: 5px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid #d1d1d1;
}

select::-ms-expand {
	display: none;
}



/*===================  header ===================*/

.outhead{
	width: 810px;
	height: 155px;
}
.outfoot{
	width: 810px;
}
.header-main {
	background: #F0E4F9;
}

.width-between {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.header-idx {
	background: #AE0E16;
	height: 100px;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.header-idx > .nav {
	width: 1440px;
	-ms-flex-pack: distribute !important;
	    justify-content: space-around !important;
}

.header-idx > .nav > .nav__item::after {
	background: #CF699C;
	bottom: 0;
}

.header-idx > .nav > .nav__item:hover > .nav__name {
	color: #E698BF;
}

.header-idx .enhead, .header-idx .enhead:hover {
	color: #F0E4F9;
}

@media only screen and (max-width: 1440px) {
	.header-idx {
		width: 100%;
	}
}

@media only screen and (max-width: 1200px) {
	.header-idx {
		display: none;
	}
}

.logo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}

.logo .green-logo {
	margin-left: 10px;
	padding: 20px 0;
}

@media only screen and (max-width: 1200px) {
	.logo .green-logo {
		margin-left: 5px;
		padding: 8px 0;
	}
}

@media only screen and (max-width: 390px) {
	.logo .green-logo {
		margin-left: 5px;
		padding: 12px 0;
	}
}

.nav__box {
	width: 100%;
}

/*===共用===*/
.font--24 {
	font-size: 24px;
}

.font--bold {
	font-weight: 700;
}

.font--green {
	color: #106B44 !important;
}

.font--white {
	color: #fff !important;
}

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.flex--end {
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

.flex--w50 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 50%;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}


@media only screen and (max-width: 1200px) {
	.idx__pageitem {
		padding: 0 20px;
	}
}

.event {
	position: relative;
	right: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
	width: auto;
	height: auto;
	z-index: 50;
}

.event ul {
	font-size: 0;
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.event ul li {
	display: inline-block;
	position: relative;
}
.event ul li img {
    width: 24px;
    margin-right: 5px;
}

.event ul li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	position: relative;
	text-align: center;
	color: #666;
	font-size: 20px;
	padding-right: 10px;
	-webkit-transition: 0.1s linear;
	-o-transition: 0.1s linear;
	transition: 0.1s linear;
}

.event ul li a::before {
	content: '';
	width: 1px;
	height: 20px;
	background: #D4D4D4;
	margin-right: 12px;
}

.event ul li a::after {
	content: attr(title);
	font-size: 20px;
	color: #666;
}

.event ul li a.eveitem {
	width: auto;
	height: 55px;
}

.event ul li a p {
	width: 100%;
}

.event ul li a i {
	color: #666;
	display: block;
	font-size: 20px;
	margin-right: 4px;
}

.event ul li a:hover {
	color: #AE0E16;
}

.event ul li a:hover i {
	color: #AE0E16;
}

.event ul li ul {
	display: none;
	position: absolute;
	right: 0;
	width: 120%;
	background: #fff;
	min-width: 85px;
	-webkit-box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
	        box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.event ul li ul li {
	display: block;
}

.event ul li ul li:nth-of-type(1) {
	display: block;
	border-bottom: 1px solid #E9E9E9;
}

.event ul li ul li > a {
	display: block !important;
	width: 100%;
	font-size: 20px;
	font-family: "微軟正黑體", "Noto Sans TC";
	color: #333;
	background: #fff;
	letter-spacing: 0;
	padding: 8px 0;
}

.event ul li ul li > a::after {
	display: none;
}

.event ul li ul li > a:hover {
	background: #333;
	color: #fff;
}

.event--show1024 {
	display: none !important;
}

.event .membernav::after {
	content: "";
	margin: auto;
	height: 0;
	width: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid #555;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}


.logo {
	width: auto;
	height: 100px;
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}

.nav__box {
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
}

.nav {
	-ms-flex-pack: distribute;
	    justify-content: space-around;
}

.nav__name {
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

.nav__layer {
	max-height: calc(100vh - 100px);
	top: 55px;
}

.header__search {
	-webkit-box-ordinal-group: 5;
	    -ms-flex-order: 4;
	        order: 4;
}

.header__search-form {
	top: 100px;
}

.header__social-box {
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
}

.hamburger {
	-webkit-box-ordinal-group: 6;
	    -ms-flex-order: 5;
	        order: 5;
}

.header--fixed .logo {
	height: 100px;
}

.header--fixed .header__search-form {
	top: 100px;
}

.logo {
	-ms-flex-line-pack: center;
	    align-content: center;
}

.logo h1 {
	width: 100%;
	display: block;
	color: #AE0E16;
	font-size: 0.125rem;
	position: fixed;
	top: -999999px;
}

.logo__img {
	height: 100%;
	padding: 17px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}

.logo__img img {
	height: 100%;
	max-width: 265px;
	display: block;
}

.header--fixed {
	position: fixed;
	top: 0;
	z-index: 10;
}

.nav__box {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.nav {
	width: 100%;
	height: 55px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: #AE0E16;
}

.nav__item {
	width: auto;
	height: 100%;
	position: relative;
	font-size: 20px;
	font-size: 1.111rem;
	line-height: 1.667rem;
	font-weight: 600;
	letter-spacing: 0.1rem;
	-webkit-transition: 0.1s linear;
	-o-transition: 0.1s linear;
	transition: 0.1s linear;
}

.nav__item--on::after {
	content: '';
	width: 100%;
}



.nav__item--on > .nav__layer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.nav__name {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.nav__btn {
	width: 54px;
	height: 100%;
	border-style: solid;
	border-color: #dee2e6;
	border-width: 0;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	cursor: pointer;
	display: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.nav__btn-icon {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}

.nav__btn-icon::after {
	content: '';
	width: 5px;
	height: 5px;
	margin: auto;
	border-style: solid;
	border-width: 2px 2px 0 0;
	border-color: #AE0E16;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.nav__layer {
	width: 250px;
	display: none;
	position: absolute;
	left: 0;
	z-index: 5;
	color: #333;
	background-color: #fff;
	border-style: solid;
	border-width: 1px 1px 0 1px;
	border-color: #dee2e6;
}

.nav__layer .nav__item {
	width: 100%;
	max-width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	border-bottom: 1px solid #dee2e6;
	color: #333;
}

.nav__layer .nav__item::after {
	display: none;
}

.nav__layer .nav__item .nav__layer {
	top: -1px;
	left: 100%;
}

.nav__layer .nav__item .nav__btn {
	border-bottom-width: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.nav__layer .nav__item .nav__name {
	padding: 10px 10px 10px 25px;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	position: relative;
	line-height: 24px;
	color: #444;
	font-weight: 600;
	background: url(../../images_2024/triangle-ap.png) no-repeat 15px 50%;
}

.nav__layer .nav__item .nav__name:hover {
	background-color: #E9E9E9;
	color: #AE0E16;
}

.nav__layer .nav__item--on > .nav__name {
	background-color: #E9E9E9;
	color: #AE0E16;
}

.nav__layer--full {
	width: 100%;
	padding: 10px 20px;
	overflow-y: auto;
	position: fixed;
	left: 0;
	border-width: 0;
}

.nav__layer--full .nav__item {
	width: 20%;
	border-width: 0;
}

.nav__layer--full .nav__item .nav__name {
	padding-right: 10px;
}

.nav__layer--full .nav__item .nav__btn {
	display: none;
}

.nav__layer--full .nav__item .nav__layer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: initial;
	left: 0;
}

.nav__layer--full .nav__layer {
	width: 100%;
	padding: 5px 0 5px 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: initial;
	top: 0;
	left: 0;
	border-width: 0;
}

.nav__layer--full .nav__layer .nav__item {
	width: 100%;
}

.nav__prev {
	width: 54px;
	height: 55px;
	border-right: 1px solid #dee2e6;
	cursor: pointer;
	display: none;
	position: relative;
}

.nav__prev-icon {
	width: 54px;
	height: 54px;
	position: relative;
}

.nav__prev-icon::after {
	content: '';
	width: 5px;
	height: 5px;
	margin: auto;
	border-style: solid;
	border-width: 2px 2px 0 0;
	border-color: #333;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-transform: rotate(-135deg);
	    -ms-transform: rotate(-135deg);
	        transform: rotate(-135deg);
}

.hamburger {
	width: 60px;
	height: 100%;
	margin: auto;
	position: relative;
	cursor: pointer;
	display: none;
	background: #AE0E16;
}

.hamburger span {
	width: 30px;
	height: 1px;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #fff;
	-webkit-transition: all .5s ease-out;
	-o-transition: all .5s ease-out;
	transition: all .5s ease-out;
}

.hamburger span:nth-child(2) {
	-webkit-transform: translateY(-5px);
	    -ms-transform: translateY(-5px);
	        transform: translateY(-5px);
}

.hamburger span:nth-child(3) {
	-webkit-transform: translateY(5px);
	    -ms-transform: translateY(5px);
	        transform: translateY(5px);
}

.header__search {
	width: 50px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
}

.header__search-icon {
	width: 50px;
	height: 100%;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	cursor: pointer;
	font-size: 24px;
}

.header__search-form {
	width: 100%;
	padding: 15px 10px;
	background-color: #fff;
	position: fixed;
	left: 100%;
	z-index: 2;
	-webkit-transition: left .3s ease-out;
	-o-transition: left .3s ease-out;
	transition: left .3s ease-out;
}

.header__search-form--on {
	left: 0;
}

.header__search-input {
	width: calc(100% - 50px);
	height: 40px;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid #d1d1d1;
	border-radius: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
	line-height: 40px;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}

.header__search-input::-webkit-input-placeholder {
	color: #888;
}

.header__search-input::-moz-placeholder {
	color: #888;
}

.header__search-input:-ms-input-placeholder {
	color: #888;
}

.header__search-input::-ms-input-placeholder {
	color: #888;
}

.header__search-input::placeholder {
	color: #888;
}

.header__search-input:focus::-webkit-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

.header__search-input:focus::-moz-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

.header__search-input:focus:-ms-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

.header__search-input:focus::-ms-input-placeholder {
	color: rgba(136, 136, 136, 0.5);
}

.header__search-input:focus::placeholder {
	color: rgba(136, 136, 136, 0.5);
}

.header__search-btn {
	width: 50px;
	height: 40px;
	cursor: pointer;
	border: none;
	background-color: #fff;
	font-size: 24px;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}

.header__social-box {
	width: 120px;
}

.header__social-btn {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: none;
	cursor: pointer;
}

.header__social-btn i {
	font-size: 18px;
}

.header__social {
	width: 100%;
	height: 100%;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.header__social-item {
	width: 40px;
	display: inline-block;
	text-align: center;
}

.header__social-link {
	width: 40px;
	height: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.header__social-icon {
	font-size: 24px;
}

.header__social-facebook:hover {
	color: #1877F2;
}

.header__social-instagram:hover {
	color: #de2d75;
}

.header__social-twitter:hover {
	color: #1DA1F2;
}

.header__social-youtube:hover {
	color: #EE3123;
}

.header__social-LINE:hover {
	color: #00B900;
}



.footer {
	background: #EEEFEF;
}

.footer__seo {
	padding: 20px;
	border: 1px solid #dee2e6;
	border-width: 1px 0;
	background: #f8f9fa;
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 1.333rem;
	color: #6c757d;
}

.footer__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 100%;
	padding: 30px 0;
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 1.444rem;
}

.footer__title {
	display: block !important;
	position: relative;
	width: 165px;
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 1.389rem;
	font-weight: 700;
	border: 1px solid #AE0E16;
	border-radius: 3px;
	color: #AE0E16;
	margin-bottom: 5px;
}

.footer__title::before {
	content: "\e930";
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-ms-flex-item-align: center;
	    align-self: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-family: 'icomoon';
	font-weight: normal;
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 1.444rem;
	color: #fff;
	background: #AE0E16;
	width: 30px;
	margin-right: 5px;
}

.footer__nav {
	width: 100%;
	background: #B4232A;
}

.footer__nav-list {
	max-width: 1280px;
	margin: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.footer__nav-list li {
	width: auto;
}

.footer__nav-list li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 0 10px;
	font-size: 17px;
	line-height: 2.2rem;
	font-weight: 600;
	color: #fff;
	letter-spacing: 0;
}

.footer__nav-list li a:hover {
	color: #fff;
	background: rgba(0, 0, 0, 0.4);
}

.footer__subnav-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	width: 100%;
	margin-top: 3px;
}

.footer__subnav-list li a {
	position: relative;
	padding: 5px 0;
	padding-left: 20px;
	font-size: 16px;
	font-size: 0.889rem;
	line-height: 1.444rem;
	color: #333;
}

@media only screen and (max-width: 640px) {
	.footer__subnav-list li a {
		padding: 1px 0;
		padding-left: 20px;
		font-size: 15px;
		font-size: 0.833rem;
		line-height: 1.333rem;
	}
}

.footer__subnav-list li a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 10px;
	height: 2px;
	margin-top: 1px;
	background-color: #555;
}

.footer__subnav-list li a:hover::before {
	background-color: #AE0E16;
}

.footer__subnav-list li a::after {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 10px;
	height: 2px;
	margin-top: 1px;
	background-color: #AE0E16;
	-webkit-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	-o-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
}

.footer__subnav-list li a:hover::after {
	opacity: 1;
	-webkit-transform: translateY(-50%) rotate(-270deg);
	    -ms-transform: translateY(-50%) rotate(-270deg);
	        transform: translateY(-50%) rotate(-270deg);
}

.footer__end {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 100%;
}

.footer__end::before {
	content: attr(title);
	font-size: 16px;
	color: #AE0E16;
	display: block;
	margin-bottom: 12px;
}

.footer__end li {
	width: 100%;
	letter-spacing: 0;
	position: relative;
	padding: 0 60px 15px 70px;
	color: #333;
	font-size: 16px;
	line-height: 1.667rem;
}

.footer__end li::before {
	content: attr(title);
	position: absolute;
	left: 0;
	padding: 0 8px;
	background: #C24141;
	color: #fff;
	font-size: 16px;
	border-radius: 4px;
}

.footer__end li p {
	display: inline-block;
	margin-right: 10px;
}

.footer__end li a {
	color: #333;
}

.footer__end li i {
	font-size: 16px;
	color: #AE0E16;
}

.footer__end li sup {
	font-size: 13px;
	vertical-align: super;
}

.footer__end li font {
	font-weight: 800;
}

.footer__logo {
	width: 100%;
	color: #333;
	/* border-right: 1px solid #C9CACA;
	padding-right: 30px;
	margin-right: 30px; */
}

.footer__logo img {
	display: block;
	width: 85%;
	height: auto;
	margin-bottom: 15px;
}

.footer__logo p {
	font-size: 16px;
	line-height: 1.667rem;
}

.footer__logo a {
	color: #333;
}

@media only screen and (max-width: 1024px) {
	.footer__nav {
		padding: 8px 0 8px 15px;
	}
	.footer__nav-list {
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
	.footer__nav-list li a {
		padding: 0 10px;
		font-size: 15px;
		line-height: 1.444rem;
	}
}

@media only screen and (max-width: 960px) {
	.footer__end li {
		width: 100%;
		margin-left: 0;
	}
}

@media only screen and (max-width: 768px) {
	.footer__logo {
		width: 100%;
		padding-right: 0;
		margin-right: 0;
		border-right: none;
	}
	.footer__end {
		width: 100%;
		margin-top: 20px;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

@media only screen and (max-width: 640px) {
	.footer__end li {
		padding: 0 40px 0 70px;
	}
}

@media only screen and (max-width: 640px) {
	.footer__end {
		-webkit-box-ordinal-group: inherit;
		    -ms-flex-order: inherit;
		        order: inherit;
	}
	.footer__end li {
		width: 100%;
	}
	.footer__logo {
		width: 100%;
		padding-right: 0;
		border-right: none;
	}
	.footer__logo img {
		width: 100%;
		height: auto;
	}
	.footer__logo p {
		padding: 0;
	}
	.footer__title {
		width: 100%;
		background: #AE0E16;
		color: #fff;
	}
}

#scrollUp {
	width: 55px;
	height: 55px;
	bottom: 58px;
	right: 0px;
	background: #AE0E16;
	color: #fff;
	font-size: 12px;
	font-family: sans-serif;
	text-decoration: none;
	opacity: .9;
	border-radius: 0;
	line-height: 55px;
	text-align: center;
	-webkit-transition: background 200ms linear;
	-o-transition: background 200ms linear;
	transition: background 200ms linear;
}

#scrollUp:hover {
	background: #000;
	color: #fff;
}

@media only screen and (max-width: 1440px) {
	#scrollUp {
		bottom: 30px;
		width: 40px;
		height: 40px;
		line-height: 40px;
	}
}

@media only screen and (max-width: 640px) {
	#scrollUp {
		right: 0;
		padding: 5px;
		border-radius: 0;
	}
}

.social-media {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin-top: 20px;
}

.social-media img {
	width: auto;
	height: 100%;
	margin-right: 10px;
}

.social-media-icons {
	width: 180px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-ms-flex-line-pack: center;
	    align-content: center;
	padding-bottom: 10px;
}

.social-media-icons li {
	width: auto;
	padding: 0 !important;
}

.social-media-icons li a {
	display: block;
	width: 43px;
	height: 43px;
	overflow: hidden;
	margin-right: 15px;
	-webkit-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	-o-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	border-radius: 0;
}

.social-media-icons li a .fillColor {
	-webkit-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	-o-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
	transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
}

.social-media-icons li a:hover {
	-webkit-transform: scale(1.2);
	    -ms-transform: scale(1.2);
	        transform: scale(1.2);
}

.social-media-icons li a:hover .fillColor {
	fill: #333 !important;
}

@media only screen and (max-width: 1024px) {
	.social-media {
		margin: 15px auto auto auto !important;
		text-align: center;
	}
}

@media only screen and (max-width: 480px) {
	.social-media-icons {
		width: calc(100% - 80px);
	}
}

.site-info {
	position: relative;
	width: 100%;
	font-size: 12px;
	line-height: 2.5rem;
	color: #888;
	background: #fff;
}

.site-info a:link, .site-info a:visited {
	color: #333;
}

.site-info a:hover, .site-info a:active {
	color: #333;
}

.site-info ul {
	margin: auto;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

@media only screen and (max-width: 640px) {
	.site-info {
		font-size: 15px;
		font-size: 0.833rem;
		line-height: 1.111rem;
	}
	.site-info ul {
		padding: 8px 20px;
	}
}

.work {
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 2.5rem;
	letter-spacing: 0;
}

/*breadcrumb*/
.breadcrumb {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 15px 0;
}

.breadcrumb li {
	padding-right: 10px;
	display: block;
	position: relative;
}

.breadcrumb li a {
	padding: 0 5px;
	display: block;
	font-size: 16px;
	color: #666666;
	text-transform: uppercase;
}

.breadcrumb li a:hover {
	color: #000;
}

.breadcrumb li::after {
	content: '/';
	color: #dee2e6;
	position: absolute;
	top: 0;
	right: 0;
}

.breadcrumb li:last-child::after {
	display: none;
}

@media only screen and (max-width: 480px) {
	.breadcrumb__box {
		padding: 10px 0;
	}
	.breadcrumb li a, .breadcrumb li::after {
		line-height: 1.25em;
	}
}

.breadcrumb li:last-child {
	padding-right: 0;
}

/*FB+Line*/
.community {
	position: fixed;
	right: 0;
	top: 55vh;
	height: auto;
	z-index: 500;
}

.community a {
	display: block;
	width: 55px;
	height: 55px;
}

.community a.fb {
	background: #115bc0;
}

.community a.fb::before {
	content: "\e917";
	font-family: 'icomoon';
	display: block;
	line-height: 55px;
	margin: auto;
	font-size: 34px;
	color: #fff;
	text-align: center;
}

.community a.line {
	background: #00c402;
}

.community a.line::before {
	content: "\e905";
	font-family: 'icomoon';
	display: block;
	line-height: 55px;
	margin: auto;
	font-size: 33px;
	color: #fff;
	text-align: center;
}

.community a.youtube {
	background: #CC252A;
}

.community a.youtube::before {
	content: "\e902";
	font-family: 'icomoon';
	display: block;
	line-height: 55px;
	margin: auto;
	font-size: 34px;
	color: #fff;
	text-align: center;
}

.community a.mail {
	background: #4E032D;
}

.community a.mail::before {
	content: "\e911";
	font-family: 'icomoon';
	display: block;
	line-height: 55px;
	margin: auto;
	font-size: 28px;
	color: #fff;
	text-align: center;
}

@media only screen and (max-width: 1440px) {
	.community a {
		width: 40px;
		height: 40px;
	}
	.community a.fb::before, .community a.line::before, .community a.youtube::before, .community a.mail::before {
		line-height: 40px;
		font-size: 20px;
	}
}

@media only screen and (max-width: 640px) {
	.community {
		top: 60vh;
	}
}

.fullmenu.fullview .fullview-space {
	padding: 20px 10%;
}

.fullmenu.fullview .nav__layer {
	width: 100%;
	overflow-y: auto;
	position: fixed;
	left: 0;
	border-width: 0;
	margin: auto auto 15px;
	background: rgba(107, 15, 67, 0.95);
	z-index: 1000;
}

.fullmenu.fullview .nav__layer > .nav__item {
	display: inline-block;
	width: 20%;
	padding: 0 20px;
	border: none;
}

.fullmenu.fullview .nav__layer > .nav__item:hover .area {
	color: #fff !important;
}

.fullmenu.fullview .nav__layer > .nav__item .area {
	display: block;
	font-size: 18px;
	font-weight: 700;
	color: #AE0E16 !important;
	border-left: 1px solid #8E5A6E;
}

.fullmenu.fullview .nav__layer > .nav__item .outlink {
	font-size: 20px;
	font-weight: 700;
	color: #EB9DE3 !important;
}

.fullmenu.fullview .nav__layer > .nav__item .outlink:hover {
	color: #fff !important;
}

.fullmenu.fullview .nav__layer > .nav__item > .nav__name {
	color: #fff;
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.fullmenu.fullview .nav__layer > .nav__item > .nav__name:hover {
	background: #C44685;
	color: #fff;
}

.fullmenu.fullview .nav__layer > .nav__item > .nav__layer {
	display: block;
	position: inherit;
	top: inherit;
	left: inherit;
	background: transparent;
}

.fullmenu.fullview .nav__layer > .nav__item > .nav__layer > .nav__item {
	width: auto;
	border: none;
	padding: 0;
}

.nav--space {
	margin: auto -10px;
}

.news-show {
	display: none !important;
}

.enhead {
	position: relative;
	letter-spacing: 0.1rem;
	color: #fff;
}

.enhead:hover {
	background: #870F15;
	color: #fff;
}

.chead {
	position: relative;
	font-family: "微軟正黑體", "Noto Sans TC", serif;
	font-weight: 700;
	letter-spacing: 0.1rem;
}

.chead::after {
	content: attr(title);
	position: absolute;
	left: 0;
	right: 0;
	bottom: 28px;
	width: 100%;
	font-size: 15px;
	font-size: 0.833rem;
	line-height: 1rem;
	font-weight: 400;
	color: #f51576;
	text-align: center;
	font-family: 'Noto Sans TC';
	letter-spacing: 1px;
	z-index: 1;
	-webkit-transition: .3s ease-out;
	-o-transition: .3s ease-out;
	transition: .3s ease-out;
	-webkit-animation: 4s anim-lineUp ease-out infinite;
	        animation: 4s anim-lineUp ease-out infinite;
}

@-webkit-keyframes anim-lineUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(80%);
		        transform: translateY(80%);
	}
	20% {
		opacity: 0.4;
	}
	50% {
		opacity: 1;
		-webkit-transform: translateY(0%);
		        transform: translateY(0%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0%);
		        transform: translateY(0%);
	}
}

@keyframes anim-lineUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(80%);
		        transform: translateY(80%);
	}
	20% {
		opacity: 0.4;
	}
	50% {
		opacity: 1;
		-webkit-transform: translateY(0%);
		        transform: translateY(0%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0%);
		        transform: translateY(0%);
	}
}

.show-icon {
	display: none !important;
}

@media only screen and (max-width: 1200px) {
	.show-icon {
		display: block !important;
	}
	.enhead::after {
		display: none;
	}
	.chead::after {
		display: inline-block;
		position: inherit;
		-webkit-transform: translate(0);
		    -ms-transform: translate(0);
		        transform: translate(0);
		left: inherit;
		bottom: inherit;
		width: auto;
		line-height: 1.75rem;
		-webkit-animation: inherit;
		        animation: inherit;
	}
	.news-show {
		display: block !important;
	}
	.nav__item br {
		display: none;
	}
}

.nav__name {
	padding: 12px 10px;
}

.enmain .nav__item {
	max-width: inherit;
}

.enmain .nav__name {
	padding: 43px 22px 0 22px;
}

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

	.enhead {
		color: #FFF;
	}
	.enhead:active {
		color: #fff !important;
	}
	.nav__layer .nav__item .nav__name {
		line-height: 30px;
		padding-right: 54px;
	}
	.nav__btn {
		width: 100px;
	}
}

@media only screen and (max-width: 640px) {
	.header {
		background-image: url("../../images_2024/head-left-ap.jpg");
	}
	.nav__box {
		background: #fff;
	}
	.nav__box .nav {
		width: 100%;
	}
}
