.footer-below-left span { color: #999; }
.footer-below-left p { color: #777; font-size: 14px; }
.footer-below-left span .dot-sp { margin: 0 8px; }
.footer-below-left a:hover { color: #444; }
.footer-below-left .footer-legal-links,
.footer-legal-links a { font-size: 12px; }
.footer-below-right .social-icons { display: flex; gap: 20px; align-items: center; }
.footer-below-right .social-icons a { font-size: 20px; color: #bbb; transition: color 0.2s ease, transform 0.2s ease; }
.footer-below-right .social-icons a:hover { color: #444; }
.cms-page-content { max-width: 48rem; margin-left: auto; margin-right: auto; }
.cms-page-content { text-align: justify; }
.cms-page-content img { padding-bottom: 30px; }
.cms-page-content h1 { color: #111; font-size: 40px; margin-bottom: 22px; font-weight: 700; text-align: center; line-height: 130%; }
.cms-page-content h2 { font-size: 1.5rem; margin-top: 2rem; font-weight: 600;margin-bottom: 0.6rem; }
.cms-page-content h3 { font-size: 16px; font-weight: 600; color: #555; }
.cms-page-content p { line-height: 1.8; margin-bottom: 1rem; color: #444; font-size:14px; }
.cms-page-content ul { list-style: disc; }
.cms-page-content ol { list-style: decimal; }
.cms-page-content ul, .cms-page-content ol { padding-left: 1.5rem; margin-bottom: 0.5rem; }
.cms-page-content ul li:first-child, .cms-page-content ol li:first-child { margin-top: 10px; }
.cms-page-content li { margin-bottom: 0.5rem; }
.cms-page-content ul li, .cms-page-content ol li { color: #555; font-size: 14px; }
.cms-page-content strong { color: #333; }
.cms-page-content a { color: #999; text-decoration: underline; }
.cms-page-content img { padding-bottom: 0; }
.cms-page-content figcaption { padding-bottom: 30px; font-size: 14px; color: #666; }
@media (max-width: 767px) {
.cms-page-content h1 { font-size: 28px; margin-bottom: 12px; }
.cms-page-content h2 { font-size: 1.25rem; margin-top: 1.5rem; }
.cms-page-content p { font-size: 14px; line-height: 1.8; }
.cms-page-content ul { padding-left: 1.2rem; }
.cms-page-content li { margin-bottom: 0.4rem; }
}
.content-module a:hover { color: #444; }
.content-module h2 { font-size: 23px; font-weight: 700; color: #777; padding: 16px 0 12px; text-align: center; }
.content-module .ptags { display: inline-block; padding: 3px 8px 4px; background-color: #999; color: #fff; text-decoration: none; border-radius: 4px; margin-top: 6px; }
.content-module .ptags:hover { background-color: #777; color: #fff; }