@charset "UTF-8";

/*--------------check----------------*/
a[id*="check"]+section>.content_wrapper{
	background: #f8f8f8!important;
}
#check+section .inner_item_txt p:nth-of-type(n+2):nth-of-type(-n+4){
	background: url(/common/upload_data/e-kazokusocom/image/ico_checkbox02.png) no-repeat left 0.2em/3.4rem;
	padding-left: 2em;
	margin-top: 1.5rem;
	font-size: 2rem;
	letter-spacing: .05em;
}

/* ボタン色 */
#check+section .contents_btn01 a{
	background: var(--i_btn_txt_color);
}
#check+section .contents_btn01 a span{
	color: #fff!important;
}
#check+section .contents_btn01 a:before{
	border-color: #fff;
}
@media screen and (min-width: 701px) and (max-width: 900px){
	a[id*="check"]+section.contents_box01:not(.block_image_text_2):not(.block_image_text_6):not(.block_text_6) .wrapper_item{
		display: flex;
	}
	a[id*="check"]+section.contents_box01.block_image_text_4.valign-center .inner_item_txt{
		flex-basis: 60%;
		max-width: 60%;
	}
	a[id*="check"]+section.contents_box01:not(.block_image_text_2):not(.block_image_text_6) .inner_item_img{
		flex-basis: 40%;
		max-width: 40%;
	}
	#check+section .inner_item_txt p:nth-of-type(n+2):nth-of-type(-n+4) {
		font-size: 1.75rem;
	}
	#check_2+section.contents_box01:not(.block_image_text_2):not(.block_image_text_6) .inner_item_img{
		margin-bottom: 0;
		padding-top: 36%!important;
	}
	#check_2+section.contents_box01 .inner_item_txt{
		padding-left: 30px!important;
	}
}
@media screen and (min-width: 901px){
	#check_2+section>.content_wrapper{
		padding-top: 0;
        padding-bottom: 60px;
	}
}
@media screen and (max-width: 700px){
	#check+section .inner_item_img{
		display: none;
	}
}
@media screen and (max-width: 800px){
	#check+section .inner_item_txt p:first-of-type span{
		font-size: 2.2rem;
	}
}

/*--------------jizen----------------*/
#jizen+div .inner_item{
	position: relative;
}
#jizen+div .inner_item:not(:first-of-type)::before{
	content: '';
	position: absolute;
	background: url(/common/upload_data/e-kazokusocom/image/plus01.png) no-repeat 50% / contain;
	height: 5rem;
	width: 3.2rem;
	top: 9rem;
	left: -3.2rem;
}

#jizen+div .inner_item_img img{
	border-radius: 0;
	max-width: 326px;
	height: auto!important;
	object-fit: contain;
}
@media screen and (max-width: 800px){
	#jizen+div .inner_item{
		width: 44%;
	}
	#jizen+div .inner_item:nth-of-type(2n) {
		margin-left: 12% !important;
	}
	#jizen+div .inner_item:not(:first-of-type)::before {
		left: -5.8rem;
	}
}
@media screen and (max-width: 600px){
	#jizen+div .inner_item:not(:first-of-type)::before{
		height: 2.5rem;
		width: 2.5rem;
		top: 10vw;
		left: -8vw;
	}
}
@media screen and (max-width: 400px){
	#jizen+div .inner_item:not(:first-of-type)::before{
		left: -9vw;
	}
}

/*--------------online_flow----------------*/
#online_flow+div{
	counter-reset: num 0;
}
#online_flow+div .inner_item{
	position: relative;
	width: 28%;
	margin-top: 4rem;
	border-top: 1px solid var(--i_main_color);
}
#online_flow+div .inner_item:not(:first-of-type){
	margin-left: 4%!important;
}
#online_flow+div .inner_item::before,
#online_flow+div .inner_item::after{
	display: block;
	width: 100%;
	position: absolute;
	top: -5.6rem;
	left: 0;
	color: var(--i_main_color);
	font-family: 'Noto Serif JP', serif;
	font-size: 2rem;
	font-style: italic;
}
#online_flow+div .inner_item::before{
	content: "STEP ";
	top: -3.2rem;
}
#online_flow+div .inner_item::after{
	counter-increment: num 1;
	content: counter(num);
	left: 6.2rem;
	font-size: 4rem;
}
#online_flow+div .inner_item_img img{
	max-width: 100px;
	height: auto;
	border-radius: 0;
	object-fit: contain;
}
@media screen and (min-width: 901px){
	#online_flow+div .inner_item_img img{
		height: auto!important;
	}
}
@media screen and (max-width: 900px){
	#online_flow+div .wrapper_item{
		flex-direction: column;
	}
	#online_flow+div .inner_item {
		width: 100%;
		margin-bottom: 30px!important;
	}
	#online_flow+div .inner_item:not(:first-of-type){
		margin-left: 0!important;
	}
	#online_flow+div .inner_item a {
		margin-top: 20px;
	}
}
@media screen and (max-width: 600px){
	#online_flow+div .inner_item::before,
	#online_flow+div .inner_item::after {
		font-size: 1.6rem;
	}

	#online_flow+div .inner_item::after {
		font-size: 3.2rem;
		left: 5rem;
		top: -5rem;
	}	
}

/*--------------bg----------------*/
#bg+div>.content_wrapper{
	border-radius: 0;
}
#bg+div form .submit{
	background: var(--i_btn_txt_color);
	box-shadow: 0 1px 0 #bd5c70;
}
#bg+div form .submit span:before{
	display: none;
}
#bg+div form .submit span input{
	color: #fff;
}
@media screen and (max-width: 800px){
	#bg+div>.content_wrapper {
		width: calc(100% - 20px);
		padding: 50px 20px;
	}
}
@media screen and (max-width: 400px){
	#bg+div form .submit{
		margin: 10px 0 0;
	}
}