@charset "UTF-8";


/***************************************************

	products

***************************************************/

main{
	padding-bottom: 0;
}

.archive .page_head .text_wrapp .en_title{
	padding-left: 66px;
}

.archive .page_head .text_wrapp .en_title::before{
	content: '';
	display: inline-block;
	width: 50px;
	height: 50px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_h1_products.svg');
	position: absolute;
    top: 12px;
    left: 0;
}


/********** archive **********/

.products_archive{
	width: 1328px;
	margin: 0 auto;
}

.tab_panel{
  display: none;
}

.tab_panel.current{
  display: block;
}

.products_archive .products_tab{

}

.products_archive .products_tab ul{
	display: flex;
}

.products_archive .products_tab ul li{
	display: inline-block;
	margin-right: 8px;
}

.products_archive .products_tab ul li .tab_btn{
	display: block;
	height: 51px;
	line-height: 51px;
	border-radius: 4px 4px 0 0;
	border-top: 1px solid #80AED8;
	border-left: 1px solid #80AED8;
	border-right: 1px solid #80AED8;
	padding: 0 32px;
	color: var(--color1);
	transition: all 0.2s linear;
	cursor: pointer;
}

.products_archive .products_tab ul li .tab_btn:hover,
.products_archive .products_tab ul li .tab_btn.current{
	background: var(--color1);
	border-top: 1px solid var(--color1);
	border-left: 1px solid var(--color1);
	border-right: 1px solid var(--color1);
	color: #fff;
	opacity: 1;
}

.products_archive .products_tab ul li .tab_btn strong{
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.04em;
	position: relative;
}


.products_archive .products_category_list{
	background: var(--color3);
	padding: 40px 64px;
	margin-bottom: 80px;
}

.products_archive .products_category_list ul{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -12px;
}

.products_archive .products_category_list ul li{
	width: 23.5%;
	margin: 0 2% 12px 0;
}

.products_archive .products_category_list ul li:nth-child(4n + 4){
	margin-right: 0;
}

.products_archive .products_category_list ul li a{
	width: 100%;
	height: 100px;
	display: flex;
	align-items: center;
	background: #fff;
	padding: 8px;
	border-radius: 4px;
	box-sizing: border-box;
	position: relative;
}

.products_archive .products_category_list ul li a:hover{
	opacity: 1;
}

.products_archive .products_category_list ul li a::after{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward4.svg');
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translate(0, -50%);
    transition: all 0.2s linear;
}

.products_archive .products_category_list ul li a:hover::after{
	opacity: 0.5;
}

.products_archive .products_category_list ul li a .thumb{
	width: 84px;
	height: 84px;
	overflow: hidden;
}

.products_archive .products_category_list ul li a .thumb img{
	display: block;
	width: 100%;
	height: 100%;
    object-fit: cover;
    transform: scale(1.0);
    transition: all 0.2s linear;
}

.products_archive .products_category_list ul li a:hover .thumb img{
    transform: scale(1.05);
}

.products_archive .products_category_list ul li a .name{
	width: calc(100% - 84px);
	padding-left: 12px;
	padding-right: 28px;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.04em;
	color: var(--color1);
	transition: all 0.2s linear;
}

.products_archive .products_category_list ul li a:hover .name{
	opacity: 0.5;
}

.products_archive .products_category_list .child_terms_list{
	
}

.products_archive .products_category_list .child_terms_list li{
    display: inline-block;
    width: auto;
    margin: 0 12px 12px 0;	
}

.products_archive .products_category_list .child_terms_list li:nth-child(4n + 4) {
    margin-right: 12px;
}

.products_archive .products_category_list .child_terms_list li label{
	display: inline-block;
	height: 35px;
	line-height: 35px;
	border-radius: 8px;
	background: #fff;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: var(--color1);
	padding: 0 20px;
	cursor: pointer;
	transition: all 0.2s linear;
}

.products_archive .products_category_list .child_terms_list li label:hover{
	background: #D6E8F9;
}

.products_archive .products_category_list .child_terms_list li label.active{
	background: #80AED8;
	color: #fff;
}

.products_archive .products_category_list .child_terms_list li label input{
	display: none;
}

.products_archive .products_category_list .search_btn{
	width: 200px;
	height: 64px;
	margin: 40px auto 0;
	position: relative;
	cursor: pointer;
}

.products_archive .products_category_list .search_btn button{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
}

.products_archive .products_category_list .search_btn .btn_design{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 64px;
	background: var(--color1);
	color: #fff;
	border: 1px solid var(--color1);
    position: relative;
    transition: all 0.2s linear;
}

