@charset "utf-8";

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

  html {
    font-size: 14px;
  }

  .wrapper {
    width: 90%;
  }

  /* ハンバーガーメニュー */
  .menu {
    flex-direction: column;
    background: var(--background-color);
    padding: 1rem;
    opacity: 0;
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
    top: 85px;
    right: 0;
    width: 0;
    z-index: 1000;
    transition: .2s;
  }

  .menu.active {
    width: 90%;
    opacity: .8;
  }

  .menu ul {
    flex-direction: column;
  }

  .menu li {
    font-size: 1.5rem;
    text-align: left;
    border-bottom: 1px solid #ccc;
  }

  .menu li:nth-of-type(4) {
    border-bottom: 0;
  }

  .menu li a {
    text-decoration-color: none;
  }

  .openbtn {
    opacity: 1;
    right: 0;
    background: var(--main-color);
    cursor: pointer;
    min-width: 50px;
    height: 50px;
    border-radius: 5px;
    overflow: hidden;
  }

  .openbtn .openbtn-area {
    transition: all .4s;
  }

  .openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background: #fff;
    width: 45%;
  }

  .openbtn span:nth-of-type(1) {
    top: 15px;
  }

  .openbtn span:nth-of-type(2) {
    top: 23px;
  }

  .openbtn span:nth-of-type(3) {
    top: 31px;
  }

  .openbtn.active .openbtn-area {
    transform: rotateX(360deg);
  }

  .openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-135deg);
    width: 30%;
  }

  .openbtn.active span:nth-of-type(2) {
    opacity: 0;
  }

  .openbtn.active span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(135deg);
    width: 30%;
  }

  /* ハンバーガーメニューここまで */
  /* main-visual */
  h1 {
    font-size: 2rem;
    line-height: 2rem;
  }

  .main-visual::before {
    background-position: 20% 0;
  }

  .catch {
    display: none;
  }


  .cart-text {
    display: none;
  }

  .main-visual .mv-img {
    width: fit-content;
    margin: 0 auto;
    position: absolute;
    top: 65%;
  }

  .main-visual .mv-img img {
    max-width: 300px;
    height: auto;
  }

  /* Products */
  .products figure {
    width: calc((100% - 1rem) / 2);
  }

  .about .container {
    flex-direction: column;
    width: 100%;
  }

  .about-us {
    text-align: right;
    align-self: flex-end;
  }

  .about .about-us,
  .about .company {
    width: 60%;
  }

  .narrow {
    width: 100%;
  }

  .copyright ul {
    display: block;
  }

  .copyright li {
    margin-bottom: .5rem;
  }

  .copyright small {
    align-self: flex-end;
  }

  .mockup {
    flex-direction: column;
  }

  .mockup-img,
  .mockup-text {
    width: 100%;
  }

  .about-wrapper:nth-of-type(2) {
    flex-direction: column;
  }

  .about-wrapper {
    flex-direction: column;
  }

  .about-img,
  .about-text {
    width: 100%;
  }

  .magazine .wrapper {
    flex-direction: column;
  }

  .magazine aside,
  .magazine .magazine-list {
    width: 100%;
  }

  aside .category {
    padding: 2rem 1rem;
  }

  aside .category p {
    margin-bottom: 1rem;
  }

  aside .category p::before,
  aside .category p::after {
    content: '';
    position: absolute;
    top: calc(50% - 3px);
    width: 35%;
    height: 6px;
    border-top: solid 1px var(--text-color);
    border-bottom: solid 1px var(--text-color);
  }

  .instagram ul {
    flex-wrap: wrap;
  }
  .instagram li {
    width: calc((100% - 1rem) / 2);
  }
}