@charset "UTF-8";
/*
Theme Name: Emanon Free child
Theme URI: https://wp-emanon.jp
Author: 株式会社イノ・コード
Author URI: https://innocord.co.jp/
Description: Emanon Free の子テーマです。
Template: emanon-free
Version: 3.0.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, three-columns, left-sidebar, right-sidebar, theme-options

Emanon Free 子テーマ用のスタイルを以下に記述
*/

/* ==========================================================================
   目次
   --------------------------------------------------------------------------
   1. 共通（サイト全体）
      1-1. ヘッダー
      1-2. 記事一覧
      1-3. サイドバー
      1-4. リンク・ホバー
      1-5. 固定フッターメニュー
      1-6. 見出し・目次（TOC）
   2. 汎用ユーティリティ（.pc / .sp）
   3. page: aboutlps ―― 今すぐわかるLPS（#aboutlps）
      3-0. 変数
      3-1. 1カラム化（body.page-id-3388 限定）
      3-2. 共通ベース
      3-3. FV（ファーストビュー）／PC
      3-4. キャッチコピー帯
      3-5. テーブル
      3-6. レスポンシブ（FVはSPデザイン lps_S に準拠）
   4. 旧CSS ―― （テスト）今すぐわかるLPS が使用中（.page-aboutlps）
   ========================================================================== */


/* ==========================================================================
   1. 共通（サイト全体）
   ========================================================================== */

/* 1-1. ヘッダー -------------------------------------------------------- */
.header-menu .menu-item > a {
	font-weight: 900;
}

.header-site-branding {
	flex: 0 0 auto;
}

/* PC：ヘッダーメニュー */
@media screen and (min-width: 1200px) {
	.header-menu > .menu-item > a {
		font-size: 16px;
	}
	
	.header-menu .sub-menu .menu-item > a {
		font-size: 14px;
	}
}

/* PC：画面幅が狭い場合はメニュー間の余白を調整 */
@media screen and (min-width: 1200px) and (max-width: 1399px) {
	.header-menu-row .header-menu > .menu-item > a {
		padding-left: 12px;
		padding-right: 12px;
	}
}

@media screen and (max-width: 1199px) {
	.header-menu-row .header-menu > .menu-item > a {
		padding-left: 4px;
		padding-right: 4px;
	}

	.l-header .header-menu-row {
		display: none;
	}

	.l-header .hamburger-menu {
		display: inline-flex;
	}
}

/* 1-2. 記事一覧 -------------------------------------------------------- */
.featured-thumbnail img {
	border-radius: 0;
	height: 225px;
	object-fit: cover;
	object-position: center;
	display: block;
}
.featured-title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.6;
	max-height: calc(1.6em * 2);
	margin-top: 0!important;
}
.featured-post {
	padding-bottom: 16px!important;
}
.featured-excerpt {
    margin-top: 11px!important;
}
.home .tab-panel .archive-list:nth-of-type(n + 10) {
	display: none;
}
.featured-item > a {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.featured-thumbnail {
  height: 255px;
  overflow: hidden;
}

.featured-thumbnail img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

.featured-post {
  flex: 1;
}

@media screen and (max-width: 959px) {
  .featured-thumbnail {
    height: 220px;
  }
}

@media screen and (max-width: 767px) {
  .featured-thumbnail {
    height: 200px;
  }
}

@media screen and (max-width: 480px) {
  .featured-thumbnail {
    height: 180px;
  }
}

@media screen and (max-width: 599px) {
	.slide-featured .splide__slide {
		width: 100% !important;
	}

	.slide-featured .splide__slide.is-active.is-visible {
		margin-left: 0;
	}
}

/* 1-3. サイドバー ------------------------------------------------------ */
.sidebar .widget {
	background-color: #f9f9f9;
	padding: 16px;
}
.sidebar .widget.widget_banner_widget {
	background: transparent;
	padding: 0;
}

/* 1-4. リンク・ホバー -------------------------------------------------- */
.u-shadow-hover:hover {
	transform: none;
}
a {
	transition: opacity .3s ease;
}
a:hover {
	opacity: .7;
}

/* SP：フッターナビ */
.footer-nav {
	padding: 16px!important;
}

.footer-nav li {
	line-height: 2.5;
}

/* 1-5. 固定フッターメニュー -------------------------------------------- */
.fixed-footer-menu::before {
	background: transparent;
}
.fixed-footer-menu__inner,
.fixed-footer-nav,
.fixed-footer-nav .menu-item,
.fixed-footer-nav .menu-item > a {
	height: 64px;
}
.fixed-footer-nav .menu-item {
	width: 100%;
}
.fixed-footer-nav .menu-item > a {
	position: relative;
	display: block;
	font-size: 0;
	color: transparent;
	overflow: hidden;
}
.fixed-footer-nav .menu-item > a::before {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	background: url("/special/wp/wp-content/uploads/bannerS.jpg") center / cover no-repeat;
	border-radius: 10px 10px 0 0;
	z-index: 1;
}
.fixed-footer-nav .menu-item > a span {
	position: relative;
	z-index: 2;
	opacity: 0;
}

/* 1-6. 見出し・目次（TOC） --------------------------------------------- */
.entry-section-header.is-header-type {
	margin-bottom: 0;
}
#toc_container {
	margin-top: 40px;
}


