/*************************************/
/*************************************/
.main_full_column{
  width: 100%;
  display: block;
  padding-bottom: 160px;
  background-color: #fff;
}
.main_container{
  position: relative;
  width: 100%;
  max-width: 1440px;
  display: block;
  margin:0 auto;
  padding: 10px 20px;
}
.banner_main{
  position: relative;
  overflow: hidden;
  display: block;
  padding: 0 20px;
  color: #fff;
  background: url('../images/bg_index_slogan.png');
  background-size: cover;
}
.banner_main h1{
  font-size: 1.5em;
}
#particles-js{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.banner_main_news{
  padding: 10px 20px;
  color: #fff;
}
/*************************************/
/*************************************/
.nav_column{
  width: 100%;
  background-color: #ececec;
}
.nav_column .nav{
  display: block;
  width:100%;
  max-width: 1440px;
  font-size:0.7em;
  margin:0 auto;
  padding: 10px 20px;
}
.nav_column .nav a{
  color:#000;
}
.nav_column .nav a:hover{
  color: var(--hover_color);
}
/*************************************/
.main_column_full_left_menu{
  clear: both;
  width: 100%;
  text-align: center;
  padding: 10px 5px;
}
.main_column_full_left_menu a{
  color: #fff;
  display: inline-block;
  padding: 8px 16px;
  margin: 0 0 4px 0;
  background-color: #6e6e6e;
  -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
  vertical-align: top;
}
.main_column_full_left_menu a:hover{
  background-color: #333;
}
.main_column_full_left_menu a.current{
  background-color: var(--hover_color);
}
.main_column_full_left_menu .tablink{
  text-align:center;
  display:inline-block;
  border:1px solid #333;
  background-color: #fff;
  -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
  cursor: pointer;
  vertical-align: top;
}
.main_column_full_left_menu .tablink a{
  display: block;
  width: 100%;
  height: 100%;
  color: #000;
  padding: 0;
  margin: 0;
  background-color: #fff;
}
.main_column_full_left_menu .tablink a img{
  height: 36px;
  padding: 5px 16px 0px 16px;
  line-height: 0;
}
/***/
.main_column_full_left_menu_subcat{
  position: relative;
  z-index: 2;
  clear: both;
  width: 100%;
  text-align: center;
  padding: 10px 10px 6px 10px;
  background-color: #ececec;
  background-color: var(--hover_color);
  border-radius: 5px;
  width: fit-content;
  width: -moz-fit-content;
  margin: -18px auto 0 auto;
}
.main_column_full_left_menu_subcat a{
  color: #333;
  display: inline-block;
  padding: 8px 16px;
  margin: 0 0 4px 0;
  background-color: #fff;
  -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
  vertical-align: top;
}
.main_column_full_left_menu_subcat a:hover,
.main_column_full_left_menu_subcat a:focus{
  background-color: #ffffc0;
}
.main_column_full_left_menu_subcat a.current{
  color: #000;
  background-color: #ffe93c;
}
/*************************************/
/*html info*/
.info_container{
  position: relative;
  width: 100%;
  max-width: 1440px;
  display: block;
  margin:0 auto;
  padding: 10px 20px;
}
.info_container .title_left{
  display: inline-block;
  margin: 0 10px 0 0;
}
.info_container .title_right{
  display: inline-block;
}
.info_container h3.title{
  position: relative;
  width: 100%;
  display: block;
  font-size: 1.4em;
  margin-bottom:6px;
  border-bottom: 1px solid #ccc;
}
.info_container h3.icon_main_title{
  background: url('../images/icon_main_title.png') no-repeat;
  background-position: top left;
  background-size: 1em;
  padding-left: 1.2em;
}
.info_container h3.title.icon_award{
  padding-left: 2.25em;
}
.info_container h3.title.icon_award::before{
  position: absolute;
  top: -0.25em;
  left: -0.25em;
  content: '';
  display: inline-block;
  width: 2em;
  height: 2em;
  background-size: 80%;
  background-position: center;
  background-repeat: no-repeat;
}
.info_container h3.title.icon_award.特優::before{
  background-image: url('../images/awards_lv3.png');
}
.info_container h3.title.icon_award.優等::before{
  background-image: url('../images/awards_lv2.png');
}
.info_container h3.title.icon_award.佳作::before{
  background-image: url('../images/awards_lv1.png');
}

