/* img */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	padding: 0;
	margin: 0;
	font-family: 'Noto Sans TC', '微軟正黑體', 'Helvetica', 'Arial', sans-serif !important;
	line-height: 1.6em;
	font-size: 1.25rem;
	}
.logo img {
  display: block;
  width: 100%;
}

/* head */
#particles-js {
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  z-index: 2;
}
.particle {
  position: absolute;
  width: 115%;
  height: 121%;
  left: -9%;
  margin-left: 0%;
  mix-blend-mode: screen;
  pointer-events: none;
  -webkit-filter: brightness(1.7);
  margin-top: -8%;
}

.apdwbx {
  position: absolute;
  width: 50%;
  left: 50%;
  margin-left: -25%;
  bottom: 6%;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
}
.apdwbx div {
  margin: 0 1%;
}
.umk {
  position: absolute;
  bottom: 0;
  width: 100%;
}
.slo {
	width: 95%;
    position: absolute;
    left: 46%;
    margin-left: -44%;
    bottom: -7%;
}
video {
  width: 100%;
  height: 100%;
}
.webbox {
  overflow: hidden;
  width: 100%;
  position: relative;
}
.lbtbx {
  position: absolute;
  left: 1%;
  top: 1%;
  width: 16%;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
}
.lbtbx div {
    width: 67%;
    margin: 2% 0% 0% -36%;
}
.logo {
  width: 250px;
  margin: 0 auto;
}
.head {
  position: relative;
  background: url("../images/bg_01.jpg");
  padding-bottom: 48%;
  background-size: 100% auto;
}
.tfbox {
  width: 110px;
  position: absolute;
  right: 1%;
  top: 1%;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
}
.glpo {
  position: absolute;
  width: 20%;
  top: 21%;
  right: 4%;
  animation: shake-vertical 5s both linear infinite;
}
.tfbox div {
  padding: 2px;
}
.dg {
  position: absolute;
  width: 40%;
  bottom: 10%;
  animation: wobble-ver-right 13s both linear infinite;
}
.sek {
  position: absolute;
  width: 43%;
  bottom: 0;
  right: 10%;
  animation: wobble-ver-left 10s both linear infinite;
}
.ppop {
  position: absolute;
  width: 100%;
}
.uli {
  position: absolute;
  -webkit-filter: contrast(1);
  width: 100%;
}
/* content */
.content {
  position: relative;
  width: 100%;
  background: url("../images/mm_03.png");
  background-size: 100% auto;
}
.mcontbx {
  width: 70%;
  margin: 0 auto;
  padding-bottom: 5%;
}

.mcall {
  width: 80%;
  margin: 0 auto;
}
.mconm {
  width: 100%;
  background: url("../images/mn_02.png");
  background-size: 100% auto;
}
.mbbtnbx {
  display: none;
}
.pcimg {
  display: block;
  width: 100.05%;
  margin-left: 0.15%;
}
.pcimg2 {
  display: block;
}
.mbimg {
  display: none;
}
/* topbt */
.dtt {
  position: fixed;
  width: 100%;
  max-width: 2000px;
  bottom: 20%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 11;
}
.topbt {
  position: absolute;
  width: 70px;
  padding-bottom: 69px;
  display: none;
  cursor: pointer;
  background-attachment: scroll;
  background-image: url(../images/top.png);
  background-repeat: no-repeat, no-repeat;
  background-position: 50% 50%, 50% 50%;
  background-size: 100% auto, 100% auto;
  bottom: 10px;
  right: 10px;
  z-index: 11;
  transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
}

.imgtxt {
	display: flex;
	justify-content: center;
    align-items: center;
}

.imgtxt p {
	margin: 0 1% 0 1%;
	font-size: 1.25rem;
    line-height: 1.875rem;
}

.memo {
    color: #a40000;
    font-weight: 600;
}

.mcont.pcimg {
  position: relative;

}

.mcont.pcimg img {
  display: block;
  width: 100%;
}

.submenu {
    position: absolute;
    width: 100%;
    display: flex;
    margin-bottom: 2.5%;
    margin-top: -8%;
    margin-left: 7%;
}

.submenu a {
  display: block;
  display: flex;
}

.tfba,.tfbb,.tfbc,.tfbd {
	color: #fa5ce0;
	cursor: pointer;
	font-weight: 600;
}

.subbtn {
	display: block;
	width: 21%;
	height: 0;
	padding-bottom: 10%;
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	cursor: pointer;
}

.subbtn2 {
	display: block;
	width: 37%;
	height: 0;
	padding-bottom: 10%;
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	cursor: pointer;
}

