@charset "UTF-8";
/* =========================================================
   大明司 サイト共通の着せ替え（トップLP・LP以外の、記事・一覧・ガイド・お問い合わせ等）
   WordPressテーマ「SANGO」の上から、トップLPと同じ見た目にそろえます。
   すべて body.djs の中だけに効くようにしています。
   ========================================================= */
body.djs{
  --ink:#1c1917; --ink-2:#2a2623; --paper:#ffffff; --panel:#f4f4f2; --mute:#6b6661;
  --or:#fb8619; --or2:#fb4a19; --grad:linear-gradient(90deg,#fb8619 0%,#fb4a19 100%);
  --lime:#c6f23a; --violet:#7b3fe4; --red:#e8322a; --green:#22a24a; --yellow:#f5c03a; --blue:#2457b5;
  --ff-sans:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --ff-serif:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;
  --ff-en:"Inter","Noto Sans JP","Helvetica Neue",Arial,sans-serif;
  --ff-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --pop:cubic-bezier(.2,1.6,.4,1); --ease:cubic-bezier(.2,.9,.2,1);
  /* SANGO のテーマ色をサイトの色に */
  --sgb-main-color:#1c1917; --sgb-pastel-color:#fff4e8; --sgb-accent-color:#fb4a19;
  --sgb-link-color:#d9420f; --sgb-header-bg:#1c1917;
  font-family:var(--ff-sans)!important;color:var(--ink);
  background-color:#e8e8e8!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%231c1917' stroke-opacity='.07' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M-10 30 30 -10M-10 70 70 -10M-10 110 110 -10M30 130 130 30M70 130 130 70'/%3E%3Cpath d='M58 52h10v10' stroke-opacity='.12'/%3E%3C/g%3E%3C/svg%3E")!important;
  -webkit-font-smoothing:antialiased;
}
body.djs a{color:var(--sgb-link-color)}
body.djs ::selection{background:var(--lime);color:var(--ink)}

