@media screen and (max-width: 959px) {
  html {
    overflow-x: hidden; }

  @keyframes righttoleft {
    0% {
      opacity: 0;
      transform: translate(50px); }
    100% {
      opacity: 1;
      transform: translate(0); } }
  /* hamburger-menu-position-active */
  .sp-gnav01 a {
    opacity: 1.0; }

  .sp-gnav03 a {
    opacity: 0.6; }

  #mainVisual_area {
    display: none; }

  #mainVisual_area_sp {
    display: block !important;
    width: 100%;
    height: 450px;
    position: relative;
    margin: 0 auto 15px; }
    #mainVisual_area_sp .mainVisual_photo_sp {
      position: absolute;
      top: 0;
      width: 100%;
      height: 450px;
      overflow: hidden;
      background-image: url("../images/img_product_sp.jpg");
      background-position: center;
      background-size: cover;
      transition: 1400ms linear;
      z-index: -2; }
    #mainVisual_area_sp #maincatch_sp {
      position: absolute;
      padding-left: 0;
      top: 370px;
      left: 0;
      right: 0;
      margin: auto;
      width: 100%;
      display: block; }
      #mainVisual_area_sp #maincatch_sp .maincatch_title_sp {
        display: block;
        background: #FFFFFF;
        width: 200px;
        padding: 20px 0 0;
        border-radius: 0 40px 0 0; }
        #mainVisual_area_sp #maincatch_sp .maincatch_title_sp .title_eng_sp {
          display: block;
          width: 180px;
          font-size: 1.7777777778rem;
          font-weight: 600;
          margin: 10px 0px 10px 25px;
          font-family: 'Roboto', sans-serif; }
        #mainVisual_area_sp #maincatch_sp .maincatch_title_sp .title_jpn_sp {
          display: flex;
          font-size: 1rem;
          width: 180px;
          margin: 4px 0px 0px 25px;
          color: #41A63E;
          font-family: 'Noto Sans JP', sans-serif; }

  #contents {
    width: 100%; }
    #contents .product_list_area {
      width: 94%;
      margin: 0 auto;
      display: block;
      font-family: 'Noto Sans JP', sans-serif; }
      #contents .product_list_area .product_list {
        width: 96%;
        margin: 40px auto 10px;
        display: flex;
        justify-content: center;
        font-size: 0.8888888889rem; }
        #contents .product_list_area .product_list .more_link {
          width: 32%;
          display: block;
          margin: 0 auto;
          text-align: center;
          position: relative;
          padding: 0; }
          #contents .product_list_area .product_list .more_link::before {
            content: "";
            position: absolute;
            top: 8px;
            left: 0;
            border: 6px solid transparent;
            border-top: 7px solid #7a0; }
    #contents .product-wrap {
      width: 100%;
      height: auto;
      margin: 100px auto 80px;
      display: block; }
      #contents .product-wrap #product01 {
        display: none; }
      #contents .product-wrap #product02 {
        display: none; }
      #contents .product-wrap #product03 {
        display: none; }
      #contents .product-wrap .product_detail {
        width: 90%;
        height: 200px;
        margin: 24px 0px 10px 26px;
        line-height: 2.0;
        font-family: 'Noto Sans JP', sans-serif; }
        #contents .product-wrap .product_detail .product01_content {
          display: block;
          width: 86%;
          margin: 10px 0 0 0;
          font-size: 1.1111111111rem;
          font-weight: 600;
          padding: 0;
          text-align: left;
          line-height: 1.8; }
        #contents .product-wrap .product_detail .product011_content {
          display: block;
          width: 100%;
          margin: 5px 0 0 0;
          font-size: 1.1111111111rem;
          font-weight: 600;
          padding: 0;
          text-align: left;
          line-height: 1.8; }
        #contents .product-wrap .product_detail .product01_text {
          display: block;
          width: 100%;
          text-align: left;
          margin: 1px 0 0 0;
          font-size: 1rem; }
        #contents .product-wrap .product_detail .product021_text {
          display: block;
          width: 100%;
          text-align: left;
          margin: 1px 0 0 0;
          font-size: 1rem; }
        #contents .product-wrap .product_detail .product03_text {
          width: 100%;
          margin: 30px 0px 0px 0px;
          font-size: 1rem;
          text-align: left; }
    #contents .category_title {
      width: 100%;
      margin: 0 auto; }
      #contents .category_title .product_category {
        width: 100%;
        line-height: 1.2; }
        #contents .category_title .product_category .category_title_jpn {
          display: flex;
          width: 100%;
          font-size: 1.2222222222rem;
          font-weight: 600;
          text-align: left;
          align-items: center;
          font-family: 'Noto Sans JP', sans-serif; }
          #contents .category_title .product_category .category_title_jpn::after {
            content: "";
            width: 30%;
            height: 1px;
            flex-grow: 1;
            background-color: #454343;
            margin: 0 0 0 30px;
            align-items: center; }
        #contents .category_title .product_category .category_title_eng {
          display: block;
          width: 100%;
          font-size: 1rem;
          margin: 0px 0px 5px;
          text-align: left;
          color: #41A63E;
          font-family: 'Roboto', sans-serif; }
    #contents .product01-01wrap {
      width: 90%;
      height: 190px;
      margin: 160px auto 0px;
      display: block;
      padding: 0px;
      font-family: 'Noto Sans JP', sans-serif; }
      #contents .product01-01wrap .product01_01txt {
        display: block;
        width: 100%;
        margin: 1px auto; }
        #contents .product01-01wrap .product01_01txt .product01-01title {
          display: flex;
          width: 220px;
          padding: 20px 0px 0px 0px;
          font-size: 1.1111111111rem;
          font-weight: 600;
          letter-spacing: 0.2em;
          align-items: center; }
          #contents .product01-01wrap .product01_01txt .product01-01title::before {
            content: "";
            width: 40px;
            height: 1px;
            flex-grow: 1;
            background-color: #454343;
            margin: 0px 20px 0px 0px;
            align-items: center; }
        #contents .product01-01wrap .product01_01txt .product01-01detail {
          display: block;
          width: 98%;
          padding: 20px 5px 0 5px;
          line-height: 2.0;
          letter-spacing: 0.1em;
          font-size: 0.8888888889rem; }
      #contents .product01-01wrap .product01-01, #contents .product01-01wrap .product01-012 {
        display: none; }
    #contents .product01-02wrap {
      width: 90%;
      height: 130px;
      margin: 60px auto 5px;
      display: block;
      padding: 0px;
      font-family: 'Noto Sans JP', sans-serif; }
      #contents .product01-02wrap .product01_02txt {
        display: block;
        width: 100%;
        margin: 1px auto; }
        #contents .product01-02wrap .product01_02txt .product01-02title {
          display: flex;
          width: 220px;
          padding: 20px 0px 0px 0px;
          font-size: 1.1111111111rem;
          font-weight: 600;
          letter-spacing: 0.2em;
          align-items: center; }
          #contents .product01-02wrap .product01_02txt .product01-02title::before {
            content: "";
            width: 40px;
            height: 1px;
            flex-grow: 1;
            background-color: #454343;
            margin: 0px 20px 0px 0px;
            align-items: center; }
        #contents .product01-02wrap .product01_02txt .product01-02detail {
          display: block;
          width: 98%;
          padding: 20px 5px 0 5px;
          line-height: 2.0;
          letter-spacing: 0.1em;
          font-size: 0.8888888889rem; }
      #contents .product01-02wrap .product01-021, #contents .product01-02wrap .product01-022 {
        display: none; }
    #contents .product01-03wrap {
      width: 90%;
      height: 130px;
      margin: 60px auto 5px;
      display: block;
      padding: 0px;
      font-family: 'Noto Sans JP', sans-serif; }
      #contents .product01-03wrap .product01_03txt {
        display: block;
        width: 100%;
        margin: 1px auto; }
        #contents .product01-03wrap .product01_03txt .product01-03title {
          display: flex;
          width: 220px;
          padding: 20px 0px 0px 0px;
          font-size: 1.1111111111rem;
          font-weight: 600;
          letter-spacing: 0.2em;
          align-items: center; }
          #contents .product01-03wrap .product01_03txt .product01-03title::before {
            content: "";
            width: 40px;
            height: 1px;
            flex-grow: 1;
            background-color: #454343;
            margin: 0px 20px 0px 0px;
            align-items: center; }
        #contents .product01-03wrap .product01_03txt .product01-03detail {
          display: block;
          width: 98%;
          padding: 20px 5px 0 5px;
          line-height: 2.0;
          letter-spacing: 0.1em;
          font-size: 0.8888888889rem; }
      #contents .product01-03wrap .product01-031, #contents .product01-03wrap .product01-032 {
        display: none; }
    #contents .product01-01sp {
      display: flex !important;
      width: 100%;
      margin: 100px auto; }
      #contents .product01-01sp .product01-01-sp {
        display: block;
        width: 90%; }
        #contents .product01-01sp .product01-01-sp p img {
          display: block;
          width: 100%; }
      #contents .product01-01sp .product01-012-sp {
        display: block;
        width: 90%; }
        #contents .product01-01sp .product01-012-sp p img {
          display: block;
          width: 100%; }
    #contents .product01-02sp {
      display: flex !important;
      width: 100%;
      margin: 66px auto; }
      #contents .product01-02sp .product01-021-sp {
        display: block;
        width: 90%; }
        #contents .product01-02sp .product01-021-sp p img {
          display: block;
          width: 100%; }
      #contents .product01-02sp .product01-022-sp {
        display: block;
        width: 90%; }
        #contents .product01-02sp .product01-022-sp p img {
          display: block;
          width: 100%; }
    #contents .product01-03sp {
      display: flex !important;
      width: 100%;
      margin: 66px auto 126px; }
      #contents .product01-03sp .product01-031-sp, #contents .product01-03sp .product01-032-sp {
        display: block;
        width: 90%; }
        #contents .product01-03sp .product01-031-sp p img, #contents .product01-03sp .product01-032-sp p img {
          display: block;
          width: 100%; }
    #contents .product02-01wrap {
      display: block;
      width: 100%;
      margin-top: 60px;
      font-family: 'Noto Sans JP', sans-serif; }
      #contents .product02-01wrap .product02-01_image {
        display: flex;
        width: 100%;
        margin: 0px 10px 0 0; }
        #contents .product02-01wrap .product02-01_image img {
          max-width: 100%;
          height: auto; }
      #contents .product02-01wrap .product02_01txt {
        display: block;
        width: 100%;
        margin: 0px 5px 120px 5px; }
        #contents .product02-01wrap .product02_01txt .product02_content,
        #contents .product02-01wrap .product02_01txt .product021_content {
          display: block;
          width: 100%;
          margin: 30px 0px 10px 20px;
          font-size: 1.1111111111rem;
          font-weight: 600;
          text-align: left; }
        #contents .product02-01wrap .product02_01txt .product02_text {
          display: block;
          width: 90%;
          margin: 5px 20px 0 20px; }
          #contents .product02-01wrap .product02_01txt .product02_text .b02_text_detail {
            text-align: left;
            font-size: 0.9444444444rem;
            list-style: none; }
        #contents .product02-01wrap .product02_01txt .product02_text_detail {
          width: 90%;
          margin: 30px 0 0 20px;
          font-size: 0.9444444444rem;
          text-align: left; }
    #contents .swiper {
      width: 100%;
      height: auto;
      position: relative; }
      #contents .swiper .swiper-wrapper {
        width: 100%;
        z-index: 5;
        -webkit-transition-timing-function: linear !important;
        -o-transition-timing-function: linear !important;
        transition-timing-function: linear !important; }
        #contents .swiper .swiper-wrapper .swiper-slide {
          width: 100%; }
          #contents .swiper .swiper-wrapper .swiper-slide img {
            height: auto;
            width: 100%;
            margin: 0 50px;
            backface-visibility: hidden; } }
