@charset "UTF-8";

/* ページ内リンク ##
----------------------------------------------------- */
a.anchor1{
    display: block;
    padding-top: 210px;
    margin-top: -210px;
}
a.anchor2{
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}
@media(max-width: 900px) {
	a.anchor1{
		display: table;
		padding-top: 90px;
    	margin-top: -90px;
	}
	a.anchor2{
		padding-top: 60px;
		margin-top: -60px;
	}
}
@media(max-width: 500px) {
	a.anchor1{
		display: table;
		padding-top: 70px;
    	margin-top: -70px;
	}
	a.anchor2{
		padding-top: 40px;
		margin-top: -40px;
	}
}

/* 仮index
----------------------------------------------------- */
.kari li {
	line-height: 1.1em;
	margin-top: 10px;
	position: relative;
}

main section:nth-of-type(n+2) {
	margin-top: 60px;
}
@media(max-width: 900px) {
	main section:nth-of-type(n+2) {
		margin-top: 45px;
	}
}
@media(max-width: 500px) {
	main section:nth-of-type(n+2) {
		margin-top: 30px;
	}
}

/* index
----------------------------------------------------- */
.product-list-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 20px;
}
.product-list-wrap .products {
	width: 48%;
	margin-top: 25px;
}
.product-list-wrap .products a {
	text-decoration: none;
}
.product-list-wrap .products a:hover {
	text-decoration: none;
	color: #006ea8;
}
@media(max-width: 500px) {
	.product-list-wrap {
		display: block;
		padding-top: 5px;
	}
	.product-list-wrap .products {
		width: auto;
		margin-top: 15px
	}
}
.product-list-wrap .products h2 {
	background-color: #bdc2cf;
	display: flex;
	align-items: center;
	color: #001446;
	font-size: 120%;
	font-weight: 500;
}
.other .product-list-wrap .products h2 {
	background-color: #cad4e7
}
.product-list-wrap .products h2 span {
	background-color: #001446;
	color: #fff;
	width: 38px;
	height: 38px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 10px;
	font-size: 120%;
}
@media(max-width: 500px) {
	.product-list-wrap .products h2 span {
		width: 30px;
		height: 30px;
		font-size: 100%;
	}
}
.other .product-list-wrap .products h2 span {
	background-color: #006ea9;
}
.product-list-wrap .products .inner {
	display: flex;
	padding-top: 15px;
}
.product-list-wrap .products .inner .icnimg {
	width: 25%;
	min-width: 120px;
	padding-right: 3%;
}
@media(max-width: 500px) {
	.product-list-wrap .products .inner .icnimg {
		min-width: 110px;
	}
}
.products li {
	line-height: 1.1em;
}
.products li:nth-of-type(n+2) {
	margin-top: 5px;
}
.products li::before {
	font-size: 75% !important;
	margin-right: 4px;
}

/* 機種一覧
----------------------------------------------------- */
main .main-wrap .select {
	max-width: 1200px;
	padding: 0 40px 10px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: flex-end;
}
@media(max-width: 500px) {
	main .main-wrap .select {
		padding: 0 20px 10px;
	}
	main .main-wrap .select select {
		width: 100%;
	}
}
/* モーダル
----------------------------------------------------- */
.modal__wrap {
    display: inline-block;
}
.modal__wrap input {
    display: none;
}
.modal__open-label,
.modal__close-label {
    cursor: pointer;
}
.modal__open-label {
    color: #000;
    font-size: 100%;
	border:  #000 solid 1px;
	padding: 4px 35px 4px 20px;
	transition: 0.5s;
	position: relative;
	border-radius: 3px;
}
.modal__open-label::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
	border: 6px solid transparent;
	border-left: 9px solid #000;
}
.modal__open-label:hover {
    cursor: pointer;
    color: rgba(0,20,70,1.0);
	background-color: rgba(0,20,70,0.3);
}
.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
}
.modal__open-input:checked + label + input + .modal {
    display: block;
    animation: modal-1-animation .6s;
}
.modal__content-wrap {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 1150px;
    background-color: #fefefe;
    z-index: 2;
    border-radius: 5px;
}
.modal__close-label {
    background-color: #001446;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 20px;
    width: 36px;
    height: 36px;
    line-height: 1.5;
    text-align: center;
    display: table-cell;
    position: fixed;
    top: -15px;
    right: -2%;
    z-index: 99999;
    font-size: 1.4em;
}
.modal__content {
    max-height: 50vh;
    overflow-y: auto;
    padding: 39px 45px 40px;
}
.modal__background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .7);
    z-index: 1;
}
@keyframes modal-1-animation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@media(max-width: 500px) {
    .modal__open-label {
        max-width: 90%;
        padding: 2px 35px 2px 20px;
    }
    .modal__close-label {
        top: -17px;
        right: -4%;
    }
    .modal__content-wrap {
        width: 90vw;
    }
    .modal__content {
        padding: 33px 21px 35px;
        max-width: 100%;
    }
}

