/*
Theme Name: Business Point Child (AsTech One)
Theme URI: https://www.astech-one.com/
Description: 株式会社アズテックワン用の子テーマ。SFCustom ヘッダー/フッターを使い、トップページ等を独自テンプレートで構築します。
Author: AsTech One
Template: business-point
Version: 1.1.9
Text Domain: business-point-child
*/

/* スタイルは functions.php で親テーマCSS→子テーマCSSの順に読み込みます。
   個別ページのスタイルは assets/css/ 配下に分離します。 */

/* 全幅スライダーのはみ出しによる横スクロール/余白を防ぐ */
html, body {
	overflow-x: hidden;
}

/* ===== ヘッダー調整（全ページ共通） ===== */

/* 上部のティールバー（本番と同じアクセント） */
body::before {
	content: "";
	display: block;
	width: 100%;
	height: 8px;
	background: #2BBFA4;
}

/* ロゴが見切れないように（高さ基準で全体表示） */
.custom-logo-link,
.site-logo-link {
	max-width: none;
}
.custom-logo {
	height: auto;
	max-height: 56px;
	width: auto;
}

/* ===== Business Point スマホメニュー補正 v1.1.9 =====
   方針: v1.0.5 の開閉処理を維持し、表示崩れだけを最小CSSで補正する。 */
