@charset "UTF-8";
/* Web Font */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Outfit:wght@700&display=swap");
/* Custom Properties */
:root {
	/* color */
	--color-text: #222222;
	--color-main: #CE002E;
	--color-main-dark: #B10028;
	--color-sub: #ECF2F7;
	/* font */
	--font-main: "Noto Sans JP", sans-serif;
	--font-en: "Outfit", sans-serif;
	/* box-shadow */
	--box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

/*-------------------------
reset
---------------------------*/
*,
*::before,
*::after {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html {
	-webkit-text-size-adjust: 100%;
}

body, input, textarea {
	font-size: 16px;
}

body {
	color: var(--color-text);
	font-family: var(--font-main);
	font-size: 16px;
	text-align: justify;
	line-height: 1.875;
	margin: 0;
	position: relative;
}

img, a, ul, li, iframe, fieldset {
	border: none;
	outline: none;
}

img {
	display: block;
	line-height: 0;
	width: 100%;
}

a {
	color: var(--color-text);
	text-decoration: none;
	transition: 0.2s ease-out;
}

h1, h2, h3, h4, ol, ul, li, dl, dt, dd, p, figure, from, iframe, fieldset, legend {
	margin-block-start: 0;
	margin-block-end: 0;
	margin: 0;
	padding: 0;
}

ol, ul {
	list-style: none;
}

h1, h2, h3, h4 {
	font-size: 100%;
	font-weight: normal;
}

em {
	font-style: normal;
}

article, aside, footer, header, main, nav, section {
	display: block;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

textarea {
	resize: vertical;
}

input, textarea, select {
	font-size: 16px;
	padding: 3px;
	border: 1px solid #b2b2b2;
	border-radius: 5px;
}

select {
	padding: 2.5px 3px;
}

label {
	display: -webkit-box;
	display: flex;
}

label input {
	display: block;
}

/* iOSでのデフォルトスタイルをリセット */
input:focus {
	outline: none;
}

input[type=submit],
input[type=button] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

input[type=radio],
input[type=checkbox] {
	display: inline-block;
	height: 2em;
	font-size: 16px;
	margin: 0 5px 0 0;
	cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
	display: none;
}

input[type=submit]:focus,
input[type=button]:focus {
	outline-offset: -2px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	margin-left: 5px;
	opacity: 0.5;
}

@media (width <= 640px) {
	.pc {
		display: none !important;
	}
}
@media (width > 640px) {
	.sp {
		display: none !important;
	}
}
/* サイド */
.box-side {
	padding-inline: 20px;
}

/* 横幅 */
.w1090 {
	width: 100%;
	max-width: 1090px;
}
.w1090.box-side {
	max-width: 1160px;
}

/* 背景色 */
/* セクション */
/* マージン */
.c-mt-s {
	margin-top: 30px !important;
}
@media (width <= 640px) {
	.c-mt-s {
		margin-top: 20px !important;
	}
}

.c-mt-m {
	margin-top: 60px !important;
}
@media (width <= 640px) {
	.c-mt-m {
		margin-top: 40px !important;
	}
}

.c-mt-l {
	margin-top: 100px !important;
}
@media (width <= 640px) {
	.c-mt-l {
		margin-top: 80px !important;
	}
}

.m-auto {
	margin-inline: auto !important;
}

/* リスト */
.c-list01 > li {
	padding-left: 1em;
	position: relative;
}
.c-list01 > li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.c-list01--notes > li::before {
	content: "※";
}
.c-list01--circle > li::before {
	content: "●";
	font-size: 0.75em;
	top: 0.25em;
}

/* 汎用タイトル */
.c-title01 {
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	line-height: 1.35;
}
@media (width <= 640px) {
	.c-title01 {
		font-size: 24px;
	}
}
.c-title01--white {
	color: #fff;
}
.c-title01--bb {
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 10px;
}

.c-title02 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.65;
	text-align: left;
}
@media (width <= 640px) {
	.c-title02 {
		font-size: 24px;
		text-align: center;
	}
}
.c-title02__en {
	display: block;
	font-family: var(--font-en);
	font-size: 0.66em;
	color: var(--color-main-dark);
}
.c-title02--bb {
	border-bottom: 3px solid var(--color-main);
	padding-bottom: 20px;
}

.c-title03 {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.625;
}
@media (width <= 640px) {
	.c-title03 {
		font-size: 20px;
	}
}

/* 汎用テキスト */
.ib {
	display: inline-block !important;
}

.lb {
	word-break: keep-all;
	overflow-wrap: anywhere;
}
.lb--l {
	text-align: left;
}
.lb--c {
	text-align: center;
}
.lb--l-c {
	text-align: left;
}
@media (width <= 640px) {
	.lb--l-c {
		text-align: center;
	}
}

.c-text-j {
	text-align: justify !important;
}

.c-text-r {
	text-align: right !important;
}

.c-text-c {
	text-align: center !important;
}

.c-fw-m {
	font-weight: 500 !important;
}

.c-fw-b {
	font-weight: bold !important;
}

.c-color-main {
	color: var(--color-main);
}

.c-text01 {
	font-weight: 500;
	color: #fff;
	border-left: 4px solid var(--color-main);
	padding: 5px 0 5px 33px;
}
@media (width <= 640px) {
	.c-text01 {
		padding-left: 20px;
	}
}
.c-text01--fz18 {
	font-size: 18px;
	line-height: 1.66;
}
@media (width <= 640px) {
	.c-text01--fz18 {
		font-size: 16px;
	}
}
.c-text01--c-black {
	color: var(--color-text);
}
.c-text01--b-white {
	border-color: #fff;
}

/* 汎用ボタン */
.c-btn01 {
	display: flex;
	align-items: center;
	font-weight: bold;
	color: #fff;
	width: min(100%, 300px);
	min-height: 70px;
	background-color: var(--color-main);
	padding: 5px 45px 5px 25px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.c-btn01::before {
	content: "";
	display: block;
	width: 33.3333333333%;
	height: 100%;
	background-color: var(--color-main-dark);
	position: absolute;
	inset: 0 0 auto auto;
	z-index: -1;
	clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%);
	transition: 0.2s ease-out;
}
.c-btn01::after {
	content: "";
	display: block;
	width: 12px;
	aspect-ratio: 1;
	background: url(../img/common/arrow_s.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 30px auto auto;
	translate: 0 -50%;
	transition: 0.2s ease-out;
}
@media (any-hover: hover) {
	.c-btn01:hover::before {
		translate: 100% 0;
	}
	.c-btn01:hover::after {
		right: 20px;
	}
}

/* フェードイン */
.c-feed {
	translate: 0 100px;
	opacity: 0;
	transition: opacity 1s, translate 1s;
}
.c-feed.animated {
	translate: 0 0;
	opacity: 1;
}

/* 矢印アニメーション */
@keyframes nudgeDown {
	0% {
		transform: translateX(0);
	}
	10% {
		transform: translateX(6px);
	} /* 1回目 きゅっ */
	20% {
		transform: translateX(0);
	}
	35% {
		transform: translateX(6px);
	} /* 2回目 きゅっ */
	45% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(0);
	} /* 余韻（間） */
}
.header {
	min-height: 883px;
	background: url(../img/home/mv_bg.jpg) center/cover no-repeat;
	position: relative;
}
@media (width <= 640px) {
	.header {
		min-height: auto;
	}
}
.header__title {
	display: grid;
	place-items: center;
	width: 430px;
	height: 70px;
	background-color: #fff;
	padding: 20px 26px;
	position: absolute;
	inset: 0 auto auto 0;
}
@media (width <= 640px) {
	.header__title {
		width: 100%;
		padding: 10px 20px;
	}
}
.header__title a {
	width: min(100%, 300px);
}
.header__inner {
	width: min(100%, 1150px);
	padding: 160px 20px;
	margin-inline: auto;
}
@media (width <= 640px) {
	.header__inner {
		padding: 130px 20px 100px;
	}
}
.header__inner > * + * {
	margin-top: 45px;
}
.header__catch {
	font-size: 40px;
	font-weight: bold;
	color: #fff;
	line-height: 1.45;
}
@media (width <= 640px) {
	.header__catch {
		font-size: 30px;
	}
}
@media (width <= 960px) {
	.header__box {
		width: min(100%, 600px);
		margin-inline: auto;
		position: relative;
	}
}
@media (width <= 640px) {
	.header__box {
		position: static;
	}
}
.header__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	width: min(100%, 610px);
	margin-inline: auto;
	position: relative;
	z-index: 1;
}
@media (width <= 640px) {
	.header__list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}
.header__list-item {
	display: grid;
	place-items: center;
	font-weight: 500;
	color: var(--color-main);
	min-height: 80px;
	background-color: #fff;
	padding: 10px;
	position: relative;
}
.header__list-item::before {
	content: "";
	display: block;
	width: 24px;
	aspect-ratio: 1;
	background-color: var(--color-main);
	position: absolute;
	inset: 0 auto auto 0;
	clip-path: polygon(0 0, 100% 0, 0 100%);
}
.header__img {
	width: min(21.56%, 414px);
	position: absolute;
	inset: auto 15.78% 0 auto;
	z-index: 1;
}
@media (width <= 1400px) {
	.header__img {
		width: 25%;
		right: 0;
	}
}
@media (width <= 960px) {
	.header__img {
		width: 150px;
		margin-inline: auto 20px;
		position: relative;
		inset: auto;
	}
}
.header__line {
	width: min(44.89%, 862px);
	position: absolute;
	inset: auto 0 0 auto;
}
@media (width <= 1400px) {
	.header__line {
		width: 50%;
	}
}
@media (width <= 960px) {
	.header__line {
		width: 960px;
		inset: -100px calc(-50vw + 50%) auto auto;
	}
}
@media (width <= 640px) {
	.header__line {
		width: 120%;
		inset: 390px 0 auto auto;
	}
}
@media (width <= 500px) {
	.header__line {
		inset: auto 0 30% auto;
	}
}

.footer__cv {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.375;
	width: 160px;
	aspect-ratio: 1;
	border: 1px solid var(--color-main-dark);
	border-right: 0;
	border-bottom: 0;
	background-color: var(--color-main-dark);
	border-top-left-radius: calc(infinity * 1px);
	padding: 23px 7px 23px 21px;
	position: fixed;
	inset: auto 0 0 auto;
	z-index: 100;
}
@media (width <= 640px) {
	.footer__cv {
		opacity: 0;
		pointer-events: none;
		width: min(100%, 230px);
		aspect-ratio: auto;
		padding: 15px 10px 15px 20px;
	}
}
.footer__cv::after {
	content: "";
	display: block;
	width: 67px;
	aspect-ratio: 1;
	background: url(../img/common/fixed_1.svg) center/contain no-repeat;
	position: absolute;
	inset: 0 auto auto 20px;
	filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.2));
}
@media (width <= 640px) {
	.footer__cv::after {
		width: 50px;
		left: 0;
	}
}
@media (any-hover: hover) {
	.footer__cv:hover {
		color: var(--color-main-dark);
		background-color: #fff;
	}
}
.footer__cv--visible {
	opacity: 1;
	pointer-events: auto;
}

