.page-top {
  display: none !important;
}

/*---------------------
  spFooter
---------------------*/

.spFooter {
  display: none;
}

.spFooter-toc {
  display: none;
}

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

  .spFooter {
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 100;
    transform: translateY(100%);
    display: flex;
    justify-content: space-around;
    width: 100vw;
    border-top: 1px solid #ccc;
    will-change: transform;
    transition: .3s linear transform;
  }
  .spFooter.on {
    transform: translateY(0%);
  }

  .spFooter__separator{
    position: relative;
    flex-shrink: 0;
    display: block;
    width: 1px;
    height: auto;
    background-color: #eee;
  }

  .spFooter-item {
    flex-basis: 25%;
    display: block;
    padding: 10px 5px 5px;
    background-color: #f7f7f7;
    font-size: 12px;
    color: #222;
    text-decoration: none;
    text-align: center;
  }
  .spFooter-item__image {
    margin-bottom: 5px;
    line-height: 0;
  }
  .spFooter-item__label {
    line-height: 1.3;
  }
  .spFooter-item__btn {
    cursor: pointer;
  }
  .spFooter-item__btn img {
    height: 25px;
  }

  .spFooter-item-children {
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
    transform: translate(-100%, -100%);
    display: flex;
    gap: 5px;
    width: 100%;
    padding: 5px;
    background-color: #f7f7f7;
    will-change: transform, opacity;
    transition: .3s linear transform,
                .3s linear opacity;
  }
  .spFooter-item-children.on {
    opacity: 1;
    transform: translate(0%, -100%);
  }
  .spFooter-item-child {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    flex-basis: calc(100% / 3);
    padding: 5px 20px;
    background-color: white;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
  }
  .spFooter-item-child img {
    height: 20px;
  }
  .spFooter-item-child__twitter  { color: #1DA1F2; }
  .spFooter-item-child__facebook { color: #1877f2; }
  .spFooter-item-child__hateb    { color: #24B0E2; }


  /*---------------------
    TOC
  ---------------------*/

  .spFooter-toc {
    position: fixed;
    top: 0px;
    left: -100vw;
    z-index: 999;
    display: flex;
    align-items: center;
    width: 90vw;
    height: 100%;
    padding: 10vh 2rem;
    background-color: rgba(255,255,255,.95);
    box-shadow: 0px 0px 10px rgba(0,0,0, .2);
    will-change: left;
    transition: .3s linear left;
    font-size: 90%;
  }
  .spFooter-toc.on {
    left: 0px;
  }
  .spFooter-toc a {
    text-decoration: none;
    color: #333;
  }

  .spFooter-toc__toggle.btn {
    position: absolute;
    top: 2vh;
    right: 13px;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0px;
    cursor: pointer;
    background-color: #222;
    border-radius: 50%;
    transform: rotate(45deg);
  }

  .spFooter-toc__toggle.btn::before,
  .spFooter-toc__toggle.btn::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 2px;
    background-color: #fff;
    transform: translate(-50%, -50%);
  }

  .spFooter-toc__toggle.btn::after {
    transform: translate(-50%, -50%) rotate(-90deg);
  }

  .spFooter-toc__flag {
    position: relative;
  }
  .spFooter-toc__flag.false::after {
    content: '';
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0, .1);
  }

  .spFooter-toc__inner {
    height: 90vh;
    overflow-y: auto;
  }

} /* @media screen and (max-width: 599px) */
