@charset "utf-8";
:root {
	--green: #0fb29e;
	--orange: #f15a24;
	--light-yellow: #fffbd7;
}
@media screen and (min-width:391px) {
	.page {
		font-size: 1.15em;
		margin: 0 auto;
		padding: 0 0 2em 0;
		width: 940px;
	}
	.page img {
		height: auto;
		display: block;
		margin: 0 auto;
	}
	.page h2 {
		margin: 0;
	}
	.page p {
		margin: 0 0 1em 0;
	}
	.page > div {
		padding: 40px 20px 0 20px;
	}
	.page h3 {
		background-color: var(--green);
		text-align: center; 
		color: #FFF;
		font-size: 1.5em;
		margin: 3em 0 1em;
		padding: 0.25em 0 0.15em 0.35em;
	}
	.page h4 {
		font-size: 1.5em;
		font-weight: bold;
	}
	.page .service_contents {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 2.5em 0 0;
	}
	.page .service_contents .service {
		background-color: var(--light-yellow);
		padding: 0 1.5em 0.25em;
		margin: 1em 0 1.5em;
	}
	.page .service_contents .service:nth-of-type(2),
	.page .service_contents .service:nth-of-type(3) {
		width: 49%;
		margin: 1em 0 0;
	}
	.page .service_contents .service h4 {
		display: table;
		margin: -1em auto 0.5em;
	}
	.page .mail_tokuten {
		background-color: var(--light-yellow);
		padding: 0.5em 0.8em 0.25em;
		margin: 2em 0;
	}
	.page .mail_tokuten h4 {
		font-size: 1.5em;
		padding: 0 0 0.25em 0.5em;
		display: table;
	}
	.page .mail_tokuten h4::before {
		content: "";
		width: 90px;
		height: 63px;
		display: inline-block;
		background-repeat: no-repeat;
		margin: -1em 0 0 -0.5em;
		background-size: contain;
		padding: 0 0 0 0.25em;
		vertical-align: text-bottom;
	}
	.page .mail_tokuten h4 span {
		border-bottom: solid 1px var(--green);
	}
	.page .mail_tokuten:nth-of-type(2) h4::before {
		background-image: url("/parts/contents/registration/tokuten1.png");
	}
	.page .mail_tokuten:nth-of-type(3) h4::before {
		background-image: url("/parts/contents/registration/tokuten2.png");
	}
	.page .mail_tokuten:nth-of-type(4) h4::before {
		background-image: url("/parts/contents/registration/tokuten3.png");
	}
	.page .mail_tokuten:nth-of-type(5) h4::before {
		background-image: url("/parts/contents/registration/tokuten4.png");
	}
	.page .howto {
		padding: 0 20px 0;
	}
	.page a.btn {
		text-decoration: none;
		color: #FFF;
		font-weight: bold;
		border-radius: 1em;
		text-align: center;
		margin: 30px auto 50px;
		padding: 0.5em 3.5em 0.5em 4em; 
		display: table;
		font-size: 1.3em;
	}
	.page a.btn--green {
		background-color: var(--green);
		border-bottom: solid 5px #0b7767;
	}
	.page a.btn--green:hover {
		background-color: #49c9b6;
		margin: 35px auto 50px;
		border-bottom: none;
	}
	.page a.btn--orange {
		background-color: var(--orange);
		border-bottom: solid 5px #a0391a;
	}
	.page a.btn--orange:hover {
		background-color: #f4b678;
		margin: 35px auto 50px;
		border-bottom: none;
	}
}
@media screen and (max-width:390px) {
	.page {
		font-size: 0.85em;
		padding: 0 0 2em 0;
	}
	.page h2 {
		margin: 0 0 0 0;
	}
	.page p {
		margin: 0 0 1em 0;
	}
	.page img {
		max-width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	.page > div {
		width: 92%;
		margin: 2.5em auto 0 auto;
	}
	.page > div:first-of-type {
		margin-top: 1.5em;
	}
	.page h3 {
		background-color: var(--green);
		text-align: center; 
		color: #FFF;
		font-size: 1.3em;
		margin: 1.5em 0 1em;
		padding: 0.25em 0 0.15em 0.35em;
	}
	.page h4 {
		font-size: 1.3em;
		font-weight: bold;
	}
	.page .service_contents {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 2.5em 0 0;
	}
	.page .service_contents .service {
		background-color: var(--light-yellow);
		padding: 0 1.5em 0.25em;
		margin: 1em 0 1.5em;
	}
	.page .service_contents .service:nth-of-type(2) h4,
	.page .service_contents .service:nth-of-type(3) h4 {
		margin: -1em auto 0.5em;
		width: 70%;
	}
	.page .service_contents .service h4 {
		display: table;
		margin: -1em auto 0.5em;
	}
	.page .mail_tokuten {
		background-color: var(--light-yellow);
		padding: 0.15em 0.8em 0.5em;
		margin: 2em 0;
	}
	.page .mail_tokuten h4 {
		font-size: 1.3em;
		display: grid;
	}
	.page .mail_tokuten h4::before {
		content: "";
		width: 60px;
		height: 60px;
		display: flow;
		background-repeat: no-repeat;
		margin: 0;
		background-size: contain;
	}
	.page .mail_tokuten h4 span {
		border-bottom: solid 1px var(--green);
		padding: 0 0 0 3.5em;
		margin: -3.5em 0 0 0.5em;
	}
	.page .mail_tokuten:nth-of-type(2) h4::before {
		background-image: url("/parts/contents/registration/tokuten1.png");
	}
	.page .mail_tokuten:nth-of-type(3) h4::before {
		background-image: url("/parts/contents/registration/tokuten2.png");
	}
	.page .mail_tokuten:nth-of-type(4) h4::before {
		background-image: url("/parts/contents/registration/tokuten3.png");
	}
	.page .mail_tokuten:nth-of-type(5) h4::before {
		background-image: url("/parts/contents/registration/tokuten4.png");
	}
	.page .howto {
	}
	.page a.btn {
		text-decoration: none;
		color: #FFF;
		font-weight: bold;
		border-radius: 1em;
		text-align: center;
		margin: 30px auto 50px;
		padding: 0.5em 3.5em 0.5em 4em; 
		display: table;
		font-size: 1.15em;
	}
	.page a.btn--green {
		background-color: var(--green);
		border-bottom: solid 5px #0b7767;
	}
	.page a.btn--orange {
		background-color: var(--orange);
		border-bottom: solid 5px #a0391a;
	}
}