@charset "utf-8";
/* CSS Document */

#page_ttl_wrap .img_wrap {
   background-image: url(../images/product_top.jpg);
}

@media screen and (max-width: 768px) {
   #page_ttl_wrap .img_wrap {
      background-image: url(../images/product_top_sp.jpg);
   }
}

/* #detail
----------------------------------------- */
#detail {
}
#detail .inner {
   max-width: 126rem;
   padding-top: 26rem;
   margin-bottom: 35rem;
}

#detail .product_list {
}
#detail .product_list > .product_con {
   /* background-color: #ffffff; */
   padding: 0 15rem;
   /* padding-top: 14rem; */
}
#detail .product_list > .product_con:not(:last-child) {
   margin-bottom: 24rem;
}

#detail .product_list > .product_con .description {
   font-size: 1.6rem;
   line-height: calc(44 / 16);
   letter-spacing: 0.125em;
}

#detail .product_list > .product_con .product_layout {
   margin-bottom: 12rem;
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
}
#detail .product_list > .product_con .product_layout .txt_wrap {
   width: calc(450 / 960 * 100%);
}
#detail .product_list > .product_con .product_layout .img_wrap {
   width: calc(500 / 960 * 100%);
}

#detail .product_list > .product_con .product_layout .txt_wrap h2 {
   font-size: 3.5rem;
   line-height: calc(62 / 35);
   font-weight: 700;
   letter-spacing: 0.15em;
}
#detail .product_list > .product_con .product_layout .txt_wrap h2 span {
   color: #c83c00;
}
#detail .product_list > .product_con .product_layout .txt_wrap .detail_table {
   margin-top: 3rem;
   font-size: 1.6rem;
   line-height: calc(32 / 13);
   letter-spacing: 0.1em;
   text-align: left;
}
#detail
   .product_list
   > .product_con
   .product_layout
   .txt_wrap
   .detail_table
   tr {
}
#detail
   .product_list
   > .product_con
   .product_layout
   .txt_wrap
   .detail_table
   th {
   padding: 0 0;
   padding-right: 4rem;
   white-space: nowrap;
}
#detail
   .product_list
   > .product_con
   .product_layout
   .txt_wrap
   .detail_table
   td {
   padding: 0 0;
   width: 100%;
   white-space: nowrap;
}

#detail .product_list > .product_con .detail_layout {
   margin-top: 13rem;
   border-top: 1px solid #0b0b0b;
   padding-top: 13rem;
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
}
#detail .product_list > .product_con .detail_layout .txt_wrap {
   /* width: calc(440 / 960 * 100%); */
   width: 100%;
}
#detail .product_list > .product_con .detail_layout .img_wrap {
   width: calc(440 / 960 * 100%);
}
#detail
   .product_list
   > .product_con
   .detail_layout
   .img_wrap
   .img:not(:last-child) {
   margin-bottom: 5rem;
}

#detail .product_list > .product_con .detail_layout .txt_wrap h3 {
   font-size: 2rem;
   line-height: calc(38 / 20);
   font-weight: 700;
   letter-spacing: 0.15em;
}
#detail .product_list > .product_con .detail_layout .txt_wrap h3 span {
   font-size: 1.8rem;
}
#detail .product_list > .product_con .detail_layout .txt_wrap .txt {
   margin-top: 2rem;
   font-size: 1.6rem;
   line-height: calc(32 / 16);
   letter-spacing: 0.13em;
}

#detail .product_list > .product_con .detail_layout .txt_wrap .food {
   margin-top: 5rem;
}

#detail .product_list > .product_con .detail_layout .txt_wrap .list {
   margin-top: 2rem;
   font-size: 1.6rem;
   line-height: calc(32 / 16);
   letter-spacing: 0.15em;
}
#detail .product_list > .product_con .detail_layout .txt_wrap .list > li {
   position: relative;
   padding-left: 1.2em;
}
#detail
   .product_list
   > .product_con
   .detail_layout
   .txt_wrap
   .list
   > li::before {
   content: "○";
   position: absolute;
   top: 0;
   left: 0;
}

#detail .product_list > .product_con .detail_layout .txt_wrap .link_wrap {
   margin-top: 6rem;
}
#detail .product_list > .product_con .detail_layout .txt_wrap .link_wrap .btn {
   width: 40rem;
}
#detail
   .product_list
   > .product_con
   .detail_layout
   .txt_wrap
   .link_wrap
   .btn:not(:first-child) {
   margin-top: 4rem;
}