.sbtn0101 {
	background-image: url(../images/sbtn_0101.png);
}
.sbtn0101.on, .sbtn0101:hover {
	background-image: url(../images/sbtn_0101-.png);
}
.sbtn0102 {
	background-image: url(../images/sbtn_0102.png);
}
.sbtn0102.on, .sbtn0102:hover {
	background-image: url(../images/sbtn_0102-.png);
}
.sbtn0103 {
	background-image: url(../images/sbtn_0103.png);
}
.sbtn0103.on, .sbtn0103:hover {
	background-image: url(../images/sbtn_0103-.png);
}
.sbtn0104 {
	background-image: url(../images/sbtn_0104.png);
}
.sbtn0104.on, .sbtn0104:hover {
	background-image: url(../images/sbtn_0104-.png);
}

.etitle {
	margin-bottom: 1%;
	display: flex;
	justify-content: center;
}

.etitle p {
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 3.125rem;
	color: #550088;
	margin-left: 0.5%;
	margin-bottom: 0;
}

.mess {
	font-weight: 500;
	font-size: 1.6vw;
	text-align: center;
}

.memo2 {
	color: #a40000;
	font-weight: 500;
	font-size: 1.6vw;
	text-align: center;
	margin-top: 2%;
	margin-bottom: 5%;
	line-height: 1.6em;
	letter-spacing: 3px;
}

p {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.675rem;
	color: #522c04;
	margin-left: 0%;
	margin-bottom: 2.5%;
}

.stitle,.stitler {
	margin-bottom: 0.5%;
	display: flex;
}

.stitle p {
    font-weight: 600;
    font-size: 1.675rem;
    line-height: 2.1875rem;
    color: #00479d;
    margin-left: 0.5%;
    margin-bottom: 0;
}

.stitler p {
	font-weight: 600;
	font-size: 1.675rem;
	line-height: 2.1875rem;
	color: #e60012;
	margin-left: 0.5%;
	margin-bottom: 0;
}

.red {
	color: #e60012;
}

.mb1 {
	margin-bottom: 0 !important;
	max-width: 75%;
}

.image {
	display: block;
	margin: 0 auto;
	margin-bottom: 2%;
}

.imgtxt {
	margin-bottom: 2%;
	display: flex;
	justify-content: center;
    align-items: center;
/*	color: #550088; */
	font-weight: 600;
	margin-top: 1%;
}

.imgtxt2 {
	margin-bottom: 2%;
	display: flex;
	justify-content: center;
    align-items: center;
	color: red; 
	margin-top: -2%;
	font-weight: 600;
}

.footer {
	width: 100%;
	background-color: #000000;
	padding: 1%;
	z-index: 2;
}

