@media screen and (min-width: 769px){
	.sp{
		display: none;
	}
}
body.page{
	background: #ededed !important;
}
.button{
	border-radius: 0;
}
header .button{
	border-radius: 500px;
}
.section_btn{
	
}
.section_btn a{
	background: #2f2f2f;
    color: #fff;
    transition: ease all .4s;
    max-width: 340px;
    width: 100%;
    display: block;
    font-size: 18px;
    border-radius: 5px;
    padding: 15px;
    text-align: center;
	position: relative;
}
.section_btn a::before{
	content: '';
	display: block;
	width: 8px;
	height: 13px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	background: url(../images/arrow.png)no-repeat center;
}
.section_btn a:hover{
	background: var(--color-red);
}
.section-title .poppins{
	font-weight: 800;
}
.mainvisual__title-copy.mvp_title{
	font-size: 5.8rem;
}
.mainvisual__inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1360px;
    width: 100%;
    margin: 0 auto;
    padding: 10rem 50px 6rem;
}
.mainvisual__image{
	left: auto;
	transform: none;
    position: relative;
}
.price{
	padding: 2rem 8rem;
	background: url(../images/price-left.png) no-repeat center left, url(../images/price-right.png) no-repeat center right;
}
.price_bottom{
	margin: 20px auto;
	text-align: center;
}
@media screen and (max-width: 768px){
	.price{
		font-size: 1.8rem;
		padding: 2rem 6rem;
	}
	.price br{
		display: inherit;
	}
	.price_bottom{
		padding: 0 40px;
        font-size: 12px;
		font-weight: 500;
	}
	.mainvisual__inner{
		padding: 5rem 20px 6rem;
	}
	.mainvisual__title-copy,
	.mainvisual__title-copy.mvp_title {
        font-size: 3rem;
    }
	.mainvisual__image{
		margin-top: 20px;
	}
	.mainvisual__title-copy br{
		display: inherit;
	}
}
.solution-text{
	
}
.solution-item__icon{
	position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.solution-summary{
	display: block;
    min-height: inherit;
    padding: 0;
    border-radius: 0;
    text-align: center;
    background: none;
    color: var(--color-red);
    font-size: 2.4rem;
    font-weight: 800;
}
.solution-summary:before{
	content: "";
    display: block;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-top: 18px solid #cacaca;
    margin: 40px auto 25px;
}

.strengths .section-title {
    text-align: left;
}
.strengths-list__item:nth-of-type(2) {
	padding-bottom: 8rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.strengths .section_btn{
	padding-bottom: 80px;
}
.strengths .section_btn a{
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	font-weight: 600;
}
.strengths-list {
    display: grid;
    grid-template-columns: repeat(2, 540px);
    grid-template-rows: repeat(8, auto);
    justify-content: space-between;
    gap: 8rem 0;
	margin-top: 40px;
}
.strengths-list__title{
	display: block;
	font-weight: 900;
}
.strengths-list_num_title{
	font-size: 2.5rem;
	font-weight: 800;
	opacity: .7;
}
.strengths-list__item:nth-of-type(4){
	grid-column: 2 / 3;
	grid-row: 4 / 6;
}
.cloud .strengths-list{
    grid-template-rows: repeat(10, auto);
}
.cloud .strengths-list__item:nth-of-type(3){
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.cloud .strengths-list__item:nth-of-type(4) {
	padding-bottom: 8rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.cloud .strengths-list__item:nth-of-type(5){
	grid-column: 1 / 2;
    grid-row: 5 / 7;
}
.cloud .strengths-list__item:nth-of-type(6){
	grid-column: 2 / 3;
    grid-row: 6 / 8;
}
.feature_text{
	margin: 40px auto 50px;
}
.record{
	margin: 60px auto;
	padding: 0 20px;
	max-width: 800px;
	width: 100%;
}
.record .record-section{
	padding: 20px;
	background: #fff;
    border-radius: 10px;
}
.record .record-section h2{
	font-weight: 900;
	font-size: 2.2rem;
}
.record .record-section .record-inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px solid #d5d5d5;
}
.record .record-section .record-inner:last-child{
	border-bottom: 0;
	padding-bottom: 0;
}
.record .record-section .record-inner .record-text{
	
}
.record .record-section .record-inner .record-text .record-subtitle{
	font-size: 1.4rem;
	font-weight: 800;
	color: #d2d2d2;
}
.record .record-section .record-inner .record-text .record-title{
	font-size: 1.8rem;
	font-weight: 800;
}
.record .record-section .record-inner .record-num{
	font-size: 4rem;
	font-weight: 600;
	letter-spacing: 2px;
	color: #fb5f51;
}
.promise-title{
	text-align: left;
}
.promise-list__item-description{
	padding: 0 3rem;
    line-height: 1.6;
}
.solution-item__title span{
    font-size: 1.4rem;
    font-weight: 500;
    display: block;
    margin-top: 10px;
}
.cloud .promise-list__text .noto-sans-jp-700{
	font-size: 2rem;
}
.cloud .promise-list__item-description{
	font-size: 1.6rem;	
}
@media screen and (max-width: 1023px){
	.strengths-list{
		display: flex;
		flex-direction: column;
		margin-top: 5rem;
	}
	.strengths-list__item:nth-of-type(2) {
		padding-bottom: 8rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.4);
	}
	.strengths-list__item:nth-of-type(3) {
        grid-row: 6 / 8;
		padding-bottom: 8rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.4);
    }
	.solution-list{
		gap: 4rem;
	}
	.solution-item {
		display: flex;
		flex-flow: row-reverse;
		align-items: center;
	}
	.solution-text{
    	width: calc(100% - 120px);
	}
	.solution-item__icon{
		width: 30px;
		height: 30px;
		position: relative;
		left: 0;
		transform: none;
		font-size: 1.6rem;
		padding-top: 2px;
	}
	.solution-item__title {
        text-align: left;
        height: auto;
		margin-top: 10px;
		font-size: 1.6rem;
    }
	.solution-item__image {
		height: auto;
	}
	.solution-item__image img{
		width: 120px;
    	object-fit: contain;
	}
	.solution-summary{
		font-size: 2.2rem;
	}
	.strengths .section_btn{
		margin-top: 60px;
	}
}
@media screen and (max-width: 768px){
	.strengths{
		padding-top: 1rem;
		padding-bottom: 2rem;
	}
	.solution-item__title{
		line-height: 1.5;
	}
	.feature_text{
		font-size: 1.4rem;
		line-height: 1.5;
	}
	.strengths-list__title{
		font-size: 1.8rem;
	}
	.strengths-list__title br{
		display: block;
	}
	.strengths-list_num_title{
		font-size: 1.6rem;
	}
	.record .record-section .record-inner{
		line-height: 1;
	}
	.record .record-section .record-inner .record-text .record-subtitle{
		margin-bottom: 10px;
	}
}
.footer{
	margin-top: 0;
}
.footer_wrapper{
	background: #fe4b22;
	position: relative;
	overflow: hidden;
}
.footer-image{
	margin-top: 30px;
}
.footer_bg img{
	position: absolute;
}
.footer_bg img:nth-child(1){
    right: -30px;
    top: 60px;
    opacity: .3;
}
.footer_bg img:nth-child(2){
	right: -50px;
    bottom: 30%;
}
.footer_bg img:nth-child(3){
	left: -20px;
    top: 20%;
}
.footer_bg img:nth-child(4){
	bottom: 40px;
    left: -30px;
    opacity: .3;
}
.footer-inner{
	background: none;	
}
.footer-inner .section-title{
	text-align: left;
}
.footer-text__description{
	font-size: 1.9rem;
	margin-top: 20px;
}
.form-content{
	border-radius: 20px;
	position: relative;
}
.form-content .form_title{
	font-weight: 800;
	padding: 0 40px;
	padding-top: 40px;
}
.solution {
	margin-top: 5rem;
    padding-top: 7rem;
}
.promise{
	padding-top: 7rem;
    margin-top: 5rem;
}
.cases{
	padding: 10rem 0;
    margin-top: 13rem;
    background: #fff;
}
.cases .button{
	max-width: 340px;
	width: 100%;
    margin: 5rem auto 0;
	border-radius: 5px;
	position: relative;
}
.cases .button::before{
	content: '';
	display: block;
	width: 8px;
	height: 13px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	background: url(../images/arrow.png)no-repeat center;
}
.faq{
	background: none;
	padding: 7rem 0 17rem;
    margin: 5rem 0 0;
}
@media screen and (max-width: 1023px){
    body {
        padding-top: 10px;
    }
	.footer_bg img:nth-child(2){
		right: -50px;
    	bottom: 15%;
	}
	.footer_bg img:nth-child(3){
		left: -92px;
    	top: 28%;
	}
}












/* ====================
 * 
 * mvp
 *
 * ====================*/
.service {
    position: relative;
    margin-top: 0;
    padding: 26rem 0 23rem;
    background: #ffffff;
}
.service::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13rem;
    z-index: 0;
    pointer-events: none;
    display: block;
    width: calc(100% - (100% - 1100px) / 2 - 10rem);
	max-width: 100%;
    height: calc(100% - 26rem);
    background: var(--color-gray);
    border-radius: 0 160px 160px 0;
}
.section-scroll{
	position: relative;
	z-index: 2;
	margin: 6rem auto 2rem;
}