﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;700;900&family=Noto+Sans+TC:wght@300;400;500;700&display=swap');
html,body {
	height:100%;
	margin:0;
	padding:0;
}
main {display:block;}
body {
    font: 62.5%/1 "Noto Sans TC", "PingFang TC", "微軟正黑體", "Microsoft JhengHei", Arial, Helvetica, sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    line-height: 1.5;
    background: var(--paper);
    color: var(--ink);
    overflow-x: hidden;
}
body.font-size-s {font-size:56.3%;}
body.font-size-l {font-size:68.8%;}
:root{
  --red:#C8392B;   --red-light:#FEF0EE;       --red-dark:#A32820;        
  --gold:#D4A017;  --gold-light:#FDF3DC;      --gold-dark:#825b0f;
  --ink:#1A1208;   --ink-mid:#3D3020;         --ink-soft:#7A6A55;
  --teal:#2E7D7A;  --teal-light:#E0F0EF;
  --blue:#1B5E8F;  --blue-light:#E3EEF8;      --blue-mid:#2980B9;    
  --green:#2E7D46; --green-light:#E0F0E6;     --green-dark:#1e5828;
  --rose:#a0497f; 
  --purple:#6B2FA0;--purple-light:#F0E8FA;
  --lb:#2C7BB6;    --lb-light:#E8F4FF;
  --orange:#e67e22;
  --paper:#FAF7F2; --paper-dark:#F0EBE1;
  --white:#FFFFFF; --border:#DDD5C8;  
}
*{margin:0;padding:0;box-sizing:border-box;}
a { color:#468C00;
	text-decoration:none;
	transition:all 0.5s ease;
}
a:hover,
a:focus {
	color:#A40000;
	text-decoration:none;	
}
a,
button,
textarea,
select,
input {
    -webkit-appearance:none;
    -webkit-tap-highlight-color:rgba(0, 0, 0, 0);
    -webkit-border-radius:0;
       -moz-border-radius:0;
            border-radius:0;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
img {
	max-width:100%;
	height:auto;
    border:none;
    vertical-align:middle;
}
sub,
sup {
    font-size:75%;
    line-height:0;
    position:relative;
    vertical-align:baseline;
}
sup {
    top:-0.5em;
}
sub {
    bottom:-0.25em;
}
.sr-only {
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	border:0;
}
.container {
    width:100%;
    margin:0 auto;
}
@media screen and (max-width:990px) {
    .pc-mode {
        display:none !important;
    }
    .container {
        width:100%;
    }
}
@media screen and (min-width:991px) {
    .sp-mode {
        display:none !important;
    }
    .container {
		 width:100%;
    }
}
@media screen and (min-width:1401px) {
    .sp-mode {
        display:none !important;
    }
    .container {
		 width:1320px;
    }
}
/*
@media screen and (min-width:1200px) {
    .container { width:calc(100% - 150px);}
}
@media screen and (min-width:1920px) {
	.container {width:calc(100% - (100vw - 1720px));}
}*/

 
/** header **/
#header {
	position:relative;
	display:block;
	width:100%;
	min-height:60px;
	background:#FFF;
	margin:0 auto;
	box-sizing:border-box;
	border-bottom:solid 4px var(--green);
	z-index:999;
	-webkit-transition:all 0.5s;
	   -moz-transition:all 0.5s;    
		 -o-transition:all 0.5s;
			transition:all 0.5s;			
}
#header.sp-flex {
	position:absolute;
    left:0;
    top:0;
}
#header.sp-flex.flex {
     position:fixed;
		-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.3);
		   -moz-box-shadow:0 5px 10px rgba(0,0,0,0.3);
				box-shadow:0 5px 10px rgba(0,0,0,0.3);
}
#header .logo {
	position:absolute;
	left:15px;
	top:10px;
	z-index:99;
}
#header .logo a {
	display:block;
	width:230px;
	height:40px;
	background:url(../images/logo.png) no-repeat 0 50%;
	background-size:auto 40px;
}
@media screen and (min-width:991px) {
	#header {
		min-height:100px;
		text-align:center;		
	}
	#header.flex {
		position:fixed;
		left:0;
		top:0;
		min-height:60px;
		padding-top:0;
		background:#FFF;
		animation:header 0.5s ease 1;
		z-index:99;
		-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);
		   -moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);
				box-shadow:0 5px 10px rgba(0,0,0,0.2);			
	}
	#header .logo {
		left:20px;
		top:25px;
	}
	#header.flex .logo {
		top:15px;
	}
	#header .logo a {
		width:287px;
		height:50px;
		background-size:auto 50px;
	}
	#header.flex .logo a {
		width:230px;
		height:40px;
		background-size:auto 40px;
	}
}
@media screen and (min-width:1200px) {
	#header.flex {
		min-height:80px;
	}
	#header.flex .logo {
		top:20px;
	}
}
@media screen and (min-width:1440px) {
	#header {
		min-height:120px;
	}
	#header.flex {
		min-height:80px;
	}
	#header .logo {
		top:30px;
	}
	#header.flex .logo {
		top:25px;
	}
	#header .logo a {
		width:345px;
		height:60px;
		background-size:auto 60px;
	}
	#header.flex .logo a {
		width:287px;
		height:50px;
		background-size:auto 50px;
	}
}
@media screen and (min-width:1920px) {
	#header .logo {
		top:25px;
		left:50px;
	}
	#header .logo a {
		width:402px;
		height:70px;
		background-size:auto 70px;
	}
}

 
/* ----- topHead ----- */
#topHead {
    position:relative;
	width:100%;
	text-align:right;
	z-index:99;
}
@media screen and (min-width:991px) {
    #topHead {
		position:absolute;
		top:35px;
		right:60px;
		display:inline-block;
		width:auto;
		vertical-align:middle;
	}
}
@media screen and (min-width:1200px) {
    #topHead {
		top:35px;
		right:70px;
	}
	#header.flex #topHead {
		display:block;
		top:25px;
	}
}
@media screen and (min-width:1440px) {
    #topHead {
		top:45px;
		right:80px;
	}
	#header.flex #topHead {
		top:35px;
	}
}
@media screen and (min-width:1920px) {
    #topHead {
		right:110px;
	}
	#topHead.addLogin {
		right:50px;
	}
}


/* ----- addon ----- */
#addon {
	display:inline-block;
	text-align:right;
	margin:0 auto;
}
#addon > ul {
	list-style:none;
	letter-spacing:-9px;
	margin:0 -5px;
}
#addon > ul > li {
	display:inline-block;
	color:#000;
	text-align:left;
	letter-spacing:0;
	padding:0 5px;
}
#addon > ul > li > a {
	position:relative;
	display:block;
	width:30px;
	height:30px;
	text-indent:-999px;
	overflow:hidden;
	box-sizing:border-box;
	vertical-align:top;
}
#addon > ul > li > a:hover,
#addon > ul > li > a:focus {
	color:#A40000;
}
#addon > ul > li > a::before {
	position:absolute;
	left:4px;
	top:4px;
	content:"";
	display:block;
	width:24px;
	height:24px;
	background-color:#000;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
    -webkit-mask-size:100% 100%;
			mask-size:100% 100%;
}
#addon > ul > li > a:hover::before,
#addon > ul > li > a:focus::before {
	background-color:#1e7a21;
}
#addon > ul > li > a.home::before {
	-webkit-mask-image:url(../images/icon-home.svg);
			mask-image:url(../images/icon-home.svg);
}
#addon > ul > li > a.sitemap::before {
	-webkit-mask-image:url(../images/icon-sitemap.svg);
			mask-image:url(../images/icon-sitemap.svg);
}
#addon > ul > li > a.contact::before {
	-webkit-mask-image:url(../images/icon-contact.svg);
			mask-image:url(../images/icon-contact.svg);
}
#addon > ul > li > a.language::before {
	-webkit-mask-image:url(../images/icon-language.svg);
			mask-image:url(../images/icon-language.svg);
}
@media screen and (min-width:1200px) {
	#addon > ul {
		margin:0 -10px;
	}
	#addon > ul > li {
		padding:0 10px;
	}
	#addon > ul > li > a::before {
		left:0;
		top:0;
		width:100%;
		height:100%;
	}
}
@media screen and (min-width:1440px) {
	#addon > ul {
		margin:0 -15px;
	}
	#addon > ul > li {
		padding:0 15px;
	}
}


