.l-contents-mv { min-height: 20rem; max-height: none; }
.l-contents-mv h1 { font-size: 36px; line-height: 1.55; padding: 40px 0; overflow-wrap: anywhere; }
.hc-policy p { margin-bottom: 20px; line-height: 1.9; }
.hc-policy h3 { font-size: 18px; font-weight: 700; margin: 28px 0 12px; }
.hc-rules { list-style: disc; padding-left: 1.5em; line-height: 1.9; }
.hc-rules li { margin-bottom: 10px; }
.hc-consultation { margin: 60px 0; }
.hc-consultation > h2 { margin-bottom: 30px; text-align: center; }
.hc-agree { display: flex; align-items: flex-start; gap: 12px; line-height: 1.8; cursor: pointer; }
.hc-agree input { width: 20px; height: 20px; margin-top: 5px; flex-shrink: 0; -webkit-appearance: checkbox; -moz-appearance: checkbox; appearance: auto; accent-color: #142f60; }
.hc-agree input:focus-visible { outline: 2px solid #142f60; outline-offset: 3px; }
.hc-errors { border: 1px solid #b00020; color: #b00020; padding: 20px; margin: 24px 0; }
.hc-errors ul { list-style: disc; padding-left: 1.5em; }
.hc-consultation .c-list-table__data { overflow-wrap: anywhere; }
.hc-consultation button:disabled { opacity: .45; cursor: not-allowed; }
@media (max-width: 750px) {
    .l-contents-mv { min-height: 15rem; }
    .l-contents-mv h1 { font-size: 24px; padding: 30px 16px; }
    .hc-policy h3 { font-size: 16px; }
    .hc-consultation { margin: 40px 0; }
}
