@charset "UTF-8";

/*=======================================================
MV
=======================================================*/
.bl_lower_mv_ttl::after{
    content: 'products';
}
/*=======================================================
archive
=======================================================*/
.bl_products{
    padding: 56px 0 64px;
}
.bl_products.archive .ly_cont_inner{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 32px;
}
/* 絞り込み */
.bl_category{
    width: 232px;
    border: 1px solid #7C6522;
    padding: 24px;
    background: #ECF5F4;
}
.bl_category_all{
    display: block;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    color: #0D4255;
    border-bottom: 1px solid #7C6522;
    padding-bottom: 16px;
    margin-bottom: 24px;
}
.bl_cat_ttl{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    color: #0D4255;
    margin-bottom: 16px;
}
.bl_cat_list{
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #7C6522;
}
.bl_trouble_ttl{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    color: #0D4255;
    margin-bottom: 16px;
}
.bl_trouble_list{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
/* 商品 */
.bl_product_listWrapper{
	width: 760px;
}
.bl_products_list{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
}
.bl_products_item{
	width: 232px;
}
@media screen and (max-width: 750px) {
    .bl_products.archive .ly_cont_inner{
        gap: 56px;
    }
    /* 絞り込み */
    .bl_category{
        width: 100%;
        border: 2px solid #7C6522;
        padding: 32px;
    }
    .bl_category_all{
        font-size: 34px;
        border-bottom: 2px solid #7C6522;
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .bl_cat_ttl{
        font-size: 34px;
        margin-bottom: 24px;
    }
    .bl_cat_list{
        padding-bottom: 24px;
        margin-bottom: 24px;
        border-bottom: 2px solid #7C6522;
    }
    .bl_trouble_ttl{
        font-size: 34px;
        margin-bottom: 24px;
    }
    /* 商品 */
	.bl_product_listWrapper{
        width: 100%;
	}
    .bl_products_list{
        display: flex;
        flex-wrap: wrap;
        gap: 30px;
    }
    .bl_products_item{
        width: 330px;
    }
    .bl_products_item .bl_price{
        font-size: 25px;
		letter-spacing: 0.8px;
		text-align: center;
    }
}

/*=======================================================
single
=======================================================*/
.single .bl_media{
    align-items: flex-start;
}
.single .bl_media + *{
    margin-top: 56px;
}
.single .bl_products_imgWrapper{
	flex: 0 1 320px;
}
.single .bl_media_ttl{
	color: #7C6522;
	font-size: 32px;
	line-height: 1.3;
	letter-spacing: 1.92px;
	display: flex;
	flex-direction: column;
}
.single .bl_media_ttl > span{
	font-size: 20px;
	color: #222;
	display: block;
	letter-spacing: 1.2px;
	margin-top: 16px;
}
.single .bl_media_ttl::after{
	content: "";
	position: absolute;
	background: url(../images/products/media_ttl_line.svg) top center / contain no-repeat;
	width: 672px;
	height: 10px;
	bottom: 0;
	left: 0;
}
.single .bl_price{
	margin-top: 16px;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1.2px;
}
.single .bl_lead_txt{
	font-size: 18px;
	letter-spacing: 0.72px;
	font-weight: bold;
}
.single .bl_media_txt{
	margin-top: 8px;
}
.single .bl_media_body .el_mainBtn{
	margin: 40px 0 0;
}
.bl_product_txtWrapeer p{
	margin-bottom:1em;
}
.bl_product_sTtl{
	margin: 40px 0 0;
    width: 100%;
    padding: 7px 10px 8px 24px;
    background: #0D4255;
    font-size: 22px;
    color: #fff;
    line-height: 1.4;
}
.bl_product_txtWrapeer.blockType{
    background: #ECF5F4;
	padding: 32px;
}
/* others */
.bl_others{
	padding-bottom: 80px;
}
.bl_others .bl_products_list{
    width: 100%;
}
@media screen and (max-width: 750px) {
	.single{
	    padding: 56px 0 80px;
	}
    .single .bl_products_imgWrapper{
        flex: 0 1 330px;
		margin: 0 auto;
    }
    .single .bl_media_ttl{
        font-size: 36px;
    }
    .single .bl_media_ttl > span{
        font-size: 28px;
    }
    .single .bl_media_ttl::after{
        width: 100%;
        height: 11px;
    }
    .single .bl_price{
        font-size: 28px;
		text-align: center;
    }
    .single .bl_lead_txt{
        font-size: 28px;
    }
    .single .bl_media_txt{
        margin-top: 16px;
    }
    .single .bl_media_body .el_mainBtn{
        margin: 56px auto 0;
    }
    .bl_product_sTtl{
        margin: 56px 0 0;
        padding: 15px 20px;
        font-size: 28px;
    }
    .bl_product_txtWrapeer.blockType{
        padding: 32px;
    }

    /* others */
    .bl_others{
        padding-bottom: 80px;
    }
    .bl_others .bl_products_list{
        width: 100%;
    }
}