/* ----- addon-sp ----- */
#addon-sp {
    width:100%;
	width:100%;
	background:#282828;
}
#addon-sp > ul {
    letter-spacing:-9px;
    list-style:none;
}
#addon-sp > ul > li {
    display:inline-block;
	width:50%;
	letter-spacing:0px;
	box-sizing:border-box;
}
#addon-sp > ul > li + li {
	border-left:1px solid rgba(255, 255, 255, 0.3);
}
#addon-sp > ul > li a {
	display:block;
    width:100%;
    height:100%;
    color:#FFF;
    font-size:1.5em;
    text-align:center;
    vertical-align:middle;
    padding:15px 5px;
    box-sizing:border-box;
}
#addon-sp > ul > li a:hover,
#addon-sp > ul > li a:focus {
    color:#f2f230
}
#addon-sp > ul > li > a.language {
	display:none;
}
#addon-sp > ul > li > a span {
	position:relative;
	display:inline-block;
	padding-left:25px;
}
#addon-sp > ul > li > a span::before {
	position:absolute;
	left:0;
	top:50%;
	content:"";
	display:block;
	width:20px;
	height:20px;
	margin-top:-10px;
	background-color:#FFF;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
    -webkit-mask-size:100% 100%;
			mask-size:100% 100%;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
#addon-sp > ul > li > a.home span::before {
	-webkit-mask-image:url(../images/icon-home.svg);
			mask-image:url(../images/icon-home.svg);
}
#addon-sp > ul > li > a.sitemap span::before {
	-webkit-mask-image:url(../images/icon-sitemap.svg);
			mask-image:url(../images/icon-sitemap.svg);
}
#addon-sp > ul > li > a.contact span::before {
	-webkit-mask-image:url(../images/icon-contact.svg);
			mask-image:url(../images/icon-contact.svg);
}
#addon-sp > ul > li > a:hover span::before,
#addon-sp > ul > li > a:focus span::before {
	background-color:#f2f230;
}
@media screen and (max-width:440px) {
	#addon-sp > ul > li a i {
		display:block;
		line-height:125%;
    }
}


/* ----- lang_area ----- */
.lang_area {
    position:relative;
}
.lang_area .lanNav {
	display:block;
}
.lang_area .lanNav li {
	list-style:none;
	box-sizing:border-box;
}
.lang_area .lanNav li a {
    display:block;
    height:inherit;
    width:100%;
    font-size:1.5em;
    color:#999;
    text-align:center;
}
.lang_area .lanNav li a:hover,
.lang_area .lanNav li a:focus {
    color:#1e7a21
}
.lang_area .lanNav li a.on {
	color:#000;
	font-weight:bold;
}
@media screen and (max-width:990px) {
	#addon-sp .lang_area .lanNav {
		display:block !important;
	}
	#addon-sp .lang_area .lanNav li a.on {
		display:none;
	}
	#addon-sp .lang_area .lanNav li a span {
		position:relative;
		display:inline-block;
		padding-left:25px;
	}
	#addon-sp .lang_area .lanNav li a span::before {
		position:absolute;
		left:0;
		top:50%;
		content:"";
		display:block;
		width:20px;
		height:20px;
		margin-top:-10px;
		background-color:#FFF;
		background-position:50% 50%;
		background-repeat:no-repeat;
		background-size:cover;
		-webkit-mask-size:100% 100%;
				mask-size:100% 100%;
		-webkit-transition:all 0.5s ease;
		   -moz-transition:all 0.5s ease;
			 -o-transition:all 0.5s ease;
				transition:all 0.5s ease;
		-webkit-mask-image:url(../images/icon-language.svg);
				mask-image:url(../images/icon-language.svg);
	}
	#addon-sp .lang_area .lanNav li a:hover span::before,
	#addon-sp .lang_area .lanNav li a:focus span::before {
		background-color:#f2f230;
	}
}
@media screen and (min-width:991px) {
	.lang_area .lanNav {
		position:absolute;
		top:50px;
		left:50%;
		display:block;
		min-width:inherit;
		height:inherit;
		background-color:#fff;
		padding:20px;
		-webkit-transform:translateX(-50%);
				transform:translateX(-50%);
		-webkit-box-shadow:0 -3px 10px 0 rgba(0, 0, 0, 0.2), 0 3px 5px 0 rgba(0, 0, 0, 0.3);
				box-shadow:0 -3px 10px 0 rgba(0, 0, 0, 0.2), 0 3px 5px 0 rgba(0, 0, 0, 0.3);
		z-index:100;
	}
	.lang_area .lanNav:before {
		content:"";
		display:block;
		position:absolute;
		top:-10px;
		left:50%;
		border-left:12px solid transparent;
		border-right:12px solid transparent;
		border-bottom:12px solid #fff;
		-webkit-transform:translateX(-50%);
				transform:translateX(-50%);
	}
	.lang_area .lanNav li + li {
		margin-top:12px;
		padding-top:12px;
		border-top:1px dashed #CCC;
	}
}


/* ----- searchZone ----- */
.searchZone {
    position:absolute;
	top:60px;
    width:100%;
    text-align:center;
    margin:0 auto;
	z-index:10;
}
.searchZone .searchTag {
	position:absolute;
	top:-52.5px;
	right:60px;
	display:inline-block;
	box-sizing:border-box;
	z-index:99;	
}
.searchZone .searchTag a {
	display:inline-block;
	width:44px;
	height:44px;
	padding:11px;
	box-sizing:border-box;
}
.searchZone .searchTag a span {
	display:inline-block;
	width:100%;
	height:100%;
}
.searchZone .searchTag a span em {
	position:relative;
	display:inline-block;
	width:100%;
	height:100%;
	background:none;
	-webkit-backface-visibility:hidden;
			backface-visibility:hidden;
}
.searchZone .searchTag a.open span em::before {
	position:absolute;
	display:block;
	content:'';
	left:0;
	top:0;
	width:19px;
	height:19px;
	border:3px solid #000;
	box-sizing:border-box;
    -webkit-border-radius:100px;
       -moz-border-radius:100px;
            border-radius:100px;
	-webkit-transition:-webkit-transform .2s;
	        transition:transform .2s;
}
.searchZone .searchTag a.open span em::after {
	position:absolute;
	display:block;
	content:'';
	right:-1px;
	bottom:3.5px;
	width:10px;
	height:3px;
	background:#000;
    -webkit-border-radius:50px;
       -moz-border-radius:50px;
            border-radius:50px;
	-webkit-transition:-webkit-transform .2s;
	        transition:transform .2s;
	-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
			transform:rotate(45deg);
}
.searchZone .searchTag a.open:hover  span em::before,
.searchZone .searchTag a.open:focus  span em::before {
	border-color:#1e7a21;
}
.searchZone .searchTag a.open:hover  span em::after,
.searchZone .searchTag a.open:focus  span em::after {
	background:#1e7a21;
}
.searchZone .searchTag a.close {
	display:none;
}
.searchZone .searchTag a.close span em::before,
.searchZone .searchTag a.close span em::after {
	position:absolute;
	display:block;
	content:'';
	left:50%;
	top:50%;
	width:26px;
	height:3px;
	margin-left:-13px;
	margin-top:-1.5px;
	background:#000;
    -webkit-border-radius:50px;
       -moz-border-radius:50px;
            border-radius:50px;
}
.searchZone .searchTag a.close span em::before {
	-webkit-transform:rotate(45deg);
	    -ms-transform:rotate(45deg);
	        transform:rotate(45deg);
}
.searchZone .searchTag a.close span em::after {
	-webkit-transform:rotate(-45deg);
	    -ms-transform:rotate(-45deg);
	        transform:rotate(-45deg);
}
.searchZone .searchTag a.close:hover  span em::before,
.searchZone .searchTag a.close:focus  span em::before,
.searchZone .searchTag a.close:hover  span em::after,
.searchZone .searchTag a.close:focus  span em::after {
	background:#1e7a21;
}
@media screen and (min-width:991px) {
	.searchZone {
		position:relative;
		top:inherit;
	}
	.searchZone .searchTag {
		top:-70px;
		right:20px;
	}
	#header.flex .searchZone .searchTag {
		top:-63px;
	}
	.searchZone .searchTag a {
		width:30px;
		height:30px;
		padding:4px;
	}
}
@media screen and (min-width:1200px) {
	.searchZone .searchTag {
		top:-70px;
	}
	#header.flex .searchZone .searchTag {
		top:-70px;
	}
	.searchZone .searchTag a {
		padding:0;
	}
	.searchZone .searchTag a.open span em::before {
		width:26px;
		height:26px;
		border:3px solid #000;
	}
	.searchZone .searchTag a.open span em::after {
		right:-1px;
		bottom:4px;
		width:13px;
		height:3px;
	}
	.searchZone .searchTag a.close span em::before,
	.searchZone .searchTag a.close span em::after {
		width:32px;
		height:3px;
		margin-left:-16px;
		margin-top:-1.5px;
	}
}
@media screen and (min-width:1440px) {
	.searchZone .searchTag {
		top:-85px;
	}
	#header.flex .searchZone .searchTag {
		top:-65px;
	}
}
@media screen and (min-width:1920px) {
	.searchZone .searchTag {
		right:50px;
	}
}


