@charset "utf-8";
:root {
	--page-green: #238A6A;
	--page-black: #232323;
	--page-light-gray: #ECF2F7;
	--page-red: #c40000;
}
@media screen and (min-width:391px) {
	.page {
		font-size: 1.15em;
		margin: 0 auto;
		padding-bottom: 2em;
		width: 940px;
	}
	.page .link {
		background-color: #449C80;
		border: solid 2px var(--page-black);
		margin: 1.5em auto 0 auto;
		transition: background-color 0.3s 0s ease;
		width: 480px;
	}
	.page .link:hover {
		background-color: var(--page-green);
	}
	.page .link a {
		display: block;
		padding: 0.85em 0;
		text-decoration: none;
		width: 100%;
	}
	.page .link a p {
		color: #FFF;
		font-weight: bold;
		text-align: center;
		margin: 0;
	}
	.page .link a p:nth-of-type(1) {
		font-size: 1.15em;
		line-height: 1.4;
	}
	.page .link a p:nth-of-type(2) {
		font-size: 0.85em;
	}
	.page .link a img {
		display: inline-block;
		padding-left: 0.5em;
		vertical-align: middle;
	}
	.page .link a img.arrow {
		width: 1.1em;
	}
	.page .link a img.win {
		width: 1.5em;
	}
	.page h2 {
		margin: 0 0 1em 0;
	}
	.page h3 {
		align-items: flex-start;
		display: flex;
		font-size: 1.85em;
		justify-content: flex-start;
		margin: 0 0 0.75em 0;
	}
	.page h3::before {
		background-color: var(--page-green);
		content: "";
		display: block;
		height: 2px;
		margin-top: 0.7em;
		transition: width 0.8s 0s ease;
		width: 0;
	}
	.page h3.isActive::before {
		width: 170px;
	}
	.page h3 span {
		display: block;
		line-height: 1.5;
		margin-left: 1em;
	}
	.page > .block {
		margin-top: 4em;
	}
	.page > .block > .contents {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.page > .block > .contents .photo {
		width: 260px;
	}
	.page > .block > .contents .photo + div {
		width: 65%;
	}
	.page > .block > .contents .photo + div p {
		margin: 0 0 0.9em 0;
	}
	.page > .block.license > .contents {
		background-color: var(--page-light-gray);
		display: block;
		padding: 30px;
	}
	.page > .block.license > .contents > .case {
		display: flex;
		justify-content: center;
	}
	.page > .block.license > .contents > .case > div {
		width: 47%;
	}
	.page > .block.license > .contents > .case > div:nth-of-type(1) {
		border-right: dashed 6px #FFF;
		margin-right: 30px;
		padding-right: 30px;
	}
	.page > .block.license > .contents > .case .img {
		align-items: center;
		border-radius: 50%;
		display: flex;
		height: 180px;
		justify-content: center;
		margin: 0 auto 1em auto;
		width: 180px;
	}
	.page > .block.license > .contents > .case > div:nth-of-type(1) .img {
		background-color: #FFF;
	}
	.page > .block.license > .contents > .case > div:nth-of-type(2) .img {
		background-color: #465B5B;
	}
	.page > .block.license > .contents > .case .img span {
		display: block;
		width: 160px;
	}
	.page > .block.license dt {
		font-size: 1.3em;
		font-weight: bold;
		text-align: center;
	}
	.page > .block.license .case > div:nth-of-type(1) dt {
		color: #E84E42;
	}
	.page > .block.license .case > div:nth-of-type(2) dt {
		color: #465B5B;
	}
	.page > .block.license dd {
		margin: 0.75em 0 0 0;
	}
	.page > .block.label h3 + p {
		margin-bottom: 1.75em;
	}
	.page > .block.label > .contents {
		background-color: var(--page-light-gray);
		margin-bottom: 1em;
		padding: 30px;
		justify-content: center;
	}
	.page > .block.label > .contents > div {
		align-items: center;
		display: flex;
	}
	.page > .block.label > .contents .img span {
		align-items: center;
		display: flex;
		height: 119px;
		margin: 0 auto;
	}
	.page > .block.label > .contents > div .img span {
		width: 119px;
	}
	.page > .block.label > .contents dl {
		margin-left: 2em;
	}
	.page > .block.label > .contents dt {
		font-size: 1.25em;
		font-weight: bold;
		margin-bottom: 0.5em;
	}
	.page > .block.label > .contents dd {
		margin: 0;
	}
	.page .conclusion {
		color: var(--page-green);
		font-size: 1.55em;
		font-weight: bold;
		line-height: 1.5;
		margin: 1.75em 0 0.75em 0;
		text-align: center;
	}
}
@media screen and (max-width:390px) { 
	.page {
		font-size: 0.85em;
		padding-bottom: 1em;
		width: 100%;
	}
	.page .link {
		background-color: #449C80;
		border: solid 2px var(--page-black);
		margin: 1.5em auto 0 auto;
		transition: background-color 0.3s 0s ease;
		width: 90%;
	}
	.page .link a {
		display: block;
		padding: 0.85em 0;
		text-decoration: none;
		width: 100%;
	}
	.page .link a p {
		color: #FFF;
		font-weight: bold;
		text-align: center;
		margin: 0;
	}
	.page .link a p:nth-of-type(1) {
		font-size: 1.15em;
		line-height: 1.4;
	}
	.page .link a p:nth-of-type(2) {
		font-size: 0.85em;
	}
	.page .link a img {
		display: inline-block;
		padding-left: 0.5em;
		vertical-align: middle;
	}
	.page .link a img.arrow {
		width: 1.1em;
	}
	.page .link a img.win {
		width: 1.5em;
	}
	.page h2 {
		margin: 0 0 1em 0;
	}
	.page h2 + p {
		margin: 0 auto;
		width: 92%;
	}
	.page h3 {
		align-items: flex-start;
		display: flex;
		font-size: 1.4em;
		justify-content: flex-start;
		margin: 0 0 0.75em 0;
	}
	.page h3::before {
		background-color: var(--page-green);
		content: "";
		display: block;
		height: 4px;
		margin-top: 0.7em;
		transition: width 0.8s 0s ease;
		width: 0;
	}
	.page h3.isActive::before {
		width: 13%;
	}
	.page h3 span {
		display: block;
		line-height: 1.5;
		margin-left: 0.7em;
	}
	.page > .block {
		margin-top: 4.5em;
	}
	.page > .block > .contents {
		margin: 0 auto;
		width: 92%;
	}
	.page > .block > .contents .photo {
		display: flex;
		justify-content: center;
		margin-bottom: 1em;
		width: 100%;
	}
	.page > .block > .contents .photo li {
		width: 50%;
	}
	.page > .block > .contents .photo + div {
		width: 100%;
	}
	.page > .block > .contents .photo + div p {
		margin: 0 0 0.9em 0;
	}
	.page > .block.license > .contents {
		background-color: var(--page-light-gray);
		display: block;
		padding: 2em 0;
	}
	.page > .block.license > .contents > .case {
		margin: 0 auto;
		width: 90%;
	}
	.page > .block.license > .contents > .case > div {
	}
	.page > .block.license > .contents > .case > div:nth-of-type(1) {
		border-bottom: dashed 4px #FFF;
		margin-bottom: 1em;
		padding-bottom: 1em;
	}
	.page > .block.license > .contents > .case .img {
		align-items: center;
		border-radius: 50%;
		display: flex;
		height: 180px;
		justify-content: center;
		margin: 0 auto 1em auto;
		width: 180px;
	}
	.page > .block.license > .contents > .case > div:nth-of-type(1) .img {
		background-color: #FFF;
	}
	.page > .block.license > .contents > .case > div:nth-of-type(2) .img {
		background-color: #465B5B;
	}
	.page > .block.license > .contents > .case .img span {
		display: block;
		width: 160px;
	}
	.page > .block.license dt {
		font-size: 1.3em;
		font-weight: bold;
		text-align: center;
	}
	.page > .block.license .case > div:nth-of-type(1) dt {
		color: #E84E42;
	}
	.page > .block.license .case > div:nth-of-type(2) dt {
		color: #465B5B;
	}
	.page > .block.license dd {
		margin: 0.75em 0 0 0;
	}
	.page > .block.label h3 + p {
		margin: 0 auto 1.75em auto;
		width: 92%;
	}
	.page > .block.label > .contents {
		background-color: var(--page-light-gray);
		margin-bottom: 1em;
		padding: 2em 0;
	}
	.page > .block.label > .contents > div {
		margin: 0 auto;
		width: 90%;
	}
	.page > .block.label > .contents > div:nth-of-type(1) {
	}
	.page > .block.label > .contents .img span {
		display: block;
		margin: 0 auto 1em auto;
	}
	.page > .block.label > .contents > div .img span {
		width: 30%;
	}
	.page > .block.label > .contents dt {
		font-size: 1.1em;
		font-weight: bold;
		text-align: center;
	}
	.page > .block.label > .contents dd {
		font-size: 0.85em;
		margin: 0;
		text-align: center;
	}
	.page > .block.label + .note {
		margin-left: auto;
		margin-right: auto;
		width: 92%;
	}
	.page .conclusion {
		color: var(--page-green);
		font-size: 1.55em;
		font-weight: bold;
		line-height: 1.5;
		margin: 1em 0 0 0;
		text-align: center;
	}
}