@charset "UTF-8";

.p-ryowa-contents {
	position: relative;
	max-width: 1080px;
	margin-inline: auto;
	padding: 100px 10px 80px;
	z-index: 1;
}
.p-ryowa-contents::before {
	content: "";
	position: absolute;
	inset: 10px;
	background: url(../../../img/launch-special/261002/ryowa_logo.jpg) no-repeat top 33% left / 100%;
	z-index: -1;
	opacity: 0.1;
}
.p-ryowa-ttl {
		font-size: calc(42 / var(--root-fz) * 1rem);
		font-weight: 500;
		text-align: center;
		letter-spacing: 0.1em;
}
.p-ryowa-txt {
	font-size: calc(26 / var(--root-fz) * 1rem);
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 2.4;
	padding-inline: min(80px, calc(80 / 1200 * 100vw));
}
.p-ryowa-txt-italic {
	font-style: italic;
}
@media screen and (max-width: 768px) {
		.p-ryowa-contents {
			padding: calc(60 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(40 / var(--design-width) * 100vw);
		}
    .p-ryowa-ttl {
				font-size: calc(26 / var(--design-width) * 100vw);
		}
		.p-ryowa-txt {
			font-size: calc(18 / var(--design-width) * 100vw);
			padding-inline: calc(24 / var(--design-width) * 100vw);
		}
		.p-ryowa-contents::before {
			inset: calc(6 / var(--design-width) * 100vw);
			background: url(../../../img/launch-special/261002/ryowa_logo.jpg) no-repeat top calc(560 / var(--design-width) * 100vw) left / 100%;
	}
}

.p-ryowa-about {
	border-top: 2px solid #ccc;
	margin-top: 180px;
	padding-top: 50px;
	max-width: 900px;
	margin-inline: auto;
}
.p-ryowa-about-ttl {
	max-width: 230px;
}
.p-ryowa-about-txt {
	font-size: calc(18 / var(--root-fz) * 1rem);
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.p-ryowa-about {
		border-top: calc(1 / var(--design-width) * 100vw) solid #ccc;
		margin-top: calc(100 / var(--design-width) * 100vw);  
		padding-top: calc(40 / var(--design-width) * 100vw);  
	}
	.p-ryowa-about-ttl {
		max-width: calc(180 / var(--design-width) * 100vw);
	}
	.p-ryowa-about-txt {
		font-size: calc(16 / var(--design-width) * 100vw);
	}
}

.p-ryowa-about-list  {
	display: grid;
	grid-template-columns: repeat(4, auto);
	grid-template-rows: 180px;
	justify-content: center;
	column-gap: 80px;
}
.p-ryowa-about-list li {
	padding-bottom: 30px;
}
.p-ryowa-about-img {
	height: 100%;
}
.p-ryowa-about-img img {
	border: 1px solid #efefef;
	display: block;
	width: auto;
	height: 100%;
	object-fit: contain;
	margin-inline: auto;
}
.p-ryowa-about-img figcaption {
	font-size: calc(15 / var(--root-fz) * 1rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.06em;
	margin-top: 0.8em;
}
@media  screen and (max-width: 1080px) {
	.p-ryowa-about-list  {
		grid-template-columns: repeat(2, auto);
		grid-template-rows: 180px 180px;
		column-gap: 80px;
		row-gap: 40px;
	}
}
@media  screen and (max-width: 768px) {
	.p-ryowa-about-list  {
		grid-template-rows: calc(160/ var(--design-width) * 100vw) calc(160/ var(--design-width) * 100vw);
		column-gap: calc(80 / var(--design-width) * 100vw);
		row-gap: calc(40 / var(--design-width) * 100vw);
	}
	.p-ryowa-about-list li {
		padding-bottom: calc(30 / var(--design-width) * 100vw);
	}
	.p-ryowa-about-img figcaption {
		font-size: calc(14 / var(--design-width) * 100vw);
	}
}

.p-ryowa-contents-hd {
  font-size: calc(32 / var(--root-fz) * 1rem);
}
@media  screen and (max-width: 768px) {
  .p-ryowa-contents-hd {
    font-size: calc(26 / var(--root-fz) * 1rem);
  }
}