/* ==========================================================================
   2. 汎用ユーティリティ（.pc / .sp）
   --------------------------------------------------------------------------
   1200px を境に PC / SP の表示を切り替える改行・要素用のクラス。
   投稿176件を全走査した結果、現在の使用箇所は固定ページ
   「（テスト）今すぐわかるLPS」のみですが、今後の記事作成でも使える
   汎用クラスのため残しています。
   ========================================================================== */
.pc {
	display: inline;
}
.sp {
	display: none;
}
@media (max-width: 1200px) {
	.pc {
		display: none;
	}
	.sp {
		display: inline;
	}
}


/* ==========================================================================
   3. page: aboutlps ―― 今すぐわかるLPS（#aboutlps）
   --------------------------------------------------------------------------
   Figma: page_design
     PC … aboutLPS (node 31-9)   1440px / コンテンツ幅1000px
     SP … lps_S    (node 23-2714) 750px（375pxの@2x）
   スコープ: 本文ラッパー <div id="aboutlps"> 配下に限定。
            3-1 のみレイアウト枠（本文の外側）を触るため body.page-id-3388 を使用。
   ========================================================================== */

/* 3-0. 変数 ------------------------------------------------------------ */
#aboutlps {
	--alps-blue: #48aed4;
	--alps-teal: #14afa9;
	--alps-text: #777;
	--alps-text-dark: #333;
	--alps-hero-bg: #dad5cf;
	--alps-catch-bg: #f4fa76;
	--alps-th-bg: #c9e7f3;
	--alps-th-bg-company: #fafafa;
	--alps-border: #ccc;
	--alps-content: 1000px;
	--alps-gutter: 20px;
}

/* 3-1. このページのみ 1カラム化（サイドバー非表示・本文を全幅に） ------
   ※ Figmaがサイドバーなし／コンテンツ幅1000px／全幅メインビジュアルのため
   ※ カスタマイザーの設定は変更していません。このページ限定のCSSのみです。
   ※ 本文の外側（テーマのレイアウト枠）を対象にするため、ここだけ
     固定ページIDで限定しています。ページIDが変わった場合はこの節のみ差し替え。 */
body.page-id-3388 .l-contents {
	margin-top: 0;
}
body.page-id-3388 .l-content {
	width: 100%;
	max-width: 100%;
	margin: 0;
}
body.page-id-3388 .l-content > .u-row {
	display: block;
}
body.page-id-3388 .l-content > .u-row > .l-content__main {
	width: 100%;
	max-width: 100%;
	flex: none;
	margin: 0;
}
body.page-id-3388 .l-content > .u-row > .sidebar {
	display: none;
}
body.page-id-3388 .l-content__main > .article {
	margin: 0;
	padding: 0;
	border: 0;
}
body.page-id-3388 .l-content__main > .article > header {
	display: none; /* テーマが出力するページタイトル h1「今すぐわかるLPS」。Figmaにはないため非表示 */
}
body.page-id-3388 .l-content__main .article > .article-body {
	padding: 0;
}

/* 3-2. 共通ベース ------------------------------------------------------ */
#aboutlps {
	color: var(--alps-text);
	font-size: 18px;
	line-height: 38px;
	word-break: break-word;
}
#aboutlps img {
	display: block;
	width: 100%;
	height: auto;
	max-width: var(--alps-figw, 100%);
	margin: 0;
	border-radius: 0;
}
#aboutlps .alps-inner {
	width: 100%;
	max-width: calc(var(--alps-content) + var(--alps-gutter) * 2);
	margin-inline: auto;
	padding-inline: var(--alps-gutter);
}
/* PC用／SP用で改行位置を切り替える（FVリード文） */
#aboutlps .alps-br-pc {
	display: inline;
}
#aboutlps .alps-br-sp {
	display: none;
}

