  /* CSS Document */
.underlayer .content{
	margin-top: 40px;
}


#body .seihin-hd h2:before{
	content: "";
	background:url("/seihin/body/img/seihin-body-icon01.png") no-repeat;
	width: 71px;
	height: 73px;
	display: inline-block;
	background-size: contain;
	margin-right: 10px;
	vertical-align: bottom;
}

#kinou .seihin-hd h2:before{
	content: "";
	background:url("/seihin/kinou/img/seihin-kinou-icon01.png") no-repeat;
	width: 74px;
	height: 60px;
	display: inline-block;
	background-size: contain;
	margin-right: 10px;
	vertical-align: bottom;
}

#naigaisou .seihin-hd h2:before{
	content: "";
	background:url("/seihin/naigaisou/img/seihin-naigaisou-icon01.png") no-repeat;
	width: 80px;
	height: 44px;
	display: inline-block;
	background-size: contain;
	margin-right: 10px;
	vertical-align: bottom;
}

#safety .seihin-hd h2:before{
	content: "";
	background:url("/seihin/safety/img/seihin-safety-icon01.png") no-repeat;
	width: 55px;
	height: 55px;
	display: inline-block;
	background-size: contain;
	margin-right: 10px;
	vertical-align: bottom;
}

.seihin-hd{
	width: 100%;
	margin-bottom: 60px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.seihin-hd h2{
	margin-bottom: 10px;
}

.hd03{
	padding: 8px 10px;
	font-weight: 600;
	background: #F2F2F2;
}
#kinou .hd03{
	border-left: 8px solid #FFD746;
}
#naigaisou .hd03{
	border-left: 8px solid #43A55B;
}
#safety .hd03{
	border-left: 8px solid #0099E7;
}

.hd03 + .main-img{
	margin-top: 40px;
}

#body .seihin-hd:after{
	content: "";
	background:url("/seihin/body/img/seihin-body-img01.png") no-repeat top right;
	max-width: 363px;
	width: 100%;
	height: 164px;
	display: inline-block;
	background-size: contain;
}

#kinou .seihin-hd:after{
	content: "";
	background:url("/seihin/kinou/img/seihin-kinou-img01.png") no-repeat top right;
	max-width: 363px;
	width: 100%;
	height: 164px;
	display: inline-block;
	background-size: contain;
}

#naigaisou .seihin-hd:after{
	content: "";
	background:url("/seihin/naigaisou/img/seihin-naigaisou-img01.png") no-repeat top right;
	max-width: 363px;
	width: 100%;
	height: 164px;
	display: inline-block;
	background-size: contain;
}

#safety .seihin-hd:after{
	content: "";
	background:url("/seihin/safety/img/seihin-safety-img01.png") no-repeat top right;
	max-width: 363px;
	width: 100%;
	height: 164px;
	display: inline-block;
	background-size: contain;
}

.lead-txt{
	text-align: left;
	margin: 0 auto 40px;
	font-size: 1.8rem;
	font-weight: 500;
}

.seihin-area{
	margin: 60px auto;
	display: flex;
	flex-wrap: wrap;
}

.seihin-box{
	width: 48%;
	margin-right: 4%;
	margin-top: 10%;
}

.seihin-box:nth-child(2n){
	width: 48%;
	margin-right: 0;
}

.seihin-box .hd04{
	display: flex;
	align-items: flex-start;
	border-bottom: 2px solid #707070;
	padding-bottom: 10px;
	font-size: 2.2rem;
	margin-bottom: 15px;
	text-align: left;
	line-height: 1.4;
	font-weight: 700;
}
#safety .seihin-box#safety-01 .hd04:first-of-type{
	border-bottom: none;
	margin-bottom: 0;
}
#safety .seihin-box#safety-03 .hd04{
	margin-top: 40px;
}

.seihin-box p{
	text-align: left;
}

.seihin-box figure{
	margin-top: 20px;
}

.seihin-box h3{
	position: relative;
}
#body .seihin-box h3 span{
	background: #BC5194;
	color: #fff;
	font-weight: 700;
	width: 26px;
	height: 26px;
	display: inline-block;
	line-height: 26px;
	margin-top: 0.05em;
	margin-right: 10px;
	text-align: center;
	flex-shrink: 0;
}

#kinou .seihin-box h3 span{
	background: #FFD746;
	color: #fff;
	font-weight: 700;
	width: 26px;
	height: 26px;
	display: inline-block;
	line-height: 26px;
	margin-right: 10px;
	text-align: center;
}

#naigaisou .seihin-box h3 span{
	background: #43A55B;
	color: #fff;
	font-weight: 700;
	width: 26px;
	height: 26px;
	display: inline-block;
	line-height: 26px;
	margin-right: 10px;
	text-align: center;
}

#safety .seihin-box h3 span{
	background: #0099E7;
	color: #fff;
	font-weight: 700;
	width: 26px;
	height: 26px;
	display: inline-block;
	line-height: 26px;
	margin-right: 10px;
	text-align: center;
}
#safety .seihin-box h3 .next-generation{
	position: absolute;
	color: #0099E7;
	font-weight: 700;
	font-size: 20px;
	left: 36px;
	top: -30px;
}