@media only screen and (max-width: 768px) {
   #detail {
   }
   #detail .inner {
      max-width: 88%;
      padding-top: 6rem;
      margin-bottom: 9rem;
   }

   #detail .product_list {
   }
   #detail .product_list > .product_con {
      /* background-color: #ffffff; */
      padding: 3rem;
      padding-bottom: 5rem;
   }
   #detail .product_list > .product_con:not(:last-child) {
      margin-bottom: 6rem;
   }

   #detail .product_list > .product_con .description {
      font-size: 1.2rem;
      line-height: calc(28 / 12);
      letter-spacing: 0.1em;
      text-align: justify;
   }

   #detail .product_list > .product_con .product_layout {
      margin-bottom: 6rem;
      flex-flow: column-reverse;
   }
   #detail .product_list > .product_con .product_layout .txt_wrap {
      width: 100%;
      margin-top: 4rem;
   }
   #detail .product_list > .product_con .product_layout .img_wrap {
      width: 100%;
   }

   #detail .product_list > .product_con .product_layout .txt_wrap h2 {
      font-size: 2rem;
      line-height: calc(35 / 20);
   }
   #detail .product_list > .product_con .product_layout .txt_wrap h2 span {
      color: #c83c00;
   }
   #detail
      .product_list
      > .product_con
      .product_layout
      .txt_wrap
      .detail_table {
      margin-top: 2rem;
      font-size: 1.2rem;
      line-height: calc(15 / 7);
   }
   #detail
      .product_list
      > .product_con
      .product_layout
      .txt_wrap
      .detail_table
      th {
      padding-right: 2rem;
   }

   #detail .product_list > .product_con .detail_layout {
      margin-top: 4rem;
      border-top: 1px solid #0b0b0b;
      padding-top: 4rem;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
   }
   #detail .product_list > .product_con .detail_layout .txt_wrap {
      width: 100%;
      margin-top: 4rem;
   }
   #detail .product_list > .product_con .detail_layout .img_wrap {
      width: 100%;
   }
   #detail
      .product_list
      > .product_con
      .detail_layout
      .img_wrap
      .img:not(:last-child) {
      margin-bottom: 2.5rem;
   }

   #detail .product_list > .product_con .detail_layout .txt_wrap h3 {
      font-size: 1.6rem;
      line-height: calc(26 / 16);
      font-weight: 700;
      letter-spacing: 0.15em;
   }
   #detail .product_list > .product_con .detail_layout .txt_wrap h3 span {
      font-size: 1.4rem;
      letter-spacing: 0;
      margin-left: -0.5em;
   }
   #detail .product_list > .product_con .detail_layout .txt_wrap .txt {
      margin-top: 1.5rem;
      font-size: 1.2rem;
      line-height: calc(24 / 12);
      text-align: justify;
   }

   #detail .product_list > .product_con .detail_layout .txt_wrap .food {
      margin-top: 4rem;
   }

   #detail .product_list > .product_con .detail_layout .txt_wrap .list {
      margin-top: 1rem;
      font-size: 1.2rem;
      line-height: calc(24 / 12);
      letter-spacing: 0.05em;
   }

   #detail .product_list > .product_con .detail_layout .txt_wrap .link_wrap {
      margin-top: 4rem;
   }
   #detail
      .product_list
      > .product_con
      .detail_layout
      .txt_wrap
      .link_wrap
      .btn {
      min-width: inherit;
      width: 17rem;
      font-size: 1.3rem;
      padding-left: 2rem;
      padding-right: 1rem;
   }
   #detail
      .product_list
      > .product_con
      .detail_layout
      .txt_wrap
      .link_wrap
      .btn:not(:first-child) {
      margin-top: 3rem;
   }
}

/* #satoh
----------------------------------------- */
#satoh {
}
#satoh .inner {
   max-width: 126rem;
   padding-top: 24rem;
}

#satoh .layout {
   width: 100%;
   background-color: #545454;
   padding: 15rem;
   padding-top: 14rem;
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;

   color: #ffffff;
}
#satoh .layout .txt_wrap {
   width: calc(520 / 960 * 100%);
}
#satoh .layout .txt_wrap h2 {
   font-size: 2.8rem;
   line-height: calc(49 / 28);
   font-weight: 700;
   letter-spacing: 0.15em;
}
#satoh .layout .txt_wrap .txt {
   margin-top: 4rem;
   font-size: 1.6rem;
   line-height: calc(32 / 16);
   letter-spacing: 0.15em;
}
#satoh .layout .img_wrap {
   width: calc(360 / 960 * 100%);
}
#satoh .layout .img_wrap .name {
   font-size: 3rem;
   line-height: calc(45 / 30);
   font-weight: bold;
   letter-spacing: 0.15em;
   display: flex;
   align-items: baseline;
   margin-top: 5rem;
}
#satoh .layout .img_wrap .name span {
   font-size: 1.3rem;
   line-height: calc(32 / 16);
   letter-spacing: 0.15em;
   margin-left: 3rem;
}

