@media (min-width: 960px) {
	.rvfptn-is-sticky {
		position: sticky;
		top: 120px;
		height: fit-content;
		align-self: flex-start;
	}
}

/* ====== jgs3v6zz =============== */
.jgs3v6zz {
  .__band {
		position: relative;
		z-index: -1;
		margin-top: -120px;
	}
}

/* ====== uq9pufxy =============== */
.uq9pufxy {
  .__item {
		position: relative;
	}
  .__itemWrapper {}
  .__stepNum {
		position: absolute;
		left: 0;
		top: 0;
	}
  .__itemTitle {
		margin-top: 1rem !important;
	}
  .__itemText {}
}

/* ====== voviqtiu =============== */
.voviqtiu {
  .__item {
		background: #ffffff1a;
		backdrop-filter: blur(6px);
	}
}

/* ====== flgnn58s =============== */
.flgnn58s {
	.__button {
		/* 変数 */
		--line_height: 1px; /* 下線の太さ */
		--line_color: var(--color_main); /* 下線の色 */
		--line_width: 1.2em; /* 下線の長さ調節（大きくするほど短くなる） */
		--transition_speed: 0.4s; /* 下線が出る速度 */

		.swell-block-button__link {
			border-radius: 0;
			border-width: 0;
			position: relative;
			text-decoration: none;
			background-color: transparent !important;
			padding-bottom: 6px;
		}
		.swell-block-button__link::after {
			content: '';
			position: absolute;
			left: var(--line_width);
			bottom: 0;
			width: 0;
			height: var(--line_height);
			background-color: var(--line_color); 
			transition: width var(--transition_speed) ease;
		}
		.swell-block-button__link:hover {
			color: var(--color_main) !important;
			&::after {
				width: calc(100% - var(--line_width) * 2 + 6px);
			}
			.__icon {
				transform: translateX(4px);
			}
		}
		.swell-block-button__link .__icon {
			transition: transform 0.2s ease;
		}
	}
}

/* ====== a3har5lo =============== */
.a3har5lo {
  &.__wrapper {
		border-radius: 16px;
		background: #ffffff1a !important;
		padding: 1.5rem 2rem;
		backdrop-filter: blur(6px);
	}
}

/* ====== z31vperu =============== */
.z31vperu {
  .__button {
		/* 変数 */
		--line_height: 1px; /* 下線の太さ */
		--line_color: var(--color_main); /* 下線の色 */
		--line_width: 1.2em; /* 下線の長さ調節（大きくするほど短くなる） */
		--transition_speed: 0.4s; /* 下線が出る速度 */

		.swell-block-button__link {
			border-radius: 0;
			border-width: 0;
			position: relative;
			text-decoration: none;
			background-color: transparent !important;
			padding-bottom: 6px;
		}
		.swell-block-button__link::after {
			content: '';
			position: absolute;
			left: var(--line_width);
			bottom: 0;
			width: 0;
			height: var(--line_height);
			background-color: var(--line_color); 
			transition: width var(--transition_speed) ease;
		}
		.swell-block-button__link:hover {
			span, svg {
				color: var(--color_main);
			}
			&::after {
				width: calc(100% - var(--line_width) * 2 + 6px);
			}
			.__icon {
				transform: translateX(4px);
			}
		}
		.swell-block-button__link .__icon {
			transition: transform 0.2s ease;
		}
	}
  .__icon {}
}

.__button.dolvczcf {
	/* 変数 */
	--line_color: var(--color_main); /* 文字色 */
	--line_height: 1px; /* 下線の太さ */
	--line_width: 1.2em; /* 下線の長さ調節（大きくするほど短くなる） */
	--transition_speed: 0.4s; /* 下線が出る速度 */

	.swell-block-button__link {
		border-radius: 0;
		border-width: 0;
		position: relative;
		text-decoration: none;
		background-color: transparent !important;
		padding-bottom: 6px;
		color: var(--line_color);
		svg {
			margin-top: -2.5px;
		}
	}
	.swell-block-button__link::after {
		content: '';
		position: absolute;
		left: var(--line_width);
		bottom: 0;
		width: 0;
		height: var(--line_height);
		background-color: var(--line_color); 
		transition: width var(--transition_speed) ease;
	}
	.swell-block-button__link:hover {
		span, svg {
			color: var(--line_color);
		}
		&::after {
			width: calc(100% - var(--line_width) * 2 + 6px);
		}
		.__icon {
			transform: translateX(4px);
		}
	}
	.swell-block-button__link .__icon {
		transition: transform 0.2s ease;
	}
}

/* ====== jqt33rv3 =============== */
.jqt33rv3 {
	&.__wrapper {
		background: #ffffff1a;
		backdrop-filter: blur(6px);
		padding: 16px 24px;
	}
}

