﻿@media screen and (min-width: 897px) {
	.u-hidden--pc {
		display: none !important;
	}
}

@media screen and (max-width: 896px) {
	.u-hidden--sp {
		display: none !important;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd,
ul,
ol {
	margin: 0;
	padding: 0;
}

ul,
ol {
	list-style: none;
}

html:focus-within {
	scroll-behavior: smooth;
}

img,
picture {
	max-width: 100%;
}

em {
	font-style: normal;
}

input[type="submit"] {
	border: none;
	cursor: pointer !important;
}

button {
	padding: 0;
	font-size: 1.6rem;
	font-family: "Noto Sans JP", sans-serif;
	background: none;
	border: none;
	cursor: pointer;
}

button:focus:not(.focus-visible) {
	outline: none;
}

* {
	box-sizing: border-box;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}

*::before,
*::after {
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
}

body {
	padding-top: 8rem;
	overflow-x: hidden;
	color: var(--black);
	font-size: 1.6rem;
	/*font-family: "Noto Sans JP", sans-serif;*/
	line-height: 1.75;
	/*word-break: break-word;*/
	/*overflow-wrap: break-word*/
}
@media screen and (max-width: 896px) {
	body {
		padding-top: 0;
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 370px) {
	body {
		font-size: 1.2rem;
	}
}

body.is-fixed {
	margin-bottom: 145px;
}

@media screen and (max-width: 896px) {
	body.is-fixed {
		margin-top: 60px;
		margin-bottom: 32vw;
	}

	body.is-fixed.lp {
		margin-bottom: 0;
	}
}

img {
	max-width: 100%;
	height: auto;
	line-height: 1;
	vertical-align: middle;
	transition: opacity 0.2s;
}

a {
	color: inherit;
	text-decoration: none;
	transition: 0.2s opacity;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

figure {
	margin: 0;
}

picture {
	display: block;
}

.container {
	position: relative;
	max-width: 1040px;
	margin: 0 auto;
	padding: 0 20px;
}

.container::after {
	display: table;
	clear: both;
	content: "";
}

.clearfix::after {
	display: table;
	clear: both;
	content: "";
}

input[type="text"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="number"],
select,
textarea {
	width: 100%;
	margin: 0;
	padding: 10px 20px;
	font-size: 2.4rem;
	font-family: inherit;
	line-height: inherit;
	background-color: #fff;
	border: 4px solid #ffb3cc;
	border-radius: 10px;
	appearance: none;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
select:focus,
textarea:focus {
	outline: none;
}

[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="text"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="tel"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="url"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="email"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="password"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] input[type="number"]:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] select:focus,
[data-whatintent="keyboard"][data-whatinput="keyboard"] textarea:focus {
	border-color: #0057b8 !important;
}

@media screen and (max-width: 896px) {
	input[type="text"],
	input[type="tel"],
	input[type="url"],
	input[type="email"],
	input[type="password"],
	input[type="number"],
	select,
	textarea {
		font-size: 1.6rem;
		border-width: 3px;
	}
}

select {
	color: #000;
	padding-right: 55px;
	background-image: url(../img/icon_select.svg);
	background-repeat: no-repeat;
	background-position: center right 26px;
	background-size: 25px;
}

select::-ms-expand {
	display: none;
}

@media screen and (max-width: 896px) {
	select {
		background-position: center right 18px;
		background-size: 14px;
	}
}

textarea {
	line-height: 1.3;
	resize: none;
}

.color-blue {
	color: #0057b8;
}

.text-link {
	color: #000 !important;
	text-decoration: underline;
}

.text-link:hover {
	color: #000 !important;
}

.header {
	background: #fff;
}

.header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 90px;
}

@media screen and (max-width: 896px) {
	.header__inner {
		height: 60px;
	}
}

@media screen and (max-width: 896px) {
	body.is-fixed .header {
		position: fixed;
		top: 0;
		z-index: 2;
		width: 100%;
	}
}

.header__logo {
	width: 208px;
}

@media screen and (max-width: 896px) {
	.header__logo {
		width: 136px;
	}
}

.header__logoLink {
	display: block;
}

@media screen and (min-width: 1025px) {
	.header__logoLink {
		cursor: pointer;
		transition: 0.2s opacity;
	}

	.header__logoLink:hover {
		opacity: 0.7;
	}

	.header__logoLink:hover img {
		opacity: 1;
	}
}

.header__tel {
	width: 210px;
}

.header__btn {
	display: block;
	padding: 0.7em 2em 0.7em 1em;
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
	background:
		url(../img/header_btn_arrow.svg) right 10px center/10px auto no-repeat,
		#0057b8;
	border-radius: 10px;
	box-shadow: 0 2px 0 #000;
}

@media screen and (min-width: 1025px) {
	.header__btn {
		cursor: pointer;
		transition: 0.2s opacity;
	}

	.header__btn:hover {
		opacity: 0.7;
	}

	.header__btn:hover img {
		opacity: 1;
	}
}

@media screen and (max-width: 896px) {
	.header__btn {
		font-size: 1.2rem;
	}
}

.header__info {
	display: flex;
	align-items: center;
}

.header__contact {
	margin-left: 1em;
	padding: 0.3em 1em 0.3em 2.3em;
	color: #0057b8;
	font-weight: bold;
	font-size: 1.8rem;
	background: url(../img/icon_contact.png) 0.5em center no-repeat;
	border: 2px solid #0057b8;
	border-radius: 5px;
}

@media screen and (min-width: 1025px) {
	.header__contact {
		cursor: pointer;
		transition: 0.2s opacity;
	}

	.header__contact:hover {
		opacity: 0.7;
	}

	.header__contact:hover img {
		opacity: 1;
	}
}

@media screen and (max-width: 896px) {
	.header__contact {
		font-size: 3.733vw;
	}
}

.header-contact__btn {
	padding: 0.3em 1.5em;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
	background: #3f404f;
	border-radius: 100px;
}

@media screen and (max-width: 896px) {
	.header-contact__btn {
		font-size: 3.733vw;
	}
}

.follow-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 145px;
	background: rgba(0, 0, 0, 0.8);
	opacity: 0;
	transition: all 0.3s linear;
}

@media screen and (max-width: 896px) {
	.follow-footer {
		height: 32vw;
	}

	.lp .follow-footer {
		display: none;
	}
}

.follow-footer.is-show {
	z-index: 5;
	opacity: 1;
}

.follow-footer__inner {
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.follow-footer__txt {
	margin-bottom: 0.4em;
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	text-align: center;
}

@media screen and (max-width: 896px) {
	.follow-footer__txt {
		font-size: 4.8vw;
	}
}

.follow-footer__btns {
	display: flex;
	align-items: center;
	justify-content: center;
}

.follow-footer__btn {
	width: 50%;
	max-width: 400px;
}

@media screen and (max-width: 896px) {
	.follow-footer__btn {
		width: 95%;
	}
}

.follow-footer__btn:last-child {
	margin-left: 20px;
}

@media screen and (max-width: 896px) {
	.follow-footer .p-home__btn {
		width: calc(100vw - 50px);
		height: 60px;
		margin: 0 auto 1vw;
		background: #b1145a;
		box-shadow: 0 6px #73003c;
	}
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -99;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	transition: all 0.3s linear;
}

.modal.is-show {
	z-index: 99;
	opacity: 1;
}

.modal__cnt {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 500px;
	transform: translate(-50%, -50%);
}

@media screen and (max-width: 896px) {
	.modal__cnt {
		width: 90%;
	}
}

.modal__body {
	padding: 30px;
	text-align: center;
	background: #fff;
}

.modal__lineBtn {
	display: block;
	margin-bottom: 15px;
}

.modal__lineBtn > img {
	max-width: 150px;
}

.c-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 478px;
	height: 75px;
	margin: 0 auto;
	overflow: hidden;
	color: #fff880;
	font-weight: bold;
	font-size: 3.1rem;
	background-color: var(--color-tertiary);
	border-radius: 9px;
	box-shadow: 0 6px #c1272d;
}

@media screen and (min-width: 897px) {
	.c-btn:hover {
		box-shadow: 0 3px #c1272d;
		transform: translateY(3px);
	}
}

@media screen and (max-width: 896px) {
	.c-btn {
		height: 65px;
		font-size: 2.2rem;
		background-size: 10px;
	}
}

.c-btn--hasArrow {
	padding-right: 30px;
	background-image: url(../img/icon_btn_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 14px;
}

@media screen and (max-width: 896px) {
	.c-btn--hasArrow {
		background-position: right 15px center;
		background-size: 10px;
	}
}

.c-btn span:first-child:not(:last-child) {
	display: flex;
	align-items: center;
	align-self: stretch;
	justify-content: center;
	width: 3em;
	color: #fff;
	background: #dd575d;
}

.c-btn span:last-child:not(:first-child) {
	margin: 0 auto;
}

.c-btn--blue {
	background-color: #0057b8;
	box-shadow: 0 6px #00336c;
}

.c-btn--blue:hover {
	box-shadow: 0 3px #00336c;
	transform: translateY(3px);
}

.c-btn--blue span:first-child:not(:last-child) {
	background: #067bff;
}

.c-btnBar {
	display: flex;
	align-items: center;
	justify-content: center;
}

.c-btnBar > a {
	width: 40%;
}

@media screen and (min-width: 1025px) {
	.c-btnBar > a {
		cursor: pointer;
		transition: 0.2s opacity;
	}

	.c-btnBar > a:hover {
		opacity: 0.7;
	}

	.c-btnBar > a:hover img {
		opacity: 1;
	}
}

.c-btnBar > a:last-child {
	margin-left: 20px;
}

@media screen and (max-width: 896px) {
	.c-btnBar {
		margin: 0 -20px;
	}

	.c-btnBar .c-btn {
		width: 48%;
		height: 45px;
		font-size: 1.2rem;
	}
}

.c-form {
	padding: 30px 15px;
	background: #fff0f5;
	border: 3px solid #ffb3cc;
	border-radius: 10px;
}

@media screen and (max-width: 896px) {
	.c-form {
		border-width: 6px;
		border-right: none;
		border-left: none;
		border-radius: 0;
	}
}

.c-form__ttl {
	position: relative;
	margin-bottom: 0;
	text-align: center;
}

@media screen and (max-width: 896px) {
	.c-form__ttl {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 0 10px -10px;
	}
}

.c-form__ttl img:last-child {
	max-width: 270px;
}

@media screen and (max-width: 896px) {
	.c-form__ttl img:last-child {
		width: 75%;
	}
}

.c-form__arrow {
	display: block;
	width: 60%;
	margin: 10px auto;
}

.c-form__list {
	margin-bottom: 40px;
}

.c-form__item:not(:last-of-type) {
	margin-bottom: 15px;
}

.c-form__itemField {
	display: flex;
	border: 4px solid var(--color-primary);
	border-radius: 10px;
}

.c-form__itemField.is-active {
	animation: lpFormBlink 1s infinite;
}

.c-form__itemCaption {
	margin-top: 0.5em;
	font-size: 1.1rem;
	line-height: 1.5;
}

.c-form__itemTtl {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	color: #fff;
	font-weight: bold;
	font-size: 2.6rem;
	line-height: 1.2;
	background: var(--color-primary);
	border-radius: 6px 0 0 6px;
}

.c-form__itemCnt {
	position: relative;
	flex: 1;
}

.c-form__selectWrap {
	position: relative;
}

.c-form__selectWrap::after {
	position: absolute;
	top: 50%;
	right: 55px;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	content: "";
}

.c-form__selectWrap.is-valid::after {
	background: url(../img/icon_valid.svg) no-repeat center/contain;
}

.c-form__selectWrap.is-invalid::after {
	background: url(../img/icon_invalid.svg) no-repeat center/contain;
}

.c-form__selectWrap.is-invalid select {
	background-color: #fbecec;
}

.c-form__selectWrap select {
	padding-left: 10px;
	font-size: 2rem;
	background-position: right 20px center;
	background-size: 18px;
	border: none;
}

.c-form__inputWrap {
	position: relative;
}

.c-form__inputWrap::after {
	position: absolute;
	top: 50%;
	right: 18px;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	content: "";
}

.c-form__inputWrap.is-valid::after {
	background: url(../img/icon_valid.svg) no-repeat center/contain;
}

.c-form__inputWrap.is-invalid::after {
	background: url(../img/icon_invalid.svg) no-repeat center/contain;
}

.c-form__inputWrap.is-invalid input {
	background-color: #fbecec;
}

.c-form__inputWrap input {
	padding-right: 45px;
	padding-left: 10px;
	font-size: 2rem;
	border: none;
}

.c-form__submit {
	font-size: 2.8rem;
}

.c-form__submit[disabled] {
	opacity: 0.5;
	pointer-events: none;
}

@media screen and (max-width: 896px) {
	.c-form__submit {
		font-size: 2.2rem;
	}
}

.c-form__submitCaption {
	margin-top: 2em;
	padding-left: 1.5em;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.5;
	background: url(../img/icon_lock.svg) no-repeat top 0.3em left/0.9em;
}

.c-form__error {
	position: absolute;
	top: calc(100% - 6px);
	left: 5px;
	z-index: 1;
	padding: 0 0.5em;
	color: #fff;
	font-size: 1.4rem;
	background: rgba(193, 39, 45, 0.9);
	border-radius: 5px;
}

.c-form__error::before {
	position: absolute;
	top: -7px;
	left: 20px;
	width: 0;
	height: 0;
	border-color: transparent transparent rgba(193, 39, 45, 0.9) transparent;
	border-style: solid;
	border-width: 0 7px 7px 7px;
	content: "";
}

@keyframes lpFormBlink {
	0% {
		border-color: #ccc;
	}
	50% {
		border-color: #ccc;
	}
	51% {
		border-color: var(--color-primary);
	}
	100% {
		border-color: var(--color-primary);
	}
}

@keyframes topFormFlash {
	0% {
		border-color: #fff;
	}
	49% {
		border-color: #fff;
	}
	50% {
		border-color: var(--color-primary);
	}
	99% {
		border-color: var(--color-primary);
	}
	100% {
		border-color: #fff;
	}
}

.top-form {
	width: auto;
	padding: 25px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 3px #ccc;
}

@media screen and (max-width: 896px) {
	.top-form {
		/*margin: 0 -10px;*/
		box-shadow: none;
	}
}

.top-form__ttl {
	margin-bottom: 1em;
}

.top-form__item {
	margin-bottom: 1em;
}

.top-form__itemField {
	position: relative;
	display: flex;
	align-items: center;
	background: #f1f6f8;
	border: 3px solid #fff;
	border-radius: 10px;
}

.top-form__itemField.is-active {
	animation: 1s linear infinite topFormFlash;
}

.top-form__itemTtl {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 60px;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
	text-align: center;
	background: var(--color-primary);
	border-radius: 5px 0 0 5px;
}

.top-form__itemCnt {
	width: calc(100% - 40px);
}

.top-form__itemCnt .c-form__error {
	top: calc(100% + 8px);
}

.wpcf7-form-control-wrap,
.top-form__selectWrap {
	width: 100%;
}

.wpcf7-form-control-wrap select,
.top-form__selectWrap select {
	height: 60px;
	font-size: 1.7rem;
	background-color: transparent;
	background-image: url(../img/home/icon_select.svg);
	background-size: 16px;
	border: none;
}

.top-form__inputWrap {
	width: 100%;
}

.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="tel"],
.wpcf7-form-control-wrap input[type="email"],
.wpcf7-form-control-wrap input[type="url"],
.wpcf7-form-control-wrap input[type="password"],
.wpcf7-form-control-wrap input[type="number"],
.top-form__inputWrap input[type="text"],
.top-form__inputWrap input[type="tel"],
.top-form__inputWrap input[type="email"],
.top-form__inputWrap input[type="url"],
.top-form__inputWrap input[type="password"],
.top-form__inputWrap input[type="number"] {
	height: 60px;
	font-size: 2rem;
	background-color: transparent;
	border: none;
}

.top-form__itemCaption {
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: 1.5;
	text-align: left;
}

.top-form__submit {
	height: 60px;
	color: #fff;
	font-size: 2rem;
	background:
		url(../img/home/pc/icon_arrow.png) right 1em center/40px auto no-repeat,
		var(--color-primary);
	background-size: calc(5.3rem / 2) auto;
	box-shadow: 0 6px #015961;
}

.top-form__submit:hover {
	box-shadow: 0 2px #015961;
}

.top-form__submit:disabled {
	opacity: 0.6;
}

.top-form__submit:disabled:hover {
	box-shadow: 0 6px #015961;
	transform: translateY(0);
}

.top-form__submit span:first-child:not(:last-child) {
	background: #b18b37;
}

.top-form__submit span:not(:first-child) {
	text-indent: -1.5em;
}

.top-form__submitCaption {
	margin-top: 15px;
	padding-left: 40px;
	font-size: 1.4rem;
	line-height: 1.5;
	text-align: left;
	background: url(../img/home/icon_key.svg) left 5px center/auto 30px no-repeat;
}

.c-pageTtl {
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	min-height: 180px;
	padding: 20px;
	color: #fff;
	font-size: 3.1rem;
	line-height: 1.3;
	background: #0057b8;
}

@media screen and (max-width: 896px) {
	.c-pageTtl {
		min-height: 100px;
		font-size: 2.1rem;
	}
}

.c-sectionTtl {
	position: relative;
	margin-bottom: 70px;
	padding: 20px 20px;
	color: #fff;
	font-size: 3.6rem;
	line-height: 1.3;
	text-align: center;
	background: #0057b8;
}

@media screen and (max-width: 896px) {
	.c-sectionTtl {
		margin-bottom: 35px;
		font-size: 1.8rem;
	}
}

.c-sectionTtl::after {
	position: absolute;
	top: 100%;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -10px;
	border-color: #0057b8 transparent transparent transparent;
	border-style: solid;
	border-width: 12px 12px 0 12px;
	content: "";
}

.c-radio {
	display: block;
	font-size: 1.8rem;
	cursor: pointer;
}

@media screen and (max-width: 896px) {
	.c-radio {
		font-size: 1.8rem;
	}
}

.c-radio + .c-radio {
	margin-top: 10px;
}

.c-radio span {
	position: relative;
	display: block;
	padding-left: 30px;
}

@media screen and (max-width: 896px) {
	.c-radio span {
		padding-left: 30px;
	}
}

.c-radio span::before {
	position: absolute;
	top: 7px;
	left: 0;
	width: 20px;
	height: 20px;
	border: 2px solid #666;
	content: "";
}

.c-radio span::after {
	position: absolute;
	top: 4px;
	left: 8px;
	width: 12px;
	height: 20px;
	border-right: 3px solid #b1145a;
	border-bottom: 3px solid #b1145a;
	transform: rotate(45deg);
	opacity: 0;
	content: "";
}

.c-radio input[type="radio"] {
	position: absolute;
	width: 1px;
	height: 1px;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
}

.c-radio input[type="radio"]:checked + span::after {
	opacity: 1;
}

[data-whatinput="keyboard"] input[type="radio"]:focus + span::before {
	border-color: #0057b8;
}

.p-home__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 500px;
	height: 84px;
	margin: 1em auto;
	color: #fff;
	font-weight: bold;
	font-size: 3rem;
	background:
		url(../img/btn_arrow.svg) right 1em center/2em 10px no-repeat,
		#0057b8;
	border-radius: 5px;
	box-shadow: 0 3px 0 #333;
}

.p-home__btn:hover {
	position: relative;
	top: 3px;
	box-shadow: none;
}

@media screen and (max-width: 896px) {
	.p-home__btn {
		max-width: none;
		height: 17vw;
		font-size: 5.867vw;
		background:
			url(../img/btn_arrow.svg) right 0.7em center/1.5em 10px no-repeat,
			#0057b8;
	}
}

.p-home__btnIcon {
	margin-left: -1em;
	padding: 0 0.8em;
	background: #b18b37;
	border-radius: 100px;
}

.p-home__btnTxt {
	margin: 0 1em;
}

.p-error {
	padding: 120px 0 240px;
	text-align: center;
}

@media screen and (max-width: 896px) {
	.p-error {
		display: block;
	}
}

.p-error__txt {
	margin-bottom: 3em;
}

@media screen and (max-width: 896px) {
	.p-error__txt {
		text-align: left;
	}
}

.p-error__btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 232px;
	height: 57px;
	margin: 0 auto;
	padding-right: 15px;
	color: #fff;
	font-weight: bold;
	background: #0057b8;
	border-radius: 8px;
	box-shadow: 0 4px #002752;
}

