@charset "UTF-8";
/* 背景画像は .png.webp を直接指定している（理由は common.css の先頭。2026-10） */
.PC {display: none;}
.SP {display: inherit;}

html {
	font-size: 1.33vw; /*defaultFontsize(10px) / maxWidth(750px) * 100*/
}
:where(.lparea) img {
	width: 100%;
	height: auto;
}


/* ======== HEADER ======== */
.lp_h {
	position: relative;
	z-index: 100;
}
.lp_h--fixed {
	position: fixed;
	z-index: 100;
		top: 0;
		left: 0;
	width: 100%;
	transform: translateY(-100%);
	transition: transform 0.4s ease;
}
	.lp_h--fixed.is-visible {
		transform: translateY(0);
	}
.lp_h__inner,
.lp_h--fixed .lp_h__inner {
	display: flex;
		justify-content: space-between;
		align-items: center;
	height: 10rem;
	padding: 0 3rem;
}
.lp_h__logo img {
	width: auto;
	height: 7.2rem;
}
.lp_h__menu {
	cursor: pointer;
	display: flex;
		align-items: center;
		justify-content: center;
	width: 5rem;
	height: 5rem;
	padding: 0;
	border: none;
	background: none;
}
	.lp_h__menu__open {
		width: 5rem;
		height: auto;
	}
	.lp_h__menu__close {
		display: none;
		width: 4rem;
		height: auto;
	}
	.lp_h__menu.is-active .lp_h__menu__open {
		display: none;
	}
	.lp_h__menu.is-active .lp_h__menu__close {
		display: block;
	}


/* ======== SP MENU ======== */
.lp_spmenu {
	position: fixed;
	z-index: 99;
		top: 0;
		left: 0;
	width: 100%;
	height: 100%;
	padding: 14rem 6rem 0;
	background: rgba(255,255,255,0.98);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}
	.lp_spmenu.is-open {
		opacity: 1;
		visibility: visible;
	}
.lp_spmenu__nav ul {
	list-style: none;
}
	.lp_spmenu__nav li {
		border-bottom: 1px solid #ccc;
	}
	.lp_spmenu__nav a {
		position: relative;
		display: block;
		padding: 3.5rem 2rem;
		color: var(--c-text);
		font-size: 3.2rem;
		font-weight: 500;
	}
		.lp_spmenu__nav a::after {
			content: "";
			position: absolute;
				right: 2rem;
				top: 50%;
			width: 1.4rem;
			height: 1.4rem;
			border-right: 2px solid #4a5568;
			border-bottom: 2px solid #4a5568;
			transform: translateY(-50%) rotate(-45deg);
		}
.lp_spmenu__action {
	display: flex;
		flex-direction: column;
		align-items: center;
		gap: 3rem;
	padding-top: 10rem;
}
.lp_spmenu__tel,
.lp_spmenu__btn {
	position: relative;
	display: flex;
		justify-content: center;
		align-items: center;
	width: 52rem;
	height: 12rem;
	color: #fff !important;
	font-size: 5.4rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	border-radius: 100rem;
	overflow: hidden;
}
.lp_spmenu__tel {
	font-family: var(--font-en);
	font-weight: 400;
}
.lp_spmenu__bg {
	position: absolute;
		top: 0;
		left: 0;
	width: 100%;
	height: 100%;
	object-fit: fill;
}
	.lp_spmenu__tel span,
	.lp_spmenu__btn span {
		position: relative;
	}


/* ======== FIRST VIEW ======== */
.lp_fv {
	padding-top: 0;
	padding-bottom: 4rem;
	background: url("../images/spfv_bg.png.webp") top center no-repeat;
	background-size: 100% 100%;
}
.lp_fv__spheres {
		gap: 0 4rem;
	margin-top: 24rem;
}
	.lp_fv__sphere {
		width: 18rem;
		height: 18rem;
	}
		.lp_fv__sphere span {
			font-size: 2.8rem;
		}
/* FVの見出し画像の上に重ねる文字（2026-10。画像 750×530 の文字に合わせた値。説明は common.css） */
.lp_fv__titbox {
	margin: 0 auto 3rem;
}
	.lp_fv__catch {
			top: 60.94%;
			left: 39.33%;
		font-size: 2.6rem;
		font-size: 3.4667cqw;
		line-height: 1.385;
	}
	.lp_fv__count__label {
			top: 81.89%;
			left: 15.6%;
		font-size: 2.6rem;
		font-size: 3.4667cqw;
		line-height: 1.19;
	}
	.lp_fv__count__num {
			top: 74.53%;
			left: 23.73%;
	}
		.lp_fv__count__num .oswald {
			font-size: 12.7rem;
			font-size: 16.9333cqw;
			letter-spacing: -0.01em;
		}
			.lp_fv__count__num .oswald mark {
				margin-right: 0;
			}
		.lp_fv__count__unit {
			margin: 0 0 0.9rem 0.4rem;
			margin: 0 0 1.2cqw 0.5333cqw;
			font-size: 2.9rem;
			font-size: 3.8667cqw;
			line-height: 1;
		}
