@charset "utf-8";
/* 共用基本樣式 */
@import url("help/reset.css");
@import url("../fontawesome/css/all.css");
@import url("help/grid.css");
@import url("help/progress.css");
@import url("editor.css");
@font-face {
  font-family: 'Nunito';
  src: url('../fontawesome/Nunito-SemiBold.woff') format("woff");
}
/********************************************************************************************* 
1.  Basic Style            
*********************************************************************************************/
*, *::after, *::before {
  box-sizing: border-box;
}
.moreBtn a:before, .moreBtn a:after, .moreBtn span, .Item:hover:before, .btn02 i:before, .btn02 i:after {
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}
body {
  font-family: "Nunito", Helvetica, Arial, "Microsoft JhengHei", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  color: #000;
  font-size: 16px;
  overflow-x: hidden;
  background-size: 50rem auto;
}
@media(max-width: 1240px) {
  body {
    background-size: 100%;
  }
}
sup {
  vertical-align: super;
  font-size: smaller;
}
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
a {
  cursor: pointer;
  color: #000;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: underline;
}
a:hover, a:active, a:focus {
  text-decoration: none;
  color: #ff184e;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media (max-width: 1240px) {
  .header-fixed .container {
    width: 100%;
  }
}
.container {
  width: 90%;
  max-width: 1530px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
img {
  width: 100%;
  display: block;
}
main {
  overflow: hidden;
}
#main-inner {
  background: url(../images/inner_bg.jpg) no-repeat center -150px;
}
main p {
  line-height: 1.5;
}
/**-------------------------------------------------------------------------------header**/
header {
  margin: 0px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 101;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.4s ease;
}
#header {}
header .TopBox {
  background: #fff;
}
header .TopBox .container {
  display: flex;
  align-items: center;
}
@media(max-width: 1240px) {
  header .TopBox {
    padding: 0px;
  }
  header .TopBox .container {
    display: block;
  }
}
header .right {
  margin-left: auto;
}
header .userID {
  text-align: right;
  min-height: 10px;
  margin-right: 10px;
}
header .right-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: flex-end;
}
header .right-menu .user_name {
  display: flex;
  align-items: center;
}
header .right-menu .user_name a {
  padding: 9px 15px;
  margin-right: 5px;
  border-radius: 20px;
  background: #c488b4;
  color: #fff;
  display: flex;
  align-items: center;
}
header .right-menu .cotant a {
  padding: 9px 15px;
  margin-right: 5px;
  border-radius: 20px;
  background: #ff7693;
  color: #fff;
  display: flex;
  align-items: center;
}
header .right-menu .cotant img, header .right-menu .user_name img {
  width: 15px;
  margin-right: 5px;
}
header .right-menu .user_name a:hover {
  background: #98599f;
  color: #fff;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  color: #fff;
}
header .right-menu .cotant a:hover {
  background: #ff184e;
  color: #fff;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  color: #fff;
}
.header-fixed .logo {
  float: left;
  width: 370px;
  z-index: 2;
  position: relative;
  transition: all 0.4s ease;
}
.header-fixed {
  transition: all 0.4s ease;
}
.header-fixed.shrink {
  transition: all 0.4s ease;
  margin-top: -70px;
}
@media(max-width: 1240px) {
  header {
    height: 50px;
    background: #fff;
  }
  .header-fixed.shrink {
    margin-top: 0px;
  }
  header .header-fixed {
    display: none;
  }
}
.header-fixed .logo a {
  display: block;
  background: url(../images/logo.svg)no-repeat left center;
  background-size: contain;
  height: 65px;
  text-indent: -9999px;
}
@media(max-width: 1240px) {
  .header-fixed .logo a {
    height: 40px;
    margin-left: 10px;
    margin-top: 5px;
  }
}
header .shrink {
  transition: all 0.4s ease;
}
@media (max-width: 1240px) {
  header .right {
    margin-top: 0px;
  }
  .Sub-menu, header .userID {
    display: none;
  }
  header .user-login {
    margin-top: 0px;
  }
}
.Sub-menu > a {
  float: left;
  line-height: 30px;
  padding: 5px 10px;
  position: relative;
  color: #c59e13;
}
/*icon_EN*/
.Sub-menu .language:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  border-radius: 50%;
  background-color: #efe5c2;
}
.Sub-menu .language:hover:after {
  width: 45px;
  height: 45px;
}
/*內頁Top*/
#TopArea {
  margin-top: 110px;
  position: relative;
  padding: 40px 0px 0px 0px;
}
@media (max-width: 1240px) {
  #TopArea {
    margin-top: 50px;
  }
}
#TopArea .Txt {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
#TopArea .title {
  color: #000;
  font-size: 45px;
  line-height: 1;
  letter-spacing: 2.25px;
  position: relative;
  display: inline-block;
}
#TopArea .subtitle {
  color: #ff184e;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 16px;
  position: relative;
  letter-spacing: 1.5px;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}
