@charset "UTF-8";

main {
	padding-top: 120px;
}
	.contents {
		margin-top: 30px;
	}
		section {
			padding-bottom: 70px;
		}
		section:nth-last-child(1) {
			padding-bottom: 0;
		}

.main_wrap {
	margin: 0 auto;
	max-width: 1190px;
	padding: 0 15px;
}

.title_line01 {
	position: relative;
	padding: 20px 0;
	text-align: center;
}
.title-en01 {
	color: #DE0925;
	font-weight: bold;
	font-size: 40px;
}
	.title-jp01 {
		color: #000000;
		font-size: 18px;
	}
	.title-btn01 {
		position: absolute;
		top: 0;
		right: 10%;
		padding: 10px 40px;
		background-color: #000000;
		text-align: center;
	}
		.title-btn01 a {
			display: block;
			color: #FFFFFF;
			text-decoration: none;
			font-weight: bold;
		}

.products {
	position: relative;
}
	.products .products_pic {
	}
		.products .products_pic ul {
			margin: 0 auto;
			padding: 0 0 30px;
			max-width: 1147px;
			list-style: none;
			font-size: 0;
		}
			.products .products_pic ul li {
				display: inline-block;
				margin-left: 20px;
				width: calc((100% - 40px) / 3);
				text-align: center;
				background-color: rgba(255,255,255,0);
				box-sizing: border-box;
			}
			.products .products_pic ul li:nth-child(1) {
				margin-left: 0;
			}
				.products .products_pic ul li > div {
					background-color: #FFFFFF;
				}
#topics-top {
	background-color: #acabb9;
}
	#topics-top .title_line01 {
		padding: 30px 0 20px;
	}
	#topics-top .title-en01 {
		color: #FFFFFF;
	}
	#topics-top .topics_box {
		display: flex;
		justify-content: center;
		padding: 0 0 30px;
	}
		#topics-top .topics_box > div {
			position: relative;
			margin-left: 15px;
			width: 246px;
			text-align: center;
			background-color: #FFFFFF;
		}
		#topics-top .topics_box > div:nth-child(1) {
			margin-left: 0;
		}
			#topics-top .topics_box > div span {
				position: absolute;
				top: 0;
				left: 0;
				padding: 8px 0;
				width: 100%;
				color: #FFFFFF;
				font-size: 14px;
				line-height: 1.2em;
				background-color: #000000;
			}

#mainvisual-top {
	position: relative;
}
	#mainvisual-top #main_image {
		margin: 0 auto;
		max-width: 1160px;
	}
		#bxslider_top01 {
			z-index: 10;
		}
			#bxslider_top01 ul li:nth-child(1) {
				background-color: #F8EFE2;
			}
			#bxslider_top01 ul li:nth-child(2) {
				background-color: #000000;
			}
				#mainvisual-top #main_image img {
					max-width: none;
					width: 100%;
				}
/*				.photo {
					position: relative;
					overflow: hidden;
					width: 100%;
					max-width: 2560px !important;
					height: 570px;
				}
				.photo img {
					position: absolute;
					top: 50%;
					left: 50%;
					width: 100%;
					height: 100%;
					-webkit-transform: translate(-50%, -50%);
					-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
				}*/

.topinfo {
	margin: 0 auto;
	padding: 10px 0;
	width: 1160px;
	background-color: #D9D9D9;
	text-align: center;
	font-size: 2.2rem;
	font-weight: bold;
}
	.topinfo a {
		color: #c1272d;
	}

.news {
	font-size: 14px;
}
	.news .newsWrapper {
		margin: 0 auto;
		padding: 0 15px;
		max-width: 1000px;
		box-sizing: border-box;
	}
		.news .inner dl {
			padding: 5px;
			border-bottom: 1px dotted #b2b2b2;
		}
			.news .inner dt {
				width: 10.0em;
				display: table-cell;
				padding: 2px 0;
				vertical-align: top;
			}
			.news .inner dd:nth-child(2) {
				width: 140px;
				display: table-cell;
				vertical-align: top;
			}
			.news .inner dd:nth-child(3) {
				display: table-cell;
				padding: 2px 0;
				vertical-align: top;
			}
			.news .inner dl a {
				text-decoration: none;
			}
				.news .products {
					display: inline-block;
					padding: 2px 0;
					width: 100px;
					background-color: #DE0925;
					text-align: center;
					color: #FFFFFF;
				}
				.news .exhibition {
					display: inline-block;
					padding: 2px 0;
					width: 100px;
					background-color: #036EB5;
					text-align: center;
					color: #FFFFFF;
				}
				.news .notice {
					display: inline-block;
					padding: 2px 0;
					width: 100px;
					background-color: #7b7b7b;
					text-align: center;
					color: #FFFFFF;
				}

.contents_pic {
	display: table;
	margin: 0 auto;
	max-width: 1130px;
}
	.contents_pic .contents_box01 {
		display: table-cell;
		vertical-align: top;
		}
	.contents_pic .contents_box02 {
		display: table-cell;
		margin: 0 auto;
		vertical-align: top;
		}