/*======================================
c-container
======================================*/
.c-container {
	max-width: 1280px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 40px;
	padding-left: 40px;
}

.c-container--wide {
	max-width: 1820px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 40px;
	padding-left: 40px;
}

@media screen and (max-width: 768px) {
	.c-container {
		padding-right: 20px;
		padding-left: 20px;
	}
	.c-container--wide {
		padding-right: 20px;
		padding-left: 20px;
	}
}
/*======================================
l-footer
======================================*/
.l-footer {
	position: relative;
	padding-bottom: 200px;
}

.l-footerTop {
	padding: 100px 0;
	background: #222222;
	color: #fff;
}

.l-footerTop__head {
	display: flex;
	align-items: center;
}

.l-footerTop__title strong {
	font-size: 15px;
	font-weight: 700;
	display: block;
	padding-left: 25px;
	position: relative;
	line-height: 1;
	margin-top: 5px;
}

.l-footerTop__title strong::before {
	content: "";
	background: #fff;
	width: 16px;
	height: 3px;
	display: block;
	position: absolute;
	top: calc(50% + 4px);
	left: 0;
	transform: translate(0, -50%);
}

.l-footerTop__title strong::after {
	content: "";
	background: #CE002E;
	width: 16px;
	height: 3px;
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	left: 0;
	transform: translate(0, -50%);
}

.l-footerTop__title span {
	font-size: 36px;
	font-weight: 700;
	display: block;
	line-height: 1.5;
}

.l-footerTop__title span::first-letter {
	color: #CE002E;
}

.l-footerTop__text {
	color: #777777;
	flex: 1;
	margin-left: 60px;
}

.l-footerTop__body {
	margin-top: 50px;
}

.l-footerInfo {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.l-footerInfo__item {
	background: #171717;
	padding: 50px;
	margin-left: 50px;
	width: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.l-footerInfo__item:first-child {
	margin-left: 0;
}

.l-footerInfo__title {
	font-size: 20px;
	font-weight: 700;
	padding-bottom: 50px;
	position: relative;
	margin-bottom: 20px;
}

.l-footerInfo__title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	display: block;
}

.l-footerInfo__title--tel::after {
	background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_tel_001.svg) no-repeat center center/39px;
	width: 39px;
	height: 39px;
}

