@charset "utf-8";


body {
	font-size: 1.9rem;
	line-height: 1.9;
	letter-spacing: 0;
	font-weight: 300;
	
}

/*mv
--------------------------------------------*/
.freelance #lp_mainv .lp_mainv-img{
	background: url(../img/freelance/lp_freelance.jpg);
	background-position: center;
}


/*freelance_lead
--------------------------------------------*/
#freelance_lead{
	padding-top: 98px;
}
#freelance_lead .detail{
	font-size: 2.2rem;
	line-height: 1.8181;
	letter-spacing: 0;
	text-align: center;
	margin-bottom: 80px;
}
#freelance_lead .detail .em{
	font-weight: 700;
}
@media screen and (max-width: 1200px) {
	#freelance_lead{
		width: 90%;
		margin:0 auto
	}
}
@media screen and (max-width: 980px) {
	#freelance_lead .detail{
		text-align: left;
	}
}

/*freelance_recruitment
--------------------------------------------*/
#freelance_recruitment{
	width: 100%;
	background-image: url(../img/employee/recruitment_bg.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	padding: 65px 0 50px;
}
#freelance_recruitment .ttl02{
	margin-bottom: 12px;
}
#freelance_recruitment .ttl02::before{
	color:rgba(255,255,255,0.2);
	font-size: 9.4rem;
	top:-96px
}
#freelance_recruitment .ttl02::after{
	content:none;
}
#freelance_recruitment p{
	text-align: center;
	font-size: 2.2rem;
	line-height: 1.8181;
}
@media screen and (max-width: 1200px) {
	#freelance_recruitment {
		padding-top: 80px;
	}
	#freelance_recruitment .freelance_recruitment_inner p{
		width: 90%;
		margin:0 auto;
	}
	#freelance_recruitment .ttl02{
		line-height: 1.25;
		margin-bottom: 42px;
	}
	
}
@media screen and (max-width: 980px) {
	#freelance_recruitment .freelance_recruitment_inner{
		width: 90%;
		margin:0 auto;
	}
	#freelance_recruitment .freelance_recruitment_inner p{
		text-align: left;
	}
}


/*freelance_business
--------------------------------------------*/
#freelance_business{
	padding:126px 0 2px;
	background-color: #ecf4f2;
}
#freelance_business .ttl02{
	margin-bottom: 72px;
}
#freelance_business .ttl02::before{
	color: #bfefd9;
	content: "Business";
	font-size: 7.4rem;
	letter-spacing: 0;
}
#freelance_business .ttl02::after{
	background-color: var(--main-color3);
}
#freelance_business .lead{
	font-size: 1.9rem;
	line-height: 1.7;
	margin-bottom: 72px;
}
#freelance_business .media_item{
	margin-bottom: 85px;
}
#freelance_business .item_img{
	width: 47.2727%;
	float: left;
	margin-right: 20px;
	margin-bottom: 10px;
}
#freelance_business .item_body{
	/* width: 52.7272%; */
	/* margin-left: 20px; */
	padding-top: 70px;
}
#freelance_business .item_ttl{
	position: relative;
	margin-bottom: 6px;
}
#freelance_business .item_ttl span{
	display: inline-block;
	background-color: var(--main-color);
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	height: 60px;
	line-height: 60px;
	margin-bottom: 14px;
	padding: 0 20px;
}
#freelance_business .item_ttl span:first-of-type{
	position: relative;
}
#freelance_business .item_ttl span:first-of-type::before{
	position: absolute;
	content: "01";
	font-size:7.2rem;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	font-style:italic ;
	color: #fcceaf;
	letter-spacing: 0.02em;
	left: 0;
	top: -80px;
}
#freelance_business .media_item:nth-of-type(2) .item_ttl span:first-of-type::before{
	content: "02";
}
#freelance_business .media_item:nth-of-type(3) .item_ttl span:first-of-type::before{
	content: "03";
}

#freelance_business .item_detail{
	font-size: 1.9rem;
	line-height: 1.8;
}
#freelance_business .item_detail .em{
	font-weight: 700;
}
#freelance_business .media_item:nth-of-type(2) .item_img{
	float: right;
	margin-right: auto;
	margin-left: 20px;
}
/* PCではアコーディオン常に展開 */
#freelance_business .accordion__body{
	display: block !important;
}
#freelance_business .accordion__link{
	display: none !important;
}

