.txtEx {
	text-indent: 120%;
	white-space: nowrap;
	overflow: hidden;
}
.PC {display: none;}
.SP {display: inherit;}

html {
	font-size: 1.333vw; /*defaultFontsize(10px) / maxWidth(750px) * 100*/
}
body {
}
img {
	width: 100%;
	height: auto;
}

/*--------------------
No1*/

/*--No2*/

/*No3*/



.fv {
	background: url("../images/spbg_fv.jpg") no-repeat center top;
	background-size: 100% 100%;
}
.fv .logo {
	width: 15.3rem;
	margin: 0 0 0 3.7rem;
	padding-top: 2.5rem;
}
.fv .txt01 {}
.fv .txt02 {
	width: 100%;
}
.fv .txt02 p {
		top: 2.2rem;
		left: 7.9rem;
	font-size: 2.716rem;
}
.fv .txt02 p mark {
	font-size: 4.345rem;
}



.cv01 {
	display: flex;
		align-items: center;
	min-height: 15rem;
	background: url("../images/spbg_cv01.jpg") no-repeat center top;
	background-size: 100% 100%;
}
.btnwrap {
	display: block;
	width: 100%;
	margin: 0 auto;
}
	.cv01 .btnwrap {
		padding: 8rem 0;
	}
	.cv01 .btnwrap .btn01 {
		margin-bottom: 5rem;
	}
.btn01 {
	width: 65rem;
	min-height: 13rem;
	margin: 0 auto;
	font-size: 4.114rem;
}
	.btn01:after {
		width: 1.7rem;
		margin-left: 2rem;
		height: 2.8rem;
		background: url("../images/spbtn_arr.png") no-repeat;
		background-size: 100%;
	}
.btn02 {
	width: 65rem;
	min-height: 13rem;
	margin: 0 auto;
	font-size: 3.565rem;
}
	.btn02:after {
		width: 1.7rem;
		margin-left: 2rem;
		height: 2.8rem;
		background: url("../images/spbtn_arr.png") no-repeat;
		background-size: 100%;
	}
.btn03 {
	width: 60rem;
	min-height: 12rem;
	font-size: 3.6rem;
}
	.btn03:after {
		width: 1.7rem;
		margin-left: 2rem;
		height: 2.8rem;
		background: url("../images/spbtn_arr.png") no-repeat;
		background-size: 100%;
	}



.prob {
	padding-top: 9.3rem;
	background: url("../images/spbg_prob.jpg") no-repeat center top;
	background-size: 100% 100%;
}
.prob .txt01 {
	width: 100%;
	min-height: 113.8rem;
	background: url("../images/spprobtxt01.png") no-repeat center top;
	background-size: 100%;
}
.prob .txt01 .head {
	display: flex;
		flex-direction: column;
		align-items: center;
	padding-top: 10rem;
	font-size: 3.08rem;
	line-height: 2.3;
}
			.prob .txt01 .head .PC {
				display: none;
			}
.prob .txt01 .head mark {
	margin: 0;
	padding: 0 1.6rem;
	font-size: 3.52rem;
	line-height: 1.4;
}
	.prob .txt01 .head mark:before {
	}
.prob .txt01 .head strong {
	display: block;
	margin-top: 1.8rem;
	line-height: 1.38;
}
.prob .txt01 .head strong b {
}
.prob .txt01 .lists {
	display: block;
	width: 60rem;
	margin-top: 5rem;
	padding-left: 6.3rem;
	font-size: 3rem;
	line-height: 1;
}
.prob .txt01 .lists li {
	margin-bottom: 5.6rem;
	line-height: 1.333;
}
	.prob .txt01 .lists li:nth-child(2) {
		margin-bottom: 7.4rem;
	}
	.prob .txt01 .lists li:nth-child(3) {
		margin-bottom: 6.6rem;
	}
.prob .txt01 .lists mark {
	line-height: 1.333;
}

.prob .txt02 {}
.prob .txt02 .head {
	margin-top: 8.5rem;
}
.prob .txt02 .head p {
		top: -0.2rem;
	font-size: 4.05rem;
}

.prob .txt03 {
	max-width: none;
	width: 100%;
}
.prob .txt03 p {
	width: 100%;
	min-height: 83.5rem;
	margin-top: 1.6rem;
	padding-top: 45.1rem;
	padding-left: 0rem;
	font-size: 3.4rem;
	text-align: center;
	line-height: 1.687;
	background: url("../images/spprobtxt03.png") no-repeat center top;
	background-size: 100% auto;
}
.prob .txt03 p mark {
}



