h2 {
  margin-top: 7px;
  margin-bottom: 7px;
}
.custom-link {
  color: #069;
  text-decoration: none;
}


.left-space {
  padding-left: 23px; /* 任意のスペースの幅を指定します */
}

.left-space-li {
  padding-left: 38px; /* 任意のスペースの幅を指定します */
}
.over_picture {margin-top:20px;
    margin-bottom:20px;}

.over_picture img {
    padding: 5px;
}

.pic_h{
    max-width: 90%;
}

/*問い合わせ・オプションボタンのスタイル*/
.order__btn-prod-inq {
    height: auto;
    width: 100%;
    padding: 9px 0;;
    border-radius: 5px;
    font-size: 0.75em;
    background-color: #434040;
    border: 1px solid #434040;
}
.order__btn-prod-inq:hover {
    background: #333333;
    border: 1px solid #333333;
}
.order__btn-prod-opt {
    height: auto;
    width: 100%;
    padding: 9px 0;;
    border-radius: 5px;
    font-size: 0.75em;
    background-color: #434040;
    border: 1px solid #434040;
}
.order__btn-prod-opt:hover {
    background: #333333;
    border: 1px solid #333333;
}

.sp-soldout-btn {
  margin-bottom: 10px;
}

@media (min-width: 768px){
    .br-button-sp {display:none}
    .sp-soldout-btn {
      display: none;
    }
}

/*タブ切り替え全体のスタイル*/
.tabs {
    margin-top: 10px;
    padding-bottom: 40px;
    background-color: #fff;

    width: 100%;
    margin: 0 auto;}

/*タブのスタイル*/
.tab_item {
    width: calc(100%/4);
    height: 50px;
    border-bottom: 3px solid #7e7e7e;
    background-color: #d9d9d9;
    line-height: 50px;
    font-size: 16px;
    text-align: center;
    color: #565656;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
}
.tab_item:hover {
    opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
    display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
    display: none;
    padding: 10px 20px 0;
    clear: both;
    overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#programming:checked ~ #programming_content,
#design:checked ~ #design_content ,
#caution:checked ~ #caution_content {
    display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
    background-color: #363636;
    color: #ffffff;
}

.btmpopupbtn {
    display: none;
}

.sponlyselectlabel {
    display: none;
}

.numlabel {
    display: inline;
}

.actbtns .cancelpopup {
    display: none;
}

