@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media screen and (max-width: 960px) {
  html {
    font-size: 14px;
  }
  header h2 {
    margin: -55px 0px 0px 0;  
    font-size: 2.2rem;
  }

  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(248, 174, 62, 0.9), rgba(7, 255, 214, 0.8), rgba(23, 20, 194, 0.9));
  font-size: 1.8rem;
}
  .gMenu .menu .nav-list {
    width: 30%;
  }

.tb-br {
  display: inline;
}

  .product main {
    font-size: 1.8rem;
  }
  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
  } 
  .product-list {
    flex-wrap:wrap;  
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }

  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: none;
  }

  .address {
    font-size: 1.3rem;
    left: 6%;
    top: 17%;
  }
  #company-name {
    font-size: 2.7rem;
    right: 7%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 8.3%;
    bottom: 14%;
  }
  .twitter-icon {
    left: 16%;
    bottom: 14%;
  }
  .pinterest-icon {
    left: 23%;
    bottom: 13%;
  }
  .base-icon {
    left: 30%;
    bottom: 8%;
  }

  .arrow-wrapper {
    bottom: 138px;
    z-index: 1;
  }
}

@media screen and (max-width: 830px) {
  html {
    font-size: 12px;
  }
  header h2 {
    margin: -52px 0px 0px 0;  
    font-size: 2.2rem;
  }
  .to-home:hover .logo {
    opacity: 0.3;
  }

  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(248, 174, 62, 0.9), rgba(7, 255, 214, 0.8), rgba(23, 20, 194, 0.9));
  }
  .gMenu .menu .nav-list {
    width: 29%;
  }

  .tb-br {
   display: inline;
  }

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .other-pages li {
    font-weight: normal;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: none;
  }
      
  .address {
    font-size: 1.3rem;
    left: 5%;
    top: 20%;
  }
  #company-name {
    font-size: 2.8rem;
    right: 7%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 8%;
    bottom: 12%;
  }
  .twitter-icon {
    left: 17%;
    bottom: 12%;
  }
  .pinterest-icon {
    left: 25%;
    bottom: 10%;
  }
  .base-icon {
    left: 34%;
    bottom: 6%;
  }

  .arrow-wrapper {
    bottom: 138px;
    z-index: 1;
  }
}

@media screen and (max-width: 700px) {
  html {
    font-size: 10px;
  }
  header h2 {
    margin: -48px 0px 0px 0;  
    font-size: 2.2rem;
  }

  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(248, 174, 62, 0.9), rgba(7, 255, 214, 0.8), rgba(23, 20, 194, 0.9));
  }
  .gMenu .menu .nav-list {
    width: 26%;
  }


/* .all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }
  @keyframes fadeIn {
    0% {
      opacity: 0;
      transform: translateY(20px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .sp-br {
    display: none;
  }

  .address {
    font-size: 1.3rem;
    left: 5%;
    top: 23%;
  }
  #company-name {
    font-size: 3rem;
    right: 6%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 8%;
    bottom: 11%;
  }
  .twitter-icon {
    left: 17%;
    bottom: 11%;
  }
  .pinterest-icon {
    left: 25%;
    bottom: 10%;
  }
  .base-icon {
    left: 33.6%;
    bottom: 5.5%;
  }

  .arrow-wrapper {
    bottom: 138px;
    z-index: 1;
  }
}

@media screen and (max-width: 590px) {
  html {
    font-size: 10px;
  }
  header h2 {
    margin: -47px 0px 0px 0;  
    font-size: 2.2rem;
  }

  .gMenu {
    font-size: 8px;
  }
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(248, 174, 62, 0.9), rgba(7, 255, 214, 0.8), rgba(23, 20, 194, 0.9));
  }
  .gMenu .menu .nav-list {
    width: 30%;
  }


  /* SNSを全表示できたらこっち */

  /* all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: none;
  }
      
  footer {
    font-size: 8px;
    height: 115px;
  }
  .address {
    font-size: 1.4em;
    left: 5%;
    top: 20%;
  }
  #company-name {
    font-size: 3em;
    right: 6%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 5%;
    bottom: 13%;
  }
  .twitter-icon {
    left: 15.5%;
    bottom: 14%;
  }
  .pinterest-icon {
    left: 25%;
    bottom: 12%;
  }
  .base-icon {
    left: 35%;
    bottom: 7%;
  }

  .arrow-wrapper {
    bottom: 115px;
    z-index: 1;
  }
}

@media screen and (max-width: 490px) {
  html {
    font-size: 8px;
  }
  header {
    height: 70px;
  }
  
  header h2 {
    margin: -36px 0px 0px 0;  
  }
    .logo {
    height: 60px;
  }

  /* メニューアイコンを画面右上に固定しています */
  .gMenu .menu-icon {
    top: 32px;
  }
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(229, 63, 63, 0.9), rgba(255, 193, 7, 0.9), rgba(67, 241, 38, 0.9));    overflow: hidden;
  }
  .gMenu .menu .nav-list {
    width: 35%;
    font-size: 2rem;
  }