#satoh .layout .img_wrap .profile {
   margin-top: 3rem;
   font-size: 1.5rem;
   line-height: calc(30 / 15);
   letter-spacing: 0.15em;
}

@media only screen and (max-width: 768px) {
   #satoh {
   }
   #satoh .inner {
      max-width: 24rem;
      padding-top: 6rem;
   }

   #satoh .layout {
      padding: 4rem 3rem;
   }
   #satoh .layout .txt_wrap {
      width: 100%;
   }
   #satoh .layout .txt_wrap h2 {
      font-size: 1.6rem;
      line-height: calc(28 / 16);
      text-align: center;
      letter-spacing: 0.03em;
   }
   #satoh .layout .txt_wrap .txt {
      margin-top: 2.5rem;
      font-size: 1.2rem;
      line-height: calc(24 / 12);
      text-align: justify;
   }
   #satoh .layout .img_wrap {
      width: 100%;
      margin-top: 3rem;
   }
   #satoh .layout .img_wrap .name {
      font-size: 2.2rem;
      line-height: 1;
      font-weight: bold;
      text-align: center;
      letter-spacing: 0.15em;
      flex-flow: column;
      align-items: center;
      justify-content: center;
      margin-top: 3rem;
   }
   #satoh .layout .img_wrap .name span {
      display: block;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      margin-left: 0;
      margin-top: 1rem;
   }

   #satoh .layout .img_wrap .profile {
      margin-top: 2rem;
      font-size: 1.2rem;
      line-height: calc(23 / 12);
      letter-spacing: 0.1em;
      text-align: justify;
   }
}

/* #iwata
----------------------------------------- */
#iwata {
   text-align: left;
}
#iwata .inner {
   max-width: 126rem;
   margin: 0 auto;
   /* padding-top: 24rem; */
   /* padding-bottom: 35rem; */
}

#iwata .layout {
   position: relative;
   width: 100%;
   background-color: #545454;
   padding: 15rem;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: space-between;

   color: #ffffff;
}
#iwata .layout .txt_wrap {
   width: calc(600 / 960 * 100%);
}
#iwata .layout .txt_wrap .name {
   font-size: 3rem;
   line-height: calc(45 / 30);
   font-weight: bold;
   letter-spacing: 0.15em;
   display: flex;
   align-items: baseline;
}
#iwata .layout .txt_wrap .name span {
   font-size: 1.3rem;
   line-height: calc(32 / 16);
   letter-spacing: 0.15em;
   margin-left: 3rem;
}
#iwata .layout .txt_wrap .profile {
   margin-top: 3rem;
   font-size: 1.5rem;
   line-height: calc(30 / 15);
   letter-spacing: 0.15em;
}

#iwata .layout .img_wrap {
   width: calc(280 / 960 * 100%);
}

#iwata .modal-cancel {
   cursor: pointer;
   min-width: 110px;
   margin: 0;
   padding: 12px 0;
   background-color: #0b0b0b;
   color: #fff;
   position: absolute;
   top: 0;
   right: 0;
   font-size: 16px;
}

@media only screen and (max-width: 768px) {
   #iwata {
   }
   #iwata .inner {
      max-width: 80%;
      margin: 0 auto;
      padding-top: 7rem;
      padding-bottom: 9rem;
   }

   #iwata .layout {
      padding: 4rem 3rem;
   }
   #iwata .layout .txt_wrap {
      width: 100%;
   }

   #iwata .layout .txt_wrap .name {
      font-size: 2.2rem;
      line-height: 1;
      font-weight: bold;
      text-align: center;
      letter-spacing: 0.15em;
      flex-flow: column;
      align-items: center;
      justify-content: center;
      margin-top: 3rem;
   }
   #iwata .layout .txt_wrap .name span {
      display: block;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      margin-left: 0;
      margin-top: 1rem;
   }

   #iwata .layout .txt_wrap .profile {
      margin-top: 2rem;
      font-size: 1.2rem;
      line-height: calc(23 / 12);
      letter-spacing: 0.1em;
      text-align: justify;
   }

   #iwata .layout .img_wrap {
      width: 100%;
   }
}

.remodal-wrapper {
   background-color: rgba(0, 0, 0, 0.8);
}
