@charset "UTF-8";

/*----------------------------------------------------------*/
/* カスタマイズ用CSS
/*----------------------------------------------------------*/
:root {
	--lp-main: rgba(48,151,153,1);
	--lp-base: #edf6f5;
	--lp-orange: #fd6623;
	--lp-yellow: #f8f74b;
	--lp-font-jp: YakuHanJP_Noto, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--lp-font-mincho: YakuHanMP, 'Zen Old Mincho', serif;
	--lp-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(--lp-font-jp);
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt" 1;
	counter-reset: number 0;
	box-sizing: border-box;
}
.lp-wrapper .l-main {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
}
h1,h2,h3,h4,h5,h6,strong {
	font-weight: lighter;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap.lp {
		padding: 0;
		margin: 0;
	}
}

/*----------------------------------------------------------*/
/* ヘッダー
/*----------------------------------------------------------*/
#lp2-header {
	width: 100%;
	padding: 0;
	margin: 0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	background-image: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0.9) 70%, rgba(255,255,255,0) 100%);
}
#lp2-header .lp2-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;
}
/*ロゴ*/
#lp2-header .logo {
	width: auto;
	height: 50px;
	padding: 0;
	margin: 0 auto 0 0;
	border: none;
	background: none;
	position: relative;
}
#lp2-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(--text);
	white-space: nowrap;
	text-decoration: none;
	transition: var(--lp-ease);
}
.headerMenu > li a:hover {
	color: var(--lp-main);
	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-start;
	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: #fff;
	border-radius: 40px;
	border: 2px solid var(--lp-main);
	font-size: 16px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp-main);
	text-decoration: none;
	white-space: nowrap;
	transition: var(--lp-ease);
}
.headeBtn > li.contact a:hover {
	background: var(--lp-main);
	color: #fff;
	transition: var(--lp-ease);
}
.headeBtn > li.download a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 6px;
	width: 100%;
	padding: 15px 30px;
	margin: 0;
	background: var(--lp-orange);
	border-radius: 40px;
	border: 2px solid var(--lp-orange);
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
	transition: var(--ease);
}
.headeBtn > li.download a:hover {
	filter: brightness(1.1);
	transition: var(--lp-ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2-header {
		width: 100%;
	}
	#lp2-header .lp2-header_wrap {
		width: 100%;
		max-width: 100%;
		height: 60px;
		padding: 10px 20px;
		column-gap: 10px;
	}
	/*ロゴ*/
	#lp2-header .logo {
		width: auto;
		height: 30px;
	}
	#lp2-header .logo img {
		display: block;
		height: 30px;
	}
	/*メニュー*/
	.headerMenu {
		display: none;
	}
	/*ボタン*/
	.headeBtn {
		width: fit-content;
		column-gap: 10px;
	}
	.headeBtn > li.contact {
		display: none;
	}
	.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;
	}
}



/*----------------------------------------------------------*/
/* フッター
/*----------------------------------------------------------*/
#lp2-footer {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	background: #f2f4f6;
}
.lp2-footerTop {
	width: 100%;
	padding: 40px 0;
	margin: 0 auto;
	background: var(--lp-main);
	display: flex;
	justify-content: center;
}
.lp2-footerTop .info {
	width: fit-content;
	padding: 0 40px;
	margin: 0;
	border-right: 1px solid #fff;
	display: flex;
	flex-direction: column;
	grid-row-gap: 20px;
}
#all_wrap .lp2-footerTop .info h2 {
	width: auto;
	height: 45px;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
}
#all_wrap .lp2-footerTop .info h2 img {
	width: auto;
	height: 100%;
}
#all_wrap .lp2-footerTop .info > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7em;
	color: #fff;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*リスト*/
#all_wrap .lp2-footerTop .feature {
	width: fit-content;
	padding: 0 40px;
	margin: 0;
	border-right: 1px solid #fff;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	column-gap: 30px;
}
#all_wrap .lp2-footerTop .feature > li {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	grid-row-gap: 10px;
}
#all_wrap .lp2-footerTop .feature > li i {
	font-size: 40px;
	line-height: 1;
	color: #fff;
}
#all_wrap .lp2-footerTop .feature > li h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	font-family: var(--lp-font-jp);
	font-size: 15px;
	line-height: 1.4em;
	font-weight: 500;
	color: #fff;
	text-align: center;
}
#all_wrap .lp2-footerTop .feature > li p {
	padding: 0;
	margin: 0 auto;
	font-size: 12px;
	line-height: 1.4em;
	text-align: center;
	font-weight: 400;
	color: #fff;
}
/*電話*/
#all_wrap .footer_tel {
	width: fit-content;
	padding: 0 40px;
	margin: 0;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#all_wrap .footer_tel > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-family: var(--lp-font-jp);
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
#all_wrap .footer_tel > a.tel {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: flex-end;
	column-gap: 6px;
	font-family: var(--lp-font-mincho);
	font-size: 35px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .footer_tel > a.tel:hover {
	opacity: 0.8;
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .footer_tel > a.tel i {
	font-size: 20px;
}
#all_wrap .footer_tel > span {
	display: inline-block;
	width: fit-content;
	padding: 7px 30px;
	margin: 0 auto;
	background: var(--lp-base);
	font-size: 14px;
	line-height: 1;
	font-weight: 600;
	text-align: center;
	border-radius: 30px;
}
#all_wrap .footer_tel .btn {
	padding: 0;
	margin: 10px auto 0;
}
#all_wrap .footer_tel .btn a {
	width: 100%;
	padding: 15px 30px;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	background: #fff;
	font-size: 16px;
	line-height: 1;
	font-weight: 600;
	color: var(--lp-main);
	border-radius: 50px;
	transition: var(--ease);
}
#all_wrap .footer_tel .btn a:hover {
	opacity: 0.8;
	transition: var(--ease);
}
/*bottom*/
.lp2-footerBtm {
	width: 100%;
	max-width: 1200px;
	padding: 30px 0;
	margin: 0 auto;
	background: none;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 50px;
}
.lp2-footerBtm .lp2-footer-sub {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 20px;
}
.lp2-footerBtm .lp2-footer-sub > li {
	width: fit-content;
	padding: 0 20px 0 0;
	margin: 0;
	position: relative;
	border-radius: 1px solid #eee;
}
.lp2-footerBtm .lp2-footer-sub > li a {
	font-size: 12px;
	line-height: 1;
	font-weight: 400;
	color: var(--text);
	transition: var(--ease);
}
.lp2-footerBtm .lp2-footer-sub > li a:hover {
	text-decoration: underline;
	color: var(--lp-main);
}
.lp2-copyright {
	width: fit-content;
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1;
	font-weight: 400;
	color: var(--text);
	text-align: right;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2-footer {
		width: 100%;
	}
	.lp2-footerTop {
		width: 100%;
		padding: 0 20px;
		flex-wrap: wrap;
	}
	.lp2-footerTop .info {
		width: 100%;
		padding: 20px 0;
		margin: 0;
		border: none;
		border-bottom: 1px solid #fff;
		display: flex;
		flex-direction: column;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2-footerTop .info h2 {
		width: 80%;
		height: auto;
		margin: 0 auto;
		text-align: center;
	}
	#all_wrap .lp2-footerTop .info h2 img {
		width: 100%;
		height: auto;
	}
	#all_wrap .lp2-footerTop .info > p {
		width: 100%;
		font-size: 14px;
		text-align: center;
	}
	/*リスト*/
	#all_wrap .lp2-footerTop .feature {
		width: 100%;
		padding: 20px 0;
		margin: 0;
		border: none;
		border-bottom: 1px solid #fff;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		column-gap: 20px;
	}
	#all_wrap .lp2-footerTop .feature > li {
		width: calc((10%% - 40px) / 3);
		grid-row-gap: 10px;
	}
	#all_wrap .lp2-footerTop .feature > li i {
		font-size: 30px;
	}
	#all_wrap .lp2-footerTop .feature > li h3 {
		width: 100%;
		font-size: 12px;
		text-align: center;
	}
	#all_wrap .lp2-footerTop .feature > li p {
		font-size: 10px;
	}
	/*電話*/
	#all_wrap .footer_tel {
		width: fit-content;
		padding: 20px 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		grid-row-gap: 10px;
	}
	/*bottom*/
	.lp2-footerBtm {
		width: 100%;
		max-width: 100%;
		padding: 20px;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.lp2-footerBtm .lp2-footer-sub {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
		list-style: none;
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 20px;
	}
	.lp2-footerBtm .lp2-footer-sub > li {
		width: fit-content;
		padding: 0;
	}
	.lp2-copyright {
		width: 100%;
		font-size: 10px;
		text-align: center;
	}
}