/* ====== x51n46ig =============== */
.x51n46ig {
	--scale: 1;
	&.__column {
		.swell-block-column {
			transition: all .3s ease;
			&:hover {
				--scale: 1.04;
			}
		}
		figure {
			overflow: hidden;
		}
		img {
			transform: scale(var(--scale));
			transition: transform .3s ease;
		}
	}
}

/* ====== m7e2tdje =============== */
.m7e2tdje {
  .__contentWrapper {
		height: 100%;
	}
}



/* ====== xgre46gn =============== */
@media(min-width: 960px) {
	.xgre46gn {
		.__item {
			&.--content {
				.__contentWrapper {
					padding-right: calc(32px + 120px);
					padding-left: 56px
				}
				margin-right: -120px;
			}
		}
	}
}

/* ====== qmrqopeh =============== */
@media(min-width: 960px) {
	.qmrqopeh {
		.__item {
			&.--content {
				.__contentWrapper {
					padding-left: calc(32px + 120px);
					padding-right: 56px;
				}
				margin-left: -120px;
			}
		}
	}
}

.snow-monkey-form:has(.__rvf-smfWrapper) {
	.smf-item__col--label {
		padding-bottom: .25em;
	}
	.__checkWrapper,
	.__radioWrapper {
		input {
			padding: 0;
		}
	}
	.__selectWrapper {
		.smf-select-control,
		.smf-select-control__control {
			width: 100%;
		}
	}

	/* ====== フォーム送信ボタン ================ */
	/* 1. 送信ボタン（確認画面へ・送信する） */
	.smf-button-control__control[type="submit"] {
		background: var(--color_main) !important;

		color: #fff !important;
		border-radius: 80px;
		padding: 12px 48px;
		border: none !important;
		font-weight: bold;
		cursor: pointer;
		transition: opacity 0.3s, transform 0.2s;
		letter-spacing: .2em;
		text-indent: .2em;

		/* サイズ感調整 */
		width: 100%;
		max-width: 300px;
		display: block;
		margin: 0 auto;
	}

	/* 送信ボタンのホバー時 */
	.smf-button-control__control[type="submit"]:hover {
		opacity: 0.85;
		transform: translateY(-2px);
	}

	/* 2. 戻るボタン（背景透明・枠線あり） */
	.smf-button-control__control[data-action="back"] {
		background: transparent !important;
		color: #555 !important;
		border: 1px solid #ccc !important;
		box-shadow: none !important;
	}

	/* 戻るボタンのホバー時 */
	.smf-button-control__control[data-action="back"]:hover {
		background: #f5f5f5 !important;
	}


	/* =========================== */
	/* 親要素（カード全体）のスタイル */
	.u-card-link {
		position: relative;
		transition: transform 0.2s ease, box-shadow 0.2s ease;
		cursor: pointer;
	}

	/* ホバー時の演出（お好みで） */
	.u-card-link:hover {
		transform: translateY(-4px);
		box-shadow: 0 10px 20px rgba(0,0,0,0.1);
	}

	/* クラスをつけたブロックの「中にあるリンク(aタグ)」を拡張する */
	.u-stretched-link a::after { 
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
		pointer-events: auto; /* 明示的にクリックを受け付ける */
	}
	/* =========================== */



	/* 同意エリアを強調するデザイン例 */
	.div_radio {
		background: white;
		padding: 15px;
		border: 1px solid #ddd;
		border-radius: 5px;
		margin-top: 20px;
		margin-top: .3em !important;
	}

	.button_div {
		text-align: center !important;
		transition: opacity 0.3s, transform 0.2s;
		.buttons {
			background: var(--color_main) !important;

			color: #fff !important;
			border-radius: 80px;
			padding: 10px 24px;
			border: none !important;
			font-weight: bold;
			cursor: pointer;
			transition: opacity 0.3s, transform 0.2s;
			letter-spacing: .5em;
			text-indent: .5em;
			&:hover {
				opacity: 0.85;
				transform: translateY(-2px);
			}
		}
	}
}

@media(max-width: 959px) {
	.__column.f4jfy6bs {
		.__item:nth-child(1) {
			order:1
		}
		.__item:nth-child(2) {
			order:2
		}
		.__item:nth-child(3) {
			order:4
		}
		.__item:nth-child(4) {
			order:3
		}
		.__item:nth-child(5) {
			order:5
		}
		.__item:nth-child(6) {
			order:6
		}
	}
}