/* セクション */
#aboutlps .alps-sec {
	margin: 0;
}
#aboutlps .alps-sec--first {
	padding-top: 64px;
}
#aboutlps .alps-sec--last {
	padding-bottom: 64px;
}

/* 見出し */
#aboutlps h2.alps-h2 {
	margin: 0;
	padding: 8px;
	background: none;
	border: 0;
	border-bottom: 2px solid var(--alps-blue);
	border-radius: 0;
	color: var(--alps-text);
	font-size: 30px;
	font-weight: 700;
	line-height: 36px;
}
#aboutlps h3.alps-h3 {
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
	color: var(--alps-text);
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
}

/* 2カラム行 */
#aboutlps .alps-row {
	display: flex;
	align-items: center;
}
#aboutlps .alps-row--rev {
	flex-direction: row-reverse;
}
#aboutlps .alps-txt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 8px;
	flex: 1 1 0;
	min-width: 0;
	padding: 24px 18px;
}
#aboutlps .alps-txt--flat {
	display: block;
	flex: 1 1 0;
	min-width: 0;
	padding: 0;
}
#aboutlps .alps-fig {
	flex: 0 1 489px;
	min-width: 0;
	padding: 24px 0;
}
#aboutlps .alps-fig--w436 { --alps-figw: 436px; }
/* Figmaで画像側に24pxの余白がある行（LPSの作用 作用②） */
#aboutlps .alps-row--gap .alps-fig {
	flex-basis: 512px;
	padding-right: 24px;
}

/* 本文テキスト */
#aboutlps p.alps-p {
	margin: 0;
	padding: 0 0 32px;
	font-size: 18px;
	line-height: 38px;
}
#aboutlps p.alps-p--lead {
	padding: 24px 8px 0;
}
#aboutlps .alps-block {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0 0 32px;
}
#aboutlps .alps-block--flat {
	padding: 0 8px;
}
#aboutlps .alps-block p {
	margin: 0;
	font-size: 18px;
	line-height: 38px;
}
#aboutlps ul.alps-list,
#aboutlps ol.alps-list {
	margin: 0;
	padding-left: 27px;
	list-style: disc;
	font-size: 18px;
	line-height: 38px;
}
#aboutlps ol.alps-list--num {
	list-style: decimal;
}
#aboutlps .alps-list > li {
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 38px;
}
#aboutlps .alps-list--block {
	padding-bottom: 32px;
	padding-left: 27px;
}
#aboutlps p.alps-note {
	margin: 0;
	padding: 24px 0 32px;
	font-size: 18px;
	line-height: 38px;
}

/* ボタン */
#aboutlps p.alps-btnwrap {
	margin: 0;
	padding: 0;
	line-height: 1;
}
#aboutlps .alps-txt--end p.alps-btnwrap {
	text-align: right;
}
#aboutlps a.alps-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	padding: 8px 40px;
	background: var(--alps-blue);
	border-radius: 100px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 38px;
	text-decoration: none;
}
/* ボタン内の「>」矢印。Figmaの 6x11 / 線幅2px / 白 をCSSで再現しています */
#aboutlps .alps-btn__arrow {
	flex: none;
	display: block;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}

/* 3-3. FV（ファーストビュー）／PC -------------------------------------- */
#aboutlps .alps-hero {
	background-color: var(--alps-hero-bg);
	background-image: url("/special/wp/wp-content/uploads/main_pc.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 1440px auto;
}
#aboutlps .alps-hero__inner {
	display: flex;
	align-items: flex-start;
	min-height: 608px;
}
#aboutlps .alps-hero__body {
	position: relative;
	z-index: 1;
	flex: 1 1 0;
	min-width: 0;
	padding: 70px 8px 0;
}
#aboutlps p.alps-hero__eyebrow {
	margin: 0;
	color: #777;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.17em;
}
#aboutlps h1.alps-hero__title {
	margin: 16px 0 0;
	padding: 0;
	background: none;
	border: 0;
	color: var(--alps-teal);
	font-size: 48px;
	font-weight: 700;
	line-height: 60px;
	letter-spacing: 0.03em;
}
#aboutlps p.alps-hero__lead {
	margin: 24px 0 0;
	color: var(--alps-text-dark);
	font-size: 24px;
	font-weight: 400;
	line-height: 36px;
}
#aboutlps ul.alps-hero__icons {
	display: flex;
	gap: 16px;
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}
#aboutlps li.alps-hero__icon {
	--alps-circle: 168px;
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 0 1 var(--alps-circle);
	width: var(--alps-circle);
	height: var(--alps-circle);
	margin: 0;
	border-radius: 50%;
	box-shadow: 0 4px 32px rgba(0, 0, 0, 0.1);
}
#aboutlps .alps-hero__circle {
	display: block;
}
#aboutlps .alps-hero__circle img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
}
#aboutlps .alps-hero__label {
	display: block;
	margin-top: calc(var(--alps-circle) * 0.0476); /* 8 / 168 */
	color: var(--alps-teal);
	font-size: calc(var(--alps-circle) * 0.0952); /* 16 / 168 */
	line-height: 1.2;
}

