@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
html,
body {
	margin: 0;
	padding: 0;
}
body.no-scroll {
  overflow: hidden; /* 禁止滾動 */
}
a:hover {
    text-decoration: none;
}
figure {
    margin: 0;
}
body {
	font-family:"Noto Sans TC","Microsoft JhengHei", "Noto Sans CJK TC", PingFang, STHeiti, sans-serif, serif;
	background-color:#fbfbfb;
	background: url(../img/bg.jpg);
    background-size: 100% 100%;
    background-repeat: repeat-y;
}

.fix_aside {
  position: fixed;
  z-index: 99;
  right: 1rem;
  bottom: 0.5rem;
  -webkit-transform: translateX(150%);
          transform: translateX(150%);
  -webkit-transition: -webkit-transform 600ms;
  transition: -webkit-transform 600ms;
  transition: transform 600ms;
  transition: transform 600ms, -webkit-transform 600ms;
}

.fix_aside.is_active {
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
}

.fix_aside .fx_item {
  position: relative;
  display: block;
  border-radius: 0.5em;
  margin: 0.5em 0;
  width: 4em;
  height: 4em;
  background-color: #fff;
  font-size: 0.95rem;
  cursor: pointer;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.19);
          box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.19);
  -webkit-transition: -webkit-transform 240ms, -webkit-box-shadow 240ms;
  transition: -webkit-transform 240ms, -webkit-box-shadow 240ms;
  transition: transform 240ms, box-shadow 240ms;
  transition: transform 240ms, box-shadow 240ms, -webkit-transform 240ms, -webkit-box-shadow 240ms;
}

.fix_aside .fx_item.is_primary {
  background: linear-gradient(94.17deg, #01FFFF 8.85%, #FEE92E 103.15%);
  color: #0F236C;
  line-height: 1.3;
}

.fix_aside .fx_item:hover {
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.19);
          box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.19);
}

.fix_aside .fx_item .in_wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.fix_aside .fx_item .in_wrap.ic {
  width: 100%;
  height: 100%;
  padding: 0.6em;
}

.fix_aside .fx_item .in_wrap.ic .ic_top {
  width: 100%;
  padding-top: 100%;
  background: url("../img/arrow_top.png") center/contain no-repeat;
}

.g_main{
	width:100%;
	height:100vh;
	position:relative;
}
.intro_logo{
    width: 20%;
    padding: 20px 30px;
}
.intro_logo img{
	width:100%;
}
.sc_content{
	display: flex;
    justify-content: center;
    height: 70vh;
    align-items: center;
	animation: anim01 100s ease 1;
}
.tit{
	text-align:center;
	font-size: 50px;
    line-height: 90px;
    font-weight: 900;
    color: #cd0e3c;
    text-shadow: 5px 5px 10px rgba(0, 0, 0, 0.4);
}
.tit img{
	width: 40%;
}
.big_content{
	width:100%;
	height: 100vh;
	position: absolute;
  top: 0;
	display: flex;
}

.big_content .roomdeco{
    position: absolute;
    right: -5%;
    bottom: -15%;
    text-align: right;
    z-index: -1;
}
.big_content .roomdeco img{
	width:70%;
}

.theacher{
	width: 30%;
    height: 100vh;
	position:relative;
	z-index: 10;
	animation: anim02 100s ease 1;
}
.theacher img{
	position:absolute;
}
.theacher img.tman{
	width: 270px;
	bottom: -90px;
	left: 45px;
}
.theacher img.thand{
	bottom: 155px;
    width: 135px;
	left: 280px;
	animation: swing 5s infinite ease-in-out;
	transform-origin: 10px 100px;
}
@keyframes swing {
  0% {
    transform: rotate(0deg); /* 初始角度 */
  }
  50% {
    transform: rotate(30deg); /* 回到初始角度 */
  }
  100% {
    transform: rotate(0deg); /* 回到初始角度 */
  }
}

.whiteboard{
	width: 1350px;
  height: 100vh;
	background-image:url("../img/boardpc.png");
	background-size:contain;
	background-repeat:no-repeat;
	background-position-y:bottom;
  position: absolute;
  right: 0;
	animation: anim03 100s ease 1;
}

