@charset "Shift_JIS";

.l-chart-wrap {
	margin: 80px 0 30px;
	padding: 30px 16px 40px;
	position: relative;
	z-index: 2;
}
.l-chart-wrap.is-active {
	margin-bottom: 80px;
}
@media screen and (max-width: 768px){
	.l-chart-wrap {
		margin: 80px 0 30px;
		padding: 30px 16px 20px;
	}
	.l-chart-wrap.is-active {
		margin-bottom: 80px;
	}
}
.l-chart-wrap::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: 2px solid #65bd58;
	/* border-radius: 0 0 16px 16px; */
	border-radius: 16px;
	box-sizing: border-box;
	background: #f6fbee;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.l-chart-wrap.is-active::before {
	opacity: 1;
}

/* ボタン */
.c-chart-btn-start-wrap {
	width: 50%;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%,-48%);
}
@media screen and (max-width: 768px){
	.c-chart-btn-start-wrap {
		width: 86%;
	}
}
a.c-chart-btn-start{
	display: block;
	background: #65bd58;
	border-radius: 30px;
	position: relative;
	z-index: 1;
	text-decoration: none;
}
a.c-chart-btn-start::before {
	content: "";
	display: inline-block;
	background: #fff;
	border: 2px solid #65bd58;
	width: 33px;
	height: 33px;
	border-radius: 50%;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translate(45%,-50%);
	z-index: -1;
	transition: background-color 0.3s ease, border-color 0.3s ease;
}
@media screen and (max-width: 768px){
	a.c-chart-btn-start::before {
		width: 25px;
		height: 25px;
		right: 30px;
	}
}
a.c-chart-btn-start:hover::before {
	background: #65bd58;
	border-color: #fff;
}
a.c-chart-btn-start span {
	display: block;
	padding: 0.25em 0 0.2em;
	color: #fff;
	font-size: 22px;
	text-indent: -0.5em;
	font-weight: bold;
	text-align: center;
	position: relative;
	z-index: 2;
}
@media screen and (max-width: 768px){
	a.c-chart-btn-start span {
		font-size: 18px;
	}
}
a.c-chart-btn-start span::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 5px 0 5px;
	border-color: #65bd58 transparent transparent transparent;
	position: absolute;
	right: 22px;
	top: 50%;
	transform: translate(-50%,-40%);
	transition: border-color 0.3s ease;
}
@media screen and (max-width: 768px){
	a.c-chart-btn-start span::before {
		right: 21px;
	}
}
a.c-chart-btn-start:hover span::before {
	border-color: #fff transparent transparent transparent;
}

