/* CSS Document */

/*==【基本設定】==*/
body {
    font: 16px/1.331 Arial, "Noto Sans TC", "微軟正黑體", sans-serif;
    overflow-x: hidden;
    font-display: swap;
    background: #fff;
    letter-spacing: 0.1em;
}

* {
    box-sizing: border-box;
}
.title,
b {
    margin: 0;
    padding: 0;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
}
ul.ulli,
.ulli > ul,
.ulli > ul > li {
    margin: 0;
    padding: 0;
    list-style: none;
}
::-webkit-input-placeholder {
    color: #999;
}
::-moz-placeholder {
    color: #999;
}
:-ms-input-placeholder {
    color: #999;
}
option:disabled {
    color: #999;
}
.xxx {
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    transition: none;
}
.phone_nav,
.phone_nav.open {
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    -ms-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

#wrap {
}
.inbox {
    max-width: 90%;
    margin: 0 auto;
}

#header {
    z-index: 30;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 280px;
    padding: 20px 25px;
    background: #fff;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}
/* Logo */
.logo {
    text-align: center;
    padding: 5px 0;
}
/*  Main Title */
#header h2.title {
    padding: 30px 0;
    border-bottom: 1px solid #ddd;
}
/* Menu */
.mnav {
    padding: 0 0 40px;
}
.mnav li {
    border-bottom: 1px solid #ddd;
    position: relative;
}
.mnav li a {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    padding: 20px;
    color: #777;
    font-weight: 500;
}
.mnav li a .i_icon {
    margin: 0 15px 0 0;
    height: 30px;
}
.mnav li a span {
    padding: 5px 0 0;
}
.mnav li.on:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 7px;
    height: 100%;
    background: #ffbc36;
    margin-right: -18px;
    border-radius: 10px;
}
.mnav li.on a,
.mnav li a:hover {
    color: #ffbc36;
}
/* Btn */
#header .btns {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
}
/* Phone Menu */
.phone_menu {
    display: none;
    float: right;
}
.i_menu {
    width: 45px;
    height: 45px;
    position: relative;
    display: block;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    cursor: pointer;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
.i_menu span {
    display: block;
    position: absolute;
    height: 3px;
    width: 30px;
    background: #ffc033;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px;
    border-radius: 9px;
    opacity: 1;
    left: 8px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}
.i_menu span:nth-child(1) {
    top: 9px;
}
.i_menu span:nth-child(2),
.i_menu span:nth-child(3) {
    top: 21px;
}
.i_menu span:nth-child(4) {
    top: 33px;
}
.i_menu.open {
    background: #ffbc36;
}
.i_menu.open span:nth-child(1) {
    top: 18px;
    width: 0%;
    left: 50%;
}
.i_menu.open span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 40px;
    left: 3px;
    top: 22px;
    background: #fff;
}
.i_menu.open span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 40px;
    left: 3px;
    top: 22px;
    background: #fff;
}
.i_menu.open span:nth-child(4) {
    top: 18px;
    width: 0%;
    left: 50%;
}

#content {
    z-index: 20;
    min-height: 100vh;
    position: relative;
    padding: 0 0 50px 0;
}
#content.bg1:after,
#content.bg2:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../images/content/bg_body.jpg) no-repeat fixed right top;
    background-size: cover;
}
#content.bg1:after {
    opacity: 0.2;
}
#content.bg2:after {
    opacity: 0.4;
}
#content.bg2 {
    margin-left: 280px;
}
#content.bg3 {
    background: #fafafa;
    margin-left: 280px;
}
#content .inbox {
    padding: 25px 0 0;
    z-index: 1;
    position: relative;
}
.l {
    display: inline;
    float: left;
}
.r {
    display: inline;
    float: right;
}
/* Loginbox */
.loginbox {
    background: #fff;
    width: 800px;
    min-height: 490px;
    position: absolute;
    z-index: 5;
    left: 50%;
    top: 50%;
    margin: -245px 0 0 -400px;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}