.l-footerInfo__title--mail::after {
	background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_mail_002.svg) no-repeat center center/50px 39px;
	width: 50px;
	height: 39px;
}

.l-footerInfo__number {
	font-size: 34px;
	font-weight: 700;
	line-height: 1;
}

.l-footerInfo__hour {
	font-size: 15px;
	margin-top: 5px;
}

.l-footerInfo__link {
	width: 100%;
}

.l-footerInfo__link a {
	margin: auto;
}

.l-footerBottom {
	padding: 45px 0;
	position: relative;
}

.l-footerBottom__inner {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

.l-footerBottom__containerBox {
	display: flex;
	align-items: center;
}

.l-footerCompany__address {
	font-style: normal;
	font-size: 14px;
	font-weight: bold;
	margin-left: 30px;
}

.l-footerCompany__address span {
	display: inline-block;
}

.l-footerNav {
	margin-top: 15px;
}

.l-footerNav__list {
	display: flex;
	flex-wrap: wrap;
}

.l-footerNav__item {
	margin-left: 30px;
	font-size: 14px;
	font-weight: bold;
}

.l-footerNav__item:first-child {
	margin-left: 0;
}

.l-footer__copyright {
	font-size: 12px;
	font-weight: 700;
	color: #A8A8A8;
	margin-left: 30px;
	text-align: right;
}
.l-footer__copyright * {
	color: #A8A8A8;
}

.l-footer__scroll {
	display: flex;
	align-items: center;
	position: absolute;
	top: 40px;
	right: 40px;
}

.l-footer__scroll span {
	margin-right: 15px;
	font-size: 12px;
	font-weight: 700;
}

.l-footer__scroll a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 40px;
	background: #CE002E;
}

.l-footer__scroll a::after {
	content: "";
	background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_arr_001.svg) no-repeat center center;
	width: 13px;
	height: 13px;
	display: block;
	transform: rotate(-90deg);
}

@media screen and (max-width: 1200px) {
	.l-footerInfo__item {
		padding: 30px;
		margin-left: 30px;
	}
	.l-footerBottom__inner {
		flex-direction: column;
		align-items: center;
	}
	.l-footerNav {
		display: flex;
		justify-content: center;
	}
	.l-footer__copyright {
		margin: 20px 0 0 0;
		text-align: center;
	}
	.l-footer__scroll {
		top: auto;
		bottom: 40px;
		right: 40px;
	}
}
@media screen and (max-width: 768px) {
	.l-footer {
		padding-bottom: 60px;
	}
	.l-footerTop {
		padding: 60px 0;
	}
	.l-footerTop__head {
		display: block;
	}
	.l-footerTop__title strong {
		font-size: 13px;
		padding-left: 20px;
	}
	.l-footerTop__title strong::before {
		width: 12px;
		height: 2px;
		top: calc(50% + 2.5px);
	}
	.l-footerTop__title strong::after {
		width: 12px;
		height: 2px;
		top: calc(50% - 2.5px);
	}
	.l-footerTop__title span {
		font-size: 30px;
	}
	.l-footerTop__text {
		margin: 20px 0 0 0;
	}
	.l-footerInfo__number {
		font-size: 7vw;
	}
	.l-footerTop__body {
		margin-top: 30px;
	}
	.l-footerInfo {
		flex-direction: column;
	}
	.l-footerInfo__item {
		margin: 20px 0 0 0;
		width: 100%;
	}
	.l-footerInfo__item:first-child {
		margin-top: 0;
	}
	.l-footerInfo__title {
		font-size: 18px;
		padding-bottom: 40px;
		margin-bottom: 20px;
	}
	.l-footerInfo__title--tel::after {
		background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_tel_001.svg) no-repeat center center/35px;
		width: 35px;
		height: 35px;
	}
	.l-footerInfo__title--mail::after {
		background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_mail_002.svg) no-repeat center center/45px 25px;
		width: 45px;
		height: 25px;
	}
	.l-footerBottom__containerBox {
		flex-direction: column;
	}
	.l-footerCompany__address {
		margin: 20px 0 0 0;
		text-align: left;
	}
	.l-footerNav {
		display: none;
	}
	.l-footer__copyright {
		font-size: 10px;
		text-align: left;
		margin-right: auto;
	}
	.l-footer__copyright span {
		display: none;
	}
	.l-footer__scroll {
		bottom: 40px;
		right: 20px;
	}
	.l-footer__scroll span {
		display: none;
	}
	.l-footer__scroll a {
		width: 35px;
		height: 35px;
	}
}
/*======================================
c-button
======================================*/
.c-button {
	font-size: 17px;
	font-weight: 900;
	width: 100%;
	height: 64px;
	max-width: 375px;
	border-radius: 100px;
	padding: 0 20px;
	background: #CE002E;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: auto;
	position: relative;
	color: #fff;
	line-height: 1;
}

.c-button::after {
	content: "";
	background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_arr_001.svg) no-repeat center center;
	width: 13px;
	height: 13px;
	display: block;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%);
}

.c-button--w {
	background: #fff;
	color: #CE002E;
}

