﻿@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap");

/* ---reset.css--- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1; 
}
ol, ul, li{
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ---reset.css--- */


a { text-decoration:none;}

html {	
	-webkit-text-size-adjust:none;
	 scroll-behavior: smooth;
}

body{ 
 font-family: 'Noto Sans TC', sans-serif;

background:url(images/bg.png) ;
background-size: cover ;
}

 	@media screen and ( max-width: 768px ){
		*{
			box-sizing:border-box; /* 讓 padding 與 width 解除關係 */
		}
		html,body{
			-webkit-text-size-adjust:none; /* iPhone 旋轉後 文字不要放大 */
		}
	}
/* --電腦版型------------------------------------- */

#WRAPPER{width:100%; min-width:1200px; margin:0 auto; }
 	@media screen and ( max-width: 768px ){
		#WRAPPER{ min-width:100%;}
	}
	
header{
	clear:both;
	width:100%;
	margin:0 auto;
	background-color:#727171;
	padding:5px 0;

	}	
	
header img{	padding-left:15px;
	}


#BANNER_m{display:none;}


	 @media screen and ( max-width: 768px ){
		#BANNER_m{display:block;
width:100%;margin:0;margin-top:0px;margin-bottom:0;padding:0;
	}
		
header img{
	width:80%;
	padding-left:5px;
	}	
	
		#BANNER_m img{
			width:100%;
			margin:0;
			padding:0;
			right:0;
			}
			

	}


article{
	width:100%;
	height:auto;
	overflow:hidden;
	margin:0 auto;
	}

	
#title{
	width:100%;
	height:550px;
	overflow:hidden;
	margin:0 auto 0 auto;
	text-align:center;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px;
	}	
	
#title div {
	width: 1200px;
	margin: 0 auto;
}
#title div ul{
	position: absolute;margin-left:100px;margin-top:340px;
	display:flex; flex-wrap:wrap; gap:10px;
	font-size:1.15rem;
	width:680px; 
}
#title div ul li{
	display:inline-flex; align-items:center; gap:.5em; padding:8px 12px; border-radius:999px; background:#fff; font-weight:700; color:#5a5871; border:1px solid rgba(0,0,0,.06);margin:5px 0;
}
.btn{
	display:inline-flex; 
	align-items:center; 
	justify-content:center; 
	gap:.6em; 
	padding:14px 22px; 
	border-radius:14px; 
	font-weight:900; 
	letter-spacing:.02em; 
	border:0; 
	cursor:pointer; 
	background:linear-gradient(135deg, #8a59d6, #e24dae); 
	color:#fff; 
	box-shadow:0 12px 24px rgba(226,77,174,.25); 
	transition:.15s transform, .15s box-shadow;
	font-size:1.25rem;
}

.btn:hover{
	transform:translateY(-1px); 
	box-shadow:0 16px 32px rgba(226,77,174,.35)
}

.btn-outline{
	background:#fff; 
	color:#8a59d6; 
	border:2px solid #8a59d6; 
	box-shadow:none;
	margin-left:30px;
}

 	@media screen and ( max-width: 768px ){
 	
article{
	width:100%;
	margin:0 auto;
	height:auto;
	}
#title{
display:none;
	}	
}	


section{
	width:100%;
	height:auto;
	overflow:hidden;
	text-align:center;
	margin:0 auto;
	line-height:1.5;
	position: relative;
	z-index:99;
	background:rgba(255,255,255,.5);
	}	
	
	section .box{
	width:1100px;
	margin:10px auto;
	padding:0 15px;
}

	.box h1{
	text-align:left;
	font-size:2rem;
    padding: 10px 0;
}

	.card {
	width:58%;
	margin:0 auto;
    float:left;
}

	.card:last-child {
	width:38%;
    text-align: center;
    padding: 15px 5px;
    border-radius: 5px;
    border: 1px solid #ddd;
    background:#FFF;
    float:right;
}
.features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); 
    gap: 20px; /* 區塊間距 */
    border-top: 1px dashed #eee;
	text-align:center;
}


.feature-item {
    text-align: center;
    padding: 15px 5px;
    border-radius: 5px;
    border: 1px solid #ddd;
    transition: transform 0.2s, box-shadow 0.2s;
    background:#FFF;
}

.feature-item:hover {
    transform: translateY(-5px); /* 滑鼠懸停時輕微上浮 */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.feature-item h3 {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--primary-color);
    margin: 0;
    padding: 0;
    border-bottom: none; /* 移除 h3 的底線 */
}

