@charset "utf-8";
/* ===================================================================

 file name  :about / chapter03.css
 style info :価格は定額制

=================================================================== */

/* =============================

	overwrite

=============================== */




/* =================================== */

/* 
	.ttl-wrap
--------------------------------------*/
#main .ttl-wrap{
	margin: -27px 0 15px;
	padding: 0 0 10px;
	border-bottom: solid 2px #333;
	text-align: center;
	font-weight: 700;
	color: #333;
	position: relative;
	z-index: 10;
}
#main .ttl-wrap .point-num{
	width: 55px;
	height: 55px;
	margin: 0 auto 10px;
	padding: 8px 0 0;
	background: #e4a59b;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1;
	border-radius: 50%;
	position: relative;
}
#main .ttl-wrap .point-num span{
	display: block;
	font-size: 1.1rem;
}
#main .ttl-wrap .point-num::before{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: #e4a59b transparent transparent transparent;
	position: absolute;
	left: calc(50% - 4px);
	bottom: -6px;
}

#main .ttl-wrap .bg-plan{
	padding: 10px 5px;
	background: #f9f9f9;
}
#main .ttl-wrap .plan{
	margin: 0 0 10px;
	display: flex;
	justify-content: center;
}
#main .ttl-wrap .plan p{
	width: 152px;
	margin: 0 5px;
	font-size: 1.2rem;
	border: solid 4px;
	border-radius: 7px;
	background: #fff;
}
#main .ttl-wrap .plan p span{
	font-size: 1.7rem;
}
#main .ttl-wrap .plan p.smart{
	border-color: #ddb0b0;
	color: #bd8585;
}
#main .ttl-wrap .plan p.wide{
	border-color: #99b89a;
	color: #749c75;
}
#main .ttl-wrap .plan-txt{
	margin: 10px 0 0;
	color: #737378;
	font-size: 1.1rem;
}
#main .ttl-wrap h2{
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
}
#main .ttl-wrap .fuki{
	margin: 0 0 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
}
#main .ttl-wrap .fuki::before,
#main .ttl-wrap .fuki::after{
	content: "";
	display: block;
	width: 1px ;
	height: 15px;
	background: #333;
}
#main .ttl-wrap .fuki::before{
	transform: rotate(-15deg);
	margin: 0 0.5em 0 0;
}
#main .ttl-wrap .fuki::after{
	transform: rotate(15deg);
	margin: 0 0 0 0.5em;
}

#main .ttl-wrap .bg-cap{
	width: 90%;
	display: inline-block;
	background: #333;
	color: #fff;
	font-size: 1.1rem;
}

@media screen and (min-width: 768px){
	#main .ttl-wrap{
		margin: -37px 0 30px;
		padding: 0 0 20px;
	}
	#main .ttl-wrap .point-num{
		width: 75px;
		height: 75px;
		margin: 0 auto 15px;
		padding: 12px 0 0;
		font-size: 3.2rem;
	}
	#main .ttl-wrap .point-num span{
		font-size: 1.4rem;
	}
	#main .ttl-wrap .point-num::before{
		border-width: 8px 6px 0 6px;
		left: calc(50% - 6px);
		bottom: -7px;
	}

	#main .ttl-wrap .bg-plan{
		display: inline-block;
		padding: 20px 10px 10px;
		background: #f9f9f9;
		min-width: 450px;
	}
	#main .ttl-wrap .plan{
		margin: 0 0 15px;
	}
	#main .ttl-wrap .plan p{
		width: 204px;
		margin: 0 5px;
		font-size: 1.6rem;
		line-height: 1.5;
		border: solid 8px;
	}
	#main .ttl-wrap .plan p span{
		font-size: 2.2rem;
	}
	#main .ttl-wrap .plan p.smart{
		border-color: #ddb0b0;
		color: #bd8585;
	}
	#main .ttl-wrap .plan p.wide{
		border-color: #99b89a;
		color: #749c75;
	}
	#main .ttl-wrap .plan-txt{
		margin: 15px 0 0;
		font-size: 1.4rem;
	}
	#main .ttl-wrap h2{
		font-size: 2.2rem;
	}
	#main .ttl-wrap .fuki{
		margin: 0 0 15px;
		font-size: 1.6rem;
	}
	#main .ttl-wrap .fuki::before,
	#main .ttl-wrap .fuki::after{
		height: 20px;
	}
	#main .ttl-wrap .fuki::before{
		margin: 0 0.8em 0 0;
	}
	#main .ttl-wrap .fuki::after{
		margin: 0 0 0 0.8em;
	}

	#main .ttl-wrap .bg-cap{
		display: inline-block;
		padding: 0 2em;
		width: auto;
		font-size: 1.4rem;
	}
}