.c-button--w::after {
	background: url(https://www.s-tc.jp/cmscp/wp-content//uploads/icon_arr_005.svg) no-repeat center center;
}

.c-button__caption {
	display: block;
	font-size: 12px;
	text-align: center;
	line-height: 1.4;
}

.c-button--icoDown::after {
	transform: translate(0, -50%) rotate(90deg);
}

@media screen and (max-width: 768px) {
	.c-button {
		font-size: 15px;
		height: 55px;
	}
	.c-button__caption {
		font-size: 10px;
	}
}
/* 導入セクション */
.intro {
	width: min(100%, 1720px);
	background-color: var(--color-sub);
	border-radius: 4px;
	padding: 90px 20px 80px;
	margin: -150px auto 0;
	position: relative;
	z-index: 1;
}
@media (width <= 1720px) {
	.intro {
		border-radius: 0;
		margin-top: 0;
	}
}
.intro::before {
	content: "";
	display: block;
	width: 88px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: -44px auto auto 50%;
	translate: -50% 0;
	rotate: 90deg;
	animation: nudgeDown 1.6s infinite;
	will-change: transform;
}
.intro > * + * {
	margin-top: 35px;
}
.intro__text {
	text-align: center;
	line-height: 1.6;
}
@media (width <= 640px) {
	.intro__text {
		text-align: justify;
	}
}
.intro__text + .intro__text {
	margin-top: 1em;
}

/* ステップ */
.step {
	width: min(100%, 1350px);
	padding: 130px 20px 50px;
	margin-inline: auto;
}
@media (width <= 640px) {
	.step {
		padding-top: 80px;
	}
}
.step__text {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	line-height: 1.66;
	width: fit-content;
	background-color: var(--color-text);
	padding: 7px 30px;
	margin: 10px auto 0;
}
.step__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 100px;
	margin-top: 50px;
}
@media (width <= 960px) {
	.step__list {
		gap: 60px;
	}
}
@media (width <= 767px) {
	.step__list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		width: min(100%, 640px);
		margin-inline: auto;
	}
}
.step__list-item {
	box-shadow: var(--box-shadow);
	border-radius: 4px;
	padding: 40px 30px;
	position: relative;
}
@media (width > 767px) {
	.step__list-item:nth-child(2) {
		transition-delay: 0.2s;
	}
	.step__list-item:nth-child(3) {
		transition-delay: 0.4s;
	}
}
@media (width <= 960px) {
	.step__list-item {
		padding-inline: 20px;
	}
}
.step__list-item:not(:last-child)::after {
	content: "";
	display: block;
	width: 60px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/14px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: 50% -80px auto auto;
	translate: 0 -50%;
}
@media (width <= 960px) {
	.step__list-item:not(:last-child)::after {
		width: 40px;
		right: -50px;
	}
}
@media (width <= 767px) {
	.step__list-item:not(:last-child)::after {
		inset: auto auto -50px 50%;
		translate: -50% 0;
		rotate: 90deg;
	}
}
.step__list-icon {
	width: 80px;
	margin-inline: auto;
}
.step__list-title {
	font-size: 20px;
	font-weight: bold;
	color: var(--color-main);
	line-height: 1.5;
	text-align: center;
	margin-top: 15px;
}
.step__list-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.73;
	margin-top: 23px;
}
.step__text01 {
	width: fit-content;
	margin: 60px auto 0;
}

/* サービス */
.service {
	background-color: var(--color-main);
	overflow: hidden;
}
.service__sep {
	display: grid;
	place-items: center;
	min-height: 12.2vw;
	position: relative;
	z-index: 1;
}
@media (width <= 1200px) {
	.service__sep {
		place-items: start center;
		min-height: 20vw;
	}
}
@media (width <= 640px) {
	.service__sep {
		place-items: center;
		min-height: 40vw;
		width: 200%;
		margin-left: -50%;
		padding-bottom: 20px;
	}
}
.service__sep::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
	position: absolute;
	inset: -1px auto auto 0;
	z-index: -1;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.service__inner {
	padding: 70px 20px 0;
}
@media (width <= 640px) {
	.service__inner {
		padding-top: 40px;
	}
}
.service__sub-title {
	line-height: 1.85;
}
@media (width <= 640px) {
	.service__sub-title {
		font-size: 22px;
	}
}
.service__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
	width: min(100%, 1455px);
	margin: 75px auto 0;
}
@media (width <= 640px) {
	.service__list {
		margin-top: 40px;
	}
}
.service__list-item {
	width: calc((100% - 60px) / 3);
	background-color: #fff;
	border-radius: 4px;
	box-shadow: var(--box-shadow);
	padding: 55px 40px 60px;
	position: relative;
}
@media (width > 1400px) {
	.service__list-item:nth-child(3n+2) {
		transition-delay: 0.2s;
	}
	.service__list-item:nth-child(3n+3) {
		transition-delay: 0.4s;
	}
}
@media (width <= 1400px) {
	.service__list-item {
		width: calc((100% - 30px) / 2);
	}
}
@media (768px <= width <= 1400px) {
	.service__list-item:nth-child(2n+2) {
		transition-delay: 0.2s;
	}
}
@media (width <= 767px) {
	.service__list-item {
		width: 100%;
	}
}
.service__list-item > * + * {
	margin-top: 20px;
}
.service__list-title {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.service__list-icon {
	width: 120px;
	margin-inline: auto;
}
.service__list-dot {
	width: 6px;
	aspect-ratio: 1;
	background-color: var(--color-main-dark);
	border-radius: 50%;
	position: absolute;
	margin: 0;
}
.service__list-dot--tl {
	inset: 20px auto auto 20px;
}
.service__list-dot--tr {
	inset: 20px 20px auto auto;
}
.service__list-dot--bl {
	inset: auto auto 20px 20px;
}
.service__list-dot--br {
	inset: auto 20px 20px auto;
}
.service__boost {
	width: min(100%, 900px);
	margin: 77px auto 0;
}
.service__boost-box {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	width: min(100%, 840px);
	margin-left: auto;
}
@media (width <= 640px) {
	.service__boost-box {
		flex-direction: column;
		align-items: center;
	}
}
.service__boost-textbox {
	width: 71.4285714286%;
	padding-bottom: 60px;
}
@media (width <= 640px) {
	.service__boost-textbox {
		width: 100%;
		padding-bottom: 30px;
	}
}
.service__boost-title {
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	line-height: 1.36;
	background-color: var(--color-main-dark);
	border-radius: 4px;
	padding: 20px;
}
.service__boost-text {
	font-weight: bold;
	color: #fff;
	margin-top: 36px;
}
.service__boost-img {
	width: 23.8095238095%;
}
@media (width <= 640px) {
	.service__boost-img {
		width: min(100%, 150px);
	}
}

/*　機能　*/
.function {
	background-color: var(--color-sub);
	padding: 130px 80px 120px 20px;
	position: relative;
	overflow: hidden;
}
@media (width <= 1400px) {
	.function {
		padding-inline: 20px;
	}
}
@media (width <= 767px) {
	.function {
		padding: 80px 0;
	}
}
.function::before {
	content: "";
	display: block;
	width: 33.4375%;
	height: 100%;
	background-color: rgba(65, 126, 180, 0.1);
	position: absolute;
	inset: 0 14% auto auto;
	transform: skewX(-38.48deg);
}
.function__wrapper {
	width: min(100%, 1920px);
	margin-inline: auto;
}
.function__inner {
	display: flex;
	justify-content: space-between;
	width: min(100%, 1640px);
	margin-left: auto;
}
@media (width <= 1400px) {
	.function__inner {
		gap: 40px;
	}
}
@media (width <= 767px) {
	.function__inner {
		flex-direction: column;
	}
}
.function__box {
	width: 30.7926829268%;
}
@media (width <= 1400px) {
	.function__box {
		width: 50%;
	}
}
@media (width <= 767px) {
	.function__box {
		width: 100%;
		padding-inline: 20px;
	}
}
.function__sub-title {
	margin: 100px 0 32px;
}
@media (width <= 767px) {
	.function__sub-title {
		margin-top: 40px;
	}
}
.function__text + .function__text {
	margin-top: 1lh;
}
.function__list {
	width: calc(62.1951219512% + 40px);
	margin-top: -20px;
	position: relative;
}
@media (width <= 1400px) {
	.function__list {
		width: 50%;
	}
}
@media (width <= 767px) {
	.function__list {
		width: 100%;
	}
}
.function__list-swiper {
	padding: 20px !important;
}
.function__list-item {
	background-color: #fff;
	border-radius: 4px;
	box-shadow: var(--box-shadow);
	overflow: hidden;
}
.function__list-box {
	position: relative;
}
.function__list-title {
	display: flex;
	align-items: baseline;
	gap: 8px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	line-height: 1.66;
	background-color: var(--color-main);
	border-radius: 0 20px 0 0;
	padding: 15px 30px;
	position: absolute;
	inset: auto auto 0 0;
}
@media (width <= 767px) {
	.function__list-title {
		font-size: 16px;
		padding: 15px;
	}
}
.function__list-title::before {
	content: "";
	display: block;
	width: 14px;
	aspect-ratio: 1;
	border: 2px solid #fff;
	border-radius: 50%;
	margin-top: 1px;
}
.function__list-title span {
	flex: 1;
}
.function__list-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.73;
	padding: 30px;
}
.function__list-btn {
	width: 88px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	top: 172px;
	z-index: 1;
	cursor: pointer;
}
@media (width <= 1400px) {
	.function__list-btn {
		top: calc(50% - 36px);
		translate: 0 -50%;
	}
}
@media (width <= 1200px) {
	.function__list-btn {
		top: 200px;
		translate: 0;
	}
}
@media (width <= 960px) {
	.function__list-btn {
		top: 100px;
	}
}
@media (width <= 767px) {
	.function__list-btn {
		width: 60px;
		top: calc(50% - 100px);
		translate: 0 -50%;
	}
}
.function__list-btn--next {
	right: -24px;
}
@media (width <= 1400px) {
	.function__list-btn--next {
		right: -10px;
	}
}
@media (width <= 767px) {
	.function__list-btn--next {
		right: 10px;
	}
}
.function__list-btn--prev {
	left: -24px;
	scale: -1 1;
}
@media (width <= 1400px) {
	.function__list-btn--prev {
		left: -10px;
	}
}
@media (width <= 767px) {
	.function__list-btn--prev {
		left: 10px;
	}
}
.function__list-btn.swiper-button-disabled {
	opacity: 0;
	pointer-events: none;
}
.function__list-pn {
	line-height: 1;
	padding: 20px 20px 0;
}
@media (width <= 767px) {
	.function__list-pn {
		text-align: center;
	}
}
.function__list-pn .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background-color: var(--color-main);
	margin: 0 10px !important;
	opacity: 0.2;
}
.function__list-pn .swiper-pagination-bullet:first-child {
	margin-left: 0 !important;
}
.function__list-pn .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1;
}