.lp_fv__results {
	flex-wrap: wrap;
		gap: 1rem;
	max-width: 100%;
	margin: 0 auto 3rem;
	padding: 0 3rem;
}
	.lp_fv__results__item {
			flex-direction: row;
			flex-wrap: wrap;
			align-items: flex-end;
			gap: 1rem 0;
		width: calc(50% - 0.75rem);
		height: auto;
		padding-top: 1.6rem;
		padding-bottom: 2rem;
		border-radius: 1.8rem;
	}
		.lp_fv__results__label {
			width: 100%;
			font-size: 2.4rem;
		}
			.oswald + .lp_fv__results__label {
				width: auto;
			}
		.lp_fv__results__val {
			font-size: 3.8rem;
		}
			.lp_fv__results__val span {
				font-size: 4.8rem;
			}
	.lp_fv__results__cases {
		width: 100%;
			gap: 1.5rem;
		padding: 2rem;
	}
		.lp_fv__results__cases__label {
			font-size: 2.8rem;
		}
		.lp_fv__results__case {
			font-size: 2.6rem;
		}
			.lp_fv__results__case mark {
				font-size: 3.6rem;
			}
			.lp_fv__results__case small {
				font-size: 1.6rem;
			}
.lp_fv__note {
	margin-bottom: 10rem;
	padding: 0 7rem;
	font-size: 2rem;
	text-align: left;
	text-indent: -1em;
}


/* ======== FV サービス紹介 ======== */
.lp_fv__service {
	margin-bottom: 0rem;
}
.lp_fv__service__inner {
	padding: 0 5rem;
}
.lp_fv__service__cards {
	flex-direction: column;
		align-items: center;
		gap: 4rem;
}
	.lp_fv__service__card {
		width: 56rem;
		height: 56rem;
		padding-top: 1rem;
	}
	.lp_fv__service__card__icons {
		width: 10rem;
		margin-bottom: 1rem;
	}
	.lp_fv__service__card__label {
		font-size: 3.4rem;
	}
	.lp_fv__service__card__tit {
		font-size: 4.2rem;
	}
	.lp_fv__service__card__desc {
		font-size: 2.6rem;
		line-height: 1.6;
	}
.lp_fv__service__discount {
		top: -6rem;
		left: calc(100% - 14rem);
	width: 22rem;
	height: 22rem;
}
	.lp_fv__service__discount p {
		font-size: 3.6rem;
	}
		.lp_fv__service__discount span {
			font-size: 7.4rem;
		}


/* ======== CTA共通 ======== */
.lp_cta {
	padding: 0 1rem 10rem 1rem;
}
.lp_cta__btns {
	flex-direction: column;
		align-items: center;
		gap: 0;
	margin-bottom: -5rem;
}
.lp_cta__btn {
	width: 100%;
	height: 26rem;
	padding-bottom: 6rem;
}
	.lp_cta__btn--primary {
		translate: 0 1rem;
		margin-bottom: -3rem;
	}
		.lp_kd__cta .lp_cta__btn--primary {
			width: 72rem;
		}
	.lp_cta__btn--secondary {
		translate: 0 -1rem;
	}
				.lp_cta__btn--secondary {
					translate: 0 -1rem;
				}
	.lp_cta__btn__sub {
		font-size: 2.4rem;
	}
	.lp_cta__btn__main {
		font-size: 4.6rem;
	}
.lp_cta__tel {
	font-size: 2.6rem;
}
	.lp_cta__telico {
		width: 3.6rem;
	}
	.lp_cta__tel .oswald {
		font-size: 4.2rem;
	}


/* ======== 私たちの実力 ======== */
.lp_jr {
	position: relative;
	padding: 7rem 0 0rem 0;
}
.lp_jr__inner {
	margin-bottom: 15rem;
	padding: 0 3rem;
}
.lp_jr__tit {
	margin-bottom: 3rem;
	font-size: 6.4rem;
}
	.lp_jr__tit .mincho {
		font-size: 10rem;
	}
.lp_jr__sub {
	margin-bottom: 4rem;
	font-size: 2.8rem;
}
.lp_jr__mall {
	position: relative;
	width: 100%;
	margin-bottom: 0;
	padding: 4rem 1rem;
	box-shadow: 0 3rem 3rem rgb(0 58 127 / 0.2);
}
	.lp_jr__mall__item img {
		height: 4.8rem;
	}
