@charset "utf-8";

/* -------------------------------------------------
	lead
------------------------------------------------- */

#lead {
	width: 100%;
	/* padding: 82px 0 107px; */
	padding: 82px 0 0;
	background: -moz-linear-gradient(180deg, #fff 0%, #d7e3fd 100%);
	background: -webkit-linear-gradient(180deg, #fff 0%, #d7e3fd 100%);
	background: linear-gradient(180deg, #fff 0%, #d7e3fd 100%);
	position: relative;
	overflow: hidden;
}
#lead::after {
	content: "";
	width: 1093px;
	height: 116px;
	background: url(../img/logo_09.svg) no-repeat 0 0 / 100% auto;
	display: block;
	position: absolute;
	bottom: -4px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}
#lead .lead-text p {
	font-size: 16px;
	line-height: 1.75;
}
#lead ul {
	margin-top: 65px;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 4;
}
#lead ul li {
	width: 157px;
	height: 157px;
}
#lead ul li a {
	width: 100%;
	height: 100%;
	color: #0050a3;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: relative;
}
#lead ul li a img {
	width: 100%;
}

@media print, screen and (min-width:768px) {
	#lead ul li a::after {
		width: 100%;
		height: 100%;
		background: #fff;
		opacity: 0;
		transition: opacity 0.2s ease-out;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 2;
		display: block;
		content: "";
		border-radius: 50%;
	}
	#lead ul li a:hover::after {
		opacity: 0.3;
	}
}

@media print, screen and (min-width:768px) and (max-width:930px) {
	#lead ul li {
		width: calc(157 / 930 * 100vw);
		height: calc(157 / 930 * 100vw);
	}
}

@media screen and (max-width:767px) {
	#lead {
		width: 100%;
		padding: calc(45 / 750 * 100vw) 0 calc(125 / 750 * 100vw);
	}
	#lead::after {
		content: "";
		width: 100vw;
		height: calc(79.5 / 750 * 100vw);
		bottom: 0;
	}
	#lead .lead-text p {
		font-size: calc(27 / 750 * 100vw);
	}
	#lead ul {
		margin-top: calc(65 / 750 * 100vw);
		justify-content: center;
		flex-wrap: wrap;
	}
	#lead ul li {
		width: calc(206 / 750 * 100vw);
		height: calc(206 / 750 * 100vw);
	}
	#lead ul li:nth-child(2),
	#lead ul li:nth-child(4),
	#lead ul li:nth-child(5) {
		margin-left: calc(24 / 750 * 100vw);
	}
	#lead ul li:nth-child(1) {
		margin-left: 13%;
	}
	#lead ul li:nth-child(2) {
		margin-right: 13%;
	}
}

/* -------------------------------------------------
	case-item
------------------------------------------------- */

.case-item + .case-item {
	margin-top: 80px;
}
.case-item .ques {
	margin-top: 75px;
}
.case-item .ques::after {
	content: "";
	display: block;
}

.case-item.item1 .ques::after { width: 170px; height: 220px; background: url(../img/case/fig_man_01.svg) no-repeat 0 0 / 100% auto; }
.case-item.item2 .ques::after { width: 151px; height: 224px; background: url(../img/case/fig_man_02.svg) no-repeat 0 0 / 100% auto; }
.case-item.item3 .ques::after { width: 155px; height: 222px; background: url(../img/case/fig_man_03.svg) no-repeat 0 0 / 100% auto; }
.case-item.item4 .ques::after { width: 170px; height: 220px; background: url(../img/case/fig_man_04.svg) no-repeat 0 0 / 100% auto; }
.case-item.item5 .ques::after { width: 157px; height: 231px; background: url(../img/case/fig_man_05.svg) no-repeat 0 0 / 100% auto; }

.case-item .ques .text-box {
	padding: 50px 4%;
	border: solid 1px #494a4b;
	border-radius: 36px;
	box-sizing: border-box;
	position: relative;
}
.case-item .ques .text-box::after {
	content: "";
	position: absolute;
	display: block;
}
.case-item .ques .text-box p {
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0;
}

.case-item .ans {
	margin-top: 50px;
}
.case-item .ans::before {
	content: "";
	width: 272px;
	height: 190px;
	display: block;
}
.case-item .ans .text-box {
	padding: 50px 4%;
	border-radius: 36px;
	box-sizing: border-box;
	position: relative;
	background: #d2e4ff;
}
.case-item .ans .text-box::after {
	content: "";
	position: absolute;
	display: block;
}
.case-item .ans .text-box p {
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0;
}

