@charset "utf-8";
.contents_ttl{
	background: #f4f2ec;
}
	.contents_ttl h2{
		font-size: 2.8rem;
		text-align: left;
		padding: 40px 0;
	}

.lead_txt{
	margin-top: 40px;
	margin-bottom: 100px;
	text-align: left;
}

/*--------------------------ソリューションTOP--------------------------*/
.secWrap{
	display:flex;
	width:1350px;
	margin:0 auto;
}
.secWrap .solution-inner{
	width: 1050px;
	margin: 0 auto;
}
/*---サイドメニュー---*/
.secWrap aside {
	width:250px;
	text-align:left;
	margin:2em 0 2em 50px;
}
.secWrap aside nav {
	background:#ededed;
	padding:0;
	font-size:0.9375em;
}
.secWrap aside h4 {
	background:#4b4b4b;
	text-align:center;
	font-weight:700;
	color:#FFFFFF;
	padding:0.5em;
}
.secWrap aside nav p {
	font-weight:700;
	color:#980e16;
	padding:0.5em 0.75em;
}
.secWrap aside nav ul {
	border-bottom:1px solid #b3b3b3;
	margin:0 0 1em 0;
	padding:0 1em 1.5em 0;
}
.secWrap aside nav ul li {
	line-height:2em;
	padding:0 0.75em;
}
/*---END サイドメニュー---*/

#contentsBlock .solution-1 {
	/*width:1350px;*/
	background-color: #fff;
	margin-top: 40px;
	margin-bottom: 40px;
}
.solution_lead {
	font-size: 18px;
	text-align:left;
	margin:2em 0;
}
.solution_txt{
	margin-top: 40px;
	margin-bottom: 40px;
	text-align: left;
}


.solution-1 > header {
	width: auto;
	font-size: 18px;
	height: auto;
	margin-bottom: 2em;
}
.solution-1 section header {
	height: auto;
}
.solution-1 section header h2 {
	background: url(../img/arrow_h.gif) no-repeat left 5px;
	border-bottom: #888 1px dotted;
	font-size: 22px;
	font-size: 2.2rem;
	margin-bottom: 20px;
	padding-bottom: 11px;
	padding-left: 18px;
	width: 900px;
	box-sizing: border-box;
}
.solution-1 section header p {
	line-height: 1.8em !important;
}

.solution-1 section + section  {
	margin-top:20px;
}

.solution-1 figure {
	position:relative;
	width:100%;
	margin:0 0 10px;
	padding:0;
}
.solution-1 figure figcaption {
	color: #a5121d;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 1em;
}


/*---ソリューションの図---*/
.solution-1 section figure .map {
	position:relative;
	margin:auto;
}
.solution-1 section figure .click {
	position:absolute;
	display:inline-block;
	background:#fff;
	box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.1);
	position:absolute;
	padding:15px 15px 12px;
	z-index:2;
}
.solution-1 section figure .click:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -14px;
  border: 15px solid transparent;
  border-top: 21px solid #cacaca;
}
.solution-1 section figure .click:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -17px;
  border: 15px solid transparent;
  border-top: 20px solid #fff;
}
.solution-1 section figure .click > span {
	display: block;
	line-height: 1.5em;
	margin-top: 4px;
	font-size:16px;
}
.solution-1 section figure .click .more {
	display: inline-block;
	background: #9E0E1A;
	border-radius: 3px;
	color: #fff;
	line-height: 1.9em;
	padding: 0 0.6em;
	font-size: 12px;
	font-weight:bold;
}
.solution-1 section figure .click .more span {
	font-size:8px;
}
.solution-1 section figure .click .more:hover {
	opacity:0.8;
	text-decoration:none;
}
.solution-1 section figure .click.down:before {
	content: "";
	position: absolute;
	top: -32px;
	left: 50%;
	margin-left: -14px;
	border: 14px solid transparent;
	border-bottom: 18px solid #cacaca;
	z-index: 0;
}
.solution-1 section figure .click.down:after {
	content: "";
	position: absolute;
	top: -34px;
	left: 50%;
	margin-left: -17px;
	border: 15px solid transparent;
	border-bottom: 20px solid #fff;
}



/*---ソリューションの図-各吹き出しのスタイル---*/
.solution-1 section figure .click.sickbed {
	top: 105px;
	left: 620px;
    animation-name: anim_v; 
}
.solution-1 section figure .click.pharmacy {
	top: 208px;
	left: 800px;
	animation-name: anim_v;
}
.solution-1 section figure .click.clinical_lab {
	top: 190px;
	left: 310px;
	animation-name: anim_v;
}
.solution-1 section figure .click.operating_room {
	top: 270px;
	left: 145px;
	animation-name: anim_v; 
}
.solution-1 section figure .click.prevent_mixed {
	top: 124px;
	left: 591px;
	animation-name: anim_v;
}
.solution-1 section figure .click.board {
	top: 167px;
	left: 622px;
	animation-name: anim_v;
}
.solution-1 section figure .click.tire_process {
	top: 126px;
	left: 382px;
	animation-name: anim_v;
}
.solution-1 section figure .click.car_process {
	top: 328px;
	left: 473px;
	animation-name: anim_v; 
}
.solution-1 section figure .click.food_prevent_mixed {
	top: 74px;
	left: 590px;
	animation-name: anim_v;
}
/*.animation{  
    animation-timing-function: ease-in-out; 
    animation-iteration-count: infinite; 
    animation-direction: alternate; 
    animation-duration: 1.5s; 
}*/
/*@keyframes anim_v { 
  0% {transform: translate(0, 0px);} 
  100% {transform: translate(0, -15px);} 
}*/