/* 他社と比べる必要、“ありません” */
.noting {
	background: url(../img/home/noting_bg.jpg) center/cover no-repeat;
	padding: 100px 20px;
	position: relative;
	z-index: 1;
}
@media (width <= 640px) {
	.noting {
		padding: 80px 20px;
	}
}
.noting::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	position: absolute;
	inset: 0 auto auto 0;
	z-index: -1;
}
.noting__inner {
	width: min(100%, 875px);
	margin-inline: auto;
}
.noting__list {
	margin-top: 80px;
}
@media (width <= 640px) {
	.noting__list {
		margin-top: 60px;
	}
}
.noting__list-item {
	display: grid;
	gap: 80px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (width <= 640px) {
	.noting__list-item {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		row-gap: 50px;
	}
}
.noting__list-item + .noting__list-item {
	margin-top: 60px;
}
@media (width <= 640px) {
	.noting__list-item + .noting__list-item {
		margin-top: 40px;
	}
}
.noting__list-item .noting__list-box:not(:last-child)::after {
	content: "";
	display: block;
	width: 50px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: 50% -65px auto auto;
	translate: 0 -50%;
}
@media (width <= 640px) {
	.noting__list-item .noting__list-box:not(:last-child)::after {
		inset: auto auto -25px 50%;
		translate: -50% 0;
		rotate: 90deg;
	}
}
.noting__list-box {
	--color: var(--color-text);
	background-color: #fff;
	position: relative;
}
.noting__list-box--red {
	--color: var(--color-main);
}
.noting__list-name {
	display: grid;
	place-items: center;
	font-size: 18px;
	line-height: 1.66;
	font-weight: bold;
	color: #fff;
	background-color: var(--color);
	min-height: 53px;
}
.noting__list-name img {
	width: 88px;
	margin-inline: auto;
}
.noting__list-textbox {
	padding: 26px 30px 38px;
}
.noting__list-title {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	color: var(--color);
	line-height: 1.5;
}
.noting__list-title--circle {
	text-align: left;
	width: fit-content;
	padding-left: 1lh;
	margin-inline: auto;
	position: relative;
}
.noting__list-title--circle::before {
	content: "";
	display: block;
	width: 22px;
	aspect-ratio: 1;
	background: url(../img/common/icon_cer.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% auto auto 0;
	translate: 0 -50%;
}
.noting__list-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 22px;
}
.noting__title01 {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	line-height: 1.5;
	margin-top: 80px;
}
.noting__text {
	font-size: 15px;
	font-weight: bold;
	color: #fff;
	line-height: 2;
	margin-top: 20px;
}

/* 実際にあった話 */
.example {
	padding: 120px 20px 0;
}
@media (width <= 640px) {
	.example {
		padding-top: 80px;
	}
}
.example__wrapper {
	width: min(100%, 1200px);
	margin-inline: auto;
}
.example__inner {
	display: flex;
	justify-content: space-between;
	width: min(100%, 1090px);
}
@media (width <= 640px) {
	.example__inner {
		flex-direction: column;
		row-gap: 60px;
	}
}
.example__title {
	width: 47.7064220183%;
}
@media (width <= 640px) {
	.example__title {
		width: 100%;
	}
}
.example__list {
	width: 52.2935779817%;
	counter-reset: number 0;
}
@media (width <= 640px) {
	.example__list {
		width: calc(100% - 40px);
		margin-left: auto;
	}
}
.example__list-item {
	padding-left: 60px;
	position: relative;
	counter-increment: number 1;
}
@media (width <= 640px) {
	.example__list-item {
		padding-left: 30px;
	}
}
.example__list-item::after {
	content: "";
	display: block;
	width: 10px;
	aspect-ratio: 1;
	background-color: var(--color-text);
	border-radius: 50%;
	position: absolute;
	inset: 0.3lh auto auto -3px;
}
.example__list-item:not(:last-child) {
	padding-bottom: 36px;
}
.example__list-item:not(:last-child)::before {
	content: "";
	display: block;
	width: 4px;
	height: 100%;
	background-color: var(--color-text);
	position: absolute;
	inset: auto auto 0 0;
}
.example__list-item:nth-child(4)::after, .example__list-item:last-child::after {
	background-color: var(--color-main);
}
.example__list-item:first-child::before {
	height: calc(100% - 0.5lh);
}
.example__list-item:nth-child(4)::before {
	background-color: var(--color-main);
	height: calc(100% + 0.5lh);
	inset: 0 auto auto 0;
}
.example__list-line {
	width: 4px;
	height: 50%;
	background-color: var(--color-main);
	position: absolute;
	inset: auto auto 0 0;
}
.example__list-consult {
	display: grid;
	place-items: center;
	font-size: 18px;
	line-height: 1.66;
	font-weight: bold;
	color: #fff;
	width: min(100%, 340px);
	height: 76px;
	background-color: var(--color-main);
	padding: 0 50px 0 15px;
	position: absolute;
	inset: 50% 100% auto auto;
	translate: 0 -50%;
	clip-path: polygon(0 0, 89.4117647059% 0, 100% 50%, 89.4117647059% 100%, 0 100%);
}
@media (width <= 640px) {
	.example__list-consult {
		writing-mode: vertical-rl;
		width: auto;
		height: max-content;
		padding: 15px 0;
		right: calc(100% + 10px);
		clip-path: none;
	}
	.example__list-consult::after {
		content: "";
		display: block;
		width: 10px;
		aspect-ratio: 1;
		background-color: var(--color-main);
		position: absolute;
		inset: 50% auto auto calc(100% - 1px);
		translate: 0 -50%;
		clip-path: polygon(0 0, 100% 50%, 0 100%);
	}
}
.example__list-title, .example__list-text {
	padding-left: 50px;
}
.example__list-title {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	position: relative;
}
.example__list-title::before {
	content: counter(number, decimal-leading-zero) ".";
	font-family: var(--font-en);
	position: absolute;
	inset: 0 auto auto 0;
}
.example__list-text {
	font-size: 15px;
	line-height: 1.73;
	margin-top: 10px;
}
.example__rec {
	display: flex;
	justify-content: space-between;
	width: min(100%, 1080px);
	padding-top: 140px;
	margin: 50px auto 0;
	position: relative;
}
@media (width <= 640px) {
	.example__rec {
		flex-direction: column-reverse;
		row-gap: 40px;
	}
}
.example__rec::before {
	content: "";
	display: block;
	width: 88px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: 0 auto auto 50%;
	translate: -50% 0;
	rotate: 90deg;
	animation: nudgeDown 1.6s infinite;
	will-change: transform;
}
.example__rec-img {
	width: 37.037037037%;
	border-radius: 4px;
	overflow: hidden;
}
@media (width <= 640px) {
	.example__rec-img {
		width: 100%;
	}
}
.example__rec-box {
	width: 56.4814814815%;
}
@media (width <= 640px) {
	.example__rec-box {
		width: 100%;
	}
}
.example__rec-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
	margin-top: 22px;
}

