@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* =========================================================================
   【CSSの管理方針（2026-10-07 本番反映時に整理）】
   ・この style.css … 旧サイト（Snow Monkey）の追加CSSを整理・統合したもの
       トップページ（.ll-）／サイト共通／お問い合わせフォーム／LP（.smlp- .ums- 等）
   ・カスタマイザーの追加CSS … 今回の移行でSWELL用に新しく追加したもの
       SWELL表示調整／Snow Monkey互換（投稿記事用）／LP投稿のSWELL調整
   ========================================================================= */

/* =========================================================================
   logisticslegal.jp トップページ（EASIER風）
   SWELL子テーマ用 / 旧追加CSSの .ll- 系を統合・整理したもの
   -------------------------------------------------------------------------
   ・旧CSSに2セットあった .ll- 定義は「後半のeasier風」を正として統合
   ・「表示崩れ3点の修正」「実績カード修正」「CTAスマホ改行」も本体へ吸収
   ・FVは SWELLフルワイドブロック（追加CSSクラス: ll-fv）を前提
   ・新着情報は SWELL投稿リストブロック（.p-postList）を前提
   ========================================================================= */

:root {
	--ll-navy: #071b55;
	--ll-blue: #0874d1;
	--ll-blue-light: #4f9ee8;
	--ll-pale: #eef1f7;
	--ll-pale-2: #f6f8fb;
	--ll-line: #193369;
	--ll-border: #d8e1eb;
	--ll-yellow: #fffbc7;
	--ll-orange: #ff9f2f;
	--ll-text: #14243a;
	--ll-mincho: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	--ll-gothic: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", "Hiragino Kaku Gothic ProN", Arial, sans-serif;
}

/* =========================================================
   共通
========================================================= */

.ll-section {
	max-width: 780px;
	margin-right: auto;
	margin-left: auto;
	border-radius: 14px;
}

.ll-impact-problem,
.ll-impact-closing,
.ll-reason,
.ll-service,
.ll-cta,
.ll-flow,
.ll-support,
.ll-achieve,
.ll-faq-wrap,
.ll-news,
.ll-trust,
.ll-closing,
.ll-info {
	color: var(--ll-text);
	font-family: var(--ll-mincho);
}

.ll-reason,
.ll-service,
.ll-cta,
.ll-flow,
.ll-support,
.ll-achieve,
.ll-faq-wrap,
.ll-news,
.ll-trust,
.ll-closing,
.ll-info {
	padding-top: 64px !important;
	padding-bottom: 64px !important;
}

.ll-reason p,
.ll-service p,
.ll-cta p,
.ll-flow p,
.ll-support p,
.ll-achieve p,
.ll-faq-wrap p,
.ll-news p,
.ll-trust p,
.ll-closing p,
.ll-info td,
.ll-info th {
	font-size: 1.08rem;
	line-height: 2;
}

.ll-section .wp-block-heading {
	line-height: 1.5;
}

.ll-bg-pale,
.ll-service,
.ll-support,
.ll-trust {
	background: var(--ll-pale) !important;
}

/* 英字ラベルはゴシック */
.ll-eyebrow,
.ll-label,
.ll-tag,
.ll-index,
.ll-impact-label,
.ll-step-num,
.ll-message-label {
	font-family: var(--ll-gothic);
}

/* セクション上部の英字 */
.ll-eyebrow,
.ll-impact-label {
	margin: 0 0 12px !important;
	color: var(--ll-blue) !important;
	font-size: 0.82rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.24em !important;
	text-align: center;
}