.c-chart-btn-close-wrap {
	margin: 40px -16px -40px !important;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.l-chart-wrap.is-active .c-chart-btn-close-wrap {
	opacity: 1;
}
.c-chart-btn-close {
	display: block;
	background: #65bd58;
	border: 2px solid #65bd58;
	border-radius: 0 0 16px 16px;
	padding: 0.6em 0;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.c-chart-btn-close:hover {
	background: #fff;
	color: #65bd58;
	text-decoration: none;
}


/* 質問ボックス */
.c-question{
	margin-top: 30px;
}
@media screen and (max-width: 768px){
	.c-question{
		margin-top: 20px;
	}
}
.c-question.is-active::after{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 40px 0 40px;
	border-color: #50a843 transparent transparent transparent;
	display: inline-block;
	content: "";
	margin-top: 50px;
	margin-left: 50%;
	transform: translateX(-50%);
}
@media screen and (max-width: 768px){
	.c-question.is-active::after{
		border-width: 20px 30px 0 30px;
		margin-top: 30px;
	}
}
.c-question-txt{
	font-size: 1.25em;
	font-weight: bold;
	display: flex;
	align-items: center;
	align-content: center;
	background: #65bd58;
	border-radius: 5px;
	border: solid 2px #65bd58;
}
@media screen and (max-width: 768px){
	.c-question-txt{
		display: block;
	}
}
.c-question-txt span{
	padding: 19px 22px 18px;
	line-height: 1.44;
}
@media screen and (max-width: 768px){
	.c-question-txt span{
		padding: 10px;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
}
.c-question-txt span:nth-child(1){
	color: #ffffff;
	width: 4em;
	text-align: center;
}
@media screen and (max-width: 768px){
	.c-question-txt span:nth-child(1){
		padding-bottom: 20px;
		width: 100%;
	}
}
.c-question-txt span:nth-child(2){
	position: relative;
	background: #ebf4e5;
	color: #0c423c;
	width: 100%;
	border-radius: 0 4px 4px 0;
}
.c-question-txt span:nth-child(2):before {
	position: absolute;
	left: 0;
	top: 50%;
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7.5px 15px 7.5px 0;
	border-color: transparent #ebf4e5 transparent transparent;
	transform: translate(-95%,-50%);
}
@media screen and (max-width: 768px){
	.c-question-txt span:nth-child(2):before {
		top: 0;
		left: 50%;
		transform: translate(-50%,-95%);
		border-width: 0 7.5px 15px 7.5px;
		border-color: transparent transparent #ebf4e5 transparent;
	}
}
.c-question-txt span .icon_detail {
	display: inline-block;
	margin-left: 5px;
}

/* 確認項目 */
.c-confirm-txt {
	border: 1px solid #65bd58;
	border-radius: 4px;
	padding: 15px 15px 30px;
	margin: 0 20px;
}
@media screen and (max-width: 768px){
	.c-confirm-txt {
		margin: 0;
	}
}

/* はい、いいえボタン */
.c-question-btn{
	display: flex;
	justify-content: center;
	margin-top: 30px;
}
@media screen and (max-width: 768px){
	.c-question-btn{
		display: block;
		text-align: center;
	}
}
.c-question-btn a{
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","Meiryo",sans-serif;
	text-align: center;
	line-height: 1.4;
	font-weight: bold;
	font-size: 123%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px 20px;
	margin:  0 7px;
	border: solid 1px #cccccc;
	border-radius: 5px;
	box-sizing: border-box;
	min-width: 8em;
	background: #f6f8f9; /* Old browsers */
	background: -moz-linear-gradient(top,  #f6f8f9 0%, #e5ebee 50%, #d7dee3 51%, #f5f7f9 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #f6f8f9 0%,#e5ebee 50%,#d7dee3 51%,#f5f7f9 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #f6f8f9 0%,#e5ebee 50%,#d7dee3 51%,#f5f7f9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	-moz-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2);
	-ms-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 768px){
	.c-question-btn a{
		display: inline-block;
		width: 90%;
		margin: 5px 0;
	}
}
.c-question-btn a:hover{
	text-decoration: none;
	opacity: .8;
}

.c-question-btn a.is-active{
	color: #333;
	background: #fceabb; /* Old browsers */
	background: -moz-linear-gradient(top,  #fceabb 0%, #fccd4d 50%, #f8b500 51%, #fbdf93 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #fceabb 0%,#fccd4d 50%,#f8b500 51%,#fbdf93 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #fceabb 0%,#fccd4d 50%,#f8b500 51%,#fbdf93 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}


/* 結果 */
.c-result{
	/* display: none; */
	text-align: center;
	background: #ffffff;
	border: solid 2px #65bd58;
	border-radius: 5px;
	margin-top: 50px;
}
.c-result .c-result-title {
	color: #ffffff;
	background: #65bd58;
	border-radius: 3px 3px 0 0;
	border: none !important;
}
@media screen and (max-width: 768px){
	.c-result .c-result-title {
		font-size: 1.25em !important;
		padding: 15px 10px !important;
	}
}
.c-result-txt{
	padding: 0 20px 20px;
}
.c-result-txt-rate {
	font-weight: bold;
	margin: 40px 0 30px;
}
@media screen and (max-width: 768px){
	.c-result-txt-rate {
		margin: 20px 0;
	}
}
.c-result-txt-rate span {
	font-size: 1.4em;
	border: 2px solid #65bd58;
	background: #f6fbee;
	display: inline-block;
	padding: 0.15em 0.7em;
	margin: 0 0.7em;
	border-radius: 5px;
}
@media screen and (max-width: 768px){
	.c-result-txt-rate span {
		font-size: 1.0em;
		line-height: 1.3;
	}
}
.c-result-txt-file dl{
	display: flex;
	width: 100%;
	border: 1px solid #dfdfdf;
	border-top: none;
}
@media screen and (max-width: 768px){
	.c-result-txt-file dl{
		display: block;
	}
}
.c-result-txt-file dl:first-child {
	border-top: 1px solid #dfdfdf;
}
.c-result-txt-file dt,
.c-result-txt-file dd {
	width: 50%;
	text-align: left;
	padding: 10px;
}
@media screen and (max-width: 768px){
	.c-result-txt-file dt,
	.c-result-txt-file dd {
		width: 100%;
		box-sizing: border-box;
	}
}
.c-result-txt-file dt {
	background: #eff5e7;
	border-right: 1px solid #dfdfdf;
	font-weight: bold;
}

.c-result-txt-attention{
	color: #cc0000;
	text-align: left;
}

.c-result-txt-attention p span{
	text-align: center;
	color: #ffffff;
	background: #65bd58;
	display: inline-block;
	border-radius: 10px;
	font-size: .875em;
	line-height: 1.5;
	margin-right: .25em;
	margin-left: .25em;
	min-width: 6em;
}


@media screen and (max-width: 768px){
	.c-result-txt{
		padding: 0 10px 10px;
	}
	.c-result-txt h4{
		font-size: 120%;
		margin-bottom: 1rem;
	}
	.c-result-txt-word{
		text-align: left;
	}
	.c-result-txt-file{
		text-align: left;
	}
}

/* 表示・非表示 */
.status-init1 {
	display: none;
}
.status-init2 {
	opacity: 0;
}
.status-init3 {
	opacity: 1!important;
	animation: fadeIn 0.5s;
}
@keyframes fadeIn { 
	0% {opacity: 0} 
	100% {opacity: 1} 
}