/* 企業様限定の対応内容 */
.limited {
	padding: 125px 10px 0;
}
@media (width <= 640px) {
	.limited {
		padding-top: 80px;
	}
}
.limited__inner {
	width: min(100%, 1720px);
	border: 4px solid var(--color-main);
	border-radius: 4px;
	margin-inline: auto;
	box-shadow: var(--box-shadow);
}
.limited__cts {
	width: min(100%, 1500px);
	padding-inline: 20px;
	margin-inline: auto;
}
.limited__cts-title {
	display: grid;
	place-items: center;
	font-size: 30px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	line-height: 1.5;
	min-height: 100px;
	background-color: var(--color-main);
	border-radius: 0 0 4px 4px;
	padding: 10px 20px;
}
@media (width <= 640px) {
	.limited__cts-title {
		font-size: 24px;
	}
}
.limited__cts-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px;
	margin-top: 54px;
}
.limited__cts-list-item {
	width: 460px;
	border: 4px solid var(--color-main);
	border-radius: 4px;
}
.limited__cts-list-title {
	display: flex;
	align-items: center;
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	line-height: 1.25;
	min-height: 98px;
	background-color: var(--color-main);
	padding: 10px 20px 10px 50px;
}
@media (width <= 640px) {
	.limited__cts-list-title {
		font-size: 20px;
		padding-left: 20px;
	}
}
.limited__cts-list-title span {
	padding-left: 30px;
	position: relative;
}
.limited__cts-list-title span::before {
	content: "";
	display: block;
	width: 0.625em;
	aspect-ratio: 1;
	background-color: #fff;
	border-radius: 50%;
	position: absolute;
	inset: 0.5lh auto auto 0;
	translate: 0 -50%;
}
.limited__cts-list-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
	padding: 30px;
}
.limited__note {
	width: min(100%, 1400px);
	padding: 50px 20px 0;
	margin-inline: auto;
}
.limited__note-title {
	font-size: 18px;
	line-height: 1.66;
	font-weight: bold;
	color: var(--color-main);
	padding-left: 30px;
	position: relative;
}
.limited__note-title::before {
	content: "";
	display: block;
	width: 15px;
	aspect-ratio: 1;
	border: 2px solid var(--color-main);
	border-radius: 50px;
	position: absolute;
	inset: 0.5lh auto auto 0;
	translate: 0 -50%;
}
.limited__note-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0 1em;
	margin-top: 10px;
}
.limited__note-item {
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
}
.limited__merit {
	background-color: var(--color-main);
	padding: 40px 20px;
	margin-top: 60px;
}
.limited__merit > * {
	color: #fff;
	width: min(100%, 1265px);
	margin-inline: auto;
}
.limited__merit-title {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.85;
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 10px;
}
.limited__merit-text {
	font-weight: 500;
	margin-top: 30px;
}

