@charset "utf-8";

/*.contents01ここから*/
.contents01{
	width: 100%;
	height: auto;
	margin: 0 auto;
	display: block;
}
.contents01 .contents01_01{
	width: 100%;
	height: auto;
	padding: 10.2rem 0 10.0rem;
	margin: 0 auto;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
}
@media only screen and (max-width: 767px) {
	.contents01 .contents01_01{
		padding: 5.5rem 0 5.0rem;
	}
}
.contents01 .contents01_01 .contents01_01_01{
	width: 65.7rem;
	height: auto;
	margin: 0;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
}
@media only screen and (max-width: 767px) {
	.contents01 .contents01_01 .contents01_01_01{
		width: 33.5rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 > .text01{
	width: auto;
	height: auto;
	margin: 0 auto 6.2rem;
	display: block;
}
@media only screen and (max-width: 767px) {
	.contents01 .contents01_01 .contents01_01_01 > .text01{
		margin: 0 auto 4.8rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 > .text01 > span{
	width: auto;
	height: auto;
	margin: 0;
	font-size: 3.4rem;
	line-height: 4.3rem;
	color: #00A06E;
	display: inline;
}
@media only screen and (max-width: 767px) {
	.contents01 .contents01_01 .contents01_01_01 > .text01 > span{
		font-size: 2.8rem;
		line-height: 3.8rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 > .text02{
	width: auto;
	height: auto;
	margin: 0 auto 0 0;
	display: block;
}
.contents01 .contents01_01 .contents01_01_01 > .text02 > span{
	width: auto;
	height: auto;
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.5rem;
	display: inline;
}
.contents01 .contents01_01 .contents01_01_01 > .text03{
	width: auto;
	height: auto;
	margin: 3.2rem 0 0;
	display: block;
}
.contents01 .contents01_01 .contents01_01_01 > .text03 > span{
	width: auto;
	height: auto;
	margin: 0;
	font-size: 1.4rem;
	line-height: 2.5rem;
	display: inline;
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01{
	width: auto;
	height: auto;
	margin: 3.2rem 0 0;
	font-size: 0;
	line-height: 0;
	display: block;
}
.contents01 .contents01_01 .contents01_01_01 > .link01{
	width: 21.1rem;
	height: 5.0rem;
	margin: 13.2rem auto 0;
	font-size: 1.7rem;
	line-height: 2.7rem;
	background-color: #ffffff;
	border: 1px solid #000000;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media only screen and (max-width: 767px) {
	.contents01 .contents01_01 .contents01_01_01 > .link01{
		margin: 4.9rem auto 0;
	}
}
@media only screen and (min-width: 768px) {
	body.en .contents01 .contents01_01 .contents01_01_01 > .link01{
		width: 18.1rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 > .link01:hover{
	color: #ffffff;
	background-color: #2DC195;
	opacity: 1;
}
.contents01 .contents01_01 .contents01_01_01 > .link01 > span{
	width: 1.3rem;
	height: 1.3rem;
	margin: 0 0 0 1.7rem;
	display: block;
	flex-shrink: 0;
	position: relative;
}
.contents01 .contents01_01 .contents01_01_01 > .link01 > span > img{
	width: 100%;
	height: auto;
	margin: 0;
	display: block;
	transition: all .5s;
}
.contents01 .contents01_01 .contents01_01_01 > .link01 > span > img:nth-of-type(2){
	position: absolute;
	top: 0;
	bottom: auto;
	left: 0;
	right: auto;
	margin: auto;
	opacity: 0;
}
.contents01 .contents01_01 .contents01_01_01 > .link01:hover > span > img:nth-of-type(1){
	opacity: 0;
	transition: all .5s;
}
.contents01 .contents01_01 .contents01_01_01 > .link01:hover > span > img:nth-of-type(2){
	opacity: 1;
	transition: all .5s;
}
/*.contents01ここまで*/