#TopArea .subtitle:before {
  content: "";
  display: inline-block;
  background: #ff184e;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 5px;
}
/**麵包屑**/
.breadcrumbs {}
.breadcrumbs li {
  position: relative;
  padding-right: 16px;
  display: inline-block;
}
.breadcrumbs li:after {
  content: "";
  background: url(../images/breadcrumbs_arrow.svg);
  display: block;
  position: absolute;
  top: 50%;
  right: 0px;
  margin-top: -6px;
  width: 7px;
  height: 12px;
}
.breadcrumbs li:last-child {
  padding-right: 0;
}
.breadcrumbs li:last-child:after {
  display: none;
}
.breadcrumbs li a, .breadcrumbs li span {
  display: inline-block;
  font-size: 0.85rem;
  line-height: 1.2;
}
.breadcrumbs li a {
  position: relative;
  text-decoration: none;
}
.breadcrumbs li a:hover:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #ff184e;
}
/**-------------------------------------------------------------------------------內頁資料區塊**/
.dan_wrap {
  width: 100%;
  background: url(../images/inner_bg2.png);
  height: 80px;
  margin-top: -50px;
}
.InMain {
  padding: 0px 0px 25px 0px;
  background: #fff;
}
.wrap {
  line-height: 1.5;
  padding: 0px 30px 50px 30px;
  overflow: hidden;
  min-height: 500px;
}
@media (max-width: 650px) {
  .wrap {
    padding: 20px 10px 20px 10px;
  }
}
.page_title {
  position: relative;
  padding: 30px 30px 20px 30px;
  text-align: center;
  margin-bottom: 20px;
}
.page_title h2 {
  display: inline-block;
}
.page_title h2:before, .page_title h2:after {
  background: url(../images/dots-2.png);
  content: "";
  display: block;
  height: 2px;
  position: relative;
  left: -20px;
  right: -20px;
  width: calc(100% + 40px);
}
.page_title h2:before {
  top: -5px;
}
.page_title h2:after {
  bottom: -5px;
}
.InBox {
  background: #fff;
  min-height: 200px;
  line-height: 1.8;
  padding-bottom: 20px;
}
.menulink {
  margin-bottom: 10px;
}
.Boxtitle h4 {
  padding: 10px 0px 0px 0px;
}
.remarkBox {
  border: 2px solid #cde5eb;
  border-top: 1px solid #cde5eb;
  background: #f5f5f5;
  padding: 10px
}
/*頁面搜尋Bar*/
.page_search {
  position: relative;
  margin: 0px 0px 20px 0px;
  line-height: 1.8;
  padding: 20px 20px 10px 20px;
  background: #f5f5f5;
  border-radius: 20px;
}
.page_search .input-control, .page_search .form-control {
  border: 1px solid #f6f6f6;
}
.page_search .btn-search {
  display: block;
  top: 0;
  right: 0;
  position: absolute;
  padding: 0px 15px;
  height: 34px;
  color: #fff;
  text-align: center;
  border: none;
  background: #0b75be;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  border-radius: 0px 20px 20px 0px;
}
/*文章標題*/
.articleTitle {
  border-bottom: 2px solid #c3c3c3;
  line-height: 1.8;
  color: #000;
  margin: 10px 15px 0px 15px;
}
.articleTitle h3 {
  position: relative;
  padding: 0 0 0 5px;
}
.articleTitle h3:before {
  font-family: FontAwesome;
  font-size: 25px;
  display: inline-block;
  content: '\f0a9';
  color: #6b9ed2;
  padding-right: 5px;
}
/*文章內容*/
.articleinfo {
  text-align: right;
  margin-bottom: 10px;
}
/*文章時間*/
.articleinfo .time {
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.articleinfo .time .fa-clock {
  display: inline-block;
  color: #00749b;
}
/*文章下載區塊*/
.articledow {
  box-shadow: 0 0 1.125rem 0 rgba(0, 0, 0, 0.15);
  padding: 20px;
  margin-top: 20px;
}
.articledow h5 {
  text-align: left;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  color: #10a5c3;
  font-size: 16px;
  font-weight: bold;
}
.articledow ul {
  margin-top: 10px;
}
.articledow ul li {
  padding: 5px 10px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.articledow ul li:not(:last-child) {
  border-bottom: 1px solid #eee;
}
.svg-inline--fa.fa-fw {
  font-size: 18px;
}
.fa-file-word, .fa-file-pdf, .fa-file-excel, .fa-file-powerpoint, .fa-file-archive, .fa-file-image {
  margin-right: 5px;
}
.fa-file-word {
  color: #0b75be;
}
.fa-file-pdf {
  color: #ff6738;
}
.fa-file-excel {
  color: #97c145;
}
.fa-file-powerpoint {
  color: #feb138;
}
.fa-file-archive {
  color: #b87100;
}
.fa-file-image {
  color: #3fb8d7;
}
.btn-style {
  cursor: pointer;
  border: 0;
  background: none;
}
/*按鈕*/
.Btnstyle01 {
  background-color: #fff;
  border-radius: 20px;
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, .12);
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, .12);
  display: block;
  padding: 10px 22px 10px 16px;
  display: inline-block;
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 1;
}
.Btnstyle01:hover {
  color: #10a5c3 !important;
}
.Btnstyle01 svg {
  margin-right: 10px;
  position: relative;
  top: -1px;
  fill: #10a5c3;
}
.Btnstyle01:hover svg {
  -webkit-transform: translate(30%);
  transform: translate(30%);
}
.Btnstyle01 svg {
  -webkit-transition: -webkit-transform ease .2s;
  transition: -webkit-transform ease .2s;
  transition: transform ease .2s;
  transition: transform ease .2s, -webkit-transform ease .2s;
}
/**-------------------------------------------------------------------列表樣式**/
/**列表-消息**/
.NewsList {}
.NewsList li {
  border-bottom: 1px dashed #d2d2d2;
  padding: 20px 0px;
  width: 100%;
  position: relative;
}
.NewsList .Txt {
  display: flex;
}
.NewsList li h4 {
  color: #000;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 20px;
}
.NewsList ul li:hover:after {
  left: 0;
  right: auto;
  width: 100%;
}
.NewsList ul li:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100px;
  height: 2px;
  background-color: #ff184e;
  -webkit-transition: all 0.6s cubic-bezier(1, 0.01, 0.04, 0.96);
  -o-transition: all 0.6s cubic-bezier(1, 0.01, 0.04, 0.96);
  transition: all 0.6s cubic-bezier(1, 0.01, 0.04, 0.96);
}
.NewsList li .date {
  color: #ff184e;
  margin: 0px 10px;
}
/**相簿列表**/
#photoList ul {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
}
#photoList [class^=col-] {
  margin: 0px 0px 25px 0px;
  padding: 15px;
  position: relative;
}
#photoList li > a {
  display: block;
  padding: 30px 15px 15px 15px;
  background: #eee;
  border-radius: 20px;
}
#photoList .c-time {
  top: -15px;
  right: 20px;
  position: absolute;
  z-index: 1;
  color: #333;
}
#photoList .c-time time {
  display: flex;
  align-items: baseline;
}
#photoList .c-time span {
  letter-spacing: 1px;
}
#photoList .c-time .c-time__day {
  font-size: 36px;
}
#photoList li {
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  padding-bottom: 10px;
  line-height: 1.5;
}
#photoList li .pic {
  overflow: hidden;
  display: inline-block;
  border-radius: 20px;
}
#photoList li .pic img {
  transition: all .5s;
}
#photoList li .Txt {
  position: relative;
}
#photoList li .Txt .date {
  color: #10a5c3;
}
#photoList li a:hover {}
#photoList li:hover img {
  transition: all .5s;
  transform: scale(1.06);
}
#photoList li .Txt h4 {
  color: #000;
  font-weight: bold;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
}
/*相片列表*/
#photoArea {
  margin-top: 20px;
}
#photoArea .item a {
  padding: 8px;
  display: flex;
  max-width: 100%;
  height: 280px;
  border: 1px solid #eee;
}
#photoArea .item a:hover {
  border: 1px solid #c59e13;
}
#photoArea .example-image-link img {
  border: 5px solid #fff;
  width: 100%;
  height: auto;
  max-height: 350px;
  object-fit: cover;
}
#photoArea .item a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f00e";
  position: absolute;
  top: 45%;
  left: 50%;
  text-align: center;
  font-size: 18px;
  padding: 8px;
  width: 50px;
  height: 50px;
  margin-left: -25px;
  background: #c59e13;
  border-radius: 50px;
  color: #fff;
  opacity: 0;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
