main .container {
	margin:0 auto 6em;
}

main h1,
main h2 {
	text-align: center;
	font-family: "Noto Sans", sans-serif;
	letter-spacing: 0.1em;
	font-size: 1.7em;
	color: var(--BaseColor);
	margin: 2em 0 1em;
}

main h1 span,
main h2 span {
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size:0.5em;
	letter-spacing: 0.05em;
}

main h2 {
	margin:2em 0 1.5em;
	font-size: 1.4em;
	font-weight:600;
	position: relative;
}

main h2 span {
	display: inline-block;
	font-weight:600;
	font-size: 1em;
}

main img {
	width:100%;
	height:30vw;
	max-height:300px;
	object-fit: cover;
	display: block;
	margin:0 auto;
}

main p.lead {
	margin:3em auto 5em;
	line-height: 1.8;
	text-align: justify;
	letter-spacing: 0.05em;
}

main p.lead strong {
	background: linear-gradient(transparent 50%, #FF9 50%);
	font-weight: 600;
}

main .concept_inner {
	background: #F5F5F5;
	padding:0 2em;
	text-align: left;
	display: block;
	overflow: hidden;
	width:100%;
	box-sizing: border-box;
	max-width: 910px;
	margin:0 auto;
}

main .concept_inner p {
	margin:3em auto 5em;
	line-height: 1.8;
	text-align: justify;
	letter-spacing: 0.05em;
	color:var(--BaseColor);
}

/*
main #advantage {
	border-top:solid 1px #CCC;
}

main #advantage ul li {
	margin-bottom:2em;
	line-height: 1.8;
	text-align: justify;
	letter-spacing: 0.03em;
}

main #advantage h3 {
	font-size: 1.3em;
	font-weight: 600;
}

main #advantage h3 i {
	margin-right:0.3em;
	font-weight: 600;
}
*/

@media print, screen and (min-width: 480px) {

main .concept_inner {
	padding:0 3em;
}

}


@media print, screen and (min-width: 640px) {

main h1 {
	font-size:2em;
}

main h2 {
	font-size: 1.4em;
}

main .concept_inner {
	padding:0 4em;
}

}


@media print, screen and (min-width: 768px) {

main h2 {
	margin:3em 0 1.5em;
	/*padding-top:3em;*/
}

main #advantage ul {
	display: flex;
	flex-wrap:wrap;
	gap:32px 48px;
	align-items: flex-start;
	justify-content: center;
}

main #advantage ul li {
	width:calc((100% - 48px) / 2);
	margin-bottom:0;
}

main #advantage h3 {
	font-size: 1.2em;
}

}


@media print, screen and (min-width: 960px) {

}


@media print, screen and (min-width: 1200px) {

main p.lead {
	text-align: center;
}

main #advantage {
	width:90%;
	margin:0 auto;
	display: block;
}

main #advantage ul {
	gap:42px 60px;
	max-width: 1080px;
	margin:0 auto;
}

main #advantage ul li {
	width:calc((100% - 60px) / 2);
}

}


@media print, screen and (min-width: 1400px) {



}