/* 3-4. キャッチコピー帯 ------------------------------------------------ */
#aboutlps .alps-catch {
	padding-bottom: 48px;
}
#aboutlps p.alps-catch__box {
	margin: 0;
	padding: 24px;
	background: var(--alps-catch-bg);
	border-radius: 20px;
	color: var(--alps-blue);
	font-size: 32px;
	font-weight: 700;
	line-height: 48px;
	text-align: center;
}

/* 3-5. テーブル -------------------------------------------------------- */
#aboutlps .alps-tablewrap {
	max-width: 720px;
	margin-inline: auto;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
#aboutlps table.alps-table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	table-layout: fixed;
	background: #fff;
}
#aboutlps table.alps-table th,
#aboutlps table.alps-table td {
	padding: 8px 16px;
	border: 1px solid var(--alps-border);
	color: var(--alps-text);
	text-align: left;
	vertical-align: middle;
	word-break: break-word;
}
#aboutlps table.alps-table th {
	background: var(--alps-th-bg);
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
}
#aboutlps table.alps-table td {
	background: #fff;
	font-size: 18px;
	font-weight: 400;
	line-height: 27px;
}

/* 会社概要テーブル */
#aboutlps table.alps-table--company {
	table-layout: auto;
}
#aboutlps table.alps-table--company th,
#aboutlps table.alps-table--company td {
	padding: 12px 16px;
	line-height: 38px;
	white-space: normal;
}
#aboutlps table.alps-table--company th {
	width: 104px;
	background: var(--alps-th-bg-company);
	font-size: 20px;
}
#aboutlps table.alps-table--company td {
	font-size: 18px;
}


#aboutlps .alps-row--company .alps-txt--flat {
	width: 100%;
	margin: 24px auto;
}

/* ==========================================================================
   3-6. レスポンシブ
   --------------------------------------------------------------------------
   FV … SPデザイン lps_S (node 23-2714 / 750px = 375pxの@2x) に準拠
   本文 … SPデザインがないため、PC版の比率と優先順位を保った自然可変

     1040px以上 … PC版Figmaと同一
     1039px以下 … 本文のカラム比率を%に切り替え＋タイポを縮小
     991px以下  … FVをSPデザインの構成（中央揃えの縦積み）へ
     767px以下  … 本文も縦積み。FVはSPデザインの数値どおり
   ========================================================================== */

/* ~1039px : コンテンツ幅1000pxを確保できなくなる領域 */
@media screen and (max-width: 1039px) {
	#aboutlps {
		--alps-gutter: 24px;
	}
	/* 画像カラムを固定px → %比率へ（テキストが極端に狭くなるのを防ぐ） */
	#aboutlps .alps-fig {
		flex: 0 1 48%;
	}
	#aboutlps .alps-row--gap .alps-fig {
		flex-basis: 50%;
	}
	#aboutlps h1.alps-hero__title {
		font-size: 40px;
		line-height: 1.3;
	}
	#aboutlps p.alps-hero__eyebrow {
		font-size: 28px;
	}
	#aboutlps p.alps-hero__lead {
		font-size: 20px;
		line-height: 1.7;
	}
	#aboutlps li.alps-hero__icon {
		--alps-circle: 150px;
	}
	#aboutlps p.alps-catch__box {
		font-size: 26px;
		line-height: 1.6;
	}
}

/* ==========================================================================
   ~991px : FVをSPデザイン（lps_S）の構成へ
   　　　　 中央揃えの縦積み ＝ ABOUT LPS → 見出し → リード → 画像 → アイコン
   　　　　 HTMLの順序は変えず、CSSのorderで画像をアイコンの前に出しています
   ========================================================================== */