@media (max-width: 1050px) {
	/* 右上の開閉ボタン。閉じている時は3本線、開いている時は×だけを表示する。 */
	.mean-container a.meanmenu-reveal,
	.mean-container a.meanmenu-reveal.meanclose {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		visibility: visible !important;
		opacity: 1 !important;
		color: #2BBFA4 !important;
		font-family: Arial, sans-serif !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		text-indent: 0 !important;
		overflow: visible !important;
		cursor: pointer !important;
		z-index: 99999 !important;
		text-decoration: none !important;
	}

	.mean-container a.meanmenu-reveal:not(.meanclose) {
		flex-direction: column !important;
		gap: 3px !important;
		font-size: 0 !important;
	}

	.mean-container a.meanmenu-reveal:not(.meanclose) span {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 24px !important;
		height: 3px !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #2BBFA4 !important;
		border-radius: 2px !important;
	}

	.mean-container a.meanmenu-reveal.meanclose {
		flex-direction: row !important;
		font-size: 28px !important;
		background: transparent !important;
	}

	.mean-container a.meanmenu-reveal.meanclose span {
		display: none !important;
	}

	/* meanMenu 本体は通常、閉じた状態では非表示。 */
	.mean-container .mean-nav > ul {
		display: none;
	}

	.mean-container .mean-nav ul li {
		position: relative !important;
	}

	/* 子メニューを持つ親リンクは、右側の展開ボタン分だけ余白を確保する。 */
	.mean-container .mean-nav ul li.ao-has-submenu > a:not(.ao-submenu-toggle):not(.mean-expand) {
		padding-right: 72px !important;
		box-sizing: border-box !important;
	}

	/* 親テーマ/meanMenu が作る既存の展開アンカーは使わず、子テーマのボタンに統一する。 */
	.mean-container .mean-nav ul li > a.mean-expand:not(.ao-submenu-toggle) {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.mean-container .mean-nav ul li > .ao-submenu-toggle {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		visibility: visible !important;
		opacity: 1 !important;
		position: absolute !important;
		right: 0 !important;
		top: 0 !important;
		width: 58px !important;
		min-height: 48px !important;
		padding: 0 !important;
		margin: 0 !important;
		box-sizing: border-box !important;
		border: 0 !important;
		border-left: 1px solid rgba(255,255,255,0.35) !important;
		border-radius: 0 !important;
		background: transparent !important;
		color: #fff !important;
		font-size: 20px !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		text-align: center !important;
		text-decoration: none !important;
		text-indent: 0 !important;
		cursor: pointer !important;
		z-index: 50 !important;
		pointer-events: auto !important;
		-webkit-appearance: none !important;
		appearance: none !important;
	}

	.mean-container .mean-nav ul li > .ao-submenu-toggle:focus {
		outline: 2px solid rgba(255,255,255,0.7) !important;
		outline-offset: -2px !important;
	}

	/* 展開ボタンを押しても濃いグレーにしない。 */
	.mean-container .mean-nav ul li.ao-submenu-open > .ao-submenu-toggle,
	.mean-container .mean-nav ul li.ao-submenu-collapsed > .ao-submenu-toggle {
		background: transparent !important;
		background-color: transparent !important;
		color: #fff !important;
	}

	/* 子メニューの背景・文字色だけを補正。display 制御は JS に任せる。 */
	.mean-container .mean-nav ul li.ao-submenu-open > ul,
	.mean-container .mean-nav ul li.ao-submenu-open > ul > li {
		background: #1BBC9B !important;
		background-color: #1BBC9B !important;
	}

	.mean-container .mean-nav ul li.ao-submenu-open > ul > li > a:not(.mean-expand):not(.ao-submenu-toggle),
	.mean-container .mean-nav ul li.ao-submenu-open > ul > li.current-menu-item > a:not(.mean-expand):not(.ao-submenu-toggle),
	.mean-container .mean-nav ul li.ao-submenu-open > ul > li.current_page_item > a:not(.mean-expand):not(.ao-submenu-toggle),
	.mean-container .mean-nav ul li.ao-submenu-open > ul > li > a:not(.mean-expand):not(.ao-submenu-toggle):hover,
	.mean-container .mean-nav ul li.ao-submenu-open > ul > li > a:not(.mean-expand):not(.ao-submenu-toggle):focus {
		background: #1BBC9B !important;
		background-color: #1BBC9B !important;
		color: #ffffff !important;
		text-shadow: none !important;
		visibility: visible !important;
		opacity: 1 !important;
		border-top: 1px solid rgba(255,255,255,0.26) !important;
	}

	/* v1.1.1: + / − エリアとメニュー罫線を標準色に統一する。 */
	.mean-container .mean-nav ul,
	.mean-container .mean-nav ul li {
		border-color: rgba(255,255,255,0.26) !important;
	}

	.mean-container .mean-nav ul li > a:not(.mean-expand):not(.ao-submenu-toggle) {
		border-top: 0 !important;
		border-bottom: 1px solid rgba(255,255,255,0.26) !important;
	}

	.mean-container .mean-nav ul li > .ao-submenu-toggle,
	.mean-container .mean-nav ul li > a.mean-expand,
	.mean-container .mean-nav ul li > a.mean-expand.mean-clicked,
	.mean-container .mean-nav ul li > a.mean-expand:hover,
	.mean-container .mean-nav ul li > a.mean-expand:focus {
		background: #1BBC9B !important;
		background-color: #1BBC9B !important;
		color: #ffffff !important;
		border-left: 1px solid rgba(255,255,255,0.35) !important;
		border-bottom: 1px solid rgba(255,255,255,0.26) !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	.mean-container .mean-nav ul li.ao-submenu-open > .ao-submenu-toggle,
	.mean-container .mean-nav ul li.ao-submenu-collapsed > .ao-submenu-toggle,
	.mean-container .mean-nav ul li > .ao-submenu-toggle:hover,
	.mean-container .mean-nav ul li > .ao-submenu-toggle:focus,
	.mean-container .mean-nav ul li > .ao-submenu-toggle:active {
		background: #1BBC9B !important;
		background-color: #1BBC9B !important;
		color: #ffffff !important;
		border-left: 1px solid rgba(255,255,255,0.35) !important;
		border-bottom: 1px solid rgba(255,255,255,0.26) !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	.mean-container .mean-nav ul li.ao-has-submenu > a:not(.ao-submenu-toggle):not(.mean-expand) {
		border-right: 0 !important;
	}

}
