@charset "UTF-8";
/* セミナー2 */
body {
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: .02em;
	overflow-x: hidden;
}

.is-layout-constrained>:not(:first-child) {
	margin-top: 1.5rem;
}

p {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
}

@media not all and (min-width: 1024px) {
	p {
		font-size: 15px;
	}
}

@media not all and (min-width: 640px) {
	p {
		font-size: 14px;
	}
}

section {
	padding-top: 5rem;
	padding-bottom: 5rem;
	overflow-x: hidden;
}

section>.wp-block-group__inner-container {
	max-width: calc(1080px + 3rem);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media not all and (min-width: 640px) {
	section>.wp-block-group__inner-container {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

.wp-block-button__link:hover {
	opacity: unset;
	filter: brightness(1.1);
}

/* MV */
section.mv {
	padding-top: 60px;
	padding-bottom: 20px;
	background-image: url(/wp-content/uploads/2025/06/mv-bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 0% 50%;
}

@media not all and (min-width: 640px) {
	section.mv {
		padding-top: 20px;
	}
}

.mv-catch {
	color: #fff;
	background-color: #00346F;
	font-size: 40px;
	width: fit-content;
	padding-top: .1em;
	padding-left: 43px;
	padding-right: 57px;
	margin-left: -143px;
}

@media not all and (min-width: 1300px) {
	.mv-catch {
		margin-left: -43px;
	}
}

@media not all and (min-width: 1024px) {
	.mv-catch {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	.mv-catch {
		font-size: 20px;
	}
}

.mv-catch .emphasis {
	background: top left / 1em .5em repeat-x radial-gradient(circle, #fff .075em, transparent .075em);
	padding-top: .15em;
}

.mv-title {
	color: #00346F;
	font-size: 55px;
	font-weight: 600;
	line-height: 1.4;
	margin-top: 80px !important;
	margin-left: -100px;
}

@media not all and (min-width: 1300px) {
	.mv-title {
		margin-left: unset;
	}
}

@media not all and (min-width: 1024px) {
	.mv-title {
		font-size: 36px;
		width: fit-content;
		margin-top: 48px !important;
		margin-left: auto;
		margin-right: auto;
	}
}

@media not all and (min-width: 640px) {
	.mv-title {
		font-size: 20px;
		margin-top: 24px !important;
	}
}

.mv-title ._large {
	font-size: 1.25em;
	letter-spacing: -.1em;
}

.mv-title ._larger {
	font-size: 1.85em;
}

.mv-body {
	margin-top: 54px !important;
	margin-left: -100px;
}

@media not all and (min-width: 1300px) {
	.mv-body {
		margin-left: unset;
	}
}

@media not all and (min-width: 1024px) {
	.mv-body {
		margin-top: 32px !important;
	}
}

.mv-body>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
}

@media not all and (min-width: 1024px) {
	.mv-body>.wp-block-group__inner-container {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}
}

.mv-profile-group {
	flex: 1 0 auto;
	margin-top: 0;
}

.mv-profile-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	gap: 10px;
}

.mv-profile-group .profile-image {
	box-shadow: 0 3px 6px rgba(0, 0, 0, 16%);
}

@media not all and (min-width: 640px) {
	.mv-profile-group .profile-image {
		width: 120px;
	}
}

.mv-profile-group .company {
	font-weight: 700;
}

.mv-profile-group .position {
	font-size: 24px;
	font-weight: 700;
	margin-top: 0;
}

@media not all and (min-width: 1024px) {
	.mv-profile-group .position {
		font-size: 20px;
	}
}

@media not all and (min-width: 640px) {
	.mv-profile-group .position {
		font-size: 18px;
	}
}

.mv-profile-group .name {
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	margin-top: 8px;
}

@media not all and (min-width: 1024px) {
	.mv-profile-group .name {
		font-size: 32px;
	}
}

@media not all and (min-width: 640px) {
	.mv-profile-group .name {
		font-size: 28px;
	}
}

.mv-badge-group {
	flex: 0 1 auto;
	margin-top: 0;
}

.mv-badge-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	gap: 30px;
}

@media not all and (min-width: 640px) {
	.mv-badge-group>.wp-block-group__inner-container {
		gap: 15px;
	}
}

.mv-badge-group>.wp-block-group__inner-container>* {
	margin-top: 0;
}

.mv-badge-group .mv-badge {
	filter: drop-shadow(1px 1px 6px rgba(0, 0, 0, 33%));
}

/* メリット */
section.merit-heading {
	background: radial-gradient(#303EBB, #000D80);
	padding-top: 27px;
	padding-bottom: 27px;
}

@media not all and (min-width: 640px) {
	section.merit-heading {
		padding-top: 15px;
		padding-bottom: 15px;
	}
}

h2.merit-heading {
	color: #fff;
	font-size: 44px;
	line-height: 1.45;
	text-align: center;
}

@media not all and (min-width: 1024px) {
	h2.merit-heading {
		font-size: 32px;
	}
}

@media not all and (min-width: 640px) {
	h2.merit-heading {
		font-size: 24px;
		line-height: 1.3;
	}
}

h2.merit-heading ._large {
	font-size: 1.6em;
}

section.merit {
	padding-top: 100px;
	padding-bottom: 120px;
}

@media not all and (min-width: 640px) {
	section.merit {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

.merit-title-group {
	clear: both;
}

@media (min-width: 1024px) {
	.merit-title-group {
		margin-left: 170px;
	}
}

.merit-title-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	gap: 30px;
}

@media not all and (min-width: 640px) {
	.merit-title-group>.wp-block-group__inner-container {
		gap: 15px;
	}
}

.merit-num {
	flex: 0 0 auto;
	position: relative;
}

@media not all and (min-width: 640px) {
	.merit-num {
		width: 30px;
	}
}

.merit-num::before {
	content: "";
	background-color: #0D4D97;
	width: 1px;
	height: 32px;
	position: absolute;
	top: -20px;
	left: -4px;
	transform: rotate(45deg);
}

@media not all and (min-width: 640px) {
	.merit-num::before {
		height: 20px;
		top: -15px;
		left: -2px;
	}
}

h3.merit-title {
	flex: 0 1 auto;
	color: #0D4D97;
	font-size: 30px;
	line-height: 1.2;
	margin-top: 0 !important;
}

@media not all and (min-width: 1024px) {
	h3.merit-title {
		font-size: 24px;
	}
}

@media not all and (min-width: 640px) {
	h3.merit-title {
		font-size: 20px;
	}
}

.merit-content-group {
	margin-top: 40px !important;
}

@media not all and (min-width: 640px) {
	.merit-content-group {
		margin-top: 1.5rem !important;
	}
}

.merit-content-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
}

@media not all and (min-width: 1024px) {
	.merit-content-group>.wp-block-group__inner-container {
		display: block;
	}
}

.merit-content-group .merit-text-group {
	flex: 0 1 auto;
}

@media (min-width: 1024px) {
	.merit-content-group .merit-text-group {
		margin-top: 0;
	}
}

.merit-content-group h4.merit-catch {
	font-size: 24px;
	line-height: 1;
}

@media not all and (min-width: 1024px) {
	.merit-content-group h4.merit-catch {
		font-size: 22px;
	}
}

@media not all and (min-width: 640px) {
	.merit-content-group h4.merit-catch {
		font-size: 18px;
		line-height: 1.3;
	}
}

.merit-content-group h4.merit-catch mark{
	background: linear-gradient(transparent 70%, #fde139 70%) !important;
}

.merit-content-group .merit-list {
	font-size: 20px;
	line-height: 1.2;
	padding-left: 1.5em;
	clear: both;
}

@media not all and (min-width: 1024px) {
	.merit-content-group .merit-list {
		font-size: 18px;
	}
}

@media not all and (min-width: 640px) {
	.merit-content-group .merit-list {
		font-size: 14px;
	}
}

.merit-content-group .merit-list li {
	list-style: disc;
}

.merit-content-group .merit-list li mark {
	background: linear-gradient(transparent 70%, #fde139 70%) !important;
	font-weight: 700;
}

.merit-content-group .merit-image {
	flex: 1 0 auto;
	width: fit-content;
	max-width: 500px;
	box-shadow: 3px 3px 24px #DADADA;
	margin-top: 0;
}

@media not all and (min-width: 1024px) {
	.merit-content-group .merit-image {
		float: right;
		width: 50%;
		margin-left: 1.5rem;
		margin-bottom: 2rem;
	}
}

@media not all and (min-width: 640px) {
	.merit-content-group .merit-image {
		margin-bottom: 1.5rem;
	}
}

.merit-content-group+.merit-title-group {
	margin-top: 100px;
}

@media not all and (min-width: 640px) {
	.merit-content-group+.merit-title-group {
		margin-top: 2.5rem;
	}
}

/* このような方にお勧め */
section.recommend {
	padding-top: 60px;
	padding-bottom: 100px;
}

@media not all and (min-width: 640px) {
	section.recommend {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

.recommend-columns {
	margin-top: 4rem !important;
}

@media not all and (min-width: 640px) {
	.recommend-columns {
		margin-top: 2rem !important;
	}
}

h2.recommend-heading {
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.recommend-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.recommend-heading {
		font-size: 24px;
	}
}

.recommend-columns>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 45px;
}

@media not all and (min-width: 1024px) {
	.recommend-columns>.wp-block-group__inner-container {
		gap: 20px;
	}
}

.recommend-group {
	width: calc(25% - 45px * 3 / 4);
	margin-top: 0 !important;
}

@media not all and (min-width: 1024px) {
	.recommend-group {
		width: calc(25% - 20px * 3 / 4);
	}
}

@media not all and (min-width: 640px) {
	.recommend-group {
		width: calc(50% - 10px);
	}
}

.recommend-image {
	filter: drop-shadow(0 0 30px rgba(0, 0, 0, 16%));
}

.recommend-text {
	font-size: 20px;
	line-height: 1.2;
	margin-top: 1rem !important;
}

@media not all and (min-width: 1024px) {
	.recommend-text {
		font-size: 16px;
	}
}

/* 受講者の声 */
section.voice {
	padding-top: 100px;
	padding-bottom: 70px;
}

@media not all and (min-width: 640px) {
	section.voice {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

h2.voice-heading {
	color: #00346F;
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.voice-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.voice-heading {
		font-size: 24px;
	}
}

.voice-row.left {
	max-width: 640px;
}

.voice-row.left>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	gap: 78px;
}

@media not all and (min-width: 1024px) {
	.voice-row.left>.wp-block-group__inner-container {
		gap: 53px;
	}
}

@media not all and (min-width: 640px) {
	.voice-row.left>.wp-block-group__inner-container {
		display: block;
		flex-direction: unset;
		gap: unset;
	}
}

.voice-row.right {
	max-width: 562px;
	margin-left: auto;
}

.voice-row.right>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row-reverse;
}

@media not all and (min-width: 640px) {
	.voice-row.right>.wp-block-group__inner-container {
		display: block;
		flex-direction: unset;
		gap: unset;
	}
}

.voice-num {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #00346F;
	font-family: "Inter", sans-serif;
	font-size: 40px;
	line-height: 1.2;
	position: relative;
}

@media not all and (min-width: 1024px) {
	.voice-num {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	.voice-num {
		-ms-writing-mode: unset;
		writing-mode: unset;
	}
}

.voice-num::before {
	content: "";
	background-color: rgba(232, 233, 235, 61%);
	width: 65px;
	height: 350px;
	position: absolute;
	top: .75em;
	right: -.9em;
	z-index: -1;
}

@media not all and (min-width: 1024px) {
	.voice-num::before {
		width: 40px;
	}
}

@media not all and (min-width: 640px) {
	.voice-num::before {
		width: 100%;
		height: 36px;
		top: unset;
		left: 0;
		right: unset;
		bottom: -.75em;
	}
}

.voice-num::after {
	content: "";
	background-color: #1C579B;
	width: 1px;
	height: 115px;
	position: absolute;
	top: 6em;
	right: -.5em;
	z-index: 0;
}

@media not all and (min-width: 640px) {
	.voice-num::after {
		width: 80px;
		height: 1px;
		top: unset;
		right: .25em;
		bottom: -.375em;
	}
}

.voice-container {
	background-color: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 15%);
	padding: 16px 20px 48px;
	margin-top: 2.5rem !important;
}

@media not all and (min-width: 640px) {
	.voice-container {
		padding: 15px 15px 25px;
	}
}

.voice-person-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
}

.voice-person-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
}

@media not all and (min-width: 640px) {
	.voice-person-group>.wp-block-group__inner-container {
		gap: 15px;
	}
}

@media not all and (min-width: 640px) {
	.voice-image {
		width: 100px;
	}
}

.voice-name-group {
	margin-top: 0 !important;
}

.voice-name {
	font-size: 20px;
	line-height: 1.5;
	margin-top: 1rem !important;
}

@media not all and (min-width: 640px) {
	.voice-name {
		font-size: 15px;
	}

}

.voice-text {
	line-height: 1.2;
	margin-top: 1.25rem !important;
}

.voice-remarks {
	line-height: 1.2;
	padding-left: 1em;
	text-indent: -1em;
}

.voice-remarks + .voice-remarks {
	margin-top: .2em;
}

/* セミナー内容 */
section.contents {
	padding-top: 0;
	padding-bottom: 110px;
}

@media not all and (min-width: 640px) {
	section.contents {
		padding-bottom: 3rem;
	}
}

h2.contents-heading {
	color: #00346F;
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.contents-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.contents-heading {
		font-size: 24px;
	}
}

h2.contents-heading+.contents-text {
	margin-top: 40px;
}

@media not all and (min-width: 640px) {
	h2.contents-heading+.contents-text {
		margin-top: 2rem;
	}
}

.contents-text {
	color: #fff;
	background: radial-gradient(#303EBB, #000D80);
	font-size: 24px;
	letter-spacing: 0;
	line-height: 1.3;
	max-width: 880px;
	padding: 20px 35px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

@media not all and (min-width: 1024px) {
	.contents-text {
		font-size: 18px;
	}
}

@media not all and (min-width: 640px) {
	.contents-text {
		font-size: 16px;
	}
}

.contents-text ._small {
	font-size: .75em;
}

.contents-text::before {
	content: "";
	background-color: #fff;
	width: 3px;
	height: 25px;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.contents-text+.contents-text {
	margin-top: 20px;
}

/* 講師紹介 */
section.lecturer {
	padding-top: 60px;
	padding-bottom: 130px;
}

@media not all and (min-width: 640px) {
	section.lecturer {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

h2.lecturer-heading {
	color: #00346F;
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.lecturer-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.lecturer-heading {
		font-size: 24px;
	}
}

.lecturer-title-group {
	max-width: 445px;
}

.lecturer-title-sub {
	color: #00346F;
	font-family: "Inter", sans-serif;
	font-size: 26px;
	font-weight: 500;
	font-style: italic;
}

@media not all and (min-width: 640px) {
	.lecturer-title-sub {
		font-size: 18px;
	}
}

.lecturer-title-line {
	margin-top: 0 !important;
	margin-left: 0;
}

h3.lecturer-title {
	color: #00346F;
	font-size: 29px;
	font-weight: 500;
}

@media not all and (min-width: 640px) {
	h3.lecturer-title {
		font-size: 21px;
		margin-top: 1rem !important;
	}
}

h4.lecturer-title {
	color: #00346F;
	font-size: 20px;
	font-weight: 600;
	margin-top: 60px !important;
}

@media not all and (min-width: 640px) {
	h4.lecturer-title {
		font-size: 18px;
		margin-top: 2rem !important;
	}
}

.lecturer-profile-group {
	float: right;
	margin-left: 2rem;
	margin-bottom: 2rem;
}

@media (min-width: 1024px) {
	.lecturer-profile-group {
		margin-top: -120px !important;
	}
}

@media not all and (min-width: 1024px) {
	.lecturer-profile-group {
		width: 35%;
		margin-left: 1.5rem;
		margin-bottom: 1.5rem;
	}
}

.lecturer-text-group {
	max-width: 525px;
	margin-top: 60px !important;
}

@media not all and (min-width: 640px) {
	.lecturer-text-group {
		margin-top: 30px !important;
	}
}

.lecturer-name {
	color: #00346F;
	font-size: 40px;
	line-height: 1.25;
}

@media not all and (min-width: 1024px) {
	.lecturer-name {
		font-size: 30px;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
}

@media not all and (min-width: 640px) {
	.lecturer-name {
		font-size: 16px;
	}
}

.lecturer-name .en-name {
	font-family: "Inter", sans-serif;
	font-weight: 600;
	font-style: italic;
}

.lecturer-name .jp-name {
	font-size: .5em;
	padding-left: .5em;
}

@media not all and (min-width: 1024px) {
	.lecturer-name .jp-name {
		font-size: .75em;
		padding-left: unset;
	}
}

@media not all and (min-width: 640px) {
	.lecturer-name .jp-name {
		font-size: 1em;
		padding-left: unset;
	}
}

.lecturer-name-line {
	width: 23%;
	margin-top: 0 !important;
	margin-left: 0;
}

@media not all and (min-width: 1024px) {
	.lecturer-name-line {
		margin-top: .5em !important;
	}
}

.lecturer-position {
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1.33;
	margin-top: 20px !important;
}

@media not all and (min-width: 1024px) {
	.lecturer-position {
		font-size: 16px;
	}
}

@media not all and (min-width: 640px) {
	.lecturer-position {
		font-size: 14px;
	}
}

.lecturer-text {
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1.33;
}

@media not all and (min-width: 1024px) {
	.lecturer-text {
		font-size: 16px;
	}
}

@media not all and (min-width: 640px) {
	.lecturer-text {
		font-size: 14px;
	}
}

.lecturer-text mark {
	background: linear-gradient(transparent 70%, #fde139 70%) !important;
	font-weight: 700;
}

.lecture-text {
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1.33;
	padding-left: 20px;
	margin-top: 10px !important;
}

@media not all and (min-width: 1024px) {
	.lecture-text {
		font-size: 16px;
	}
}

@media not all and (min-width: 640px) {
	.lecture-text {
		font-size: 14px;
	}
}

.book-images {
	padding-left: 20px;
	margin-top: 24px !important;
}

.book-images>.wp-block-group__inner-container {
	width: fit-content;
	display: flex;
	flex-direction: row;
	gap: 80px;
}

@media not all and (min-width: 640px) {
	.book-images>.wp-block-group__inner-container {
		gap: 20px;
	}
}

.book-images>.wp-block-group__inner-container>* {
	width: 50%;
	margin-top: 0 !important;
}

.book-image {
	box-shadow: 2px 2px 6px rgba(0, 0, 0, 16%);
}

/* セミナー日程 */
section.schedule {
	padding-top: 44px;
	padding-bottom: 60px;
	background-image: url(/wp-content/uploads/2025/06/schedule-bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 0% 50%;
}

@media not all and (min-width: 640px) {
	section.schedule {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

h2.schedule-heading {
	color: #00346F;
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.schedule-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.schedule-heading {
		font-size: 24px;
	}
}

.schedule-panels {
	margin-top: 100px !important;
}

@media not all and (min-width: 1024px) {
	.schedule-panels {
		margin-top: 2rem !important;
	}
}

@media not all and (min-width: 640px) {
	.schedule-panels {
		margin-top: 2rem !important;
	}
}

.schedule-panels>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 28px;
}

.schedule-panels>.wp-block-group__inner-container>* {
	margin-top: 0;
}

.schedule-panel {
	width: calc(33.33% - 56px / 3);
	min-width: 341px;
	background-color: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 16%);
	padding: 10px 10px 15px;
}

.schedule-tag mark {
	font-size: 14px;
	font-weight: 700;
	padding: 5px 20px;
}

.schedule-date-group {
	padding-left: 10px;
	margin-top: 1rem !important;
}

.schedule-date-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
}

.schedule-date-group>.wp-block-group__inner-container>* {
	margin-top: 0;
}

.schedule-date {
	font-size: 48px;
	font-weight: 700;
	line-height: 1;
}

.schedule-weekday {
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
}

.schedule-time {
	font-size: 30px;
	line-height: 1;
}

.schedule-requirements-group {
	margin-top: 1rem !important;
}

.schedule-requirements-group>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 16px;
}

.schedule-requirements-group>.wp-block-group__inner-container>* {
	margin-top: 0;
}

/* CTA */
section.cta {
	padding-top: 60px;
	padding-bottom: 60px;
	background: radial-gradient(#929BEB, #000D80);
}

@media not all and (min-width: 640px) {
	section.cta {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
}

.cta-button .wp-block-button__link {
	color: #000530;
	background-color: #FDE139;
	font-size: 30px;
	font-weight: 500;
	border-radius: 0;
	padding: 16px 24px 16px 48px;
	display: flex;
	flex-direction: row;
	gap: 90px;
}

@media not all and (min-width: 1024px) {
	.cta-button .wp-block-button__link {
		font-size: 20px;
		align-items: center;
		padding: 16px 24px 16px 48px;
		gap: 40px;
	}
}

@media not all and (min-width: 640px) {
	.cta-button .wp-block-button__link {
		font-size: 16px;
		padding: 12px 16px;
		gap: 20px;
	}
}

.cta-button .wp-block-button__link::after {
	content: "";
	background-image: url(/wp-content/uploads/2025/06/cta-btn-icon.png);
	background-size: contain;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: inline-block;
	width: 55px;
	height: 55px;
	margin-bottom: -4px;
}

@media not all and (min-width: 1024px) {
	.cta-button .wp-block-button__link::after {
		width: 40px;
		height: 40px;
	}
}

@media not all and (min-width: 640px) {
	.cta-button .wp-block-button__link::after {
		width: 30px;
		height: 30px;
	}
}

/* 追従CTA */
.sticky-cta-button {
	position: fixed;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: 999;
}

@media not all and (min-width: 640px) {
	.sticky-cta-button {
		top: unset;
		left: 0;
		right: 0;
		bottom: 0;
		transform: unset;
	}
}

@media not all and (min-width: 640px) {
	.sticky-cta-button>.wp-block-button {
		width: 100%;
	}
}

.sticky-cta-button .wp-block-button__link {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #333;
	background-color: #FDE139;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.2;
	height: fit-content;
	border-radius: 0;
	padding: 20px 16px 16px;
}

@media not all and (min-width: 640px) {
	.sticky-cta-button .wp-block-button__link {
		-ms-writing-mode: unset;
		writing-mode: unset;
		font-size: 16px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: .5em;
		padding: 10px;
	}
}

.sticky-cta-button .wp-block-button__link::after {
	content: "";
	background-image: url(/wp-content/uploads/2025/06/sticky-cta-btn-icon.png);
	background-size: contain;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: inline-block;
	width: 39px;
	height: 39px;
	margin-top: 9px;
}

@media not all and (min-width: 640px) {
	.sticky-cta-button .wp-block-button__link::after {
		width: 30px;
		height: 30px;
		margin-top: unset;
	}
}

/* お問い合わせフォーム */
section.contact {
	padding-top: 75px;
	padding-bottom: 100px;
}

@media not all and (min-width: 640px) {
	section.contact {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

h2.contact-heading {
	color: #00346F;
	font-size: 40px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h2.contact-heading {
		font-size: 26px;
	}
}

@media not all and (min-width: 640px) {
	h2.contact-heading {
		font-size: 24px;
	}
}

.wpcf7 {
	margin-top: 60px !important;
}

@media not all and (min-width: 1024px) {
	.wpcf7 {
		margin-top: 40px !important;
	}
}

@media not all and (min-width: 640px) {
	.wpcf7 {
		margin-top: 20px !important;
	}
}


table.table-contact {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}

table.table-contact th {
	font-size: 18px;
	font-weight: 500;
	width: 300px;
	border: unset;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	vertical-align: top;
}

@media not all and (min-width: 640px) {
	table.table-contact th {
		font-size: 14px;
		width: fit-content;
		padding: 10px 0 5px;
		gap: 1em;
	}
}

table.table-contact th .required {
	color: #fff;
	background-color: #AF0000;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	padding: 2px 12px;
}
table.table-contact th .any {
	color: #fff;
	background-color: #0D4D97;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	padding: 2px 12px;
	margin-left: 20px;
}

@media not all and (min-width: 640px) {
	table.table-contact th .required {
		font-size: 12px;
		padding: 0 8px;
	}
	
	table.table-contact th .any {
		font-size: 12px;
		padding: 0 8px;
	}
}

table.table-contact td {
	width: auto;
	border: unset;
}

@media not all and (min-width: 640px) {
	table.table-contact td {
		padding: 0;
	}
}

table.table-contact .wpcf7-radio {
	display: flex;
	flex-direction: column;
}

table.table-contact .wpcf7-list-item {
	font-size: 16px;
	padding: 8px 0;
	margin: 0;
}

@media not all and (min-width: 640px) {
	table.table-contact .wpcf7-list-item {
		padding: 4px 0;
	}
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
	background-color: #F4F4F4;
	font-size: 16px;
}

.pricvacy_wrapper {
	height: 20vw;
	max-width: 800px;
	overflow: scroll;
	overflow-x: hidden;
	margin: 60px auto;
	padding: 10px 40px;
	background: #F7F7F7;

}

@media screen and (max-width: 751px) {
	.pricvacy_wrapper {
		height: 60vw;
		width: 100%;
		margin: 40px auto;
	}
}

.pricvacy_wrapper_discription {
	font-size: 12px;
}

.privacy_block p {
	line-height: 2.5;
}

.privacy_accept {
	text-align: center;
	margin-bottom:40px;
}

.wpcf7-spinner {
	display: block !important;
	margin: 10px auto !important;
}

.contact_p p {
	font-weight: 700;
}

.contact_p {
	font-weight: 700;
}

.wpcf7 input[type="submit"] {
	cursor: pointer;
	color: #333;
	background-color: #FDE139;
	font-family: "Noto Sans JP";
	font-size: 20px;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1.5;
	border-radius: 9999px;
	filter: drop-shadow(5px 5px 6px rgba(0, 0, 0, 16%));
	transition: filter .3s;
}

.wpcf7 input[type="submit"]:hover {
	filter: drop-shadow(5px 5px 12px rgba(0, 0, 0, 16%)) brightness(1.1);
}

/* サンクスページ */
h1.thanks-heading {
	color: #00346F;
	font-size: 32px;
	line-height: 1.3;
}

@media not all and (min-width: 1024px) {
	h1.thanks-heading {
		font-size: 24px;
	}
}

@media not all and (min-width: 640px) {
	h1.thanks-heading {
		font-size: 20px;
	}
}

/* フッター */
footer {
	padding-top: 40px;
	padding-bottom: 40px;
}

@media not all and (min-width: 640px) {
	footer {
		padding-top: 20px;
		padding-bottom: 70px;
	}
}

footer>.wp-block-group__inner-container {
	max-width: calc(1080px + 3rem);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media not all and (min-width: 640px) {
	footer>.wp-block-group__inner-container {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

footer p {
	color: #fff;
}

.footer-columns>.wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

@media not all and (min-width: 640px) {
	.footer-columns>.wp-block-group__inner-container {
		flex-direction: column;
		gap: .5em;
	}
}

.footer-columns>.wp-block-group__inner-container>* {
	margin-top: 0;
}


@media screen and (max-width: 768px) {
		.spcf{
		display:none;
	}
}

small{
	font-size:13px;
}