/* 
	.note
--------------------------------------*/
#main .note{
	margin: 5px 0 0;
	font-size: 1rem;
	line-height: 1.5;
}
@media screen and (min-width: 768px){
	#main .note{
		margin: 10px 0 0;
		font-size: 1.4rem;
	}
}

/* 
	.request-area
--------------------------------------*/
#main .request-area{
	margin: 40px 0 0;
	padding: 15px;
	background: #333;
	text-align: center;
}
#main .request-area .txt{
	margin: 0 0 15px;
	font-size: 1.2rem;
	font-weight: 700;
	color: #fff;
}

@media screen and (min-width: 768px){
	#main .request-area{
		margin: 80px 0 0;
		padding:22px 0 30px;
	}
	#main .request-area .txt{
		margin: 0 0 20px;
		font-size: 1.6rem;
	}
}

/* 
	#mv
--------------------------------------*/

@media screen and (min-width: 768px){
	#mv{
		width: 1100px;
		margin: 0 auto;
	}
}



/* 
	#sec-lead
--------------------------------------*/
#sec-lead .lead-inner{
	padding-top: 30px;
	padding-bottom: 60px;
	font-weight: 700;
}
#sec-lead .lead-inner h2.kakko{
	margin: 0 0 20px;
	text-align: center;
	font-size: 1.9rem;
	font-weight: 700;
}
#sec-lead .lead-inner h2.kakko::before,
#sec-lead .lead-inner h2.kakko::after{
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
}
#sec-lead .lead-inner h2.kakko::before{
	border-top: solid 2px #1b1b1b;
	border-left: solid 2px #1b1b1b;
	margin: 0 -0.5em 0 0;
	vertical-align: 5px;
}
#sec-lead .lead-inner h2.kakko::after{
	border-right: solid 2px #1b1b1b;
	border-bottom: solid 2px #1b1b1b;
	margin: 0 0 0 -0.5em;
	vertical-align: -15px;
}


@media screen and (max-width: 374px){
	#sec-lead .lead-inner h2.kakko{
		font-size: 1.7rem;
	}
}
@media screen and (min-width: 768px){
	#sec-lead .lead-inner{
		padding-top: 60px;
		padding-left: 100px;
		padding-right: 100px;
		padding-bottom: 80px;
		font-weight: 700;
	}
	#sec-lead .lead-inner h2.kakko{
		margin: 0 0 40px;
		font-size: 2.6rem;
	}
	#sec-lead .lead-inner h2.kakko::before{
		vertical-align: 10px;
		margin: 0;
	}
	#sec-lead .lead-inner h2.kakko::after{
		vertical-align: -20px;
		margin: 0;
	}
}




/* 
	#point01
--------------------------------------*/
#point01{
	margin: 0 0 73px;
	padding: 1px 0;
}
#point01 .flat{
	margin: 45px 0 0;
	padding: 1px 0 25px;
	border: solid 1px #333;
	font-weight: 700;
	text-align: center;
	border-radius: 5px;
}
#point01 .flat h3{
	width: 155px;
	margin: -23px auto 22px;
	padding: 6px 0;
	font-size: 1.7rem;
	color: #fff;
	background: #272727;
	font-weight: 700;
	position: relative;
}
#point01 .flat h3::before{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 77.5px 0 77.5px;
	border-color: #272727 transparent transparent transparent;
	position: absolute;
	left: 0;
	bottom: -15px;
}
#point01 .flat .bdr{
	border-bottom: solid 1px #333;
}
#point01 .flat .txt-price{
	margin: -0.5em 0 0;
}
#point01 .flat .cap{
	margin: 0 0 0 16em;
	font-size: 1rem;
}

#point01 .plan-wrap{
	margin: 30px 0 0;
}
#point01 .plan-wrap li{
	margin: 0 0 20px;
	padding: 0 15px 15px;
	border: solid 1px;
}
#point01 .plan-wrap li.smart{ border-color: #bd8585;}
#point01 .plan-wrap li.wide{ border-color: #749c75;}
#point01 .plan-wrap li h3{
	margin: 0 -15px 20px;
	padding: 8px 0;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	color: #fff;
	position: relative;
}
#point01 .plan-wrap li.smart h3{ background: #bd8585;}
#point01 .plan-wrap li.wide h3{ background: #749c75;}

