.p-mv {
	overflow: hidden;
	padding-bottom: 60%;
	background-size: 100% 100%;
	background-position: center center;
	transition: background-size 200ms linear;
	animation-delay: 0.3s;
}

.p-about {
	padding-top: 1.6rem;
	margin-bottom: 10.4rem;
	position: relative;
}

.p-about:before {
	content: "";
	width: 23.9rem;
	height: 19.2rem;
	background: url(../images/common/bg_01.png) no-repeat top center;
	background-size: cover;
	position: absolute;
	right: -10.1rem;
	top: -4.3rem;
	z-index: -2;
}

.p-about__wrap {
	margin-top: 5rem;
}

.p-about__desc {
	font-size: 2rem;
	line-height: 1.3;
	letter-spacing: 0.08em;
	font-family: "Zen Old Mincho", serif;
}

.p-about__view {
	text-align: right;
	margin-top: 3rem;
}

.p-product__ttl {
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 5rem;
}

.p-product__ttl:before {
	content: "";
	width: 23.9rem;
	height: 19.2rem;
	background: url(../images/common/bg_01.png) no-repeat top center;
	background-size: cover;
	position: absolute;
	left: -4.1rem;
	bottom: -0.3rem;
	z-index: -2;
}

.p-product__ttl .hline01 {
	margin-bottom: 0;
}

.p-product__ttl-num {
	font-size: 1.2rem;
	font-weight: 600;
}

.p-product__ttl-view {
	padding-left: 1rem;
	margin-bottom: 0;
	position: relative;
	z-index: 1;
}

@media (min-width: 768px) {

.p-about {
	padding-top: 3.6rem;
	margin-bottom: 24rem;
}

.p-about__wrap {
	display: flex;
	justify-content: space-between;
	margin-top: 12rem;
}

.p-about__desc {
	font-size: 2.8rem;
}

.p-about__info {
	width: 50%;
}

.p-product {
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.p-product::before {
	content: "";
	background-color: #E0E0E0;
	position: absolute;
	right: calc(100% - 26.3rem);
	top: 0;
	bottom: 0;
	width: 100vw;
	z-index: 2;
}

.p-product__ttl {
	width: 26.3rem;
	flex-shrink: 0;
	flex-direction: column;
	max-height: 28rem;
	margin-bottom: 0;
	z-index: 5;
}

.p-product__ttl:after {
	content: "";
	background: url("../images/common/bg_line_02.png") repeat-y left top;
	background-size: 2px auto;
	opacity: 0.3;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 145%;
}

.p-product__ttl:before {
	left: -8rem;
	bottom: -12.3rem;
}

.p-product-wrap {
	width: calc(100% - 26.3rem);
}

}

@media (max-width: 767px) {

.p-mv {
	margin: 0 -1.2rem;
	min-height: 52rem;
}

.p-product__ttl-view {
	margin-top: 3rem;
	text-align: right;
}

.p-product-wrap {
	margin-right: -2.4rem;
}

}

