

body {
	color: #000;
	font-family: "Noto Sans JP", sans-serif;
}

.u-desktop {
	display: none;
}

/* リキッドレイアウト対応 */

html {
	font-size: 16px;
}

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

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

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

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	/* -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none; */
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

/* input[type=checkbox],
input[type=radio] {
	display: none;
} */

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

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

/* ホバー */

.wpcf7-spinner{
	display: none;
}

.fv__icon{
	margin-top: 0.15rem;
}

.wpcf7-list-item{
	margin: 0;
}













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

.top-contact {
	margin-top: 2.5rem;
}

.top-delegation {
	margin-top: 1.875rem;
}

.top-faq {
	margin-top: 2.5rem;
}

.top-feature {
	margin-top: 2.5rem;
}

.top-flow {
	margin-top: 2.5rem;
}

.top-footer {
	margin-top: 2.5rem;
}

.top-price {
	margin-top: 3.75rem;
}

.top-problem {
	margin-top: 1.25rem;
}

.top-season {
	margin-top: 2.5rem;
}

.top-slide {
	margin-top: 0.625rem;
}

.button__comment {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	background-clip: text;
	color: transparent;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.725;
}

.button__frame {
	margin-top: 0.4375rem;
	padding-bottom: 0.3125rem;
}

.button__text {
	align-items: center;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	border-radius: 0.431875rem;
	box-shadow: 2.77px 2.77px 2.77px rgba(0, 0, 0, 0.25);
	color: #fff;
	display: inline-flex;
	font-size: 1rem;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.08em;
	line-height: 2.5925;
	padding: 0.2375rem 0rem 0.295rem;
	position: relative;
	transition: 0.4s;
	width: 21.25rem;
}

.button__text::after {
	background-image: url(../images/common/button-mail.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 0.893125rem;
	position: absolute;
	right: 1.75rem;
	top: 50.5%;
	transform: translateY(-50%);
	transition: 0.4s;
	width: 1.129375rem;
}

.button__text:hover {
	box-shadow: 0 4px 7px rgba(0, 0, 0, 0.5);
	cursor: pointer;
	transform: translateY(-5px);
}

.contact__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding-left: 1.53125rem;
	padding-right: 1.53125rem;
}

.contact__container {
	margin-top: 1.875rem;
}

.contact__sentence {
	width: 100%;
}

.contact__head,
.contact__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.1875;
	padding: 0 0.625rem;
}

.contact__text {
	margin-top: 1.125rem;
}

.contact__content {
	display: flex;
	flex-direction: column-reverse;
	margin-top: 0.625rem;
}

.contact__wrapper {
	border-bottom: solid 1px #919191;
	padding-bottom: 0.625rem;
}

.contact__support {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.7;
	margin-top: 0.625rem;
	text-align: center;
}

.contact__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin-top: 0.625rem;
}

.contact__item {
	margin: 0;
	max-width: calc(33.3333% - 0.4166666667rem);
	width: 100%;
}

.contact__item img {
	-o-object-fit: cover;
	aspect-ratio: 107/60;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.contact__form {
	background-color: #fff;
	border-radius: 0.81125rem;
	box-shadow: 0 0 48px rgba(171, 171, 171, 0.29);
	margin-top: 1.25rem;
	padding: 1.25rem 1.875rem 2rem;
	width: 100%;
}

.contact-form__text {
	margin-top: 0.625rem;
}

.delegation {
	text-align: center;
}

.delegation__heading {
	background-color: #0766F4;
	color: #fff;
	padding-bottom: 0.9375rem;
	padding-top: 0.9375rem;
	text-align: center;
}

.delegation__title {
	font-size: 1.25rem;
	font-weight: 900;
	line-height: 1.5;
}

.delegation__title span {
	font-size: 1.625rem;
	font-weight: 700;
}

.delegation__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.delegation__logo {
	margin-top: 2.6975rem;
}

.delegation__logo img {
	height: 2.498125rem;
	margin-left: auto;
	margin-right: auto;
	width: 21.266875rem;
}

.delegation__pro {
	font-size: 1.125rem;
	font-weight: 900;
	line-height: 2.1;
	margin-top: 0.679375rem;
}

.delegation__pro span {
	color: #0766F4;
}

.delegation__comment {
	background-color: #0766F4;
	border-radius: 3.75rem;
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.2);
	color: #fff;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 900;
	line-height: 3.9285714286;
	margin: 1.25rem auto 0;
	padding-bottom: 0.1875rem;
	padding-top: 0.0625rem;
	position: relative;
	text-align: center;
	width: 20rem;
}

.delegation__comment-text {
	margin: 0;
}

.delegation__comment-pointer {
	border-left: 0.6875rem solid transparent;
	border-right: 0.6875rem solid transparent;
	border-top: 10px solid #0766F4;
	bottom: -0.625rem;
	height: 0;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 0;
}

.delegation__professional {
	color: #0766F4;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1.875rem;
}

.delegation__text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.875;
	margin-top: 1rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	text-align: left;
}

.delegation__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6875rem 1.125rem;
	margin-top: 0.625rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.delegation__item {
	border: solid 1px #f0f0f0;
	border-radius: 0.625rem;
	box-shadow: 0px 0px 14px 0px rgba(7, 102, 244, 0.4);
	padding-bottom: 0.3125rem;
	padding-top: 0.3125rem;
	width: 47%;
}

.delegation__item--sns {
	padding-bottom: 0.075rem;
	padding-top: 0.8125rem;
}

.explanation__company img {
	height: 8.1875rem;
	margin-left: auto;
	margin-right: auto;
	width: 8.1875rem;
}

.explanation__company--sns img {
	height: 7.925rem;
	margin-left: auto;
	margin-right: auto;
	width: 8.25rem;
}

.delegation__head {
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.1857142857;
	margin-top: 1.25rem;
}

.delegation__explanation {
	font-size: 0.875rem;
	font-weight: 300;
	line-height: 1.4285714286;
	margin-top: 0.625rem;
}

