/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/* =========================================================
   Aichi Sky Expo News CSS（完全版）
   - 一覧（ショートコード）/ ページネーション / 空表示
   - 単一記事（投稿デフォルトテンプレート）
   - 左サイド固定レイアウト / パンくず右寄せ（固定リンク想定）
   - 全体の枠線（上下）＋サイドとの縦仕切り線
   - モバイルで左サイド非表示
   ========================================================= */

/* ---------- カラー／共通 ---------- */
:root{
  --ase-brand:#004097;    /* 強調色・現在ページ色 */
  --ase-border:#D9D9D9;   /* 区切り線 */
  --ase-chip-text:#004097;/* タグ文字色 */
  --ase-link:#1e2a37;     /* 本文リンク色 */
  --ase-text:#222222;     /* 本文文字色 */
  --ase-muted:#222222;    /* 補助テキスト */
  --ase-bg-soft:#f6f8fb;  /* 薄い背景 */
}

/* =========================================================
   ▼ 一覧（ショートコード出力）
   ========================================================= */
.asenews-list{ margin:0; padding:0; }
.asenews-list > .asenews-item{
  padding:30px 0;
  border-bottom:2px solid var(--ase-border);
}
.asenews-list > .asenews-item.is-last{
  border-bottom:none !important; /* 最後だけ線を消す（ページ下線と重複防止） */
}

/* メタ（投稿日＋カテゴリバッジ） */
.asenews-meta{
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  margin-bottom:10px;
}
.asenews-date{
  font-size:18px; line-height:1.2; color:#2b2b2b; letter-spacing:.02em;
}
.asenews-tags{ display:flex; gap:12px; flex-wrap:wrap; }
.asenews-tag{
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 12px; font-size:16px; line-height:1;
  color:var(--ase-chip-text);
  border:2px solid var(--ase-chip-text);
  border-radius:0; background:transparent;
}

/* 抜粋リンク */
.asenews-content a{
  color:var(--ase-link); text-decoration:none; font-size:18px; line-height:1.9;
}
.asenews-content a:hover{ text-decoration:underline; }

/* 空表示 */
.asenews-empty{
  padding:24px 0; text-align:center; color:var(--ase-muted); font-size:16px;
}

