@charset "utf-8";
#main {
	position: relative;
}
.mainVisual {
	position: relative;
}
.mainVisual .phoInfo {
	position: relative;
}
.mainVisual .phoInfo > img {
	width: 100%;
}
.mainVisual .whiteBg {
	position: absolute;
	right: 41px;
	bottom: 40px;
	max-width: 465px;
	padding: 36px 47px;
	box-sizing: border-box;
	background-color: #fff;
	z-index: 1;
}
.mainVisual .whiteBg p {
	color: #000;
	line-height: 1.85;
	letter-spacing: 0.06em;
}
.mainVisual .whiteBg .ttl {
	margin-bottom: 15px;
	font-size: 3rem;
	font-weight: 500;
	line-height: 1.56;
	letter-spacing: 0.11em;
}
.news {
	padding: 23px 38px 91px;
	background-color: #000;
}
#main .topLink {
	font-size: 1.1rem;
    letter-spacing: 0.08em;
    position: absolute;
    top: 15px;
    left: 28px;
}
#main .topLink a {
	padding-right: 11px;
	color: #fff;
	display: inline-block;
	background: url("/img/common/icon12.png") no-repeat top 7px right;
	background-size: 6px auto;
}
#main .topLink a:hover {
	opacity: 0.7;
}
.news .newsBox {
	width: 902px;
	margin: 37px auto 0;
}
.news h2 {
	font-size: 2.4rem;
	color: #fff;
	font-weight: 500;
	letter-spacing: 0.15em;
}
.news .newsInfo {
	margin-top: 8px;
	width: calc(100% - 181px);
}
.news .newsInfo p {
	margin-bottom: 26px;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.78;
	letter-spacing: 0.06em;
}
.news .newsInfo p:last-child {
	margin-bottom: 0 !important;
}
.news .newsInfo .time {
	margin-bottom: 14px;
	color: rgba(255, 255, 255, 0.7);
	letter-spacing: 0.06em;
}
#main .product {
	padding-bottom: 111px;
}
#main .innerBox {
	margin-bottom: 195px;
}
#main .innerBox .pho {
	margin-bottom: 72px;
}
#main .innerBox .pho img {
	width: 100%;
}
#main .innerBox .textBox {
	text-align: center;
}
#main .innerBox .textBox > div {
	display: inline-block;
	text-align: left;
}
#main .innerBox p {
	font-size: 1.3rem;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.15em;
	line-height: 2.23;
}
#main .innerBox h3 {
	margin-bottom: 22px;
	font-weight: 600;
	font-size: 2.5rem;
	color: #fff;
	letter-spacing: 0.14em;
}
@media all and (max-width: 767px) {
	.mainVisual {
		padding-top: 17px;
	}
	.mainVisual .whiteBg {
		position: static;
		max-width: inherit;
		padding: 26px 51px 30px;
	}
	.mainVisual .whiteBg p {
		font-size: 1.2rem;
		letter-spacing: 0.05em;
		line-height: 1.93;
	}
	.mainVisual .whiteBg .ttl {
		margin-bottom: 7px;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.74;
		letter-spacing: 0.08em;
	}
	.news {
		padding: 58px 25px 54px;
		position: relative;
	}
	#main .topLink {
		left: 25px;
		z-index: 1;
	}
	.news .newsBox {
		width: auto;
		display: block;
		margin: 0;
	}
	.news h2 {
		font-size: 1.8rem;
		font-weight: 500;
		letter-spacing: 0.15em;
	}
	.news .newsInfo {
		margin-top: 27px;
		width: auto;
	}
	.news .newsInfo p {
		margin-bottom: 25px;
		font-size: 1.2rem;
		letter-spacing: 0.03em;
		line-height: 2.08;
	}
	.news .newsInfo .time {
		margin-bottom: 2px;
		font-size: 1.2rem;
		letter-spacing: 0.06em;
		color: rgba(255, 255, 255, 0.7);
	}
	.news .newsInfo p:last-child {
		margin-bottom: 0;
	}
	#main .product {
		padding-bottom: 67px;
	}
	#main .innerBox {
		margin-bottom: 106px;
	}
	#main .innerBox .pho {
		margin-bottom: 37px;
	}
	#main .innerBox .textBox {
		text-align: left;
	}
	#main .innerBox .textBox > div {
		display: block;
	}
	#main .innerBox h3 {
		margin-bottom: 17px;
		font-size: 1.6rem;
		font-weight: 600;
		letter-spacing: 0.14em;
	}
	#main .innerBox p {
		font-size: 1.2rem;
		letter-spacing: 0.08em;
		line-height: 2.166;
	}
}