@charset "utf-8";
#infographic {
	text-align: center;
	background: whitesmoke;
	z-index: -1;
}
#infographic figure {
	margin: 50px auto;
	background: #FFF;
	padding: 4%;
	box-sizing: border-box;
	border-radius: 4px;
	box-shadow: 0 10px 30px rgba(0,0,0,.1);
}
#infographic figure img+img {
	margin-top: 50px;
}
#infographic ul {
	display: flex;
	background: #FFF;
	flex-wrap: wrap;
    margin: 50px auto;
	padding: 4% 2%;
	box-sizing: border-box;
	border-radius: 4px;
	box-shadow: 0 10px 30px rgba(0,0,0,.1);
}
#infographic li {
	box-sizing: border-box;
	padding: 4%;
	width: 50%;
}
#questionnaire {
	background: #f5f5f5;
}
.questionnaire {
	background: #FFF;
	width: 90%;
	float: right;
	padding: 4%;
	box-sizing: border-box;
	position: relative;
	margin: 100px 0;
}
.questionnaire:nth-of-type(even) {
	float: left;
}
.questionnaire h3 {
	font-size: 70px;
	position: absolute;
	left: -8%;
	top: 0;
	line-height: 1.2;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.questionnaire:nth-of-type(even) h3 {
	right: -8%;
	left: auto;
}
.questionnaire.active h3 {
	-webkit-animation: mask-color .1s .5s forwards cubic-bezier(0.56, 0.01, 0.4, 1);
	animation: mask-color .1s .5s forwards cubic-bezier(0.56, 0.01, 0.4, 1);
}
.questionnaire.active h3 .masking {
	-webkit-animation: mask-text-reverse 1.2s forwards cubic-bezier(0.56, 0, 0.4, 1);
	animation: mask-text-reverse 1.2s forwards cubic-bezier(0.56, 0, 0.4, 1);
}
.questionnaire:nth-of-type(even).active h3 .masking {
	-webkit-animation: mask-text 1.2s forwards cubic-bezier(0.56, 0, 0.4, 1);
	animation: mask-text 1.2s forwards cubic-bezier(0.56, 0, 0.4, 1);
}
.questionnaire h4 {
	font-size: 20px;
	margin: 0 0 4px;
	line-height: 1.2;
}
.questionnaire h4 span {
	color: #019866;
	font-size: 70px;
	vertical-align: middle;
	font-weight: normal;
}
.questionnaire .inner {
	display: flex;
	flex-wrap: wrap;
}
.questionnaire .block {
	width: 50%;
	padding: 2%;
	box-sizing: border-box;
}
.questionnaire ul {
	margin-left: 2em;
	font-family: 'Noto Sans Japanese', 'メイリオ', Meiryo, serif;
	color: rgba(0, 0, 0, .7);
	font-size: 14px;
}
.questionnaire li {
	position: relative;
	padding-left: 30px;
}
.questionnaire li+li {
	margin-top: 12px;
}
.questionnaire li:before {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	background: url(../img/infographic/ico-quote.png) no-repeat center center;
	background-size: cover;
	position: absolute;
	left: 0;
	top: .5em;
}
.questionnaire h3+p{
    background: rgba(2, 152, 103, .2);
    border-radius: 4px;
    padding: 8px;
    line-height: 1;
    max-width: 768px;
    margin: 0 auto;
}

@media only screen and (max-width: 1366px) {
.questionnaire {
	margin: 50px 0;
}
.questionnaire h3 {
	font-size: 50px
}
.questionnaire ul {
	font-size: 12px;
	margin-left: 1em;
}
}

@media only screen and (max-width: 1024px) {
#infographic figure img {
	max-width: 400px;
	margin: 0 auto;
	display: block;
}
#infographic figure {
	padding: 4% 2%;
}
.questionnaire {
	padding: 50px 2%;
	width: 95%;
}
.questionnaire h3 {
 font-size: calc(30px + (50 - 30) * ((100vw - 320px) / (1024 - 320)));
	left: -4%;
}
.questionnaire:nth-of-type(even) h3 {
	right: -4%;
}
.questionnaire h4 {
 font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1024 - 320)));
}
.questionnaire h4 span {
 font-size: calc(32px + (70 - 32) * ((100vw - 320px) / (1024 - 320)));
}
}

@media only screen and (max-width: 768px) {
.questionnaire .block {
	width: auto;
}
}

@media only screen and (max-width: 520px) {
#company-info .viewport-m {
	display: block;
}
#company-info div figure {
	padding: 0;
	width: auto;
	max-width: 300px;
	margin: 50px auto 0;
}
#infographic figure img {
	padding: 0;
	width: auto;
	max-width: 100%;
	margin: 50px auto 0;
}
#infographic ul {
	flex-wrap: wrap;
}
#infographic li {
	padding: 6% 2%;
}
}