.products_archive .products_category_list .search_btn .btn_design::after{
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward3.svg');
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    transition: all 0.2s linear;
}

.products_archive .products_category_list .search_btn .btn_design strong{
	width: 120px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0.04em;
	text-align: center;
    position: absolute;
    top: 50%;
    left: 32px;
    transform: translate(0, -50%);
}

.products_archive .products_category_list .search_btn:hover .btn_design{
	opacity: 1;
	background: #fff;
	color: var(--color1);
}

.products_archive .products_category_list .search_btn:hover .btn_design::after{
	background-image: url('../images/common/icon_arrow_forward.svg');
}


.products_list_area{
	width: 1200px;
	margin: 0 auto;
	padding-bottom: 120px;
}

.products_list_area .products_term_block{
	margin-bottom: 80px;
}

.products_list_area .products_term_block:last-of-type{
	margin-bottom: 0;
}

.products_list_area .products_term_block h2{
	margin-bottom: 32px;
	position: relative;
}

.products_list_area .products_term_block h2::before{
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: var(--color2);
    position: absolute;
    top: 50%;
    left: 0;
}

.products_list_area .products_term_block h2 strong{
	display: inline-block;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.02em;
	color: var(--color1);
	padding-right: 16px;
	background: #fff;
	position: relative;
	z-index: 2;
}

.products_list_area .products_list{
	display: flex;
    flex-wrap: wrap;
}

.products_list_area .products_list > li{
	width: 23.5%;
	margin: 0 2% 52px 0;
}

.products_list_area .products_list > li:nth-child(4n + 4){
	margin-right: 0;
}

.products_list_area .products_list > li a{
	display: block;
	position: relative;
}

.products_list_area .products_list > li a::after{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward4.svg');
    position: absolute;
    bottom: 0;
    right: 0;
}

.products_list_area .products_list > li a .thumb_block{
	width: 100%;
	height: 190px;
	padding: 12px;
	margin-bottom: 16px;
	background: #F0F7FE;
	box-sizing: border-box;
}

.products_list_area .products_list > li a .thumb_block .thumb_image{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.products_list_area .products_list > li a .thumb_block .thumb_image img{
	display: block;
	width: 100%;
	height: 100%;
	transition: all 0.2s linear;
    object-fit: contain;
    transform: scale(1.0);
}

.products_list_area .products_list > li a:hover .thumb_block .thumb_image img{
    transform: scale(1.05);
}

.products_list_area .products_list > li a .title{
	min-height: 66px;
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--color1);
	padding-left: 16px;
	border-left: 1px solid var(--color2);
	margin-bottom: 12px;
}

.products_list_area .products_list > li a .desc{
	width: 88%;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
}




/********** single ***********/

.single #breadcrumbs {
	padding: 0;
	margin-bottom: 42px;
}

#products_single_wrapper{
	padding-bottom: 80px;
}

#products_single_wrapper .products_head{
	position: relative;
}

#products_single_wrapper .products_head::before{
	content: '';
	display: inline-block;
	width: 252px;
	height: 343px;
	background-repeat:no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/product_head_bg01.png');
	position: absolute;
	top: -110px;
	left: 0;
	z-index: -1;
}

#products_single_wrapper .products_head .head_wrapp{
	width: 990px;
	margin: 0 auto;
}

#products_single_wrapper .products_head .head_category{
	font-size: 18px;
	font-weight: 400;
	line-height: 2.0;
	color: var(--color1);
	margin-bottom: 8px;
}

#products_single_wrapper .products_head h1{
	font-size: 32px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--color1);
	letter-spacing: 0.02em;
	margin-bottom: 42px;
	position: relative;
	z-index: 2;
}

#products_single_wrapper .products_head h1 small{
	font-size: 22px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: 0.02em;
}

#products_single_wrapper .products_head h1::before{
	content: '';
	display: block;
	width: 160px;
	height: 160px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/product_head_bg01.svg');
    filter: blur(14px);
	position: absolute;
	bottom: -68px;
	left: -222px;
	z-index: -1;
}

#products_single_wrapper .products_head h1::after{
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, #629CEB 0%, #A0E4FF 60%, rgba(217, 244, 255, 0.00) 100%);
	position: absolute;
	bottom: -22px;
	left: 0;
}

#products_single_wrapper .products_head .head_description{
	font-size: 22px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: 0.02em;
	margin-bottom: 32px;
}

#products_single_wrapper .products_head .products_image_wrapp{

}

#products_single_wrapper .products_head .products_image_wrapp .main_slider{
	border: 1px solid #B5BBC2;
}