.btitle img{
	margin:0 20px;
}
.btitle {
	color:#fff684;
	font-size:35px;
	font-weight:900;
	display: flex;
    align-items: center;
	position: relative;
	animation: anim04 100s ease 1;
}
.btitle:after{
    content: "";
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 800px solid #fff684;
    position: absolute;
    bottom: -15px;
    left: 25px;
}
.btext ul{
	list-style:none;
	margin:0;
	padding:0;
	color:#fff;
	font-size:30px;
	font-weight:900;
	letter-spacing:3px;
	padding:50px 25px;
	padding-bottom:0;
}
.btext li{
	padding: 5px 0 ;
	
}
.btext li:nth-child(1){
	animation: anim05 100s ease 1;
}
.btext li:nth-child(2){
	animation: anim06 100s ease 1;
}
.btext li:nth-child(3){
	animation: anim07 100s ease 1;
}
.btext li:nth-child(4){
	animation: anim08 100s ease 1;
}
.btext li:nth-child(5){
	animation: anim09 100s ease 1;
}
.boardCont{
    margin: 0 auto;
    position: absolute;
    bottom: 40vh;
    left: 140px;
    width: 70%;
    height: fit-content;
}

.bbtn{
	animation: anim10 100s ease 1;
  position: absolute;
  bottom: -80px;
}
.bbtn a{
	text-align:right;
	background:#8b81cf;
	color:rgba(255,255,255,0.7);
	text-decoration: none;
  font-size: 25px;
  font-weight: bold;
  width: 80%;
  padding: 5px 0;
	border-radius:50px;
	border:5px solid #3f3f3f;
	position:relative;
	transition: all 2s ease;
  padding-right: 20px;
  padding-left: 50px;
}
.bbtn a:before{
	  position:absolute;
	  content: "";
    width: 35px;
    height: 35px;
	  background:rgba(255,255,255,0.7);
	  border-radius:50%;
    top: 5px;
    left: 8px;
}
.bbtn a:hover:before{
	left: 8px;
	animation: moveright 100s ease;
}
.bbtn a:hover:after{
	left: 5px;
	animation: moverightf 100s ease;
}
.bbtn a:hover{
	left: 5px;
	animation: moverighta 100s ease;
}
@keyframes moveright {
  0% {
    left: 8px;
  }
  1% {
    left: 850px;
  }
  100% {
    left: 850px;
  }
}
@keyframes moverightf {
  0% {
    left: 5px;
  }
  1% {
    left: 850px;
  }
  100% {
    left: 850px;
  }
}