.point {
	padding-top: 0rem;
	background: url("../images/spbg_point.jpg") no-repeat center top;
	background-size: 100% auto;
	min-height: 994.6rem;
}
.point h2 {
	display: block;
	min-height: 11.3rem;
	margin-bottom: 8rem;
	padding-top: 2.6rem;
	line-height: 1.1;
	background: url("../images/sppointtxt01.png") no-repeat center bottom;
	background-size: 100%;
}
.point h2 mark {
}
.point h2 span {
}

.pointwrap {}
.pointwrap h3 {
	width: 70rem;
	margin: 0 auto;
	margin-bottom: 2.5rem;
	text-align: center;
}
	.pointwrap h3:after {
		content: "";
		display: block;
		height: 0.3rem;
		margin-top: 1.8rem;
		background: linear-gradient(90deg, rgba(116,117,202,1) 0%, rgba(54,161,244,1) 100%);
	}
.pointwrap .pointicon {
	display: block;
	margin: 0 auto;
}
.pointwrap h3 p {
	margin-top: 3rem;
	white-space: nowrap;
}
.pointwrap .txtarea {
	width: 68.5rem;
	font-size: 2.6rem;
	line-height: 2.07;
}
.pointwrap .txtarea mark {
}
	.pointwrap.point01 .img {
		width: 100%;
		margin-top: 7.6rem;
	}
	.pointwrap.point02 {
		margin-top: 10.5rem;
	}
	.pointwrap.point02 .img {
		width: 100%;
		margin: 0 auto;
		margin-top: 1.8rem;
	}
	.pointwrap.point03 {
		margin-top: 7.9rem;
	}
	.pointwrap.point03 .img {
		width: 100%;
		margin: 0 auto;
	}
	.pointwrap.point04 {
		margin-top: 8.4rem;
	}
	.pointwrap.point04 .img {
		width: 100%;
		margin: 0 auto;
		margin-top: 1.9rem;
	}
	.pointwrap.point04 .txtarea {
		width: 69.9rem;
	}
	.pointwrap.point05 {
		margin-top: 5.9rem;
	}
	.pointwrap.point05 .img {
		width: 100%;
		margin: 0 auto;
		margin-top: 4.4rem;
	}
.pointwrap .caption {
	width: 67rem;
	min-height: 5.2rem;
	font-size: 3.38rem;
}
	.pointwrap .caption.c01 {
		margin-top: 6.8rem;
	}
.pointwrap.point03 .table {
	margin-top: 3.6rem;
}
.pointwrap.point03 .table table {
}
	.pointwrap.point03 .table tr:first-child th {
		padding: 0 0.7%;
	}
	.pointwrap.point03 .table tr:first-child th span {
		min-height: 4.5rem;
		font-size: 2.2rem;
		border-radius: 0.54rem 0.54rem 0 0;
	}
	.pointwrap.point03 .table .or {
	}
	.pointwrap.point03 .table .gr {
	}
	.pointwrap.point03 .table .gb {
	}
.pointwrap.point03 .table * {
}
.pointwrap.point03 .table tr {}
.pointwrap.point03 .table tr td {
	min-width: 11.8rem;
}
	.pointwrap.point03 .table tr:last-child td {
	}
	.pointwrap.point03 .table tr:not(:first-child) > * {
		line-height: 5.2rem;
	}
	.pointwrap.point03 .table tr:not(:first-child) th {
		height: 5.2rem;
	}
	.pointwrap.point03 .table tr:not(:first-child) th span {
		width: 10.9rem;
		height: 91.61%;
		font-size: 2.2rem;
		border-radius: 0.54rem 0 0 0.54rem;
	}
	.pointwrap.point03 .table tr:not(:first-child) td:nth-child(2) {
	}
	.pointwrap.point03 .table tr:last-child {}
	.pointwrap.point03 .table tr:last-child > * {
		line-height: 1.27;
	}
	.pointwrap.point03 .table tr:last-child td {
		height: 10.1rem;
	}
.pointwrap.point03 .table .come td,
.pointwrap.point03 .table .data .come td:nth-child(2) {
	font-size: 2.2rem;
}

