/*
Theme Name: Amp
Theme URI: https://ampinfo.com/
Author: Amp Editorial
Author URI: https://ampinfo.com/
Description: 新着順でイベント情報を届けるイベント・セミナーメディア向けテーマ。会場・開催日・開始終了時刻・参加費を記事ごとに扱い、一覧にそのまま表示します。プレスリリースの転載に向いています。
Version: 1.3.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: amp
Tags: news, editorial, blog, custom-menu, custom-logo, featured-images, translation-ready, right-sidebar, two-columns
*/

/* ══════════════════════════════════════════════════════════
   AMP — イベント・セミナーメディア
   いつ、どこで、何があるか。
   ══════════════════════════════════════════════════════════ */

/* AMP ── 骨格＝新着順の一覧。先頭1件だけ大きく扱い、以降は行で流す。
   どの行にも開催日・会場・参加費を添えるので、一覧を眺めるだけで
   イベント情報の媒体だと分かる。 */
:root{--bg:#160c26;--bg2:#221439;--surf:#2b1a47;--line:#3a2560;--ink:#f4f0fa;--ink2:#c9bfe0;
/* --or はロゴのオレンジ。ロゴと画面のアクセントを同じ色で揃える。 */
--mut:#9186ad;--faint:#6f6489;--or:#ff9002;--vi:#b98cff;--cy:#4de0d0;
--g:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif;--l:"Archivo",sans-serif;
/* ジャンル別のアクセント。amp_category_slug_map() のキーと対応する。 */
--cat-music:#ff9002;--cat-stage:#ff7ab8;--cat-art:#b98cff;--cat-business:#4de0d0;
--cat-tech:#6aa9ff;--cat-food:#ffc247;--cat-sports:#6ddf6d;--cat-festival:#ff4d6d;--cat-family:#ff9ec8}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%;height:auto}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--g);font-size:15.5px;
line-height:1.85;font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;line-height:1.28;font-weight:900}
p{margin:0}ul{margin:0;padding:0;list-style:none}
.w{max-width:1220px;margin:0 auto;padding:0 22px}
.n{font-family:var(--l);font-variant-numeric:tabular-nums}