#photoArea .item:hover a:after {
  opacity: 1;
  margin-top: -15px;
}
#photoArea .item:hover img {
  opacity: 0.5
}
#photoArea .item {
  padding: 10px;
  position: relative;
}
#photoArea .masonry {
  margin-top: 10px;
  flex-direction: row;
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
}
#photoArea .date {
  color: #f07c39;
  text-align: center;
}
#photoArea h3.title {
  margin: 0;
  font-size: 1.875rem;
  color: #333;
  text-align: center;
  line-height: 1.5;
  font-weight: bold;
  border-bottom: 1px solid #eee;
}
#photoArea h3.title:after {
  content: "";
  width: 80px;
  height: 4px;
  background: #f07c39;
  display: block;
  position: relative;
  bottom: -2px;
  left: 50%;
  margin-left: -40px;
}
/**學術活動列表**/
#EventList ul {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
}
#EventList [class^=col-] {
  padding: 10px;
  position: relative;
}
#EventList li > a {
  display: block;
  border: 2px solid #fff;
  border-top: 2px solid #fbddec;
  padding: 15px;
}
#EventList li {
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  line-height: 1.5;
}
#EventList .info span {
  padding-bottom: 2px;
  flex-direction: row;
  align-items: center;
  display: flex;
}
#EventList .info span svg:not(:root).svg-inline--fa {
  color: #b5b5b6;
  width: 20px;
  text-align: center;
  margin-right: 5px;
}
#EventList li .Txt {
  padding: 5px 0px 0px 0px;
}
#EventList a:hover {
  border: 2px solid #ff184e;
  color: #000;
}
#EventList li .Txt h4 {
  color: #000;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
