@charset "UTF-8";

/*----------------------------------------------------------*/
/* カスタマイズ用CSS
/*----------------------------------------------------------*/
:root {
	--lp3-main: rgba(24,62,107,1);
	--lp3-sub: #d39c37;
	--lp3-base: #f5f8fc;
	--lp3-blue: #2671d2;
	--lp3-orange: #fd6623;
	--lp3-yellow: #f8f74b;
	--lp3-text: #111;
	--lp3-font-jp: YakuHanJP_Noto, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--lp3-font-mincho: YakuHanMP, 'Zen Old Mincho', serif;
	--lp3-font-en: 'Cormorant Garamond', serif;
	--font-awe: "Font Awesome 6 Free";
	--shade: drop-shadow(2px 3px 6px rgba(41, 76, 122, 0.15)); /*filter用*/
	--lp-ease: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body {
	font-family: var(--lp3-font-jp);
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt" 1;
	counter-reset: number 0;
	box-sizing: border-box;
	color: var(--lp3-text);
	font-weight: 500;
}
#all_wrap p {
	font-weight: 500;
}
.lp-wrapper .l-main {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
}
h1,h2,h3,h4,h5,h6,strong {
	font-weight: lighter;
}
br.pc { display: block; }
br.sp { display: none; }

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap.lp {
		padding: 0;
		margin: 0;
	}
	br.pc { display: none; }
	br.sp { display: block; }
}

/*----------------------------------------------------------*/
/* ヘッダー
/*----------------------------------------------------------*/
#lp3-header {
	width: 100%;
	padding: 0;
	margin: 0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	background: #fff;
	filter: var(--shade);
}
#lp3-header .lp3-header_wrap {
	width: 100%;
	max-width: 1300px;
	height: 100px;
	padding: 15px 0;
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 30px;
}
/*ロゴ*/
#lp3-header .logo {
	width: auto;
	height: 50px;
	padding: 0;
	margin: 0 auto 0 0;
	border: none;
	background: none;
	position: relative;
}
#lp3-header .logo img {
	width: auto;
	height: 100%;
	display: block;
}
/*メニュー*/
.headerMenu {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 20px;
}
.headerMenu > li {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
}
.headerMenu > li a {
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: var(--lp3-main);
	white-space: nowrap;
	text-decoration: none;
	transition: var(--lp-ease);
}
.headerMenu > li a:hover {
	color: var(--lp3-sub);
	text-decoration: none;
	transition: var(--lp-ease);
}
/*ボタン*/
.headeBtn {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-end;
	column-gap: 15px;
}
.headeBtn > li {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	filter: var(--shade);
}
.headeBtn > li.contact a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 6px;
	width: 100%;
	padding: 15px 25px;
	margin: 0;
	background: var(--lp3-main);
	border-radius: 5px;
	font-size: 14px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
	transition: var(--lp-ease);
}
.headeBtn > li.contact a:hover {
	background: var(--lp3-sub);
	color: #fff;
	transition: var(--lp-ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3-header {
		width: 100%;
	}
	#lp3-header .lp3-header_wrap {
		width: 100%;
		max-width: 100%;
		height: 60px;
		padding: 10px 20px;
		column-gap: 10px;
	}
	/*ロゴ*/
	#lp3-header .logo {
		width: auto;
		height: 30px;
	}
	#lp3-header .logo img {
		display: block;
		height: 30px;
	}
	/*メニュー*/
	.headerMenu {
		display: none;
	}
	/*ボタン*/
	.headeBtn {
		width: fit-content;
		column-gap: 10px;
	}
	.headeBtn > li.contact a {
		width: 100%;
		padding: 10px;
		border-radius: 40px;
		border: 1px solid var(--lp-main);
		font-size: 12px;
	}
	.headeBtn > li.download a {
		width: 100%;
		padding: 10px;
		border-radius: 40px;
		border: 1px solid var(--lp-orange);
		font-size: 12px;
	}
}


/*----------------------------------------------------------*/
/* FV
/*----------------------------------------------------------*/
#lp3_fv {
	width: 100%;
	padding: 100px 0 0;
	margin: 0 auto;
	margin-top: 100px;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_fv_bg.webp');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 0;
	display: flex;
	flex-direction: column;
	grid-row-gap: 50px;
}
#lp3_fv::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background-image: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%)
}
#lp3_fv::after {
	content: '';
	display: block;
	width: 800px;
	min-width: 800px;
	height: auto;
	aspect-ratio: 1600 / 429;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_fv_image.webp');
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 2;
}
.lp3_fv_wrap {
	width: 100%;
	max-width: 1300px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}
.lp3_fv_info {
	width: 600px;
	min-width: 600px;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 30px;
}
#all_wrap .lp3_fv_info > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: left;
	font-family: var(--lp3-font-jp);
	font-size: 16px;
	line-height: 1;
	font-weight: 600;
	color: var(--lp3-sub);
	letter-spacing: 0.2em;
	font-style: normal;
}
#all_wrap .lp3_fv_info > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
}
#all_wrap .lp3_fv_info > h2 img {
	width: 100%;
	height: auto;
	filter:
		drop-shadow(0 0 2px #fff)
		drop-shadow(0 0 5px #fff)
		drop-shadow(0 0 10px #fff)
		drop-shadow(0 0 20px rgba(255, 255, 255, 0.95))
		drop-shadow(0 0 35px rgba(255, 255, 255, 0.8))
		drop-shadow(0 0 60px rgba(255, 255, 255, 0.6));
}
#all_wrap .lp3_fv_info > p {
	width: fit-content;
	padding: 20px 0 0;
	margin: 0;
	font-size: 16px;
	line-height: 1.7em;
	font-weight: 600;
	color: var(--lp3-main);
	text-align: left;
	border-top: 1px solid #e6e6e6;
}

/*ボタン*/
.lp3_fv_btn {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	column-gap: 20px;
}
.lp3_fv_btn > a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
	width: fit-content;
	padding: 20px 25px;
	margin: 0;
	background: var(--lp3-sub);
	border-radius: 5px;
	font-size: 15px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
	transition: var(--ease);
}
.lp3_fv_btn > a:hover {
	filter: brightness(1.1);
	transform: translateY(3px);
	box-shadow: 0 5px 7px rgba(0, 0, 0, 0);
	transition: var(--ease);
}
.lp3_fv_btn > a i:first-of-type {
	font-size: 25px;
}
.lp3_fv_btn > a.download {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
	width: fit-content;
	padding: 20px 25px;
	margin: 0;
	background: #fff;
	border: 2px solid var(--lp3-main);
	border-radius: 5px;
	font-size: 15px;
	line-height: 1;
	font-weight: 600;
	color: var(--lp3-main);
	box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
	transition: var(--ease);
}
.lp3_fv_btn > a.download:hover {
	color: #fff;
	background: var(--lp3-main);
	transform: translateY(3px);
	box-shadow: 0 5px 7px rgba(0, 0, 0, 0);
	transition: var(--ease);
}

/*リスト*/
#all_wrap .lp3_fv_list {
	width: 400px;
	min-width: 400px;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 100px;
	right: 50px;
	z-index: 5;
	list-style: none;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp3_fv_list > li {
	width: 100%;
	padding: 15px 15px 15px 50px;
	margin: 0;
	background: #fff;
	border-radius: 0;
	filter: var(--shade);
	position: relative;
	display: flex;
	flex-direction: column;
	grid-gap: 5px;
}
#all_wrap .lp3_fv_list > li:first-child {
	border-radius: 20px 20px 0 0;
}
#all_wrap .lp3_fv_list > li:last-child {
	border-radius: 0 0 20px 20px;
}
#all_wrap .lp3_fv_list > li > h3 {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	border: none;
	background: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 10px;
	align-items: center;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_fv_list > li > h3 span {
	color: var(--lp3-sub);
}
#all_wrap .lp3_fv_list > li > p {
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 15px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
#all_wrap .lp3_fv_list > li > span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
	min-width: 80px;
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: -40px;
	transform: translate(0,-50%);
}
#all_wrap .lp3_fv_list > li > span i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 70px;
	height: 70px;
	min-width: 70px;
	background: var(--lp3-main);
	border-radius: 50%;
	font-size: 35px;
	line-height: 1;
	color: #fff;
}

/*下部*/
.lp3_fv_btm {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	background: var(--lp3-main);
}
.lp3_fv_btm_wrap {
	width: 100%;
	max-width: 1300px;
	padding: 20px 0;
	margin: 0 auto;
	position: relative;
}
.fv_tel {
	width: fit-content;
	padding: 0 0 0 70px;
	grid-template-areas: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
	align-items: flex-start;
}
.fv_tel::before {
	content: '\f095';
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	background: #fff;
	border-radius: 50%;
	font-size: 25px;
	line-height: 1;
	font-family: var(--font-awe);
	font-weight: 900;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}
