/* -----------------------------------------------------------
pageTopBtn
----------------------------------------------------------- */
.pageTopBtn {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 9000;
  width: 44px;
  height: 44px;
}
@media screen and (min-width: 561px) {
  .pageTopBtn {
    right: 20px;
    bottom: 20px;
    width: 64px;
    height: 64px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (min-width: 561px) {
  .pageTopBtn:hover {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.12);
  }
}
.pageTopBtn.-onFooter {
  position: absolute;
}

.pageTopBtn_inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #fff;
}
@media screen and (min-width: 561px) {
  .pageTopBtn_inner {
    opacity: 0.8;
  }
}
.pageTopBtn_inner::before {
  position: absolute;
  top: 56%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-top: solid 1px #3b6cff;
  border-left: solid 1px #3b6cff;
  content: "";
}
@media screen and (min-width: 561px) {
  .pageTopBtn_inner::before {
    width: 16px;
    height: 16px;
    border-width: 2px;
    border-color: #999;
  }
}
@media screen and (hover: hover) and (min-width: 561px) {
  .pageTopBtn_inner:hover {
    opacity: 1;
  }
}
@media screen and (hover: hover) and (min-width: 561px) {
  .pageTopBtn_inner:hover::before {
    border-color: #3b6cff;
  }
}
@media screen and (hover: none) and (min-width: 561px) {
  .pageTopBtn_inner:active {
    opacity: 1;
  }
}
@media screen and (hover: none) and (min-width: 561px) {
  .pageTopBtn_inner:active::before {
    border-color: #3b6cff;
  }
}

.srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