/*報名時間*/
.topinfo {
  flex-direction: row;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.topinfo .TagArea {
  margin-bottom: 5px;
}
.topinfo .regTime {
  flex-direction: row;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  background: #eee;
  padding: 0px 10px;
  border-radius: 20px;
  line-height: 2;
}
.topinfo .regTime:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f2f2";
  color: #ff184e;
  margin-right: 5px;
}
/**網站連結列表**/
#LinkList ul li a {
  border: 2px solid #fff;
  border-bottom: 2px solid #fbddec;
  display: block;
  padding: 10px 20px;
}
#LinkList ul li a:hover {
  border: 2px solid #ff184e;
}
#LinkList [class^=col-] {
  margin: 0px 0px 10px 0px;
  line-height: 1.5;
  padding: 0px 10px;
}
#LinkList .title {
  color: #000;
  font-weight: bold;
  font-size: 1.1rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#LinkList .title:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0c1";
  color: #fff;
  background: #f85a7b;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
  font-size: 14px;
}
#LinkList li .brief {
  word-wrap: break-word;
  word-break: normal;
  color: #999999;
}
/*下載列表*/
#DownloadList li {
  padding: 10px;
}
#DownloadList a:hover {
  padding-left: 15px;
  border: 2px solid #ff184e;
  color: #ff184e;
}
#DownloadList a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 15px;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  border: 2px solid #fff;
  border-bottom: 2px solid #fbddec;
  position: relative;
}
.downloadBox {
  margin-left: auto;
}
.downloadBox:after {
  content: '';
  background: url("../images/download_icon.svg");
  width: 35px;
  display: block;
  height: 35px;
  transition: all .5s;
}
#DownloadList a:hover .downloadBox:after {
  background: url("../images/download_icon_o.svg");
  -webkit-transform: translateX(-15px);
  transform: translateX(-15px);
  transition: all .5s;
}
#DownloadList .title {
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 1.5px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#DownloadList .spec {
  color: #999999;
  letter-spacing: 1.5px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/**影片列表**/