.p-error__btn::after {
	position: absolute;
	top: 50%;
	right: 20px;
	width: 10px;
	height: 10px;
	margin-top: -4px;
	border-top: 3px solid rgba(255, 255, 255, 0.5);
	border-right: 3px solid rgba(255, 255, 255, 0.5);
	transform: rotate(45deg);
	content: "";
}

.p-error__btn:focus,
.p-error__btn:hover {
	box-shadow: 0 2px #002752;
	transform: translateY(2px);
}

.p-error__info {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto 30px;
}

.p-error__info-row {
	max-width: 600px;
	width: 100%;
	min-height: 60px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

.p-error__info-row:first-child {
	border-top: 1px solid #ccc;
}

.p-error__info-ttl {
	width: 12em;
	padding: 1em;
	border-right: 1px solid #ccc;
}

.p-error__info-val {
	width: calc(100% - 10em);
}

.p-error__info-val img {
	max-width: 250px;
}

@keyframes topFormFlash {
	0% {
		border-color: #fff;
	}
	49% {
		border-color: #fff;
	}
	50% {
		border-color: var(--color-primary);
	}
	99% {
		border-color: var(--color-primary);
	}
	100% {
		border-color: #fff;
	}
}

#blog_form .select2-container--default .select2-selection--multiple .select2-selection__choice {
	font-size: 9px;
}

