@charset "utf-8";
/* CSS Document */
body.products_page::before{display: none;}
.mv{background:linear-gradient(124deg, #61BADB 0%, #416FC7 100%);}
@media screen and (min-width: 768px) {
	main.lower .mv .outer::before{
		background-image: url("/assets/img/common/common_header_tab.webp");
	}
}
@media screen and (min-width: 1280px) {
	main.lower .mv .outer::before{
		background-image: url("/assets/img/common/common_header_pc.webp");
		width: 1049px;
		margin-right: 0;
		margin-top: 0;
		background-size: contain;
	}
}
p.bridge_text{
	width: min(85%,600px);
	margin-top: min(calc(12% - 1px),100px);
	margin-left: auto;
	margin-right: auto;
	font-size: min(3.2vw,16px);
	letter-spacing: 0.05em;
	line-height: 2.08;
	color: #7E7E7E;
}
@media screen and (min-width: 768px) {
	p.bridge_text{
		font-size: min(2.08vw,18px);
		width: min(calc(78% + 1px),1100px);
		margin-top: min(calc(13% + 1px),168px);
	}
}


/*===========================
ページ内ローカルメニュー
============================*/
main nav {
	width: min(90%,495px);
	margin-top: min(calc(11% - 3px),50px);
	margin-left: auto;
	margin-right: auto;
}
main nav ul{
	display: flex;
	justify-content: space-between;
}
main nav ul li{
	width: 24%;
}
main nav ul li a{
	display: block;
	text-align: center;
	font-size: min(2.67vw,13px);
	letter-spacing: 0.05em;
	padding-top: 10px;
	padding-bottom: 12px;
	border-top: solid 5px #416FC7;
	color: #416FC7;
	position: relative;
}
main nav ul li a::after{
	content: "";
	position: absolute;
	top: auto;
	width: 5px;
	height: 5px;
	border-top: 1px solid #1D1D1D;
	border-right: 1px solid #1D1D1D;
	transform: translateY(-50%) rotate(135deg);
	bottom: 0;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}
main nav ul li.dental a{
	color: #7D64D3;
	border-top-color:#7D64D3;
}
main nav ul li.ndt a{
	border-top-color:#54ADAB;
	color:#54ADAB;
}
main nav ul li.aesthetic a{
	border-top-color:#D196BB;
	color: #D196BB;
}
main nav ul li.medical a,main nav ul li.dental a,main nav ul li.aesthetic a{
	padding-top: 15px;
	height: 50px;
}
@media screen and (min-width: 487px) {
	main nav ul li.medical a,main nav ul li.dental a,main nav ul li.aesthetic a{
		height: 56px;
	}
}
@media screen and (min-width: 768px) {
	main nav {
		width: min(calc(64% - 1px),600px);
	}
	main nav ul li a{
		font-size: min(1.69vw,16px);
	}
	main nav ul li.medical a::after,main nav ul li.dental a::after,main nav ul li.aesthetic a::after{
		margin-top: 16px;
	}
}
	
/*===========================
製品ブロック
============================*/
.products_wrapper{
	margin-top: min(15%,102px);
}
.products_container{
	margin-top: 10px;
}
.products_wrapper .ndt{
	margin-top: 10px;
}
.products_wrapper .aesthetic{
	margin-top: 10px;
}

.products_wrapper header{
	position: relative;
	z-index: 3;
	background-color: #7DBDD5;
	padding-top: 12px;
	padding-bottom: 19px;
}
.products_wrapper .dental header{
	background-color: #B5A8E2;
}
.products_wrapper .ndt header{
	background-color: #ADCECD;
}
.products_wrapper .aesthetic header{
	background-color: #D8A9C6;
}
.products_wrapper header::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right;
	position: absolute;
	top: 0;
	mix-blend-mode: multiply;
}
.products_wrapper .medical header::before{
	background-image: url("/assets/img/products/medical_header_sp.webp");
}
.products_wrapper .dental header::before{
	background-image: url("/assets/img/products/dental_header_sp.webp");
}
.products_wrapper .ndt header::before{
	background-image: url("/assets/img/products/ndt_header_sp.webp");
}
.products_wrapper .aesthetic header::before{
	background-image: url("/assets/img/products/aesthetic_header_sp.webp");
}
.products_wrapper header hgroup {
	letter-spacing: 0.1em;
	margin-left: min(8%,24px);
	position: relative;
	text-shadow: 0px 0px 10px #FFFFFF6C;
}
.products_wrapper header hgroup h2{
	font-size: min(7.73vw,33px);
}
.products_wrapper header hgroup span{
	font-family: "notore";
	letter-spacing: 0.1em;
	font-size: min(2.67vw,13px);
}
.products_wrapper header hgroup p{
	font-family: "notobo";
	letter-spacing: 0.1em;
	font-size: min(2.87vw,14px);
	margin-top: 8px;
}
.products_wrapper .products_list{
	width: 98%;
	margin-top: 5px;
	margin-right: auto;
	margin-left: auto;
}
.products_wrapper .products_list li{
	background-color: #F2F7FF;
	border-radius: 10px;
	position: relative;
	transition-duration: 0.3s;
}
.products_wrapper .products_list li:hover{
	opacity: 0.7;
}
.products_wrapper .products_list li:nth-of-type(n+2){
	margin-top: 10px;
}
.products_wrapper .dental .products_list li{
	background-color: #EEEAFC;
}
.products_wrapper .ndt .products_list li{
	background-color: #E6F4F3;
}
.products_wrapper .aesthetic .products_list li{
	background-color: #F8EDF5;
}
.products_wrapper .products_list li a{
	padding: min(7%,44px) 0;
	display: block;
}
.products_wrapper .products_list li a .inner{
	display: flex;
	align-items: center;
	width: 92%;
	margin-left: auto;
	margin-right: auto;
}
.products_wrapper .products_list li a .inner .img_box{
	width: 47%;
}
.products_wrapper .products_list li a .inner .text_box{
	text-align: center;
	margin-left: auto;
  	margin-right: auto;
	font-size: min(3.47vw,16px);
	letter-spacing: 0.05em;
}
.products_wrapper .aesthetic .products_list li a .inner .text_box{
	font-family: "notore";
}
.products_wrapper .aesthetic .products_list li a .inner .text_box span{
	font-family: "notobo";
}
.products_wrapper .products_list li .circle{
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-right: 11px;
	margin-bottom: 11px;
	background-color: #7CAFEA;
	width: 20px;
	height: 20px;
}
.products_wrapper .products_list li a .inner .circle::after{
	border-color: white;
	width: 6px;
  	height: 6px;
}
@media screen and (min-width: 768px) {
	.products_wrapper {
		width:87%;
		margin-left: auto;
		margin-right: auto;
	}
	.products_container{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.products_wrapper header{
		padding-top: min(5%,25px);
    	padding-bottom: min(calc(5% + 3px),31px);
	}
	.products_wrapper .dental header{
		padding-bottom: 11%;
	}
	.products_wrapper .medical header::before{
		background-image: url("/assets/img/products/medical_header_tab.webp");
	}
	.products_wrapper .dental header::before{
		background-image: url("/assets/img/products/dental_header_tab.webp");
	}
	.products_wrapper .ndt header::before{
		background-image: url("/assets/img/products/ndt_header_tab.webp");
	}
	.products_wrapper .aesthetic header::before{
		background-image: url("/assets/img/products/aesthetic_header_tab.webp");
	}
	.products_wrapper header hgroup{
		margin-left: min(calc(4% - 2px),44px);
	}
	.products_wrapper header hgroup h2{
		font-size: min(4.3vw,45px);
	}
	.products_wrapper header hgroup span{
		font-size: min(1.69vw,18px);
	}
	.products_wrapper header hgroup p{
		font-size: min(1.82vw,20px);
		margin-top: 10px;
	}
	.products_container .products_box,.products_wrapper .medical .products_list li{
		width: calc(49% + 3px);
	}
	.products_container .products_box:nth-of-type(2),.products_wrapper .products_list li:nth-of-type(2){
		margin-top: 0;
	}
	.products_wrapper .products_list{
		width: 100%;
	}
	.products_wrapper .medical .products_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.products_wrapper .products_list li .circle{
		width: 23px;
		height: 23px;
	}
	.products_wrapper .products_list li.fpd a{
		padding-top: 48px;
		padding-bottom: 44px;
	}
	.products_wrapper .products_list li.dryprinter a{
		padding-top: 52px;
		padding-bottom: 52px;
	}
	.products_wrapper .products_list li.flexgrip a{
		padding-top: 35px;
		padding-bottom: 50px;
	}
	.products_wrapper .products_container .dental li a,.products_wrapper .products_container .ndt li a{
		padding-top: 34px;
		padding-bottom: 53px;
	}
	.products_wrapper .aesthetic .products_list li a{
		padding-bottom: 33px;
	}
	.products_wrapper .products_list li a .inner{
		flex-flow: column;
	}
	.products_wrapper .products_list li a .inner .img_box{
		width: 91%;
	}
	.products_wrapper .products_list li.fpd a .inner .img_box{
		max-width: 349px;
	}
	.products_wrapper .products_list li.dryprinter a .inner .img_box{
		max-width: 337px;
	}
	.products_wrapper .products_list li.dentalfilm a .inner .img_box{
		max-width: 364px;
	}
	.products_wrapper .products_container .ndt li a .inner .img_box{
		max-width: 351px;
	}
	.products_wrapper .products_container .aesthetic li a .inner .img_box{
		max-width: 211px;
		width: calc(55% - 1px);
	}
	.products_wrapper .products_list li a .inner .text_box{
		margin-top: 33px;
		line-height: 1.53;
		font-size: min(1.69vw,20px);
	}
	.products_wrapper .medical .products_list li.dryprinter a .inner .text_box{
		margin-top: 40px;
	}
	.products_wrapper .products_list li.dentalfilm a .inner .text_box{
		margin-top: 20px;
	}
	.products_wrapper .aesthetic .products_list li a .inner .text_box{
		margin-top: 14px;
	}
	.products_wrapper .products_list li a .inner .circle::after{
		border-top-width: 2px;
		border-right-width: 2px;
		width: 8px;
		height: 8px;
	}
}
@media screen and (min-width: 1280px) {
	.products_wrapper{
		max-width: 1280px;
    	width: 100%;
		margin-top: 157px;
	}
	.products_wrapper .medical .products_list{
		margin-top: 10px;
	}
	.products_container{
		margin-top: 50px;
	}
	.products_wrapper header{
		padding-top: 35px;
    	padding-bottom: 41px;
	}
	.products_wrapper .dental header{
		padding-bottom: 40px;
	}
	.products_wrapper .ndt header{
		padding-bottom: 19px;
	}
	.products_wrapper .medical header::before{
		background-image: url("/assets/img/products/medical_header_pc.webp");
	}
	.products_wrapper .dental header::before{
		background-image: url("/assets/img/products/dental_header_pc.webp");
	}
	.products_wrapper .ndt header::before{
		background-image: url("/assets/img/products/ndt_header_pc.webp");
	}
	.products_wrapper .aesthetic header::before{
		background-image: url("/assets/img/products/aesthetic_header_pc.webp");
	}
	.products_wrapper header hgroup{
		padding-left: 10px;
	}
	.products_wrapper .ndt header hgroup{
		position: relative;
		top: -17px;
	}
	.products_wrapper .ndt header hgroup span{
		position: relative;
		left: -10px;
	}
	.products_container .products_box, .products_wrapper .medical .products_list li{
		max-width: 420px;
	}
	.products_wrapper .products_list li.fpd a{
		padding-top: 70px;
	}
	.products_wrapper .products_list li.dryprinter a{
		padding-top: 60px;
	}
	.products_wrapper .products_list li.flexgrip a{
		padding-top: 53px;
	}
	.products_wrapper .products_container .ndt li a{
		padding-bottom: 50px;
	}
	.products_wrapper .products_list li:nth-of-type(n+2),  .products_container .products_box.aesthetic{
		margin-top: 0;
	}
	.products_wrapper .products_list li.fpd a .inner .img_box{
		max-width: 380px;
		width: 100%;
	}
	.products_wrapper .products_list li.flexgrip a .inner .img_box{
		width: calc(94% - 3px);
	}
	.products_wrapper .products_list li.fpd a .inner .text_box{
		margin-top: 71px;
	}
	.products_wrapper .medical .products_list li.dryprinter a .inner .text_box{
		margin-top: 77px;
	}
	.products_wrapper .products_list li.flexgrip a .inner .text_box{
		margin-top: 67px;
	}
	.products_wrapper .products_list li.dentalfilm a .inner .text_box{
		margin-top: 66px;
	}
	.products_wrapper .products_container .ndt li a .inner .text_box{
		margin-top: 60px;
	}
	.products_wrapper .products_container .ndt li a .inner .text_box br{
		display: block;
	}
	.products_wrapper .products_container .aesthetic li a .inner .text_box{
		margin-top: 46px;
		line-height: 1.6;
	}
	.products_wrapper .products_list li .circle{
		width: 30px;
		height: 30px;
		margin-right: 20px;
		margin-bottom: 20px;
	}
}