@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ（ライトセンド本体用。原本は ワードプレス博士/lightscend_main/theme/swell_child/）
    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
*/

/* ---------- 全体: ライトセンド青を軸に、余白広め・角は小さめ ---------- */
:root {
  --ls-blue: #1C67D8;
  --ls-navy: #1E3A8A;
  --ls-ink: #1f2937;
  --ls-sub: #5b6472;
  --ls-line: #dbe3ee;
  --ls-pale: #eef4fc;
}
body { color: var(--ls-ink); letter-spacing: .02em; }
.l-header { border-bottom: 1px solid var(--ls-line); }
.c-gnav .c-gnav__link { font-weight: 600; letter-spacing: .04em; }
.l-footer { border-top: 1px solid var(--ls-line); }

/* ---------- セクション見出し（トップ） ---------- */
.ls-sec { padding: 3.5rem 0; }
.ls-sec + .ls-sec { border-top: 1px solid var(--ls-line); }
.ls-sec__title {
  font-size: 1.5rem; font-weight: 700; letter-spacing: .08em;
  margin: 0 0 1.5rem; padding-left: .75rem; border-left: 4px solid var(--ls-blue);
}
.ls-sec__title small { display: block; font-size: .75rem; color: var(--ls-sub); letter-spacing: .2em; font-weight: 500; }

/* ---------- NEWS リスト（投稿リストブロックの list 表示を会社サイト風に） ---------- */
.ls-news .p-postList.-type-list .p-postList__item { border-bottom: 1px dashed var(--ls-line); padding: .6em 0; }
.ls-news .p-postList__thumb { display: none; }
.ls-news .p-postList__title { font-size: 1rem; font-weight: 500; }
.ls-news .p-postList__times, .ls-news .c-postTimes__posted { color: var(--ls-blue); font-weight: 600; font-family: inherit; }
.ls-news .p-postList__body { padding-left: 0; }

/* ---------- 事業の帯リスト ---------- */
.ls-biz { counter-reset: biz; }
.ls-biz .wp-block-columns { align-items: center; gap: 1.25rem; margin: 0; padding: 1.1rem 0; border-bottom: 2px solid var(--ls-navy); }
.ls-biz .wp-block-columns:last-child { border-bottom-width: 2px; }
.ls-biz .wp-block-image { margin: 0; }
.ls-biz .wp-block-image img { width: 64px; height: 64px; object-fit: contain; }
.ls-biz h3 { margin: 0; font-size: 1.35rem; font-weight: 700; letter-spacing: .06em; color: var(--ls-navy); }
.ls-biz p { margin: .25rem 0 0; color: var(--ls-sub); font-size: .95rem; }
@media (max-width: 599px) {
  .ls-biz .wp-block-columns { flex-wrap: nowrap !important; }
  .ls-biz .wp-block-column:first-child { flex: 0 0 56px !important; }
  .ls-biz .wp-block-image img { width: 48px; height: 48px; }
  .ls-biz h3 { font-size: 1.1rem; }
}

/* ---------- 代表挨拶（トップ抜粋・挨拶ページ） ---------- */
.ls-greet .wp-block-image img { border-radius: 6px; box-shadow: 0 4px 16px rgba(30,58,138,.12); }
.ls-greet__sign { text-align: right; color: var(--ls-sub); font-size: .9rem; }
.ls-greet__sign img { max-height: 44px; width: auto; display: inline-block; margin-top: .25rem; }

/* ---------- 会社概要の表 ---------- */
.ls-outline table { width: 100%; border-collapse: collapse; }
.ls-outline th { width: 11em; background: var(--ls-pale); color: var(--ls-navy); font-weight: 600; text-align: left; vertical-align: top; padding: .9em 1em; border-bottom: 1px solid #fff; }
.ls-outline td { padding: .9em 1em; border-bottom: 1px solid var(--ls-line); line-height: 1.8; }
@media (max-width: 599px) {
  .ls-outline th, .ls-outline td { display: block; width: 100%; }
  .ls-outline th { padding: .5em .8em; }
}
.ls-partners img { height: 30px; width: auto; margin: 0 .6em .6em 0; vertical-align: middle; }

/* ---------- ACCESS ---------- */
.ls-map iframe { width: 100%; height: 360px; border: 0; border-radius: 6px; }

/* ---------- サービス一覧（運営サービスのロゴ） ---------- */
.ls-services .wp-block-image { margin: 0; background: #fff; border: 1px solid var(--ls-line); border-radius: 6px; padding: 14px; display: flex; align-items: center; justify-content: center; min-height: 92px; transition: box-shadow .2s, transform .2s; }
.ls-services .wp-block-image:hover { box-shadow: 0 6px 18px rgba(28,103,216,.14); transform: translateY(-2px); }
.ls-services .wp-block-image img { max-height: 56px; width: auto; max-width: 100%; }
.ls-services .wp-block-gallery { gap: 12px; }

/* ---------- 技術ノート（tech） ---------- */
.ls-history ul { font-size: .9rem; color: var(--ls-sub); }
.ls-media-note { background: var(--ls-pale); border-radius: 6px; padding: 1em 1.25em; margin: 2.5em 0 1.5em; font-size: .95rem; }
.ls-author { border-top: 1px solid var(--ls-line); padding-top: 1.25em; font-size: .95rem; }
.ls-author h2 { font-size: 1rem; margin-bottom: .5em; }

/* 見出し h2 をバンドではなく下線に（会社サイト向けに静かな見た目） */
.post_content h2 { background: none !important; color: var(--ls-ink) !important; padding: .4em 0 .5em !important; border-bottom: 2px solid var(--ls-blue); border-radius: 0; }
.post_content h3 { border-left: 4px solid var(--ls-blue); background: none !important; padding-left: .6em; }

/* お知らせ・IR・技術ノートの一覧はサムネイル無しの日付リスト */
.ls-info .p-postList__thumb, .category-ir .p-postList__thumb, .ls-tech .p-postList__thumb, .home .ls-news .p-postList__thumb { display: none !important; }
.ls-info .p-postList__body, .category-ir .p-postList__body, .ls-tech .p-postList__body { padding: 0 !important; }
.ls-info .p-postList__item, .category-ir .p-postList__item { border-bottom: 1px dashed var(--ls-line); padding: 1em 0; }