@media screen and (max-width: 980px) {
    #base_gmoWrapp,
    #gmo_CMSPbar {
        overflow: hidden;
        min-width: 100% !important;
        width: 100% !important;
    }


    /*タブのスタイル*/
    .tab_item {
        width: calc(100% / 4);
        height: 50px;
        border-bottom: 3px solid #7e7e7e;
        background-color: #d9d9d9;
        line-height: 50px;
        font-size: 14px;
        text-align: center;
        color: #565656;
        display: block;
        float: left;
        text-align: center;
        font-weight: bold;
        transition: all 0.2s ease;
    }

    /*タブ切り替えの中身のスタイル*/
    .tab_content {
        display: none;
        padding: 10px 00px 0;
        clear: both;
        overflow: hidden;
    }

    .movie-wrap {
        position: relative;
        padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
        height: 0;
        overflow: hidden;
    }


    .movie-wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }



    .popup-layer {
        display: none;
    }

    .popup-layer.active {
        display: block;
        background: #000;
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 2;
        opacity: 0.6;
    }

    .popup-cart {
        display: none;
    }

    .popup-cart.active {
        display: block;
        position: fixed;
        z-index: 3;
        left: 20px;
        top: 20px;
        width: calc(100% - 40px);
        max-height: calc(100% - 40px);
        height: auto;
        background: #fff;
        box-sizing: border-box;
    }

    .popup-cart form {
        height: 100%;
    }

    .popup-head {
        font-size: 20px;
        padding: 24px 15px 15px 26px;
    }

    .popup-cart-inner {
        position: relative;
        height: 100%;
    }

    .popup-body {
        padding: 0 15px 85px;
    }

    .popup-body-cart {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        box-sizing: border-box;
        height: 70px;
        padding: 15px;
        border-top: 1px solid #ccc;
    }

    .btmpopupbtn {
        display: block;
        background: #fff;
        position: fixed;
        z-index: 1;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 70px;
        padding: 10px;
        border-top: 1px solid #ccc;
    }

    .btmpopupbtn-inner {
        display: flex;
        justify-content: space-between;
    }

    .popupcancel {
        border: 0 none;
        margin: 0;
        padding: 0;
        display: block;
        width: 48%;
    }

    .popupact {
        width: 48%;
    }

    .btmpopupbtn button {
        display: block;
        width: 100%;
        color: #ffffff;
        background-color: #f3a847;
        border: 1px solid #f3a847;
        padding: 10px;
        box-sizing: border-box;
        font-weight: bold;
        text-align: center;
        border-radius: 5px;
    }

    .sponlyselectlabel {
        display: block;
    }

    .numlabel {
        font-size: 14.4px;
        font-weight: bold;
        padding-right: 1%;
        padding-left: 1%;
       padding-bottom: 4px;
    }

    .sponlynuminput {
        display: block;
        padding-right: 1%;
        padding-left: 1%;
    }
  
  	.popup-body select {
      height: 3em;
  }

    .sponlynuminput input[name="product_num"] {
        margin-left: 0;
        border: 1px solid #aaa;
        border-radius: 5px;
        box-shadow: none;
        height: 3em;
        width: 100%;
      	padding: 0 0.5rem;
    }

    .qualitysp {
        margin-bottom: 15px;
    }

    .actbtns {
        display: flex;
        justify-content: space-between;
    }
    .actbtns .cancelpopup {
        width: 48%;
        border: 0 none;
        background: none;
        color: #333;
        font-size: 14px;
        font-weight: bold;
        padding: 0;
        display: block;
    }

    .actbtns .popupact {
        width: 48%;
        margin-bottom: 0;
    }

    .actbtns button[type="submit"] {
        padding: 10px 0px;
    }
}



hr {
  border: 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #333;}



.reviewlist_datas {
  overflow: hidden;
  zoom: 1;
  margin-bottom: 10px;
}
.icon_star {
  float: left;
  width: 150px;
}
.review_poster li {
  float: left;
  margin-left: 10px;
}
.review_poster li {
  list-style: none;
}
.reviewlist {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px dotted #ccc;
}
.review_ttl,
.shopcomment_ttl {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
}
.review_img {
  float: right;
  margin: 0 0 10px 10px
}
.reviewlist_content {
  overflow: hidden;
  zoom: 1;
}
.shopcomment {
  margin-top: 10px;
  margin-bottom: 10px;
  background: #eee;
  padding: 15px;
  border-radius: 6px;
}


---------
table{
  border-collapse: collapse;
  width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.tb01 th,
.tb01 td{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:center;
  box-sizing:border-box;
}
.tb01 th {
  background: #;
  color: #;
  
}
@media screen and (max-width: 640px) {
  .tb01 {
    width: 100%;
  }
  table.tb01 th,
  table.tb01 td {
    display: block;
    width: 100%;
    border-bottom:none;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
}


.product-description {
    border: 1px solid #ddd;
    padding: 20px;
    border-radius: 10px;
    background-color: #f9f9f9;
    margin-bottom: 20px;
}

.product-description h1 {
    font-size: 1.5em;
    margin-bottom: 10px;
}

.product-description p {
    margin: 10px 0;
}
.custom-table {
    width: 50%;
    border-collapse: collapse;
    margin-left: 10px; /* 左に少し余白を追加 */
    clear: both; /* 回り込みを防ぐ */
}
.custom-table th, .custom-table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
}
.custom-table th {
    background-color: #f2f2f2;
}
.custom-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

     #custom-indent {
        margin-left: 15px !important; /* リスト全体のインデントを5pxに */
        list-style-position: outside !important; /* 箇条書きマークをテキストの外側に表示 */
    }
    #custom-indent li {
        padding-left: 0.6em !important; /* 箇条書きマークと文字の間のスペースを微調整 */
        text-indent: 0 !important; /* 2行目以降のインデントを解除 */
        margin-bottom: 10px !important; /* リストアイテムの間のスペースを調整 */
        letter-spacing: 0.02em !important; /* 文字間に少し余白を追加 */
    }