@charset "UTF-8";
/* ===================================================================
  use products
=================================================================== */
/*---------------------------------------------------------------------------*/
@media screen and (min-width: 769px), print {
  /* ===================================================================
  use pc
=================================================================== */
  
  .products_conte h2 {
    font-size: 3rem;
    padding: 40px 0;
    text-align: center;
  }
  .products_conte h2 span {
    padding: 40px 0;
    text-align: center;
    position: relative;
  }
  .products_conte h2 span::after {
    content: "";
    display: inline-block;
    position: absolute;
    left: -30px;
    top: 22px;
    background: url("../common/images/stripe.png") no-repeat;
    width: 65px;
    height: 100%;
    z-index: -1;
  }
  .products_conte div.ex {
    padding-top: 1em;
    text-align: center;
  }
  .products_conte p.ex {
    text-align: center;
  }
  .products_conte p.ex span {
    display: block;
    line-height: 3em;
  }
  .products_conte p.ex span a:after {
    content:" >>";
    color: #e4007f;
  }
  .products_conte .contents {
    width: 1100px;
    margin: 0 auto;
    padding-top: 20px;
  }
  .products_conte .contents ul.category {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: url("../common/images/grd_line.png") no-repeat center bottom;
    margin-bottom: 20px;
  }
  .products_conte .contents ul.category li {
    width: 340px;
    background: #fff;
    text-align: center;
    margin-bottom: 20px;
  }
  .products_conte .contents ul.category li figure {
    width: 300px;
    height: 300px;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    background-color: #000;
    background-image: url("../common/images/noimage.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 300px;
  }
  .products_conte .contents ul.category li figure p {
    width: 300px;
    height: 300px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: auto 100%;
    -moz-background-size: auto 100%;
    -o-background-size: auto 100%;
    background-size: auto 100%;
  }
  .products_conte .contents ul.category li figcaption {
    padding: 20px 10px;
    color: #333;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .products_conte .contents ul.category li figcaption::after {
    display: block;
    content: '‥‥‥‥‥‥‥‥‥‥';
    color: #e4007f;
    font-weight: normal;
    font-family: "monospace";
  }
  .products_conte .contents ul.category li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 20px 0;
    color: #333;
    position: relative;
    box-sizing: border-box;
    border: 4px solid #000;
    outline: none;
    transition: all .1s;
  }
  .products_conte .contents ul.category li a::before,
  .products_conte .contents ul.category li a::after {
    position: absolute;
    z-index: 2;
    content: '';
    width: 0;
    height: 0;
    border: 4px solid transparent;
  }
  .products_conte .contents ul.category li a::before {
    top: -4px;
    left: -4px;
  }
  .products_conte .contents ul.category li a::after {
    bottom: -4px;
    right: -4px;
  }
  .products_conte .contents ul.category li a:hover {
    color: #3be5ae;
  }
  .products_conte .contents ul.category li a:hover img {
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    opacity: .80;
  }
  .products_conte .contents ul.category li a:hover figcaption {
    color: #e4007f;
  }
  .products_conte .contents ul.category li a:hover figcaption::after, 
  .products_conte .contents ul.category li a:hover .code, 
  .products_conte .contents ul.category li a:hover .price {
    color: #333;
  }
  .products_conte .contents ul.category li a:hover::before,
  .products_conte .contents ul.category li a:hover::after {
    width: 100%;
    height: 100%;
  }
  .products_conte .contents ul.category li a:hover::before {
    border-bottom-color: #e4007f;
    border-left-color: #e4007f;
    transition: height .2s, width .2s .2s;
  }
  .products_conte .contents ul.category li a:hover::after {
    border-top-color: #1d2088;
    border-right-color: #1d2088;
    transition: height .2s, width .2s .2s;
  }
  
  .products_conte .contents .ec_cate {
    width: 90%;
    margin: 20px auto 0;
    display: flex;
    justify-content: space-between;
  }
  .products_conte .contents .ec_cate p img {
    height: 34px;
    width: auto;
  }
  .products_conte .contents .ec {
    margin-top: 60px;
  }
  
  .products_conte .detail_ttl {
    padding: 20px 0;
    margin: 20px 0;
    background-image: url("../common/images/grd_line.png"),url("../common/images/grd_line.png"),url("../common/images/title_bg.png");
    background-repeat: no-repeat,no-repeat,repeat-y;
    background-position: center top,center bottom,center center;
    text-align: center;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
  }
  .products_conte .detail_body {
    padding: 20px 40px;
    background: #fff;
    color: #333;
    margin-bottom: 20px;
  }
  .products_conte .detail_body td, 
  .products_conte .detail_body th, 
  .products_conte .detail_body input, 
  .products_conte .detail_body textarea {
    background: #fff;
    color: #333;
  }
  
  .products_conte .detail_body .detail {
    text-align: center;
  }
  .products_conte .detail_body .name {}
  .products_conte .detail_body .code {
    line-height: 3;
  }
/*
  .products_conte .detail_body .price {
    display: block;
    padding: 0 20px;
    background: #000;
    font-size: 2rem;
    line-height: 2;
    color: #eee;
  }
*/
  .products_conte .products_contact {
    padding: 40px 0 0;
    text-align: center;
  }
  .products_conte .products_contact p {}
  .products_conte .products_contact a {
    margin-top: 20px;
    padding: 12px 142px 12px 140px;
    font-size: 24px;
  }
  .products_conte .products_contact a:hover {
    padding: 12px 140px;
  }
  .wp-block-embed-youtube {
    text-align: center;
  }
  
  .products_conte .detail_body .exp table {
    width: 90%!important;
    margin: 20px auto;
    border-collapse: collapse;
    height: auto!important;
  }
  .products_conte .detail_body .exp table th, 
  .products_conte .detail_body .exp table td {
    border: 1px solid #000;
    padding: 10px;
    text-align: center;
  }
  
  
}

