/* コラム・ブログ記事の下に付けるブロック（inc/article-extras.php） */

.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.ax-wrap{margin-top:8rem}
.prose .ax-wrap>*+*{margin-top:7rem}
.ax{text-align:left}

/* 見出し：英字の小見出し＋日本語の見出し（サイトの eyebrow と同じ組み方） */
.prose .ax__eyebrow{margin:0;font-size:1.3rem;line-height:1.5;letter-spacing:.06em;color:var(--orange-deep);text-align:left}
.prose .ax__title{margin:.4rem 0 0;padding:0 0 1.4rem;border-bottom:max(.1rem,1px) solid var(--ink);font-size:2.2rem;font-weight:700;line-height:1.6;font-family:var(--font-jp-db)}
.prose .ax__title::before{content:none}
.ax__title+*{margin-top:2.4rem}

/* 記事の中のリストの「・」を消す */
.prose .ax ul li,.prose .ax ol li{padding-left:0}
.prose .ax ul li::before,.prose .ax ol li::before{content:none}
.prose .ax a{text-decoration:none}

/* ---------- 参考資料・出典 ---------- */
.ax-src{margin:0;padding:0;list-style:none;font-size:1.4rem;line-height:1.8}
.prose .ax-src li{padding:1.2rem 0 1.2rem 2.4rem;border-bottom:max(.1rem,1px) dashed var(--card-line);position:relative;counter-increment:src}
.ax-src{counter-reset:src}
.prose .ax-src li::before{content:counter(src);position:absolute;left:0;top:1.2rem;color:var(--orange-deep);font-family:var(--font-num);font-weight:700}
.prose .ax-src a{text-decoration:underline;text-underline-offset:.35rem;word-break:break-all}
.ax-src__note{display:block;color:var(--line);font-size:1.25rem}

