/* SBP2025/06 */
.color_sl{
	color: #078c9c;
}
.single-operating .color_sl{
	color: #0092d8;
}

.p_color_sl{
	position: relative;
	font-weight: bolder;
	___text-indent: -1em;
	padding-left: 1em;
}
.p_color_sl::before{
	content: "●";
	color: #078c9c;
	position: absolute;
	left: 0;
	margin-right: 0.5em;
	display: inline-block;
	width: 1em; /* ●1文字分 */
}
.single-operating .p_color_sl::before{
	content: "●";
	color: #0092d8;
}

.js_add_tabmenu_wrap{	
}
.js_add_tabmenu_wrap .js_add_tabmenu_wrap_border{
	border-bottom: 1px solid gray;
}
.js_add_tabmenu_wrap .js_add_tabmenu_wrap_border_container{
	margin-bottom: -1px;
}
.js_add_tabmenu{

}
.js_add_tabmenu .js_add_tabmenu_col .js_add_tabmenu_link {
	transition: 1000ms;
	cursor: pointer;
	color: #0077c8;
	font-weight: bolder;
}
.js_add_tabmenu .js_add_tabmenu_col.active .js_add_tabmenu_link, 
.js_add_tabmenu .js_add_tabmenu_col:hover .js_add_tabmenu_link {

	__background-color: rgb(240, 255, 240);
	background-image: linear-gradient(180deg, rgba(214, 241, 254, 1), rgba(214, 241, 254, 0));
	
	
}
.js_add_tabmenu .js_add_tabmenu_col.active{
	border-bottom: none !important;
}

div.js_bgfit_target_obj{
	margin: 3.5rem 0 0; 
	padding: 5rem 0;
}

/*
#lightbox .lb-details{
	display: block !important;
}
*/
.product_feature_ext_item .product_feature_ext_item_description
 > :is(h1, h2, h3, h4, h5, h6, p)
{
	___line-height: 1.6em;
}
.product_feature_ext_item .product_feature_ext_item_description p:first-child{
	font-weight: bolder;
}

.wrap_product_feature_ext_item_oembed{
	position: relative;
	width: 100%;
	/* 16:9 アスペクト比の padding トリック */
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.wrap_product_feature_ext_item_oembed iframe{
	position: absolute;
	top: 0;
	left: 0;
	/* 削除した width/height の代わりに % 指定 */
	width: 100%;
	height: 100%;
	border: 0;
}

.product_feature_ext_item_title{
	
}

.product_feature_ext_item_subitem_description h1,
.product_feature_ext_item_subitem_description h2,
.product_feature_ext_item_subitem_description h3,
.product_feature_ext_item_subitem_description h4,
.product_feature_ext_item_subitem_description h5,
.product_feature_ext_item_subitem_description h6{
	font-size: 1em;
	font-weight: bold;
	margin-bottom: 0.5em;
	line-height: 1.42857143; /* 元の基準 */
}
/* :is() で h1-h6 を束ねる（ブラウザ対応は Edge 79+ / Chrome 88+ / Safari 14.1+ など）*/
body.single-slitlamp .product_feature_ext_item_subitem_description :is(h1, h2, h3, h4, h5, h6) {
    color: #078c9c;
}
.product_feature_ext_item_subitem_description p {
	margin-bottom: 0.5em;
	font-weight: 300 !important;
	line-height: 1.42857143; /* 元の基準 */
	line-height: 1.65em;
}
.product_feature_ext_item_subitem_description
  > :is(h1, h2, h3, h4, h5, h6, p):last-child {
    margin-bottom: 0;
}

.bt_to_tab{
	display: inline-block; padding: 0.25em 1em; color: #0077c8; border: 1px solid rgba(0, 120, 200, 0.5); line-height: 1em;
	background-color: white;
	transition: 500ms;
}
.bt_to_tab:hover{
	background-color: #0077c8;
	color: white;
}

.wrap_ps p:last-child{
	margin-bottom: 0;
}

/* 768px 未満は従来どおり（縦積み）*/
/* 768px 以上で横並び＋高さ合わせ   */
@media (min-width: 768px) {
	.row.equalize {                    /* 行を flex にするだけでＯＫ */
	  display: flex;
	  flex-wrap: wrap;                 /* 折り返し可 */
	  justify-content: center;  /* ← これを追加 */
	  align-items: stretch;            /* ★高さをそろえる要：既定値なので省略可 */
	}
  
	/* col-* 幅クラスを生かす ― float だけ殺す                  */
	.row.equalize > [class*="col-"] {
	  float: none !important;          /* ← これだけで幅は保持される */
	  /* display:block; でも display:flex; でも可
		 （内部を縦伸ばししたい場合だけ display:flex にする） */
	}

	
}
/* 768px 以下（768 を含めたい場合） */
@media (max-width: 767px) {

	/* ここに 768px 以下のときのスタイルを記述 */
	.js_add_tabmenu {
		background-color: red;
	}
	.js_add_tabmenu table,
	.js_add_tabmenu tbody {
		display: block;
		width: 100%; /* テーブル全体は100%に */
	}
	.js_add_tabmenu table tr {
		display: flex;         /* flexコンテナ化 */
		flex-wrap: wrap;       /* 折り返し有効 */
		gap: 0.5rem;           /* お好みの隙間 */
	}
	.js_add_tabmenu table tr td {
		display: block;        /* flexアイテム */
		flex: 1 1 33.333%;     /* 基本幅33.33%、伸縮可 */
		box-sizing: border-box;
		white-space: normal;   /* 折り返しを許可 */
		__padding: 0.5rem;       /* お好みで */
		width: auto !important;
	}
	.js_add_tabmenu_col.active{
		border-bottom: 1px solid gray !important;
	}
	.js_add_tabmenu_wrap .js_add_tabmenu_wrap_border_container{
		margin-bottom: none !important;
	}
}
/* 992px 以下（992 を含めたい場合） */
@media (max-width: 992px) {
	.mb_3rem_mw_lg{
		margin-bottom: 3rem;
	}
}
  