/* ----------------------------------------
	process.html
-------------------------------------------*/

.process #page_nav li{
	width: 32.3%;
}
.process .read{
	padding-bottom: 4%;
	font-weight: bold;
	color: var(--green);
}
.process .sec{
	padding-bottom: 20%;
}
.process .sec .text{
	text-align: justify;
}
.process .step_list{
	padding-top: 12%;
	font-size: 16px;
}
.process .step_list .step{
	padding-bottom: 8%;
}
.process .step_list .head{
	position: relative;
	display: flex;
	justify-content: space-between;
	padding-bottom: 4%;
}
.process .step_list .photo_area{
	width: 48%;
}
.process .step_list .photo_area .num{
	position: absolute;
	top: 0;
	left: 0;
	width: 90px;
}
.process .step_list .photo_area .img{
	margin: 8% 0 0 8%;
}
.process .step_list .photo_area .img img{
	border-radius: 10px;
}
.process .step_list .text_area{
	width: 46%;
	text-align: left;
}
.process .step_list .text_area h4{
	padding: 4% 0;
	font-size: 28px;
	line-height: 1.6;
	color: var(--green);
}
.process .step_list .item_area{
	text-align: left;
	padding: 4% 6% 2%;
	border: 1px solid;
	border-color: var(--green);
	background-color: #fff;
	border-radius: 20px;
}
.process .step_list .item_area p,
.process .step_list .item_area dl{
	padding-bottom: 4%;
}
.process .step_list .item_area .title{
	font-weight: bold;
	color: var(--green);
	padding-bottom: 0;
}
.process .step_list .item_area .strong{
	font-weight: bold;
}
.process .step_list .item_area dt{
	font-weight: bold;
	border-top: 1px solid;
	border-color: #ddd;
	padding-top: 4%;
}
.process .step_list .item_area dd{
	padding-left: 0.5em;
}
.process .essentials_list{
	margin: 4% 0 8%;
	padding: 4% 6%;
	text-align: left;
	font-size: 16px;
	border-radius: 20px;
	border: 1px dashed;
	border-color: var(--brown);
}
.process .essentials_list dt{
	font-weight: bold;
	color: var(--brown);
}
.process .tbl{
	font-size: 16px;
}

@media screen and (max-width: 650px){
	.process #page_nav li{
		width: 100%;
	}
	.process .sec{
		padding-bottom: 28%;
	}
	.process .step_list,
	.process .essentials_list,
	.process .tbl{
		font-size: 14px;
	}
	.process .step_list .head{
		flex-wrap: wrap;
	}
	.process .step_list .photo_area,
	.process .step_list .text_area{
		width: 100%;
	}
	.process .step_list .text_area{
		padding-bottom: 4%;
	}
	.process .step_list .photo_area .num{
		width: 80px;
	}
	.process .step_list .photo_area .img{
		margin: 8% 8% 4%;
	}
	.process .step_list .text_area h4{
		font-size: 20px;
	}
	.process .step_list .item_area{
		border-radius: 12px;
		padding: 6%;
	}
	.process .step_list .item_area p{
		padding-bottom: 8%;
	}
	.process .step_list .item_area dt{
		padding: 8% 0 4%;
	}
	.process .essentials_list{
		margin: 12% 0 16%;
		padding: 6%;
	}
}

.intro{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 8%;
}
.intro .comment,
.intro .photo{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-around;
}
.intro .comment{
	width: 64%;
}
.intro .comment img{
	object-fit: cover;
}
.intro .photo{
	width: 32%;
	row-gap: 20px;
}
.intro .photo img{
	border-radius: 8px;
}

@media screen and (max-width: 650px){
	.intro{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding-bottom: 8%;
	}
	.intro .photo{
	}
	.intro .comment{
		width: 100%;
		row-gap: 20px;
		padding-bottom: 8%;
	}
	.intro .photo{
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		width: 100%;
		row-gap: inherit;
	}
	.intro .photo div{
		width: 49%;
	}
}

.flow{
	background: url(../img/process/bg_flow.jpg) 32px center / auto 90% no-repeat;
}
.flow a{
	color: var(--green);
}
.flow a:hover{
	opacity: var(--hover);
}
.flow dl{
	padding: 4% 0 4% 124px;
	text-align: left;
}
.flow dl dt{
	padding: 1% 0;
	font-size: 24px;
	font-weight: bold;
}
.flow .flow_1{
	background: url(../img/process/num_1.png);
}
.flow .flow_2{
	background: url(../img/process/num_2.png);
}
.flow .flow_3{
	background: url(../img/process/num_3.png);
}
.flow .flow_4{
	background: url(../img/process/num_4.png);
}
.flow .flow_5{
	background: url(../img/process/num_5.png);
}
.flow .flow_6{
	background: url(../img/process/num_6.png);
}
.flow .flow_7{
	background: url(../img/process/num_7.png);
}
.flow .flow_8{
	background: url(../img/process/num_8.png);
}
.flow .num{
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 90px auto;
}

@media screen and (max-width: 650px){
	.flow{
		background-position: 25px center;
	}
	.flow dl{
		padding-left: 100px;
	}
	.flow dl dt{
		padding: 4% 0;
		font-size: 16px;
	}
	.flow .num{
		background-size: 70px auto;
	}
}