.main_slider .slick-track,
.main_slider .slick-list {
    height: 590px;
}

#products_single_wrapper .products_head .products_image_wrapp .main_slider li img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider{
	margin-top: 16px;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider{
    display: flex;
	flex-wrap: wrap;
    justify-content: center;
    gap: 10px;

}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider li {
	width: 72px;
    height: 43px;
	/*margin-bottom: 12px;*/
	cursor: pointer;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider li img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
	border: 1px solid #B5BBC2;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider li.is-current img,
#products_single_wrapper .products_head .products_image_wrapp .sub_slider li.slick-current img{
	border: 1px solid #003E8D;
}


#pruduct_anchor_area{
	width: 1200px;
	margin: 80px auto;
}

#pruduct_anchor_area ul{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -24px;
}

#pruduct_anchor_area ul li{
	width: 32%;
	margin: 0 2% 24px 0;
}

#pruduct_anchor_area ul li:nth-child(3n + 3){
	margin-right: 0;
}

#pruduct_anchor_area ul li a{
	display: block;
	height: 64px;
	border-radius: 64px;
	border: 1px solid var(--color1);
	color: var(--color1);
	position: relative;
	text-align: center;
}

#pruduct_anchor_area ul li a:hover{
	color: #fff;
	background: var(--color1);
	opacity: 1;
}

#pruduct_anchor_area ul li a::after{
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward.svg');
	position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%) rotate(90deg);
    transition: all 0.2s linear;
}

#pruduct_anchor_area ul li a:hover::after{
	filter: brightness(0) invert(1);
}

#pruduct_anchor_area ul li.catalog_download a::after,
#pruduct_anchor_area ul li.documents a::after{
	background-image: url('../images/common/icon_pdf.svg');
    transform: translate(0, -50%) rotate(0deg);
}

#pruduct_anchor_area ul li.webcatalog a::after{
	background-image: url('../images/common/icon_link.svg');
    transform: translate(0, -50%) rotate(0deg);
}

#pruduct_anchor_area ul li a strong{
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.04em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}


#products_single_wrapper .products_cont{
	width: 996px;
	margin: 0 auto 80px;
}

#products_single_wrapper .products_cont_wrapper h2{
	font-size: 32px;
	font-weight: 400;
	line-height: 1.5;
	padding-left: 28px;
	margin-bottom: 70px;
	margin-top: 80px;
	position: relative;
}

#products_single_wrapper .products_cont_wrapper h2::before{
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	background: #80AED8;
	position: absolute;
	top: 18px;
	left: 0;
}

#products_single_wrapper .products_cont_wrapper h2::after{
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, #629CEB 0%, #A0E4FF 40%, #FCFE6F 80%, rgba(252, 254, 111, 0.00) 100%);
	position: absolute;
	bottom: -14px;
	left: 0;
}

#products_movie{

}

#products_movie .movie_caption{
	font-size: 18px;
	font-weight: 400;
	line-height: 2.0;
	margin-bottom: 40px;
}

#products_movie .lazyblock-inner-blocks .wp-block-lazyblock-products-movie-data{
	width: 792px;
	margin: 0 auto 60px;

}

#products_movie .lazyblock-inner-blocks .wp-block-lazyblock-products-movie-data:last-child{
	margin-bottom: 0;
}

#products_movie .movie_wrap{
	aspect-ratio: 16 / 9;
}

#products_movie .movie_wrap iframe{
	width: 100%;
	height: 100%;
}





#products_spec{
	width: 100%;
}


#products_spec .pruducts-spec_wrapp{
    width: 100%;
    overflow: auto;
    position: relative;
}

.pruducts-spec_area{
    position: relative;
}

#products_spec .pruducts-spec_area .scroll_hint{
	width: 168px;
    position: absolute;
    top: 50%;
    left: 50%;
	transform: translate(-50%, -50%);
    opacity: 1;
    pointer-events: none;
    transition: opacity .3s;
    z-index: 5;
}

#products_spec .pruducts-spec_area.is-not-scrollable .scroll_hint,
#products_spec .pruducts-spec_area.is-scrolled .scroll_hint{
    opacity: 0;
}