@media screen and (max-width: 1200px) {
	#freelance_business .freelance_business_inner{
		width: 90%;
		margin:0 auto;
	}
	#freelance_business .media_item{
		position: relative;
		max-width: 800px;
		margin: 0 auto 60px;
	}
	#freelance_business .item_img{
		float: none !important;
		position: absolute;
		width: auto;
		margin-bottom: 20px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	#freelance_business .item_body{
		padding-top: 270px;
	}
	#freelance_business .item_ttl{
		text-align: right;
		margin-bottom: 20px;
	}
	#freelance_business .item_ttl span:first-of-type::before{
		left: auto;
		right: 0;
	}
	#freelance_business .media_item:nth-of-type(2n) img{
		right: 0;
	}
	#freelance_business .media_item:nth-of-type(2n) .item_ttl{
		text-align: left;
	}
	#freelance_business .media_item:nth-of-type(2n) .item_ttl span:first-of-type::before{
		left: 0;
		right: auto;
	}
}


/*freelance_merit
--------------------------------------------*/
#freelance_merit{
	padding:126px 0 2px;
}
#freelance_merit .ttl02{
	margin-bottom: 72px;
}
#freelance_merit .ttl02::before{
	color: #fff2e9;
	content: "Merit";
	font-size: 7.4rem;
	letter-spacing: 0;
}
#freelance_merit .ttl02::after{
	background-color: var(--main-color);
}


#freelance_merit .lead{
	margin-bottom: 98px;
}
#freelance_merit .contents{
	display: none;
}
#freelance_merit .point_list{
	display: flex;
	gap: 75px 50px;
	flex-wrap: wrap;
	margin-bottom: 68px;
}
#freelance_merit .list_item{
	width: calc( (100% - 100px) / 3 );
	font-size: 1.7rem;
}
#freelance_merit .item_ttl{
	position: relative;
	font-size: 2.6rem;
	line-height: 1.2;
	font-weight: 500;
	color: var(--main-color3);
	text-align: center;
	min-height: 64px;
	margin-bottom: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#freelance_merit .list_item:nth-of-type(2n) .item_ttl{
	color: var(--main-color2);
}
#freelance_merit .item_ttl::before{
	position: absolute;
	content: "01";
	font-size:7.2rem;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	font-style:italic ;
	color: #e8f7f4;
	letter-spacing: 0.02em;
	transform: translateX(-50%);
	left: 50%;
	top: -48px;
	z-index: -1;
}
#freelance_merit .list_item:nth-of-type(2) .item_ttl::before{
	content: "02";
}
#freelance_merit .list_item:nth-of-type(3) .item_ttl::before{
	content: "03";
}
#freelance_merit .list_item:nth-of-type(4) .item_ttl::before{
	content: "04";
}
#freelance_merit .list_item:nth-of-type(5) .item_ttl::before{
	content: "05";
}
#freelance_merit .list_item:nth-of-type(6) .item_ttl::before{
	content: "06";
}
#freelance_merit .list_item img{
	margin-bottom: 10px;
}
@media screen and (max-width: 1200px) {
	#freelance_merit .freelance_merit_inner{
		width: 90%;
		margin:0 auto;
	}
	#freelance_merit .ttl06{
		min-width: auto;
	}
	#freelance_merit .point_list{
		flex-wrap: wrap;
		gap: 80px 50px;
		margin:0 auto 68px;
	}
	#freelance_merit .list_item{
		width: calc((100% - 50px)/2);
		text-align: center;
	}
	#freelance_merit .item_ttl{
		font-size: 2.4rem;
	}
	#freelance_merit .item_detail{
		text-align: justify;
	}
}


/*freelance_salary
--------------------------------------------*/
#freelance_salary{
	padding:126px 0 90px;
	background-color: #ecf4f2;
}
#freelance_salary .ttl02{
	margin-bottom: 72px;
}
#freelance_salary .ttl02::before{
	color: #bfefd9;
	content: "Salary";
}
#freelance_salary .ttl02::after{
	background-color: var(--main-color3);
}
#freelance_salary .lead{
	margin-bottom: 98px;
}
#freelance_salary .contents{
	display: none;
}
#freelance_salary .salary_list{
	display: flex;
	gap: 50px;
	flex-wrap: nowrap;
	margin-bottom: 68px;
}
#freelance_salary .list_item{
	width: calc( (100% - 100px) / 3 );
	font-size: 1.7rem;
}
#freelance_salary .item_ttl{
	position: relative;
	font-size: 2.6rem;
	line-height: 1.2;
	font-weight: 500;
	color: var(--main-color);
	text-align: center;
	min-height: 64px;
	margin-bottom: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#freelance_salary .item_ttl::before{
	position: absolute;
	content: "01";
	font-size:7.2rem;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	font-style:italic ;
	color: #fde4d3;
	letter-spacing: 0.02em;
	transform: translateX(-50%);
	left: 50%;
	top: -48px;
	z-index: -1;
}
#freelance_salary .list_item:nth-of-type(2) .item_ttl::before{
	content: "02";
}
#freelance_salary .list_item:nth-of-type(3) .item_ttl::before{
	content: "03";
}
#freelance_salary .list_item img{
	margin-bottom: 10px;
}
@media screen and (max-width: 1200px) {
	#freelance_salary .freelance_salary_inner{
		width: 90%;
		margin:0 auto;
	}
	#freelance_salary .salary_list{
		flex-wrap: wrap;
		gap: 80px 50px;
		margin:0 auto 68px;
	}
	#freelance_salary .list_item{
		width: calc((100% - 50px)/2);
		text-align: center;
	}
	#freelance_salary .item_ttl{
		font-size: 2.4rem;
	}
	#freelance_salary .item_detail{
		text-align: left;
	}

}