.fs-9 {
	font-size: 9px;
}

.radio-label {
	font-weight: 800;
	font-size: 1.2em;
	margin-right: 16px;
}

.select2-container--default .select2-selection--multiple {
	border: none !important;
	background-color: transparent !important;
	margin-left: 10px;
	text-align: start !important;
	height: 100%;
}

.select2-container .select2-search--inline .select2-search__field {
	font-size: 20px !important;
	height: 24px !important;
}

.align-start {
	text-align: start;
}

.pl-10px {
	padding-left: 10px;
}

#select2-industries-container.select2-selection__rendered .select2-selection__choice {
	background-color: #ffb3cc;
}

#select2-industries-container .select2-search--inline .select2-search__field {
	font-size: 2rem !important;
}

.top-form__item.top-form__item--industries {
	text-align: start !important;
}

.top-form__item.top-form__item--industries .select2-selection__choice__display {
	padding-left: 8px !important;
}

.top-form__item--chk {
	.wpcf7-list-item {
		margin-left: 0;
	}
}

.modal-content {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	max-width: 80%;
	padding: 20px;
	pointer-events: auto;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 1rem;
	box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.5);
	outline: 0;
}

.modal-dialog-centered {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;
	min-height: calc(100% - 1rem);
}

.block-authen {
	display: flex;
	width: 100%;
	padding: 30px;
}