#products_spec .pruducts-spec_wrapp .inner_table{
	width: 100%;
	display: flex;
	box-sizing: border-box;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th{
	width: 210px;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul{
	width: 210px;
	border-top: 1px solid #b5bbc2;
	border-left: 1px solid #b5bbc2;
	box-sizing: border-box;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul li{
	padding: 20px;
	background: #F5F5F6;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.75;
	border-bottom: 1px solid #b5bbc2;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data{
	display: flex;
	border-right: 1px solid #b5bbc2;
	box-sizing: border-box;
}

#products_spec .pruducts-spec_wrapp .inner_table.count_1 .spec_table_data{
	width: calc(100% - 210px);
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul{
	width: 355px;
	box-sizing: border-box;
	border-top: 1px solid #b5bbc2;
	border-left: 1px solid #b5bbc2;
}

#products_spec .pruducts-spec_wrapp .inner_table.count_1 .spec_table_data ul{
	width: 100%;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li{
	padding: 20px;
	font-size: 18px;
	font-weight: 400;
	line-height: 2.0;
	border-bottom: 1px solid #b5bbc2;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li.item_name{
	line-height: 1.75;
	font-weight: 700;
	background: #F0F7FE;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul:nth-of-type(even) li.item_name{
	background: #C8DCF0;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li.item_image{
	display: block;
	text-align: center;
}

.pruducts-spec_wrapp.is-dragging,
.pruducts-spec_wrapp.is-dragging *{
  user-select: none;
  -webkit-user-select: none;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li.item_image,
#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul li{
	/*height: 220px;*/
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li.item_image img{
	display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}



/********** search ***********/

.tax-products_category #breadcrumbs,
.page-products-search #breadcrumbs{
    padding: 0;
    margin-bottom: 42px;
}

.search_head{
	margin-bottom: 32px;
	position: relative;
}

.search_head .title_area{
	padding: 57px 0 107px;
	position: relative;
	z-index: 2;
}

.search_head .title_area::before{
	content: '';
	display: inline-block;
	width: 252px;
	height: 344px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/product_head_bg01.png');
    position: absolute;
    bottom: -60px;
    left: 0;
    z-index: -1;
}

.search_head .title_area h1{
	width: 1328px;
	margin: 0 auto;
	font-size: 40px;
	font-weight: 500;
	line-height: 1.75;
	color: var(--color1);
	letter-spacing: 0.04em;
	padding-left: 24px;
	position: relative;
}

.search_head .title_area h1::before{
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--color2);
    position: absolute;
    top: 34px;
    left: 0;
}


.products_back_btn{
	width: 1200px;
	margin: 0 auto;
	position: relative;
    z-index: 5;
}

.products_back_btn a{
	display: inline-block;
	width: 151px;
	height: 48px;
	border-radius: 48px;
	border: 1px solid var(--color1);
	background: #fff;
	color: var(--color1);
	position: relative;
}

.products_back_btn a:hover{
	background: var(--color1);
	color: #fff;
	opacity: 1;
}

.products_back_btn a::before{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward.svg');
	position: absolute;
    top: 50%;
    left: 16px;
    transform: translate(0, -50%) scale(-1,1);
    transition: all 0.2s linear;
}

.products_back_btn a:hover::before {
	filter: brightness(0) invert(1);
}

.products_back_btn a strong{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.04em;
	position: absolute;
    top: 50%;
    left: 44px;
    transform: translate(0, -50%);
}



/********** 認証 **********/

#medical_auth_modal{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

#medical_auth_modal .modal_inner{
    width: 90%;
    max-width: 994px;
    background: #fff;
    padding: 40px;
    border-radius: 8px;
}

#medical_auth_modal .modal_inner .title{
	font-size: 32px;
	font-weight: 400;
	color: var(--color1);
	letter-spacing: 0.02em;
	margin-bottom: 40px;
	position: relative;
}

#medical_auth_modal .modal_inner .title::after{
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, #629CEB 0%, #A0E4FF 60%, rgba(217, 244, 255, 0.00) 100%);
    position: absolute;
    bottom: -20px;
    left: 0;
}

#medical_auth_modal .modal_inner .text{
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.04em;
}

#medical_auth_modal .btn_area{
    display: flex;
    gap: 24px;
    justify-content: center;
    margin-top: 32px;
}

#medical_auth_modal button{
	display: inline-block;
	min-width: 384px;
	height: 64px;
	line-height: 62px;
	border-radius: 64px;
	border: 1px solid var(--color1);
    background: #fff;
    cursor: pointer;
    position: relative;
	font-size: 18px;
	font-weight: 500;
	color: var(--color1);
	letter-spacing: 0.04em;
    transition: all 0.3s ease;
}

#medical_auth_modal button.yes_btn:hover{
	background: var(--color1);
	color: #fff;
}

#medical_auth_modal button.no_btn{
	border: 1px solid #B5BBC2;
}

#medical_auth_modal button::after{
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    background-image: url(../images/common/icon_arrow_forward.svg);
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    transition: transform 0.3s ease, filter 0.3s ease;
}

