@charset "UTF-8";
html,
body {
	font-family: "Noto Sans JP", sans-serif;
	color: #3d3d3d;
	letter-spacing: 0.05em;
	-webkit-text-size-adjust: 100%;
}

a {
	text-decoration: underline;
	:hover {
		text-decoration: none;
	}
}

.stop {
	overflow-y: hidden;
}

.all_wrap {
	position: relative;
}

.pc {
	display: block;
	@media screen and (max-width: 955px) {
		display: none !important;
	}
}

.sp,
.tb {
	display: none;
	@media screen and (max-width: 955px) {
		display: block;
	}
}

.wrap {
	padding: 0 10vw;
	max-width: 1500px;
	margin: auto;
}

.agency {
	text-align: center;
	line-height: 3rem;
	font-size: 1rem;
	height: 3rem;
	background: #ffe4ce;
	color: #363636;
}

sup {
	vertical-align: middle;
	font-size: clamp(0.875rem, 0.694rem + 0.89vw, 1.25rem);
}

.js-fade {
	opacity: 1;
	visibility: hidden;
	transform: translateY(100px);
	transition:
		opacity 1s,
		visibility 0.8s,
		transform 0.8s;
}

.scroll {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}

.notes {
	font-size: clamp(0.75rem, 0.69rem + 0.3vw, 0.875rem) !important;
	padding-left: 1em;
	text-indent: -1em;
}

/* ------------------- 共通部分 ------------------- */

section {
	width: 100%;
	max-width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: clamp(2.5rem, 1.293rem + 5.96vw, 5rem);
	@media screen and (max-width: 955px) {
		align-items: initial;
	}
}

.sec-wrap {
	width: 100%;
	max-width: 900px;
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	& .notes {
		@media screen and (max-width: 955px) {
			line-height: 18px;
		}
	}
	&.flow {
		background-color: #fff;
		padding: clamp(1.5rem, 1.017rem + 2.38vw, 2.5rem) 0;
		border-radius: 15px 15px 0 0;
		& radius-non-btm {
			border-bottom-right-radius: 0 !important;
			border-bottom-left-radius: 0 !important;
		}
		&.radius-non-top {
			border-radius: 0 0 15px 15px;
		}
		@media screen and (max-width: 955px) {
			background-color: #f5f8d5;
			&.radius-non-btm {
				border-bottom-right-radius: 0 !important;
				border-bottom-left-radius: 0 !important;
			}
			&.radius-non-top {
				border-radius: 0 0 15px 15px;
			}
		}
	}
	@media screen and (max-width: 955px) {
		min-width: 320px;
		padding: 0 16px;
	}
}

h2 {
	font-size: clamp(1.25rem, 0.646rem + 2.98vw, 2.5rem);
	font-weight: 600;
	color: #3d3d3d;
	margin-bottom: 26px;
}

h3 {
	&.sec-h3 {
		font-family: "M PLUS Rounded 1c", sans-serif;
		transform: rotate(0.03deg);
		font-size: 32px;
		font-weight: 700;
		color: #fff;
		text-align: center;
		background: #67b43b;
		width: 100%;
		height: 58px;
		margin-bottom: 36px;
		border-radius: 15px;
		box-sizing: border-box;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	&.copy {
		font-size: clamp(1.25rem, 0.767rem + 2.38vw, 2.25rem);
		font-weight: 600;
		text-align: center;
		line-height: 36px;
		color: #3d3d3d;
		& span {
			font-size: clamp(1.75rem, 1.146rem + 2.98vw, 3rem);
			background: linear-gradient(transparent 60%, yellow 60%);
		}
	}
	&.orange-text {
		font-size: clamp(1.25rem, 0.646rem + 2.98vw, 2.5rem);
		font-weight: bold;
		color: #f05400;
		text-align: center;
		line-height: 1.5;
		& span {
			font-size: clamp(3rem, 2.517rem + 2.38vw, 4rem);
			font-weight: 900;
		}
	}
	&.gray-text {
		font-size: clamp(1.125rem, 0.582rem + 2.68vw, 2.25rem);
		font-weight: bold;
		color: #3d3d3d;
		margin-bottom: 24px;
	}
}

p {
	color: #3d3d3d;
	&.normal {
		font-size: clamp(1rem, 0.759rem + 1.19vw, 1.5rem);
		font-weight: 400;
		line-height: 1.8;
		text-align: center;
	}
	&.sub-text {
		font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
		padding-left: 1em;
		text-indent: -1em;
	}
}

li {
	margin-bottom: 8px;
}

/* 余白 */
.mb-16 {
	margin-bottom: 16px !important;
}
.mb-40 {
	margin-bottom: 40px !important;
}
.mb-60 {
	margin-bottom: 60px !important;
}

.sec-title {
	width: 100%;
	& .sec-h3 {
		font-size: clamp(1.125rem, 0.702rem + 2.09vw, 2rem);
		border-radius: initial;
	}
}

/* ------------------- FV関連 ------------------- */
#FV {
	width: 100%;
	position: relative;
	box-sizing: border-box;
	margin: 0 auto;
	background-color: #ffedf0;
	& h1 {
		text-align: center;
	}
	& .fv-contents {
		width: 100%;
		max-width: 59vw;
		min-width: 0;
		aspect-ratio: 298 / 43;
		display: flex;
		flex-direction: column;
		align-items: center;
		position: absolute;
		top: 59%;
		bottom: 0;
		z-index: 10;
		box-sizing: border-box;

		& .sec-fv-btns {
			display: flex;
			justify-content: center;
			gap: 27px;
			width: 432px;
			height: 87px;
			& a {
				text-decoration: none;
			}
		}
		& p.notes {
			font-family: "M PLUS Rounded 1c", sans-serif;
			transform: rotate(0.03deg);
			font-size: clamp(0.75rem, 0.69rem + 0.3vw, 0.875rem) !important;
			text-align: center;
			line-height: 18px;
			letter-spacing: 0;
			white-space: nowrap;
			margin-bottom: 8px;
			letter-spacing: normal;
		}
		@media screen and (max-width: 955px) {
			width: 100%;
			max-width: 100%;
			height: auto;
			padding: 0 16px;
			aspect-ratio: initial;
			top: auto;
			bottom: 0;
			& .sec-fv-btns {
				gap: 8px;
				margin-bottom: initial;
				width: 100%;
				height: auto;
			}
			& p.notes {
				font-size: 1vw !important;
			}
		}
	}
	& picture {
		& img {
			width: 100%;
			max-width: 1440px;
			height: auto;
		}
	}
}

