@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main .mainVisual {
	padding: 55px 0 0;
	background: url("../img/index/main_bg.jpg") no-repeat top left / cover;
}
#main .mainVisual .content {
	max-width: 1195px;
}
#main .mainVisual .fleBox .lBox {
	width: 545px;
}
#main .mainVisual .fleBox .lBox .pho {
	margin-bottom: 25px;
}
#main .mainVisual .fleBox .lBox .imgBox {
	margin-left: 2px;
	align-items: center;
}
#main .mainVisual .fleBox .lBox .subImgBox {
	margin-right: 16px;
	width: 82px;
}
#main .mainVisual .fleBox .lBox .subTextBox p {
	margin-top: 4px;
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 1.61;
	letter-spacing: 0.08em;
	color: #fff;
	flex: 1;
}
#main .mainVisual .fleBox .rBox {
	margin: 5px -50px 0 -262px;
	width: 960px;
}
#main .problem {
	padding: 189px 0 0;
	position: relative;
}
#main .problem .content {
	max-width: 1200px;
}
#main .problem::before {
	position: absolute;
	top: -90px;
	right: calc(50% - 464px);
	width: 122px;
	height: 163px;
	content: "";
	background: url("../img/index/problem_img02.png") no-repeat top right;
}
#main .problem::after {
	position: absolute;
	bottom: -161px;
	left: calc(50% - 746px);
	width: 154px;
	height: 195px;
	content: "";
	background: url("../img/index/problem_img03.png") no-repeat bottom left;
}
#main .problem .imgUl {
	margin-top: -10px;
}
#main .problem .imgUl li {
	margin: 10px 61px 0 0;
	width: 360px;
}
#main .problem .imgUl li:nth-child(3n) {
	margin-right: -2px;
}
#main .problem .imgUl .pho {
	margin-bottom: 41px;
}
#main .problem .imgUl .textBox {
	margin-left: -1px;
}
#main .problem .imgUl .h3Ttl .ttl01 {
	margin: 0 -30px 8px 0;
	font-size: 3.2rem;
	line-height: 1.62;
	letter-spacing: 0.1em;
	display: block;
}
#main .problem .imgUl .text {
	font-size: 2rem;
	font-weight: normal;
	letter-spacing: 0.18em;
	line-height: 1.9;
	text-align: justify;
}
#main .feature {
	padding: 64px 0 45px;
}
#main .feature .dote {
	margin-bottom: 33px;
	text-align: center;
}
#main .feature .headLine01 {
	margin-bottom: 58px;
}
#main .feature .headLine01 .pho img {
	margin-top: -14px;
}
#main .feature .headLine01 .text {
	font-size: 5.8rem;
	line-height: 1.33;
}
#main .feature .ico {
	margin-bottom: 111px;
	text-align: center;
	position: relative;
}
#main .feature .ico::before {
	position: absolute;
	bottom: -27px;
	right: calc(50% - 286px);
	width: 48px;
	height: 60px;
	content: "";
	background: url("../img/index/feature_img13.png") no-repeat center right;
}
#main .feature .inner {
	margin: 0 auto 76px 0;
	padding-top: 50px;
	text-align: center;
}
#main .feature .h3Ttl {
	padding-right: 94px;
	margin-bottom: 74px;
	text-align: center;
	display: inline-block;
	font-size: 4.8rem;
	letter-spacing: 0.1em;
	line-height: 1.2;
	color: #036234;
	position: relative;
}
#main .feature .h3Ttl::after {
	position: absolute;
	top: -20px;
	right: -54px;
	width: 139px;
	height: 153px;
	content: "";
	background: url("../img/index/feature_img03.png") no-repeat center right;
}
#main .feature .h3Ttl .pho img {
	margin: -18px 7px 0 -12px;
}
#main .feature .h3Ttl .text {
	font-size: 4.8rem;
	letter-spacing: 0.08em;
	line-height: 1.2;
	color: #036234;
	display: block;
}
#main .feature .imgUl {
	margin: 0 auto;
	max-width: 907px;
}
#main .feature .imgUl li {
	padding-right: 110px;
	margin-bottom: 104px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