#medical_auth_modal button.yes_btn:hover::after{
	filter: brightness(0) invert(1);
}



#support_movie{

}

#support_movie .wp-block-lazyblock-support-movie-data{
    width: 792px;
    margin: 0 auto 60px;
}

#support_movie .wp-block-lazyblock-support-movie-data:last-of-type{
    margin-bottom: 0;
}

#support_movie .movie_wrap .support_title{
	font-size: 18px
}

#support_movie .movie_wrap iframe{
	width: 100%;
	aspect-ratio: 16 / 9;
}




#column_related_posts{
	background: var(--color3);
	padding: 80px 0 120px;
}

#column_related_posts .block_title{
	font-size: 40px;
    font-weight: 500;
    line-height: 1.75;
    color: var(--color1);
    letter-spacing: 0.04em;
    text-align: center;
    margin-bottom: 40px;
}

#column_related_posts .column_ul_wrapp{
	width: 1200px;
	margin: 0 auto;
}

#column_related_posts .column_ul_wrapp > ul{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -24px;
}

#column_related_posts .column_ul_wrapp > ul > li{
	width: 32%;
	margin: 0 2% 24px 0;
}

#column_related_posts .column_ul_wrapp > ul > li:nth-child(3n + 3){
	margin-right: 0;
}

#column_related_posts .column_ul_wrapp > ul > li a{
	display: block;
	height: 100%;
	background: #fff;
	padding: 16px 16px 24px;
	box-sizing: border-box;
}

#column_related_posts .column_ul_wrapp > ul > li a .image_wrapp{
	aspect-ratio: 352 / 197;
	overflow: hidden;
}

#column_related_posts .column_ul_wrapp > ul > li a .image_wrapp img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area{
	padding: 24px 16px 16px;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area .title{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    color: var(--color1);
    margin-bottom: 8px;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area .date {
    margin-top: 12px;
    padding-top: 20px;
    border-top: 1px solid #B5BBC2;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: var(--color1);
}











/********************************************************************************
	リッキド用 CSS
********************************************************************************/

@media(max-width:1420px){

.products_archive{
	width: 93.521127vw;
}

.search_head .title_area h1{
	width: 93.521127vw;
}


.products_archive .products_category_list ul li a .thumb{
	width: 5.915493vw;
	height: 5.915493vw;
}

.products_archive .products_category_list ul li a .name{
	width: calc(100% - 5.915493vw);
	padding-left: 0.845070vw;
	padding-right: 1.971831vw;
}


}



@media(max-width:1280px){

.products_archive .products_target_list ul li a{
	font-size: 1.25vw;
}

.products_list_area{
	width: 93.75vw;
}

.products_list_area .products_list > li a .thumb_block{
	height: 14.84375vw;
	padding: 0.9375vw;
}



/********** single ***********/

#products_single_wrapper .products_head .head_wrapp{
	width: 77.34375vw;
}

#pruduct_anchor_area{
	width: 93.75vw;
}

#products_single_wrapper .products_cont{
	width: 77.8125vw;
}


#column_related_posts .column_ul_wrapp{
	width: 93.75vw;
}



/********** search ***********/

.products_back_btn{
	width: 93.75vw;
}


}



@media(max-width:1080px){


.main_slider .slick-track,
.main_slider .slick-list {
    height: 51.733333vw;
}



/********** 認証 **********/

#medical_auth_modal{

}

#medical_auth_modal .modal_inner{
    max-width: 92.037037vw;
    padding: 3.703704vw;
    border-radius: 0.740741vw;
}

#medical_auth_modal .modal_inner .title{
	font-size: 2.962963vw;
	margin-bottom: 3.703704vw;
}

#medical_auth_modal .modal_inner .title::after{
	height: 0.185185vw;
    bottom: -1.851852vw;
}

#medical_auth_modal .modal_inner .text{
	font-size: 1.666667vw;
}

#medical_auth_modal .btn_area{
    gap: 2.222222vw;
    margin-top: 2.962963vw;
}

#medical_auth_modal button{
	min-width: 35.555556vw;
	height: 5.925926vw;
	line-height: 5.740741vw;
	border-radius: 5.925926vw;
	font-size: 1.666667vw;
}

#medical_auth_modal button::after{
    width: 2.222222vw;
    height: 2.222222vw;
    right: 1.851852vw;
}


#products_movie .lazyblock-inner-blocks .wp-block-lazyblock-products-movie-data {
    width: 73.333333vw;
}

#support_movie .wp-block-lazyblock-support-movie-data{
    width: 73.333333vw;
}

}





