header {
  max-width: 480px;
  background-color: #fff8ed;
  font-family: "Playfair Display", serif;
  text-align: center;
  padding-bottom: 20px;
  .header-logo {
    padding-top: 30px;
    margin-right: 10%;
    margin-left: 10%;
  }
  h1 {
    font-size: 2rem;
    font-weight: 500;
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    letter-spacing: 0.05em;
  }
  nav {
    border-bottom: 1px solid #000;
    ul {
      display: flex;
      flex-direction: column;
      li {
        font-size: 20px;
        font-weight: 600;
        list-style: none;
        margin-top: 5px;
        margin-bottom: 5px;
        margin-right: 40px;
        margin-left: 40px;
        a {
          border-bottom: 1px solid #000;
          text-decoration: none;
          color: black;
          &:hover {
            opacity: 0.7;
          }
        }
      }
    }
  }
}

main {
  max-width: 480px;
  background-color: #fff8ed;
}
.subtitle {
  padding-top: 30px;
  h2 {
    font-family: "Shippori Mincho", serif;
    font-weight: lighter;
    font-size: 2.5rem;
    text-align: center;
  }
}

@keyframes sway {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

#home {
  height: 900px;
  background-image: url(img/home-img.png);
  background-repeat: no-repeat;
  background-size: 300px;
  background-position: 50% 23%;
  h2 {
    a {
      text-decoration: none;
      color: #000;
      &:hover {
        opacity: 0.7;
      }
    }
  }
  .home-title {
    display: flex;
    flex-direction: column;
  }

  .home-page {
    text-align: right;
    .home-navi {
      height: 400px;
      margin-top: 400px;
      writing-mode: vertical-rl;
      display: inline-block;
      p {
        text-align: start;
        font-size: 5vw;
        font-family: "Shippori Mincho", serif;
        letter-spacing: 0.15em;
        a {
          text-decoration: none;
          color: #000;
          &:hover {
            opacity: 0.7;
          }
        }
      }
      #text1 {
        animation: sway 2s infinite ease-in-out;
        margin-right: 40px;
        margin-top: 50px;
      }
      #text2 {
        animation: sway 2.2s infinite ease-in-out;
        margin-top: 30px;
        margin-right: 5px;
      }
      #text3 {
        margin-top: 120px;
        margin-right: 5px;
      }
      #text4 {
        margin-top: -30px;
        margin-right: 10px;
        animation: sway 2.1s infinite ease-in-out;
      }
      #text5 {
        margin-right: 50px;
        margin-top: 230px;
      }
      #text6 {
        margin-top: 40px;
        margin-right: 40px;
        animation: sway 2.4s infinite ease-in-out;
      }
    }
  }
}

#about {
  background-image: url(img/about-img.png);
  background-repeat: no-repeat;
  background-size: 300px;
  background-position: 50% 200px;
  li,
  p {
    font-family: "Shippori Mincho", serif;
  }
  h2 {
    padding-top: 10px;
  }
  .about-range {
    border: 2px solid #000;
    margin-top: 50px;
    margin-right: 2%;
    margin-left: 2%;
    padding-bottom: 80px;
  }
  .about-main {
    margin-top: 280px;
    .about-text {
      width: 100%;
      height: 500px;
      display: inline-block;
      writing-mode: vertical-rl;
      display: flex;
      align-items: center;
      p {
        line-height: 1.5em;
        letter-spacing: 0.03em;
      }
      .dot {
        display: none;
      }
      .points {
        text-align: center;
      }
      .about-text1 {
        height: 600px;
        span {
          color: rgb(195, 40, 40);
        }
      }
      .about-text2 {
        font-size: 1.2rem;
        font-weight: 700;
        margin-bottom: 15px;
        margin-top: 10px;
        writing-mode: horizontal-tb;
        text-align: center;
      }
      .about-text4 {
        margin-right: 20px;
      }
    }
  }
}

#works {
  margin-top: 50px;
  background-image: url(img/works.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 15%;
  text-align: center;
  .works-range {
    border: 2px solid #000;
    margin-top: 100px;
    margin-right: 2%;
    margin-left: 2%;
    padding-bottom: 80px;
  }
  h3 {
    font-size: 1.5rem;
    margin-top: 40px;
    margin-bottom: 15px;
    font-family: "Shippori Mincho", serif;
  }
  .works-text {
    font-family: "Shippori Mincho", serif;
    margin-top: 190px;
  }
  p {
    font-size: 0.9rem;
    line-height: 1.6em;
    text-align: justify;
    margin-left: 10px;
    margin-right: 10px;
  }
}

#profile {
  margin-top: 100px;
  img {
    width: 90%;
  }
  .profile-range {
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .profile-list1,
  .profile-list2 {
    font-family: "Shippori Mincho", serif;
    margin-top: 20px;
    padding-right: 3%;
    padding-left: 3%;
    .name-title {
      font-size: 1.2rem;
    }
    h3 {
      margin-top: 5px;
      font-size: 2rem;
    }
    .profile-subtext {
      font-size: 1.1rem;
      margin-top: 30px;
    }
    .profile-text {
      margin-top: 20px;
      text-align: justify;
    }
  }
  .profile-image1 {
    order: -1;
  }
  .profile-image2 {
    order: 2;
  }
  .profile-list1 {
    order: 0;
    margin-bottom: 30px;
  }
  .profile-list2 {
    order: 3;
  }
}

