@charset "utf-8";
/* CSS Document */
#Center .guide_title { position:absolute; top:0; left:0; }

/*----------------------------------------------------------------------*/
/* 首頁區塊 */
.IndexBlock { position:relative; margin:100px 0; }
	@media screen and (max-width: 1023px) {
	.IndexBlock { padding-left:20px; padding-right:20px; }
	}
	@media screen and (min-width: 1024px) {
	.IndexBlock { padding-left:40px; padding-right:40px; }
	}
.IndexBlock > div { max-width:1600px; margin-left:auto; margin-right:auto; box-sizing:content-box; }

.index_block_title { margin-bottom:50px; }
.index_block_title h2 { position:relative; display:inline-block; }
.index_block_title h2 .text { 
	display:flex; align-items:center; padding-right:25px; color:#0d3d89; line-height:1em; font-family:'Noto Sans TC', sans-serif; font-weight:700; letter-spacing:0.1em;
	}
.index_block_title h2 .en { 
	position:absolute; display:flex; align-items:center; 
	color:#5da65f; line-height:48px; font-family:'Montserrat', sans-serif; font-weight:600; font-size:1rem; text-transform:uppercase;
	}
.index_block_title h2 .en::after { content:''; display:block; width:60px; border-top:1px solid #5da65f; margin-left:10px; }
	@media screen and (max-width: 799px) {
	.index_block_title h2 .text { font-size:2.25rem; }
	}
	@media screen and (min-width: 800px) {
	.index_block_title h2 .text { font-size:3rem; }
	}
.index_block_title h2::before { content:''; display:block; position:absolute; top:6px; right:0; width:10px; height:10px; background-color:#5da65f; }
.index_block_title h2::after { content:''; display:block; position:absolute; top:18px; right:0; width:10px; height:10px; background-color:#0d3d89; }
.index_block_title h2 .text::before { content:''; display:block; position:absolute; top:6px; right:12px; width:10px; height:10px; background-color:#0d3d89; }
.index_block_title h2 .text::after { content:''; display:block; position:absolute; top:18px; right:12px; width:10px; height:10px; background-color:#2961ac; }

	@media screen and (max-width: 639px) {
	.index_block_title h2 .en { bottom:100%; left:0; }
	}
	@media screen and (min-width: 640px) {
	.index_block_title h2 .en { top:5px; left:-12px; transform-origin:left top; transform:rotate(90deg); }
	}

.index_btn_more { text-align:center; }
	@media screen and (max-width: 1023px) {
	.index_btn_more { margin-top:44px; }
	}
	@media screen and (min-width: 1024px) {
	.index_btn_more { margin-top:54px; }
	}
.index_btn_more a { 
	display:inline-flex; align-items:center; padding-left:24px; border:2px solid #333; background-color:#fff;
	font-family:'Noto Sans TC', sans-serif; font-weight:500; font-size:1.25rem; color:#333; line-height:60px; text-decoration:none; 
	}
	.IndexBlock .index_btn_more a:hover, 
	.IndexBlock .index_btn_more a:focus { border-color:#2962ad; background-color:#2962ad; box-shadow:0 0 15px rgba(0,0,0,0.4); color:#fff; }
.index_btn_more a span { 
	display:block; margin-left:20px; width:48px; height:60px; position:relative; 
	}
.index_btn_more a span::before { 
	content:''; display:block; position:absolute; top:50%; left:0; height:30px; margin-top:-15px; border-left:1px solid #333;
	}
.index_btn_more a span::after { 
	content:''; display:block; position:absolute; top:50%; right:15px; margin-top:-10px; width:20px; height:20px; 
	background:url(../images/icon_arrows.png) no-repeat 0 33.33%; background-size:100%; 
	}
	.IndexBlock .index_btn_more a:hover span::before, 
	.IndexBlock .index_btn_more a:focus span::before { border-color:#fff; }
	.IndexBlock .index_btn_more a:hover span::after, 
	.IndexBlock .index_btn_more a:focus span::after { background-position:0 100%; }


/*----------------------------------------------------------------------*/
/* 前言 */
.IndexIntro { margin-top:40px; }
.IndexIntro > div { display:flex; align-items:stretch; justify-content:space-between; flex-wrap:wrap; }

.IndexIntro .cont .title h2 { 
	display:inline-block; font-family:'Noto Sans TC', sans-serif; font-weight:700; font-size:3rem; line-height:1.25em; letter-spacing:0.1em;
	color:transparent; background:linear-gradient(90deg, #0d3d89, #2962ad); -webkit-background-clip:text; background-clip:text; 
	}
.IndexIntro .img { background-repeat:no-repeat; background-position:center center; background-size:contain; }
.IndexIntro .desc { position:relative; margin-top:30px; }
.IndexIntro .desc::before, .IndexIntro .desc::after { 
	content:''; display:block; position:absolute; background:url("../images/icon_index_intro.png") no-repeat; background-size:100%; width:60px; height:60px;
	}
	.IndexIntro .desc::before { left:0; top:0; background-position:0 0; }
	.IndexIntro .desc::after { right:0; bottom:0; background-position:0 100%; }

/* RWD */
@media screen and (max-width: 1023px) {
.IndexIntro .cont .title { text-align:center; }
.IndexIntro .cont { width:100%; }
.IndexIntro .desc { padding:48px 80px; }
.IndexIntro .img { width:100%; max-width:400px; height:480px; margin:30px auto 0; }
}
	@media screen and (max-width: 639px) {
	.IndexIntro .desc::before, .IndexIntro .desc::after { width:40px; height:40px; }
	}

	@media screen and (max-width: 479px) {
	.IndexIntro .desc { padding:48px 0; }
	}
	@media screen and (min-width: 480px) and (max-width: 639px) {
	.IndexIntro .desc { padding:32px 50px; }
	}

	@media screen and (max-width: 799px) {
	.IndexIntro .cont .title h2 { font-size:2.25rem; }
	}

	@media screen and (max-width: 479px) {
	.IndexIntro .img { height:auto; padding-bottom:120%; }
	}
@media screen and (min-width: 1024px) and (max-width: 1439px) {
.IndexIntro .cont { width:54%; }
.IndexIntro .desc { padding:32px 50px; }
.IndexIntro .desc::before, .IndexIntro .desc::after { width:40px; height:40px; }
.IndexIntro .img { width:44%; }
}
	@media screen and (min-width: 1024px) and (max-width: 1279px) {
	.IndexIntro .desc { padding:48px 0; }
	}
@media screen and (min-width: 1440px) {
.IndexIntro .cont { width:48.75%; }
.IndexIntro .desc { padding:48px 80px; }
.IndexIntro .img { width:50%; }
}


/*----------------------------------------------------------------------*/
/* 最新消息 */
.IndexNews { margin-bottom:0; padding-bottom:100px; }
.IndexNews::before { 
	content:''; display:block; position:absolute; bottom:0; left:0; z-index:-1;
	background:url("../images/imdex_news_bg_left.png") no-repeat left center; background-size:contain; 
	}
.IndexNews::after { 
	content:''; display:block; position:absolute; top:-40px; right:0; z-index:-1;
	background:url("../images/imdex_news_bg_right.png") no-repeat right center; background-size:contain; 
	}
	@media screen and (max-width:767px) {
	.IndexNews::before { width:80vw; height:31.5vw; }
	.IndexNews::after { width:50.5vw; height:21.875vw; }
	}
	@media screen and (min-width: 768px) {
	.IndexNews::before { width:714px; height:270px; }
	.IndexNews::after { width:436px; height:189px; }
	}

@media screen and (min-width: 640px) {
.IndexNews > div { padding-left:60px; }
}

.IndexNews .index_btn_more { text-align:right; }

/* 列表 */
.index_news_list .date { 
	position:relative; color:#666; font-family:'Montserrat', sans-serif; line-height:1.875em; white-space:nowrap; 
	}
.index_news_list .date::before { 
	content:''; display:block; position:absolute; right:0; height:2rem; border-left:1px solid #000; opacity:0.25; transform:rotate(45deg); 
 	}
.index_news_list .cat div { 
	display:inline-block; position:relative; color:#333; font-size:1.125rem; line-height:1.66em; white-space:nowrap; 
	}
.index_news_list .cat div::before { 
	content:''; display:block; position:absolute; bottom:3px; left:0; width:100%; height:10px; background-color:#59bdd5; z-index:1;
 	}
.index_news_list .cat span { display:inline-block; position:relative; z-index:2; }
.index_news_list .title { position:relative; }
.index_news_list .title a { color:#333; font-family:'Noto Sans TC', sans-serif; font-weight:500; font-size:1.5rem; line-height:1.5em; text-decoration:none; }
	.index_news_list .title a:hover, .index_news_list .title a:focus { color:#2962ad; text-decoration:underline; }
.index_news_list .title a::after { 
	content:''; display:block; position:absolute; top:50%; margin-top:-11px; width:22px; height:22px; 
	background:url(../images/icon_arrows.png) no-repeat 0 0; background-size:100%;
	}
	.index_news_list .title a:hover::after, .index_news_list .title a:focus::after { background-position:0 66.66%; }

/* RWD */
@media screen and (max-width: 1023px) {
.index_news_list li { display:flex; align-items:center; flex-wrap:wrap; background-color:#f8f8f8; border-radius:10px; margin-top:15px; }
	.index_news_list li:first-child { margin-top:0; }
.index_news_list .date::before { top:0; }
.index_news_list .title { width:100%; margin-top:10px; }
.index_news_list .title a::after { right:0; }
}
	@media screen and (max-width: 479px) {
	.index_news_list li { padding:20px 20px; }
	.index_news_list .date { padding-right:20px; }
	.index_news_list .cat { padding-left:20px; }
	.index_news_list .title a { font-size:1.375rem; }
	.index_news_list .title a::after { display:none; }
	}
	@media screen and (min-width: 480px) and (max-width: 1023px) {
	.index_news_list li { padding:25px 30px; }
	.index_news_list .date { padding-right:30px; }
	.index_news_list .cat { padding-left:30px; }
	.index_news_list .title { padding-right:30px; }
	}
@media screen and (min-width: 1024px) {
.index_news_list ul { display:table; width:100%; border-collapse:separate; border-spacing:0 15px; margin:-15px 0; }
.index_news_list li { display:table-row; }
.index_news_list li > div { display:table-cell; padding:25px 30px; background-color:#f8f8f8; vertical-align:top; }
	.index_news_list li > div:first-child { border-radius:10px 0 0 10px; }
	.index_news_list li > div:last-child { border-radius:0 10px 10px 0; }
.index_news_list .date { padding-left:40px; padding-right:40px; text-align:center; }
.index_news_list .date::before { top:25px; }
.index_news_list .cat { padding-left:40px; padding-right:30px; text-align:center; }
.index_news_list .title { padding-right:60px; }
.index_news_list .title a::after { right:19px; }
}
	@media screen and (min-width: 960px) and (max-width: 1279px) {
	.index_news_list  { padding:12px 10px; }
	}
/*
.index_news_list {  }
.index_news_list table { width:100%; }
.index_news_list table tr:first-child { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(1px, 1px, 1px, 1px); border:0; white-space:nowrap; }
.index_news_list td.date { 
	position:relative; color:#666; font-family:'Montserrat', sans-serif; line-height:1.875em; white-space:nowrap; 
	}
.index_news_list td.date::before { 
	content:''; display:block; position:absolute; top:25px; right:0; height:2rem; border-left:1px solid #000; opacity:0.25; transform:rotate(45deg); 
 	}
.index_news_list td.cat div { 
	display:inline-block; position:relative; color:#333; font-size:1.125rem; line-height:1.66em; white-space:nowrap; 
	}
.index_news_list td.cat div::before { 
	content:''; display:block; position:absolute; bottom:3px; left:0; width:100%; height:10px; background-color:#59bdd5; z-index:1;
 	}
.index_news_list td.cat span { display:inline-block; position:relative; z-index:2; }
.index_news_list td.title { position:relative; }
.index_news_list td.title a { color:#333; font-family:'Noto Sans TC', sans-serif; font-weight:500; font-size:1.25rem; line-height:1.5em; text-decoration:none; }
	.index_news_list td.title a:hover, .index_news_list td.title a:focus { color:#2962ad; text-decoration:underline; }
.index_news_list td.title a::after { 
	content:''; display:block; position:absolute; top:50%; right:19px; margin-top:-11px; width:22px; height:22px; 
	background:url(../images/icon_arrows.png) no-repeat 0 0; background-size:100%;
	}
	.index_news_list td.title a:hover::after, .index_news_list td.title a:focus::after { background-position:0 66.66%; }

@media screen and (max-width: 959px) {
.index_news_list table, .index_news_list table tbody, .index_news_list table tr, .index_news_list table th, .index_news_list table td { display:block; }
.index_news_list tr { padding:20px 20px; border:1px solid #e5e5e5; margin-bottom:30px; }
	.index_news_list tr:last-child { margin-bottom:0; }
.index_news_list td.desc { margin-top:10px; }
.ListTable.style1 td.desc a { margin-top:10px; padding:0 30px; font-size:0.9375rem; line-height:36px; }
}
	@media screen and (max-width: 639px) {
	.index_news_list tr { padding:12px 10px; }
	.index_news_list td.title a { font-size:1.375rem; }
	.index_news_list td.desc div { font-size:1rem; }
	}
	@media screen and (max-width: 479px) {
	.index_news_list td.desc div { max-height:8em; -webkit-line-clamp:4; }
	}
@media screen and (min-width: 960px) {
.index_news_list table { border-collapse:separate; border-spacing:0 15px; margin:-15px 0;}
.index_news_list td { padding:25px 30px; background-color:#f8f8f8; vertical-align:top; }
	.index_news_list table td:first-child { border-radius:10px 0 0 10px; }
	.index_news_list table td:last-child { border-radius:0 10px 10px 0; }
.index_news_list td.date { padding-left:40px; padding-right:40px; text-align:center; }
.index_news_list td.cat { padding-left:40px; padding-right:30px; text-align:center; }
.index_news_list td.title { padding-right:60px; }
}
	@media screen and (min-width: 960px) and (max-width: 1279px) {
	.index_news_list td { padding:12px 10px; }
	.index_news_list td.title a { font-size:1.375rem; }
	.index_news_list td.desc div { font-size:1rem; }
	}*/


/*----------------------------------------------------------------------*/
/* 諮詢方式與服務時間 */
.IndexService { background:url(../images/bg_index_service.png) repeat center center; margin-top:0; margin-bottom:0; padding-top:60px; padding-bottom:70px; }
.IndexService .index_block_title { margin-bottom:85px; text-align:center; }
.IndexService .index_block_title h2::after { 
	content:''; display:block; position:absolute; top:100%; left:50%; width:120px; height:6px; margin-left:-60px; z-index:99998;
	background:linear-gradient(90deg, #0d3d89 0%, #0d3d89 33.33%, #2962ad 33.33%, #2962ad 66.66%, #5da65f 66.66%, #5da65f 100%);
	}
.IndexService .index_block_title h2 .text { padding:10px 0; line-height:1.25em; color:#fff; font-size:3rem; letter-spacing:0.15em; }
.IndexService .index_block_title h2::before,
.IndexService .index_block_title h2 .text::before,
.IndexService .index_block_title h2 .text::after { display:none; }

.index_service_list .item { background-color:#fff; box-shadow:0 0 30px rgba(0,0,0,0.6); border-radius:10px; position:relative; }
.index_service_list .item a { display:inline-block; text-decoration:none; }
.index_service_list .sn { 
	position:absolute; width:72px; height:72px; background-color:#a9c609; border-radius:50%; 
	line-height:72px; text-align:center; font-size:1.875rem; color:#fff; font-family:'Montserrat', sans-serif; font-weight:700; 
	}
.index_service_list .icon { width:72px; height:72px; background:url(../images/icon_index_contact.png) no-repeat; background-size:100%; }
	.index_service_list .email .icon { background-position:0 0; }
	.index_service_list .tel .icon { background-position:0 50%; }
	.index_service_list .time .icon { background-position:0 100%; }
.index_service_list .title { margin-top:10px; text-align:center; font-family:'Noto Sans TC', sans-serif; font-size:1.875rem; font-weight:700; letter-spacing:0.1em; }
.index_service_list .desc { margin-top:20px; text-align:center; }
.index_service_list .desc span { display:inline-block; padding:0 2px; font-family:'Montserrat', sans-serif; font-size:1.5rem; font-weight:700; color:#2962ad; }

/* RWD */
@media screen and (max-width: 639px) {
.index_service_list .item { padding:30px 20px; margin-top:60px; }
	.index_service_list .item:first-child { margin-top:0; }
.index_service_list .sn { top:-36px; left:25px; }
.index_service_list .icon { margin:0 auto; }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
.IndexService .index_block_title { margin-bottom:60px; }

.index_service_list { padding-left:40px; }
.index_service_list .item { padding:30px 20px 30px 60px; margin-top:30px; display:flex; align-items:center; flex-wrap:wrap; }
	.index_service_list .item:first-child { margin-top:0; }
.index_service_list .sn { top:50%; left:-36px; margin-top:-36px; }
.index_service_list .icon { margin-right:20px; }
.index_service_list .title { margin-right:20px; }
}
@media screen and (min-width: 1024px) {
.index_service_list { display:flex; justify-content:space-between; }
.index_service_list .item { width:32%; max-width:400px; padding:45px 10px 30px 10px; }
.index_service_list .sn { top:-36px; left:25px; }
.index_service_list .icon { margin:0 auto; }
}


/*----------------------------------------------------------------------*/
/* 外網連結 */
.IndexLinks { margin-bottom:120px; }
@media screen and (min-width: 640px) {
.IndexLinks > div { padding-left:60px; }
}
.IndexLinks .index_block_title { margin-bottom:40px; }

.IndexLinks .index_btn_more { text-align:right; }

/* list */
.index_links_list { padding:0 48px; position:relative; }
.index_links_list ul { position:static; }
.index_links_list li { height:100%; padding:0 10px; }
.index_links_list li a { 
	height:100px; max-width:200px; margin:0 auto; text-decoration:none; 
	display:flex; align-items:center; justify-content:center; border:1px solid #cacaca; background-color:#fff;
	}
.index_links_list li a:hover, .index_links_list li a:focus { border-color:000; box-shadow:0 0 10px rgba(0,0,0,0.3); }
.index_links_list li img { display:block; width:auto; max-width:90%; max-height:90%; }

/* owl-carousel */
.index_links_list .owl-carousel {  }
.index_links_list .owl-stage-outer {  }
.index_links_list .owl-stage { display:flex; }
.index_links_list .owl-item { flex:0 1 auto; padding-top:10px; padding-bottom:10px; }

.index_links_list .owl-nav > div {
	position:absolute; top:50%; border:1px solid #cdcdcd; background-color:rgba(255,255,255,0.7); text-indent:-999px; z-index:9999; overflow:hidden; transition:all 0.3s ease;
	}
	.index_links_list .owl-nav > div:hover { border-color:#2962ad; background-color:#2962ad; box-shadow:0 0 10px rgba(0,0,0,0.3); }
.index_links_list .owl-nav > div::after { 
	content:''; display:block; position:absolute; top:50%; background:url(../images/icon_arrows.png) no-repeat 0 0; background-size:100%;
	}
	.index_links_list .owl-nav .owl-prev::after { left:50%; transform:rotate(180deg); }
	.index_links_list .owl-nav .owl-next::after { right:50%; }
.index_links_list .owl-nav > div:hover::after { background-position:0 100%; }
.index_links_list .owl-nav .disabled { display:none; }

@media screen and (max-width: 639px) {
.index_links_list .owl-nav > div { margin-top:-18px; width:36px; height:36px; }
.index_links_list .owl-nav .owl-prev { left:0; }
.index_links_list .owl-nav .owl-next { right:0; }
.index_links_list .owl-nav > div::after { width:16px; height:16px; margin-top:-8px; }
.index_links_list .owl-nav .owl-prev::after { margin-left:-8px; }
.index_links_list .owl-nav .owl-next::after { margin-right:-8px; }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
.index_links_list .owl-nav > div { margin-top:-20px; width:40px; height:40px; }
.index_links_list .owl-nav .owl-prev { left:0; }
.index_links_list .owl-nav .owl-next { right:0; }
.index_links_list .owl-nav > div::after { width:20px; height:20px; margin-top:-10px; }
.index_links_list .owl-nav .owl-prev::after { margin-left:-10px; }
.index_links_list .owl-nav .owl-next::after { margin-right:-10px; }
}
@media screen and (min-width: 1024px) {
.index_links_list .owl-nav > div { margin-top:-24px; width:48px; height:48px; }
.index_links_list .owl-nav .owl-prev { left:0; }
.index_links_list .owl-nav .owl-next { right:0; }
.index_links_list .owl-nav > div::after { width:20px; height:20px; margin-top:-10px; }
.index_links_list .owl-nav .owl-prev::after { margin-left:-10px; }
.index_links_list .owl-nav .owl-next::after { margin-right:-10px; }
}

.index_links_list .owl-dots { position:absolute; left:0; bottom:-20px; width:100%; text-align:center; line-height:0; }
.index_links_list .owl-dots .owl-dot { 
	display:inline-block; border:1px solid #cecece; background-color:#fff; width:12px; height:12px; margin:0 5px; 
	}
.index_links_list .owl-dots .owl-dot.active, .index_links_list .owl-dots .owl-dot:hover { 
	border-color:#59bdd5; background-color:#59bdd5;
	}