/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media(max-width:680px){


.archive .page_head .text_wrapp .en_title {
	padding-left: 11.2vw;
}

.archive .page_head .text_wrapp .en_title::before{
	width: 9.066667vw;
	height: 9.066667vw;
    top: 1.6vw;
}


/********** archive **********/

.products_archive{
	width: auto;
}

.products_archive .products_tab ul{
	margin: 0 6.4vw;
}

.products_archive .products_tab ul li{
	display: inline-block;
	margin-right: 8px;
}

.products_archive .products_tab ul li .tab_btn{
	width: 20vw;
	height: 17.066667vw;
	line-height: 1.4;
	border-radius: 1.066667vw 1.066667vw 0 0;
	padding: 0;
	position: relative;
    text-align: center;
}

.products_archive .products_tab ul li .tab_btn strong {
    font-size: 3.2vw;
    line-height: 1.4;
    letter-spacing: 0.04em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
}


.products_archive .products_category_list{
	padding: 8.533333vw 0;
	margin-bottom: 21.333333vw;
}

.products_archive .products_category_list ul{
	margin-bottom: -3.2vw;
}

.products_archive .products_category_list ul li{
	width: 31.5%;
	margin: 0 2.7% 20px 0;
}

.products_archive .products_category_list ul li:nth-child(4n + 4){
	margin-right: 2.7%;
}

.products_archive .products_category_list ul li:nth-child(3n + 3){
	margin-right: 0;
}

.products_archive .products_category_list ul li a{
	display: block;
	height: auto;
	padding: 2.133333vw;
	border-radius: 1.066667vw;
}

.products_archive .products_category_list ul li a::after{
	content: none;
}

.products_archive .products_category_list ul li a .thumb{
	width: auto;
	height: 23.2vw;
	margin-bottom: 2.133333vw;
}

.products_archive .products_category_list ul li a .name{
	width: auto;
	padding-left: 0;
	font-size: 3.2vw;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-right: 0;
}

.products_archive .products_category_list .child_terms_list{
	
}

.products_archive .products_category_list .child_terms_list li{
    display: inline-block;
    width: auto;
    margin: 0 3.2vw 3.2vw 0;	
}

.products_archive .products_category_list .child_terms_list li:nth-child(3n + 3),
.products_archive .products_category_list .child_terms_list li:nth-child(4n + 4) {
    margin-right: 3.2vw;
}

.child_terms_list li label {
    font-size: 0;
}

.child_terms_list li label input,
.child_terms_list li label {
    font-size: 4.266667vw;
}

.products_archive .products_category_list .child_terms_list li label{
    position: relative;
    display: inline-block;
	height: 9.333333vw;
	line-height: 9.333333vw;
	border-radius: 2.133333vw;
	font-size: 4.266667vw;
	padding: 0 5.333333vw;
}

.products_archive .products_category_list .child_terms_list li label input[type="checkbox"] {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.products_archive .products_category_list .search_btn{
	width: 53.333333vw;
	height: 17.066667vw;
	margin: 6.4vw auto 0;
}

.products_archive .products_category_list .search_btn .btn_design{
	border-radius: 17.066667vw;
}

.products_archive .products_category_list .search_btn .btn_design::after{
	width: 6.4vw;
	height: 6.4vw;
    right: 5.333333vw;
}

.products_archive .products_category_list .search_btn .btn_design strong{
	width: 32vw;
	font-size: 4.8vw;
    left: 8.533333vw;
}

.products_archive .products_category_list .search_btn:hover .btn_design{
	opacity: 1;
}



.products_list_area{
	width: auto;
	margin: 0 6.4vw;
	padding-bottom: 21.333333vw;
}

.products_list_area .products_term_block{
	margin-bottom: 10.666667vw;
}

.products_list_area .products_term_block h2{
	margin-bottom: 6.4vw;
}

.products_list_area .products_term_block h2 strong{
	font-size: 5.333333vw;
	letter-spacing: 0;
	padding-right: 4.266667vw;
}

.products_list_area .products_list{
	justify-content: space-between;
}

.products_list_area .products_list > li{
	width: 42.133333vw;
	margin: 0 0 8vw;
}

.products_list_area .products_list > li a::after{
	width: 4.266667vw;
	height: 4.266667vw;
}

.products_list_area .products_list > li a .thumb_block{
	height: 29.333333vw;
	padding: 3.2vw;
	margin-bottom: 2.133333vw;
}

.products_list_area .products_list > li a:hover .thumb_block .thumb_image img{
    transform: scale(1.0);
}

.products_list_area .products_list > li a .title{
	min-height: 18.133333vw;
	font-size: 3.2vw;
	padding-left: 4.266667vw;
	padding-right: 5.333333vw;
	margin-bottom: 0
}

.products_list_area .products_list > li a .desc{
	display: none;
}





/********** single ***********/

.single #breadcrumbs {
	padding: 0;
	margin: 6.4vw 6.4vw 8.533333vw;
}

#products_single_wrapper{
	padding-bottom: 14.933333vw;
}