.pointwrap.point03 .table .note {
	width: 67rem;
	margin-top: 0.7rem;
	font-size: 2rem;
}
.pointwrap.point03 .btnwrap {
	margin-top: 5rem;
}

.pointwrap.point03 .graph {
	display: block;
	width: 100%;
	margin-top: 11.9rem;
}
.pointwrap.point03 .graph > div {
	position: relative;
	width: 100%;
}
.pointwrap.point03 .graphcap {
		top: 0.4rem;
	width: 40.6rem;
	font-size: 3.521rem;
}



.voice {
	padding-top: 6.2rem;
	background: url("../images/spbg_voice.jpg") no-repeat center top;
	background-size: 100% 100%;
}
.voice h2 {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	background: url("../images/spvoicetxt01.png") no-repeat center top;
	background-size: 100%;
}
.voice h2 > span {
	display: block;
	padding-top: 4.1rem;
	padding-left: 1.3rem;
	font-size: 3.4rem;
	line-height: 1;
	letter-spacing: 0.04em;
}
.voice h2 strong {
	display: block;
	margin-top: 2.7rem;
	font-size: 4.4rem;
	line-height: 1.34;
	letter-spacing: 0.06em;
}
.voice h2 strong span {
	font-size: 90.9%;
}

.voice .lists {
	width: 67rem;
	margin-top: 4.4rem;
}
.voice .lists > li {
	display: block;
	min-height: 0rem;
	padding: 7rem 5rem;
}
.voice .lists .img {
	width: 58.6rem;
}
.voice .lists .txt {
	width: 55rem;
	margin-top: 1rem;
}
.voice .lists .tag {
	display: block;
}
.voice .lists .tag li {
	display: inline-block;
	margin-right: 1rem;
	margin-bottom: 2rem;
	padding: 0.6rem 1.5rem;
	font-size: 2.64rem;
}
.voice .lists .txt p {
	margin-top: 0rem;
	font-size: 2.6rem;
	line-height: 2.07;
}
.voice .lists .txt p strong {
	color: #fffa4c;
}
	.voice .lists .list01 {
		margin-bottom: 4rem;
	}
	.voice .lists .list02 {
		margin-bottom: 4rem;
	}
	.voice .lists .list03 {
		padding-bottom: 5.8rem;
	}
.voice .btnwrap {
	margin-top: 6rem;
}



.flow {
	padding-top: 9.7rem;
	background: url("../images/spbg_flow.jpg") no-repeat center top;
	background-size: 100% 100%;
}
.flow h2 {
	display: flex;
		justify-content: center;
		align-items: center;
	width: 100%;
	height: 30.9rem;
	padding-top: 16.7rem;
	background: url("../images/spflowtxt01.png") no-repeat center top;
	background-size: 100%;
}
.flow .lists {
	width: 67rem;
	margin: 0 auto;
	margin-top: 2.4rem;
}
	.flow .lists li.li01 {height: 10.0rem;background-image: url("../images/spflow01bg.png");}
	.flow .lists li.li02 {height: 13.4rem;background-image: url("../images/spflow02bg.png");}
	.flow .lists li.li03 {height: 13.0rem;background-image: url("../images/spflow03bg.png");}
	.flow .lists li.li04 {height: 17.6rem;background-image: url("../images/spflow04bg.png");}
	.flow .lists li.li05 {height: 13.2rem;background-image: url("../images/spflow05bg.png");}
	.flow .lists li.li06 {height: 23.9rem;background-image: url("../images/spflow06bg.png");}
.flow .lists li {
	width: 100%;
	padding-left: 11.7rem;
	color: #fff;
	background: no-repeat center top;
	background-size: 100% 100%;
}
.flow .lists li .num {
}
.flow .lists li .num span {
}
.flow .lists li .txt {
	width: 43.7rem;
	min-height: 8.6rem;
}
	.flow .lists li.li04 .txt{
		min-height: 13.2rem;
	}
	.flow .lists li.li06 .txt {
		min-height: 19rem;
	}
.flow .lists li .txt span {
	margin-top: 1.4rem;
	font-size: 2.4rem;
	line-height: 1.33;
}