#advice .text_wrap{
	width: var(--page-width);
	margin: 0 auto;
}
#advice .text_wrap h4{
	padding-bottom: 4%;
	font-size: 24px;
	color: var(--brown);
}
#advice .advice_list{
	width: 92%;
	margin: 0 auto;
	padding: 8% 0;
}
#advice .advice_list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #fff;
	border-radius: 40px;
	padding: 4% 0;
}
#advice .advice_list li{
	padding: 0 4%;
	width: 33.33%;
}
#advice .advice_list li + li{
	border-left: 1px solid;
	border-color: var(--bg-sub-color);
}
#advice .advice_list li img{
	padding: 4% 0 12%;
	object-fit: cover;
	width: 50%;
	height: auto;
}
#advice .advice_list li .title{
	padding-bottom: 8%;
	font-weight: bold;
	color: var(--green);
}
#advice .advice_list li .text{
	font-size: 14px;
}
#advice .text_wrap .title{
	padding-bottom: 4%;
	font-size: 20px;
	font-weight: bold;
}

@media screen and (max-width: 650px){
	
	#advice .text_wrap h4{
		font-size: 16px;
	}
	#advice .advice_list ul{
		flex-direction: column;
		border-radius: 20px;
	}
	#advice .advice_list li{
		padding: 8%;
		width: 100%;
	}
	#advice .advice_list li + li{
		border-left: none;
		border-top: 1px solid;
		border-color: var(--bg-sub-color);
	}
	#advice .advice_list li img{
		padding: 0 0 8%;
		width: 44%;
		min-width: 160px;
	}
	#advice .advice_list li .title{
		font-size: 18px;
		padding-bottom: 4%;
	}
	#advice .text_wrap .title{
		font-size: 16px;
	}
}

#user{
	padding: 20% 0 12%;
	background-color: var(--bg-sub-color);
}
#user h4{
	font-size: 32px;
	padding: 8% 0 4%;
}
#kogutre{
	display: flex;
	flex-direction: column;
	padding-top: 8%;
}
#kogutre > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#kogutre > div + div{
	padding-top: 12%;
}
#kogutre .text_area{
	width: 56%;
	text-align: left;
}
#kogutre .text_area .title{
	font-weight: bold;
	font-size: 24px;
	line-height: 1.6;
}
#kogutre .text_area .sub{
	color: var(--sub-brown);
	font-weight: bold;
	font-size: 16px;
	padding-bottom: 4%;
}
#kogutre .text_area .text{
	font-size: 16px;
}
#kogutre .img{
	width: 40%;
}
#kogutre .img img{
	border-radius: 10px;
}

@media screen and (max-width: 650px){
	
	#user{
		padding: 28% 0 12%;
	}
	#user h4{
		font-size: 24px;
		padding: 20% 0 8%;
	}
	#kogutre{
		padding-top: 20%;
	}
	#kogutre > div{
		flex-wrap: wrap;
		padding-bottom: 12%;
	}
	#kogutre .text_area,
	#kogutre .img{
		width: 100%;
	}
	#kogutre .text_area .title{
		font-size: 18px;
		line-height: 2;
	}
	#kogutre .text_area .sub{
		font-size: 14px;
	}
	#kogutre .text_area .text{
		font-size: 14px;
		padding-bottom: 8%;
	}
}

#strong{
	padding-top: 20%;
}
.strong_point{
	padding-top: 8%;
}
.strong_point ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	row-gap: 40px;
}
.strong_point li{
	position: relative;
	width: 48%;
	padding: 4%;
	font-weight: bold;
	border-radius: 40px;
	background-color: #fff;
}
.strong_point li .num{
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
}
.strong_point li .icon{
	width: 50%;
	margin: 0 auto;
}
.strong_point li .title{
	font-size: 28px;
	color: var(--brown);
}
.strong_point li .kadai .title,
.strong_point li .kaiketsu .title{
	margin: 4% auto;
	font-size: 18px;
	border-radius: 4px;
}
.strong_point li .kadai .text,
.strong_point li .kaiketsu .text{
	padding-bottom: 2%;
	font-size: 14px;
	line-height: 1.8;
}
.strong_point li .kadai .title{
	color: #666;
	background-color: #f2f2f2;
}
.strong_point li .kaiketsu .title{
	color: var(--green);
	background-color: rgba(var(--green-rgb),0.2);
}
.strong_point li .kaiketsu .text{
	color: var(--green);
}

@media screen and (max-width: 650px){
	
	#strong{
		padding: 28% 0 12%;
	}
	.strong_point{
		padding-top: 16%;
	}
	.strong_point li{
		width: 100%;
		padding: 8%;
		border-radius: 20px;
	}
	.strong_point li .num{
		width: 50px;
	}
	.strong_point li .icon{
		width: 40%;
		min-width: 140px;
	}
	.strong_point li .title{
		font-size: 20px;
	}
	.strong_point li .kadai .title,
	.strong_point li .kaiketsu .title{
		padding: 1%;
		font-size: 14px;
		letter-spacing: 0.075em;
	}
	.strong_point li .kadai .text,
	.strong_point li .kaiketsu .text{
		font-size: 13px;
	}
}