.lbox {
    width: 45%;
    padding: 50px 20px 20px;
    background: url(../images/content/bg_login_left.jpg) no-repeat scroll center;
    background-size: cover;
    text-align: center;
}
.lbox p {
    font-size: 20px;
    font-weight: bold;
    color: #6b6b6b;
    letter-spacing: 0.2em;
}
.rbox {
    width: 55%;
    padding: 40px 30px;
    position: relative;
}
/* Icon */
.i_icon {
    display: inline-block;
    width: 25px;
    height: 25px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% auto;
}
.i_people {
    background-image: url(../images/content/icon_people.svg);
    width: 45px;
    height: 45px;
}
.i_user {
    background-image: url(../images/content/icon_user.svg);
}
.i_psw {
    background-image: url(../images/content/icon_psw.svg);
}
.i_eye {
    background-image: url(../images/content/icon_eye_show.svg);
    cursor: pointer;
}
.i_eye.show {
    background-image: url(../images/content/icon_eye_hide.svg);
    cursor: pointer;
}
.i_say {
    background-image: url(../images/content/icon_say.svg);
    cursor: pointer;
}
.i_ser1 {
    background-image: url(../images/content/icon_ser1.svg);
}
.i_ser2 {
    background-image: url(../images/content/icon_ser2.svg);
}
.i_ser3 {
    background-image: url(../images/content/icon_ser3.svg);
}
.i_ser4 {
    background-image: url(../images/content/icon_ser4.svg);
}
.i_search {
    background-image: url(../images/content/icon_search.svg);
    vertical-align: middle;
    margin: 0 4px 0 0;
}
.i_tel {
    background-image: url(../images/content/icon_tel.svg);
}
.i_house {
    background-image: url(../images/content/icon_house.svg);
}
.i_mail {
    background-image: url(../images/content/icon_mail.svg);
    margin: 0 6px;
}
.i_fb {
    background-image: url(../images/content/icon_fb.svg);
    margin: 0 6px;
}
.i_time {
    background-image: url(../images/content/icon_time.svg);
    margin: 0 6px 0 0;
}
.i_light {
    background: url(../images/content/icon_light.svg);
    width: 44px;
    height: 44px;
}
.i_swl_1 {
    background: url(../images/content/icon_swl_1.svg);
}
.i_swl_2 {
    background: url(../images/content/icon_swl_2.svg);
}
.i_swl_3 {
    background: url(../images/content/icon_swl_3.svg);
}
.i_swl_4 {
    background: url(../images/content/icon_swl_4.svg);
}
.i_swl_5 {
    background: url(../images/content/icon_swl_5.svg);
}
/* Right box */
.maintitle h2.title {
    text-align: center;
    font-size: 22px;
    color: #888;
    font-weight: bold;
}
.maintitle h2.title .i_icon {
    width: 65px;
    height: 65px;
    border: 3px solid #ffbc36;
    border-radius: 50%;
    background-size: 45px auto;
}
.maintitle h2.title p {
    padding: 5px 0 0;
}
.maintitle h2.title small {
    font-size: 15px;
    display: block;
    font-weight: normal;
}
/* Formbox */
.formbox {
    padding: 10px 0 0;
}
.tfbar {
    position: relative;
    padding: 3px 0 3px 100px;
}
.tfbar b {
    position: absolute;
    left: 0;
    top: 11px;
    width: 90px;
}
.tfbar span {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.tfbar span a {
    white-space: nowrap;
    padding: 0 3px;
    font-size: 14px;
}
.tfbar span a:hover {
    text-decoration: underline;
}
.tfbar span .i_icon {
    margin: 0 3px;
}
.tf {
    width: 100%;
    padding: 7px;
    border: 0;
    -webkit-appearance: none;
    font-size: 15px;
}
.tf2 {
    width: 100%;
    padding: 9px 7px;
    border: 1px solid #ddd;
    border-radius: 5px;
    -webkit-appearance: none;
    font-size: 15px;
}
.tf_s {
    width: 50%;
}
.tf:focus,
.tf2:focus {
    outline: solid #ffbc36;
}
.seltype {
    width: 100%;
    color: #777777;
    font-size: 15px;
    border: #ddd solid 1px;
    border-radius: 6px;
    padding: 7px 0 7px 5px;
}
.errtxt {
    text-align: center;
    color: #f00;
    font-size: 14px;
}
.errtxt span {
    padding: 0 5px 0 0;
}
.tfbtn {
    padding: 25px 0 0;
}
.btn {
    border: 0;
    padding: 8px 10px;
    width: 100%;
    color: #fff;
    margin: 3px 0;
    letter-spacing: 0.2em;
    text-align: center;
    line-height: 1.6;
}
.btn:hover {
    opacity: 0.8;
}
.btn01 {
    background: #ffbc36;
    border-radius: 30px;
    font-size: 20px;
    font-weight: bold;
}
.btn02 {
    background: #4db7ff;
    border-radius: 10px;
    font-size: 20px;
}
.btn_red {
    background: #ff565e;
}
.sbtn {
    background: #ff8086;
    border-radius: 8px;
    padding: 6px 10px;
}
.btns .btn {
    border-radius: 10px;
}
.imgcode {
    margin: 3px 5px;
}
.rbox .tfbar {
    padding: 20px 5px 5px 40px;
    position: relative;
    border-bottom: 2px solid #ddd;
}
.rbox .tfbar b {
    position: absolute;
    left: 5px;
    bottom: 3px;
    width: auto;
    top: auto;
}
.rbox .tfbar00 {
    padding-left: 5px !important;
    border: 0;
}
.rbox .tfbtn {
    position: absolute;
    left: 30px;
    bottom: 30px;
    right: 30px;
}
/* Content Title */
.cont_title {
    background: rgba(255, 188, 54, 0.85);
    color: #fff;
    padding: 10px 0;
    text-align: center;
    position: relative;
    z-index: 1;
}
.cont_title h2.title {
    font-size: 20px;
}
/* Contboox */
.contbox {
    background: #fff;
    margin: 0 0 10px;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.mainbtn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
    color: #777;
    padding: 20px;
    font-size: 20px;
    border: 1px solid #ddd;
    border-radius: 10px;
    height: 350px;
}
.mainbtn .i_icon {
    display: block;
    margin: 0 auto;
    width: 105px;
    height: 110px;
    margin-bottom: 10px;
}
.mainbtn:hover {
    box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.1);
    transform: translateX(-5px) translateY(-5px);
}
.mainbtn.arr_r {
    position: relative;
}
.mainbtn.arr_r:before,
.mainbtn.arr_r:after {
    content: "";
    position: absolute;
    left: 100%;
    top: 50%;
    margin-top: -60px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 0 60px 30px;
}
.mainbtn.arr_r:before {
    border-color: transparent transparent transparent #ddd;
}
.mainbtn.arr_r:after {
    border-color: transparent transparent transparent #fff;
    margin-left: -1px;
}
.mainbtn2 {
    border-color: #fff;
    background: #ffc542;
    color: #fff;
}
.mainbtn2:hover {
    box-shadow: 3px 3px 0 rgba(255, 188, 54, 0.2);
}
.mainbtn2.arr_r:before {
    border-color: transparent transparent transparent #fff;
}
.mainbtn2.arr_r:after {
    border-color: transparent transparent transparent #ffc542;
}
.mainlist {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 10px;
}
.mainlist > ul {
    width: 100%;
}
.mainlist .row1 > li {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: stretch;
}
.main_l {
    flex: 1;
    padding: 5px;
}
.main_r {
    flex: 2;
    padding: 5px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 10px;
}
.main_r .list01 {
    padding: 0 10px 0 40px;
}
.mainlist .row3 {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}
.mainlist .row3 > li {
    flex: 3;
    padding: 5px;
}
/* list01 */
.list01 {
    width: 100%;
}
.list01 li {
    position: relative;
    padding: 10px 120px 10px 0;
    margin: 10px 0;
    border-bottom: 1px solid #ddd;
}
.list01 li h3.title {
    margin-right: 40px;
}
.list01 li .btn {
    position: absolute;
    right: 0;
    bottom: 10px;
    width: 100px;
}
.nodata {
    padding: 15px;
    text-align: center;
}
.loadbar {
    background: #eee;
    height: 10px;
    width: 100%;
    border-radius: 10px;
    position: relative;
    margin: 5px 0;
}
.loadbar span {
    display: block;
    background: #ffc542;
    height: 10px;
    border-radius: 10px;
    position: relative;
}
.loadbar span:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background: url(../images/content/icon_pen.svg) no-repeat scroll center;
    width: 25px;
    height: 25px;
    background-size: auto 100%;
    margin: -6px -10px 0 0;
}
.loadbar em {
    position: absolute;
    right: 0;
    top: -22px;
    color: #999;
    font-weight: bold;
    letter-spacing: normal;
}
/* Contboox */
.contbox2 {
    margin: 15px 0;
}
.fixbox {
    background: #ff8e1d;
    padding: 5px 10px 5px 5px;
    position: fixed;
    right: 0;
    bottom: 10px;
    z-index: 2;
    border-radius: 50px 0 0 50px;
    margin: 5px 0 0 0;
    color: #fff;
    display: flex;
    align-items: center;
    border: 0;
}
.btns button.fixbox:hover {
    background: #f07800;
    cursor: pointer;
}
.r_btn .btn {
    margin: 0 0 0 5px;
}
.fixbox span {
    margin: 0 0 0 5px;
}
.note {
    text-align: center;
}
.note p {
    display: inline-block;
    color: #ffbc36;
    border: 1px solid #f9aa2b;
    padding: 6px 15px;
}
.r_btn {
    display: flex;
}
.sbtn2 {
    background: #ff8086;
    border-radius: 8px;
    font-size: 14px;
    width: auto;
    display: inline-block;
}
.sbtn3 {
    background: #ffbc36;
    border-radius: 8px;
    padding: 9px 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sbtn4 {
    background: #ff8e1d;
    border-radius: 8px;
    font-size: 14px;
    width: auto;
    display: inline-block;
}
.sbtn4_1 {
    width: 95px !important;
}
.sbtn5 {
    background: #ff565e;
    border-radius: 8px;
    font-size: 14px;
    width: auto;
    display: inline-block;
}
.txt {
    color: #4db7ff !important;
}
.r_txt {
    color: #ff565e !important;
}
.r_txt small {
    color: #b8b8b8;
    font-size: 14px;
    display: block;
    line-height: 1.2;
    padding: 5px 0 0;
}
.tablewrap .b_txt {
    color: #4db7ff;
}
.selet_box {
    display: flex;
    justify-content: center;
    padding: 3px 0;
}
.l_select {
    display: flex;
    margin: 0 15px 0 0;
}
.r_select {
    display: flex;
}
.btn_upload {
    text-align: left;
}
.data_title {
    font-size: 19px;
    text-align: center;
}
/* 表頭 */
.l2 {
    margin: 35px 0 0 0;
}
.title_hd {
    padding: 5px 0 0;
}
.title_hd .l {
    margin: 8px 0 0 0;
}
.title2 {
    font-size: 25px !important;
    color: #7e7e7e !important;
    display: flex;
    align-items: center;
}
.title2 .i_icon {
    margin: 0 7px 0 0;
    width: 30px;
    height: 32px;
    background-size: cover;
}
.title2 small {
    font-size: 18px;
    margin: 5px 0 0 7px;
}
.title3 span {
    border: 1px solid #4db7ff;
    padding: 6px 10px;
    color: #4db7ff;
    border-radius: 10px;
    margin: 0 10px 0 0;
    font-size: 18px;
    display: inline-block;
    background: #fff;
}
.title3 small {
    color: #777777;
    font-size: 16px;
}
.title4 {
    display: flex;
    align-items: center;
}
.title4 small {
    margin: 2px 0 0 9px;
}
.cont_title2 {
    background: #6b6b6b !important;
    padding: 5px 0;
}
.cont_title2 .inbox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 !important;
}
.cont_title2 .inbox .time {
    background: #ffff;
    color: #4db7ff;
    border-radius: 10px;
    padding: 4px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    letter-spacing: normal;
}
.cont_title2 .mistaken {
    background: #ffff;
    color: #777777;
    border-radius: 10px;
    font-size: 15px;
    padding: 7px 12px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: normal;
}
.cont_title2 .l_txt {
    color: #ffbc36;
}
.cont_title2 .mistaken span {
    display: inline-block;
    color: #ff565e;
    font-size: 24px;
    margin: 0px 0 0 5px;
    line-height: 1;
}
.cont_title2 .mistaken small {
    font-size: 15px;
}
.fixed .cont_title2 {
    position: fixed;
    left: 280px;
    top: 0;
    right: 0;
    z-index: 10;
}
.fixed #content {
    margin-top: 48px;
}
.fixed .fixbox span {
    display: none;
}
.fixed .fixbox {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    padding: 5px;
    bottom: 10px;
    right: 5px;
}
.title4 > h2 {
    font-weight: 400 !important;
}
.title4 > h2 > span {
    margin: 0 0 0 15px;
}
.title4 .s_txt {
    margin: 0 0 0 37px;
    line-height: 1.2;
    font-size: 14px;
}
.title4 .s_txt span {
    color: #f9be3d;
}
/* 除錯box */
.errorbox {
    background-color: #fff1f1 !important;
}
.errorbox img {
    margin: 0 0 5px;
}
.errorbox .errorbtn {
    margin: 14px 0 0 0;
}
.answerbtn {
    margin: 5px 0 0 0;
    text-align: center;
}
.answerbtn a.on {
    background-color: #6eae6d !important;
}
.answerbtn p {
    color: #9f9f9f;
    font-size: 16px;
    margin: 5px 0 0 0;
}
.answerbtn span {
    margin: 0 0 0 4px;
}
.answer {
    color: #ff565e;
    font-size: 16px;
    margin: 20px 0 0 5px;
    text-align: left;
}
.answerbox {
    background: #fafafa !important;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2);
    border-top: 0 !important;
    display: none;
}
.answerbox .a_txt {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    text-align: left;
    padding: 0 20px;
}
.answerbox .a_txt .l {
    padding: 0 20px 0 0;
}
.answerbox .a_txt .r img {
    max-width: 100%;
}
.answerbox h3 {
    color: #f9be3d;
    border-bottom: 5px solid;
    line-height: 1.5;
    padding: 0;
    margin: 0 0 10px;
    display: inline-block;
}
.answerbox .answer {
    color: #ff565e;
    font-size: 16px;
    margin: 6px 0 0 0;
}
/* 非選題樣式 */
.tablewrap2 .txtflex {
    text-align: left;
    padding: 25px;
}
textarea.tf2 {
    padding: 5px 10px;
    border: 2px #e4e4e4 solid;
    border-radius: 5px;
    color: #606060;
    margin: 3px 0;
    letter-spacing: 1px;
}
/* Table */
.tablewrap th {
    background: #ffbc36;
    color: #ffffff;
    padding: 13px 0;
    font-weight: 500;
}
.tablewrap th:last-child::after {
    display: none;
}
.tablewrap td {
    padding: 20px 10px;
    color: #777777;
    letter-spacing: normal;
}
.tablewrap td .ps {
    display: block;
    padding: 3px 0 0;
}
.tablewrap tbody tr:nth-child(even) td {
    background: #f5f5f5;
}
.tablewrap .topic img {
    max-width: 100%;
}
.tablewrap2 tbody tr:nth-child(even) td,
.tablewrap3 tbody tr:nth-child(even) td {
    background: none;
}
.tablewrap2 tbody tr td,
.tablewrap3 tbody tr td {
    border-top: 1px solid #ffc033;
}
.tablewrap2 tbody tr td.tdbg {
    background: #fafafa;
    padding: 15px 5px !important;
}
/* radio bar */
.radioflex {
    display: flex;
    justify-content: center;
    padding: 3px 0;
}
.radioflex .ckratype {
    display: flex;
    flex-direction: column;
    padding: 0 2%;
    align-items: center;
    min-width: 27px;
}
.radioflex2 {
    display: flex;
    flex-direction: column;
    padding: 12% 0 !important;
}
/* 聯絡資訊頁面 */
.contbox3 {
    background: none !important;
    box-shadow: none !important;
}
.class_img {
    width: 120px;
}
.contactbox {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
    margin: 17px 0 0 0 !important;
}
.cbox {
    background: #ffff;
    width: 32.33333%;
    border-radius: 10px;
    position: relative;
    margin: 0 0 15px;
    box-shadow: 0 0 10px rgb(0, 0, 0, 0.1);
}
.cbox img {
    width: 100%;
    display: block;
    position: relative;
}
.cbox img:hover {
    background-color: #fec759 !important;
    opacity: 40%;
}
.cbox .name01 {
    background-color: #ffff;
    position: absolute;
    top: 0;
    overflow: hidden;
    color: #777777;
    z-index: 2;
    font-size: 20px;
    font-weight: 400;
    text-align: center;
    padding: 48px 13px 12px 10px;
    border-radius: 8px 0 10px 0;
    margin: 0;
    -webkit-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
}
.cbox .name01:after {
    content: "";
    width: 4px;
    height: 22px;
    background-color: #ffbc36;
    position: absolute;
    top: 15px;
    left: 50%;
    border-radius: 20%;
    margin-left: -1px;
}
.cbox .class_down {
    padding: 19px 19px 50px;
    font-size: 18px;
    color: #777777;
}
.cbox .class_down .c02 {
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 10px;
    left: 0;
    right: 0;
}
.c01 p {
    padding: 5px 5px 4px 30px;
    position: relative;
}
.c01 p .i_icon {
    position: absolute;
    left: 0;
    top: 1px;
}
/* 試卷結束 */
.ending {
    display: flex;
    justify-content: space-between;
    margin: 70px 0;
}
.ending .hori-line {
    width: 40%;
    border-bottom: 1px solid #9999;
    height: 1px;
}
.ending p {
    margin: -10px 0 0 0;
    color: #777777;
}
/* 圓餅圖 */
.piebox {
    display: flex;
    justify-content: center;
    position: relative;
}
.piebox h3:nth-child(1) {
    color: #fcc130;
    position: absolute;
    z-index: 2;
    top: 12px;
    left: 35%;
}
.piebox h3:nth-child(2) {
    color: #ff839d;
    position: absolute;
    z-index: 2;
    top: 162px;
    left: 51%;
}
.piebox .pic {
    width: 320px;
    position: relative;
}
.piebox h3:nth-child(1) {
    color: #fcc130;
    position: absolute;
    z-index: 2;
    left: 30px;
}
.piebox h3:nth-child(2) {
    color: #ff839d;
    position: absolute;
    z-index: 2;
    top: 162px;
    left: 245px;
}
.pie {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: #ffbc36;
    background-image: linear-gradient(
        to right,
        transparent 50%,
        currentColor 0
    );
    color: #ff839d;
    margin: 0 70px 0 70px;
}
.pie::before {
    content: "";
    display: block;
    margin-left: 50%;
    height: 100%;
    border-radius: 0 100% 100% 0 / 50%;
    background-color: inherit;
    transform-origin: left;
    transform: rotate(-90deg);
}
.data {
    margin: 140px 0 0 0;
}
.data p {
    margin: 7px 0;
}
.data p:nth-child(1) {
    color: #fcc130;
}
.data p:nth-child(1):before {
    content: "";
    width: 20px;
    height: 20px;
    background: #ffbc36;
    position: absolute;
    border-radius: 50%;
    z-index: 9999;
}
.data p:nth-child(2) {
    color: #ff839d;
}
.data p:nth-child(2):before {
    content: "";
    width: 20px;
    height: 20px;
    background: #ff839d;
    position: absolute;
    border-radius: 50%;
    z-index: 9999;
}
.data span {
    margin: 0 0 0 27px;
}
/*radio&checkbar樣式*/
select.seltype {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    display: inline-block;
    font-size: 15px;
    line-height: 1.5em;
    padding: 0.5em 3.5em 0.5em 0.5em;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
}
select.seltype {
    background-image: linear-gradient(45deg, transparent 50%, gray 50%),
        linear-gradient(135deg, gray 50%, transparent 50%),
        linear-gradient(to right, #ccc, #ccc);
    background-position: calc(100% - 20px) calc(1em + 2px),
        calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
    background-size: 5px 5px, 5px 5px, 1px 1.5em;
    background-repeat: no-repeat;
}
select.seltype:focus {
    background-image: linear-gradient(45deg, green 50%, transparent 50%),
        linear-gradient(135deg, transparent 50%, green 50%),
        linear-gradient(to right, #ccc, #ccc);
    background-position: calc(100% - 15px) 0.9em, calc(100% - 20px) 0.9em,
        calc(100% - 2.5em) 0.5em;
    background-size: 5px 5px, 5px 5px, 1px 1.5em;
    background-repeat: no-repeat;
    border-color: #13a09c;
}
select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
}
.ckratype {
    font-weight: 300;
    position: relative;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
}
.ckratype input,
.ckratype input:disabled {
    position: absolute;
    opacity: 0;
}
.ckratype span {
    position: relative;
    display: inline-block;
    width: 17px;
    height: 17px;
    background: none;
    border: 1px solid #65737f;
    vertical-align: bottom;
    top: -2px;
}
.ckratype span:hover {
    background: rgba(250, 250, 250, 0.15);
}
.ckratype span:after {
    content: "";
    position: absolute;
    top: 3px;
    right: 3px;
    bottom: 3px;
    left: 3px;
    background-color: #fff;
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
}
.ckratype input:checked + span:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    background-color: #eee;
}
.ckratype-default input:checked + span:after {
    background-color: #00ffff;
}
.ratype span {
    webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.ratype input:checked + span:after {
    background-color: #ff9800;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.ckratype-danger input:checked + span:after {
    background-color: #de815c;
}
.ckratype-info input:checked + span:after {
    background-color: #5ccdde;
}
.ckratype-success input:checked + span:after {
    background-color: #afde5c;
}
.cktype input:checked + span:after {
    background-color: #ff9800;
}
.selwrap {
    position: fixed;
    right: 0;
    top: 70px;
    z-index: 20;
}

#footer {
    z-index: 10;
}