/*----------------------------------------------------------*/
/* FV
/*----------------------------------------------------------*/
#lp2_fv {
	width: 100%;
	height: auto;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
#lp2_fv::before {
	content: '';
	display: block;
	width: 70%;
	height: 100%;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp2_bg.webp');
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: top right;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -2;
}
#lp2_fv::after {
	content: '';
	display: block;
	width: 70%;
	height: 100%;
	background-image: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}
.lp2_fv_info {
	width: 100%;
	max-width: 1200px;
	padding: 150px 0 50px;
	margin: 0 auto;
	position: relative;
}
#all_wrap .lp2_fv_info > h2 {
	width: 100%;
	max-width: 800px;
	min-width: 800px;
	padding: 0;
	margin: 0 0 50px;
	border: none;
	background: none;
	position: relative;
}
#all_wrap .lp2_fv_info > h2 img {
	width: 100%;
	height: auto;
	display: block;
}
/*アイコン*/
#all_wrap .lp2_fv_icons {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	column-gap: 20px;
	align-items: center;
}
#all_wrap .lp2_fv_icons > li {
	width: 150px;
	min-width: 150px;
	height: auto;
	aspect-ratio: 1/1;
	background: var(--lp-base);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	grid-row-gap: 10px;
	border-radius: 50%;
	filter: var(--shade);
}
#all_wrap .lp2_fv_icons > li > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	aspect-ratio: 1/1;
	font-family: var(--font-awe);
	font-size: 35px;
	line-height: 1;
	font-weight: 900;
	color: var(--lp-main);
}
#all_wrap .lp2_fv_icons > li > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	font-family: var(--lp-font-jp);
	font-size: 15px;
	line-height: 1.2em;
	font-weight: 700;
	color: var(--lp-main);
	text-align: center;
}
/*バッジ*/
.lp2_fv_info > .badge {
	width: 200px;
	height: auto;
	position: absolute;
	bottom: 100px;
	right: 0;
	z-index: 2;
	animation: floating 3s ease-in-out infinite;
}
.lp2_fv_info > .badge img {
	width: 100%;
	height: auto;
	display: block;
	filter: var(--shade);
}
@keyframes floating {
	0% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-10px);
	}
	100% {
		transform: translateY(0);
	}
}

/*FV下*/
#lp2_fv_btm {
	width: 100%;
	padding: 20px 0;
	margin: 0 auto;
	background: var(--lp-main);
	position: relative;
}
#lp2_fv_btm > ul {
	width: 100%;
	max-width: 1260px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
}
#lp2_fv_btm > ul > li {
	width: fit-content;
	padding: 0 30px;
	margin: 0;
	position: relative;
	display: flex;
	justify-content: center;
	column-gap: 20px;
	align-items: center;
	border-right: 1px solid rgba(255,255,255,0.5);
}
#lp2_fv_btm > ul > li:last-child {
	border: none;
}
#lp2_fv_btm > ul > li > i {
	width: 80px;
	min-width: 80px;
	height: auto;
	aspect-ratio: 1/1;
	background: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 35px;
	line-height: 1;
	color: var(--lp-main);
}
#all_wrap #lp2_fv_btm > ul > li > h3 {
	width: calc(100% - 20px - 80px);
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 600;
	color: #fff;
	text-align: left;
}
#all_wrap #lp2_fv_btm > ul > li > h3 small {
	display: block;
	font-size: 0.9em;
}
#all_wrap #lp2_fv_btm > ul > li > h3 b {
	font-size: 1.2em;
}
#all_wrap #lp2_fv_btm > ul > li > h3 strong {
	font-size: 1.6em;
	font-weight: 700;
	color: var(--lp-yellow);
	letter-spacing: normal;
	display: inline-block;
	margin-right: 3px;
}
#all_wrap #lp2_fv_btm > ul > li:first-child > h3 strong {
	font-size: 1.2em;
	margin-right: 0;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_fv {
		width: 100%;
		height: auto;
		aspect-ratio: 1/1;
		align-items: flex-end;
	}
	#lp2_fv::before {
		width: 100%;
		height: 100%;
		background-position: top 30px right -50px;
	}
	#lp2_fv::after {
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0) 100%);
	}
	.lp2_fv_info {
		width: 100%;
		max-width:100%;
		padding: 20px;
	}
	#all_wrap .lp2_fv_info > h2 {
		width: 80%;
		max-width: 80%;
		min-width: 80%;
		margin: 0 0 20px;
	}
	/*アイコン*/
	#all_wrap .lp2_fv_icons {
		width: 100%;
		justify-content: center;
		column-gap: 10px;
	}
	#all_wrap .lp2_fv_icons > li {
		width: calc((100% - 30px) / 4);
		min-width: unset;
		grid-row-gap: 5px;
	}
	#all_wrap .lp2_fv_icons > li > i {
		width: 20px;
		height: 20px;
		font-size: 20px;
	}
	#all_wrap .lp2_fv_icons > li > h3 {
		font-size: 10px;
	}
	/*バッジ*/
	.lp2_fv_info > .badge {
		width: 100px;
		height: auto;
		position: absolute;
		bottom: 110px;
		right: 10px;
	}

	/*FV下*/
	#lp2_fv_btm {
		width: 100%;
		padding: 0;
	}
	#lp2_fv_btm > ul {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
	}
	#lp2_fv_btm > ul > li {
		width: 50%;
		padding: 15px;
		margin: 0;
		position: relative;
		display: flex;
		justify-content: center;
		column-gap: 10px;
		align-items: center;
		border-right: 1px solid rgba(255,255,255,0.5);
	}
	#lp2_fv_btm > ul > li:nth-child(1),
	#lp2_fv_btm > ul > li:nth-child(2) {
		border-bottom: 1px solid rgba(255,255,255,0.5);
	}
	#lp2_fv_btm > ul > li:last-child {
		border: none;
	}
	#lp2_fv_btm > ul > li > i {
		width: 40px;
		min-width: 40px;
		font-size: 20px;
	}
	#all_wrap #lp2_fv_btm > ul > li > h3 {
		width: calc(100% - 10px - 40px);
		font-size: 13px;
		white-space: nowrap;
	}
	#all_wrap #lp2_fv_btm > ul > li > h3 small {
		display: block;
		font-size: 1.1em;
	}
	#all_wrap #lp2_fv_btm > ul > li > h3 small:last-of-type {
		display: block;
		font-size: 0.9em;
	}
	#all_wrap #lp2_fv_btm > ul > li > h3 b {
		font-size: 1.2em;
	}
	#all_wrap #lp2_fv_btm > ul > li > h3 strong {
		font-size: 1.4em;
		margin-right: 3px;
	}
	#all_wrap #lp2_fv_btm > ul > li:first-child > h3 strong {
		font-size: 1.2em;
		margin-right: 0;
	}
}