/* ページネーション（下側） */
.asenews-footer{
  border-top:1px solid var(--ase-border);
  margin-top:24px; padding-top:20px;
}
.asenews-pagination{ margin:0; }
.asenews-page-numbers{
  list-style:none; display:flex; gap:12px; padding:0; margin:0;
  justify-content:center; align-items:center;
}
.asenews-page-item .page-numbers{
  display:flex; justify-content:center; align-items:center;
  width:40px; height:40px; border:1px solid #D9D9D9; border-radius:9999px;
  text-decoration:none; font-size:14px; line-height:1; color:inherit; background:#fff;
}
.asenews-page-item .page-numbers:hover{ border-color:#D9D9D9; }
.asenews-page-item .page-numbers.current{
  background:var(--ase-brand); color:#fff; border-color:var(--ase-brand); cursor:default;
}
.asenews-page-item .page-numbers.dots{
  border:none; width:auto; height:auto; padding:0 4px; border-radius:0;
}
.asenews-page-item .page-numbers.prev img,
.asenews-page-item .page-numbers.next img{
  display:block; width:16px; height:16px;
}

.asenews-empty{
  padding:24px 0;
  text-align:center;
  color:#333333;
  font-size:18px;
}
/* SR-only */
.screen-reader-text{
  position:absolute !important; clip:rect(1px,1px,1px,1px);
  height:1px; width:1px; overflow:hidden; white-space:nowrap; padding:0; border:0;
}

/* =========================================================
   ▼ 単一記事（詳細ページ）
   ========================================================= */

/* 外枠ライン（上下） */
.asenews-frame{
  border-top:1px solid var(--ase-border);
  border-bottom:1px solid var(--ase-border);
  padding:40px 20px 20px 20px;
  margin:350px 0 24px;
}

/* 2カラムと縦仕切り線 */
.asenews-single{
  display:grid; grid-template-columns:300px 1fr; gap:40px;
}
.asenews-sidebar{
  padding-top:8px;
  border-right:1px solid var(--ase-border);
  padding-right:24px;
  padding-left:30px;
}
.asenews-main{ padding-left:24px;padding-right:24px; min-width:0; } /* はみ出し防止 */

/* 左サイド固定レイアウト（図どおり） */
.asenews-warp{
  border-left:1px solid var(--ase-border);
}

.asenews-side-title{
  font-size:18px; margin:0 0 20px 0; color:#2b2b2b;
}
.asenews-side-list{
  list-style:none; padding:10px 12px 10px 24px; margin:0; display:flex; flex-direction:column; gap:10px;border-left:1px solid var(--ase-border);
}
.asenews-side-list li a{
  display:inline-flex; align-items:center; gap:5px;
  color:var(--ase-brand); text-decoration:solid underline 1px;text-underline-offset:2px; padding:6px 0;
  border-bottom:1px solid transparent;
}
.asenews-side-list li a:hover{ border-color:var(--ase-border); }
/* 左の小ドット */
.asenews-side-list .dot{
  width:6px; height:6px; background:#ffffff; border-radius:9999px; display:inline-block;
}
.asenews-divider{
  height:1px; background:var(--ase-border); margin-left:12px;border-left:1px solid var(--ase-border);
}

/* ヘッダー */
.asenews-header{ margin-bottom:20px; }
.asenews-date{ color:#2b2b2b; font-size:16px; }
.asenews-tags{ display:flex; gap:12px; flex-wrap:wrap; }
.asenews-tag{
  display:inline-flex; align-items:center; justify-content:center;
  padding:6px 10px; font-size:14px; line-height:1;
  color:var(--ase-brand); border:2px solid var(--ase-brand); border-radius:0; background:transparent;
}
.asenews-title{ font-size:28px; line-height:1.4; padding:30px 0 10px 0; color:var(--ase-text); }

/* パンくず：右寄せ＋固定 */
.asenews-breadcrumb.is-fixed{
  display:flex; gap:8px; flex-wrap:wrap;
  justify-content:flex-end;
  font-size:13px; color:var(--ase-muted);
  padding:30px 0;
}
.asenews-breadcrumb.is-fixed a{
  color:var(--ase-muted); text-decoration:underline;
}
.asenews-breadcrumb.is-fixed a:hover{ text-decoration:underline; }
.asenews-breadcrumb.is-fixed .current{ color:#9aa3af; }

/* 本文 */
.asenews-hero{ margin:20px 0 28px; }
.asenews-hero img{ width:100%; height:auto; display:block; }
.asenews-article{ border-top:1px solid var(--ase-border); padding-top:24px; }

.asenews-content{ color:var(--ase-text); font-size:16px; line-height:1.9; }
.asenews-content p{ margin:1em 0; }

/* 見出し（H2にダッシュ） */
.asenews-content h2{
  font-size:20px; margin:2em 0 .8em; position:relative; padding-left:1.4em;
}
.asenews-content h2::before{
  content:"—"; position:absolute; left:0; top:0; color:var(--ase-brand);
}
.asenews-content h3{ font-size:16px; margin:1.6em 0 .6em; font-weight:700; }
.asenews-content h4{ font-size:15px; margin:1.4em 0 .6em; font-weight:700; }

/* リスト・表・画像 */
.asenews-content ul{ margin:1em 0 1em 1.2em; }
.asenews-content ol{ margin:1em 0 1em 1.2em; }
.asenews-content li{ margin:.3em 0; }
.asenews-content img{ max-width:100%; height:auto; }
.asenews-content table{ width:100%; border-collapse:collapse; margin:1.2em 0; }
.asenews-content th,
.asenews-content td{ border:1px solid var(--ase-border); padding:.6em .8em; }

/* 末尾アクション（Share + 一覧へ） */
.asenews-bottom-actions{
  border-top:1px solid var(--ase-border);
  margin-top:28px; padding-top:40px;
  display:flex; flex-direction:column; gap:16px; align-items:center;
}
.asenews-sharepill{
  display:inline-flex; align-items:center; gap:10px;
  padding:16px 20px; background:var(--ase-bg-soft);
}
.asenews-sharepill .label{ font-size:13px; color:#333; }
.asenews-sharepill .share img{ display:block; width:18px; height:18px; }

.asenews-back-btn{
  display:inline-flex; align-items:center; gap:12px;margin-top:30px;
  background:#0175C0; color:#fff; text-decoration:none;
  border-radius:9999px; padding:10px 16px; font-family: "Noto Sans JP";font-weight:500;
}
.asenews-back-btn .icon-circle{
  width:24px; height:24px; background:#fff; border-radius:9999px;
  display:flex; align-items:center; justify-content:center;
}
.asenews-back-btn .icon-circle img{ width:16px; height:16px; }

/* =========================================================
   ▼ レスポンシブ
   ========================================================= */
@media (max-width: 960px){
  /* モバイルは左サイド非表示＆1カラム化 */
  .asenews-sidebar{ display:none !important; }
  .asenews-single{ grid-template-columns:1fr; gap:28px; }
  .asenews-main{ padding:0; }
  .asenews-frame{ padding:200px 20px 20px 20px; }

  /* タイポ少し落とす（一覧/詳細） */
  .asenews-date{ font-size:16px; }
  .asenews-tag{ font-size:14px; padding:6px 10px; }
  .asenews-content a{ font-size:16px; line-height:1.8; }
  .asenews-title{ font-size:24px; }
  .asenews-page-item .page-numbers{ width:36px; height:36px; }

  .asenews-sharepill{ gap:8px; padding:6px 10px; }
  .asenews-back-btn{ padding:10px 14px; }
}
/* スマホ: メタ行を縦並びにして、タグを日付の下の行へ */
@media (max-width: 640px){
  .asenews-meta{
    display:grid;          /* 縦並び */
    grid-template-columns: 1fr;
    row-gap: 6px;
    align-items:start;
  }
  .asenews-date{
    display:block;         /* 日付を1行で表示 */
  }
  .asenews-tags{
    display:flex;          /* 横並び */
    flex-wrap:wrap;        /* 折り返しOK */
    gap:8px 10px;          /* 行間・列間の余白 */
    margin-top: 10px;
  }
  .asenews-tag{
    white-space:nowrap;    /* タグ内の折り返し防止（見た目を揃える） */
  }
}