
/* ********************************** 製品シングルページの設定 ********************************** */


.item_name{
    display: flex;
    padding-bottom: 1.5em;
    align-items: center;
    justify-content: left;
}

.item_name .item_ttl{
    text-align: left;
    line-height: 1.5em;
}

.main_contents .product_number{
    background-color: var(--maincolor);
    color: white;
    padding: 0.5em 2em;
    margin-right: 1em;
    border-radius: 1.2em;
    text-align: center;
    line-height: 1.3em;

}

.main_contents .product_number br::before{
    content: '・';
}






.image_box{
    background-color: var(--assortcolor);
    padding: 2.5em 0;
    margin-bottom: 1.5em;
    width: 100%;  
}

.main_image_container {
    position: relative;
}

.image_box_main_swiper{
    max-width: 800px;
    margin: 0 auto;
}

.image_box .swiper-container {
    width: 100%;
    height: 300px; /* 画像の高さを指定 */
}

.image_box .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}

.image_box .swiper-slide img{
    border: 6px solid white;
    box-sizing:border-box;
}


.image_box_main_swiper_button_prev,
.image_box_main_swiper_button_next{
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    z-index: 1;
    cursor: pointer;
    padding: 1em; /* 余白を設けるためのパディング */
    box-sizing: content-box; /* ボックスサイジングの設定 */
}

/* スワイパーのナビゲーション（矢印）を差し替え */
.image_box_main_swiper_button_next {
    content: url('../images/systems/icon/simple_arrow_icon_white.svg');
    transform: rotate( -90deg );
    background-color: rgba(0, 0, 0, 0.5);
    right: 0;
}

.image_box_main_swiper_button_prev {
    content: url('../images/systems/icon/simple_arrow_icon_white.svg');
    transform: rotate( 90deg );
    background-color: rgba(0, 0, 0, 0.5);
    left: 0;
}

/* ホバー時のスタイル */
.image_box_main_swiper_button_prev:hover,
.image_box_main_swiper_button_next:hover{
    background-color: var(--maincolor);
}

.scroll_space{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding: 2em;
    text-align: center;
    background: url('../images/systems/icon/white_dot.svg') repeat-x;
    background-size: 5px;
    background-position-y: center;
    position: relative;
}