/*----------------------------------------------------------*/
/* CTA ダウンロード
/*----------------------------------------------------------*/
.cta-dl {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	background: #fff;
	position: relative;
}
.cta-dl_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 40px;
}
.cta-dl_wrap > header {
	width: fit-content;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	grid-row-gap: 10px;
}
#all_wrap .cta-dl_wrap > header > h2 {
	width: fit-content;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 40px;
	line-height: 1;
	font-weight: 500;
	font-style: italic;
	line-height: 1.2em;
	text-align: center;
}
#all_wrap .cta-dl_wrap > header > h2 strong {
	color: var(--lp-main);
	font-size: 40px;
	line-height: 1;
	font-weight: 500;
	font-style: italic;
	line-height: 1.2em;
	text-align: center;
	font-weight: 500;
}
#all_wrap .cta-dl_wrap > header > em {
	display: block;
	font-family: var(--lp-font-mincho);
	font-size: 11px;
	line-height: 1;
	color: var(--lp-main);
	font-style: normal;
	text-align: center;
}
/*ボタン*/
.dlBtn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	width: fit-content;
	padding: 15px 40px 15px 15px;
	margin: 0;
	background: var(--lp-orange);
	border-radius: 70px;
	transition: var(--ease);
	filter: var(--shade);
}
.dlBtn:hover {
	filter: brightness(1.1);
	transition: var(--ease);
	transform: translateY(3px);
}
.dlBtn > span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	min-width: 60px;
	height: auto;
	padding: 5px 0 0;
	margin: 0;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: var(--lp-yellow);
	font-size: 14px;
	line-height: 1.2em;
	color: var(--text);
	text-align: center;
	font-weight: 600;
}
.dlBtn > i {
	font-size: 22px;
	color: #fff;
}
.dlBtn > b {
	font-family: var(--lp-font-jp);
	font-size: 18px;
	line-height: 1;
	color: #fff;
	font-weight: 600;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.cta-dl {
		width: 100%;
		padding: 20px;
	}
	.cta-dl_wrap {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		grid-row-gap: 15px;
	}
	.cta-dl_wrap > header {
		width: 100%;
	}
	#all_wrap .cta-dl_wrap > header > h2 {
		width: fit-content;
		position: relative;
		font-size: 20px;
	}
	#all_wrap .cta-dl_wrap > header > h2 strong {
		color: var(--lp-main);
		font-size: 20px;
	}
	#all_wrap .cta-dl_wrap > header > em {
		font-size: 10px;
	}
	/*ボタン*/
	.dlBtn {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		column-gap: 10px;
		width: fit-content;
		padding: 10px 30px 10px 10px;
	}
	.dlBtn > span {
		width: 40px;
		min-width: 40px;
		height: auto;
		padding: 5px 0 0;
		font-size: 10px;
	}
	.dlBtn > i {
		font-size: 20px;
		color: #fff;
	}
	.dlBtn > b {
		font-size: 14px;
		white-space: nowrap;
	}
}


/*----------------------------------------------------------*/
/* こんなお悩みありませんか？
/*----------------------------------------------------------*/
#lp2_trouble {
	width: 100%;
	padding: 50px;
	margin: 0 auto;
	border: 50px solid var(--lp-main);
	background: #f4f9f9;
	position: relative;
}
.lp2_contHead {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 20px;
}
#all_wrap .lp2_contHead > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 30px;
	white-space: nowrap;
	flex-wrap: nowrap;
	font-size: 40px;
	line-height: 1.2em;
	font-weight: 600;
	color: var(--text);
	text-align: center;
}
#all_wrap .lp2_contHead > h2::before,
#all_wrap .lp2_contHead > h2::after {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: var(--lp-main);
}
#all_wrap .lp2_contHead > h2 strong {
	color: var(--lp-main);
	font-weight: 600;
}
#all_wrap .lp2_contHead > h2 span small {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 0.6em;
}
#all_wrap .lp2_contHead > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	text-align: center;
	font-size: 18px;
	line-height: 1.7em;
	font-weight: 600;
}
#all_wrap .lp2_contHead > p b {
	font-weight: 600;
	color: var(--lp-main);
}
/*リスト*/
#all_wrap .lp2_troubleList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 50px;
}
#all_wrap .lp2_troubleList > li {
	width: calc((100% - 50px) / 2);
	padding: 30px;
	margin: 0;
	background: #fff;
	border-radius: 10px;
	border: 1px solid var(--lp-base);
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	filter: var(--shade);
}
#all_wrap .lp2_troubleList > li > .num {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 70px;
	height: 70px;
	min-width: 70px;
	aspect-ratio: 1/1;
	padding: 0 0 3px;
	background: var(--lp-main);
	border-radius: 50%;
	font-family: var(--lp-font-mincho);
	font-size: 35px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-style: normal;
	text-align: center;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translate(-50%,0);
	z-index: 2;
}
#all_wrap .lp2_troubleList > li > figure {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	text-align: center;
	aspect-ratio: 16 / 9;
	border-radius: 10px;
}
#all_wrap .lp2_troubleList > li > figure::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
#all_wrap .lp2_troubleList > li > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
.lp2_troubleList_info {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#all_wrap .lp2_troubleList_info > h3 {
	width: 100%;
	padding: 0 0 20px;
	margin: 0 auto 15px;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 22px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp-main);
	text-align: center;
	border: none;
	background: none;
}
#all_wrap .lp2_troubleList_info > h3::after {
	content: '';
	display: block;
	width: 50px;
	height: 2px;
	background: var(--lp-main);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
}
#all_wrap .lp2_troubleList_info > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.7em;
	color: var(--text);
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_trouble {
		width: 100%;
		padding: 20px;
		border: 20px solid var(--lp-main);
	}
	.lp2_contHead {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 20px;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2_contHead > h2 {
		width: 100%;
		column-gap: 10px;
		flex-wrap: nowrap;
		font-size: 20px;
	}
	#all_wrap .lp2_contHead > p {
		width: 100%;
		font-size: 12px;
	}
	/*リスト*/
	#all_wrap .lp2_troubleList {
		width: 100%;
		max-width: 100%;
		gap: 20px;
	}
	#all_wrap .lp2_troubleList > li {
		width: 100%;
		padding: 20px;
		border-radius: 10px;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2_troubleList > li > .num {
		width: 40px;
		height: 40px;
		min-width: 40px;
		aspect-ratio: 1/1;
		padding: 0;
		font-size: 20px;
		top: -10px;
	}
	.lp2_troubleList_info {
		width: 100%;
	}
	#all_wrap .lp2_troubleList_info > h3 {
		width: 100%;
		padding: 0 0 15px;
		margin: 0 auto 10px;
		font-size: 18px;
	}
	#all_wrap .lp2_troubleList_info > p {
		width: 100%;
		font-size: 14px;
	}
}

/*----------------------------------------------------------*/
/* まとめて解決します
/*----------------------------------------------------------*/
#lp2_solution {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background: #f4f9f9;
	position: relative;
}
#lp2_solution::before {
	content: '';
	display: block;
	width: 50px;
	height: 50px;
	background: var(--lp-main);
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
/*リスト*/
#all_wrap .lp2_solList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 50px;
	flex-wrap: wrap;
}
#all_wrap .lp2_solList > li {
	width: calc((100% - 50px) / 2);
	padding: 30px;
	margin: 0;
	background: #fff;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	filter: var(--shade);
}
#all_wrap .lp2_solList > li > i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 100px;
	min-width: 100px;
	aspect-ratio: 1/1;
	background: var(--lp-base);
	border-radius: 50%;
	padding: 0;
	margin: 0 auto;
	font-size: 50px;
	line-height: 1;
	color: var(--lp-main);
}
#all_wrap .lp2_solList > li > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 25px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp-main);
	text-align: center;
	border: none;
	background: none;
}
#all_wrap .lp2_solList > li > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.7em;
	color: var(--text);
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_solution {
		width: 100%;
		padding: 40px 20px;
	}
	#lp2_solution::before {
		width: 20px;
		height: 20px;
	}
	/*リスト*/
	#all_wrap .lp2_solList {
		width: 100%;
		max-width: 100%;
		gap: 20px;
		flex-wrap: wrap;
	}
	#all_wrap .lp2_solList > li {
		width: 100%;
		padding: 20px;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2_solList > li > i {
		width: 80px;
		height: 80px;
		min-width: 80px;
		font-size: 40px;
	}
	#all_wrap .lp2_solList > li > h3 {
		width: 100%;
		font-size: 20px;
	}
	#all_wrap .lp2_solList > li > p {
		font-size: 15px;
	}
}

