.news-pagination { display: flex; justify-content: center; gap: 0.5rem; flex-wrap: wrap; margin-top: 4rem; }
.news-pagination .page-numbers {
	display: inline-flex; justify-content: center; align-items: center; width: 40px; height: 40px;
	border-radius: 9999px; background-color: #f8fafc; color: #475569;
	font-size: 0.875rem; font-weight: 500; transition: all 0.3s;
	border: 1px solid #e2e8f0; text-decoration: none;
}
.news-pagination .page-numbers:hover { background-color: #0e7490; color: #fff; border-color: #0e7490; }
.news-pagination .current { background-color: #0e7490; color: #ffffff; border-color: #0e7490; }
.category-hero { background-color: #0f172a; }
.border-dotted-custom { border-bottom: 2px dotted #e2e8f0; }
.page-hero { background-color: #0f172a; }
.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5 {
	font-family: 'Noto Serif JP', serif;
	color: #334155; 
	font-weight: 600;
}
.post-content h2 {
	font-size: 1.5rem;
	line-height: 1.5;
	padding-bottom: 0.75rem;
	margin-top: 4rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #cbd5e1; 
	position: relative;
}
.post-content h2::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 4rem;
	height: 2px;
	background-color: #0e7490; 
}
.post-content h3 {
	font-size: 1.25rem;
	margin-top: 3rem;
	margin-bottom: 1.5rem;
	padding-left: 1rem;
	border-left: 4px solid #0e7490; 
}
.post-content p {
	margin-bottom: 1.75rem;
	line-height: 2;
}
.post-content a {
	color: #0891b2; 
	text-decoration: underline;
	text-underline-offset: 4px;
}
.post-content a:hover {
	color: #164e63; 
}
.post-content ul {
	list-style-type: disc;
	padding-left: 1.5rem;
	margin-bottom: 2rem;
}
.post-content ol {
	list-style-type: decimal;
	padding-left: 1.5rem;
	margin-bottom: 2rem;
}
.post-content li {
	margin-bottom: 0.75rem;
}
.post-content img {
	max-width: 100%;
	height: auto;
	border-radius: 0.5rem; 
	margin-top: 2.5rem;
	margin-bottom: 2.5rem;
}
@media (min-width: 768px) {
	.post-content h2 { font-size: 1.75rem; width: 100%; }
	.post-content h3 { font-size: 1.35rem; }
}
.page-hero { background-color: #0f172a; }
.page-content h2.post-subtitle {
	font-family: 'Noto Serif JP', serif;
	font-size: 1.5rem; color: #1e293b;
	padding-bottom: 0.75rem; margin-top: 0rem; margin-bottom: 1.5rem;
	position: relative;
}
.intro-desc {
	font-size: 0.95rem; line-height: 1.8; color: #64748b; font-weight: 300; margin-bottom: 2rem;
}
.intro-req-badge {
	background-color: #14c0d6; 
	color: #ffffff; font-size: 0.65rem; padding: 2px 8px; border-radius: 99px;
	letter-spacing: 0.1em; display: inline-block; line-height: 1.3; font-weight: bold; margin-right: 4px;
	white-space: nowrap !important;
}
.page-content .wpforms-container { padding: 0 !important; margin: 0 auto !important; }
.page-content .wpforms-form .wpforms-field { margin-bottom: 2rem !important; }

.page-content .wpforms-required-label {
	font-size: 0 !important; color: transparent !important; margin-left: 0.8rem !important; vertical-align: middle;
}
.page-content .wpforms-required-label::after {
	content: '必須'; font-size: 0.7rem; background-color: #14c0d6; color: #ffffff;
	padding: 3px 8px; border-radius: 99px; letter-spacing: 0.1em; display: inline-block;
	line-height: 1.3; font-weight: bold; font-family: sans-serif;
	white-space: nowrap !important; 
}
.page-content .wpforms-field-label {
	font-size: 0.95rem !important; color: #64748b !important; font-weight: 500 !important;
	margin-bottom: 0.85rem !important; font-family: 'Noto Serif JP', serif !important;
	display: block; letter-spacing: 0.05em;
}
.page-content .wpforms-field input[type=text],
.page-content .wpforms-field input[type=email],
.page-content .wpforms-field input[type=url],
.page-content .wpforms-field input[type=tel],
.page-content .wpforms-field input[type=date],
.page-content .wpforms-field textarea {
	background-color: #ffffff !important; border: 1px solid #cbd5e1 !important; border-radius: 3px !important;
	padding: 14px 18px !important; color: #334155 !important; font-size: 1rem !important;
	width: 100% !important; max-width: none !important; 
	box-shadow: none !important; transition: all 0.3s !important; outline: none !important;
}
.page-content .wpforms-field textarea { min-height: 250px !important; }

.page-content .wpforms-field input:focus, .page-content .wpforms-field textarea:focus {
	border-color: #0e7490 !important; box-shadow: 0 0 0 2px rgba(14, 116, 144, 0.1) !important; background-color: #f8fafc !important;
}
.page-content .wpforms-field-radio ul {
	list-style: none !important; padding-left: 0 !important; margin: 0 !important;
	display: flex !important; flex-wrap: wrap !important; gap: 2.5rem !important; 
	margin-top: 0.5rem !important;
}
.page-content .wpforms-field-radio li {
	display: flex !important; align-items: center !important; gap: 0.5rem !important;
	margin: 0 !important; padding: 0 !important; color: #475569 !important; font-size: 1rem !important;
	cursor: pointer;
}
.page-content .wpforms-field-radio input[type="radio"] {
	width: 1.15rem !important; height: 1.15rem !important; margin: 0 !important; cursor: pointer !important; accent-color: #0e7490 !important;
}
.page-content .wpforms-field-name .wpforms-field-row { display: block !important; margin: 0 !important; }
.page-content .wpforms-field-name .wpforms-field-row-block { width: 100% !important; margin: 0 0 10px 0 !important; display: block !important;}
.page-content .wpforms-field-sublabel { display: none !important; } 
.page-content .wpforms-submit-container { margin-top: 3.5rem !important; }
.page-content button.wpforms-submit, .page-content input.wpforms-submit {
	display: flex !important; justify-content: center !important; align-items: center !important;
	width: 100% !important; min-height: 65px !important;
	background-color: #ffffff !important; border: 1px solid #94a3b8 !important; color: #64748b !important;
	padding: 0 !important; font-size: 1.15rem !important; line-height: 1 !important; 
	font-weight: 300 !important; font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.6em !important; padding-left: 0.6em !important;
	cursor: pointer; transition: all 0.3s ease !important; border-radius: 0 !important; box-shadow: none !important;
}
.page-content button.wpforms-submit:hover, .page-content input.wpforms-submit:hover {
	border-color: #0e7490 !important; background-color: #0e7490 !important; color: #ffffff !important;
}
.page-hero { background-color: #0f172a; }
.page-content h2.post-subtitle {
	font-family: 'Noto Serif JP', serif;
	font-size: 1.5rem; color: #1e293b;
	padding-bottom: 0.75rem; margin-top: 0rem; margin-bottom: 1.5rem;
	position: relative;
}
.intro-desc {
	font-size: 0.95rem; line-height: 1.8; color: #64748b; font-weight: 300; margin-bottom: 2rem;
}
.intro-req-badge {
	background-color: #14c0d6; 
	color: #ffffff; font-size: 0.65rem; padding: 2px 8px; border-radius: 99px;
	letter-spacing: 0.1em; display: inline-block; line-height: 1.3; font-weight: bold; margin-right: 4px;
	white-space: nowrap !important; 
}
.page-content .wpforms-container { padding: 0 !important; margin: 0 auto !important; }
.page-content .wpforms-form .wpforms-field { margin-bottom: 2rem !important; }
.page-content .wpforms-required-label {
	font-size: 0 !important; color: transparent !important; margin-left: 0.8rem !important; vertical-align: middle;
}
.page-content .wpforms-required-label::after {
	content: '必須'; font-size: 0.7rem; background-color: #14c0d6; color: #ffffff;
	padding: 3px 8px; border-radius: 99px; letter-spacing: 0.1em; display: inline-block;
	line-height: 1.3; font-weight: bold; font-family: sans-serif;
	white-space: nowrap !important; 
}
.page-content .wpforms-field-label {
	font-size: 0.95rem !important; color: #64748b !important; font-weight: 500 !important;
	margin-bottom: 0.75rem !important; font-family: 'Noto Serif JP', serif !important;
	display: block; letter-spacing: 0.05em;
}
.page-content .wpforms-field input[type=text],
.page-content .wpforms-field input[type=email],
.page-content .wpforms-field input[type=url],
.page-content .wpforms-field input[type=tel],
.page-content .wpforms-field textarea {
	background-color: #ffffff !important; border: 1px solid #cbd5e1 !important; border-radius: 3px !important;
	padding: 14px 18px !important; color: #334155 !important; font-size: 1rem !important;
	width: 100% !important; max-width: none !important; 
	box-shadow: none !important; transition: all 0.3s !important; outline: none !important;
}
.page-content .wpforms-field textarea { min-height: 250px !important; }
.page-content .wpforms-field input:focus, .page-content .wpforms-field textarea:focus {
	border-color: #0e7490 !important; box-shadow: 0 0 0 2px rgba(14, 116, 144, 0.1) !important; background-color: #f8fafc !important;
}
.page-content .wpforms-field-name .wpforms-field-row { display: block !important; margin: 0 !important; }
.page-content .wpforms-field-name .wpforms-field-row-block { width: 100% !important; margin: 0 0 10px 0 !important; display: block !important;}
.page-content .wpforms-field-sublabel { display: none !important; }
.page-content .wpforms-submit-container { margin-top: 3.5rem !important; }
.page-content button.wpforms-submit, .page-content input.wpforms-submit {
	display: flex !important; justify-content: center !important; align-items: center !important;
	width: 100% !important; min-height: 65px !important;
	background-color: #ffffff !important; border: 1px solid #94a3b8 !important; color: #64748b !important;
	padding: 0 !important; font-size: 1.15rem !important; line-height: 1 !important; 
	font-weight: 300 !important; font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.6em !important; padding-left: 0.6em !important; 
	cursor: pointer; transition: all 0.3s ease !important; border-radius: 0 !important; box-shadow: none !important;
}
.page-content button.wpforms-submit:hover, .page-content input.wpforms-submit:hover {
	border-color: #0e7490 !important; background-color: #0e7490 !important; color: #ffffff !important;
}