@media screen and (max-width: 768px) {
  /* ===================================================================
  use sp
=================================================================== */
  .products_conte {
    padding: 3vw 0 0;
  }
  .products_conte h2 {
    font-size: 3rem;
    text-align: center;
    padding: 3vw 0;
  }
  .products_conte h2 span {
    text-align: center;
    position: relative;
    padding: 1vw 0;
  }
  .products_conte h2 span::after {
    content: "";
    display: inline-block;
    position: absolute;
    left: -30px;
    width: 65px;
    height: 100%;
    background: url("../common/images/stripe.png") no-repeat;
    background-size: auto 100%;
    z-index: -1;
  }
  .products_conte div.ex {
    padding: 1em 1em 0;
    text-align: center;
  }
  .products_conte p.ex {
    text-align: center;
    padding: 0 1em;
  }
  .products_conte p.ex span {
    display: block;
    line-height: 3em;
  }
  .products_conte p.ex span a:after {
    content:" >>";
    color: #e4007f;
  }
  .products_conte .contents {
    width: 95%;
    margin: 0 auto;
    padding-top: 0;
  }
  .products_conte .contents ul.category {
    width: 100%;
    background: url("../common/images/grd_line.png") no-repeat center bottom;
    background-size: 100% auto;
    margin-bottom: 6vw;
  }
  .products_conte .contents ul.category li {
    width: 100%;
    background: #fff;
    text-align: center;
    margin-bottom: 3vw;
  }
  .products_conte .contents ul.category li figure {
    width: 95%;
    height: 80vw;
    margin: 0 auto;
    padding: 0;
    background-color: #000;
    background-image: url("../common/images/noimage.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .products_conte .contents ul.category li figure p {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  }
  .products_conte .contents ul.category li figcaption {
    padding: 3vw 2vw;
    color: #333;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .products_conte .contents ul.category li figcaption::after {
    display: block;
    content: '‥‥‥‥‥‥‥‥‥‥';
    color: #e4007f;
    font-weight: normal;
    font-family: "monospace";
  }
  .products_conte .contents ul.category li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 3vw 0;
    color: #333;
    position: relative;
    box-sizing: border-box;
    border: 4px solid #000;
    outline: none;
    transition: all .1s;
  }
  .products_conte .contents ul.category li a::before,
  .products_conte .contents ul.category li a::after {
    position: absolute;
    z-index: 2;
    content: '';
    width: 0;
    height: 0;
    border: 4px solid transparent;
  }
  .products_conte .contents ul.category li a::before {
    top: -4px;
    left: -4px;
  }
  .products_conte .contents ul.category li a::after {
    bottom: -4px;
    right: -4px;
  }
  .products_conte .contents ul.category li a:hover {
    color: #3be5ae;
  }
  .products_conte .contents ul.category li a:hover img {
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    opacity: .80;
  }
  .products_conte .contents ul.category li a:hover figcaption {
    color: #e4007f;
  }
  .products_conte .contents ul.category li a:hover figcaption::after, 
  .products_conte .contents ul.category li a:hover .code, 
  .products_conte .contents ul.category li a:hover .price {
    color: #333;
  }
  
  .products_conte .contents .ec_cate {
    width: 90%;
    margin: 3vw auto 0;
    display: flex;
    justify-content: space-between;
  }
  .products_conte .contents .ec_cate p img {
    height: 9vw;
    width: auto;
  }
  .products_conte .contents .ec {
    margin-top: 10vw;
  }
  .products_conte .contents .ec img {
    height: 9vw;
    width: auto;
  }
  
  .products_conte .detail_ttl {
    padding: 20px 0;
    margin-bottom: 20px;
    background-image: url("../common/images/grd_line.png"),url("../common/images/grd_line.png"),url("../common/images/title_bg.png");
    background-repeat: no-repeat,no-repeat,repeat-y;
    background-position: center top,center bottom,center center;
    background-size: 100% auto,100% auto,auto auto;
    text-align: center;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1;
  }
  .products_conte .detail_body {
    padding: 3vw;
    background: #fff;
    color: #333;
    margin-bottom: 3vw;
  }
  .products_conte .detail_body img {
    width: 90%;
    height: auto;
  }
  .products_conte .detail_body .detail {
    text-align: center;
  }
  .products_conte .detail_body .name {}
  .products_conte .detail_body .code {
    line-height: 3;
  }
  .products_conte .detail_body .price {
    display: block;
    padding: 0 1em;
    background: #000;
    font-size: 2rem;
    line-height: 2;
    color: #eee;
  }
  
  .products_conte .products_contact {
    padding: 10vw 0 0;
    text-align: center;
  }
  .products_conte .products_contact a {
    margin-top: 20px;
    font-size: 24px;
    padding: .5em 1em;
  }
  .products_conte .products_contact a:hover {
  }
  
  .wp-block-embed-youtube {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }
  .wp-block-embed-youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
}
#cart_completion {
  text-align: center;
}
