@charset "utf-8";

html > body > main > div.contents > p.intro {
	margin-top: 3.333%;
	text-align: center;
	line-height: 1.6;
	font-size: 1.8rem;
}
html > body > main > div.contents > ul.intro {
	margin: 2.5% auto;
	padding: 1.667%;
	max-width: 900px;
	box-sizing: border-box;
	background-color: rgba(241,241,241,0.90);
	font-size: 1.8rem;
}
html > body > main > div.contents > ul.intro > li {
	margin-bottom: 0.3em;
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.4;
}
html > body > main > div.contents > ul.intro > li:last-child {
	margin-bottom: 0;
}
html > body > main > div.contents > ul.intro + section {
	margin-top: 8.889%;
}
main > div.contents > section.press > div.body {
	padding-top: 7%;
	padding-bottom: 7%;
	border-top: solid 3px rgba(216,216,216,1.00);
	border-bottom: solid 3px rgba(216,216,216,1.00);
}
main > div.contents > section > div.body > div {
	margin-inline: auto;
	max-width: 442px;
	padding-top: 0;
}
main > div.contents > section.press > div.body > div {
	margin-top: -115px;
}
main > div.contents > section > div.body > h2 {
	line-height: 1.2;
	text-align: left;
}
main > div.contents > section > div.body > h2 > span {
	display: block;
	font-size: 1.4rem;
}

main > div.contents > section > div.body > h3 {
	max-width: 720px;
	padding: 5px;
	box-sizing: border-box;
	margin-inline: auto;
	font-weight: bold;
	font-size: 2.4rem;
	color: var(--colorW1);
	background-color: var(--colorO2);
	@media screen and (max-width: 600px) {
		font-size: 4.8vw !important;
	}
	&.free {
		background-color: var(--colorB6);
	}
}

main > div.contents > section > div.body > div > p.button {
	&:first-child {
		margin-top: 7%;
	}
	/* &+p.button {
		&>a {
			color: var(--colorO1);
			background-color: rgba(255,255,255,1.0);
		}
	} */
}

main > div.contents > section > div.body > div > p.button > a {
	padding: 2% 2%;
	border-radius: 15px;
	border: solid 3px var(--colorO1);
	display: inline-block;
	color: rgba(255,255,255,1.00);
	background-color: var(--colorO1);
	width: 100%;
	font-size: 2.5rem;
	font-weight: bold;
	text-decoration: none;
	white-space: nowrap;
	box-sizing: border-box;
	text-align: center;
	&.free {
		border-color: var(--colorB6);
		background-color: var(--colorB6);
	}
	&.press {
		border-color: var(--colorP1);
		background-color: var(--colorP1);
	}
}

main > div.contents > section > div.body > div > p.button > a:hover {
	opacity: 0.8;
}

main > div.contents > section > div.body > ul.note {
	padding-left: 234px;
	@media screen and (max-width: 768px) {
		max-width: 442px;
		margin-inline: auto;
		padding-left: 0;
	}
	&>li {
		margin-bottom: 0.6em;
		line-height: 1.4;
		padding-left: 1.3em;
		text-indent: -1.3em;
		&::before {
			content: "※ ";
			background-color: transparent;
			display: inline;
			position: static;
			width: auto;
			height: auto;
			border-radius: 0;
		}
		&>em {
			font-style: normal;
			color: var(--colorR1);
		}
	}
}

main > div.contents > section.second > div.body > div {
	position: relative;
	z-index: 1;
	&+p.note {
		padding-left: 1.3em;
		text-indent: -1.3em;
		>a {
			color:var(--colorB1);
		}
	}
}
html > body > main > div.contents > div.note {
	margin: 3.333% auto;
	padding: 2% 0;
	max-width: 900px;
	border-top: solid 2px rgba(211,211,211,1.00);
	border-bottom: solid 2px rgba(211,211,211,1.00);
}
html > body > main > div.contents > div.note > p {
	line-height: 1.4;
	font-size: 1.4rem;
}
main > div.contents > div.privacy {
	margin: 2.5% auto;
	max-width: 900px;
	font-size: 1.5rem;
}
main > div.contents > div.privacy > h2 {
	margin-top: 1.5em;
	margin-bottom: 0.5em;
	font-size: 1.6rem;
	font-weight: bold;
	border-top: none;
	position: initial;
}
main > div.contents > div.privacy > p {
	margin-bottom: 0.8em;
	line-height: 1.6;
}
main > div.contents > div.privacy > ul {
	margin-top: 0.8em;
	margin-bottom: 0.8em;
	margin-left: 1.5em;
}
main > div.contents > div.privacy > ul > li {
	margin-bottom: 0.3em;
	padding-left: 1em;
	line-height: 1.3;
	text-indent: -1em;
}
main > div.contents > div.privacy > ul > li::before {
	content: "・";
}
strong {
    font-weight: bold;
}

@media screen and (max-aspect-ratio: 11/9) {
	main > div.contents > section > div.body > div {
		margin-left: 40%;
	}
	main > div.contents > section.press > div.body > div {
		margin-top: 50px;
	}
	main > div.contents > section > div.body > div > p.button > a {
		font-size: 2.4rem;
	}
	main > div.contents > section > div.body > div > p.button > a:hover {
		opacity: 1.0;
	}
}
@media screen and (max-width: 600px) {
	html > body > main > div.contents > p.intro {
		text-align: left;
		line-height: 1.6;
		font-size: 1.7rem;
	}
	html > body > main > div.contents > ul.intro {
		padding: 4vw;
		font-size: 1.7rem;
	}
	main > div.contents > section > div.body {
		display: block;
	}
	main > div.contents > section > div.body > div,
	main > div.contents > section.second > div.body > div {
		margin-left: 0;
		padding-top: 0;
		margin-top: 0;
	}
	main > div.contents > section > div.body > div > p.button {
		margin-left: 0;
	}
	main > div.contents > section > div.body > div > p.button > a {
		font-size: 4.8vw;
	}
	main > div.contents > section > div.body > div > p.button + p.button > a {
		font-size: 4.3vw;
	}
	main > div.contents > div.privacy > ul {
		margin-top: 0.8em;
		margin-bottom: 0.8em;
		margin-left: 0.5em;
	}
}