.searchZone .search {
	position:absolute;
	display:none;
	width:100%;
	padding:25px 0;
    background: linear-gradient(to right, rgba(46, 125, 70) 0%, rgba(100, 166, 90) 100%);	
	box-sizing:border-box;
	border-top:1px solid #D1D5DB;
	-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);
	   -moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);
			box-shadow:0 5px 10px rgba(0,0,0,0.2);
}
.searchZone .box {
	position:relative;
	width:calc(100% - 50px);
	margin:0 auto;
	-webkit-transition:.3s;
		    transition:.3s;
	-webkit-transition:all 200ms ease;
			transition:all 200ms ease;
}
.searchZone .search-txt {
	width:100%;
	color:#000;
	font-family:"微軟正黑體", Microsoft JhengHei, Helvetica, sans-serif;
	font-size:1.7em;
	line-height:48px;
	padding:0 55px 0 10px;
	border:1px solid #D1D5DB;
	box-sizing:border-box;
	background:#fff;
	border-radius: 30px;
}
.searchZone .search-btn {
	position:absolute;
	top:0;
	right:0;
	display:block;
	width:50px;
	height:50px;
	font-size:0;
	padding:0;
	margin:0;	
	border:none;
	cursor:pointer;
	background:none;
}
.searchZone .search-btn span {
	float:left;
	width:100%;
	height:100%;
}
.searchZone .search-btn span em {
	position:relative;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	width:26px;
    height:26px;
    margin:12px auto;
    display:block;
}
.searchZone .search-btn span em::before {
	position:absolute;
	display:block;
	content:'';
	left:0;
	top:0;
	height:20px;
	width:20px;
	border:3px solid #000;
	box-sizing:border-box;
    -webkit-border-radius:100px;
       -moz-border-radius:100px;
            border-radius:100px;
}
.searchZone .search-btn span em::after {
	position:absolute;
	display:block;
	content:'';
	left:15px;
	top:18px;
	width:10px;
	height:3px;	
	background:#000;
	-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
			transform:rotate(45deg);
}
.searchZone .search-btn:hover span em::before,
.searchZone .search-btn:focus span em::before {
	border-color:#1e7a21;
}
.searchZone .search-btn:hover span em::after,
.searchZone .search-btn:focus span em::after {
	background-color:#1e7a21;
}
@media screen and (min-width:991px) {
	.searchZone .search {
		padding:40px 0;
	}
	#header.flex .searchZone .search {
		position:relative;
		-webkit-box-shadow:0 0 0 rgba(0,0,0,0);
		   -moz-box-shadow:0 0 0 rgba(0,0,0,0);
				box-shadow:0 0 0 rgba(0,0,0,0);
	}
	.searchZone .search-txt {
		font-size:1.9em;
	}
}


/* ----- loggedBox ----- */
.loggedBox{
	position: fixed;
    left: 0;
	bottom:0;
	max-width:100%;	
    color: #fff;
    font-size: 1.6em;
	line-height:1.5;	
    background: rgba(0,0,0,0.5);
	border-radius: 0 50px 0 0;
    padding: 5px 30px 5px 10px;	
	box-sizing:border-box;
	z-index:5;
}
.loggedBox span{
    font-size: 80%;
}	
.loggedBox .logout_btn{
	display: inline-block;
    color: #fff;
    padding: 5px 15px 5px 30px;
    background: #1a7339 url(../images/logout.svg) 10px center no-repeat;
    border-radius: 20px;	
	margin:3px;
	margin-top:6px;
}
.loggedBox .logout_btn:hover,
.loggedBox .logout_btn:focus{
	background-color:#cc3300;
}
@media screen and (max-width:480px) {
	.loggedBox{
		width:100%;	
		font-size: 1.5em;
		background: #1a1208;
		border-radius: 0;
		display:block;
		position:relative;
		text-align:center;
		margin-top:-20px;
	}
	.loggedBox a{
		display:block;
	}
}


/** main **/
main {width:100%; margin:0 auto;}
.main{ padding:22px 20px; box-sizing:border-box;}
.unit-panel{display:none;}
.unit-panel.active{display:block;}


/** footer **/
#footer {
    position:relative;
    width:100%;
    margin:0 auto;
	z-index:5;
}
#footer:before {
	position:absolute;
	left:0;
	bottom:0;
	content:"";
    display:block;	
    width:100%;
	height:calc(100% - 130px);
	background:#282828;
	z-index:-2;
}
#footer .container {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
@media screen and (min-width:991px) {
	#footer:before {
		height:calc(100% - 165px);
	}
}
@media screen and (min-width:1200px) {
	#footer:before {
		height:calc(100% - 180px);
	}
}
@media screen and (min-width:1920px) {
	#footer:before {
		height:calc(100% - 225px);
	}
}