.max-w-80 {
	max-width: 80%;
}

.pink-under {
	color: var(--color-primary);
	font-weight: bold;
	text-align: center;
	text-decoration: underline;
}

.name-high-light {
	font-weight: bold;
	font-size: 20px !important;
}

.display-none {
	display: none;
}

.company-card-container {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	margin-top: 30px;
	margin-bottom: 30px;
	margin-bottom: 30px;
}

.company-card {
	width: 180px;
	border: 2px solid #0057b8;
	padding: 10px;
	text-align: center;
	border-radius: 10px;
	background-color: #ffffff;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.company-logo {
	width: 100%;
	height: 120px;
	object-fit: contain;
	margin-bottom: 10px;
}

.company-name {
	font-weight: bold;
	font-size: 16px;
}

.thanks-lg em {
	color: #000;
	font-size: 40px;
	line-height: 1.4;
}

.thanks-lg em bold {
	color: #000;
	font-size: 40px;
	line-height: 1.4;
	font-weight: bold;
}

@media screen and (max-width: 896px) {
	.thanks-lg em {
		font-size: 1.1em;
	}

	.thanks-lg em bold {
		line-height: 1.1;
	}
}

.thanks-price {
	color: red;
	font-size: 40px;
	font-weight: bold;
	min-height: 100px;
}

