/* page_ttl */
.page_ttl_box {
	background: #ffffff;
}
.page_ttl_inner {
	padding: 30px 0;
	width: 830px;
	margin: auto;
	/*background: url(../img/page_icon.jpg) no-repeat right 33px;*/
}
.page_ttl {
	font-weight: 500;
	font-size: 30px;
	margin-top: -4px;
}
.page_ttl_txt {
	margin-top: 16px;
	line-height: 1.6;
	font-size: 20px;
}

@media screen and (max-width: 1052px) {
	.page_ttl_box {
		padding: 15px;
	}
	.page_ttl_inner {
		padding: 0;
		width: 100%;
		background-position: right 2px;
		background-size: 47px auto;/* ページごとに調整 */
	}
}

@media screen and (max-width: 640px) {
	.page_ttl {
		font-weight: 600;
		font-size: 15px;
		margin-top: 2px;
	}
	.page_ttl_txt {
		margin-top: 12px;
		line-height: 1.7;
		font-size: 12px;
	}
}

/* function_detail */
.function_detail {
	background: #edeff1;
}
.function_detail_inner {
	width: 830px;
	margin: auto;
}
.function_detail_section {
	padding: 90px 0;
}
.function_detail_section.is_ptnone {
	padding-top: 0;
}
.function_detail_ttl {
	color: #282a2f;
	font-size: 40px;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 50px;
	margin-top: -10px;
	/*余白調整
	((40px * 1.5) - 40px)/2 = 10
	((font-size * line-height) - font-size) /2 だけ戻す
	*/
}
.function_imgbox {
	display: table;
	width: 100%;
	margin: 30px 0;
}
.fuction_imgbox_img {
	width: 430px;
	display: table-cell;
	padding-right: 30px;
	box-sizing: border-box;
	vertical-align: top;
}
.fuction_imgbox_txt {
	vertical-align: top;
	display: table-cell;
	font-size: 14px;
	line-height: 1.85;
}
.fuction_imgbox_notes {
	font-size: 12px;
	color: #51595f;
	line-height: 1.5;
	margin-top: 22px;
	padding-left: 10px;
}
.function_illustbox {
	margin: 30px 0;
	display: table;
	width: 100%;
}
.function_illust {
	display: table-cell;
	width: 50%;
	box-sizing: border-box;
}
.function_illust:nth-child(odd) {
	padding-right: 5px;
}
.function_illust:nth-child(even) {
	padding-left: 5px;
}
.function_illust_ttl {
	text-align: center;
	background: #0b2669;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	padding: 8px 0;
	line-height: 1.8125;
}

.fuction_series_tb {
	table-layout: fixed;
	width: 100%;
	background: #ffffff;
	border: 1px solid #b7c4cd;
}
.fuction_series_tb th,
.fuction_series_tb td {
	text-align: center;
	vertical-align: middle;
	font-weight: 700;
	color: #b7c4cd;
	padding: 10px 0;
}
.fuction_series_tb .is_compatible {
	background: #282a2f;
	color: #ffffff;
}
.fuction_series_tb th {
	font-size: 16px;
	line-height: 1.81;
	border-bottom: 1px solid #b7c4cd;
}
.fuction_series_tb td {
	line-height: 1.42;
	border-left: 1px solid #b7c4cd;
}