#main .feature .imgUl li:last-child {
	margin-bottom: 0;
}
#main .feature .imgUl li::before {
	position: absolute;
	content: "";
}
#main .feature .imgUl .list01::before {
	bottom: -52px;
	right: calc(50% - 552px);
	width: 104px;
	height: 132px;
	background: url("../img/index/feature_img14.png") no-repeat bottom right;
}
#main .feature .imgUl .list02::before {
	bottom: -76px;
	left: calc(50% - 319px);
	width: 55px;
	height: 55px;
	background: url("../img/index/feature_img15.png") no-repeat bottom left;
}
#main .feature .imgUl .list03::before {
	bottom: -95px;
	left: calc(50% - 168px);
	width: 68px;
	height: 67px;
	background: url("../img/index/feature_img16.png") no-repeat bottom left;
}
#main .feature .imgUl .list03 {
	padding-right: 55px;
}
#main .feature .imgUl .list04 {
	padding-right: 51px;
}
#main .feature .imgUl .phoBox {
	margin-top: 22px;
}
#main .feature .imgUl .list02 .phoBox {
	margin: -10px -9px 0 0;
}
#main .feature .imgUl .list03 .phoBox {
	margin: -16px 0 0;
}
#main .feature .imgUl .list04 .phoBox {
	margin: -8px 0 0;
}
#main .feature .imgUl .textBox {
	text-align: left;
}
#main .feature .imgUl .comBgTxt {
	margin: 0 0 12px 5px;
}
#main .feature .imgUl .comBgTxt .ttl {
	padding-bottom: 4px;
	font-size: 2.5rem;
	line-height: 1.52;
}
#main .feature .imgUl .h4Ttl {
	margin-bottom: 29px;
	display: flex;
	align-items: center;
}
#main .feature .imgUl .num {
	margin-right: 18px;
	width: 83px;
}
#main .feature .imgUl .ttl {
	flex: 1;
	font-size: 3.2rem;
	line-height: 1.62;
	letter-spacing: 0.1em;
	font-weight: 700;
	text-align: left;
}
#main .feature .imgUl .text {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.95;
	letter-spacing: 0.16em;
}
#main .feature .bgBox {
	margin-bottom: 271px;
	padding: 46px 50px 43px;
	background-color: #eee;
}
#main .feature .bgBox .headLine01 {
	margin-bottom: 42px;
	font-size: 3.2rem;
	position: relative;
}
#main .feature .bgBox .headLine01 span {
	position: relative;
	z-index: 2;
}
#main .feature .bgBox .headLine01::before {
	position: absolute;
	top: -18px;
	left: calc(50% - 4px);
	transform: translateX(-50%);
	width: 83px;
	height: 93px;
	content: "";
	background: url("../img/index/feature_img12.png") no-repeat center center;
}
#main .feature .bgBox .textUl {
	margin-top: -35px;
}
#main .feature .bgBox .textUl li {
	margin: 35px 67px 0 0;
	padding: 5px 20px;
	width: calc((100% - 137px)/3);
	min-height: 120px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.83;
	letter-spacing: 0.18em;
	background-color: #fff;
	border-left: 6px solid #FF9500;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}
#main .feature .bgBox .textUl li:nth-child(3n) {
	margin-right: 0;
}
#main .feature .feeBox {
	padding: 55px 20px 57px;
	text-align: center;
	border: 13px solid #036234;
	box-shadow: 3px 4px 2px 0px #B6B6B7;
	position: relative;
}
#main .feature .feeBox::before {
	position: absolute;
	top: -212px;
	right: calc(50% - 468px);
	width: 186px;
	height: 186px;
	content: "";
	background: url("../img/index/fee_img01.png") no-repeat center right;
}
#main .feature .feeBox .h3Ttl01 {
	margin-bottom: 27px;
	text-align: center;
}
#main .feature .feeBox .h3Ttl01 span {
	padding: 5px 47px 9px 55px;
	font-size: 3.2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #fff;
	text-align: center;
	border-radius: 30px;
	background-color: #036234;
}
#main .feature .feeBox .ttl {
	font-size: 3.2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}