/* ------------------- かんたん見積もり関連 ------------------- */
/* ヘッダー部 */
.calc-head {
	width: 100%;
	height: 42px;
	background-color: #67b43b;
	border-radius: 15px 15px 0 0;
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

/* 入力部 */
.uk-select:not([multiple]):not([size]) {
	background-image: none;
	height: 40px;
	padding: 9px 10px;
	position: relative;
}

.agfpc-product-select-category,
.agfpc-product-select-age,
.agfpc-product-select-method {
	position: relative;
	&::before {
		content: "";
		display: block !important;
		width: 40px !important;
		height: 32px !important;
		background-color: #fff;
		position: absolute !important;
		right: 1px !important;
		top: 0 !important;
		bottom: 0 !important;
		margin: auto !important;
		pointer-events: none !important;
		border-left: 1px solid #7d7d7d !important;
		z-index: 10;
	}
	&::after {
		content: "";
		width: 10px;
		height: 10px;
		border: 0;
		border-top: solid 2px #67b43b;
		border-right: solid 2px #67b43b;
		position: absolute;
		top: 45% !important;
		right: 14px;
		transform: translateY(-50%) rotate(135deg);
		pointer-events: none;
		background-color: #fff;
		z-index: 15;
	}
}

.uk-input,
.uk-select,
.uk-textarea {
	border: 1px solid #7d7d7d;
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
	border: 1px solid #7d7d7d;
}

.agfpc-product {
	width: 100%;
	height: 84px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	padding: 0 24px;
	border: #67b43b solid 1px;
	border-radius: 0 0 15px 15px;
	box-sizing: border-box;
	& .agfpc-product-form {
		height: 40px;
		gap: 8px;
		display: flex;
		/* 犬猫選択 */
		& .lab-estimate__col {
			margin: initial;
			& ul {
				display: flex;
				gap: 8px;
				& li {
					display: flex;
					justify-content: center;
					align-items: center;
					margin-bottom: initial;
					/* & label {
						& input[type="radio"] {
							display: none;
						&:checked + span {
						  border: 2px solid orange;
						  background-color: #fff7e6;
						}
					} */
					& label {
						width: 64px;
						height: 40px;
						& input[type="radio"] {
							display: none;
							&:checked + span {
								border: #67b43b solid 3px;
								background-color: #f9ffd1;
							}
						}
					}
					& span {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 100%;
						border: #7d7d7d solid 1px;
						box-sizing: border-box;
						cursor: pointer;
						transition: all 0.3s;
					}
				}
			}
		}
		/* 種別選択 */
		& .agfpc-product-col {
			display: flex;
			gap: 8px;
			& .agfpc-product-select-category {
				width: 360px;
				@media screen and (max-width: 955px) {
					width: initial;
					font-size: 13px;
				}
			}
		}
		/* 年齢選択 */
		& .agfpc-product-select-age {
			width: 100%;
			max-width: 115px;
		}
		/* 月額・年額 */
		& .agfpc-product-select-method {
			width: 100%;
			max-width: 142px;
		}
		@media screen and (max-width: 955px) {
			width: 100%;
			flex-direction: column;
			& .lab-estimate__col {
				& ul {
					& li {
						width: 100%;
						/* padding: 0 8px; */
						& label {
							width: 100%;
							height: 63px;
						}
					}
				}
			}
			& .agfpc-product-select-age {
				max-width: 100%;
			}
			& .agfpc-product-select-method {
				max-width: 100%;
			}
		}
	}
	@media screen and (max-width: 955px) {
		height: 100%;
		min-height: 310px;
		padding: 16px 8px;
		flex-direction: column;
		justify-content: space-between;
		& .agfpc-product-col {
			flex-direction: column;
		}
	}
}

.agfpc-product-btn {
	width: 100%;
	max-width: 186px;
	height: 51px;
	font-size: 16px;
	font-weight: 600;
	color: #67b43b;
	background-color: #fff;
	border: #67b43b solid 2px;
	border-radius: 30px;
	box-shadow: 2px 2px 12px #311e1e33;
	cursor: pointer;
}

/* ------------------- キャンペーン関連 ------------------- */
#campaign {
	& h2 {
		color: #f05400;
	}
	& figure {
		width: 100%;
		& picture {
			& img {
				width: 100% !important;
				margin: initial !important;
				border: #f05400 solid 2px;
			}
		}
	}
}

/* ------------------- お悩み関連 ------------------- */
#problem {
	& h2 {
		font-size: clamp(1.25rem, 0.767rem + 2.38vw, 2.25rem);
		text-align: center;
		line-height: 38px;
	}
	& figure {
		margin-bottom: 11px;
		& img {
			width: 100%;
			max-width: 900px;
		}
	}
	& .satisfaction {
		width: 100%;
		max-width: 900px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		margin-bottom: 16px;
		& .text-side {
			width: 100%;
			max-width: 616px;
			display: flex;
			flex-direction: column;
			box-sizing: border-box;
			& .fit-max-banner {
				min-width: 0;
				max-width: 100%;
				min-width: 0;
				display: flex;
				justify-content: center;
				gap: 15px;
				margin-bottom: 16px;
				& img {
					display: block;
					width: 100%;
					max-width: 300px;
					min-width: 0;
					height: 100%;
					max-height: 145px;
				}
			}
			& h5 {
				font-size: clamp(1.25rem, 0.827rem + 2.09vw, 2.125rem);
				font-weight: 600;
				line-height: 126%;
				margin: 0 auto;
				margin-bottom: 16px;
				& span {
					color: #f05400;
					font-size: clamp(1.5rem, 1.017rem + 2.38vw, 2.5rem);
					font-weight: 600;
					line-height: 126%;
				}
			}
			& .notes {
				margin: 0 10px;
			}
		}
		& .graph-side {
			padding-top: 20px;
			& img {
				width: 237px;
				height: 237px;
			}
		}
		& .notes {
			text-align: left;
			line-height: 20px;
		}
		@media screen and (max-width: 955px) {
			margin-bottom: initial;
			& .text-side {
				max-width: 100%;
				& .fit-max-banner {
					justify-content: center;
					padding: 0 16px;
				}
			}
		}
	}
}

/* ------------------- Top3関連 ------------------- */
#top3 {
	background-color: #fffdf1;
	padding: 40px 0;
	& .top3-icons {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, max-content));
		justify-content: space-between;
		width: 100%;
		margin-bottom: 21px;
		& a {
			text-decoration: none;
		}
		& .single-icon {
			display: flex;
			flex-direction: column;
			align-items: center;
			border: none;
			background: none;
			cursor: pointer;
			& img {
				width: 175px;
				margin-bottom: 32px;
			}
			& p {
				font-size: clamp(1rem, 0.759rem + 1.19vw, 1.5rem);
				font-weight: 600;
				letter-spacing: -1px;
				color: #f05400;
			}
		}
	}
	@media screen and (max-width: 955px) {
		& .top3-icons {
			grid-template-columns: repeat(2, 1fr);
			row-gap: 16px;
			& .single-icon {
				&:first-child {
					grid-column: 1 / -1;
				}
				& img {
					width: 123px;
					margin-bottom: 8px;
				}
			}
		}
	}
}

.reason {
	width: 100%;
	max-width: 900px;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	border-radius: 15px;
	border: #0071bf solid 4px;
	box-sizing: border-box;
	padding: 50px 0;
	margin-bottom: clamp(2.438rem, 1.2rem + 6.11vw, 5rem);
	& .reason-wrap {
		width: 100%;
		max-width: 800px;
		display: flex;
		flex-direction: column;
		align-items: center;
		& .reason-intro {
			width: 100%;
			max-width: 800px;
			background-color: #fff;
			display: flex;
			flex-direction: column;
			align-items: center;
			margin-bottom: 40px;
			@media screen and (max-width: 955px) {
				& .gray-text {
					align-self: flex-start;
				}
				& p {
					align-self: flex-start;
					text-align: left;
				}
			}
		}
		& .copy-fit {
			text-align: center;
			margin-bottom: 40px;
			& .fit {
				font-size: clamp(1.125rem, 0.702rem + 2.09vw, 2rem);
				font-weight: 600;
				color: #f05400;
				margin-bottom: 24px;
			}
			@media screen and (max-width: 955px) {
				align-self: flex-start;
				& .fit {
					text-align: left;
				}
				& .normal {
					text-align: left;
					letter-spacing: 0;
				}
			}
		}
		& .copy-max {
			text-align: center;
			margin-bottom: 40px;
			& .max {
				font-size: clamp(1.125rem, 0.702rem + 2.09vw, 2rem);
				font-weight: 600;
				color: #00c4b6;
				margin-bottom: 24px;
			}
			& sup {
				top: -8px;
			}
			@media screen and (max-width: 955px) {
				align-self: flex-start;
				& .max {
					text-align: left;
					letter-spacing: 0;
				}
				& p.normal {
					text-align: left;
					letter-spacing: 0;
					& sup {
						font-size: 12px;
					}
				}
				& .notes {
					text-align: left;
				}
			}
		}
		& .app-dl {
			display: flex;
			flex-direction: row;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			max-width: 546px;
			height: 100%;
			max-height: 176px;
			& .anical-area {
				& p {
					font-size: clamp(1rem, 0.879rem + 0.6vw, 1.25rem);
					font-weight: 600;
					text-align: center;
					margin-bottom: 5px;
				}
				& img {
					width: 100%;
					max-width: 147px;
					border: #3d3d3d solid 1px;
				}
			}
			& .app-QR-area {
				& p {
					font-size: clamp(1rem, 0.879rem + 0.6vw, 1.25rem);
					font-weight: 600;
					text-align: center;
					margin-bottom: 16px;
				}
				& .app-QR-code {
					display: flex;
					justify-content: space-between;
					gap: 80px;
					& img {
						height: 100%;
						max-height: 130px;
					}
				}
			}
			@media screen and (max-width: 955px) {
				flex-direction: column;
				align-items: center;
				gap: 24px;
				max-height: initial;
				& .anical-area {
					& p {
						margin-bottom: 16px;
					}
				}
			}
		}
	}
	@media screen and (max-width: 955px) {
		padding: 20px 10px 46px 10px;
	}
}
#reason1 {
	p.normal {
		margin-bottom: 16px;
		@media screen and (max-width: 955px) {
			margin-bottom: 8px;
			letter-spacing: 0;
		}
	}
	& .notes {
		@media screen and (max-width: 955px) {
			align-self: flex-start;
		}
	}
}

