.nac-section,.nac-teaser,.nac-gallery{color:var(--mp-ink,#232527);margin-block:28px 36px}
.nac-section{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);align-items:center;border:1px solid var(--mp-line,#dedfd9);border-radius:12px;background:#fafaf7;overflow:hidden}
.nac-section__img{display:flex;align-items:center;justify-content:center;position:relative;align-self:stretch;min-width:0;padding:24px 16px;background:#eef0e9;cursor:zoom-in}
.nac-section__img img{display:block;width:100%;height:360px;object-fit:contain}
.nac-section__body{padding:28px;min-width:0}
.nac-section h3.nac-section__name{margin:0 0 12px;padding:0;border:0;background:none;color:var(--mp-ink,#232527);font-size:24px;line-height:1.5;font-weight:800;overflow-wrap:anywhere}
.nac-section__badges{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-bottom:16px;font-size:13px;color:#555d56}
.nac-section__rank-icon{width:28px;height:28px;object-fit:contain}
.nac-section__badge{display:inline-flex;align-items:center;gap:5px;line-height:1.6}
.nac-section__badge img{width:22px;height:22px;object-fit:contain}
.nac-section .nac-section__desc{margin:0 0 20px;line-height:1.9;font-size:15px;overflow-wrap:anywhere}
.nac-section .zzz-agent-video{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:6px;background:#232527;margin:20px 0}
.nac-section .nac-section__link{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;color:var(--mp-accent,#bd4e05);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.nac-section .nac-section__link:hover{color:#853a06}
.nac-section__pv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:12px 16px;border:1px solid var(--mp-line,#dedfd9);border-radius:6px;color:#232527;background:#fff;cursor:pointer}
.nac-section__pv-play{display:inline-flex;align-items:center;gap:10px;font:inherit}
.nac-section__pv-play svg{width:28px;height:28px}
.nac-teaser{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;align-items:center;padding-block:24px;border-block:1px solid var(--mp-line,#dedfd9)}
.nac-teaser:not(:has(.nac-teaser__img)){grid-template-columns:1fr}
.nac-teaser__img{position:relative;cursor:zoom-in;background:#eef0e9;border-radius:8px;overflow:hidden}
.nac-teaser__img img{display:block;width:100%;height:140px;object-fit:contain}
.nac-teaser h3.nac-teaser__name{margin:0 0 8px;padding:0;border:0;background:none;color:var(--mp-ink,#232527);font-size:20px;line-height:1.5}
.nac-teaser .nac-teaser__desc{margin:0;font-size:15px;line-height:1.9}
.nac-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
.nac-gallery__item{min-width:0}
.nac-gallery__img{display:flex;position:relative;align-items:center;justify-content:center;aspect-ratio:16/10;background:#eef0e9;border-radius:10px;overflow:hidden}
.nac-gallery__img[data-lightbox-src]{cursor:zoom-in}
.nac-gallery__img img{display:block;width:100%;height:100%;object-fit:contain}
.nac-gallery__img--placeholder{color:#626665;font-size:36px}
.nac-gallery__body{padding:16px 0 0}
.nac-gallery h4.nac-gallery__name{margin:0 0 8px;padding:0;border:0;background:none;color:var(--mp-ink,#232527);font-size:18px;line-height:1.5}
.nac-gallery .nac-gallery__desc{margin:0;font-size:14px;line-height:1.85;color:#555d56;overflow-wrap:anywhere}
:is(.nac-section__img,.nac-teaser__img,.nac-gallery__img[data-lightbox-src])::after{content:'画像を拡大';position:absolute;right:10px;bottom:10px;padding:3px 8px;border-radius:4px;background:#232527;color:#fff;font-size:11px;line-height:1.6;pointer-events:none}
:is(.nac-section,.nac-teaser,.nac-gallery) :focus-visible{outline:3px solid #a74300;outline-offset:3px}
@media(max-width:700px){.nac-section{grid-template-columns:1fr}.nac-section__img{padding:20px}.nac-section__img img{height:280px}.nac-section__body{padding:20px}.nac-section h3.nac-section__name{font-size:22px}.nac-gallery{gap:28px 16px}}
@media(max-width:480px){.nac-gallery{grid-template-columns:1fr}.nac-teaser{grid-template-columns:88px minmax(0,1fr);gap:16px}.nac-teaser__img img{height:112px}.nac-teaser h3.nac-teaser__name{font-size:18px}}

.nac-section:not(:has(.nac-section__img)){grid-template-columns:1fr}
:is(.nac-section__img,.nac-teaser__img,.nac-gallery__img):focus-visible{outline-offset:-3px}
.nac-section .nac-section__pv-btn::after{display:none}
:is(.nac-section__img,.nac-teaser__img,.nac-gallery__img[data-lightbox-src])::after{opacity:1}