#all_wrap .fv_tel > p {
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1;
	color: #fff;
	font-family: var(--lp3-font-jp);
}
.fv_tel > a {
	font-size: 30px;
	line-height: 1;
	font-family: var(--lp3-font-mincho);
	color: #fff;
	text-decoration: none;
	transition: var(--ease);
}
.fv_tel > a:hover {
	color: var(--lp3-sub);
	text-decoration: none;
	transition: var(--ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_fv {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		margin-top: 60px;
		position: relative;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_fv_bg_sp.webp');
		background-position: top center;
		background-size: 100%;
		grid-row-gap: 20px;
	}
	#lp3_fv::before {
		background-image: linear-gradient(to top, rgba(255,255,255,0.5) 0%, rgba(255,255,255,1) 100%)
	}
	#lp3_fv::after {
		display: none;
	}
	.lp3_fv_wrap {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		z-index: 10;
	}
	.lp3_fv_info {
		width: 100%;
		min-width: 100%;
		padding: 50px 20px 0;
		grid-row-gap: 15px;
	}
	#all_wrap .lp3_fv_info > em {
		font-size: 16px;
		letter-spacing: 0.1em;
	}
	#all_wrap .lp3_fv_info > h2 {
		width: 100%;
	}
	#all_wrap .lp3_fv_info > p {
		width: 100%;
		padding: 20px 0 0;
		margin: 0;
		font-size: 16px;
		border-top: 1px solid var(--lp3-text);
	}

	/*ボタン*/
	.lp3_fv_btn {
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 10px;
	}
	.lp3_fv_btn > a {
		column-gap: 15px;
		width: 100%;
		padding: 15px 20px;
		font-size: 15px;
	}
	.lp3_fv_btn > a i:first-of-type {
		font-size: 20px;
	}
	.lp3_fv_btn > a.download {
		column-gap: 15px;
		width: 100%;
		padding: 15px 20px;
		font-size: 15px;
	}

	/*リスト*/
	#all_wrap .lp3_fv_list {
		width: 100%;
		min-width: 100%;
		padding: 0 20px;
		margin: 0;
		position: relative;
		top: unset;
		right: unset;
	}
	#all_wrap .lp3_fv_list > li {
		width: 100%;
		padding: 15px 15px 15px 70px;
		border-radius: 0;
		grid-gap: 5px;
	}
	#all_wrap .lp3_fv_list > li:first-child {
		border-radius: 10px 10px 0 0;
	}
	#all_wrap .lp3_fv_list > li:last-child {
		border-radius: 0 0 10px 10px;
	}
	#all_wrap .lp3_fv_list > li > h3 {
		font-size: 18px;
	}
	#all_wrap .lp3_fv_list > li > h3 span {
		color: var(--lp3-sub);
	}
	#all_wrap .lp3_fv_list > li > p {
		font-size: 12px;
	}
	#all_wrap .lp3_fv_list > li > span {
		width: 50px;
		height: 50px;
		min-width: 50px;
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translate(0,-50%);
	}
	#all_wrap .lp3_fv_list > li > span i {
		width: 40px;
		height: 40px;
		min-width: 40px;
		font-size: 18px;
	}

	/*下部*/
	.lp3_fv_btm {
		width: 100%;
	}
	.lp3_fv_btm_wrap {
		width: 100%;
		max-width: 100%;
		padding: 20px;
	}
	.fv_tel {
		margin: 0 auto;
	}
}

/*----------------------------------------------------------*/
/* 限界に来ています
/*----------------------------------------------------------*/
#lp3_issue {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/issue_bg.webp');
	background-position: right top;
	background-size: auto 600px;
	background-repeat: no-repeat;
}
.lp3_issue_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
}
.lp3_issue_wrap > header {
	width: 600px;
	min-width: 600px;
	padding: 0 0 20px;
	margin: 0 0 20px;
	position: relative;
}
.lp3_issue_wrap > header::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: var(--lp3-main);
	position: absolute;
	bottom: 0;
	left: 0;
}
#all_wrap .lp3_issue_wrap > header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	padding: 0;
	margin: 0 0 20px;
	position: relative;
	font-family: var(--lp3-font-en);
	font-size: 17px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_issue_wrap > header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_issue_wrap > header > h2 {
	width: 100%;
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_issue_wrap > header > h2 strong {
	font-size: 1.4em;
	font-weight: 500;
	background: linear-gradient(transparent 80%, rgba(211,156,55,0.5) 50%);
	display: inline;
}
#all_wrap .lp3_issue_wrap > p {
	width: 600px;
	min-width: 600px;
	padding: 0;
	margin: 0;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*リスト*/
#all_wrap .issueList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	gap: 20px;
	flex-wrap: wrap;
}
#all_wrap .issueList > li {
	width: calc((100% - 40px) / 3);
	padding: 20px 30px 30px;
	margin: 0;
	background: #fff;
	border-radius: 20px;
	border: 1px solid #e5e5e5;
	border-top: 3px solid var(--lp3-main);
	display: flex;
	flex-direction: column;
	grid-row-gap: 20px;
	filter: var(--shade);
}
#all_wrap .issueList > li > header {
	width: 100%;
	padding: 0 0 10px;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
}
#all_wrap .issueList > li > header::after {
	content: '';
	display: block;
	width: 100px;
	height: 1px;
	background: var(--lp3-sub);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
	opacity: 0.5;
}
#all_wrap .issueList > li > header i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	min-width: 50px;
	border-radius: 50%;
	background: var(--lp3-main);
	font-size: 25px;
	line-height: 1;
	color: #fff;
}
#all_wrap .issueList > li > header h3 {
	width: fit-content;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .issueList > li > header > span {
	font-family: var(--lp3-font-mincho);
	font-weight: 500;
	font-size: 30px;
	line-height: 1;
	color: var(--lp3-sub);
	opacity: 0.5;
}
#all_wrap .issueList > li > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*下部*/
.issue_btm {
	width: 100%;
	padding: 20px;
	margin: 0 auto;
	background: var(--lp3-main);
	position: relative;
}
#all_wrap .issue_btm > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	position: relative;
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	color: #fff;
}
#all_wrap .issue_btm > h2 small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	font-size: 0.7em;
	line-height: 1;
	color: #fff;
	text-align: center;
}
#all_wrap .issue_btm > h2 span {
	display: block;
}
#all_wrap .issue_btm > h2 strong {
	font-size: 1.4em;
	color: var(--lp3-sub);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_issue {
		width: 100%;
		background-position: right -50px top;
		background-size: 100%;
	}
	.lp3_issue_wrap {
		width: 100%;
		max-width: 100%;
		padding: 40px 20px 30px;
	}
	.lp3_issue_wrap > header {
		width: 100%;
		min-width: 100%;
		padding: 0 0 15px;
		margin: 0 0 15px;
	}
	#all_wrap .lp3_issue_wrap > header > em {
		margin: 0 0 10px;
		font-size: 16px;
	}
	#all_wrap .lp3_issue_wrap > header > em::after {
		width: 100px;
	}
	#all_wrap .lp3_issue_wrap > header > h2 {
		width: 100%;
		font-size: 20px;
	}
	#all_wrap .lp3_issue_wrap > p {
		width: 100%;
		min-width: 100%;
		font-size: 14px;
	}
	/*リスト*/
	#all_wrap .issueList {
		width: 100%;
		max-width: 100%;
		padding: 0 20px;
		margin: 0 auto 40px;
		gap: 20px;
		flex-wrap: wrap;
	}
	#all_wrap .issueList > li {
		width: 100%;
		padding: 20px 20px 20px;
		border-radius: 10px;
		grid-row-gap: 10px;
	}
	#all_wrap .issueList > li > header {
		width: 100%;
		padding: 0 0 10px;
		column-gap: 10px;
	}
	#all_wrap .issueList > li > header::after {
		width: 50px;
	}
	#all_wrap .issueList > li > header i {
		width: 30px;
		height: 30px;
		min-width: 30px;
		font-size: 14px;
	}
	#all_wrap .issueList > li > header h3 {
		width: fit-content;
		position: relative;
		font-size: 5vw;
	}
	#all_wrap .issueList > li > header > span {
		font-size: 20px;
	}
	#all_wrap .issueList > li > p {
		font-size: 14px;
	}
	/*下部*/
	.issue_btm {
		width: 100%;
	}
	#all_wrap .issue_btm > h2 {
		width: 100%;
		font-size: 5vw;
	}
	#all_wrap .issue_btm > h2 small {
		font-size: 4vw;
	}
	#all_wrap .issue_btm > h2 span {
		display: block;
	}
	#all_wrap .issue_btm > h2 strong {
		font-size: 1.2em;
		color: var(--lp3-sub);
	}
}