.hd{border-bottom:1px solid var(--line)}
.hd__in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;
max-width:1220px;margin:0 auto}
.hd__b{display:flex;align-items:center;gap:12px}
/* ロゴは幅ではなく高さで揃える。カスタムロゴでも同梱ロゴでも同じ見え方になる。 */
.hd__b img,.hd__b .custom-logo{display:block;width:auto;height:38px;max-width:none}
@media(max-width:560px){.hd__b img,.hd__b .custom-logo{height:30px}}
.hd__t{font-size:11.5px;letter-spacing:.08em;color:var(--mut);white-space:nowrap}
@media(max-width:700px){.hd__t{display:none}}
.nv{border-bottom:1px solid var(--line)}
.nv__in{display:flex;max-width:1220px;margin:0 auto;padding:0 22px;overflow-x:auto;scrollbar-width:none}
.nv__in::-webkit-scrollbar{display:none}
.nv a{font-family:var(--l);font-weight:700;font-size:12px;letter-spacing:.1em;color:var(--ink2);
padding:11px 15px;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.nv a.on{color:#fff;border-color:var(--or)}.nv a:hover{color:var(--or)}
/* ページ見出し */
.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:30px 0 16px;flex-wrap:wrap}
.ph__t{font-size:30px;font-weight:900;line-height:1.25;letter-spacing:.02em}
@media(max-width:640px){.ph__t{font-size:23px}}
.ph__x{margin-top:10px;font-size:13.5px;line-height:1.75;color:var(--mut);max-width:44em}
.ph__n{font-size:11px;letter-spacing:.1em;color:var(--mut);white-space:nowrap}
.ph__n b{font-family:var(--l);font-size:20px;color:var(--or);margin-right:5px;vertical-align:-1px}

/* ジャンル導線 */
.gen{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 24px}
.gen__i{--c:var(--or);display:inline-flex;align-items:center;gap:8px;padding:7px 13px;
border:1px solid var(--line);background:var(--bg2);font-size:12.5px;font-weight:700;line-height:1.4}
.gen__i::before{content:"";width:7px;height:7px;background:var(--c);flex:none}
.gen__i span{font-family:var(--l);font-size:10px;color:var(--faint)}
.gen__i:hover{border-color:var(--c);color:var(--c)}

/* カテゴリーチップ */
.cat-chip{--c:var(--or);display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.08em;
line-height:1.6;padding:3px 9px;background:var(--c);color:#160c26}
.cat-chip--outline{background:none;border:1px solid var(--c);color:var(--c);padding:2px 8px}
.cat-chip:hover{opacity:.82}

/* ジャンル別アクセント（cat-{key} は amp_category_color_key() が付ける）。
   --c の既定値を上書きするので、必ず .gen__i と .cat-chip より後に置く。 */
.cat-music{--c:var(--cat-music)}.cat-stage{--c:var(--cat-stage)}
.cat-art{--c:var(--cat-art)}.cat-business{--c:var(--cat-business)}
.cat-tech{--c:var(--cat-tech)}.cat-food{--c:var(--cat-food)}
.cat-sports{--c:var(--cat-sports)}.cat-festival{--c:var(--cat-festival)}
.cat-family{--c:var(--cat-family)}

/* 区分ラベル */
.kind{font-size:10.5px;letter-spacing:.06em;line-height:1.6;color:var(--mut);
border:1px solid var(--line);padding:2px 8px}

/* 開催日・会場・参加費 */
.ev{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}
.ev__i{display:inline-flex;align-items:baseline;gap:7px;padding:5px 10px;background:var(--bg2);
border:1px solid var(--line);font-size:12.5px;line-height:1.5;color:var(--ink2)}
.ev__i b{font-size:9.5px;font-weight:700;letter-spacing:.1em;color:var(--faint);flex:none}
.ev__i--when{border-color:var(--or);color:#fff}.ev__i--when b{color:var(--or)}
.ev__i--free{border-color:var(--cy);color:var(--cy)}.ev__i--free b{color:var(--cy)}

/* リード記事（トップ先頭の1件） */
.sec{margin-top:34px}
.lead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center;
padding:24px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(max-width:760px){.lead{grid-template-columns:1fr;gap:16px;padding:18px 0 22px}}
.lead__fig{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bg2);border:1px solid var(--line)}
.lead__fig img,.lead__fig svg{width:100%;height:100%;object-fit:cover;display:block}
.lead__k{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:13px}
.lead__t{font-size:25px;font-weight:900;line-height:1.45}
@media(max-width:640px){.lead__t{font-size:20px}}
.lead__t a:hover{color:var(--or)}
.lead__x{margin-top:12px;font-size:13.5px;line-height:1.85;color:var(--ink2)}
.ft{margin-top:38px;border-top:1px solid var(--line);padding:32px 0 24px}
.ft__g{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:30px;padding-bottom:22px;border-bottom:1px solid var(--line)}
@media(max-width:700px){.ft__g{grid-template-columns:1fr 1fr}}
.ft__b{display:inline-block;margin-bottom:14px}
.ft__b img,.ft__b .custom-logo{display:block;width:auto;height:32px;max-width:none}
.ft p{font-size:12.5px;line-height:1.9;color:var(--mut);margin:0}
.ft__h{font-family:var(--l);font-weight:900;font-size:10px;letter-spacing:.12em;color:#fff;margin-bottom:11px}
.ft__l li{padding:4px 0}.ft__l a{font-size:12.5px;color:var(--mut)}.ft__l a:hover{color:var(--or)}
.ft__c{padding-top:16px;font-family:var(--l);font-size:10px;color:var(--faint);display:flex;
justify-content:space-between;gap:12px;flex-wrap:wrap}


:root{
  --t-paper:var(--bg);
  --t-sheet:var(--bg2);
  --t-ink:var(--ink);
  --t-ink2:var(--ink2);
  --t-mut:var(--mut);
  --t-faint:var(--faint);
  --t-rule:var(--line);
  --t-rule2:var(--line);
  --t-acc:var(--or);
  --t-accbg:var(--surf);
  --t-alt:var(--vi);
  --t-body:var(--g);
  --t-head:var(--g);
  --t-lat:var(--l);
  --t-hover:rgba(255,255,255,.42);
}

/* ══════════════════════════════════════════════════════════
   共通レイヤ ── 個別ページ（記事・一覧・検索・固定ページ）
   ブランド変数を --t-* に写像して使う。ここから下は全テーマ共通。
   ══════════════════════════════════════════════════════════ */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;z-index:999;padding:10px 16px;
background:var(--t-ink);color:var(--t-paper);font-size:13px}
.skip-link:focus{left:8px;top:8px}
:focus-visible{outline:2px solid var(--t-acc);outline-offset:2px}

.t-wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.t-main{padding:26px 0 0}
.t-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:start}
@media(max-width:960px){.t-cols{grid-template-columns:1fr;gap:30px}}

/* 見出し */
.t-head{display:flex;align-items:baseline;gap:14px;padding-bottom:10px;
border-bottom:2px solid var(--t-ink);margin-bottom:4px}
.t-head__t{font-family:var(--t-head);font-size:17px;font-weight:600;letter-spacing:.06em;margin:0}
.t-head__e{font-family:var(--t-lat);font-size:11px;letter-spacing:.14em;color:var(--t-mut)}
.t-head__r{margin-left:auto;font-family:var(--t-head);font-size:10.5px;color:var(--t-faint);letter-spacing:.08em}

/* 一覧行 */
.t-list{margin:0;padding:0;list-style:none}
.t-item{display:grid;grid-template-columns:172px minmax(0,1fr);gap:22px;align-items:start;
padding:20px 0;border-bottom:1px solid var(--t-rule)}
@media(max-width:560px){.t-item{grid-template-columns:1fr;gap:11px}}
.t-item__fig{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--t-sheet);border:1px solid var(--t-rule)}
.t-item__fig img,.t-item__fig svg{width:100%;height:100%;object-fit:cover;display:block}
.t-item__k{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-bottom:9px}
.t-item__t{font-family:var(--t-head);font-size:16.5px;line-height:1.55;font-weight:600;margin:0}
.t-item__t a:hover{color:var(--t-acc)}
.t-item__x{margin:7px 0 0;font-size:13.5px;line-height:1.8;color:var(--t-mut)}
.t-item__m{margin-top:8px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;
font-family:var(--t-head);font-size:10.5px;color:var(--t-faint);letter-spacing:.06em}
.t-badge{display:inline-block;font-family:var(--t-head);font-size:9.5px;letter-spacing:.1em;
line-height:1.6;padding:2px 7px;border:1px solid var(--t-rule2);color:var(--t-mut)}

