h1,h2,h3,h4,h5,h6{
	font-family: 'Noto Sans TC', sans-serif;
}
p,a,span,li,label{
	font-family: 'Open Sans', sans-serif;
    text-decoration: none;
}

a:hover{
	text-decoration: none;
}

a.account-link{
	color:black ; 
	text-decoration:underline;
}

a.account-link{
	color:#544461 ; 
	text-decoration:underline;
}


body {
	background-color:#DBDFEA;
}

.error{
	color:#cb444a;
}


.h1{
	font-family: 'Noto Sans TC', sans-serif;
	font-size: 50pt;
}
.h2{
	font-family: 'Noto Sans TC', sans-serif;
	font-size: 30pt;
}


img{
	max-width:100%;
}

nav li{
	    margin: 0 13px;
}

.size-14-pt{
	font-size: 14pt;
}

.size-16-pt{
	font-size: 16pt;
}

.size-18-pt{
	font-size: 18pt;
}

.float{
	position:fixed;
	width:60px;
	height:60px;
	bottom:40px;
	right:40px;
	background-color:#25d366;
	color:#FFF;
	border-radius:50px;
	text-align:center;
    font-size:30px;
	box-shadow: 2px 2px 3px #999;
    z-index:100;
}

.my-float{
	margin-top:16px;
}

li.functions{
	font-size: 20pt;
}

.container{
	padding: 0 100px;
}



#header {
	background-color: #212322;
	padding: 0px;
}



#header   a.nav-link  {
	color: white;

}


#header a.nav-link:hover{
	color: rgb(240, 255, 250);
}

#header   a  {
	color: white;
	text-decoration: none;

}


#header a:hover{
	color: rgb(240, 255, 250);
}


#header .side-menu-padding{
	padding: 0 10px;
}

#header .navbar-brand{
	position:absolute;
	top:20px;
	
}
#header .modal-footer .container
{
  padding: 0px;
  margin: 0px;


}

#header .nav-item-border {
	border: 1px solid white;
	padding-left: 15px;
	padding-right: 15px;
    border-radius: 15px;
   
}


#apply_form {

    margin-bottom: 120px ;


}


#apply_form .container{
	margin-top: 80px ;
	padding: 100px 200px;

}


#Back-to-top {
	height: auto;
	visibility: visible;
}


footer {
	background-color: #544461;
	position:absolute;
	bottom:0px;
	width:100%;
	
}

footer .container{
	padding: 15px 20px;
	
}



footer p.reserved {
	font-size: 12px;	
}



footer img{
	margin-bottom: 30px;
}

footer ul{
	list-style: none;
    padding: 0;
	float: left;
    margin-right: -0px;
}

footer ul li{
	margin-bottom: 10px;
}

footer a {
	text-decoration: none; 
	color:white;
}

footer a:hover{
	color:gainsboro;
}

footer .footer-logo{
	visibility: visible;
}

footer .col-top{
    margin-top: 0;
}

p{
	font-size: 16px;
    line-height: 26px;
    color: white;
}
p.lead{
	color: black;
	line-height: 31px;
}


footer ul{
	list-style: none;
	padding: 0;
	float: left;
	margin-right: 0px;
}

footer .footer-divider{
	display: none;

}


#button {
	display: inline-block;
	background-color: white;
	width: 50px;
	height: 50px;
	text-align: center;
	border-radius: 30px;
	border-color: #ffdd00;
	border-width: 5px;
	border-style: solid;
	position: fixed;
	bottom: 30px;
	right: 30px;
	transition: background-color .3s, 
	  opacity .5s, visibility .5s;
	opacity: 0.0;
	visibility:hidden ;
	z-index: 1000;
	text-decoration: none;

}

#button::after {
content: "\f106";
font-family: FontAwesome;
background-image: url();
font-weight: normal;
font-style: normal;
font-size: 2em;
line-height: 35px;
color: #ffdd00;
}

#button:hover {
cursor: pointer;
background-color: whitesmoke;
}

#button:active {
background-color: whitesmoke;
}