/* ----- add_link ----- */
.add_link {
	display:flex;
	width:100%;
	margin:0 auto 25px auto;
}
.add_link dl {
	display:flex;
	min-height:260px;
	width:33.333%;
	text-align:center;
	padding:30px 15px;
	background:#0e5400;
	flex-direction:column;
	justify-content:space-between;
    align-items:center;
	box-sizing:border-box;
}
.add_link dl:nth-child(2n) {
	background:#29660a;
}
.add_link dl dt {
	width:100%;
	color:#FFF;
	font-size:3.3em;
	font-weight:bold;
	margin-bottom:20px;
}
.add_link dl dd {
	width:100%;
	color:#FFF;
	font-size:1.5em;
	line-height:175%;
}
.add_link dl dd + dd {
	margin-top:10px;
}
.add_link dl dd a {
	display:inline-block;
	width:90%;
	color:#FFF;
	padding:15px 20px;
	border:1px solid #FFF;
	box-sizing:border-box;
}
.add_link dl dd a:hover,
.add_link dl dd a:focus {
	color:#0e5400;
	background:#FFF;
}
.add_link dl dd span {
	display:block;
}
.add_link dl dd span.tel {
	position:relative;
	display:inline-block;
	font-family:Arial, Helvetica, sans-serif;
	font-size:1.9rem;
	font-weight:bold;
	line-height:33px;
	padding-left:40px;
}
.add_link dl dd span.tel::before {
	position:absolute;
	left:0;
	top:0;
	content:"";
	display:block;
	width:30px;
	height:30px;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-color:#FFF;
	-webkit-mask-size:100% 100%;
			mask-size:100% 100%;
	-webkit-mask-image:url(../images/icon-tel.svg);
			mask-image:url(../images/icon-tel.svg);
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
.add_link dl dd span.time {
	font-size:1rem;
	font-weight:bold;
	margin:5px 0;
}
.add_link dl dd span.job,
.add_link dl dd span.mail {
	position:relative;
	display:inline-block;
	font-size:1.1rem;
	font-weight:bold;
	line-height:25px;
	padding-right:30px;
}
.add_link dl dd span.job::before,
.add_link dl dd span.mail::before {
	position:absolute;
	right:0;
	top:0;
	content:"";
	display:block;
	width:25px;
	height:25px;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-color:#FFF;
	-webkit-mask-size:100% 100%;
			mask-size:100% 100%;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
.add_link dl dd span.job::before {
	-webkit-mask-image:url(../images/icon-job.svg);
			mask-image:url(../images/icon-job.svg);
}
.add_link dl dd span.mail::before {
	-webkit-mask-image:url(../images/icon-write.svg);
			mask-image:url(../images/icon-write.svg);
}
.add_link dl dd a:hover span.job::before,
.add_link dl dd a:focus span.job::before,
.add_link dl dd a:hover span.mail::before,
.add_link dl dd a:focus span.mail::before {
	background-color:#0e5400;
}
@media screen and (max-width:768px) {
	.add_link {
		flex-direction:column;
		margin-bottom:25px;
	}
	.add_link dl {
		width:80%;
		margin:0 auto;
	}
	.add_link dl dd a {
		max-width:300px;
	}
}
@media screen and (max-width:480px) {
	.add_link dl {
		width:100%;
	}
}
@media screen and (min-width:991px) {
	.add_link dl {
		padding:40px 10px;
		min-height:330px;
	}
	.add_link dl dt {
		font-family:"Noto Serif TC", "微軟雅黑", "Microsoft YaHei";
		font-size:3.5em;
	}
	.add_link dl dd {
		font-size:1.5em;
	}
	.add_link dl dd a {
		max-width:300px;
		padding:20px;
	}
	.add_link dl dd span.tel {
		font-size:2.2rem;
		line-height:40px;
		padding-left:45px;
	}
	.add_link dl dd span.tel::before {
		width:35px;
		height:35px;
	}
	.add_link dl dd span.time {
		font-size:1.2rem;
		margin:10px 0;
	}
	.add_link dl dd span.job,
	.add_link dl dd span.mail {
		font-size:1.2rem;
	}
}
@media screen and (min-width:1200px) {
	.add_link dl {
		padding:60px 20px;
		min-height:360px;
	}
	.add_link dl dt {
		margin-bottom:30px;
	}
	.add_link dl dd + dd {
		margin-top:20px;
	}
	.add_link dl dd a {
		max-width:340px;
	}
	.add_link dl dd span.tel {
		font-size:2.5rem;
		line-height:40px;
		padding-left:45px;
	}
	.add_link dl dd span.tel::before {
		width:35px;
		height:35px;
	}
	.add_link dl dd span.time {
		font-size:1.3rem;
	}
}
@media screen and (min-width:1720px) {
	.add_link {
		margin-bottom:60px;
	}
	.add_link dl {
		padding:90px 20px;
		min-height:450px;
	}
	.add_link dl dt {
		font-size:3.9em;
	}
	.add_link dl dd {
		font-size:1.7em;
	}
	.add_link dl dd a {
		max-width:370px;
	}
	.add_link dl dd span.tel {
		position:relative;
		display:inline-block;
		font-family:Arial, Helvetica, sans-serif;
		font-size:3.1rem;
		font-weight:bold;
		line-height:49px;
		padding-left:55px;
	}
	.add_link dl dd span.tel::before {
		width:45px;
		height:45px;
	}
	.add_link dl dd span.time {
		font-size:1.4rem;
	}
	.add_link dl dd span.job,
	.add_link dl dd span.mail {
		font-size:1.3rem;
		line-height:30px;
		padding-right:35px;
	}
	.add_link dl dd span.job::before,
	.add_link dl dd span.mail::before {
		width:30px;
		height:30px;
	}
}


/* ----- fat-nav ----- */
.fat-nav {
    position:relative;
	width:100%;
	margin-bottom:40px;
	z-index:1;
}
.fat-nav > ul {
	display:flex;
    list-style:none;
	letter-spacing:-9px;
    margin:-20px -10px;
	flex-wrap:wrap;
    justify-content:space-between;
}
.fat-nav > ul > li {
	display:inline-block;
	max-width:16.6666%;
	letter-spacing:0;
    padding:20px 10px;
    box-sizing:border-box;
	vertical-align:top;
}
.fat-nav > ul > li > a {
	position:relative;
    display:inline-block;
	font-family:"Noto Serif TC", "PingFang TC Semibold", "微軟雅黑", "Microsoft YaHei";
	color:#FFF;
	font-size:2.1em;
    font-weight:bold;
	line-height:130%;
	margin-bottom:20px;
}
.fat-nav > ul > li > a:hover,
.fat-nav > ul > li > a:focus {
	color:#FF6;
}
.fat-nav > ul > li > ul {
    list-style:none;
}
.fat-nav > ul > li > ul > li + li {
    margin-top:10px;
}
.fat-nav > ul > li > ul > li > a {
    position:relative;
	display:inline-block;
	font-family:"Noto Serif TC", "PingFang TC Semibold", "微軟雅黑", "Microsoft YaHei";
	color:#ffffff;
	font-size:1.7em;
    line-height:130%;    
    padding-left:1em;
    box-sizing:border-box;	
}
.fat-nav > ul > li > ul > li > a:before {
	content:"";
	position:absolute;
	display:block; 
	left:2px;
	top:11px;
	width:6px;
	height:2px;
	background:#FFF;
	box-sizing:border-box;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
.fat-nav > ul > li > ul > li a:hover,
.fat-nav > ul > li > ul > li a:focus {
    color:#FF6;
}
.fat-nav > ul > li > ul > li > a:hover:before,
.fat-nav > ul > li > ul > li > a:focus:before {
	background:#FF6;
}
@media screen and (max-width:768px) {
	.fat-nav > ul > li {
		width:33.33333%;
		max-width:inherit;
	}
}
@media screen and (max-width:480px) {
	.fat-nav > ul > li {
		width:50%;
	}
}
@media screen and (min-width:991px) {
	.fat-nav > ul {
		margin:-20px -15px;
	}
	.fat-nav > ul > li {
		padding:20px 15px;
	}
}
@media screen and (min-width:1440px) {
	.fat-nav {
		width:calc(100% - 440px);
		max-width:1000px;
		margin-bottom:0;
	}
}
@media screen and (min-width:1720px) {
	.fat-nav {
		width:calc(100% - 550px);
		max-width:1170px;
	}
	.fat-nav > ul {
		margin:-20px;
	}
	.fat-nav > ul > li {
		padding:20px;
	}
	.fat-nav > ul > li > a {
		font-size:2.3em;
	}
	.fat-nav > ul > li > ul > li > a {
		font-size:1.9em;
	}
}


/* ----- add_info ----- */
.add_info {
	display:flex;
	width:100%;
	justify-content:space-between;
}
.add_info dl.org {
	position:relative;
	display:inline-block;
	width:100%;
	max-width:360px;
}
.add_info dl.org dt {
	margin-bottom:10px;
}
.add_info dl.org dt span {
	display:inline-block;
	width:92%;
	height:0;
	padding-bottom:16%;
	background:url(../images/logo_white.png) no-repeat 0 0;
	background-size:100% auto;
	filter:drop-shadow(0px 0px 5px rgba(0,0,0,.75));
}
.add_info dl.org dd {
	color:#FFF;
	font-size:1.5em;
	line-height:155%;
}
.add_info dl.org dd + dd {
	margin-top:5px;
}
.add_info dl.org dd a {
	display:inline-block;
	vertical-align:top;
	margin-left:5px;
}
.add_info dl.org dd span {
	display:inline-block;
	vertical-align:top;
}
.add_info dl.org dd span.map::before {
	content:"";
	display:block;
	width:21px;
	height:21px;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background:#FFF;
	-webkit-mask-size:100% 100%;
			mask-size:100% 100%;
	-webkit-mask-image:url(../images/icon-map.svg);
			mask-image:url(../images/icon-map.svg);
}
.add_info dl.org dd a:hover span.map::before,
.add_info dl.org dd a:focus span.map::before {
    background:#FF6;
}
.add_info dl.org dd span.tel,
.add_info dl.org dd span.fax {
	position:relative;
	padding-left:30px;
}
.add_info dl.org dd span.tel::before,
.add_info dl.org dd span.fax::before {
	content:"";
	display:block;
	position:absolute;
	top:50%;
	left:0;
	width:21px;
	height:21px;
	margin:-10.5px 0 0 0;
	background-position:0 50%;
	background-repeat:no-repeat;
	background-size:100% auto;
}
.add_info dl.org dd span.tel::before {background-image:url(../images/icon-tel.svg); }
.add_info dl.org dd span.fax::before { background-image:url(../images/icon-fax.svg); }
.add_info .other {
	position:relative;
	display:inline-block;
	width:calc(100% - 380px);
	max-width:350px;
}
.add_info .other .iso {
	width:100%;
	text-align:center;
	margin-bottom:10px;
}
.add_info .other .iso span {
	display:inline-block;
	width:94%;
	height:0;
	padding-bottom:28%;
	background:url(../images/SGS_ISO.png) no-repeat 0 0;
	background-size:100% auto;
	filter:drop-shadow(0px 0px 5px rgba(0,0,0,.75));
}
.add_info .other p {
	color:#f68b10;
	font-size:1.2em;
	line-height:155%;
}
@media screen and (max-width:990px) {
	.add_info dl.org {
		width:calc(100% - 310px);
	}
	.add_info .other {
		width:290px;
	}
	.add_info .other .iso span {
		width:100%;
		padding-bottom:30%;
	}
}
@media screen and (max-width:640px) {
	.add_info {
		flex-direction:column;
	}
	.add_info dl.org {
		width:100%;
	}
	.add_info .other {
		width:100%;
		max-width:360px;
		margin-top:30px;
	}
	.add_info .other .iso {
		width:100%;
		max-width:320px;
	}
}
@media screen and (min-width:1440px) {
	.add_info {
		width:400px;
		flex-direction:column;
	}
	.add_info dl.org {
		width:100%;
		max-width:inherit;
	}
	.add_info .other {
		width:100%;
		max-width:inherit;
		margin-top:30px;
	}
	.add_info .other .iso {
		margin-bottom:15px;
	}
}
@media screen and (min-width:1720px) {
	.add_info {
		width:420px;
	}
	.add_info dl.org dt {
		margin-bottom:10px;
	}
	.add_info dl.org dt span {
		width:96%;
		padding-bottom:17%;
	}
	.add_info dl.org dd {
		font-size:1.7em;
	}
	.add_info dl.org dd + dd {
		margin-top:10px;
	}
	.add_info .other p {
		font-size:1.3em;
	}
}


/* ----- copyright ----- */
.copyright {
	display:flex;
	width:100%;
	justify-content:space-between;
	align-items:center;
	padding:15px 0;
	border-top:1px solid rgba(255,255,255,.2);
	margin:30px auto 0 auto;
}
.copyright .wd {
	display:inline-block;
	width:calc(100% - 280px);
	color:#FFF;
	font-size:1.3em;
	line-height:155%;
}
@media screen and (max-width:990px) {
	.copyright {
		padding-right:50px;
		box-sizing:border-box;
	}
	.copyright .wd {
		width:calc(100% - 260px);
	}
}
@media screen and (max-width:640px) {
	.copyright {
		flex-direction:column;
		align-items:flex-start;
		padding-right:0;
	}
	.copyright .wd {
		width:calc(100% - 50px);
		margin-bottom:10px;
	}
}
@media screen and (min-width:1200px) {
	.copyright {
		padding:20px 0;
	}
}
@media screen and (min-width:1720px) {
	.copyright {
		margin-top:40px;
	}
	.copyright .wd {
		width:calc(100% - 330px);
		font-size:1.5em;
	}
}
@media screen and (min-width:1920px) {
	.copyright {
		padding:25px 0;
	}
}


/* ----- agencyLink ----- */
.agencyLink {
	position:relative;
	display:inline-block;
	width:260px;
	letter-spacing:0;
	background:rgba(255,255,255,.1);
	vertical-align:middle;
}
.agencyLink > a {
	position:relative;
	display:block;
	width:100%;
	color:#FFF;
	font-size:1.5em;
	line-height:45px;
	padding:0 15px;
	box-sizing:border-box;
	-webkit-transition:all 0.4s ease;
	   -moz-transition:all 0.4s ease;
	     -o-transition:all 0.4s ease;
	        transition:all 0.4s ease;
}
.agencyLink > a.show {
	color:#FFF;
	background:#1e7a21;
}
.agencyLink > a span {
	display:block;
	padding-right:50px;
}
.agencyLink > a span:before,
.agencyLink > a span:after {
	position:absolute;
	content:"";
	right:13px;
	top:50%;
	display:block;   
	width:14px;
	height:2px;
	margin-top:-1px;
	background:#FFF;
	z-index:3;
}
.agencyLink > a span:after {
	-webkit-transform:rotate(-90deg);
	   -moz-transform:rotate(-90deg);
        -ms-transform:rotate(-90deg);
         -o-transform:rotate(-90deg);
            transform:rotate(-90deg);
}
.agencyLink > a.show span:before,
.agencyLink > a.show span:after {
	right:12px;
	width:16px;
}
.agencyLink > a.show span:before {
	-webkit-transform:rotate(45deg);
	   -moz-transform:rotate(45deg);
        -ms-transform:rotate(45deg);
         -o-transform:rotate(45deg);
            transform:rotate(45deg);
}
.agencyLink > a.show span:after {
	-webkit-transform:rotate(-45deg);
	   -moz-transform:rotate(-45deg);
        -ms-transform:rotate(-45deg);
         -o-transform:rotate(-45deg);
            transform:rotate(-45deg);
}
.agencyLink .agencyNav {
	display:block;
	width:100%;
	list-style:none;
	box-sizing:border-box;
	background:#FFF;
	margin-top:-1px;	
}
.agencyLink .agencyNav.fix {
	display:none;
	position:absolute;
	bottom:100%;
	right:0;
	margin:0;	
	z-index:200;
	-webkit-box-shadow:0 -5px 5px rgba(0,0,0,0.5);
	   -moz-box-shadow:0 -5px 5px rgba(0,0,0,0.5);
			box-shadow:0 -5px 5px rgba(0,0,0,0.5);
}
.agencyLink .agencyNav li {
	border-bottom:1px dashed #CCC;
}
.agencyLink .agencyNav li:last-child {
	border-bottom:none;
}
.agencyLink .agencyNav li a {
	position:relative;	
	display:block;
	width:100%;
	color:#000;
	font-size:1.5em;
	line-height:135%;
	font-weight:bold;
	padding:15px 40px 15px 15px;
	box-sizing:border-box;
}
.agencyLink .agencyNav li a:before {
	position:absolute;
	content:"";
	display:block; 
	right:15px;
	top:50%;
	width:12px;
	height:12px;
	margin:-6px 1px 0 0;
	border-right:2px solid #000;
	border-top:2px solid #000;
	-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
			transform:rotate(45deg);
	z-index:2;
	box-sizing:border-box;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
.agencyLink .agencyNav li a:after {
	position:absolute;
	content:"";
	right:15px;
	top:50%;
	display:block;   
	width:14px;
	height:2px;
	margin:-1px 0 0 0;
	background:#000;
	z-index:2;
	-webkit-transition:all 0.5s ease;
	   -moz-transition:all 0.5s ease;
	     -o-transition:all 0.5s ease;
	        transition:all 0.5s ease;
}
.agencyLink .agencyNav li a:hover,
.agencyLink .agencyNav li a:focus {	
	color:#1e7a21;
}
.agencyLink .agencyNav li a:hover:before,
.agencyLink .agencyNav li a:focus:before {	
	border-color:#1e7a21;
}
.agencyLink .agencyNav li a:hover:after,
.agencyLink .agencyNav li a:focus:after {	
	background:#1e7a21;
}
@media screen and (max-width:990px) {
	.agencyLink {
		width:240px;
	}
}
@media screen and (max-width:640px) {
	.agencyLink {
		width:calc(100% - 50px);
		max-width:300px;
	}
}
@media screen and (min-width:1720px) {
	.agencyLink {
		width:300px;
	}
	.agencyLink > a {
		font-size:1.7em;
		line-height:50px;
		padding:0 20px;
	}
	.agencyLink > a span:before,
	.agencyLink > a span:after {
		right:18px;
	}
	.agencyLink > a.show span:before,
	.agencyLink > a.show span:after {
		right:17px;
	}
	.agencyLink .agencyNav li a {
		font-size:1.7em;
		padding:15px 20px;
	}
	.agencyLink .agencyNav li a:before {
		right:20px;
	}
	.agencyLink .agencyNav li a:after {
		right:20px;
	}
}


 
/* gMenu */
#gMenu {
	position:fixed;
	right:15px;
	bottom:15px;
	width:45px;
	text-align:right;
	z-index:90;
}
@media screen and (min-width:1200px) {
	#gMenu {
		width:50px;
	}
}
@media screen and (min-width:1920px) {
	#gMenu {
		right:20px;
		bottom:20px;
		width:55px;
	}
}

/* ----- goTop ----- */
.goTop {
	display:none;
	float:right;
	margin-top:5px
}
.goTop a {
	position:relative;
	display:block;
	width:45px;
	height:45px;
	overflow:hidden;
	background:rgba(0,0,0,.8);
	-webkit-border-radius:100%;
	   -moz-border-radius:100%;
			border-radius:100%;
}
.goTop a:hover,
.goTop a:focus {
	background-color:#A40000;
}
.goTop a::before {
	content:"";
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	width:19px;
	height:19px;
	margin:-9.5px 0 0 -9.5px;
	background:url(../images/icon-top.svg) 50% 50% no-repeat;
	background-size:cover;
}
@media screen and (min-width:1200px) {
	.goTop a {
		width:50px;
		height:50px;
	}
}
@media screen and (min-width:1920px) {
	.goTop a {
		width:55px;
		height:55px;
	}
}


/* ----- tailshareBtn ----- */
.tailshareBtn {
	position:relative;
	display:none;
	margin-top:5px;
}
.tailshareBtn > a {
	position:relative;
	display:block;
	width:45px;
	height:45px;
	overflow:hidden;
	background:rgba(102,102,102,.8);
	-webkit-border-radius:100%;
	   -moz-border-radius:100%;
			border-radius:100%;
}
.tailshareBtn > a:hover,
.tailshareBtn > a:focus {
	background:#A40000;
}
.tailshareBtn > a.open:before {
	content:"";
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	width:19px;
	height:19px;
	margin:-9.5px 0 0 -9.5px;
	background:url(../images/icon-share.svg) 50% 50% no-repeat;
	background-size:cover;
}
.tailshareBtn > a.close:before,
.tailshareBtn > a.close:after {
	content:"";
	position:absolute;
	display:block;
	width:2px;
	height:24px;
	top:50%;
	left:50%;
	border:none;
	margin:-12px 0 0 -1px;
	background-color:#FFF;
	-webkit-border-radius:100%;
	   -moz-border-radius:100%;
			border-radius:100%;
	-webkit-transform:rotate(45deg);
	   -moz-transform:rotate(45deg);
        -ms-transform:rotate(45deg);
         -o-transform:rotate(45deg);
            transform:rotate(45deg);
}
.tailshareBtn > a.close:after {
	-webkit-transform:rotate(-45deg);
	   -moz-transform:rotate(-45deg);
        -ms-transform:rotate(-45deg);
         -o-transform:rotate(-45deg);
            transform:rotate(-45deg);
}
.tailshareBtn > a span {
	position:relative;
	display:block;
	color:#FFF;
	font-size:1.2em;
	text-align:center;
	padding-top:32px;
}
.tailshareBtn .tailshareMenu {
	display:none;
	position:absolute;
	bottom:45px;
	z-index:100;
}
.tailshareBtn .tailshareMenu ul {
	width:45px;
	list-style:none;
	letter-spacing:-9px;
}
.tailshareBtn .tailshareMenu li {
	display:inline-block;
	letter-spacing:0;
	margin-bottom:5px;
}
.tailshareBtn .tailshareMenu a {
	position:relative;
	display:block;
	width:45px;
	height:45px;
	text-align:left;
	text-indent:-999px;
	overflow:hidden;
	-webkit-border-radius:100%;
	   -moz-border-radius:100%;
			border-radius:100%;
}
.tailshareBtn .tailshareMenu a:before {
	content:"";
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	width:25px;
	height:25px;
	margin:-12.5px 0 0 -12.5px;
	background-size:100% auto;
	-webkit-transition:all 0.3s ease;
	   -moz-transition:all 0.3s ease;
	     -o-transition:all 0.3s ease;
	        transition:all 0.3s ease;
}
.tailshareBtn .tailshareMenu a.icon-fb {
	background-color:rgba(59,89,152,1);
}
.tailshareBtn .tailshareMenu a.icon-fb:before {
	background-image:url(../images/icon-FB.svg);
}
.tailshareBtn .tailshareMenu a.icon-twitter {
	background-color:#000;
}
.tailshareBtn .tailshareMenu a.icon-twitter:before {
	background-image:url(../images/icon-Twitter-X.svg);
}
.tailshareBtn .tailshareMenu a.icon-line {
	background-color:rgba(1,185,1,1);
}
.tailshareBtn .tailshareMenu a.icon-line:before {
	background-image:url(../images/icon-LINE.svg);
}
.tailshareBtn .tailshareMenu a:hover:before {
    -webkit-transform:rotate(360deg);
		-ms-transform:rotate(360deg);
			transform:rotate(360deg);
}
@media screen and (min-width:1200px) {
	.tailshareBtn > a {
		width:50px;
		height:50px;
	}
	.tailshareBtn > a.open:before {
		width:21px;
		height:21px;
		margin:-10.5px 0 0 -10.5px;
	}
	.tailshareBtn .tailshareMenu {
		bottom:50px;
	}
	.tailshareBtn .tailshareMenu ul {
		width:50px;
	}
	.tailshareBtn .tailshareMenu a {
		width:50px;
		height:50px;
	}
	.tailshareBtn .tailshareMenu a:before {
		width:30px;
		height:30px;
		margin:-15px 0 0 -15px;
	}
}
@media screen and (min-width:1920px) {
	.tailshareBtn > a {
		width:55px;
		height:55px;
	}
	.tailshareBtn .tailshareMenu {
		bottom:55px;
	}
	.tailshareBtn .tailshareMenu ul {
		width:55px;
	}
	.tailshareBtn .tailshareMenu a {
		width:55px;
		height:55px;
	}
}


/* ----- google套用全站搜尋 ----- */
#___gcse_0 {
	width:100%;
}
.gsc-search-box {
	margin:0 !important;
}
.gsc-control-cse {
	padding:0 !important;
}
.gsc-input-box {
    border:none !important;
    background:none !important;
}
.gsc-search-box .gsib_a {
	padding:0;
}
.gsc-search-box .gsib_b {
	position:relative;
}
.gsc-search-box .gsst_b {
	position:absolute;
	right:10px;
	top:50%;
	margin-top:-13.5px;
}
.gsc-search-box input.gsc-input {
	font-size:1.2rem;
	line-height:45px;
	padding:0 40px 0 15px !important;
	background-position:15px center !important;
	border:1px solid #ccc !important;
	box-sizing:border-box;
	vertical-align:top;
}
.searchBox .gsc-search-box input.gsc-input {
	-webkit-border-radius:5px;
       -moz-border-radius:5px;
            border-radius:5px;
}
.gsc-search-box input.gsc-input:focus {
	outline:1px dashed #FF6600 !important;
}
.gsc-search-box .gsc-search-button {
	margin:0;
}
.gsc-search-box .gsc-search-button-v2 {
	width:45px;
	height:45px;
	padding:0;
	margin-right:0;
	border:0;
	border-radius:0;
	background:#737373;
	cursor:pointer;
}
.gsc-search-box .gsc-search-button-v2:hover,
.gsc-search-box .gsc-search-button-v2:focus{
	background-color:#A40035;
}
.searchBox .gsc-search-box .gsc-search-button-v2 {
	-webkit-border-radius:5px;
       -moz-border-radius:5px;
            border-radius:5px;
}
.gsc-search-box .gsc-search-button-v2 svg {
	width:50%;
	height:50%;
}