/* 記事本文 */
.t-article{max-width:44em}
.t-article__hd{padding-bottom:20px;border-bottom:1px solid var(--t-ink);margin-bottom:22px}
.t-article__k{display:flex;align-items:center;gap:12px;margin-bottom:12px;
font-family:var(--t-head);font-size:10.5px;letter-spacing:.16em;color:var(--t-acc)}
.t-article__k .r{flex:1;height:1px;background:var(--t-rule)}
.t-article__t{font-family:var(--t-head);font-size:31px;font-weight:600;line-height:1.44;margin:0}
@media(max-width:640px){.t-article__t{font-size:24px}}
.t-article__sub{margin:14px 0 0;font-size:15.5px;line-height:1.95;color:var(--t-ink2)}
.t-article__by{margin-top:16px;display:flex;gap:16px;flex-wrap:wrap;align-items:baseline;
font-family:var(--t-head);font-size:11.5px;color:var(--t-mut);letter-spacing:.04em}
.t-article__by b{color:var(--t-ink);font-weight:600}
.t-hero{margin:0 0 24px}
.t-hero img{width:100%;height:auto;display:block}
.t-hero figcaption{margin-top:9px;font-family:var(--t-head);font-size:11.5px;color:var(--t-mut);line-height:1.75}

.t-body{font-size:16.5px;line-height:1.95}
.t-body > *{margin:0 0 1.4em}
.t-body > *:last-child{margin-bottom:0}
.t-body h2{font-family:var(--t-head);font-size:19px;font-weight:600;margin:2em 0 .7em;letter-spacing:.02em}
.t-body h3{font-family:var(--t-head);font-size:16.5px;font-weight:600;margin:1.8em 0 .6em}
.t-body a{color:var(--t-acc);border-bottom:1px solid var(--t-accbg)}
.t-body a:hover{border-color:var(--t-acc)}
.t-body img{max-width:100%;height:auto}
.t-body figure{margin:1.8em 0}
.t-body figcaption{margin-top:8px;font-family:var(--t-head);font-size:11.5px;color:var(--t-mut);line-height:1.75}
.t-body blockquote{margin:1.8em 0;padding:2px 0 2px 18px;border-left:3px solid var(--t-acc);color:var(--t-ink2)}
.t-body ul,.t-body ol{padding-left:1.5em}
.t-body li{margin-bottom:.4em}
.t-body table{width:100%;border-collapse:collapse;font-size:14px}
.t-body th,.t-body td{padding:9px 12px;border-bottom:1px solid var(--t-rule);text-align:left}
.t-body th{font-family:var(--t-head);font-size:11px;color:var(--t-mut);font-weight:400;background:var(--t-sheet)}
.t-body code{font-family:var(--t-lat);font-size:.9em;background:var(--t-sheet);padding:1px 5px}
.t-body pre{background:var(--t-sheet);padding:14px 16px;overflow-x:auto;font-family:var(--t-lat);font-size:13px}
.t-body hr{border:0;border-top:1px solid var(--t-rule);margin:2.4em 0}
.t-body .wp-caption{max-width:100%}
.alignleft{float:left;margin:0 1.4em 1em 0}
.alignright{float:right;margin:0 0 1em 1.4em}
.aligncenter{margin-left:auto;margin-right:auto;display:block}
.alignwide{width:min(100%,60em)}
.alignfull{width:100%}

