@charset "utf-8";
.fix_img{
	width: 24.7rem;
	height: auto;
	display: block;
	position: absolute;
	top: 6.8rem;
	left: -4.4rem;
}
/*.contents01ここから*/
.contents01{
	width: 100%;
	height: auto;
	display: block;
	position: relative;
}
.contents01 .contents01_01{
	width: 70.0rem;
	height: auto;
	margin: 14.4rem auto 0;
	display: block;
}
.contents01:nth-of-type(2) .contents01_01{
	margin-top: 18.9rem;
}
@media only screen and (max-width: 767px){
	.contents01:nth-of-type(2) .contents01_01{
		margin-top: 8.0rem;
	}
}

@media only screen and (max-width: 767px){
	.contents01 .contents01_01{
		width: 90%;
		max-width: 29.0rem;
	}
}
.contents01 .contents01_01 .contents01_01_01{
	width: 100%;
	height: auto;
	margin: 0 auto 0;
	position: relative;
}

/*イラスト*/
.contents01 .contents01_01 .contents01_01_01 .bg01{
	width: 59.9rem;
	height: auto;
	display: block;
	position: absolute;
	top: 15.7rem;
	right: -33.5rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .bg01{
		width: 20.0rem;
		height: auto;
		display: block;
		position: absolute;
		bottom: initial;
		right: -3.5rem;
		top: 4.4rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 h2{
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	flex-direction: column;
	font-size: 7.8rem;
	line-height: 7.9rem;
	letter-spacing: calc((30/1000)*1em);
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 h2{
		font-size: 5.5rem;
		line-height: 6.5rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 h2 span{
	font-size: 1.4rem;
	line-height: 2.4rem;
}
.contents01 .contents01_01 .contents01_01_01 > h3{
	font-size: 3.5rem;
	line-height: 4.5rem;
	letter-spacing: calc((70/1000)*1em);
	margin-top: 3.5rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 h3{
		font-size: 2.5rem;
		line-height: 3.9rem;
		letter-spacing: calc((80/1000)*1em);
	}
}
.contents01 .contents01_01 .contents01_01_01 .text01{
	font-size: 1.6rem;
	line-height: 4.5rem;
	letter-spacing: calc((100/1000)*1em);
	margin-top: 5.5rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .text01{
		font-size: 1.4rem;
		line-height: 2.7rem;
		letter-spacing: calc((100/1000)*1em);
		margin-top: 4.6rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01{
	width: 100%;
	height: auto;
	display: block;
	margin-top: 16.3rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01{
		margin-top: 5.0rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01:nth-of-type(2){
	margin-top: 16.2rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01:nth-of-type(2){
		margin-top: 5.0rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .title03{
	font-size: 3.5rem;
	line-height: 4.5rem;
	letter-spacing: calc((70/1000)*1em);
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .title03{
		font-size: 2.6rem;
	    line-height: 3.9rem;
	    letter-spacing: calc((80/1000)*1em);
	  }
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .title03 span{
	font-size: 3.1rem;
	line-height: 4.5rem;
	letter-spacing: calc((30/1000)*1em);
	margin-right: 3.2rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .title03 span{
		font-size: 2.6rem;
		line-height: 2.8rem;
		margin-right: .5rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .title03 .span02{
	font-size: 1.9rem;
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .sub_title{
	font-size: 2.5rem;
	line-height: 3.5rem;
	letter-spacing: calc((30/1000)*1em);
	margin-top: 4.5rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .sub_title{
		font-size: 2.1rem;
		line-height: 3.4rem;
		letter-spacing: calc((30/1000)*1em);
		margin-top: 2.5rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .text02{
	font-size: 1.6rem;
	line-height: 4.0rem;
	letter-spacing: calc((100/1000)*1em);
	margin-top: 4.5rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .contents01_01_01_01 .text02{
		font-size: 1.4rem;
		line-height: 2.7rem;
		letter-spacing: calc((100/1000)*1em);
		margin-top: 2.5rem;
	}
}
.contents01 .contents01_01 .contents01_01_01 .item01{
	width: 100%;
	height: auto;
	display: block;
	margin-top: 8.6rem;
}
@media only screen and (max-width: 767px){
	.contents01 .contents01_01 .contents01_01_01 .item01{
		margin-top: 5.0rem;
	}
}
@media only screen and (max-width: 767px){
	.contents02{
		padding-bottom: 7.0rem;
	}
	.contents02 .contents01_01{
		margin-top: 10.0rem;
	}	
}
.contents02 .contents01_01 .contents01_01_01 h3{
	margin-top: 5.1rem;
	font-size: 3.4rem;
	line-height: 4.4rem;
	letter-spacing: calc((70/1000)*1em);
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
@media only screen and (max-width: 767px){
	.contents02 .contents01_01 .contents01_01_01 h3{
		font-size: 2.5rem;
		line-height: 3.9rem;
		margin-top: 3.5rem;
	}
}
.contents02 .contents01_01 .contents01_01_01 h3 span{
	flex-shrink: 0;
}
.contents02 .contents01_01 .contents01_01_01 .text01{
	margin-top: 3.8rem;
	font-size: 1.6rem;
	line-height: 4.0rem;
	letter-spacing: calc((100/1000)*1em);
}
@media only screen and (max-width: 767px){
	.contents02 .contents01_01 .contents01_01_01 .text01{
		font-size: 1.4rem;
		line-height: 2.7rem;
		letter-spacing: calc((100/1000)*1em);
		margin-top: 4.6rem;
	}
}
.contents02 .contents01_01 .contents01_01_01 .logo01{
	width: 63.8rem;
	height: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 6.0rem;
}
@media only screen and (max-width: 767px){
	.contents02 .contents01_01 .contents01_01_01 .logo01{
		width: 100%;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: 1.3rem 3.3rem;
		margin-top: 6.0rem;
	}
}
.contents02 .contents01_01 .contents01_01_01 .logo01 img{
	width: 7.0rem;
	height: auto;
	display: block;
}
.contents02 .contents01_01 .contents01_01_01 .logo01 img:nth-of-type(2){
	width: 12.4rem;
}
.contents02 .contents01_01 .contents01_01_01 .logo01 img:nth-of-type(3){
	width: 12.3rem;
}
.contents02 .contents01_01 .contents01_01_01 .logo01 img:nth-of-type(4){
	width: 11.0rem;
}
.contents02 .contents01_01 .contents01_01_01 .logo01 img:nth-of-type(5){
	width: 5.4rem;
}