/*----------------------------------------------------------*/
/* ソリューション
/*----------------------------------------------------------*/
#lp3_solution {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
.lp3_solution_header {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_solution_bg.webp');
	background-repeat: no-repeat;
	background-position: center right;
	background-size: auto 100%;
	background-color: #fff;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.lp3_solution_header::before {
	content: '';
	display: block;
	width: 80%;
	height: 100%;
	background-image: linear-gradient(to left, rgba(24,62,107,1) 0%, rgba(24,62,107,0) 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	opacity: 0.15;
}
#all_wrap .lp3_solution_header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_solution_header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_solution_header > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_solution_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
#all_wrap .lp3_solution_header > p {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*リスト*/
.lp3_solution_value {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	position: relative;
	background: #fafafa;
}
.lp3_solution_value_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 30px;
}
.lp3_solution_value_wrap > header {
	width: 200px;
	min-width: 200px;
	padding: 0 0 20px;
	margin: 0;
	position: relative;
	border: none;
	background: none;
}
.lp3_solution_value_wrap > header::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: var(--lp3-sub);
	position: absolute;
	bottom: 0;
	left: 0;
}
.lp3_solution_value_wrap > header h2 {
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
}
.lp3_solution_value_wrap > header h2 small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	color: var(--lp3-main);
	text-align: left;
}
.lp3_solution_value_wrap > header h2 span {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 25px;
	font-weight: 500;
	line-height: 1;
	color: var(--lp3-sub);
	text-align: left;
}
.lp3_solution_value_wrap > header h2 span b {
	font-size: 1.2em;
	font-weight: 500;
}
#all_wrap .lp3_valueList {
	width: calc(100% - 30px - 200px);
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 20px;
}
#all_wrap .lp3_valueList > li {
	width: calc((100% - 40px) / 3);
	padding: 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 15px;
}
#all_wrap .lp3_valueList > li > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: #f1f1f3;
	font-size: 20px;
	line-height: 1;
	color: var(--lp3-main);
}
#all_wrap .lp3_valueList_info {
	width: calc((100% - 15px - 50px));
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_valueList_info > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp3_valueList_info > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1;
	color: var(--lp3-sub);
	font-style: normal;
}
#all_wrap .lp3_valueList_info > header > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--lp3-main);
	border: none;
	background: none;
}
#all_wrap .lp3_valueList_info > p {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*リスト*/
.lp3_solution_system {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	position: relative;
	background: #f0f5f4;
}
.lp3_solution_system_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 30px;
}
.lp3_solution_system_wrap > header {
	width: 200px;
	min-width: 200px;
	padding: 0 0 20px;
	margin: 0;
	position: relative;
	border: none;
	background: none;
}
.lp3_solution_system_wrap > header::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: #2c8875;
	position: absolute;
	bottom: 0;
	left: 0;
}
.lp3_solution_system_wrap > header h2 {
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
}
.lp3_solution_system_wrap > header h2 small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	color: var(--lp3-main);
	text-align: left;
}
.lp3_solution_system_wrap > header h2 span {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 25px;
	font-weight: 500;
	line-height: 1;
	color: #2c8875;
	text-align: left;
}
.lp3_solution_system_wrap > header h2 span b {
	font-size: 1.2em;
	font-weight: 500;
}
#all_wrap .lp3_systemList {
	width: calc(100% - 30px - 200px);
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 20px;
}
#all_wrap .lp3_systemList > li {
	width: calc((100% - 40px) / 3);
	padding: 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-left: 3px solid #2c8875;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 15px;
}
#all_wrap .lp3_systemList > li > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: #f0f5f5;
	font-size: 20px;
	line-height: 1;
	color: #2c8875;
}
#all_wrap .lp3_systemList_info {
	width: calc((100% - 15px - 50px));
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_systemList_info > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp3_systemList_info > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1;
	color: #2c8875;
	font-style: normal;
}
#all_wrap .lp3_systemList_info > header > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 16px;
	line-height: 1.4em;
	color: var(--lp3-main);
	border: none;
	background: none;
}
#all_wrap .lp3_systemList_info > p {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_solution {
		width: 100%;
	}
	.lp3_solution_header {
		width: 100%;
		padding: 20px;
	}
	.lp3_solution_header::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,0.5) 100%);
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
		opacity: 1;
	}
	#all_wrap .lp3_solution_header > em {
		column-gap: 10px;
		margin: 0 auto 10px;
		font-size: 14px;
	}
	#all_wrap .lp3_solution_header > em::after {
		width: 100px;
	}
	#all_wrap .lp3_solution_header > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	#all_wrap .lp3_solution_header > p {
		width: 100%;
		max-width: 100%;
		font-size: 14px;
	}
	/*リスト*/
	.lp3_solution_value {
		width: 100%;
		padding: 20px;
	}
	.lp3_solution_value_wrap {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.lp3_solution_value_wrap > header {
		width: 100%;
		min-width: 100%;
		padding: 0 0 15px;
	}
	.lp3_solution_value_wrap > header h2 {
		grid-row-gap: 10px;
		width: 100%;
	}
	.lp3_solution_value_wrap > header h2 small {
		font-size: 15px;
	}
	.lp3_solution_value_wrap > header h2 span {
		font-size: 20px;
	}
	#all_wrap .lp3_valueList {
		width: 100%;
		column-gap: 0;
		grid-row-gap: 20px;
		flex-wrap: wrap;
	}
	#all_wrap .lp3_valueList > li {
		width: 100%;
	}
	/*リスト*/
	.lp3_solution_system {
		width: 100%;
		padding: 20px;
	}
	.lp3_solution_system_wrap {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.lp3_solution_system_wrap > header {
		width: 100%;
		min-width: 100%;
		padding: 0 0 15px;
	}
	.lp3_solution_system_wrap > header h2 {
		grid-row-gap: 10px;
		width: 100%;
	}
	.lp3_solution_system_wrap > header h2 small {
		font-size: 15px;
	}
	.lp3_solution_system_wrap > header h2 span {
		font-size: 20px;
	}
	.lp3_solution_system_wrap > header h2 span b {
		font-size: 1.2em;
		font-weight: 500;
	}
	#all_wrap .lp3_systemList {
		width: 100%;
		column-gap: 0;
		grid-row-gap: 20px;
		flex-wrap: wrap;
	}
	#all_wrap .lp3_systemList > li {
		width: 100%;
	}
}


/*----------------------------------------------------------*/
/* フロー
/*----------------------------------------------------------*/
#lp3_flow {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
}
.lp3_cont_header {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
	display: flex;
	flex-direction: column;
	grid-row-gap: 20px;
}
#all_wrap .lp3_cont_header > em {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: center;
}
#all_wrap .lp3_cont_header > em::before,
#all_wrap .lp3_cont_header > em::after {
	content: '';
	display: block;
	width: 100px;
	height: 1px;
	background-image: linear-gradient(to left, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_cont_header > em::after {
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_cont_header > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: center;
}
#all_wrap .lp3_cont_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
#all_wrap .lp3_cont_header > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: center;
}
/*リスト*/
#all_wrap .lp3_flowList {
	width: 100%;
	max-width: 1200px;
	min-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 30px;
	align-items: flex-start;
}
#all_wrap .lp3_flowList > li {
	width: calc((100% - 150px) / 6);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .lp3_flowList > li::after {
	content: '\f061';
	font-family: var(--font-awe);
	font-weight: 900;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	aspetc-ratio: 1/1;
	font-size: 12px;
	line-height: 1;
	color: var(--lp3-sub);
	position: absolute;
	top: 82px;
	right: -30px;
}
#all_wrap .lp3_flowList > li:last-child::after {
	display: none;
}
#all_wrap .lp3_flowList > li > em {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	aspect-ratio: 1/1;
	background: var(--lp3-main);
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-style: normal;
}
#all_wrap .lp3_flowList > li > figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	padding: 0;
	margin: 0 auto 15px;
	border-radius: 50%;
	background-image: linear-gradient(to top, #f2f8ff 0%, #fff 100%);
	border: 3px solid #fff;
	box-shadow: 0 0 0 1px #e6ebf2;
}
#all_wrap .lp3_flowList > li > figure img {
	width: auto;
	height: 50%;
}
#all_wrap .lp3_flowList > li:nth-child(4) > figure img,
#all_wrap .lp3_flowList > li:nth-child(6) > figure img {
	width: 60%;
	height: auto;
}
#all_wrap .lp3_flowList > li > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	border: none;
	background: none;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp3-main);
	text-align: center;
}
#all_wrap .lp3_flowList > li > p {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	text-align: center;
}
#all_wrap #lp3_flow > h3 {
	width: 100%;
	max-width: 1200px;
	padding: 20px;
	margin: 0 auto;
	background: #f4f7fc;
	border: 1px solid #e6ebf2;
	border-radius: 10px;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_flow {
		width: 100%;
		padding: 40px 20px;
	}
	.lp3_cont_header {
		width: calc(100% - 40px);
		max-width: 100%;
		margin: 0 auto 30px;
		grid-row-gap: 20px;
	}
	#all_wrap .lp3_cont_header > em {
		column-gap: 10px;
		font-size: 15px;
	}
	#all_wrap .lp3_cont_header > em::before,
	#all_wrap .lp3_cont_header > em::after {
		width: 50px;
	}
	#all_wrap .lp3_cont_header > h2 {
		width: 100%;
		font-size: 20px;
	}
	#all_wrap .lp3_cont_header > p {
		width: 100%;
		text-align: center;
	}
	/*リスト*/
	#all_wrap .lp3_flowList {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		padding: 0;
		margin: 0 auto 30px;
		gap: 20px;
		flex-wrap: wrap;
	}
	#all_wrap .lp3_flowList > li {
		width: calc((100% - 20px) / 2);
	}
	#all_wrap .lp3_flowList > li::after {
		display: none;
	}
	#all_wrap .lp3_flowList > li:last-child::after {
		display: none;
	}
	#all_wrap .lp3_flowList > li > em {
		width: 40px;
		height: 40px;
		font-size: 15px;
	}
	#all_wrap .lp3_flowList > li > h3 {
		margin: 0 auto 10px;
		font-size: 15px;
	}
	#all_wrap .lp3_flowList > li > p {
		width: 100%;
		font-size: 11px;
		line-height: 1.7em;
	}
	#all_wrap #lp3_flow > h3 {
		width: 100%;
		max-width: 100%;
		padding: 20px;
		border-radius: 10px;
		font-size: 18px;
	}
}