/* .all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
    margin: 85px auto 0;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: inline;
  }
      
  footer {
    height: 115px;
  }
  .address {
    font-size: 1.5rem;
    left: 5%;
    top: 20%;
  }
  #company-name {
    font-size: 2.6rem;
    right: 6%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 5%;
    bottom: 13%;
  }
  .instagram-icon img {
    height:auto;
    width: 58%;
  }
  .twitter-icon {
    left: 17%;
    bottom: 13%;
  }
  .twitter-icon img {
    height:auto;
    width: 51%;
    }
  .pinterest-icon {
    left: 28%;
    bottom: 12%;
  }
  .pinterest-icon img {
    height:auto;
    width: 60%;
  }
  .base-icon {
    left: 39.1%;
    bottom: 9%;
  }
  .base-icon img {
    height:auto;
    width: 62%;
  }  
  .copyrights {  
    text-align: center;
    font-size: 0.8rem;
    background-color: #555;
    color:#fff;
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0.1% 0;
  }

  .arrow-wrapper {
    bottom: 115px;
    z-index: 1;
  }
}

@media screen and (max-width: 414px) {
  html {
    font-size: 8px;
  }
  header h2 {
    margin: -29px 0px 0px 0;  
    font-size: 2.3rem;
  }
    .logo {
    height: 40px;
  }

  /* メニューアイコンを画面右上に固定しています */
  .gMenu .menu-icon {
    right: 4vw;
    top: 20px;
  }
  /* メニューアイコン（三本線）の真ん中の線です */
  .gMenu .menu-icon .navicon {
    height: 1.5px; /* 太さ */
    width: 35px; /* 長さ */
  }
  .gMenu .menu-icon .navicon::before {top: 7px;} /* 位置を上にずらしています */
  .gMenu .menu-icon .navicon::after {top: -7px;} /* 位置を下にずらしています */
  /* 表示されるメニューです */
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(229, 63, 63, 0.9), rgba(255, 193, 7, 0.9), rgba(67, 241, 38, 0.9));    overflow: hidden;
    font-size: 8px;
  }
  .gMenu .menu .nav-list {
    width: 35%;
    font-size: 2rem;
  }