@media screen and (max-width: 991px) {
	#aboutlps .alps-hero__inner {
		display: flex;
		flex-direction: column;
		align-items: center;
		min-height: 0;
		padding-top: 48px;
		padding-bottom: 48px;
		text-align: center;
	}
	/* 子要素を .alps-hero__inner の直下扱いにして並べ替える */
	#aboutlps .alps-hero__body {
		display: contents;
	}
	#aboutlps p.alps-hero__eyebrow {
		order: 1;
		font-size: 20px;
	}
	#aboutlps h1.alps-hero__title {
		order: 2;
		margin: 16px 0 0;
		font-size: 34px;
		line-height: 1.3;
	}
	#aboutlps p.alps-hero__lead {
		order: 3;
		margin: 18px 0 0;
		font-size: 18px;
		line-height: 1.75;
	}
	#aboutlps ul.alps-hero__icons {
		order: 5;
		justify-content: center;
		gap: 10px;
		margin: 24px 0 0;
	}
	#aboutlps li.alps-hero__icon {
		--alps-circle: 120px;
		box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
	}
	#aboutlps .alps-hero__label {
		margin-top: calc(var(--alps-circle) * 0.025);
		font-size: calc(var(--alps-circle) * 0.14); /* 14 / 100 */
	}
	/* 改行位置をSPデザインのものに切り替え */
	#aboutlps .alps-br-pc {
		display: none;
	}
	#aboutlps .alps-br-sp {
		display: inline;
	}

	/* 本文側 */
	#aboutlps h2.alps-h2 {
		font-size: 26px;
		line-height: 1.4;
	}
	#aboutlps .alps-txt,
	#aboutlps .alps-fig {
		padding-block: 20px;
	}
	#aboutlps table.alps-table th {
		font-size: 18px;
	}
	#aboutlps table.alps-table td {
		font-size: 16px;
	}
}

/* ==========================================================================
   ~767px : 本文も1カラム縦積みに。FVはSPデザインの数値どおり
   　　　　（Figma 750px値の1/2＝375px基準）
   ========================================================================== */
@media screen and (max-width: 767px) {
	#aboutlps {
		--alps-gutter: 16px;
		font-size: 16px;
		line-height: 1.9;
	}
	#aboutlps .alps-hero {
	background-color: #e1ded7;
	background-image: url("/special/wp/wp-content/uploads/main_sp.jpg");
	background-repeat: no-repeat;
	background-position: center 30%;
	background-size: 105% auto;
	}

	#aboutlps .alps-sec--first {
		padding-top: 40px;
	}
	#aboutlps .alps-sec--last {
		padding-bottom: 40px;
	}