.mt-parts .seihin-box:first-child,
.mt-parts .seihin-box:nth-child(2){
	margin-top: 0;
}
#safety .seihin-box h3 span.world_first,
#naigaisou .seihin-box h3 span.world_first,
#kinou .seihin-box h3 span.world_first,
#body .seihin-box h3 span.world_first{
	width: auto;
	height: auto;
	line-height: normal;
	margin: 7px 0 0 7px;
	border: 1px solid #f00;
	color: #f00;
	background-color: transparent;
	font-size: 13px;
	padding: 0 5px;
	word-break: keep-all;
}
p.notice{
	font-size: 14px;
}


@media screen and (max-width: 930px) {
	.hd01{
		font-size: 3vw;
	}
	
	.seihin-box .hd04{
		border-bottom: 1px solid #707070;
		font-size: 2.3vw;
	}
	
	.seihin-box p{
		font-size: 2vw;
	}
	
}
@media screen and (max-width: 700px) {
	.seihin-hd{
		display: block;
		margin-bottom: 20px;
	}
	#body .seihin-hd::after,
	#kinou .seihin-hd::after,
	#naigaisou .seihin-hd::after{
		margin-top: 10px;
	}
	#body .seihin-hd:after{
		background:url("/seihin/body/img/seihin-body-img01.png") no-repeat top right / contain;
	}
	.hd01{
		font-size: 2.4rem;
		display: flex;
		align-items: center;
	}
}

@media screen and (max-width: 600px) {
	.underlayer .content{
		margin-top: 0;
	}
	
	#body h2::before{
		width: 35px;
		height: 36px;
	}
	#kinou h2::before{
		width: 37px;
		height: 30px;
	}
	#naigaisou h2::before{
		width: 40px;
		height: 22px;
		margin-top: 3px;
	}
	#safety h2::before{
		width: 27px;
		height: 27px;
	}
	
	.lead-txt{
		font-size: 1.6rem;
		margin: 0 auto 60px;
	}
	
	.main-img{
	}
	.seihin-area{
		display: block;
	}
	.seihin-box + .seihin-box{
		margin-top: 20%;
	}
	.seihin-box,
	.seihin-box:nth-child(2n){
		width: 100%;
		margin-right: 0;
	}
	.seihin-box .hd04,
	.seihin-box .hd04 p {
		font-size: 2rem;
	}
	#body .seihin-box h3 span{
		line-height: 24px;
	}
	.seihin-box p {
		font-size: 1.4rem;
		text-align: justify;
	}
	#safety .seihin-box h3 .next-generation{
		font-size: 16px;
		top: -24px;
	}
	.mt-parts .seihin-box:nth-child(2){
		margin-top: 10%;
	}
}
@media screen and (max-width: 410px) {
	.seihin-hd{
		margin-bottom: 0;
	}
}

.related_link{
	margin-top: 10px;
}
.related_link a,
.related_link a:link{
	display: block;
	line-height: 1.5;
	color: #0F2188;
	text-decoration: underline;
}
.related_link a:hover,
.related_link a:link:hover{
	text-decoration: none;
}

.savingBox{
	width: 100%;
	border: 1px solid #0f2188;
	margin: 30px 0 40px;
	padding: 20px;
	position: relative;
	overflow: hidden;
}
body#naigaisou .savingBox{
	border: 1px solid #43A55B;
}
body#body .savingBox{
	border: 1px solid #BC5194;
}

	.savingBox .saving_bg{
		position: absolute;
		top: 0;
		left: 0;
		text-align: center;
		background-color: #0F2188;
		width: 154px;
		height: 34px;
		clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
	}
	body#naigaisou .savingBox .saving_bg{
		background-color: #43A55B;
	}
	body#body .savingBox .saving_bg{
		background-color: #BC5194;
	}
	
	.savingBox span.jirei{
		color: #fff;
		padding: 3px 10px 0 0px;
		display: block;
		font-size: 16px;
		font-weight: bold;
	}

	.savingBox_bd{
		text-align: left;
	}
	
	.saving_l{
		max-width: 600px;
		width: 100%;
		float: left;
		margin-top: 25px;
		
	}
	
	.saving_n{
		width: 100%;
		margin-top: 0;
	}
	
	.saving_l.topics{
		max-width: 100%;
		width: 100%;
		
	}
		.savingBox .ttl_txt{
			font-weight: bold;
			margin-bottom: 10px;
			text-indent: 0 !important;
		}
		.savingBox .ttl_txt span{
			display: inline-block;
			border: 1px solid #e95098;
			color: #e95098;
			font-weight: 700;
			font-size: 12px;
			padding: 2px 5px;
			margin-left: 5px;
		}
		
	.saving_r{
		float: right;
		margin-top: 25px;
	}

.savingBox .savingBox_bd .ov {
  padding: 30px 0;
}
.savingBox .savingBox_bd .flex {
	display: flex;
	gap: 30px;
}
.savingBox .savingBox_bd .flex .flex_txt{
	width: calc(100% - 30px - 403px);
}
.savingBox .savingBox_bd .flex .flex_txt .notice{
	font-size: 14px;
	text-indent: -0.8em;
	padding-left: 0.8em;
}
.savingBox .savingBox_bd .flex .flex_img{
	max-width: 403px;
	width: 100%;
}
.savingBox .savingBox_bd .flex .flex_img p{
	font-size: 14px;
	margin-top: 5px;
}

@media screen and (max-width: 768px) {
	.savingBox .savingBox_bd .flex {
		display: block;
	}
	.savingBox .savingBox_bd .flex .flex_txt{
		width: 100%;
	}
	.savingBox .savingBox_bd .flex .flex_img{
		margin: 20px auto 0;
	}
}