#reason3 {
	p.normal {
		margin-bottom: 16px;
		@media screen and (max-width: 955px) {
			margin-bottom: 8px;
		}
	}
}

/* -------------------  ------------------- */
.sec_cv {
	background: #fff;
	text-align: center;
	& .KV_notes {
		margin: auto;
		padding-top: 10px;
		font-size: clamp(8px, 1.1vw, 13px);
		width: 65vw;
		max-width: 1200px;
		padding-left: 1em;
		line-height: 1.5em;
		text-align: left;
		& a {
			border-bottom: 1px solid #363636;
			&:hover {
				color: #fe5e45;
				border-bottom: 1px solid #fe5e45;
			}
		}
	}
}

.button3 {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	cursor: pointer;
	font: inherit;
	color: inherit;
	line-height: normal;
	letter-spacing: inherit;
	-webkit-text-size-adjust: 100%;
	text-indent: initial;
	text-decoration: underline;
	&:hover {
		color: #0f6ecd;
	}
}

.button4 {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	cursor: pointer;
	font: inherit;
	color: inherit;
	line-height: 1.4;
	letter-spacing: inherit;
	-webkit-text-size-adjust: 100%;
	text-decoration: underline;
	&:hover {
		color: #0f6ecd;
	}
}

.sec_wrap {
	width: 100%;
	max-width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 42px;
	box-sizing: border-box;
	&.btm-sec {
		justify-content: center;
		align-items: stretch;
		padding: 0 16px !important;
	}
	@media screen and (max-width: 955px) {
		flex-direction: column;
		align-items: center;
		gap: 40px;
		&.btm-sec {
			flex-direction: row;
			gap: 5px;
		}
	}
}

/* ------------------- 訴求ボタン ------------------- */
.cv_box {
	width: 100%;
	max-width: 472px;
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	line-height: 1.5;
	font-weight: 700;
	background: #fff;
	border: solid 3px #fe5e45;
	border-top-width: 16px;
	border-radius: 15px;
	padding: 24px 15px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	position: relative;
	& h2 {
		font-size: 28px;
		font-weight: 700;
		color: #fe5e45;
		margin-bottom: 16px;
		@media screen and (max-width: 955px) {
			text-align: center;
		}
	}
	& p {
		font-size: clamp(0.875rem, 0.815rem + 0.3vw, 1rem);
		font-weight: 500;
		text-align: center;
		color: #363636;
		margin-bottom: 33px;
		&.cv-bottom {
			font-size: clamp(0.75rem, 0.629rem + 0.6vw, 1rem);
		}
	}
	& .btm-txt {
		& h2 {
			font-size: clamp(1rem, 0.638rem + 1.79vw, 1.75rem);
		}
		& p {
			font-size: clamp(0.75rem, 0.629rem + 0.6vw, 1rem);
		}
	}
	& .btn_wrap {
		bottom: 0;
		margin-top: auto;
	}
	& .cv-btns {
		width: 100%;
		max-width: 100%;
		display: flex;
		gap: 18px;
		box-sizing: border-box;
		& a {
			text-decoration: none;
		}
		& .cv_btn {
			font-size: clamp(18px, 1.5vw, 24px);
			font-weight: 700;
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			max-width: 100%;
			height: 48px;
			background: #fe5e45;
			color: #fff;
			border-radius: 10px;
			border: solid 2px #fe5e45;
			box-sizing: border-box;
			&:hover {
				background-color: #fe5e45;
			}
		}
		& .siryou_btn {
			font-size: clamp(18px, 1.5vw, 24px);
			font-weight: 700;
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			max-width: 100%;
			height: 48px;
			background: #fff;
			color: #fe5e45;
			border: solid 2px #fe5e45;
			box-sizing: border-box;
			border-radius: 10px;
			&:hover {
				background-color: #fff;
			}
		}
		@media screen and (max-width: 955px) {
			flex-direction: column-reverse;
			& .cv_btn {
				max-width: 100%;
			}
		}
	}
	&.max {
		border: solid 3px #01c4b5;
		border-top-width: 16px;
		border-radius: 15px;
		& h2 {
			color: #01c4b5;
		}
		& .cv_btn {
			background: #01c4b5;
			color: #fff;
			border: solid 2px #01c4b5;
			& ::hover {
				background-color: #e5f9f6;
				border: solid 2px #01c4b5;
				color: #01c4b5;
			}
		}
		& .siryou_btn {
			background: #fff;
			color: #01c4b5;
			border: solid 2px #01c4b5;
			& ::hover {
				background-color: #e5f9f6;
				border: solid 2px #01c4b5;
				color: #01c4b5;
			}
		}
	}
}

.button2 {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	cursor: pointer;
	font: inherit;
	color: inherit;
	line-height: normal;
	letter-spacing: inherit;
	-webkit-text-size-adjust: 100%;
	text-decoration: underline;
	&:hover {
		color: #0f6ecd;
	}
}

.sec_cv .wrap h5 {
	margin: 4vw auto auto;
	text-align: center;
	font-size: 1.5vw;
	font-weight: 700;
	background: #fcd0c3;
	width: 60vw;
	padding: 0.5em 0;
	border-radius: 1vw 1vw 0 0;
}

/* ------------------- 簡単見積もりまわり ------------------- */

#quick-quote {
	& h5 {
		width: 100%;
		color: #fff;
		background-color: #67b43b;
		font-size: 1.5vw;
		font-weight: 700;
		text-align: center;
		margin: initial;
		padding: 0.5em 0;
		border-radius: 1vw 1vw 0 0;
	}
}

/* .sec_cv .wrap .form {
	width: 100%;
	margin: auto;
	border-radius: 0 0 1vw 1vw;
} */

/* .sec_cv .wrap .form h5 {
	background: #67b43b;
	color: #fff;
	width: 100%;
} */

.sec_cv .wrap .form h5 span {
	background: #fff;
	color: #fe5e45;
	font-size: 1.2vw;
	border-radius: 2vw;
	padding: 0.2vw 1vw;
	margin-left: 1em;
}