#aboutlps .alps-hero__inner {
    position: relative;
    display: block;
    min-height: calc(100vh - 70px);
    min-height: calc(100svh - 70px);
    box-sizing: border-box;
    padding: 0;
    text-align: center;
	}
	#aboutlps .alps-hero__body {
	display: block;
	position: static;
	padding: 0;
	}
	
	#aboutlps p.alps-hero__eyebrow {
		font-size: 16px;      /* 32 / 2 */
		letter-spacing: 0.17em;
	}
	#aboutlps h1.alps-hero__title {
		margin-top: 12px;
		font-size: 30px;      /* 60 / 2 */
		line-height: 36px;    /* 72 / 2 */
		letter-spacing: 0.03em;
	}
	#aboutlps p.alps-hero__lead {
		margin-top: 14px;
		font-size: 14px;      /* 28 / 2 */
		line-height: 24px;    /* 48 / 2 */
	}
	#aboutlps ul.alps-hero__icons {
	position: absolute;
	left: 50%;
	bottom: 18px;
	transform: translateX(-50%);
	justify-content: center;
	gap: 8px;
	width: 100%;
	margin: 0;
	}
	#aboutlps li.alps-hero__icon {
		--alps-circle: 100px; /* 200 / 2 */
		box-shadow: 0 2px 16px rgba(0, 0, 0, 0.1);
	}

	#aboutlps .alps-row,
	#aboutlps .alps-row--rev,
	#aboutlps .alps-row--company {
		display: block;
	}
	#aboutlps .alps-txt {
		display: block;
		padding: 16px 0 0;
	}
	#aboutlps .alps-txt--flat {
		padding: 0;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	#aboutlps .alps-fig,
	#aboutlps .alps-row--gap .alps-fig {
		padding: 16px 0 24px;
	}
	#aboutlps .alps-fig img {
		margin-inline: auto;
	}

	/* 見出し・本文 */
	#aboutlps h2.alps-h2 {
		padding: 4px 0 8px;
		font-size: 22px;
	}
	#aboutlps h3.alps-h3 {
		margin-top: 8px;
		font-size: 18px;
		line-height: 1.5;
	}
	#aboutlps p.alps-p,
	#aboutlps .alps-block p,
	#aboutlps ul.alps-list,
	#aboutlps ol.alps-list,
	#aboutlps .alps-list > li,
	#aboutlps p.alps-note {
		font-size: 16px;
		line-height: 1.9;
	}
	#aboutlps p.alps-p {
		margin-top: 8px;
		padding-bottom: 20px;
	}
	#aboutlps p.alps-p--lead {
		padding: 16px 0 0;
	}
	#aboutlps .alps-block {
		margin-top: 8px;
		padding-bottom: 20px;
	}
	#aboutlps .alps-block--flat {
		padding: 0;
	}
	#aboutlps .alps-list--block {
		padding-bottom: 20px;
	}
	#aboutlps p.alps-note {
		padding: 16px 0 24px;
	}

	/* ボタン */
	#aboutlps p.alps-btnwrap, #aboutlps .alps-txt--end p.alps-btnwrap {
		text-align: center;
		margin: 0px auto 20px;
	}
	#aboutlps a.alps-btn {
		gap: 16px;
		padding: 8px 28px;
		font-size: 16px;
		line-height: 32px;
		width:70%;
	}

	/* キャッチコピー */
	#aboutlps .alps-catch {
		padding-bottom: 32px;
	}
	#aboutlps p.alps-catch__box {
		padding: 20px 16px;
		border-radius: 14px;
		font-size: 19px;
		line-height: 1.6;
	}

	/* テーブル */
	#aboutlps table.alps-table th,
	#aboutlps table.alps-table td {
		padding: 8px 12px;
		font-size: 15px;
		line-height: 1.6;
	}
	#aboutlps table.alps-table--company {
		min-width: 320px;
	}
	#aboutlps table.alps-table--company th,
	#aboutlps table.alps-table--company td {
		padding: 10px 12px;
		line-height: 1.7;
	}
	#aboutlps table.alps-table--company th {
		width: 84px;
	}
}

/* ~374px : 最小幅（320px端末）での破綻防止 */
@media screen and (max-width: 374px) {
	#aboutlps h1.alps-hero__title {
		font-size: 26px;
		line-height: 1.3;
	}
	#aboutlps ul.alps-hero__icons {
		gap: 6px;
	}
	#aboutlps li.alps-hero__icon {
		--alps-circle: 88px;
	}
	#aboutlps p.alps-catch__box {
		font-size: 17px;
	}
	#aboutlps a.alps-btn {
		padding: 8px 20px;
	}
}


/* ==========================================================================
   4. 旧CSS ―― （テスト）今すぐわかるLPS が使用中（.page-aboutlps）
   --------------------------------------------------------------------------
   もともと仮ページ用に書かれていたCSSです。中身は変更していません。
   公開中の固定ページ「（テスト）今すぐわかるLPS」が同じ .page-aboutlps
   構造のまま残っており、このCSSに依存しているため削除していません。
   新しい「今すぐわかるLPS」は #aboutlps を使うので干渉しません。
   ※ 固定ページ「（テスト）今すぐわかるLPS」を削除・非公開にした時点で、
     このセクションは丸ごと削除して構いません。
   ========================================================================== */