.dmm {
	display: none;
}
/* 2026-10-13：上に重ねていたキャプチャ画像（.lp_jr__sp）を消したので、absolute（top: 97rem）をやめて「お取引社数実績」を流れの中に置く */
.dmm--sp {
	position: relative;
		z-index: 10;
	display: block;
	height: 40rem;
	padding-bottom: 0;
	overflow: hidden;
}
.dmm__swiper--sp .swiper-slide {
	width: auto;
}
.dmm__swiper--sp .swiper-slide img {
	height: 5.1rem;
	width: auto;
}
.dmm__swiper--sp .swiper-wrapper {
	transition-timing-function: linear;
}
.dmm__count--sp {
	display: flex;
		justify-content: center;
		align-items: center;
		gap: 1.5rem;
		top: 15rem;
	width: 100%;
	padding: 2rem 0 8rem;
}
	.dmm__count--sp .dmm__count__label {
		width: 14rem;
		height: 14rem;
		border: 1px solid #357bf4;
		border-radius: 50%;
		display: flex;
			justify-content: center;
			align-items: center;
		font-size: 2.6rem;
		text-align: center;
	}
			.dmm__count--sp .dmm__count__label:before {
				width: 17rem;
			}
		.dmm__count--sp .dmm__count__label span {
			position: relative;
				z-index: 11;
		}
	.dmm__count--sp .dmm__count__num {
		font-family: var(--font-en);
		font-size: 15.4rem;
		line-height: 1;
		color: #357bf4;
	}
	.dmm__count--sp .dmm__count__unit {
		font-family: var(--font-jp);
		font-size: 5.4rem;
		color: #357bf4;
	}
		.dmm__count--sp .dmm__count__unit small {
			display: block;
			font-size: 2.4rem;
		}
.dmm__swiper {
	position: absolute;
}


/* ======== CVR改善・売上向上の事例 ======== */
.lp_cs {
	margin-top: 6rem;
	padding: 0rem 0 12rem;
	background: url("../images/spcs_bg.png.webp") top center no-repeat;
	background-size: 100% 100%;
}
.lp_cs__inner {
	padding: 0 0rem;
}
.lp_cs__label {
		translate: 0 -4rem;
	width: 18.1rem;
	height: 20rem;
	margin-bottom: -2rem;
	font-size: 5.6rem;
}
.lp_cs__tit {
	margin-bottom: 4rem;
	font-size: 7.6rem;
	line-height: 1.2;
}
	.lp_cs__tit span {
		font-size: 9.6rem;
	}
.lp_cs__sub2 {
	margin-bottom: 7rem;
	font-size: 2.8rem;
}
.lp_cs__list {
		justify-content: flex-end;
	margin-right: 4rem;
}
	.lp_cs__item {
		width: 62rem;
		height: auto;
		padding-bottom: 4rem;
	}
	.lp_cs__item__img {
			/* PCと同じ考え方。元画像（224×336）の透明な余白ぶんを詰める。
			   SPは元指定が 27rem 幅＝画像全体だったので、絵柄だけなら
			   27 × 182/224 = 21.9rem、高さは 27 × 296/224 = 35.7rem。
			   位置も余白ぶん（左8px・下40px相当）を寄せる。 */
			left: -5rem;
			bottom: 9.8rem;
		width: 21.9rem;
		height: 35.7rem;
	}
	.lp_cs__item__body {
		padding-top: 5rem;
	}
		.lp_cs__item__btc {
			width: 16rem;
			height: 4rem;
			font-size: 2.7rem;
		}
	.lp_cs__item__product {
		margin-bottom: 1rem;
		font-size: 3rem;
	}
	.lp_cs__item__company {
		font-size: 2rem;
	}
	.lp_cs__item__desc {
		width: 38rem;
		padding-right: 2.8rem;
		padding-left: 2.8rem;
		font-size: 2.4rem;
	}
		.lp_cs__item__desc:before {
			font-size: 1.9rem;
			width: 12.5rem;
		}
	.lp_cs__item__result {
		width: 38rem;
	}
		.lp_cs__item__arr {
			width: 16.2rem;
		}
		.lp_cs__item__result p {
			margin-top: 1rem;
			font-size: 2.4rem;
			background-size: 32rem auto;
		}
		.lp_cs__item__result .grade {
			font-size: 6.2rem;
		}
.lp_cs__bottom {
	margin-bottom: 3.5rem;
	font-size: 2.4rem;
}
	.lp_cs__bottom .ks01 {
		width: 34rem;
		height: 6.4rem;
		font-size: 2.8rem;
	}
	.lp_cs__bottom .ks02 {
		font-size: 4.6rem;
	}
.lp_cs__note {
	padding: 0 3rem;
	font-size: 2rem;
	text-align: center;
}


/* ======== 成果が出る理由は、人です。 ======== */
.lp_pp {
	padding-bottom: 52rem;
	background:
		 no-repeat center top,
		no-repeat center bottom
	;
	background-color: #599bc9;
	background-image:
		url("../images/ks_snbg.png.webp"),
		url("../images/spks_snbbimgb.png.webp")
	;
	background-size:
		200rem auto,
		100% auto
	;
}
.lp_pp__head {
	padding: 6rem 0 4rem;
}
.lp_pp__head__inner {
	padding: 0 4rem;
}
.lp_pp__tit {
	width: auto;
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	font-size: 7rem;
	line-height: 1.1;
	background-size: 60rem auto;
}
	.lp_pp__tit mark {
		font-size: 11rem;
	}
.lp_pp__desc {
	font-size: 2.6rem;
	line-height: 1.8;
}

