@charset "UTF-8";
      .entry-content h2{
border:none;
background:none;
padding: 0;
} .entry-content h3{
border:none;
background:none;
padding: 0;
} .entry-content h4{
border:none;
background:none;
padding: 0;
} .entry-content h5{
border:none;
background:none;
padding: 0;
} .entry-content h6{
border:none;
background:none;
padding: 0;
}  .entry-content h2 {
color: #222;
font-size: 1.3em;
font-weight: bold;
border-bottom: 2px solid #333; padding-bottom: 0.3em;
margin: 1.5em 0 1em;
} .entry-content h3 {
position: relative;
color: #333;
font-size: 1.15em;
font-weight: bold;
padding-left: 0.8em; margin: 1.2em 0 0.8em;
}
.entry-content h3::before {
content: "";
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 4px; background-color: #666; border-radius: 2px; } .entry-content h4 {
color: #444;
font-size: 1.05em;
font-weight: bold;
margin: 1em 0 0.5em;
padding-left: 0.5em;
border-left: 3px solid #aaa;
} .entry-content h5 {
color: #555;
font-size: 1em;
font-weight: bold;
margin: 0.8em 0 0.5em;
border-bottom: 1px dashed #bbb;
padding-bottom: 0.2em;
} .entry-content h6 {
color: #666;
font-size: 0.95em;
font-weight: bold;
margin: 0.5em 0;
}  @media screen and (max-width: 1023px){ } @media screen and (max-width: 834px){ } @media screen and (max-width: 480px){ } [hidden] { display: none !important; }  .area-index { margin-bottom: 28px; } .area-toggle {
width: 100%;
text-align: center;
padding: 16px 20px;
border: none;
border-radius: 12px;
background: linear-gradient(135deg, #4a90e2, #357ab8);
color: #fff;
font-size: 1.2em;
font-weight: 700;
position: relative;
box-shadow: 0 4px 10px rgba(0,0,0,.15);
cursor: pointer;
transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.area-toggle:hover {
transform: translateY(-2px);
box-shadow: 0 6px 14px rgba(0,0,0,.2);
background: linear-gradient(135deg, #357ab8, #25639e);
}
.area-toggle:active {
transform: translateY(0);
box-shadow: 0 3px 8px rgba(0,0,0,.18);
}
.area-toggle:focus-visible {
outline: 3px solid rgba(70, 130, 180, .35);
outline-offset: 3px;
}
.area-toggle::after {
content: "＋";
margin-left: 10px;
font-size: 1.2em;
}
.area-toggle[aria-expanded="true"]::after {
content: "－";
} .area-links {
overflow: hidden;
max-height: 0;
padding: 0 2px;
transition: max-height 300ms ease, padding 200ms ease;
display: flex;
flex-wrap: wrap;
gap: 8px;
will-change: max-height;
}
.area-links.is-open {
padding: 12px 2px 16px; } .area-links a {
display: inline-block;
padding: 8px 12px;
background: #f7f7f7;
border: 1px solid #e5e5e5;
border-radius: 10px;
text-decoration: none;
color: #111;
font-weight: 600;
transition: transform .15s, background .15s, box-shadow .15s;
box-shadow: 0 1px 3px rgba(0,0,0,.04);
}
.area-links a:hover {
transform: scale(1.03);
background: #eaf3ff;
}
.area-links a:active { transform: scale(1.01); } .area-links .area-heading {
flex: 1 1 100%;
font-size: 1.1em;
font-weight: 700;
color: #333;
margin: 12px 0 4px;
padding: 2px 4px 2px 1.4em; border-bottom: 2px solid #4a90e2;
text-align: left;
background: transparent;
position: relative;
}
.area-links .area-heading::before {
content: "📍";
position: absolute;
left: 0; top: 50%;
transform: translateY(-50%);
font-size: 1em;
} @media (min-width: 992px){
.area-links {
max-height: none;
padding: 12px 2px 16px;
overflow: visible;
} .area-links.collapsed {
max-height: 0 !important;
overflow: hidden !important;
padding: 0 2px !important;
}
.area-links a {
flex: 1 1 calc(50% - 12px);
min-width: 300px;
}
.area-links .area-heading { font-size: 1.2em; }
} @media (prefers-reduced-motion: reduce){
.area-toggle,
.area-links,
.area-links a {
transition: none !important;
}
} @media (prefers-color-scheme: dark){
.area-toggle { box-shadow: 0 4px 10px rgba(0,0,0,.35); }
.area-links a {
background: #2a2a2a; border-color: #3a3a3a; color: #f2f2f2;
box-shadow: 0 1px 3px rgba(0,0,0,.3);
}
.area-links a:hover { background: #223a5a; }
.area-links .area-heading { color: #eee; border-color: #4a90e2; }
}  .mnv-hap-section{
position:relative;
margin: 1.5em 0;
padding: 0; box-sizing: border-box;
background: transparent;
border: 0;
} .mnv-hap-section h2{
margin: .5em 0 .6em; font-size: 1.2rem;
font-weight: 700;
color: #0f2233;
}
.mnv-hap-section .mnv-lead{
margin: 0 0 12px;
font-size: .95rem;
color: #334;
} .mnv-card{
background:#fff;
border:1px solid #e6eef7;
border-radius:12px;
box-shadow: 0 1px 0 #eef4fb inset;
padding:12px;
box-sizing:border-box;
}
.mnv-card + .mnv-card{ margin-top:12px; }  .mnv-card .mnv-card-title{
margin:0 0 10px;
font-size:1.05rem;
font-weight:700;
color:#0f2233;
}  .mnv-area-main{
display:block;
margin:0 0 6px;
padding:10px 12px;
background:#f7f9fc;
border:1px solid #cdd9e5;
border-radius:8px;
text-align:center;
text-decoration:none;
color:#0f2233;
font-weight:700;
transition:background .2s, border-color .2s;
}
.mnv-area-main:hover,
.mnv-area-main:focus{
background:#f0f6fc;
border-color:#b5cde7;
outline:none;
} .mnv-area-sub{
display:flex;
flex-wrap:wrap; gap:6px 8px;
margin:0 0 12px;
}
.mnv-area-sub a{
font-size:.9rem;
text-decoration:none;
color:#1f2f3f;
padding:4px 10px;
border:1px solid #dce6f3;
border-radius:6px;
background:#fff;
box-shadow:0 1px 0 #f1f6fc inset;
transition:background .2s, border-color .2s;
}
.mnv-area-sub a:hover,
.mnv-area-sub a:focus{
background:#f0f6fc;
border-color:#b5cde7;
outline:none;
} .mnv-area-grid{
display:grid;
grid-template-columns: repeat(2, 1fr);
gap:10px;
margin:0; }
.mnv-area-grid a{
display:block;
padding:10px 12px;
background:#f7f9fc;
border:1px solid #cdd9e5;
border-radius:8px;
text-align:center;
text-decoration:none;
color:#0f2233;
font-weight:600;
transition:background .2s, border-color .2s;
}
.mnv-area-grid a:hover,
.mnv-area-grid a:focus{
background:#f0f6fc;
border-color:#b5cde7;
outline:none;
} .mnv-shortcuts{
display:grid;
grid-template-columns: repeat(3, minmax(0, 1fr)); gap:8px;
margin:0; }
@media (max-width: 600px){
.mnv-shortcuts{ grid-template-columns: 1fr; } }
.mnv-shortcuts .btn{
display:block;
text-align:center;
min-height:36px;
line-height:36px;
padding:0 10px;
box-sizing:border-box;
border-radius:6px;
text-decoration:none;
} .mnv-headline-box{
margin: -20px 0 0.8em !important; padding: 0.8em 1em;
background:#fff;
border:1px solid #dde3ea;
border-radius:6px;
box-sizing:border-box;
position: relative;
z-index: 2; }
.mnv-headline-box p{
margin:0 0 4px;
font-size:.9rem;
line-height:1.5;
}
.mnv-headline-box p:last-child{ margin-bottom:0; }