/* セクション見出し（グレー下線マーカー） */
.ll-title,
.ll-achieve > h2,
.ll-info > h2 {
	width: fit-content;
	max-width: 100%;
	margin: 0 auto 42px !important;
	padding: 0 12px 5px;
	background: linear-gradient(transparent 66%, #d9dce6 66%, #d9dce6 93%, transparent 93%);
	color: var(--ll-navy) !important;
	font-family: var(--ll-mincho) !important;
	font-size: 2.35rem !important;
	font-weight: 600 !important;
	line-height: 1.5 !important;
	letter-spacing: 0.02em;
	text-align: center;
}

.ll-title a,
.ll-achieve > h2 a,
.ll-info > h2 a {
	color: inherit;
	text-decoration: none;
}

/* 本文リンク */
.ll-reason a,
.ll-service a,
.ll-flow a,
.ll-support a,
.ll-achieve a,
.ll-faq-wrap a,
.ll-news a,
.ll-trust a,
.ll-closing a,
.ll-info a {
	color: var(--ll-blue);
}

/* オレンジボタン（コアボタン / Arkheボタン 共通） */
.ll-btn .wp-block-button__link,
.ll-impact-closing .ark-block-button__link,
.ll-closing .wp-block-button__link {
	min-width: 260px;
	padding: 16px 30px !important;
	border: 0 !important;
	border-radius: 7px !important;
	background: var(--ll-orange) !important;
	box-shadow: 0 7px 17px rgba(0, 0, 0, 0.14);
	color: #ffffff !important;
	font-family: var(--ll-gothic);
	font-size: 1rem;
	font-weight: 800;
	text-decoration: none;
}

/* =========================================================
   FV（SWELLフルワイドブロック / 追加CSSクラス: ll-fv）
========================================================= */

.ll-fv {
	color: #ffffff;
	font-family: var(--ll-mincho);
}

.ll-fv h2 {
	margin: 0 0 20px;
	color: #ffffff;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0.02em;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.28), 2px 2px 4px rgba(0, 0, 0, 0.8);
}

.ll-fv p {
	margin: 0;
	color: #ffffff;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.8;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3), 2px 2px 4px rgba(0, 0, 0, 0.8);
}

/* =========================================================
   PROBLEM
========================================================= */

.ll-impact-problem {
	background: #ffffff;
	color: var(--ll-navy);
}

.ll-impact-title {
	width: fit-content;
	max-width: 100%;
	margin: 0 auto 44px !important;
	padding: 0 14px 4px;
	background: linear-gradient(transparent 66%, #d9dce6 66%, #d9dce6 93%, transparent 93%);
	color: var(--ll-navy) !important;
	font-family: var(--ll-mincho) !important;
	font-size: 2.9rem !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.02em;
}

.ll-impact-list {
	margin-top: 0;
}

.ll-impact-item {
	position: relative;
	margin: 0;
	padding: 27px 8px 27px 82px;
	border-bottom: 1px solid var(--ll-line);
}

.ll-impact-item:first-child {
	border-top: 1px solid var(--ll-line);
}

.ll-impact-item::before {
	content: "✓";
	position: absolute;
	top: 50%;
	left: 12px;
	display: flex;
	width: 48px;
	height: 48px;
	align-items: center;
	justify-content: center;
	transform: translateY(-50%);
	border-radius: 50%;
	background: var(--ll-blue);
	color: #ffffff;
	font-family: Arial, sans-serif;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1;
}

.ll-impact-item p {
	margin: 0;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.18rem;
	line-height: 1.9;
	letter-spacing: 0.02em;
}

/* PROBLEM下のメッセージ */
.ll-impact-closing {
	background: var(--ll-pale);
	color: var(--ll-navy);
	text-align: center;
}

.ll-impact-if {
	margin: 0 !important;
	color: var(--ll-navy) !important;
	font-family: var(--ll-mincho) !important;
	font-size: 2.15rem !important;
	font-weight: 600 !important;
	line-height: 1.5 !important;
}

.ll-impact-arrows {
	margin: 10px 0 22px !important;
	color: var(--ll-blue);
	font-family: Arial, sans-serif;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.08em;
}

.ll-impact-message {
	max-width: 650px;
	margin: 0 auto 34px !important;
	padding: 0;
	background: none;
	color: var(--ll-blue);
	font-family: var(--ll-mincho);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.02em;
	text-align: left;
}

.ll-impact-highlight {
	background: linear-gradient(transparent 62%, var(--ll-yellow) 62%, var(--ll-yellow) 94%, transparent 94%);
}

/* =========================================================
   REASON
========================================================= */

.ll-reason {
	background: #ffffff;
}

.ll-reason-card {
	margin: 0 0 26px;
	padding: 30px 30px 30px 34px;
	background: #ffffff;
	border: 1px solid var(--ll-border);
	border-left: 6px solid var(--ll-blue);
	border-radius: 14px;
	box-shadow: 0 7px 22px rgba(20, 45, 75, 0.05);
}

.ll-reason-card:last-child {
	margin-bottom: 0;
}

.ll-reason-card .ll-index {
	margin: 0 0 2px;
	color: var(--ll-blue);
	font-size: 2.35rem;
	font-weight: 800;
	line-height: 1;
}

.ll-reason-card .ll-label {
	margin: 0 0 20px;
	color: #8d9aad;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.18em;
}

.ll-reason-card h3 {
	margin: 0 0 16px;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.65rem;
	font-weight: 700;
	line-height: 1.55;
}

.ll-reason-card p:last-child {
	margin-bottom: 0;
}

/* =========================================================
   SERVICE
========================================================= */

.ll-service .wp-block-columns {
	align-items: stretch;
	gap: 24px;
	margin-bottom: 24px;
}

.ll-service .wp-block-column {
	display: flex;
}

.ll-service-card {
	width: 100%;
	height: 100%;
	padding: 30px;
	background: #ffffff;
	border: 1px solid var(--ll-border);
	border-radius: 16px;
	box-shadow: 0 6px 20px rgba(20, 45, 75, 0.045);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.ll-service-card:hover {
	box-shadow: 0 8px 24px rgba(31, 43, 58, 0.12);
	transform: translateY(-2px);
}

.ll-service-card-wide {
	border-left: 6px solid var(--ll-blue);
}

.ll-service-card .ll-tag {
	margin: 0 0 18px;
	color: var(--ll-blue);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.ll-service-card h3 {
	margin: 0 0 16px;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.55rem;
	font-weight: 700;
	line-height: 1.55;
}

.ll-service-card h3 a {
	color: var(--ll-navy);
	text-decoration: none;
}

.ll-service-card .ll-more {
	margin-top: 22px;
	margin-bottom: 0;
	font-family: var(--ll-gothic);
	font-size: 0.95rem;
	font-weight: 700;
}

.ll-service-card .ll-more a {
	text-decoration: none;
}

.ll-more a:hover {
	text-decoration: underline;
}

/* =========================================================
   CTA
========================================================= */

.ll-cta {
	background: var(--ll-pale);
	text-align: center;
}

/* 見出し：黄色マーカーを各行に追従させる（インライン＋clone） */
.ll-cta > h3 {
	display: inline !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 0.14em 0.08em !important;
	background: linear-gradient(transparent 62%, var(--ll-yellow) 62%, var(--ll-yellow) 94%, transparent 94%) !important;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	color: var(--ll-blue) !important;
	font-family: var(--ll-mincho) !important;
	font-size: 2.1rem !important;
	font-weight: 700 !important;
	line-height: 1.75 !important;
}

.ll-cta > h3 + p {
	margin-top: 34px !important;
}

.ll-cta > p {
	max-width: 640px;
	margin-right: auto;
	margin-left: auto;
	color: var(--ll-navy);
}

/* スマホ専用改行（PCでは非表示） */
.ll-sp-only {
	display: none;
}

/* =========================================================
   FLOW
========================================================= */

.ll-flow {
	background: #ffffff;
}

.ll-step {
	position: relative;
	gap: 24px;
	margin: 0 0 28px !important;
	padding: 28px;
	background: var(--ll-pale-2);
	border: 1px solid var(--ll-border);
	border-radius: 16px;
}

.ll-step:last-child {
	margin-bottom: 0 !important;
}

/* STEP番号：青い丸の中央に数字、上に小さく「STEP」 */
.ll-step-num {
	position: relative;
	display: flex !important;
	width: 96px;
	height: 96px;
	margin: 0 auto !important;
	padding: 0 !important;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #338df4;
	color: #ffffff !important;
	font-family: Arial, sans-serif !important;
	font-size: 2.25rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	box-sizing: border-box;
	overflow: visible;
}

.ll-step-num small {
	position: absolute;
	top: -26px;
	left: 50%;
	display: block !important;
	margin: 0 !important;
	transform: translateX(-50%);
	color: #8b99aa !important;
	font-family: Arial, sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0.16em;
	white-space: nowrap;
}

.ll-step h3 {
	margin-top: 0;
	margin-bottom: 10px;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.55rem;
	font-weight: 700;
}

.ll-step .wp-block-image {
	margin-top: 22px;
	margin-bottom: 0;
}

.ll-step .wp-block-image img {
	width: 100%;
	max-height: 330px;
	object-fit: cover;
	border-radius: 12px;
}

/* =========================================================
   SUPPORT
========================================================= */

.ll-support > p.has-text-align-left {
	max-width: 680px;
	margin-right: auto;
	margin-bottom: 28px;
	margin-left: auto;
}

.ll-support .ark-block-blog-card,
.ll-trust .ark-block-blog-card,
.ll-achieve .ark-block-blog-card {
	margin-top: 18px;
	border-radius: 12px;
	overflow: hidden;
}

/* =========================================================
   ACHIEVEMENTS
========================================================= */

.ll-achieve {
	background: #ffffff;
}

.ll-achieve > p:first-child {
	margin-bottom: 12px !important;
	font-family: var(--ll-gothic);
}

.ll-achieve > .wp-block-columns {
	align-items: stretch !important;
	gap: 18px;
	margin-bottom: 18px !important;
}

.ll-achieve > .wp-block-columns:last-child {
	margin-bottom: 0 !important;
}

.ll-achieve > .wp-block-columns > .wp-block-column {
	display: flex !important;
	align-self: stretch;
}

.ll-achieve .wp-block-column > .wp-block-group.ll-achieve-card.has-background {
	display: flex !important;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	flex: 1 1 auto !important;
	flex-direction: column;
	align-items: stretch !important;
	justify-content: flex-start !important;
	box-sizing: border-box;
	background: #eef4fc !important;
	border: 1px solid var(--ll-border);
	border-left: 5px solid var(--ll-blue);
	border-radius: 14px !important;
}

.ll-achieve .ll-achieve-card > p:first-child {
	margin-top: 0;
	margin-bottom: 20px;
	color: var(--ll-blue) !important;
	font-family: var(--ll-gothic);
	text-align: center;
}

.ll-achieve .ll-achieve-card > p:nth-child(2) {
	margin-bottom: 22px;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	text-align: center;
}

/* 枠内のブログカード */
.ll-achieve .ll-achieve-card .ark-block-blog-card,
.ll-achieve .ll-achieve-card .wp-block-arkhe-blocks-blog-card {
	position: static !important;
	width: 100% !important;
	margin: auto 0 0 !important;
	transform: none !important;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 5px 16px rgba(20, 45, 75, 0.08);
}

.ll-achieve .ll-achieve-card .ark-block-blog-card,
.ll-achieve .ll-achieve-card .ark-block-blog-card p,
.ll-achieve .ll-achieve-card .ark-block-blog-card a {
	font-family: var(--ll-gothic);
}

/* 行政書士の実績（大カード） */
.ll-main-achievement {
	position: relative;
	z-index: 1;
	clear: both;
	box-sizing: border-box;
}

.ll-main-achievement-card {
	width: 100%;
	box-sizing: border-box;
	background: #eef4fc !important;
	border: 1px solid var(--ll-border);
	border-left: 6px solid var(--ll-blue);
	border-radius: 14px !important;
	box-shadow: 0 6px 18px rgba(20, 45, 75, 0.05);
}

.ll-main-achievement-heading {
	margin: 0 0 28px !important;
	color: var(--ll-blue);
	font-family: var(--ll-gothic) !important;
	font-size: 2.35rem !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	text-align: center;
}

.ll-main-achievement-heading a {
	color: var(--ll-blue) !important;
	font-family: inherit !important;
	font-weight: inherit !important;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 6px;
}

.ll-main-achievement-card > .ark-block-blog-card,
.ll-main-achievement-card > .wp-block-arkhe-blocks-blog-card {
	position: static !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	transform: none !important;
	box-sizing: border-box;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 5px 16px rgba(20, 45, 75, 0.1);
}

.ll-main-achievement-card .ark-block-blog-card,
.ll-main-achievement-card .ark-block-blog-card p,
.ll-main-achievement-card .ark-block-blog-card a {
	font-family: var(--ll-gothic) !important;
}

/* =========================================================
   FAQ
========================================================= */

.ll-faq-wrap {
	background: #ffffff;
}

.ll-faq {
	margin: 0 0 16px;
	background: #ffffff;
	border: 1px solid var(--ll-border);
	border-left: 5px solid var(--ll-blue);
	border-radius: 12px;
	overflow: hidden;
}

.ll-faq summary {
	position: relative;
	padding: 20px 52px 20px 22px;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.14rem;
	font-weight: 700;
	line-height: 1.7;
	cursor: pointer;
	list-style: none;
}

.ll-faq summary::-webkit-details-marker {
	display: none;
}

.ll-faq summary::after {
	content: "＋";
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	color: var(--ll-blue);
	font-family: var(--ll-gothic);
	font-size: 1.5rem;
	font-weight: 700;
}

.ll-faq[open] summary::after {
	content: "－";
}

.ll-faq > p {
	margin: 0;
	padding: 0 22px 20px;
}

/* =========================================================
   NEWS（SWELL投稿リストブロック）
========================================================= */

.ll-news {
	background: #ffffff;
}

.ll-news .p-postList {
	padding: 8px 0;
	border-top: 1px solid var(--ll-border);
	border-bottom: 1px solid var(--ll-border);
}

/* =========================================================
   MEDIA
========================================================= */

.ll-trust .ark-block-buttons {
	margin-top: 26px;
}

.ll-trust .ark-block-button__link {
	padding: 15px 28px;
	border-radius: 7px;
	font-family: var(--ll-gothic);
	font-weight: 800;
}

/* =========================================================
   MESSAGE（代表メッセージ / カラムブロック構成）
========================================================= */

.ll-closing {
	background: var(--ll-pale);
	border-radius: 18px;
}

.ll-closing-cols {
	margin: 0 !important;
}

.ll-closing .wp-block-image {
	margin: 0 !important;
}

.ll-closing .wp-block-image img {
	width: 100%;
	height: auto;
	border-radius: 14px;
}

.ll-closing .ll-label {
	margin: 0 0 12px !important;
	color: var(--ll-blue);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.2em;
}

.ll-closing h2 {
	margin: 0 0 20px !important;
	color: var(--ll-navy);
	font-family: var(--ll-mincho);
	font-size: 1.85rem;
	font-weight: 700;
	line-height: 1.55;
}

.ll-closing .ll-sign {
	margin: 6px 0 24px !important;
	color: var(--ll-navy);
	font-weight: 700;
}

@media screen and (max-width: 781px) {
	.ll-closing {
		border-radius: 14px;
	}

	.ll-closing-cols {
		flex-direction: column;
	}

	.ll-closing-cols > .wp-block-column {
		flex-basis: auto !important;
	}

	.ll-closing .wp-block-image {
		margin: 0 auto 8px !important;
		max-width: 260px;
	}

	.ll-closing .ll-label {
		text-align: center;
	}

	.ll-closing h2 {
		font-size: 1.55rem;
	}

	.ll-closing .wp-block-buttons {
		justify-content: center !important;
	}
}

/* =========================================================
   法人案内
========================================================= */

.ll-info {
	background: #ffffff;
}

.ll-info-table {
	margin: 0 0 28px;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 6px 20px rgba(20, 45, 75, 0.04);
}

.ll-info-table table {
	width: 100%;
	border-collapse: collapse;
}

.ll-info-table th,
.ll-info-table td {
	padding: 17px 18px;
	border: 1px solid var(--ll-border);
	vertical-align: top;
}

.ll-info-table th {
	width: 25%;
	background: var(--ll-pale);
	color: var(--ll-navy);
	font-weight: 700;
	text-align: left;
	white-space: nowrap;
}

.ll-info-table td {
	background: #ffffff;
	line-height: 1.8;
}

/* =========================================================
   スマートフォン
========================================================= */

@media screen and (max-width: 781px) {

	.ll-section {
		border-radius: 10px;
	}

	.ll-reason,
	.ll-service,
	.ll-cta,
	.ll-flow,
	.ll-support,
	.ll-achieve,
	.ll-faq-wrap,
	.ll-news,
	.ll-trust,
	.ll-closing,
	.ll-info {
		padding-top: 50px !important;
		padding-bottom: 50px !important;
	}

	.ll-title,
	.ll-achieve > h2,
	.ll-info > h2 {
		margin-bottom: 30px !important;
		padding-right: 4px;
		padding-left: 4px;
		font-size: 1.8rem !important;
		line-height: 1.55 !important;
	}

	.ll-reason p,
	.ll-service p,
	.ll-cta p,
	.ll-flow p,
	.ll-support p,
	.ll-achieve p,
	.ll-faq-wrap p,
	.ll-news p,
	.ll-trust p,
	.ll-closing p,
	.ll-info td,
	.ll-info th {
		font-size: 1rem;
		line-height: 1.9;
	}

	/* FV */
	.ll-fv h2 {
		font-size: 1.6rem;
	}

	.ll-fv p {
		font-size: 1.05rem;
	}

	/* PROBLEM */
	.ll-impact-problem {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.ll-impact-title {
		margin-bottom: 30px !important;
		padding-right: 5px;
		padding-left: 5px;
		font-size: 1.9rem !important;
		line-height: 1.5 !important;
	}

	.ll-impact-item {
		padding: 23px 0 23px 58px;
	}

	.ll-impact-item::before {
		left: 1px;
		width: 40px;
		height: 40px;
		font-size: 1.4rem;
	}

	.ll-impact-item p {
		font-size: 1.05rem;
		line-height: 1.85;
	}

	.ll-impact-closing {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.ll-impact-if {
		font-size: 1.55rem !important;
	}

	.ll-impact-arrows {
		margin-top: 8px !important;
		margin-bottom: 18px !important;
		font-size: 2.35rem;
	}

	.ll-impact-message {
		max-width: 100%;
		margin-bottom: 28px !important;
		font-size: 1.42rem;
		line-height: 1.85;
		text-align: left;
	}

	/* REASON */
	.ll-reason-card {
		padding: 25px 22px 25px 25px;
	}

	.ll-reason-card h3 {
		font-size: 1.38rem;
	}

	/* SERVICE */
	.ll-service .wp-block-columns {
		gap: 18px;
		margin-bottom: 18px;
	}

	.ll-service-card {
		padding: 25px 22px;
	}

	.ll-service-card h3 {
		font-size: 1.35rem;
	}

	/* CTA */
	.ll-cta {
		padding-top: 52px !important;
		padding-right: 18px !important;
		padding-bottom: 56px !important;
		padding-left: 18px !important;
	}

	/* 見出し全体のマーカーを解除し、行ごとに付け直す */
	.ll-cta > .ll-cta-heading {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto 28px !important;
		padding: 0 !important;
		background: none !important;
		font-size: clamp(1.12rem, 5vw, 1.22rem) !important;
		font-weight: 700 !important;
		line-height: 1.9 !important;
		letter-spacing: 0 !important;
		text-align: center !important;
	}

	.ll-cta-heading .ll-cta-line {
		display: inline-block;
		white-space: nowrap;
		padding: 0 0.08em 0.04em;
		background: linear-gradient(transparent 62%, var(--ll-yellow) 62%, var(--ll-yellow) 94%, transparent 94%);
	}

	.ll-sp-only {
		display: block;
	}

	.ll-cta-description {
		margin: 0 auto 30px !important;
		font-size: 1rem !important;
		line-height: 1.9 !important;
		letter-spacing: 0 !important;
		text-align: center !important;
	}

	.ll-cta .wp-block-buttons {
		margin-top: 0 !important;
	}

	/* FLOW */
	.ll-step {
		padding: 24px 20px;
	}

	.ll-step h3 {
		font-size: 1.35rem;
	}

	/* ACHIEVEMENTS */
	.ll-achieve > .wp-block-columns {
		gap: 18px;
		margin-bottom: 18px !important;
	}

	.ll-achieve .wp-block-column > .wp-block-group.ll-achieve-card.has-background {
		padding: 24px 16px 16px !important;
	}

	.ll-main-achievement {
		margin-top: 22px !important;
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	.ll-main-achievement-card {
		padding: 24px 16px 16px !important;
	}

	.ll-main-achievement-heading {
		margin-bottom: 22px !important;
		font-size: 1.75rem !important;
		line-height: 1.5 !important;
	}

	/* FAQ */
	.ll-faq summary {
		padding: 18px 48px 18px 18px;
		font-size: 1.04rem;
	}

	.ll-faq > p {
		padding-right: 18px;
		padding-left: 18px;
	}

	/* MESSAGE */
	.ll-closing {
		display: block !important;
		border-radius: 14px;
	}

	.ll-closing > .ll-label {
		margin-bottom: 18px;
		text-align: center;
	}

	.ll-closing > .wp-block-image {
		margin: 0 auto 28px !important;
		text-align: center;
	}

	.ll-closing > .wp-block-image img {
		width: 260px !important;
		max-width: 100%;
	}

	.ll-closing > h2 {
		margin-bottom: 18px !important;
		font-size: 1.55rem;
		text-align: left;
	}

	.ll-closing > .ll-sign {
		margin-bottom: 24px;
	}

	.ll-closing > .wp-block-buttons {
		justify-content: center !important;
	}

	/* 法人案内 */
	.ll-info-table th,
	.ll-info-table td {
		display: block;
		width: 100%;
	}

	.ll-info-table th {
		padding-bottom: 8px;
		border-bottom: 0;
		white-space: normal;
	}

	.ll-info-table td {
		padding-top: 8px;
	}
}

/* =========================================================================
   サイト共通（投稿記事・装飾）
   -------------------------------------------------------------------------
   旧追加CSS「00. サイト共通」から、SWELL移行後も必要なものだけを残したもの
   ・Easy Table of Contents 用の指定は、SWELL目次へ一本化したため削除
   ・.pc-only / .sp-only は LP用CSS「99」ブロックと重複するため削除
   ========================================================================= */

/* Snow Monkey Blocks：FAQ の Q / A マーク（プラグイン継続稼働のため） */
.smb-faq__item__question__label,
.smb-faq__item__answer__label {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	width: 40px;
	padding: 0 0 4px;
	border-radius: 50%;
	box-sizing: border-box;
	margin-right: 10px;
	flex: none;
}

/* ※ 本番（Snow Monkeyテーマ）ではQはアクセントカラー（青）で表示されていた */
.smb-faq__item__question__label {
	background-color: var(--accent-color);
	color: white;
}

.smb-faq__item__answer__label {
	background-color: #8ed1fc;
	color: white;
}

/* Snow Monkey Blocks：記事内カテゴリボタンの幅 */
.category-button .smb-btn {
	width: 250px;
}

/* 「私たちについて」アコーディオン（.about-accordion-section） */
.about-accordion-section .smb-accordion__item__title__label {
	font-size: 1.33rem !important;
	line-height: 1.5 !important;
}

.about-accordion-section .smb-accordion__item__body,
.about-accordion-section .smb-accordion__item__body p,
.about-accordion-section .smb-accordion__item__body a,
.about-accordion-section .smb-step__item__summary,
.about-accordion-section .smb-step__item__summary p,
.about-accordion-section .smb-step__item__summary a {
	font-size: 1.14rem !important;
	line-height: 1.65 !important;
}

.about-accordion-section .smb-accordion__item__body p {
	margin-top: 0 !important;
	margin-bottom: 0.6em !important;
}

.about-accordion-section .wp-block-columns {
	margin-top: 0.8rem !important;
	margin-bottom: 0 !important;
}

.about-accordion-section .smb-accordion__item {
	margin-bottom: 1rem !important;
}

/* サイトマップページ（WP Sitemap Page） */
.wsp-category-title {
	font-size: 0;
}

.wsp-category-title a {
	font-size: 20px;
}

.wsp-posts-title:not(:first-of-type) {
	margin-top: 20px;
}

/* スマホの見出しサイズ（投稿記事のみ）
   ※ 旧サイトでは全ページに効いていたが、SWELLで作り直した固定ページの
     見出しまで小さくなるため、投稿記事（.single）に限定 */
@media screen and (max-width: 768px) {
	.single .post_content h1.wp-block-heading,
	.single .post_content h2.wp-block-heading,
	.single .post_content h3.wp-block-heading {
		font-size: 20px;
	}

	.single .custom-heading-sm h1 {
		font-size: 24px;
	}

	.single .custom-heading-sm h2 {
		font-size: 20px;
	}

	.single .custom-h1 {
		font-size: 24px !important;
	}
}

/* =========================================================
   お問い合わせフォーム（Contact Form 7）共通
   ---------------------------------------------------------
   ・お問い合わせページ／LP内フォームの両方に効く共通デザイン
   ・LP用CSSより「前」に置く
     → 運行管理LPなどの独自フォーム指定が後から上書きできるように
   ・.ll-req / .ll-note / .ll-form-confirm はフォームテンプレート側で
     付与した場合のみ有効（現状は未使用）
========================================================= */

.wpcf7 {
	max-width: 760px;
	margin: 0 auto;
	padding: 40px 44px;
	background: #ffffff;
	border: 1px solid var(--ll-border);
	border-top: 5px solid var(--ll-blue);
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(20, 45, 75, 0.06);
	color: var(--ll-text);
	font-family: var(--ll-gothic);
}

.wpcf7 form > p {
	margin: 0 0 24px;
}

.wpcf7 label {
	display: block;
	color: var(--ll-navy);
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.6;
}

.wpcf7 .wpcf7-form-control-wrap {
	display: block;
	margin-top: 8px;
}

.wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], textarea, select) {
	width: 100%;
	padding: 13px 15px;
	background: #f8fafd;
	border: 1px solid #cdd8e4;
	border-radius: 6px;
	box-shadow: none;
	color: var(--ll-text);
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.6;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.wpcf7 textarea {
	min-height: 200px;
	resize: vertical;
}

.wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], textarea, select):focus {
	background: #ffffff;
	border-color: var(--ll-blue);
	box-shadow: 0 0 0 3px rgba(8, 116, 209, 0.15);
	outline: none;
}

.wpcf7 .wpcf7-not-valid {
	background: #fff6f6 !important;
	border-color: #d63638 !important;
}

.wpcf7 .wpcf7-not-valid-tip {
	margin-top: 6px;
	color: #d63638;
	font-size: 0.85rem;
	font-weight: 700;
}

.wpcf7 .ll-req {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 8px;
	border-radius: 3px;
	background: #d63638;
	color: #ffffff;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1.7;
	vertical-align: 2px;
}

.wpcf7 .ll-note {
	display: block;
	margin-top: 2px;
	color: #5a6b80;
	font-size: 0.82rem;
	font-weight: 400;
}

.wpcf7 .ll-form-confirm {
	margin: 32px 0 20px;
	padding: 20px 22px;
	background: var(--ll-pale);
	border-radius: 10px;
	text-align: center;
}

.wpcf7 .ll-form-confirm p {
	margin: 0 0 10px;
	font-size: 0.9rem;
	line-height: 1.8;
}

.wpcf7 .ll-form-confirm p:last-child {
	margin-bottom: 0;
}

.wpcf7 .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}

.wpcf7 .wpcf7-acceptance label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
}

.wpcf7 input[type="checkbox"] {
	width: 20px;
	height: 20px;
	margin: 0;
	accent-color: var(--ll-blue);
	cursor: pointer;
}

.wpcf7 .cf7-cf-turnstile {
	display: flex;
	justify-content: center;
	margin: 8px 0 0 !important;
}

.wpcf7 .cf-turnstile-br {
	display: none;
}

.wpcf7 input[type="submit"] {
	display: block;
	width: 100%;
	max-width: 320px;
	margin: 20px auto 0;
	padding: 16px 30px;
	border: 0;
	border-radius: 7px;
	background: var(--ll-orange);
	box-shadow: 0 7px 17px rgba(0, 0, 0, 0.14);
	color: #ffffff;
	font-family: inherit;
	font-size: 1.05rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	cursor: pointer;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.wpcf7 input[type="submit"]:hover {
	opacity: 0.9;
	transform: translateY(-1px);
}

.wpcf7 input[type="submit"]:disabled {
	background: #b9c3cf;
	box-shadow: none;
	cursor: not-allowed;
	opacity: 1;
	transform: none;
}

.wpcf7 .wpcf7-spinner {
	display: block;
	margin: 10px auto 0;
}

.wpcf7 form .wpcf7-response-output {
	margin: 24px 0 0;
	padding: 14px 18px;
	border-radius: 8px;
	font-size: 0.92rem;
	text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output {
	background: #f3fbf4;
	border-color: #46b450;
	color: #1e6b2a;
}

.wpcf7 form:is(.invalid, .unaccepted, .failed, .spam, .aborted) .wpcf7-response-output {
	background: #fff6f6;
	border-color: #d63638;
	color: #a1181a;
}

@media screen and (max-width: 781px) {

	.wpcf7 {
		padding: 26px 18px;
		border-radius: 12px;
	}

	.wpcf7 form > p {
		margin-bottom: 20px;
	}

	.wpcf7 .ll-form-confirm {
		padding: 18px 14px;
		text-align: left;
	}

	.wpcf7 input[type="submit"] {
		max-width: 100%;
	}
}


/* =========================================================================
   logisticslegal.jp LP用CSS（SWELL子テーマ）
   -------------------------------------------------------------------------
   旧追加CSS（統合版V4）から LP 関連ブロックのみを抽出
     01. .snow-easier-lp / .smlp-   … 汎用LPテンプレート（EASIER風）
     03. .ums-lp                    … 運行管理体制サポート
     05〜99. 広告LP共通補助・ダンプLP互換
   ※ 旧運行管理LP（.ums-support-lp）と大阪・一般貨物LP（oslp-）は
      使用している公開記事が無いため削除（2026-10-03、控えは別ファイル）
   ※ Snow Monkey 専用の指定（.c-entry__header 等）は削除。SWELL側の
      投稿パーツ非表示・余白調整はカスタマイザーの追加CSSで管理
   ========================================================================= */


/* =========================================================================
   01. LP（.snow-easier-lp / .smlp-）
   ------------------------------------------------------------------------
   TOPページと同じ明朝体・濃紺・青・薄いグレー・黄色マーカーを基調に
   easier風へ統一したLP専用CSSです。
   LP内の文章・画像・リンク先には影響せず、外観のみを調整します。
   ========================================================================= */

/* =========================================================
   logisticslegal.jp LP
   easier風・全体統一CSS
   対象：.snow-easier-lp 内のみ
========================================================= */

.snow-easier-lp {
	--smlp-navy: #071b55;
	--smlp-blue: #0874d1;
	--smlp-blue-light: #3d8ff0;
	--smlp-pale: #eef1f7;
	--smlp-pale-2: #f6f8fb;
	--smlp-line: #193369;
	--smlp-border: #d8e1eb;
	--smlp-yellow: #fffbc7;
	--smlp-orange: #ff9f2f;
	--smlp-text: #14243a;
	--smlp-mincho: "Yu Mincho", "Hiragino Mincho ProN",
		"Hiragino Mincho Pro", "Noto Serif JP", serif;
	--smlp-gothic: -apple-system, BlinkMacSystemFont, "Helvetica Neue",
		"Yu Gothic", "Hiragino Kaku Gothic ProN", Arial, sans-serif;

	color: var(--smlp-text);
	font-family: var(--smlp-mincho);
	font-size: 1.06rem;
	line-height: 1.95;
}

.snow-easier-lp,
.snow-easier-lp * {
	box-sizing: border-box;
}

.snow-easier-lp .smlp-section {
	padding-top: 86px;
	padding-right: 28px;
	padding-bottom: 86px;
	padding-left: 28px;
}

.snow-easier-lp .smlp-section--pale {
	background: var(--smlp-pale);
}

.snow-easier-lp .smlp-section--blue {
	background: var(--smlp-pale);
	color: var(--smlp-text);
}

.snow-easier-lp .smlp-eyebrow {
	margin: 0 0 12px;
	color: var(--smlp-blue);
	font-family: var(--smlp-gothic);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.24em;
	line-height: 1.3;
}

.snow-easier-lp .smlp-section-title {
	width: fit-content;
	max-width: 100%;
	margin: 0 auto 46px;
	padding: 0 12px 5px;
	background: linear-gradient(
		transparent 66%,
		#d9dce6 66%,
		#d9dce6 93%,
		transparent 93%
	);
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 2.55rem;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.02em;
	text-align: center;
}

.snow-easier-lp .smlp-lead {
	max-width: 760px;
	margin: -12px auto 42px;
	color: var(--smlp-navy);
	font-size: 1.08rem;
	line-height: 2;
}

.snow-easier-lp a {
	color: var(--smlp-blue);
}

.snow-easier-lp .ark-block-button__link {
	min-width: 260px;
	padding: 17px 32px;
	border-radius: 7px;
	background: var(--smlp-orange) !important;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
	color: #fff !important;
	font-family: var(--smlp-gothic);
	font-size: 1rem;
	font-weight: 800;
	text-decoration: none;
}

/* =========================================================
   HERO
========================================================= */

.snow-easier-lp .smlp-hero {
	padding: 72px 30px 76px;
	background: #fff;
}

.snow-easier-lp .smlp-hero-columns {
	gap: 48px;
	margin: 0 auto;
}

.snow-easier-lp .smlp-kicker {
	margin: 0 0 22px;
	color: var(--smlp-blue);
	font-family: var(--smlp-gothic);
	font-size: 0.92rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.snow-easier-lp .smlp-hero-title {
	margin: 0 0 28px;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: clamp(1.9rem, 2.2vw, 2.1rem);
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: 0.01em;
	overflow-wrap: anywhere;
}

/* Gutenbergの「ハイライト」で指定した色をそのまま使う。
   background / color を !important で上書きしない。 */
.snow-easier-lp .smlp-hero-text {
	margin: 0 0 30px;
	color: var(--smlp-navy);
	font-size: 1.12rem;
	line-height: 1.95;
}

.snow-easier-lp .smlp-hero-copy .ark-block-buttons {
	justify-content: flex-start;
}

.snow-easier-lp .smlp-hero-visual .wp-block-image {
	margin: 0;
}

.snow-easier-lp .smlp-hero-visual img {
	width: 100%;
	border-radius: 18px;
	box-shadow: 0 16px 40px rgba(20, 45, 75, 0.12);
}

/* =========================================================
   PROBLEM
========================================================= */

.snow-easier-lp .smlp-section--pale:has(.smlp-problem-grid) {
	background: #fff;
}

.snow-easier-lp .smlp-problem-grid {
	display: block;
	max-width: 920px;
	margin: 0 auto;
}

.snow-easier-lp .smlp-problem-card {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 28px 12px 28px 84px;
	border-top: 1px solid var(--smlp-line);
	background: transparent;
}

.snow-easier-lp .smlp-problem-card:last-child {
	border-bottom: 1px solid var(--smlp-line);
}

.snow-easier-lp .smlp-problem-card::before {
	content: "✓";
	position: absolute;
	top: 50%;
	left: 14px;
	display: flex;
	width: 50px;
	height: 50px;
	align-items: center;
	justify-content: center;
	transform: translateY(-50%);
	border-radius: 50%;
	background: var(--smlp-blue);
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
}

.snow-easier-lp .smlp-number {
	display: none;
}

.snow-easier-lp .smlp-problem-text {
	margin: 0;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 1.24rem;
	line-height: 1.9;
}

/* =========================================================
   PROBLEM下メッセージ
========================================================= */

.snow-easier-lp .smlp-message-section {
	padding-top: 72px;
	padding-bottom: 78px;
	background: var(--smlp-pale);
}

.snow-easier-lp .smlp-message-card {
	padding: 0;
	background: transparent;
	text-align: center;
}

.snow-easier-lp .smlp-message-small {
	margin: 0;
	color: var(--smlp-navy);
	font-size: 2.05rem;
	font-weight: 600;
	line-height: 1.5;
}

.snow-easier-lp .smlp-message-small::after {
	content: "⌄　⌄　⌄";
	display: block;
	margin: 12px 0 18px;
	color: var(--smlp-blue);
	font-family: Arial, sans-serif;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.08em;
}

.snow-easier-lp .smlp-message-title {
	display: inline;
	margin: 0;
	padding: 0 0.12em 0.08em;
	background: linear-gradient(
		transparent 63%,
		var(--smlp-yellow) 63%,
		var(--smlp-yellow) 94%,
		transparent 94%
	);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	color: var(--smlp-blue);
	font-family: var(--smlp-mincho);
	font-size: 2.15rem;
	font-weight: 700;
	line-height: 1.8;
}

/* =========================================================
   REASON
========================================================= */

.snow-easier-lp .smlp-feature-list {
	max-width: 1080px;
}

.snow-easier-lp .smlp-feature {
	gap: 0;
	margin: 0 0 34px;
	padding: 0;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--smlp-border);
	border-radius: 18px;
	box-shadow: 0 8px 25px rgba(20, 45, 75, 0.055);
}

.snow-easier-lp .smlp-feature:last-child {
	margin-bottom: 0;
}

.snow-easier-lp .smlp-feature--reverse {
	flex-direction: row-reverse;
}

.snow-easier-lp .smlp-feature .wp-block-image {
	height: 100%;
	margin: 0;
}

.snow-easier-lp .smlp-feature .wp-block-image img {
	width: 100%;
	height: 100%;
	min-height: 390px;
	object-fit: cover;
}

.snow-easier-lp .smlp-feature-copy {
	padding: 42px 42px 42px 44px;
	border-left: 6px solid var(--smlp-blue);
}

.snow-easier-lp .smlp-feature--reverse .smlp-feature-copy {
	border-right: 6px solid var(--smlp-blue);
	border-left: 0;
}

.snow-easier-lp .smlp-feature-index {
	margin: 0 0 4px;
	color: var(--smlp-blue);
	font-family: var(--smlp-gothic);
	font-size: 2.55rem;
	font-weight: 800;
	line-height: 1;
}

.snow-easier-lp .smlp-feature-label {
	margin: 0 0 22px;
	color: #8d9aad;
	font-family: var(--smlp-gothic);
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.18em;
}

.snow-easier-lp .smlp-feature-title {
	margin: 0 0 18px;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 1.82rem;
	font-weight: 700;
	line-height: 1.55;
}

.snow-easier-lp .smlp-feature-text {
	margin: 0;
	font-size: 1.06rem;
	line-height: 2;
}

/* =========================================================
   SERVICE
========================================================= */

.snow-easier-lp .smlp-service-grid {
	align-items: stretch;
	gap: 26px;
	margin-bottom: 26px;
}

.snow-easier-lp .smlp-service-grid:last-child {
	margin-bottom: 0;
}

.snow-easier-lp .smlp-service-grid > .wp-block-column {
	display: flex;
}

.snow-easier-lp .smlp-service-card {
	display: flex;
	width: 100%;
	min-height: 100%;
	flex-direction: column;
	overflow: hidden;
	background: var(--smlp-pale-2);
	border: 1px solid var(--smlp-border);
	border-left: 6px solid var(--smlp-blue);
	border-radius: 16px;
	box-shadow: 0 7px 22px rgba(20, 45, 75, 0.05);
}

.snow-easier-lp .smlp-service-body {
	flex: 1 1 auto;
	padding: 32px 32px 26px;
}

.snow-easier-lp .smlp-service-tag {
	margin: 0 0 18px;
	color: var(--smlp-blue);
	font-family: var(--smlp-gothic);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.snow-easier-lp .smlp-service-title {
	margin: 0 0 16px;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 1.62rem;
	font-weight: 700;
	line-height: 1.55;
}

.snow-easier-lp .smlp-service-card .wp-block-image {
	margin: 0;
}

.snow-easier-lp .smlp-service-card .wp-block-image img {
	width: 100%;
	height: 285px;
	object-fit: cover;
}

.snow-easier-lp .smlp-service-grid--single {
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

.snow-easier-lp .smlp-service-grid--single .smlp-service-card {
	background: var(--smlp-pale);
}

.snow-easier-lp .smlp-service-grid--single .ark-block-buttons {
	justify-content: center;
	margin: 28px 0 34px;
}

.snow-easier-lp .smlp-more {
	margin: 22px 0 0;
	font-family: var(--smlp-gothic);
	font-size: 0.95rem;
	font-weight: 800;
}

/* =========================================================
   SUPPORT
========================================================= */

.snow-easier-lp .smlp-section--pale:has(.smlp-section-title + .smlp-lead) {
	text-align: center;
}

.snow-easier-lp .smlp-section--pale .ark-block-buttons {
	justify-content: center;
	margin-top: 30px;
}

.snow-easier-lp .smlp-section--pale .ark-block-buttons .ark-block-button__link {
	max-width: 760px;
	background: var(--smlp-blue) !important;
}

/* =========================================================
   ACHIEVEMENTS
========================================================= */

.snow-easier-lp .smlp-stat-grid {
	align-items: stretch;
	gap: 22px;
	margin-bottom: 22px;
}

.snow-easier-lp .smlp-stat-grid > .wp-block-column {
	display: flex;
}

.snow-easier-lp .smlp-stat-card {
	display: flex;
	width: 100%;
	min-height: 220px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 34px 24px;
	background: var(--smlp-pale);
	border: 1px solid var(--smlp-border);
	border-left: 6px solid var(--smlp-blue);
	border-radius: 15px;
	box-shadow: 0 7px 22px rgba(20, 45, 75, 0.05);
}

.snow-easier-lp .smlp-stat-num {
	margin: 0 0 24px;
	color: var(--smlp-blue);
	font-family: var(--smlp-gothic);
	font-size: 4rem;
	font-weight: 800;
	line-height: 1.05;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 7px;
}

.snow-easier-lp .smlp-stat-unit {
	margin-left: 4px;
	font-size: 1rem;
}

.snow-easier-lp .smlp-stat-num--text {
	font-size: 2.55rem;
}

.snow-easier-lp .smlp-stat-label {
	margin: 0;
	color: var(--smlp-navy);
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.8;
}

.snow-easier-lp .smlp-stat-card--wide {
	max-width: 100%;
	min-height: 0;
	margin: 30px auto 0;
	padding: 30px;
}

.snow-easier-lp .smlp-stat-card--wide .smlp-stat-num {
	margin-bottom: 28px;
}

.snow-easier-lp .smlp-stat-card--wide > .ark-block-blog-card,
.snow-easier-lp .smlp-stat-card--wide > .wp-block-arkhe-blocks-blog-card {
	position: static !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	transform: none !important;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 5px 16px rgba(20, 45, 75, 0.1);
}

/* ブログカード内部はゴシック体 */
.snow-easier-lp .ark-block-blog-card,
.snow-easier-lp .ark-block-blog-card *,
.snow-easier-lp .wp-block-arkhe-blocks-blog-card,
.snow-easier-lp .wp-block-arkhe-blocks-blog-card * {
	font-family: var(--smlp-gothic);
}

/* =========================================================
   CLOSING MESSAGE
========================================================= */

.snow-easier-lp .smlp-closing-section {
	background: var(--smlp-pale);
}

.snow-easier-lp .smlp-closing {
	gap: 42px;
	padding: 42px;
	background: #fff;
	border: 1px solid var(--smlp-border);
	border-radius: 18px;
	box-shadow: 0 8px 25px rgba(20, 45, 75, 0.055);
}

.snow-easier-lp .smlp-closing .wp-block-image {
	margin: 0;
}

.snow-easier-lp .smlp-closing .wp-block-image img {
	width: 100%;
	border-radius: 14px;
}

.snow-easier-lp .smlp-closing-copy {
	padding-left: 8px;
}

.snow-easier-lp .smlp-closing-title {
	margin: 0 0 22px;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.55;
}

.snow-easier-lp .smlp-closing-text {
	margin: 0 0 20px;
	line-height: 2;
}

.snow-easier-lp .smlp-sign {
	margin: 0 0 26px;
	color: var(--smlp-navy);
	font-weight: 700;
}

.snow-easier-lp .smlp-closing-copy .ark-block-buttons {
	justify-content: flex-start;
}

/* =========================================================
   COMPANY / CONTACT
========================================================= */

.snow-easier-lp .smlp-info-table {
	margin: 0 0 28px;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 6px 20px rgba(20, 45, 75, 0.04);
}

.snow-easier-lp .smlp-info-table table {
	width: 100%;
	border-collapse: collapse;
}

.snow-easier-lp .smlp-info-table th,
.snow-easier-lp .smlp-info-table td {
	padding: 17px 18px;
	border: 1px solid var(--smlp-border);
	vertical-align: top;
}

.snow-easier-lp .smlp-info-table th {
	width: 25%;
	background: var(--smlp-pale);
	color: var(--smlp-navy);
	font-weight: 700;
	text-align: left;
}

.snow-easier-lp .smlp-info-table td {
	background: #fff;
}


/* 代表プロフィール：法人案内の下にブログカードを表示 */
.snow-easier-lp .smlp-profile-card {
	margin-top: 36px;
}

.snow-easier-lp .smlp-profile-card .smlp-service-title {
	margin-bottom: 18px;
}

.snow-easier-lp .smlp-profile-card > .ark-block-blog-card,
.snow-easier-lp .smlp-profile-card > .wp-block-arkhe-blocks-blog-card {
	width: 100% !important;
	max-width: 820px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.snow-easier-lp #contact {
	scroll-margin-top: 110px;
}

.snow-easier-lp #contact + p {
	margin-top: 22px;
}

.snow-easier-lp .wpcf7 {
	margin-top: 28px;
	padding: 30px;
	background: var(--smlp-pale-2);
	border: 1px solid var(--smlp-border);
	border-radius: 15px;
}

.snow-easier-lp .wpcf7 input,
.snow-easier-lp .wpcf7 textarea,
.snow-easier-lp .wpcf7 select {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid #cdd8e4;
	border-radius: 6px;
	background: #fff;
	font-family: var(--smlp-gothic);
	font-size: 1rem;
}

.snow-easier-lp .wpcf7 input[type="submit"] {
	width: auto;
	min-width: 240px;
	padding: 15px 28px;
	border: 0;
	background: var(--smlp-orange);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
}

/* =========================================================
   TABLET / MOBILE
========================================================= */

@media screen and (max-width: 781px) {

	.snow-easier-lp {
		font-size: 1rem;
		line-height: 1.9;
	}

	.snow-easier-lp .smlp-section {
		padding: 58px 18px;
	}

	.snow-easier-lp .smlp-section-title {
		margin-bottom: 32px;
		padding-right: 4px;
		padding-left: 4px;
		font-size: 1.85rem;
		line-height: 1.55;
	}

	.snow-easier-lp .smlp-lead {
		margin-bottom: 30px;
		font-size: 1rem;
	}

	/* HERO */
	.snow-easier-lp .smlp-hero {
		padding: 46px 18px 52px;
	}

	.snow-easier-lp .smlp-hero-columns {
		gap: 30px;
	}

	.snow-easier-lp .smlp-hero-title {
		font-size: clamp(1.5rem, 6.2vw, 1.85rem);
		line-height: 1.55;
	}

	.snow-easier-lp .smlp-hero-copy .ark-block-buttons {
		justify-content: center;
	}

	/* PROBLEM */
	.snow-easier-lp .smlp-problem-card {
		padding: 23px 0 23px 58px;
	}

	.snow-easier-lp .smlp-problem-card::before {
		left: 1px;
		width: 40px;
		height: 40px;
		font-size: 1.4rem;
	}

	.snow-easier-lp .smlp-problem-text {
		font-size: 1.05rem;
		line-height: 1.85;
	}

	/* MESSAGE */
	.snow-easier-lp .smlp-message-section {
		padding-top: 56px;
		padding-bottom: 60px;
	}

	.snow-easier-lp .smlp-message-small {
		font-size: 1.55rem;
	}

	.snow-easier-lp .smlp-message-small::after {
		font-size: 2.3rem;
	}

	.snow-easier-lp .smlp-message-title {
		font-size: 1.52rem;
		line-height: 1.85;
	}

	/* REASON */
	.snow-easier-lp .smlp-feature,
	.snow-easier-lp .smlp-feature--reverse {
		display: block;
	}

	.snow-easier-lp .smlp-feature .wp-block-image img {
		min-height: 0;
		max-height: 300px;
	}

	.snow-easier-lp .smlp-feature-copy,
	.snow-easier-lp .smlp-feature--reverse .smlp-feature-copy {
		padding: 28px 24px 30px;
		border-top: 6px solid var(--smlp-blue);
		border-right: 0;
		border-left: 0;
	}

	.snow-easier-lp .smlp-feature-title {
		font-size: 1.48rem;
	}

	/* SERVICE */
	.snow-easier-lp .smlp-service-grid {
		gap: 18px;
		margin-bottom: 18px;
	}

	.snow-easier-lp .smlp-service-body {
		padding: 26px 22px 22px;
	}

	.snow-easier-lp .smlp-service-title {
		font-size: 1.4rem;
	}

	.snow-easier-lp .smlp-service-card .wp-block-image img {
		height: 230px;
	}

	/* SUPPORT BUTTON */
	.snow-easier-lp .smlp-section--pale .ark-block-buttons .ark-block-button__link {
		min-width: 0;
		width: 100%;
		padding-right: 18px;
		padding-left: 18px;
		font-size: 0.92rem;
		line-height: 1.6;
	}

	/* ACHIEVEMENTS */
	.snow-easier-lp .smlp-stat-grid {
		gap: 18px;
		margin-bottom: 18px;
	}

	.snow-easier-lp .smlp-stat-card {
		min-height: 170px;
		padding: 26px 18px;
	}

	.snow-easier-lp .smlp-stat-num {
		font-size: 3.15rem;
	}

	.snow-easier-lp .smlp-stat-num--text {
		font-size: 2rem;
	}

	.snow-easier-lp .smlp-stat-card--wide {
		margin-top: 22px;
		padding: 22px 16px 16px;
	}

	/* CLOSING */
	.snow-easier-lp .smlp-closing {
		display: block;
		padding: 22px;
	}

	.snow-easier-lp .smlp-closing .wp-block-image {
		margin-bottom: 28px;
		text-align: center;
	}

	.snow-easier-lp .smlp-closing .wp-block-image img {
		width: 280px;
		max-width: 100%;
	}

	.snow-easier-lp .smlp-closing-title {
		font-size: 1.58rem;
	}

	.snow-easier-lp .smlp-closing-copy .ark-block-buttons {
		justify-content: center;
	}

	/* COMPANY */
	.snow-easier-lp .smlp-info-table th,
	.snow-easier-lp .smlp-info-table td {
		display: block;
		width: 100%;
	}

	.snow-easier-lp .smlp-info-table th {
		padding-bottom: 8px;
		border-bottom: 0;
	}

	.snow-easier-lp .smlp-info-table td {
		padding-top: 8px;
	}

	.snow-easier-lp .wpcf7 {
		padding: 22px 16px;
	}
}


/* =========================================================================
   03. 運行管理体制サポート（.ums-lp / 旧デザイン踏襲・幅780px）
   ========================================================================= */

.ums-lp{
  --u-navy:#16345d;
  --u-blue:#2d78c4;
  --u-sky:#eaf8fb;
  --u-orange:#f4a43a;
  --u-line:#d9e5ec;
  --u-text:#26364a;
  color:var(--u-text);
}

.ums-lp,
.ums-lp *{ box-sizing:border-box; }

/* --- セクション：780px・交互の背景 --- */
.ums-lp .ums-section{
  position:relative;
  overflow:hidden;
  max-width:780px;
  margin:0 auto;
  padding:72px 28px;
  background:#ffffff;
}

.ums-lp .ums-pale{ background:var(--u-sky); }

/* --- 本文 --- */
.ums-lp p,
.ums-lp li{
  font-size:1.075rem;
  line-height:2;
}

/* --- 見出し（中央寄せ＋グラデーション下線） --- */
.ums-lp .ums-title{
  position:relative;
  z-index:1;
  margin:0 0 38px;
  padding:0 0 18px;
  color:var(--u-navy);
  font-size:1.85rem;
  line-height:1.45;
  letter-spacing:.02em;
}

.ums-lp .ums-title::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:72px;
  height:4px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--u-blue),#69cbd7);
  transform:translateX(-50%);
}

/* --- 小見出し --- */
.ums-lp .ums-subtitle{
  position:relative;
  z-index:1;
  margin:52px 0 18px;
  padding-left:18px;
  border-left:5px solid var(--u-blue);
  color:var(--u-navy);
  font-size:1.32rem;
  line-height:1.55;
}

/* --- 見出し上のラベル --- */
.ums-lp .ums-label{
  position:relative;
  z-index:1;
  display:inline-block;
  margin:0 0 18px;
  padding:8px 22px;
  border:1px solid #cfe3f5;
  border-radius:99px;
  background:#f2f8fc;
  color:var(--u-navy);
  font-weight:700;
  font-size:.95rem;
  line-height:1.5;
}

/* --- サービス背景の薄い数字（右上に配置） --- */
.ums-lp .ums-service::before{
  position:absolute;
  top:16px;
  right:24px;
  left:auto;
  color:rgba(45,120,196,.10);
  font-size:7rem;
  font-weight:800;
  line-height:1;
  pointer-events:none;
}

.ums-lp .ums-service--one::before{ content:"01"; }
.ums-lp .ums-service--two::before{ content:"02"; }
.ums-lp .ums-service--three::before{ content:"03"; }

.ums-lp .ums-service > *{ position:relative; z-index:1; }

/* --- 導入カード --- */
.ums-lp .ums-lead-card{
  margin:0 0 22px;
  padding:34px 32px;
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 16px 38px rgba(22,52,93,.10);
}

.ums-lp .ums-lead-title{
  margin:0 0 .8em;
  color:var(--u-navy);
  font-size:1.28rem;
  line-height:1.6;
}

.ums-lp .ums-lead-card p:last-child{ margin-bottom:0; }

/* --- 注意書き3種（角丸カード） --- */
.ums-lp .ums-alert,
.ums-lp .ums-warn,
.ums-lp .ums-remark{
  margin:22px 0;
  padding:26px 30px;
  border-radius:18px;
}

.ums-lp .ums-alert p:last-child,
.ums-lp .ums-warn p:last-child,
.ums-lp .ums-remark p:last-child{ margin-bottom:0; }

/* 案内・前提：薄い水色 */
.ums-lp .ums-alert{
  border:1px solid #cfe3f5;
  border-left:6px solid var(--u-blue);
  background:#f7fbff;
}

/* 注意：薄い黄色 */
.ums-lp .ums-warn{
  border:1px solid #f2d8ba;
  border-left:6px solid var(--u-orange);
  background:#fff8ee;
}

/* 補足 */
.ums-lp .ums-remark{
  border:1px solid #cfe3f5;
  border-left:6px solid #6aa9d9;
  background:#f2f8fc;
}

/* --- 赤字強調 --- */
.ums-lp .ums-red{ color:#d83b37; }

/* --- 料金カード --- */
.ums-lp .ums-price{
  margin:22px 0 28px;
  padding:26px 30px;
  border:1px solid #cfe3f5;
  border-left:6px solid var(--u-blue);
  border-radius:18px;
  background:#f7fbff;
}

.ums-lp .ums-price-main{
  margin:0 0 .4em;
  font-size:1.5rem;
  line-height:1.4;
}

.ums-lp .ums-price-note{
  margin:0;
  font-size:.85rem;
  line-height:1.8;
}

/* --- お悩みリスト（2列カード） --- */
.ums-lp .ums-problem-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:0 0 34px;
  padding:0;
  list-style:none;
}

.ums-lp .ums-problem-list li{
  position:relative;
  margin:0;
  padding:24px 22px 24px 56px;
  border:1px solid rgba(45,120,196,.15);
  border-radius:18px;
  background:#ffffff;
  box-shadow:0 9px 24px rgba(22,52,93,.07);
  font-size:1rem;
  line-height:1.8;
}

.ums-lp .ums-problem-list li::before{
  content:"✓";
  position:absolute;
  left:20px;
  top:24px;
  display:grid;
  width:26px;
  height:26px;
  place-items:center;
  border-radius:50%;
  background:var(--u-blue);
  color:#ffffff;
  font-size:.9rem;
  font-weight:700;
}

.ums-lp .ums-problem-list--single{
  grid-template-columns:1fr;
}

/* --- 6か月の流れ --- */
.ums-lp .ums-month{
  position:relative;
  margin:0 0 14px;
  padding:26px 30px 26px 38px;
  border:1px solid #cfe3f5;
  border-radius:18px;
  background:#f7fbff;
}

.ums-lp .ums-month::before{
  content:"";
  position:absolute;
  left:14px;
  top:28px;
  bottom:28px;
  width:4px;
  border-radius:99px;
  background:linear-gradient(var(--u-blue),#6ccbd7);
}

.ums-lp .ums-month-label{
  margin:0 0 .5em;
  color:var(--u-navy);
  font-size:1.28rem;
  line-height:1.4;
}

.ums-lp .ums-month p:last-child{ margin-bottom:0; }

/* --- FAQ（開いたまま表示） --- */
.ums-lp .ums-q{
  margin:28px 0 0;
  padding:20px 26px;
  border:1px solid #cfe3f5;
  border-left:6px solid #6aa9d9;
  border-radius:18px 18px 0 0;
  background:#f2f8fc;
  color:var(--u-navy);
  font-weight:700;
  line-height:1.6;
}

.ums-lp .ums-a{
  margin:0 0 6px;
  padding:22px 26px;
  border:1px solid #e3ecf3;
  border-top:0;
  border-radius:0 0 18px 18px;
  background:#ffffff;
}

.ums-lp .ums-q + .ums-a{ margin-top:0; }

.ums-lp .ums-a + .ums-a{
  margin-top:-6px;
  border-radius:0 0 18px 18px;
}

/* --- 締めのメッセージ --- */
.ums-lp .ums-postit{
  margin:32px 0;
  padding:34px 32px;
  border:2px solid var(--u-blue);
  border-radius:24px;
  background:#ffffff;
}

.ums-lp .ums-postit-title{
  margin:0 0 1em;
  color:var(--u-navy);
  font-size:1.28rem;
  line-height:1.6;
}

.ums-lp .ums-postit p:last-child{ margin-bottom:0; }

/* --- 注釈 --- */
.ums-lp .ums-note{
  margin:24px 0 0;
  font-size:.85rem;
  line-height:1.9;
  color:#65758a;
}

/* --- 法人案内テーブル --- */
.ums-lp .ums-info-table{ margin:24px 0; }

.ums-lp .ums-info-table table{
  overflow:hidden;
  border-radius:14px;
  background:#ffffff;
  box-shadow:0 8px 24px rgba(22,52,93,.07);
}

.ums-lp .ums-info-table th{
  white-space:nowrap;
  width:6em;
  padding:14px 16px;
  vertical-align:top;
  background:#e5f3fb;
  color:var(--u-navy);
  text-align:center;
  border-color:var(--u-line);
}

.ums-lp .ums-info-table td{
  padding:14px 16px;
  line-height:1.9;
  border-color:var(--u-line);
}

/* --- 画像 --- */
.ums-lp .ums-photo,
.ums-lp .ums-hero-img{
  overflow:hidden;
  border-radius:24px;
  box-shadow:0 14px 32px rgba(22,52,93,.12);
}

.ums-lp .ums-hero-img{ margin:0 0 36px; }

.ums-lp .ums-photo{ margin:32px 0; }

.ums-lp .ums-photo img,
.ums-lp .ums-hero-img img{ display:block; width:100%; }

/* --- ボタン --- */
.ums-lp .ums-cta{ margin:40px 0 24px; }

.ums-lp .ums-cta .ark-block-buttons{ justify-content:center; }

.ums-lp .ums-cta--sub .ark-block-buttons{ margin-bottom:14px; }

.ums-lp .ark-block-button__link{
  min-width:min(100%,420px);
  padding:18px 30px !important;
  border-radius:0 !important;
  background:linear-gradient(135deg,#f5a638,#f47c2b) !important;
  color:#ffffff !important;
  font-weight:700;
  box-shadow:0 4px 9px rgba(0,0,0,.18) !important;
}

.ums-lp .ark-block-button__link:hover{
  background:linear-gradient(135deg,#ed982e,#e96e21) !important;
}

.ums-lp .ark-block-button__link[href^="https://toritekihou.com"]{
  background:#df5555 !important;
}

.ums-lp .ark-block-button__link[href^="https://toritekihou.com"]:hover{
  background:#cc4545 !important;
}

.ums-lp .ark-block-button__link[href^="https://logisticslegal.jp"]{
  background:#1695d3 !important;
}

.ums-lp .ark-block-button__link[href^="https://logisticslegal.jp"]:hover{
  background:#087fbd !important;
}

/* --- フォーム --- */
.ums-lp .ums-form{
  margin-top:28px;
  padding:30px;
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 12px 32px rgba(22,52,93,.10);
}

/* --- スマホ --- */
@media (max-width:781px){
  .ums-lp .ums-section{ padding:52px 18px; }
  .ums-lp p,
  .ums-lp li{ font-size:1rem; line-height:1.9; }
  .ums-lp .ums-title{ font-size:1.5rem; margin-bottom:28px; }
  .ums-lp .ums-subtitle{ font-size:1.18rem; }
  .ums-lp .ums-problem-list{ grid-template-columns:1fr; }
  .ums-lp .ums-service::before{ top:12px; right:14px; left:auto; font-size:5rem; }
  .ums-lp .ums-lead-card,
  .ums-lp .ums-postit{ padding:24px 20px; border-radius:18px; }
  .ums-lp .ums-alert,
  .ums-lp .ums-warn,
  .ums-lp .ums-remark,
  .ums-lp .ums-price,
  .ums-lp .ums-month{ padding:22px 20px; border-radius:16px; }
  .ums-lp .ums-month{ padding-left:30px; }
  .ums-lp .ums-q,
  .ums-lp .ums-a{ padding:18px 20px; }
  .ums-lp .ums-price-main{ font-size:1.3rem; }
  .ums-lp .ums-info-table th{ width:auto; }
  .ums-lp .ums-photo,
  .ums-lp .ums-hero-img{ border-radius:16px; }
  .ums-lp .ark-block-button__link{ min-width:100%; padding:17px 20px !important; }
  .ums-lp .ums-form{ padding:20px 16px; }
}


/* =========================================================================
   05. 広告LP共通補助・ダンプLP安定化
   -------------------------------------------------------------------------
   ・PC/SP画像の二重表示を防止
   ・Gutenbergの蛍光ペン（mark）を上書きしない
   ・「こんなお悩みはありませんか？」「無料判定」等の見出しを維持
   ・dump-* は既存ダンプLP互換用。新規LPは smlp-* を優先
   ========================================================================= */

/* =========================================================
   05-2. LP見出し・キャッチの表示安定化
   ========================================================= */

/* 「こんなお悩みはありませんか？」等 */
.snow-easier-lp .smlp-section-title,
.snow-easier-lp h2.smlp-section-title,
.snow-easier-lp h3.smlp-section-title {
	width: fit-content;
	max-width: 100%;
	margin: 0 auto 46px;
	padding: 0 12px 5px;
	background: linear-gradient(
		transparent 66%,
		#d9dce6 66%,
		#d9dce6 93%,
		transparent 93%
	);
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 2.55rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.02em;
	text-align: center;
}

/* 「今のダンプの運び方で 緑ナンバーが必要か無料で判定します」等 */
.snow-easier-lp .smlp-message-title,
.snow-easier-lp h2.smlp-message-title,
.snow-easier-lp h3.smlp-message-title,
.snow-easier-lp .dump-catch {
	display: inline;
	margin: 0;
	padding: 0 0.12em 0.08em;
	background: linear-gradient(
		transparent 63%,
		var(--smlp-yellow) 63%,
		var(--smlp-yellow) 94%,
		transparent 94%
	);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	color: var(--smlp-blue);
	font-family: var(--smlp-mincho);
	font-size: 2.15rem;
	font-weight: 700;
	line-height: 1.8;
}

/* 見出しの親を中央寄せにする */
.snow-easier-lp .smlp-message-card {
	text-align: center;
}

/* 既存ダンプLP互換クラス */
.snow-easier-lp .dump-lead-title {
	margin: 0 0 24px;
	color: var(--smlp-navy);
	font-family: var(--smlp-mincho);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}


/* =========================================================
   05-3. FREE CHECK / FIRST CHECK
   本文は左寄せ、CTAは中央
   ========================================================= */

.snow-easier-lp .smlp-free-check .smlp-message-title,
.snow-easier-lp .dump-free-check .smlp-message-title {
	text-align: left !important;
}

.snow-easier-lp .smlp-free-check > p:not(.smlp-message-small),
.snow-easier-lp .dump-free-check > p:not(.smlp-message-small) {
	text-align: left !important;
}

.snow-easier-lp .smlp-free-check ul,
.snow-easier-lp .dump-free-check ul {
	max-width: 680px;
	margin: 24px 0 24px 1.5em;
	text-align: left !important;
}

.snow-easier-lp .smlp-free-check li,
.snow-easier-lp .dump-free-check li {
	margin-bottom: 12px;
	line-height: 1.8;
	text-align: left !important;
}

.snow-easier-lp .smlp-free-check .ark-block-buttons,
.snow-easier-lp .dump-free-check .ark-block-buttons {
	justify-content: center;
}


/* =========================================================
   05-4. HERO / PC・SP画像の切替
   WordPressカラムの切替点に合わせて 781px で統一
   ========================================================= */

/* PC：表示 */
.snow-easier-lp .smlp-hero-desktop-image,
.snow-easier-lp .dump-hero-desktop-image,
.snow-easier-lp .pc-only {
	display: block !important;
}

/* PC：スマホ画像は非表示 */
.snow-easier-lp .smlp-hero-mobile-image,
.snow-easier-lp .dump-hero-mobile-image,
.snow-easier-lp .sp-only {
	display: none !important;
}

@media screen and (max-width: 781px) {

	/* SP：PC画像は非表示 */
	.snow-easier-lp .smlp-hero-desktop-image,
	.snow-easier-lp .dump-hero-desktop-image,
	.snow-easier-lp .pc-only {
		display: none !important;
	}

	/* SP：スマホ画像だけ表示 */
	.snow-easier-lp .smlp-hero-mobile-image,
	.snow-easier-lp .dump-hero-mobile-image,
	.snow-easier-lp .sp-only {
		display: block !important;
	}

	.snow-easier-lp .smlp-hero-mobile-image,
	.snow-easier-lp .dump-hero-mobile-image {
		margin: 24px 0 28px;
	}

	.snow-easier-lp .smlp-hero-mobile-image img,
	.snow-easier-lp .dump-hero-mobile-image img,
	.snow-easier-lp .sp-only img {
		display: block;
		width: 100%;
		height: auto;
		border-radius: 18px;
	}
}


/* =========================================================
   05-5. 旧固定CTA
   ========================================================= */

.dump-sticky-cta {
	display: none !important;
}


/* =========================================================
   05-6. REASON / ABOUT
   画像＋文章の2カラム
   ========================================================= */

.snow-easier-lp .smlp-tight-two-col {
	width: 100%;
	max-width: 980px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	gap: 0 !important;
	column-gap: 0 !important;
}

.snow-easier-lp .smlp-tight-two-col > .wp-block-column {
	margin-left: 0 !important;
}

@media screen and (min-width: 782px) {

	.snow-easier-lp .smlp-tight-two-col > .wp-block-column:first-child {
		flex-basis: 42% !important;
	}

	.snow-easier-lp .smlp-tight-two-col > .wp-block-column:last-child {
		flex-basis: 58% !important;
	}

	.snow-easier-lp .smlp-tight-two-col .wp-block-image {
		height: 100%;
		margin: 0 !important;
	}

	.snow-easier-lp .smlp-tight-two-col .wp-block-image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover;
	}
}


/* =========================================================
   05-7. REQUIREMENTS / FULL SUPPORT 等
   ========================================================= */

.snow-easier-lp .smlp-centered-columns {
	width: 100%;
	max-width: 980px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.snow-easier-lp .smlp-centered-columns.wp-block-columns {
	gap: 28px !important;
}

.snow-easier-lp .smlp-centered-columns > .wp-block-column {
	margin-left: 0 !important;
}

.snow-easier-lp .smlp-full-support .smlp-service-tag,
.snow-easier-lp .smlp-full-support-common .smlp-service-tag,
.snow-easier-lp .dump-full-support .smlp-service-tag {
	text-align: center !important;
}

.snow-easier-lp .smlp-full-support ul,
.snow-easier-lp .smlp-full-support-common ul,
.snow-easier-lp .dump-full-support .smlp-service-body ul {
	width: fit-content;
	max-width: 100%;
	margin: 22px auto 0 !important;
	padding-left: 1.5em;
	text-align: left !important;
}

.snow-easier-lp .smlp-full-support li,
.snow-easier-lp .smlp-full-support-common li,
.snow-easier-lp .dump-full-support .smlp-service-body li {
	margin-bottom: 14px;
	line-height: 1.8;
	text-align: left !important;
}


/* =========================================================
   05-8. PRICE
   スマホでも比較表は2列を維持
   ========================================================= */

@media screen and (max-width: 781px) {

	.snow-easier-lp .smlp-price-section,
	.snow-easier-lp .dump-price-section {
		padding: 50px 16px 54px;
	}

	.snow-easier-lp .smlp-price-section > .smlp-section-title,
	.snow-easier-lp .dump-price-section > .smlp-section-title {
		margin-bottom: 26px !important;
		padding-right: 0;
		padding-left: 0;
		font-size: 1.45rem !important;
		line-height: 1.6 !important;
	}

	.snow-easier-lp .smlp-price-section > .smlp-lead,
	.snow-easier-lp .dump-price-section > .smlp-lead {
		margin-bottom: 24px !important;
		font-size: 1rem !important;
		line-height: 1.9 !important;
	}

	.snow-easier-lp .smlp-price-section .has-large-font-size,
	.snow-easier-lp .dump-price-section .has-large-font-size {
		font-size: 2.05rem !important;
		line-height: 1.35 !important;
		white-space: nowrap;
	}

	.snow-easier-lp .smlp-price-section .smlp-message-title,
	.snow-easier-lp .dump-price-section .smlp-message-title {
		font-size: 1.35rem !important;
		line-height: 1.75 !important;
	}

	.snow-easier-lp .smlp-price-table table,
	.snow-easier-lp .dump-price-table table {
		display: table !important;
		width: 100% !important;
		table-layout: fixed;
	}

	.snow-easier-lp .smlp-price-table thead,
	.snow-easier-lp .dump-price-table thead {
		display: table-header-group !important;
	}

	.snow-easier-lp .smlp-price-table tbody,
	.snow-easier-lp .dump-price-table tbody {
		display: table-row-group !important;
	}

	.snow-easier-lp .smlp-price-table tr,
	.snow-easier-lp .dump-price-table tr {
		display: table-row !important;
	}

	.snow-easier-lp .smlp-price-table th,
	.snow-easier-lp .smlp-price-table td,
	.snow-easier-lp .dump-price-table th,
	.snow-easier-lp .dump-price-table td {
		display: table-cell !important;
		width: auto !important;
		padding: 12px 8px !important;
		font-size: 0.88rem !important;
		line-height: 1.55 !important;
		vertical-align: middle;
	}

	.snow-easier-lp .smlp-price-table th:first-child,
	.snow-easier-lp .smlp-price-table td:first-child,
	.snow-easier-lp .dump-price-table th:first-child,
	.snow-easier-lp .dump-price-table td:first-child {
		width: 62% !important;
		text-align: left !important;
	}

	.snow-easier-lp .smlp-price-table th:last-child,
	.snow-easier-lp .smlp-price-table td:last-child,
	.snow-easier-lp .dump-price-table th:last-child,
	.snow-easier-lp .dump-price-table td:last-child {
		width: 38% !important;
		text-align: center !important;
	}
}


/* =========================================================
   05-9. 広告LP共通幅（PC 1180px）
   ダンプ・都市型ハイヤー・今後の広告LPのみ
   ※ TOP（.ll-section）と運行管理（.ums-section）は780pxのまま
   ========================================================= */

body .snow-easier-lp {
	width: 100% !important;
	max-width: 1180px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	overflow: hidden;
}

/* alignfull がLP幅を突き抜けないようにする */
body .snow-easier-lp > .alignfull,
body .snow-easier-lp .smlp-section.alignfull,
body .snow-easier-lp .smlp-hero.alignfull {
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

/* alignwide もLP幅の中に収める */
body .snow-easier-lp .alignwide {
	width: 100% !important;
	max-width: 100% !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

/* =========================================================
   05-10. ダンプLP互換：ボタン
   ========================================================= */

.snow-easier-lp .dump-cta-btn a,
.snow-easier-lp .dump-cta-btn .wp-block-button__link,
.snow-easier-lp .dump-cta-btn .ark-block-button__link {
	padding: 16px 32px;
	border-radius: 6px;
	font-size: 20px;
	font-weight: 700;
}

@media screen and (max-width: 781px) {

	.snow-easier-lp {
		width: 100% !important;
		max-width: 100% !important;
	}

	.snow-easier-lp .smlp-section-title,
	.snow-easier-lp h2.smlp-section-title,
	.snow-easier-lp h3.smlp-section-title {
		margin-bottom: 32px;
		padding-right: 4px;
		padding-left: 4px;
		font-size: 1.85rem;
		line-height: 1.55;
	}

	.snow-easier-lp .smlp-message-title,
	.snow-easier-lp h2.smlp-message-title,
	.snow-easier-lp h3.smlp-message-title,
	.snow-easier-lp .dump-catch {
		font-size: 1.52rem;
		line-height: 1.85;
	}

	.snow-easier-lp .dump-lead-title {
		margin-bottom: 18px;
		font-size: 1.5rem;
	}

	.snow-easier-lp .dump-cta-btn a,
	.snow-easier-lp .dump-cta-btn .wp-block-button__link,
	.snow-easier-lp .dump-cta-btn .ark-block-button__link {
		padding: 14px 22px;
		font-size: 18px;
	}
}


/* =========================================================================
   99. ダンプLP 最終互換修正（2026-08-10）
   -------------------------------------------------------------------------
   目的：
   1) .snow-easier-lp 親クラスが付いていない場合でも PC/SP画像を切替
   2) HERO内の構造でも二重画像を確実に防止
   3) LP見出しを親クラスなしでも復元
   4) Gutenberg の mark（蛍光ペン）には一切触れない
   ========================================================================= */

/* ---------- PC / SP 画像：クラス指定で確実に切替 ---------- */
.smlp-hero-mobile-image,
.dump-hero-mobile-image,
.sp-only {
    display: none !important;
}

.smlp-hero-desktop-image,
.dump-hero-desktop-image,
.pc-only {
    display: block !important;
}

/* HERO構造のフォールバック：PCでは左カラム内のモバイル画像を隠す */
@media screen and (min-width: 782px) {
    .smlp-hero-copy > .wp-block-image.smlp-hero-mobile-image,
    .smlp-hero-copy > .wp-block-image.dump-hero-mobile-image,
    .smlp-hero-copy > .wp-block-image.sp-only {
        display: none !important;
    }
}

@media screen and (max-width: 781px) {
    .smlp-hero-mobile-image,
    .dump-hero-mobile-image,
    .sp-only {
        display: block !important;
    }

    .smlp-hero-desktop-image,
    .dump-hero-desktop-image,
    .pc-only {
        display: none !important;
    }

    /* 右側PCビジュアルをスマホでは隠す */
    .smlp-hero-visual.smlp-hero-desktop-image,
    .smlp-hero-visual.dump-hero-desktop-image,
    .smlp-hero-visual.pc-only {
        display: none !important;
    }
}

/* ---------- LP見出し：親 .snow-easier-lp がなくても効かせる ---------- */
.smlp-section-title {
    width: fit-content;
    max-width: 100%;
    margin: 0 auto 46px;
    padding: 0 12px 5px;
    background: linear-gradient(
        transparent 66%,
        #d9dce6 66%,
        #d9dce6 93%,
        transparent 93%
    );
    color: #071b55;
    font-family: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
    font-size: 2.55rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.02em;
    text-align: center;
}

.smlp-message-title,
.dump-catch {
    display: inline;
    margin: 0;
    padding: 0 0.12em 0.08em;
    background: linear-gradient(
        transparent 63%,
        #fffbc7 63%,
        #fffbc7 94%,
        transparent 94%
    );
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    color: #0874d1;
    font-family: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
    font-size: 2.15rem;
    font-weight: 700;
    line-height: 1.8;
}

.dump-lead-title {
    margin: 0 0 24px;
    color: #071b55;
    font-family: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}

@media screen and (max-width: 781px) {
    .smlp-section-title {
        margin-bottom: 32px;
        padding-right: 4px;
        padding-left: 4px;
        font-size: 1.85rem;
        line-height: 1.55;
    }

    .smlp-message-title,
    .dump-catch {
        font-size: 1.52rem;
        line-height: 1.85;
    }

    .dump-lead-title {
        font-size: 1.5rem;
        margin-bottom: 18px;
    }
}

/* IMPORTANT:
   mark / .has-inline-color / Gutenbergのハイライトには、ここでは一切指定しない。
   ブロックエディターで設定した蛍光ペン色をそのまま表示させる。 */