/* フロー図 SP */
.lp_pp__flow {
	flex-direction: column;
		align-items: center;
		gap: 4rem;
	max-width: 100%;
	margin-bottom: 0;
}
	.lp_pp__flow__left {
		width: 100%;
	}
		.lp_pp__flow__comm-img {
			width: 100%;
		}
		.lp_pp__flow__labels {
			padding: 0 8rem;
			margin-top: -17.5rem;
			margin-bottom: 4rem;
		}
			.lp_pp__flow__labels .lp_pp__t01 {
				left: 19rem;
				width: 38rem;
				height: 8rem;
				font-size: 2.6rem;
			}
			.lp_pp__flow__labels .lp_pp__t01 + .lp_pp__flow__label {
				width: 27rem;
			}
		.lp_pp__flow__label {
			width: auto;
			height: auto;
			font-size: 2.6rem;
		}
			.lp_pp__flow__label.t02 {
				width: 27rem;
				margin-right: 0;
			}
		.lp_pp__flow__labelsub {
			margin-top: 0.2rem;
			font-size: 2.4rem;
			line-height: 1.3;
		}
	.lp_pp__flow__select {
			top: -2rem;
		width: 12rem;
		height: 12rem;
		font-size: 3.2rem;
	}
	.lp_pp__flow__right {
		/* 幅を決めておく（2026-10）。決めないと中の画像（spks_snbbimga.png）が読み込まれるまで幅0・高さ0になり、
		   読み込んだ瞬間に下の内容が約430px下がる。ボタンでフォームへ移動している最中に起きると、フォームの手前で止まる。 */
		width: 100%;
		margin-right: 0;
		margin-left: 0;
	}
		.lp_pp__flow__right img {
			width: 100%;
		}
		.lp_pp__flow__right__head {
			padding-top: 4rem;
			padding-left: 0;
			font-size: 3rem;
		}
		.lp_pp__flow__right__members {
				flex-direction: column;
				gap: 3rem 0;
			width: 64rem;
			margin: 0 auto;
			padding: 0 1rem 0 5rem;
			padding-top: 6rem;
		}
		.lp_pp__flow__right__member {
			display: flex;
			width: auto;
		}
		.lp_pp__flow__right__role {
			width: 21rem;
			margin-top: 14rem;
			font-size: 2.6rem;
			text-align: center;
			white-space: nowrap;
		}
		.lp_pp__flow__right__sub {
			width: 35rem;
			font-size: 2.4rem;
		}

/* 信頼セクション SP */
.lp_pp__trust {
	flex-direction: column;
		align-items: center;
		gap: 7rem;
	width: 60rem;
	margin: 0 auto;
}
	.lp_pp__trust__tit {
		width: 100%;
		height: auto;
		padding: 3rem 4rem;
		font-size: 3.4rem;
	}
	.lp_pp__trust__body {
			gap: 2rem;
		padding: 0;
	}
		.lp_pp__trust__ico {
			width: 14.4rem;
		}
		.lp_pp__trust__note {
			width: 43.2rem;
			font-size: 2.6rem;
		}


/* ======== 低価格の理由は、仕組みです。 ======== */
.lp_sm {
	padding: 14rem 0 8rem 0;
}
.lp_sm__inner {
	padding: 0 0rem;
}
.lp_sm__tit {
	margin-bottom: 4rem;
	font-size: 8rem;
	line-height: 1.7;
}
	.lp_sm__tit mark {
		display: inline-flex;
			justify-content: center;
			align-items: center;
		width: 39rem;
		height: calc(21.5rem / 2 + 3rem);
		font-size: 11.8rem;
	}
.lp_sm__desc {
	width: 64rem;
	margin: 0 auto;
	margin-bottom: 8rem;
	font-size: 2.8rem;
	text-align: left;
}
.lp_sm__list {
	flex-direction: column;
		align-items: center;
		gap: 4rem;
}
	.lp_sm__item {
		width: 58rem;
		height: auto;
		padding: 3rem 3rem;
		padding-bottom: 6rem;
		background-size: 110% auto;
	}
		.lp_sm__item:nth-child(even) {
			margin-top: 0;
		}
	.lp_sm__item__ico {
		margin-bottom: 0rem;
	}
		.lp_sm__item__ico img {
			width: 34rem;
			height: 34rem;
		}
	.lp_sm__item__tit {
		margin-bottom: 1.5rem;
		font-size: 4.2rem;
	}
					.lp_sm__tit span:before {
						width: 1.4rem;
						height: 1.4rem;
					}
	.lp_sm__item__desc {
		width: 47rem;
		font-size: 2.6rem;
	}


/* ======== LP制作.jpのこだわり ======== */
.lp_kd {
	padding: 14rem 0 8rem 0;
	background: url("../images/spkd_bg.png.webp") top center no-repeat;
	background-size: 100% 100%;
}
.lp_kd__inner {
	padding: 0 0rem;
}
.lp_kd__tit {
	margin-bottom: 7rem;
	font-size: 11.6rem;
	line-height: 1;
}
	.lp_kd__tit .kdwrap {
		display: flex;
		width: 28.5rem;
		height: 7.2rem;
		margin: 0 auto 1rem;
		font-size: 3.4rem;
	}
	.lp_kd__tit__logo {
		height: 18rem;
	}