.faq-toggle__title {
	background: transparent;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.faq-toggle__title-box {
	align-items: center;
	color: #0766F4;
	display: flex;
	font-size: 1rem;
	font-weight: 700;
	gap: 0.5rem;
	line-height: 1.25;
	position: relative;
}

.faq-toggle__question-en {
	font-family: "Montserrat", sans-serif;
	font-size: 1.5rem;
	line-height: 1.25;
}

.faq-toggle__question-jp {
	padding-right: 1.875rem;
}

.faq-toggle__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.875;
	max-height: 0;
	max-width: 51.25rem;
	opacity: 0;
	overflow: hidden;
	padding: 0 0.625rem;
	transition: max-height 0.6s ease, opacity 0.6s ease, margin-bottom 0.6s ease;
	visibility: hidden;
}

.faq-toggle__text span {
	color: #0766F4;
}

.open .faq-toggle__text {
	margin-top: 0.625rem;
	opacity: 1;
	text-align: left;
	visibility: visible;
}

.faq-toggle__title .faq-toggle__title-box::before {
	background-color: #0766F4;
	content: "";
	display: block;
	height: 2px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: background-color 0.3s ease;
	width: 0.875rem;
}

.faq-toggle__title .faq-toggle__title-box::after {
	background-color: #0766F4;
	content: "";
	display: block;
	height: 0.875rem;
	position: absolute;
	right: 0.375rem;
	top: 50%;
	transform: translateY(-50%);
	transition: opacity 0.3s ease;
	width: 2px;
}

.faq-toggle__title .faq-toggle__title-box.active::after {
	opacity: 0;
}

.faq {
	background-color: #F6F9FF;
	padding: 2.5rem 0 1.5625rem;
}

.faq__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 1.5625rem;
}

.faq__accordion-list {
	margin-top: 1.25rem;
}

.faq__accordion-item + .faq__accordion-item {
	margin-top: 2.375rem;
}

.feature-pc__item {
	overflow: hidden;
	padding: 5.9375rem 0;
	position: relative;
}

.feature-pc__item--tool {
	padding: 2.875rem 0;
}

.feature-pc__item + .feature-pc__item {
	margin-top: 1.75rem;
}

.feature-pc__item::before {
	background-color: #f6f9ff;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 69.5%;
	z-index: -1;
}

.feature-pc__item--tool:before {
	left: auto;
	left: initial;
	right: 0;
}

.feature-pc__content {
	align-items: flex-start;
	display: flex;
	gap: 7.375rem;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding: 0 3.125rem;
}

.feature-pc__content--support {
	gap: 6.1875rem;
}

.feature-pc__sentence {
	position: relative;
	width: 42.37%;
}

.feature-pc__cycle {
	height: 15.8125rem;
	left: 87%;
	position: absolute;
	top: 51%;
	transform: translate(-50%, -50%);
	width: 15.8125rem;
	z-index: 0;
}

.feature-pc__cycle--tool {
	left: 15%;
	top: 50%;
}

.feature-pc__cycle--support {
	left: 87%;
	top: 55%;
}

.feature-pc__wrapper {
	position: relative;
	width: 47.62%;
}

.feature-pc__box {
	display: flex;
	flex-direction: column;
	position: absolute;
	right: 3%;
	top: 11%;
}

.feature-pc__box--tool {
	bottom: 6%;
	left: 5%;
	right: auto;
	right: initial;
	top: auto;
	top: initial;
}

.feature-pc__box--support {
	bottom: 4%;
	top: auto;
	top: initial;
}

.feature-pc__comment {
	background-color: #fff;
	color: #0766F4;
	display: inline-block;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 2.4545454545;
	padding-left: 1.0625rem;
	width: 18.125rem;
}

.feature-pc__comment--tool {
	width: 20rem;
}

.feature-pc__comment--support {
	width: 23.25rem;
}

.feature-pc__comment + .feature-pc__comment {
	margin-top: 0.625rem;
}

.feature-pc__img img {
	-o-object-fit: cover;
	aspect-ratio: 562/322;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.feature-pc__img--tool {
	margin-top: 3rem;
}

.feature-pc__head {
	background-color: #fff;
	color: #0766F4;
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5625;
	padding: 0 0.4375rem 0 0.6875rem;
	position: relative;
}

.feature-pc__text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.875;
	margin-top: 1.5rem;
	position: relative;
}

.feature-pc__remarks {
	color: #0766F4;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.6666666667;
	margin-top: 3.125rem;
}

.feature-pc__company {
	margin-top: 2.25rem;
	position: relative;
}

.feature-pc__company img {
	height: 9.6875rem;
	width: 30.625rem;
}

.feature-pc__check {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1.125rem;
	margin-top: 3.25rem;
}

.feature-pc__checks-box {
	align-items: center;
	display: flex;
	gap: 0.4375rem;
}

.feature-pc__check-icon {
	height: 1.125rem;
	width: 1.125rem;
}

.feature-pc__checks-text {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
}