/*----------------------------------------------------------*/
/* メソッド
/*----------------------------------------------------------*/
#lp3_method {
	width: 100%;
	padding: 0 0 100px;
	margin: 0 auto;
	position: relative;
	background: #fafafa;
}
.lp3_method_header {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_method_bg.webp');
	background-repeat: no-repeat;
	background-position: center right;
	background-size: auto 100%;
	background-color: #fff;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.lp3_method_header::before {
	content: '';
	display: block;
	width: 80%;
	height: 100%;
	background-image: linear-gradient(to left, rgba(24,62,107,1) 0%, rgba(24,62,107,0) 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	opacity: 0.15;
}
#all_wrap .lp3_method_header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_method_header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_method_header > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_method_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
#all_wrap .lp3_method_header > p {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*リスト*/
.lp3_method_engine {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	position: relative;
	background: #fafafa;
}
.lp3_method_engine_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 30px;
}
.lp3_method_engine_wrap > header {
	width: 200px;
	min-width: 200px;
	padding: 0 0 20px;
	margin: 0;
	position: relative;
	border: none;
	background: none;
}
.lp3_method_engine_wrap > header::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: var(--lp3-sub);
	position: absolute;
	bottom: 0;
	left: 0;
}
.lp3_method_engine_wrap > header h2 {
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
}
.lp3_method_engine_wrap > header h2 small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	color: var(--lp3-main);
	text-align: left;
}
.lp3_method_engine_wrap > header h2 span {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 25px;
	font-weight: 500;
	line-height: 1;
	color: var(--lp3-sub);
	text-align: left;
}
.lp3_method_engine_wrap > header h2 span b {
	font-size: 1.2em;
	font-weight: 500;
}
#all_wrap .lp3_methodList {
	width: calc(100% - 30px - 200px);
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 50px;
}
#all_wrap .lp3_methodList > li {
	width: calc((100% - 100px) / 3);
	padding: 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 15px;
	position: relative;
}
#all_wrap .lp3_methodList > li::before {
	content: '\f00d';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp3-main);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	font-size: 30px;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: -50px;
	transform: translate(0,-50%);
}
#all_wrap .lp3_methodList > li:last-child::before {
	display: none;
}
#all_wrap .lp3_methodList > li > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: #f1f1f3;
	font-weight: 600;
	font-size: 20px;
	line-height: 1;
	font-style: normal;
	color: var(--lp3-main);
}
#all_wrap .lp3_methodList_info {
	width: calc((100% - 15px - 50px));
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_methodList_info > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp3_methodList_info > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1;
	color: var(--lp3-sub);
	font-style: normal;
}
#all_wrap .lp3_methodList_info > header > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--lp3-main);
	border: none;
	background: none;
}
#all_wrap .lp3_methodList_info > p {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*レイヤー*/
#all_wrap .lp3_layerList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 30px;
}
#all_wrap .lp3_layerList > li {
	width: calc((100% - 60px) / 3);
	padding: 0;
	margin: 0;
	position: relative;
	background: #194b97;
	border-radius: 10px;
	display: flex;
	justify-content: center;
}
#all_wrap .lp3_layerList > li:nth-child(2) {
	background: #4673b9;
}
#all_wrap .lp3_layerList > li:nth-child(3) {
	background: #264068;
}
#all_wrap .lp3_layerList > li > header {
	width: 80px;
	min-width: 80px;
	padding: 20px 15px;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_layerList > li > header > small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	text-align: center;
}
#all_wrap .lp3_layerList > li > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 30px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	font-style: normal;
	text-align: center;
}
#all_wrap .lp3_layerList > li > header > i {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
	margin: 10px auto 0;
	font-size: 30px;
	line-height: 1;
	color: #89e9ff;
}
.lp3_layerList_info {
	width: calc(100% - 80px);
	padding: 20px;
	margin: 0;
	position: relative;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-radius: 10px;
}
#all_wrap .lp3_layerList_info > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--lp3-main);
	border: none;
	background: none;
}
#all_wrap .lp3_layerList_info > p {
	width: 100%;
	padding: 5px 0 8px;
	margin: 0 auto 10px;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
	border-bottom: 1px solid #cdd3dd;
}
#all_wrap .lp3_layerList_item {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_layerList_item > span {
	display: block;
	width: 100%;
	padding: 0 0 0 18px;
	margin: 0;
	position: relative;
	font-size: 14px;
	line-height: 1.2em;
	font-weight: 500;
	color: var(--lp3-text);
	text-align: left;
}
#all_wrap .lp3_layerList_item > span::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	aspetc-ratio: 1/1;
	background: #3a70cb;
	border-radius: 50%;
	position: absolute;
	top: 0.2em;
	left: 0;
}
#all_wrap .lp3_layerList_info > h4 {
	width: 100%;
	padding: 5px 10px;
	margin: 0;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	background: #eef5fe;
	border-radius: 30px;
	text-align: center;
	font-family: var(--lp3-font-jp);
	color: var(--lp3-main);
}
/*ポイント*/
#all_wrap .lp3_layerPoint {
	width: 100%;
	max-width: 1200px;
	padding: 20px;
	margin: 30px auto 0;
	background: #f1f6fc;
	border-radius: 10px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
}
#all_wrap .lp3_layerPoint > li {
	width: fit-content;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 15px;
	padding: 0 50px;
	margin: 0;
	position: relative;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_layerPoint > li::before {
	content: '\f058';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp3-main);
	font-size: 50px;
}
#all_wrap .lp3_layerPoint > li::after {
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	border-left: 1px dashed #cdd3dd;
	position: absolute;
	top: 0;
	right: 0;
}
#all_wrap .lp3_layerPoint > li:last-child::after {
	display: none;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_method {
		width: 100%;
		padding: 0 0 40px;
	}
	.lp3_method_header {
		width: 100%;
		padding: 20px;
		margin: 0 auto;
	}
	.lp3_method_header::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0.5) 100%);
		opacity: 1;
	}
	#all_wrap .lp3_method_header > em {
		column-gap: 10px;
		margin: 0 auto 10px;
		font-size: 14px;
	}
	#all_wrap .lp3_method_header > em::after {
		content: '';
		display: block;
		width: 200px;
		height: 1px;
		background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
	}
	#all_wrap .lp3_method_header > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	#all_wrap .lp3_method_header > p {
		width: 100%;
		max-width: 100%;
		font-size: 14px;
	}
	/*リスト*/
	.lp3_method_engine {
		width: 100%;
		padding: 20px;
	}
	.lp3_method_engine_wrap {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.lp3_method_engine_wrap > header {
		width: 100%;
		min-width: 100%;
		padding: 0 0 20px;
	}
	.lp3_method_engine_wrap > header h2 {
		grid-row-gap: 10px;
		width: 100%;
	}
	.lp3_method_engine_wrap > header h2 small {
		font-size: 15px;
	}
	.lp3_method_engine_wrap > header h2 span {
		font-size: 20px;
	}
	#all_wrap .lp3_methodList {
		width: 100%;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	#all_wrap .lp3_methodList > li {
		width: 100%;
		padding: 20px;
	}
	#all_wrap .lp3_methodList > li::before {
		display: none;
	}
	/*レイヤー*/
	#all_wrap .lp3_layerList {
		width: 100%;
		max-width:100%;
		padding: 0 20px;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	#all_wrap .lp3_layerList > li {
		width: 100%;
	}
	#all_wrap .lp3_layerList_info > h4 {
		font-size: 12px;
	}
	/*ポイント*/
	#all_wrap .lp3_layerPoint {
		width: calc(100% - 40px);
		max-width: 100%;
		padding: 20px;
		margin: 20px auto 0;
		flex-wrap: wrap;
		grid-row-gap: 20px;
	}
	#all_wrap .lp3_layerPoint > li {
		width: 100%;
		padding: 0;
		column-gap: 15px;
		font-size: 16px;
	}
	#all_wrap .lp3_layerPoint > li::before {
		content: '\f058';
		font-family: var(--font-awe);
		font-weight: 900;
		color: var(--lp3-main);
		font-size: 50px;
	}
	#all_wrap .lp3_layerPoint > li::after {
		content: '';
		display: block;
		width: 1px;
		height: 100%;
		border: none;
		border-bottom: 1px dashed #cdd3dd;
		position: absolute;
		top: 0;
		right: 0;
	}
	#all_wrap .lp3_layerPoint > li:last-child::after {
		display: none;
	}
}