/* 出典（全テーマ共通の中核機能） */
.t-source{margin:30px 0 0;border:1px solid var(--t-rule2);background:var(--t-sheet);padding:18px 20px}
.t-source__k{font-family:var(--t-head);font-size:10.5px;letter-spacing:.16em;color:var(--t-acc);
padding-bottom:11px;margin-bottom:6px;border-bottom:1px solid var(--t-rule)}
.t-source__r{display:flex;gap:14px;font-size:13.5px;padding:4px 0;color:var(--t-ink2)}
.t-source__r b{font-family:var(--t-head);font-size:11px;letter-spacing:.06em;color:var(--t-mut);
min-width:78px;flex:none;font-weight:400;padding-top:3px}
.t-source__r a{color:var(--t-acc);word-break:break-all;border-bottom:1px solid var(--t-accbg)}
.t-source__n{margin-top:10px;padding-top:9px;border-top:1px solid var(--t-rule);
font-family:var(--t-head);font-size:11.5px;line-height:1.8;color:var(--t-mut)}

/* 記事固有メタ */
.t-meta{margin:22px 0 0;display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--t-rule)}
.t-meta__i{padding:11px 22px 11px 0;margin-right:22px;border-right:1px solid var(--t-rule)}
.t-meta__i:last-child{border-right:0;margin-right:0;padding-right:0}
.t-meta__k{font-family:var(--t-head);font-size:10px;letter-spacing:.1em;color:var(--t-faint);margin-bottom:3px}
.t-meta__v{font-family:var(--t-head);font-size:15px;line-height:1.35;color:var(--t-ink)}