/* .all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
    margin: 65px auto 0;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    font-size: 1.75rem;
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }

  .other-pages p {
    width: 97vw;
  }
  .button {
    padding: 5px 3vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: inline;
  }
      
  footer {
    height: 100px;
  }
  .address {
    font-size: 1.3rem;
    left: 4%;
    top: 10%;
  }
  #company-name {
    font-size: 2.6rem;
    right: 6%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 5%;
    bottom: 14%;
  }
  .instagram-icon img {
    height:auto;
    width: 55%;
  }
  .twitter-icon {
    left: 18%;
    bottom: 14%;
  }
  .twitter-icon img {
    height:auto;
    width: 49%;
    }
  .pinterest-icon {
    left: 29%;
    bottom: 13%;
  }
  .pinterest-icon img {
    height:auto;
    width: 60%;
  }
  .base-icon {
    left: 40%;
    bottom: 9%;
  }
  .base-icon img {
    height:auto;
    width: 62%;
    }  

  .arrow-wrapper {
    bottom: 100px;
    z-index: 1;
  }
  .arrow-circle {
    display: none;
  }
}

@media screen and (max-width: 375px) {
  html {
    font-size: 7px;
  }
  header {
    height: 50px;
  }
  header h2 {
    margin: -27px 0px 0px 0;  
    font-size: 2.3rem;
  }
    .logo {
    height: 40px;
  }

  /* メニューアイコンを画面右上に固定しています */
  .gMenu .menu-icon {
    right: 4vw;
    top: 20px;
  }
  /* メニューアイコン（三本線）の真ん中の線です */
  .gMenu .menu-icon .navicon {
    height: 1.5px; /* 太さ */
    width: 35px; /* 長さ */
  }
  /* 表示されるメニューです */
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(229, 63, 63, 0.9), rgba(255, 193, 7, 0.9), rgba(67, 241, 38, 0.9));    overflow: hidden;
    font-size: 8px;
  }
  .gMenu .menu .nav-list {
    width: 40%;
    font-size: 2rem;
  }


  /* SNSを全表示できたらこっち */
/*.all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
    margin: 65px auto 0;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .button {
    padding: 4px 5vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }


  .sp-br {
    display: inline;
  }
      
  footer {
    height: 100px;
  }
  .address {
    font-size: 1.3rem;
    left: 4%;
    top: 10%;
  }
  #company-name {
    font-size: 2.6rem;
    right: 6%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 5%;
    bottom: 13%;
  }
  .instagram-icon img {
    height:auto;
    width: 55%;
  }
  .twitter-icon {
    left: 17.5%;
    bottom: 14%;
  }
  .twitter-icon img {
    height:auto;
    width: 49%;
    }
  .pinterest-icon {
    left: 29%;
    bottom: 13%;
  }
  .pinterest-icon img {
    height:auto;
    width: 60%;
  }
  .base-icon {
    left: 40%;
    bottom: 8%;
  }
  .base-icon img {
    height:auto;
    width: 62%;
  }  

  .arrow-wrapper {
    bottom: 100px;
    z-index: 1;
  }
}

@media screen and (max-width: 360px) {
  html {
    font-size: 6.5px;
  }
  
  header h2 {
    margin: -27px 0px 0px 0;  
    font-size: 2.3rem;
  }
    .logo {
    height: 40px;
  }

  /* メニューアイコンを画面右上に固定しています */
  .gMenu .menu-icon {
    right: 4vw;
    top: 20px;
  }
  /* メニューアイコン（三本線）の真ん中の線です */
  .gMenu .menu-icon .navicon {
    height: 1.5px; /* 太さ */
    width: 35px; /* 長さ */
  }
  /* 表示されるメニューです */
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(229, 63, 63, 0.9), rgba(255, 193, 7, 0.9), rgba(67, 241, 38, 0.9));    overflow: hidden;
    font-size: 8px;
    color: #FFF;
    font-weight: bolder;
  }
  .gMenu .menu .nav-list {
    width: 45%;
    font-size: 2rem;
  }


  /* SNSを全表示できたらこっち */