/*----------------------------------------------------------*/
/* 一貫してサポート
/*----------------------------------------------------------*/
#lp2_support {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background: #fff;
	position: relative;
}
#lp2_support > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 5px;
}
#all_wrap #lp2_support > header > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp-font-mincho);
	font-size: 30px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--text);
	text-align: center;
	border: none;
	background: none;
}
#all_wrap #lp2_support > header > p b {
	color: var(--lp-main);
	font-weight: 500;
}
#all_wrap #lp2_support > header > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp-font-mincho);
	font-size: 30px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--text);
	text-align: center;
	border: none;
	background: none;
}
#all_wrap #lp2_support > header > h2 strong {
	font-family: var(--lp-font-mincho);
	font-size: 1.5em;
	color: var(--lp-main);
	font-weight: 500;
}
/*flow*/
.lp2_support_wrap {
	width: 100%;
	max-width: 1200px;
	min-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
	column-gap: 10px;
	align-items: center;
}
.lp2_support_box {
	width: calc((100% - 200px - 40px) / 3);
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
}
#all_wrap .lp2_support_box > h2 {
	width: fit-content;
	height: 40px;
	padding: 10px 30px;
	margin: 0 auto;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translate(-50%,0);
	background: var(--lp-main);
	border-radius: 40px;
	font-family: var(--lp-font-jp);
	font-size: 18px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	text-align: center;
	z-index: 2;
	white-space: nowrap;
}
#all_wrap .lp2_support_box > figure {
	width: calc(100% - 40px);
	padding: 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	text-align: center;
	border-radius: 10px;
	aspect-ratio: 4 / 3;
}
#all_wrap .lp2_support_box > figure::before {
	content: '';
	display: block;
	padding-top: 75%;
}
#all_wrap .lp2_support_box > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
.lp2_support_txt {
	width: 100%;
	padding: 15px;
	margin: 0 auto;
	background: var(--lp-base);
	border-radius: 5px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	border: 1px solid #fff;
	filter: drop-shadow(1px 1px 3px rgba(41, 76, 122, 0.15));
}
.lp2_support_txt > i {
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	background: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 25px;
	line-height: 1;
	color: var(--lp-main);
}
#all_wrap .lp2_support_txt > p {
	width: calc(100% - 10px - 50px);
	padding: 0;
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.7em;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*矢印*/
.lp2_support_wrap > .arrow {
	width: 100px;
	min-width: 100px;
	padding: 0;
	margin: 0 0 30px;
	position: relative;
}
.lp2_support_wrap > .arrow dt {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	font-size: 14px;
	line-height: 1.2em;
	font-weight: 600;
	color: var(--text);
	text-align: center;
}
.lp2_support_wrap > .arrow dd {
	width: 100%;
	height: 50px;
	padding: 0;
	margin: 0;
	position: relative;
}
.lp2_support_wrap > .arrow dd::before {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/arrow_dot.svg');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(-1,1);
}
.lp2_support_wrap > .arrow dd::after {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/arrow_dot.svg');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}
/*中央*/
.lp2_support_main {
	width: calc((100% - 200px - 40px) / 3);
	padding: 0;
	margin: 0;
	position: relative;	
}
.lp2_support_main > header {
	width: calc(100% - 40px);
	padding: 20px 20px 0;
	margin: 0 auto;
	position: relative;
	background: var(--lp-main);
	border-radius: 10px 10px 0 0;
}
#all_wrap .lp2_support_main > header > h2 {
	width: 100%;
	padding: 0 0 15px;
	margin: 0 auto;
	position: relative;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	font-size: 22px;
	line-height: 1;
	color: #fff;
	text-align: center;
}
#all_wrap .lp2_support_main > header > h2 small {
	display: block;
	width: 100%;
	padding: 0;
	margin: 5px auto 0;
	position: relative;
	border: none;
	background: none;
	font-family: var(--lp-font-jp);
	font-size: 14px;
	line-height: 1;
	color: #fff;
	font-weight: 400;
}
/*リスト*/
#all_wrap .lp2_support_main > ul {
	width: calc(100% - 40px);
	padding: 20px;
	margin: 0 auto;
	position: relative;
	background: var(--lp-main);
	border-radius: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
#all_wrap .lp2_support_main > ul > li {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	column-gap: 8px;
	font-size: 14px;
	line-height: 1.4em;
	font-weight: 500;
	color: #fff;
}
#all_wrap .lp2_support_main > ul > li::before {
	content: '\f058';
	display: inline-block;
	font-family: var(--font-awe);
	font-size: 15px;
	line-height: 1.4em;
	font-weight: 900;
	color: #fff;
}
.lp2_support_main_txt {
	width: 100%;
	padding: 15px;
	margin: 0 auto;
	background: #fff;
	border-radius: 5px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	border: 1px solid #fff;
	filter: drop-shadow(1px 1px 3px rgba(41, 76, 122, 0.15));
}
.lp2_support_main_txt > i {
	width: 50px;
	min-width: 50px;
	height: 50px;
	aspect-ratio: 1/1;
	background: var(--lp-base);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 25px;
	line-height: 1;
	color: var(--lp-main);
}
#all_wrap .lp2_support_main_txt > p {
	width: calc(100% - 10px - 50px);
	padding: 0;
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.7em;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_support {
		width: 100%;
		padding: 40px 20px;
	}
	#lp2_support > header {
		margin: 0 auto 40px;
		gap: 5px;
	}
	#all_wrap #lp2_support > header > p {
		width: 100%;
		font-size: 16px;
	}
	#all_wrap #lp2_support > header > p b {
		color: var(--lp-main);
		font-weight: 500;
	}
	#all_wrap #lp2_support > header > h2 {
		width: 100%;
		font-size: 16px;
		line-height: 1.7em;
	}
	#all_wrap #lp2_support > header > h2 strong {
		font-size: 1.4em;
	}
	/*flow*/
	.lp2_support_wrap {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		flex-wrap: wrap;
		grid-row-gap: 10px;
	}
	.lp2_support_box {
		width: 100%;
		grid-row-gap: 0;
	}
	#all_wrap .lp2_support_box > h2 {
		width: fit-content;
		height: 40px;
		padding: 10px 30px;
		margin: 0 auto;
		position: absolute;
		top: -20px;
		left: 50%;
		transform: translate(-50%,0);
		background: var(--lp-main);
		border-radius: 40px;
		font-family: var(--lp-font-jp);
		font-size: 18px;
		line-height: 1;
		font-weight: 600;
		color: #fff;
		text-align: center;
		z-index: 2;
		white-space: nowrap;
	}
	#all_wrap .lp2_support_box > figure {
		width: calc(100% - 40px);
		padding: 0;
		margin: 0 auto;
		position: relative;
		overflow: hidden;
		text-align: center;
		border-radius: 10px 10px 0 0;
		aspect-ratio: 4 / 3;
	}
	#all_wrap .lp2_support_box > figure::before {
		content: '';
		display: block;
		padding-top: 75%;
	}
	#all_wrap .lp2_support_box > figure img {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		object-fit: cover;
	}
	.lp2_support_txt {
		width: 100%;
		padding: 15px;
		margin: 0 auto;
		background: var(--lp-base);
		border-radius: 5px;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 10px;
		border: 1px solid #fff;
		filter: drop-shadow(1px 1px 3px rgba(41, 76, 122, 0.15));
	}
	.lp2_support_txt > i {
		width: 50px;
		min-width: 50px;
		height: 50px;
		aspect-ratio: 1/1;
		background: #fff;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 25px;
		line-height: 1;
		color: var(--lp-main);
	}
	#all_wrap .lp2_support_txt > p {
		width: calc(100% - 10px - 50px);
		padding: 0;
		margin: 0;
		font-size: 13px;
		font-weight: 600;
		line-height: 1.7em;
		color: var(--text);
		text-align: justify;
		text-justify: inter-ideograph;
		word-break: break-all;
	}
	/*矢印*/
	.lp2_support_wrap > .arrow {
		width: fit-content;
		min-width: unset;
		padding: 0;
		margin: 0;
		position: relative;
	}
	.lp2_support_wrap > .arrow:last-of-type {
		margin-bottom: 20px;
	}
	.lp2_support_wrap > .arrow dt {
		width: 100%;
		height: 50px;
		padding: 0 30px;
		margin: 0 auto;
		font-size: 14px;
		white-space: nowrap;
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 20px;
	}
	.lp2_support_wrap > .arrow dd {
		display: none;
	}
	.lp2_support_wrap > .arrow dt::before {
		content: '';
		display: block;
		width: 10px;
		height: 50px;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/arrow_dot_h.svg');
		background-position: top center;
		background-repeat: no-repeat;
		background-size: 100%;
		position: absolute;
		top: 0;
		left: 0;
		transform: scale(1,1);
	}
	.lp2_support_wrap > .arrow dt::after {
		content: '';
		display: block;
		width: 10px;
		height: 50px;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/arrow_dot_h.svg');
		background-position: top center;
		background-repeat: no-repeat;
		background-size: 100%;
		position: absolute;
		top: 0;
		right: 0;
		transform: scale(1,-1);
	}
	/*中央*/
	.lp2_support_main {
		width: 100%;
	}
}