.info_date span{
  vertical-align: bottom;
}
.info_date .label_top{
  display: inline-block;
  color: #fff;
  border-radius:5px;
  font-size: 0.8em;
  padding: 2px 10px; 
  background-color: #16b3b6;
  font-weight: bold;
  position: relative;
}
.info_date .label_new{
  display: inline-block;
  color: #fff;
  border-radius:5px;
  font-size: 0.8em;
  padding: 2px 10px; 
  background-color: #ff6600 !important;
  font-weight: bold;
  position: relative;
}
.info_date .label_hot{
  display: inline-block;
  color: #fff;
  border-radius:5px;
  font-size: 0.8em;
  padding: 2px 10px; 
  background-color: #e50053;
  font-weight: bold;
  position: relative;
}
.info_container .info_desc{
  width: 100%;
  display: block;
  color:var(--hover_color);
  font-size: 0.9em;
}
.info_container .info_desc span{
  display: inline-block;
}
.detail_info_column .info_desc{
  color: #000000;
  margin-top: 0.5em;
}
.info_container .HTML_info,
.info_container .file_column{
  clear: both;
  width: 100%;
  display: block;
  margin: 0 0 40px 0;
}
.HTML_info border,
.HTML_info border img,
.HTML_info img,
.HTML_info iframe{
  max-width:100%;
}
.HTML_info a{
  color: var(--hover_color);
}
.HTML_info a:hover{
  text-decoration: underline;
}
.pic_left{
  float: left; 
  margin-top: 5px;
  margin-right: 8px;
}
.pic_right{
  float: right; 
  margin-top: 5px;
  margin-left: 8px;
}
.pic_left img{
  width:380px;
}
.pic_right img{
  width:380px;
}
.pic_top{
  margin-bottom: 8px;
}
.pic_down{
  margin-top: 8px;
}
.file_list_table{
  width: 100%;
}
.file_list_table tr:hover{
 background: #ffffc3;
}
.file_list_table tr th,
.file_list_table tr td{
  border-bottom: 1px solid #999;
  padding: 6px;
}
.file_list_table tr td a img{
  min-width: 32px;
  max-width: 32px;
  vertical-align: middle;
}
.HTML_info a.video_url{
  width: 45px;
  height: 35px;
  background-image: url('../images/icon_video.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  font-size: 0;
  display: inline-block;
  vertical-align: top;
}
.HTML_info a.video_url:hover{
  text-decoration: none;
  filter: brightness(1.5);
}
/*************************************/
.groups_calender_table{
  width: 100%;
  border-spacing: 0px;
  border-collapse:collapse;
}
.groups_calender_table tr th{
  text-align: center;
}
.groups_calender_table tr:nth-child(even){
  background-color: rgba(0,0,0,0.05);
}
.groups_calender_table tr th,
.groups_calender_table tr td{
  border: 1px solid #000;
  padding: 6px;
}
/*************************************/
.achievement_table{
  width: 100%;
  border-spacing: 0px;
  border-collapse:collapse;
}
.achievement_table tr:hover{
 background: #ffffe1;
}
.achievement_table tr th{
  background-color:#aac9ff;
}
.achievement_table tr th,
.achievement_table tr td{
  border: 1px solid #a7a488;
  padding: 6px;
  text-align: center;
}
.achievement_table tr td a img{
  min-width: 32px;
  vertical-align: middle;
}
/*************************************/
.active_list_column{
  width: 100%;
  overflow: hidden;
  letter-spacing: -7px;
}
.box_active{
  position: relative;
  display:inline-block;
  width:31%;
  overflow:hidden;
  border:1px solid #ccc;
  padding:0.5%;
  margin:0 1% 3% 1%;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  transition: background-size 0.2s linear;
  -webkit-transition: background-size 0.2s linear;
  position:relative;
  top:0;
  background:#FFF;
  vertical-align: top;
  letter-spacing: unset;
}
.box_active.icon_award::before{
  position: absolute;
  bottom: 0em;
  right: 0em;
  content: '';
  display: inline-block;
  width: 2em;
  height: 2em;
  background-size: 80%;
  background-position: center;
  background-repeat: no-repeat;
}
.box_active.icon_award.特優::before{
  background-image: url('../images/awards_lv3.png');
}
.box_active.icon_award.優等::before{
  background-image: url('../images/awards_lv2.png');
}
.box_active.icon_award.佳作::before{
  background-image: url('../images/awards_lv1.png');
}
.box_active a{
  display: block;
}
.box_active .pic{
  width:100%;
  padding-bottom:70%;
  background-repeat:no-repeat;
  background-position:center center;
  -moz-background-size: 100%;
  -webkit-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-border-radius:2px;
  -moz-border-radius:2px;
  border-radius:2px;
  margin:0 0 8px 0;
  transition: background-size 0.2s linear;
  -webkit-transition: background-size 0.2s linear;
}
.box_active .pic.video{
  position: relative;
  padding-bottom:56.25%;
  border-radius:0 0 2px 2px;
}
.box_active:hover .pic{
  -moz-background-size: 120%;
  -webkit-background-size: 120%;
  -o-background-size: 120%;
  background-size: 120%;
}
.box_active .title{
  color:var(--hover_color);
  width:100%;
  overflow:hidden;
  letter-spacing: 0px;
}
.box_active .date{
  display:inline-block;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .city{
  display:inline-block;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .city::before{
  content:" / ";
}
.box_active .category{
  display:inline-block;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .category::before{
  content:" / ";
}
.box_active .school{
  display:inline-block;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .school::before{
  content:" / ";
}
.box_active .school2{
  display:block;
  width: 100%;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .award{
  display:inline-block;
  color:#555;
  font-size: 0.8em;
  letter-spacing: 0px;
}
.box_active .award::before{
  content:"/";
}
.box_active .info{
  clear:both;
  color:#000;
  letter-spacing: 0;
  margin-top: 5px;
}
.box_active .info::after{
  display: inline-block;
  content: "...(詳細內容)";
}
.box_active .lan{
  letter-spacing: 0px;
  vertical-align: top;
  color: #000000;
  background-color: #ddf5f8;
  font-size: 0.9em;
  padding-left: 0.25em;
  border-radius: 2px 2px 0 0;
}
.box_active .lan::before{
  position: relative;
  top: 2px;
  margin-right: 3px;
  content: '';
  display: inline-block;
  border-radius: 5px;
  width: 1em;
  height: 1em;
  background-image: url('../images/icon_lan.svg');
  /*background-color: var(--hover_color);*/
  background-size: 80%;
  background-position: center;
  background-repeat: no-repeat;
}
/*************************************/
.resources_list_column{
  width: 100%;
}
.resources_list_column .box_resources{
  position: relative;
  display: block;
  width: 100%;
  padding: 15px 50px 15px 15px;
  margin: 0 0 5px 0;
  background-size: 22px;
  background-position: calc(100% - 10px) center;
  background-repeat: no-repeat;
  border-radius: 5px;
  background-color: #eee;
  background-image: url('../images/icon_external-link.png');
  letter-spacing: 0;
  font-size: 1em;
  font-weight: bold;
  color: #000;
  word-break: break-all;
}
.resources_list_column.type_online .box_resources{
  padding: 15px 50px 15px 30px;
}
.resources_list_column.type_online .box_resources::before{
  position: absolute;
  top: 10px;
  left:  10px;
  content: "";
  width: 5px;
  height: calc(100% - 20px);
  background-color: #45679844;
  border-radius: 3px;
}
.resources_list_column.type_lesson_download .box_resources{
  background-image: url('../images/icon_download.png');
}
.resources_list_column .box_resources:hover{background-color: #fffee1;}
.resources_list_column .box_resources .cat{
  position: relative;
  top: -1px;
  background-color: #789456;
  color: #fff;
  border-radius: 5px;
  padding: 0 5px;
  font-size: 0.86em;
}
.resources_list_column .box_resources .cat.cat0{background-color: #21487c;}
.resources_list_column .box_resources .cat.cat1{background-color: #8e008a;}
.resources_list_column .box_resources .cat.cat2{background-color: #8e5000;}
.resources_list_column .box_resources .cat.cat3{background-color: #4b6906;}
.resources_list_column .box_resources .cat.cat4{background-color: #1d4d89;}
.resources_list_column .box_resources .cat.cat5{background-color: #216271;}
.resources_list_column .box_resources .cat.cat6{background-color: #ab0000;}
.resources_list_column .box_resources .filetype{
  position: relative;
  top: -2px;
  color: #fff;
  border-radius: 5px;
  padding: 0 5px;
  font-size: 0.7em;
}
.resources_list_column .box_resources .filetype.pdf{background-color: #cc0000;}
.resources_list_column .box_resources .filetype.ppt{background-color: #FF4B00;}
.resources_list_column .box_resources .filetype.word{background-color: #00BFFF;}
.resources_list_column .box_resources .filetype.excel{background-color: #99CC00;}
.resources_list_column .box_resources .filetype.video{background-color: #5c3d4c;}
.detail_info_column .filetype{
  position: relative;
  top: -2px;
  color: #fff;
  border-radius: 5px;
  padding: 0 5px;
  font-size: 0.7em;
}
.detail_info_column .filetype.pdf{background-color: #cc0000;}
.detail_info_column .filetype.ppt{background-color: #FF4B00;}
.detail_info_column .filetype.word{background-color: #00BFFF;}
.detail_info_column .filetype.excel{background-color: #99CC00;}
.detail_info_column .filetype.video{background-color: #5c3d4c;}
/***/
ul.resource_lesson_cat_list{
  display: block;
  width: calc(100% - 40px);
  max-width: 1400px;
  margin: -30px auto 0 auto;
  padding: 30px 5px 10px 5px;
  text-align: center;
  background-color: #f4f2ea;
  border: 2px solid #bab280;
  border-radius: 5px;
  list-style: none;
  line-height: 2em;
}
ul.resource_lesson_cat_list li{
  display: inline-block;
  line-height: 1.5em;
}
ul.resource_lesson_cat_list li a{
  color: #000;
  padding: 0 10px;
  background-color: #fff;
  border-radius: 5px;
  border: 3px solid #ccc;
}
ul.resource_lesson_cat_list li:hover a{
  background-color: #fffee1;
}
ul.resource_lesson_cat_list li.sel a{
  background-color: #fffee1;
  font-weight: bold;
  border: 3px solid #f60;
}
/***/
.resources_list_column.type_lesson_issue_list{
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(4,1fr);
}
.resources_list_column.type_lesson_issue_list a.box_issue{
  position: relative;
  display: block;
  width: 100%;
  color: #000;
  background-color: #f2f2f2;
  padding: 5px 10px 5px 15px;
  border-radius: 3px;
}
.resources_list_column.type_lesson_issue_list a.box_issue::before{
  position: absolute;
  top: 5px;
  left:  5px;
  content: "";
  width: 3px;
  height: calc(100% - 10px);
  background-color: #45679844;
  border-radius: 3px;
}
.resources_list_column.type_lesson_issue_list a.box_issue:hover{
  background-color: #fffee1;
}
/***/
h3.lesson_nav{
  position: relative;
  background-color: #d6e8fb;
  border-radius: 5px;
  padding: 5px 5px 5px 15px;
  font-weight: bold;
  margin: 0;
}
h3.lesson_nav::before{
  position: absolute;
  top: 5px;
  left: 5px;
  content: "";
  width: 3px;
  height: calc(100% - 10px);
  background-color: #45679844;
  border-radius: 3px;
}
/***/
.info_issue div{
  position: relative;
  display: block;
  padding-left: 10px;
  margin-bottom: 5px;
}
.info_issue div::before{
  position: absolute;
  top: 4px;
  left:  0px;
  content: "";
  width: 3px;
  height: calc(100% - 6px);
  background-color: #fdc65c;
  border-radius: 3px;
}
/*************************************/
/*website*/
.website_column{
  width:100%;
  margin:0px auto;
}
.website_column .box_menu{
  background-color: #f2f2f2;
  -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;
  padding: 2%;
  margin: 0 0 15px 0;
}
.website_column .box_menu .title{
  font-weight: bold;
  border-left: 3px solid #000;
  padding: 0 0 0 6px;
  margin:0;
  line-height: 1em;
  display: inline-block;
}
.website_column .box_menu a{
  color: var(--hover_color);
  display: inline-block;
}
.website_column .box_menu a:hover{
  color: var(--hover_color);
}
.website_column .box_menu ul{
  margin:10px 0 0 0;
  padding:0 0 0 10px; 
}
.website_column .box_menu ul li{
  display: inline-block;
  list-style: none;
  color: #fff;
}
.website_column .box_menu ul li a{
  display: inline-block;
  color: #fff;
  background-color: #6e6e6e;
  padding:6px 14px;
  margin: 0 0 5px 0; 
  -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
}
.website_column .box_menu ul li a:hover,
.website_column .box_menu ul li a:focus{
  background-color: var(--hover_color);
  color: #fff;
}
/*************************************/
/*publish*/
.publish_column{
  clear:both;
  width:100%;
  margin:0 auto;
  padding:10px 0 0 0;
}
/*form*/
.form_column{
  clear:both;
  width:100%;
  margin:0 auto 10px auto;
}
.form_column_w600{
  max-width:600px;
}
.form_column .form_border{
  clear:both;
  width:100%;
  margin:0 auto;
  padding:0 0 5px 0;
  text-align:left;
  overflow:hidden;
}
.form_column .row{
  display: block;
  width:100%;
  padding:5px 0 8px 10px;
  margin:0 0 5px 0;
  border-bottom:1px dashed #CCC;
}
.form_column .row_button{
  /*float:left;*/
  width:100%;
  padding:10px 0;
  text-align:center;
}
.form_column .row_social{
  float:left;
  width:100%;
  padding:0 0 10px 0;
  text-align:center;
}
.form_column .row_social .social_login{
  display:inline-block;
  transition: all 0.2s linear;
  -webkit-transition: all 0.2s linear;
  margin:0 0 5px 0;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
}
.form_column .row_social .social_login a{
  color:#FFF;
  display:block;
  padding:0px 20px 10px 20px;
  width:290px;
}
.form_column .row_social .social_login img{
  position:relative;
  top:6px;
  width:28px;
  height:28px;
  margin:0 3px 0 0;
}
.form_column .row_social .social_login.login_facebook{
  background:#1D4594;
}
.form_column .row_social .social_login.login_facebook:hover{
  -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.4); -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.4); box-shadow: 0 1px 5px rgba(0,0,0,0.4);
}
.form_column .row_social .social_login.login_google{
  background:#CA4336;
}
.form_column .row_social .social_login.login_google:hover{
  -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.4); -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.4); box-shadow: 0 1px 5px rgba(0,0,0,0.4);
}
.form_title{
  display:inline-block;
  width:150px;
  vertical-align: top;
  margin:4px 5px 5px 0;
  white-space: nowrap;
}
.form_title::after{
  content: "：";
}
.form_title_space{
  display:inline-block;
  width:150px;
  vertical-align: top;
  margin:4px 5px 5px 0;
}
.form_title .needo {
  color: #fff;
  background-color: var(--hover_color);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  font-size: 0.7em;
  padding: 2px 3px;
  margin: 0 3px 0 0;
  position: relative;
  top: -2px;
}
.form_input{
  display:inline-block;
  vertical-align: middle;
  width: 100%;
  max-width:calc(100% - 170px);
  min-width: 240px;
}
.form_input .desc{
  display:block;
  width:100%;
  clear:both;
  margin:5px 0 0 0;
}
.form_column .row .inputtext{
  position:relative;
  width: 100%;
  max-width:360px;
  padding:8px;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  font-size: 1em;
  -webkit-appearance: none;
  border:1px solid #999;
}
.form_column .row .form_select{
  margin:0 0 5px 0;
  position:relative;
  padding:8px 28px 8px 8px;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  font-size: 1em;
  -webkit-appearance: none;
  border:1px solid #999;
}

.form_column .row img{
  margin:6px 0 0 0;
}
.row_sub{clear: both;}
.row_sub a{font-size:0.86em; color: #333;}
.row_sub a>img{width: 18px; height: 18px; position: relative; top:3px;}
/*表單按鈕*/
.form_button{
  color:#fff;
  display:inline-block;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  padding:10px;
  font-size:1em;
  transition: all 0.2s linear;
  -webkit-transition: all 0.2s linear;  
  width:100%;
  max-width:150px;
  min-width: 150px;
  border:none;
  font-family:'Microsoft JhengHei','simhei','Arial';
  -webkit-appearance:none;
  background-color: var(--hover_color);;
  cursor:pointer;
}
.form_button:hover{
  -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.4); -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.4); box-shadow: 0 1px 5px rgba(0,0,0,0.4);
}
/*edulogin_button*/
.edulogin_button{
  background-color: #f2f2f2;
  display: block;
  max-width: 400px;
  margin: 5px auto;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  border: 1px solid #ccc;
  vertical-align: top;
}
.edulogin_button:hover{
  background-color: #eee;
  -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.4); -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.4); box-shadow: 0 1px 5px rgba(0,0,0,0.4);
}
.edulogin_button a{
  color: #000;
  display: block;
  width: 100%;
  height: 100%;
  padding:10px;
}
.edulogin_button a img{
  margin: 0 6px 0 0;
  position: relative;
  top:6px;
}
/*form_option*/
.form_option_column{
  clear:both;
  width:100%;
  /*overflow:hidden;*/
  margin:10px auto 15px auto;
}
.form_option_column a{
  display:inline-block;
  margin:0 5px 4px 5px;
  padding:3px 5px;
  border-bottom: 1px dashed #666;
  text-align:center;
  font-size:1em;
  color: #000;
}
.form_option_column a.point{
  color: #cc0000;
}
.form_option_column a:hover,
.form_option_column a:active{
  color: var(--hover_color);
}
.form_option_column img.icon{
  padding:10px 5px 0 0;
  vertical-align:text-bottom;
  width:22px;
}
.form_option_column2{
  clear:both;
  width:100%;
  text-align:center;
  overflow:hidden;
  margin:0 0 15px 0;
}
.form_option_column2 a{
  display:inline-block;
  background:#DDD;
  margin:0 1px 6px 5px;
  text-align:center;
  line-height:30px;
  font-size:1.2em;
  width:50px;
  color:#333745;
  height:30px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

/*************************************/
/*************************************/
/*************************************/
/*************************************/
/*************************************/
/*************************************/
/*PAGE*/
.page_container{
  display: block;
  width:100%;
  height:auto;
  text-align:center;
  font-size:0.9em;
  margin:0px 0 15px 0;
}
#page_block{
  display:inline-block;
  width:auto;
  padding:0;
  width:100%;
  text-align:center;
}
.page_block_see{
  display:inline-block;
  color: var(--hover_color);
  height:28px;
  line-height:28px;
}
#page_block a{
  color:#000;
  display:inline-block;
  line-height:20px;
  height:20px;
  margin: 0 5px;
}
#page_block a:hover{
  color: var(--hover_color);
}
#page_block .page{
  padding:0 7px 0 7px;
  margin:0 -3px 0 0;
}
#page_block .page_prev{
  border-right:1px dotted #ccc;
  padding:0 25px 0 0;
  margin:0 20px 0 0 !important;
}
#page_block .page_next{
  border-left:1px dotted #ccc;
  padding:0 0 0 25px;
  margin:0 0 0 20px !important;
}
#page_block .page_back{
}
#page_block .page_info{
  display: block;
  margin-bottom: 3px;
}
.page_container_top,
.page_container_prev_next{
  width:100%;
  font-size:0.7em;
  text-align:center;
  color:var(--hover_color);
  padding:10px 0;
}
.page_container_prev_next .page_block a{
  margin:0 10px 0 10px;
  color:#000;
}
.page_container_prev_next .page_block a:hover,
.page_block a:hover{
  color:var(--hover_color);
}
.page_block .jump{
  cursor:pointer;
}

.page_block_showpage{
  display:inline-block;
  padding:0;
  text-align:center;
}
.page_block_showpage a{
  color:#000;
  display:inline-block;
  line-height:27px;
  margin:0;
  padding:0px 10px;
  -webkit-border-radius:25px;
  -moz-border-radius:25px;
  border-radius:25px;
}
.page_block_showpage a.page_block_see{
  background-color:var(--hover_color);
  display:inline-block;
  color:#FFF;
  font-weight:bold;
}
.page_block_showpage a:hover{
  color:var(--hover_color);
}
.page_block_showpage a.page_block_see:hover{
  color:#FFF;
}
.page_block_showpage .page_back{
  display:inline-block;
  padding:0;
  margin:0;
  border:none;
}
.page_block_showpage .page_prev{
  display:inline-block;
  padding:0 5px 0 0;
  margin:0 5px 0 0;
  border:none;
}
.page_block_showpage .page_next{
  display:inline-block;
  padding:0 0 0 5px;
  margin:0 0 0 5px;
  border:none;
}
/***/
.page_block .group{
  display: inline-block;
  margin-right: 5px;
}
.page_block .option{
  display: inline-block;
  margin-top: 10px;
}
.page_block .option button.submit{
  color:#000;
  display:inline-block;
  border-radius:5px;
  padding:4.5px 10px;
  font-size:1em;
  border:none;
  -webkit-appearance:none;
  background-color: #6bc9ff;
}
.page_block .option button.reset{
  color:#000;
  display:inline-block;
  border-radius:5px;
  padding:4.5px 10px;
  font-size:1em;
  border:none;
  -webkit-appearance:none;
  background-color: #ddd;
}
.page_block .option button:hover{
  color: #ffffff;
  background-color: #ff6600;
  box-shadow: 0 1px 5px rgba(0,0,0,0.4);
}
.page_block .group .radio_group{
  position: relative;
  display: inline-block;
  margin-bottom: 0.6em;
}
.page_block .group .radio_group input[type='radio']{
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
.page_block .group .radio_group input[type='radio']:focus ~ label{
  outline: 2px dashed #ff6600;
}
.page_block .group .radio_group label{
  background-color: #dfdfdf;
  padding: 4px 15px 4px 8px;
  border-radius: 5px;
  cursor: pointer;
}
.page_block .group .radio_group label::before{
  content: "";
  background-color: #ffffff;
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50px;
  position: relative;
  top: 1px;
  margin-right: 5px;
  border: 3px solid #ffffff;
}
.page_block .group .radio_group label:hover{
  background-color: #f9eea2;
}
.page_block .group .radio_group input[type='radio']:checked ~ label{
  background-color: #ffbc4b;
}
.page_block .group .radio_group input[type='radio']:checked ~ label::before{
  background-color: #f67f00;
}
/*********************************/
.button_column{
  width: 100%;
  padding: 0 20px;
  text-align: center;
}
.button_column .button{
  color: #fff;
  display: inline-block;
  margin: 0 0 4px 0;
  padding: 8px 16px;
  -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
  overflow: hidden;
  background-color: #c74f00;
}
.button_column .button:hover{
  background-color: #ff6500;
}
.button_column .button a{
  display: block;
  color: #fff;
  width: 100%;
  height: 100%;
}
.button_column .button.button_icon{
  padding: 8px 16px 8px 50px;
}
.button_column .button.button_icon_download{
  background-image: url(../images/icon_download.svg);
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 15px 6px; 
}
/*********************************/
table.filelist{
  width: 100%;
}
table.filelist th{
  font-size: 0.9em;
  padding: 6px;
  background-color: #f2f2f2;
}
table.filelist td{
  border-bottom: 1px solid #999;
  padding: 6px 6px 0 6px;
  vertical-align: top;
}
table.filelist tr:hover{
  background-color: #fffbae;
}
/*********************************/
.box_faq{
  display: block;
  width: 100%;
  border-bottom: 1px dashed #ccc;
  padding-top: 10px;
}
.box_faq .title{
  font-weight: bold;
  color: var(--hover_color);
}
/*********************************/
.column_table{
  font-size: 0.9em;
  width: 100%;
  margin: 0 auto;
  display: block;
  background-color: #ffffff;
  margin-bottom: 2em;
  border-radius: 5px;
}
.column_table .group_th{
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: 100%;
  text-align: center;
  font-weight: normal;
  border-bottom: 2px solid #cccccc;
  font-weight: bold;
  padding-bottom: 6px;
}
.column_table .group_th .th_lv{
  flex-grow: 1;
  max-width: 10%;
  min-width: 140px;
}
.column_table .group_th .th_subject{
  flex-grow: 5;
  max-width: 60%;
  white-space: nowrap;
}
.column_table .group_th .th_lecturer{
  flex-grow: 2;
  max-width: 20%;
  white-space: nowrap;
}
.column_table .group_th .th_teacher{
  flex-grow: 1;
  max-width: 10%;
  min-width: 180px;
  white-space: nowrap;
}
.column_table .group_tr{
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  -webkit-align-items: stretch;
          align-items: stretch;
  -webkit-justify-content: center;
          justify-content: center;
  width: 100%;
  text-align: center;
  line-height: 20px;
  border-bottom: 1px solid #cccccc;
  order: 2;
  padding: 10px 0;
  line-height: 1.5em;
}
.column_table .group_tr:nth-child(odd){
  background-color: #f8f8f8;
}
.column_table .group_tr .td_lv{
  padding: 0 5px;
  flex-grow: 1;
  max-width: 10%;
  min-width: 140px;
  border-right: 1px solid #cccccc;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
}
.column_table .group_tr .td_subject{
  padding: 0 5px;
  flex-grow: 5;
  max-width: 60%;
  border-right: 1px solid #cccccc;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: center;
          justify-content: center;
}
.column_table .group_tr .td_lecturer{
  padding: 0 5px;
  flex-grow: 2;
  max-width: 20%;
  border-right: 1px solid #cccccc;
  flex-direction: column;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: center;
          justify-content: center;
}
.column_table .group_tr .td_teacher{
  padding: 0 5px;
  flex-grow: 1;
  max-width: 10%;
  min-width: 180px;
  flex-direction: column;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: center;
          justify-content: center;
}
.column_table .group_tr .td_subject a{
  color: #000;
  width: 100%;
  display: block;
  text-align: left;
}
.column_table .group_tr .td_subject a::after{
  content: "閱覽";
  font-size: 0.8em;
  background-color: #d3ebff;
  border-radius: 3px;
  margin-left: 5px;
  padding: 0 5px;
  color: #000;
}
.column_table .group_tr .td_subject a:hover{
  background-color: #fffee1;
}
.column_table .group_tr .td_subject a:hover::after{
  background-color: #ffe0c8;
}
/*********************************/
.sign_btn{
  display: inline-block;
  margin: 0 0.5em 0.5em 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  /*display: flex;*/
  -webkit-box-pack: center;
  -ms-flex-pack: center;
}
.sign_btn a{
  display: block;
  width: 100%;
  max-width: 300px;
  font-size: 1em;
  border-radius: 15px;
  padding: 10px 13px;
  text-align: center;
  cursor: pointer;
  background-color: #f4d88f;
  overflow: hidden;
  color: #000;
}
.sign_btn.type2 a{
  background-color: #67eeff;
}
.sign_btn a .title{
  position: relative;
  padding:2px 18px;
  background-color: #ffffff;
  border-radius: 10px;
  margin-bottom: 0.75em;
  font-weight: bold;
}
.sign_btn a .title::after{
  content: "";
  position: absolute;
  bottom: -12px;
  left: calc(50% - 15px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 15px;
  border-color: #ffffff transparent transparent transparent;
}
.sign_btn a:hover{
  text-decoration: none;
  background-color: #fff28e;
}
.sign_btn a:hover .title{
  background-color: #ffffff;
}
.sign_btn a .link{
  font-weight: bold;
  font-size: 1.1em;
}
.sign_btn a .link img{
  position: relative;
  top: 3px;
}
/*********************************/
/*********************************/
/*********************************/
/*********************************/