#button.show {
opacity: 0;
visibility: hidden;
text-decoration: none;

}

button.btn-submit:hover{
	background-color: #9896c7;
    color: white;
}
button.btn-submit{
    background-color: #544461;
	color: white;
	font-size: large;
}

.modal.right .modal-dialog {
	position:fixed;
	left: -1px;
	margin: auto;
	width: 60%;
	height: 100%;
	-webkit-transform: translate3d(0%, 0, 0);
	-ms-transform: translate3d(0%, 0, 0);
	-o-transform: translate3d(0%, 0, 0);
	transform: translate3d(0%, 0, 0);
}

.modal.right .modal-content {
	height: 100%;
	overflow-y: auto;
}

.center {
	margin: auto;
	width: 100%;
	padding: 0px
}


.msger-header-height{
	height: 50px;
}


@keyframes grow {
  0% { max-height: var(--lineHeight); }
  100% { max-height: calc(var(--lineHeight) * var(--lines)); }
}

@keyframes carriageReturn {
  0% { top: 0; }
  100% { top: calc(var(--lineHeight) * var(--lines)); }
}

@keyframes type {
  0% { width: 100%; }
  100% { width: 0%; }
}

@keyframes caret {
  0% { color: var(--bgColor); }
  100% { color: black; }
}

.typewriter {
  --bgColor: #FFEAD2;
  --lines: 500;
  --lineHeight: 1.5rem;
  --timePerLine: 0.3s;
  --widthCh: 22;
  --width: calc(var(--widthCh) * 1ch);
  /* do not touch the time property!!! */
  --time: calc(var(--lines) * var(--timePerLine));
  animation: grow var(--time) steps(var(--lines));
  animation-fill-mode: forwards;
  background: var(--bgColor);  
  line-height: var(--lineHeight);
  max-height: var(--lineHeight);
  overflow: hidden;
  position: relative;

  /* word-break: break-all; */
}

.typewriter::before {
  content: "";
  animation: 
    type var(--timePerLine) linear infinite, 
    carriageReturn var(--time) steps(var(--lines)) var(--lines),
    caret 0.5s steps(2) infinite;
  background: var(--bgColor);
  border-left: 2px solid;
  bottom: 0;
  height: 2rem;
  position: absolute;
  right: 0;
  width: 100%;
}


.msger-chat-container{
	min-height:300px ;
	margin-top: 50px; 
	margin-bottom: 100px;
	background-color:white;
}

/*  X-Small devices (portrait phones, less than 576px) */
/*  No media query for `xs` since this is the default in Bootstrap */

 /* Small devices (landscape phones, 576px and up) */

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



	#header .img-logo{
		background-color: #fff;
		padding: 8px;
		border-radius: 5%;
	     width: 100px;
			
	}
	
	#header .container{
		padding: 0 15px; 
		/* background-color: green;  */
    }


    #apply_form .container{
	margin-top: 0px ;
	padding: 100px 200px;

    }

	footer .footer-logo{
		visibility: hidden;
		height: 0px;
	}



	footer .footer-divider{
		display: block;
		background-color: white;
		height: 1px;
		margin-bottom: 100px;


	}

	#button.show {
		opacity: 1;
		visibility: visible ;
		text-decoration: none;
	
	}

	.msger-header-height{
		height: 50px;
	}
	



}

 


/*  Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 

	#header .img-logo{
		background-color: #fff;
		padding: 8px;
		border-radius: 5%;
		width: 160px;	
    }

	#header .img-logo{
		width: 100px;	
    }

	#apply_form .container{
		margin-top: 80px ;
		padding: 100px 200px;
	
	}
   
   #header .container{
	   padding: 0 100px;
	   /* background-color: green; */
    }

	#header .side-menu-padding{
		padding: 0 10px;
	}

 }


/*  X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 

	#header .img-logo{
		background-color: #fff;
		padding: 8px;
		border-radius: 5%;
		width: 250px;	
    }
   
   #header .container{
	   padding: 0px 100px; 
	   /* background-color: red; */
    }


	footer .footer-logo{
		visibility: visible;
	}

	

 }