#point01 .plan-wrap li h3::before{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 0 15px;
	position: absolute;
	left: calc(50% - 15px);
	bottom: -10px;
}
#point01 .plan-wrap li.smart h3::before{ border-color: #bd8585 transparent transparent transparent;}
#point01 .plan-wrap li.wide h3::before{ border-color: #749c75 transparent transparent transparent;}

#point01 .plan-wrap li dl dt{
	margin: 0 0 20px;
	padding: 4px 0;
	font-size: 1.4rem;
	border-radius: 7px;
	border: solid 4px;
	text-align: center;
	font-weight: 700;
}
#point01 .plan-wrap li.smart dl dt{ color: #bd8585; border-color: #ddb0b0;}
#point01 .plan-wrap li.wide dl dt{ color: #749c75; border-color: #99b89a;}

#point01 .plan-wrap li dl dt span{
	font-size: 2rem;
}

#point01 .plan-wrap li dl dd + dd{
	margin: 18px 0 0;
}
@media screen and (max-width: 374px){
	#point01 .plan-wrap li h3{
		font-size: 1.3rem;
		letter-spacing: -0.05em;
	}
}
@media screen and (min-width: 768px){
	#point01{
		margin: 0 0 170px;
	}
	#point01 .inner{
		max-width: 925px;
		margin: 0 auto;
	}
	#point01 .flat{
		margin: 80px 0 0;
		padding: 80px 70px 25px;
		border: solid 1px #333;
		border-radius: 5px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		position: relative;
		align-items: center;
	}
	#point01 .flat h3{
		width: 210px;
		margin: 0;
		padding: 10px 0 0;
		font-size: 2.2rem;
		position: absolute;
		top: -30px;
		left: calc(50% - 105px);
	}
	#point01 .flat h3::before{
		border-width: 30px 105px 0 105px;
		bottom: -30px;
	}
	#point01 .flat .bdr{
		border-bottom: solid 1px #333;
	}
	#point01 .flat .txt-price{
		margin: -0.5em 0 0;
	}
	#point01 .flat .cap{
		margin: 0 0 0 15em;
		font-size: 1.4rem;
	}

	#point01 .plan-wrap{
		margin: 50px 0 0;
		display: flex;
		justify-content: space-between;
	}
	#point01 .plan-wrap li{
		width: 450px;
		padding: 0 20px 20px;
	}
	#point01 .plan-wrap li h3{
		margin: 0 -20px 30px;
		padding: 10px 0;
		font-size: 1.8rem;
	}
	#point01 .plan-wrap li dl dt{
		margin: 0 0 25px;
		font-size: 1.8rem;
		line-height: 1.5;
		border-radius: 14px;
		border: solid 8px;
	}
	#point01 .plan-wrap li dl dt span{
		font-size: 2.6rem;
	}
	#point01 .plan-wrap li dl dd + dd{
		margin: 20px 0 0;
	}
}


/* 
	#point02
--------------------------------------*/
#point02{
	padding: 1px 0 70px;
}
#point02 .block{
	margin: 0 0 30px;
}
#point02 .block figure{
	margin: 0 0 10px;
}
#point02 .block figure figcaption{
	margin: 0 0 10px;
	font-size: 1.2rem;
	text-align: center;
}
#point02 .block ul{
	width: 120px;
	margin: 0 auto;
}
#point02 .block ul li + li{
	margin: 10px 0 0;
}

#point02 .step{
	margin: 0 5px;
}
#point02 .step li{
	border: solid 1px #333;
	padding: 15px 40px;
	position: relative;
	background: #fff;
}
#point02 .step li + li{
	margin: 25px 0 0;
}
#point02 .step li + li::before{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 0 15px;
	border-color: #333 transparent transparent transparent;
	position: absolute;
	top: -17px;
	left: calc(50% - 15px);
}
#point02 .step li dl dt{
	width: 30px;
	height: 30px;
	font-size: 1.6rem;
	text-align: center;
	line-height: 30px;
	color: #fff;
	font-weight: 700;
	background: #333;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 15px);
	left: -15px;
}