/*freelance_flow
--------------------------------------------*/
#freelance_flow{
	padding:126px 0 60px;
}
#freelance_flow .ttl02{
	margin-bottom: 72px;
}
#freelance_flow .ttl02::before{
	color: #fff2e9;
	content: "Flow";
	font-size: 7.4rem;
	letter-spacing: 0;
}
#freelance_flow .ttl02::after{
	background-color: var(--main-color);
}
#freelance_flow .flow-list{
	max-width: 1000px;
}
#freelance_flow .flow-list .list_item{
	display: flex;
	margin-bottom: 20px;
}
#freelance_flow .flow-list .item_header{
	position: relative;
	background-color: var(--main-color3);
	color: #fff;
	width: 100px;
	min-height: 170px;
	padding: 20px;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
}
#freelance_flow .flow-list .item_header::before{
	content: "";
    position: absolute;
    top: -21px;
    left: 0;
    border: 50px solid transparent;
    border-top: 30px solid var(--main-color3);
	z-index: 2;
}
#freelance_flow .flow-list .item_header::after{
	content: "";
    position: absolute;
    top:-1px;
    left: 0;
    border: 50px solid transparent;
    border-top: 30px solid #fff;
}
#freelance_flow .flow-list .list_item:first-of-type .item_header::after,
#freelance_flow .flow-list .list_item:first-of-type .item_header::before
{
	content: none;
}
#freelance_flow .flow-list .item_header .num{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1;
	color: rgba(255,255,255,.6);
}
#freelance_flow .flow-list .item_header p{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1.2;
}
#freelance_flow .flow-list .item_body{
	background-color: #ecf4f2;
	display: flex;
	align-items: center;
	gap: 30px;
	justify-content: center;
	padding: 30px 40px;
}
#freelance_flow .flow-list .item_body .em{
	font-weight: 700;
}
#freelance_flow .flow-list .list_item:nth-of-type(2) .item_header{
	padding: 40px 20px 0;
}
#freelance_flow .flow-list .list_item:nth-of-type(3) .item_header{
	padding: 40px 20px 0;
	gap: 5px;
}
@media screen and (max-width: 1200px) {
	#freelance_flow .flow-list{
		width: 90%;
		margin:0 auto;
	}
}

/*freelance_voice
--------------------------------------------*/