/* ====== hbm3eufs =============== */
.hbm3eufs {
	--pi: 32px;
	@media (max-width: 599px) {
		--pi: 8px;
	}
	padding-inline: var(--pi);
	
	.__media {
		.wp-block-media-text__content {
			padding: 0;
		}
		@media (max-width: 599px) {
			.__subCopy {
				font-size: .95em !important;
			}
			.__mainCopy {
				font-size: 1em !important;
			}
			.__message {
				font-size: .9em;
			}
		}
	}
	@media (max-width: 959px) {
		.__media.--main {
			display: flex;
			flex-direction: column-reverse;
		}
	}
}

/* ====== itwu2gvz =============== */
.itwu2gvz {
	.__column {}
	.__item {
		position: relative;
		border-radius: 16px;
		&:first-child {
			box-shadow: none;
			border: none;
		}
	}
	.__secSubTitle {}
	.__secTitle {}
	.__itemTitle {}
	.__title {}
	.__message {}
	.__profile {}
	.__image {
		position: absolute;
		bottom: 1rem;;
		right: 1rem;
	}
}


/* ====== vda71pik =============== */
.vda71pik {
	.__column {}
	.__item {
		&:first-child {
			box-shadow: none;
			border: none;
		}
		@media(min-width: 960px) {
			--rounded: 16px;
			&.--detail {
				&:nth-child(2) {
					border-radius: var(--rounded) 0 0 var(--rounded);
				}
				&:nth-child(4) {
					border-radius: 0 var(--rounded) var(--rounded) 0;
				}
			}
		}
		@media(max-width: 959px) {
			border-radius: 16px;
		}
	}
	.__secSubTitle {}
	.__secTitle {}
}


/* ====== y4tz7ip5 =============== */
.y4tz7ip5 {
	.__column {}
	.__item {
		border-radius: 32px;
		&:first-child {
			box-shadow: none;
			border: none;
		}
	}
	.__secSubTitle {}
	.__secTitle {}
	.__itemTitle {}
	.__price {}
	.__list {}
	.__button {}
	.__item.--cta {
		position: relative;
	}
	.__ctaCopy {
		position: absolute;
		transform: translatex(-50%);
		background: white;
		top: -1rem;
		left: 50%;
		&::before {
			content: "＼";
			font-size: .9em;
		}
		&::after {
			content: "／";
			font-size: .9em;
		}
	}
	.__ctaTitle {}
	.__ctaMessage {}
	.__ctaButton {}
	.__icon {}
}


/* ====== hh8hdbm4 =============== */
.hh8hdbm4 {
	.__column {}
	.__item {
		border-radius: 32px;
		&:first-child {
			box-shadow: none;
			border: none;
		}
	}
	.__secSubTitle {}
	.__secTitle {}
	.__itemWrapper {
		text-align: center;
	}
	.__num {
		transform: translatey(-2rem);
		background: var(--color_main);
		width: 2rem;
		height: 2rem;
		display: inline-block;
		line-height: 2.1rem;
		border-radius: 100px;
		color: white;
		font-weight: 600;
	}
	.__image {
		margin-top: -2rem;
	}
}


/* ====== v46jvki1 =============== */
.v46jvki1 {
	.__secTitle {}
	.__column {}
	.__item {
		border-radius: 24px;
		box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.03);
	}
	.__itemGroup {}
	.__itemImage {}
	.__itemText {}
	.__message {}
}


/* ====== ueiq9xd6 =============== */
.ueiq9xd6 {
	.__column {}
	.__item {}
	.__secSubTitle {
		color: var(--color_main);
	}
	.__secTitle {}
	.__secMessage {}
	.__detailColumn {}
	.__detailItem {
		background-color: white;
		padding: 8px;
		border-radius: 8px;
		border: 1px solid #F2F2F2;
	}
	.__detailItemWrapper {}
	.__detailImage {
		img {
			border-radius: 8px;
		}
	}
	.__detailItemGroup {
		position: relative;
	}
	.__num {
		position: absolute;
		bottom: -1rem;
		left: .5rem;
		background: var(--color_main);
		text-align: center;
		width: 2rem;
		height: 2rem;
		line-height: 2.1rem;
		border-radius: 100px;
		color: white;
		font-weight: 600;
	}
	.__detailTextWrapper {
		padding: 4px 12px;
	}
	.__detailTitle {}
	.__detailText {
		font-weight: 500;
	}
}


/* ====== muep6--q =============== */
.muep6--q {
	.pcihcem8 {
		position: relative;
		.__secSubTitle {}
		.__secTitle {}
		.__button.epiw2dwm {
			@media(min-width: 960px) {
				position: absolute;
				bottom: 0;
				right: 40px;
				z-index: 1;
			}
		}
		.__icon {}
	}
	.__column {}
	.__item {}
	.__image {}
	.__position {}
	.__name {}
	.__info {}
}