@media screen and (min-width: 768px){
	#point02{
		padding: 1px 0 140px;
	}
	#point02 .block{
		width: 925px;
		margin: 0 auto 80px;
		display: flex;
		align-items: flex-end;
	}
	#point02 .block figure{
		margin: 0;
		width: 450px;
	}
	#point02 .block figure figcaption{
		font-size: 1.6rem;
	}
	#point02 .block ul{
		width: auto;
		margin: 0 0 0 30px;
		display: flex;
	}
	#point02 .block ul li + li{
		margin: 0 0 0 20px;
	}

	#point02 .step{
		margin: 0 auto 10px;
		max-width: 800px;
	}
	#point02 .step li{
		padding: 15px 70px;
	}
	#point02 .step li + li{
		margin: 50px 0 0;
	}
	#point02 .step li + li::before{
		border-width: 15px 20px 0 20px;
		top: -30px;
		left: calc(50% - 20px);
	}
	#point02 .step li dl dt{
		width: 40px;
		height: 40px;
		font-size: 1.8rem;
		line-height: 40px;
		top: calc(50% - 20px);
		left: -20px;
	}
	#point02 .note{
		max-width: 800px;
		margin: 0 auto;
	}

}

/* 
	#point03
--------------------------------------*/
#point03{
	margin: 0 0 70px;
}
#point03 .ttl-wrap .bg-cap{
	width: auto;
	margin: 0 16em 0 0 ;
	padding: 0 0.6em;
}
#point03 .feature{
	max-width: 345px;
	display: flex;
	justify-content: space-between;
	margin: 30px auto 5px;
}
#point03 .feature li{
	width: 110px;
	height: 110px;
	border: solid 2px #737378;
	color: #737378;
	border-radius: 50%;
	text-align: center;
	overflow: hidden;
}
#point03 .feature li dl dt{
	height: 25px;
	padding: 3px 0 0;
	font-size: 1.4rem;
	font-weight: 700;
}
#point03 .feature li dl dd{
	height: 85px;
	padding: 13px 0 0;
	background: #737378;
	color: #fff;
	font-size: 1.2rem;
	line-height: 1.4;
	font-weight: 700;
}
#point03 .point3-comment p{
	max-width: 220px;
    text-align: left;
    margin: auto;
}

#point03 .structure{
	margin: 0 -15px;
	padding: 15px;
}
#point03 .structure .item{
	padding: 20px;
	border: solid 1px #e4a59b;
	border-radius: 6px;
	background: #fff;
}
#point03 .structure .item + .item{
	margin: 20px 0 0;
}
#point03 .structure .item figure{
	margin: 0 0 15px;
}
#point03 .structure .item h3{
	margin: 0 0 13px;
	font-size: 1.4rem;
	font-weight: 700;
	color: #d3594a;
	line-height: 1.5;
}

/* item03 */
#point03 .structure .item03 .commit{
	margin: 20px 0 0;
	padding: 10px;
	border: solid 5px #e4a59b;
	border-radius: 5px;
}
#point03 .structure .item03 .commit .in-block01 h4{
	margin: 0 0 15px;
	padding: 0 0 0 68px;
	position: relative;
}
#point03 .structure .item03 .commit .in-block01 h4 .cap{
	height: 20px;
	padding: 0 4px;
	background: #e4a59b;
	color: #fff;
	font-size: 1.1rem;
	font-weight: 700;
	position: absolute;
	top: 50%;
	left: -10px;
	transform: translateY(-50%);
}
#point03 .structure .item03 .commit .in-block01 h4 .cap::before{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 5px;
	border-color: transparent transparent transparent #e4a59b;
	position: absolute;
	top: 0;
	right: -5px;
}
#point03 .structure .item03 .commit .in-block01 h4 .ttl-txt01{
	display: block;
	font-size: 1.2rem;
}
#point03 .structure .item03 .commit .in-block01 h4 .ttl-txt02{
	display: block;
	font-size: 1.4rem;
	line-height: 1.3;
	font-weight: 700;
}

#point03 .structure .item03 .commit .in-block01 .catch{
	margin: 0 0 10px;
	font-size: 1.3rem;
	font-weight: 700;
}
#point03 .structure .item03 .commit .in-block02{
	margin: 15px 0 0;
	padding: 10px;
	background: #fdeded;
}
#point03 .structure .item03 .commit .in-block02 dl dt{
	margin: 0 0 7px;
	font-size: 1.3rem;
}
#point03 .structure .item03 .commit .in-block02 dl dd{
	font-size: 1.2rem;
	padding: 0 0 0 1em;
	text-indent: -1em;
}
#point03 .structure .item03 .commit .in-block02 dl dd::before{
	content: "・";
	text-indent: 0;
}
#point03 .structure .item03 .commit .in-block02 figure{
	width: 74px;
	margin: 10px auto 0;
}