/*----------------------------------------------------------*/
/* コンサル
/*----------------------------------------------------------*/
#lp3_consul {
	width: 100%;
	padding: 100px 0 0;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
.lp3_consul_wrap {
	width: 100%;
	padding: 0 0 100px;
	margin: 0 auto;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_consul_bg.webp');
	background-repeat: no-repeat;
	background-position: top -150px right;
	background-size: auto 500px;
	background-color: #eff3f8;
	z-index: 0;
}
.lp3_consul_wrap::before {
	content: '';
	display: block;
	width: 100%;
	height: 350px;
	background-image: linear-gradient(to top, rgba(239,243,248,1) 0%, rgba(239,243,248,0) 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
#all_wrap .lp3_consul_wrap > header {
	width: 100%;
	max-width: 1200px;
	padding: 50px 0;
	margin: 0 auto;
	position: relative;
}
#all_wrap .lp3_consul_wrap > header > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	font-size: 35px;
	font-weight: 500;
	line-height: 1.5em;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_calcList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 50px;
}
#all_wrap .lp3_calcList > li {
	width: calc((100% - 100px) / 3);
	padding: 0 20px 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-top: 5px solid var(--lp3-main);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
	position: relative;
}
#all_wrap .lp3_calcList > li:last-child {
	border-top: 5px solid var(--lp3-sub);
}
#all_wrap .lp3_calcList > li:nth-child(1)::before {
	content: '\2b';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp3-main);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	font-size: 30px;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: -50px;
	transform: translate(0,-50%);
}
#all_wrap .lp3_calcList > li:nth-child(2)::before {
	content: '\3d';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp3-main);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	font-size: 30px;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: -50px;
	transform: translate(0,-50%);
}
#all_wrap .lp3_calcList > li > header {
	width: 100%;
	padding: 20px 0 20px 65px;
	margin: 0 auto 5px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
	border-bottom: 1px solid var(--lp3-sub);
}
#all_wrap .lp3_calcList > li > header > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: #f1f1f3;
	font-weight: 600;
	font-size: 20px;
	line-height: 1;
	font-style: normal;
	color: var(--lp3-main);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}
#all_wrap .lp3_calcList > li > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1;
	color: var(--lp3-sub);
	font-style: normal;
}
#all_wrap .lp3_calcList > li > header > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--lp3-main);
	border: none;
	background: none;
}
#all_wrap .lp3_calcList > li > p {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 16px;
	line-height: 1.7em;
	font-weight: 600;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_calcList > li > p.txt {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 12px;
	line-height: 1.7em;
	font-weight: 500;
	color: var(--lp3-text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.lp3_consul_btm {
	width: 100%;
	max-width: 1200px;
	padding: 20px;
	margin: 0 auto;
	background: var(--lp3-main);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
}
#all_wrap .lp3_consul_btm > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 18px;
	line-height: 1.7em;
	color: #fff;
	text-align: center;
}
#all_wrap .lp3_consul_btm > H3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 25px;
	line-height: 1.7em;
	color: var(--lp3-sub);
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_consul {
		width: 100%;
		padding: 40px 0 0;
	}
	.lp3_consul_wrap {
		width: 100%;
		padding: 0 0 40px;
		margin: 0 auto;
		position: relative;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_consul_bg.webp');
		background-repeat: no-repeat;
		background-position: top -50px right;
		background-size: auto 200px;
		background-color: #eff3f8;
		z-index: 0;
	}
	.lp3_consul_wrap::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, #eff3f8 0%, #eff3f8 50%, rgba(255, 255, 255, 0.5) 100%);
		height: 150px;
	}
	#all_wrap .lp3_consul_wrap > header {
		width: 100%;
		max-width: 100%;
		padding: 20px;
	}
	#all_wrap .lp3_consul_wrap > header > h2 {
		width: 100%;
		font-size: 20px;
	}
	#all_wrap .lp3_calcList {
		width: calc(100% - 40px);
		max-width: 100%;
		padding: 0;
		margin: 0 auto 20px;
		flex-wrap: wrap;
		grid-row-gap: 50px;
	}
	#all_wrap .lp3_calcList > li {
		width: 100%;
		padding: 0 20px 20px;
	}
	#all_wrap .lp3_calcList > li:nth-child(1)::before {
		content: '\2b';
		font-family: var(--font-awe);
		font-weight: 900;
		color: var(--lp3-main);
		display: flex;
		justify-content: center;
		align-items: center;
		width: 50px;
		height: 50px;
		aspect-ratio: 1/1;
		font-size: 30px;
		line-height: 1;
		position: absolute;
		top: unset;
		bottom: -50px;
		right: unset;
		left: 50%;
		transform: translate(-50%,0);
	}
	#all_wrap .lp3_calcList > li:nth-child(2)::before {
		content: '\3d';
		font-family: var(--font-awe);
		font-weight: 900;
		color: var(--lp3-main);
		display: flex;
		justify-content: center;
		align-items: center;
		width: 50px;
		height: 50px;
		aspect-ratio: 1/1;
		font-size: 30px;
		line-height: 1;
		position: absolute;
		top: unset;
		bottom: -50px;
		right: unset;
		left: 50%;
		transform: translate(-50%,0) rotate(90deg);
		transform-origin: center;
	}
	.lp3_consul_btm {
		width: calc(100% - 40px);
		max-width: 100%;
	}
	#all_wrap .lp3_consul_btm > p {
		width: 100%;
		font-size: 4vw;
	}
	#all_wrap .lp3_consul_btm > H3 {
		font-size: 5vw;
		line-height: 1.5em;
	}
}

/*----------------------------------------------------------*/
/* 6ヶ月プログラム
/*----------------------------------------------------------*/
#lp3_program {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	background: #fafafa;
}
.lp3_program_header {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp3_program_bg.webp');
	background-repeat: no-repeat;
	background-position: center right;
	background-size: auto 100%;
	background-color: #fff;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.lp3_program_header::before {
	content: '';
	display: block;
	width: 80%;
	height: 100%;
	background-image: linear-gradient(to left, rgba(24,62,107,1) 0%, rgba(24,62,107,0) 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	opacity: 0.15;
}
#all_wrap .lp3_program_header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_program_header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_program_header > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_program_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
#all_wrap .lp3_program_header > p {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}

/*リスト*/
#all_wrap .lp3_programList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 30px;
	transform: translate(0,-30px);
}
#all_wrap .lp3_programList > li {
	width: calc((100% - 60px) / 3);
	padding: 45px 20px 20px;
	margin: 0;
	border: 1px solid var(--lp3-main);
	background: rgba(245,248,252,0.7);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	filter: var(--shade);
}
#all_wrap .lp3_programList > li::after {
	content: '';
	display: block;
	width: 15px;
	height: 20px;
	background: var(--lp3-main);
	position: absolute;
	top: 50%;
	right: -15px;
	transform: translate(0,-50%);
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
#all_wrap .lp3_programList > li:last-child::after {
	display: none;
}
#all_wrap .lp3_programList > li > em {
	display: inline-block;
	width: fit-content;
	padding: 10px 40px;
	margin: 0;
	background: var(--lp3-main);
	border-radius: 10px 0 10px 0;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-style: normal;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
