  @charset "UTF-8";
/* CSS Document */

.report {
	background-color: #FFF6D0;
	padding: 40px;
	border-radius: 15px;
	margin: 30px;
}
.report .flex01 {
}
.report .flex01 .imgBox {
	width: 45%;
	max-width: 320px;
}
.report .flex01 .txtBox {
	width: 52%
}

.report .flex01 .txtBox dl {
	
}
.report .flex01 .txtBox dt {
	color: #601986;
	font-size: 21px;
	line-height: 1.3;
}
.report .flex01 .txtBox dd {
	font-size: 15px;
	padding: 1em 0;
}
a.btPpl {
	background-color: #601986;
	color: #fff;
	font-size: 18px;
	width: 100%;
	height: 2.6em;
	display: flex;
justify-content: center;
align-items: center;
	border-radius: 999px;
	/*transition: 0.3s;*/
}
a.btPpl:hover {
	filter: brightness(120%) saturate(200%);
}
.report h3 {
	font-size: 21px;
	color: #601986;
	text-align: center;
	padding: 0.3em 0;
	border-top: #601986 solid 2px;
	border-bottom: #601986 solid 2px;
}
.report .flex02 {
	margin-top: 20px;
}
.report .flex02 .rep {
	width: 30%;
	max-width: 210px;
}
.report .flex02 .rep p {
	text-align: center;
	font-size: 18px;
	color: #601986;
}

.qaBox {
	align-items: center;
}
.qaBox .icon {
	width: 100px;
	position: relative;
}
.qaBox .icon::after {
	content: "　";
	position: absolute;
	width: 45%;
	height: 45%;
	left: -15%;
	bottom: -2%;
	background-image: url("/tokusetu_site/hamoruwa/aha_ene/e_peace/img/icon-q.svg");
	background-size: cover;
}
.qaBox.aBox .icon::after {
	background-image: url("/tokusetu_site/hamoruwa/aha_ene/e_peace/img/icon-a.svg");
}

.txt {
		font-size: 18px;
	line-height: 1.6;
	padding: 1em 0;
}
.aBox .txt {
	/*font-weight: 300;*/
	font-weight: 400;
}
.qBox .txt {
	/*color: #601986;
	font-weight: 500;*/
}
.qBox .txt span {
	color: #601986;
	font-weight: 500;
}
.aBox .txt span {
	color: #F39800;
	font-weight: 500;
	margin-right: 0.3em;
}
.qaBox.aBox .txt, .qaBox.qBox .txt {
	flex: 1;
	padding-left: 1em;
}


#single .addBox .flex .btnBox a {
border: #000 solid 1px;
width: 40px;
margin: 5px;
border-radius: 100%;
}
#single .addBox .flex .btnBox a:hover {
	background-color: #fff;

}
#single #sec03 p.caption {
	padding-bottom: 0;
	text-align: right;
}

#single #sec06 {
	background-color: #FFF6D0;
	padding: 40px 40px 20px;
	border-radius: 15px;

}
#single #sec06 h3 {
	padding: 0.2em;
	background-color: #EC6D81;
	font-size: 30px;
	text-align: center;
	color: #fff;
	border: none;
	border-radius: 999px;
}
#single #sec06 h4 span {
	font-size: 21px;
	color: #E61E73;
	display: block;
	border-bottom: #E61E73 solid 1px;
}
#single #sec06 h4 {
	font-size: 30px;
	font-weight: 500;
	padding: 0.3em 0;
}
#single #sec06 .imgBox {
	padding: 5px 0;
}

#single #sec07 {
	padding: 50px 0;

}
#single #sec07 h3 {
	background-color: #601986;
	color: #fff;
	text-align: center;
	font-size: 28px;
	padding: 0.3em;
	border-radius: 999px;
	border: none;
}

#single #sec08 {
	padding: 50px 0;

}
#single #sec08 h3 {
	border-top: #601986 solid 1px;
	border-bottom: #601986 solid 1px;
	color: #601986;
	font-size: 26px;
	font-weight: 500;
	text-align: center;
	padding: 0.6em 0;
}
#single #sec08 h4 {
	border-top: #601986 solid 1px;
	background-color: #EDEDEF;
	color: #601986;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	padding: 0.3em 0;
	
}
#single #sec08 .flex {
}
#single #sec08 .flex .txtBox {
	flex: 1;
	padding-right: 1.5em;
}
#single #sec08 .flex .txtBox p {
	line-height: 1.6;
}
#single #sec08 .flex .txtBox p.prof {
	text-indent: -1em;
	padding-left: 1em;
}
#single #sec08 .flex .txtBox p.prof span {
	color: #601986;
}
#single #sec08 .flex .imgBox {
	width: 50%;
	max-width: 400px;
}

#single #addEdion {
	background-color: #EDEDEF;
	border: none;
	margin-bottom: 50px;
}
#single #addEdion h3 {
	font-size: 26px;
	font-weight: 500;
	color: #601986;
	border-bottom: #601986 solid 2px;
}
#single #addEdion .imgBox, #single #addEdion .txt {
	width: 90%;
	max-width: 720px;
	margin: 0 auto;
}
#single #addEdion a.btPpl {
	width: 90%;
	max-width: 25em;
	margin: 1em auto;
}
#single #addEdion .btnBox {
	width: 80%;
	max-width: 300px;
	margin: 0 auto;
}
#single a.linkGrn {
display: block;
width: 28em;
margin: 0 auto;
font-size: 21px;
line-height: 1.3;
color: #fff;
text-align: center;
padding: 0.6em 1em;
background-color: #00A983;
border-radius: 12px;
margin-bottom: 20px;
}
#single #titBox .indexBox a.more {
	display: block;
	position: relative;
	background-color: #FFF6D0;