.case-item .comment {
	max-width: 896px;
	margin: 74px auto 0;
	padding-top: 40px;
	border-top: solid 1px #2f50aa;
}
.case-item .comment .title img {
	width: 146px;
	margin-left: 23px;
}
.case-item .comment p {
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0;
}

@media print, screen and (min-width:768px) {
	.case-item .ques {
		display: flex;
		justify-content: flex-end;
		align-items: flex-start;
		flex-direction: row-reverse;
	}
	.case-item .ques::after {
		margin-left: 20px;
	}
	.case-item .ques .text-box {
		width: calc(100% - 230px);
		margin-left: 40px;
	}
	.case-item .ques .text-box::after {
		width: 75px;
		height: 36.5px;
		background: url(../img/case/fig_voice_02.png) no-repeat 0 0 / contain;
		right: 100%;
		top: 35px;
	}

	.case-item .ans {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: row-reverse;
	}
	.case-item .ans::before {
		background: url(../img/case/fig_tpm.svg) no-repeat 0 0 / 100% auto;
	}
	.case-item .ans .text-box {
		margin-right: 40px;
	}
	.case-item .ans .text-box::after {
		width: 58.5px;
		height: 42.5px;
		background: url(../img/case/fig_voice_01.png) no-repeat 0 0 / contain;
		left: 100%;
		top: 55px;
	}
	.case-item .ans .text-box {
		width: calc(100% - 340px);
	}

	.case-item .comment {
		display: flex;
		justify-content: space-between;
	}
	.case-item .comment p {
		width: calc(100% - 190px);
	}
}

@media screen and (max-width:767px) {
	.case-item + .case-item {
		margin-top: calc(60 / 750 * 100vw);
	}
	.case-item .ques {
		margin-top: calc(80 / 750 * 100vw);
	}
	.case-item .ques::after {
		margin: 11vw 0 0 4vw;
	}

	.case-item.item1 .ques::after { width: calc(170 * 0.18vw); height: calc(220 * 0.18vw); }
	.case-item.item1 .ques::after { width: calc(170 * 0.18vw); height: calc(220 * 0.18vw); }
	.case-item.item2 .ques::after { width: calc(151 * 0.18vw); height: calc(224 * 0.18vw); }
	.case-item.item3 .ques::after { width: calc(155 * 0.18vw); height: calc(222 * 0.18vw); }
	.case-item.item4 .ques::after { width: calc(170 * 0.18vw); height: calc(220 * 0.18vw); }
	.case-item.item5 .ques::after { width: calc(157 * 0.18vw); height: calc(231 * 0.18vw); }

	.case-item .ques .text-box {
		padding: 5vw 7vw;
		border-radius: 8vw;
	}
	.case-item .ques .text-box::after {
		width: calc(205 * 0.08vw);
		height: calc(143 * 0.08vw);
		top: 100%;
		left: 24vw;
		background: url(../img/case/fig_voice_02_sp.png) no-repeat 0 0 / contain;
	}
	.case-item .ques .text-box p {
		font-size: calc(27 / 750 * 100vw);
	}

	.case-item .ans {
		margin-top: 0;
		padding-top: 28vw;
		position: relative;
	}
	.case-item .ans::before {
		width: calc(382 * 0.13vw);
		height: calc(291 * 0.13vw);
		background: url(../img/case/fig_tpm_sp.svg) no-repeat 0 0 / 100% auto;
		position: absolute;
		top: -17vw;
		right: 0;
	}
	.case-item .ans .text-box {
		padding: 5vw 7vw;
		border-radius: 8vw;
	}
	.case-item .ans .text-box::after {
		width: calc(180 * 0.08vw);
		height: calc(111 * 0.08vw);
		bottom: 100%;
		right: 18vw;
		background: url(../img/case/fig_voice_01_sp.png) no-repeat 0 0 / contain;
	}
	.case-item .ans .text-box p {
		font-size: calc(27 / 750 * 100vw);
	}

	.case-item .comment {
		max-width: none;
		margin: calc(80 / 750 * 100vw) auto 0;
		padding-top: 0;
		border-top: none;
	}
	.case-item .comment .title img {
		width: calc(190 / 750 * 100vw);
		margin-left: 0;
		display: block;
		margin: 0 auto;
	}
	.case-item .comment p {
		margin: 2vw 7vw 0;
		font-size: calc(27 / 750 * 100vw);
	}
}