.FilmList {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
}
.FilmList .box {
  line-height: 20px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 15px;
}
.FilmList .box .item {
  border: 1px solid #eee;
  margin: 5px;
  border-radius: 20px;
  background-color: #fff;
  overflow: hidden;
}
.FilmList .box .item:hover {
  background-color: #0058a4;
}
.FilmList .box .pic {
  z-index: 1;
  position: relative;
  overflow: hidden;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  transition: all .2s linear;
}
.FilmList .box .item:hover .pic {
  opacity: 0.5;
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  transition: all .2s linear;
}
.FilmList .box .txt {
  padding: 20px 6.006%;
  border-bottom: 1px solid #d9d9d9;
}
.FilmList .box .item:hover .txt, .FilmList .box .item:hover .date {
  color: #fff;
  transition: all .2s linear;
}
.FilmList .date {
  color: #999;
  font-size: 14px;
  padding: 15px 6.006%;
}
.FilmList .box .txt p {
  position: relative;
  padding: 10px 5.1195%;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .025em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 24px;
  text-overflow: ellipsis;
  height: 60px;
}
.FilmList .box .txt p:after, .FilmList .box .txt p:before {
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  background-image: url(../images/img-crn.png);
  background-size: 20px 20px;
  content: '';
  transition: all .2s linear;
}
.FilmList .box .item:hover .txt p:after, .FilmList .box .item:hover .txt p:before {
  background-image: url(../images/img-crn_w.png);
  transition: all .2s linear;
}
.FilmList .box .txt p:before {
  -webkit-transform: rotate(-180deg);
  top: 0;
  left: 0;
  transform: rotate(-180deg);
}
.FilmList .box .txt p:after {
  right: 0;
  bottom: 0;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video-dep {
  padding: 5px 0px 20px 0px;
}
/*登入註冊*/
.loginArea {}
.loginArea:before, .sitemapList .box:before {
  left: 0;
  border: 3px solid #ff7693;
  border-right: none;
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
}
.loginArea:after, .sitemapList .box:after {
  right: 0;
  border: 3px solid #c488b4;
  border-left: none;
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  visibility: inherit;
}
.loginArea:before, .loginArea:after {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  width: 51%;
  height: 100%;
  background-color: #fff;
  content: '';
}
.loginArea .leftBox:after {
  display: block;
  position: absolute;
  top: 5%;
  right: 2px;
  width: 15px;
  height: 90%;
  bottom: 5%;
  background-image: url(../images/line-block.png);
  background-repeat: repeat-y;
  background-size: contain;
  content: '';
}
@media (max-width: 992px) {
  .loginArea .leftBox:after {
    bottom: 0px;
    background-repeat: repeat-x;
    width: 100%;
    height: 10px;
    top: auto;
  }
}
.loginArea .conBox {
  border-radius: 40px;
  margin: 15px;
  padding: 20px;
}
.loginArea .rightBox .conBox {
  background: #fff;
}
.loginArea h4 {
  text-align: center;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding-bottom: 12px;
  font-size: 22px;
  color: #000;
  font-weight: bold;
}
.loginArea .remindInfo {
  text-align: center;
  padding: 0px 0px 10px 0px;
}
.input_icon a {
  padding: 0;
  position: absolute;
  right: 13px;
  top: 3px;
  font-size: 100%;
  bottom: 2px;
  width: 28px;
  height: 28px;
  border-radius: 5px;
}
.input_icon a.icon-eye:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f06e";
  color: #000;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
.input_icon a.icon-eye:hover:before, .input_icon .icon-eye-slash:hover:before {
  color: #fe542e;
}
.input_icon a.icon-eye-slash:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f070";
  color: #000;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
@media (max-width: 992px) {
  .loginArea .leftBox, .loginArea .rightBox {
    padding: 20px 10px;
  }
}
/*頁面類別標籤*/
.GategoryTab {
  margin-bottom: 30px;
  flex-wrap: wrap;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding: 15px 10px 0px 10px;
  border-radius: 10px;
  box-shadow: 0 0 1.125rem 0 rgba(0, 0, 0, 0.15);
  /* background: #eee; */
  width: 100%;
}
.GategoryTab li {
  margin: 0px 3px;
}
.GategoryTab > li.current > a {
  color: #fff;
  background-color: #c488b4;
}
.GategoryTab li > a:hover {
  color: #fff;
  background-color: #c488b4;
}
.GategoryTab > li > a {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 15px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  transition: color .2s ease-in-out;
  margin-bottom: 15px;
  border: 1px solid #eee;
}
/*課程標籤*/
.labelTag {
  line-height: 2;
  min-width: 40px;
  text-align: center;
  display: inline-block;
  color: #000;
  border-radius: 20px;
  font-size: 14px;
  padding: 0px 10px;
}
/*消息標籤*/
.Tag_Pink {
  background: #ffebef;
}
.Tag_Purple {
  background: #f1dbff;
}
.Tag_Orange {
  background: #fff3de;
}
.Tag_BlueGreen {
  background: #27c0dc;
}
.Tag_Gray {
  color: #666;
  border: 1px solid #666;
  background: #fff;
}
/*學會章程*/
dl.Charter {
  line-height: 30px;
  font-size: 15px;
  margin: 0px 0px 30px 0px
}
dl.Charter dt {
  padding: 5px 10px;
  color: #ff184e;
  float: left;
  box-sizing: border-box;
  font-weight: bold;
}
dl.Charter dd:first-of-type {
  border-top: none;
}
dl.Charter dd {
  padding: 5px 10px 5px 10px;
  height: auto !important;
  margin-left: 110px;
  border-left: 1px solid #ccc;
  border-top: 1px dotted #ddd;
  min-height: 24px;
}
dl.Charter dd:nth-of-type(even) {
  background-color: rgb(246, 246, 246);
}
  {
  text-align: right;
  font-size: 13px;
  line-height: 22px;
  color: #999;
  position: relative;
  overflow: hidden;
  margin: 10px 0px;
}
.modify-date ul {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  bottom: 0;
  right: 0;
}
.modify-date .btn-history, .modify-date .btn-hidden {
  display: inline-block;
  padding: 3px 10px;
  margin-left: 10px;
  font-size: 12px;
  color: #666;
  border: 1px solid #e9e9e9;
  background-color: #fff;
  border-radius: 20px;
}
.modify-date-other {
  text-align: right;
}
.textEditor .modify-date a.btn-history:link, .textEditor .modify-date a.btn-hidden:link {
  text-decoration: none;
  background: #e9e9e9;
  color: #4575c1;
  font-weight: bold;
}
.textEditor .modify-date a.btn-history:hover, .textEditor .modify-date a.btn-hidden:hover {
  background: #4575c1;
  color: #fff;
  border: 1px solid #4575c1;
}
/*會訊內容*/
#BookArea .cover {
  padding: 10px;
  text-align: center;
}
#BookArea .catalog {
  padding: 10px;
}
ul.BookCon {
  color: rgb(51, 51, 51);
  line-height: 30px;
  font-size: 15px;
  margin: 0px 0px 30px 0px
}
ul.BookCon li {
  padding: 5px 10px 5px 10px;
  border-bottom: 1px dotted #ddd;
  min-height: 24px;
}
ul.BookCon li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f138";
  color: #0175b2;
  margin-right: 5px;
}
/**-------------------------------------------------------------------標題樣式**/
.titleStyle {
  color: #000;
  border-bottom: 1px solid #fbddec;
  text-align: left;
  padding: 5px 0px 5px 0px;
  font-weight: bold;
}
.titleStyle:after {
  content: "";
  width: 120px;
  height: 2px;
  background: #ff184e;
  display: block;
  position: relative;
  bottom: -6px;
}
.titleStyle02 {
  display: flex;
  align-items: center;
  position: relative;
  line-height: 1.5;
  color: #f07c39;
}
.titleStyle02:before {
  content: "";
  display: block;
  background: #f07c39;
  width: 10px;
  height: 10px;
  margin-right: 10px;
  border-radius: 100%;
}
.titleStyle02 a.btn {
  right: 0px;
  position: absolute;
  bottom: 0px;
}
.titleStyle03 {
  color: #3fb8d7;
  border-bottom: 1px solid #dee5e7;
  text-align: left;
  padding: 10px 0px 0px 0px;
}
.titleStyle04 {
  border-bottom: 2px solid #f07c39;
  color: #000;
  padding: 5px 10px;
  margin: 0px;
}
/**-------------------------------------------------------------------gotop**/
#gotop {
  display: none;
  position: fixed;
  right: 3%;
  bottom: 120px;
  width: 50px;
  height: 50px;
  z-index: 98;
  border-radius: 100%;
  background: #ff184e;
  color: #fff !important;
  text-align: center;
  line-height: 50px;
  cursor: pointer;
  font-weight: bold;
}
#gotop .svg-inline--fa {
  margin: 0px;
  font-size: 1rem;
}
/**-------------------------------------------------------------------------------footer**/
#footer {
  color: #000;
  width: 100%;
  position: relative;
  z-index: 2;
}
#footer .footer_u {
  height: 100px;
  background-image: url(../images/ripple_front.png);
  background-repeat: repeat-x;
  background-position-y: center;
  -moz-animation: loop 40s linear infinite;
  animation: loop 40s linear infinite;
}
#footer .footer_u a {
  color: #fff;
}
#footer .footer_u a:hover {
  text-decoration: underline;
}
#footer .footer_i {
  position: absolute;
  z-index: -1;
  left: 0;
  width: 100%;
  height: 180px;
  background-image: url(../images/ripple_back.png);
  background-repeat: repeat-x;
  background-position-x: 500px;
  background-position-y: center;
}
@keyframes loop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1273px 0;
  }
}
.downInfo {
  display: flex;
}
.downInfo .svg-inline--fa {
  margin-right: 5px;
}
.downInfo div {
  padding: 0px 15px;
}
#footer .Infooter:before {
  content: "";
  display: block;
  position: absolute;
  top: -50px;
  left: 0;
  background: url(../images/footer.png) repeat-x 0 0;
  width: 100%;
  height: 100px;
  background-size: cover;
  overflow: hidden;
}
#footer .container {
  display: flex;
  justify-content: space-between;
  line-height: 1.5;
  flex-wrap: wrap;
  align-items: center;
}
@media (max-width: 1440px) {
  #footer .container {
    display: flex;
    justify-content: center;
    line-height: 1.5;
    flex-wrap: wrap;
    align-items: center;
  }
  #footer .container > div {
    margin-bottom: 20px;
  }
}
.Infooter {
  position: relative;
  background: #fff;
  padding: 30px 0px 30px 0px;
}
@media (max-width:860px) {
  #footer .container {
    flex-direction: column;
  }
  .downInfo div {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.Infooter .downInfo span {
  color: #ff184e;
  display: flex;
  align-items: center;
}
@media (max-width:680px) {
  #footer .downInfo {
    display: flex;
    flex-direction: column;
  }
  .Infooter .downInfo span:before {
    display: none;
  }
}
.Infooter .line {
  display: flex;
  align-items: center;
}
.Infooter .line img {
  width: 45px;
  margin-right: 10px;
}
.Infooter .donate {
  background: #f4f4f4;
  padding: 10px 20px;
  border-radius: 20px;
  display: flex;
  align-items: center;
}
.Infooter .donate .img img {
  width: 80px;
}
.Infooter .donate .txt {}
.Infooter .donate .txt span {
  display: inline-block;
  color: #ff184e;
  width: 80px;
  text-align: right;
  padding: 0px 10px 0px 0px;
}
.Copyright {
  background: #ffcbd6;
  padding: 20px 10px;
  text-align: center;
  color: #000;
}
/********************************************************************************************* 
Btn Style            
*********************************************************************************************/
.btn i {
  padding-right: 5px;
}
.btn-group .btn {
  margin: 2px;
}
.btn-group {
  margin: 10px 0px;
  text-align: center;
}
.btn-group.right {
  text-align: right;
}
.btn-group a {
  display: inline-block;
  margin: 0 5px;
}
a.btn svg {
  margin-right: 5px;
}
@media (max-width: 414px) {
  .btn-group a {
    display: block;
    margin: 5px 0px;
  }
}
/********************************************************************************************* 
label X Form           
*********************************************************************************************/
.glyphicon-calendar {
  position: relative;
}
.glyphicon-calendar a {
  padding: 0;
  position: absolute;
  right: 10px;
  top: 3px;
  font-size: 1rem;
}
[class^=col-] + .glyphicon-calendar a {
  right: 15px;
  top: 3px;
}
input.formStyle {
  height: 34px;
  padding: 6px 8px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
}
/*驗證碼*/
.code input {}
.code-img button {
  display: inline-block;
  width: 34px;
  height: 34px;
  vertical-align: middle;
  cursor: pointer;
  border: 0;
  background: none;
}
.code-img {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: flex-start;
}
.code img {
  border: 1px solid #dddddd;
  margin: 5px 5px 5px 0px;
  width: 100px;
}
.code-img a:hover {
  color: #60aa00;
}
/*間格線*/
.line-b {
  border-bottom: 1px dashed #dee5e7;
  width: 100%;
  overflow: hidden;
  min-height: 2px;
  padding: 5px 0px;
}
.line-m {
  margin-top: 10px;
  margin-bottom: 10px;
}
.line-lg {
  margin-top: 15px;
  margin-bottom: 15px;
}
.form-inline .form-group {
  margin-right: 5px;
}
.memberForm .form-group {
  margin-bottom: 0px;
}
.memberForm .control-label {
  line-height: 34px;
  text-align: right;
  background: #f6f6f6;
  padding: 2px 8px;
  border-bottom: 1px solid #ccc;
}
.memberForm .form-content {
  padding: 2px 8px;
}
@media (max-width: 667px) {
  .memberForm .control-label {
    display: block;
    text-align: left;
  }
}
@media (min-width: 667px) {
  .memberForm {
    display: table;
    width: 100%;
  }
  .memberForm .form-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
  }
  .memberForm .form-content {
    display: table-cell;
    padding: 2px 8px;
    border-bottom: 1px solid #ccc;
  }
}
.input_address [class^=col-] + [class^=col-], .input_address [class^=col-]:first-of-type, .input_birday [class^=col-] + [class^=col-], .input_birday [class^=col-]:first-of-type {
  padding: 0px 5px;
}
/********************************************************************************************* 
Pagination Style
*********************************************************************************************/
.pa-wrap {
  text-align: center;
  margin-top: 20px;
}
.pagination {
  display: inline-block;
  font-family: Helvetica, Arial, "Microsoft JhengHei", sans-serif;
}
.pagination a {
  color: black;
  float: left;
  padding: 6px 15px;
  text-decoration: none;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination a.active {
  background-color: #2f3d7a;
  color: white;
  border: 1px solid #2f3d7a;
}
.pagination a:hover:not(.active) {
  background-color: #ddd;
}
.pagination a:first-child {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.pagination a:last-child {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}
/**分頁樣式(全文字)**/
ul.PageNumber {
  margin-bottom: 10px;
  padding: 10px 0;
  text-align: center;
}
ul.PageNumber li {
  display: inline;
  padding: 2px;
}
ul.PageNumber a {
  padding: 2px;
}
.PageNumber span.disabled {
  color: #bbbbbb;
  padding: 2px;
}
.dropdowns .toggleMenu .svg-inline--fa {
  float: right;
}
/*手機板*/
.m_menu {
  display: none;
}
@media(max-width: 1240px) {
  .m_menu {
    display: block;
  }
  .masterIcon {
    position: absolute;
    right: 50px;
  }
  .masterIcon li {
    float: left;
    display: inline-block;
    font-size: 1.2rem;
    background: #eee;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center;
    margin: 5px;
  }
  .cd-search.is-visible {
    top: 50px;
  }
  .m_menu .mfun {
    text-align: center;
    padding-bottom: 10px;
    width: 95%;
    margin: 0 auto;
  }
  .m_menu .mfun .iconmenu {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
  }
  .m_menu .mfun .iconmenu a {
    border-radius: 50%;
    display: flex;
    line-height: 50px;
    width: 50px;
    height: 50px;
    text-align: center;
    margin: 0px 5px;
    color: #fff;
    align-items: center;
    justify-content: center;
  }
  .m_menu .mfun .iconmenu a img {
    width: 18px;
  }
  .m_menu .mfun .iconmenu a.member {
    background: #c488b4;
  }
  .m_menu .mfun .iconmenu a.mail {
    background: #ff7693;
  }
  .m_menu .mfun .iconmenu a.member:hover {
    background: #98599f;
    color: #fff;
  }
  .m_menu .mfun .iconmenu a.mail:hover {
    background: #ff184e;
    color: #fff;
  }
  .m_menu .svg-inline--fa {
    margin-right: 0px;
  }
  .m_menu .user_name {
    background: #eee;
    line-height: 50px;
    margin: 0px 0px 10px 0px;
    text-align: center;
  }
  .m_menu .user_name a.memberInfo {
    padding: 6px 20px;
  }
  .m_menu .user_name a.memberInfo .fa-user {
    margin-right: 5px;
    color: #cbcbcb;
  }
  .m_menu .user_name a.memberInfo:hover {
    background: #f5736a;
    color: #fff;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    color: #fff;
    border: 1px solid #f5736a;
  }
  .m_menu .user_name .login {
    display: block;
    width: 100%;
    height: 50px;
    color: #fff;
    font-weight: 400;
    text-align: center;
    border: none;
    background: #3fb8d7;
  }
  .m_menu .user_name .login .fa-user {
    margin-right: 5px;
  }
  .m_menu .user_name .logout {
    display: block;
    float: right;
    width: 30%;
    height: 50px;
    color: #fff;
    font-weight: 400;
    text-align: center;
    border: none;
    background: #ff184e;
  }
  .m_menu .user_name .logout:hover, .m_menu .user_name .login:hover {
    background: #fa8072;
  }
  .m_menu .m_logo {
    float: left;
    width: 260px;
    margin: 6px 0px 0px 50px;
    position: absolute;
    top: 0;
  }
  .rightBox .userBox a {
    width: 35px;
    height: 35px;
    color: #FFF;
    border-radius: 100%;
    background: #c488b4;
    margin-right: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .rightBox .userBox a img {
    width: 18px;
  }
  .TopBox .rightBox {
    margin-top: 6px;
    float: right;
  }
}