.scroll_space_bg{
    background-color: var(--assortcolor);
    display: inline-block;
    width: 16em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.scroll_space_bg::before,
.scroll_space_bg::after{
    content: "";
    position: absolute;
    width: 3em;
    height: 1em;
    top: 0;
    left: 0.5em;
    background: url(../images/systems/icon/scroll_arrow.svg) no-repeat;
}

.scroll_space_bg::after{
    left: unset;
    right: 0.5em;
    transform: scale(-1, 1);
}



.image_box .swiper-pagination {
    z-index: 1;
    display: contents;
}

.image_box .swiper-pagination .swiper-pagination-bullet{
    background-color: white;
    opacity: 1;
    width: 0.6em;
    height: 0.6em;
}

.image_box .swiper-pagination .swiper-pagination-bullet-active{
    background-color: var(--maincolor);
    transform: scale(1.75);
}






.sub_image_container{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.item_text{
    line-height: 2em;
    margin-bottom: 2em;
}

.item_switch_tag{
    display: flex;
}

.item_switch_tag li{
    display: flex;
}


.item_switch_tag > li:first-of-type{
    background-color: #F8E6D0;
    padding: 1em 1.5em;
    margin-right: 1em;
    width: 142px;
    text-align: center;
    display: inline-block;
}

.switch_text .switch_list li{
    display: inline-block;
    
}

.switch_text{
    border: 2px solid #F8E6D0;
    padding: 1em;
    width: 100%;
}

#item_view .orange_border{
    margin: 2em 0 2em 0;
}






/* ここからタブの切り替え */
/* タブコンテンツボックスのスタイル */
.tab_contents_box {
    border: 1px solid var(--assortcolor);
    margin-bottom: 1em;
    line-height: 1.5em;
}

/* タブバーのスタイル */
.tab_bar {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* タブバー内の各リストアイテムのスタイル */
.tab_menu {
    width: calc(100% / 3);
    cursor: pointer;
    padding: 1em;
    text-align: center;
    background-color: var(--assortcolor);
    border-right: 1px solid white;
}

.tab_menu:hover {
    background: var(--assortcolor);
}

.tab_menu.active {
    background: #fff;
    border-bottom: 4px solid var(--maincolor);
}

/* タブコンテンツのスタイル */
.tab_content {
    display: none;
}

.tab_content.active {
    display: block;
}

.tab_content th,
.tab_content td{
    outline: 1px solid var(--assortcolor);
    padding: 1.2em 2em;
}

.tab_content th{
    min-width: 180px;
    vertical-align: middle;
    text-align: center;
    border-left: 1px solid var(--assortcolor);
}

.tab_content td{
    width: 100%;
    border-right: 1px solid var(--assortcolor);
}

#tab_b_content,
#tab_c_content{
    padding: 2em;
    border: 1px solid var(--assortcolor);
}




/* ここからリンクボタンのスタイル */
.memo_box{
    margin: 3em 0;
}

.memo_box ul{
    display: grid; /* グリッドレイアウトを使用して子要素を配置 */
    grid-template-columns: repeat(2, 1fr); /* 2列のグリッドを作成し、各列の幅を均等に1fr（フラクション単位）で指定 */
    gap: 1em; /* 各グリッドアイテム間に2emの隙間を設定 */
}

.memo_box ul li a{
    display: block;
    padding: 1em;
    border: 2px solid var(--assortcolor);
    background-color: #F9F8F8;
}

.memo_box ul li a:hover{
    border: 2px solid var(--maincolor);
    background-color: #F8E6D0;
}

.memo_box .manual_dl::before,
.memo_box .image_dl::before,
.memo_box .product_btn::before,
.memo_box .youtube_btn::before{
    content: "";
    display: inline-block;
    background-size: contain;
    vertical-align: middle;
    margin-right: 0.5em;
}


.memo_box .manual_dl::before{
    width: 1.4em;
    height: 1em;
    background: url(../images/systems/icon/book_icon.svg) no-repeat;
}

.memo_box .image_dl::before{
    width: 1.4em;
    height: 1em;
    background: url(../images/systems/icon/photo_icon.svg) no-repeat;
}

.memo_box .product_btn::before{
    width: 1.2em;
    height: 1.2em;
    background: url(../images/systems/icon/product_icon.svg) no-repeat; 
}

.memo_box .youtube_btn::before{
    width: 1.4em;
    height: 1em;
    background: url(../images/systems/icon/video_icon.svg) no-repeat;
}






/* ここから商品特性のスタイル */
#item_features_warapper {
    text-align: center;
    width: 100%;
}

/* テーブル全体のスタイル */
.item_features {
    margin-top: 1em;
    width: 100%; /* テーブルの幅を100%に設定 */
    border-collapse: collapse; /* セルの境界線を重ねる */
}

/* テーブルセルの境界線スタイル */
#item_features_warapper table,
#item_features_warapper td,
#item_features_warapper th {
    border: 2px solid white;
}

/* テーブルセルの内側のパディング */
#item_features_warapper td,
#item_features_warapper th {
    padding: 1em;
    width: calc(100%/3); /* 3列なので1/3の幅に設定 */
    text-align: center; /* テキストを中央に揃える */
    vertical-align: middle;
}

/* ヘッダーの背景色 */
#item_features_warapper th {
    background-color: var(--assortcolor);
    border-bottom: 3px solid var(--maincolor);
}

#item_features_warapper td{
    border: 3px solid var(--maincolor);
    padding: 0.75em
}

#item_features_warapper td a{
    line-height: 2em;
}

#item_features_warapper td a::before{
    content: "";
    background: url(../images/systems/icon/dot_arrow_icon.png) no-repeat;
    display: inline-block;
    background-size: contain;
    vertical-align: middle;
    margin-right: 0.5em;
    width: 1.2em;
    height: 1.2em;
}

