@charset "UTF-8";
/* TOPページのEXPO導線枠専用。既存CSSは変更しない。 */
.p-kv__sponcer.top-expo{box-sizing:border-box;display:flex;flex-direction:column;align-self:flex-start;padding:0;border:1px solid #7e827f;border-radius:28px;background:#fbf9f3;color:#333;overflow:hidden;font-family:"Noto Sans JP",sans-serif;letter-spacing:0}
.top-expo *{box-sizing:border-box}
.top-expo .top-expo__content{padding:18px 22px 8px}
.top-expo .top-expo__logo{display:block;width:100%;height:auto;margin:0 0 12px}
.top-expo .top-expo__copy{margin:0;color:#006b3c;font-size:40px;font-weight:800;line-height:1.12;letter-spacing:-.035em}
.top-expo .top-expo__label{display:table;max-width:100%;margin:9px 0 0;padding:2px 13px 3px;border-radius:30px;background:#006b3c;color:#fff;font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.015em}
.top-expo .top-expo__visual{position:relative;margin:5px -8px 0}
.top-expo .top-expo__visual>img{display:block;width:100%;height:230px;object-fit:contain}
.top-expo .top-expo__visual figcaption{margin:-4px 0 2px;color:#777;font-size:10px;text-align:right;line-height:1.4}
.top-expo .top-expo__news-heading{margin:0;color:#006b3c;font-size:18px;font-weight:700;line-height:1.5}
.top-expo .top-expo__news{margin:0;padding:0;list-style:none}
.top-expo .top-expo__news>li{margin:0;padding:0;border-bottom:1px solid #c4d7bd;list-style:none}
.top-expo .top-expo__news>li>a{display:grid;grid-template-columns:76px minmax(0,1fr) 10px;gap:8px;align-items:center;padding:10px 0;color:#333;text-decoration:none;font-size:12px;font-weight:700;line-height:1.6;transition:opacity .2s}
.top-expo .top-expo__news time{color:#888;font-size:12px;white-space:nowrap;font-weight:600}
.top-expo .top-expo__chevron{font-size:24px;font-weight:400;text-align:right}
.top-expo .top-expo__partner{margin:5px 0 0;color:#888;font-size:11px;font-weight:600;line-height:1.4}
.top-expo .top-expo__button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;margin:0;padding:8px 12px;background:#00713e;color:#fff;font-size:15px;font-weight:700;line-height:1.4;text-decoration:none;transition:background-color .2s}
.top-expo .top-expo__arrow{display:grid;place-items:center;flex-shrink:0;width:31px;height:31px;border:1px solid #809987;border-radius:50%;background:#fff;color:#333;font-size:24px;font-weight:400;line-height:1}
.top-expo a:focus-visible{outline:3px solid #d2a300;outline-offset:-3px}
@media(hover:hover){.top-expo .top-expo__button:hover{background:#005c32}.top-expo .top-expo__news>li>a:hover{opacity:.7}}
@media(min-width:768px) and (max-width:1200px){
 .p-kv__sponcer.top-expo{border-radius:2.3333333333vw}
 .top-expo .top-expo__content{padding:1.5vw 1.8333333333vw .6666666667vw}
 .top-expo .top-expo__logo{margin-bottom:1vw}
 .top-expo .top-expo__copy{font-size:3.3333333333vw}
 .top-expo .top-expo__label{font-size:1.0833333333vw;padding:.1666666667vw 1.0833333333vw .25vw;margin-top:.75vw}
 .top-expo .top-expo__visual{margin:.4166666667vw -.6666666667vw 0}
 .top-expo .top-expo__visual>img{height:19.1666666667vw}
 .top-expo .top-expo__visual figcaption{font-size:.8333333333vw}
 .top-expo .top-expo__news-heading{font-size:1.5vw}
 .top-expo .top-expo__news>li>a{grid-template-columns:6.3333333333vw minmax(0,1fr) .8333333333vw;gap:.6666666667vw;padding:.8333333333vw 0;font-size:1vw}
 .top-expo .top-expo__news time{font-size:1vw}
 .top-expo .top-expo__chevron{font-size:2vw}
 .top-expo .top-expo__partner{font-size:.9166666667vw}
 .top-expo .top-expo__button{min-height:3.8333333333vw;padding:.6666666667vw 1vw;gap:.8333333333vw;font-size:1.25vw}
 .top-expo .top-expo__arrow{width:2.5833333333vw;height:2.5833333333vw;font-size:2vw}
}
@media(max-width:767px){
 .p-kv__sponcer.top-expo{width:100%;max-width:480px;margin-inline:auto;border-radius:24px}
 .top-expo .top-expo__content{padding:20px 20px 10px}
 .top-expo .top-expo__logo{max-width:370px;margin:0 auto 14px}
 .top-expo .top-expo__copy{font-size:clamp(32px,10vw,49px)}
 .top-expo .top-expo__label{font-size:clamp(11px,3.3vw,15px)}
 .top-expo .top-expo__visual>img{height:auto;max-height:300px}
 .top-expo .top-expo__news>li>a{grid-template-columns:76px minmax(0,1fr) 10px;font-size:12px}
 .top-expo .top-expo__button{font-size:clamp(12px,3.7vw,17px)}
 .top-expo .top-expo__partner{font-size:11px}
}

/* 調整01：緑ラベル削除、コピーを1行表示 */
.top-expo .top-expo__copy{font-size:26px;line-height:1.4;letter-spacing:-.04em;white-space:nowrap}
@media(min-width:768px) and (max-width:1200px){
 .top-expo .top-expo__copy{font-size:2.1666666667vw}
}
@media(max-width:767px){
 .top-expo .top-expo__copy{font-size:clamp(20px,6vw,28px)}
}

/* 調整02：コピーを本文幅に合わせ拡大、ロゴとの余白を短縮 */
.top-expo .top-expo__content{container-type:inline-size}
.top-expo .top-expo__logo{margin-bottom:2px}
.top-expo .top-expo__copy{font-size:30px;font-size:clamp(18px,9.4cqi,40px);line-height:1.2;white-space:nowrap}

/* 調整03：協賛文1行化 / NEWS見出しはHTMLコメントで保持 */
.top-expo .top-expo__partner{font-size:6px;font-size:1.85cqi;white-space:nowrap;line-height:1.3;letter-spacing:0}
.top-expo .top-expo__visual figcaption{margin-top:-4px;margin-bottom:0}
.top-expo .top-expo__news>li:first-child>a{padding-top:2px}
.top-expo .top-expo__visual{margin-top:3px;margin-bottom:0}

/* 調整04：ロゴ上下とニュース本文の行間を短縮 */
.top-expo .top-expo__content{padding-top:6px}
.top-expo .top-expo__logo{margin-bottom:-4px}
.top-expo .top-expo__news>li>a{line-height:1.3}

/* 調整05：PCのKV枠と高さを揃え、共通の矢印画像を使用 */
@media(min-width:768px){
 .p-kv__sponcer.top-expo{align-self:stretch}
 .top-expo .top-expo__button{margin-top:auto}
}
.top-expo .top-expo__arrow{display:block;border:0;border-radius:0;background:none;object-fit:contain}

/* 調整06：下部リンクのクリック領域をEXPO枠全体に拡張 */
.p-kv__sponcer.top-expo{position:relative}
.top-expo .top-expo__button{position:static}
.top-expo .top-expo__button::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer;border-radius:inherit}
.top-expo .top-expo__button:focus-visible::after{outline:3px solid #d2a300;outline-offset:-3px}