.lp_kd__desc {
	width: 65rem;
	margin: 0 auto;
	margin-bottom: 7rem;
	font-size: 2.8rem;
	text-align: left;
	letter-spacing: 0.04em;
}
.lp_kd__list {
	margin: 0 auto 6rem;
}
	.lp_kd__item {
		border-radius: 2rem;
	}
		.lp_kd__item__body {
				left: 3.5rem;
			width: 68rem;
			padding: 7rem 7rem 5rem 7rem 0;
		}
		.lp_kd__item--rev .lp_kd__item__body {
			scale: 1 1;
		}
			.lp_kd__item--rev .lp_kd__item__body .lp_kd__item__label,
			.lp_kd__item--rev .lp_kd__item__body .lp_kd__item__desc {
				scale: 1 1;
			}
	.lp_kd__item__label {
		width: auto;
		margin-bottom: 3rem;
		font-size: 6.4rem;
	}
	.lp_kd__item__desc {
		width: auto;
		font-size: 2.8rem;
		line-height: 1.8;
	}
	.lp_kd__x {
		padding: 2rem 0;
	}
		.lp_kd__x img {
			width: 8rem;
		}
.lp_kd__note {
	margin-bottom: 2rem;
	font-size: 3.2rem;
	line-height: 1.8;
}


/* ======== ご依頼の条件（見出しと枠。中身は single-results_oriented.php の rdjk。2026-11-09 まで比較表「他社との違い」） ======== */
.lp_ts {
	margin-bottom: 9rem;
	background-size: 200rem 109%;
}
.lp_ts__tit {
	font-size: 8.2rem;
}
	.lp_ts__titico {
		width: 53rem;
	}


/* ======== 選べる3プラン ======== */
.lp_pln__label {
	font-size: 2rem;
}
.lp_pln__tit {
	width: 66.1rem;
	height: 20.5rem;
	margin-bottom: 5rem;
	padding-top: 4rem;
	font-size: 9.6rem;
	background-size: 100% 100%;
}
	.lp_pln__tit .lp_pln__label {
		top: 0.4rem;
		left: 2.2rem;
		font-size: 2.8rem;
	}
	.lp_pln__tit .mincho {
		font-size: 9.6rem;
	}
.lp_pln__note {
	margin-bottom: 10rem;
	font-size: 2.8rem;
}
.lp_pln__cards {
	flex-direction: column;
	align-items: center;
	width: 100%;
	gap: 0;
}
	.lp_pln__card {
		width: 69rem;
	}
	.lp_pln__card__head {
		font-size: 4rem;
	}
	.lp_pln__card__name {
		width: 60rem;
		height: 10rem;
		margin-top: -2.5rem;
		margin-bottom: 3rem;
		font-size: 5.4rem;
	}
	.lp_pln__card__catch {
		font-size: 2.8rem;
		line-height: 1.7;
	}
	.lp_pln__card__price {
		font-size: 7rem;
	}
		.lp_pln__card__price mark {
			font-size: 10.2rem;
		}
	.lp_pln__card__device {
		width: 9.8rem;
		height: 9.8rem;
		font-size: 2.2rem;
	}
	.lp_pln__card__device__note {
		font-size: 2.2rem;
	}
	.lp_pln__card__body {
		padding: 9rem 0 6rem;
	}
		.lp_pln__card__spec dt {
			padding: 0.8rem 4rem;
			font-size: 2.4rem;
		}
		.lp_pln__card__spec dd {
			padding: 0.6rem 0 1.6rem;
			font-size: 3.6rem;
		}
	.lp_pln__card__body > .lp_pln__card__spec:last-child {
			gap: 2rem 2.4rem;
		width: 70%;
	}
		.lp_pln__card__body > .lp_pln__card__spec:last-child dt {
			padding: 0.2rem 4rem;
			font-size: 2.6rem;
		}
		.lp_pln__card__body > .lp_pln__card__spec:last-child dd {
			font-size: 2.8rem;
		}
	.lp_pln__card__sample {
		width: 45.8rem;
		height: 5.6rem;
		margin-top: 4rem;
		font-size: 2.4rem;
		border-width: 0.8rem;
	}
		.lp_pln__card__sample__ico {
			width: 2.2rem;
		}
	.lp_pln__card__slider {
		width: 64rem;
		margin-bottom: 6rem;
		padding: 4rem 0 4rem;
		padding-left: 1.6rem;
	}
			.lp_pln__card__slider__item {
				width: 20rem;
				height: 34rem;
			}
				.lp_pln__card__slider__item > img:first-child {
					height: 100%;
				}
				.lp_pln__card__slider__plus {
						top: 1rem;
						right: 1rem;
					width: 4rem;
				}
		.lp_pln__card__slider__dots {
				gap: 2rem;
			margin-top: 2.5rem;
		}
			.lp_pln__card__slider__dots span {
				width: 2.2rem;
				height: 2.2rem;
			}

	.lp_pln__cards__side {
		position: relative;
			top: auto;
			left: auto;
			transform: none;
		display: flex;
			justify-content: center;
			align-items: center;
		width: 54rem;
		height: 12.8rem;
		margin: 0 auto;
		margin-top: -9rem;
		margin-bottom: 6rem;
		padding: 0rem 4rem;
		font-size: 2.8rem;
		text-align: center;
		line-height: 1.3;
		writing-mode: horizontal-tb;
		white-space: wrap;
	}
				.lp_pln__cards__side:before {
						transform: skew(10deg, 10deg);
						rotate: 45deg;
						translate: -50% 50%;
						top: auto;
						right: auto;
						bottom: 100%;
						left: 50%;
					width: 2rem;
					height: 2rem;
					background: #ffff5e;
				}