.thanks-mid-md em {
	color: #000;
	font-size: 30px;
	line-height: 1.4;
}

.thanks-mid-md em bold {
	color: #000;
	font-size: 30px;
	line-height: 1.4;
	font-weight: bold;
}

.thanks-bottom-md em {
	color: #000;
	font-size: 20px;
	line-height: 1.4;
}

.thanks-price-md {
	color: red;
	font-size: 30px;
	line-height: 1.4;
}

.thanks-price-md bold {
	color: red;
	font-size: 30px;
	line-height: 1.4;
	font-weight: bold;
}

.thanks-sm em {
	color: #000;
	font-size: 15px;
	line-height: 1.4;
}

.thanks-md em {
	color: #000;
	font-size: 20px;
	line-height: 1.4;
}

.thanks-price-md1 {
	color: red;
	font-size: 20px;
	line-height: 1.4;
}

.price-background {
	position: relative;
}

.price-background::after {
	position: absolute;
	text-align: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../img/back_ground_price.png) center center/60% 100% no-repeat;
	content: "";
}

.background-1 {
	position: relative;
}

.background-1::after {
	position: absolute;
	text-align: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../img/background_1.png) center center/80% 150% no-repeat;
	content: "";
}

.thanks-rule {
	font-size: 28px;
	line-height: 1.4;
}