@media screen and (max-width: 374px){
	#point03 .feature li{
		width: 95px;
		height: 95px;
	}
	#point03 .feature li dl dt{
		padding: 3px 0 0;
		font-size: 1.4rem;
	}
	#point03 .feature li dl dd{
		padding: 10px 0 0;
		font-size: 1rem;
	}

	
}
@media screen and (min-width: 768px){
	#point03{
		margin: 0 0 120px;
	}
	#point03 .ttl-wrap .bg-cap{
		margin: 0 18em 0 0 ;
		padding: 0 1em;
	}
	#point03 .block{
		width: 925px;
		margin: 0 auto 80px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	#point03 .block figure{
		width: 450px;
	}
	#point03 .block p{
		width: 450px;
	}
	#point03 .feature{
		max-width: 640px;
		display: flex;
		justify-content: space-between;
		margin: 30px auto 5px;
	}
	#point03 .feature li{
		width: 200px;
		height: 200px;
		border: solid 4px #737378;
	}
	#point03 .feature li dl dt{
		height: 50px;
		padding: 3px 0 0;
		font-size: 2.4rem;
	}
	#point03 .feature li dl dd{
		height: 150px;
		padding: 20px 0 0;
		font-size: 1.8rem;
	}
	#point03 .point3-comment p {
	max-width: 650px;
    text-align: center;
    margin: auto;
	}

	#point03 .structure{
		margin: 100px 0 0;
		padding: 80px 80px 40px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#point03 .structure .item{
		width: 450px;
		margin: 15px 0 15px !important;
		padding: 20px;
		border: solid 2px #e4a59b;
		border-radius: 12px;
	}
	#point03 .structure .item03,
	#point03 .structure .item04{
		width: 100%;
	}
	#point03 .structure .item + .item{
		margin: 0;
	}
	#point03 .structure .item figure{
		margin: 0 0 30px;
	}
	#point03 .structure .item h3{
		font-size: 1.8rem;
	}

	/* item03 */
	#point03 .structure .item03 .f-block{
		display: flex;
		justify-content: space-between;
	}
	#point03 .structure .item03 .f-block figure{
		width: 430px;
	}
	#point03 .structure .item03 .f-block .txt-block{
		width: 430px;
		padding: 20px 0 0;
	}
	#point03 .structure .item03 .commit{
		margin: 20px 0 0;
		padding: 30px;
		border: solid 10px #e4a59b;
		border-radius: 5px;
		display: flex;
		justify-content: space-between;
	}
	#point03 .structure .item03 .commit .in-block01{
		width: 400px;
	}
	#point03 .structure .item03 .commit .in-block01 h4{
		margin: 0 0 20px;
		padding: 0 0 0 80px;
	}
	#point03 .structure .item03 .commit .in-block01 h4 .cap{
		height: 30px;
		padding: 0 10px;
		font-size: 1.4rem;
		left: -30px;
	}
	#point03 .structure .item03 .commit .in-block01 h4 .cap::before{
		border-width: 15px 0 15px 10px;
		border-color: transparent transparent transparent #e4a59b;
		right: -10px;
	}
	#point03 .structure .item03 .commit .in-block01 h4 .ttl-txt01{
		font-size: 1.4rem;
	}
	#point03 .structure .item03 .commit .in-block01 h4 .ttl-txt02{
		font-size: 2rem;
	}

	#point03 .structure .item03 .commit .in-block01 .catch{
		font-size: 1.7rem;
		line-height: 1.5;
	}
	#point03 .structure .item03 .commit .in-block02{
		width: 380px;
		margin: 0;
		padding: 30px;
	}
	#point03 .structure .item03 .commit .in-block02 dl dt{
		margin: 0 0 7px;
		font-size: 1.6rem;
	}
	#point03 .structure .item03 .commit .in-block02 dl dd{
		margin: 0 0 0.5em;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#point03 .structure .item03 .commit .in-block02 figure{
		width: 90px;
	}
	/* item04 */
	#point03 .structure .item04{
		display: flex;
		justify-content: space-between;
	}
	#point03 .structure .item04 figure{
		width: 430px;
	}
	#point03 .structure .item04 .txt-block{
		width: 430px;
		padding: 20px 0 0;
	}

}




/* 
	#point04
--------------------------------------*/
#point04{
	padding: 1px 0 44px;
}

#point04 .f-block figure{
	margin: 20px 0 0;
}


@media screen and (min-width: 768px){
	#point04{
		padding: 1px 0 100px;
	}

	#point04 .f-block{
		display: flex;
		justify-content: space-between;
	}
	#point04 .f-block p{
		width: 580px;
	}
	#point04 .f-block figure{
		width: 400px;
		margin: 0;
	}

}