.lp_pln__common {
		flex-direction: column;
		gap: 1.2rem;
	width: 69rem;
	margin-bottom: 6rem;
	padding: 3rem 6rem;
}
	.lp_pln__common p {
		width: 100%;
		font-size: 2.8rem;
		text-align: left;
	}
		.lp_pln__common p small {
			font-size: 2rem;
		}
	.lp_pln__common .lp_pln__common__label {
		width: auto;
		margin-bottom: 1rem;
	}
.lp_pln__hqnote {
	width: 56rem;
	margin: 0 auto;
	margin-bottom: 4rem;
	font-size: 2.6rem;
}
.lp_pln__hqnotehh {
	width: 56rem;
	margin: 0 auto;
	padding-bottom: 9rem;
	font-size: 2rem;
	text-align: left;
}

.lp_pln__plus {
	padding: 4rem 0;
}
	.lp_pln__plus img {
		width: 5rem;
	}

/* オプション料金 */
.lp_pln__option {
	padding: 0 3rem 8rem;
}
.lp_pln__option__tit {
	font-size: 3.6rem;
}
.lp_pln__op__grid {
	grid-template-columns: 1fr 1fr;
	gap: 1.6rem;
}
.lp_pln__op__card {
	padding: 2rem;
	padding-left: 2.5rem;
}
.lp_pln__op__ico {
	width: 6rem;
	height: 6rem;
}
	.lp_pln__op__ico--01 { background-position: 0 0; }
	.lp_pln__op__ico--02 { background-position: 0 -14.3rem; }
	.lp_pln__op__ico--03 { background-position: 0 -27.5rem; }
	.lp_pln__op__ico--04 { background-position: 0 -41.7rem; }
	.lp_pln__op__ico--05 { background-position: 0 -55.5rem; }
	.lp_pln__op__ico--06 { background-position: 0 -69.7rem; }
.lp_pln__op__name {
	font-size: 2rem;
}
.lp_pln__op__price {
	font-size: 3.2rem;
}
.lp_pln__option__note {
	font-size: 1.8rem;
}

/* SP用オプション */
.lp_pln__spoption {
	display: flex;
		flex-direction: column;
	width: 67rem;
	margin: 0 auto;
	margin-bottom: 12rem;
}
	.lp_pln__spoption .lp_pln__op__card {
			flex-direction: column;
			gap: 0.5rem;
		padding: 2rem 1rem;
		padding-left: 2rem;
	}
	.lp_pln__spoption .lp_pln__op__ico {
		display: inline-block;
		vertical-align: middle;
		margin-right: 0.8rem;
	}
	.lp_pln__spoption .lp_pln__op__name {
		display: flex;
			align-items: center;
		width: 100%;
		text-align: left;
		font-size: 2.4rem;
		line-height: 1.1;
	}
	.lp_pln__spoption .lp_pln__op__price {
		font-size: 3.5rem;
		letter-spacing: -0.01em;
		white-space: nowrap;
	}


/* ======== 希望予算に合わせたLP制作 ======== */
.lp_bdg {
	padding-bottom: 10rem;
	background-size: 200rem 100%;
}
.lp_bdg__wrap {
		flex-direction: column;
		gap: 0;
	padding: 0 0rem;
}
.lp_bdg__tit {
	margin-bottom: 3rem;
}
	.lp_bdg__tit__line01 {
		padding: 0.2rem 4rem 0.2rem 5rem;
		font-size: 5.6rem;
	}
	.lp_bdg__tit__line02 {
		padding: 0.2rem 4rem 0.2rem 5rem;
		font-size: 5.6rem;
	}
