#header {
  position: sticky; 
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  background: Darkred;
  z-index: 1;
}

#banner-text {
  display: block; 
  margin-left: auto; 
  min-width: 480px;
  max-width: 100%; 
  filter: invert(1);
}

#banner-image {
  position: absolute; 
  display: block;
  max-height: 200%;
  mask-image: -webkit-gradient(linear, left center, right center, 
  from(rgba(0,0,0,1)), to(rgba(0,0,0,0)));
  pointer-events: none;
}

#navi-bar {
  text-align: right;
  padding: 0;
  margin: 0px 0px 6px 0px;
}

.navi-item {
  display: inline-block; 
  text-align: center;
}

.navi-link {
  padding: 3px 15px;
  text-decoration: none;
  font-size: 10pt;
  font-family: "Noto Serif TC", serif;
  color: white;
}

.navi-link:hover {
  background: radial-gradient(closest-side, lightblue, transparent);
}

#menu-button {
  display: inline-block;
  border: none;
  background: none;
  filter: invert(1);
}

#menu-list {
  position: fixed; 
  display: none;
  line-height: 1.5;
  right: 0;
  top: 0;
  padding: 0 0 9px 0;
  margin: 0;
  text-align: right;
  background: black;
  list-style-type: none;
  z-index: 2;
}

#menu-list.openMenu { 
  display: block;
}

#menu-close {
  border: none;
  background: none;
  color: white;
}

@media all and (max-width: 799px) {
 .navi-item {
 display: none;
 }
}

@media all and (min-width: 800px) {
 #menu-button {
 display: none;
 }
}

#footer {
  background-color: lightgray;
  position: sticky;
  padding: 30px;
  left: 0;
  right: 0;
}

#top-button {
  display: none;
  position: fixed;
  bottom: 30px;
  right: 30px;
  border: none;
  outline: none;
  background-color: Darkred;
  color: white;
  cursor: pointer;
  padding: 15px;
  border-radius: 10px;
  font-size: 15px;
  font-family: "Noto Serif TC", serif;
  box-shadow: 5px 5px 10px black;
}

#top-text {
    display: inline;
}

@media all and (max-width: 599px) {
 #top-text {
    display: none;
 }
}

@media all and (min-width: 600px) {
 #top-text {
    display: inline;
 }
}