font-size: 20px;
	line-height: 1.3;
	border-radius: 5px;
	padding: 0.4em 1em 0.4em 3em;
	margin-top: 5px;
}
#single #titBox .indexBox a.more:hover {
	opacity: 0.6;
}
#single #titBox .indexBox a.more::after {
	content: '　';
	position: absolute;
	left: 0.2em;
	top: 0;
	width: 2em;;
	height: 100%;
	background-image: url("/tokusetu_site/hamoruwa/aha_ene/e_peace/img/icon-more.svg");
	background-position: left center;
	background-size: 100%;
	background-repeat: no-repeat;
}
p.check{
	margin: 0 auto;
	text-align: center;
	font-size: 28px;
	font-size: clamp(19px, 3.2vw, 30px);
	padding-bottom: 0.2em;
}
p.check span{
	display: inline-block;
	color: #00A983;
	margin: 0 0.1em;
	animation: fluffy 1.7s infinite;
}
p.check span.sp02 {
	animation: fluffy 1.7s infinite 1s;
}
#single a.linkGrnLine {
	width: 95%;
	border: #00A983 solid 3px;
	box-shadow: 0px 3px 8px rgba(0,169,131,0.6);
}
#single a.linkGrnLine:hover {
	opacity: 0.7;
	transform: translateY(-2%);
}

@keyframes fluffy {
  0%, 100% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(-5px);
  }
}


@media screen and (max-width : 959px ){
	.report .flex01 {
		flex-direction: column-reverse;
		padding-bottom: 30px;
	}
	.report .flex01 .imgBox {
		width: 100%;
		max-width: 320px;
		margin: 0 auto;
	}
	.report .flex01 .txtBox {
		width: 100%
	}
	.report .flex01 .txtBox dt {
		text-align: center;
	}
}

@media screen and (max-width : 599px ){
	.report {
		padding: 30px 20px 10px;
	}
	.report .flex01 .txtBox dt {
		font-size: 4.6vw;
		font-size: clamp(14px, 4.6vw, 18px);
	}
	a.btPpl {
		font-size: 4.3vw;
		font-size: clamp(13px, 4.3vw, 17px);
	}
	.report h3 {
		font-size: 5.1vw;
		font-size: clamp(18px, 5.1vw, 20px);
	}
	.report .flex02 {
		display: block;
	}
	.report .flex02 .rep {
		width: 90%;
		max-width: 210px;
		margin: 0 auto;
	}
	.report .flex02 .rep p {
		text-align: center;
		font-size: 4.6vw;
		font-size: clamp(16px, 4.6vw, 18px);
		padding-bottom: 20px;
	}
	.qaBox .icon {
		width: 100px;
		position: relative;
		margin: 0 auto;
	}
	.txt {
		font-size: 4.3vw;
		font-size: clamp(15px, 4.3vw, 17px);
		line-height: 1.4;
		padding: 1em 0;
	}
	.qaBox.aBox .txt, .qaBox.qBox .txt {
		flex: none;
		width: 100%;
		padding-left: 0em;
	}
	#single #sec06 {
		padding: 30px 20px 10px;
	}
	#single #sec06 h3 {
		font-size: 5.1vw;
		font-size: clamp(18px, 5.1vw, 20px);
	}
	#single #sec06 h4 span {
		font-size: 4.6vw;
		font-size: clamp(16px, 4.6vw, 18px);
	}
	#single #sec06 h4 {
		font-size: 5.3vw;
		font-size: clamp(19px, 5.3vw, 21px);
		text-align: center;
	}
	#single #sec07 h3 {
		font-size: 4.8vw;
		font-size: clamp(17px, 4.8vw, 19px);
	}
	#single #sec08 h4,#single #sec07 h3,#single #sec08 h3,#single #addEdion h3 {
		font-size: 4.6vw;
		font-size: clamp(14px, 4.6vw, 18px);
	}
	#single #sec08 .flex {
		flex-direction: column-reverse;
	}
	#single #sec08 .flex .imgBox {
		width: 70%;
		max-width: 280px;
		margin: 0 auto;
	}

	#single #sec08 .flex .txtBox {
		flex: none;
		width: 100%;
		padding-right: 0em;
	}
	#single #sec08 .flex .txtBox p.prof {
		text-align: center;

		text-indent: -1em;
		padding-left: 2em;
		line-height: 1.4;
	}
	#single #addEdion h3 {
		font-size: 5.3vw;
		font-size: clamp(19px, 5.3vw, 21px);
	}
	#single a.linkGrn {
		font-size: 4.3vw;
		font-size: clamp(13px, 4.3vw, 17px);
		width: 90%;
	}
	#single a.linkGrnLine {
		padding: 3%;
	}
	#single a.linkGrnLine .imgBox {
		width: 60%;
		margin: 0 auto;
		padding-bottom: 2%;
	}
	#single a.linkGrnLine .txtBox {
		width: 100%;
		text-align: center;
	}
	



}