@keyframes moverighta {
  0% {
    padding-right: 20px;
    padding-left: 50px;
  }
  1% {
    padding-right: 60px;
    padding-left: 20px;
  }
  100% {
    padding-right: 60px;
    padding-left: 20px;
  }
}
.bbtn a:after{
    position: absolute;
    content: "";
    width: 50px;
    height: 80px;
    background: url(../img/handbtn.png);
    background-repeat: no-repeat;
    background-size: contain;
    top: 20px;
    left: 5px;
}
.close-popup {
    background: #e85700;
    color: #cfdcb3;
    border: none;
    padding: 10px 15px;
    border-radius: 4px;
    cursor: pointer;
    position: absolute;
    top: 60px;
    right: 10%;
	position: absolute;
    width: 30px;
    height: 30px;
	border-radius: 50%;
}
.close-popup:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
}
.close-popup:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
}
.close-popup:before, .close-popup:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 75%;
    height: 1px;
    background: #fff;
}
.hidden {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.visible {
  visibility: visible;
  opacity: 0.9;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
/* 動畫100秒內 */
/* 大標出現又消失 */
@keyframes anim01 {
  0% {
	opacity:0;
  }
  2% {
	opacity:1;
  }
  5% {
	opacity:1;
  }
  7% {
	opacity:0;
  }
  100% {
	opacity:0;
  }
}
/* 老師從左跑出來 */
@keyframes anim02 {
  0% {
	transform: translateX(-100%);
  }
  2% {
	transform: translateX(-100%);
  }
  4% {
	transform: translateX(0);
  }
  100% {
	transform: translateX(0);
  }
}
/* 老師從左跑出來/手機 */
@keyframes anim02ms {
  0% {
	left: -300px;
  }
  2% {
	left: -300px;
  }
  4% {
	left: 0;
  }
  100% {
	left: 0;
  }
}
/* 黑板從下面跑上來 */
@keyframes anim03 {
  0% {
	transform: translateY(100%);
  }
  3% {
	transform: translateY(100%);
  }
  5% {
	transform: translateY(0);
  }
  100% {
	transform: translateY(0);
  }
}
/* 黑板大標 */
@keyframes anim04 {
  0% {
	  opacity: 0;
	transform: translateY(100%);
  }
  5% {
	  opacity: 0;
	transform: translateY(100%);
  }
  6% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
@keyframes anim05 {
  0% {
	  opacity: 0;
	transform: translateY(50%);
  }
  6% {
	  opacity: 0;
	transform: translateY(50%);
  }
  8% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
@keyframes anim06 {
  0% {
	  opacity: 0;
	transform: translateY(50%);
  }
  7% {
	  opacity: 0;
	transform: translateY(50%);
  }
  9% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
@keyframes anim07 {
  0% {
	  opacity: 0;
	transform: translateY(50%);
  }
  8% {
	  opacity: 0;
	transform: translateY(50%);
  }
  10% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
@keyframes anim08 {
  0% {
	  opacity: 0;
	transform: translateY(50%);
  }
  9% {
	  opacity: 0;
	transform: translateY(50%);
  }
  11% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
@keyframes anim09 {
  0% {
	  opacity: 0;
	transform: translateY(50%);
  }
  10% {
	  opacity: 0;
	transform: translateY(50%);
  }
  12% {
	  opacity: 1;
	transform: translateY(0);
  }
  100% {
	  opacity: 1;
	transform: translateY(0);
  }
}
/* 黑板按鈕 */
@keyframes anim10 {
  0% {
	  opacity: 0;
	  transform: translateY(50%);
  }
  11% {
	  opacity: 0;
	  transform: translateY(50%);
  }
  13% {
	  opacity: 1;
	  transform: translateY(0);
  }
  100% {
	  opacity: 1;
	  transform: translateY(0);
  }
}
/* 黑板按鈕MS */
@keyframes anim10ms {
  0% {
	  opacity: 0;
		height: 260px;
  }
  11% {
	  opacity: 0;
		height: 260px;
  }
  13% {
	  opacity: 1;
		height: 120px;
  }
  100% {
	  opacity: 1;
		height: 120px;
  }
}
@keyframes boardown {
  0% {
	transform: translateY(-100%);
  }
  3% {
	transform: translateY(-100%);
  }
  5% {
	transform: translateY(0);
  }
  100% {
	transform: translateY(0);
  }
}

@media screen and (max-width: 1600px) {
  .whiteboard {
    width: 1100px;
  }
	.boardCont{
		transform: scale(0.9);
		transform-origin: center left;
    left: 120px;
    width: 100%;
	}
}

/* 調整白板內文字高度 */
/* 大PC */
@media (min-height: 1200px)  {
  .boardCont {
    bottom: 32vh;
  }
}
/* 中等高度（721px ~ 900px） */
@media (min-width: 1280px) and (max-height: 840px) {
  .boardCont{
    transform: scale(0.8);
    transform-origin: left bottom;
    left: 120px;
  }
}

/* 小螢幕高度（≦ 720px，例如小筆電） */
@media (min-width: 1280px) and (max-height: 720px) {
  .boardCont{
    transform: scale(0.7);
    transform-origin: left bottom;
    left: 85px;
  }
}


/* 平板版  白板變投影 */ 
@media screen and (max-width: 1280px) {
	.theacher {
		transform: scale(0.8);
		transform-origin: bottom;
		animation: anim02ms 100s ease 1;
	}
	.boardCont{
    top: 40px;
    left: 80px;
	}
	.btitle{
	    align-items: baseline;
		  font-size: 30px;
	}
  .btitle img {
    margin: 0 10px;
    height: 30px;
  }
	.btitle:after{
		border-left: 430px solid #fff684;
		bottom: -10px;
		left: 45px;
		transform: rotate(-2deg);
	}
	.btext ul{
    font-size: 30px;
    padding: 60px 0 0 40px;
    width: 70%;
	}
  .btext li {
    padding: 10px 0;
  }
	.whiteboard{
    width: 870px;
		background-image: url(../img/boardms.png);
		background-size: contain;
		background-repeat: no-repeat;
    background-position-y: -80px;
		animation: boardown 100s ease 1;
	}	
  .bbtn {
    bottom: -110px;
  }
  .bbtn a{
    width: 550px;
    display: block;
    text-align: left;
    padding-left: 85px;
  }
  .bbtn a:before {
    width: 65px;
    height: 65px;
    top: 10px;
  }
  .bbtn a:after {
    top: 40px;
    left: 20px;
  }
  @keyframes moveright {
    0% {
      left: 8px;
    }
    1% {
      left: 460px;
    }
    100% {
      left: 460px;
    }
  }
  @keyframes moverightf {
    0% {
      left: 20px;
    }
    1% {
      left: 480px;
    }
    100% {
      left: 480px;
    }
  }
}
@media screen and (max-width: 1080px) {
  .theacher {
    transform: scale(1);
  }
  .whiteboard {
    width: 630px;
  }
  .boardCont {
    top: 20px;
    left: 50px;
  }
  .btitle img {
    margin: 0 10px;
    height: 25px;
  }
  .btitle {
    font-size: 25px;
  }
  .btitle:after {
    border-left: 460px solid #fff684;
    bottom: -15px;
    left: 30px;
  }
  .btext ul {
    font-size: 24px;
    padding: 35px 0 0 45px;
    width:90%;
  }
  .bbtn {
    left: 15px;
}
}
@media screen and (max-width: 850px) {
  .theacher {
    transform: scale(0.7);
    transform-origin: bottom left;
  }
}
/* 手機版 */
@media screen and (max-width: 660px) {
	body{
		background: url(../img/bgms.jpg);
		background-size: 100% 100%;
		background-repeat: repeat-y;
	}
  .tit {
		font-size: 35px;
		line-height: 60px;
	}
	.big_content{
		justify-content: center;
	}
	.intro_logo{
		display:none;
	}
	.tit span{
		display:block;
		padding-left: 100px;
	}
	.theacher img.tman{
		left:5px;
	}
	.theacher img.thand{
		left:240px;
	}
    .theacher {
		width:0;
		left: 0;
        position: absolute;
	}
	.whiteboard{
		width:100%;
		background-position-y: -5vw;
	}
	.whiteboardbar{
		display: block !important;
    width: 97%;
    background-image: url(../img/boardmsbar.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position-y: -1vw;
    position: absolute;
    top: 0;
    height: 50px;
    z-index: 10;
    margin: 0 auto;
	}
	.boardCont {
    transform: scale(1);
    top: 8vw;
    left: 8vw;
    width: 80%;
  }
	.btitle {
    font-size: calc(4vw - 3px);
  }
	.btitle img{
		margin: 0 10px;
    height:calc(4vw - 3px);
	}
	
	.btitle:after {
    border-left: 300px solid #fff684;
    left: 5vw;
    bottom: -2vw;
	}
	.btext ul {
    font-size: calc(3vw + 2px);
    padding: 6vw 0 0 6vw;
    width: 100%;
  }
	.btext li {
		padding: 5px 0;
	}
	.bbtn{
		transform: scale(0.9);
    transform-origin: top left;
		animation: anim10ms 100s ease;
    bottom: -23vw;
    left: 5vw;
	}
  .bbtn a{
    font-size: calc(4vw - 3px);
    width: 80vw;
    padding-left: 15vw;
	}

	.bbtn:after{
		content: "";
    width: 30vw;
    height: 10vw;
		background:url("../img/sc01logo.png");
		position: absolute;
		background-size: contain;
    background-repeat: no-repeat;
    top: 20vw;
		left: 32%;
	}
  .bbtn a:before {
    width: 10vw;
    height: 10vw;
    top: 5px;
  }
	.big_content .roomdeco{
		position: absolute;
        right: -12%;
        bottom: -10%;
		text-align: right;
		z-index: -1;
	}
	.big_content .roomdeco img{
		width:50%;
	}
  .bbtn a:hover:before{
    left: 8px;
    animation: moveright 100s ease;
  }
  .bbtn a:hover:after{
    left: 5px;
    animation: moverightf 100s ease;
  }
  .bbtn a:hover{
    left: 5px;
    animation: moverighta 100s ease;
  }
  @keyframes moveright {
    0% {
      left: 8px;
    }
    1% {
      left: 65vw;
    }
    100% {
      left: 65vw;
    }
  }
  @keyframes moverightf {
    0% {
      left: 5px;
    }
    1% {
      left: 65vw;
    }
    100% {
      left: 65vw;
    }
  }
  
  @keyframes moverighta {
    0% {
      padding-right: 20px;
      padding-left: 50px;
    }
    1% {
      padding-right: 60px;
      padding-left: 20px;
    }
    100% {
      padding-right: 60px;
      padding-left: 20px;
    }
  }

}
/* 小螢幕 4XX */
@media screen and (max-width: 500px) {
	.bbtn{
    bottom: -30vw;
    left: 5vw;
	}
  .btext ul {
    font-size: calc(3vw + 1px);
  }
  .bbtn:after {
    top: 17vw;
  }
}
/* 小螢幕 3XX */
@media screen and (max-width: 400px) {
  .tit {
		font-size: 25px;
		line-height: 40px;
	}
	.theacher {
     transform: scale(0.5);
	}
  .bbtn {
    bottom: -35vw;
    left: 3vw;
  }
  .btext li {
    padding: 3px 0;
  }
  .btitle:after {
    border-left: 230px solid #fff684;
  }
  .btitle:after {
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
  }
}