.gs-title {
	line-height:normal;
}
.gs-snippet b,
.gs-title b {
	color:#c40000 !important;
    padding:2px 3px;
    background-color:#fff766 !important;
}
@media screen and (min-width:1200px) {
	.gsc-search-box input.gsc-input {
		line-height:50px;
	}
	.gsc-search-box .gsc-search-button-v2 {
		width:50px;
		height:50px;
	}
}

/* ── FOOTER ── */
footer{background:var(--ink);color:#888;padding:30px 24px;}
.footer-inner{max-width:1320px;;margin:0 auto;display:grid;grid-template-columns:2.5fr 1.1fr 1.1fr 0.8fr 0.8fr 1fr;gap:28px; margin-bottom:30px;}
.footer-info ul{ display:block; list-style:none; padding:0;}
.footer-info ul li{ display:block; margin-bottom:7px; line-height:27px; font-weight:bold; font-size:1.4em; padding-left:33px; position:relative; background-position:left top; background-repeat:no-repeat; background-size:27px;}
.footer-info ul li span{ margin-left:10px;}
.footer-info ul li a{ color:#fff;}
.footer-info ul li a:hover{ text-decoration:underline;}
.footer-info ul li a:hover, #footer .com_li li a:focus{ color:#F99 !important; text-decoration:underline;}
.footer-info ul li.ic1{ background-image: url(../images/footer-ic1.png);}
.footer-info ul li.ic2{ background-image: url(../images/footer-ic2.png);}
.footer-info ul li.ic3{ background-image: url(../images/footer-ic3.png);}
.footer-info ul li.ic4{ background-image: url(../images/footer-ic4.png);}
.footer-brand{font-family:'Noto Serif TC',serif;font-size:1.7em;color:white;margin-bottom:4px;}
.footer-brand-en{font-size:1.4em;color:#666;margin-bottom:10px;}
.footer-tagline{font-size:1.6em;line-height:1.7;}
.footer-col h4{font-size:1.6em;font-weight:700;color:white;margin-bottom:10px;}
.footer-col h4 small{display:block;font-size:75%;}
.footer-col h4 a{color:white;}
.footer-col h4 a:hover, .footer-col h4 a:focus{color:#d4a017;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:6px;}
.footer-col ul li a{font-size:1.6em;color:#888;text-decoration:none;}
.footer-col ul li a span{
		display:inline-block;
		font-size:70%;
		color:rgba(255,255,255,.8);	
		margin-left:10px;	
		background:rgba(200,140,20,.6);
		padding:0 10px;
		border-radius:50px;
}
.footer-col ul li a small{display:block;font-size:75%;color:rgba(190,140,20,.6);margin-top:1px;}
.footer-col ul li a:hover{color:white;}
.footer-col ul li a:hover span{background:rgba(200,140,20,.9)}
.footer-col ul li a:hover small{color:rgba(200,140,20,.9)}
.footer-bottom{max-width:1320px;font-size:1.4em; text-align:center; margin:0 auto;}
.footer-bottom span + span{margin:0 10px;}
@media(max-width:1220px){
	.footer-inner{grid-template-columns:2.2fr 1.3fr 0.8fr 0.8fr 0.8fr 1fr; gap:20px;}
	.footer-info ul li span{ display:block; margin-left:0;}	
}
@media(max-width:990px){
	footer{padding:20px;}
	.footer-info ul li span{ display:inline-block;}			
}
@media(max-width:986px){
    .footer-inner {gap: 15px;}	
	.footer-info ul li span{ margin-left:10px;}	
	.footer-col ul li a span{ padding:0 6px; margin-left:5px;}	
}
@media(max-width:768px){
   .footer-inner {
		display: grid;
		grid-template-columns: minmax(80px, 1.3fr) repeat(4, 1fr);
		grid-template-rows: auto auto;
		gap: 15px;
    }
   .footer-info {
	   grid-column: 1 / -1;
	}   
}
@media(max-width:580px){
  	.footer-inner {grid-template-columns: 1.6fr 1.3fr 1.1fr; }	
}
@media(max-width:370px){
	.footer-col ul li a {font-size:1.3em;}
	.footer-bottom{font-size:1.3em;}
}


/* ── 回頂端 ── */
#gMenu {position:fixed;right:22px;bottom:11px;width:55px;text-align:right;z-index:90;}
.goTop {display:none;float:right;margin-top:5px}
.goTop a {position:relative; display:block; width:55px; height:55px; overflow:hidden; background:rgba(46,125,70,.95); border-radius:100%;}
.goTop a:hover,.goTop a:focus {background-color:#cc3300;}
.goTop span {
	position:relative;
	display:block;
	color:#FFF;
	font-size:1.2em;
	text-align:center;
	padding-top:22px;
}
.goTop a::before {
	position:absolute;
	content:"";
    display:block;
    position:absolute;
	left:50%;
	top:50%;
    width:7px;
    height:7px;    
    border-left:2px solid #FFF;
	border-top:2px solid #FFF;
	margin:-11px 0 0 -5px;
    z-index:2;
    -webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
			transform:rotate(45deg);
}
@media screen and (min-width:991px) {
	#gMenu {width:60px;}	
	.goTop a {width:60px;height:60px;}
	.goTop span {
		padding-top:29px;
	}
	.goTop a::before {
		width:9px;
		height:9px;    
		border-left:3px solid #FFF;
		border-top:3px solid #FFF;
		margin:-11px 0 0 -6px;
	}	
}


/* ══════════════════════════════════════════════
   ★  智慧語童 浮動按鈕 + 展開選單
══════════════════════════════════════════════ */
#yutong-fab{
  position:fixed;
  right:20px;
  bottom:130px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}

/* 展開選單卡片 */
.fab-menu{
  background:white;
  border-radius:16px;
  box-shadow:0 8px 40px rgba(0,0,0,.18);
  border:2px solid var(--green-light);
  overflow:hidden;
  width:380px;
  opacity:0;
  transform:translateY(16px) scale(.96);
  pointer-events:none;
  transition:opacity .25s, transform .25s;
	display: none
 }
.fab-menu.open{
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
	display: block
}

/* 選單頭部 */
.fab-menu-head{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  padding:14px 16px;
  display:flex;
  align-items:center;
  gap:12px;
}
.fab-avatar{
  width:46px;height:46px;
  border-radius:50%;
  background:white;
  display:flex;align-items:center;justify-content:center;
  font-size:4.4em;
  flex-shrink:0;
  box-shadow:0 2px 8px rgba(0,0,0,.2);
  border:2px solid rgba(255,255,255,.5);
}
.fab-menu-head h4{
  color:white;
  font-size:2.2em;
  font-weight:700;
  font-family:'Noto Serif TC',serif;
  line-height:1.3;
}
.fab-menu-head p{
  color:rgba(255,255,255,.75);
  font-size:1.4em;
  margin-top:2px;
  font-style:italic;
}

/* 選單內容 */
.fab-menu-body{padding:14px;}
.fab-menu-body p{
  font-size:1.6em;
  color:var(--ink-soft);
  line-height:1.7;
  margin-bottom:12px;
  border-left:3px solid var(--green-light);
  padding-left:9px;
}
.fab-menu-body p em{
	display:block;
	font-size:90%;
	color:#aaa;
}
.fab-enter-btn{
  display:block;
  width:100%;
  padding:12px;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:white;
  border:none;
  border-radius:10px;
  cursor:pointer;
  font-size:2em;
  font-weight:700;
  font-family:'Noto Serif TC',serif;
  text-align:center;
  text-decoration:none;
  transition:opacity .2s, transform .2s;
  letter-spacing:.5px;
}
.fab-enter-btn:hover,.fab-enter-btn:focus{opacity:.9;transform:translateY(-1px); color:var(--gold);}
.fab-enter-btn .btn-en{
  display:block;
  font-size:70%;
  font-weight:400;
  opacity:.8;
  font-family:'Noto Sans TC',sans-serif;
  margin-top:2px;
  font-style:italic;
  letter-spacing:0;
}
.fab-menu-foot{
  padding:10px 14px;
  background:var(--paper);
  border-top:1px solid var(--border);
  font-size:1.4em;
  color:var(--ink-soft);
  text-align:center;
}

/* 主按鈕 */
.fab-btn{
  width:64px;height:64px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  border:none;
  cursor:pointer;
  box-shadow:0 6px 24px rgba(46,125,70,.45);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  transition:transform .2s, box-shadow .2s;
  position:relative;
}
.fab-btn:hover{transform:scale(1.08);box-shadow:0 8px 30px rgba(46,125,70,.55);}
.fab-btn.active{transform:scale(1.05);}
.fab-btn .fab-icon{font-size:4.8em;line-height:1;}
.fab-btn .fab-label{font-size:95%;color:var(--green);font-weight:700;letter-spacing:.3px;font-family:'Noto Sans TC',sans-serif; background:var(--green-light); padding: 3px 6px; border-radius: 15px; transform: translateY(10px)}



/*20260329*/
i.it{ display: inline-block; width: 2em; height: 2em; text-indent: -9999em; background-position: center; background-repeat: no-repeat; background-size: contain; vertical-align: middle; margin-right:2px;}
/*深綠底*/
i.it.i_01{ background-image: url(../images/icon/i01-on.svg)}
i.it.i_02{ background-image: url(../images/icon/i02-on.svg)} 
i.it.i_03{ background-image: url(../images/icon/i03-on.svg)} 
i.it.i_04{ background-image: url(../images/icon/i04-on.svg)}
i.it.i_05{ background-image: url(../images/icon/i05-on.svg)} 
i.it.i_06{ background-image: url(../images/icon/i06-on.svg)} 
i.it.i_07{ background-image: url(../images/icon/i07-on.svg)} 
i.it.i_08{ background-image: url(../images/icon/i08-on.svg)} 
i.it.i_09{ background-image: url(../images/icon/i09-on.svg)} 
i.it.i_10{ background-image: url(../images/icon/i10-on.svg)} 
i.it.i_11{ background-image: url(../images/icon/i11-on.svg)} 
i.it.i_12{ background-image: url(../images/icon/i12-on.svg)} 
i.it.i_13{ background-image: url(../images/icon/i13-on.svg)} 
i.it.i_14{ background-image: url(../images/icon/i14-on.svg)} 
i.it.i_15{ background-image: url(../images/icon/i15-on.svg)} 
i.it.i_16{ background-image: url(../images/icon/i16-on.svg)} 
i.it.i_17{ background-image: url(../images/icon/i17-on.svg)} 
i.it.i_18{ background-image: url(../images/icon/i18-on.svg)} 
i.it.i_19{ background-image: url(../images/icon/i19-on.svg)} 
i.it.i_20{ background-image: url(../images/icon/i20-on.svg)} 
i.it.i_21{ background-image: url(../images/icon/i21-on.svg)} 
i.it.i_22{ background-image: url(../images/icon/i22-on.svg)} 
i.it.i_23{ background-image: url(../images/icon/i23-on.svg)} 
i.it.i_24{ background-image: url(../images/icon/i24-on.svg)} 
i.it.i_25{ background-image: url(../images/icon/i25-on.svg)} 
i.it.i_26{ background-image: url(../images/icon/i26-on.svg)}
i.it.i_27{ background-image: url(../images/icon/i27-on.svg)} 
i.it.i_28{ background-image: url(../images/icon/i28-on.svg)} 
i.it.i_29{ background-image: url(../images/icon/i29-on.svg)} 
i.it.i_30{ background-image: url(../images/icon/i30-on.svg)}
i.it.i_31{ background-image: url(../images/icon/i31-on.svg)}  

/*淡色底*/
i.it.light.i_01{ background-image: url(../images/icon/i01.svg)}
i.it.light.i_02{ background-image: url(../images/icon/i02.svg)} 
i.it.light.i_03{ background-image: url(../images/icon/i03.svg)} 
i.it.light.i_04{ background-image: url(../images/icon/i04.svg)} 
i.it.light.i_05{ background-image: url(../images/icon/i05.svg)} 
i.it.light.i_06{ background-image: url(../images/icon/i06.svg)} 
i.it.light.i_07{ background-image: url(../images/icon/i07.svg)} 
i.it.light.i_08{ background-image: url(../images/icon/i08.svg)} 
i.it.light.i_09{ background-image: url(../images/icon/i09.svg)} 
i.it.light.i_10{ background-image: url(../images/icon/i10.svg)} 
i.it.light.i_11{ background-image: url(../images/icon/i11.svg)} 
i.it.light.i_12{ background-image: url(../images/icon/i12.svg)} 
i.it.light.i_13{ background-image: url(../images/icon/i13.svg)}
i.it.light.i_13.blue { background-image: url(../images/icon/i13-blue.svg)}
i.it.light.i_13.gold { background-image: url(../images/icon/i13-gold.svg)}
i.it.light.i_14{ background-image: url(../images/icon/i14.svg)} 
i.it.light.i_15{ background-image: url(../images/icon/i15.svg)} 
i.it.light.i_16{ background-image: url(../images/icon/i16.svg)} 
i.it.light.i_17{ background-image: url(../images/icon/i17.svg)} 
i.it.light.i_18{ background-image: url(../images/icon/i18.svg)} 
i.it.light.i_19{ background-image: url(../images/icon/i19.svg)} 
i.it.light.i_20{ background-image: url(../images/icon/i20.svg)} 
i.it.light.i_21{ background-image: url(../images/icon/i21.svg)} 
i.it.light.i_22{ background-image: url(../images/icon/i22.svg)} 
i.it.light.i_23{ background-image: url(../images/icon/i23.svg)} 
i.it.light.i_24{ background-image: url(../images/icon/i24.svg)} 
i.it.light.i_25{ background-image: url(../images/icon/i25.svg)} 
i.it.light.i_26{ background-image: url(../images/icon/i26.svg)}
i.it.light.i_27{ background-image: url(../images/icon/i27.svg)} 
i.it.light.i_28{ background-image: url(../images/icon/i28.svg)} 
i.it.light.i_29{ background-image: url(../images/icon/i29.svg)}
i.it.light.i_30{ background-image: url(../images/icon/i30.svg)}
i.it.light.i_31{ background-image: url(../images/icon/i31.svg)}

/*橘底*/
i.it.i_07_or{ background-image: url(../images/icon/i07-or.svg)}
i.it.i_24_or{ background-image: url(../images/icon/i24-or.svg)}
i.it.i_09_gd{ background-image: url(../images/icon/i09-gd.svg)}  


/* ----- formBtn ----- */
.formBtn {
	width:100%;
	text-align:center;
	margin:15px auto 10px;
}
.formBtn .box {
	margin:-5px;
}
.formBtn a,
.formBtn button {
	position:relative;	
	display:inline-block;
	width:calc(100% - 10px);
	color:#fff;
	font-family:"PingFang TC Semibold", "微软雅黑", "Microsoft YaHei";
	font-size:1.9em;
	font-weight:bold;
	line-height:25px;
	padding:15px 0;
	margin:5px auto;
	border:none;
	cursor:pointer;
	background:#40633f;
	box-sizing:border-box;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
            border-radius:5px;
}
.formBtn a:hover,
.formBtn a:focus,
.formBtn button:hover,
.formBtn button:focus {
	background:#D14600;
}
.formBtn a span,
.formBtn button span {
	position:relative;
	display:inline-block;
	padding:0 30px 0 0;
}
.formBtn a span:before,
.formBtn button span:before {
	content:"";
	display:block;
	position:absolute;
	top:1px;
	right:0;
	width:25px;
	height:25px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
	z-index:1;
	-webkit-border-radius:100px;
	   -moz-border-radius:100px;
            border-radius:100px;
}
.formBtn .btnSend span:before {background-image:url(../images/btnSend.svg);}
.formBtn .btnNext span:before {background-image:url(../images/btnNext.svg);}
.formBtn .btnMail span:before {background-image:url(../images/btnMail.svg);}
.formBtn .btnBack span:before {background-image:url(../images/btnBack.svg);}
@media screen and (max-width:360px) {
	.formBtn a span:after,
	.formBtn button span:after{ display:none;}
}
@media screen and (min-width:991px){
	.formBtn {margin-top:20px;}
}
@media screen and (min-width:1200px) {
	.formBtn a,
	.formBtn button {font-size:2.1em; padding:20px 0;}
}


/* ----- PopBtn ----- */
.PopBtn {
	width:100%;
	text-align:center;
	margin:20px auto 0 auto;
}
.PopBtn a,
.PopBtn button {
	position:relative;	
	display:inline-block;
	width:100%;
	max-width:180px;
	color:#fff;
	font-family:"PingFang TC Semibold", "微软雅黑", "Microsoft YaHei";
	font-size:1.7em;
	font-weight:bold;
	padding:15px 0;
	border:none;
	cursor:pointer;
	background:#2e7d46;
	box-sizing:border-box;
	margin:3px;	
	border-radius:5px;
}
.PopBtn a.btnClear,
.PopBtn button.btnClear {
	background:#666;
}
.PopBtn a:hover,
.PopBtn a:focus,
.PopBtn button:hover,
.PopBtn button:focus {
	background:#D14600;
}
.PopBtn a span,
.PopBtn button span {
	position:relative;
	display:inline-block;
	padding:0 30px 0 0;
}
.PopBtn a span:before,
.PopBtn button span:before {
	content:"";
	display:block;
	position:absolute;
	top:1px;
	right:0;
	width:25px;
	height:25px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
	z-index:1;
	-webkit-border-radius:100px;
	   -moz-border-radius:100px;
            border-radius:100px;
}
.PopBtn .btnSend span:before {background-image:url(../images/btnNext.svg);}
.PopBtn .btnClear span:before {background-image:url(../images/btnClear.svg);}

/* ----- PopBox ----- */
.PopBox{
	margin:30px 20px;
}
.PopBox .txt {
	position:relative;
	display:flex;
	width:100%;
	max-width:max-content;
	flex-direction:column;
	justify-content:center;
	padding-left:70px;
	box-sizing:border-box;
}
.PopBox .txt:before {
    content:"";
    display:block;
    position:absolute;
	left:0;
    top:0;
    width:60px;
    height:60px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
	background-color:#cc9933;
	-webkit-mask-image:url(../images/logout.svg);
	mask-image:url(../images/logout.svg);
	-webkit-mask-size:60px 60px;
	mask-size:60px 60px;
	z-index:2;
}
.PopBox .txt strong {
    font-family: "微软雅黑", "微軟正黑體";	
	font-size:1.8em;
	line-height:165%;
}
.PopBox .txt p {
	color:#666;
	font-size:1.5em;
	line-height:165%;
}
@media screen and (max-width:480px){
	.PopBtn a,
	.PopBtn button {
		max-width:130px;
		font-size:1.6em;
		padding:12px 0;
		margin:2px;
	}
	.PopBox .txt {padding-left:0;}		
	.PopBox .txt:before{display:none;}
	.PopBox .txt p {font-size:1.4em;}	

}
@media screen and (max-width:360px){
	.PopBtn a,
	.PopBtn button {max-width:116px;}	
	.PopBtn a span,
	.PopBtn button span {padding:0;}	
	.PopBtn a span:before,
	.PopBtn button span:before {display:none;}	
}	
@media screen and (min-width:991px){
	.PopBtn {margin-top:20px;}
	.PopBox{margin:40px 30px;}
	.PopBox .txt {padding-left:110px;}	
	.PopBox .txt:before {
		width:100px;
		height:100px;
		-webkit-mask-size:100px 100px;
		mask-size:100px 100px;
	}		
}
@media screen and (min-width:1200px) {
	.PopBtn a,
	.PopBtn button {font-size:1.8em;}
	.PopBox .txt strong {font-size:1.9em;}
	.PopBox .txt p {font-size:1.6em;}	
}



/*PRINT*/
@media print {
	body {
		margin:0!important;
		padding:0!important;
	}
	h1, h2, h3, h4, h5, h6 {
		page-break-after:avoid;
		page-break-inside:avoid;
	}
	blockquote, table, pre {
		page-break-inside:avoid;
	}
	ul, ol, dl {
		page-break-before:avoid;
	}
	img {
		max-width:100%!important;
		page-break-inside:avoid;
	}
	#addon,
	#navMenu,
	.searchZone,
	.donate,
	.fatfooter .trigger,
	.fatfooter .fat-nav,
	.faqHelper,
	#gMenu {
		display:none!important;
	}
	#wrapper {
		padding-top:60px;
		background:none!important;
	}
	#header {
		position:absolute!important;
		background:#FFFFFF!important;
	}
	#footer {
		padding:20px!important;
	} 
	.add_info {
		padding:0!important;
		margin:0 auto;
	}
}
@page {
	size:A4 portrait; /*a4尺寸 直式 */
    margin:1cm; /*邊距1公分 */
    orphans:2; /*頁面最後一段段落行數，預設值為2 */
    widows:2; /*頁面第一段段落行數，預設值為2 */
}
/* ===== 本站保留：loggedBox 登出表單（本站為真 POST 登出） ===== */
.loggedBox .logout-form{display:inline;}
.loggedBox button.logout_btn{border:0;cursor:pointer;font-size:1em;}
