*{font-family: 'Noto Sans TC','微軟正黑體',sans-serif; }
body{ font-family: 'Noto Sans TC','微軟正黑體',sans-serif;background: url(../images/bg.jpg) center / cover;   background-attachment: fixed;}
html{  scroll-behavior: smooth;}
section h1,section h2,section h3,section h4,section h5,section h6,section p,section span,section a{line-height: 1.4;position: relative;z-index: 999;color: #2d5a69;}
section p,section li,section table tr td{font-weight: 400;line-height: 1.8;color: #2d5a69;font-size: 1.12rem;}


.photo img{width: 100%;}

/* 輪播 */
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span { background: #ff7876 !important; }
.owl-theme .owl-dots .owl-dot span, .owl-theme .owl-dots .owl-dot span { background: #c5b9b6 !important; }


/* 共通 */
section {padding: 100px 0;position: relative;}
section p br { content: ""; margin: 1em; display: block; }

.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%;}  

.container{max-width:1350px;}

.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%;}  

#fluid { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; color: hsla(180, 100%, 50%, 0.325); }




/* 大小標題共用 */
.master-title {margin:20px 0;}
.master-title.center {text-align: center;margin:10px auto 40px;}
.master-title h2 {font-weight: 700;display: inline-block;position: relative;letter-spacing: .05em;margin: 0 0 20px;position: relative;}
.master-title p {font-size: 1.3rem;font-weight: 500;}
.master-title .icon {width: 120px;margin: 10px 0 ;}
.master-title.center .icon {margin: 10px auto ;}


.master-title.whiite h2{color: #fff;}


.master-title a {  text-decoration: none;text-align: center;transition: all ease 200ms;text-align: center;border-radius: 10px;background-color: #04244a;padding: 20px 15px;width: 80%;margin: 0 auto 20px;display: block;}
.master-title a h2 {margin: 0;color: #fff;}
.master-title a:hover {background-color: #000000;}


thead th {font-size: 1.25rem;}
table tbody tr {border-bottom: 1px solid #cacaca;}
table tbody tr:last-child {border: none;}
table thead.border-color-1  {border-bottom: 5px solid rgba(88, 125, 88, 0.6);}
table thead.border-color-2  {border-bottom: 5px solid rgba(126, 169, 144, 0.6)}





/* 主視覺 */
header#visual { position: relative; width: 100%; height: 85vh; background: url(../images/header-bg.jpg) center;background-size: cover;display: flex; }
header#visual .header-title {width: 55%;align-self: center;margin: 60px 30px 60px 90px;}
header#visual .header-title img {width:78%;}
header#visual .header-photo {width: 45%;display: flex;flex-direction: column;justify-content: flex-end;align-items: flex-start;position: relative;}
header#visual .header-photo > img{width: 88%;}

header#visual .header-title h1 {font-size: 5rem;font-weight: 900;margin: 0 0 10px;line-height:1.5;color: #2d5a69;}
header#visual .header-title h1 span {border: 2px solid #2d5866;padding: 2px 15px;background-color: #fff;border-radius: 10px;}
header#visual .header-title h2 {font-size:1.7rem;color: #0099cc;line-height: 1.6;}

header#visual .logo {width: 20%;position: absolute;left: 15px;top: 10px;}



.list-title {display: flex;align-items: center;margin: 0 0 10px;}
.list-title .num{padding: 5px 10px;background-color: #0099cc;display: inline-block;color: #fff;margin-right: 10px;width: 37px;text-align: center;}
.list-title h4 {margin: 0;}

section#pain {background-color: #0099cc;padding: 0 0 100px;}
section#pain .box {background-color: #fff;border-radius: 10px;display: flex;padding:30px 30px;box-shadow: 0 0 50px #2d5a698d;margin: 0 auto;width: 90%;position: relative;transform: translateY(-50px);}
section#pain .box .master-title {width: 30%;padding: 30px;}
section#pain .box .box-con {width: 70%;padding: 30px;}
section#pain .box .box-con .box-con-list {margin: 0 0 40px;}
section#pain .box .box-con .box-con-list:last-child {margin: 0;}

section#pain .remind {display: flex;}
section#pain .remind .icon {width: 80px;margin: 10px 10px 0 0 ;}
section#pain .remind p {color: #fff;font-size: 1.2rem;font-weight: 600;}
section#pain .remind p span{color: #FFCC33;}



section#role {background-color: #d1f3ff;}
section#role .card-g{display: flex;justify-content:space-between;}



/* 2. 卡片本體：設定尺寸 */

section#role .card { width:32%; height: 600px; position: relative; margin: 0 auto; cursor: pointer;  border-radius: 15px; border: none; }
section#role .card-con { width: 100%; height: 100%; position: relative; }
section#role .card-con h4 {text-align: center;} 

section#role .card-f, 
section#role .card-a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 20px;
    border-radius: 15px;  
    background-color: #fff;
    border: 1px solid #ddeef3;
    
    /* 排版內容置中 (可選) */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: justify;

}



/* 5. 封面 (.card-f) */
section#role .card-f { z-index: 2; transform-origin: left center; transition: all 2s cubic-bezier(0.25, 1, 0.5, 1); box-shadow: 2px 0 10px rgba(108, 120, 136, 0.1);     opacity: 1;border-right: 3px solid #0099cc;}
section#role .card-f .photo img { max-width: 80%;  margin: auto; }
section#role .card-f .photo {text-align: center;}
/* 6. 內頁 (.card-a) */
section#role .card-a { z-index: 1; background-color: #2d5b7f; box-shadow: inset 3px 0 10px rgba(135, 157, 169, 0.05); }
section#role .card-a .photo img { max-width: 100%; text-align: center; margin: auto; }
section#role .card .card-a h4,section#role .card .card-a div ,section#role .card .card-a p {color: #fff;}



section#role .card:hover .card-f { transform: rotateY(-110deg); }
section#role .card .card-f h4,section#role .card .card-f div ,section#role .card .card-f p {transition: all 2s cubic-bezier(0.25, 1, 0.5, 1);}
section#role .card:hover .card-f h4,section#role .card:hover .card-f div ,section#role .card:hover .card-f p {opacity: 0.2;}














section#lesson {background-color: #eff4f7;}
section#lesson .book {display: flex;justify-content: space-around;}
section#lesson .book .lesson-con {width: 49%;padding: 60px 30px 60px 60px;}
section#lesson .book .lesson-con:nth-child(1) {background: url(../images/book-l.svg) center;background-size: cover;}
section#lesson .book .lesson-con:nth-child(2) {background: url(../images/book-r.svg) center;background-size: cover;}
section#lesson .book .lesson-con h5 {font-size: 1.15rem;}
section#lesson .book .lesson-con .list-title {margin: 0 0 20px;}


section#lesson .discount-box {border: 3px dashed #0099cc;margin: 60px auto;display: flex;padding: 30px;justify-content: space-around;align-items: center;  width: 85%;border-radius: 20px;}
section#lesson .discount-box .text {width: 50%;}
section#lesson .discount-box .photo {width: 35%;}
section#lesson .discount-box .photo img {width: 100%;}

section#lesson .discount-box .text .list-g {display: flex;align-items: center;margin: 20px 0 ;}
section#lesson .discount-box .text .list-g .icon  {width: 60px;margin-right: 20px;}
section#lesson .discount-box .text .list-g h5 {font-size: 1.6rem;}

section#lesson .discount-box .text .list-g h5 span {background-color: #0099cc;margin: 0 0 0 5px;padding: 5px 15px;color: #fff;border-radius: 5px;}


section#get {background-color: #d1f3ff;}
section#get .box {display: flex}
section#get .box .box-con{width: 35%;}
section#get .box .box-con:nth-child(2){width: 30%;}
section#get .box .box-con .con {border-radius: 20px;border: 3px solid #0099cc;overflow: hidden;margin: 0 0 20px;background-color: #fff;}
section#get .box .box-con .con h5 {background-color: #0099cc;text-align: center;padding: 5px 10px;color: #fff;margin: 0;}
section#get .box .box-con .con .text {padding: 15px;}
section#get .box .box-con .con .text p{margin: 0;}
 section#get .box .box-con:nth-child(1) .con:nth-child(2){transform: translateX(-8%);}
    section#get .box .box-con:nth-child(3) .con:nth-child(2){transform: translateX(8%);}





section#qa {background-color: #0099cc;padding: 100px 0 60px;} 
section#qa .accordion .card {margin: 0 0 20px;border-radius: 20px;}
section#qa .accordion .card .card-header {background-color: #fff;}
section#qa .accordion .card .card-header button {color: #2d5a69;font-size: 1.2rem;font-weight: 600;text-decoration: none;}
section#qa .accordion .card .card-header button:hover {text-decoration: none;}
section#qa .accordion .card .card-header button:focus {outline: none;box-shadow: 0 0 0 .2rem rgba(0, 123, 255, 0);}
section#qa .accordion .card .card-header button span {color:#0099cc;font-size: 1.8rem;transform: translateY(3px);display: inline-block;margin-right: 5px;}
section#qa .accordion .card .card-body {color: #2d5a69;font-size: 1.12rem;padding:30px 35px;}
section#qa a {color: #0099cc;}
















/* 按鈕*/ 
section#BTN {position: relative;padding: 60px 0 ;background-color: #0b3644;}


section#BTN  .btn h5{margin: 0;padding: 0; font-weight: 600;font-size: 1.25rem;transition: all ease 200ms;display: inline-block;color: #04244a;text-wrap: wrap;}
section#BTN  a:hover h5 {color: #fff;}
section#BTN a {  text-decoration: none;display: block;text-align: center; width:100%;font-size: 1.2rem;font-weight: 600;transition: all ease 200ms;margin: 0 auto 20px;text-align: center;background-color: transparent;padding: 10px;border-radius: 10px;background-color: #fff;padding: 20px 15px;}
section#BTN a:hover{background-color: #0099cc;}


section#BTN .btn {padding: 0;}










@media(max-width:1690px){
    .title h2 {font-size: 2rem;}
    /* 主視覺 */



}

@media(max-width:1440px){
     /* 主視覺 */
   

}

@media(max-width:1300px){
    /* 主視覺 */


.container { max-width: 1020px; }
header#visual {height: auto;}
header#visual .header-title {margin:100px 20px 150px 40px;width: 55%;}
header#visual .header-title img {width:78%;}
header#visual .header-photo {width: 45%;}
header#visual .header-photo > img{width: 100%;}

header#visual .header-title h1 {font-size: 3.6rem;}

header#visual .header-title h2 {font-size:1.6rem;text-shadow: 2px  2px 0px #EFF4F7, -2px -2px 0px #EFF4F7, 2px -2px 0px #EFF4F7, -2px  2px 0px #EFF4F7;}
header#visual .header-title h2 br {display: none;}


section#role .card { height: 660px; }
section#lesson .discount-box .text .list-g h5 { font-size: 1.4rem; }
section#lesson .discount-box .text .list-g .icon { width: 45px; margin-right: 10px; }








}
@media(max-width:1199px){
     /* 主視覺 */


    .video-flex .video-item { width: 44.8%; }
}


@media(max-width:991px){

    .title h3 { font-size: 1.6rem; }
    .master-title { width: 100%; }
    .container{max-width:900px;}
    nav ul {max-width:900px;}






    section#lesson .lesson-box-g .lesson-box .lesson-box-con .viden-con-flex { flex-direction: column; }
    section#lesson .lesson-box-g .lesson-box .lesson-box-con .viden-con-flex .text { width: 100%; }
    section#lesson .lesson-box-g .lesson-box .lesson-box-con .viden-con-flex .viden-con-g { width: 100%; }




  section#lesson .lesson-box-g { margin: 250px 0; }
  section#lesson .lesson-box-g:last-child { margin: 250px 0 0; }
  
  section#BTN a {  width: 400px;}

     
     
}


@media(max-width: 767px){
    .container { padding: 15px;max-width: 98%; }
 
    .title h3 { font-size: 1.6rem; }
    h2{font-size: 1.6rem;}
    nav {position: relative;padding: 0;box-shadow: none;}
    nav ul li img { width: 20px; }
    nav ul { flex-direction: column;max-width: 100%; }
    nav ul li { margin:10px 0; }
    .master-title h2 { font-size: 1.7rem; }
    .master-title h4 { font-size: 1.3rem; }
    .master-title h5 { font-size: 1.1rem;line-height: 1.8; }
    .master-title .icon { width: 90px; margin: 10px 0; }
    .master-title a { width: 100%; }



    section p, section li, section table tr td { font-size: 1.05rem; }

    section {padding: 20px 0;}

    header#visual { flex-direction: column;padding: 30px;background: url(../images/header-bg-m.jpg) center bottom ;}
    header#visual .header-title {margin: 80px 0 20px 0;width: 100%;}
    header#visual .header-title h1 { font-size: 2.3rem;  text-shadow: 2px 2px 0px #EFF4F7, -2px -2px 0px #EFF4F7, 2px -2px 0px #EFF4F7, -2px 2px 0px #EFF4F7;}
    header#visual .header-title h2 { font-size: 1.4rem; text-shadow: 2px 2px 0px #EFF4F7, -2px -2px 0px #EFF4F7, 2px -2px 0px #EFF4F7, -2px 2px 0px #EFF4F7; }
    header#visual .header-photo { width: 100%;text-align: center; }
    header#visual .logo {width:52%;}



    section#pain .box { padding:20px; width: 95%;  transform: translateY(-30px); flex-direction: column; }
    section#pain .box .master-title { width: 100%; padding: 0px; }
    section#pain .box .box-con { width: 100%; padding: 0px; }
    section#pain .remind .icon { width: 240px; margin: 10px 10px 0 0; }


    section#role .card-g { flex-direction: column; }
    section#role .card { width: 100%; height: 600px; margin: 0 0 30PX; }


    section#lesson .book { flex-direction: column; }

    section#lesson .book .lesson-con {width: 100%;background-color: #fff;;padding:0 ;}
    section#lesson .book .lesson-con:nth-child(1) { background:none;background-color: #fff; ;padding:20px 20px 0;}
    section#lesson .book .lesson-con:nth-child(2) { background:none; background-color: #fff;;padding:0 20px 20px;}



    section#lesson .discount-box { padding: 20px; width: 100%; flex-direction: column; }
    section#lesson .discount-box .text { width: 100%; }
    section#lesson .discount-box .text h5  {font-size: 1.15rem;}
    section#lesson .discount-box .text h5 span {display: block;}
    section#lesson .discount-box .photo { width: 80%;margin: 0 auto; }


    section#get .box { flex-direction: column; }
    section#get .box .box-con {width: 100%;}
    section#get .box .box-con:nth-child(1) {order: 2}
    section#get .box .box-con:nth-child(2) {order: 1;width: 65%;margin: 0 auto;}
    section#get .box .box-con:nth-child(3) {order: 3;}

    section#get .box .box-con .photo {width: 100%;}

    section#get .box .box-con:nth-child(1) .con:nth-child(2){transform: translateX(0%);}
    section#get .box .box-con:nth-child(3) .con:nth-child(2){transform: translateX(0%);}
















    /* section#BTN .btn { width: 100%; } */
    section#BTN a { width: 100%;}




}












@media(max-width: 575px){
    .container { padding: 15px; }
    .title h3 { font-size: 1.6rem; }
    h2{font-size: 1.6rem;}
    h3{font-size: 1.3rem;}
    h4{font-size: 1.2rem;}
    h5{font-size: 1.1rem;}
    .title h4 { font-size: 1.3rem; }
   


}