/* モーダル表示内
----------------------------------------------------- */
.modal-wrap {
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
@media(max-width: 500px) {
	.modal-wrap {
		display: block;
		padding-bottom: 0px;
	}
}
.modal-wrap .inner {
	width: 49%;
}
@media(max-width: 500px) {
	.modal-wrap .inner {
		width: auto;
	}
	.modal-wrap .inner:nth-of-type(2) {
		margin-top: 20px;
	}
}
.modal-wrap .inner h2 {
	font-size: 120%;
	color: #fff;
	padding: 4px 20px;
	font-weight: 600;
}
@media(max-width: 500px) {
	.modal-wrap .inner h2 {
		padding: 4px 10px;
	}
}
.modal-wrap .inner:nth-of-type(1) h2 {
	background-color: rgba(0,20,70,1.0);
}
.modal-wrap .inner:nth-of-type(2) h2 {
	background-color: #006ea8;
}
.product-list li {
	color: rgba(0,20,70,1.0);
	font-size: 100%;
	font-weight: 600;
	margin-top: 20px;
}
@media(max-width: 500px) {
	.product-list li {
		margin-top: 10px;
	}
}
.product-list > li:nth-of-type(1) {
	margin-top: 10px;
}
.product-list li ul {
	margin-left: 18px;
}
@media(max-width: 500px) {
	.product-list li ul {
		margin-left: 10px;
	}
}
.product-list li ul li {
	margin-top: 0;
  display: flex;
}
.product-list li ul li:nth-of-type(n+2) {
	margin-top: 5px;
}
.product-list li ul li a {
	color: #000;
	font-size: 95%;
	font-weight: 400;
	display: block;
	line-height: 1.2em;
}
@media(max-width: 500px) {
	.product-list li ul li a {
		font-size: 100%;
	}
}
.product-list li ul li a:hover {
	color: #006ea8;
}

/*
.selectbox-3 {
    display: inline-flex;
    align-items: center;
    position: relative;
}
.selectbox-3::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #535353;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}
.selectbox-3 select {
    appearance: none;
    max-width: 430px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em .8em;
	padding: 0 0 0 10px;
    border: 1px solid #d0d0d0;
    border-radius: 3px;
    background-color: #fff;
    color: #333333;
    font-size: 80%;
    cursor: pointer;
}
*/

/*
.select .dropdown-menu {
	position: relative;
	display: inline-block;
	cursor: pointer;
	padding: 1px 26px 1px 10px;
	border: #000 solid 1px;
	transition: all .2s ease;
}
.select .dropdown-menu .opnebtn {
	font-weight: 500;
}
.select .dropdown-menu::after {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	right: 7px;
	display: block;
    width: 10px;
    height: 10px;
    background-size: contain;
	background-repeat: no-repeat;
	background-image: url("../../common/images/icn-san-navyblue.svg");
}
.select .dropdown-menu:hover {
	background-color: rgba(0,20,70,0.4);
	color: rgba(0,20,70,1.0);
}
.select .dropdown-content {
	white-space: nowrap;
	display: block;
	position: absolute;
	background-color: #fff;
	min-width: 160px;
	box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
	padding: 15px 20px;
	z-index: 1;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	
	top: 15px;
	right: 0;
	visibility: hidden;
	opacity: 0;
}
.select .dropdown-menu:hover .dropdown-content {
	top: 28px;
	visibility: visible;
	opacity: 1;
}
*/

/*
.dropdown {
	position: relative;
	display: inline-block;
	cursor: pointer;
	z-index: 1000000000;
}
.dropdown-content {
	visibility: hidden;
	opacity: 0;
	z-index: 1000000000 !important;
	display: block;
	position: absolute;
	top: 52px;
	left: 0;
	width: auto;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	
	box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
	padding: 12px 16px;
	white-space: nowrap;
}
.dropdown:hover .dropdown-content {
	top: 56px;
	visibility: visible;
	opacity: 1;
	
}
*/






/* 製品名
----------------------------------------------------- */
main .main-wrap .product-name {
	background-color: #000c45;
	padding: 0 40px;
}
main .main-wrap .product-name.other {
	background-color: #006ea8;
}
main .main-wrap .product-name .inner {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	/*padding: 7px 0 6px 0;*/
	height: 42px;
	display: flex;
	align-items: center;
}
main .main-wrap .product-name .inner h1 {
	color: #fff;
	font-size: 160%;
	font-weight: 700;
	/*white-space: nowrap;*/
}
main .main-wrap .product-name .inner p {
	font-size: 130%;
	font-weight: 700;
	line-height: 100%;
	display: table;
	background-color: #fff;
	color: #000c45;
	padding: 3px 15px;
	margin-left: 14px;
}
.case-studies-wrap .product-name .inner p:nth-of-type(1) {
	color: #fff !important;
	font-size: 160% !important;
	background-color: transparent !important;
	padding: 0 !important;
	margin-left: 0 !important;
}
.case-studies-wrap .product-name .inner h1,
.case-studies-wrap .product-name .inner p:nth-of-type(2) {
	font-size: 130% !important;
	line-height: 100% !important;
	display: table !important;
	background-color: #fff !important;
	color: #000c45 !important;
	padding: 3px 15px !important;
	margin-left: 14px !important;
}
@media(max-width: 500px) {
	main .main-wrap .product-name {
		padding: 0 20px;
	}
	main .main-wrap .product-name .inner {
		display: block;
		padding: 6px 0 7px 0;
		height: auto;
	}
	main .main-wrap .product-name .inner h1 {
		font-size: 150%;
		text-align: center;
	}
	main .main-wrap .product-name .inner p {
		font-size: 110%;
		margin-left: auto;
		margin-right: auto;
		margin-top: 4px;
		padding: 2px 10px;
	}
	.case-studies-wrap .product-name .inner p:nth-of-type(1) {
		font-size: 150% !important;
		text-align: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
		margin-top: 0px !important;
	}
	.case-studies-wrap .product-name .inner h1,
	.case-studies-wrap .product-name .inner p:nth-of-type(2) {
		margin-left: auto !important;
		margin-right: auto !important;
		margin-top: 4px;
		text-align: center !important;
	}
}
/* 製品説明文
----------------------------------------------------- */
.toplead {
	color: #001446;
	border-bottom: #001446 solid 1px;
	padding-bottom: 8px;
	margin-bottom: 35px;
}
@media(max-width: 500px) {
	.toplead {
		margin-bottom: 20px;
	}
}
.toplead h2 {
	font-size: 110%;
	font-weight: 600;
}
.toplead h3 {
	padding-top: 15px;
	font-weight: 600;
}
.indent {
	text-indent: -1em;
	padding-left: 1em;
}
/* 製品情報
----------------------------------------------------- */
main .main-wrap .product-explanation { /* A */
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding: 40px 40px;
}
.common-inner.product-common { /* Aを共通でこれに変える */
	padding-top: 40px;
	padding-bottom: 40px;
}
.common-inner.consumables {
	padding-top: 20px;
}
@media(max-width: 500px) {
	.common-inner.product-common {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.common-inner.consumables {
		padding-top: 10px;
	}
}
main .main-wrap .product-explanation.flextype { /* B */
	display: flex;
	align-items: flex-start;
}


.common-flex-wrap { /* Bを共通でこれに変える */
	display: flex;
	justify-content: space-between;
	/*align-items: flex-start;*/
	/*padding-top: 25px;*/
}
@media(max-width: 500px) {
	.common-flex-wrap { 
		display: block;
	}
}
.type1 .productimg {
	width: 40%;
	min-width: 280px;
}
.type1 .explanation {
	width: 57%;
	margin-left: 3%;
}
.type2 .productimg {
	width: 26%;
	display: flex;
	align-items: center;
}
.type2 .explanation {
	width: 64%;
	/*padding-left: 3%;*/
}
.type3 .productimg {
	width: 30%;
	min-width: 280px;
}
.type3 .explanation {
	width: 67%;
	margin-left: 3%;
}
.productimg .tx-center {
	text-align: center;
}
@media(max-width: 500px) {
	.type1 .productimg,
	.type2 .productimg,
	.type3 .productimg {
		width: auto;
		display: block;
	}
	.type1 .productimg {
		padding-bottom: 15px;
	}
	.m2line .productimg {
		width: auto;
		margin-bottom: 50px;
	}
	.soy-boy-line .productimg {
		width: auto;
		margin-bottom: 80px;
	}
	.type1 .explanation,
	.type2 .explanation,
	.type3 .explanation {
		width: auto;
		margin-left: 0;
	}
	.consumables .productimg {
		padding-bottom: 10px;
	}
	.type1 .productimg .imgs {
		margin-left: auto;
		margin-right: auto;
	}
}

/* boyle-cool-tank */
.boyle-cool-tank .explanation .imgs {
	background-color: #fefaeb;
	padding: 25px;
	margin-top: 5px;
	text-align: center;
	line-height: 0;
}
@media(max-width: 500px) {
	.boyle-cool-tank .explanation .imgs {
		padding: 15px 5px;
	}
}
/* soybean-soaking-tanks */
.soybean-soaking-tanks .productimg .imgs:nth-of-type(2) {
	background-color: #e7e2bc;
	padding: 25px;
	margin-top: 15px;
	text-align: center;
	line-height: 0;
}
.soybean-soaking-tanks .productimg .imgs:nth-of-type(2) img {
	width: 45%;
}
@media(max-width: 500px) {
	.soybean-soaking-tanks .productimg .imgs:nth-of-type(2) {
		margin-top: 5px;
	}
}
/* soy-squeeze */
.soy-squeeze .productimg .inner-wrap,
.silk-hope .productimg .inner-wrap {
	display: flex;
	justify-content: space-between;
}
.soy-squeeze .productimg .inner-wrap .imgs {
	width: 49%;
	line-height: 0;
}
.soy-squeeze .productimg .inner-wrap .imgs p {
	text-align: center;
	padding-top: 16px;
}
@media(max-width: 500px) {
	.soy-squeeze .productimg .inner-wrap,
	.silk-hope .productimg .inner-wrap {
		width: 94%;
		margin-left: auto;
		margin-right: auto;
	}
	.soy-squeeze .productimg .inner-wrap .imgs {
		width: 61%;
	}
}
/* silk-hope */
.silk-hope .productimg .inner-wrap .imgs:nth-of-type(1) {
	width: 35%;
	line-height: 0;
}
.silk-hope .productimg .inner-wrap .imgs:nth-of-type(2) {
	width: 61%;
	line-height: 0;
}
/* high-press */
.high-press .productimg .imgs {
	position: relative;
}
.high-press .productimg .imgs:nth-of-type(2) {
	/*margin-top: -60px;*/
	margin-top: -12%;
}
@media(max-width: 500px) {
	.high-press .productimg .imgs:nth-of-type(2) {
		margin-top: -20px;
	}
}
.high-press .productimg .imgs p {
	position: absolute;
	right: 0;
}
.high-press .productimg .imgs:nth-of-type(1) p {
	/*bottom: 90px;*/
	bottom: 32%;
}
.high-press .productimg .imgs:nth-of-type(2) p {
	bottom: 15px;
}
@media(max-width: 500px) {
	.high-press .productimg .imgs:nth-of-type(1) p {
		bottom: 40px;
	}
	.high-press .productimg .imgs:nth-of-type(2) p {
		bottom: 5px;
	}
}

.w90 {
	width: 90%;
}
.w85 {
	width: 85%;
}
.w80 {
	width: 80%;
}
.w80c {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.w70c {
	width: 70%;
	margin-left: auto;
	margin-right: auto;
}
.w60 {
	width: 60%;
}
.w50c {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}
.w30c {
	width: 30%;
	margin-left: auto;
	margin-right: auto;
}
@media(max-width: 500px) {
	.w90 {
		width: 80%;
	}
	.w50c {
		width: 60% !important;
	}
	.w30c {
		width: 30% !important;
	}
}

.productimg .imgs {
	position: relative;
}
@media(max-width: 500px) {
	.productimg .imgs {
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
}
.productimg .imgs .rtxt {
	position: absolute;
    top: 0px;
    left: 0px;
	border: #fff solid 1.5px;
	background-color: #003db1;
	color: #fff;
	z-index: 1;
	line-height: 0.9em;
	font-size: 90%;
	font-weight: 500;
	width: 93px;
	height: 52px;
	border-radius: 60%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
@media(max-width: 500px) {
	.imgs .rtxt {
		width: 83px;
		height: 44px;
	}
}
.productimg .moreinfo {
	padding-top: 20px;
}
.productimg .moreinfo .txt {
	font-size: 110%;
	font-weight: 500;
	padding-bottom: 8px;
}

.type2 h2.produc-name {
	font-size: 120%;
	font-weight: 700;
	color: #001446;
}
.m2line h2.produc-name {
	padding-bottom: 14px;
}
.imgwrap {
	/*width: 100%;*/
	position: relative;
}
@media(max-width: 500px) {
	.m2line .imgwrap {
		width: 70%;
		margin-left: auto;
		margin-right: auto;
	}
	.soy-boy-line .imgwrap {
		width: 82%;
		margin-left: auto;
		margin-right: auto;
	}
}
.imgwrap::before {
	content: "+";
	font-size: 600%;
	font-weight: 300;
	color: #000;
	position: absolute;
	top: calc(50% - 40px);
	right: -29%;
}
@media(max-width: 900px) {
	.imgwrap::before {
		font-size: 500%;
		top: calc(50% - 36px);
		right: -45px;
	}
}
@media(max-width: 500px) {
	.imgwrap::before {
		font-size: 500%;
		top: inherit;
		bottom: -50px;
		left: calc(50% - 20px);
	}
	.m2line .imgwrap::before {
		bottom: -25px;
	}
	.soy-boy-line .imgwrap::before {
		bottom: -55px;
	}
}

.imgwrap .imgbox {
	position: relative;
}
.soy-boy-line .imgwrap .imgbox:nth-of-type(2) .p-imgs {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.soy-boy-line .imgwrap .imgbox p {
	position: absolute;
	text-align: center;
	font-size: 85%;
	line-height: 1.1em;
	color: #001446;
}
.soy-boy-line .imgwrap .imgbox:nth-of-type(1) p {
	top: 20px;
	right: 0;
}
.soy-boy-line .imgwrap .imgbox:nth-of-type(2) p {
	top: 0px;
	left: 0;
}
.soy-boy-line .imgwrap .imgbox:nth-of-type(2)  {
	margin-top: 40px;
}
.soy-boy-line .imgwrap .imgbox:nth-of-type(2)::before {
	position: absolute;
	content: '';
	top: -38px;
	left: calc(50% - 25px);
	display: block;
	width: 35px;
	height: 20px;
	background-repeat: no-repeat;
	background-image: url("../images/soy-boy-icn-01.svg");
}
@media(max-width: 500px) {
	.soy-boy-line .imgwrap .imgbox:nth-of-type(2)::before {
		top: calc(50% - 22px);
		left: -10px;
		width: 27px;
		height: 22px;
	}
}
@media(max-width: 500px) {
	.soy-boy-line .imgwrap {
		display: flex;
		justify-content: space-between;
		/*align-items: stretch;*/
	}
	.soy-boy-line .imgwrap .imgbox {
		width: 60%;
		margin: 0 !important;
	}
	.soy-boy-line .imgbox .p-imgs {
		height: 100%;
		display: flex;
		align-items: center;
		padding: 0 !important;
	}
	/*
	.soy-boy-line .imgwrap > .imgbox:nth-of-type(1) .p-imgs {
		width: 76%;
		margin-left: auto;
		margin-right: auto;
	}
	.soy-boy-line .imgwrap > .imgbox:nth-of-type(2) .p-imgs {
		width: 74%;
		margin-left: auto;
		margin-right: auto;
	}
	.soy-boy-line .imgwrap .imgbox .p-imgs img {
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
	}
	*/
	.soy-boy-line .imgwrap .imgbox p {
		position: initial;
	}
}

.blueline {
	border: #001446 solid 1.5px;
	padding: 10px 30px 30px 30px;
	position: relative;
}
@media(max-width: 900px) {
	.blueline {
		padding: 10px 15px 35px 25px;
	}
}
@media(max-width: 500px) {
	.blueline {
		padding: 0px 15px 15px 15px;
	}
}
ul.machines {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: fit-content;
	counter-reset: listnum;
}
ul.machines li {
	width: 50%;
	display: flex;
	flex-direction: column;
	margin-top: 20px;
	position: relative;
}
.m2line ul.machines li:nth-of-type(-n+3) {
	width: 33.3%;
}
@media(max-width: 500px) {
	.m2line ul.machines li:nth-of-type(-n+3) {
		width: 50%;
	}
	.m2line ul.machines li:nth-of-type(3) {
		width: 100%;
	}
}
.m2line ul.machines li:nth-of-type(2) {
	
}
.ddline::before {
	content: "";
	background-image: linear-gradient(to right, #001446, #001446 3px, transparent 3px, transparent 8px);
	background-size: 8px 2px;
	background-repeat: repeat-x;
	position: absolute;
	top: -15px;
	bottom: 0;
	left: 0;
	right: 0;
}
.m2line ul.machines li:nth-last-of-type(-n+4)::before,
.soy-boy-line ul.machines li:nth-last-of-type(-n+4)::before {
	content: "";
	background-image: linear-gradient(to right, #001446, #001446 3px, transparent 3px, transparent 8px);
	background-size: 8px 2px;
	background-repeat: repeat-x;
	position: absolute;
	top: -15px;
	bottom: 0;
	left: 0;
	right: 0;
}


.triangle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -12%;
    transform: translateY(-50%);
    border: 17px solid transparent;
    border-left: 20px solid #001446;
}
.m2line ul.machines li:nth-of-type(2)::after,
.m2line ul.machines li:nth-of-type(3)::after,
.m2line ul.machines li:nth-of-type(5)::after,
.m2line ul.machines li:nth-of-type(7)::after,
.soy-boy-line ul.machines li:nth-of-type(even)::after
{
	content: "";
	position: absolute;
	top: 50%;
	left: -12%;
	transform: translateY(-50%);
	border: 17px solid transparent;
	border-left: 20px solid #001446;
}
@media(max-width: 900px) {
	.m2line ul.machines li:nth-of-type(2)::after,
	.m2line ul.machines li:nth-of-type(3)::after,
	.m2line ul.machines li:nth-of-type(5)::after,
	.m2line ul.machines li:nth-of-type(7)::after,
	.soy-boy-line ul.machines li:nth-of-type(even)::after {
		left: -4%;
		border: 7px solid transparent;
    	border-left: 10px solid #001446;
	}
	.m2line ul.machines li:nth-of-type(3)::after {
		left: 20%;
	}
}

@media(max-width: 900px) {
	.triangle::after{
		border: 10px solid transparent;
    	border-left: 13px solid #001446;
	}
}
@media(max-width: 500px) {
	.triangle::after{
		border: 7px solid transparent;
    	border-left: 10px solid #001446;
	}
}
ul.machines li p.p-name {
	font-size: 90%;
	line-height: 1.3em;
	flex-grow: 1;
}
ul.machines li p::before {
	counter-increment: listnum;
	content: counter(listnum);
	margin-right: 4px;
	padding: 2px 4px;
	line-height: 100%;
	display: inline-block;
	color: #fff;
	font-size: 90%;
	background: #001446;
}
ul.machines li .imgs {
	/*margin: auto;*/
	/*display: flex;
	align-items: center;*/
	padding-top: 10px;
	flex-grow: 1;
	width: 57%;
	margin-left: 17%;
}
@media(min-width: 500px) { /* min */
	ul.machines li .imgs.b-type {
		width: 70%;
	}
}
@media(max-width: 500px) {
	ul.machines li .imgs {
		width: 74%;
		margin-left: auto;
		margin-right: auto;
	}
	.m2line ul.machines li:nth-of-type(3) .imgs {
		width: 50%;
	}
}

/* ----------------- */

/*
main .main-wrap .product-explanation .productimg {
	width: 40%;
	min-width: 280px;
}
@media(max-width: 500px) {
	main .main-wrap .product-explanation .productimg {
		width: auto;
		min-width: inherit;
		display: flex;
		justify-content: center;
	}
}
main .main-wrap .product-explanation .productimg .imgs {
	display: flex;
	justify-content: center;
	position: relative;
}
*/



main .main-wrap .product-explanation .explanation {
	width: 60%;
	padding-left: 3%;
	/*padding-left: 40px;*/
}
@media(max-width: 500px) {
	main .main-wrap .product-explanation {
		padding: 15px 15px 20px 15px;
	}
	main .main-wrap .product-explanation.flextype {
		display: block;
	}
	main .main-wrap .product-explanation .productimg {
		width: auto;
		padding-bottom: 15px;
	}
	main .main-wrap .product-explanation .productimg .imgs img {
		width: 70%;
		height: auto;
	}
	main .main-wrap .product-explanation .explanation {
		width: auto;
		padding-left: 0;
	}
}
.explanation .features {
	font-size: 120%;
	font-weight: 500;
	color: #001446;
	border-bottom: #001446 solid 1px;
	padding-bottom: 6px;
	margin-bottom: 10px;
}
.explanation h3 {
	font-weight: 500;
	color: #001446;
	padding-bottom: 6px;
}
.explanation h3:nth-of-type(n+2) {
	padding-top: 30px;
}
@media(max-width: 500px) {
	.explanation .features {
		font-size: 120%;
	}
}
/*
main .main-wrap .product-explanation .explanation ul.square {
	padding-bottom: 50px;
}
@media(max-width: 500px) {
	main .main-wrap .product-explanation .explanation ul.square {
		padding-bottom: 20px;
	}
}
*/
ul.square li,
p.square {
	position: relative;
	text-indent: -1.2em;
	padding-left: 1.2em;
}
ul.square li::before,
p.square::before {
	content:"■";
	font-size: 95%;
	margin-right: 4px;
	color: #001446;
}
/* 四角バージョン
main .main-wrap .product-explanation .explanation ul li::before{
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: #001446;
	position: absolute;
	top: 5px;
	left: 0;
}
*/
ul.square.product-description li:nth-of-type(n+2) {
	margin-top: 15px;
}
@media(max-width: 500px) {
	ul.square.product-description li:nth-of-type(n+2) {
		margin-top: 10px;
	}
	ul.square li {
		line-height: 1.2em;
	}
}

/* 導入事例 */
.customer-info ul.square li::before,
.customer-info p.square::before{
	color: #6b0000;
}
p.no-square {
	padding-left: 1.2em;
}

/* youtube PDF 
----------------------------------------------------- */
.linkbtn {
	display: table;
}
.linkbtn a {
	display: inline-table;
	border: #006ea8 solid 1.5px;
	background-color: #d0d9ea;
	position: relative;
}
.linkbtn a:hover {
	background-color: #a6bde2;
}
.linkbtn.youtube a {
	font-size: 145%;
	font-weight: 900;
	padding: 10px 28px 10px 136px;
	white-space: nowrap;
}
@media(max-width: 500px) {
	.linkbtn.youtube a {
		padding: 10px 28px 10px 108px;
		font-size: 125%;
	}
}
.linkbtn.youtube a::before {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	left: 10px;
	display: block;
    width: 114px;
    height: 32px;
    background-size: 94px 21px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("../../common/images/icn-youtube.svg");
	background-color: #fff;
}
.linkbtn.pdf a {
	font-size: 115%;
	font-weight: 900;
	padding: 10px 28px 10px 46px;
}
.linkbtn.pdf a::before {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	left: 10px;
	display: block;
	width: 27px;
    height: 34px;
    background-size: cover;
	background-image: url("../../common/images/icn-pdf.svg");
}
@media(max-width: 500px) {
	.linkbtn.youtube a::before {
		width: 90px;
    	height: 26px;
		background-size: 71px 16px;
	}
}
.linkbtn a::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2px;
	border: 6px solid transparent;
	border-left: 9px solid #006ea8;
}
/* Type */
.linkbtn.type-1 {
	margin-left: auto;
	margin-top: 40px;
}
@media(max-width: 500px) {
	.linkbtn.type-1 {
		margin-top: 20px;
		margin-right: auto;
	}
}
.linkbtn.type-2 a {
	background-color: #fff;
}
.linkbtn.type-2 a:hover {
	background-color: #a6bde2;
}
@media(max-width: 500px) {
	.linkbtn.type-2 {
		margin-left: auto;
		margin-right: auto;
	}
}

/* table 
----------------------------------------------------- */
h2.product-overview-md {
	background-color: #001446;
	color: #fff;
	font-size: 120%;
	font-weight: 700;
	text-align: center;
	padding: 10px;
	margin-top: 40px;
}
@media(max-width: 900px) {
	h2.product-overview-md {
		margin-top: 30px;
	}
}
@media(max-width: 500px) {
	h2.product-overview-md {
		margin-top: 20px;
	}
}
.md-wrap {
	display: flex;
	align-items: center;
	background-color: #001446;
	padding: 10px;
}
.md-wrap h2 {
	font-size: 120%;
	font-weight: 500;
	color: #fff;
	padding-left: 30px;
}
.md-wrap p {
	font-weight: 500;
	color: #fff;
	padding-left: 30px;
	line-height: 1.3em;
}
@media(max-width: 500px) {
	.md-wrap {
		display: block;
	}
	.md-wrap h2 {
		padding-left: 0px;
		text-align: center;
		padding-bottom: 6px;
		margin-bottom: 6px;
		border-bottom: #fff solid 1px;
	}
	.md-wrap p {
		padding-left: 0px;
		line-height: 1.2em;
	}
}
table.product-overview {
	width: 100%;
	border-collapse: collapse;
	border-left: #000 solid 1px;
}
table.product-overview th,
table.product-overview td {
	padding: 10px;
	text-align: center;
	border-bottom: #000 solid 1px;
	border-top: #000 solid 1px;
	border-right: #000 solid 1px;
	vertical-align: middle;
}
table.product-overview th {
	font-weight: 500;
}
.table-cap {
	padding-top: 6px;
}
table.product-overview ul {
	display: inline-table;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
@media(max-width: 900px) {
	.table-wrap {
		overflow-x: scroll;
	}
	::-webkit-scrollbar {
	-webkit-appearance: none;
		width: 5px;
	}
	::-webkit-scrollbar-thumb {
		/*border-radius: 4px;*/
		background-color: rgba(0,0,0,.5);
		box-shadow: 0 0 1px rgba(255,255,255,0.4);
	}
	.table-wrap table.product-overview {
		white-space: nowrap;
	}
	table.product-overview th,
	table.product-overview td {
		padding: 5px;
		line-height: 1.2em;
	}
}
table.product-overview.type1 th {
	background-color: #e7e4bc;
	width: 50%;
}
table.product-overview.type2 th {
	background-color: #33436b;
	color: #fff;
	width: 25%;
}
table.product-overview.type2 tr td:nth-of-type(1) {
	background-color: #e7e4bc;
}
table.product-overview.type3 th {
	background-color: #e7e4bc;
}
table.product-overview.type4 th {
	background-color: #33436b;
	color: #fff;
}
table.product-overview.type4 tr td:nth-of-type(1) {
	background-color: #e7e4bc;
}
table.product-overview.type5 tr:nth-of-type(1) td:nth-of-type(1) {
	background-color: #001446;
	color: #fff;
}
table.product-overview.type5 tr:nth-of-type(1) td:nth-of-type(n+2) {
	background-color: #4d5b7e;
	color: #fff;
}
table.product-overview.type5 tr:nth-of-type(2) td {
	background-color: #e7e4bc;
}
table.product-overview.type6 tr:nth-of-type(1) th {
	background-color: #001446;
	color: #fff;
}
table.product-overview.type6 tr:nth-of-type(n+2) th {
	background-color: #e7e4bc;
}
table.product-overview.type6 tr:nth-of-type(1) td {
	background-color: #4d5b7e;
	font-weight: 500;
	color: #fff;
}
table.product-overview.type7 th {
	background-color: #e6e4bd;
	font-weight: 500;
}

/* Line Box
----------------------------------------------------- */
.line-box {
	border: #001446 solid 2px;
	padding: 20px 30px;
	margin-top: 40px;
}
.line-box-type1 {
	margin-top: 0 !important;
}
@media(max-width: 900px) {
	.line-box {
		margin-top: 30px;
	}
}
@media(max-width: 500px) {
	.line-box {
		padding: 10px 20px;
		margin-top: 20px;
	}
}
.line-box.bg-blue {
	background-color: #d0d9ea;
	border: #016ea7 solid 1px;
}
.line-box h3 {
	color: #001446c;
	font-size: 105%;
	font-weight: 700;
	line-height: 1.1em;
	padding-bottom: 10px;
	position: relative;
}
.soy-boy-line .line-box h3 {
	text-align: center;
}
.line-box .flex-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media(max-width: 500px) {
	.line-box .flex-inner {
		display: block;
	}
}

/* PDFボタン */
.line-box .layout-pdf {
	display: flex;
	justify-content: center;
}
.soy-boy-line .line-box .layout-pdf li {
	width: 32%;
}
@media(max-width: 500px) {
	.line-box .layout-pdf {
		display: block;
	}
	.soy-boy-line .line-box .layout-pdf li {
		width: auto;
	}
	.line-box .layout-pdf li:nth-of-type(n+2) {
		margin-top: 5px;
	}
}
.line-box .layout-pdf li a {
	display: flex;
	align-items: center;
	height: 100px;
	position: relative;
	background-color: #fff;
	font-size: 190%;
	font-weight: 700;
	padding-left: 160px;
	border: #006ea8 solid 1px;
	background-repeat: no-repeat;
}
.line-box .layout-pdf li a:hover {
	color: #006ea8;
}
.line-box .layout-pdf li:nth-of-type(1) a {
	background-image: url("../images/soy-boy-btnbg-01.webp");
	background-size: cover;
}
@media(max-width: 900px) {
	.line-box .layout-pdf li a {
		height: 60px;
		font-size: 120%;
		padding-left: 70px;
	}
	.line-box .layout-pdf li a {
		background-position: center left -20px;
	}
}
@media(max-width: 500px) {
	.line-box .layout-pdf li a {
		height: 50px;
		font-size: 140%;
		padding-left: 110px;
	}
	.line-box .layout-pdf li a {
		background-position: center left -20px;
	}
}
.line-box .layout-pdf li a::before {
	position: absolute;
	content: '';
	top: 18px;
	right: 15px;
	width: 29px;
	height: 36px;
	background-size: cover;
	background-image: url("../../common/images/icn-pdf.svg");
}
.line-box .layout-pdf li a::after {
	content: "";
	position: absolute;
	top: 60px;
	right: 11px;
	border: 9px solid transparent;
	border-left: 13px solid #006ea8;
}
@media(max-width: 900px) {
	.line-box .layout-pdf li a::before {
		top: 9px;
		right: 7px;
		width: 21px;
		height: 26.3px;
	}
	.line-box .layout-pdf li a::after {
		top: 41px;
		right: 6px;
		border: 5px solid transparent;
		border-left: 9px solid #006ea8;
	}
}
@media(max-width: 500px) {
	.line-box .layout-pdf li a::before {
		/*top: calc(50% - 36px);*/
		top: 10px;
		right: 27px;
		width: 24.2px;
		height: 30px;
	}
	.line-box .layout-pdf li a::after {
		top: 21px;
		right: 5px;
		border: 5px solid transparent;
		border-left: 9px solid #006ea8;
	}
}


.others {
	margin-top: 0;
}
.others .inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 30px;
}
.others .inner .box-b {
	width: 48%;
	padding-bottom: 40px;
}
.others .inner .box-b .inner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.others .inner .box-b .inner .imgs {
	width: 50%;
}
.others .inner .box-b .inner .txt {
	width: 50%;
	padding-left: 25px;
}
@media(max-width: 500px) {
	.others .inner .box-b {
		width: 100%;
		padding-bottom: 10px;
	}
	.others .inner .box-b .inner .txt {
		padding-left: 10px;
	}
}


.others .inner .box {
	width: 25%;
	display: flex;
	flex-direction: column;
}
@media(max-width: 500px) {
	.others .inner {
		padding: 0 10px;
		flex-wrap: wrap;
	}
	.others .inner .box {
		width: 50%;
	}
	.others .inner .box:nth-of-type(n+3) {
		margin-top: 10px;
	}
}
.others .inner .box h3 {
	text-align: center;
}
.others .inner .box div {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.others .inner .box:nth-of-type(1) img {
	width: 76%;
}
.others .inner .box:nth-of-type(2) img {
	width: 40%;
}
.others .inner .box:nth-of-type(3) img {
	width: 78%;
}
.others .inner .box:nth-of-type(4) img {
	width: 60%;
}
h3.square::before{
	content:"■";
	font-size: 95%;
	margin-right: 4px;
	color: #001446;
}

/* 画像ボタン 
----------------------------------------------------- */
.imgbtn {
	margin-top: 40px;
}
@media(max-width: 900px) {
	.imgbtn {
		margin-top: 30px;
	}
}
@media(max-width: 500px) {
	.imgbtn {
		margin-top: 20px;
	}
}
.imgbtn a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #016ea7;
	font-weight: 900;
	color: #fff;
	height: 110px;
	border: #016ea7 solid 3px;
	background-size: auto 110px;
	background-repeat: no-repeat;
	position: relative;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}
@media(max-width: 500px) {
	.imgbtn a {
		height: 60px;
		line-height: 1.0em;
		background-size: auto 60px;
		background-position: center left -60px;
	}
}
.imgbtn a:hover {
	background-color: #1756bb;
}
.imgbtn a::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
	border: 10px solid transparent;
	border-left: 13px solid #fff;
}
@media(max-width: 500px) {
	.imgbtn a::after {
		right: 6px;
		border: 7px solid transparent;
		border-left: 10px solid #fff;
	}
}
.mini-star-line a {
	font-size: 320%;
	background-image: url("../images/btn-mini-star-line.webp");
}
.coagulant a {
	font-size: 320%;
	background-image: url("../images/btn-coagulant.webp");
}
.customer-case a {
	font-size: 240%;
	background-image: url("../images/btn-customer-case.webp");
}
.tools a {
	font-size: 240%;
	background-image: url("../images/btn-tools.webp");
}
.imgbtn.soy-boy-line a {
	font-size: 320%;
	background-image: url("../images/btn-soy-boy-line.webp");
}
.m2-line a {
	font-size: 320%;
	background-image: url("../images/btn-m2-line.webp");
}
.imgbtn a span {
  font-size: 50%;
  padding-left: 10px;
  position: relative;
  top: 7px;
}
@media(max-width: 900px) {
	.customer-case a {
		font-size: 180%;
		padding-left: 20px;
	}
}
@media(max-width: 500px) {
	.mini-star-line a,
	.coagulant a,
	.imgbtn.soy-boy-line a,
	.m2-line a {
		font-size: 170%;
	}
	.customer-case a {
		font-size: 140%;
		padding: 0 25px 0 40px;
	}
	.tools a {
		font-size: 140%;
	}
}

/* contact ボタン
----------------------------------------------------- */
main .contact-btn {
	margin-top: 40px;
	padding: 5px;
	background-color: #001446;
}
@media(max-width: 900px) {
	main .contact-btn {
		margin-top: 30px;
	}
}
@media(max-width: 500px) {
	main .contact-btn {
		margin-top: 20px;
	}
}
main .contact-btn:hover > a {
	background-color: #1756bb;
}
main .contact-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #001446;
	font-size: 260%;
	font-weight: 900;
	color: #fff;
	height: 110px;
	border: #fff solid 3px;
	padding-left: 60px;
}
@media(max-width: 500px) {
	main .contact-btn a {
		font-size: 120%;
		height: 60px;
		padding-left: 15px;
	}
}
main .contact-btn a span {
	position: relative;
}
main .contact-btn a span::before {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	left: -80px;
	display: block;
    width: 54px;
    height: 41px;
    background-size: cover;
	background-repeat: no-repeat;
	background-image: url("../../common/images/icn-mail.svg");
}
main .contact-btn a span::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -45px;
	border: 10px solid transparent;
	border-left: 13px solid #fff;
}
@media(max-width: 500px) {
	main .contact-btn a span::before {
		left: -32px;
		width: 23px;
    	height: 18px;
	}
	main .contact-btn a span::after {
		right: -28px;
		border: 7px solid transparent;
		border-left: 10px solid #fff;
	}
}

.product-list ul li span,
.products ul li span {
  padding-left: 12px;
  font-size: 85%;
  position: relative;
  color: #326da4;
  font-weight: 400;
}
.product-list ul li span {
  padding-left: 6px;
  top: -2px;
}
.product-list ul li span::after,
.products ul li span::after {
	content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url("../images/icn-blank2.svg");
    background-position: center;
    background-size: contain;
	position: absolute;
	top: 4px;
  right: -16px;
}
.product-list ul li span::after {
  top: 5px;
}