/* 導入までの流れ */
.flow {
	width: min(100%, 1500px);
	padding: 120px 20px 0;
	margin-inline: auto;
}
@media (width <= 640px) {
	.flow {
		padding-top: 80px;
	}
}
.flow__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 70px;
	margin-top: 110px;
}
@media (width <= 640px) {
	.flow__list {
		flex-direction: column;
		margin-top: 60px;
	}
}
.flow__list-item {
	width: calc((100% - 280px) / 5);
	position: relative;
}
@media (width > 960px) {
	.flow__list-item:nth-child(2) {
		transition-delay: 0.2s;
	}
	.flow__list-item:nth-child(3) {
		transition-delay: 0.4s;
	}
	.flow__list-item:nth-child(4) {
		transition-delay: 0.6s;
	}
	.flow__list-item:nth-child(5) {
		transition-delay: 0.8s;
	}
}
@media (641px <= width <= 960px) {
	.flow__list-item:nth-child(2), .flow__list-item:nth-child(5) {
		transition-delay: 0.2s;
	}
	.flow__list-item:nth-child(3) {
		transition-delay: 0.4s;
	}
}
@media (width <= 960px) {
	.flow__list-item {
		width: calc((100% - 140px) / 3);
	}
}
@media (width <= 640px) {
	.flow__list-item {
		width: 100%;
	}
}
.flow__list-item:not(:last-child)::before {
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background-color: var(--color-text);
	position: absolute;
	inset: 0 -35px auto calc(100% + 34.5px);
	opacity: 0.3;
}
@media (width <= 640px) {
	.flow__list-item:not(:last-child)::before {
		width: 100%;
		height: 1px;
		inset: auto auto -35px 0;
	}
}
.flow__list-item:not(:last-child)::after {
	content: "";
	display: block;
	width: 50px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: 50% auto auto calc(100% + 10px);
	translate: 0 -50%;
}
@media (width <= 640px) {
	.flow__list-item:not(:last-child)::after {
		inset: calc(100% + 10px) auto auto 50%;
		translate: -50% 0;
		rotate: 90deg;
	}
}
@media (width <= 960px) {
	.flow__list-item:nth-child(3)::before, .flow__list-item:nth-child(3)::after {
		content: none;
	}
}
@media (width <= 640px) {
	.flow__list-item:nth-child(3)::before, .flow__list-item:nth-child(3)::after {
		content: "";
	}
}
.flow__list-num {
	display: block;
	font-family: var(--font-en);
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 27px;
}
.flow__list-icon {
	width: 80px;
	margin-inline: auto;
}
.flow__list-title {
	display: grid;
	place-items: center;
	font-size: 18px;
	font-weight: bold;
	color: var(--color-main);
	line-height: 1.38;
	min-height: 2lh;
	text-align: center;
	margin-top: 28px;
}
.flow__list-text {
	font-size: 14px;
	font-weight: 500;
	margin-top: 40px;
}
.flow__ex {
	width: fit-content;
	margin: 72px auto 0;
}
.flow__ex-text {
	font-size: 15px;
	line-height: 2;
	margin-top: 30px;
}

/* よくある質問 */
.faq {
	width: min(100%, 1180px);
	background-color: var(--color-sub);
	border-radius: 4px;
	padding: 85px 20px 115px;
	margin: 115px auto 0;
}
@media (width <= 640px) {
	.faq {
		padding: 80px 20px;
		margin-top: 80px;
	}
}
.faq > * {
	width: min(100%, 1000px);
	margin-inline: auto;
}
.faq__list {
	margin-top: 70px;
}
@media (width <= 640px) {
	.faq__list {
		margin-top: 30px;
	}
}
.faq__list-item {
	padding: 30px 0;
}
.faq__list-item:not(:first-child) {
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.faq__list-q, .faq__list-a {
	font-weight: 500;
	padding-left: 60px;
	position: relative;
}
@media (width <= 640px) {
	.faq__list-q, .faq__list-a {
		padding-left: 40px;
	}
}
.faq__list-q::before, .faq__list-a::before {
	content: "Q";
	display: grid;
	place-items: center;
	font-family: var(--font-en);
	color: #fff;
	width: 30px;
	aspect-ratio: 1;
	background-color: var(--color-text);
	position: absolute;
	inset: 0 auto auto 0;
}
.faq__list-q {
	padding-right: 30px;
	cursor: pointer;
	transition: 0.2s ease-out;
}
@media (any-hover: hover) {
	.faq__list-q:hover {
		color: var(--color-main);
	}
}
.faq__list-q--open {
	color: var(--color-main);
}
.faq__list-q--open .faq__list-toggle::before, .faq__list-q--open .faq__list-toggle::after {
	background-color: var(--color-text);
	rotate: 0deg;
}
.faq__list-a {
	display: none;
	font-size: 14px;
	margin-top: 20px;
}
.faq__list-a::before {
	content: "A";
	background-color: var(--color-main);
}
.faq__list-toggle {
	width: 14px;
	aspect-ratio: 1;
	position: absolute;
	inset: 50% 0 auto auto;
	translate: 0 -50%;
}
.faq__list-toggle::before, .faq__list-toggle::after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-color: var(--color-main);
	position: absolute;
	inset: 50% auto auto 50%;
	translate: -50% -50%;
	transition: 0.2s ease-out;
}
.faq__list-toggle::after {
	rotate: 90deg;
}
.faq__text {
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	line-height: 1.66;
	margin-top: 55px;
}