.feature-sp {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.feature-sp__item + .feature-sp__item {
	margin-top: 1.25rem;
}

.feature-sp__content {
	position: relative;
}

.feature-sp__box {
	left: 71%;
	position: absolute;
	top: 29%;
	transform: translate(-50%, -50%);
}

.feature-sp__box--tool {
	bottom: -12%;
	left: 36.7%;
	top: auto;
	top: initial;
}

.feature-sp__box--support {
	bottom: -13%;
	left: 62%;
	top: auto;
	top: initial;
}

.feature-sp__comment {
	background-color: #fff;
	color: #0766F4;
	display: inline-block;
	font-size: 0.831875rem;
	font-weight: 700;
	line-height: 2.479338843;
	padding-left: 0.643125rem;
	width: 10.9375rem;
}

.feature-sp__comment--tool {
	width: 12.0625rem;
}

.feature-sp__comment--support {
	width: 13.1875rem;
}

.feature-sp__comment + .feature-sp__comment {
	margin-top: 0.33125rem;
}

.feature-sp__wrapper {
	background-color: #F6F9FF;
	padding: 1.875rem 0.625rem;
}

.feature-sp__img img {
	-o-object-fit: cover;
	aspect-ratio: 340/194;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.feature-sp__img {
	position: relative;
}

.feature-sp__img::before {
	background-image: url("../images/common/feature-cycle.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 15.8125rem;
	left: 50%;
	position: absolute;
	top: 175%;
	transform: translate(-50%, -50%);
	width: 15.8125rem;
	z-index: 0;
}

.feature-sp__head {
	background-color: #fff;
	color: #0766F4;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 2.05;
	margin-left: 0.625rem;
	margin-right: 0.625rem;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
	position: relative;
	text-align: center;
}

.feature-sp__text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.875;
	margin-top: 1.25rem;
	position: relative;
}

.feature-sp__remarks {
	color: #0766F4;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.6666666667;
	margin-top: 0.625rem;
	text-align: center;
}

.feature-sp__company {
	margin-top: 1.25rem;
	position: relative;
}

.feature-sp__company img {
	-o-object-fit: cover;
	aspect-ratio: 309/228;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.feature-sp__check {
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
	margin-top: 1.25rem;
	padding-left: 0.75rem;
}

.feature-sp__checks-box {
	align-items: center;
	display: flex;
	gap: 0.4375rem;
}

.feature-sp__check-icon {
	height: 1.125rem;
	width: 1.125rem;
}

.feature-sp__checks-text {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
}

.feature__container {
	margin-top: 1.875rem;
}

.flow-pc__item {
	align-items: flex-start;
	display: flex;
	gap: 0 3.4375rem;
	position: relative;
}

.flow-pc__item + .flow-pc__item {
	margin-top: 4.3125rem;
}

.flow-pc__arrow {
	bottom: -27%;
	height: 0.8125rem;
	left: 5.4%;
	position: absolute;
	width: 2.4375rem;
}

.flow-pc__img {
	flex-shrink: 0;
	margin-top: 0.625rem;
	width: 15.345%;
}

.flow-pc__img img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.flow-pc__wrapper {
	text-align: left;
	width: 78.57%;
}

.flow-pc__step {
	color: #0766F4;
	font-family: "Montserrat", sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 3.0444444444;
}

.flow-pc__job {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 0.8333333333;
}

.flow-pc__text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.25;
	margin-top: 1.25rem;
}

.flow-pc__box {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0 1.25rem;
	margin-top: 1.375rem;
}

.flow-pc__flex {
	align-items: center;
	display: flex;
	gap: 0 0.4375rem;
	transition: opacity 0.3s ease;
}

.flow-pc__check {
	flex-shrink: 0;
	height: 1.125rem;
	width: 1.125rem;
}

.flow-pc__suggestion {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
}

.flow-sp__item + .flow-sp__item {
	margin-top: 1.25rem;
}

.flow-sp__step {
	color: #0766F4;
	font-family: "Montserrat", sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 3.0444444444;
}

.flow-sp__job {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 0.8333333333;
}

.flow-sp__img {
	margin: 1.25rem auto 0;
	width: 62.5%;
}

.flow-sp__img img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.flow-sp__text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.25;
	margin-top: 1.25rem;
	text-align: left;
}

.flow-sp__box {
	margin: 1.25rem auto 0;
	max-width: 16.25rem;
}

.flow-sp__flex {
	align-items: center;
	display: flex;
	gap: 0.4375rem;
}

.flow-sp__flex + .flow-sp__flex {
	margin-top: 0.875rem;
}

.flow-sp__check {
	height: 1.125rem;
	width: 1.125rem;
}

.flow-sp__suggestion {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
}

.flow {
	text-align: center;
}

.flow__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 2.1875rem;
}

.flow__subtitle {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
	margin-top: 1.25rem;
}

.flow__container {
	margin-top: 1.25rem;
}

.flow__setup {
	margin-top: 1.40125rem;
	text-align: center;
}

.flow__setup-headline {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1;
}

.flow__setup-highlight {
	background-color: #0766F4;
	color: #fff;
	display: inline-block;
	font-size: 1.515rem;
	margin-right: 0.47875rem;
	padding: 0.5rem 0.8125rem;
}

.flow__setup-description {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1;
	margin-top: 0.625rem;
}

.flow__buttons {
	margin-top: 1.25rem;
}

.footer {
	background-color: #0766F4;
	color: #fff;
	padding: 2.5rem 0 1.25rem;
}

.footer__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 2.1875rem;
}

.footer__list {
	text-align: center;
}

.footer__item {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	position: relative;
}

.footer__item + .footer__item {
	margin-top: 2.5rem;
}

.footer__item a {
	-webkit-text-decoration: none;
	display: inline-block;
	position: relative;
	text-decoration: none;
}

.footer__logo {
	margin-top: 3.375rem;
}

.footer__logo img {
	height: 2.375rem;
	width: 20rem;
}

.footer__content {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-top: 3.125rem;
	text-align: center;
}

.footer__button + .footer__button {
	margin-top: 1.125rem;
}

.footer__button-text {
	align-items: center;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	border: solid 1px #fff;
	border-radius: 5rem;
	color: #fff;
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 700;
	justify-content: center;
	line-height: 1;
	overflow: hidden;
	padding: 1.15625rem 2.5rem 1.28125rem 2.5rem;
	position: relative;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 18.75rem;
}