/*.all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 97%;
    padding: 3% 1% 5%;
    margin: 65px auto 0;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list li {
    margin-right: 0%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 97%;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages p {
    width: 97vw;
    line-height: 1.5;
  }
  .button {
    padding: 4px 5vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: inline;
  }

  footer {
    height: 100px;
  }
  .address {
    font-size: 1.3rem;
    left: 4%;
    top: 13%;
  }
  #company-name {
    font-size: 2.6rem;
    right: 5%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 5%;
    bottom: 14%;
  }
  .instagram-icon img {
    height:auto;
    width: 45%;
  }
  .twitter-icon {
    left: 17%;
    bottom: 14%;
  }
  .twitter-icon img {
    height:auto;
    width: 40%;
    }
  .pinterest-icon {
    left: 29%;
    bottom: 13%;
  }
  .pinterest-icon img {
    height:auto;
    width: 52%;
  }
  .base-icon {
    left: 40%;
    bottom: 9%;
  }
  .base-icon img {
    height:auto;
    width: 54%;
  }  

  .arrow-wrapper {
    bottom: 100px;
    z-index: 1;
  }
}

@media screen and (max-width: 320px) {
  html {
    font-size: 6px;
  }
  header h2 {
    margin: -24px 0px 0px 0;  
    font-size: 2.3rem;
  }
   .logo {
   height: 40px;
  }

  /* メニューアイコンを画面右上に固定しています */
  .gMenu .menu-icon {
    right: 4vw;
    top: 20px;
  }
  /* メニューアイコン（三本線）の真ん中の線です */
  .gMenu .menu-icon .navicon {
    height: 1.5px; /* 太さ */
    width: 35px; /* 長さ */
  }
  .gMenu .menu {
    background:linear-gradient(to bottom, rgba(229, 63, 63, 0.9), rgba(255, 193, 7, 0.9), rgba(67, 241, 38, 0.9));    overflow: hidden;
    font-size: 8px;
  }
  .gMenu .menu .nav-list {
    width: 45%;
    font-size: 2em;
  }


  /* SNSを全表示できたらこっち */
/* .all_nav-list {
  margin-top: 30%;
} */
 

.tb-br {
  display: inline;
}

  .shinzen-section{
    width: 310.4px;
    padding: 3% 1% 5%;
    margin: 65px auto 0;
  } 
  .product-list {
    flex-wrap:wrap;  
    margin-top: 0%;
  }
  .product-list h3 {
    margin-top: 5%;
  }
  .product-list img {
    width: 40vw;
  }
  .shinzen p {
    margin-top: 5%;
  }
  .nasen-section {
    width: 310.4px;
    padding: 3% 1% 7%;
    margin: 10px auto 0;
  }
  .print-list {
    margin-top: 0%;
  }
  .print-list h3 {
    margin-top: 5%;
  }
  .print-list li:last-child {
    margin-right: auto;
  }
  .print-list img {
    width: 40vw;
  }
  .nasen p {
    margin-top: 6%;
  }
  
  .other-pages {
    width: 320px;
  }
  .other-pages p {
    width: 320px;
    line-height: 1.5;
  }
  .button {
    padding: 4px 5vw;
    font-size: 2rem;
  }
  .button:hover::before {
    width: 0;
  }

  .sp-br {
    display: inline;
  }
      
  footer {
    height: 100px;
    width: 320px;
  }
  .address {
    font-size: 1.3rem;
    left: 4%;
    top: 17%;
  }
  #company-name {
    font-size: 2.5rem;
    position:absolute;
    right: 5%;
    bottom: 35%;
  }
  .instagram-icon {
    left: 6%;
    bottom: 14%;
  }
  .instagram-icon img {
    height:auto;
    width: 45%;
  }
  .twitter-icon {
    left: 18%;
    bottom: 14%;
  }
  .twitter-icon img {
    height:auto;
    width: 40%;
    }
  .pinterest-icon {
    left: 29%;
    bottom: 13%;
  }
  .pinterest-icon img {
    height:auto;
    width: 52%;
  }
  .base-icon {
    left: 40%;
    bottom: 9%;
  }
  .base-icon img {
    height:auto;
    width: 54%;
  }  

  .arrow-wrapper {
    bottom: 100px;
    z-index: 1;
  }
}