/* 解決　*/
.solution__panel {
	padding-inline: 20px;
}
.solution__text {
	display: grid;
	place-items: center;
	width: min(100%, 720px);
	min-height: 80px;
	background-color: #fff;
	border: 3px solid var(--color-text);
	border-radius: 4px;
	padding: 10px;
	margin: -40px auto 0;
	position: relative;
	box-shadow: var(--box-shadow);
}
@media (width <= 640px) {
	.solution__text {
		font-size: 20px;
	}
}
.solution__text::before, .solution__text::after {
	content: "";
	display: block;
	width: 30px;
	aspect-ratio: 2/1;
	background-color: var(--color-text);
	position: absolute;
	inset: 100% 13.8888888889% auto auto;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.solution__text::after {
	background-color: #fff;
	top: calc(100% - 4px);
}
.solution__title {
	display: grid;
	place-items: center;
	text-align: center;
	color: #fff;
	width: min(100%, 720px);
	min-height: 148px;
	background-color: var(--color-main);
	border: 3px solid var(--color-text);
	border-radius: 4px;
	margin: 55px auto 0;
	position: relative;
	z-index: 3;
	box-shadow: var(--box-shadow);
}
@media (width <= 640px) {
	.solution__title {
		font-size: 20px;
		line-height: 1.75;
	}
}
.solution__title-l {
	font-size: 1.3em;
}
.solution__title-bb {
	position: relative;
}
.solution__title-bb::before, .solution__title-bb::after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-color: #fff;
	border-radius: calc(infinity * 1px);
	position: absolute;
	inset: 100% auto auto 0;
}
.solution__title-bb::after {
	top: calc(100% + 6px);
}
.solution__textbox {
	width: min(100%, 860px);
	background-color: #fff;
	border: 3px solid var(--color-text);
	border-radius: 4px;
	padding: 120px 20px 80px;
	margin: -80px auto 0;
	position: relative;
	z-index: 2;
	box-shadow: var(--box-shadow);
}
.solution__textbox::after {
	content: "";
	display: block;
	width: 88px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/arrow_s.svg) center/13px auto no-repeat;
	border-radius: 50%;
	position: absolute;
	inset: auto auto -44px 50%;
	translate: -50% 0;
	rotate: 90deg;
	animation: nudgeDown 1.6s infinite;
	will-change: transform;
}
.solution__textbox > * {
	width: min(100%, 415px);
	margin-inline: auto;
}
.solution__textbox-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
}
.solution__textbox-text + .solution__textbox-text {
	margin-top: 1lh;
}
.solution__cta {
	width: min(100%, 1720px);
	background-color: var(--color-text);
	padding: 200px 20px 85px;
	margin: -117px auto 0;
	position: relative;
	z-index: 1;
}
.solution__cta-text {
	font-size: 18px;
	line-height: 1.66;
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin-top: 28px;
}
.solution__cta-btn {
	margin: 45px auto 0;
}
.solution__support {
	background-color: var(--color-main);
	padding: 340px 20px 100px;
	margin-top: -260px;
}
.solution__support-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 30px;
	width: min(100%, 1430px);
	margin-inline: auto;
}
@media (width <= 960px) {
	.solution__support-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (width <= 640px) {
	.solution__support-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}
.solution__support-list-item {
	background-color: #fff;
	padding: 30px;
	box-shadow: var(--box-shadow);
}
@media (width > 960px) {
	.solution__support-list-item:nth-child(3n+2) {
		transition-delay: 0.2s;
	}
	.solution__support-list-item:nth-child(3n+3) {
		transition-delay: 0.4s;
	}
}
@media (641px <= width <= 960px) {
	.solution__support-list-item:nth-child(even) {
		transition-delay: 0.2s;
	}
}
.solution__support-list-title {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	font-size: 18px;
	font-weight: bold;
	color: var(--color-main);
}
.solution__support-list-title::before {
	content: "";
	display: block;
	width: 44px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/icon_check.svg) center/18px auto no-repeat;
	border-radius: 50%;
}
.solution__support-list-title span {
	flex: 1;
	padding-top: 5px;
}
.solution__support-list-text {
	font-weight: 500;
	padding-left: 64px;
	margin-top: 10px;
}
@media (width <= 640px) {
	.solution__support-list-text {
		padding-left: 0;
	}
}
.solution__support-title, .solution__support-text {
	width: min(100%, 935px);
	margin-inline: auto;
}
.solution__support-title {
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	line-height: 1.625;
	margin-top: 80px;
}
@media (width <= 640px) {
	.solution__support-title {
		font-size: 20px;
		margin-top: 60px;
	}
}
.solution__support-text {
	font-size: 15px;
	line-height: 2;
	margin-top: 30px;
}

/* こんな企業様におすすめです */
.recommend {
	background: var(--color-main);
	position: relative;
}
.recommend__wrapper {
	width: min(100%, 1720px);
	background-color: #fff;
	border-radius: 10px 0 0 0;
	padding: 0 20px 145px;
	margin-inline: auto;
	position: relative;
	box-shadow: var(--box-shadow);
}
@media (width <= 1720px) {
	.recommend__wrapper {
		border-radius: 0;
	}
}
@media (width <= 640px) {
	.recommend__wrapper {
		padding-bottom: 80px;
	}
}
.recommend__wrapper::before {
	content: "";
	display: block;
	width: calc(50vw - 50%);
	height: 100%;
	background-color: #fff;
	position: absolute;
	inset: 0 calc(-50vw + 50%) auto auto;
}
.recommend__inner {
	width: min(100%, 1520px);
	margin-inline: auto;
}
.recommend__title-box {
	display: grid;
	place-items: center;
	width: min(100%, 555px);
	min-height: 168px;
	border: 4px solid var(--color-main);
	border-top: 0;
	border-radius: 0 0 4px 4px;
	padding: 10px;
}
.recommend__title {
	text-align: left;
}
@media (width <= 640px) {
	.recommend__title {
		text-align: center;
	}
}
.recommend__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 50px 90px;
	width: min(100%, 1190px);
	margin: 70px auto 0;
}
@media (width <= 767px) {
	.recommend__list {
		gap: 50px;
	}
}
@media (width <= 640px) {
	.recommend__list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}
.recommend__list-title {
	font-size: 20px;
	font-weight: bold;
	color: var(--color-main);
	line-height: 1.5;
	text-align: center;
	padding-bottom: 30px;
	position: relative;
}
.recommend__list-title::after {
	content: "";
	display: block;
	width: 38px;
	height: 3px;
	background: linear-gradient(90deg, var(--color-main) 0%, var(--color-main) 50%, var(--color-main-dark) 50%, var(--color-main-dark) 100%);
	position: absolute;
	inset: auto auto 0 50%;
	translate: -50% 0;
}
.recommend__list-text {
	font-size: 15px;
	font-weight: 500;
	margin-top: 40px;
}
.recommend__panel {
	display: flex;
	justify-content: center;
	gap: 40px 75px;
	margin: 100px auto 0;
}
@media (width <= 960px) {
	.recommend__panel {
		flex-wrap: wrap;
	}
}
@media (width <= 640px) {
	.recommend__panel {
		flex-direction: column;
		justify-content: flex-start;
		margin-top: 60px;
	}
}
.recommend__panel-title {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.25;
}
@media (width <= 640px) {
	.recommend__panel-title {
		font-size: 20px;
	}
}
.recommend__panel-title::before {
	content: "";
	display: block;
	width: 44px;
	aspect-ratio: 1;
	background: var(--color-main) url(../img/common/icon_check.svg) center/18px auto no-repeat;
	border-radius: 50%;
}
@media (width <= 640px) {
	.recommend__panel-title::before {
		width: 30px;
	}
}
.recommend__panel-title span {
	flex: 1;
	padding-top: 5px;
}
.recommend__panel-img {
	width: 17.7631578947%;
}
@media (width <= 960px) {
	.recommend__panel-img {
		order: -1;
		width: 100%;
	}
	.recommend__panel-img img {
		width: min(100%, 150px);
		margin-inline: auto;
	}
}
.recommend__panel-list {
	padding-left: 64px;
	margin-top: 20px;
}
@media (width <= 640px) {
	.recommend__panel-list {
		padding-left: 50px;
	}
}
.recommend__panel-list-item {
	font-size: 18px;
	line-height: 2.22;
}
@media (width <= 640px) {
	.recommend__panel-list-item {
		font-size: 16px;
	}
}

/* CTA */
.cta {
	background-color: var(--color-text);
	padding: 90px 20px 80px;
}
.cta__title {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	line-height: 1.54;
}
@media (width <= 640px) {
	.cta__title {
		font-size: 20px;
	}
}
.cta__btn-group {
	display: flex;
	justify-content: center;
	gap: 20px 35px;
	flex-wrap: wrap;
	margin-top: 55px;
}/*# sourceMappingURL=style.css.map */