@charset "utf-8";

@media (max-width: 960px) {
  main {
    width: 100%;
  }

  .page_top {
    width: 100%;
  }

  .menu_common {
    width: 10%;
  }

  .button_registration,
  .button_login,
  .button_counselor {
    font-size: 1.1rem;
  }

  #reutrn_top_area {
    width: 6.5rem;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 5px !important;
  }
  .fntsz1dot5rm {
    font-size: 2.5rem;
  }
  .header_container {
    width: 100%;
    grid-template-columns: 40% 1fr 17%;
    grid-template-rows: repeat(2, 30px);
    padding: 4.25px;
  }
  .logo_anchor {
    width: 100%;
  }

  .logo_img:active {
    border: 2px solid #ffffff;
  }
  .header_attraction_button {
    flex-wrap: wrap;
  }
  .button_registration,
  .button_login,
  .button_counselor {
    width: 90%;
    font-size: 3rem;
    padding: 1rem;
    border: solid 2px #ffffff;
  }

  .button_login:hover {
    color: #45cc82;
    background-color: #ffffff;
    border-color: #45cc82;
  }
  .cuddle_top_slides {
    width: 100%;
    height: auto;
  }
  .img_part {
    width: 100%;
  }
  .slide_common_bgimg {
    height: auto;
    width: 100%;
  }
  .fixed_footer {
    padding: 5px 0;
    justify-content: space-around;
  }
  .fixed_footer > .button_registration,
  .fixed_footer > .button_login {
    width: 48%;
    font-size: 3rem;
    line-height: 3rem;
    padding: 1rem;
    width: 50%;
  }

  #reutrn_top_area {
    right: 1rem;
    bottom: 10rem;
    width: 10.5rem;
    padding: 0.5rem 0;
  }
  .anchor_wrapper {
    padding: 0.5rem;
    width: 10rem;
    margin: 1rem auto 0 auto;
  }
  .footer_logo {
    width: auto;
    height: 60px;
  }
  .button_counselor {
    margin-top: 6rem;
    font-size: 3rem;
    line-height: 3rem;
    padding: 1rem;
    width: 50%;
  }
  .footer_menu_wrapper {
    padding: 3rem 10rem 3rem 10rem;
  }

  .footer__menu {
    display: flex;
    justify-content: space-around;
  }
  .footer__menu_row {
    display: block;
  }
  .footer__menu_row > a {
    font-size: 2.5rem;
    line-height: 4rem;
  }
  .copyrights {
    font-size: 2rem;
  }
  .menu_nav_sp {
    height: calc(100vh - 140px);
    width: 80vw;
    left: 20vw;
    top: 65px;
  }
  .menu_nav_sp > li > a {
    font-size: 5rem;
    line-height: 6rem;
  }
  .menu_nav_sp > li {
    height: auto;
    padding: 1.5rem;
  }
  .auth_data {
    font-size: 3rem;
    line-height: 3rem;
    height: auto;
  }
  .registration_button {
    font-size: 8rem;
    width: 90%;
    padding: 5rem;
    line-height: 8rem;
    text-shadow: 1rem 1rem 5px #000000;
    margin: 3rem auto;
  }

  .red_circle {
    font-size: 2.8rem;
    min-width: 10%;
  }

  .pagination .page-link { font-size: 4rem; }
}