.footer__button-text::after {
	content: "→";
	font-size: 0.875rem;
	opacity: 0;
	position: absolute;
	right: 1.5rem;
	transform: translateX(10px);
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.footer__button-text--white {
	background: #fff;
	border: solid 1px #0766F4;
	color: #0B59FA;
}

.footer__privacy {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.2142857143;
	margin-top: 1.280625rem;
	text-align: center;
}

.footer__privacy a {
	-webkit-text-decoration: none;
	display: inline-block;
	position: relative;
	text-decoration: none;
}

.footer__copyright {
	font-size: 0.75rem;
	font-weight: 300;
	line-height: 1.1666666667;
	margin-top: 1.3125rem;
	text-align: center;
}

.form__label {
	display: block;
	font-weight: bold;
	margin-bottom: 0.5rem;
}

.form__box {
	align-items: center;
	display: flex;
	gap: 0 0.5625rem;
}

.form__item {
	text-align: left;
}

.form__item + .form__item {
	margin-top: 0.625rem;
}

.form__item label {
	display: block;
	font-size: 0.625rem;
	font-weight: 700;
	line-height: 2;
	margin-bottom: 0.27875rem;
}

.form__item .required {
	color: #0766F4;
	font-size: 0.375rem;
	font-weight: 700;
	line-height: 1;
	margin-left: 0.339375rem;
}

.form__item input,
.form__item textarea {
	background-color: white;
	border: solid 1px #EBEBEB;
	box-sizing: border-box;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 2.5;
	padding: 0.5rem 0.84375rem;
	width: 100%;
	margin-top: 0.25rem;
}

.form__item input {
	/* height: 2.5rem; */
	width: 100%;
}

.form__item textarea {
	height: 9.1875rem;
	resize: vertical;
}

.form__box input {
	width: 11.125rem;
}

.btn__top {
	margin-top: 2.5rem;
	text-align: center;
}

.btn-submit {
	position: relative;
}

.btn-submit__body[type=submit] {
	align-items: center;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	border-radius: 0.364375rem;
	box-shadow: 2.33px 2.33px 2.33px rgba(0, 0, 0, 0.25);
	color: #fff; /* $white の代わり */
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 700;
	justify-content: center;
	line-height: 1.3928571429;
	overflow: hidden;
	padding: 0.6875rem 0rem;
	position: relative;
	transform: translateY(0);
	transition: 0.4s;
	width: 15.375rem;
}

.btn-submit__body[type=submit]:hover {
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
	transform: translateY(-0.25rem);
}

.btn-submit:hover .btn-submit__text::after {
	transform: translateX(0.3125rem);
}

.btn-submit:hover .btn-submit__arrow::before,
.btn-submit:hover .btn-submit__arrow::after {
	background-color: transparent;
	pointer-events: none;
}

.btn-submit__body[disabled] {
	cursor: not-allowed;
}

::-moz-placeholder {
	color: #C6C6C6;
}

::placeholder {
	color: #C6C6C6;
}

.form__error,
.wpcf7-not-valid-tip {
	color: #CB3434;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.9;
	margin-top: 0.3125rem;
}

.is-error {
	background-color: rgba(255, 0, 0, 0.05);
	border-color: #CB3434;
}

.wpcf7-not-valid {
	background-color: rgba(255, 0, 0, 0.05);
	border-color: #CB3434;
}

.fv {
	background-image: url("../images/common/fv-bg-sp.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-top: 3.75rem;
	overflow: hidden;
}

.fv__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 0.75rem;
}

.fv__bg {
	margin-left: auto;
	margin-right: auto;
	max-width: 24.375rem;
	position: relative;
}

.fv__bg::before {
	background-image: url("../images/common/fv-human-sp.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 33.9375rem;
	position: absolute;
	right: calc(50% - min(73%, 50rem));
	top: 10.125rem;
	width: 21.4375rem;
	z-index: 0;
}

.fv__content {
	padding-bottom: 0.963125rem;
	padding-top: 0.625rem;
}

.fv__logo {
	height: 2.2525rem;
	margin-left: auto;
	margin-right: auto;
	width: 19.17625rem;
}

.fv__title {
	display: flex;
	flex-direction: column;
	margin-top: 0.875rem;
	padding-left: 0.75rem;
}

.fv__title-sub {
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1;
}

.fv__title-main {
	font-size: 2.125rem;
	font-weight: 900;
	line-height: 1.2;
	margin-top: 0rem;
}

.fv__title-main-font {
	font-size: 1.5rem;
}

.fv__title-main-color {
	color: #0766F4;
}

.fv__company {
	height: 23.43125rem;
	margin-left: 1.375rem;
	margin-top: 1.25rem;
	position: relative;
	width: 9.05625rem;
}

.fv__company img {
	-o-object-fit: cover;
	aspect-ratio: 144.9/374.9;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

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

.fv__buttons {
	align-items: center;
	display: flex;
	gap: 0.46875rem;
	margin-top: 1rem;
}

.fv__button-text {
	align-items: center;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	border-radius: 0.364375rem;
	box-shadow: 2.33px 2.33px 2.33px rgba(0, 0, 0, 0.25);
	color: #fff;
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 900;
	justify-content: center;
	line-height: 2.5;
	overflow: hidden;
	padding: 0.21875rem 1.25rem 0.25rem 0;
	position: relative;
	transition: background-color 0.3s ease, color 0.3s ease;
	transition: 0.4s;
	width: 11.25rem;
}

.fv__button-text::after {
	background-image: url(../images/common/button-mail.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 0.893125rem;
	position: absolute;
	right: 1.25rem;
	top: 50.5%;
	transform: translateY(-50%);
	transition: 0.4s;
	width: 1.129375rem;
}

.fv__button-text--white {
	background: #fff;
	border: solid 1px #0766F4;
	border-radius: 0.364375rem;
	color: #0B59FA;
	padding: 0.15625rem 0 0.1875rem;
}

.fv__button-text--white::after {
	background-image: none;
}

.fv__button-text:hover {
	box-shadow: 0 4px 7px rgba(0, 0, 0, 0.5);
	cursor: pointer;
	transform: translateY(-5px);
}

.fv__box {
	align-items: flex-start;
	display: flex;
	gap: 0.375rem;
	margin-top: 1.4375rem;
}

.fv__icon {
	height: 0.890625rem;
	width: 0.890625rem;
}

.fv__text {
	font-size: 0.625rem;
	font-weight: 700;
	line-height: 1.8;
}

.header__hamburger {
	padding: 0;
	padding: 1.1875rem 1.125rem 1.25rem;
	z-index: 9999;
}

.header__hamburger span {
	background: #0766F4;
	display: block;
	height: 0.0625rem;
	position: relative;
	transition: transform 0.3s ease, opacity 0.3s ease;
	width: 1.625rem;
	will-change: transform, opacity;
}

.header__hamburger span:nth-child(1) {
	top: 0;
}

.header__hamburger span:nth-child(2) {
	margin: 0.5625rem 0;
}

.header__hamburger span:nth-child(3) {
	top: 0;
}

.header__hamburger.is-open span:nth-child(1) {
	opacity: 0;
	transform: translateY(-0.3125rem);
}

.header__hamburger.is-open span:nth-child(3) {
	opacity: 0;
	transform: translateY(0.3125rem);
}

body.fixed {
	height: 100%;
	position: fixed;
	width: 100%;
}

.no-scroll {
	overflow: hidden;
}

.header__sp-nav {
	background-color: #fff;
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	top: 3.75rem;
	transform: translateX(-100%);
	transition: transform 0.3s ease;
	z-index: 8888;
}

.header__sp-nav.is-open {
	transform: translateX(0);
}

.header-sp__content {
	box-sizing: border-box;
	height: 100%;
	overflow-y: auto;
	padding: 2.5rem 2.1875rem;
	position: relative;
	width: 100%;
}

.header-sp__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 25rem;
}

.header-sp__contact {
	border-bottom: solid 1px #0766F4;
	margin-top: 1.125rem;
	padding-bottom: 1.375rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.header-sp__contact-item + .header-sp__contact-item {
	margin-top: 1.25rem;
}

.header-sp__contact-box {
	background-color: #0766F4;
	color: #000;
	padding: 1.25rem 0 1.1875rem;
	text-align: center;
}

.header-sp__contact-box--color {
	background-color: #fff;
}

.header-sp__contact-en {
	font-family: "Montserrat", sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1;
	text-transform: uppercase;
}

.header-sp__contact-jp {
	font-size: 0.625rem;
	font-weight: 500;
	line-height: 2;
}

.header {
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 1000;
}

.header__inner {
	align-items: center;
	display: flex;
	height: 3.75rem;
	justify-content: space-between;
	padding-left: 1.5625rem;
	transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.header__inner--scrolled {
	background-color: #fff;
	box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.1);
}

.header__logoLink img {
	height: 2.375rem;
	position: relative;
	width: 20.4375rem;
	z-index: 9999;
}

.inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.pc-nav__flex {
	align-items: center;
	display: flex;
	gap: 1.5625rem;
}

.pc-nav__list {
	display: flex;
}

.pc-nav__item {
	align-items: center;
	display: flex;
	height: inherit;
	justify-content: center;
}

.pc-nav__link {
	align-items: center;
	display: flex;
	gap: 0 0.625rem;
	justify-content: center;
	padding: 0 min(1.4vw, 15px);
	will-change: transform;
}

.pc-nav__text {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	transition: color 0.3s ease;
	white-space: nowrap;
}

.pc-nav__item--hover-effect .pc-nav__link {
	display: inline-block;
	overflow: hidden;
	position: relative;
	transition: transform 0.3s ease;
	will-change: transform;
}

.pc-nav__item--hover-effect .pc-nav__link::after {
	background-color: #000;
	bottom: 0;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease;
	width: 100%;
}

.pc-nav__item--hover-effect .pc-nav__link:hover::after {
	transform: scaleX(1);
}

.pc-nav__buttons {
	align-items: center;
	display: flex;
	gap: 1rem;
}

.pc-nav__button-text {
	align-items: center;
	background: linear-gradient(to right, #D31027 0%, #EA384D 100%);
	border: solid 1px #fff;
	border-radius: 5rem;
	color: #fff;
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 700;
	justify-content: center;
	line-height: 1;
	overflow: hidden;
	padding: 0.9375rem 1.5rem 1.0625rem;
	position: relative;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 10.25rem;
}

.pc-nav__button-text::after {
	content: "→";
	font-size: 0.75rem;
	opacity: 0;
	position: absolute;
	right: 0.5rem;
	transform: translateX(10px);
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.pc-nav__button-text--white {
	background: #fff;
	border: solid 1px #0766F4;
	color: #0B59FA;
}

.pc-nav__button-text:hover::after,
.pc-nav__button-text--white:hover::after {
	opacity: 1;
	transform: translateX(0);
}

.price__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 3.75rem;
}

.price__list {
	display: flex;
	flex-direction: column;
	gap: 2.75rem;
	margin-top: 1.875rem;
}

.price__item {
	position: relative;
	text-align: center;
	width: 100%;
}

.price__cycle {
	background-color: #FF7A00;
	border-radius: 50%;
	color: #fff;
	display: inline-block;
	font-size: 0.8125rem;
	font-weight: 700;
	left: 50%;
	line-height: 2.3076923077;
	padding: 1.1875rem 0.5rem;
	position: absolute;
	top: -4%;
	transform: translate(-50%, 0%);
}

.price__content {
	border-bottom: solid 2px #DCDCDC;
	border-left: solid 2px #DCDCDC;
	border-radius: 0 0 0.625rem 0.625rem;
	border-right: solid 2px #DCDCDC;
	display: flex;
	flex-direction: column;
	padding: 0.75rem 0rem 1.375rem;
}

.price__content--blue {
	padding: 1.875rem 0rem 1.375rem;
}

.price__head {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2.2833333333;
}

.price__head--blue,
.price__number--blue,
.price__number-en--blue {
	color: #0766F4;
}

.price__number {
	font-size: 2.75rem;
	font-weight: 700;
	line-height: 1.2454545455;
}

.price__number-en {
	font-size: 1.5rem;
	left: 0.1875rem;
	position: relative;
}

.price__number-tax {
	color: #acacac;
	font-size: 0.6875rem;
	font-weight: 700;
}

.price__page {
	align-items: center;
	display: flex;
	gap: 0 0.3125rem;
	justify-content: center;
	margin-top: 1.25rem;
}

.price__page-icon {
	height: 0.729375rem;
	position: relative;
	top: -0.0625rem;
	width: 0.5625rem;
}

.price__page-text {
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 1;
}

.price__dl {
	margin-top: 1.25rem;
	text-align: left;
}

.price__box {
	align-items: center;
	display: flex;
	gap: 0.4375rem;
	justify-content: flex-start;
	padding-left: 1.9375rem;
}

.price__box + .price__box {
	margin-top: 0.875rem;
}

.price__dt img {
	height: 1.125rem;
	width: 1.125rem;
}

.price__dd {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
}

.price__dd--gray {
	color: rgba(0, 0, 0, 0.2);
}

.price__bottom {
	margin-top: 1.5625rem;
}

.price__deliverables {
	background-color: #0766F4;
	border-radius: 0.25rem;
	color: #fff;
	display: inline-block;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
	padding: 0.46875rem 0.90625rem;
}

.price__itemization {
	margin-top: 0.75rem;
	padding-left: 3.9375rem;
	text-align: left;
}

.price__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.875;
}

.price__buttons {
	margin-top: 1.25rem;
	text-align: center;
}

.problem {
	text-align: center;
}

.problem__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 2.1875rem;
}

.problem__list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 0.625rem;
}

.problem__item {
	width: 100%;
}

.problem__sentence {
	margin-top: 0.25rem;
}

.problem__head {
	color: #0766F4;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
}

.problem__head {
	-webkit-text-decoration: none;
	color: #0766F4;
	display: inline-block;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	position: relative;
	text-decoration: none;
}

.problem__head::after {
	background-color: currentColor;
	bottom: -0.3125rem;
	content: "";
	height: 0.1875rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.problem__text {
	align-items: center;
	color: #808080;
	display: flex;
	font-size: 1rem;
	font-weight: 700;
	justify-content: center;
	line-height: 1.5;
	min-height: 2.5rem;
	text-align: center;
}

.problem__text--center {
	min-height: 3rem;
}

.problem__human {
	margin-left: auto;
	margin-right: auto;
	width: 29.69%;
}

.problem__human img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.season {
	background-color: #F6F9FF;
	padding: 2.5rem 0 2.27875rem;
	text-align: center;
}

.season__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding: 0 3.15625rem;
}

.season__subtitle {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4285714286;
	margin-top: 1.25rem;
}

.season__list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 1.25rem;
}

.season__item {
	background-color: #fff;
	border-radius: 0.949375rem;
	padding: 0.9375rem 1.75rem 1.25rem;
	width: 100%;
}

.season__head {
	background-color: #0766F4;
	border-radius: 7.120625rem;
	color: #fff;
	font-size: 0.854375rem;
	font-weight: 700;
	line-height: 1.6678858815;
	padding: 0.4275rem 0 0.41375rem;
}

.season__img img {
	display: block;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

.season__img--hand {
	margin-top: 1.271875rem;
	padding-bottom: 0.4225rem;
}

.season__img--hand img {
	height: 4.80875rem;
	width: 5.74375rem;
}

.season__img--date {
	margin-top: 1.810625rem;
	padding-bottom: 1.439375rem;
}

.season__img--date img {
	height: 4.678125rem;
	width: 5.126875rem;
}

.season__img--follow {
	margin-top: 1.75625rem;
	padding-bottom: 1.44875rem;
}

.season__img--follow img {
	height: 4.010625rem;
	width: 4.4625rem;
}

.season__img--plan {
	margin-top: 2.18375rem;
	padding-bottom: 1.785625rem;
}

.season__img--plan img {
	height: 3.958125rem;
	width: 3.038125rem;
}

.season__text {
	font-size: 0.854375rem;
	font-weight: 700;
	line-height: 1.6678858815;
}

.section-title {
	display: flex;
	flex-direction: column;
	text-align: center;
}

.section-title__en {
	color: #0766F4;
	font-family: "Montserrat", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}

.section-title__jp {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 0.4375rem;
}

.sp-nav__item {
	border-bottom: solid 1px #CECECE;
	padding-bottom: 0.625rem;
	width: 53.125%;
}

.sp-nav__item--margin {
	margin-top: 2.5rem;
}

.sp-nav__item + .sp-nav__item {
	margin-top: 2.5rem;
}

.sp-nav__text {
	color: #0766F4;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.44;
}

.sp-nav__arrow {
	height: 0.4375rem;
	transition: transform 0.3s ease;
	width: 0.8125rem;
	will-change: transform;
}

.open .sp-nav__arrow {
	transform: rotate(180deg);
}

.sp-nav__arrow.is-rotated {
	transform: rotate(180deg);
	transition: transform 0.3s ease;
	will-change: transform;
}

.sp-nav__in-content {
	margin-top: 1.25rem;
}

.sp-nav__in-list {
	margin-top: 1.25rem;
}

.sp-nav__in-item + .sp-nav__in-item {
	margin-top: 1.25rem;
}

.sp-nav__in-wrapper {
	margin-top: 1.25rem;
}

.sp-nav__in-text {
	color: #0766F4;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.25;
}

.sp-nav__contact {
	background-color: #0766F4;
	color: #fff;
	margin-top: 2.5rem;
	padding: 0.9375rem 0 1rem;
	text-align: center;
}

.sp-nav__contact-link {
	align-items: center;
	display: flex;
	gap: 4.125rem;
	text-align: center;
}

.sp-nav__contact-jp {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 2.0571428571;
}

.sp-nav__icon {
	-o-object-fit: contain;
	aspect-ratio: 1/1;
	height: 1.5rem;
	margin-left: 1.875rem;
	object-fit: contain;
	transition: transform 0.3s ease;
	width: 1.5rem;
	will-change: transform;
}

.swiper-left .swiper-wrapper,
.swiper-right .swiper-wrapper {
	transition-timing-function: linear;
}

.swiper-slide img {
	height: auto;
	width: 100%;
}

.form-privacy__text{
	position: relative;
    top: -2px;
	margin-left: 0.25rem;
}

a.form-privacy__link {
  color: #007BFF;
  text-decoration: underline;
}


@media screen and (min-width: 768px) {

	.form-privacy__text{
		top: 0;
	}

.fv__icon{
	margin-top: 0;
}

.form__item input,
.form__item textarea {
	margin-top: 0.75rem;
}

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

html {
	font-size: 1.3114754098vw;
}

.top-contact {
	margin-top: 2.5rem;
}

.top-delegation {
	margin-top: 0rem;
}

.top-faq {
	margin-top: 5rem;
}

.top-feature {
	margin-top: 5rem;
}

.top-flow {
	margin-top: 5rem;
}

.top-footer {
	margin-top: 6.25rem;
}

.top-price {
	margin-top: 6.25rem;
}

.top-problem {
	margin-top: 2.5rem;
}

.top-season {
	margin-top: 5rem;
}

.top-slide {
	margin-top: 0rem;
}

.button__comment {
	font-size: 1.1875rem;
	line-height: 1.5789473684;
}

.button__frame {
	margin-top: 0.625rem;
}

.button__text {
	border-radius: 0.364375rem;
	box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
	font-size: 1.5rem;
	line-height: 2.5;
	padding: 0.375rem 0 0.4375rem;
	width: 30.375rem;
}

.button__text::after {
	height: 1.291875rem;
	right: 2.5rem;
	width: 1.614375rem;
}

.contact__inner {
	max-width: 66.875rem;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.contact__container {
	align-items: flex-start;
	display: flex;
	gap: 0 3rem;
	justify-content: flex-end;
	margin-top: 2.5rem;
}

.contact__sentence {
	width: 47.2%;
}

.contact__head,
.contact__text {
	line-height: 1.875;
	padding: 0;
}

.contact__text {
	margin-top: 1.25rem;
}

.contact__content {
	flex-direction: column;
	margin-top: 1.25rem;
}

.contact__wrapper {
	padding-bottom: 1.25rem;
}

.contact__support {
	font-size: 2rem;
	line-height: 1.25;
	margin-top: 0rem;
	text-align: left;
}

.contact__list {
	gap: 1.25rem 1.0625rem;
	margin-top: 1.25rem;
}

.contact__item {
	max-width: calc(25% - 0.796875rem);
}

.contact__form {
	border-radius: 1.25rem;
	box-shadow: 0 0 74px rgba(171, 171, 171, 0.29);
	margin-top: 0rem;
	padding: 2.5rem;
	width: 48.423%;
}

.delegation__heading {
	padding-bottom: 1.5625rem;
	padding-top: 1.5625rem;
}

.delegation__title {
	font-size: 2rem;
}

.delegation__title span {
	font-size: 2.625rem;
}

.delegation__inner {
	max-width: 75.625rem;
}

.delegation__logo {
	margin-top: 5.4375rem;
}

.delegation__logo img {
	height: 3.964375rem;
	width: 33.75rem;
}

.delegation__pro {
	font-size: 2.625rem;
	line-height: 2.1261904762;
	margin-top: 0.473125rem;
}

.delegation__comment {
	border-radius: 3.75rem;
	font-size: 1.5rem;
	line-height: 2.2916666667;
	margin: 2.5625rem auto 0;
	padding-bottom: 0.1875rem;
	padding-top: 0.0625rem;
	width: 40.5625rem;
}

.delegation__comment-pointer {
	border-left: 0.5rem solid transparent;
	border-right: 0.5rem solid transparent;
}

.delegation__professional {
	font-size: 2rem;
	line-height: 1.7125;
	margin-top: 2rem;
}

.delegation__text {
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.25rem;
	max-width: 48.75rem;
	padding: 0;
}

.delegation__list {
	flex-wrap: nowrap;
	gap: 2.5rem;
	margin-top: 2.5rem;
	padding: 0;
}

.delegation__item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-bottom: 2.3125rem;
	padding-top: 1.125rem;
	width: 12.5rem;
}

.delegation__item--sns {
	padding-bottom: 2.3125rem;
	padding-top: 2.0625rem;
}

.explanation__company img {
	height: 5.35rem;
	width: 5.35rem;
}

.explanation__company--sns img {
	height: 3.55rem;
	width: 10.82rem;
}

.faq-toggle__title-box {
	font-size: 1.25rem;
	line-height: 1.5;
}

.faq-toggle__question-jp {
	padding-right: 0;
}

.faq-toggle__text {
	padding: 0;
}

.faq {
	padding: 3.75rem 0 5rem;
}

.faq__inner {
	max-width: 53.375rem;
	padding: 0;
}

.faq__accordion-list {
	margin-top: 2.5rem;
}

.faq__accordion-item + .faq__accordion-item {
	margin-top: 1.875rem;
}

.feature__container {
	margin-top: 2.5rem;
}

.flow-sp__flex + .flow-sp__flex {
	margin-top: 0.625rem;
}

.flow__inner {
	max-width: 51.25rem;
	padding: 0;
}

.flow__subtitle {
	font-size: 1rem;
	line-height: 1.25;
	margin-top: 1.25rem;
}

.flow__container {
	margin-top: 2.5rem;
}

.flow__setup {
	margin-top: 2.6875rem;
}

.flow__setup-headline {
	font-size: 1.375rem;
}

.flow__setup-highlight {
	font-size: 1.875rem;
	margin-right: 0.418125rem;
	padding: 0.5rem 1.0625rem 0.75rem 1rem;
}

.flow__setup-description {
	font-size: 1.375rem;
	margin-top: 1rem;
}

.flow__buttons {
	margin-top: 3.75rem;
}

.footer {
	padding: 1.25rem 0;
}

.footer__inner {
	max-width: 78.625rem;
	padding: 0 1.5625rem;
}

.footer__list {
	align-items: center;
	display: flex;
	gap: 2.5rem;
	justify-content: flex-end;
	text-align: left;
}

.footer__item {
	line-height: 5.625;
}

.footer__item + .footer__item {
	margin-top: 0rem;
}

.footer__item a::after {
	background-color: currentColor;
	bottom: 1.875rem;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	transition: width 0.3s ease;
	width: 0;
}

.footer__item a:hover::after {
	width: 100%;
}

.footer__logo {
	margin-top: 0rem;
}

.footer__logo img {
	height: 3.0625rem;
	width: 26.125rem;
}

.footer__content {
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-top: 1.125rem;
}

.footer__buttons {
	align-items: center;
	display: flex;
	gap: 1.25rem;
}

.footer__button + .footer__button {
	margin-top: 0rem;
}

.footer__button-text:hover::after,
.footer__button-text--white:hover::after {
	opacity: 1;
	transform: translateX(0);
}

.footer__privacy {
	margin-top: 4.43875rem;
}

.footer__privacy a::after {
	background-color: currentColor;
	bottom: -0.3125rem;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	transition: width 0.3s ease;
	width: 0;
}

.footer__privacy a:hover::after {
	width: 100%;
}

.footer__copyright {
	font-size: 1.25rem;
	line-height: 1.2;
}

.form__item + .form__item {
	margin-top: 1.25rem;
}

.form__item label {
	font-size: 1rem;
	line-height: 1.875;
	margin-bottom: 0.625rem;
}

.form__item .required {
	font-size: 0.625rem;
	margin-left: 0.3125rem;
}

.form__item input,
.form__item textarea {
	font-size: 0.875rem;
	line-height: 2.1428571429;
}

.form__item textarea {
	height: 13.625rem;
}

.form__box input {
	width: 11.375rem;
}

.btn__top {
	margin: 2.5rem auto auto auto;
	width: 100%;
}

.btn-submit__body[type=submit] {
	font-size: 1rem;
	padding: 1.125rem 0rem 1.0625rem;
	width: 23.6875rem;
}

.btn-submit:hover::after {
	pointer-events: none;
	transform: scale(1, 1);
}

.form__error,
.wpcf7-not-valid-tip {
	font-size: 1.03875rem;
}

.fv {
	background-image: url("../images/common/fv-bg.webp");
	margin-top: 5.625rem;
}

.fv__inner {
	max-width: 76.875rem;
	padding: 0 0 0 3.125rem;
}

.fv__bg {
	max-width: 90rem;
}

.fv__bg::before {
	background-image: url("../images/common/fv-human.webp");
	height: 98.416%;
	right: calc(50% - min(43%, 50rem));
	top: 0.5rem;
	width: 33.82%;
}

.fv__content {
	padding-bottom: 6.375rem;
	padding-top: 2.3125rem;
}

.fv__logo {
	height: 3.964375rem;
	margin: 0;
	margin: initial;
	width: 33.75rem;
}

.fv__title {
	margin-top: 1.875rem;
	padding: 0;
}

.fv__title-sub {
	font-size: 1.5rem;
	line-height: 1;
}

.fv__title-main {
	font-size: 2.625rem;
	line-height: 1.5;
	margin-top: 0.625rem;
}

.fv__title-main-font {
	font-size: 2.625rem;
}

.fv__company {
	height: 10.625rem;
	margin-left: 0rem;
	margin-top: 1.875rem;
	width: 36.25rem;
}

.fv__company img {
	aspect-ratio: 580/170;
}

.fv__wrapper {
	flex-direction: column;
}

.fv__buttons {
	gap: 1.875rem;
	margin-top: 1.8125rem;
}

.fv__button-text {
	border-radius: 0.364375rem;
	font-size: 1.5rem;
	line-height: 2.5;
	padding: 0.375rem 2.5rem 0.4375rem 0;
	width: 19.3125rem;
}

.fv__button-text::after {
	height: 1.291875rem;
	right: 2.5rem;
	width: 1.614375rem;
}

.fv__button-text--white {
	border-radius: 0.625rem;
	padding: 0.375rem 0rem 0.4375rem;
}

.fv__box {
	align-items: center;
	gap: 0.375rem;
	margin-top: 1.25rem;
}

.fv__icon {
	height: 1.125rem;
	width: 1.125rem;
}

.fv__text {
	font-size: 1.0625rem;
	line-height: 3.2235294118;
}

.header__hamburger {
	display: none;
}

.header__sp-nav {
	display: none;
}

.header__inner {
	height: 5.625rem;
	padding-left: 2.625rem;
	padding-right: 1.875rem;
}

.inner {
	max-width: 1270px;
	padding-left: 25px;
	padding-right: 25px;
}

.price__inner {
	max-width: 58.125rem;
	padding: 0;
}

.price__list {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 3.75rem;
	margin-top: 4rem;
}

.price__item {
	margin: 0;
	max-width: calc(33.3333% - 2.5rem);
}

.price__content {
	min-height: 38.875rem;
	padding: 1.5625rem 0rem 0rem;
}

.price__content--blue {
	padding: 1.5625rem 0rem 0rem;
}

.price__wrapper {
	min-height: 25rem;
}

.price__number {
	margin-top: 0.25rem;
}

.price__page {
	margin-top: 1.875rem;
}

.price__dl {
	margin-top: 1.875rem;
}

.price__bottom {
	margin-top: 1.75rem;
}

.price__buttons {
	margin-top: 5rem;
}

.problem__inner {
	max-width: 68.75rem;
	padding: 0;
}

.problem__list {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 2.5rem;
	margin-top: 1.875rem;
}

.problem__item {
	margin: 0;
	max-width: calc(33.3333% - 1.6666666667rem);
}

.problem__sentence {
	margin-top: 1.875rem;
}

.problem__head {
	font-size: 1.625rem;
}

.problem__head::after {
	bottom: -0.625rem;
}

.problem__text {
	font-size: 1.25rem;
	line-height: 1.5;
	min-height: 3.75rem;
}

.problem__text--center {
	min-height: 3.75rem;
}

.problem__human {
	margin-left: auto;
	margin-right: auto;
	margin-top: -0.9375rem;
	width: 39.365%;
}

.season {
	padding: 5rem 0 7.8125rem;
}

.season__inner {
	max-width: 52.5rem;
	padding: 0;
}

.season__subtitle {
	font-size: 1rem;
	line-height: 1.25;
	margin-top: 2.5rem;
}

.season__list {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 2.5rem 5rem;
	margin-top: 3.75rem;
}

.season__item {
	border-radius: 1.25rem;
	margin: 0;
	max-width: calc(50% - 2.5rem);
	padding: 1.25rem 2.34375rem 1.75rem;
}

.season__head {
	border-radius: 9.375rem;
	font-size: 1.125rem;
	line-height: 1.6666666667;
	padding: 0.5625rem 0;
}

.season__img--hand {
	margin-top: 1.6875rem;
	padding-bottom: 0.54375rem;
}

.season__img--hand img {
	height: 6.33125rem;
	width: 7.5625rem;
}

.season__img--date {
	margin-top: 2.38375rem;
	padding-bottom: 1.895rem;
}

.season__img--date img {
	height: 6.159375rem;
	width: 6.75rem;
}

.season__img--follow {
	margin-top: 2.3125rem;
	padding-bottom: 1.906875rem;
}

.season__img--follow img {
	height: 5.280625rem;
	width: 5.875rem;
}

.season__img--plan {
	margin-top: 2.875rem;
	padding-bottom: 2.35125rem;
}

.season__img--plan img {
	height: 5.21125rem;
	width: 4rem;
}

.season__text {
	font-size: 1.125rem;
	line-height: 1.6666666667;
}

.section-title__en {
	font-size: 1.5rem;
}

.section-title__jp {
	font-size: 2rem;
	line-height: 1.71875;
	margin-top: 0.625rem;
}

}

@media (min-width: 1220px) {

html {
	font-size: 16px;
}

}

@media (max-width: 1330px) {

.header__logoLink img {
	height: 1.875rem;
	width: 16.5625rem;
}

.pc-nav__flex {
	gap: 0.625rem;
}

.pc-nav__link {
	padding: 0 min(1.4vw, 10px);
}

}

@media (max-width: 768px) {

.header__logoLink img {
	height: 1.5625rem;
	width: 13.25rem;
}

}

@media (max-width: 390px) {

html {
	font-size: 4.1025641026vw;
}

}


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