/*----------------------------------------------------------*/
/* 選ばれる理由
/*----------------------------------------------------------*/
#lp2_reason {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background: #f9fbfc;
	position: relative;
}
/*リスト*/
#all_wrap .lp2_reasonList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 40px;
	flex-wrap: wrap;
}
#all_wrap .lp2_reasonList > li {
	width: calc((100% - 80px) / 3);
	padding: 15px;
	margin: 0;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	filter: var(--shade);
	border-radius: 10px 0 10px 0;
	overflow: hidden;
	background: #fff;
}
#all_wrap .lp2_reasonList > li > .num {
	width: fit-content;
	height: auto;
	padding: 7px 10px;
	margin: 0;
	background: var(--lp-main);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	font-size: 10px;
	font-weight: 700;
	font-family: var(--lp-font-jp);
	line-height: 1;
	color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 0 0 10px 0;
	z-index: 2;
}
#all_wrap .lp2_reasonList > li > .num em {
	display: block;
	width: auto;
	padding: 0;
	margin: 0;
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	font-style: normal;
}
#all_wrap .lp2_reasonList > li > figure {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	text-align: center;
	aspect-ratio: 16 / 9;
	border-radius: 10px;
}
#all_wrap .lp2_reasonList > li > figure::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
#all_wrap .lp2_reasonList > li > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
#all_wrap .lp2_reasonList > li > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	column-gap: 10px;
	align-items: center;
}
#all_wrap .lp2_reasonList > li > header i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	min-width: 50px;
	background: var(--lp-main);
	border-radius: 50%;
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .lp2_reasonList > li > header i img {
	width: 50%;
	height: auto;
	display: block;
}
#all_wrap .lp2_reasonList > li > header > h3 {
	width: calc(100% - 50px - 10px);
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 18px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--lp-main);
	text-align: left;
	border: none;
	background: none;
}
#all_wrap .lp2_reasonList > li > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7em;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_reason {
		width: 100%;
		padding: 40px 20px;
	}
	/*リスト*/
	#all_wrap .lp2_reasonList {
		width: 100%;
		max-width: 100%;
		gap: 20px;
	}
	#all_wrap .lp2_reasonList > li {
		width: 100%;
		padding: 20px;
		grid-row-gap: 15px;
	}
}

/*----------------------------------------------------------*/
/* 実地先が見つからない
/*----------------------------------------------------------*/
#lp2_bizsup {
	width: 100%;
	padding: 100px 0 50px;
	margin: 0 auto;
	position: relative;
	background-color: rgba(238,245,249,1);
	z-index: 0;
}
#lp2_bizsup::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 70%;
	height: 100%;
	z-index: 0;
	background-image:
		linear-gradient(
			to right,
			rgba(238,245,249,1) 0%,
			rgba(238,245,249,0.8) 50%,
			rgba(238,245,249,0) 100%
		),
		url('https://presence-m.com/wp/wp-content/uploads/bizsup_bg.webp');
	background-repeat: no-repeat, no-repeat;
	background-position: left top, top right;
	background-size: 100% 100%, cover;
	z-index: -2;
}
#lp2_bizsup::after {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	background-image: linear-gradient(to bottom, rgba(48,151,153,0) 0%, rgba(48,151,153,0.95) 100%);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.lp2_bizsup_wrap {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 30px;
}
.lp2_bizsup_wrap > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#all_wrap .lp2_bizsup_wrap > header > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	border: none;
	background: none;
	font-size: 50px;
	line-height: 1.4em;
	font-weight: 500;
	text-align: left;
	color: var(--text);
}
#all_wrap .lp2_bizsup_wrap > header > h2 strong {
	color: var(--lp-main);
	font-size: 1.4em;
	font-weight: 500;
}
#all_wrap .lp2_bizsup_wrap > header > p {
	padding: 0;
	margin: 0;
	font-size: 20px;
	line-height: 1.7em;
	font-weight: 600;
}
#all_wrap .lp2_bizsup_wrap > header > p b {
	color: var(--lp-main);
	font-weight: 600;
}
/*リスト*/
#all_wrap .lp2_checkList {
	width: 700px;
	padding: 30px;
	margin: 0;
	background: rgba(255,255,255,0.8);
	border-radius: 10px;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	column-gap: 30px;
	grid-row-gap: 10px;
}
#all_wrap .lp2_checkList > li {
	width: calc((100% - 30px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	justify-content: flex-start;
	column-gap: 6px;
	align-items: baseline;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: 600;
	color: var(--text);
}
#all_wrap .lp2_checkList > li::before {
	content: '\f058';
	display: inline-block;
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp-main);
}
/*CTA*/
.cta {
	width: 100%;
	max-width: 1200px;
	min-width: 1200px;
	padding: 30px 200px 30px 30px;
	margin: 0 auto;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/lp2_cta_bg.webp');
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 100%;
	background-color: rgba(255,255,255,1);
	border-radius: 10px;
	border: 2px solid var(--lp-main);
	display: flex;
	justify-content: flex-start;
	align-items: center;
	overflow: hidden;
}
.cta_left {
	width: 55%;
	padding: 0 30px 0 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	border-right: 1px dashed #ccc;
}
.cta_right {
	width: fit-content;
	padding: 0 0 0 30px;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
/*ボタン*/
#all_wrap .cta_left > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-family: var(--lp-font-jp);
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp-main);
	text-align: center;
}
#all_wrap .cta_btn {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: space-between;
	column-gap: 15px;
}
#all_wrap .cta_btn > li {
	width: calc((100% - 15px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .cta_btn > li a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	padding: 15px 20px;
	margin: 0;
	border: 2px solid var(--lp-main);
	background: var(--lp-main);
	border-radius: 5px;
	position: relative;
	font-size: 18px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	white-space: nowrap;
	transition: var(--ease);
}
#all_wrap .cta_btn > li a:hover {
	background: #fff;
	color: var(--lp-main);
	transition: var(--ease);
}
#all_wrap .cta_btn > li:first-child a {
	border: 2px solid var(--lp-orange);
	background: var(--lp-orange);
}
#all_wrap .cta_btn > li:first-child a:hover {
	filter: brightness(1.1);
	color: #fff;
	transition: var(--ease);
}
#all_wrap .cta_left > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 5px;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: 500;
}
#all_wrap .cta_left > p i {
	color: var(--lp-main);
}
/*電話*/
#all_wrap .cta_right > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-family: var(--lp-font-jp);
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	color: var(--lp-main);
	text-align: center;
}
#all_wrap .cta_right > a.tel {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: flex-end;
	column-gap: 6px;
	font-family: var(--lp-font-mincho);
	font-size: 40px;
	line-height: 1;
	font-weight: 500;
	color: var(--lp-main);
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .cta_right > a.tel:hover {
	color: var(--lp-orange);
	text-decoration: none;
	transition: var(--ease);
}
#all_wrap .cta_right > a.tel i {
	font-size: 28px;
}
#all_wrap .cta_right > span {
	display: inline-block;
	width: fit-content;
	padding: 7px 30px;
	margin: 0 auto;
	background: var(--lp-base);
	font-size: 14px;
	line-height: 1;
	font-weight: 600;
	text-align: center;
	border-radius: 30px;
}
#lp2_bizsup .lp2_bizsup_wrap > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
	column-gap: 20px;
	align-items: center;
	font-size: 25px;
	line-height: 1.2em;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
