/* HOME：スマホ（幅640px以下）の読みやすさの改善（2026-10-21）。PC・タブレットには影響しない（@media の中だけ）。
   方針：動きより読みやすさ。文字を少し小さく・行間を広く、変な位置の改行を防ぐ（word-break:auto-phrase、手動の<br>は文章の中では無効）。 */
@media (max-width: 640px) {
	/* 日本語を、文節の区切りで折り返す（対応しているブラウザ）。見出しは、行の長さをそろえる */
	.sac-hero__text, .sh-txt, .sh-catch, .sh-ft__main h4, .sh-sv__card h3, .sh-wkd__hint, .sh-sv__more li, .sh-col__t, .sh-col__sum, .sh-vnl li {
		word-break: keep-all; line-break: strict; overflow-wrap: break-word; }
	.sac-hero__title, .sh-catch, .sh-ft__main h4, .sh-sv__card h3, .sh-col__t, .sh-wkd__hint { text-wrap: balance; }
	.sac-hero__text br, .sh-txt br { display: none; }

	/* ヒーロー */
	.sac-hero__eyebrow { font-size: 14px; letter-spacing: .06em; }
	.sac-hero__title { font-size: clamp(25px, 7.4vw, 30px); line-height: 1.55; letter-spacing: .02em; }
	.sac-hero__navy, .sac-hero__grad { letter-spacing: .02em; }
	.sac-hero__text { font-size: 14.5px; line-height: 1.95; letter-spacing: .03em; }
	.sac-hero__cta { display: flex; width: 100%; padding: 14px 12px; font-size: 14px; letter-spacing: .02em; }

	/* 見出し・本文 */
	.sh-catch .ph { display: inline-block; white-space: nowrap; }
	.sh-ttl .en { font-size: 38px; line-height: 1.2; }
	.sh-catch, .sh-about .sh-catch { font-size: clamp(14px, 4.4vw, 18px); line-height: 1.75; letter-spacing: .02em; }
	.sh-txt { font-size: 15px; line-height: 1.95; letter-spacing: .03em; }

	/* SERVICE：写真を上、文章を下に分ける（磨りガラスの文字を、読みやすく） */
	.sh-sv__panel { height: auto; display: flex; flex-direction: column; background: #fff; border-radius: 24px 48px 24px 48px; }
	.sh-sv__panel img { flex: none; width: 100%; height: auto; aspect-ratio: 3 / 2; }
	.sh-sv__card { position: static; width: auto; margin: 0; padding: 20px 20px 24px; overflow: visible; max-height: none; border: 0; border-radius: 0; background: #fff; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
	.sh-sv__card h3 { font-size: 22px; line-height: 1.5; letter-spacing: .04em; }
	.sh-sv__card .sh-txt { font-size: 14.5px; line-height: 1.9; }
	.sh-sv__more { max-height: none; opacity: 1; margin: 0 0 20px; overflow: visible; }
	.sh-sv__more li { font-size: 14px; line-height: 1.8; letter-spacing: .03em; }
	.sh-sv__more li::before { top: 9px; }

	/* WORKS */
	.sh-wkd__hint { font-size: 12px; letter-spacing: .04em; }

	/* FEATURE */
	.sh-ft__no { font-size: 60px; }
	.sh-ft__main h4 { font-size: 21px; line-height: 1.55; letter-spacing: .03em; }
	.sh-ft__main p { font-size: 14.5px; line-height: 1.9; letter-spacing: .03em; }
	.sh-vn { height: 290px; }
	.sh-vn__fig { transform: scale(.55); }
	.sh-vnl li { font-size: 14px; line-height: 1.8; }

	/* COLUMN */
	.sh-col__t { font-size: 17px; letter-spacing: .03em; }
	.sh-col__sum { letter-spacing: .02em; }
}

/* ---- 2回目の調整（2026-10-21）：ヒーロー・ニュース・ABOUT・RECRUIT ---- */
@media (max-width: 640px) {
	/* NEWS：メインビジュアルの下（写真のあと）へ移す */
	.sh-news { order: 9; margin-top: 20px; }
	.sac-hero__eyebrow { display: block; margin-bottom: 10px; line-height: 1.6; }
	.sac-hero__title { margin-bottom: 4px; }
	.sh-txt { text-wrap: pretty; }

	/* ABOUT：余白をつめる */
	.sh-about { padding-top: 24px; }
	.sh-about .sh-catch { margin-bottom: 20px; }

	/* RECRUIT：シンプルに（見出し → 一言 → 説明 → ボタン。灰色の枠・英語の大きな文字・大きな背景の文字は出さない） */
	.sh-recruit__photo, .sh-recruit__r h3, .sh-bigtxt { display: none; }
	.sh-recruit__card { display: flex; flex-direction: column; padding: 32px 22px 36px; }
	.sh-recruit__l, .sh-recruit__r { display: contents; }
	.sh-recruit__l .sh-ttl { order: 1; margin-bottom: 16px; }
	.sh-recruit__r h4 { order: 2; margin: 0 0 14px; font-size: 19px; line-height: 1.6; letter-spacing: .03em; }
	.sh-recruit__r .sh-txt { order: 3; margin: 0 0 24px; }
	.sh-recruit__l .sh-more { order: 4; align-self: flex-start; }
}

/* ---- 3回目の調整（2026-10-21）：ヒーローの写真を、背景にする（スマホのみ）。文字が見えやすいよう、写真の上に白の透明な膜を重ねる ---- */
@media (max-width: 640px) {
	.sac-hero__slides { position: absolute; inset: 0; left: 0; top: 0; width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; clip-path: none; z-index: 0; }
	.sac-hero__slides::after { content: ""; position: absolute; inset: 0; z-index: 2; background: rgba(255, 255, 255, .76); }
	.sac-hero__catch, .sh-news { position: relative; z-index: 3; }
}

/* ---- 4回目の調整（2026-10-21）：ABOUTの写真を、「簡略化」から下の背景にする（スマホのみ）。文字が見えやすいよう、白の透明な膜を重ねる ---- */
@media (max-width: 640px) {
	.sh-about__slider--r { position: absolute; top: 152px !important; right: 0; bottom: 0; left: 0 !important; width: 100%; max-width: none; height: auto; margin: 0; z-index: 0; }
	.sh-about__slider--r li { border-radius: 0; }
	.sh-about__slider--r::after { content: ""; position: absolute; inset: 0; z-index: 5; background: rgba(255, 255, 255, .76); pointer-events: none; }
	.sh-about .sh-inner { z-index: 6; }
}