#all_wrap .lp3_programList > li > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 10px;
}
#all_wrap .lp3_programList > li > header > h2 {
	width: auto;
	padding: 0;
	margin: 0;
	position: relative;
	border: none;
	background: none;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_programList > li > header > p {
	display: inline-block;
	width: fit-content;
	padding: 5px 10px;
	margin: 0;
	background: #dfeffe;
	font-size: 12px;
	line-height: 1;
	font-weight: 500;
	color: #0f63d5;
	border-radius: 30px;
	border: 1px solid #0f63d5;
}
#all_wrap .lp3_programList > li.month_2 > header > p {
	background: #feeacb;
	color: #d56800;
	border: 1px solid #d56800;
}
#all_wrap .lp3_programList > li.month_3 > header > p {
	background: #e2f3e3;
	color: #089228;
	border: 1px solid #089228;
}
#all_wrap .lp3_programList > li.month_4 > header > p {
	background: #dbecfd;
	color: #1062dc;
	border: 1px solid #1062dc;
}
#all_wrap .lp3_programList > li.month_5 > header > p {
	background: #e8e6f9;
	color: #665dbd;
	border: 1px solid #665dbd;
}
#all_wrap .lp3_programList > li.month_6 > header > p {
	background: #e8edf3;
	color: #4a5d84;
	border: 1px solid #4a5d84;
}
#all_wrap .lp3_programList > li .lp3_layerList_item {
	margin: 0 auto 20px;
}
#all_wrap .lp3_programList > li dl {
	width: 100%;
	padding: 0;
	margin: auto auto 0;
	position: relative;
	display: flex;
	justify-content: space-between;
}
#all_wrap .lp3_programList > li dl dt {
	width: fit-content;
	padding: 10px;
	margin: 0;
	white-space: nowrap;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	background: var(--lp3-main);
	border-radius: 5px 0 0 5px;
}
#all_wrap .lp3_programList > li dl dd {
	width: 100%;
	padding: 10px;
	margin: 0;
	background: #fff;
	border: 1px solid var(--lp3-main);
	border-radius: 0 5px 5px 0;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-text);
}
.lp3_program_btm {
	width: 100%;
	padding: 30px;
	margin: 0 auto;
	background-image: linear-gradient(to right,#4673b9 0%, #1b375d 100%);
	position: relative;
}
#all_wrap .lp3_program_btm > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	border: none;
	background: none;
	font-size: 25px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	text-align: left;
}
#all_wrap .lp3_program_btm > ul {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 50px;
}
#all_wrap .lp3_program_btm > ul > li {
	width: calc((100% - 150px) / 4);
	padding: 10px 20px;
	margin: 0;
	background: #fff;
	border-radius: 10px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 20px;
	position: relative;
}
#all_wrap .lp3_program_btm > ul > li::after {
	content: '\f054';
	font-family: var(--font-awe);
	font-weight: 900;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	aspect-ratio: 1 / 1;
	font-size: 30px;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: -50px;
	transform: translate(0, -50%);
}
#all_wrap .lp3_program_btm > ul > li:last-child::after {
	display: none;
}
#all_wrap .lp3_program_btm > ul > li > em {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background: var(--lp3-main);
	font-weight: 600;
	font-size: 20px;
	line-height: 1;
	font-style: normal;
	color: #fff;
}
#all_wrap .lp3_program_btm > ul > li > p {
	padding: 0;
	margin: 0;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp3-text);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_program {
		width: 100%;
	}
	.lp3_program_header {
		width: 100%;
		padding: 40px 20px 70px;
	}
	.lp3_program_header::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0.5) 100%);
		opacity: 1;
	}
	#all_wrap .lp3_program_header > em {
		width: 100%;
		max-width:100%;
		margin: 0 auto 10px;
		font-size: 15px;
	}
	#all_wrap .lp3_program_header > em::after {
		width: 100px;
	}
	#all_wrap .lp3_program_header > h2 {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	#all_wrap .lp3_program_header > p {
		width: 100%;
		max-width: 100%;
		font-size: 14px;
	}

	/*リスト*/
	#all_wrap .lp3_programList {
		width: 100%;
		max-width: 100%;
		gap: 30px;
		transform: translate(0,-30px);
		padding: 0 20px;
	}
	#all_wrap .lp3_programList > li {
		width: 100%;
		padding: 45px 20px 20px;
	}
	#all_wrap .lp3_programList > li::after {
		content: '';
		display: block;
		width: 20px;
		height: 15px;
		background: var(--lp3-main);
		position: absolute;
		top: unset;
		bottom: -15px;
		right: unset;
		left: 50%;
		transform: translate(-50%,0);
		clip-path: polygon(0 0, 50% 100%, 100% 0);
	}
	#all_wrap .lp3_programList > li:last-child::after {
		display: none;
	}
	.lp3_program_btm {
		width: 100%;
		padding: 20px;
	}
	#all_wrap .lp3_program_btm > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 15px;
		font-size: 20px;
	}
	#all_wrap .lp3_program_btm > ul {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		gap: 10px;
	}
	#all_wrap .lp3_program_btm > ul > li {
		width: calc((100% - 10px)/2);
		padding: 10px;
		column-gap: 10px;
	}
	#all_wrap .lp3_program_btm > ul > li::after {
		display: none;
	}
	#all_wrap .lp3_program_btm > ul > li:last-child::after {
		display: none;
	}
	#all_wrap .lp3_program_btm > ul > li > em {
		width: 30px;
		min-width: 30px;
		height: 30px;
		font-size: 12px;
	}
	#all_wrap .lp3_program_btm > ul > li > p {
		padding: 0;
		margin: 0;
		font-size: 16px;
	}
}

/*----------------------------------------------------------*/
/* 料金表
/*----------------------------------------------------------*/
#lp3_price {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
#all_wrap .lp3_planList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
	column-gap: 30px;
}
#all_wrap .lp3_planList > li {
	width: calc((100% - 60px) / 3);
	padding: 30px;
	margin: 0;
	position: relative;
	background: #fff;
	border: 1px solid #E2E6ED;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: var(--ease);
}
#all_wrap .lp3_planList > li:hover {
	transform: translateY(-10px);
	filter: var(--shade);
	transition: var(--ease);
}
.lp3_planList > li > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .lp3_planList > li > header > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 14px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-blue);
	text-align: left;
	font-style: normal;
}
#all_wrap .lp3_planList > li > header > h3 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 25px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-text);
	text-align: left;
	font-style: normal;
}
#all_wrap .lp3_planList > li > header > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.plan_price {
	width: 100%;
	padding: 15px;
	margin: 0 auto 15px;
	position: relative;
	background: #edf3fc;
	border-radius: 10px;
}
.plan_price > small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	font-size: 12px;
	line-height: 1;
	text-align: center;
}
#all_wrap .plan_price > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 25px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-text);
	text-align: center;
}
#all_wrap .lp3_planList > li > h3 {
	width: 100%;
	padding: 15px 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	border-top: 1px solid #f1f1f3;
	font-family: var(--lp3-font-jp);
	font-size: 16px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-blue);
	text-align: left;
}
#all_wrap .lp3_checkList {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp3_checkList > li {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	column-gap: 5px;
	font-size: 14px;
	line-height: 1.7em;
	font-weight: 500;
}
#all_wrap .lp3_checkList > li::before {
	content: '\f00c';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp3-blue);
}
.plan_recom {
	width: 100%;
	padding: 15px;
	margin: auto auto 0;
	position: relative;
	background: #edf3fc;
	border-radius: 10px;
}
#all_wrap .plan_recom > h4 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 12px;
	line-height: 1;
	font-weight: 500;
	text-align: center;
	color: var(--lp3-blue);
}
#all_wrap .plan_recom > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-text);
	text-align: center;
}
/*本命プラン*/
#all_wrap .lp3_planList > li.act {
	width: calc((100% - 60px) / 3);
	padding: 30px;
	margin: 0;
	position: relative;
	background: #fff;
	border: 3px solid var(--lp3-blue);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	filter: var(--shade);
}
#all_wrap .lp3_planList > li.act .tag {
	display: block;
	width: fit-content;
	padding: 10px 15px;
	margin: 0;
	background: var(--lp3-blue);
	border-radius: 0 0 0 10px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
}
#all_wrap .lp3_planList > li.act .plan_price > p {
	color: var(--lp3-blue);
}
#all_wrap .lp3_planList > li.act .plan_recom {
	background: var(--lp3-blue);
}
#all_wrap .lp3_planList > li.act .plan_recom > h4 {
	color: #fff;
}
#all_wrap .lp3_planList > li.act .plan_recom > p {
	color: #fff;
}

