/* Shared in-feed advertising. Keep the reading surface still and the sponsor explicit. */
.tkp-native-ad{--ad-ink:#282721;--ad-muted:#665f54;--ad-line:#ddd6c9;--ad-accent:#8a7252;box-sizing:border-box;max-width:100%;margin:36px 0;padding:15px 0 20px;border-top:1px solid #ac987b;border-bottom:1px solid var(--ad-line);background:#fff;color:var(--ad-ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;letter-spacing:.02em;overflow-wrap:anywhere}
.tkp-native-ad *,.tkp-native-ad *::before,.tkp-native-ad *::after{box-sizing:border-box}
.tkp-native-ad .tkp-native-ad-meta{display:flex;align-items:center;justify-content:flex-start;gap:8px 18px;flex-wrap:wrap;margin:0 0 15px;padding:0;font-size:12px;line-height:1.65;color:var(--ad-muted)}
.tkp-native-ad .tkp-native-ad-label{display:inline-flex;align-items:baseline;gap:9px;flex-shrink:0;font-size:12px;font-weight:500;color:#675b48;white-space:nowrap}
.tkp-native-ad-label>span[lang]{font:10px/1.5 Arial,sans-serif;letter-spacing:.13em}
.tkp-native-ad .tkp-native-ad-disclosure{padding:2px 6px;border:1px solid #c7bcaa;font-size:11px;line-height:1.4;letter-spacing:.04em}
.tkp-native-ad .tkp-native-ad-sponsor{font-size:14px;font-weight:600;line-height:1.65;color:#3f3a31;text-decoration:none;text-underline-offset:3px}
.tkp-native-ad a.tkp-native-ad-sponsor:hover{text-decoration:underline}
.tkp-native-ad .tkp-native-ad-link{display:grid;grid-template-columns:minmax(140px,27%) minmax(0,1fr);gap:26px;align-items:center;margin:0;padding:0;background:transparent;color:var(--ad-ink);text-decoration:none;border:0;box-shadow:none}
.tkp-native-ad .tkp-native-ad-visual{display:flex;align-items:center;justify-content:center;min-width:0;height:176px;padding:12px;background:#f7f5f0;overflow:hidden}
.tkp-native-ad .tkp-native-ad-visual>picture{display:block;width:100%;height:100%}
.tkp-native-ad .tkp-native-ad-visual img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;margin:0 auto;object-fit:contain;object-position:center}
.tkp-native-ad .tkp-native-ad-copy{min-width:0;align-self:center}
.tkp-native-ad .tkp-native-ad-copy:empty{display:none}
.tkp-native-ad.has-landscape-image .tkp-native-ad-link{grid-template-columns:minmax(0,40%) minmax(0,1fr)}
.tkp-native-ad .tkp-native-ad-title{margin:0 0 9px;padding:0;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:23px;font-weight:600;line-height:1.6;letter-spacing:.025em;color:var(--ad-ink);text-wrap:pretty}
.tkp-native-ad .tkp-native-ad-description{margin:0 0 8px;padding:0;font-size:14px;font-weight:400;line-height:1.85;color:#635d53}
.tkp-native-ad .tkp-native-ad-cta{display:inline-flex;align-items:center;gap:18px;min-height:40px;margin:2px 0 0;padding:5px 0;font-size:13px;font-weight:600;line-height:1.6;color:#294e43;text-decoration:underline;text-decoration-color:#b4bcb4;text-underline-offset:6px}
.tkp-native-ad-cta svg{display:block;width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5}
.tkp-native-ad a.tkp-native-ad-link:hover .tkp-native-ad-cta{text-decoration-color:#294e43}
.tkp-native-ad a:focus-visible{outline:2px solid #8a7252;outline-offset:5px}
.tkp-native-ad.is-banner .tkp-native-ad-link{display:block}
.tkp-native-ad.is-banner .tkp-native-ad-visual{position:relative;height:auto;min-height:0;padding:0;aspect-ratio:var(--tkp-ad-ratio,1200/310);background:#f7f5f0}
.tkp-native-ad.is-banner .tkp-native-ad-visual>picture{position:absolute;inset:0;height:100%}
.tkp-native-ad.is-banner .tkp-native-ad-visual img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}
.tkp-native-ad.is-banner .tkp-native-ad-copy{padding:12px 0 0;display:flex;align-items:baseline;justify-content:space-between;gap:8px 24px;flex-wrap:wrap}
.tkp-native-ad.is-banner .tkp-native-ad-copy:empty{display:none}
.tkp-native-ad.is-banner.has-no-headline .tkp-native-ad-copy{justify-content:flex-end;padding-top:4px}
.tkp-native-ad.is-banner .tkp-native-ad-title{font-family:inherit;font-size:15px;line-height:1.8;margin:0;flex:1 1 250px}
.tkp-native-ad.is-banner .tkp-native-ad-description{flex-basis:100%;margin:0}
.tkp-native-ad.is-banner .tkp-native-ad-cta{margin:0}
.tkp-native-ad--article{max-width:680px;margin:42px auto 38px}
.tkp-native-ad--article .tkp-native-ad-title{font-size:22px}
.tkp-article-prose>.tkp-native-ad+h2{margin-top:0}
.sponsor-inline .tkp-native-ad{margin:0}
/* Scope the section-to-ad spacing to the two rendered homepage in-feed slots. */
.tkp-home .main-column>.section.section--before-infeed{margin-bottom:32px}
.tkp-home .main-column>.sponsor-inline.sponsor-inline--infeed{margin:0 0 40px}
@media(max-width:1100px){.tkp-native-ad .tkp-native-ad-link{gap:20px}.tkp-native-ad .tkp-native-ad-title{font-size:21px}.tkp-native-ad .tkp-native-ad-description{font-size:13px}}
@media(max-width:600px){
 .tkp-home .main-column>.section.section--before-infeed{margin-bottom:24px}
 .tkp-home .main-column>.sponsor-inline.sponsor-inline--infeed{margin-bottom:32px}
 .tkp-native-ad{margin:28px 0;padding:12px 0 16px}
 .tkp-native-ad .tkp-native-ad-meta{gap:7px 12px;margin-bottom:14px;font-size:12px}
 .tkp-native-ad-label>span[lang]{display:none}
 .tkp-native-ad .tkp-native-ad-sponsor{font-size:13px;max-width:calc(100% - 54px)}
 .tkp-native-ad .tkp-native-ad-link{grid-template-columns:94px minmax(0,1fr);gap:16px;align-items:start}
 .tkp-native-ad .tkp-native-ad-visual{height:132px;padding:9px}
 .tkp-native-ad.has-square-image .tkp-native-ad-visual{height:94px}
 .tkp-native-ad.has-landscape-image .tkp-native-ad-link{grid-template-columns:minmax(0,1fr);gap:14px}
 .tkp-native-ad.has-landscape-image .tkp-native-ad-visual{position:relative;height:auto;max-height:160px;aspect-ratio:2/1;padding:0}
 .tkp-native-ad.has-landscape-image .tkp-native-ad-visual img{position:absolute;inset:0;width:100%;height:100%;padding:8px;object-fit:contain}
 .tkp-native-ad .tkp-native-ad-title{font-size:18px;line-height:1.65;margin-bottom:8px}
 .tkp-native-ad .tkp-native-ad-description{font-size:14px;line-height:1.8;margin-bottom:4px}
 .tkp-native-ad .tkp-native-ad-cta{min-height:44px;font-size:13px;gap:12px;margin:0}
 .tkp-native-ad.is-banner .tkp-native-ad-copy{gap:4px 16px;padding-top:8px}
 .tkp-native-ad.is-banner .tkp-native-ad-visual{aspect-ratio:var(--tkp-ad-ratio-mobile,var(--tkp-ad-ratio,1200/310))}
 .tkp-native-ad.is-banner .tkp-native-ad-title{font-size:14px;flex-basis:100%}
 .tkp-native-ad--article{margin:32px auto}
}
@media(max-width:350px){.tkp-native-ad .tkp-native-ad-link{grid-template-columns:76px minmax(0,1fr);gap:12px}.tkp-native-ad .tkp-native-ad-visual{height:108px}.tkp-native-ad .tkp-native-ad-title{font-size:17px}}
@media(max-width:350px){.tkp-native-ad.has-square-image .tkp-native-ad-visual{height:76px}}
/* Existing Ad Inserter banners: a quieter footprint within interview prose. */
.tkp-article-prose .article_page_banner{width:100%;max-width:560px;margin:28px auto;padding:0;border:0;background:transparent;letter-spacing:.01em}
.tkp-article-prose .article_page_banner> a{display:block;width:100%;margin:0;text-decoration:none}
.tkp-article-prose .article_page_banner> a:hover{opacity:1}
.tkp-article-prose .article_page_banner> a:focus-visible{outline:2px solid #294e43;outline-offset:4px}
.tkp-article-prose .article_page_banner picture{display:block;width:100%;margin:0}
.tkp-article-prose .article_page_banner img{display:block;width:100%;max-width:100%;height:auto;margin:0;object-fit:contain}
.tkp-article-prose .article_page_banner p{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:3px 5px;margin:7px 0 0;padding:0;font-size:12px;font-weight:400;line-height:1.7;color:#666259;overflow-wrap:anywhere}
.tkp-article-prose .article_page_banner p::before{content:"広告";padding-right:7px;margin-right:2px;border-right:1px solid #d8d4cc;font-size:11px;line-height:1.3;letter-spacing:.06em;color:#666259}
.tkp-article-prose .article_page_banner p a{display:inline;width:auto;max-width:100%;margin:0;color:inherit;text-decoration:underline;text-decoration-color:#c2bcb1;text-underline-offset:3px}
.tkp-article-prose .article_page_banner p a:hover{text-decoration-color:#666259}
@media(max-width:600px){.tkp-article-prose .article_page_banner{max-width:100%;margin:24px 0}.tkp-article-prose .article_page_banner p{gap:2px 4px}}
@media print{.tkp-native-ad{display:none!important}}