#lp2_bizsup .lp2_bizsup_wrap > p::before,
#lp2_bizsup .lp2_bizsup_wrap > p::after {
	content: '';
	display: block;
	width: 2px;
	height: 22px;
	background: #fff;
	border-radius: 2px;
	transform: rotate(-15deg);
}
#lp2_bizsup .lp2_bizsup_wrap > p::after {
	transform: rotate(15deg);
}
/*バッジ*/
#lp2_bizsup .lp2_bizsup_wrap > .badge {
	width: 200px;
	min-width: 200px;
	height: 200px;
	aspect-ratio: 1/1;
	padding: 10px 0 0;
	background: rgba(255,255,255,0.8);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--text);
	text-align: center;
	position: absolute;
	top: 0;
	left: 60%;
	z-index: 2;
}
#lp2_bizsup .lp2_bizsup_wrap > .badge b {
	color: var(--lp-main);
	font-size: 1.4em;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_bizsup {
		width: 100%;
		padding: 40px 20px;
	}
	#lp2_bizsup::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		z-index: 0;
		background-image:
			linear-gradient(
				to right,
				rgba(238,245,249,1) 0%,
				rgba(238,245,249,0.8) 50%,
				rgba(238,245,249,0) 100%
			),
			url('https://presence-m.com/wp/wp-content/uploads/bizsup_bg.webp');
		background-repeat: no-repeat, no-repeat;
		background-position: left top, top right -20px;
		background-size: 100% 100%, 100%;
		z-index: -2;
	}
	#lp2_bizsup::after {
		content: '';
		display: block;
		width: 100%;
		height: 50%;
		background-image: linear-gradient(to bottom, rgba(48,151,153,0) 0%, rgba(48,151,153,0.95) 100%);
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;
	}
	.lp2_bizsup_wrap {
		width: 100%;
		max-width: 100%;
		grid-row-gap: 15px;
	}
	.lp2_bizsup_wrap > header {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	#all_wrap .lp2_bizsup_wrap > header > h2 {
		margin: 0 auto 10px;
		font-size: 18px;
	}
	#all_wrap .lp2_bizsup_wrap > header > p {
		font-size: 14px;
		line-height: 1.7em;
		font-weight: 600;
	}
	/*リスト*/
	#all_wrap .lp2_checkList {
		width: 100%;
		padding: 20px;
		column-gap: 30px;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2_checkList > li {
		width: 100%;
		padding: 0;
		margin: 0;
		font-size: 14px;
	}
	/*CTA*/
	.cta {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		padding: 20px 20px 20px 20px;
		flex-wrap: wrap;
		grid-row-gap: 20px;
		overflow: hidden;
		background: #fff;
	}
	.cta_left {
		width: 100%;
		padding: 0;
		margin: 0;
		grid-row-gap: 15px;
		border-right: none;
	}
	.cta_right {
		width: 100%;
		padding: 0;
		grid-row-gap: 10px;
	}
	/*ボタン*/
	#all_wrap .cta_left > h2 {
		width: 100%;
		font-size: 18px;
	}
	#all_wrap .cta_btn {
		width: 100%;
		padding: 0;
		flex-wrap: wrap;
		column-gap: 15px;
		grid-row-gap: 10px;
	}
	#all_wrap .cta_btn > li {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .cta_btn > li a {
		column-gap: 8px;
		width: 100%;
		padding: 15px 15px;
		border-radius: 5px;
		font-size: 16px;
	}
	#all_wrap .cta_left > p {
		width: 100%;
		column-gap: 5px;
		font-size: 11px;
		white-space: nowrap;
	}
	/*電話*/
	#all_wrap .cta_right > h3 {
		width: 100%;
		font-size: 18px;
	}
	#all_wrap .cta_right > a.tel {
		font-size: 35px;
		align-items: center;
	}
	#all_wrap .cta_right > a.tel i {
		font-size: 25px;
	}
	#lp2_bizsup .lp2_bizsup_wrap > p {
		width: 100%;
		column-gap: 10px;
		align-items: center;
		font-size: 15px;
	}
	#lp2_bizsup .lp2_bizsup_wrap > p::before,
	#lp2_bizsup .lp2_bizsup_wrap > p::after {
		content: '';
		display: block;
		width: 2px;
		height: 15px;
	}
	#lp2_bizsup .lp2_bizsup_wrap > p::after {
		transform: rotate(15deg);
	}
	/*バッジ*/
	#lp2_bizsup .lp2_bizsup_wrap > .badge {
		width: 100px;
		min-width: 100px;
		height: 100px;
		aspect-ratio: 1 / 1;
		padding: 10px 0 0;
		background: var(--lp-main);
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 10px;
		line-height: 1.4em;
		font-weight: 600;
		color: #fff;
		text-align: center;
		position: absolute;
		top: 21%;
		left: unset;
		z-index: 2;
		right: -10px;
	}
	#lp2_bizsup .lp2_bizsup_wrap > .badge b {
		color: #fff;
		font-size: 1.2em;
	}
}

/*----------------------------------------------------------*/
/* 準備すべきこと
/*----------------------------------------------------------*/
#lp2_prepare {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background-color: #fff;
	z-index: 0;
}
#all_wrap .lp2_prepareList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 30px;
	position: relative;
	display: flex;
	justify-content: flex-start;
	column-gap: 30px;
}
#all_wrap .lp2_prepareList > dl {
	width: calc((100% - 120px) / 5);
	padding: 0;
	margin: 0;
	position: relative;
	background: #e8f2f4;
	border-radius: 0 0 10px 10px;
}
#all_wrap .lp2_prepareList > dl::after {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	background: #e8f2f4;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	position: absolute;
	top: 50%;
	right: -14.5px;
	transform: translate(0,-50%);
}
#all_wrap .lp2_prepareList > dl:last-of-type::after {
	display: none;
}
#all_wrap .lp2_prepareList > dl dt {
	width: 100%;
	padding: 10px;
	margin: 0;
	background: var(--lp-main);
	border-radius: 10px 10px 0 0;
	position: relative;
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
#all_wrap .lp2_prepareList > dl dd {
	width: 100%;
	padding: 15px 20px;
	margin: 0;
	background: #e8f2f4;
	border-radius: 0 0 10px 10px;
	position: relative;
}
#all_wrap .lp2_prepareList > dl dd > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	text-align: center;
	font-family: var(--lp-font-jp);
	font-size: 18px;
	font-weight: 600;
	color: var(--lp-main);
	line-height: 1.4em;
}
#all_wrap .lp2_prepareList > dl dd > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7em;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
#lp2_prepare > p {
	width: 100%;
	max-width: 1200px;
	padding: 30px;
	margin: 0 auto;
	position: relative;
	background: #e8f2f4;
	border-radius: 10px;
	text-align: center;
	font-size: 25px;
	line-height: 1.4em;
	font-weight: 700;
	color: var(--lp-main);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_prepare {
		width: 100%;
		padding: 40px 20px;
	}
	#all_wrap .lp2_prepareList {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto 30px;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 25px;
	}
	#all_wrap .lp2_prepareList > dl {
		width: 100%;
	}
	#all_wrap .lp2_prepareList > dl::after {
		content: '';
		display: block;
		width: 15px;
		height: 15px;
		background: #e8f2f4;
		clip-path: polygon(0 0, 50% 100%, 100% 0);
		position: absolute;
		top: unset;
		right: unset;
		bottom: -14.5px;
		left: 50%;
		transform: translate(-50%,0);
	}
	#all_wrap .lp2_prepareList > dl:last-of-type::after {
		display: none;
	}
	#all_wrap .lp2_prepareList > dl dt {
		width: 100%;
		padding: 10px;
		border-radius: 10px 10px 0 0;
		font-size: 16px;
	}
	#all_wrap .lp2_prepareList > dl dd {
		width: 100%;
		padding: 15px 20px;
	}
	#all_wrap .lp2_prepareList > dl dd > h3 {
		margin: 0 auto 10px;
		font-size: 18px;
	}
	#all_wrap .lp2_prepareList > dl dd > p {
		width: 100%;
		font-size: 15px;
	}
	#lp2_prepare > p {
		width: 100%;
		max-width: 100%;
		padding: 20px;
		font-size: 15px;
	}
}

/*----------------------------------------------------------*/
/* 流れ
/*----------------------------------------------------------*/
#lp2_flow {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background-color: var(--lp-base);
	z-index: 0;
}
#all_wrap .lp2_flowList {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
	grid-row-gap: 40px;
}
#all_wrap .lp2_flowList > li {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	justify-content: space-between;
	background: #fff;
	border-radius: 10px;
	filter: var(--shade);
}
#all_wrap .lp2_flowList > li::after {
	content: '';
	display: block;
	width: 30px;
	height: 20px;
	background: #fff;
	position: absolute;
	bottom: -19.5px;
	left: 50%;
	transform: translate(-50%,0);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
