/* 月次レポートの見た目（020・プラン 0141）。どの規則も .rpt の下に閉じ、クラス名は r- で始める（サイトの CSS とぶつけない・プラン 0143）。もとは docs/design/mock/020_月次レポート_BとC.html */
.rpt{--ink:#1d3248;--sub:#708398;--blue:#2779d5;--navy:#112943;--cyan:#12a5bc;--bdr:#e1e9f1;--bg:#f4f8fc;--orange:#e69b48;--green:#1b9b79;--red:#c75e59;--paper:white;--radius:17px}
.rpt *{box-sizing:border-box}
.rpt{margin:0;background:#eaf0f7;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:14px;line-height:1.55}
.rpt .r-wrap{max-width:1240px;margin:auto;padding:32px 30px 80px}
.rpt .r-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#4686c8}
.rpt .r-title{font-size:30px;line-height:1.34;margin:7px 0 7px;font-weight:850;letter-spacing:-.03em}
.rpt .r-lead{font-size:13px;color:#6f8092;margin:0 0 23px}
.rpt .r-muted{color:#7890a5}
.rpt .r-dot{height:8px;width:8px;border-radius:50%;display:inline-block;margin-right:7px;vertical-align:1px}
.rpt .r-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.rpt .r-flex{display:flex;gap:12px}
.rpt .r-pill{border:1px solid #dbe6f1;color:#6483a1;padding:6px 11px;border-radius:99px;background:white;font-size:11px;font-weight:700}
.rpt .r-pill+.r-pill{margin-left:4px}
.rpt .r-card{background:white;border:1px solid var(--bdr);border-radius:var(--radius);box-shadow:0 4px 18px #1b52700c}
.rpt .r-cardpad{padding:22px}
.rpt .r-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.rpt .r-grid2{display:grid;grid-template-columns:1.35fr 1fr;gap:17px}
.rpt .r-grid2even{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.rpt .r-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rpt .r-metric{padding:18px 19px;min-height:118px;position:relative;overflow:hidden}
.rpt .r-metric::before{content:'';position:absolute;top:0;left:0;height:3px;width:100%;background:#d7e6f8}
.rpt .r-metric.r-m2::before{background:#48adc7}
.rpt .r-metric.r-m3::before{background:#ebaf65}
.rpt .r-metric.r-m4::before{background:#97b6d0}
.rpt .r-metric .r-name{font-size:12px;color:#71859b;font-weight:750}
.rpt .r-metric .r-value{font-size:29px;font-weight:850;letter-spacing:-.05em;margin:7px 0 2px;line-height:1.2}
.rpt .r-metric .r-unit{font-size:14px;color:#7d95aa;margin-left:2px}
.rpt .r-metric .r-detail{color:#7b8fa5;font-size:11px}
.rpt .r-pos{color:#148e76}
.rpt .r-neg{color:#cc6858}
.rpt .r-chartTitle{font-weight:800;font-size:16px}
.rpt .r-chartSub{font-size:11px;color:#8798a8;margin-top:4px}
.rpt .r-legend{display:flex;gap:14px;flex-wrap:wrap;color:#698099;font-size:11px}
.rpt .r-chartbox{width:100%;margin-top:16px;overflow:hidden}
.rpt .r-chartbox svg{display:block;width:100%;height:auto}
.rpt .r-foot{font-size:11px;color:#8b9ba9;margin-top:11px}
.rpt .r-insight{margin-top:17px;background:#eff6fd;padding:17px 20px;border-left:3px solid #4397e0;border-radius:0 12px 12px 0;color:#375874;line-height:1.8}
.rpt .r-insight strong{color:#245987}
.rpt .r-section{margin-top:26px}
.rpt .r-subsection-title{font-size:18px;font-weight:850;margin:0 0 13px}
.rpt .r-divider{height:1px;background:#e9eff4;margin:16px 0}
.rpt .r-mini-table{width:100%;border-collapse:collapse;font-size:12px}
.rpt .r-mini-table th{text-align:left;color:#8193a5;font-size:11px;border-bottom:1px solid #e7edf4;padding:12px 8px;font-weight:650}
.rpt .r-mini-table td{padding:13px 8px;border-bottom:1px solid #edf1f5}
.rpt .r-mini-table tr:last-child td{border:0}
.rpt .r-mini-table td.r-r{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}
.rpt .r-mini-table th.r-r{text-align:right}
.rpt .r-key{color:#477db3;font-weight:750}
.rpt .r-tag{font-size:10px;color:#4f7eb0;background:#e9f2fc;border-radius:99px;padding:3px 8px;white-space:nowrap}
.rpt .r-banner{background:linear-gradient(110deg,#13314f,#234e77 68%,#267c9f);border-radius:20px;padding:28px 31px;color:white;margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.rpt .r-banner .r-label{color:#7fc5e7}
.rpt .r-banner h1{margin:5px 0 7px;font-size:30px;line-height:1.3;letter-spacing:-.03em}
.rpt .r-banner p{color:#bbd5e8;font-size:12px;margin:0}
.rpt .r-status{color:#6793b4;font-size:10px;letter-spacing:.06em;font-weight:800}
.rpt .r-report-page{background:#fff;min-height:100vh}
.rpt .r-report-hero{background:#fff;padding-bottom:15px;border-bottom:1px solid #e9eff4}
.rpt .r-paper{max-width:970px;margin:auto;padding:54px 50px 84px}
.rpt .r-report-kicker{color:#3285b0;letter-spacing:.18em;font-size:11px;font-weight:800}
.rpt .r-report-title{font-size:37px;line-height:1.3;margin:12px 0;font-weight:850;color:#16324f}
.rpt .r-report-summary{font-size:15px;color:#526b83;line-height:1.9;max-width:735px}
.rpt .r-byline{font-size:11px;color:#9aa9b5;border-top:1px solid #e9eff4;margin-top:25px;padding-top:17px}
.rpt .r-report-h2{border-left:4px solid #347ec1;padding-left:13px;font-size:21px;font-weight:800;margin:45px 0 17px}
.rpt .r-report-text{font-size:14px;line-height:2;color:#4d657d}
.rpt .r-quote{font-size:19px;line-height:1.7;font-weight:750;border-left:3px solid #6cbcc5;padding-left:18px;color:#305570;margin:19px 0 24px}
.rpt .r-text-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.rpt .r-numlist{display:grid;grid-template-columns:repeat(3,1fr);margin:29px 0;border-top:1px solid #e1ebf4;border-bottom:1px solid #e1ebf4}
.rpt .r-numlist>div{padding:17px 15px;border-right:1px solid #e1ebf4}
.rpt .r-numlist>div:last-child{border:0}
.rpt .r-numlist .r-nm{font-size:11px;color:#7791a4;font-weight:700}
.rpt .r-numlist .r-n{font-size:28px;font-weight:850;margin-top:4px}
.rpt .r-ranking{padding:0 4px}
.rpt .r-legendDot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.rpt .r-scatterwrap{margin-top:17px;border:1px solid #e1eaf2;border-radius:12px;background:#fbfdff;padding:10px 10px 0}
.rpt .r-plot{height:300px;margin:14px 29px 33px 50px;position:relative;background:linear-gradient(to right,transparent calc(50% - .5px),#b8cad9 calc(50% - .5px),#b8cad9 calc(50% + .5px),transparent calc(50% + .5px)),linear-gradient(to bottom,transparent calc(50% - .5px),#b8cad9 calc(50% - .5px),#b8cad9 calc(50% + .5px),transparent calc(50% + .5px)),repeating-linear-gradient(to bottom,#eef3f8 0,#eef3f8 1px,transparent 1px,transparent 25%),repeating-linear-gradient(to right,#eef3f8 0,#eef3f8 1px,transparent 1px,transparent 25%)}
.rpt .r-bubble{position:absolute;border-radius:99px;display:grid;place-items:center;font-size:10px;font-weight:850;color:white;border:3px solid #fff;box-shadow:0 2px 9px #123e5836;transform:translate(-50%,50%);white-space:nowrap;cursor:default}
.rpt .r-quadrant{position:absolute;font-size:10px;color:#a4b4c4;font-weight:750;letter-spacing:.04em}
.rpt .r-q1{right:6px;top:6px}
.rpt .r-q2{left:9px;top:6px}
.rpt .r-q3{left:9px;bottom:6px}
.rpt .r-q4{right:9px;bottom:6px}
.rpt .r-warning{color:#8e6f49;background:#fff9ec;border:1px solid #f2e5c7;padding:12px 15px;font-size:11px;border-radius:10px;margin:19px 0}
.rpt .r-captioncenter{font-size:11px;text-align:center;color:#899baa;margin:7px 0 0}
.rpt .r-data-origin{font-size:11px;color:#92a3b2;line-height:1.8}
.rpt .r-summary-card{border:1px solid #d7e9f6;background:linear-gradient(110deg,#f5fbff,#eef7fd);border-radius:15px;padding:25px}
.rpt .r-summary-card p{line-height:1.9;margin:12px 0 0;color:#48647e}
.rpt .r-topgroup{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;flex-wrap:wrap}
.rpt .r-section-kicker{font-size:10px;color:#98adc0;letter-spacing:.12em;text-transform:uppercase;font-weight:800}
@media(max-width:1020px){
.rpt .r-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
.rpt .r-grid2,.rpt .r-grid2even{grid-template-columns:1fr}
.rpt .r-wrap{padding:24px 18px 55px}
.rpt .r-paper{padding:32px 24px}
.rpt .r-plot{margin-left:40px}
}
@media(max-width:610px){
.rpt .r-title{font-size:24px}
.rpt .r-grid4{gap:9px}
.rpt .r-metric{padding:12px;min-height:105px}
.rpt .r-metric .r-value{font-size:24px}
.rpt .r-grid3{grid-template-columns:1fr}
.rpt .r-row{flex-wrap:wrap}
.rpt .r-paper{padding:28px 17px}
.rpt .r-report-title{font-size:28px}
.rpt .r-text-row{grid-template-columns:1fr}
.rpt .r-banner{padding:22px;flex-direction:column;align-items:flex-start}
.rpt .r-banner h1{font-size:25px}
.rpt .r-numlist .r-n{font-size:20px}
.rpt .r-numlist>div{padding:12px 8px}
.rpt .r-plot{margin-right:10px}
}
.rpt .r-tmp{color:#8a5a00;background:#fff4dc;border-radius:4px;padding:0 4px}
.rpt .r-tankan{margin:16px 0 0}
.rpt .r-tankan ul{margin:8px 0 0;padding-left:20px}
.rpt .r-tankan li{margin:2px 0}
.rpt .r-axisnote{display:flex;justify-content:space-between;font-size:11px;color:#6e8499;margin:-24px 12px 10px 50px}
.rpt .r-tankan{margin:16px 0 0}
.rpt .r-tankan ul{margin:8px 0 0;padding-left:20px}
.rpt .r-tankan li{margin:2px 0}
.rpt .r-tmp{color:#8a5a00;background:#fff4dc;border-radius:4px;padding:0 4px}
.rpt .r-pending{color:#7b8fa5;font-size:13px;line-height:1.9;margin:10px 0 0}
.rpt .r-tablewrap{overflow-x:auto;margin-top:10px}
.rpt .r-legend{margin-top:10px}
.rpt .r-numlist small{font-size:13px;color:#8096a9}
.rpt .r-focus{background:#eef7fe}
.rpt .r-banner .r-period{text-align:right}
.rpt .r-banner .r-span{font-size:22px;font-weight:800}
.rpt .r-banner .r-where{font-size:11px;color:#bad4e6}
.rpt .r-courtgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:14px}
.rpt .r-courtcard{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--bdr);border-radius:12px;text-decoration:none;color:var(--ink);background:#fbfdff}
.rpt .r-courtcard:hover{border-color:#9cc3ea;background:#f3f8fe}
.rpt .r-courtcard span{font-size:11px;color:#7b8fa5}
.rpt .r-courtcard .r-r{font-size:15px;font-weight:800;color:#245e9e}
.rpt .r-data-origin a{color:#2779d5}
.rpt th,.rpt td{border:0;background:transparent;width:auto;vertical-align:middle}
.rpt .r-mini-table th{border-bottom:1px solid #e7edf4;white-space:nowrap}
.rpt .r-mini-table td{border-bottom:1px solid #edf1f5}
.rpt .r-mini-table tr:last-child td{border-bottom:0}
/* レポートトップの地図タイル（プラン 0144）。もとは docs/design/mock/020_レポートトップ.html の B */
.rpt .r-tilemap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,104px);gap:8px}
.rpt .r-maphead{grid-column:1 / span 4;grid-row:1 / span 2;padding:2px 4px}
.rpt .r-maptitle{font-size:20px;font-weight:850;color:#173d59;white-space:nowrap}
.rpt .r-maphead p{font-size:12px;color:#5d7387;line-height:1.7;margin:8px 0 10px}
.rpt .r-shades{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#66819a}
.rpt .r-shades i{width:18px;height:10px;border-radius:3px;display:inline-block}
.rpt .r-tile{border-radius:12px;color:#fff;padding:10px 12px;white-space:nowrap;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:0 3px 10px #123e5822}
.rpt .r-tile b{font-size:14px}
.rpt .r-tile .r-big{font-size:26px;font-weight:850;line-height:1;margin:4px 0;opacity:1}
.rpt .r-tile .r-big small{font-size:12px;margin-left:2px}
.rpt .r-tile span{font-size:11px;opacity:.9;line-height:1.35}
.rpt a.r-tile:hover{filter:brightness(1.08)}
.rpt .r-insight.r-top{margin-top:0}
.rpt .r-grid2even.r-small{margin-top:14px}
.rpt .r-grid2even.r-small .r-metric{min-height:96px}
.rpt .r-wrap.r-more{padding-top:0}
.rpt .r-text-row{align-items:start;margin-bottom:8px}
@media(max-width:1020px){.rpt .r-tilemap{grid-template-rows:repeat(5,96px)}}
@media(max-width:640px){
.rpt .r-tilemap{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:minmax(96px,auto)}
.rpt .r-tile{grid-column:auto!important;grid-row:auto!important}
.rpt .r-maphead{grid-column:1 / -1;grid-row:auto}
.rpt .r-maptitle{font-size:17px}
.rpt .r-banner .r-period{text-align:left}
}
