.pm{--paper:#eae3d0;--ink:#2f2a24;--sub:#5e554a;--mute:#8d8273;--rule:#2f2a24;--accent:#b8553e;width:min(1600px,calc(100vw - 28px));margin:8px 0 28px calc(50% - min(800px,50vw - 14px));font-family:Noto Sans JP,Noto Sans CJK JP,Hiragino Sans,Yu Gothic,sans-serif;color:var(--ink)}.pm *{box-sizing:border-box}.pm .sheet{width:100%;background:var(--paper);border:1px solid var(--rule);box-shadow:0 0 0 5px var(--paper),0 0 0 6px var(--rule),0 14px 50px #00000040;display:grid;grid-template-columns:minmax(0,1116fr) minmax(300px,440fr)}.pm .map{position:relative;line-height:0;align-self:start}.pm .guide{border-left:1px solid var(--rule)}.pm .map img{width:100%;height:auto;display:block;max-width:none;border-radius:0}.pm .map{container-type:inline-size}.pm .ttl{position:absolute;left:27%;top:6.3%;width:47%;height:4.5%;margin:0;padding:0;border:0;background:#f1ead7;box-shadow:0 0 3px 2px #f1ead7;display:flex;align-items:center;justify-content:center;font-family:"Noto Serif JP","Noto Serif CJK JP",serif;font-weight:600;font-size:3cqw;letter-spacing:.06em;line-height:1;white-space:nowrap}.pm .ttl a{color:#2f2a24;text-decoration:none}.pm .hs{position:absolute;display:block;text-decoration:none}.pm .hs.dot{width:3.6%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 #fff0;transition:box-shadow .15s}.pm .hs.dot:hover,.pm .hs.dot:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--accent)}.pm .hs.dot span{position:absolute;left:50%;top:115%;transform:translate(-50%);white-space:nowrap;background:var(--ink);color:#f3ecdc;font-size:11px;line-height:1;padding:5px 8px;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .15s}.pm .hs.dot:hover span{opacity:1}.pm .st{position:absolute;transform:translate(-50%,-50%);width:1.75%;aspect-ratio:17/15;background:#f5efe0;border:1px solid #2f2a24;border-radius:2px;color:#2f2a24;font-family:"Noto Serif JP","Noto Serif CJK JP",serif;font-weight:600;font-size:clamp(7px,.72vw,11.5px);line-height:1;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 1px 2px #00000040;transition:transform .15s}.pm .st:hover{transform:translate(-50%,-50%) scale(1.3);z-index:2}.pm .st.new:before{content:"";position:absolute;left:-15%;right:-15%;top:-45%;height:45%;background:#4e6a80;border:1px solid #2f2a24;border-radius:2px 2px 0 0;box-sizing:border-box}.pm .st span{position:absolute;left:50%;top:125%;transform:translate(-50%);white-space:nowrap;background:var(--ink);color:#f3ecdc;font-size:10px;font-family:Noto Sans JP,sans-serif;font-weight:400;padding:4px 7px;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .15s}.pm .st:hover span{opacity:1}.pm .hs.area{border-radius:12px;transition:background .15s}.pm .hs.area:hover{background:#ffffff24;box-shadow:inset 0 0 0 1.5px #ffffffbf}.pm .guide{padding:30px 24px 24px;font-size:12px;line-height:1.3}.pm .guide h2{font-family:"Noto Serif JP","Noto Serif CJK JP",serif;font-weight:600;font-size:22px;letter-spacing:.3em;margin:0 0 4px;display:flex;justify-content:space-between;align-items:baseline;border:0;border-bottom:1px solid var(--rule);padding:0 0 8px;color:var(--ink)}.pm .guide h2 small{font-family:Noto Sans JP,sans-serif;font-size:9px;letter-spacing:.3em;color:var(--mute);font-weight:400}.pm .guide .hint{font-size:9px;color:var(--mute);text-align:right;margin:0 0 14px}.pm .guide h3{font-family:"Noto Serif JP","Noto Serif CJK JP",serif;font-weight:600;font-size:12.5px;letter-spacing:.15em;margin:9px 0 3px;display:flex;align-items:center;gap:8px;color:var(--ink);border:0;padding:0}.pm .guide h3 i{width:10px;height:10px;border:1px solid var(--ink);flex:none}.pm .guide h3 small{margin-left:auto;font-family:Noto Sans JP,sans-serif;font-size:8px;letter-spacing:.25em;color:var(--mute);font-weight:400}.pm .guide ul{list-style:none;margin:0;padding:0}.pm .guide li{margin:0}.pm .guide li a{display:flex;align-items:baseline;gap:8px;color:inherit;text-decoration:none;padding:2px 4px;border-radius:4px}.pm .guide li a:hover{background:#2f2a2412}.pm .guide li a:hover .jp{color:var(--accent)}.pm .guide em{font-style:normal;flex:none;width:18px;height:18px;border-radius:50%;color:#f3ecdc;font-family:"Noto Serif JP",serif;font-size:10px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 1.3px var(--paper),0 0 0 2px var(--ink);align-self:center}.pm .guide .jp{font-weight:500}.pm .guide .sub{margin-left:auto;font-size:9.5px;color:var(--sub);text-align:right;white-space:nowrap}.pm .guide ul:not([class])>li:not(.types)>a{display:grid;grid-template-columns:18px 1fr;column-gap:8px;row-gap:1px;align-items:center;padding:3px 4px}.pm .guide ul:not([class])>li:not(.types)>a .sub{grid-column:2;margin:0;text-align:left;white-space:normal;font-size:10px;line-height:1.45}.pm .guide li.types{font-size:9.5px;color:var(--sub);padding:0 4px 4px 30px;line-height:1.7}.pm .guide li.types a{display:inline;padding:0 2px;color:var(--sub);border-bottom:1px dotted var(--mute);margin-right:6px}.pm .guide li.types a:hover{color:var(--accent)}.pm .themes{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.pm .guide{container-type:inline-size}@container (max-width:420px){.pm .themes{grid-template-columns:1fr}}.pm .themes li a{font-size:9.2px;color:var(--sub);padding:1.5px 2px;white-space:nowrap}.pm .themes b{font-family:"Noto Serif JP",serif;font-weight:600;color:var(--ink);font-size:8.5px;margin-right:4px}.pm .themes small{margin-left:auto;font-size:8px;color:#9b9080}.pm .factors{display:flex;flex-wrap:wrap;gap:4px 14px}.pm .factors li a{font-size:10px;color:var(--sub);padding:2px 0}.pm .factors i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.pm .routes{font-size:10px;color:var(--sub)}.pm .routes li{display:flex;gap:10px;padding:2px 4px}.pm .routes b{font-weight:500;color:var(--ink);width:112px;flex:none}.pm .foot{margin-top:12px;padding-top:10px;border-top:1px solid var(--rule);font-size:9.5px;color:var(--sub);line-height:1.6}.pm .foot a{color:var(--ink);text-decoration:none;font-weight:700;font-size:11.5px}.pm hr{border:0;border-top:1px solid var(--rule);opacity:.5;margin:10px 0 8px}@media(max-width:900px){.pm .sheet{grid-template-columns:minmax(0,1fr)}.pm .guide{border-left:0;border-top:1px solid var(--rule);padding:22px 18px;font-size:13px}.pm .hs.dot span{display:none}.pm .mapscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.pm .mapscroll .map{width:max(100%,720px)}}