.mb-30px {
	margin-bottom: 30px;
}

.mb-60px {
	margin-bottom: 60px;
}

.column_container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	justify-content: center;
	gap: 20px;
}

.row_container {
	display: grid-column;
	grid-template-columns: repeat(3, 1fr);
	justify-content: center;
	gap: 30px;
	width: 80%;
	margin: auto;
}

.mt-60px {
	margin-top: 60px;
}

.relative {
	position: relative;
}

.background-wy {
	position: relative;
}

.background-wy::after {
	position: absolute;
	text-align: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../img/background_wy.png) center center/80% 150% no-repeat;
	content: "";
}

.background-yellow {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.background-yellow::after {
	position: absolute;
	text-align: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../img/background_yellow.png) center center/100% 100% no-repeat;
	content: "";
}

.bg-wy {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.bg-wy::after {
	position: absolute;
	text-align: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../img/bg_wy.png) center center/100% 100% no-repeat;
	content: "";
}

.h-350px {
	height: 350px;
}

.flex-column {
	display: flex;
	flex-direction: column;
}

.sms-alert {
	position: fixed;
	top: 5%;
	left: 50%;
	transform: translateX(-50%);
	padding: 12px 20px;
	border-radius: 4px;
	z-index: 9999;
	text-align: center;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	width: 90%;
	max-width: 100%;
}