#products_single_wrapper .products_head{
	width: auto;

}

#products_single_wrapper .products_head::before{
	width: 33.6vw;
	height: 45.866667vw;
	background-image: url('../images/common/product_head_bg01_sp.png');
	top: -36vw;
}

#products_single_wrapper .products_head .head_wrapp{
	width: auto;
	margin: 0 6.4vw;
}

#products_single_wrapper .products_head .head_category{
	font-size: 4.8vw;
	margin-bottom: 2.133333vw;
}

#products_single_wrapper .products_head h1{
	font-size: 5.333333vw;
	letter-spacing: 0;
	margin-bottom: 11.2vw;
}

#products_single_wrapper .products_head h1 small{
	display: block;
	font-size: 4.8vw;
	letter-spacing: 0;
}

#products_single_wrapper .products_head h1::before{
	width: 21.333333vw;
	height: 21.333333vw;
    filter: blur(2.133333vw);
	bottom: unset;
	top: -33.6vw;
	left: -6.4vw;
}

#products_single_wrapper .products_head h1::after{
	height: 0.533333vw;
	bottom: -5.866667vw;
}

#products_single_wrapper .products_head .head_description{
	font-size: 4.8vw;
	letter-spacing: 0;
	margin-bottom: 8.533333vw;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider{
	display: block;
	margin: 6.4vw auto 0;
	width: 78.4vw;
	position: relative;
}




#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-prev,
#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-next {
    width: 8.533333vw;
    height: 8.533333vw;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-next {
	right: -8.533333vw;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-prev {
	left: -8.533333vw;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-prev:before,
#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-next:before {
	content: '';
    opacity: 1;
	display: inline-block;
	width: 8.533333vw;
	height: 8.533333vw;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url(../images/common/icon_slider_arrow.svg);
    position: absolute;
    top: 0;
    left: 0;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-prev:before{
	transform: translate(0, 0) scale(-1, 1);
}




#products_single_wrapper .products_head .products_image_wrapp .sub_slider .slick-track {

}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider li {
	height: 10.400000vw;
	margin: 0;
	padding: 0 1.333333vw;
	box-sizing: border-box;
}

#products_single_wrapper .products_head .products_image_wrapp .sub_slider li img{
	display: block;
	border: 1px solid #B5BBC2;
}

#pruduct_anchor_area{
	width: auto;
	margin: 14.933333vw 6.4vw;
}

#pruduct_anchor_area ul{
	justify-content: space-between;
	margin-bottom: -3.2vw;
}

#pruduct_anchor_area ul li{
	width: 41.6vw;
	margin: 0 0 3.2vw;
}

#pruduct_anchor_area ul li a{
	display: block;
	height: 12.8vw;
	border-radius: 12.8vw;
	font-size: 4.266667vw;
	letter-spacing: 0;
}

#pruduct_anchor_area ul li a::after{
	width: 4.8vw;
	height: 4.8vw;
    right: 4.266667vw;
}

#pruduct_anchor_area ul li a strong{
	font-size: 4.266667vw;
	letter-spacing: 0;
	padding-right: 3.2vw;
}


#products_single_wrapper .products_cont{
	width: auto;
	margin: 0 6.4vw 17.066667vw;
}

#products_single_wrapper .products_cont_wrapper h2{
	font-size: 6.4vw;
	font-weight: 500;
	padding-left: 6.4vw;
	margin-bottom: 14.933333vw;
	margin-top: 17.066667vw;
}

#products_single_wrapper .products_cont_wrapper h2::before{
	width: 3.2vw;
	height: 3.2vw;
	top: 3.2vw;
}

#products_single_wrapper .products_cont_wrapper h2::after{
	height: 0.533333vw;
	bottom: -4.266667vw;
}

#products_movie{

}

#products_movie .movie_caption{
	font-size: 4.266667vw;
	margin-bottom: 10.666667vw;
}

#products_movie .lazyblock-inner-blocks .wp-block-lazyblock-products-movie-data{
	width: auto;
	margin: 0 auto 10.666667vw;

}


#products_spec{
	width: 100%;
	overflow: auto;
}

#products_spec .pruducts-spec_wrapp{
	width: 100%;
}

#products_spec .pruducts-spec_area .scroll_hint{
	width: 32vw;
}