.contact {
	padding: 20px 0;
	background-color: #DE0925;
	color: #FFFFFF;
}
	.contact .mail_img {
		margin-bottom: 10px;
	}
	.contact .title-en01 {
		color: #FFFFFF;
	}
	.contact .title-jp01 {
		color: #FFFFFF;
	}
	.contact p {
		padding: 10px 0;
		text-align: center;
	}
	.contact .btn_black {
		margin: 20px auto 20px;
		padding: 10px 0 10px 50px;
		width: 300px;
		background-color: #000000;
	}
		.contact .btn_black a {
			display: block;
			color: #FFFFFF;
			font-size: 18px;
			text-decoration: none;
		}
		.contact .btn_black a::after {
			padding-left: 40px;
			content: "\FF1E";
			font-size: 16px;
		}

#oshirase {
	padding: 20px 15px;
	background: #f2f2f2;
	text-align: center;
}
	#oshirase .oshirase-title {
		text-align: center;
		color: #c1272d;
		font-size: 2.2rem;
		font-weight: bold;
	}
	#oshirase .oshirase-cont {
		line-height: 1.6em;
		font-size: 1.6rem;
	}
	#oshirase .oshirase-link {
		text-align: center;
		font-size: 1.8rem;
		font-weight: bold;
	}

.contact_btn {
}
	.contact_btn ul {
		padding-top: 10px;
		width: 100%;
		height: 300px;
		list-style: none;
		font-size: 0;
	}
		.contact_btn ul li {
			display: inline-block;
			width: 50%;
			text-align: center;
		}

.t_center {
	text-align: center;
}

/* clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.show_pc {
	display: block;
}
.show_sp {
	display: none;
}

@media screen and (max-width: 979px) {

	main {
		padding-top: 0;
	}
			section {
				padding-bottom: 50px;
			}

		main .main_wrap {
			width: auto;
		}

	.title-en01 {
		font-size: 32px;
	}
		.title-en01 .title-jp01 {
			font-size: 14px;
		}
		.title-en01 .title-btn01 {
			position: static;
			margin-top:20px;
			padding: 10px 40px;
			background-color: #000000;
			text-align: center;
		}
			.title-en01 .title-btn01 a {
				display: block;
				color: #FFFFFF;
				text-decoration: none;
				font-weight: bold;
			}

	.products {
		margin-bottom: 0;
	}
		.products .products_pic {
			margin-bottom: 20px;
			background: none;
		}
		.products .products_pic ul {
			padding: 0 15px;
			width: 100%;
			height: auto;
		}
			.products .products_pic ul li {
				display: block;
				margin: 0 !important;
				padding: 0 0 20px;
				width: 100%;
				max-width: 100%;
				text-align: center;
				background-color: #FFFFFF;
			}

	#topics-top {
		position: static;
		font-size: 1.4rem;
	}
		#topics-top .topics_box {
			display: block;
			margin: 0 auto;
			padding: 10px 0 30px;
		}
			#topics-top .topics_box > div {
				margin: 0 auto 20px !important;
			}

	#mainvisual-top {
		margin-bottom: 0;
		padding-bottom: 0;
	}
			#mainvisual-top img {
				max-width: 100%;
				width: 100%;
			}

	.topinfo {
		margin: 50px auto 0;
		padding: 10px 15px;
		width: auto;
		font-size: 14px;
	}

	.news {
	}
		.news .newsWrapper {
			width: auto;
		}
			.news .inner dd:nth-child(3) {
				display: block;
				padding: 2px 0;
				vertical-align: top;
			}
				.news .products {
					width: 80px;
					font-size: 1.2rem;
				}
				.news .exhibition {
					width: 80px;
					font-size: 1.2rem;
				}
				.news .notice {
					width: 80px;
					font-size: 1.2rem;
				}

	.contents_pic {
		display: block;
	}
		.contents_pic .contents_box01 {
			display: block;
		}
		.contents_pic .contents_box02 {
			display: block;
		}

	.contact {
	}
		.contact .contact_btn ul {
			height: auto;
		}
			.contact .contact_btn ul li {
				display: inline-block;
				padding: 20px 0 30px;
				width: 100%;
				text-align: center;
			}
			.contact .contact02 {
				background-color: #DE0925;
			}
			.contact .contact03 {
				background-color: #9b061a;
			}

	#oshirase .oshirase-title {
		font-size: 1.6rem;
	}
	#oshirase .oshirase-cont {
		font-size: 1.4rem;
	}
	#oshirase .oshirase-link {
		font-size: 1.5rem;
	}

	footer {
		padding-top: 0px;
	}

	.show_pc {
		display: none;
	}
	.show_sp {
		display: block;
	}
}

@media screen and (max-width: 768px) {
	.oshirase .oshirase-title {
		font-size: 1.6rem;
	}
	.oshirase .oshirase-cont {
		font-size: 1.4rem;
	}
	.oshirase .oshirase-link {
		font-size: 1.5rem;
	}
}