/* ---------- テーマのヘッダー・メニュー・ハンバーガーを消して、共通ヘッダーへ ---------- */
body.djs:has(#djs-hdr) .sgb-header,body.djs #drawer,body.djs .drawer,body.djs .fixed-menu,body.djs .header-search,body.djs .sgb-footer__menu,body.djs .sgb-footer__links,body.djs .sgb-footer__copyright,body.djs footer.footer,body.djs #footer{display:none!important}
body.djs:has(.djs-ftr) .sgb-footer,body.djs:has(.djs-ftr) .footer{display:none!important}
.djs-mark{display:inline-flex;align-items:baseline;gap:.24em;font-family:var(--ff-en);font-style:italic;font-weight:900;letter-spacing:-.02em;line-height:1;white-space:nowrap;color:#fff}
.djs-mark span:last-child{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}

.djs-hdr{position:sticky;top:0;z-index:999;background:var(--ink);color:#fff;box-shadow:0 6px 18px rgba(28,25,23,.18)}
.djs-hdr__in{display:flex;align-items:center;gap:8px;max-width:1180px;margin:0 auto;padding:10px max(14px,env(safe-area-inset-left,0px))}
.djs-logo{display:grid;gap:3px;min-width:0;text-decoration:none!important;color:#fff!important;margin-right:auto}
.djs-logo .djs-mark{font-size:clamp(16px,4.9vw,22px)}
.djs-logo small{font-size:10.5px;font-weight:700;color:#bdb7ae;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.djs-hdr__search{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:2px solid #4a4540;border-radius:12px;background:transparent;color:#fff;cursor:pointer}
.djs-hdr__search svg{width:17px;height:17px}
.djs-hdr__cta{display:inline-flex;align-items:center;gap:5px;flex:none;height:40px;padding:0 10px 0 12px;border:2px solid var(--or);border-radius:12px;color:#fff!important;font-weight:900;font-size:13px;text-decoration:none!important;white-space:nowrap}
.djs-hdr__cta svg{width:10px;height:10px;color:var(--or)}
.djs-cats{border-top:1px solid #2f2a26}
.djs-cats ul{display:flex;gap:6px;max-width:1180px;margin:0 auto;padding:8px max(14px,env(safe-area-inset-left,0px)) 10px;list-style:none;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.djs-cats ul::-webkit-scrollbar{display:none}
.djs-cats li{flex:none;margin:0;padding:0}
.djs-cats li:last-child{padding-right:28px}
.djs-cats a{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:1.5px solid #4a4540;border-radius:99px;background:#24211f;color:#ece8e1!important;font-weight:900;font-size:12.5px;text-decoration:none!important;white-space:nowrap;transition:background .2s,border-color .2s}
.djs-cats a i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.djs-cats a:hover,.djs-cats a.is-now{border-color:var(--or);background:#2f2a26}
.djs-cats a.is-now{box-shadow:inset 0 -3px 0 var(--or)}
.djs-search{display:flex;gap:6px;max-width:1180px;margin:0 auto;padding:0 14px 12px}
.djs-search[hidden]{display:none}
.djs-search input{flex:1;min-width:0;height:42px;padding:0 14px;border:2px solid #4a4540;border-radius:12px;background:#fff;font:inherit;font-size:16px}
.djs-search button{height:42px;padding:0 16px;border:0;border-radius:12px;background:var(--grad);color:#fff;font:inherit;font-weight:900;cursor:pointer}
@media (min-width:768px){.djs-logo .djs-mark{font-size:26px}.djs-hdr__cta{font-size:14px;padding:0 16px}}
/* PC：ロゴの右にカテゴリーを並べて1段にする（記事を読める縦の広さを増やす） */
@media (min-width:1024px){
.djs-hdr{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;column-gap:10px;padding:8px max(14px,calc((100% - 1180px) / 2 + 14px));transition:translate .3s var(--ease,ease),padding .25s}
.djs-hdr__in{display:contents}
.djs-logo{grid-column:1;grid-row:1;margin-right:6px}
.djs-cats{grid-column:2;grid-row:1;min-width:0;border-top:0}
.djs-cats ul{justify-content:center;max-width:none;padding:0;-webkit-mask-image:none;mask-image:none}
.djs-cats li:last-child{padding-right:0}
.djs-cats a{height:34px;padding:0 11px}
.djs-hdr__search{grid-column:3;grid-row:1}
.djs-hdr__cta{grid-column:4;grid-row:1}
.djs-search{grid-column:1/-1;grid-row:2;width:100%;max-width:none;padding:10px 0 4px}
.djs-logo .djs-mark,.djs-logo small,.djs-cats a{transition:font-size .25s,height .25s}
/* 下へ読み進めるとヘッダーを隠し、少し上に戻すと出す（2026-11-07 B案に決定） */
.djs-hdr.is-hide{translate:0 -100%;box-shadow:none}
}
@media (min-width:1024px) and (max-width:1179px){.djs-logo small{display:none}.djs-cats ul{justify-content:flex-start;gap:4px}.djs-cats a{padding:0 9px;font-size:12px}}

/* ---------- 全体の枠 ---------- */
body.djs #content{padding-top:18px}
body.djs #inner-content,body.djs .inner-content{max-width:1180px}
body.djs article.entry,body.djs #main > article,body.djs .catpost-cards,body.djs #main .page-title-wrap{border-radius:22px}
body.djs article.entry{background:#fff!important;border:2px solid var(--ink);box-shadow:0 10px 0 rgba(28,25,23,.08);overflow:visible}
body.djs .breadcrumb{background:transparent!important;padding:0!important;margin:0 0 10px!important}
body.djs .breadcrumb ul,body.djs .breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}
body.djs .breadcrumb li{font-size:11.5px;font-weight:700}
body.djs .breadcrumb li a{display:inline-block;padding:2px 10px;border:1.5px solid #d6d3cc;border-radius:99px;color:var(--mute)!important;text-decoration:none}
body.djs .breadcrumb li::after,body.djs .breadcrumb li a::after{color:#cfcac3!important}
body.djs .entry-title{font-family:var(--ff-serif)!important;font-weight:900!important;color:var(--ink)!important;line-height:1.5!important;letter-spacing:.01em}
body.djs .entry-meta,body.djs .entry-meta time{font-family:var(--ff-mono)!important;color:var(--mute)!important}

/* ---------- アイキャッチ：額縁＋ステッカー ---------- */
body.djs .post-thumbnail{position:relative;margin:14px 0 18px!important}
body.djs .post-thumbnail img{display:block;width:100%;height:auto;border:2px solid var(--ink);border-radius:16px!important;box-shadow:6px 6px 0 var(--ink)}
.djs-eye{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px;pointer-events:none}
body.djs .post-thumbnail.djs-has-cover .djs-eye{position:absolute;left:12px;top:10px;z-index:2;margin:0}
.djs-eye span{padding:2px 10px;border:2px solid var(--ink);border-radius:99px;background:var(--lime);color:var(--ink);font-weight:900;font-size:11.5px;line-height:1.6;rotate:-3deg;box-shadow:0 3px 0 var(--ink)}
.djs-eye span + span{background:#fff;rotate:2deg}

body.djs .page-header{position:relative;padding:22px 18px!important;border:0!important;border-radius:18px!important;background:var(--ink)!important;background-image:none!important;color:#fff!important}
body.djs .page-header::before{color:var(--or)!important;font-family:var(--ff-en)!important;font-style:italic!important;font-weight:900!important}
body.djs .page-header::after{background:var(--grad)!important}
body.djs .page-header .page-title,body.djs .page-header h1{color:#fff!important;font-family:var(--ff-serif)!important}
body.djs .page-header .breadcrumb li a{border-color:#4a4540;color:#c9c4bb!important}

/* ---------- 本文 ---------- */
body.djs .entry-content{font-size:16px;line-height:1.95;color:#2a2623}
body.djs .entry-content p{margin-bottom:1.4em}
body.djs .entry-content a{color:var(--sgb-link-color);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:rgba(251,74,25,.35)}
body.djs .entry-content strong,body.djs .entry-content b{background:linear-gradient(transparent 62%,rgba(198,242,58,.7) 62%)}
/* 見出し */
body.djs .entry-content h2{position:relative;margin:2.6em 0 1.1em!important;padding:16px 16px 16px 58px!important;border:0!important;border-radius:14px!important;background:var(--ink)!important;color:#fff!important;font-family:var(--ff-sans)!important;font-weight:900!important;font-size:clamp(19px,4.8vw,23px)!important;line-height:1.5!important;box-shadow:0 6px 0 var(--or2)}
/* テーマが見出しの ::before を消しているので、!important で番号を出す */
body.djs .entry-content h2[data-djs-no]::before{content:attr(data-djs-no)!important;position:absolute!important;left:12px!important;top:50%!important;right:auto!important;bottom:auto!important;translate:0 -50%;transform:none!important;display:grid!important;place-items:center;width:34px!important;height:34px!important;border-radius:10px!important;background:linear-gradient(90deg,#fb8619 0%,#fb4a19 100%)!important;color:#fff!important;font-family:var(--ff-en)!important;font-style:italic!important;font-weight:900!important;font-size:15px!important;line-height:1!important;border:0!important;margin:0!important;opacity:1!important;visibility:visible!important;box-shadow:none!important}
body.djs .entry-content h2::after{display:none!important}
body.djs .entry-content h3{position:relative;margin:2em 0 .9em!important;padding:6px 0 8px 16px!important;border:0!important;border-left:6px solid var(--or2)!important;background:none!important;color:var(--ink)!important;font-weight:900!important;font-size:clamp(17px,4.4vw,20px)!important;line-height:1.55!important}
body.djs .entry-content h3::before{display:none!important}
body.djs .entry-content h3::after{content:"";position:absolute;left:16px;right:0;bottom:0;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--lime),rgba(198,242,58,0));display:block!important;border:0!important}
body.djs .entry-content h4{margin:1.7em 0 .7em!important;padding:0 0 0 22px!important;border:0!important;background:none!important;position:relative;font-weight:900!important;font-size:16.5px!important;color:var(--ink)!important}
body.djs .entry-content h4::before{content:"";position:absolute;left:2px;top:.55em;width:12px;height:12px;border-radius:4px;background:var(--grad);rotate:45deg;border:0!important}
/* リスト */
body.djs .entry-content ul:not([class*="toc"]):not(.djs-quest__list),body.djs .entry-content ol:not([class*="toc"]){padding:14px 16px 14px 34px!important;border:2px solid var(--ink)!important;border-radius:14px;background:#fffaf3!important}
body.djs .entry-content li::marker{color:var(--or2);font-weight:900}
/* 引用・枠 */
body.djs .entry-content blockquote{border:2px solid var(--ink)!important;border-left:8px solid var(--or2)!important;border-radius:12px;background:var(--panel)!important;color:var(--ink)!important}
body.djs .entry-content code{padding:1px 6px;border-radius:6px;background:#1f1c1a;color:var(--lime);font-family:var(--ff-mono);font-size:.88em}
body.djs .sgb-box-simple{border-radius:14px!important}

/* ---------- 目次（SANGO の目次） ---------- */
body.djs .toc_container{position:relative;margin:24px 0 30px!important;padding:0!important;border:2px solid var(--ink)!important;border-radius:18px!important;background:#fff!important;box-shadow:6px 6px 0 var(--ink);overflow:hidden;width:100%!important}
body.djs .toc_title{display:flex!important;align-items:center;justify-content:space-between;margin:0!important;padding:12px 16px!important;background:var(--ink)!important;color:#fff!important;font-weight:900!important;font-size:15px!important;text-align:left!important}
body.djs .toc_title::before{content:"CONTENTS";margin-right:auto;padding-right:10px;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:11px;letter-spacing:.12em;color:var(--or);order:2;display:none}
body.djs .toc_title::after{display:none!important}
body.djs .toc_toggle{padding:2px 12px!important;border:1.5px solid #6b6661!important;border-radius:99px!important;background:transparent!important;color:#ece8e1!important;font-size:12px!important;font-weight:900}
/* 目次：枠の内側に余白（テーマの余白指定を上書き） */
body.djs .entry-content .toc_container ul.toc_list:not(#djs-none){counter-reset:djs-toc;box-sizing:border-box!important;width:auto!important;margin:0!important;padding:10px 14px 12px 12px!important;border:0!important;background:#fff!important}
body.djs .toc_list > li{counter-increment:djs-toc;position:relative;margin:0!important;padding:0!important;list-style:none!important;border-bottom:1.5px dashed #e5e2dd}
body.djs .toc_list > li:last-child{border-bottom:0}
body.djs .toc_list > li::before{content:counter(djs-toc,decimal-leading-zero);position:absolute;left:4px;top:10px;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:13px;color:var(--or2)!important;background:none!important;width:auto!important;height:auto!important;border:0!important}
body.djs .toc_list a{display:block;padding:9px 6px 9px 36px!important;color:var(--ink)!important;font-weight:700;font-size:14px;line-height:1.55;text-decoration:none!important;border-radius:8px;transition:background .2s}
body.djs .toc_list a:hover{background:#fff4e8}
body.djs .toc_list a.is-now{background:#fff4e8;box-shadow:inset 3px 0 0 var(--or2)}
body.djs .toc_list a.is-read{color:var(--mute)!important}
body.djs .toc_list a.is-read::after{content:"✓";margin-left:6px;color:var(--green);font-weight:900}
body.djs .entry-content .toc_container .toc_list ul:not(#djs-none){box-sizing:border-box!important;width:auto!important;margin:2px 0 8px 30px!important;padding:0 0 0 10px!important;border:0!important;border-left:2px solid #f0e6da!important;background:none!important;border-radius:0!important;box-shadow:none!important}
body.djs .toc_list ul li{list-style:none!important;margin:0!important}
body.djs .toc_list ul li::before{display:none!important}
body.djs .toc_list ul a{padding:5px 6px 5px 14px!important;font-size:13px;font-weight:500;color:#4b4642!important}

/* ---------- 表（スマホは横にスクロール） ---------- */
/* =========================================================
   表：色を固定（記事ごとの青い見出し・背景色・文字色の指定はすべて上書き）
   見出し行＝黒地に白、行の見出し＝薄いオレンジ地に黒、本文＝白と生成りの縞
   ========================================================= */
.djs-tbl{position:relative;margin:1.6em 0 1.9em;border:2px solid #1c1917;border-radius:14px;background:#fff;box-shadow:0 5px 0 #1c1917;overflow:hidden}
.djs-tbl__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.djs-tbl__hint{position:absolute;right:10px;bottom:8px;z-index:3;padding:2px 10px;border-radius:99px;background:#fb4a19;color:#fff;font-weight:900;font-size:11px;letter-spacing:.04em;box-shadow:0 3px 8px rgba(0,0,0,.2);animation:djsNudge 1.6s ease-in-out infinite;pointer-events:none}
.djs-tbl.is-scrolled .djs-tbl__hint{opacity:0;transition:opacity .3s}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl table{width:100%!important;min-width:0!important;margin:0!important;border:0!important;border-radius:0!important;border-collapse:collapse!important;border-spacing:0!important;background:#fff!important;box-shadow:none!important;font-size:14.5px!important;line-height:1.7!important;table-layout:auto!important;color:#2a2623!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl.is-wide table{min-width:600px!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl :is(th,td){padding:12px 14px!important;border:0!important;border-bottom:1px solid #ebe5dc!important;background:#fff!important;color:#2a2623!important;vertical-align:top!important;text-align:left!important;font-size:14.5px!important;line-height:1.7!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;line-break:strict;min-width:0!important;width:auto!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl :is(th,td) *{color:inherit}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl :is(th,td) a{color:#d9420f!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl :is(th,td) + :is(th,td){border-left:1px solid #f1ece4!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tbody tr:nth-child(even) > :is(td,th){background-image:none!important}
/* 見出し行 */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl thead :is(th,td),html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tr.djs-tbl__head > :is(th,td){background:#1c1917!important;color:#fff!important;font-weight:900!important;font-size:13.5px!important;letter-spacing:.02em;border-bottom:3px solid #fb4a19!important;border-left-color:#2f2a26!important;white-space:nowrap!important}
/* 行の見出し（左の列） */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tbody th,html:root body.djs.djs .entry-content .djs-tbl.djs-tbl.is-rowhead tbody td:first-child{background:#fff4e8!important;color:#1c1917!important;font-weight:900!important;box-shadow:inset 4px 0 0 #fb8619;min-width:6.5em!important;width:32%!important}
/* 1列目は詰まらないように幅を確保し、少し強く */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tr > :first-child{min-width:5.5em!important;font-weight:800!important;color:#1c1917!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl thead tr > :first-child,html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tr.djs-tbl__head > :first-child{color:#fff!important}
/* 本文の縞 */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tbody tr:nth-child(even) > td{background:#fbf8f3!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tbody tr:last-child > *{border-bottom:0!important}
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl tbody tr:hover > td{background:#fff7ec!important}
/* 横にスクロールする表：左の列を固定 */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl.is-wide tbody th,html:root body.djs.djs .entry-content .djs-tbl.djs-tbl.is-wide.is-rowhead tbody td:first-child,html:root body.djs.djs .entry-content .djs-tbl.djs-tbl.is-wide thead :is(th,td):first-child{position:sticky;left:0;z-index:1}
/* 表の中の太字は、マーカーを付けない */
html:root body.djs.djs .entry-content .djs-tbl.djs-tbl :is(strong,b){background:none!important;color:inherit;font-weight:900}

/* ---------- 記事のあと（シェア・カテゴリ・関連・著者・前後） ---------- */
body.djs .sns-btn__title{font-family:var(--ff-en)!important;font-style:italic;color:var(--ink)!important}
body.djs .sns-btn__item a{border:2px solid var(--ink)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 3px 0 var(--ink)}
body.djs .footer-meta_title{color:var(--mute)!important}
body.djs .post-categories a,body.djs .cat-name{display:inline-block;padding:2px 12px!important;border:2px solid var(--ink)!important;border-radius:99px!important;background:var(--lime)!important;color:var(--ink)!important;font-weight:900!important;font-size:12px!important;text-decoration:none!important}
body.djs .related_title,body.djs .h-undeline{background:none!important;color:var(--ink)!important;font-weight:900!important;border:0!important}
body.djs .related_title{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px!important;border-radius:12px!important;background:var(--ink)!important;color:#fff!important}
body.djs .related_title i{color:var(--or)}
body.djs .related-posts a{border-radius:12px;overflow:hidden}
body.djs .related-posts img{border:2px solid var(--ink);border-radius:12px}
/* 列数で割り切れないとき：先頭を横長の「おすすめ」カードに（画像左・題名右） */
body.djs .related-posts li.djs-relwide>a{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;align-items:center;height:100%}
body.djs .related-posts li.djs-relwide figure{margin:0!important;width:auto!important;border-radius:12px;overflow:hidden}
body.djs .related-posts li.djs-relwide figure>*{border-radius:12px}
body.djs .related-posts li.djs-relwide .rep{padding:0!important}
body.djs .related-posts li.djs-relwide .rep p{font-size:15px!important;font-weight:900;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
body.djs .related-posts li.djs-relwide .rep::before{content:"おすすめ";display:inline-block;margin-bottom:6px;padding:2px 8px;border-radius:99px;background:var(--or);color:#fff;font-size:.72rem;font-weight:900}
/* この記事を書いた人 */
body.djs .author-info{position:relative;margin-top:34px!important;padding:0!important;border:2px solid var(--ink)!important;border-radius:20px!important;background:#fff!important;box-shadow:6px 6px 0 var(--ink);overflow:hidden}
body.djs .author-info__inner{padding:18px 16px 16px!important;background:#fff!important}
body.djs .author_label span{display:inline-block;padding:3px 14px!important;border-radius:99px!important;background:var(--ink)!important;color:#fff!important;font-weight:900!important;font-size:12px!important}
body.djs .author_label span::before,body.djs .author_label span::after{display:none!important}
body.djs .author_img img{border:3px solid var(--ink)!important;border-radius:50%!important;box-shadow:0 4px 0 var(--or2)}
body.djs .author-info .aut{font-family:var(--ff-serif);font-weight:900;color:var(--ink)!important}
body.djs .author-info .tb-right{font-size:14px;line-height:1.85}
body.djs .author-info::before{content:"WRITER";position:absolute;right:14px;top:12px;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:12px;letter-spacing:.14em;color:var(--or2)}
body.djs .follow_btn a{border:2px solid var(--ink)!important;border-radius:12px!important;box-shadow:0 3px 0 var(--ink)}
body.djs .prnx{border:2px solid var(--ink)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 0 var(--ink)}
body.djs .prnx .pr,body.djs .prnx_tb{color:var(--ink)!important}

/* ---------- サイドバー（PC） ---------- */
body.djs .sidebar .widget,body.djs #sidebar1 .widget{border:2px solid var(--ink)!important;border-radius:18px!important;background:#fff!important;box-shadow:6px 6px 0 var(--ink);overflow:hidden}
body.djs .sidebar .widget .wp-block-heading,body.djs .sidebar .widgettitle,body.djs .sidebar h4,body.djs .sidebar .sgb-box-simple__title{background:var(--ink)!important;color:#fff!important;border:0!important;font-weight:900!important}
body.djs .sidebar .sgb-box-simple{border:0!important;box-shadow:none!important}

/* ---------- 一覧（新着記事・カテゴリ） ---------- */
body.djs .catpost-cards{gap:16px}
body.djs .c_linkto_wrap,body.djs .cardtype__article,body.djs .sidelong__article{position:relative;border:2px solid var(--ink)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 5px 0 var(--ink)!important;overflow:hidden;transition:transform .2s var(--pop),box-shadow .2s}
body.djs .c_linkto_wrap:hover,body.djs .cardtype__article:hover{transform:translateY(-3px);box-shadow:0 8px 0 var(--or2)!important}
body.djs .c_linkto_img_wrap img,body.djs .cardtype__img img{border-bottom:2px solid var(--ink)}
body.djs .c_linkto_text h2,body.djs .cardtype__article h2{font-weight:900!important;color:var(--ink)!important;font-size:15px!important;line-height:1.55!important}
body.djs .c_linkto_wrap .cat-name{position:absolute;left:10px;top:10px}
body.djs .pagination a,body.djs .pagination span,body.djs .page-numbers{border:2px solid var(--ink)!important;border-radius:12px!important;background:#fff!important;color:var(--ink)!important;font-weight:900}
body.djs .pagination .current,body.djs .page-numbers.current{background:var(--grad)!important;color:#fff!important}
body.djs .page-title,body.djs .archive-title,body.djs #archive_header{font-family:var(--ff-serif)!important;color:var(--ink)!important}
body.djs #archive_header{background:var(--ink)!important;color:#fff!important;border-radius:18px}

/* ---------- 上へ戻る ---------- */
body.djs .totop{bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;background:var(--grad)!important;border:2px solid #fff;box-shadow:0 0 0 2px var(--or2),0 6px 14px rgba(251,74,25,.35)!important}

/* ---------- 共通フッター ---------- */
.djs-ftr{margin-top:40px;background:var(--ink);color:#c9c4bb}
.djs-ftr__in{max-width:1180px;margin:0 auto;padding:34px 18px calc(28px + env(safe-area-inset-bottom,0px))}
.djs-logo--ftr .djs-mark{font-size:30px}
.djs-ftr__tag{margin:10px 0 0;font-family:var(--ff-serif);font-weight:900;font-size:16px;color:#fff}
.djs-ftr__tag b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.djs-ftr__cta{display:inline-grid;margin:16px 0 0;padding:10px 22px;border:3px solid #fff;border-radius:99px;background:var(--grad);color:#fff!important;font-weight:900;font-size:16px;line-height:1.3;text-decoration:none!important;box-shadow:0 0 0 2px var(--or2)}
.djs-ftr__cta small{font-size:11px;font-weight:700;opacity:.9}
.djs-ftr__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;margin-top:26px;padding-top:20px;border-top:1px solid #2f2a26}
.djs-ftr__cols p{margin:0 0 8px;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:12px;letter-spacing:.12em;color:var(--or)}
.djs-ftr__cols ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.djs-ftr__cols a{color:#ece8e1!important;font-size:13px;font-weight:700;text-decoration:none!important;line-height:2}
.djs-ftr__cols a:hover{color:var(--or)!important}
.djs-ftr__copy{display:block;margin-top:24px;font-family:var(--ff-mono);font-size:11px;color:#8f8a83}

@media (max-width:767px){
  body.djs article.entry{border-radius:18px;margin-inline:8px}
  body.djs .entry-content{font-size:15.5px}
  body.djs .post-thumbnail img{box-shadow:4px 4px 0 var(--ink)}
}
@media (prefers-reduced-motion:reduce){.djs-tbl__hint{animation:none}}

/* =========================================================
   記事の仕掛け：クエストボード・読書HUD・わかった！・案内役・読了ガチャ
   ========================================================= */
/* ---------- クエストボード ---------- */
.djs-quest{position:relative;margin:4px 0 22px;padding:14px 14px 12px;border:2px solid var(--ink);border-radius:20px;background:var(--ink);color:#fff;box-shadow:0 8px 0 var(--or2);overflow:hidden}
.djs-quest::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent 0 18px,rgba(255,255,255,.03) 18px 19px);pointer-events:none}
.djs-quest > *{position:relative}
.djs-quest__hd{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.djs-quest__ttl{margin:0!important;font-weight:900;font-size:16px;line-height:1.3}
.djs-quest__ttl small{display:block;font-family:var(--ff-en);font-style:italic;font-size:11px;letter-spacing:.14em;color:var(--or)}
.djs-quest__lv{display:flex;align-items:center;gap:8px;margin:0!important}
.djs-quest__lv b{font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:18px;color:var(--lime)}
.djs-quest__lv small{font-family:var(--ff-mono);font-size:10.5px;color:#bdb7ae}
.djs-xp{position:relative;display:block;width:90px;height:9px;border-radius:99px;background:#3a3531;overflow:hidden}
.djs-xp i{display:block;height:100%;width:var(--p,0%);background:var(--grad);transition:width .6s var(--ease)}
body.djs .entry-content .djs-quest__list,.djs-quest__list{list-style:none!important;margin:12px 0 0!important;padding:0!important;border:0!important;background:none!important;display:grid;gap:6px}
.djs-quest__list li{margin:0!important;padding:0!important}
.djs-quest__list li::marker{content:""}
.djs-quest__list button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:1.5px solid #4a4540;border-radius:12px;background:#24211f;color:#ece8e1;font:inherit;font-weight:700;font-size:13.5px;line-height:1.45;text-align:left;cursor:pointer;transition:border-color .2s,background .3s}
.djs-quest__list button:hover{border-color:var(--or)}
.djs-quest__list b{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#3a3531;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:12px;color:#fff}
body.djs .djs-quest__list b{background:#3a3531}
.djs-quest__list span{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.djs-quest__list i{flex:none;font-style:normal;font-family:var(--ff-mono);font-weight:700;font-size:10.5px;color:var(--or)}
.djs-quest__list li.is-done button{border-color:var(--green);background:#1d2b20}
body.djs .djs-quest__list li.is-done b{background:var(--green);font-size:0}
.djs-quest__list li.is-done b::after{content:"✓";font-size:15px;font-style:normal}
.djs-quest__list li.is-done i{color:var(--green)}
.djs-quest__list li.is-done span{color:#a7d8b4;text-decoration:line-through;text-decoration-color:rgba(167,216,180,.5)}
.djs-quest__more{margin:6px 0 0!important;font-size:12px;color:#bdb7ae;text-align:center}
.djs-quest__reward{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px;padding:10px;border-radius:14px;background:linear-gradient(135deg,rgba(251,134,25,.22),rgba(123,63,228,.2));border:1.5px solid rgba(251,134,25,.5)}
.djs-quest__ticket{display:flex;align-items:center;gap:10px}
.djs-quest__ticket p{margin:0!important;line-height:1.35}
.djs-quest__ticket b{display:block;font-weight:900;font-size:14px;color:#fff;background:none!important}
.djs-quest__ticket small{font-size:11.5px;color:#e5ddd2}
.djs-quest__cap{flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(180deg,var(--or2) 0 50%,#fff 50%);border:2px solid #fff;box-shadow:0 0 0 2px var(--or2),0 0 14px rgba(251,134,25,.6);animation:djsWobble 2.2s ease-in-out infinite}
@keyframes djsWobble{0%,60%,100%{rotate:0deg}70%{rotate:-14deg}80%{rotate:12deg}90%{rotate:-6deg}}
body.djs .entry-content .djs-quest__col,.djs-quest__col{list-style:none!important;margin:0!important;padding:0!important;border:0!important;background:none!important;display:grid;grid-template-columns:repeat(8,1fr);gap:4px}
.djs-quest__col li{margin:0!important;aspect-ratio:1;border-radius:9px;background:#2d2926;overflow:hidden;border:1.5px solid #4a4540}
.djs-quest__col li::marker{content:""}
.djs-quest__col img{width:100%;height:100%;object-fit:contain;filter:brightness(0) opacity(.35);transition:filter .5s}
.djs-quest__col li.is-got{border-color:var(--or);background:#fff}
.djs-quest__col li.is-got img{filter:none}
.djs-quest__colnum{margin:0!important;text-align:right;font-size:11.5px;color:#e5ddd2}
.djs-quest__colnum b{font-family:var(--ff-en);font-size:15px;color:var(--lime);background:none!important}
.djs-quest__time{margin:10px 0 0!important;font-family:var(--ff-mono);font-size:11px;color:#bdb7ae;text-align:right}

/* ---------- 読書HUD（上に追従） ---------- */
.djs-hud{position:fixed;left:50%;top:calc(var(--djs-hdr-h,96px) + 8px);z-index:998;display:flex;align-items:center;gap:8px;width:min(420px,calc(100% - 24px));padding:6px 10px;border:2px solid var(--ink);border-radius:99px;background:#fff;box-shadow:0 6px 0 var(--ink);translate:-50% -140%;opacity:0;transition:translate .35s var(--ease),opacity .3s;pointer-events:none}
.djs-hud.is-on{translate:-50% 0;opacity:1}
.djs-hud__lv{font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:13px;color:var(--or2)}
.djs-hud__bar{flex:1;height:8px;border-radius:99px;background:#ece9e4;overflow:hidden}
.djs-hud__bar i{display:block;height:100%;width:0;background:var(--grad);transition:width .2s linear}
.djs-hud__txt{font-family:var(--ff-mono);font-weight:700;font-size:11.5px;min-width:44px;text-align:right;color:var(--ink)}

/* ---------- XP の浮き上がり・レベルアップ ---------- */
.djs-float{position:fixed;z-index:1001;translate:-50% 0;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:15px;color:var(--or2);text-shadow:0 2px 0 #fff;pointer-events:none;animation:djsFloat 1.1s ease-out forwards}
@keyframes djsFloat{0%{opacity:0;transform:translateY(6px) scale(.8)}20%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-40px)}}
.djs-lvup{position:fixed;left:50%;top:38%;z-index:1002;display:grid;justify-items:center;padding:16px 28px;border:3px solid #fff;border-radius:20px;background:var(--ink);color:#fff;box-shadow:0 0 0 3px var(--or2),0 20px 40px rgba(0,0,0,.35);translate:-50% -50%;pointer-events:none;animation:djsLv 2.2s var(--pop) forwards}
.djs-lvup span{font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:14px;letter-spacing:.14em;color:var(--or)}
.djs-lvup b{font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:40px;line-height:1.1;color:var(--lime)}
@keyframes djsLv{0%{opacity:0;transform:scale(.4)}15%{opacity:1;transform:scale(1.08)}25%{transform:none}80%{opacity:1}100%{opacity:0;transform:translateY(-20px)}}

/* ---------- 「わかった！」スタンプ ---------- */
.djs-ok{position:relative;display:flex;align-items:center;gap:10px;margin:6px 0 26px auto;padding:7px 14px 7px 10px;border:2px solid var(--ink);border-radius:99px;background:#fff;color:var(--ink);font:inherit;font-weight:900;font-size:13px;cursor:pointer;box-shadow:0 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.djs-ok:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}
.djs-ok small{font-family:var(--ff-mono);font-size:10.5px;color:var(--or2)}
.djs-ok__stamp{display:grid;place-items:center;width:30px;height:30px;border:2px dashed #cfcac3;border-radius:50%;font-size:0;color:transparent;transition:all .3s}
.djs-ok.is-on{background:#fff4e8;cursor:default}
.djs-ok.is-on .djs-ok__stamp{width:auto;height:auto;padding:2px 8px;border:2.5px solid var(--red);border-radius:6px;font-size:11px;color:var(--red);rotate:-8deg;animation:djsStamp .45s var(--pop)}
.djs-ok.is-on small{display:none}
@keyframes djsStamp{0%{transform:scale(2.2);opacity:0}100%{transform:none;opacity:1}}

/* ---------- 案内役のミニ大明司（左下） ---------- */
.djs-mascot{position:fixed;left:8px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:997;display:flex;align-items:flex-end;gap:2px;pointer-events:none;translate:-130% 0;transition:translate .5s var(--pop)}
.djs-mascot.is-on{translate:0 0}
.djs-mascot__btn{pointer-events:auto;flex:none;width:64px;height:64px;padding:0;border:0;background:none;cursor:pointer}
.djs-mascot__btn img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(28,25,23,.3))}
.djs-mascot__btn.is-bump{animation:djsHop .5s var(--pop)}
@keyframes djsHop{40%{transform:translateY(-10px)}}
.djs-mascot__bub{max-width:min(240px,62vw);margin:0 0 30px!important;padding:8px 12px;border:2px solid var(--ink);border-radius:14px 14px 14px 4px;background:#fff;color:var(--ink);font-weight:900;font-size:12.5px;line-height:1.5;box-shadow:0 4px 0 var(--ink);opacity:0;transform:scale(.6);transform-origin:0 100%;transition:opacity .25s,transform .35s var(--pop)}
.djs-mascot.is-say .djs-mascot__bub{opacity:1;transform:none}

/* ---------- 読了ガチャ ---------- */
.djs-gacha{position:relative;margin:30px 0 10px;padding:22px 16px 18px;border:2px solid var(--ink);border-radius:22px;background:var(--ink);color:#fff;text-align:center;box-shadow:0 8px 0 var(--or2);overflow:hidden}
.djs-gacha p{margin:0}
.djs-gacha__eyebrow{font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:11.5px;letter-spacing:.16em;color:var(--or)}
.djs-gacha__ttl{margin-top:2px!important;font-family:var(--ff-serif);font-weight:900;font-size:26px;line-height:1.3}
.djs-gacha__sub{margin-top:6px!important;font-weight:700;font-size:13.5px;color:#d6d1c9}
.djs-gacha__box{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px;margin:16px 0 0}
.djs-gacha__machine{position:relative;justify-self:center;width:130px;height:190px}
.djs-gacha__dome{position:absolute;left:8px;right:8px;top:0;height:112px;border:3px solid #fff;border-radius:60px 60px 14px 14px;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.35),rgba(255,255,255,.06) 60%);overflow:hidden}
.djs-gacha__dome i{position:absolute;width:30px;height:30px;border-radius:50%;background:linear-gradient(180deg,var(--c) 0 50%,#fff 50%);border:2px solid var(--ink)}
.djs-gacha__dome i:nth-child(1){--c:#fb4a19;left:8%;bottom:4px}.djs-gacha__dome i:nth-child(2){--c:#7b3fe4;left:34%;bottom:2px}.djs-gacha__dome i:nth-child(3){--c:#22a24a;left:60%;bottom:6px}.djs-gacha__dome i:nth-child(4){--c:#2457b5;left:20%;bottom:30px}.djs-gacha__dome i:nth-child(5){--c:#f5c03a;left:48%;bottom:32px}.djs-gacha__dome i:nth-child(6){--c:#e8326e;left:70%;bottom:34px}.djs-gacha__dome i:nth-child(7){--c:#c6f23a;left:36%;bottom:58px}
.djs-gacha.is-spin .djs-gacha__dome i{animation:djsShake .25s linear infinite}
.djs-gacha.is-spin .djs-gacha__dome i:nth-child(even){animation-direction:reverse}
@keyframes djsShake{25%{transform:translate(4px,-6px) rotate(20deg)}75%{transform:translate(-4px,-3px) rotate(-20deg)}}
.djs-gacha__body{position:absolute;left:0;right:0;top:106px;height:82px;border:3px solid #fff;border-radius:12px;background:var(--grad)}
.djs-gacha__logo{position:absolute;left:0;right:0;top:6px;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:9px;line-height:1.1;color:#fff}
.djs-gacha__logo b{display:block;font-size:14px;background:none!important}
.djs-gacha__knob{position:absolute;left:14px;bottom:10px;width:30px;height:30px;border-radius:50%;background:#fff;border:3px solid var(--ink)}
.djs-gacha__knob::after{content:"";position:absolute;left:50%;top:3px;bottom:3px;width:6px;margin-left:-3px;border-radius:3px;background:var(--ink)}
.djs-gacha.is-spin .djs-gacha__knob{animation:djsTurn .5s linear 3}
@keyframes djsTurn{to{rotate:360deg}}
.djs-gacha__chute{position:absolute;right:14px;bottom:10px;width:40px;height:26px;border-radius:8px;background:var(--ink)}
.djs-gacha__cap{position:absolute;right:20px;bottom:12px;width:28px;height:28px;border-radius:50%;background:linear-gradient(180deg,var(--or2) 0 50%,#fff 50%);border:2px solid var(--ink);opacity:0}
.djs-gacha.is-spin .djs-gacha__cap{animation:djsDrop 1.5s var(--pop) forwards}
@keyframes djsDrop{0%,60%{opacity:0;transform:translateY(-20px)}75%{opacity:1;transform:translateY(0)}90%{transform:translateY(-6px)}100%{opacity:1;transform:none}}
.djs-gacha__card{min-height:200px;display:grid;place-items:center}
.djs-gacha__empty{display:grid;gap:4px;justify-items:center;padding:18px 10px;border:2px dashed #4a4540;border-radius:14px;font-size:12px;color:#a8a39b}
.djs-gacha__empty b{font-family:var(--ff-en);font-size:34px;color:#4a4540;background:none!important}
.djs-card{position:relative;display:grid;justify-items:center;gap:2px;width:100%;max-width:190px;padding:12px 10px 10px;border:3px solid var(--rc);border-radius:16px;background:#fff;color:var(--ink);overflow:hidden;animation:djsCard .7s var(--pop)}
@keyframes djsCard{0%{opacity:0;transform:rotateY(90deg) scale(.6)}100%{opacity:1;transform:none}}
.djs-card__rays{position:absolute;left:50%;top:40%;width:340px;height:340px;translate:-50% -50%;background:repeating-conic-gradient(from 0deg,rgba(251,134,25,.18) 0 10deg,transparent 10deg 20deg);animation:djsSpin 14s linear infinite;pointer-events:none}
@keyframes djsSpin{to{rotate:360deg}}
.djs-card__r{position:absolute;left:8px;top:8px;z-index:1;padding:0 8px;border-radius:6px;background:var(--rc);color:#fff;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:13px}
.djs-card__new{position:absolute;right:8px;top:8px;z-index:1;padding:0 6px;border-radius:6px;background:var(--lime);font-weight:900;font-size:11px}
.djs-card img{position:relative;width:120px;height:120px;object-fit:contain}
.djs-card b{position:relative;font-weight:900;font-size:15px;background:none!important}
.djs-card small{position:relative;font-size:11.5px;line-height:1.5;color:var(--mute)}
.djs-gacha__btn{display:block;width:100%;max-width:340px;margin:16px auto 0;padding:13px 18px;border:3px solid #fff;border-radius:99px;background:#4a4540;color:#c9c4bb;font:inherit;font-weight:900;font-size:16px;cursor:not-allowed}
.djs-gacha.is-ready .djs-gacha__btn:not(:disabled){background:var(--grad);color:#fff;cursor:pointer;box-shadow:0 0 0 2px var(--or2),0 8px 18px rgba(251,74,25,.45);animation:djsPulse 1.4s ease-in-out infinite}
@keyframes djsPulse{50%{transform:scale(1.04)}}
.djs-gacha__col{list-style:none!important;margin:18px 0 0!important;padding:0!important;border:0!important;background:none!important;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.djs-gacha__col li{margin:0!important;display:grid;justify-items:center;gap:2px;padding:6px 4px;border:1.5px solid #4a4540;border-radius:12px;background:#24211f}
.djs-gacha__col li::marker{content:""}
.djs-gacha__col img{width:56px;height:56px;object-fit:contain;filter:brightness(0) opacity(.35)}
.djs-gacha__col small{font-size:10px;font-weight:700;color:#8f8a83;line-height:1.3}
.djs-gacha__col li.is-got{border-color:var(--rc);background:#fff}
.djs-gacha__col li.is-got img{filter:none}
.djs-gacha__col li.is-got small{color:var(--ink)}
.djs-gacha__note{margin-top:12px!important;font-size:11px;color:#8f8a83}

@media (prefers-reduced-motion:reduce){
  .djs-quest__cap,.djs-card__rays,.djs-gacha__btn{animation:none!important}
}

/* ---------- 文字だけのアイキャッチ → サイトのデザインの表紙 ---------- */
.djs-has-cover{position:relative;display:block;overflow:hidden}
img.djs-cover-src{visibility:hidden}
.djs-cover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:8% 34% 8% 7%;background:#1c1917 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.07' stroke-width='1.2' stroke-linecap='round'%3E%3Cpath d='M-10 30 30 -10M-10 70 70 -10M10 90 90 10M50 90 90 50'/%3E%3C/g%3E%3C/svg%3E");color:#fff;text-align:left;container-type:inline-size;border-radius:inherit}
.djs-cover::after{content:"";position:absolute;right:-6%;bottom:-30%;width:62%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(251,134,25,.55),rgba(251,74,25,0) 65%);pointer-events:none}
.djs-cover__mark{position:absolute;left:7%;top:8%}
.djs-cover__mark .djs-mark{font-size:clamp(9px,4.4cqi,15px)}
.djs-cover__t{position:relative;z-index:1;font-family:var(--ff-serif);font-weight:900;font-size:clamp(13px,7.4cqi,30px);line-height:1.38;letter-spacing:.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.djs-cover__s{position:relative;z-index:1;align-self:flex-start;max-width:100%;padding:1px 8px;border-radius:5px;background:var(--lime);color:var(--ink);font-weight:900;font-size:clamp(9px,3.6cqi,14px);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.djs-cover__ch{position:absolute!important;left:auto!important;top:auto!important;right:1%!important;bottom:-4%!important;transform:none!important;object-fit:contain!important;z-index:1;width:36%!important;height:auto!important;max-width:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35));visibility:visible!important}
body.djs .post-thumbnail.djs-has-cover{border:2px solid var(--ink);border-radius:16px;box-shadow:6px 6px 0 var(--ink);overflow:hidden}
body.djs .post-thumbnail.djs-has-cover img.djs-cover-src{border:0;box-shadow:none}
body.djs .post-thumbnail.djs-has-cover .djs-cover__mark{display:none}

/* =========================================================
   確認用（プレビュー）：djs が付いていない人には、追加した部品を出さない
   ========================================================= */
body:not(.djs) .djs-hdr,body:not(.djs) .djs-ftr,body:not(.djs) .djs-hud,body:not(.djs) .djs-mascot{display:none!important}

/* ---------- 小さい表紙（関連記事・前後の記事）：ロゴを外し、文字を大きく ---------- */
@container (max-width:300px){
  .djs-cover__mark{display:none}
  .djs-cover__t{font-size:clamp(11px,9.5cqi,17px);-webkit-line-clamp:3}
  .djs-cover__s{font-size:clamp(8px,6cqi,11px)}
}
@container (max-width:180px){
  .djs-cover__s{display:none}
  .djs-cover__t{font-size:clamp(10px,11cqi,14px);-webkit-line-clamp:4}
}
.djs-cover{container-type:inline-size}
.prnx_tb .djs-cover{padding:10% 30% 10% 8%}
.prnx_tb .djs-cover__ch{width:42%!important}

/* ---------- サイドバー・この記事を書いた人：テキストリンクに点線の下線 ---------- */
body.djs .sidebar a:not(:has(img)):not(.wp-block-button__link):not(.wp-element-button),
body.djs #sidebar1 a:not(:has(img)):not(.wp-block-button__link),
body.djs .author-info .tb-right a,body.djs .author-info .aut a,body.djs .author-info p a{color:var(--sgb-link-color)!important;text-decoration:underline dotted!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important;text-decoration-color:rgba(217,66,15,.55)!important}
body.djs .sidebar a:not(:has(img)):hover,body.djs .author-info a:hover{text-decoration-style:solid!important;text-decoration-color:var(--sgb-link-color)!important}
body.djs .author-info .follow_btn a{text-decoration:none!important}

/* =========================================================
   ガチャ：レアリティで演出を変える（R ＜ SR ＜ SSR）
   ========================================================= */
/* カプセルの色で「何か来る」を予告 */
.djs-gacha[data-rar="R"] .djs-gacha__cap{background:linear-gradient(180deg,#2457b5 0 50%,#fff 50%)}
.djs-gacha[data-rar="SR"] .djs-gacha__cap{background:linear-gradient(180deg,#7b3fe4 0 50%,#fff 50%);box-shadow:0 0 14px 4px rgba(123,63,228,.7)}
.djs-gacha[data-rar="SSR"] .djs-gacha__cap{background:conic-gradient(from 0deg,#ffd84a,#ff7a1a,#ff3d8b,#9b5cff,#3dd6ff,#5dff9b,#ffd84a);box-shadow:0 0 20px 8px rgba(255,216,74,.9);animation:djsDrop 1.5s var(--pop) forwards,djsCapGlow .4s ease-in-out 1.5s infinite alternate}
@keyframes djsCapGlow{to{box-shadow:0 0 34px 14px rgba(255,216,74,1)}}
.djs-gacha.is-ssr-pre{animation:djsQuake .12s linear infinite}
@keyframes djsQuake{25%{translate:3px -2px}50%{translate:-3px 2px}75%{translate:2px 3px}}
.djs-flash{position:fixed;inset:0;z-index:1003;pointer-events:none;background:radial-gradient(circle at 50% 55%,#fff 0,#fff6c4 30%,rgba(255,200,60,.6) 60%,rgba(255,160,40,0) 100%);animation:djsFlash .9s ease-out forwards}
@keyframes djsFlash{0%{opacity:0}20%{opacity:1}100%{opacity:0}}

/* カード共通 */
.djs-card{isolation:isolate}
.djs-card > img,.djs-card > b,.djs-card > small{position:relative;z-index:3}
.djs-card__glow,.djs-card__foil,.djs-card__conf,.djs-card__stars{position:absolute;inset:0;pointer-events:none}
.djs-card__r,.djs-card__new{z-index:4}

/* R：青い光が静かに広がる */
.djs-card--R{background:linear-gradient(180deg,#eef4ff,#fff 60%)}
.djs-card--R .djs-card__rays{display:none}
.djs-card--R .djs-card__glow{z-index:1;background:radial-gradient(circle at 50% 42%,rgba(36,87,181,.28),rgba(36,87,181,0) 62%);animation:djsPulseR 2.4s ease-in-out infinite}
@keyframes djsPulseR{50%{opacity:.55}}

/* SR：紫の光線が回り、星がまたたき、光が横切る */
.djs-card--SR{background:linear-gradient(180deg,#f5efff,#fff 70%);box-shadow:0 0 0 3px #fff,0 0 22px 4px rgba(123,63,228,.55)}
.djs-card--SR .djs-card__rays{z-index:1;background:repeating-conic-gradient(from 0deg,rgba(123,63,228,.22) 0 9deg,transparent 9deg 18deg)}
.djs-card--SR .djs-card__glow{z-index:1;background:radial-gradient(circle at 50% 42%,rgba(123,63,228,.35),rgba(123,63,228,0) 60%)}
.djs-card--SR .djs-card__foil{z-index:3;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.85) 50%,transparent 65%);background-size:250% 100%;animation:djsSheen 2.2s ease-in-out .6s infinite;mix-blend-mode:soft-light}
@keyframes djsSheen{0%{background-position:150% 0}60%,100%{background-position:-50% 0}}
.djs-card__stars{z-index:2}
.djs-card__stars i{position:absolute;font-style:normal;color:#b48cff;font-size:16px;text-shadow:0 0 8px #fff;animation:djsTw 1.6s ease-in-out infinite}
.djs-card__stars i:nth-child(1){left:8%;top:24%}.djs-card__stars i:nth-child(2){right:10%;top:18%;animation-delay:.3s}.djs-card__stars i:nth-child(3){left:14%;top:62%;animation-delay:.6s;font-size:12px}.djs-card__stars i:nth-child(4){right:8%;top:56%;animation-delay:.9s}.djs-card__stars i:nth-child(5){left:46%;top:6%;animation-delay:1.2s;font-size:11px}.djs-card__stars i:nth-child(6){right:30%;top:40%;animation-delay:.45s;font-size:10px}
@keyframes djsTw{50%{opacity:.2;transform:scale(.5) rotate(45deg)}}

/* SSR：金と虹の二重光線・ホログラム・紙吹雪・金の縁 */
.djs-card--SSR{border:3px solid transparent!important;background:linear-gradient(#fffaf0,#fff) padding-box,conic-gradient(from var(--djs-a,0deg),#ffd84a,#ff7a1a,#ff3d8b,#9b5cff,#3dd6ff,#5dff9b,#ffd84a) border-box;box-shadow:0 0 0 2px #fff,0 0 30px 8px rgba(255,200,60,.75),0 0 60px 16px rgba(255,120,40,.35);animation:djsCard .7s var(--pop),djsBorder 3s linear infinite}
@property --djs-a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes djsBorder{to{--djs-a:360deg}}
.djs-card--SSR .djs-card__rays{z-index:1;width:420px;height:420px;background:repeating-conic-gradient(from 0deg,rgba(255,200,40,.45) 0 6deg,transparent 6deg 12deg);animation:djsSpin 6s linear infinite}
.djs-card--SSR .djs-card__glow{z-index:1;background:radial-gradient(circle at 50% 42%,rgba(255,236,150,.95),rgba(255,180,60,.4) 35%,rgba(255,150,40,0) 65%),repeating-conic-gradient(from 0deg,rgba(255,61,139,.14) 0 4deg,transparent 4deg 16deg);animation:djsSpin 14s linear infinite reverse}
.djs-card--SSR .djs-card__foil{z-index:3;background:linear-gradient(125deg,rgba(255,61,139,.0) 20%,rgba(255,61,139,.28) 30%,rgba(61,214,255,.28) 42%,rgba(93,255,155,.25) 54%,rgba(255,216,74,.3) 66%,rgba(255,61,139,0) 78%);background-size:300% 300%;mix-blend-mode:color-dodge;animation:djsHolo 3s ease-in-out infinite}
@keyframes djsHolo{0%{background-position:0% 0%}50%{background-position:100% 100%}100%{background-position:0% 0%}}
.djs-card--SSR .djs-card__r{background:linear-gradient(90deg,#ffd84a,#ff7a1a,#ff3d8b)!important;color:#fff;font-size:16px;padding:0 10px;box-shadow:0 0 12px rgba(255,180,40,.9);animation:djsSlam .6s var(--pop) .2s both}
@keyframes djsSlam{0%{transform:scale(3) rotate(-12deg);opacity:0}100%{transform:none;opacity:1}}
.djs-card--SSR > b{font-size:17px;background:linear-gradient(90deg,#c97a00,#ff3d8b,#7b3fe4)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent}
.djs-card--SSR > img{filter:drop-shadow(0 0 10px rgba(255,200,60,.9))}
.djs-card__conf{z-index:5;overflow:visible}
.djs-card__conf i{position:absolute;left:50%;top:40%;width:8px;height:12px;border-radius:2px;background:var(--c);opacity:0;animation:djsBurst 1.6s cubic-bezier(.1,.7,.3,1) forwards}
.djs-card__conf i:nth-child(6n+1){--c:#ffd84a}.djs-card__conf i:nth-child(6n+2){--c:#ff3d8b}.djs-card__conf i:nth-child(6n+3){--c:#3dd6ff}.djs-card__conf i:nth-child(6n+4){--c:#5dff9b}.djs-card__conf i:nth-child(6n+5){--c:#9b5cff}.djs-card__conf i:nth-child(6n){--c:#ff7a1a}
.djs-card__conf i:nth-child(1){--dx:-120px;--dy:-110px;--rr:200deg;animation-delay:0s}
.djs-card__conf i:nth-child(2){--dx:110px;--dy:-120px;--rr:-160deg;animation-delay:0.05s}
.djs-card__conf i:nth-child(3){--dx:-140px;--dy:-20px;--rr:300deg;animation-delay:0.1s}
.djs-card__conf i:nth-child(4){--dx:140px;--dy:-30px;--rr:-280deg;animation-delay:0.02s}
.djs-card__conf i:nth-child(5){--dx:-90px;--dy:90px;--rr:180deg;animation-delay:0.08s}
.djs-card__conf i:nth-child(6){--dx:100px;--dy:100px;--rr:-200deg;animation-delay:0.12s}
.djs-card__conf i:nth-child(7){--dx:-30px;--dy:-150px;--rr:260deg;animation-delay:0.04s}
.djs-card__conf i:nth-child(8){--dx:40px;--dy:-140px;--rr:-220deg;animation-delay:0.09s}
.djs-card__conf i:nth-child(9){--dx:-160px;--dy:60px;--rr:320deg;animation-delay:0.06s}
.djs-card__conf i:nth-child(10){--dx:160px;--dy:50px;--rr:-300deg;animation-delay:0.11s}
.djs-card__conf i:nth-child(11){--dx:-60px;--dy:140px;--rr:150deg;animation-delay:0.03s}
.djs-card__conf i:nth-child(12){--dx:70px;--dy:150px;--rr:-170deg;animation-delay:0.07s}
.djs-card__conf i:nth-child(13){--dx:-130px;--dy:-70px;--rr:240deg;animation-delay:0.13s}
.djs-card__conf i:nth-child(14){--dx:130px;--dy:-80px;--rr:-250deg;animation-delay:0.01s}
.djs-card__conf i:nth-child(15){--dx:0px;--dy:-170px;--rr:360deg;animation-delay:0.1s}
.djs-card__conf i:nth-child(16){--dx:-10px;--dy:160px;--rr:-360deg;animation-delay:0.05s}
.djs-card__conf i:nth-child(17){--dx:-180px;--dy:10px;--rr:200deg;animation-delay:0.09s}
.djs-card__conf i:nth-child(18){--dx:180px;--dy:0px;--rr:-200deg;animation-delay:0.02s}
@keyframes djsBurst{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rr))}}
.djs-gacha:has(.djs-card--SSR){box-shadow:0 8px 0 #ffb52e,0 0 40px 6px rgba(255,190,60,.45)}
.djs-gacha:has(.djs-card--SSR)::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 45%,rgba(255,200,60,.28),rgba(255,200,60,0) 55%);pointer-events:none}
.djs-gacha:has(.djs-card--SR)::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 45%,rgba(123,63,228,.25),rgba(123,63,228,0) 55%);pointer-events:none}
@media (prefers-reduced-motion:reduce){.djs-card--SSR,.djs-card--SSR .djs-card__rays,.djs-card--SSR .djs-card__glow,.djs-card__foil,.djs-card__stars i{animation:none!important}.djs-card__conf{display:none}}


/* ---------- コレクション：レアリティの輝き・タップで1枚ずつ見る ---------- */
.djs-gacha__col li{position:relative;overflow:hidden}
.djs-gacha__col li.is-got{cursor:pointer;transition:transform .2s var(--pop)}
.djs-gacha__col li.is-got:hover{transform:translateY(-3px)}
.djs-gacha__col li.is-got::after{content:attr(data-r);position:absolute;left:4px;top:4px;padding:0 5px;border-radius:5px;background:var(--rc);color:#fff;font-family:var(--ff-en);font-style:italic;font-weight:900;font-size:9px;line-height:1.6}
.djs-gacha__col li.is-got[data-r="R"]{background:linear-gradient(180deg,#eef4ff,#fff)}
.djs-gacha__col li.is-got[data-r="SR"]{background:linear-gradient(180deg,#f3ecff,#fff);box-shadow:0 0 0 1px #fff,0 0 12px 2px rgba(123,63,228,.55)}
.djs-gacha__col li.is-got[data-r="SR"]::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.9) 50%,transparent 65%);background-size:250% 100%;animation:djsSheen 2.6s ease-in-out infinite;pointer-events:none}
.djs-gacha__col li.is-got[data-r="SSR"]{border:2px solid transparent!important;background:linear-gradient(#fffaf0,#fff) padding-box,conic-gradient(from var(--djs-a,0deg),#ffd84a,#ff7a1a,#ff3d8b,#9b5cff,#3dd6ff,#5dff9b,#ffd84a) border-box;box-shadow:0 0 14px 3px rgba(255,200,60,.7);animation:djsBorder 3s linear infinite}
.djs-gacha__col li.is-got[data-r="SSR"]::before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 20%,rgba(255,61,139,.25) 32%,rgba(61,214,255,.25) 46%,rgba(255,216,74,.3) 60%,transparent 74%);background-size:300% 300%;mix-blend-mode:color-dodge;animation:djsHolo 3s ease-in-out infinite;pointer-events:none}
.djs-gacha__col li.is-got[data-r="SSR"]::after{background:linear-gradient(90deg,#ffd84a,#ff7a1a,#ff3d8b)}
.djs-gacha__col li.is-got img{position:relative;z-index:1}
.djs-quest__col li.is-got{cursor:pointer}
.djs-quest__col li.is-got[data-r="SR"]{box-shadow:0 0 8px 1px rgba(123,63,228,.8)}
.djs-quest__col li.is-got[data-r="SSR"]{border-color:#ffd84a;box-shadow:0 0 10px 2px rgba(255,200,60,.9)}
.djs-gacha__hint{margin-top:6px!important;font-size:11px;font-weight:700;color:#bdb7ae}

.djs-viewer{position:fixed;inset:0;z-index:1004;display:grid;place-items:center;padding:20px;background:rgba(20,18,16,.82);backdrop-filter:blur(4px);animation:djsFade .25s ease}
@keyframes djsFade{from{opacity:0}}
.djs-viewer__in{position:relative;display:grid;justify-items:center;gap:12px;width:min(320px,100%)}
.djs-viewer .djs-card{max-width:none;width:100%;padding:18px 14px 16px;border-radius:20px}
.djs-viewer .djs-card > img{width:200px;height:200px}
.djs-viewer .djs-card > b{font-size:20px}
.djs-viewer .djs-card > small{font-size:13px}
.djs-viewer__no{position:relative;z-index:3;font-family:var(--ff-mono);font-size:11px;color:var(--mute)}
.djs-viewer__nav{display:flex;align-items:center;gap:10px}
.djs-viewer__nav button{display:grid;place-items:center;width:44px;height:44px;border:2px solid #fff;border-radius:50%;background:#2a2623;color:#fff;font:inherit;font-weight:900;font-size:18px;cursor:pointer}
.djs-viewer__nav .djs-viewer__close{width:auto;padding:0 18px;border-radius:99px;font-size:14px;background:var(--grad)}
.djs-viewer__count{font-family:var(--ff-mono);font-size:12px;color:#d6d1c9}