/*---------------レスポンシブ----------------*/
@media only screen and (max-width: 1350px) {
/*#contentsBlock .solution-1 {
	width:100%;
}*/
.secWrap{
	display:flex;
	flex-flow: column;
	width:100%;
	margin:0 auto;
}
.secWrap .solution-inner{
	width:100%;
	padding:0 2%;
}
/*---サイドメニュー---*/
.secWrap aside {
	width:100%;
	padding:0 2%;
	margin:2em 0 2em 0;
}
.secWrap aside nav {
	background:#ededed;
	padding:0;
	font-size:0.9375em;
}
.secWrap aside h4 {
	background:#4b4b4b;
	text-align:center;
	font-weight:700;
	color:#FFFFFF;
	padding:0.5em;
}
.secWrap aside nav p {
	font-weight:700;
	color:#980e16;
	padding:0.5em 0.75em;
}
.secWrap aside nav ul {
	border-bottom:1px solid #b3b3b3;
	margin:0 0 1em 0;
	padding:0 1em 1.5em 0;
}
.secWrap aside nav ul li {
	line-height:2em;
	padding:0 0.75em;
}
/*---END サイドメニュー---*/

.solution-1 section header h2 {
	width: 100%;
}

.solution-1 section figure .click.sickbed {
	top: 15.9%;
	left: 55%;
	animation-name: anim_v;  
}
.solution-1 section figure .click.pharmacy {
	top: 31.6%;
	left: 70%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.clinical_lab {
	top: 28.9%;
	left: 32.6%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.operating_room {
	top: 38%;
	left: 15%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.prevent_mixed {
	top: 18.9%;
	left: 45.9%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.board {
	top: 25.4%;
	left: 60%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.tire_process {
	top: 22%;
	left: 38%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.car_process {
	top: 50%;
	left: 45%;
	animation-name: anim_v;   
}
.solution-1 section figure .click.food_prevent_mixed {
	top: 13%;
	left: 55%;
	animation-name: anim_v;  
}
}
@media only screen and (max-width: 900px) {
}
@media only screen and (max-width: 768px) {
.solution-1 section figure .click {
	padding:0.5em 0.5em 0.5em;
}
.solution-1 section figure .click:before {
  margin-left: -14px;
  border: 15px solid transparent;
  border-top: 21px solid #cacaca;
}
.solution-1 section figure .click:after {
  margin-left: -17px;
  border: 15px solid transparent;
  border-top: 20px solid #fff;
}
.solution-1 section figure .click > span {
	font-size:0.85em;
}
.solution-1 section figure .click .more {
	padding: 0 0.3em;
	font-size: 0.7em;
}
.solution-1 section figure .click .more span {
	font-size:8px;
}
.solution-1 section figure p img{
	display:none;
}
.solution-1 section figure .click.sickbed {
	top: 15.9%;
	left: 60%;
	animation-name: anim_v;  
}
.solution-1 section figure .click.pharmacy {
	top: 31.6%;
	left: 79%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.clinical_lab {
	top: 32%;
	left: 28%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.operating_room {
	top: 40%;
	left: 7%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.prevent_mixed {
	top: 18.9%;
	left: 45.9%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.board {
	top: 40%;
	left: 62.6%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.tire_process {
	top: 30%;
	left: 36%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.car_process {
	top: 50%;
	left: 45%;
	animation-name: anim_v; 
}
.solution-1 section figure .click.food_prevent_mixed {
	top: 19%;
	left: 55%;
	animation-name: anim_v;
}

}



/*--------------------------ソリューション詳細--------------------------*/

.solution-3 .solution_subttl {
	font-size: 2.8rem;
	color:#505050;
	text-align: left;
	margin: 40px 0 20px;
}
.solution-3 .sub_menu ul {
	display:flex;
	flex-wrap: wrap;
}
.solution-3 .sub_menu li {
	background: #980e16;
	flex-basis:31%;
	max-width:31%;
	margin-top:20px;
	margin-right:3.5%;
	margin-bottom: 40px;
	padding:1em ;
	text-align: center;
}
.solution-3 .sub_menu li:nth-of-type(3n){
	margin-right:0%;
}
.solution-3 .sub_menu li a {
	color:#fff;
	line-height: 1em;
	font-size: 18px;
	display: inline-block;
	width: 100%;
}
.solution-3 .sub_menu li a:hover {
	text-decoration:none;
}
.solution-3 .sub_menu li:hover {
	opacity:0.8;
	text-decoration:none;
}
.solution-3 .sub_menu li a:before{
	content: "\f107";
	font-family: 'FontAwesome';
	color: #fff;
	margin-right: 5px;
	display: inline-block;
}
.solution-3 h2 {
	color: #a71721;
	font-size: 18px;
	font-weight: bold;
	text-align:left;
}
.solution-3 p {
	line-height:2em;
	text-align:left;
}
.solution-3 .solution_box {
	display:flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap:wrap;
	margin:40px 0;
	text-align:left;
	}
.solution-3 .solution_box figure{
	width:40%;
	padding:0;
	margin:0;
	}
.solution-3 .solution_box .solution_info {
	width:60%;
	padding-right:30px;
	}
.solution-3 .solution_box  h4 {
	color:#960e16;
	font-size:2rem;
	margin:0 0 20px;
	text-align:left;
	}
/*---タブきりかえ／特長と使用製品---*/
.solution-3 .tab-wrap{
	background-color: #fff;
} 
.solution-3 .tab-wrap .tab-ul {
	display: flex;
	justify-content: left;
	margin: 40px auto;
	border-bottom:1px solid #848484;
} 
.solution-3 .tab-wrap .tab-ul .tab-btn {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
	border-bottom: none;
	width: 20%;
	background: #c8c8c8;
	color: #fff;
	padding: 15px;
	cursor: pointer;
	font-weight: bold;
} 
.solution-3 .tab-wrap .tab-ul .tab-btn.show {
	border-top: 1px solid #848484;
	border-right: 1px solid #848484;
	border-left: 1px solid #848484;
	border-bottom: none;
	width: 20%;
	background: #fff;
	color: #505050;
	padding: 15px;
	font-weight: bold;
	pointer-events: none;
    cursor: default;
    -webkit-transform: translate(0, 1px);
    -ms-transform: translate(0, 1px);
    transform: translate(0, 1px);
} 
.solution-3 .tab-contents {
  display: none;
}
.solution-3 .tab-contents.show {
	display: block;
}
.solution-3 .tab-btn.show:hover {
	opacity:0.8;
}
.solution-3 .tab-btn:hover {
	opacity:0.8;
} 

.solution-3 ul.imgs {
	display:flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.solution-3 ul.imgs li {
	flex-basis:31%;
	max-width:31%;
	margin-right:3.5%;
	text-align: center;
	margin-bottom: 1em;
}
.solution-3 ul.imgs li:nth-of-type(3n) {
	margin-right:0%;
}
.solution-3 ul.imgs li img {
	width:100%;
}
.solution-3 ul.imgs li p {
	text-align:left;
	line-height:1.8em;
	margin-top:0.5em;
	margin-bottom: 1em;
}
.solution-3 .use_products {
	margin-bottom:40px;
}
.solution-3 .use_products .products {
	display:flex;
	flex-wrap: wrap;
	margin-bottom:40px;
}
.solution-3 .use_products .products li{
	flex-basis:18.4%;
	max-width:18.4%;
	margin-right:2%;
	text-align: center;
	margin-bottom: 1em;
	
	padding:10px 0;
}
.solution-3 .use_products .products li:nth-of-type(5n) {
	margin-right:0%;
}
.solution-3 .use_products .products li a {
	position:relative;
	display:block;
}
.solution-3 .use_products .products li a img {
	border:1px solid #808080;
	box-sizing:border-box;
}
.solution-3 .use_products .products li a p {
	background: #fff;
	padding: 0.5em 0;
	text-align: left;
}
.solution-3 .use_products .products li p:hover {
	opacity:0.8;
}


@media only screen and (max-width: 960px) {
.solution-3 .solution_box figure{
	width:100%;
	padding:0;
	margin:2em auto;
	text-align:center;
	}
.solution-3 .solution_box .solution_info {
	width:100%;
	padding-right:0;
	}
}
@media only screen and (max-width: 768px) {
.solution-3 .sub_menu ul {
	margin-bottom:2em;
}
.solution-3 .sub_menu li {
	flex-basis:100%;
	max-width:100%;
	margin-top:1em;
	margin-right:0;
	margin-bottom: 0.5em;
}
.solution-3 .tab-wrap .tab-ul .tab-btn {
	width: 50%;
} 
.solution-3 .tab-wrap .tab-ul .tab-btn.show {
	width: 50%;
}
.solution-3 ul.imgs {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
.solution-3 ul.imgs li {
	flex-basis:100%;
	max-width:100%;
	margin-right:0;
	text-align: center;
	margin-bottom: 1em;
}
.solution-3 .use_products .products {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom:40px;
}
.solution-3 .use_products .products li {
	flex-basis:46%;
	max-width:46%;
	margin-left:0.4em;
	margin-right:0.4em;
	margin-bottom:1em;
	text-align: center;
}
}