/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 09 2026 | 21:02:04 */
/* CTA */
@media (max-width: 599px) {
	.cta:not(.-sub-page)[style] {
		background-image: url(https://correct-reform.co.jp/wp-content/uploads/2026/03/fv-correct-sp.webp)!important;
		background-position: top center;
	}
}
.cta h2 {
	font-size: 30px;
	letter-spacing: .05em!important;
}
@media (max-width: 599px) {
	.cta h2 {
		font-size: 20px;
	}
}
.cta p {
	line-height: 1.4;
}
.cta h3 {
	letter-spacing: .05em!important;
}
.cta .title-tel,
.cta .title-mail {
	margin-bottom: 5px!important;
	position: relative;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
}
.cta .title-tel::before,
.cta .title-mail::before {
  content: "";
  position: absolute;
  left: -12px;
  top: 50%;
  width: 2px;
  height: 30px;
  transform: rotate(-15deg) translateY(-60%);
  transform-origin: center;
}
.cta .title-tel::after,
.cta .title-mail::after {
  content: "";
  position: absolute;
  right: -12px;
  top: 50%;
  width: 2px;
  height: 30px;
  transform: rotate(15deg) translateY(-60%);
  transform-origin: center;
}
.cta .title-tel::before,
.cta .title-tel::after {
  background: var(--color_deep01);
}
.cta .title-mail::before,
.cta .title-mail::after {
  background: var(--color_deep03);
}
.cta .p-blogParts {
	width: min(800px, 100%);
	margin-left: auto;
	margin-right: auto;
	padding: 40px;
}
@media (max-width: 599px) {
	.cta .p-blogParts {
		padding: 40px 10px;
	}
}
.cta * {
	color: #fff;
}
@media (max-width: 599px) {
	.cta .p-blogParts .text {
		font-size: 14px;
		text-align: left;
	}
}
.cta .swell-block-button .u-fz-xs {
	font-size: 12px!important;
	font-weight: normal!important;
}
.cta .swell-block-button span {
	display: flex;
	flex-direction: column;
}
.cta .swell-block-button span br {
	display: none;
}
.cta .content .swell-block-column {
	position: relative;
}
@media (min-width: 600px) {
	.cta .content .swell-block-column:first-of-type::before {
		position: absolute;
		content: "";
		width: 1px;
		height: 100%;
		top: 0;
		right: -15px;

		/* 疑似ダッシュ線 */
		background-image: linear-gradient(
			to bottom,
			#aaa 0,
			#aaa 3px,
			transparent 3px,
			transparent 7px 
		);
		background-repeat: repeat-y;
		background-size: 1px 7px;
	}
}
.cta a {
	transition: opacity .3s;
}
@media (hover: hover) {
	.cta a:hover {
		opacity: .7;
	}
}

/* 下層ページ用 */
#before_footer_widget .p-blogParts:has(.cta.-sub-page) {
	margin-bottom: 0!important;
}
#body_wrap.home #before_footer_widget .cta.-sub-page {
	display: none;
}
.cta.-sub-page {
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 32px 32px;
}

/* スマホメニュー下 */
#sp_menu_bottom .cta .title-tel::before,
#sp_menu_bottom .cta .title-tel::after {
	background: #444;
	width: 1px;
	height: 20px;
}
#sp_menu_bottom .cta .title-mail::before,
#sp_menu_bottom .cta .title-mail::after {
	background: #444;
	width: 1px;
	height: 20px;
}
#sp_menu_bottom .cta .fukidashi-text,
#sp_menu_bottom .cta .fukidashi-text * {
	color: #333;
}