#item_features_warapper td a:hover{
    color: var(--maincolor);
}



.pickup_title,
.online_title{
    text-align: left;
}

.online_title{
    border-bottom: 2px solid var(--assortcolor);
    padding-bottom: 0.75em;
    margin-bottom: 1em;
}



.similar_post_wrapper{
    padding: 1em 0;
}

.similar-item_box{
    position: relative;
    background-color: lightgoldenrodyellow;
    padding: 1.5em;
    margin-top: 1em;
}

.similar-item-slider-wrapper{
    max-width: 800px;
    overflow: hidden;
    margin: auto;
}

#item_features_warapper .gray_dot_border{
    margin: 3em 0 2em 0
}

#item_features_warapper .swiper-wrapper li{
    text-align: left;
}

.similar_item_swiper-button-next,
.similar_item_swiper-button-prev {
    content: url(../images/systems/icon/simple_arrow_icon_white.svg);
    transform: rotate(90deg);
    background-color: rgba(0, 0, 0, 0.5);
    padding: 1em;
    width: fit-content;
}

.similar_item_swiper-button-prev{
    left: -0.2em;
}

.similar_item_swiper-button-next{
    transform: rotate(270deg);
    right: -0.2em;
}

.similar_item_swiper-button-prev:hover,
.similar_item_swiper-button-next:hover{
    background-color: var(--maincolor);
}

















.similar-item-thumbnail {
    width: 100%;
    overflow: hidden; /* 画像が親要素をはみ出さないようにする */
    display: flex;
    justify-content: center; /* 水平方向の中央揃え */
    align-items: center; /* 垂直方向の中央揃え */
    background-color: transparent;
}

.similar-item_thumbnail img {
    width: 100%; /* 画像が親要素の幅にフィットする */
    height: 100%; /* 高さは自動調整 */
    object-fit: cover; /* 画像を親要素に合わせて切り取る */
    border: 4px solid transparent;
}

.similar-item_ttl{
    margin-top: 1em;
    line-height: 1.5em;
}

#item_features_warapper .orange_border {
    margin: 2em 0;
}

.online_title::before{
    content: "";
    background: url(../images/systems/icon/cart_icon.svg);
    display: inline-block;
    background-size: cover;
    vertical-align: middle;
    width: 1.5em;
    height: 1.6em;
    margin-right: 0.4em;
}


#item_section4 .gray_dot_border{
    margin: 2em 0;
}

#item_section4 p{
    line-height: 1.8em;
}



#item_section4 .cartjs_product_img,
#item_section4 .cartjs_sk_link_other{
    display: none;
}

#item_section4 .online_button{
    line-height: 1.5em;
}

#item_section4 .online_button > div{
    width: 100% !important;
}

#item_section4 .cartjs_product_table table{
    width: 100% !important;
    margin: 1em 0 2em 0 !important;
}

#item_section4 .cartjs_product_table th,
#item_section4 .cartjs_product_table td{
    padding: 1em !important;
}

.cartjs_cart_in input{
    font-size: 1em;
    padding: 0.5em 3em;
    border: 3px solid var(--maincolor);
    border-radius: 999px;
    background-color: var(--maincolor);
    color: white;
}

.cartjs_cart_in input:hover{
    background-color: white;
    color: var(--maincolor);
}











/* プラグイン『Shortcodes Ultimate』で追加したライトボックスのデザイン変更 */
.single-item .su-lightbox {
    padding: 8px 14px 8px 8px;
    border: 4px solid red;
    background-color: yellow;
    color: red;
    font-weight: 800;
}

.single-item .su-lightbox:hover {
    background-color: red;
    color: white;
    cursor: pointer;
}

.single-item .su-lightbox::before {
    content: "\f211";
    font-family: "dashicons";
    vertical-align: middle;
    padding-left: 10px;
    margin-right: 3px;
}