.sec_cv .wrap .form_wrap {
	display: grid;
	grid-template-columns: 0.5fr 1.5fr 2fr;
	background-color: #fff;
	padding: 2vw;
	align-items: center;
	justify-content: space-around;
	border-radius: 0 0 1vw 1vw;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap {
	display: flex;
	flex-direction: row;
	align-items: center;
	width: 100%;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .dog_select,
.sec_cv .wrap .form_wrap .pet_selection_wrap .cat_select {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 5vw;
	cursor: pointer;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .dog_select input,
.sec_cv .wrap .form_wrap .pet_selection_wrap .cat_select input {
	display: none;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .dog_select,
.sec_cv .wrap .form_wrap .pet_selection_wrap .cat_select {
	margin-right: 1vw;
	font-size: clamp(12px, 1.2vw, 24px);
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	font-weight: 600;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .dog_select img,
.sec_cv .wrap .form_wrap .pet_selection_wrap .cat_select img {
	max-width: 100%;
	margin-bottom: 0.5vw;
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .cat_no_click img {
	content: url(/images/lp7/cat_no_click.webp);
}

.sec_cv .wrap .form_wrap .pet_selection_wrap .dog_no_click img {
	content: url(/images/lp7/dog_no_click.webp);
}

.sec_cv .wrap .form_wrap .dropdown_wrap {
	width: 100%;
}

.product_switch {
	width: 90%;
	padding-bottom: 1vw;
	display: flex;
	flex-direction: row;
	align-items: center;
}
.product_switch label {
	font-size: clamp(10px, 1.1vw, 22px);
	padding-right: 0.5vw;
	font-weight: 600;
	white-space: nowrap;
}

.product_switch select {
	width: 90%;
	height: 2.5vw;
	padding: 0 0 0 0.75vw;
	/* 矢印 */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(/images/lp7/dropdown_arrow.webp);
	background-repeat: no-repeat;
	background-position: right 1vw top 50%;
	background-size: 0.75vw auto;
	border: 1px solid #707070;
	border-radius: 0.15vw;
	font-size: 1vw;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_1 {
	width: 90%;
	padding-bottom: 1vw;
	display: flex;
	flex-direction: row;
	align-items: center;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_1 label {
	font-size: clamp(10px, 1.1vw, 22px);
	padding-right: 0.5vw;
	font-weight: 600;
	white-space: nowrap;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_1 #dog_breed,
.sec_cv .wrap .form_wrap .dropdown_wrap .row_1 #cat_breed {
	width: 90%;
	height: 2.5vw;
	padding: 0 0 0 0.75vw;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(/images/lp7/dropdown_arrow.webp);
	background-repeat: no-repeat;
	background-position: right 1vw top 50%;
	background-size: 0.75vw auto;
	border: 1px solid #707070;
	border-radius: 0.15vw;
	font-size: 1vw;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_2 {
	display: flex;
	flex-direction: row;
	align-items: center;
	width: 90%;
	padding-bottom: 1vw;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_2 .year_selection {
	padding-right: 1vw;
	flex-direction: row;
	display: flex;
	align-items: center;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_2 .year_selection label {
	font-size: clamp(10px, 1.1vw, 22px);
	padding-right: 0.5vw;
	font-weight: 600;
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	white-space: nowrap;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .row_2 .year_selection #dog_year {
	width: 5vw;
	height: 2.5vw;
	padding: 0 0 0 0.75vw;
	/* 矢印 */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(/images/lp7/dropdown_arrow.webp);
	background-repeat: no-repeat;
	background-position: right 1vw top 50%;
	background-size: 0.75vw auto;
	border: 1px solid #707070;
	border-radius: 0.15vw;
	font-size: 1vw;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .payment_option {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .payment_option .payment_title {
	font-weight: 600;
	font-size: clamp(10px, 1.1vw, 22px);
	margin-right: 0.5vw;
	white-space: nowrap;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .payment_option .payment_choice {
	padding-right: 0.5vw;
	font-size: 1.1vw;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .payment_option .payment_choice form {
	flex-direction: row;
	align-items: center;
}

.sec_cv .wrap .form_wrap .dropdown_wrap .payment_option .payment_choice label {
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	font-size: clamp(10px, 1.1vw, 22px);
	margin-right: 0.9vw;
	white-space: nowrap;
}

.sec_cv
	.wrap
	.form_wrap
	.dropdown_wrap
	.payment_option
	.payment_choice
	input[type="radio"] {
	accent-color: #fe5e45;
	transform: scale(1.5);
	margin: 0;
}

.sec_cv
	.wrap
	.form_wrap
	.dropdown_wrap
	.payment_option
	.payment_choice
	#payment_1,
.sec_cv
	.wrap
	.form_wrap
	.dropdown_wrap
	.payment_option
	.payment_choice
	#payment_2 {
	margin-right: 0.5vw;
}

.sec_cv
	.wrap
	.form_wrap
	.dropdown_wrap
	.payment_option
	.payment_choice
	#label_1,
.sec_cv
	.wrap
	.form_wrap
	.dropdown_wrap
	.payment_option
	.payment_choice
	#label_2 {
	white-space: nowrap;
	margin-right: 0.9vw;
}

.sec_cv .wrap .form_wrap .dog_dropdown {
	display: none;
}

.sec_cv .wrap .form_wrap .cat_dropdown {
	display: none;
}

.sec_cv .wrap .form_wrap .active {
	display: block;
}

.sec_cv .wrap .form_wrap .total_payment_wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 4px;
}

.sec_cv .wrap .form_wrap .product_name {
	color: #fe5e45;
	font-size: clamp(20px, 1.8vw, 28px);
	font-weight: 800;
	margin-top: 0.5em;
	padding-bottom: 1.1vw;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 {
	background-color: #e5f9f6;
	display: grid;
	grid-template-rows: 2fr;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 3px;
	padding: 0.5vw 0.5vw;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .left,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .left,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .left {
	grid-row: 1;
	align-self: center;
	justify-self: center;
	margin: 10px auto;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .left p,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .left p,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .left p {
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	font-weight: 600;
	font-size: clamp(10px, 1.1vw, 22px);
	white-space: nowrap;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .right,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .right,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .right {
	grid-row: 2;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .right .month,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .right .month,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .right .month {
	grid-column: 1;
	padding: 0.3em 1em;
	border-radius: 0.25vw;
	color: #fff;
	font-size: clamp(10px, 1.1vw, 22px);
	max-width: 40px;
	font-weight: 600;
	white-space: nowrap;
	margin: 0 auto;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .right .total,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .right .total,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .right .total {
	grid-column: 2;
	position: relative;
	font-size: clamp(14px, 2.5vw, 34px);
	font-weight: 600;
	margin: 10px auto;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .right .total span,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .right .total span,
.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .right .total span {
	position: absolute;
	bottom: 0;
	font-size: 1vw;
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 {
	background-color: rgba(1, 196, 181, 0.2);
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_1 .right .month {
	background-color: rgba(1, 196, 181, 0.7);
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 {
	background-color: rgba(103, 180, 59, 0.2);
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_2 .right .month {
	background-color: rgba(103, 180, 59, 0.7);
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 {
	background-color: rgba(254, 94, 69, 0.2);
}

.sec_cv .wrap .form_wrap .total_payment_wrap .total_wrap_3 .right .month {
	background-color: rgba(254, 94, 69, 0.7);
}

.sec_cv .wrap .form_wrap .product_name .fit {
	color: #fe5e45;
	font-size: clamp(20px, 1.8vw, 28px);
	font-weight: 800;
	margin-top: 0.5em;
	display: none;
}

.sec_cv .wrap .form_wrap .product_name .max {
	color: #01c4b5;
	font-size: clamp(20px, 1.8vw, 28px);
	font-weight: 800;
	margin-top: 0.5em;
	display: none;
}

.sec_cv .wrap .form_wrap .product_name .active {
	display: block;
}

.blue {
	background: #01c4b5;
}

.sec_cv2 {
	position: relative;
	top: -5vw;
	margin-bottom: -5vw;
	background-position-y: 1vw;
	background: #f5f8d5 url(/images/lp7/nikukyu_BG.webp) no-repeat;
	background-size: 100vw;
	/* fadeUp */
	& .cv_topBG {
		width: 100%;
		position: relative;
		bottom: 3.5vw;
	}
	& .sec_wrap {
		padding: 0;
		position: relative;
		top: -10vw;
	}
	& .cv_animal_box {
		width: 100%;
		max-width: 472px;
		margin: auto auto -2vw;
		display: flex;
		justify-content: space-around;
		position: relative;
		top: -11vw;
		& img {
			width: 22%;
			max-width: 110px;
		}
	}
	& .fadeUp {
		animation-name: fadeUpAnime;
		animation-duration: 0.8s;
		animation-fill-mode: forwards;
		opacity: 0;
	}
}

@keyframes fadeUpAnime {
	from {
		opacity: 1;
		transform: translateY(120px);
	}
	to {
		opacity: 1;
		transform: translateY(-20px);
	}
}

.sec_cv3 {
	background: #9fca73 url(/images/lp7/nikukyu_BG.webp) no-repeat;
	background-position-y: 1vw;
	background-size: 100vw;
	@media screen and (max-width: 955px) {
		padding-bottom: 10vw;
		background-size: 100vw;
		background-position-y: 70vw;
		background: #9fca73 url(/images/lp7/nikukyu_BG2_sp.webp) no-repeat;
		top: -5vw;
		margin-bottom: -5vw;
	}
}

.sec_cv3 .cv_topBG {
	bottom: 3.1vw;
}

/* ------------------- 申し込みの流れ関連 ------------------- */

.app-flow {
	text-align: center;
	background-color: #f5f8d5;
	padding-top: 133px;
	margin-bottom: initial;
	@media screen and (max-width: 955px) {
		padding-top: initial;
	}
}

.app-flow_box_top {
	width: 100%;
	box-sizing: border-box;
	& img {
		margin: auto;
		width: 100%;
		margin: initial;
	}
}

.app-flow_inner {
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	width: 100%;
	max-width: 800px;
	/* border: purple solid 5px; */
	& h4 {
		font-size: 2vw;
		font-weight: 800;
		&.nagare_h4 {
			font-size: clamp(1.25rem, 0.888rem + 1.79vw, 2rem);
			font-weight: 700;
			margin: initial;
			margin-bottom: 27px;
		}
	}
	& p {
		font-size: clamp(11px, 1.4vw, 28px);
		font-weight: 700;
		&span {
			border-bottom: solid 2px #fe5e45;
		}
		&.webde {
			font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
			font-weight: 500;
			margin-bottom: 27px;
		}
	}
	@media screen and (max-width: 955px) {
		& h4 {
			&.nagare_h4 {
				margin-bottom: 8px;
			}
		}
	}
	& .app-flow_outer {
		font-family: "M PLUS Rounded 1c", sans-serif;
		transform: rotate(0.03deg);
		background-color: #f9ffd1;
		max-width: 100%;
		border-radius: 15px;
		margin-bottom: 90px;
		padding-top: 3vw;
		border: 2px solid #9fca73;
		& p {
			font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
			font-weight: 500;
			margin-bottom: 40px;
			line-height: 19px;
			& span {
				border-bottom: solid 2px #fe5e45;
			}
		}
		& .app-flow_box {
			display: flex;
			justify-content: space-around;
			background-color: #f9ffd1;
			width: 100%;
			margin: 0 auto 2vw;
			padding: 0 10px;
			line-height: 1.2;
			box-sizing: border-box;
			gap: 10px;
			& .app-flow_cont {
				min-width: 166px;
				display: flex;
				flex-direction: column;
				align-items: center;
				&.no1 {
					min-width: 166px;
				}
				&.no2 {
					max-width: 182px;
				}
				& p {
					font-size: 14px;
					font-weight: 400 !important;
					text-align: left;
					font-weight: 500;
					margin-bottom: 8px;
					&.num {
						font-size: 40px;
						font-weight: 500;
						color: red;
						margin-bottom: 8px;
					}
					&.small {
						width: 17vw;
						font-size: clamp(6px, 1vw, 10px);
					}
				}
				& h5 {
					font-size: 16px;
					font-weight: 500;
					line-height: 24px;
					text-align: left;
				}
				& img {
					padding: initial;
				}
			}
			& aside {
				background-color: #dedede;
				width: 2px;
				margin: 2vw 0;
				border-radius: 1px;
			}
			& img {
				width: 5vw;
				margin: 0;
				padding-bottom: 1vw;
				&.pc {
					width: 12vw;
					margin: 0 auto;
				}
			}
			& .app-flow_box_inbox {
				display: flex;
				& p {
					font-size: 24px;
					font-weight: 500;
					color: #fe5e45;
					align-self: center;
					margin: 0 5px;
					padding-top: 4em;
					@media screen and (max-width: 955px) {
						padding-top: initial;
					}
				}
			}
		}
		@media screen and (max-width: 955px) {
			background-color: #fff;
			margin: 0 16px;
			margin-bottom: 24px;
			padding: 32px;
			& .app-flow_box {
				flex-direction: column;
				justify-content: space-around;
				align-items: center;
				background-color: #fff;
				& .app-flow_cont {
					width: 100%;
					max-width: 480px;
					flex-direction: row;
					justify-content: flex-start;
					align-items: flex-start;
					gap: 30px;
					border-bottom: #d3d3d3 solid 3px;
					margin-bottom: 10px;
					padding-bottom: 10px;
					&.no1 {
						max-width: 480px;
					}
					&.no2 {
						max-width: 480px;
					}
					& p {
						&.num {
							padding-top: 0.2em;
						}
					}
					& .app-flow-txt {
						display: flex;
						flex-direction: column;
						& p.notes {
							font-weight: 400;
						}
					}
				}
				& .app-flow_box_inbox {
					flex-direction: column;
					& p.sp {
						text-align: center;
						position: initial;
						margin-bottom: 8px;
						padding-right: 1em;
					}
				}
			}
		}
	}

	& .app-flow_step_box {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: auto auto 3em;
		& img {
			width: 2vw;
			height: 3.5vw;
			margin: 0 0.5vw;
		}
		& .step_box {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			gap: 10px;
			background-color: #f9ffd1;
			border: 2px solid #9fca73;
			width: 100%;
			max-width: 190px;
			height: 236px;
			border-radius: 25px;
			box-sizing: border-box;
			& h5 {
				display: flex;
				flex-direction: column;
				font-size: clamp(1.5rem, 0.836rem + 3.28vw, 2.875rem);
				font-weight: 800;
				& span {
					font-size: clamp(0.688rem, 0.265rem + 2.09vw, 1.563rem);
					font-weight: 500;
					display: inline-block;
				}
			}
			& img {
				width: 100%;
				height: 100%;
				max-width: 56px;
				max-height: 56px;
			}
			& .tex-area {
				height: 40px;
				display: flex;
				justify-content: center;
				align-items: center;
				& p {
					font-size: 16px;
					font-weight: 500;
					line-height: 21px;
				}
			}
			& .step4 {
				& img {
					padding-top: 7vw;
				}
			}
		}
		@media screen and (max-width: 955px) {
			background-color: #fff;
			border-radius: 10px;
			margin: 0 16px;
			padding: 23px 27px;
			flex-direction: column;
			align-items: center;
			box-sizing: border-box;
			& .step_box {
				max-width: 480px;
				height: auto;
				flex-direction: row;
				justify-content: flex-start;
				align-items: center;
				gap: 6px;
				background-color: initial;
				border: none;
				margin-bottom: 5px;
				& h5 {
					align-self: flex-start;
				}
				& img {
					width: 37px;
					height: 37px;
					padding: initial;
				}
				& .tex-area {
					& p {
						text-align: left;
					}
				}
			}
			& img.sp {
				height: 5vw;
				width: auto;
				margin: 8px 0;
				transform: rotate(90deg);
			}
		}
	}

	& .sec4 {
		width: 100%;
		margin: auto;
		& .sec4_wrap {
			margin-bottom: 36px;
			& p {
				font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem) !important;
				font-weight: 400;
				line-height: 27px;
				text-align: left;
				margin-bottom: 33px;
				& span {
					font-weight: 600;
					border: none;
				}
			}
			& img {
				width: 100%;
				/* max-width: 1500px; */
				margin: 2vw 0;
			}
			& ul {
				font-size: clamp(8px, 1.1vw, 12px);
				text-align: left;
				line-height: 1.3em;
				padding-left: 2em;
				text-indent: -2em;
			}
		}
		@media screen and (max-width: 955px) {
			& .sec-h3 {
				border-radius: initial;
			}
			& .sec4_wrap {
				border-radius: 5px;
				margin: 0 16px;
				& .sec4-img-sp {
					background-color: #fff;
					border-radius: 5px;
					margin-bottom: 16px;
					padding: 24px;
					box-sizing: border-box;
				}
				& ul {
					margin-bottom: 24px;
				}
			}
		}
	}
	& .sec5 {
		width: 100%;
		margin: auto;
	}
}

/* ------------------- お客様の声 関連 ------------------- */
.voices-qa {
	& .sec-wrap {
		& h3 {
			margin-bottom: 36px;
		}
		& .voice-box-wrap {
			width: 100%;
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: space-between;
			margin-bottom: 80px;
			& .voice-box {
				width: 436px;
				height: 250px;
				border: #f05400 solid 2px;
				border-radius: 15px;
				margin-bottom: 40px;
				display: flex;
				align-items: center;
				gap: 24px;
				padding: 0 32px;
				box-sizing: border-box;
				& .face-icon {
					width: clamp(3.125rem, 2.22rem + 4.47vw, 5rem);
					height: clamp(3.125rem, 2.22rem + 4.47vw, 5rem);
					border-radius: 50%;
					display: block;
					& img {
						width: 100%;
						height: 100%;
					}
				}
				& .voice {
					width: 268px;
					& p {
						font-size: clamp(1rem, 0.879rem + 0.6vw, 1.25rem);
						font-weight: 400;
						line-height: 28px;
						& span {
							color: #f05400;
						}
					}
				}
			}
			@media screen and (max-width: 955px) {
				flex-direction: column;
				flex-wrap: nowrap;
				align-items: center;
				& .voice-box {
					width: 100%;
					max-width: 436px;
					height: auto;
					/* min-height: 250px; */
					margin-bottom: 32px;
					padding: 32px;
					&:last-child {
						margin-bottom: initial;
					}
				}
			}
		}
	}
	@media screen and (max-width: 955px) {
		margin-bottom: 24px;
	}
}
/* ------------------- Q & A 関連 ------------------- */

.uk-accordion-default .uk-accordion-item.uk-open .faq-accordion-title::after,
.uk-accordion-default .uk-accordion-item.uk-open .accordion-title2::after {
	top: 43%;
	transform: rotate(-45deg);
}

/* uk-accordionのデフォルトの設定無効化 */
.faq-accordion-title.uk-accordion-title {
	&::before {
		background-image: none;
	}
}

li.uk-open {
	& .faq-accordion-title.uk-accordion-title {
		&::before {
			background-image: none;
		}
	}
}

.uk-accordion-content.faq-accordion-content {
	margin-top: 0px;
}

.uk-accordion-default {
	width: 100%;
	max-width: 900px;
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
}

.faq-accordion-item {
	margin: 1.5vw 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	margin: initial;
	& a {
		text-decoration: none;
	}
	&.uk-open {
		& .faq-accordion-title {
			border-radius: 15px 15px 0 0;
			border-bottom: dotted 3px #67b43b;
			&::after {
				top: 43%;
				transform: rotate(-45deg);
			}
		}
	}
}

.faq-accordion-title {
	display: block;
	width: 100%;
	padding: 18px 0 18px 29px;
	margin: auto;
	background: #fff;
	font: inherit;
	letter-spacing: inherit;
	-webkit-text-size-adjust: 100%;
	line-height: 1.4;
	font-size: clamp(0.875rem, 0.694rem + 0.89vw, 1.25rem);
	font-weight: 500;
	text-align: left;
	border-radius: 15px;
	border: solid 2px #67b43b;
	cursor: pointer;
	box-sizing: border-box;
	position: relative;
	& span {
		color: #fe5e45;
		font-weight: 600;
	}
	&:after {
		border-right: solid 3px #fe5e45;
		border-top: solid 3px #fe5e45;
		content: "";
		display: block;
		width: 15px;
		height: 15px;
		position: absolute;
		right: 2vw;
		top: 35%;
		transform: rotate(135deg);
		transition:
			transform 0.3s ease-in-out,
			top 0.3s ease-in-out;
	}
	@media screen and (max-width: 955px) {
		width: 100%;
		padding: 16px 32px 16px 50px;
		text-indent: -2.3em;
		line-height: 1.2em;
		letter-spacing: 0;
		&:after {
			width: 10px;
			height: 10px;
			right: 5vw;
		}
	}
}

.uk-open {
	/* & .faq-accordion-title {
		&::after {
			top: 43%;
			transform: rotate(-45deg);
		}
	} */
	& .accordion-title2 {
		&::after {
			top: 43%;
			transform: rotate(-45deg);
		}
	}
}

.faq-accordion-content {
	margin: auto;
	width: 100%;
	/* max-width: 1400px; */
	background: #fff;
	padding: 24px;
	padding-left: 42px;
	border-bottom: 2px solid #67b43b;
	border-left: 2px solid #67b43b;
	border-right: 2px solid #67b43b;
	border-radius: 0 0 15px 15px;
	box-sizing: border-box;
	& p {
		& span {
			font-weight: 700;
		}
		&.A_midashi {
			font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
			font-weight: 400;
			line-height: 1.5;
			padding: 16px 23px;
			text-indent: -1.7em;
			& a {
				color: #3d3d3d;
				text-decoration: underline !important;
			}
			& span {
				font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
				color: #01c4b5;
				font-weight: 800;
				/* margin-right: 0.8em; */
			}
		}
	}
	& ul {
		& li {
			text-indent: -1vw;
			margin-left: 2em;
			line-height: 1.5;
			font-size: clamp(10px, 1.2vw, 20px);
		}
	}
	& .Q4_box {
		display: flex;
		align-items: center;
		&.A_midashi {
			margin-bottom: 0;
			margin-left: 2em;
		}
		& h6 {
			font-size: 1.3vw;
			padding: 0.5em 1em;
			background: #01c4b5;
			border-radius: 2em;
			color: #fff;
			font-weight: 700;
			margin-left: 0;
			margin-top: 0;
		}
	}
	& .Q4_A {
		font-size: 1.5vw;
		margin: 0.5em 0 0.5em 2em;
	}
	& h6 {
		display: inline-block;
		font-size: 1.3vw;
		padding: 0.5em 1em;
		background: #707070;
		border-radius: 2em;
		color: #fff;
		font-weight: 700;
		margin-left: 2em;
		margin-top: 1em;
	}
	@media screen and (max-width: 955px) {
		margin: auto;
		width: 100%;
		padding: 1em;
	}
}

/* LP7 流用箇所 */
.sec7 {
	font-family: "M PLUS Rounded 1c", sans-serif;
	transform: rotate(0.03deg);
	margin: auto;
	background: #f5f8d5;
	padding: 3vw 0 15vw 0;
	/* border: green solid 1px; */
	& h3 {
		width: 100%;
		max-width: 900px;
		font-size: 2vw;
		font-weight: 700;
		color: #fff;
		background: #67b43b;
		margin: auto;
		padding: 0.5em 0;
		border-radius: 15px 15px 0 0;
		text-align: center;
	}
	& .sec7_box {
		margin: auto;
		max-width: 900px;
		background: #fff;
		padding: 1vw 3vw;
		border-bottom: 2px solid #dedede;
		border-left: 2px solid #dedede;
		border-right: 2px solid #dedede;
		border-radius: 0 0 16px 16px;
		padding: 36px 58px;
		box-sizing: border-box;
		& p {
			font-size: clamp(0.75rem, 0.629rem + 0.6vw, 1rem);
			font-weight: 300;
			line-height: 21px;
		}
		@media screen and (max-width: 955px) {
			padding: 18px 21px;
		}
	}
	@media screen and (max-width: 955px) {
		& h3 {
			font-size: clamp(1.125rem, 0.702rem + 2.09vw, 2rem);
			max-width: 100%;
			height: 58px;
			border-radius: 0;
			margin-bottom: 26px;
			padding: initial;
			display: flex;
			justify-content: center;
			align-items: center;
		}
		& .sec7_box {
			border: #dedede solid 2px;
			border-radius: 16px;
		}
	}
}

.sec7 .sec7_box .right {
	text-align: right;
}

footer {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	height: 8vw;
	& p {
		font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem) !important;
	}
	@media screen and (max-width: 955px) {
		height: 18vw !important;
		& img {
			width: 25vw !important;
		}
	}
}

footer img {
	width: 10vw;
}

footer p {
	font-size: 1.2vw;
	margin-top: 1vw;
}

/* -------------------- フローティング btn -------------------- */
.sec_floating {
	display: none;
	margin-bottom: initial;
	position: fixed;
	bottom: 0;
	width: 100%;
	padding: 0 16px;
	z-index: 10;
	box-sizing: border-box;
	& .floating {
		width: 59vw;
		display: flex;
		justify-content: center;
		text-align: center;
		padding: 0.5em;
		align-items: center;
		gap: 26px;
		& a {
			text-decoration: none;
		}
		@media screen and (max-width: 955px) {
			width: initial;
			padding: initial;
			gap: 8px;
		}
	}
}

/* -------------------- CVボタン -------------------- */
a {
	/* display: block; */
	&.sec_floating_btn {
		width: 100%;
		height: auto;
		max-width: 427px;
		min-width: 0;
		color: #fff;
		border: #fff solid 3px;
		border-radius: 5px;
		box-sizing: border-box;
		box-shadow: 0 0 10px rgba(141, 141, 141, 0.5);
		transition: color 0.3s ease 0.3s;
		& p {
			font-family: "M PLUS Rounded 1c", sans-serif;
			transform: rotate(0.03deg);
			font-size: clamp(0.875rem, 0.573rem + 1.49vw, 1.5rem);
			font-weight: 700;
			text-align: center;
		}
		&.sec_fit {
			background: linear-gradient(
				180deg,
				#82c512 0%,
				#82c512 50%,
				#71b400 50%,
				#71b400 100%
			);

			&:hover {
				background: linear-gradient(
					180deg,
					#71b400 0%,
					#71b400 50%,
					#82c512 50%,
					#82c512 100%
				);
			}
		}
		&.sec_max {
			background: linear-gradient(
				180deg,
				#ff3988 0%,
				#ff3988 50%,
				#f11a70 50%,
				#f11a70 100%
			);

			&:hover {
				background: linear-gradient(
					180deg,
					#f11a70 0%,
					#f11a70 50%,
					#ff3988 50%,
					#ff3988 100%
				);
			}
		}
	}
	@media screen and (max-width: 955px) {
		width: 100%;
	}
	& p {
		color: #fff;
		padding: 8px 0;
		& span {
			font-size: clamp(16px, 1.7vw, 22px);
		}
	}
}

/* -------------------- CTAボタン -------------------- */
a {
	&.sec_cta_btn {
		width: 100%;
		height: auto;
		max-width: 472px;
		min-width: 0;
		color: #fff;
		border-radius: 5px;
		box-sizing: border-box;
		/*
		box-shadow: 0 0 10px rgba(141, 141, 141, 0.5);
		transition: color 0.3s ease .3s;
		*/
		& p {
			font-family: "M PLUS Rounded 1c", sans-serif;
			transform: rotate(0.03deg);
			font-size: clamp(0.875rem, 0.573rem + 1.49vw, 1.5rem);
			font-weight: 700;
			text-align: center;
		}
		&.sec_fit {
			/* background-color: #FE5E45; */
		}
		&.sec_max {
			/* background-color: #00C4B6; */
		}
		@media screen and (max-width: 955px) {
			width: 100%;
			max-width: unset;
		}
		& p {
			color: #fff;
			padding: 8px 0;
			& span {
				font-size: clamp(16px, 1.7vw, 22px);
			}
		}
	}
}

.uk-accordion-content a {
	text-decoration: none !important;
}

.accordion {
	width: 100%;
	max-width: 100%;
	padding: 0 16px;
	box-sizing: border-box;
	@media screen and (max-width: 955px) {
		margin-bottom: 24px;
	}
	& ul.accordion-container {
		& li.accordion-item {
			& a.accordion-title {
				font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
				font-weight: 600;
				text-align: center;
				text-decoration: none;
				color: #fff;
				height: 60px;
				display: flex;
				align-items: center;
				justify-content: center;
				padding: 8px 0;
				background: linear-gradient(
					180deg,
					#363636 0%,
					#363636 50%,
					#1e1a19 50%,
					#1e1a19 100%
				);
				border-radius: 15px;
				cursor: pointer;
				box-sizing: border-box;
				position: relative;
				&:before {
					content: "";
					content: "";
					position: absolute;
					width: 29px;
					height: 29px;
					right: 20px;
					top: 25%;
					border-radius: 50%;
					background: #fff;
				}
				&:after {
					border-right: solid 3px #363636;
					border-top: solid 3px #363636;
					content: "";
					display: block;
					width: 10px;
					height: 10px;
					position: absolute;
					right: 28px;
					top: 35%;
					transform: rotate(135deg);
					transition:
						transform 0.3s ease-in-out,
						top 0.3s ease-in-out;
				}
				&:hover {
					text-decoration: none;
				}
				/* &.open {
					&:after {
						top: 43%;
						transform: rotate(-45deg);
					}
				} */
				/* &.open_accordion-title {
					font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
					border-radius: 15px 15px 0 0;
					margin-bottom: 0;
					height: 60px;
					display: flex;
					align-items: center;
					justify-content: center;
					@media screen and (max-width: 955px) {
						height: 60px;
					}
				} */
				@media screen and (max-width: 955px) {
					border-radius: 10px;
					&:before {
						width: 24px;
						height: 24px;
						top: 31%;
					}
					&:after {
						width: 8px;
						height: 8px;
						position: absolute;
						right: 27px;
						top: 25px !important;
					}
				}
			}
			& button.accordion-title {
				font: inherit;
				letter-spacing: inherit;
				-webkit-text-size-adjust: 100%;
				font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
				font-weight: 600;
				text-align: center;
				text-decoration: none;
				color: #fff;
				width: 100%;
				height: 60px;
				display: flex;
				align-items: center;
				justify-content: center;
				padding: 8px 0;
				background: linear-gradient(
					180deg,
					#363636 0%,
					#363636 50%,
					#1e1a19 50%,
					#1e1a19 100%
				);
				border-radius: 15px;
				cursor: pointer;
				box-sizing: border-box;
				position: relative;
				&:before {
					content: "";
					content: "";
					position: absolute;
					width: 29px;
					height: 29px;
					right: 20px;
					top: 25%;
					border-radius: 50%;
					background: #fff;
				}
				&:after {
					border-right: solid 3px #363636;
					border-top: solid 3px #363636;
					content: "";
					display: block;
					width: 10px;
					height: 10px;
					position: absolute;
					right: 28px;
					top: 35%;
					transform: rotate(135deg);
					transition:
						transform 0.3s ease-in-out,
						top 0.3s ease-in-out;
				}
				&:hover {
					text-decoration: none;
				}
				/* &.open {
					&:after {
						top: 43%;
						transform: rotate(-45deg);
					}
				} */
				/* &.open_accordion-title {
					font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
					border-radius: 15px 15px 0 0;
					margin-bottom: 0;
					height: 60px;
					display: flex;
					align-items: center;
					justify-content: center;
					@media screen and (max-width: 955px) {
						height: 60px;
					}
				} */
				@media screen and (max-width: 955px) {
					border-radius: 10px;
					&:before {
						width: 24px;
						height: 24px;
						top: 31%;
					}
					&:after {
						width: 8px;
						height: 8px;
						position: absolute;
						right: 27px;
						top: 25px !important;
					}
				}
			}
			&.uk-open {
				& a.accordion-title {
					font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
					border-radius: 15px 15px 0 0;
					margin-bottom: 0;
					height: 60px;
					display: flex;
					align-items: center;
					justify-content: center;
					@media screen and (max-width: 955px) {
						height: 60px;
					}
					&:after {
						top: 43%;
						transform: rotate(-45deg);
					}
				}
				& button.accordion-title {
					font-size: clamp(1.125rem, 0.823rem + 1.49vw, 1.75rem);
					border-radius: 15px 15px 0 0;
					margin-bottom: 0;
					height: 60px;
					display: flex;
					align-items: center;
					justify-content: center;
					@media screen and (max-width: 955px) {
						height: 60px;
					}
					&:after {
						top: 43%;
						transform: rotate(-45deg);
					}
				}
			}
		}
	}
}

.accordion-content {
	&.uk-accordion-content {
		margin-top: initial;
	}
	/* display: none; */
	background: #fff;
	padding: 10px 10px 40px 10px;
	border-bottom: 2px solid #363636;
	border-left: 2px solid #363636;
	border-right: 2px solid #363636;
	border-radius: 0 0 20px 20px;
	& p {
		font-size: clamp(8px, 1.2vw, 18px);
	}
	& ul {
		font-size: clamp(8px, 1.1vw, 12px);
		line-height: 1.5;
		margin-left: clamp(8px, 1.4vw, 24px);
		margin-top: 0.5vw;
	}
	& h4 {
		font-size: clamp(0.875rem, 0.452rem + 2.09vw, 1.75rem);
		margin: 27px 0;
		@media screen and (max-width: 955px) {
			margin-bottom: 10px;
		}
	}
	& h5 {
		font-size: 26px;
		font-weight: 700;
		background: #363636;
		padding: 0.5em;
		margin: auto;
		border-radius: 15px 15px 0 0;
		color: #fff;
	}
	& .small {
		font-size: 1.2vw;
		text-align: right;
		margin-right: 2vw;
		font-weight: 400;
		margin-bottom: 2em;
		&:before {
			content: "";
			display: inline-block;
			width: 3em;
			height: 1em;
			background: #ffe4ce;
			border: solid 2px #dedede;
			vertical-align: middle;
			margin-right: 0.5em;
		}
	}
	& .sec5_box {
		background-color: #f5f8d5;
		border-radius: 0 0 15px 15px;
		padding: 32px 40px 26px 40px;
		box-sizing: border-box;
		margin-bottom: 26px;
		&:last-child {
			margin-bottom: initial;
		}
		& h6 {
			width: 243px;
			font-size: 21px;
			font-weight: 700;
			color: #fff;
			background: #363636;
			border-radius: 2em;
			padding: 0.5em 1em;
			margin: 0 auto;
			margin-bottom: 32px;
			box-sizing: border-box;
		}
		& p {
			font-size: clamp(0.75rem, 0.629rem + 0.6vw, 1rem);
			font-weight: 400;
			text-align: left;
			line-height: 1.5em;
		}
		& ul {
			text-align: left;
			line-height: 1.3em;
			margin-top: 0.5em;
			margin-left: 0;
			padding-left: 1em;
			text-indent: -1em;
			& li {
				font-size: 12px;
				margin-bottom: initial;
			}
		}
		@media screen and (max-width: 955px) {
			padding: 32px 12px 26px 12px;
		}
		& .sec5_souhu_box {
			display: flex;
			justify-content: space-around;
			background: #fff;
			padding: 1em;
			margin: 2em 0 0 0;
			line-height: 1.5em;
			& .bold {
				font-weight: 700;
				padding-right: 1em;
			}
			& div {
				display: flex;
				justify-content: flex-end;
				gap: 10px;
			}
			@media screen and (max-width: 955px) {
				flex-direction: column;
				& p {
					margin-bottom: 8px;
				}
				& div {
					flex-direction: column;
					gap: initial;
					& p {
						&:first-child {
							margin-bottom: initial;
						}
					}
				}
			}
		}
		& .sec5_box_inbox {
			margin: 2em 0;
			border-bottom: 2px dotted #363636;
			padding-bottom: 1em;
			& .anical_app_box {
				display: flex;
				justify-content: center;
				align-items: baseline;
				gap: 45px;
				margin-bottom: 31px;
				& .anical-icon {
					& p {
						font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
						font-weight: 600;
						text-align: center;
						margin-bottom: 5px;
					}
					& img {
						max-height: 145px;
					}
				}
				& .anical-qr {
					& p {
						font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem);
						font-weight: 600;
						margin-bottom: 5px;
					}
					& .QR_flex {
						display: flex;
						justify-content: space-between;
						& a {
							& img {
								height: 100%;
								max-height: 145px;
							}
						}
					}
				}
				@media screen and (max-width: 955px) {
					gap: 16px;
				}
			}
			& .anical_QR_box {
				display: flex;
				justify-content: space-between;
				align-items: center;
				& .anical_p {
					font-size: clamp(0.75rem, 0.629rem + 0.6vw, 1rem);
					font-weight: 400;
					text-align: left;
					line-height: 1.5;
					margin-bottom: 24px;
				}
			}
			& .anicai_ul_box {
				display: flex;
				justify-content: space-between;
				& ul {
					text-align: left;
					line-height: 1.3em;
					margin-top: 0.5em;
					& li {
						font-size: 12px;
						margin-bottom: initial;
					}
				}
				& .anical_QR {
					text-align: center;
					& a {
						& p {
							font-size: 16px;
							font-weight: 500;
							text-align: center;
							text-decoration: none;
							background: #67b43b;
							border-radius: 16px;
							padding: 0 15px;
							margin-bottom: 5px;
							color: #fff;
						}
					}
					img {
						width: 100%;
						max-width: 109px;
						margin: 0;
					}
				}
			}
		}
	}
	& table {
		width: 100%;
		max-width: 742px;
		margin: auto;
		margin-bottom: 24px;
		border-collapse: separate;
		border: 1px solid #707070;
		border-radius: 20px;
		& tbody {
			& tr {
				& .maru {
					font-size: 3vw;
					font-weight: 700;
					color: #67b43b;
				}
				&:last-child {
					& td {
						border-bottom: none;
					}
				}
				& th {
					font-size: clamp(0.75rem, 0.509rem + 1.19vw, 1.25rem) !important;
					font-weight: 700;
				}
				& th,
				td {
					margin: auto;
					border-right: 1px solid #707070;
					border-bottom: 1px solid #707070;
					border-collapse: separate;
					font-size: clamp(0.75rem, 0.69rem + 0.3vw, 0.875rem);
					line-height: 1.4;
					text-align: center;
					padding: 0.5em;
					width: 10vw;
					vertical-align: middle;
					&:first-child {
						text-align: left;
						width: 35vw;
						padding: 10px 16px;
					}
					&:last-child {
						border-right: none;
					}
					& ul {
						& li {
							font-size: 12px;
							margin-bottom: initial;
						}
					}
				}
			}
		}
	}
}

.anical_dl {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 18px;
	&::after {
		transform: scale(-1, 1);
	}
	&::before,
	&::after {
		content: "";
		display: inline-block;
		width: 2.5vw;
		height: 2.5vw;
		background: url(/images/lp7/line.webp) no-repeat;
		background-size: contain;
		vertical-align: middle;
	}
}

.top_c {
	font-size: 0.5em;
	vertical-align: top;
}

.max_top_c .top_c {
	font-size: 0.5em;
	vertical-align: top;
	background-color: transparent;
	color: #000;
}

/*# sourceMappingURL=style.css.map */