#price {
  padding-bottom: 80px;
  font-family: "Shippori Mincho", serif;
  .web-price-main-title {
    display: flex;
    flex-direction: column;
    text-align: center;
    border-bottom: 2px solid #a09f9f;
    margin-top: 100px;
    h3 {
      font-size: 1.5rem;
    }
    p {
      font-size: 0.8rem;
      margin-top: 5px;
    }
  }
  .web-price-section {
    margin-top: 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    .web-price-range {
      width: 300px;
      margin-right: auto;
      margin-left: auto;
      margin-top: 50px;
      .web-price-title {
        li {
          font-size: 1.5rem;
        }
        p {
          font-size: 1.6rem;
          border-radius: 30px;
          padding-right: 15px;
          padding-left: 15px;
          margin-top: 5px;
        }
        .web-price-title1 {
          background-color: #beb9b6;
          padding-top: 10px;
          padding-bottom: 15px;
        }
        .web-price-title2 {
          background-color: #c1cae1;
          padding-top: 10px;
          padding-bottom: 15px;
        }
        .web-price-title3 {
          background-color: #d4cd90;
          padding-top: 10px;
          padding-bottom: 15px;
        }
        .web-price-tag {
          background-color: #fff;
          display: inline-block;
        }
      }
      .web-price-text {
        border: 1px solid #000;
        padding: 20px 10px;
        line-height: 2.5em;
        p {
          font-size: 0.9rem;
        }
        .web-price-subtext {
          margin-top: 20px;
          .web-subtext {
            font-size: 0.7rem;
            margin-top: -10px;
          }
        }
      }
    }
  }
  .web-price-end {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 0.8rem;
    margin-right: 2%;
    margin-left: 2%;
  }
}

#price {
  .option-title {
    margin-top: 100px;
    border-bottom: 3px solid #a09f9f;
    h3 {
      font-size: 1.8rem;
      margin-left: 30px;
      padding-bottom: 5px;
      text-align: center;
    }
  }
  .option {
    margin-top: 30px;
    margin-right: 4%;
    margin-left: 4%;
    box-shadow: 4px 4px 4px #6c6c6c;
    li {
      padding-top: 5px;
      padding-bottom: 5px;
      background-color: #c1cae1;
      font-size: 1rem;
      padding-left: 10px;
    }
    p {
      font-size: 0.8rem;
    }
    .option-text {
      padding-left: 10px;
      padding-top: 3px;
      padding-bottom: 3px;
      background-color: #c1cae1a4;
      border-bottom: 2px solid #beb9b6;
    }
    .option-text7 {
      padding-left: 10px;
      padding-top: 3px;
      padding-bottom: 3px;
      background-color: #c1cae1a4;
      border-bottom: 2px solid #beb9b6;
    }
    .option-price {
      background-color: #c1cae1a4;
      padding-top: 3px;
      padding-bottom: 3px;
      text-align: right;
      padding-right: 10px;
    }
    .option-price7 {
      background-color: #c1cae1a4;
      padding-top: 3px;
      padding-bottom: 3px;
      text-align: right;
      padding-right: 10px;
    }
  }
}

#production-flow {
  padding-bottom: 50px;
  p {
    font-family: "Shippori Mincho", serif;
  }
  ul {
    margin-right: 5%;
    margin-left: 5%;
  }
  .flow-title {
    margin-top: 100px;
    border-bottom: 3px solid #a09f9f;
    display: flex;
    align-items: baseline;
    h3 {
      font-size: 1.8rem;
      margin-left: 10px;
      padding-bottom: 5px;
      font-family: "Playfair Display", serif;
      font-weight: lighter;
    }
    p {
      font-size: 0.8rem;
    }
  }
  .flow-subtitle {
    display: flex;
    align-items: end;
    margin-top: 30px;
    border-bottom: 2px solid #c1cae1;
    li {
      font-family: "Playfair Display", serif;
      font-size: 1.6rem;
      letter-spacing: 0.07em;
    }
    p {
      font-size: 1.3rem;
      margin-left: 20px;
    }
  }
  .flow-text {
    margin-top: 20px;
    p {
      font-size: 0.9rem;
      br {
        display: none;
      }
      a {
        text-decoration: none;
        &:hover {
          opacity: 0.7;
        }
      }
    }
    span {
      color: rgb(195, 40, 40);
      font-size: 1.1rem;
    }
  }
}

footer {
  max-width: 480px;
  text-align: center;
  background-color: #c1cae1;
  padding-top: 30px;
  padding-bottom: 30px;
  .footer-title {
    h2 {
      font-size: 1.8rem;
      font-family: "Playfair Display", serif;
      font-weight: lighter;
    }
    p {
      margin-top: 10px;
      font-family: "Shippori Mincho", serif;
      font-size: 0.9rem;
      padding: 3px 15px;
      border-radius: 20px;
      background-color: #fff;
      display: inline-block;
      a {
        text-decoration: none;
        color: #000;
        &:hover {
          opacity: 0.7;
        }
      }
    }
  }
  ul {
    display: flex;
    justify-content: center;
    margin-top: 60px;
    margin-bottom: 60px;
    li {
      margin-right: 5px;
      margin-left: 5px;
      a {
        text-decoration: none;
        &:hover {
          opacity: 0.7;
        }
      }
    }
  }
  p {
    font-family: "Playfair Display", serif;
    margin-top: 30px;
    font-size: 1.5rem;
    font-weight: lighter;
  }
  .mail-add {
    text-decoration: none;
    &:hover {
      opacity: 0.7;
    }
  }
  small {
    font-family: "Playfair Display", serif;
    font-size: 0.9rem;
  }
}