.lp_bdg__desc {
	margin-left: 0;
	margin-bottom: 4rem;
	padding-left: 5rem;
	font-size: 2.6rem;
}
.lp_bdg__list {
	margin-left: 8rem;
}
	.lp_bdg__item {
			flex-direction: column;
			align-items: flex-start;
		width: 52rem;
		height: auto;
		margin-left: 4rem;
		margin-bottom: 2rem;
		padding: 0rem 2rem 2rem 0;
	}
	.lp_bdg__item__label {
			gap: 1.5rem;
		width: 30rem;
		height: 10.5rem;
		margin-left: -2.5rem;
		padding: 0.8rem 2rem 0.8rem 4rem;
		font-size: 3.6rem;
	}
	.lp_bdg__item__ico {
		width: 5rem;
		height: 3.8rem;
		background-size: 5rem auto;
	}
		.lp_bdg__item__ico--01 { background-position: 0 0; }
		.lp_bdg__item__ico--02 { background-position: 0 -11.7rem; }
		.lp_bdg__item__ico--03 { background-position: 0 -23.8rem; }
	.lp_bdg__item__desc {
		margin-left: 6rem;
		font-size: 2.6rem;
	}

/* AIチャットウィジェット */
.lp_bdg__chat {
	width: 100%;
	height: auto;
	margin-top: 5rem;
}
.lp_bdg__chat__inner {
	width: 62rem;
	margin: 0 auto;
	padding: 4rem 3rem;
}
.lp_bdg__chat__tit {
	font-size: 2.8rem;
}
	.lp_bdg__chat__tit small {
		font-size: 3.6rem;
	}


/* ======== 持ち込み割引 ======== */
.lp_mw {
	margin-top: 0;
	padding: 8rem 0 6rem;
}
.lp_mw__tit {
	width: 69.2rem;
	font: 21.7rem;
	height: 21.7rem;
	margin-bottom: 2rem;
	padding: 3rem 0 4rem;
	font-size: 6.2rem;
	line-height: 1;
	background-image: url("../images/spmw_titbg.png.webp");
	background-size: 100% auto;
}
	.lp_mw__tit .gm {
		font-size: 5rem;
	}
.lp_mw__desc {
	margin-bottom: 13rem;
	padding: 0 3rem;
	font-size: 2.8rem;
}
.lp_mw__cards {
	grid-template-columns: 1fr;
		gap: 32rem;
	width: 60rem;
	margin-bottom: 22rem;
}
	.lp_mw__card {
		padding: 0 0 5rem;
	}
	.lp_mw__card__head {
		width: 92%;
		height: 22.8rem;
		margin-top: -2.5rem;
		padding: 4rem 2rem 0;
	}
	.lp_mw__card__cat {
		width: 42rem;
		margin-bottom: 2rem;
		font-size: 3.3rem;
	}
	.lp_mw__card__discount {
		font-size: 6.8rem;
	}
		.lp_mw__card__discount span {
			font-size: 9rem;
		}
	.lp_mw__card__label {
		padding: 2.4rem 2rem 3.2rem;
		font-size: 2.6rem;
	}
	.lp_mw__card__ico {
		width: 3.6rem;
		height: 3.6rem;
	}
	.lp_mw__card__img {
		padding: 0 5rem;
	}
	.lp_mw__card__note {
		position: absolute;
			top: 103%;
			left: 50%;
			translate: -50% 2.4rem;
		width: 50rem;
		height: auto;
		padding: 3rem 4rem;
		font-size: 2.4rem;
		line-height: 1.8;
		border-radius: 1.6rem;
	}
			.lp_mw__card__note:before {
				transform: skew(-10deg, -10deg);
				width: 4rem;
				height: 4rem;
			}
.lp_mw__cardnote {
	margin-top: 27rem;
	margin-bottom: 6rem;
	font-size: 2.4rem;
	line-height: 1.7;
}
	/* 文中の「タップ」（スマホだけ表示）と「マウスオーバー」（PCだけ表示）。共通の .SP は display:inherit で改行してしまうので inline にし、
	   common.css の .lp_mw__cardnote span.PC（inline）はスマホでも効くので、ここで消す */
	.lp_mw__cardnote span.SP {
		display: inline;
	}
	.lp_mw__cardnote span.PC {
		display: none;
	}
	.lp_mw__zoom::after {
		right: 1.2rem;
		bottom: 1.2rem;
		width: 5.6rem;
		height: 5.6rem;
	}
	/* 拡大表示はスマホでは画面の幅いっぱいに出す（さらに拡大したいときはピンチで） */
	.lp_mw__preview {
		padding: 3vh 0;
	}
		.lp_mw__preview img {
			max-width: 100vw;
			border-radius: 0;
		}

.lp_mw__conditions {
	flex-direction: column;
	width: 62rem;
	padding: 3rem 4rem;
	text-align: left;
}
	.lp_mw__conditions h3 {
		display: block;
		width: 100%;
		height: auto;
		margin-right: 0;
		margin-bottom: 2rem;
		padding-right: 0;
		padding-bottom: 2rem;
		font-size: 3rem;
		text-align: center;
		border-right: none;
		border-bottom: 1px dotted #fff;
	}
		.lp_mw__conditions li {
			font-size: 2.2rem;
			line-height: 1.8;
		}
.lp_mw .lp_cta {
	padding-bottom: 8rem;
}


