@charset "utf-8";
/* CSS Document */
body {
  Font-family:微軟正黑體,Arial;
  margin:0 auto;
  padding:0;
  background:;
  background-size: cover; 
  overflow-x:hidden;

}

@keyframes bgani {
		0% { background-position:0,0%}
		100% { background-position:0,500%}
	}

	
a {text-decoration:none;}

main{ 
	width:100%; 
	margin:0 auto;
	text-align:center; 
	position:relative;
	overflow-x:hidden;
}

p{line-height:2.5em;margin:0%; text-indent:2em; text-align:left; color:#FFF; font-weight:bolder; text-shadow:#666 0 0 3px, #666 0 0 6px}
p a{text-decoration:none;}

.block{
	display:block;
	position:relative;
	margin:0;
	padding:1%;
	width:100%;
	text-align:center;
	background:/*-webkit-linear-gradient(top,rgba(255,255,255,0) 0% , rgba(255,255,255,.9) 50%, rgba(255,255,255,0) 70%,rgba(255,255,255,.7) 80%)*/;
	z-index:3;

	}
	
.block2{
	display:block;
	position:relative;
	color:#FFF;
	margin:2% auto;
	padding:2% auto;
	width:75%;
	background:;
	font-weight:700;
	text-align:center;
	letter-spacing:.1em;
	z-index:0;
	}	
	
.block3{
	display:block;
	position:relative;
	color:#FFF;
	margin:2% auto;
	padding:2% auto;
	width:55%;
	background:;
	font-weight:700;
	text-align:center;
	letter-spacing:.1em;
	z-index:0;
	}
h1{line-height:1.5em; font-size:35px; margin-top:5%}
h1 span{color:#000; font-size:.7em; text-shadow:none}
.visual{
	width:100%;
	display:block;
	position: relative;
	text-align: center;
	margin:0% auto;}
.visual img{
	width:100%;
	max-width:1920px;}

  
.copyright{display:block;
  color:#FFF;
  font-size:9px;
  margin:2% auto;
  letter-spacing:.1em;
  line-height:3em}
.gift{width:100%;height:auto; max-width:800px; min-width:250px;text-align:center; display:block; margin:2% auto;}

.gift2{width:40%;height:auto; max-width:600px; min-width:250px;text-align:center; display: inline-block; margin:2%;}

.gift3{width:80%;height:auto; max-width:600px; min-width:250px;text-align:center; display:block; margin:2% auto;}

.gift4{width:40%;height:auto; max-width:700px; min-width:250px;text-align:center; display: inline-block; margin:2%;}


ul{ text-align:left; line-height:2em}
li{ list-style:decimal}
.price{ text-align:center; margin:3% auto; color:#FD64B0; line-height:2em; z-index:999; position:relative}
.price a{text-shadow:#53227B 0px 0px 5px, #53227B 0px 0px 10px; color:#FFF}
/*youtube*/
.video{aspect-ratio: 16 / 9; width:85%}

.stitle{ text-align:center; font-size:16px; padding:2%; background:rgba(180,140,240,.8); color:#FFF; line-height:1.3em; display: inline-block; position:absolute; bottom:0; width:100%}
.author{ width:100%; margin:2% auto;  text-align:center; display:block; position:relative;padding-bottom:5%; padding-top:5%}
.authorimg{ width:35%; display:block; margin:5% auto; }
.authorimg img{ width:100%; max-width:300px;border-radius:50em}
.authortxt{width:100%; display:block; }
canvas {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	display:inline-block;
	position:fixed

}
/*shop*/
.btn{
    font-size:1.2em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: .8% 2%;
    border: 2px solid #FFF;
	background:;
    overflow: hidden;
	margin:3% 1% ;
    position: relative;
	display:inline-block;
	color:#FFF;
	width:16%;
    z-index:5;
    transition: all 0.5s;
	cursor:pointer;
	text-shadow:#B288EC 1px 1px 4px,#B288EC 0px 0px 10px,#B288EC 0px 0px 10px,#B288EC 0px 0px 10px;
}
.long{width:80%; margin:5% auto; display:block;}
.btn:hover{
    color: #FFF;
	text-shadow:#B288EC 1px 1px 4px,#B288EC 0px 0px 10px,#B288EC 0px 0px 10px,#B288EC 0px 0px 10px;
    animation: swoosh 0.4s ease-out 0.2s;
	border: 2px solid #FFF;
}
.btn:before,
.btn:after{
    content: "";
    background-color:#B288EC ;
    height: 100%;
    width: 100%;
    opacity:.7;
    position: absolute;
    top: 0;
    left: -100%;
    z-index: -1;
    transition: all 0.4s ease-out 0.1s;
	
}
.btn:after{
    opacity:0;
    transform: scale(0.9,0.7);
	
    left: 0;
    transition: all 0.3s ease-out 0s;
}
.btn:hover:before{ left: 100%; }
.btn:hover:after{
    opacity: .3;
    transform: scale(1);
	
}
@keyframes swoosh{
    0%,100%{ box-shadow: 0 0 0 0 transparent; }
    50%{ box-shadow: 0 0 0 8px rgba(180,140,240,0.5); }
}
/*shop over*/
/*cast*/
.cast1{ display:inline-block; width:40%; position:relative; vertical-align:top; padding:1.5%; margin:5% 2%; box-shadow:#B288EC 0px 0px 30px; border-radius:2em}
.castimg{ margin:2% auto; display:block; width:80%; border-radius:10em; position:relative}
.casttxt{margin:2% auto; display:block; width:90%; position:relative; color:#001147}
.casttxt h3{ line-height:2em}
.cast2{display:block; width:90%; position:relative; padding:1.5%; margin:2% auto;box-shadow:#001C6F 0px 15px 15px; border-radius:2em}
.castimg2{ margin:2%; display: inline-block; width:30%; border-radius:10em; position:relative; vertical-align:top}
.casttxt2{margin:2%; display:inline-block; width:60%; position:relative;vertical-align:top}

/*試閱*/
.read{ width:30%; margin:2% 1%; display:inline-block; vertical-align: middle; position:relative; aspect-ratio: 1 / 1.2;text-align:center; }
.pic1{/*直*/ max-height:400px; height:100%}
.pic1:hover{animation:big 0.2S ease-in both;}
@keyframes big {
		0% { transform:none; }
		100% { transform:scale(1.1); }
	}
/*特殊字*/

.gradient1 {
  display:block;
  place-items: center;  
  text-align: center;
  margin:5% auto;
  height:auto;
  font-weight:bolder;
  width:100%;
  -webkit-box-reflect: below -5px linear-gradient(transparent, rgba(0,0,0,.2));
  line-height:1em;
  
}
.gradient1 span {
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  animation: waviy 1s infinite, color-animation 1s linear infinite;
  animation-delay: calc(.1s * var(--i));
}

.title-word-1 {
  --color-1: #FFF;
  --color-2: #F5FF00;
}

.title-word-2 {
  --color-1: #6E00E8;
  --color-2: #E7005A;
}

.title-word-3 {
  --color-1: #E7005A;
  --color-2: #F5FF00;
}

.title-word-4 {
  --color-1: #6E00E8;
  --color-2: #E7005A;
}

.title-word-5 {
  --color-1: #FFF;
  --color-2: #F5FF00;
}

@keyframes color-animation {
  0%    {color: var(--color-1)}
  19%   {color: var(--color-1)}
  20%   {color: var(--color-2)}
  99%   {color: var(--color-2)}
  100%  {color: var(--color-1)}
}
@keyframes waviy {
  0%,40%,100% {
    transform: translateY(0)
  }
  20% {
    transform: translateY(-20px)
  }
}
/**/

/*特殊標題*/	
 
.gradient3{ background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,1)15%,rgba(255,255,255,1)85%, rgba(255,255,255,0) 100%); color:#B288EC; width:100%; margin:auto}

.gradient4{color:#FFF;font-size:20px; letter-spacing:.1em;  margin:1% auto ; line-height:2em; text-align:center; text-shadow:#B288EC 0 0 4px, #B288EC 0 0 7px, #B288EC 0 0 10px }

.gradient4  span {
  position: relative;
  display: inline-block;
  color:#B288EC;

  -webkit-animation: jump 1s ease infinite;
  }
.gradient4  span:nth-child(2) {
  animation-delay:.33s;
  }
 .gradient4  span:nth-child(3) {
  animation-delay:.66s;
  }

@-webkit-keyframes jump {
  0%{  transform: translate(0,0) }
  50% { transform:  translate(0,-5px)}
  100% { transform: translate(0,0)} }
  
/*特殊標題結束*/	
/*固定選單*/	

#menu {
	position:fixed !important;
	top:0;
	right:0;
	z-index:1001;
	margin:1%;
	font-weight:bold;
	}
.combobox{
	width:65px;
	aspect-ratio: 1 / 1;
	opacity:1;
	margin:0px auto;
	cursor:pointer;
	}
.combobox img{ width:100%; text-align:center}

#menu:hover .selector{ display:block;}
.selector{ 
	position:absolute;
	display:none;
	width:150px;
	font-size:16px;
	color:#5B4E9B;
	padding-top:60px;right:0px;
	}
.selector:hover{ display:block;}
.selector span { display:block;background:#FFF; padding:8 10;text-align:center; margin:4% auto; cursor:pointer;box-shadow:#5B4E9B 0 0 10px}
.selector span:hover { background:#5B4E9B; transform:scale(1.1);transition: 0.5s ease; color:#FFF}
.selector a{ color:#5B4E9B;text-decoration:none; font-weight:bold;}



/*固定選單結束*/


@media (max-width:600px){
.block3{width:90%; margin-left:4%}
.btn{
	margin:5% auto;
	display:block;
	text-align:center;
	width:45%;}
.gift{ max-width:90vw;text-align:center;}
.gradient4{ font-size:28px; letter-spacing:.05em; }
h2{ font-size:20px}
.gradient3{ background:#FFF; }
.other img{ display:block; width:45%; margin:3% auto}
.othertxt{ display:block; width:100%}
.video{ width:95%}
.cast1{ display:block; width:90%; margin:5% auto;}
.castimg2{ margin:2%; display: inline-block; width:30%; border-radius:10em; position:relative; vertical-align: middle}
.casttxt2{margin:2%; display:inline-block; width:60%; position:relative;vertical-align:middle}
.gift4{width:80%; display:block; margin:2% auto;}
.read{ width:40%; margin:2%; display:inline-block; }
@keyframes waviy {
  0%,40%,100% {
    transform: translateY(0)
  }
  20% {    transform: translateY(-10px)  }}


.deco{left:-100%; top:-10%;width:300%}

  
  
}



#nav{ min-height:1vh; text-align:center; margin-bottom:0;z-index:B6DDFE9; margin-top:1em}
#nav a{color:#572A1B;animation: 1s linear 0s normal none infinite jello-horizontal;margin:1%;font-size:1.1em; display:inline-block;text-decoration:none}
@-webkit-keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

/*neon link*/
.neonlink
{
	position: relative;
	display: inline-block;
	padding:0;
	margin: 0  auto;
	text-decoration: none;
	text-transform: uppercase;
	overflow: hidden;
	transition: 0.5s;
	letter-spacing: 0.2em;
	-webkit-box-reflect: below 1px linear-gradient(transparent, #0005);
}
.neonlink:hover
{
	box-shadow: 0 5px 5px #FFF,
				0 10px 25px #FFF,
				0 10px 50px #FFF,
				0 10px 200px #FFF;
	text-shadow:none;
}
.neonlink span
{
	position: absolute;
	display: block;
}
.neonlink span:nth-child(1)
{
	top: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, transparent, #FFF);
	animation: animate1 1s linear infinite;
}
@keyframes animate1
{
	0%
	{
		left: -100%;
	}
	50%, 100%
	{
		left: 100%;
	}
}
.neonlink span:nth-child(2)
{
	top: -100px;
	right: 0;
	width: 2px;
	height: 100%;
	background: linear-gradient(180deg, transparent, #FFF);
	animation: animate2 1s linear infinite;
	animation-delay: 0.25s;
}
@keyframes animate2
{
	0%
	{
		top: -100%;
	}
	50%, 100%
	{
		top: 100%;
	}
}
.neonlink span:nth-child(3)
{
	bottom: 0;
	right: -100%;
	width: 100%;
	height: 2px;
	background: linear-gradient(270deg, transparent, #E6CA97);
	animation: animate3 1s linear infinite;
	animation-delay: 0.5s;
}
@keyframes animate3
{
	0%
	{
		right: -100%;
	}
	50%, 100%
	{
		right: 100%;
	}
}
.neonlink span:nth-child(4)
{
	bottom: -100%;
	left: 0;
	width: 2px;
	height: 100%;
	background: linear-gradient(360deg, transparent, #E6CA97);
	animation: animate4 1s linear infinite;
	animation-delay: 0.75s;
}
@keyframes animate4
{
	0%
	{
		bottom: -100%;
	}
	50%, 100%
	{
		bottom: 100%;
	}
}