.media {
	padding-top: 9.7rem;
/*	background: url("../images/bg_media.jpg") no-repeat center top;*/
	background-size: 200rem 100%;
}
.media h2 {
	display: flex;
		justify-content: center;
		align-items: flex-end;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 2.8rem;
	color: #333;
	font-size: 2.8rem;
	letter-spacing: 0.08em;
	text-align: center;
	background: url("../images/media_headline.png") no-repeat center bottom;
	background-size: 71.6rem auto;
}
.media h2 mark {
	position: relative;
	color: #f15b13;
	font-size: 4rem;
	letter-spacing: 0.08em;
	background: linear-gradient(180deg, rgba(255,232,151,0) 70%, rgba(255,232,151,1) 70%);
}
	.media h2 mark:after {
		content: "";
		position: absolute;
			z-index: 10;
			top: 0rem;
			left: calc(50% - 0.7rem / 2);
		width: 0.7rem;
		height: 0.7rem;
		border-radius: 50%;
		background: #f15b13;
	}
.media .jisseki {
	position: relative;
	margin-top: 3.1rem;
}
.media .jisseki .img {
	width: 100%;
	margin: 0 auto;
}
.media .jisseki .lists {
	position: absolute;
		z-index: 10;
		top: 22.4rem;
		left: 50%;
		transform: translateX(-50%);
	display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	width: 53.6rem;
	margin: 0 auto;
}
.media .jisseki .lists li {
	width: 26.6rem;
	margin-bottom: 4.2remm;
	padding-top: 15.6rem;
	color: #333;
	font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.444;
	white-space: nowrap;
}



.cv02 {
	margin-top: 7rem;
	padding-top: 7.9rem;
	padding-bottom: 7.7rem;
	background: url("../images/spbg_cv02.jpg") no-repeat center bottom;
	background-size: 100% 100%;
}
.cv02 h2 {
	text-align: center;
}
.cv02 h2 div {
	position: relative;
		z-index: 10;
	display: inline-block;
	margin-bottom: 2.4rem;
	padding: 0 1.6rem;
}
	.cv02 h2 div:before {
		content: "";
		position: absolute;
			z-index: -1;
			top: 0;right: 0;bottom: 0;left: 0;
		background: #fff;
		transform: skewX(-20deg);
	}
.cv02 h2 span {
	font-size: 4.5rem;
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: 0.06em;
	background: linear-gradient(30deg, #ff7900 0%, #f5bb00 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.cv02 h2 span b {
	font-size: 76.9%;
}
.cv02 .txt01 {
	display: flex;
		justify-content: center;
		align-items: center;
	margin-top: 1.3rem;
	line-height: 1.394;
}
.cv02 .txt01 .icon {
	display: flex;
		justify-content: center;
		align-items: center;
	width: 14rem;
	height: 14rem;
	margin-right: 2rem;
	color: #022441;
	font-size: 3.469rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	border-radius: 50%;
	background: #fff;
}
.cv02 .txt01 .t {
	color: #fff;
	font-size: 5rem;
	font-weight: 700;
}
.cv02 .txt01 .t span {
	font-size: 80%;
}
	.cv02 .txt01 .t:after {
		content: "";
		display: block;
		width: 100%;
		height: 0.3rem;
		margin-top: 1rem;
		background: linear-gradient(30deg, #36a1f4 0%, #a6d8ed 100%);
	}
.cv02 .btnwrap {
	margin-top: 7.6rem;
}
.cv02 .btn01 {
	margin-bottom: 5rem;
}

.copy {
	display: flex;
		justify-content: center;
		align-items: center;
	width: 100%;
	height: 4.4rem;
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.06em;
	background: #1a1a1a;
}



.fixbnr {
	pointer-events: none;
	position: fixed;
		z-index: 10000;
		bottom: 0;
	display: flex;
		justify-content: center;
		align-items: center;
	width: 100%;
	width: 100vw;
	min-height: 15rem;
	background: rgba(255,255,255,0.8);
	transition: opacity 0.15s;
	opacity: 0;
}
	.fixbnr.is-active {
		pointer-events: auto;
		opacity: 1;
	}
	.fixbnr.is-hidden {
		pointer-events: none;
		opacity: 0;
	}

.fixbnr .btnwrap {
	display: flex;
		justify-content: space-between;
	width: 67rem;
	margin: 0 auto;
}
.fixbnr .btn01 {
	width: 32rem;
	min-height: 8.6rem;
	font-size: 2.8rem;
}
.fixbnr .btn02 {
	width: 32rem;
	min-height: 11.9rem;
	font-size: 2.8rem;
	line-height: 1.117;
}