/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jan 07 2026 | 14:18:17 */
/* トップページ */

@media (max-width: 599px) {
	#body_wrap.home #content {
		padding-top: 0!important;
	}
}

/* メインビジュアル */
@media (min-width: 600px) {
	#main_visual .p-mainVisual__inner {
		object-position: right top;
		width: 80vw!important;         
		margin-left: auto;
		margin-right: 0;
	}
}
#main_visual .swiper-wrapper {
	position: relative;
}
@media (max-width: 599px) {
	#main_visual .swiper-wrapper {
		height: 60%;
	}
}
#main_visual .swiper-wrapper::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(to right, #fff 10%, transparent 30%);
	z-index: 1;
}
@media (max-width: 599px) {
	#main_visual .swiper-wrapper::before {
		background-image: radial-gradient(
			circle at left top,
			rgba(255,255,255,1) 0%,
			rgba(255,255,255,0.95) 15%,
			rgba(255,255,255,0.8) 25%,
			rgba(255,255,255,0.45) 40%,
			rgba(255,255,255,0.0) 50%
		);
	}
}
@media (max-width: 599px) {
	#main_visual .p-blogParts {
		display: flex;
		flex-direction: column;
		height: 100%;
	}
}
#main_visual h2 {
	font-size: 4em;
	letter-spacing: .1em;
	color: #333;
	text-shadow: 0 0 3px #fff;
	margin-left: 0;
	margin-bottom: 20px;
}
@media (max-width: 599px) {
	#main_visual h2 {
		margin-top: 10px!important;
		font-size: 2em;
		margin-bottom: auto;
	}
}
#main_visual .p-mainVisual__inner {
	overflow: visible;
}
#main_visual .p-mainVisual__textLayer h2 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 900;
}
@media (min-width: 600px) {
	#main_visual .p-mainVisual__textLayer {
		transform: translatex(-15vw);
		left: 0;
	}
}
#main_visual .p-mainVisual__textLayer {
	width: min(600px, 100%);
}
#main_visual .fv-image {
	position: relative;
}
#main_visual .fv-image img {
	border-radius: 5px;
}
#main_visual .fv-image::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	transform: translate(8px, 8px);
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, var(--color_main), var(--color_deep01));
	z-index: -1;
	border-radius: 5px;
}
#main_visual .btn-wrap {
	gap: 20px;
}
@media (max-width: 599px) {
	#main_visual .btn-wrap {
		flex-direction: column;
		gap: 10px;
	}
}
@media (min-width: 600px) {
	#main_visual .btn-left {
		width: calc(40% - 10px);
	}
	#main_visual .btn-right {
		width: calc(60% - 10px);
	}
}
#main_visual [class*="btn-"] a {
	width: 100%;
	text-shadow: none;
	font-weight: 700;
	border-width: 2px;
	background: #fff;
	transition: .3s;
	border-color: var(--color_deep01);
	color: var(--color_deep01);
}
@media (hover: hover) {
	#main_visual [class*="btn-"] a:hover {
		background: var(--color_deep01);
	}
}

/* 茨城県知事選挙のご報告 */