@media screen and (max-width: 1052px) {
	.function_detail_inner {
		width: 100%;
		padding: 0 15px 22px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 640px) {
	.function_detail_section {
		padding: 40px 0;
	}
	.function_detail_ttl {
		font-size: 17px;
		margin-bottom: 18px;
		margin-top: -4px;
		/*余白調整
		((17px * 1.5) - 17px)/2 = 4.25
		((font-size * line-height) - font-size) /2 だけ戻す
		*/
	}
	.function_imgbox {
		margin: 18px 0;
	}
	.fuction_imgbox_img {
		width: 100%;
		display: block;
		padding-right: 0;
		padding-bottom: 15px;
	}
	.fuction_imgbox_txt {
		display: block;
		font-size: 12px;
		line-height: 1.75;
	}
	.fuction_imgbox_notes {
		font-size: 9px;
		line-height: 1.3;
		margin-top: 15px;
		padding-left: 0;
	}
	.function_illustbox {
		margin: 18px 0;
	}
	.function_illust {
		display: block;
		width: 100%;
		margin-top: 15px;
	}
	.function_illust:first-child {
		margin-top: 0;
	}
	.function_illust:nth-child(odd) {
		padding-right: 0;
	}
	.function_illust:nth-child(even) {
		padding-left: 0;
	}
	.function_illust_ttl {
		font-size: 12px;
		padding: 4px 0;
		line-height: 1.75;
	}

	.fuction_series_tb th,
	.fuction_series_tb td {
		padding: 5px;
	}
	.fuction_series_tb th,
	.fuction_series_tb td {
		font-size: 10px;
	}
}

/* productlist_box */
.productlist_box {
	padding: 90px 0;
	background: #ffffff;
}
.productlist_box_inner {
	width: 830px;
	margin: auto;
}
.productlist_box_ttl {
	text-align: center;
	font-size: 30px;
	margin-top: -5px;
	margin-bottom: 55px;
}
.productlist_ttl {
	background: #b7c4cd;
	color: #fff;
	text-align: center;
	height: 60px;
	display: table;
	width: 100%;
	font-weight: 600;
	margin-bottom: 10px;
}
.productlist_ttl.is_compatible {
	background: #282a2f;
}
.productlist_ttl > span {
	display: table-cell;
	vertical-align: middle;
	height: 3em;
}

.productlist_tb {
	width: 100%;
	table-layout: fixed;
	border: 1px solid #b7c4cd;
}
.productlist_tb th,
.productlist_tb .productlist_name {
	vertical-align: middle;
	text-align: center;
	color: #b7c4cd;
	padding: 15px;
	border-left: 1px solid #b7c4cd;
	border-bottom: 1px solid #b7c4cd;
	font-weight: 700;
}
.productlist_tb .is_compatible {
	background: #282a2f;
	color: #ffffff;
}
.productlist_tb td {
	vertical-align: top;
	border-left: 1px solid #b7c4cd;
	padding: 10px 20px;
	line-height: 1.42;
}
.productlist_linklist li a {
	font-weight: 600;
	color: #282a2f;
	position: relative;
}
.productlist_linklist li a:not([href]) {
	display: none;
}
.productlist_linklist li a:before {
	line-height: 2.07;
	content: "\f105";
	font-family: FontAwesome;
	margin-right: 5px;
}
.productlist_linklist li {
	line-height: 2.1;
}
.productlist_linklist li a:not([href]):after {
	display: none;
}
.productlist_linklist a:not([href]):hover,
.productlist_linklist a:not([href]):focus {
	opacity: 1!important;
}
@media screen and (max-width: 640px) {
	.productlist_box {
		padding: 60px 15px;
		background: #ffffff;
	}
	.productlist_box_inner {
		width: 100%;
	}
	.productlist_box_ttl {
		font-size: 15px;
		margin-top: -7px;
		line-height: 1.7;
		margin-bottom: 20px;
	}
	.productlist_linklist li {
		line-height: 1;
		margin-bottom: 5px;
	}
	.productlist_linklist li a:before {
		margin-right: 2px;
	}
	.productlist_tb th,
	.productlist_tb .productlist_name {
		padding:10px 5px;
		font-size: 10px;
	}
	.productlist_tb td {
		padding:10px 5px;
		font-size: 10px;
	}
}

/* function_index */
.function_index {
	background: #b7c4cd;
	position: relative;
	padding: 60px 0;
}
.function_index_ttl {
	position: absolute;
	top: 0;
	left: 50%;
	font-size: 20px;
	border-radius: 12px;
	background: #b7c4cd;
	padding: 12px 35px;
	margin-left: -104px;
	margin-top: -25px;
}
.function_index_inner {
	width: 830px;
	margin: auto;
}
.function_subttl {
	text-align: center;
	font-size: 14px;
	margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
	.function_index {
		padding: 40px 0;
	}
	.function_index_ttl {
		font-size: 12px;
		border-radius: 6px;
		padding: 5px 18px;
		margin-left: -59px;
		margin-top: -12px;
	}
	.function_index_inner {
		width: 100%;
		padding: 0 15px;
		box-sizing: border-box;
	}
	.function_subttl {
		font-size: 12px;
		margin-bottom: 8px;
		margin-top: 2px;
	}
}