.page-aboutlps h2 {
	font-size: 20px;
	line-height: 1.4;
	margin-top: 40px;
	margin-bottom: 16px;
	padding-bottom: 6px;
	border-bottom: 2px solid #48aed3;
}
.page-aboutlps h2:first-child {
	margin-top: 0;
}
.page-aboutlps h3 {
	font-size: 16px;
	line-height: 1.4;
	margin-top: 32px;
	margin-bottom: 12px;
}
.page-aboutlps p {
	font-size: 14px;
	line-height: 1.8;
	margin-bottom: 24px;
}
.page-aboutlps img {
	max-width: 80%;
	height: auto;
	display: block;
	margin: 24px auto;
}
.page-aboutlps table {
	width: 100%;
	border-collapse: collapse;
	margin: 24px 0;
}
.page-aboutlps th,
.page-aboutlps td {
	border: 1px solid #ccc;
	padding: 8px 12px;
	text-align: left;
	font-size: 15px;
}
.page-aboutlps thead th {
	background: #dff6ff;
}
.page-aboutlps ul {
	list-style: disc;
	margin: 0 0 24px;
	padding-left: 24px;
}
.page-aboutlps ol {
	list-style: decimal;
	margin: 0 0 24px;
	padding-left: 24px;
}
.page-aboutlps li {
	font-size: 14px;
	line-height: 1.8;
	margin: 4px 0;
}
.page-aboutlps .lps-catch {
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	color: #48aed3;
	line-height: 1.7;
}
.page-aboutlps .lps-catch span {
	background: linear-gradient(transparent 70%, #f4f976 70%);
}
.page-aboutlps .lps-more {
	text-align: center;
	margin: 16px 0 32px;
}
.page-aboutlps .lps-more a {
	display: inline-block;
	padding: 10px 40px;
	background: #48aed3;
	color: #fff;
	border-radius: 999px;
	text-decoration: none;
	font-weight: bold;
	font-size: 14px;
	width: 260px;
}
@media (max-width: 767px) {
	.page-aboutlps h2 {
		font-size: 16px;
		margin-top: 32px;
		margin-bottom: 14px;
		padding-bottom: 6px;
	}
	.page-aboutlps h3 {
		font-size: 14px;
		margin-top: 24px;
		margin-bottom: 10px;
	}
	.page-aboutlps p {
		font-size: 12px;
		margin-bottom: 20px;
	}
	.page-aboutlps img {
		max-width: 90%;
		margin: 20px auto;
	}
	.page-aboutlps table {
		margin: 20px 0;
	}
	.page-aboutlps th,
	.page-aboutlps td {
		padding: 6px 8px;
		font-size: 13px;
	}
	.page-aboutlps li {
		font-size: 12px;
	}
	.page-aboutlps .lps-catch {
		font-size: 14px;
		padding: 14px 16px;
	}
	.page-aboutlps .lps-more a {
		padding: 10px 32px;
		font-size: 13px;
		width: 80%;
	}
}

/* アンサーファースト */
#aboutlps .alps-easy {
	margin: 48px 0 24px;
	padding: 20px 24px;
	background: #f3fbfe;
	border-radius: 8px;
	color: var(--alps-text);
	font-size: 18px;
	line-height: 1.9;
}

#aboutlps .alps-easy b {
	display: block;
	margin-bottom: 4px;
	color: var(--alps-blue);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	#aboutlps .alps-easy {
		margin: 16px 0 20px;
		padding: 16px;
		border-radius: 6px;
		font-size: 16px;
		line-height: 1.9;
	}

	#aboutlps .alps-easy b {
		margin-bottom: 4px;
		font-size: 17px;
	}
}
.tab-area .nav-tab {
	border: 1px solid #ebebeb;
}
.tab-area .nav-tab:hover, .tab-area .nav-tab.nav-tab-active {
    color: #fff;
}
.cat-name, .sticky .cat-name {
   background-color: #48aed3!important;
}
.marker-line {
	background: linear-gradient(
		transparent 70%,
		#91cfe6 70%
	);
	font-weight: bold;
}

/* 下部バナー */
#aboutlps .alps-bottom-banner {
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	container-type: inline-size;
}
#aboutlps .alps-bottom-banner > p:empty {
	display: none;
}
#aboutlps .alps-bottom-banner__link {
	position: relative;
	display: block;
	overflow: hidden;
	container-type: inline-size;
}
#aboutlps .alps-bottom-banner__link picture {
	display: block;
}
#aboutlps .alps-bottom-banner__img {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	margin: 0;
}
#aboutlps .alps-bottom-banner__text {
	position: absolute;
	top: 50%;
	left: 40px;
	left: 4cqw;
	z-index: 1;
	width: auto;
	transform: translateY(-50%);
	pointer-events: none;
}
#aboutlps .alps-bottom-banner__title {
	display: block;
	margin-bottom: 14px;
	margin-bottom: 1.4cqw;
	color: #18aaa8;
	font-size: 56px;
	font-size: 5.6cqw;
	font-weight: 700;
	line-height: 60px;
	line-height: 6cqw;
	letter-spacing: 0.03em;
	white-space: nowrap;
}
#aboutlps .alps-bottom-banner__lead {
	display: block;
	color: #333;
	font-size: 28px;
	font-size: 2.8cqw;
	line-height: 44px;
	line-height: 4.4cqw;
	white-space: nowrap;
}
@media screen and (max-width: 767px) {
	#aboutlps .alps-bottom-banner {
		margin: 0 16px 0;
	}
	#aboutlps .alps-bottom-banner__title {
		margin-bottom: 6px;
		margin-bottom: 1.8cqw;
		font-size: 22px;
		font-size: 6.4cqw;
		line-height: 21px;
		line-height: 6cqw;
	}
	#aboutlps .alps-bottom-banner__lead {
		font-size: 11px;
		font-size: 3.2cqw;
		line-height: 16px;
		line-height: 4.8cqw;
	}
}
/* 今すぐわかるLPSページのみ固定フッター非表示 */
body.page-id-3388 #js-fixed-footer-menu {
	display: none !important;
}