.cybox {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.ltcbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.ltbox {
	width: 95.5%;
	display: flex;
	align-items: center;
}

.logobox {
	width: 29.6335%;
	display: flex;
}

.gflogo {
	display: block;
	width: 53.0035%;
	height: 0;
	padding-bottom: 15.5477%;
	background-image: url(../images/gf.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
}

.cyoulogo {
	display: block;
	width: 46.9965%;
	height: 0;
	padding-bottom: 15.5477%;
	background-image: url(../images/cyou.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
}

.cytxt {
	font-weight: 400;
	font-size: 0.75rem;
}

.txt1 {
	line-height: 0.9375rem;
	color: #d2d2d2;
}

.txt2 {
	color: #898484;
	margin: 0.5% 0 0 0.75%;
}

.cr15, .cr15_m{
	height: 0;
	background-image: url(../images/15.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
}

.cr15 {
	display: block;
	width: 4.5%;
	padding-bottom: 4.5%;
}

.cr15_m {
	display: none;
}

.top {
	position: fixed;
    right: 1%;
    bottom: 1%;
    width: 5%;
    height: 0;
    padding-bottom: 5%;
	background-image: url(../images/top.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	cursor: pointer;
	z-index: 3;
}

/* anima */
@-webkit-keyframes wobble-ver-right {
  0%,
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
  }
  15% {
    -webkit-transform: translateY(-30px) rotate(6deg);
    transform: translateY(-30px) rotate(6deg);
  }
  30% {
    -webkit-transform: translateY(15px) rotate(-6deg);
    transform: translateY(15px) rotate(-6deg);
  }
  45% {
    -webkit-transform: translateY(-15px) rotate(3.6deg);
    transform: translateY(-15px) rotate(3.6deg);
  }
  60% {
    -webkit-transform: translateY(9px) rotate(-2.4deg);
    transform: translateY(9px) rotate(-2.4deg);
  }
  75% {
    -webkit-transform: translateY(-6px) rotate(1.2deg);
    transform: translateY(-6px) rotate(1.2deg);
  }
}
@-webkit-keyframes wobble-ver-left {
  0%,
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
  }
  15% {
    -webkit-transform: translateY(-30px) rotate(-6deg);
    transform: translateY(-30px) rotate(-6deg);
  }
  30% {
    -webkit-transform: translateY(15px) rotate(6deg);
    transform: translateY(15px) rotate(6deg);
  }
  45% {
    -webkit-transform: translateY(-15px) rotate(-3.6deg);
    transform: translateY(-15px) rotate(-3.6deg);
  }
  60% {
    -webkit-transform: translateY(9px) rotate(2.4deg);
    transform: translateY(9px) rotate(2.4deg);
  }
  75% {
    -webkit-transform: translateY(-6px) rotate(-1.2deg);
    transform: translateY(-6px) rotate(-1.2deg);
  }
}
@-webkit-keyframes shake-vertical {
  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  10%,
  30%,
  50%,
  70% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  20%,
  40%,
  60% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  80% {
    -webkit-transform: translateY(6.4px);
    transform: translateY(6.4px);
  }
  90% {
    -webkit-transform: translateY(-6.4px);
    transform: translateY(-6.4px);
  }
}
@media only screen and (max-width: 560px) {
	.lbtbx div {
		margin: -4% 0% 0% -36%;
	}
	
  .mcall {
    width: 95%;
    margin: 0 auto;
    overflow: hidden;
  }
  .mconf {
    width: 100%;
  }
  .mconm {
    width: 100%;
    background: url("../images/mb_02.png");
    background-size: 100% auto;
  }
  .mcontbx {
    width: 97%;
    margin: 0 auto;
    padding-bottom: 5%;
  }
  .apdwbx {
    position: absolute;
    width: 90%;
    left: 50%;
    margin-left: -45%;
    bottom: 6%;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
  }
  .slo {
        width: 126%;
        position: absolute;
        left: 50%;
        margin-left: -67%;
        bottom: 40%;
  }
  .mbbtnbx div {
    width: 49%;
    margin: 0 0.5%;
  }
  .lbtbx {
    width: 30%;
  }
  .pcimg,.pcimg2,.slo,.particle {
    display: none;
  }
  .mbimg {
    display: block;
  }
  .mbbtnbx {
    position: relative;
    display: block;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    flex-wrap: wrap;
  }
  .dg {
    position: absolute;
    width: 81%;
    bottom: 29%;
    left: -152px;
    animation: wobble-ver-right 13s both linear infinite;
  }
  .sek {
    position: absolute;
    width: 82%;
    bottom: 0;
    right: 1%;
    animation: wobble-ver-left 10s both linear infinite;
  }
  .tfbox {
    width: 80px;
  }
  .ppop {
    position: absolute;
    width: 180%;
    bottom: 0;
    left: 50%;
    margin-left: -90%;
  }
  .uli {
    bottom: 0;
  }
  .head {
    padding-bottom: 170%;
	background: url("../images/bgm_01.jpg");
    background-size: 100% auto;
  }
  
	.mcont.mbimg {
	  position: relative;

	}

	.mcont.mbimg img {
	  display: block;
	  width: 100%;
	}  
  
    .smenu a {
		position: absolute;
        height: 70px;
		font-size: 2em;
    }

	.submenu {
		position: absolute;
		width: 90%;
		flex-wrap: wrap;
		margin-top: -9%;
		padding-bottom: 1%;
		margin-left: 5%;
	}

	.subbtn {
		width: 50%;
		padding-bottom: 19%;
	}
	
	.subbtn2 {
		width: 87%;
		padding-bottom: 19%;
		margin-left: 7%;
	}	
	
	.etitle {
	margin: 28% auto 0 auto;
	}
	.etitle p {
		font-size: 2.225rem;
		line-height: 1.9375rem;
	}
	.memo2 {
		margin-top: 5%;
		margin-left: 0%;
        width: 100%;
		font-size: 3.8vw;
		letter-spacing: 0px;
	}	
	
	p {
		margin-left: 2%;
		font-size: 1rem;
		line-height: 1.625rem;	
	}


	.stitle p {
		font-size: 1.625rem;
		line-height: 1.9375rem;
	}
	
	.stitler p {
		font-size: 1.625rem;
		line-height: 1.9375rem;
	}
	
	.imgtxt,.imgtxt2 {
		font-size: 1rem;
	}

	.footer {
		padding: 5%;
	}

	.ltbox {
		width: 100%;
		flex-direction: column
	}

	.logobox {
		width: 100%;
	}

	.gflogo {
		width: 45.8333%;
		padding-bottom: 13.5417%;
	}
	
	.cyoulogo {
		width: 40.625%;
		padding-bottom: 13.5417%;
	}

	.cr15{
		display: none;
	}

	.cr15_m {
		display: block;
		width: 13.5417%;
		padding-bottom: 13.5417%;
	}

	.cytxt {
		font-size: 0.65625rem;
	}

	.txt1 {
		margin-top: 5%;
	}
	
	.txt2 {
		margin: 5% 0 0 0;
	}
	
	.top {
		right: 1%;
		bottom: 1.5%;
		width: 8.25%;
		height: 5%;
	}	
	
}