.feature-item p {
    font-size: 1.015rem;
    color: #333;
    margin-top: 5px;
}

	.kv {
    display: grid;
  grid-template-columns: repeat(2, 1fr); 
  margin:0 auto 10px auto;
}

	.kv b{color:#4338ca;}
	.kv > div{
	background:#fafaff; 
	border:1px dashed rgba(138,89,214,.25); 
	padding:12px; 
	border-radius:12px;
	 font-size: 1.15rem;
	margin:0 5px ;
	font-weight:700;
}

/* RWD 調整：在手機上將四欄改為兩欄，避免過於擁擠 */
@media (max-width: 768px) {

	
	section .box{
	width:95%;
	margin:10px auto;
	padding:0 ;
}

	.box h1{
	text-align:left;
	font-size:1.25rem;
    padding: 5px 0;
}

	.card {
	width:95%;
    float:none;
    margin:10px auto;
    border:none;
}

	.card:last-child {
	width:95%;
    float:none;
}
.features-grid {
	width:100%;
    border:none;
}


.feature-item {
    padding: 15px 0;
}

.feature-item h3 {
    font-size: 1.2rem;
}

.feature-item p {
    font-size: 1rem;
}

.kv {
  grid-template-columns: repeat(1, 1fr); 
}
	.kv > div{
	 font-size: 1.05rem;
	margin:5px  auto;
	font-weight:700;
}
}

.teacher {
		width:58%;
		height:auto;
		overflow:hidden;
    text-align: center;
    padding: 20px 0;
    border-radius: 5px;
    border: 1px solid #ddd;
    background:#FFF;
		float:left;

}
.teacher:last-child {
	width:39%;
    text-align: center;
    padding: 15px 0;
    border-radius: 5px;
    border: 1px solid #ddd;
    background:#FFF;
    float:right;

}
.teacher img{
		width:180px;
		height:auto;
		float:left;
		margin:0 10px 0 30px;
}
.teacher h2 {
    font-size: 1.45rem;
    font-weight: 700;
    margin: 0;
    padding: 0 0 0 0;  
	text-align:left;
    border-bottom: none; /* 移除 h3 的底線 */
}
.teacher ul{
	margin:8px 0 8px 0;
	float:left;
	text-align:left;
	}
.teacher iframe{
		width:350px;
		height:200px;
		
}


.teacher .btn-outline{
	background:#fff; 
	color:#8a59d6; 
	border:2px solid #8a59d6; 
	box-shadow:none;
	margin: 10px 0 0 0;
	font-size:1rem;
	padding:5px 12px; 
}

.memo {
		width:95%;
		height:auto;
		overflow:hidden;
    text-align: left;
    padding: 15px 30px;
    border-radius: 5px;
    border: 1px solid #ddd;
    background:#FFF;
}

footer{
	clear:both;
	width:100%;
	margin:0 auto;
	background:#4B3100;
	color:#FFF;
	padding:8px 0;
	text-align:center;
	font-size:0.85rem;
	line-height:1.5;
}

 	@media screen and ( max-width: 768px ){
 	
	
.teacher {
		width:95%;
		margin:0 auto;
		float:none;
		text-align:center;

}
.teacher:last-child {
		width:95%;
		margin:10px auto;
		float:none;

}
.teacher img{
		width:150px;
		float:none;
		margin:0 auto;
}
.teacher h2 {
    font-size: 1.45rem;
	text-align:center;
    border-bottom: none; /* 移除 h3 的底線 */
}
.teacher ul{
	margin:8px auto;
	float:none;
	text-align:center;
	}

.memo {
    margin:0 auto;
}

 	
 	
 	}

table{
	width:100%;
  border-collapse: collapse;
  margin:30px auto 0 auto;
	font-size:1.25rem;
	text-align: center;
    border: 1px solid #ddd;
    background:#FFF;
    	border-radius:14px; 
}

table thead{
	font-weight:bold;
	line-height:1.8;
}
	
table tbody{
}

table tbody tr{
  border: solid 1px #EEE;
}

table tbody th{
  width: auto;
  height:auto;
	font-weight:500;
  align-content: center;background:linear-gradient(135deg, #8a59d6, #e24dae); 
	color:#FFF;
}

table tbody td{
  width: 80%;
  padding: 15px 0 15px 20px;
	text-align:left;
}
table tfoot td{
  width: 80%;
  padding: 15px 0;
}


input[type=text], input[type=password] {
  width:90%;
  padding: 10px 15px;
  margin:  0;
  display: inline-block;
  border: 1px solid #ccc;
  border-radius: 4px;
	font-size:1.25rem;
}

input[type=radio]{
	height:18px;
	width:18px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-right:8px;
  margin-left:8px;
}


table tbody td span{
	float:left;
}

table a {
	font-size:1rem;
	margin:0 8px ;
	background:#97cfac;
	color:#FFF;
	padding:3px 5px;
	}
	
table button {
	border:none;
	background:#118bc8;
	color:#FFF;
	font-size:1.35rem;
   cursor: pointer;
	padding:5px 8px 5px 8px;
	font-weight:550;
	display:inline-block;
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	
	}

#navFixed {
  z-index: 999999;          
  position: fixed;
  bottom: 0;
  left: 0;
  min-width: 100%;
	text-align:center;
	background:#FFF;
	padding:10px 0;
box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;
}

#navFixed input[type=submit]{
	font-size:1.655rem;
}


/* 彈跳視窗背景 */
.modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
}

/* 彈跳視窗內容 */
.modal-content {
    background: white;
    padding: 10px;
    border-radius: 10px;
    width: 650px;
    margin: 5% auto 5% auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
    animation: fadeIn 0.3s ease-in-out;
}

/* 關閉按鈕 */
.close {
    float: right;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
}



.help{
width:100%;
font-size:1.1rem;
}



textarea{
width:90%;
	padding:10px;
	font-size:1rem;
}


 	@media screen and ( max-width: 768px ){

.modal-content {
    width: 100%;
}



table{
	width:100%;
  margin:20px auto 0 auto;
	font-size:0.985rem;
}
	
table td{
  width: 80%;
}

table tbody td{
  width: 80%;
  padding: 15px 0 15px 10px;
}

input[type=text], input[type=password] {
  width:95%;
  padding: 8px;
	font-size:1.05rem;
}
input[type=radio]{
	height:15px;
	width:15px;
  margin-right:5px;
  margin-left:5px;
}


input[type=submit]{
    padding: 5px 15px;
		font-size:1.125rem;
}

.help{
font-size:.9rem;
}

textarea{
	font-size:1rem;
}


}