#all_wrap .lp2_flowList > li:last-child::after {
	display: none;
}
#all_wrap .lp2_flowList > li > figure {
	width: 400px;
	min-width: 400px;
	padding: 0;
	margin: 0;
	position: relative;
	border-radius: 0 10px 10px 0;
	overflow: hidden;
	text-align: center;
}
#all_wrap .lp2_flowList > li > figure::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
#all_wrap .lp2_flowList > li > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
.lp2_flowList_info {
	width: calc(100% - 400px);
	padding: 30px;
	margin: 0;
	background: none;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	justify-content: center;
}
#all_wrap .lp2_flowList_info > h3 {
	width: 100%;
	padding: 0 0 10px;
	margin: 0 auto;
	position: relative;
	border: none;
	background: none;
	border-bottom: 2px solid var(--lp-sub);
	font-family: var(--lp-font-jp);
	font-size: 25px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp-main);
	text-align: left;
	display: flex;
	justify-content: flex-start;
	column-gap: 15px;
	align-items: center;
	border-bottom: 2px dashed var(--lp-main);
}
#all_wrap .lp2_flowList_info > h3 em {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	min-width: 50px;
	padding: 0 0 2px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: var(--lp-main);
	font-family: var(--lp-font-jp);
	font-size: 25px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	font-style: normal;
}
#all_wrap .lp2_flowList_info > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 18px;
	line-height: 1.7em;
	font-weight: 600;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
/*バナー*/
.lp2_flowBan {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	background: #fff;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
}
.lp2_flowBan_info {
	width: 60%;
	padding: 30px 50px;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	grid-row-gap: 15px;
}
#all_wrap .lp2_flowBan_info > h2 {
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 30px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--lp-main);
	text-align: left;
}
#all_wrap .lp2_flowBan_info > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 18px;
	line-height: 1.7em;
	font-weight: 600;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.lp2_flowBan > figure {
	width: 40%;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	z-index: 0;
}
.lp2_flowBan > figure::after {
	content: '';
	display: block;
	width: 40px;
	height: 102%;
	background: #fff;
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 1;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.lp2_flowBan > figure::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
.lp2_flowBan > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_flow {
		width: 100%;
		padding: 40px 20px;
	}
	#all_wrap .lp2_flowList {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto 30px;
		grid-row-gap: 25px;
	}
	#all_wrap .lp2_flowList > li {
		width: 100%;
		flex-wrap: wrap;
	}
	#all_wrap .lp2_flowList > li::after {
		content: '';
		display: block;
		width: 15px;
		height: 15px;
		background: #fff;
		position: absolute;
		bottom: -14.5px;
		left: 50%;
		transform: translate(-50%,0);
		clip-path: polygon(0 0, 50% 100%, 100% 0);
	}
	#all_wrap .lp2_flowList > li:last-child::after {
		display: none;
	}
	#all_wrap .lp2_flowList > li > figure {
		width: 100%;
		min-width: 100%;
		border-radius: 10px 10px 0 0;
	}
	.lp2_flowList_info {
		width: 100%;
		padding: 20px;
		order: 2;
		grid-row-gap: 10px;
	}
	#all_wrap .lp2_flowList_info > h3 {
		width: 100%;
		padding: 0 0 10px;
		font-size: 18px;
		column-gap: 15px;
		border-bottom: 2px dashed var(--lp-main);
	}
	#all_wrap .lp2_flowList_info > h3 em {
		width: 30px;
		height: 30px;
		min-width: 30px;
		padding: 0 0 2px;
		font-size: 15px;
	}
	#all_wrap .lp2_flowList_info > p {
		width: 100%;
		font-size: 15px;
	}
	/*バナー*/
	.lp2_flowBan {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		overflow: hidden;
	}
	.lp2_flowBan_info {
		width: 100%;
		padding: 20px;
		grid-row-gap: 15px;
	}
	#all_wrap .lp2_flowBan_info > h2 {
		width: 100%;
		font-size: 18px;
	}
	#all_wrap .lp2_flowBan_info > p {
		width: 100%;
		font-size: 15px;
	}
	.lp2_flowBan > figure {
		width: 100%;
		z-index: 0;
	}
	.lp2_flowBan > figure::after {
		content: '';
		display: block;
		width: 102%;
		height: 30px;
		background: #fff;
		position: absolute;
		top: -0.5px;
		left: -1%;
		z-index: 1;
		clip-path: polygon(0 0, 0 100%, 100% 0);
	}
}


/*----------------------------------------------------------*/
/* お客様の声
/*----------------------------------------------------------*/
#lp2_voice {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background-color: #f7fbfd;
	z-index: 0;
}
.lp2_voice_wrap {
	width: 100%;
	max-width: 1300px;
	margin: auto;
	position: relative;
	padding: 0;
}
.lp2_voice_slider {
	padding: 0 30px 40px !important;
}
.lp2_voice_slider .swiper-slide {
	padding: 20px;
	margin: 0;
	box-sizing: border-box;
	height: auto;
	background: #fff;
	border-radius: 10px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 15px;
	border: 1px solid #eee;
}
.lp2_voice_slider .swiper-slide > header {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 20px;
}
.lp2_voice_slider .swiper-slide > header > figure {
	width: 100px;
	min-width: 100px;
	height: 100px;
	aspect-ratio: 1/1;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	border-radius: 5px;
}
.lp2_voice_slider .swiper-slide > header > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
#all_wrap .lp2_voice_slider .swiper-slide > header > h4 {
	width: calc(100% - 100px - 20px);
	padding: 0;
	margin: 0;
	position: relative;
	border: none;
	background: none;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	grid-row-gap: 10px;
}
#all_wrap .lp2_voice_slider .swiper-slide > header > h4 > span {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	column-gap: 5px;
	width: fit-content;
	padding: 6px 10px;
	margin: 0;
	background: none;
	border: 1px solid var(--lp-main);
	font-family: var(--lp-font-jp);
	font-size: 12px;
	line-height: 1;
	color: var(--lp-main);
	font-weight: 500;
	border-radius: 30px;
}
#all_wrap .lp2_voice_slider .swiper-slide > header > h4 > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 14px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
#all_wrap .lp2_voice_slider .swiper-slide > h3 {
	width: 100%;
	padding: 0 0 12px 25px;
	margin: 0 auto;
	border: none;
	background: none;
	position: relative;
	font-family: var(--lp-font-jp);
	font-size: 16px;
	line-height: 1.6em;
	font-weight: 600;
	color: var(--lp-main);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
	border-bottom: 1px solid rgba(48,151,153,1);
}
#all_wrap .lp2_voice_slider .swiper-slide > h3::before {
	content: '\f10d';
	font-family: var(--font-awe);
	font-weight: 900;
	color: var(--lp-main);
	font-size: 20px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0;
	left: 0;
}
#all_wrap .lp2_voice_slider .swiper-slide > p {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	font-size: 14px;
	line-height: 1.7em;
	font-weight: 500;
	color: var(--text);
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}