#freelance_voice{
	padding:126px 0 90px;
	background-color: #ecf4f2;
}
#freelance_voice .ttl02{
	margin-bottom: 72px;
}
#freelance_voice .ttl02::before{
	color: #bfefd9;
	content: "Voice";
}
#freelance_voice .lead{
	margin-bottom: 98px;
}
#freelance_voice .list_item{
	width: 100%;
	margin-bottom: 60px;
}
#freelance_voice .list_item .ttl{
	position: relative;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.57;
	font-weight: 600;
	width: 100%;
	background-color: #fff;
	padding:34px 20px 23px;
	margin-bottom:10px;
}
#freelance_voice .list_item .ttl::before{
	position: absolute;
	content: url(../img/employee/L_border_l.png);
	width: 40px;
	height: 40px;
	top: 0;
	left: 0;
}
#freelance_voice .list_item .ttl::after{
	position: absolute;
	content: url(../img/employee/L_border_r.png);
	width: 40px;
	height: 40px;
	bottom: 0;
	right: 0;
}
#freelance_voice .list_item .ttl .ttl_inner{
	position: relative;
	display: block;
}
#freelance_voice .list_item .ttl .ttl_inner::before{
	position: absolute;
	content: "01";
	font-size: 5.0rem;
	color: var(--main-color);
	font-style: italic;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	transform: translateX(-50%);
	left: 50%;
	top: -58px;
}
#freelance_voice .list_item:nth-of-type(2) .ttl .ttl_inner::before{
	content: "02";
}
#freelance_voice .list_item:nth-of-type(3) .ttl .ttl_inner::before{
	content: "03";
}
#freelance_voice .list_item .ttl .profile{
	color: var(--main-color2);
	font-size: 2.4rem;
	font-weight: 400;
	display: block;
	padding-top: 12px;
}
#freelance_voice .detail{
	display: flex;
	align-items: flex-start;
	gap: 40px;
	font-size: 1.9rem;
	line-height: 1.9;
	letter-spacing: 0;
	padding: 40px 50px;
	background-color: rgba(255,255,255,0.6);
	text-align: justify;
}
#freelance_voice .detail .em{
	color: var(--main-color3);
	font-weight: 600;
}
#freelance_voice .detail .em_u-line{
	font-weight: 600;
	background:linear-gradient(transparent 70%, #fff59c 70%);
}
@media screen and (max-width: 1200px) {
	#freelance_voice .list{
		width: 90%;
		margin:0 auto;
	}
	#freelance_voice .lead{
		width: 90%;
		margin-left:auto;
		margin-right: auto;
	}
}
@media screen and (max-width: 980px) {
	#freelance_voice .list{
		display: block;
	}
	#freelance_voice .list_item{
		position: relative;
		width: 100%;
		max-width: none;
		margin-bottom: 80px;
	}
	#freelance_voice .list_item:last-of-type{
		margin-bottom: 0;
	}
	#freelance_voice .list_item::before{
		position: absolute;
		content: "process";
		font-size: 5.0rem;
		color:#87c8c0;
		writing-mode: vertical-rl;
		transform: rotate(180deg);
		font-family: var(--font-family-serif);
		bottom: 0;
		left: 0;
	}
	#freelance_voice .list_item .ttl{
		z-index: 1;
		max-width: 500px;
	}
	#freelance_voice .list_item .detail{
		position: relative;
		flex-direction: column;
		width: calc( 100% - 130px );
		align-items: center;
		margin:-38px 0 0 auto;
		padding-top: 48px;
		min-height: 285px;
	}
	#freelance_voice .list_item .detail p{
		text-align: left;
	}
	#freelance_voice .list_item .detail::after{
		position: absolute;
		content: "";
		background-color: #87c8c0;
		width: 1px;
		height: calc(100% - 260px);
		left: -73px;
		bottom: 194px;
	}
	#freelance_voice .list_item .ttl span::before{
		top: auto;
		bottom: -40px;
		left: 20px;
	}
}


/*freelance_example
--------------------------------------------*/
#freelance_example{
	padding:126px 0 280px;
}
#freelance_example .ttl02{
	margin-bottom: 72px;
}
#freelance_example .ttl02::before{
	color: #fff2e9;
	content: "Example";
	font-size: 7.4rem;
	letter-spacing: 0;
}
#freelance_example .ttl02::after{
	background-color: var(--main-color);
}
#freelance_example .ex_list{
	display: flex;
	justify-content: center;
	gap: 60px;
}
#freelance_example .ex_list .list_item{
	width: 50%;
}
#freelance_example .ex_list .item_ttl{
	background-color: var(--main-color3);
	color: #fff;
	font-size: 3rem;
	font-weight: 400;
	letter-spacing: 0.02em;
	padding: 10px 20px;
	border-radius: 0 20px 0 0;
}
#freelance_example .ex_list .item_ttl span{
	border-left: 10px solid #fff;
	padding-left: 20px;
}
#freelance_example .ex_list .item_detail{
	background-color: #ecf4f2;
	min-height: 484px;
	border-radius: 0 0 0 20px;
	padding: 25px 20px;
}
#freelance_example .ex_list img{
	float: left;
	margin: 15px 20px 4px 0;
}
#freelance_example .item_detail .em_u-line{
	font-weight: 600;
	background:linear-gradient(transparent 70%, #fff59c 70%);
}
@media screen and (max-width: 1200px) {
	#freelance_example .ex_list{
		width: 90%;
		margin:0 auto;
		gap: 20px;
	}
	#freelance_example .ex_list .item_ttl{
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 980px) {
	#freelance_example .ex_list{
		flex-direction: column;
	}
	#freelance_example .ex_list .list_item{
		width: 100%;
	}
	#freelance_example .ex_list .item_detail{
		min-height: auto;
	}
}










/*sec_jobs
--------------------------------------------*/
#sec_jobs{
		margin-bottom: 120px;
}