.lp3_price_att {
	width: fit-content;
	padding: 20px;
	margin: 30px auto 0;
	position: relative;
	background: #edf3fc;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	border: 1px solid #eee;
}
.lp3_price_att::before {
	content: '\f05a';
	font-family: var(--font-awe);
	font-weight: 900;
	font-size: 30px;
	line-height: 1;
	color: var(--lp3-blue);
}
#all_wrap .lp3_price_att > p {
	padding: 0;
	margin: 0;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 700;
	color: var(--lp3-text);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_price {
		width: 100%;
		padding: 40px 0;
	}
	#all_wrap .lp3_planList {
		width: 100%;
		max-width: 100%;
		padding: 0 20px;
		flex-wrap: wrap;
		gap: 20px;
	}
	#all_wrap .lp3_planList > li {
		width: 100%;
		padding: 20px;
	}
	/*本命プラン*/
	#all_wrap .lp3_planList > li.act {
		width: 100%;
		padding: 20px;
	}

	.lp3_price_att {
		width: calc(100% - 40px);
		padding: 20px;
		margin: 20px auto 0;
	}
	.lp3_price_att::before {
		font-size: 30px;
	}
	#all_wrap .lp3_price_att > p {
		font-size: 15px;
	}
}


/*----------------------------------------------------------*/
/* 対応力
/*----------------------------------------------------------*/
#lp3_readiness {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #fafafa;
}
.lp3_readiness_header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
#all_wrap .lp3_readiness_header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_readiness_header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_readiness_header > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_readiness_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
#all_wrap .lp3_readiness_header > p {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	font-size: 14px;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*想定ポイント*/
.lp3_readiness_point {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 15px 30px;
}
#all_wrap .lp3_readiness_point > h3 {
	width: 100%;
	padding: 0 0 0 15px;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	border-left: 3px solid var(--lp3-main);
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_readiness_point > ul {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 20px;
	grid-row-gap: 20px;
	flex-wrap: wrap;
	counter-reset: readiness-point;
}
#all_wrap .lp3_readiness_point > ul > li {
	width: calc((100% - 60px) / 4);
	padding: 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #f1f1f3;
	border-radius: 10px;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 20px;
	counter-increment: readiness-point;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 700;
}
#all_wrap .lp3_readiness_point > ul > li::before {
	content: counter(readiness-point);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	font-size: 40px;
	font-weight: 700;
	color: rgba(40, 73, 119, .15);
}
/*想定ポイント*/
.lp3_readiness_support {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 15px 30px;
}
#all_wrap .lp3_readiness_support > h3 {
	width: 100%;
	padding: 0 0 0 15px;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	border-left: 3px solid var(--lp3-main);
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_readiness_support > dl {
	width: calc((100% - 30px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
	border: 2px solid var(--lp3-main);
	border-radius: 10px;
	overflow: hidden;
}
#all_wrap .lp3_readiness_support > dl dt {
	width: 100%;
	padding: 12px 20px;
	margin: 0;
	background: var(--lp3-main);
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
}
#all_wrap .lp3_readiness_support > dl dt strong {
	font-family: var(--lp3-font-jp);
	font-size: 1.4em;
	font-weight: 700;
}
#all_wrap .lp3_readiness_support > dl dd {
	width: 100%;
	padding: 0 30px;
	margin: 0;
	position: relative;
	background: #fff;
}
#all_wrap .lp3_dotList {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
}
#all_wrap .lp3_dotList > li {
	width: 100%;
	padding: 15px 15px 15px 35px;
	margin: 0;
	position: relative;
	border-bottom: 1px solid #f1f1f3;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp3-text);
}
#all_wrap .lp3_dotList > li::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--lp3-sub);
	position: absolute;
	top: calc(15px + 0.4em);
	left: 15px;
}
/*act*/
#all_wrap .lp3_readiness_support > dl.act {
	border: 2px solid var(--lp3-sub);
}
#all_wrap .lp3_readiness_support > dl.act dt {
	background: var(--lp3-sub);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_readiness {
		width: 100%;
		padding: 40px 0;
	}
	.lp3_readiness_header {
		padding: 0 20px;
		margin: 0 auto 30px;
	}
	#all_wrap .lp3_readiness_header > em {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 15px;
		font-weight: 500;
	}
	#all_wrap .lp3_readiness_header > em::after {
		width: 100px;
	}
	#all_wrap .lp3_readiness_header > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	#all_wrap .lp3_readiness_header > p {
		width: 100%;
		max-width: 100%;
	}
	/*想定ポイント*/
	.lp3_readiness_point {
		width: 100%;
		max-width: 100%;
		padding: 0 20px;
		margin: 0 auto 30px;
		gap: 15px 20px;
	}
	#all_wrap .lp3_readiness_point > h3 {
		width: 100%;
		padding: 0 0 0 15px;
		font-size: 16px;
	}
	#all_wrap .lp3_readiness_point > ul {
		width: 100%;
		flex-wrap: wrap;
		column-gap: 10px;
		grid-row-gap: 10px;
		counter-reset: readiness-point;
	}
	#all_wrap .lp3_readiness_point > ul > li {
		width: 100%;
		padding: 15px;
		column-gap: 10px;
		counter-increment: readiness-point;
		font-size: 14px;
	}
	#all_wrap .lp3_readiness_point > ul > li::before {
		content: counter(readiness-point);
		width: 20px;
		height: 20px;
		flex-shrink: 0;
		font-size: 20px;
	}
	/*想定ポイント*/
	.lp3_readiness_support {
		width: 100%;
		max-width: 100%;
		padding: 0 20px;
		margin: 0 auto;
		gap: 15px 20px;
	}
	#all_wrap .lp3_readiness_support > h3 {
		width: 100%;
		padding: 0 0 0 15px;
		font-size: 16px;
	}
	#all_wrap .lp3_readiness_support > dl {
		width: 100%;
	}
	#all_wrap .lp3_readiness_support > dl dt {
		width: 100%;
		padding: 12px 20px;
		font-size: 16px;
	}
	#all_wrap .lp3_readiness_support > dl dd {
		width: 100%;
		padding: 0;
	}
	#all_wrap .lp3_dotList {
		width: 100%;
	}
}

/*----------------------------------------------------------*/
/* 会社概要
/*----------------------------------------------------------*/
#lp3_company {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
.lp3_company_header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
#all_wrap .lp3_company_header > em {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	font-family: var(--lp3-font-jp);
	font-size: 15px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp3-sub);
	font-style: normal;
	text-align: left;
}
#all_wrap .lp3_company_header > em::after {
	content: '';
	display: block;
	width: 200px;
	height: 1px;
	background-image: linear-gradient(to right, #d39c37 0%, rgba(211,156,55,0) 100%);
}
#all_wrap .lp3_company_header > h2 {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 20px;
	background: none;
	border: none;
	position: relative;
	font-size: 35px;
	line-height: 1.5em;
	font-weight: 500;
	color: var(--lp3-main);
	text-align: left;
}
#all_wrap .lp3_company_header > h2 strong {
	color: var(--lp3-sub);
	font-weight: 500;
}
.lp3_company_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	column-gap: 50px;
}
.lp3_company_wrap > dl {
	width: calc((100% - 50px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
}
.lp3_company_wrap > dl dt {
	width: 100%;
	padding: 0 0 0 15px;
	margin: 0 auto 20px;
	position: relative;
	border: none;
	background: none;
	border-left: 3px solid var(--lp3-main);
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp3-main);
	text-align: left;
}
.lp3_company_wrap > dl dd {
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .lp3_companyList {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
}
#all_wrap .lp3_companyList > li {
	width: 100%;
	padding: 15px 0;
	margin: 0;
	position: relative;
	border-bottom: 1px dotted #eee;
	display: flex;
	justify-content: space-between;
	column-gap: 15px;
}
#all_wrap .lp3_companyList > li > span {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	width: 120px;
	min-width: 120px;
	padding: 0;
	margin: 0;
	position: relative;
	color: var(--lp3-main);
	text-align: left;
	font-size: 14px;
	line-height: 1.7em;
	font-weight: 600;
}
#all_wrap .lp3_companyList > li > p {
	width: calc(100% - 120px - 15px);
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 14px;
	line-height: 1.7em;
}
#all_wrap .lp3_companyList > li.full {
	width: 100%;
	flex-wrap: wrap;
	grid-row-gap: 5px;
}
#all_wrap .lp3_companyList > li.full > span {
	display: block;
	width: 100%;
}
#all_wrap .lp3_companyList > li.full > p {
	width: 100%;
}
#all_wrap .lp3_company_wrap > dl dd ul.lp3_checkList > li {
	padding: 15px 0;
	border-bottom: 1px dotted #eee;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_company {
		width: 100%;
		padding: 40px 0;
	}
	.lp3_company_header {
		width: 100%;
		padding: 0 20px;
		margin: 0 auto 20px;
	}
	#all_wrap .lp3_company_header > em {
		column-gap: 10px;
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 15px;
	}
	#all_wrap .lp3_company_header > em::after {
		width: 100px;
	}
	#all_wrap .lp3_company_header > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	.lp3_company_wrap {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		gap: 30px;
		padding: 0 20px;
	}
	.lp3_company_wrap > dl {
		width: 100%;
	}
	.lp3_company_wrap > dl dt {
		width: 100%;
		padding: 0 0 0 15px;
		margin: 0 auto 10px;
		font-size: 18px;
	}
	.lp3_company_wrap > dl dd {
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .lp3_companyList {
		width: 100%;
	}
	#all_wrap .lp3_companyList > li {
		width: 100%;
		padding: 15px 0;
		column-gap: 10px;
	}
	#all_wrap .lp3_companyList > li > span {
		width: 80px;
		min-width: 80px;
		font-size: 14px;
	}
	#all_wrap .lp3_companyList > li > p {
		width: calc(100% - 80px - 10px);
		font-size: 14px;
	}
	#all_wrap .lp3_companyList > li.full {
		width: 100%;
		flex-wrap: wrap;
		grid-row-gap: 5px;
	}
	#all_wrap .lp3_companyList > li.full > span {
		display: block;
		width: 100%;
	}
	#all_wrap .lp3_companyList > li.full > p {
		width: 100%;
	}
	#all_wrap .lp3_company_wrap > dl dd ul.lp3_checkList {
		margin-bottom: 0;
	}
	#all_wrap .lp3_company_wrap > dl dd ul.lp3_checkList > li {
		padding: 15px 0;
		border-bottom: 1px dotted #eee;
	}
}

