.top-v2{--ink:#10213b;--blue:#1659a7;--sky:#51c8ee;--paper:#fffdfa;--wash:#f2f9fc;--line:#cbdce9;background:linear-gradient(#fffdfa,#f4faff);color:var(--ink);font-size:15px}.top-v2 *{min-width:0}.top-v2 a:focus-visible{outline:3px solid #36aee0;outline-offset:3px}.top-header{height:76px;display:flex;align-items:center;gap:30px;padding:0 max(4vw,32px);background:#fffdfa;border-bottom:1px solid #dbe7ef;position:sticky;top:0;z-index:25}.top-brand{display:flex;align-items:center;gap:11px;margin-right:auto}.top-brand img{width:48px;height:48px;object-fit:contain}.top-brand b,.top-brand small{display:block}.top-brand b{font-size:18px}.top-brand small{margin-top:2px;color:#75879d;font-size:11px}.top-header nav{display:flex;gap:24px}.top-header nav a{min-height:44px;display:flex;align-items:center;font-size:13px;font-weight:800}.top-search{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;font-size:20px}.top-hero,.top-routes,.top-section,.top-report,.top-footer{width:min(1320px,calc(100% - 64px));margin-inline:auto}.top-hero{margin-top:32px;display:grid;grid-template-columns:1.15fr .85fr;min-height:420px;border:1px solid #c7dae8;border-radius:26px;overflow:hidden;background:linear-gradient(120deg,#eaf7fd,#f5f1fb);box-shadow:0 18px 44px #182f5018}.top-hero>div{padding:clamp(38px,5vw,70px)}.top-hero>div>small,.top-map>div>small{color:#2ab8e5;font-weight:900}.top-hero h1{max-width:18ch;margin:14px 0 16px;font-size:clamp(38px,4vw,56px);line-height:1.16;letter-spacing:-.035em;word-break:keep-all;text-wrap:balance}.top-hero p{max-width:680px;color:#54677e;line-height:1.9}.top-hero>div>div{display:flex;gap:12px;margin-top:28px}.top-hero>div>div a,.top-map nav a,.top-more,.top-report>a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;border:1px solid #2a5c9d;border-radius:11px;font-weight:900}.top-hero>div>div a:first-child,.top-report>a{background:#123d72;color:#fff}.top-hero figure{margin:0;position:relative;min-height:360px}.top-hero figure>img{width:100%;height:100%;display:block;object-fit:cover}.top-hero figcaption{position:absolute;right:22px;top:20px;padding:10px 15px;border-radius:999px;background:#0d6170;color:#fff;font-size:12px;font-weight:900}.top-hero figcaption i{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:#64f0d0}.top-routes,.top-section{padding-block:64px}.top-section-title{margin-bottom:26px}.top-section-title h2{margin:0;font-size:clamp(28px,3vw,38px);line-height:1.25;word-break:keep-all;text-wrap:balance}.top-section-title h2:after{content:"";display:block;width:46px;height:3px;margin-top:13px;background:var(--sky)}.top-section-title p{margin:10px 0 0;color:#64768a}.top-routes>div:last-child{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.top-routes>div:last-child a{min-height:116px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 20px #2037540a}.top-routes a i{width:16px;height:16px;display:block;margin-bottom:13px;border-radius:50%;background:#55c9ef}.top-routes a:nth-child(2) i{background:#7d72ed}.top-routes a:nth-child(3) i{background:#51c99a}.top-routes a:nth-child(4) i{background:#5597ed}.top-routes a:nth-child(5) i{background:#e67bd7}.top-routes a:nth-child(6) i{background:#f1b94f}.top-routes b,.top-routes span{display:block}.top-routes b{font-size:16px}.top-routes span{margin-top:7px;color:#65778b;font-size:12px;line-height:1.5}.top-latest{padding-top:18px}.top-topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.top-topic-grid>a{display:grid;grid-template-columns:42% 1fr;min-height:190px;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.top-topic-image{height:100%;min-height:190px}.top-topic-image .eyecatch-image{width:100%;height:100%;object-fit:contain;padding:5%;background:#112d4e}.top-topic-grid>a>span{display:flex;flex-direction:column;padding:20px}.top-topic-grid em{align-self:flex-start;padding:5px 9px;border-radius:99px;background:#ab3751;color:#fff;font-size:11px;font-style:normal;font-weight:900}.top-topic-grid em.field{background:#177f9c}.top-topic-grid em.update{background:#5845ad}.top-topic-grid b{margin-top:12px;font-size:18px;line-height:1.4}.top-topic-grid p{margin:8px 0;color:#53667c;font-size:13px;line-height:1.6}.top-topic-grid small{margin-top:auto;color:#3187b1;font-weight:800}.top-map{display:grid;grid-template-columns:1.08fr .92fr;gap:42px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:24px;background:#f8fcff}.top-map-image{min-height:390px;display:grid;place-items:center;border-radius:18px;background:#dceff8;overflow:hidden}.top-map-image img{width:100%;height:100%;max-height:420px;object-fit:contain}.top-map h2{margin:12px 0;font-size:36px}.top-map p{color:#53677b;line-height:1.8}.top-map nav{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.top-map nav a{min-height:44px;padding-inline:18px}.top-map em{color:#687a8c;font-size:12px;font-style:normal}.top-weapons>div:nth-child(2){display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.top-weapons>div:nth-child(2)>a{min-height:180px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}.top-weapons a small,.top-weapons a b,.top-weapons a span{display:block}.top-weapons a small{color:#187b5b;font-weight:900}.top-weapons a b{margin:18px 0 8px;font-size:20px}.top-weapons a span{color:#687a8e}.top-weapons>p{margin:18px 0 0;padding:18px 22px;border-left:4px solid var(--sky);background:#edf8fc}.top-weapons>p a{color:#1457a5;font-weight:900}.top-shop{width:100%;padding:64px max(4vw,calc((100% - 1320px)/2));background:#eaf7fc}.top-shop>.top-section-title,.top-shop-grid,.top-shop>.top-more,.top-source{max-width:1320px;margin-left:auto;margin-right:auto}.top-shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.top-shop-card{padding:16px;border:1px solid #98b4cf;border-radius:18px;background:#fff}.top-shop-card>small{display:block;margin-bottom:10px;color:#31acd8;font-weight:900}.top-shop-media,.top-shop-placeholder{aspect-ratio:16/9;display:grid;place-items:center;border-radius:14px;background:radial-gradient(circle,#233b5b,#111827);overflow:hidden}.top-shop-media .shop-image{width:100%;height:100%;display:grid;place-items:center}.top-shop-media .shop-image img{width:100%;height:100%;padding:12%;object-fit:contain;object-position:center}.top-shop-placeholder{color:#9bb2c7}.top-shop-placeholder img{width:68px;height:68px;object-fit:contain;opacity:.45}.top-shop-placeholder i{font-style:normal}.top-shop-card>b,.top-shop-card>time,.top-shop-card>strong,.top-shop-card>em{display:block}.top-shop-card>b{margin-top:16px;font-size:18px}.top-shop-card>time{margin-top:7px;color:#bd6c28;font-weight:900}.top-shop-card>strong{margin-top:10px;font-size:16px}.top-shop-card>em{margin-top:9px;color:#278364;font-size:12px;font-style:normal}.top-shop-card.pending{border-color:#cbb27e}.top-shop-card.watch{border-color:#ba91cc}.top-more{margin-top:24px;background:#fff}.top-source{margin-top:14px;color:#557084;font-size:12px}.top-beginner>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:26px}.top-beginner>div:last-child a{min-height:150px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}.top-beginner a small,.top-beginner a b,.top-beginner a span{display:block}.top-beginner a small{color:#35aed7;font-weight:900}.top-beginner a b{margin:18px 0 8px;font-size:18px}.top-beginner a span{color:#647589}.top-report{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:64px;padding:22px 26px;border:2px solid #6884a6;border-radius:16px}.top-report b,.top-report span{display:block}.top-report span{margin-top:7px;color:#627286}.top-footer{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:46px max(4vw,calc((100% - 1320px)/2));background:#e9f3f8;border-top:1px solid var(--line)}.top-footer p{color:#627386}.top-footer nav{display:flex;gap:18px;flex-wrap:wrap}.top-footer nav a{min-height:44px;display:flex;align-items:center}
@media(max-width:900px){.top-header{height:68px;padding:0 16px}.top-header nav{display:none}.top-brand img{width:40px;height:40px}.top-brand b{font-size:15px}.top-brand small{font-size:9px}.top-hero,.top-routes,.top-section,.top-report{width:calc(100% - 28px)}.top-hero{grid-template-columns:1fr;margin-top:14px;border-radius:20px}.top-hero>div{padding:26px 20px 20px}.top-hero h1{font-size:30px;line-height:1.2}.top-hero p{font-size:13px;line-height:1.7}.top-hero>div>div{margin-top:20px}.top-hero>div>div a{min-height:48px;padding:0 16px;font-size:12px}.top-hero figure{min-height:210px}.top-hero figcaption{right:12px;top:12px}.top-routes,.top-section{padding-block:48px}.top-section-title{margin-bottom:20px}.top-section-title h2{font-size:24px}.top-section-title p{font-size:13px}.top-routes>div:last-child{grid-template-columns:1fr 1fr;gap:10px}.top-routes>div:last-child a{min-height:106px;padding:15px}.top-routes b{font-size:14px}.top-routes span{font-size:11px}.top-topic-grid{grid-template-columns:1fr;gap:12px}.top-topic-grid>a{grid-template-columns:42% 1fr;min-height:150px}.top-topic-image{min-height:150px}.top-topic-grid>a>span{padding:14px}.top-topic-grid b{font-size:15px;margin-top:8px}.top-topic-grid p{font-size:11px}.top-map{grid-template-columns:1fr;gap:20px;padding:14px}.top-map-image{min-height:0;aspect-ratio:1.08}.top-map h2{font-size:24px}.top-map p{font-size:13px}.top-map nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.top-map nav a{padding:0 7px;font-size:11px}.top-weapons>div:nth-child(2){grid-template-columns:1fr;gap:12px}.top-weapons>div:nth-child(2)>a{min-height:0;padding:18px}.top-weapons a b{margin:10px 0 6px;font-size:17px}.top-weapons>p{font-size:12px}.top-shop{padding:48px 14px}.top-shop-grid{grid-template-columns:1fr;gap:14px}.top-shop-card{display:grid;grid-template-columns:120px 1fr;grid-template-rows:auto auto auto auto auto;padding:12px;column-gap:14px;min-height:230px}.top-shop-card>small{grid-column:1/-1}.top-shop-media,.top-shop-placeholder{grid-row:2/7;grid-column:1;aspect-ratio:1}.top-shop-card>b,.top-shop-card>time,.top-shop-card>strong,.top-shop-card>em{grid-column:2}.top-shop-card>b{margin-top:0;font-size:16px}.top-shop-card>time{font-size:12px}.top-shop-placeholder img{width:48px;height:48px}.top-shop-placeholder i{font-size:11px}.top-more{width:100%}.top-beginner>div:last-child{grid-template-columns:1fr;gap:12px}.top-beginner>div:last-child a{min-height:130px;padding:18px}.top-report{align-items:stretch;flex-direction:column;margin-bottom:48px}.top-report>a{width:100%}.top-footer{grid-template-columns:1fr;padding:36px 16px 90px}.top-v2 img{max-width:100%}}
/* Responsive overflow and minimum readable auxiliary text. */
.top-v2{overflow-x:clip}
.top-hero h1,.top-section-title h2{max-width:100%;overflow-wrap:anywhere;word-break:normal;text-wrap:pretty}
.top-hero h1>span{white-space:nowrap;overflow-wrap:normal}.top-hero h1 .top-title-name{display:block}.top-title-beginner,.top-title-latest{display:inline}
@media(min-width:901px){.top-hero h1{font-size:44px!important}}
@media(max-width:350px){.top-hero>div{padding-left:8px;padding-right:8px}.top-v2 .top-section-title h2{font-size:20px!important;line-height:1.28!important;text-wrap:balance!important}}
@media(max-width:430px){.top-hero h1>span{display:block!important}}
.top-footer,.top-footer p,.top-footer a,.top-v2 small,.top-v2 em{font-size:max(12px,1em)}
@media(max-width:900px){.top-brand small,.top-routes span,.top-topic-grid p,.top-map nav a,.top-shop-placeholder i{font-size:12px}.top-hero h1,.top-section-title h2{overflow-wrap:anywhere;word-break:normal;text-wrap:wrap}}

/* Article eyecatches use a full-bleed editorial frame. Item artwork keeps its own contain rules. */
.top-topic-grid>a{display:flex;min-height:0;flex-direction:column;transition:transform .2s,box-shadow .2s}
.top-topic-grid>a:hover{transform:translateY(-3px);box-shadow:0 18px 38px #18365318}
.top-topic-image{width:100%;height:clamp(170px,18vw,230px);min-height:0;background:#112d4e;overflow:hidden}
.top-topic-image .eyecatch-image,.top-topic-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;padding:0;background:transparent}
.top-topic-grid>a>span{min-height:205px;flex:1}
@media(max-width:900px){
  .top-topic-grid>a{display:grid;grid-template-columns:minmax(170px,42%) 1fr;min-height:170px}
  .top-topic-image{height:100%;min-height:170px}
  .top-topic-grid>a>span{min-height:0}
}
@media(max-width:560px){
  .top-topic-grid>a{display:flex;min-height:0}
  .top-topic-image{height:auto;min-height:0;aspect-ratio:16/9}
  .top-topic-grid>a>span{min-height:180px}
}

/* TOP command center: approved hero, today's three missions, and six routes. */
.top-hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.top-hero .top-hero-lead{margin:0;max-width:62ch}
.top-heat-line{width:100%;margin:22px 0 0!important;padding:13px 16px;border-left:4px solid #e58a2d;border-radius:0 12px 12px 0;background:#fff4df;color:#633b14!important;line-height:1.65!important}
.top-heat-line>span{margin-right:8px;color:#c96816}
.top-heat-line strong{margin-right:.35em;color:#8c4410}
.top-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px!important}
.top-chibi-message{position:relative;width:100%;margin:18px 0 0!important;padding:13px 16px 13px 46px;border:1px solid #bad8e8;border-radius:14px;background:#f3fbff;color:#37556f!important;font-size:13px;line-height:1.65!important}
.top-chibi-message>span{position:absolute;left:14px;top:13px;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#1e8fbd;color:#fff;font-weight:900}
.top-chibi-message strong{display:block;color:#1a5f83;font-size:12px}
.top-verification{width:100%;display:grid;grid-template-columns:1fr .72fr 1.45fr;gap:1px;margin:16px 0 0;border:1px solid #c7d9e5;border-radius:13px;overflow:hidden;background:#c7d9e5}
.top-verification>div{padding:10px 12px;background:#fff}
.top-verification dt{color:#61758a;font-size:12px;font-weight:800}
.top-verification dd{margin:3px 0 0;color:#173453;font-size:12px;font-weight:900;line-height:1.45}
.top-v2 .top-hero{gap:0;padding:0;align-items:center}
.top-v2 .top-hero figure{width:100%;height:auto;min-height:0;aspect-ratio:3/2;align-self:center;background:transparent;overflow:hidden}
.top-v2 .top-hero figure>img{width:100%;height:100%;object-fit:cover;object-position:center}
.top-hero figcaption{display:flex;align-items:center}
.top-shop-media .shop-image.is-placeholder{width:100%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important}
.top-shop-media .shop-image.is-placeholder img{width:min(64px,32%)!important;height:auto!important;max-height:64px;padding:0!important;opacity:.45}
.top-eyebrow{display:block;margin-bottom:10px;color:#20769a!important;font-size:12px!important;font-weight:900;letter-spacing:.08em}
.top-latest{padding-top:50px}
.top-topic-grid{align-items:stretch}
.top-mission-card{height:100%;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 9px 25px #2037540d;transition:transform .2s,box-shadow .2s}
.top-mission-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #18365318}
.top-mission-link{height:100%;display:flex;flex-direction:column}
.top-mission-link:focus-visible{outline-offset:5px}
.top-mission-content{display:flex;flex:1;flex-direction:column;padding:20px}
.top-mission-tags{display:flex;align-items:center;justify-content:space-between;gap:10px}
.top-action-label,.top-status{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:900;line-height:1.2}
.top-action-label,.top-action-label.category-news{background:#1679a7;color:#fff;font-style:normal}
.top-action-label.field,.top-action-label.category-map{background:#34876d}
.top-action-label.update,.top-action-label.category-weapon{background:#7358b4}
.top-mission-tags .top-action-label{color:#fff!important;font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif!important;font-weight:900}
.top-status{border:1px solid #a9c6d8;background:#f5fbff;color:#28546e}
.top-status i{margin-right:5px;font-style:normal}
.top-mission-title{display:-webkit-box;min-height:2.8em;margin:15px 0 13px;overflow:hidden;color:#132b48;font-size:20px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.top-mission-block{display:block;margin-top:10px;padding:12px 13px;border-radius:12px;line-height:1.55}
.top-mission-block strong,.top-mission-block>span{display:block}
.top-mission-block strong{margin-bottom:4px;font-size:12px}
.top-mission-block>span{color:#3f566e;font-size:13px}
.top-mission-fact{border:1px solid #d3dce4;background:#f5f7f9}
.top-mission-fact strong{color:#43586c}
.top-mission-action{border:1px solid #b9dbea;background:#edf9fe}
.top-mission-action strong{color:#176d91}
.top-mission-fun{display:flex;margin-top:12px;padding:10px 12px;border-left:4px solid #e58a2d;background:#fff6e8;color:#754317;font-size:13px;font-weight:800;line-height:1.55}
.top-mission-fun i{margin-right:7px;color:#c96919;font-style:normal}
.top-mission-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:14px;color:#62768a!important;font-size:12px!important;line-height:1.5}
.top-mission-cta{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:0 14px;border:1px solid #2a5c9d;border-radius:10px;color:#164f91;font-size:13px;font-weight:900;white-space:nowrap}
.top-mission-cta>span{font-size:17px}
.top-routes{padding-top:56px}
.top-routes>div:last-child a{transition:transform .18s,border-color .18s,box-shadow .18s}
.top-routes>div:last-child a:hover{transform:translateY(-2px);border-color:#85b7d4;box-shadow:0 12px 28px #20375414}

@media(max-width:900px){
  .top-v2 .top-hero{padding:0;gap:0}
  .top-hero-copy{padding-bottom:18px!important}
  .top-hero h1{max-width:19ch;margin-top:12px}
  .top-heat-line{margin-top:16px!important;padding:11px 13px}
  .top-hero-actions{width:100%;display:grid!important;grid-template-columns:1fr;margin-top:16px!important}
  .top-hero-actions a{width:100%;white-space:normal;text-align:center}
  .top-chibi-message{margin-top:14px!important;padding-left:43px;font-size:12px}
  .top-verification{grid-template-columns:1fr 1fr}
  .top-verification>div:last-child{grid-column:1/-1}
  .top-latest{padding-top:42px}
  .top-topic-grid{grid-template-columns:1fr;gap:16px}
  .top-mission-card{width:100%}
  .top-topic-image{height:auto;min-height:0;aspect-ratio:16/9}
  .top-mission-content{padding:17px}
  .top-mission-title{min-height:0;font-size:18px}
  .top-routes{padding-top:44px}
}

@media(max-width:390px){
  .top-v2 .top-hero h1{font-size:29px!important;line-height:1.18!important;letter-spacing:-.04em}
  .top-v2 .top-section-title h2{font-size:22px!important;line-height:1.28!important;letter-spacing:-.02em}
  .top-mission-tags{align-items:flex-start;flex-direction:column}
  .top-action-label,.top-status{min-height:27px}
  .top-mission-title{font-size:17px}
  .top-mission-block>span,.top-mission-fun{font-size:12px}
  .top-mission-cta{font-size:12px}
  .top-routes>div:last-child a{padding:14px 12px}
}

@media(max-width:350px){
  .top-v2 .top-section-title h2{font-size:20px!important;line-height:1.24!important;text-wrap:balance!important}
}

/* TOP final visual system: full-width heading rules, approved community hero, and three visual levels. */
.top-v2 .top-section-title h2{display:table;width:fit-content;max-width:100%}
.top-v2 .top-section-title h2:after{width:100%;height:4px;border-radius:99px;background:linear-gradient(90deg,#1659a7 0 min(64px,28%),#9fdcf3 min(64px,28%) 100%)}
.top-v2 .top-hero{grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr)}
.top-v2 .top-hero-copy{padding:clamp(30px,3.6vw,56px)!important}
.top-v2 .top-hero h1{max-width:none}
.top-v2 .top-hero h1>span{display:block;white-space:nowrap}
.top-v2 .top-hero figure{align-self:stretch;aspect-ratio:auto;min-height:100%}
.top-v2 .top-hero figure>img{object-fit:cover;object-position:center}

.top-trust-strip{width:min(1320px,calc(100% - 64px));display:grid;grid-template-columns:1.2fr 1fr;gap:14px;align-items:stretch;margin:14px auto 0;padding:14px;border:1px solid #c7dae8;border-radius:18px;background:#f8fcff;box-shadow:0 10px 28px #1836530a}
.top-trust-strip .top-chibi-message,.top-trust-strip .top-verification{height:100%;margin:0!important}
.top-trust-strip .top-chibi-message{display:flex;flex-direction:column;justify-content:center;padding-top:11px;padding-bottom:11px}

.top-map-copy{margin:0}
.top-map-copy nav{margin-bottom:18px}
.top-weapons,.top-beginner{padding-inline:28px;border:1px solid #d5e5ef;border-radius:24px;background:#fff;box-shadow:0 12px 34px #1836530a}
.top-weapons-layout,.top-shop-layout,.top-beginner-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:24px;align-items:stretch}
.top-weapons>div.top-weapons-layout{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:24px}
.top-beginner>div.top-beginner-layout{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:24px}

.top-section-visual{position:relative;display:block;min-height:0!important;padding:0!important;border:1px solid #bdd4e3!important;border-radius:20px!important;background:#102c4a!important;overflow:hidden;box-shadow:0 12px 30px #18365318}
.top-section-visual>.eyecatch{width:100%;height:100%;min-height:360px;position:relative;overflow:hidden}
.top-section-visual .eyecatch-image,.top-section-visual>.eyecatch>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.top-section-visual .top-visual-copy{position:absolute;left:22px;bottom:22px;z-index:3;width:min(46%,310px);padding:16px 17px;border:1px solid #ffffff42;border-radius:14px;background:#0b2746dc;color:#fff;box-shadow:0 12px 32px #07182a66;backdrop-filter:blur(8px)}
.top-visual-copy small,.top-visual-copy b,.top-visual-copy em{display:block}
.top-visual-copy small{color:#8ee6ff!important;font-size:12px!important;font-weight:900}
.top-visual-copy b{margin-top:7px!important;color:#fff;font-size:20px!important;line-height:1.35}
.top-visual-copy em{margin-top:8px;color:#d6e9f5!important;font-size:12px!important;font-style:normal;font-weight:700;line-height:1.5}

.top-weapon-links,.top-beginner-links,.top-shop-summary{display:grid;gap:12px}
.top-weapon-links>a,.top-beginner-links>a,.top-shop-links>a{display:flex;min-height:0;flex-direction:column;justify-content:center;padding:18px 20px;border:1px solid var(--line);border-left:5px solid #55c9ef;border-radius:15px;background:#fff;box-shadow:0 7px 20px #2037540a;transition:transform .18s,border-color .18s,box-shadow .18s}
.top-weapon-links>a:nth-child(2){border-left-color:#7d72ed}.top-weapon-links>a:nth-child(3){border-left-color:#51c99a}
.top-weapon-links>a:hover,.top-beginner-links>a:hover,.top-shop-links>a:hover{transform:translateY(-2px);border-color:#85b7d4;box-shadow:0 12px 28px #20375414}
.top-weapon-links small,.top-weapon-links b,.top-weapon-links span,.top-beginner-links small,.top-beginner-links b,.top-beginner-links span,.top-shop-links small,.top-shop-links b{display:block}
.top-weapon-links small,.top-beginner-links small,.top-shop-links small{color:#187b9c;font-size:12px!important;font-weight:900}
.top-weapon-links b,.top-beginner-links b,.top-shop-links b{margin:7px 0 5px;font-size:17px;line-height:1.4}
.top-weapon-links span,.top-beginner-links span{color:#687a8e;font-size:13px;line-height:1.55}
.top-tip{margin-top:20px!important}

.top-shop-layout{max-width:1320px;margin-inline:auto}
.top-shop-visual .top-visual-copy{width:min(52%,340px)}
.top-shop-summary{grid-template-columns:minmax(250px,1fr);align-content:start}
.top-shop-summary .top-shop-card{display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto auto auto auto auto;column-gap:16px;min-height:230px}
.top-shop-summary .top-shop-card>small{grid-column:1/-1}
.top-shop-summary .top-shop-media{grid-column:1;grid-row:2/7;aspect-ratio:1}
.top-shop-summary .top-shop-card>b,.top-shop-summary .top-shop-card>time,.top-shop-summary .top-shop-card>strong,.top-shop-summary .top-shop-card>em{grid-column:2}
.top-shop-summary .top-shop-card>b{margin-top:0}
.top-shop-status{min-height:230px;display:grid;place-items:center;align-content:center;gap:8px;padding:24px;border:1px solid #b7ccdc;border-radius:18px;background:#fff;text-align:center}
.top-shop-status img{width:56px;height:56px;object-fit:contain;opacity:.7}
.top-shop-status small{color:#2b7d9d;font-weight:900}.top-shop-status b{font-size:18px}.top-shop-status span{color:#63768a;font-size:13px}
.top-shop-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.top-shop-links>a{border-left-width:4px}.top-shop-links>a:nth-child(2){border-left-color:#7d72ed}

.top-beginner-links>a{border-left-color:#f0b54c}.top-beginner-links>a:nth-child(2){border-left-color:#51c99a}

@media(min-width:901px) and (max-width:1120px){
  .top-v2 .top-hero{grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)}
  .top-v2 .top-hero-copy{padding:28px!important}
  .top-v2 .top-hero h1{font-size:36px!important}
  .top-v2 .top-hero-lead{font-size:14px;line-height:1.75}
  .top-v2 .top-heat-line{margin-top:17px!important;padding:11px 13px}
  .top-v2 .top-hero-actions{margin-top:17px!important}
  .top-weapons-layout,.top-shop-layout,.top-beginner-layout,.top-weapons>div.top-weapons-layout,.top-beginner>div.top-beginner-layout{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr)}
}

@media(max-width:900px){
  .top-v2 .top-hero{grid-template-columns:1fr}
  .top-v2 .top-hero h1>span{white-space:normal}
  .top-v2 .top-hero figure{min-height:0;aspect-ratio:3/2}
  .top-trust-strip{width:calc(100% - 28px);grid-template-columns:1fr;margin-top:10px;padding:10px}
  .top-weapons,.top-beginner{padding-inline:14px}
  .top-weapons-layout,.top-shop-layout,.top-beginner-layout,.top-weapons>div.top-weapons-layout,.top-beginner>div.top-beginner-layout{grid-template-columns:1fr;gap:14px}
  .top-section-visual>.eyecatch{min-height:0;aspect-ratio:16/9}
  .top-section-visual .top-visual-copy{left:14px;bottom:14px;width:min(58%,300px);padding:12px 13px}
  .top-visual-copy b{font-size:17px!important}
  .top-shop-summary .top-shop-card{grid-template-columns:120px minmax(0,1fr)}
}

@media(max-width:560px){
  .top-v2 .top-hero h1>span{display:block}
  .top-section-visual .top-visual-copy{left:10px;right:10px;bottom:10px;width:auto;max-width:none;padding:10px 12px}
  .top-visual-copy em{display:none}
  .top-shop-summary .top-shop-card{grid-template-columns:105px minmax(0,1fr);column-gap:12px;min-height:205px}
  .top-shop-links{grid-template-columns:1fr}
  .top-weapon-links>a,.top-beginner-links>a,.top-shop-links>a{padding:15px 16px}
}

/* Audited image safety: editorial art must remain fully visible. */
@media(min-width:768px){
  .top-v2 .top-hero figure>img{content:url("/top-hero-community-safe-pc-v1.png");object-position:center}
}
.top-topic-image .eyecatch-image,
.top-topic-image>img,
.top-section-visual .eyecatch-image,
.top-section-visual>.eyecatch>img{
  object-fit:contain!important;
  object-position:center!important;
  background:#102c4e;
}

/* PC layout controls: values can be changed from Appearance > TOPレイアウト. */
@media(min-width:1101px){
  .top-v2 .top-hero,
  .top-v2 .top-trust-strip{
    width:min(var(--gh-top-max-width,1280px),calc(100% - 64px));
  }

  .top-v2 .top-hero{
    min-height:var(--gh-top-hero-height,480px);
    grid-template-columns:minmax(0,var(--gh-top-hero-copy-width,53%)) minmax(0,calc(100% - var(--gh-top-hero-copy-width,53%)));
  }

  .top-v2 .top-hero-copy{
    padding:42px 46px!important;
  }

  .top-v2 .top-shop>.top-section-title,
  .top-v2 .top-shop-grid,
  .top-v2 .top-shop>.top-more,
  .top-v2 .top-source,
  .top-v2 .top-shop-layout{
    max-width:var(--gh-top-max-width,1280px);
  }
}

/* Gutenberg standard-block compatibility for the editable TOP. */
.gh-public-top .top-hero-copy>*,
.gh-public-top .top-section-title>*,
.gh-public-top .top-mission-content>*,
.gh-public-top .top-mission-block>*,
.gh-public-top .top-route-card>*,
.gh-public-top .top-visual-copy>*,
.gh-public-top .top-link-card>*,
.gh-public-top .top-shop-status>*,
.gh-public-top .top-report-copy>*{
  margin-block-start:0;
  margin-block-end:0;
}

.top-hero-actions .wp-block-button{
  margin:0;
}

.top-hero-actions .wp-block-button .wp-block-button__link{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border:1px solid #2a5c9d;
  border-radius:11px;
  background:transparent;
  color:#164f91;
  font-weight:900;
}

.top-hero-actions .wp-block-button:first-child .wp-block-button__link{
  background:#123d72;
  color:#fff;
}

.top-hero-actions .wp-block-button:not(:first-child) .wp-block-button__link{
  background:transparent;
  color:#164f91;
}

.top-verification-label,
.top-verification-value{
  margin:0;
}

.top-verification-label{
  color:#61758a;
  font-size:12px;
  font-weight:800;
}

.top-verification-value{
  margin-top:3px;
  color:#173453;
  font-size:12px;
  font-weight:900;
  line-height:1.45;
}

.top-mission-card{
  display:flex;
  flex-direction:column;
}

.top-mission-card>.top-topic-image{
  width:100%;
  margin:0;
}

.top-mission-tags p{
  margin:0;
}

.top-mission-block-title,
.top-mission-block-copy{
  margin:0;
}

.top-mission-block-title{
  margin-bottom:4px;
  font-size:12px;
  font-weight:900;
}

.top-mission-block-copy{
  color:#3f566e;
  font-size:13px;
}

.top-mission-fact .top-mission-block-title{
  color:#43586c;
}

.top-mission-action .top-mission-block-title{
  color:#176d91;
}

.top-mission-buttons{
  width:100%;
  margin-top:14px;
}

.top-mission-cta{
  width:100%;
  margin:0;
  padding:0;
  border:0;
}

.top-mission-cta .wp-block-button__link{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 14px;
  border:1px solid #2a5c9d;
  border-radius:10px;
  background:#fff;
  color:#164f91;
  font-size:13px;
  font-weight:900;
}

.top-route-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.top-route-card{
  min-height:184px;
  display:flex;
  flex-direction:column;
  padding:18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 7px 20px #2037540a;
  transition:transform .18s,border-color .18s,box-shadow .18s;
}

.top-route-card:hover{
  transform:translateY(-2px);
  border-color:#85b7d4;
  box-shadow:0 12px 28px #20375414;
}

.top-route-dot{
  color:#55c9ef;
  font-size:16px;
  line-height:1;
}

.route-season .top-route-dot{color:#7d72ed}
.route-map .top-route-dot{color:#51c99a}
.route-weapon .top-route-dot{color:#5597ed}
.route-shop .top-route-dot{color:#e67bd7}
.route-guide .top-route-dot{color:#f1b94f}

.top-route-card h3{
  margin-top:13px!important;
  font-size:16px;
  line-height:1.4;
}

.top-route-card>p:not(.top-route-dot){
  margin-top:7px;
  color:#65778b;
  font-size:12px;
  line-height:1.5;
}

.top-route-card>.wp-block-buttons{
  margin-top:auto;
  padding-top:14px;
}

.top-route-card .wp-block-button__link{
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  padding:0 11px!important;
  border:1px solid #bfd2df!important;
  border-radius:9px!important;
  background:#f8fcff!important;
  color:#164f91!important;
  font-size:11px!important;
  font-weight:900;
}

.top-map-image{
  margin:0;
}

.top-map-actions{
  gap:10px;
  margin:24px 0 18px;
}

.top-map-actions .wp-block-button__link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid #2a5c9d;
  border-radius:11px;
  background:#fff;
  color:#164f91;
  font-size:13px;
  font-weight:900;
}

.top-map-actions .wp-block-button:first-child .wp-block-button__link{
  background:#123d72;
  color:#fff;
}

.top-map-meta{
  color:#687a8c;
  font-size:12px;
}

.top-section-visual>.eyecatch{
  width:100%;
  height:100%;
  min-height:360px;
  margin:0;
}

.top-visual-copy .top-visual-kicker,
.top-visual-copy h3,
.top-visual-copy p{
  display:block;
}

.top-visual-copy .top-visual-kicker{
  color:#8ee6ff!important;
  font-size:12px!important;
  font-weight:900;
}

.top-visual-copy h3{
  margin-top:7px!important;
  color:#fff;
  font-size:20px!important;
  line-height:1.35;
}

.top-visual-copy>p:not(.top-visual-kicker){
  margin-top:8px;
  color:#d6e9f5!important;
  font-size:12px!important;
  font-weight:700;
  line-height:1.5;
}

.top-visual-copy>.wp-block-buttons{
  margin-top:12px;
}

.top-visual-copy .wp-block-button__link{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border:1px solid #ffffff66;
  border-radius:9px;
  background:#fff;
  color:#164f91;
  font-size:11px;
  font-weight:900;
}

.top-link-card{
  display:flex;
  min-height:0;
  flex-direction:column;
  justify-content:center;
  padding:18px 20px;
  border:1px solid var(--line);
  border-left:5px solid #55c9ef;
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 20px #2037540a;
}

.top-link-card .top-link-kicker{
  color:#187b9c;
  font-size:12px;
  font-weight:900;
}

.top-link-card h3{
  margin:7px 0 5px!important;
  color:#173453;
  font-size:17px;
  line-height:1.4;
}

.top-link-card>p:not(.top-link-kicker){
  color:#687a8e;
  font-size:13px;
  line-height:1.55;
}

.top-link-card>.wp-block-buttons{
  margin-top:12px;
}

.top-link-card .wp-block-button__link{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border:1px solid #bfd2df;
  border-radius:9px;
  background:#f8fcff;
  color:#164f91;
  font-size:11px;
  font-weight:900;
}

.top-weapon-links>.top-link-card:nth-child(2){border-left-color:#7d72ed}
.top-weapon-links>.top-link-card:nth-child(3){border-left-color:#51c99a}
.top-beginner-links>.top-link-card{border-left-color:#f0b54c}
.top-beginner-links>.top-link-card:nth-child(2){border-left-color:#51c99a}
.top-shop-links>.top-link-card{border-left-width:4px}
.top-shop-links>.top-link-card:nth-child(2){border-left-color:#7d72ed}

.top-shop-status figure{
  margin:0;
}

.top-shop-status .top-shop-status-label{
  color:#2b7d9d;
  font-weight:900;
}

.top-shop-status h3{
  font-size:18px;
}

.top-shop-status>p:not(.top-shop-status-label){
  color:#63768a;
  font-size:13px;
}

.top-more{
  width:100%;
  max-width:1320px;
  margin:24px auto 0;
}

.top-more .wp-block-button{
  width:100%;
}

.top-more .wp-block-button__link{
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #2a5c9d;
  border-radius:11px;
  background:#fff;
  color:#164f91;
  font-weight:900;
}

.top-report-copy h2{
  margin:0;
  font-size:18px;
}

.top-report-copy p{
  margin-top:7px;
  color:#627286;
}

.top-report>.wp-block-buttons .wp-block-button__link{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border-radius:11px;
  background:#123d72;
  color:#fff;
  font-weight:900;
}

@media(max-width:900px){
  .top-route-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }

  .top-route-card{
    min-height:172px;
    padding:15px;
  }

  .top-map-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }

  .top-map-actions .wp-block-button,
  .top-map-actions .wp-block-button__link{
    width:100%;
  }

  .top-map-actions .wp-block-button__link{
    padding:0 7px;
    font-size:11px;
  }

  .top-section-visual>.eyecatch{
    min-height:0;
    aspect-ratio:16/9;
  }
}

@media(max-width:560px){
  .top-hero-actions .wp-block-button,
  .top-hero-actions .wp-block-button__link{
    width:100%;
  }

  .top-route-card h3{
    font-size:14px;
  }

  .top-route-card>p:not(.top-route-dot){
    font-size:11px;
  }

  .top-visual-copy>p:not(.top-visual-kicker){
    display:none;
  }
}