@media (min-width: 768px) {
	.sms-alert {
		width: 50%;
	}
}

.sms-alert-success {
	background-color: #d4edda;
	color: #155724;
}

.sms-alert-error {
	background-color: #f8d7da;
	color: #721c24;
}

.ma {
	position: relative;
	margin-bottom: 20px;
}

.download_btn {
	position: absolute;
	bottom: 150px;
	right: 30px;
	width: 30%;
}

.pt-60px {
	padding-top: 60px;
}

@media (max-width: 768px) {
	.download_btn {
		bottom: 150px;
	}

	.thanks-mid-md em {
		font-size: 20px;
	}

	.thanks-price-md {
		font-size: 20px;
	}

	.thanks-md em {
		font-size: 15px;
	}

	.thanks-price-md1 {
		font-size: 15px;
	}

	.row_container {
		width: 100%;
	}

	.background-1::after {
		background: url(../img/background_1.png) center center/100% 150% no-repeat;
	}
}

@media (max-width: 576px) {
	.download_btn {
		right: 20px;
		bottom: 220px;
	}
}

.text-link {
	color: #000 !important;
	cursor: pointer;
	text-decoration: underline;
}

.text-link:hover {
	text-decoration: none;
}

.fs-12 {
	font-size: 12px !important;
}

.fs-14 {
	font-size: 14px !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.d-flex {
	display: flex !important;
}

.mr-2 {
	margin-right: 0.5rem !important;
}

.mt-0 {
	margin-top: 0 !important;
}

#top_form.iframe_integration .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	height: 100% !important;
	color: white;
}

#top_form.iframe_integration #select2-industries-container.select2-selection__rendered .select2-selection__choice {
	background-color: rgba(66, 133, 235, 0.7);
}

#top_form.iframe_integration .is-active {
	animation: 1s linear infinite topFormFlash2;
}

@keyframes topFormFlash2 {
	0% {
		border-color: #fff;
	}
	49% {
		border-color: #fff;
	}
	50% {
		border-color: #15458e;
	}
	99% {
		border-color: #15458e;
	}
	100% {
		border-color: #fff;
	}
}

.c-form .select2-container {
	width: auto;
	padding: 10px;
	background: white;
}

.c-form .select2-selection {
	margin: 0;
}

.c-form .select2-container--default .select2-selection--multiple .select2-selection__choice__display {
	padding-left: 10px;
}

.c-form .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	height: 28px;
}

#_form .select2.select2-container {
	background: #f7e7ee;
	border-radius: 10px;
	padding: 10px 60px 10px 20px;
}

#_form .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	height: 28px;
}

#_form .select2-container--default .select2-selection--multiple .select2-selection__choice__display {
	padding-left: 10px;
}

#_form .select2-container--default .select2-selection--multiple {
	margin-left: 0;
}