.lp2_voice_slider .swiper-button-prev,
.lp2_voice_slider .swiper-button-next {
	color: #333;
	width: 30px;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.lp2_voice_slider .swiper-button-prev {
	left: 0;
}
.lp2_voice_slider .swiper-button-next {
	right: 0;
}
.lp2_voice_slider .swiper-button-prev::before,
.lp2_voice_slider .swiper-button-next::before {
	display: none;
}
.lp2_voice_slider .swiper-button-prev::after {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: none;
	border-right: 2px solid #333;
	border-top: 2px solid #333;
	transform: rotate(-135deg);
}
.lp2_voice_slider .swiper-button-next::after {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: none;
	border-left: 2px solid #333;
	border-top: 2px solid #333;
	transform: rotate(135deg);
}
.lp2_voice_slider .swiper-pagination {
	bottom: 0 !important;
}
.lp2_voice_slider .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
}
.lp2_voice_slider .swiper-pagination-bullet-active {
	background: var(--lp-main);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_voice {
		width: 100%;
		padding: 40px 0;
		margin: 0 auto;
		position: relative;
		background-color: #f7fbfd;
		z-index: 0;
	}
	#lp2_voice > header {
		width: calc(100% - 40px);
	}
	.lp2_voice_wrap {
		width: 100%;
		max-width: 100%;
		margin: auto;
		position: relative;
		padding: 0;
	}
	.lp2_voice_slider {
		padding: 0 20px 40px !important;
	}
	.lp2_voice_slider .swiper-slide {
		padding: 20px;
		grid-row-gap: 10px;
		border: 1px solid #eee;
	}
	.lp2_voice_slider .swiper-slide > header {
		width: 100%;
		column-gap: 15px;
	}
	.lp2_voice_slider .swiper-slide > header > figure {
		width: 80px;
		min-width: 80px;
		height: 80px;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > header > h4 {
		width: calc(100% - 80px - 16px);
		grid-row-gap: 8px;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > header > h4 > span {
		column-gap: 5px;
		width: fit-content;
		padding: 6px 10px;
		font-size: 10px;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > header > h4 > p {
		width: 100%;
		font-size: 12px;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > h3 {
		width: 100%;
		padding: 0 0 12px 25px;
		font-size: 14px;
		line-height: 1.4em;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > h3::before {
		font-size: 18px;
		width: 18px;
		height: 18px;
		position: absolute;
		top: 0;
		left: 0;
	}
	#all_wrap .lp2_voice_slider .swiper-slide > p {
		font-size: 12px;
		line-height: 1.6em;
		font-weight: 500;
	}

	.lp2_voice_slider .swiper-button-prev,
	.lp2_voice_slider .swiper-button-next {
		color: #333;
		width: 30px;
		height: 30px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.lp2_voice_slider .swiper-button-prev {
		left: 10px;
	}
	.lp2_voice_slider .swiper-button-next {
		right: 10px;
	}
}

/*----------------------------------------------------------*/
/* よくある質問
/*----------------------------------------------------------*/
#lp2_faq {
	width: 100%;
	padding: 0 0 100px;
	margin: 0 auto;
	position: relative;
	background-color: #f7fbfd;
	z-index: 0;
}
/*リスト*/
.lp2_faqList {
	width: 100%;
	max-width: 1000px;
	padding: 0;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	grid-row-gap: 30px;
}
.lp2_faqList > dl {
	width: 100%;
	padding: 30px;
	margin: 0 auto;
	position: relative;
	background: none;
	border-radius: 10px;
	background: #fff;
	filter: var(--shade);
}
.lp2_faqList > dl > dt {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	column-gap: 20px;
	flex-wrap: nowrap;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	background: none;
	border-radius: 0;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 700;
	color: var(--text);
	position: relative;
	cursor: pointer;
	transition: var(--ease);
}
.lp2_faqList > dl > dt:hover {
	color: var(--lp-main);
	transition: var(--ease);
}
.lp2_faqList > dl > dt.active {
	color: var(--lp-main);
	transition: var(--ease);
}
.lp2_faqList > dl > dt::before {
	content: '\51';
	display: inline-flex;
	width: 50px;
	height: 50px;
	justify-content: center;
	align-items: center;
	font-family: var(--font-awe);
	font-size: 22px;
	line-height: 1;
	font-weight: 900;
	color: #fff;
	background: var(--lp-main);
	border-radius: 50%;
}
.lp2_faqList > dl > dt:hover::before,
.lp2_faqList > dl > dt.active::before {
	transition: var(--ease);
}
.lp2_faqList > dl > dt span {
	display: block;
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	background: #e8f3f3;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
}
.lp2_faqList > dl > dt span::before {
	content: '';
	display: block;
	width: 20px;
	height: 2px;
	background: var(--lp-main);
	border-radius: 3px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform-origin: center;
	transition: var(--ease);
}
.lp2_faqList > dl > dt span::after {
	content: '';
	display: block;
	width: 20px;
	height: 2px;
	background: var(--lp-main);
	border-radius: 3px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) rotate(90deg);
	-webkit-transform: translate(-50%,-50%) rotate(90deg);
	transform-origin: center;
	transition: var(--ease);
}
.lp2_faqList > dl > dt.active span::after {
	transform: translate(-50%,-50%) rotate(0deg);
	-webkit-transform: translate(-50%,-50%) rotate(0deg);
	transform-origin: center;
	transition: var(--ease);
}
.lp2_faqList > dl > dt:hover span::before,
.lp2_faqList > dl > dt:hover span::after,
.lp2_faqList > dl > dt.active span::before,
.lp2_faqList > dl > dt.active span::after {
	background: var(--lp-main);
	transition: var(--ease);
}
.lp2_faqList > dl > dd {
	margin: 20px auto 0;
	padding: 0;
	background: #fff;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 500;
	line-height: 2em;
}
#all_wrap .lp2_faqList > dl > dd p {
	padding: 0;
	margin: 0 auto 10px;
	font-size: 15px;
	font-weight: 500;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
#all_wrap .lp2_faqList > dl > dd p:last-of-type {
	margin-bottom: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_faq {
		width: 100%;
		padding: 0 20px 40px;
	}
	/*リスト*/
	.lp2_faqList {
		width: 100%;
		max-width: 100%;
		grid-row-gap: 15px;
	}
	.lp2_faqList > dl {
		width: 100%;
		padding: 10px;
	}
	.lp2_faqList > dl > dt {
		column-gap: 10px;
		font-size: 14px;
		padding: 0 15px 0 0;
	}
	.lp2_faqList > dl > dt::before {
		width: 30px;
		height: 30px;
		font-size: 12px;
	}
	.lp2_faqList > dl > dt span {
		display: block;
		width: 20px;
		height: 20px;
	}
	.lp2_faqList > dl > dt span::before {
		content: '';
		display: block;
		width: 10px;
		height: 1px;
	}
	.lp2_faqList > dl > dt span::after {
		content: '';
		display: block;
		width: 10px;
		height: 1px;
	}
	.lp2_faqList > dl > dd {
		margin: 10px auto 0;
		font-size: 14px;
		font-weight: 500;
		line-height: 2em;
	}
	#all_wrap .lp2_faqList > dl > dd p {
		padding: 0;
		margin: 0 auto 10px;
		font-size: 14px;
		font-weight: 500;
		line-height: 2em;
	}
}

/*----------------------------------------------------------*/
/* CTA セクション
/*----------------------------------------------------------*/
#cta_sec {
	width: 100%;
	padding: 0 0 100px;
	margin: 0 auto;
	position: relative;
	background-color: #f7fbfd;
	z-index: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#cta_sec {
		width: 100%;
		padding: 0 20px 40px;
	}
}

/*----------------------------------------------------------*/
/* スケジュール
/*----------------------------------------------------------*/
#lp2_schedule {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
}
#lp2_schedule .image {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	background: var(--lp-base);
}
#lp2_schedule .image img {
	width: 100%;
	height: auto;
}
#lp2_schedule .pdf {
	width: 100%;
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#lp2_schedule {
		width: 100%;
		padding: 40px 20px;
	}
	#lp2_schedule .image {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 20px;
	}
	#lp2_schedule .pdf {
		width: 100%;
		max-width: 100%;
	}
}
/* PC・タブレットなど共通の基本スタイル */
.kakutan_movie {
  width: 100%;
  max-width: 650px; /* HTMLのwidthに合わせて最大幅を制限 */
  margin: 0 auto;   /* 左右のmarginをautoにしてセンター寄せ */
}

/* iframe（動画本体）のスタイル */
.kakutan_movie iframe {
  width: 100%;          /* 親要素の幅いっぱいに広げる */
  height: auto;         /* 高さを自動計算 */
  aspect-ratio: 16 / 9; /* YouTube標準の縦横比（16:9）を維持して自動縮小 */
  display: block;       /* iframe下部の不要な隙間を消す */
}

/* スマホ用のスタイル（画面幅768px以下をスマホとする場合） */
@media screen and (max-width: 768px) {
  .kakutan_movie {
    width: 98%; /* スマホの時は幅を理想の98%にする */
    /* margin: 0 auto; は基本スタイルから引き継がれるため、自動的にセンター寄せになります */
  }
}