/* ======== お問い合わせ後の流れ ======== */
.lp_stp {
	padding: 8rem 0 10rem;
	background-size: 200rem 100%;
}
.lp_stp__inner {
	padding: 0 0rem;
}
.lp_stp__tit {
	margin-bottom: 5rem;
	font-size: 6.2rem;
}
.lp_stp__wrap {
	width: 58rem;
	margin: 0 auto;
	margin-left: 6rem;
}
.lp_stp__list {
	gap: 2.5rem;
}
	.lp_stp__item {
			flex-wrap: wrap;
			align-items: flex-start;
			gap: 0rem 0rem;
		padding: 3rem 6rem;
	}
	.lp_stp__num {
		position: absolute;
		width: 8rem;
		height: 8rem;
		margin-left: -10rem;
		margin-bottom: 1rem;
		font-size: 4rem;
		border-width: 0.8rem;
	}
	.lp_stp__item__ico {
		width: 8rem;
		height: 8rem;
		margin: 0;
		margin-left: 0.5rem;
		background-size: 8.1rem auto;
	}
		.lp_stp__item__ico--01 { background-position: 0 0; }
		.lp_stp__item__ico--02 { background-position: 0 -14.4rem; }
		.lp_stp__item__ico--03 { background-position: 0 -29.4rem; }
		.lp_stp__item__ico--04 { background-position: 0 -43.3rem; }
		.lp_stp__item__ico--05 { background-position: 0 -58.3rem; }
	.lp_stp__item__label {
		display: flex;
			justify-content: center;
			align-items: center;
			gap: 1rem;
		width: 11em;
		margin-top: 1rem;
		margin-bottom: 0rem;
		font-size: 3.2rem;
	}
	.lp_stp__item__desc {
			flex: auto;
		width: 46rem;
		margin-top: 1rem;
		margin-left: 0;
		padding-left: 0;
		padding-top: 2rem;
		font-size: 2.6rem;
		line-height: 1.8;
		border-left: none;
		border-top: 2px dotted #8d8e92;
	}
		.lp_stp__item__desc small {
			display: block;
			font-size: 2.2rem;
		}
.lp_stp__cancel {
		top: 23rem;
		right: -6rem;
	width: 4rem;
	height: 95.2rem;
	font-size: 1.8rem;
	border-width: 0.6rem;
}
	.lp_stp__cancel span {
		padding: 1.2rem 0.2rem;
		font-size: 3.2rem;
	}


/* ======== よくあるご質問 ======== */
.lp_qa {
	padding: 8rem 0 10rem;
	background: url("../images/spqa_bg.png.webp") no-repeat center top;
	background-size: 100% 100%;
}
.lp_qa__inner {
		flex-direction: column;
		align-items: center;
		gap: 0;
	padding: 0 3rem;
}
.lp_qa__left {
	width: 100%;
	margin-bottom: -5rem;
	padding-top: 0;
	text-align: center;
}
.lp_qa__watermark {
	width: 48.7rem;
	margin: 0 auto;
}
.lp_qa__tit {
	margin-top: -3rem;
	writing-mode: horizontal-tb;
	font-size: 5.8rem;
	border-right: none;
	border-bottom: 0.5rem solid #000;
}
.lp_qa__list {
	width: 100%;
	gap: 1rem;
}
.lp_qa__q {
	padding: 2.5rem 5rem 2.5rem 2.5rem;
	font-size: 2.8rem;
}
	.lp_qa__q::after {
		right: 2.5rem;
		width: 1.6rem;
		height: 1.6rem;
	}
.lp_qa__q__icon {
	font-size: 3.6rem;
}
	.js-accordion.is-open .lp_qa__a {
		padding: 2.5rem;
	}
.lp_qa__a__icon {
	font-size: 3.6rem;
}
	.lp_qa__a p {
		width: 100%;
		font-size: 2.4rem;
		line-height: 1.8;
	}


/* ======== 制作実績（ショートコード [lp_specialty_portfolio_search]） ======== */
.lp_pf {
	padding-bottom: 8rem;
}
:where(.lparea) .inner {
	max-width: none;
	/* 上は検索フォームと一覧の間。/lp/high_quality の 10.133vw 相当 */
	padding: 7.6rem 3rem 0;
}
	/* 行間は #lp_list の gap 10px + li の margin-bottom 7.2rem（high_quality の 9.6vw 相当） */
	:where(.lparea) .sec02_list > li {
		width: calc((100% - 10px) / 2);
		margin-bottom: 7.2rem;
	}
	:where(.lparea) .sec02_list .comp_name {
		margin: 1.6rem 0 1rem;
		font-size: 2.6rem;
	}
	:where(.lparea) .sec02_list .lp_name {
		padding: 1rem 1em;
		font-size: 2.2rem;
		border-radius: 0.2rem;
	}
:where(.lparea) .sec02_more {
	width: 100%;
	height: 9rem;
	margin-top: 0;
	border-radius: 4.5rem;
}
	:where(.lparea) .sec02_more .btn_text {
		font-size: 2.8rem;
		line-height: 9rem;
	}
		:where(.lparea) .sec02_more .btn_text::after {
			right: -4rem;
			width: 1.4rem;
			height: 1.4rem;
			margin-top: -1rem;
		}