/* ---------- よくある質問（開閉式） ---------- */
.ax-faq{display:grid;gap:1.2rem}
.ax-faq__item{border-radius:1.555rem;background:var(--card)}
.ax-faq__q{display:flex;gap:1.2rem;align-items:flex-start;padding:2rem 5.6rem 2rem 2.4rem;position:relative;cursor:pointer;list-style:none;font-size:1.6rem;line-height:1.75;font-family:var(--font-jp-m)}
.ax-faq__q::-webkit-details-marker{display:none}
.ax-faq__q::after{content:"";position:absolute;right:2.4rem;top:50%;width:.9rem;height:.9rem;border-right:max(.15rem,1.5px) solid var(--ink);border-bottom:max(.15rem,1.5px) solid var(--ink);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.ax-faq__item[open] .ax-faq__q::after{transform:translateY(-30%) rotate(225deg)}
.ax-faq__mark{flex:none;width:2.2rem;color:var(--orange-deep);font-family:var(--font-num);font-weight:700;font-size:1.8rem;line-height:1.6}
.ax-faq__a{display:flex;gap:1.2rem;margin:0 2.4rem;padding:1.6rem 0 2.2rem;border-top:max(.1rem,1px) solid #ddd;font-size:1.45rem;line-height:1.9}
.prose .ax-faq__a p{margin:0;text-align:left}
.prose .ax__more{margin-top:2rem;text-align:right;font-size:1.4rem}
.prose .ax__more a{text-decoration:underline;text-underline-offset:.35rem}

/* ---------- 不安な方へ（サイト共通の .post-cta に英字の小見出しを足す） ---------- */
.prose .ax--cta .ax__eyebrow{text-align:center;color:var(--ink)}
.prose .ax--cta .post-cta__title{margin-top:.4rem;padding:0;font-size:2.2rem;word-break:auto-phrase;text-wrap:balance}
.prose .ax--cta .post-cta__title::before{content:none}
.prose .ax--cta .post-cta__text{text-align:center;line-break:strict;word-break:auto-phrase}

/* ---------- 記事の筆者 ---------- */
.ax-author{display:grid;grid-template-columns:12rem 1fr;gap:2.8rem;align-items:start;padding:2.8rem 3.2rem;border-radius:1.555rem;background:var(--cream)}
/* サイト共通の「代表の写真は切り取らない」指定（img[src*=ceo-yamashita]）を、この丸い写真だけ上書きする */
.prose img.ax-author__photo{display:block;width:12rem;height:12rem!important;aspect-ratio:1!important;max-width:none;border-radius:50%;object-fit:cover!important;object-position:40% 30%!important;background:var(--card)}
.prose .ax-author__body>*{margin:0}
.ax-author__name{font-size:1.8rem;font-weight:700;line-height:1.5;font-family:var(--font-jp-db)}
.ax-author__name small{display:block;font-size:1.15rem;font-weight:400;font-family:var(--font-jp);color:var(--line)}
.prose .ax-author__role{margin-top:.6rem;font-size:1.3rem;color:var(--line)}
.prose .ax-author__text{margin-top:1.2rem;font-size:1.45rem;line-height:1.9;text-align:justify;line-break:strict}
.prose .ax-author__body>.ax-author__link{margin:2rem 0 0 auto;text-decoration:none}
/* 代表者紹介ボタン：濃いグレーで、通常のボタンより一回り細く。ホバーでオレンジ */
.ax-author__link.btn{width:fit-content;min-width:18rem;max-width:none;height:4.6rem;padding:.1rem 3.6rem 0 1.8rem;font-size:1.3rem;transition:transform .2s,background-color .2s}
.ax-author__link.btn .btn__tab{top:.36rem;right:.36rem;bottom:.36rem;width:1.9rem}
.ax-author__link.btn:hover{background:var(--orange-deep)}
.ax-author__link.btn:hover .btn__tab{background:var(--white)}
.ax-author__link.btn:hover .btn__tab svg path{stroke:var(--ink)}

/* ---------- 最新の投稿 ---------- */
.ax-latest{margin:0;padding:0;list-style:none}
.prose .ax-latest li+li{margin-top:0}
.ax-latest__item{display:flex;gap:2rem;align-items:center;padding:1.6rem 0;border-bottom:max(.1rem,1px) dashed var(--card-line);transition:opacity .2s}
.ax-latest__item:hover{opacity:.7}
.ax-latest__thumb{flex:none;width:14rem;aspect-ratio:16/9;border-radius:.8rem;overflow:hidden;background:var(--ph-light)}
.ax-latest__thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:left center;border-radius:0}
.ax-latest__text{min-width:0;line-height:1.6}
.ax-latest__text time{display:block;font-family:var(--font-num);font-size:1.3rem;color:var(--line)}
.ax-latest__title{display:block;margin-top:.3rem;font-size:1.5rem;font-family:var(--font-jp-m)}

/* ---------- キーワード（サイト共通の .chips を使う） ---------- */
.prose .ax-chips{max-width:none;margin:2.4rem 0 0;padding:0;list-style:none}
.prose .ax-chips li+li{margin-top:0}
.ax-chips__num{margin-left:.2em;font-size:.9em;opacity:.7}

/* ---------- スマホ ---------- */
@media (max-width:767px){
  .ax-wrap{margin-top:5rem}
  .prose .ax-wrap>*+*{margin-top:5rem}
  .prose .ax__title{font-size:1.8rem;padding-bottom:1rem}
  .ax__title+*{margin-top:1.8rem}
  .ax-src{font-size:1.3rem}
  .ax-faq__q{padding:1.6rem 4.4rem 1.6rem 1.8rem;font-size:1.45rem}
  .ax-faq__q::after{right:1.8rem}
  .ax-faq__a{margin:0 1.8rem;font-size:1.35rem}
  .ax-author{grid-template-columns:1fr;justify-items:center;gap:1.6rem;padding:2.4rem 2rem;text-align:center}
  .prose img.ax-author__photo{width:10rem;height:10rem!important}
  .prose .ax-chips{margin-top:1.8rem}
  .prose .ax-author__text{font-size:1.35rem;text-align:left}
  .ax-latest__item{gap:1.4rem;padding:1.4rem 0}
  .ax-latest__thumb{width:10rem}
  .ax-latest__title{font-size:1.35rem}
}