/* ==========================================================================
   5. Q&Aアコーディオン（Easy Accordion）
   --------------------------------------------------------------------------
   Figma: page_design ―― QandA (147-24) / QandA_open (147-26)
   ========================================================================== */
.sp-easy-accordion .ea-card {
	background: #eee !important;
	border: 1px solid #e2e2e2 !important;
	border-radius: 0 !important;
}
.sp-easy-accordion .ea-header {
	margin: 0;
}
.sp-easy-accordion .ea-header a {
	position: relative;
	display: block;
	min-height: 60px;
	padding: 16px 16px 16px 16px !important;
	background: url("/special/wp/wp-content/uploads/Q.png") no-repeat 20px 21px !important;
	background-size: 20px 18px !important;
	color: #444 !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 28px !important;
	text-decoration: none;
}
.sp-easy-accordion .ea-header > a:hover,
.sp-easy-accordion .ea-header > a:focus {
	opacity: 1;
}
.sp-easy-accordion .ea-header > a > .ea-expand-icon {
	position: absolute;
	top: 21px;
	right: 20px;
	width: 17px;
	height: 17px;
	margin: 0 !important;
}
.sp-easy-accordion .ea-header > a > .ea-expand-icon::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 17px;
	height: 1px;
	background: #999;
}
.sp-easy-accordion .ea-header > a > .ea-expand-icon::after {
	content: "";
	position: absolute;
	top: 0;
	left: 11px;
	width: 1px;
	height: 17px;
	background: #999;
	opacity: 1;
	transform: rotate(0deg);
	transition: opacity .25s ease, transform .25s ease;
}
.sp-easy-accordion .ea-header > a > .eap-icon-ea-expand-minus::after {
	opacity: 0;
	transform: rotate(90deg);
}
.sp-easy-accordion .ea-body {
	position: relative;
	padding: 16px 20px 16px 48px !important;
	background-color: #fff !important;
}
.sp-easy-accordion .ea-body::before {
	content: "";
	position: absolute;
	top: 22px;
	left: 20px;
	width: 20px;
	height: 16px;
	background: url("/special/wp/wp-content/uploads/A.png") no-repeat center;
	background-size: 20px 16px;
}
.sp-easy-accordion .ea-body,
.sp-easy-accordion .ea-body p,
.sp-easy-accordion .ea-body li {
	color: #444 !important;
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
}
.sp-easy-accordion .ea-body > *:last-child {
	margin-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
	.sp-easy-accordion .ea-header a {
		min-height: 54px;
		padding: 14px 44px 14px 40px !important;
		background-position: 16px 19px !important;
		background-size: 18px 16px !important;
		font-size: 17px !important;
		line-height: 26px !important;
	}
	.sp-easy-accordion .ea-header > a > .ea-expand-icon {
		top: 19px;
		right: 16px;
		width: 15px;
		height: 15px;
	}
	.sp-easy-accordion .ea-header > a > .ea-expand-icon::before {
		top: 7px;
		width: 15px;
	}
	.sp-easy-accordion .ea-header > a > .ea-expand-icon::after {
		left: 10px;
		height: 15px;
	}
	.sp-easy-accordion .ea-body {
		padding: 14px 16px 14px 40px !important;
	}
	.sp-easy-accordion .ea-body::before {
		top: 20px;
		left: 16px;
		width: 18px;
		height: 14px;
		background-size: 18px 14px;
	}
	.sp-easy-accordion .ea-body,
	.sp-easy-accordion .ea-body p,
	.sp-easy-accordion .ea-body li {
		font-size: 15px;
		line-height: 26px;
	}
}