#products_spec .pruducts-spec_wrapp .inner_table{
	width: 100%;
	display: flex;
	box-sizing: border-box;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th{
	width: 37.333333vw;
}

#products_spec .pruducts-spec_wrapp .inner_table.count_1 .spec_table_data{
	width: calc(100% - 37.333333vw);
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul{
	width: 37.333333vw;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul li{
	padding: 3.2vw;
	font-size: 4.266667vw;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul{
	width: 37.333333vw;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li{
	padding: 3.2vw;
	font-size: 4.266667vw;
}

#products_spec .pruducts-spec_wrapp .inner_table .spec_table_data ul li.item_image,
#products_spec .pruducts-spec_wrapp .inner_table .spec_table_th ul li{
	/*height: 25.6vw;*/
}


/********** search ***********/

.tax-products_category #breadcrumbs,
.page-products-search #breadcrumbs{
	padding: 0;
	margin: 6.4vw 6.4vw 8.533333vw;
}

.search_head{
	margin-bottom: 8.533333vw;
}

.search_head .title_area{
	padding: 6.4vw 6.4vw 17.066667vw;
	position: relative;
}

.search_head .title_area::before{
	width: 33.6vw;
	height: 45.866667vw;
	background-image: url('../images/common/product_head_bg01_sp.png');
    bottom: -4.266667vw;
}

.search_head .title_area h1{
	width: auto;
	font-size: 6.4vw;
	line-height: 1.5;
	letter-spacing: 0;
	padding-left: 6.4vw;
}

.search_head .title_area h1::before{
	width: 2.133333vw;
	height: 2.133333vw;
    top: 50%;
	transform: translate(0, -50%);
}


.products_back_btn{
	width: auto;
	margin: 0 6.4vw;
}

.products_back_btn a{
	width: 40.266667vw;
	height: 12.8vw;
	border-radius: 12.8vw;
}

.products_back_btn a::before{
	width: 5.333333vw;
	height: 5.333333vw;
    left: 4.266667vw;
}

.products_back_btn a strong{
	font-size: 4.266667vw;
    left: 11.733333vw;
}



/********** 認証 **********/

#medical_auth_modal{

}

#medical_auth_modal .modal_inner{
    padding: 10.666667vw 6.4vw;
}

#medical_auth_modal .modal_inner .title{
	font-size: 5.333333vw;
	margin-bottom: 11.2vw;
}

#medical_auth_modal .modal_inner .title::after {
	height: 0.533333vw;
	bottom: -5.333333vw;
}

#medical_auth_modal .modal_inner .text{
	font-size: 4.266667vw;
}

#medical_auth_modal .btn_area{
    display: block;
    margin-top: 5.333333vw;
}

#medical_auth_modal button{
	min-width: unset;
	width: 100%;
	height: 17.066667vw;
	line-height: 16.533333vw;
	border-radius: 17.066667vw;
	font-size: 4.8vw;
	margin-bottom: 3.2vw;
}

#medical_auth_modal button:last-of-type{
	margin-bottom: 0;
}

#medical_auth_modal button::after{
    width: 6.4vw;
    height: 6.4vw;
    right: 5.333333vw;
}



#support_movie{

}

#support_movie .wp-block-lazyblock-support-movie-data{
    width: auto;
	margin: 0 auto 10.666667vw;
}

#support_movie .movie_wrap .support_title{
	font-size: 4.266667vw;
}



#column_related_posts{
	padding: 17.066667vw 6.4vw 21.333333vw;
}

#column_related_posts .block_title{
	font-size: 6.4vw;
	line-height: 1.5;
	letter-spacing: 0;
	margin-bottom: 10.666667vw;
}

#column_related_posts .column_ul_wrapp{
	width: auto;
}

#column_related_posts .column_ul_wrapp > ul{
	display: block;
	margin-bottom: 0;
}

#column_related_posts .column_ul_wrapp > ul > li{
	width: auto;
	margin: 0 0 3.2vw 0;
}

#column_related_posts .column_ul_wrapp > ul > li:last-child{
	margin-bottom: 0;
}

#column_related_posts .column_ul_wrapp > ul > li a{
	padding: 4.266667vw 4.266667vw 6.4vw;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area{
	padding: 3.2vw 2.133333vw 2.133333vw;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area .title{
	font-size: 5.333333vw;
	margin-bottom: 2.133333vw;
}

#column_related_posts .column_ul_wrapp > ul > li a .text_area .date {
	margin-top: 3.2vw;
	padding-top: 3.2vw;
	font-size: 3.733333vw;
}




}