/*----------------------------------------------------------*/
/* 契約までの流れ
/*----------------------------------------------------------*/
#lp3_step {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #F4F6F9;
}
#all_wrap .lp3_stepList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 30px;
}
#all_wrap .lp3_stepList > li {
	width: calc((100% - 120px) / 4);
	padding: 30px;
	grid-template-areas: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	border: 1px solid #E2E6ED;
	border-radius: 10px;
	background: #fff;
}
#all_wrap .lp3_stepList > li::after {
	content: '\f178';
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-family: var(--font-awe);
	font-weight: 900;
	font-size: 30px;
	color: var(--lp3-main);
	position: absolute;
	top: 50%;
	right: -25px;
	transform: translate(0,-50%);
}
#all_wrap .lp3_stepList > li:last-child::after {
	display: none;
}
#all_wrap .lp3_stepList > li i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: var(--lp3-main);
	font-size: 20px;
	line-height: 1;
	color: #fff;
}
#all_wrap .lp3_stepList > li h3 {
	width: 100%;
	padding: 0 0 12px;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	font-size: 17px;
	line-height: 1.4em;
	font-weight: 700;
	color: var(--lp3-text);
	text-align: center;
}
#all_wrap .lp3_stepList > li h3::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: var(--lp3-sub);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
}
#all_wrap .lp3_stepList > li > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 14px;
	line-height: 1.7;
	text-align: center;
}
#lp3_step .lp3_price_att {
	width: fit-content;
	padding: 20px;
	margin: 30px auto 0;
	position: relative;
	background: #fff;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	border: 1px solid #fff;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_step {
		width: 100%;
		padding: 40px 0;
	}
	#all_wrap .lp3_stepList {
		width: 100%;
		max-width: 100%;
		padding: 0 20px;
		flex-wrap: wrap;
		gap: 20px;
	}
	#all_wrap .lp3_stepList > li {
		width: 100%;
		padding: 20px;
	}
	#all_wrap .lp3_stepList > li::after {
		content: '\f063';
		top: unset;
		right: unset;
		bottom: -15px;
		left: 50%;
		transform: translate(-50%,0);
	}
	#all_wrap .lp3_stepList > li i {
		width: 50px;
		height: 50px;
		font-size: 25px;
	}
	#all_wrap .lp3_stepList > li h3 {
		width: 100%;
		padding: 0 0 12px;
		font-size: 20px;
	}
	#all_wrap .lp3_stepList > li h3::after {
		content: '';
		display: block;
		width: 50px;
		height: 1px;
		background: var(--lp3-sub);
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%,0);
	}
	#all_wrap .lp3_stepList > li > p {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		font-size: 14px;
		line-height: 1.7;
		text-align: center;
	}
	#lp3_step .lp3_price_att {
		width: calc(100% - 40px);
		padding: 20px;
		margin: 20px auto 0;
	}
}

/*----------------------------------------------------------*/
/* お問い合わせ
/*----------------------------------------------------------*/
#lp3_contact {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #fff;
	border-top: 1px solid var(--lp3-main);
}
#all_wrap .lp3_btnList {
	width: 100%;
	max-width: 800px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 30px;
	flex-wrap: wrap;
}
#all_wrap .lp3_btnList > li {
	width: calc((100% - 30px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .lp3_btnList > li.mail > a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
	width: 100%;
	padding: 30px;
	margin: 0;
	background-image: linear-gradient(to right, #d8a840 0%, #ba8f32 100%);
	border: 2px solid #bb8b21;
	position: relative;
	border-radius: 10px;
	font-size: 25px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .lp3_btnList > li.mail > a::after {
	content: '\f105';
	font-family: var(--font-awe);
	font-weight: 900;
	transition: var(--ease);
	position: relative;
}
#all_wrap .lp3_btnList > li.mail > a:hover {
	filter: brightness(1.1);
	transition: var(--ease);
}
#all_wrap .lp3_btnList > li.mail > a:hover::after {
	transform: translateX(3px);
	transition: var(--ease);
}
#all_wrap .lp3_btnList > li.download > a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
	width: 100%;
	padding: 30px;
	margin: 0;
	background: #fff;
	border: 2px solid var(--lp3-main);
	position: relative;
	border-radius: 10px;
	font-size: 25px;
	line-height: 1;
	font-weight: 600;
	color: var(--lp3-main);
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .lp3_btnList > li.download > a::after {
	content: '\f105';
	font-family: var(--font-awe);
	font-weight: 900;
	transition: var(--ease);
	position: relative;
}
#all_wrap .lp3_btnList > li.download > a:hover {
	background: var(--lp3-main);
	border: 2px solid var(--lp3-main);
	color: #fff;
	transition: var(--ease);
}
#all_wrap .lp3_btnList > li.download > a:hover::after {
	transform: translateX(3px);
	transition: var(--ease);
}
/*電話*/
#all_wrap #lp3_contact .tel {
	width: fit-content;
	padding: 0 0 0 70px;
	margin: 30px auto;
	grid-template-areas: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
	align-items: flex-start;
}
#all_wrap #lp3_contact .tel::before {
	content: '\f095';
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	background: var(--lp3-main);
	border-radius: 50%;
	font-size: 25px;
	line-height: 1;
	font-family: var(--font-awe);
	font-weight: 900;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}
#all_wrap #lp3_contact .tel > p {
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1;
	color: var(--lp3-text);
	font-family: var(--lp3-font-jp);
}
#all_wrap #lp3_contact .tel > a {
	font-size: 30px;
	line-height: 1;
	font-family: var(--lp3-font-mincho);
	color: var(--lp3-main);
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap #lp3_contact .tel > a:hover {
	color: var(--lp3-sub);
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap #lp3_contact > p {
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3_contact {
		width: 100%;
		padding: 40px 20px;
	}
	#all_wrap .lp3_btnList {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		gap: 20px;
	}
	#all_wrap .lp3_btnList > li {
		width: 100%;
	}
	#all_wrap .lp3_btnList > li.mail > a {
		column-gap: 20px;
		width: 100%;
		padding: 15px;
		font-size: 20px;
	}
	#all_wrap .lp3_btnList > li.download > a {
		column-gap: 20px;
		width: 100%;
		padding: 15px;
		font-size: 20px;
	}
	/*電話*/
	#all_wrap #lp3_contact .tel {
		width: fit-content;
		padding: 0 0 0 70px;
		margin: 20px auto;
	}
}


/*----------------------------------------------------------*/
/*フッター*/
/*----------------------------------------------------------*/
#lp3-footer {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 20px;
	background: var(--lp3-main);
}
#lp3-footer > h2 {
	width: 100%;
	height: 40px;
	padding: 0;
	margin: 0 auto;
	text-align: center;
}
#lp3-footer > h2 img {
	width: auto;
	height: 100%;
}
#lp3-footer > p {
	padding: 0;
	margin: 0 auto;
	text-align: center;
	color: #fff;
}
.lp3-copyright {
	text-align: center;
	color: #fff;
	font-size: 12px;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp3-footer {
		width: 100%;
		padding: 20px;
		grid-row-gap: 15px;
	}
	#lp3-footer > h2 {
		width: 100%;
		height: 30px;
	}
	#lp3-footer > h2 img {
		width: auto;
		height: 100%;
	}
	#lp3-footer > p {
		font-size: 12px;
	}
	.lp3-copyright {
		font-size: 10px;
	}
}