@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style-type: none;
  text-decoration: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif; }

.pc {
  display: block; }

.sp {
  display: none; }

header {
  padding: 100px 0;
  position: relative; }
  header a {
    width: 500px;
    display: block;
    margin: 0 auto;
    transition: 0.3s all; }
    header a:hover {
      transform: translateY(-10px); }
  header img {
    width: 100%; }
  header .menu {
    position: fixed;
    top: 50px;
    right: 50px;
    width: 50px;
    height: auto;
    z-index: 999; }
  header p {
    text-align: center;
    line-height: 2;
    color: #666666;
    font-size: 18px;
    margin-top: 70px;
    font-weight: bold;
    color: #dc7184; }

footer {
  width: 100%; }
  footer #banner {
    background: #E9E9E9;
    width: 100%;
    padding: 100px 0; }
    footer #banner div {
      margin: 0 auto;
      display: table; }
      footer #banner div ul:nth-of-type(2) {
        width: 880px; }
        footer #banner div ul:nth-of-type(2) li {
          margin: 0 20px 0 20px;
          display: inline-block;
          position: relative;
          transition: all 0.3s; }
          footer #banner div ul:nth-of-type(2) li:hover {
            transform: translateY(-5px); }
          footer #banner div ul:nth-of-type(2) li a {
            width: 250px;
            height: auto; }
            footer #banner div ul:nth-of-type(2) li a img {
              width: 250px;
              height: auto; }
      footer #banner div ul:nth-of-type(1) {
        width: 585px;
        margin: 0 auto 40px auto; }
        footer #banner div ul:nth-of-type(1) li {
          margin: 0 20px 0 20px;
          display: inline-block;
          position: relative;
          transition: all 0.3s; }
          footer #banner div ul:nth-of-type(1) li:hover {
            transform: translateY(-5px); }
          footer #banner div ul:nth-of-type(1) li a {
            width: 250px;
            height: auto; }
            footer #banner div ul:nth-of-type(1) li a img {
              width: 250px;
              height: auto; }
  footer #info {
    background: #f9e9c5;
    background: linear-gradient(-90deg, #f9e9c5 0%, #ea8a97 75%, #bd93ec 100%);
    padding: 50px 0; }
    footer #info p {
      font-size: 18px;
      text-align: center;
      color: #4D4D4D;
      font-weight: bold; }

@media (max-width: 768px) {
  .pc {
    display: none; }

  .sp {
    display: block; }

  header {
    padding: 100px 0;
    position: relative; }
    header a {
      width: 80%;
      display: block;
      margin: 0 auto; }
      header a .logo {
        width: 100%; }
    header .menu {
      position: fixed;
      top: 20px;
      right: 20px;
      width: 50px;
      height: auto;
      z-index: 999; }
    header p {
      font-size: 15px; }

  footer {
    width: 100%;
    background: #E9E9E9; }
    footer #banner {
      width: 90%;
      padding: 50px 0;
      margin: 0 auto; }
      footer #banner div {
        margin: 0 auto;
        display: table; }
        footer #banner div ul:nth-of-type(1) {
          width: 100%;
          margin-bottom: 0px; }
          footer #banner div ul:nth-of-type(1) li {
            margin: 0 0 20px 0;
            display: block;
            position: relative;
            transition: all 0.3s; }
            footer #banner div ul:nth-of-type(1) li a {
              width: 100%;
              height: auto; }
              footer #banner div ul:nth-of-type(1) li a img {
                width: 100%;
                height: auto; }
        footer #banner div ul:nth-of-type(2) {
          width: 100%;
          margin: 0 auto; }
          footer #banner div ul:nth-of-type(2) li {
            margin: 0 0 20px 0;
            display: block;
            position: relative; }
            footer #banner div ul:nth-of-type(2) li a {
              width: 100%;
              height: auto; }
              footer #banner div ul:nth-of-type(2) li a img {
                width: 100%;
                height: auto; }
            footer #banner div ul:nth-of-type(2) li:last-of-type {
              margin-bottom: 0; }
    footer #info {
      background: #f9e9c5;
      background: linear-gradient(-90deg, #f9e9c5 0%, #ea8a97 75%, #bd93ec 100%);
      padding: 50px 0; }
      footer #info p {
        font-size: 16px;
        text-align: center;
        color: #4D4D4D;
        font-weight: bold; }
      footer #info a {
        color: #4D4D4D; } }