/* 頁數 */
.pagerlist {
    text-align: center;
}
.page-item.first,
.page-item.last {
    display: none;
}
.page-item.next .page-link,
.page-item.prev .page-link {
    margin: 0px 0 7px 0;
    background: url(../images/content/icon_arrow.svg) no-repeat scroll center;
    width: 20px;
    height: 20px;
    color: #fff;
    text-indent: -9999px;
    line-height: 23px;
}
.page-item.prev .page-link {
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.page-item {
    display: inline-block;
    margin: 0 2px;
}
.page-item.active .page-link,
.page-item.active .page-link:focus,
.page-item.active .page-link:hover {
    z-index: 2;
    color: #f9be3d !important;
    font-size: 20px !important;
}
.page-item.disabled .page-link,
.page-item.disabled .page-link:focus,
.page-item.disabled .page-link:hover {
    pointer-events: none;
    cursor: not-allowed;
    opacity: 0.3;
}
.page-link {
    position: relative;
    float: left;
    color: #999;
    padding: 0 10px;
    line-height: 35px;
    text-align: center;
    letter-spacing: 0;
    display: inline-block;
    text-decoration: none;
}
.page-link:focus,
.page-link:hover {
    background-color: #f1f1f1 !important;
}
.page-item.next .page-link:hover,
.page-item.prev .page-link:hover {
    background: url(../images/content/icon_arrow2.svg) no-repeat scroll center;
    width: 20px;
    height: 20px;
    text-indent: -9999px;
}
/* swl */
.swal2-popup.popout2,
.swal2-popup.popout3 {
    padding: 0px !important;
    border-radius: 10px !important;
}
.swal2-popup.popout2 .swal2-header,
.swal2-popup.popout3 .swal2-header {
    padding: 15px 0;
    background: #f9be3d;
    border-radius: 10px 10px 0 0;
}
.swal2-popup.popout2 .swal2-title,
.swal2-popup.popout3 .swal2-title {
    text-align: center;
    margin: 0 0.4em 0 0.4em;
    font-size: 20px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    display: flex;
    align-items: center;
}
.swal2-popup .swal2-title .i_icon {
    margin: 0 6px;
    background-size: cover;
}
.swal2-popup.popout2 .swal2-content {
    padding: 20px 10%;
}
.swal2-popup.popout2 #swal2-content {
    text-align: left;
    font-size: 16px;
}
.swal2-popup.popout2 #swal2-content .txtbox02 {
    wmargin: 0 auto;
}
.swal2-popup.popout2 .swal2-content h2 {
    color: #777777;
    font-size: 20px;
}
.swal2-popup.popout2 .swal2-content h4 {
    color: #777;
    font-weight: normal;
}
.swal2-popup.popout2 .swaltxt {
    color: #4db7ff;
    font-weight: 400;
    padding: 5px 0;
}
.swal2-popup.popout2 .swaltxt .i_swl_5 {
    width: 30px !important;
    height: 30px !important;
}
.swal2-popup.popout2 .swaltxt02 {
    margin: 0 0 0 -7px;
}
.swal2-popup.popout2 .swaltxt03 {
    margin: 28px 0 0 0;
}
.swal2-popup.popout2 .swal2-actions,
.swal2-popup.popout3 .swal2-actions {
    margin: 0 auto 1.25em !important;
}
.swal2-popup.popout2 .swal2-styled.swal2-confirm,
.swal2-popup.popout3 .swal2-styled.swal2-confirm {
    background-color: #ff8086 !important;
}
.swal2-popup.popout2 .swal2-styled.swal2-cancel,
.swal2-popup.popout2 .swal2-styled.swal2-cancel {
    background-color: #f9be3d !important;
}
/* swl搜尋樣式*/
.swal2-popup.popout3 #swal2-content .formbox {
    width: 100%;
    color: #777;
    padding: 25px 25px 10px 25px;
    text-align: left;
    font-size: 18px;
}
.swal2-popup.popout3 .swal2-styled.swal2-cancel {
    background: #f9be3d;
}