/* 政策ビジョン */
.top-vision div.has-background {
	padding-left: 0;
	padding-right: 0;
}
.top-vision .img-area {
	position: relative;
}
@media (min-width: 960px) {
	#content .top-vision h3 {
		writing-mode: vertical-rl;
		text-align: left!important;
		margin-top: 2em!important;
		margin-left: auto;
		margin-right: auto;
		font-size: 2em;
	}
}
@media (max-width: 959px) {
	.top-vision h3 {
		writing-mode: normal;
		text-align: left!important;
		font-size: 3em;
	}
}
@media (min-width: 960px) {
	.top-vision .bg-blue h3 {
		transform: translatex(-40px);
	}
}
.top-vision .relative {
	position: relative;
}
@media (min-width: 960px) {
	.top-vision .number-wrap {
		position: absolute;
		top: 0;
		line-height: 1;
	}
}
@media (max-width: 959px) {
	.top-vision .number-wrap {
		position: absolute;
		top: -40px;
		right: 0;
	}
}
.top-vision .number-wrap .number span {
	opacity: .4;
	font-weight: 700;
	font-size: 8em;
	font-family: Helvetica, 'YuGo', 'YuGobold', 'YuGothic', 'Yu Gothic', '游ゴシック', Arial, sans-serif;
	line-height: 1;
}
.top-vision .number-wrap .text span {
	opacity: .4;
	font-weight: 300;
	font-size: .8em;
	line-height: 1;
}
.top-vision .number-wrap.left {
	top: -1em;
	left: -10em;
}
.top-vision .number-wrap.right {
	top: -1em;
	right: -10em;
}
@media (min-width: 1200px) {
	.top-vision .bg-blue .number-wrap.left {
		left: -18em;
		top: 0;
	}
	.top-vision .bg-blue .number-wrap.right {
		right: -18em;
		top: 0;
	}
}
@media (min-width: 960px) and (max-width: 1199px) {
	.top-vision .bg-blue .number-wrap.left {
		left: -14em;
		top: 0;
	}
	.top-vision .bg-blue .number-wrap.right {
		right: -14em;
		top: 0;
	}
}
@media (max-width: 959px) {
	.top-vision .item:nth-of-type(2n) .swell-block-columns__inner {
		flex-direction: column-reverse;
	}
	.top-vision h3 {
		margin-top: 0;
		font-size: 1.5em;
	}
}
.top-vision .bg-blue {
  position: relative;
}
.top-vision .bg-blue::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 10%);
  z-index: 1;
}
.top-vision .text {
	font-size: 1.2em;
	position: relative;
	z-index: 2;
}

/* 実績 */
.top-achievement .wp-block-list.-list-under-dashed,
#body_wrap.page-id-270 .wp-block-list.-list-under-dashed {
	padding-left: 0;
}
.top-achievement .wp-block-list.-list-under-dashed li,
#body_wrap.page-id-270 .wp-block-list.-list-under-dashed li {
	list-style: none;
}
#content .top-achievement h3.title-covid,
#body_wrap.page-id-270 h3.title-covid {
	position: relative;
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
	color: var(--color_main);
	padding: 1.3em;
	border-radius: 3px;
	z-index: 1;
}
#content .top-achievement h3.title-covid::before,
#body_wrap.page-id-270 h3.title-covid::before {
	content: "";
	position: absolute;
	height: 100%;
	inset: 0;
	padding: 5px;
	background: linear-gradient(to right, var(--color_main), var(--color_deep01));
	-webkit-mask:
	linear-gradient(#fff 0 0) content-box, 
	linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
		  mask-composite: exclude;
	z-index: -1;
	border-radius: 3px;
}
#content .top-achievement h3.title-right-blue,
#body_wrap.page-id-270 h3.title-right-blue {
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
	background: linear-gradient(to right, var(--color_main), var(--color_deep01));
	border-radius: 40px;
	padding: 1em;
}
#content .top-achievement h3.title-right-blue *,
#body_wrap.page-id-270 h3.title-right-blue * {
	color: #fff;
}
#content .top-achievement h3.title-right-blue-ghost,
#body_wrap.page-id-270 h3.title-right-blue-ghost {
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
	color: var(--color_main);
	border-radius: 40px;
	padding: 1.3em;
	z-index: 1;
}
#content .top-achievement h3.title-right-blue-ghost::before,
#body_wrap.page-id-270 h3.title-right-blue-ghost::before {
	content: "";
	position: absolute;
	height: 100%;
	inset: 0;
	padding: 4px;
	background: linear-gradient(to right, var(--color_main), var(--color_deep01));
	-webkit-mask:
	linear-gradient(#fff 0 0) content-box, 
	linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
		  mask-composite: exclude;
	z-index: -1;
	border-radius: 40px;
}
#content .top-achievement h3.title-right-blue-ghost.first,
#body_wrap.page-id-270 h3.title-right-blue-ghost.first {
	padding: .6em;
}