#main .feature .feeBox .money {
	margin-bottom: 13px;
	font-size: 2.8rem;
	font-weight: 700;
}
#main .feature .feeBox .money .big {
	font-size: 4.8rem;
	line-height: 1.4;
}
#main .feature .feeBox .note {
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}
#main .innovations {
	margin-top: 255px;
	padding: 98px 0 69px;
	background-color: #FF9500;
	position: relative;
}
#main .innovations::before {
	position: absolute;
	top: -307px;
	left: calc(50% - 536px);
	content: "";
	width: 187px;
	height: 136px;
	background: url("../img/index/innovations_img03.png") no-repeat top left;
}
#main .innovations::after {
	position: absolute;
	top: -106px;
	left: calc(50% + 232px);
	content: "";
	width: 180px;
	height: 173px;
	background: url("../img/index/innovations_img04.png") no-repeat top left;
}
#main .innovations .textBox {
	margin-top: -3px;
	width: calc(100% - 670px);
}
#main .innovations .textBox .h2Ttl {
	margin: 0 0 24px -7px;
	font-size: 4.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.45;
}
#main .innovations .textBox .h2Ttl span {
	padding: 0 7px;
	background: -webkit-linear-gradient(#FF9500 72%,#FFB854 28%) repeat-x center center / 100% 74%;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}
#main .innovations .textBox p {
	margin-right: 15px;
	font-size: 2.2rem;
	line-height: 2;
	letter-spacing: 0.1em;
	font-weight: normal;
	text-align: justify;
	font-feature-settings: "palt";
}
#main .innovations .phoBox {
	margin-right: 1px;
	width: 644px;
	position: relative;
}
#main .innovations .phoBox::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: url("../img/index/innovations_img01.png") no-repeat top center /100% auto;
}
#main .case {
	padding: 271px 0 41px;
	position: relative;
}
#main .case::before {
	position: absolute;
	top: 146px;
	left: calc(50% - 543px);
	width: 267px;
	height: 267px;
	content: "";
	background: url("../img/index/case_img01.png") no-repeat center left;
	mix-blend-mode: multiply;
}
#main .case::after {
	position: absolute;
	top: 198px;
	right: calc(50% - 466px);
	width: 79px;
	height: 62px;
	content: "";
	background: url("../img/index/case_img02.png") no-repeat center right;
}
#main .case .headLine01 {
	margin-bottom: 38px;
}
#main .case .bgBox {
	padding: 88px 152px 87px;
	background: url("../img/index/innovations_bg.jpg") no-repeat center top / 100% 100%;
}
#main .case .headLine01 .pho {
	margin-bottom: -8px;
	display: block;
}
#main .case .imgUl {
	margin: -25px -3px 0 0;
}
#main .case .imgUl li {
	margin-top: 25px;
	width: calc((100% - 23px)/2);
}
#main .case .imgUl p {
	margin-top: -10px;
	padding: 4px 22px 8px;
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	display: block;
	color: #fff;
	background-color: #036234;
	position: relative;
	z-index: 2;
}
#main .merit {
	padding: 254px 0 261px;
	position: relative;
}
#main .merit::before {
	position: absolute;
	top: 243px;
	left: calc(50% - 523px);
	width: 129px;
	height: 130px;
	content: "";
	background: url("../img/index/merit_img01.png") no-repeat top left;
}
#main .merit::after {
	position: absolute;
	top: 48px;
	right: calc(50% - 430px);
	width: 55px;
	height: 55px;
	content: "";
	background: url("../img/index/merit_img02.png") no-repeat top right;
}
#main .merit .headLine01 {
	margin-bottom: 22px;
}
#main .merit .headLine01 .pho {
	margin-bottom: -8px;
	display: block;
}
#main .merit .imgUl {
	margin-top: -38px;
}
#main .merit .imgUl li {
	margin-top: 38px;
	width: calc((100% - 41px) / 2);
}
#main .merit .imgUl .pho {
	margin-bottom: 14px;
}
#main .merit .imgUl .textBox .h3Ttl {
	margin: 0 -10px 3px 0;
	font-size: 3.4rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}