/* RWD iframe */
.rwdbox {
    position: relative;
    padding-bottom: 40.25%;
    padding-top: 25px;
    height: 0;
    width: 100%;
}
.rwdbox iframe,
.rwdbox object,
.rwdbox embed,
.rwdbox video,
.rwdbox audio {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.rwdbox .map {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

/* 動畫進場 */
.come-in {
    transform: translateY(50px);
    transform: translateY(0px) \9;
    animation: come-in 2s ease forwards;
}
.come-in:nth-child(odd) {
    animation-duration: 1.5s;
}
.already-visible {
    transform: translateY(0);
    animation: none;
}
@keyframes come-in {
    to {
        transform: translateY(0);
    }
}

@media (max-width: 1650px) {
    .inbox {
        max-width: 95%;
    }
}
@media (max-width: 1400px) {
    .fixed .cont_title2 {
        left: 240px;
    }
    #header {
        width: 240px;
        padding: 15px;
    }
    #header .btns {
        left: 15px;
        right: 15px;
    }
    .logo img {
        max-width: 100%;
    }
    #content.bg2,
    #content.bg3 {
        margin-left: 240px;
    }
    .mainbtn {
        height: 300px;
    }
    .tablewrap td {
        padding: 15px 5px;
    }
    .mnav li.on:after {
        margin-right: -5px;
        width: 5px;
    }
}
@media (max-width: 1300px) {
    body {
        font-size: 15px;
        letter-spacing: normal;
    }
    .mnav li a {
        padding: 15px;
    }
    .cbox .class_down {
        font-size: 16px;
    }
}
@media (max-width: 1220px) {
    .fixed .cont_title2 {
        left: 200px;
    }
    #header {
        width: 200px;
        padding: 10px;
    }
    #header .btns {
        left: 10px;
        right: 10px;
    }
    #content.bg2,
    #content.bg3 {
        margin-left: 200px;
    }
    .cbox .name01 {
        font-size: 18px;
    }
}
@media (max-width: 1180px) {
    .inbox {
        max-width: 96%;
    }
    .fixed .cont_title2 {
        left: 0;
    }
    #header {
        position: relative;
        width: auto;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: stretch;
    }
    #header .btns {
        position: absolute;
        left: auto;
        right: 10px;
        top: 9px;
    }
    #header h2.title {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border: 0;
        padding: 0;
        text-align: left;
        font-size: 15px;
    }
    #header .maintitle {
        position: absolute;
        right: 125px;
        top: 10px;
    }
    #header .maintitle h2.title p {
        padding: 2px 0 0;
    }
    #header .maintitle h2.title small {
        font-size: 13px;
    }
    #header .maintitle h2.title .i_icon {
        margin: 0 5px 0 0;
        width: 45px;
        height: 45px;
        background-size: 35px auto;
    }
    #header .logo {
        padding: 0 15px 0 0;
    }
    #header .btn02 {
        font-size: 15px;
    }
    .mnav {
        padding: 0;
    }
    .mnav li {
        display: inline;
        float: left;
        border: 0;
    }
    .mnav li a {
        padding: 8px 10px;
    }
    .mnav li a .i_icon {
        margin: 0 5px 0 0;
    }
    .mnav li.on:after {
        width: 100%;
        height: 5px;
        top: 100%;
        left: 0;
        margin: 5px 0 0;
        border-radius: 0;
    }
    .cont_title {
        display: none;
    }
    .cont_title2 {
        display: block;
    }
    #content {
        min-height: calc(100vh - 66px);
    }
    #content.bg2,
    #content.bg3 {
        margin-left: 0;
    }
    .l_select {
        margin: 0 5px 0 0;
    }
    .cont_title2 .inbox .time {
        padding: 5px 12px;
    }
}
@media (max-width: 970px) {
    body {
        font-size: 14px;
    }
    #header .logo {
        padding: 4px 10px 0 0;
    }
    .logo img {
        max-width: 180px;
    }
    #content .inbox {
        padding: 15px 0 0;
    }
}
@media (max-width: 880px) {
    .fixed .cont_title2 {
        top: 66px;
    }
    #wrap {
        padding-top: 66px;
    }
    #header {
        justify-content: space-between;
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        height: 66px;
    }
    #header .maintitle {
        right: 75px;
    }
    #header .btns {
        position: static;
        padding: 10px;
    }
    #header .btn02 {
        font-size: 18px;
        padding: 10px;
    }
    .phone_menu {
        display: block;
    }
    .phone_nav {
        position: fixed;
        right: 0;
        top: 65px;
        bottom: 0;
        width: 300px;
        background: #fff;
        overflow: auto;
        box-shadow: -5px 0 0 rgba(0, 0, 0, 0.1);
        transform: translateX(350px);
    }
    .phone_nav.open {
        transform: translateX(0px);
    }
    .mnav li {
        display: block;
        float: none;
        border: 0;
        border-bottom: 1px solid #ddd;
    }
    .mnav li a {
        padding: 20px;
        font-size: 18px;
        font-weight: normal;
    }
    .mnav li a span {
        padding: 2px 0 0;
    }
    .mnav li a .i_icon {
        width: 30px;
        height: 32px;
        margin: 0 10px 0 0;
    }
    .mnav li.on:after {
        display: none;
    }
    .mnav li.on {
        background: #ffbc36;
    }
    .mnav li.on a {
        color: #fff;
    }
    .cbox .class_down {
        padding: 10px 10px 50px;
    }
    .mainbtn {
        height: 260px;
        font-size: 16px;
    }
    .list01 li {
        margin: 2px 0;
    }
    .loginbox {
        width: 650px;
        min-height: 440px;
        margin: -220px 0 0 -325px;
    }
    .rbox {
        padding: 20px 20px;
    }
    .tablewrap {
        overflow-x: auto;
        width: 100%;
    }
    .tablewrap table {
        width: 860px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }
    .tablewrap table thead {
        display: none;
    }
    .tablewrap table tbody {
        width: 100%;
    }
    .tablewrap2 {
        overflow: visible;
        border: 2px solid #b6b6b6;
        border-radius: 17px;
        overflow: hidden;
    }
    .tablewrap2 table {
        width: 100%;
    }
    .tablewrap2 tbody {
        display: block;
        width: 100%;
    }
    .tablewrap2 tbody tr {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        position: relative;
    }
    .tablewrap2 tbody tr td {
        border: 0;
        width: 100%;
        padding: 5px 15px;
        text-align: center;
    }
    .tablewrap2 tbody tr:last-child,
    .tablewrap2 tbody tr td.answerbox {
        border: 0;
    }
    .tablewrap2 tbody tr td.tdbg {
        border-bottom: 2px dashed #6b6b6b;
    }
    .tablewrap2 tbody tr td.tdbg.on {
        border-bottom: 0;
    }
    .tablewrap .b_txt small br {
        display: none;
    }
    .tablewrap3 table {
        display: table;
        width: 100%;
    }
    .tablewrap3 table thead {
        display: table-header-group;
    }
    .main_r .list01 {
        padding: 0 0 0 30px;
    }
    .answerbtn p {
        font-size: 14px;
    }
    .swal2-popup {
        width: 25em !important;
    }
    .swal2-popup.popout2 .swal2-content {
        padding: 15px 5%;
    }
    .mainlist {
        padding: 0;
    }
    .answerbox .a_txt {
        flex-direction: column;
        text-align: left;
        padding: 0 0 15px;
        align-items: flex-start;
    }
    .answerbox .a_txt .l {
        padding: 10px 0;
    }
    .cbox {
        width: 49.33333%;
    }
    .tablewrap2 tbody tr td.on.answerbox {
        border-bottom: 2px dashed #6b6b6b;
    }
}
@media (max-width: 750px) {
    body,
    .btn {
        letter-spacing: normal;
    }
    .loginbox {
        width: 550px;
        min-height: 400px;
        margin: -200px 0 0 -275px;
    }
    .lbox {
        width: 40%;
        padding: 30px 15px 15px;
    }
    .rbox {
        width: 60%;
    }
    .rbox .tfbtn {
        bottom: 20px;
    }
    .maintitle h2.title {
        line-height: 1.2;
    }
    .rbox .tfbar {
        padding: 10px 5px 5px 40px;
    }
    .btn01 {
        font-size: 18px;
    }
    .mainbtn .i_icon {
        width: 90px;
        height: 95px;
    }
    .cont_title2 .inbox {
        padding-top: 50px !important;
        position: relative;
        justify-content: center;
    }
    .cont_title2 .mistaken,
    .cont_title2 .time {
        position: absolute;
        left: 0;
        top: 5px;
    }
    .cont_title2 .r_btn {
        position: absolute;
        right: 0;
        top: 5px;
    }
    .mainlist .row1 > li {
        flex-direction: column;
    }
    .mainbtn2.arr_r:after {
        display: none;
    }
    .mainbtn {
        height: 230px;
    }
    .main_r .list01 {
        padding: 0 5px;
    }
    .title4 .s_txt {
        margin: 0 0 0 15px;
    }
    .tablewrap td {
        padding: 10px 5px;
    }
    .tablewrap2 tbody tr td {
        padding: 5px;
    }
}
@media (max-width: 600px) {
    .loginbox {
        display: block;
        min-height: 280px;
        width: 90%;
        left: 5%;
        margin-left: auto;
    }
    .lbox,
    .rbox {
        width: 100%;
        padding: 10px 15px;
    }
    .rbox {
        padding: 15px;
    }
    .rbox .tfbtn {
        position: static;
    }
    .maintitle h2.title p {
        padding: 0;
    }
    .cont_title h2.title {
        font-size: 16px;
    }
}
@media (max-width: 550px) {
    .mainbtn {
        height: 200px;
    }
    .mainbtn .i_icon {
        width: 70px;
        height: 75px;
    }
    .swal2-popup {
        width: 90% !important;
    }
    .swal2-popup .Txt {
        font-size: 15px;
    }
    .fixed .title4 {
        display: none;
    }
}
@media (max-width: 480px) {
    .cbox {
        width: 100%;
    }
    .logo img {
        max-width: 145px;
    }
    #header .maintitle h2.title .i_icon {
        margin: 0 5px 0 0;
        width: 35px;
        height: 35px;
        background-size: 25px auto;
    }
}

@media (max-width: 360px) {
    .cbox {
        width: 100%;
    }
    .logo img {
        max-width: 120px;
    }
    #header .maintitle h2.title .i_icon {
        margin: 0 5px 0 0;
        width: 30px;
        height: 30px;
        background-size: 20px auto;
    }
}