/* 共有・著者・関連 */
.t-share{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.t-share a,.t-share button{display:inline-flex;align-items:center;gap:6px;font-family:var(--t-head);
font-size:11px;letter-spacing:.06em;color:var(--t-ink2);border:1px solid var(--t-rule2);
background:none;padding:6px 12px;cursor:pointer}
.t-share a:hover,.t-share button:hover{border-color:var(--t-acc);color:var(--t-acc)}
.t-author{margin-top:30px;padding:18px 20px;border:1px solid var(--t-rule);background:var(--t-sheet);
display:flex;gap:16px;align-items:flex-start}
.t-author img{border-radius:50%;flex:none}
.t-author__n{font-family:var(--t-head);font-size:14px;font-weight:600}
.t-author__b{margin:6px 0 0;font-size:13px;line-height:1.8;color:var(--t-mut)}
.t-rel{margin-top:34px}
.t-nav{margin-top:26px;display:flex;justify-content:space-between;gap:16px;
padding-top:16px;border-top:1px solid var(--t-rule);font-family:var(--t-head);font-size:12.5px}
.t-nav a:hover{color:var(--t-acc)}

/* ページ送り */
.t-pager{margin:30px 0 0;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.t-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;
min-width:34px;height:34px;padding:0 9px;border:1px solid var(--t-rule2);
font-family:var(--t-lat);font-size:13px;color:var(--t-ink2)}
.t-pager .page-numbers:hover{border-color:var(--t-ink)}
.t-pager .page-numbers.current{background:var(--t-ink);color:var(--t-paper);border-color:var(--t-ink)}
.t-pager .dots{border:0}

/* サイドバー */
.t-side .widget{margin-bottom:28px}
.t-side .widget-title,.t-side h2{font-family:var(--t-head);font-size:11px;letter-spacing:.14em;
color:var(--t-ink);padding-bottom:10px;margin:0 0 10px;border-bottom:1px solid var(--t-ink);font-weight:600}
.t-side ul{list-style:none;margin:0;padding:0}
.t-side li{padding:6px 0;border-bottom:1px solid var(--t-rule);font-size:13.5px}
.t-side li:last-child{border-bottom:0}
.t-side a:hover{color:var(--t-acc)}
.t-rank{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--t-rule)}
.t-rank:last-child{border-bottom:0}
.t-rank__n{font-family:var(--t-lat);font-size:18px;color:var(--t-rule2);line-height:1.2}
.t-rank--top .t-rank__n{color:var(--t-acc)}
.t-rank__t{font-family:var(--t-head);font-size:13.5px;font-weight:600;line-height:1.5}
.t-rank:hover .t-rank__t{color:var(--t-acc)}

/* 検索フォーム */
.t-search{display:flex;border-bottom:1.5px solid var(--t-ink);max-width:420px}
.t-search input[type=search]{flex:1;background:none;border:0;padding:9px 2px;
font-family:var(--t-head);font-size:14px;color:var(--t-ink);min-width:0}
.t-search input[type=search]:focus{outline:none}
.t-search button{background:none;border:0;cursor:pointer;padding:9px 2px 9px 16px;
font-family:var(--t-head);font-size:12px;letter-spacing:.12em;color:var(--t-acc);font-weight:600}

/* パンくず */
.t-crumb{padding:14px 0 0;font-family:var(--t-head);font-size:11.5px;color:var(--t-mut);letter-spacing:.04em}
.t-crumb a:hover{color:var(--t-acc)}
.t-crumb span{margin:0 7px;color:var(--t-faint)}

/* コメント */
.t-comments{margin-top:38px;padding-top:20px;border-top:2px solid var(--t-ink)}
.t-comments ol{list-style:none;margin:0;padding:0}
.t-comments .comment-body{padding:16px 0;border-bottom:1px solid var(--t-rule)}
.t-comments .children{padding-left:26px}
.t-comments .comment-author{font-family:var(--t-head);font-size:13px;font-weight:600}
.t-comments .comment-meta{font-family:var(--t-head);font-size:11px;color:var(--t-faint)}
.t-comments input[type=text],.t-comments input[type=email],.t-comments input[type=url],
.t-comments textarea{width:100%;border:1px solid var(--t-rule2);background:var(--t-sheet);
padding:9px 11px;font-family:inherit;font-size:14px;color:var(--t-ink)}
.t-comments .submit{font-family:var(--t-head);font-size:12.5px;letter-spacing:.08em;
background:var(--t-ink);color:var(--t-paper);border:0;padding:10px 22px;cursor:pointer}

/* 404・空状態 */
.t-empty{padding:40px 0;max-width:40em}
.t-empty__t{font-family:var(--t-head);font-size:22px;font-weight:600;margin:0 0 12px}
.t-empty__x{font-size:14.5px;line-height:1.9;color:var(--t-mut);margin:0 0 20px}

@media print{
  .t-side,.t-share,.t-comments,.t-pager,.t-nav{display:none}
  body{background:#fff}
}