#main .merit .imgUl .textBox p {
	font-size: 2.2rem;
	letter-spacing: 0.18em;
	line-height: 2;
	font-weight: normal;
	text-align: justify;
}
#main .flow {
	padding: 50px 0 82px;
	text-align: center;
	background-color: #EEE;
	position: relative;
}
#main .flow::before {
	position: absolute;
	top: -87px;
	left: calc(50% - 452px);
	width: 42px;
	height: 60px;
	content: "";
	background: url("../img/index/flow_img01.png") no-repeat center left;
}
#main .flow::after {
	position: absolute;
	top: -81px;
	right: calc(50% - 486px);
	width: 193px;
	height: 140px;
	content: "";
	background: url("../img/index/flow_img02.png") no-repeat center right;
}
#main .flow .headLine01  {
	margin-bottom: 63px;
}
#main .flow .headLine01 .pho {
	margin-bottom: -6px;
	display: block;
}
#main .flow a {
	position: relative;
	display: inline-block;
}
#main .flow a::after {
	position: absolute;
	bottom: -30px;
	right: -110px;
	width: 155px;
	height: 143px;
	content: "";
	background: url("../img/common/icon05.png") no-repeat bottom right;
}
#main .flow .note {
	margin-left: -6px;
    text-align: center;
}
#main .flow .note span {
	padding-left: 1em;
    text-indent: -1em;
    font-size: 1.4rem;
    line-height: 1.57;
    font-weight: 300;
    text-align: left;
    display: inline-block;
}
#main .flow .ico {
	margin: 24px 0 22px;
}
#main .flow .text {
	font-size: 5rem;
	font-weight: 700;
	line-height: 1.46;
	letter-spacing: 0.1em;
}
#main .faq {
	padding: 260px 0 166px;
	position: relative;
}
#main .faq::before {
	position: absolute;
	top: 205px;
	left: calc(50% - 631px);
	width: 134px;
	height: 220px;
	content: "";
	background: url("../img/index/faq_img01.png") no-repeat top left;
}
#main .faq::after {
	position: absolute;
	top: calc(50% - 19px);
	right: calc(50% - 610px);
	width: 193px;
	height: 220px;
	content: "";
	background: url("../img/index/faq_img02.png") no-repeat center right;
}
#main .faq .headLine01 {
	margin-bottom: 38px;
}
#main .faq .textUl li {
	margin-bottom: 54px;
	padding: 10px 130px 10px 149px;
	min-height: 186px;
	box-sizing: border-box;
	background-color: #FFF3DD;
	display: flex;
	align-items: center;
}
#main .faq .textUl li:last-child {
	margin-bottom: 0;
}
#main .faq .mark {
	font-size: 3.4rem;
	display: inline-block;
}
#main .faq .ttl,
#main .faq .text {
	font-weight: 700;
}
#main .faq .ttl {
	margin-bottom: 2px;
	font-size: 3.4rem;
	letter-spacing: 0.1em;
	color: #ED7F16;
}
#main .faq .text .mark {
	margin-right: 11px;
}
#main .faq .text01 {
	font-size: 2.2rem;
	letter-spacing: 0.18em;
	line-height: 1.9;
}
#main .company {
	margin-top: 252px;
	padding: 88px 0 252px;
	background-color: #EEEE;
	position: relative;
}
#main .company::before {
	position: absolute;
	top: -495px;
	left: calc(50% - 600px);
	content: "";
	width: 186px;
	height: 186px;
	background: url("../img/index/company_img01.png") no-repeat center top;
}
#main .company h2 {
	margin-bottom: 45px;
	text-align: center;
	font-weight: 700;
	font-size: 4.8rem;
	letter-spacing: 0.1em;
}
#main .company .inner {
	margin-bottom: 42px;
	padding: 52px 58px 48px;
	background-color: #FFF;
}
#main .company .inner:last-of-type {
	margin-bottom: 0;
}
#main .company h3 {
	margin-bottom: 27px;
	text-align: center;
}
#main .company .tabBox {
	margin-bottom: 45px;
}
#main .company table {
	width: 530px;
	border-collapse: collapse;
}
#main .company td,
#main .company th {
	padding: 13px 0 12px;
	font-size: 1.8rem;
	text-align: left;
	vertical-align: top;
	box-sizing: border-box;
	word-break: break-all;
	line-height: 1.77;
	border-bottom: 1px solid #AFAFAF;
}
#main .company td a:hover {
	opacity: 0.7;
}
#main .company th {
	width: 28.5%;
	font-weight: 400;
}
#main .company .txtBox {
	padding: 39px 44px 20px;
	border: 1px solid #AFAFAF;
}
#main .company .txtBox h4 {
	margin-bottom: 32px;
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
}
#main .company .txtBox p {
	font-size: 1.8rem;
	line-height: 2;
}
#main .company .txtBox p .ttl {
	font-weight: 400;
}
#main .company p a:hover {
	opacity: 0.7;
}
#main .company .btmInner {
	padding: 44px 58px 55px;
}
#main .company .btmInner h3 {
	margin-bottom: 40px;
}
#main .company .txtList li {
	line-height: 1.67;
	font-size: 1.8rem;
}
#main .company .txtList li .sml {
	margin-top: 2px;
	display: block;
	font-size: 1.4rem;
}
@media all and (min-width: 897px) and (max-width: 1320px) {
	#main .mainVisual .fleBox .rBox {
		margin: 5px 0 0 -250px;
 	    width: 900px;
	}
}
@media all and (min-width: 897px) {
	#main .company .txtList li a:hover {
		opacity: 0.7;
	}
	#main .flow a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#main .mainVisual {
		padding: 3px 0 0;
		background: url("../img/index/main_bg_sp.jpg") no-repeat top left / auto 100%;
	}
	#main .mainVisual .content {
		max-width: inherit;
		margin: 0 0 0 18px;
	}
	#main .mainVisual .fleBox {
		display: block;
	}
	#main .mainVisual .fleBox .lBox {
		width: auto;
		position: relative;
	}
	#main .mainVisual .fleBox .lBox .pho {
		margin-bottom: 0;
	}
	#main .mainVisual .fleBox .lBox .pho img {
		width: 100%;
	}
	#main .mainVisual .fleBox .lBox .imgBox {
		margin-left: 0;
		position: absolute;
		bottom: 11px;
		left: 0;
	}
	#main .mainVisual .fleBox .lBox .subImgBox {
		margin-right: 4px;
		width: 40px;
	}
	#main .mainVisual .fleBox .lBox .subTextBox p {
		margin-top: 0;
		font-size: 0.7rem;
		line-height: 1.5;
		letter-spacing: 0;
	}
	#main .problem {
		padding: 45px 0 0;
	}
	#main .problem .content {
		max-width: inherit;
	}
	#main .problem::before {
		top: 16px;
		right: 30px;
		width: 62px;
		height: 95px;
		background-size: 61px;
	}
	#main .problem::after {
		bottom: -105px;
		left: calc(50% - 160px);
		width: 84px;
		height: 106px;
		background-size: 84px;
	}
	#main .problem .imgUl {
		margin-top: 0;
		display: block;
	}
	#main .problem .imgUl li {
		margin: 0 0 42px !important;
		width: auto;
	}
	#main .problem .imgUl li:last-child {
		margin-bottom: 0 !important;
	}
	#main .problem .imgUl .pho {
		margin-bottom: 23px;
	}
	#main .problem .imgUl .pho img {
		width: 100%;
	}
	#main .problem .imgUl .textBox {
		margin-left: 0;
	}
	#main .problem .imgUl .h3Ttl .ttl01 {
		margin: 0 0 6px;
		font-size: 2.2rem;
		line-height: 1.68;
	}
	#main .problem .imgUl .text {
		font-size: 1.6rem;
		line-height: 2;
		letter-spacing: 0.1em;
	}
	#main .feature {
		padding: 34px 0 23px;
	}
	#main .feature .dote {
		margin-bottom: 8px;
	}
	#main .feature .dote img {
		width: 6px;
	}
	#main .feature .headLine01 {
		margin-bottom: 30px;
	}
	#main .feature .headLine01 .pho img {
		margin-top: -3px;
		width: 180px;
	}
	#main .feature .headLine01 .text {
		font-size: 2.6rem;
	}
	#main .feature .ico {
		margin-bottom: 13px;
	}
	#main .feature .ico img {
		width: 56px;
	}
	#main .feature .ico::before {
		bottom: 10px;
		right: calc(50% - 97px);
		width: 29px;
		height: 47px;
		background-size: 29px;
	}
	#main .feature .inner {
		margin: 0 0 91px;
	}
	#main .feature .h3Ttl {
		padding-right: 0;
		margin-bottom: 65px;
		text-align: center;
		display: inline-block;
		font-size: 2.4rem;
		line-height: 1.82;
	}
	#main .feature .h3Ttl::after {
		top: -50px;
		right: -40px;
		width: 76px;
		height: 92px;
		background-size: 76px;
	}
	#main .feature .h3Ttl .pho img {
		margin: -3px 6px 0 0;
		width: 151px;
	}
	#main .feature .h3Ttl .text {
		font-size: 2.6rem;
		letter-spacing: 0.1em;
	}
	#main .feature .imgUl {
		margin: 0 auto;
		max-width: inherit;
	}
	#main .feature .imgUl li {
		padding-right: 0 !important;
		margin-bottom: 13px;
		flex-direction: column-reverse;
		align-items: flex-start;
	}
	#main .feature .imgUl li:last-child {
		margin-bottom: 0;
	}
	#main .feature .imgUl .list01::before {
		bottom: 185px;
		right: calc(50% - 141px);
		width: 62px;
		height: 76px;
		background-size: 62px;
	}
	#main .feature .imgUl .list02::before {
		bottom: auto;
		top: 154px;
		left: calc(50% - 126px);
		width: 40px;
		height: 40px;
		background-size: 39px;
	}
	#main .feature .imgUl .list03::before {
		bottom: auto;
		top: -56px;
		left: calc(50% + 85px);
		width: 50px;
		height: 50px;
		background-size: 48px;
	}
	#main .feature .imgUl .phoBox {
		margin: 0 auto 32px !important;
		width: 174px;
	}
	#main .feature .imgUl .list02 .phoBox {
		width: 95px;
	}
	#main .feature .imgUl .list03 .phoBox {
		width: 147px;
	}
	#main .feature .imgUl .list04 .phoBox {
		width: 154px;
	}
	#main .feature .imgUl .comBgTxt {
		margin: 0 0 15px;
	}
	#main .feature .imgUl .textBox {
		margin-bottom: 20px;
	}
	#main .feature .imgUl .h4Ttl {
		margin-bottom: 13px;
	}
	#main .feature .imgUl .num {
		margin-right: 15px;
		width: 50px;
	}
	#main .feature .imgUl .ttl {
		font-size: 2.2rem;
		line-height: 1.5;
	}
	#main .feature .imgUl .text {
		font-size: 1.6rem;
		line-height: 2;
		letter-spacing: 0.09em;
		text-align: justify;
	}
	#main .feature .bgBox {
		margin: 0 -10px 100px;
		padding: 32px 10px 20px 8px;
	}
	#main .feature .bgBox .headLine01 {
		margin-bottom: 36px;
		font-size: 2.5rem;
	}
	#main .feature .bgBox .headLine01 span {
		font-size: 1.9rem;
	}
	#main .feature .bgBox .headLine01::before {
		top: -15px;
		left: 50%;
		width: 53px;
		height: 68px;
		background-size: 52px;
	}
	#main .feature .bgBox .textUl {
		margin-top: 0;
	}
	#main .feature .bgBox .textUl li {
		margin: 0 0 11px !important;
		padding: 5px 22px;
		width: 100%;
		min-height: 60px;
		font-size: 1.4rem;
		line-height: 1.7;
		letter-spacing: 0.1em;
		border-left: 5px solid #FF9500;
	}
	#main .feature .bgBox .textUl li:last-child {
		margin-bottom: 0 !important;
	}
	#main .feature .feeBox {
		padding: 17px 10px 15px;
		margin: 0 -10px;
		border-width: 7px;
		box-shadow: 2px 2px 3px 0px #B6B6B7;
	}
	#main .feature .feeBox::before {
	    top: -117px;
		right: 4px;
		width: 106px;
		height: 106px;
		background-size: 111px;
	}
	#main .feature .feeBox .h3Ttl01 {
		margin-bottom: 21px;
	}
	#main .feature .feeBox .h3Ttl01 span {
		padding: 3px 10px 8px;
		font-size: 2.2rem;
		font-weight: 700;
		line-height: 1.36;
		border-radius: 33px;
		display: block;
	}
	#main .feature .feeBox .ttl {
		font-size: 2.2rem;
	}
	#main .feature .feeBox .money {
		margin-bottom: 10px;
		font-size: 1.6rem;
	}
	#main .feature .feeBox .money .big {
		font-size: 2.6rem;
		line-height: 1.3;
	}
	#main .feature .feeBox .note {
		font-size: 1.4rem;
		line-height: 1.92;
	}
	#main .innovations {
		margin: 91px 0 100px;
		padding: 32px 0 30px;
	}
	#main .innovations::before {
		top: -92px;
		left: 24px;
		width: 100px;
		height: 78px;
		background-size: 94px;
	}
	#main .innovations::after {
		top: -27px;
		left: auto;
		right: 18px;
		width: 100px;
		height: 95px;
		background-size: 90px;
	}
	#main .innovations .flexBox {
		display: block;
	}
	#main .innovations .textBox {
		margin: 0 0 15px;
		width: auto;
	}
	#main .innovations .textBox .h2Ttl {
		margin: 0 10px 0 24px;
		font-size: 2.2rem;
		line-height: 1.6;
	}
	#main .innovations .textBox .h2Ttl span {
		padding: 0 17px 0 3px;
		background: -webkit-linear-gradient(#FF9500 70%,#FFB854 30%) repeat-x center center / 100% 80%;
	}
	#main .innovations p {
		margin-right: 0;
		font-size: 1.4rem;
		font-weight: normal;
		letter-spacing: 0.09em;
		text-align: justify;
		line-height: 1.92;
	}
	#main .innovations .phoBox {
		margin: 0 24px 13px;
		width: auto;
	}
	#main .innovations .phoBox img {
		width: 100%;
	}
	#main .innovations .phoBox::before {
		background-image: url("../img/index/innovations_img01_sp.png");
	}
	#main .case {
		margin-bottom: 24px;
		padding: 0;
	}
	#main .case .content {
		margin: 0;
	}
	#main .case::before {
		top: -84px;
		left: -31px;
		width: 130px;
		height: 130px;
		background-size: 130px;
		background-image: url("../img/index/case_img01_sp.png");
	}
	#main .case::after {
		top: -63px;
		right: 63px;
		width: 65px;
		height: 58px;
		background-size: 40px;
		background-image: url("../img/index/case_img02_sp.png");
	}
	#main .case .headLine01 {
		margin-bottom: 30px;
	}
	#main .case .bgBox {
		padding: 31px 20px 33px;
		background-image: url("../img/index/innovations_bg_sp.jpg");
	}
	#main .case .headLine01 .pho {
		margin-bottom: 0;
	}
	#main .case .imgUl {
		margin: -9px -10px 0;
	}
	#main .case .imgUl li {
		margin-top: 9px;
		width: calc((100% - 8px)/2);
	}
	#main .case .imgUl li .pho img {
		width: 100%;
	}
	#main .case .imgUl li:last-child {
		margin-bottom: 0;
	}
	#main .case .imgUl p {
		margin-top: -3px;
		padding: 0 8px;
		font-size: 1.4rem;
	}
	#main .merit {
		padding: 59px 0 91px;
	}
	#main .merit::before {
		top: 8px;
		left: 20px;
		width: 75px;
		height: 85px;
		background-size: 65px;
	}
	#main .merit::after {
		display: none;
	}
	#main .merit .headLine01 {
		margin-bottom: 32px;
	}
	#main .merit .headLine01 .pho {
		margin-bottom: 0;
	}
	#main .merit .imgUl {
		margin-top: 0;
		display: block;
	}
	#main .merit .imgUl li {
		margin: 0 0 30px;
		width: 100%;
	}
	#main .merit .imgUl li:last-child {
		margin-bottom: 0;
	}
	#main .merit .imgUl .pho {
		margin-bottom: 15px;
	}
	#main .merit .imgUl .pho img {
		width: 100%;
	}
	#main .merit .imgUl .textBox .h3Ttl {
		margin: 0 0 7px;
		font-size: 2.2rem;
		line-height: 1.68;
	}
	#main .merit .imgUl .textBox p {
		font-size: 1.6rem;
		letter-spacing: 0.09em;
		line-height: 2;
	}
	#main .flow {
		padding: 30px 0 37px;
	}
	#main .flow::before {
		top: -48px;
		left: 32px;
		width: 35px;
		height: 50px;
		background-size: 21px;
	}
	#main .flow::after {
		top: -55px;
		right: 21px;
		width: 90px;
		height: 95px;
		background-size: 80px;
		background-image: url("../img/index/flow_img02_sp.png")
	}
	#main .flow .headLine01  {
		margin-bottom: 22px;
	}
	#main .flow .headLine01 .pho {
		margin-bottom: 0;
	}
	#main .flow a {
		margin: 0 -15px 3px -14px;
		max-width: 400px;
	}
	#main .flow a::after {
		bottom: -62px;
		right: 21px;
		width: 80px;
		height: 80px;
		background-size: 54px;
		background-image: url("../img/common/icon05_sp.png");
	}
	#main .flow .ico {
		margin: 21px 0 14px;
	}
	#main .flow .ico img {
		margin: 0 auto;
		width: 47px;
	}
	#main .flow .note {
		margin-left: -8px;
		padding-left: 1em;
		text-indent: -1em;
		font-size: 0.8rem;
		text-align: left;
	}
	#main .flow .note span {
		font-size: 0.8rem;
		line-height: 1.5;
	}
	#main .flow .note .subText {
		margin-left: -1em;
	}
	#main .flow .text {
		font-size: 2.2rem;
		line-height: 1.68;
	}
	#main .faq {
		padding: 93px 0 24px;
	}
	#main .faq .content {
		margin: 0 10px;
	}
	#main .faq::before {
		top: 69px;
		left: 11px;
		width: 70px;
		height: 110px;
		background-size: 67px;
	}
	#main .faq::after {
		top: auto;
		bottom: 217px;
		right: 21px;
		width: 90px;
		height: 95px;
		background-size: 96px;
	}
	#main .faq .headLine01 {
		margin-bottom: 33px;
	}
	#main .faq .textUl li {
		margin-bottom: 37px;
		padding: 27px 20px 21px 30px;
		min-height: 143px;
	}
	#main .faq .mark {
		margin: -7px 7px 0 5px;
		font-size: 2.2rem;
		width: 17px;
	}
	#main .faq .ttl {
		margin-bottom: 9px;
		font-size: 1.7rem;
		letter-spacing: 0.1em;
		line-height: 1.58;
		display: flex;
		align-items: flex-start;
	}
	#main .faq .text {
		margin-left: 5px;
		display: block;
	}
	#main .faq .text .mark {
		margin: -7px 2px 2px 0;
	}
	#main .faq .text01,
	#main .faq .text02 {
		flex: 1;
	}
	#main .faq .text01 {
		font-size: 1.4rem;
		letter-spacing: 0.09em;
		line-height: 1.92;
	}
	#main .company {
		margin-top: 92px;
		padding: 23px 0 32px;
	}
	#main .company .content {
		margin: 0 10px;
	}
	#main .company::before {
	    top: -92px;
		left: 24px;
		width: 100px;
		height: 120px;
		background-size: 93px;
	} 
	#main .company h2 {
		margin-bottom: 19px;
		font-size: 2.6rem;
	}
	#main .company .inner {
		margin-bottom: 35px;
		padding: 33px 20px 30px !important;
	}
	#main .company h3 {
		margin-bottom: 16px;
	}
	#main .company h3 img {
		height: 17.5px;
	}
	#main .company .tabBox {
		margin-bottom: 20px;
		display: block;
	}
	#main .company table {
		margin-bottom: 32px;
		width: 100%;
	}
	#main .company table:last-child {
		margin-bottom: 0;
	}
	#main .company td,
	#main .company th {
		padding: 5px 0;
		width: 100%;
		font-size: 1rem;
	}
	#main .company td {
		line-height: 1.6;
		vertical-align: middle;
	}
	#main .company th {
		width: 27.5%;
	}
	#main .company .txtBox {
		padding: 10px 14px 20px;
	}
	#main .company .txtBox h4 {
		margin-bottom: 17px;
		font-size: 1.2rem;
	}
	#main .company .txtBox p {
		margin-bottom: 10px;
		font-size: 1rem;
		line-height: 1.6;
	}
	#main .company .txtBox p:last-child {
		margin-bottom: 0;
	}
	#main .company .txtBox p .ttl {
		font-weight: 500;
	}
	#main .company .btmInner {
		padding: 45px 20px 28px !important;
	}
	#main .company .btmInner h3 {
		margin-bottom: 13px;
	}
	#main .company .btmInner h3 img {
		height: 16px;
	}
	#main .company .txtList li {
		font-size: 1rem;
		line-height: 1.6;
	}
	#main .company .txtList li .sml {
		font-size: 0.9rem;
	}
}
@media all and (max-width: 355px) {
	#main .problem .imgUl .text {
		letter-spacing: 0.05em;
	}
	#main .case .headLine01 {
		font-size: 2.4rem;
	}
	#main .feature .imgUl .text {
		letter-spacing: 0.1em;
	}
	#main .feature .h3Ttl::after {
		right: -36px;
		background-size: 70px;
	}
	#main .innovations .textBox .h2Ttl {
		margin: 0;
	}
	#main .innovations .phoBox {
		margin: 0 0 13px;
	}
	#main .flow .text {
		font-size: 2.1rem;
	}
	#main .faq .text01 {
		font-size: 1.3rem;
	}
}