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

html {
	height: 100%;
	scroll-behavior: smooth;
}

body {
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	line-height: 1.8;
}

img,
video,
object {
	border: none;
	display: block;
	height: auto;
	max-width: 100%;
}

a {
	text-decoration: none;
}

/*===================================================================
# Header
===================================================================*/

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

.header__logo a img {
	height: auto;
	vertical-align: middle;
	width: 10.1875rem;
}

.header__btn {
	align-items: center;
	background-color: #0066FE;
	border-radius: 1.875rem;
	color: #FFFFFF;
	display: flex;
	font-size: 0.9375rem;
	font-weight: 700;
	height: 2.125rem;
	justify-content: center;
	letter-spacing: 0.046875rem;
	overflow: hidden;
	position: relative;
	width: 10.875rem;
}

.header__btn::before {
	border-bottom: 2.25rem solid #FF6CA0;
	border-right: 10.875rem solid transparent;
	bottom: -0.0625rem;
	content: "";
	left: -0.0625rem;
	position: absolute;
	right: -10.875rem;
	transform: translateX(-100%);
	transition: transform 0.3s ease-out;
	z-index: 1;
}

.header__btn span {
	position: relative;
	z-index: 2;
}

/*===================================================================
# Footer
===================================================================*/

.footer {
	padding-block: 6rem 1.5rem;
	text-align: center;
}

.footer__logo {
	height: auto;
	margin-inline: auto;
	width: 15.5625rem;
}

.footer__address-wrapper {
	margin-block-start: 0.4375rem;
}

.footer__address {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.04375rem;
	line-height: 193%;
}

.footer__copyright {
	display: block;
	font-family: "Oswald", sans-serif;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 208%;
	margin-block-start: 3.4375rem;
}

/*===================================================================
# Inner
===================================================================*/

.inner {
	margin-inline: auto;
	max-width: 75rem;
}

.inner--narrow {
	max-width: 45rem;
}

/*===================================================================
# Animation
===================================================================*/

/* 出現アニメーション：ふわっと表示 */

.js-fadein {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.5s ease, transform 0.5s ease;
	will-change: opacity, transform;
}

.js-fadein.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/*===================================================================
# Fv
===================================================================*/

.fv {
	padding-block: 8.5rem 11.9375rem;
}

.fv__inner {
	display: flex;
	max-width: 78.9375rem;
	-moz-column-gap: 1.375rem;
	column-gap: 1.375rem;
	height: 35.9375rem;
}

.fv__left {
	padding-block-start: 11.625rem;
}

.fv__copies {
	display: flex;
	-moz-column-gap: 0.25rem;
	column-gap: 0.25rem;
	padding-inline-start: 2rem;
}

.fv .fv__copy-fukidashi {
	align-items: center;
	display: flex;
	height: 6.1875rem;
	justify-content: center;
	position: relative;
	text-align: center;
	width: 6rem;
}

.fv .fv__copy-fukidashi-img {
	height: 100%;
	position: absolute;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.fv .fv__copy-fukidashi-text {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.1rem;
	line-height: 105%;
	position: relative;
}

.fv .fv__copy-fukidashi-text--small {
	font-size: 1.0625rem;
	letter-spacing: 0.085rem;
}

.fv__copy-texts {
	padding-block-start: 1.0625rem;
}

.fv__copy-text-sub {
	color: #0066FE;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.1rem;
}

.fv__copy-text-sub--narrow {
	letter-spacing: -0.5rem;
}

.fv__copy-text-main {
	font-size: 1.875rem;
	font-weight: 700;
	letter-spacing: 0.09375rem;
	line-height: 1.1;
}

.fv__copy-text-main--blue {
	color: #0066FE;
	font-size: 2.5rem;
	letter-spacing: 0.125rem;
}

.fv__main-text {
	margin-block-start: 1.5rem;
}

.fv__main-text img {
	height: auto;
	width: 28.75rem;
}

.fv__main-text--visually-hidden {
	position: absolute;
	clip: rect(0 0 0 0);
	height: 0.0625rem;
	margin: -0.0625rem;
	overflow: hidden;
	white-space: nowrap;
	width: 0.0625rem;
}

.fv__btn-wrapper {
	display: block;
}

.fv__btn-wrapper--sp {
	display: none;
}

.fv__btn {
	align-items: center;
	background-color: #0066FE;
	border-radius: 1.875rem;
	color: #FFFFFF;
	display: flex;
	font-size: 1.125rem;
	font-weight: 700;
	height: 3.375rem;
	justify-content: center;
	letter-spacing: 0.05625rem;
	margin: 1.9375rem auto 0.3125rem;
	overflow: hidden;
	position: relative;
	transition: background-color 0.3s ease-out;
	width: 15.625rem;
}

.fv__btn::before {
	border-bottom: 3.5rem solid #FF6CA0;
	border-right: 15.625rem solid transparent;
	bottom: -0.0625rem;
	content: "";
	left: -0.0625rem;
	position: absolute;
	right: -15.625rem;
	transform: translateX(-100%);
	transition: transform 0.3s ease-out;
	z-index: 1;
}

.fv__btn span {
	position: relative;
	z-index: 2;
}

.fv__note {
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.04375rem;
	line-height: 221.429%;
	text-align: center;
}

.fv__right {
	background: url(/wp-content/themes/aidmahd/assets/aiuketsukesan/img/fv_right.png) center center/cover no-repeat;
	flex: 0 0 48.8125rem;
	position: relative;
}

.fv__right-fukidashi-circle {
	height: 5.22625rem;
	position: absolute;
	width: 5.22625rem;
}

.fv__right-fukidashi-circle--eigyo {
	left: 6.375rem;
	top: 12.0625rem;
	z-index: 2;
}

.fv__right-fukidashi-circle--eigyo img {
	transform: rotate(18deg);
}

.fv__right-fukidashi-circle--kinkyu {
	left: 10.75rem;
	top: 13.4375rem;
	z-index: 1;
}

.fv__right-fukidashi-circle--kinkyu img {
	transform: rotate(25deg);
}

.fv__right-fukidashi-circle--torihikisaki {
	left: 8.4375rem;
	top: 18rem;
	z-index: 1;
}

.fv__right-fukidashi-circle--torihikisaki img {
	transform: rotate(-10deg);
}

.fv__right-fukidashi-circle--saiyo {
	left: 3.4375rem;
	top: 19.75rem;
	z-index: 4;
}

.fv__right-fukidashi-circle--saiyo img {
	transform: rotate(-40deg);
}

.fv__right-fukidashi-circle--machigai {
	left: 3.125rem;
	top: 15rem;
	z-index: 3;
}

.fv__right-fukidashi-circle--machigai img {
	transform: rotate(-15deg);
}

.fv__right-fukidashi-circle-img {
	display: block;
	height: 100%;
	width: 100%;
}

.fv__right-fukidashi-circle-text {
	font-size: 1.0625rem;
	font-weight: 400;
	left: 50%;
	letter-spacing: -0.0425rem;
	position: absolute;
	text-align: center;
	top: 50%;
	translate: -50% -50%;
	width: 11.25rem;
	width: 3.125rem;
}

.fv__right-fukidashi-rectangle {
	height: 6.426875rem;
	left: 19.75rem;
	position: absolute;
	top: 11.625rem;
	width: 12.176875rem;
}

.fv__right-fukidashi-rectangle-img {
	display: block;
	height: 100%;
	width: 100%;
}

.fv__right-fukidashi-rectangle-text {
	font-size: 1.125rem;
	left: 8%;
	line-height: 138.889%;
	position: absolute;
	top: 16%;
	width: 11.25rem;
}

.fv__right-text {
	bottom: 6.1875rem;
	color: #0066FE;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 122.727%;
	position: absolute;
	right: 11.3125rem;
	text-align: center;
}

/*===================================================================
# Concern
===================================================================*/

.concern {
	background-color: #0066FE;
	padding-block: 3.75rem 3.1875rem;
	position: relative;
}

.concern__inner {
	position: relative;
}

.concern__title {
	color: #FFFFFF;
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	text-align: center;
}

.concern__title--accent {
	color: #FFFF82;
}

.concern__list {
	background: #FFF;
	border-radius: 1rem;
	margin-block-start: 2.375rem;
	max-width: 45rem;
	padding-inline: 3.125rem;
}

.concern__item {
	align-items: center;
	display: flex;
	padding: 1.25rem 4.5rem;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
}

.concern__item + .concern__item {
	border-top: 0.0625rem dashed #45D6BA;
}

.concern__item svg {
	flex: 0 0 auto;
	height: 2.1875rem;
	width: 2.1875rem;
}

.concern__item-text {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.05625rem;
}

.concern__message {
	color: #FFFFFF;
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	margin-block-start: 1.6875rem;
	text-align: center;
}

.concern__img {
	position: absolute;
}

.concern__img--left {
	bottom: 5.875rem;
	height: 12.75rem;
	left: -2rem;
	width: 7.1875rem;
}

.concern__img--right {
	bottom: 6.4375rem;
	height: 14.5rem;
	right: -2.5rem;
	width: 6.875rem;
}

.concern__deco {
	bottom: -3rem;
	height: 3.9375rem;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 6.125rem;
}

/*===================================================================
# About
===================================================================*/

.about {
	padding-block: 5.5rem 9.0625rem;
}

.about__sub-title {
	color: #0066FE;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.05rem;
	text-align: center;
}

.about__title {
	color: #030303;
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	margin-block-start: 0.1875rem;
	text-align: center;
}

.about__list {
	display: flex;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	margin-block-start: 2.8125rem;
}

.about__item {
	background-color: #EDF4FF;
	border: 0.3125rem solid #0066FE;
	border-radius: 1rem;
	max-width: 17.8125rem;
	padding: 1.625rem 1.625rem 1.25rem;
	width: 100%;
}

.about__item svg {
	display: block;
	height: 4.6875rem;
	margin-inline: auto;
}

.about__item-title {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
	line-height: 150%;
	margin-block-start: 1.5625rem;
	text-align: center;
}

.about__item-text {
	font-size: 0.9375rem;
	letter-spacing: 0.046875rem;
	margin-block-start: 0.25rem;
}

.about__flow {
	display: flex;
	-moz-column-gap: 3.5625rem;
	column-gap: 3.5625rem;
	margin-block-start: 3.5rem;
	position: relative;
}

.about__flow-item {
	flex: 1 1 auto;
	min-width: 0;
}

.about__flow-item--step1,
.about__flow-item--step3 {
	flex: 0 0 14.25rem;
}

.about__flow-item--step1 .about__flow-item-head {
	position: relative;
}

.about__flow-item--step1 .about__flow-item-body {
	position: relative;
}

.about__flow-item--step2 {
	position: relative;
}

.about__flow-item--step2 .about__flow-item-head {
	position: relative;
}

.about__flow-item--step2 .about__flow-item-body {
	display: flex;
	justify-content: space-between;
}

.about__flow-item--step2 .about__flow-col {
	position: relative;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-copy-lead {
	font-size: 1.5625rem;
	font-weight: 700;
	letter-spacing: 0.078125rem;
	line-height: 128%;
	margin-block-start: 1.125rem;
	padding-inline-start: 4.0625rem;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-copy-sub {
	font-weight: 600;
	letter-spacing: 0.05rem;
	line-height: 1.3;
	margin-block-start: 1rem;
	padding-inline-start: 4.125rem;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-copy-sub {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.05625rem;
	line-height: 127.778%;
	margin-block-start: 1.1875rem;
	text-align: center;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-copy-lead {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.05625rem;
	line-height: 144.444%;
	text-align: center;
}

.about__flow-item--step3 .about__flow-item-body {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: 1.25rem;
}

.about__flow-item--step3 .about__flow-copy-lead {
	color: #0066FE;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.05625rem;
	line-height: 122.222%;
	text-align: center;
}

.about__flow-item-head {
	background-color: #0066FE;
	height: 5.375rem;
	padding-block-start: 0.9375rem;
	text-align: center;
}

.about__flow-sub-title {
	color: #FFFFFF;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: 0.046875rem;
	line-height: 1.4;
}

.about__flow-title {
	color: #FFFFFF;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
}

.about__flow-title--step2 {
	align-items: center;
	display: flex;
	justify-content: center;
	-moz-column-gap: 0.3125rem;
	column-gap: 0.3125rem;
}

.about__flow-title--step2 img {
	height: 1.283625rem;
	width: 8.375rem;
}

.about__flow-item-body {
	height: 16.6875rem;
	margin-block-start: 1.5rem;
	position: relative;
}

.about__flow-item-body-bg {
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}

.about__flow-1-imgs {
	align-items: center;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	row-gap: 0.4375rem;
}

.about__flow-1-imgs img {
	height: 6.1875rem;
	width: 6.1875rem;
}

.about__flow-col {
	position: relative;
	width: 17.5625rem;
}

.about__flow-col-bg {
	height: 100%;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.about__flow-line {
	background-color: #000;
	height: 0.125rem;
	margin: 0.4375rem auto 0.3125rem;
	width: 11.53125rem;
}

.about__flow-list {
	padding-inline-start: 4.0625rem;
}

.about__flow-list-item {
	align-items: center;
	display: flex;
	-moz-column-gap: 0.54375rem;
	column-gap: 0.54375rem;
}

.about__flow-list-item p {
	font-weight: 600;
	letter-spacing: 0.05rem;
	line-height: 1.5;
	padding-block-end: 0.03125rem;
}

.about__flow-list-item svg {
	height: auto;
	width: 1.1478125rem;
}

.about__flow-note {
	font-weight: 600;
	letter-spacing: 0.05rem;
	line-height: 1.3;
	padding-inline-start: 5.8125rem;
}

.about__flow-files {
	height: 2.875rem;
	margin: 0.5625rem auto 0.3125rem;
	width: 5.2094375rem;
}

.about__flow-sns {
	height: 5.5114375rem;
	margin: 0.3125rem auto 0;
	width: 8.913rem;
}

.about__flow-uketsukesan {
	bottom: 0;
	height: auto;
	left: 28%;
	position: absolute; /* AI受付さんのイメージイラスト */
	width: 14.1875rem;
}

.about__flow-uketsukesan--sp {
	bottom: -43px;
	display: none;
	height: 89.12px;
	left: 77px;
	width: 104px;
}

.about__flow-3-img {
	height: auto;
	margin-inline: auto;
	width: 7.5625rem;
}

.about__flow-arrow-blue {
	position: absolute;
	right: -3.4375rem;
	top: 50%;
	translate: 0 -50%;
	width: 3.4375rem;
}

.about__flow-arrow {
	position: absolute;
	right: -3.4375rem;
	top: 13%;
	width: 3.4375rem;
}

.about__flow-arrow--reverse {
	bottom: 15%;
	left: -3.4375rem;
	right: auto;
	top: auto;
	transform: rotate(-180deg);
}

.about__flow-arrow-long {
	bottom: -3.3125rem;
	height: auto;
	left: 49.25%;
	position: absolute;
	translate: -50%;
	width: 62rem;
}

.about__flow-arrow-vertical {
	bottom: -73px;
	display: none;
	height: 74px;
	left: 6%;
	position: absolute;
	width: 18px;
}

.about__flow-arrow-vertical--short {
	bottom: -31px;
	height: 30px;
	width: 18px;
}

.about__flow-arrow-vertical--reverse {
	bottom: auto;
	left: auto;
	right: 6%;
	top: -72px;
	transform: rotate(180deg);
}

.about__flow-arrow-long-vertical {
	bottom: 45px;
	display: none;
	height: 555px;
	max-height: none;
	position: absolute;
	right: -30px;
	width: 31.657px;
}

/*===================================================================
# Flow
===================================================================*/

.flow {
	background: #0066FE;
	padding-block: 3.375rem 4rem;
}

.flow__sub-title {
	color: #FFFFFF;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-align: center;
}

.flow__title {
	color: #FFFFFF;
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	margin-block-start: 0.1875rem;
	text-align: center;
}

.flow__list {
	display: flex;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	margin-block-start: 2.75rem;
}

.flow__item {
	background: #FFF;
	border-radius: 1rem;
	max-width: 17.8125rem;
	padding: 2rem 2rem 1.5rem;
	width: 100%;
}

.flow__item-num {
	color: #FF6CA0;
	font-size: 2.8125rem;
	font-style: normal;
	letter-spacing: 0.140625rem;
	line-height: 68.889%;
	text-align: center;
}

.flow__item-title {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
	line-height: 150%;
	margin-block: 1.125rem;
	min-height: 3.75rem;
	text-align: center;
}

.flow__item-img {
	height: 4.6875rem;
	margin-inline: auto;
	width: auto;
}

.flow__item-text {
	font-size: 0.9375rem;
	letter-spacing: 0.046875rem;
	margin-block-start: 1.9375rem;
}

/*===================================================================
# Recommendations
===================================================================*/

.recommendations {
	padding-block-start: 5.25rem;
}

.recommendations__title {
	font-size: 2.0625rem;
	font-weight: 900;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	text-align: center;
}

.recommendations__list {
	display: flex;
	flex-direction: column;
	margin-block-start: 2.75rem;
	row-gap: 1.5rem;
}

.recommendations__item {
	align-items: center;
	background: #F6F6F6;
	border-radius: 1rem;
	display: flex;
	width: 100%;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	padding: 1.53125rem 2rem;
}

.recommendations__num-wrapper {
	flex: 0 0 5.1875rem;
}

.recommendations__num-text-wrapper {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.recommendations__num-text-wrapper svg {
	height: 1rem;
	width: 0.5rem;
}

.recommendations__num-text {
	color: #0066FE;
	display: inline-block;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: 0.046875rem;
	text-align: center;
}

.recommendations__item-num {
	color: #0066FE;
	font-family: "Oswald", sans-serif;
	font-size: 4rem;
	font-weight: 700;
	line-height: 75%;
	margin-block-start: 0.125rem;
	text-align: center;
}

.recommendations__item-title {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
	line-height: 150%;
}

.recommendations__item-text {
	font-size: 0.9375rem;
	letter-spacing: 0.046875rem;
	margin-block-start: 0.5rem;
}

.recommendations__annotation {
	font-size: 0.75rem;
	letter-spacing: 0.0375rem;
	line-height: 150%;
	margin-block-start: 0.6875rem;
	padding-inline-start: 1em;
	text-indent: -1em;
}

/*===================================================================
# Price
===================================================================*/

.price {
	background-color: #0066FE;
	padding-block: 3.125rem 4rem;
	text-align: center;
}

.price__title {
	color: #FFFFFF;
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
}

.price__container {
	background-color: #fff;
	border-radius: 1rem;
	margin-block: 2.75rem 3.46875rem;
	margin-inline: auto;
	max-width: 28.125rem;
	padding: 2rem 2rem 1.75rem;
	width: 100%;
}

.price__main {
	align-items: flex-end;
	display: flex;
}

.price__fukidashi-wrapper {
	height: 7.914rem;
	position: relative;
	width: 8.1858125rem;
}

.price__fukidashi-wrapper svg {
	height: 7.914rem;
	inset: 0;
	position: absolute;
	width: 8.1858125rem;
	z-index: 1;
}

.price__fukidashi-text {
	color: #FFFFFF;
	font-size: 1.3125rem;
	font-weight: 600;
	left: 0.875rem;
	line-height: 114%;
	position: absolute;
	text-align: center;
	top: 50%;
	translate: 0 -50%;
	white-space: nowrap;
	z-index: 2;
}

.price__content-num {
	color: #0066FE;
	font-size: 5.75rem;
	font-weight: 700;
	letter-spacing: 0.2871875rem;
	line-height: 3.0625rem;
	margin-inline: 0.75rem 1.25rem;
	padding-block-end: 0.25rem;
	text-decoration-color: #FFFF82;
	text-decoration-line: underline;
	text-decoration-thickness: 0.625rem;
	text-underline-offset: -0.3125rem;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.price__content-yen {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.5625rem;
	letter-spacing: -0.127625rem;
	line-height: 125%;
}

.price__content-discription {
	color: #0066FE;
	flex: 1 1 auto;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0638125rem;
	line-height: 155%;
	padding-block-end: 0.5rem;
	text-align: left;
	text-decoration-color: #FFFF82;
	text-decoration-line: underline;
	text-decoration-thickness: 0.375rem;
	text-underline-offset: 0;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.price__annotations {
	margin-block-start: 1.1875rem;
}

.price__annotation {
	font-size: 0.75rem;
	letter-spacing: 0.0375rem;
	line-height: 150%;
	padding-inline-start: 1em;
	text-indent: -1em;
}

.price__btn {
	align-items: center;
	background-color: #FFFF82;
	border: 0.125rem solid #FFFF82;
	border-radius: 1.875rem;
	display: flex;
	font-size: 1.125rem;
	font-weight: 700;
	height: 3.375rem;
	justify-content: center;
	letter-spacing: 0.05625rem;
	margin-inline: auto;
	overflow: hidden;
	position: relative;
	transition: color 0.3s ease-out, border-color 0.3s ease-out;
	width: 20.625rem;
}

.price__btn::before {
	border-bottom: 3.5rem solid #FF6CA0;
	border-right: 20.625rem solid transparent;
	bottom: -0.0625rem;
	content: "";
	left: -0.0625rem;
	position: absolute;
	right: -20.625rem;
	transform: translateX(-100%);
	transition: transform 0.3s ease-out;
	z-index: 1;
}

.price__btn span {
	position: relative;
	z-index: 2;
}

/*===================================================================
# Comparison
===================================================================*/

.comparison {
	padding-block: 4.875rem 5.75rem; /* 最終行以外の「td」にだけ、横の下線を擬似要素で付ける */
}

.comparison__title {
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	margin-block-end: 2.3125rem;
	text-align: center;
}

.comparison__table-wrapper {
	overflow-x: auto;
	padding-block-start: 1.25rem; /* 2列目 ヘッドの飛び出し分 */
	position: relative;
	-webkit-overflow-scrolling: touch;
}

.comparison__table {
	border: 0.0625rem solid #E0E4ED;
	border-collapse: separate;
	border-radius: 0.625rem;
	border-spacing: 0;
	overflow: hidden;
	table-layout: fixed;
	width: 100%;
}

.comparison__table tr th:last-child,
.comparison__table tr td:last-child {
	border-right: none;
}

.comparison__table tbody tr:last-child th,
.comparison__table tbody tr:last-child td {
	border-bottom: none;
}

.comparison__col--row-header {
	background-color: #EDF4FF;
	width: 13.625rem; /* 左列 行見出し */
}

.comparison__col--main {
	width: 15.375rem; /* AI受付さん 2列目 */
}

.comparison__table tr > *:nth-child(2) {
	border-left: 0.4375rem solid #0066FE; /* 左右の線 */
	border-right: 0.4375rem solid #0066FE;
	position: relative;
}

.comparison__table tr > *:nth-child(2) {
	border-bottom: none; /* セルの線は削除 */
}

.comparison__table tbody tr:not(:last-child) > td:nth-child(2)::after {
	background-color: #E0E4ED;
	bottom: 0;
	content: "";
	height: 0.0625rem;
	left: 0;
	position: absolute;
	right: 0;
}

.comparison__table tbody tr:last-child > *:nth-child(2) {
	border-bottom: 0.4375rem solid #0066FE; /* 2列目の最終行 */
}

.comparison__main-heading {
	background-color: #0066FE;
	padding: 0 !important;
}

.comparison__main-heading-inner {
	display: flex;
	height: 100%;
	justify-content: center;
}

.comparison__main-title {
	display: block;
	height: 1.75rem;
	margin: 1.125rem auto;
	position: relative;
	width: 11.375rem;
	z-index: 2;
}

.comparison__main-cap {
	background-color: #0066FE;
	border-radius: 0.625rem 0.625rem 0 0;
	height: 1.3125rem;
	left: 13.6875rem; /* 1列目の幅（左からの距離）をleftに設定 */
	position: absolute; /* ヘッドの飛び出し部分 */
	top: 0.0625rem; /* テーブルのtheadやborderを考慮してtopを調整 */
	width: 15.375rem; /* 2列目の幅をwidthに設定 */
	z-index: 10;
}

.comparison__table thead th {
	height: 4.9375rem;
}

.comparison__table th,
.comparison__table td {
	border-bottom: 0.0625rem solid #E0E4ED;
	border-right: 0.0625rem solid #E0E4ED;
	padding: 1.375rem 2rem;
	text-align: center;
	vertical-align: middle;
}

.comparison__table th:nth-child(3),
.comparison__table th:nth-child(4),
.comparison__table th:nth-child(5) {
	background: #F6F6F6;
}

.comparison__table th {
	font-size: 1.25rem;
	letter-spacing: 0.0625rem;
	line-height: 150%;
}

.comparison__table td {
	font-size: 0.9375rem;
	letter-spacing: 0.046875rem;
}

.comparison__table th:first-child,
.comparison__table td:first-child {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.05625rem;
}

.comparison__table td.comparison__cell-main {
	color: #0066FE;
	font-size: 1.125rem; /* 2列目のセル */
	font-weight: 700;
	letter-spacing: 0.05625rem;
	padding-inline: 1.875rem;
}

.comparison__cell-span {
	display: block;
	font-size: 0.75rem; /* セル内のspanで囲まれたテキスト */
	letter-spacing: 0.0375rem;
	line-height: 150%;
	margin-block-start: -0.1875rem;
}

.comparison__table thead tr:first-child th:first-child {
	border-top-left-radius: 0.625rem;
}

.comparison__table thead tr:first-child th:last-child {
	border-top-right-radius: 0.625rem;
}

.comparison__table tbody tr:last-child th:first-child {
	border-bottom-left-radius: 0.625rem;
}

.comparison__table tbody tr:last-child td:last-child {
	border-bottom-right-radius: 0.625rem;
}

.comparison__notes {
	margin-block-start: 0.75rem;
}

.comparison__note {
	font-size: 0.75rem;
	letter-spacing: 0.0375rem;
	line-height: 150%;
}

/*===================================================================
# Faq
===================================================================*/

.faq {
	padding-block: 5.25rem 5.5625rem;
}

.faq__title {
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	text-align: center;
}

.faq__list {
	margin-block-start: 3.0625rem;
}

.faq__item {
	padding-block-end: 2rem;
}

.faq__item + .faq__item {
	margin-block-start: 2rem;
}

.faq__item:last-of-type {
	padding-block-end: 0;
}

.faq__item:not(:last-of-type) {
	border-bottom: 1px solid #818181;
}

.faq__question,
.faq__answer {
	align-items: center;
	display: flex;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
}

.faq__badge {
	background-color: #0066FE;
	border-radius: 50%;
	color: #FFFFFF;
	display: flex;
	flex: 0 0 2.1875rem;
	font-size: 1.25rem;
	font-weight: 700;
	height: 2.1875rem;
	justify-content: center;
	letter-spacing: 0.0625rem;
	line-height: 1;
	padding-block: 0.375rem 0.3125rem;
	width: 2.1875rem;
}

.faq__question-text {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
	line-height: 150%;
}

.faq__answer {
	margin-block-start: 1.5rem;
}

.faq__answer-text {
	font-size: 0.9375rem;
	letter-spacing: 0.046875rem;
}

/*===================================================================
# Contact
===================================================================*/

.contact {
	background-color: #F6F6F6;
	padding-block: 5.0625rem 6rem;
}

.contact__title {
	font-size: 2.0625rem;
	font-weight: 700;
	letter-spacing: 0.103125rem;
	line-height: 150%;
	text-align: center;
	text-transform: uppercase; /* 全ての文字を大文字に変換 アクセシビリティにおいて、単語として読み上げられる */
}

.contact__form {
	display: flex;
	flex-direction: column;
	margin: 2.125rem auto 0;
	max-width: 46rem;
	row-gap: 1.3125rem;
	width: 100%;
}

.contact__row { /* 各入力項目 */
}

.contact__head {
	font-size: 1rem; /* 項目名 */
	font-weight: 700;
	letter-spacing: 0.05rem;
	line-height: 140%;
}

.contact__head--must {
	display: inline-flex;
	position: relative; /* 必須 */
}

.contact__head--must::after {
	align-items: center;
	background-color: #F00;
	border-radius: 0.25rem;
	color: #FFFFFF;
	content: "必須";
	display: flex;
	font-size: 0.75rem;
	font-weight: 700;
	height: 1.375rem;
	justify-content: center;
	left: calc(100% + 0.5rem);
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	white-space: nowrap;
	width: 2.5rem;
}

.contact__head--note {
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.040625rem;
	line-height: 140%;
	padding-inline-start: 1em;
	text-indent: -1em;
}

.contact__data {
	margin-block-start: 0.3125rem;
}

.contact__data--name {
	display: flex;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
}

.contact__name-wrapper {
	flex: 1;
}

.contact__privacy-box {
	background-color: #fff;
	border: none;
	border: 0.0625rem solid #BDBDBD;
	border-radius: 0.25rem;
	height: 10rem;
	margin-block-start: 0.3125rem;
	min-height: 10rem;
	overflow-y: scroll;
	padding: 0.53125rem 1rem;
	resize: vertical;
	width: 100%;
}

.contact__privacy-box p {
	font-size: 1rem;
}

.contact__privacy-box p:not(:first-child) {
	margin-block-start: 1rem;
}

.contact__privacy-indent {
	padding-inline-start: 1em;
	text-indent: -1em;
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
	background-color: #fff;
	border: none;
	border: 0.0625rem solid #BDBDBD;
	border-radius: 0.25rem;
	font-size: 1rem;
	padding: 0.53125rem 1rem;
	width: 100%;
}

input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
	color: #B3B3B3;
}

input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
select::placeholder,
textarea::placeholder {
	color: #B3B3B3;
}

/* フォーカス時 */

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
select:focus,
textarea:focus {
	outline: 0.0625rem solid #0066FE;
}

textarea {
	height: 10rem;
	resize: vertical;
}

select {
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}

.contact__select-wrap {
	position: relative;
}

.contact__select-wrap svg {
	height: 0.5rem;
	pointer-events: none;
	position: absolute;
	right: 1rem;
	top: 50%;
	translate: 0 -50%;
	width: 0.875rem;
	z-index: 1;
}

input[type=checkbox] {
	height: 0.0625rem;
	position: absolute;
	width: 0.0625rem; /* デフォルトのものを消す */
	clip: rect(0, 0, 0, 0);
}

/* フォーカス時 */

input[type=checkbox]:focus + span::before {
	border: 0.0625rem solid #0066FE;
}

/* チェックされた時の挙動 */

input[type=checkbox]:checked + span::after {
	opacity: 1;
}

.contact__data-checkbox span {
	color: #333;
	cursor: pointer;
	display: inline-block;
	font-size: 1rem;
	font-weight: 700;
	line-height: 140%;
	margin-block-start: 0.9375rem;
	padding-left: 1.5rem;
	position: relative;
}

.contact__data-checkbox span::before {
	background-color: #fff;
	border: 0.0625rem solid #000;
	border-radius: 0.25rem;
	content: ""; /* ボックス */
	height: 1rem;
	left: 0;
	position: absolute;
	top: 0.225rem;
	width: 1rem;
}

.contact__data-checkbox span::after {
	border-bottom: 0.09375rem solid #000;
	border-right: 0.09375rem solid #000;
	content: ""; /* チェックマーク */
	height: 0.625rem;
	left: 0.375rem;
	opacity: 0;
	position: absolute;
	rotate: 45deg;
	top: 0.375rem;
	transition: opacity 0.3s ease;
	width: 0.3125rem;
}

.contact__acceptance {
	text-align: center;
}

.contact__acceptance-text {
	font-size: 0.875rem;
	letter-spacing: 0.04375rem;
	line-height: 140%;
	margin-block-start: 1.5rem;
}

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

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

.contact__submit-btn-wrapper {
	background-color: #0066FE;
	border-radius: 62.5rem;
	box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
	height: 4.25rem;
	margin-inline: auto;
	overflow: hidden;
	position: relative;
	width: 23.25rem;
}

.contact__submit-btn-wrapper::before {
	border-bottom: 13.125rem solid #FF6CA0;
	border-right: 34.375rem solid transparent;
	bottom: -0.0625rem;
	content: "";
	left: -0.0625rem;
	position: absolute;
	transform: translateY(100%);
	transition: transform 0.3s ease-out;
	z-index: 1;
}

input[type=submit].contact__submit-btn {
	align-items: center;
	background-color: transparent;
	border: none;
	border-radius: 62.5rem;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: 1.25rem;
	height: 100%;
	justify-content: center;
	position: relative;
	text-align: center;
	width: 100%;
	z-index: 2;
}

input[type=submit].contact__submit-btn:disabled {
	background-color: #c9c9c9;
	box-shadow: none;
	cursor: not-allowed;
}

input[type=submit].contact__submit-btn:focus-visible {
	border: 0.1875rem solid #FF6CA0; /* フォーカス時 */
	outline: none;
}

.page-layout {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.page {
	flex: 1 0 auto;
}

.footer {
	flex: 0 0 auto;
}

.page__inner {
	margin-inline: auto;
	max-width: 46.875rem;
	padding-block-start: 5rem;
	width: 100%;
}

.page__title {
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
}

.page__contents {
	margin-block-start: 1.75rem;
}

.page__contents p {
	font-size: 1.125rem;
	line-height: 2;
}

.text--warning {
	color: #ca1c10;
}

.buttonList--vertical {
	display: flex;
	flex-direction: column;
	margin-block-start: 3.75rem;
	row-gap: 1.875rem;
}

.button {
	align-items: center;
	background-color: #0066FE;
	border-radius: 62.5rem;
	box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
	color: #fff;
	display: flex;
	font-size: 1.25rem;
	height: 4.25rem;
	justify-content: center;
	margin-inline: auto;
	overflow: hidden;
	position: relative;
	transition: color 0.3s ease-out;
	width: 23.25rem;
}

.button::before {
	border-bottom: 4.375rem solid #FF6CA0;
	border-right: 23.25rem solid transparent;
	bottom: -0.0625rem;
	content: "";
	left: -0.0625rem;
	position: absolute;
	right: -23.25rem;
	transform: translateX(-100%);
	transition: transform 0.3s ease-out;
	z-index: 1;
}

.button span {
	position: relative;
	z-index: 2;
}

.button:disabled {
	background-color: #c9c9c9;
	box-shadow: none;
	cursor: not-allowed;
}

.button:disabled::before {
	transform: translateX(-100%);
}

/*===================================================================
# ブレークポイントによる表示 / 非表示
===================================================================*/

.show__sp {
	display: none; /* spのみ表示 */
}

.show__tab {
	display: none; /* tabのみ表示 */
}

.show__tab-pc {
	display: block; /* tab～pc間で表示 */
}

.show__tab-pc--inline {
	display: inline-block;
}

.show__medium-pc {
	display: block; /* medium～pc間で表示 */
}

.show__sp-medium {
	display: none; /* sp～medium間で表示 */
}

@media (any-hover: hover) {

.header__btn:hover::before {
	transform: translateX(0);
}

.fv__btn:hover {
	background-color: #FF6CA0;
}

.fv__btn:hover::before {
	transform: translateX(0);
}

.price__btn:hover {
	border-color: #fff;
	color: #FFFFFF;
}

.price__btn:hover::before {
	transform: translateX(0);
}

.contact__submit-btn-wrapper:has(.contact__submit-btn:not(:disabled)):hover::before {
	transform: translateY(0);
}

.button:not(:disabled):hover::before {
	transform: translateX(0);
}

}

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

html {
	font-size: calc(16 / 1440 * 100vw);
}

}

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

.show__tab {
	display: block;
}

.show__medium-pc {
	display: none;
}

.show__sp-medium {
	display: block;
}

}

@media screen and (min-width: 1024px) and (max-width: 1139px) {

.show__sp-medium {
	display: block;
}

}

@media screen and (max-width: 767px) {

.header__inner {
	height: 71px;
	padding-inline: 16px;
}

.header__logo a img {
	width: 158px;
}

.header__btn {
	height: 35px;
	width: 142px;
}

.header__btn::before {
	border-bottom: 37px solid #FF6CA0;
	border-right: 142px solid transparent;
	right: -142px;
}

.footer {
	padding-block: 64px 23px;
}

.footer__logo {
	width: 200px;
}

.footer__address-wrapper {
	display: flex;
	justify-content: center;
	margin-block-start: 10px;
}

.footer__address {
	font-size: 12px;
	letter-spacing: 0.6px;
	line-height: 162.5%;
	text-align: left;
}

.footer__copyright {
	font-size: 11px;
	letter-spacing: 0.55px;
	line-height: 244.455%;
	margin-block-start: 25px;
}

.inner {
	max-width: 500px;
	padding-inline: 24px;
}

.fv {
	padding-block: 53px 54px;
}

.fv__inner {
	display: block;
	height: 100%;
	max-width: 375px;
	padding-inline: 0;
}

.fv__left {
	padding-block-start: 0;
}

.fv__copies {
	margin-inline: auto;
	max-width: 305px;
	padding-inline-start: 0;
}

.fv .fv__copy-fukidashi {
	height: 77.177px;
	width: 74.838px;
}

.fv .fv__copy-fukidashi-img {
	height: 104%;
	width: 104%;
}

.fv .fv__copy-fukidashi-text {
	font-size: 16.412px;
	letter-spacing: 1.313px;
	line-height: 17.232px; /* 105% */
}

.fv .fv__copy-fukidashi-text--small {
	font-size: 13.95px;
	letter-spacing: 1.116px;
	line-height: 17.232px;
}

.fv__copy-texts {
	padding-block-start: 11px;
}

.fv__copy-text-sub {
	font-size: 16.412px;
	letter-spacing: 1.313px;
}

.fv__copy-text-sub--narrow {
	letter-spacing: -6.565px;
}

.fv__copy-text-main {
	font-size: 24.618px;
	letter-spacing: 1.231px;
}

.fv__copy-text-main--blue {
	font-size: 32.824px;
	letter-spacing: 1.641px;
}

.fv__main-text {
	margin-block-start: 15px;
}

.fv__main-text img {
	margin-inline: auto;
	width: 300.682px;
}

.fv__btn-wrapper {
	display: none;
}

.fv__btn-wrapper--sp {
	display: block;
}

.fv__btn {
	margin-block-start: 10px;
}

.fv__note {
	font-size: 13px;
	letter-spacing: 0.65px;
	line-height: 31px; /* 238.462% */
}

.fv__right {
	background-image: url(/wp-content/themes/aidmahd/assets/aiuketsukesan/img/fv_right_sp.png);
	background-size: cover;
	height: 246px;
	margin-block-start: 5px;
}

.fv__right-fukidashi-circle {
	height: 48.882px;
	width: 48.883px;
}

.fv__right-fukidashi-circle--eigyo {
	left: 59px;
	top: 34px;
}

.fv__right-fukidashi-circle--kinkyu {
	left: 101px;
	top: 47px;
}

.fv__right-fukidashi-circle--torihikisaki {
	left: 78px;
	top: 89px;
}

.fv__right-fukidashi-circle--saiyo {
	left: 33px;
	top: 108px;
}

.fv__right-fukidashi-circle--machigai {
	left: 30px;
	top: 62px;
}

.fv__right-fukidashi-circle-text {
	font-size: 9.938px;
}

.fv__right-fukidashi-rectangle {
	height: 60.111px;
	left: 162px;
	top: 20px;
	width: 113.894px;
}

.fv__right-fukidashi-rectangle-text {
	font-size: 10.522px;
	line-height: 14.614px; /* 138.889% */
}

.fv__right-text {
	bottom: 46px;
	font-size: 12.861px;
	line-height: 15.783px; /* 122.727% */
	right: 24px;
}

.concern {
	padding-block: 45px 48px;
}

.concern__title {
	font-size: 25px;
	letter-spacing: 1.25px;
}

.concern__list {
	margin-block-start: 142px;
	padding: 20px 24px;
}

.concern__item {
	padding: 7px 0;
}

.concern__item svg {
	height: 24px;
	width: 24px;
}

.concern__item-text {
	font-size: 16px;
	letter-spacing: 0.8px;
	line-height: 150%;
}

.concern__message {
	font-size: 25px;
	letter-spacing: 1.25px;
	margin-block-start: 21px;
}

.concern__img--left {
	bottom: auto;
	height: 126px;
	left: 111px;
	top: 108px;
	width: 72px;
}

.concern__img--right {
	bottom: auto;
	height: 151px;
	right: 110px;
	top: 84px;
	width: 72px;
}

.concern__deco {
	bottom: -24px;
	height: 25px;
	width: 44px;
}

.about {
	padding-block: 55px 64px;
}

.about__sub-title {
	font-size: 14px;
	letter-spacing: 0.7px;
}

.about__sub-title--question {
	font-size: 16px;
	letter-spacing: 0.8px;
}

.about__title {
	font-size: 25px;
	letter-spacing: 1.25px;
}

.about__list {
	flex-direction: column;
	margin-block-start: 22px;
	row-gap: 20px;
}

.about__item {
	align-items: center;
	display: flex;
	max-width: none;
	width: 100%;
	-moz-column-gap: 16px;
	column-gap: 16px;
	padding: 19px;
}

.about__item svg {
	flex: 0 0 56px;
	height: auto;
	width: 56px;
}

.about__item-texts {
	flex: 1 1 auto;
}

.about__item-title {
	font-size: 18px;
	letter-spacing: 0.9px;
	margin-block-start: 0;
	text-align: left;
}

.about__item-text {
	font-size: 14px;
	letter-spacing: 0.7px;
	line-height: 180%;
	margin-block-start: 2px;
}

.about__flow {
	display: block;
	margin-block-start: 32px;
}

.about__flow-item--step1 .about__flow-item-body {
	height: 104px;
	margin-block-start: 0;
	margin-inline: auto;
	width: 233px;
}

.about__flow-item--step2 .about__flow-item-body {
	flex-direction: column;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-col-inner {
	display: flex;
	-moz-column-gap: 10px;
	column-gap: 10px;
	padding: 13px 13px 19px;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-copies {
	white-space: nowrap;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-copy-lead {
	font-size: 15px;
	letter-spacing: 0.75px;
	margin-block-start: 0;
	padding-inline-start: 0;
}

.about__flow-item--step2 .about__flow-col--left .about__flow-copy-sub {
	font-size: 11px;
	letter-spacing: 0.3px;
	line-height: 129%;
	margin-block-start: 7px;
	padding-inline-start: 0;
}

.about__flow-item--step2 .about__flow-col--right {
	margin-block-start: 34.36px;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-col-inner {
	padding: 17px 13px 17px;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-copies {
	display: flex;
	white-space: nowrap;
	-moz-column-gap: 13px;
	column-gap: 13px;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-copy-sub {
	font-size: 13px;
	letter-spacing: 0.65px;
	line-height: 139%;
	margin-block-start: 0;
	text-align: left;
}

.about__flow-item--step2 .about__flow-col--right .about__flow-copy-lead {
	font-size: 12px;
	letter-spacing: 0.6px;
	line-height: 163.532%;
	margin-block-start: 4px;
	text-align: left;
}

.about__flow-item--step3 .about__flow-item-body {
	flex-direction: row;
	height: 114px;
	margin-inline: auto;
	width: 233px;
	-moz-column-gap: 14px;
	column-gap: 14px;
	position: relative;
}

.about__flow-item--step3 .about__flow-copy-lead {
	font-size: 14.611px;
	letter-spacing: 0.731px;
	line-height: 150.575%;
	text-align: left;
}

.about__flow-item-head {
	border-radius: 10px 10px 0 0;
	height: 43px;
	margin-inline: auto;
	padding-block-start: 4px;
	width: 149px;
}

.about__flow-sub-title {
	font-size: 13px;
	letter-spacing: 0.6px;
	margin-block-start: 1px;
}

.about__flow-title {
	font-size: 14.5px;
	letter-spacing: 0.72px;
	line-height: 1;
}

.about__flow-title--step2 {
	-moz-column-gap: 2px;
	column-gap: 2px;
}

.about__flow-title--step2 img {
	height: auto;
	width: 87px;
}

.about__flow-item-body {
	height: auto;
	margin-block-start: 0;
}

.about__flow-1-imgs {
	flex-direction: row;
	-moz-column-gap: 14.5px;
	column-gap: 14.5px;
}

.about__flow-1-imgs img {
	height: auto;
	width: 73px;
}

.about__flow-col {
	margin-inline: auto;
	width: 233px;
}

.about__flow-line {
	display: none;
}

.about__flow-list-wrapper {
	white-space: nowrap;
}

.about__flow-list {
	padding-inline-start: 0;
}

.about__flow-list-item {
	-moz-column-gap: 6px;
	column-gap: 6px;
}

.about__flow-list-item p {
	font-size: 12px;
	letter-spacing: 0.6px;
	line-height: 1.35;
	padding-block-end: 1px;
}

.about__flow-list-item svg {
	width: 13.776px;
}

.about__flow-note {
	font-size: 12px;
	letter-spacing: 0.6px;
	line-height: 1;
	padding-inline-start: 0;
	text-align: right;
}

.about__flow-files {
	height: 35.121px;
	margin: 0;
	width: 63.632px;
}

.about__flow-sns {
	height: 32.779px;
	margin-block-start: 1px;
	width: 207.128px;
}

.about__flow-uketsukesan {
	display: none;
}

.about__flow-uketsukesan--sp {
	display: block;
}

.about__flow-3-img {
	margin-inline: 0;
	width: 82.308px;
}

.about__flow-arrow-blue {
	display: none;
}

.about__flow-arrow {
	display: none;
}

.about__flow-arrow--reverse {
	display: none;
}

.about__flow-arrow-long {
	display: none;
}

.about__flow-arrow-vertical {
	display: block;
}

.about__flow-arrow-long-vertical {
	display: block;
}

.flow {
	padding-block: 34px 40px;
}

.flow__sub-title {
	font-size: 14px;
	letter-spacing: 0.7px;
}

.flow__title {
	font-size: 25px;
	letter-spacing: 1.25px;
	margin-block-start: 2px;
}

.flow__list {
	flex-direction: column;
	margin-block-start: 23px;
	row-gap: 20px;
}

.flow__item {
	max-width: none;
	padding: 21px 23px 16px;
}

.flow__item-num {
	font-size: 35px;
	letter-spacing: 1.75px;
	line-height: 88.571%;
}

.flow__item-title {
	font-size: 18px;
	letter-spacing: 0.9px;
	margin-block: 14px 19px;
	min-height: auto;
}

.flow__item-img {
	height: 60px;
}

.flow__item-text {
	font-size: 14px;
	letter-spacing: 0.7px;
	margin-block-start: 15px;
}

.recommendations {
	padding-block-start: 3.25rem;
}

.recommendations__title {
	font-size: 25px;
	letter-spacing: 1.25px;
}

.recommendations__list {
	margin-block-start: 25px;
}

.recommendations__item {
	flex-direction: column;
	padding: 20px 25px;
}

.recommendations__num-text-wrapper {
	-moz-column-gap: 3px;
	column-gap: 3px;
}

.recommendations__num-text-wrapper svg {
	height: 11.548px;
	width: 5.133px;
}

.recommendations__num-text {
	font-size: 12.831px;
	letter-spacing: 0.642px;
}

.recommendations__item-num {
	font-size: 54.747px;
}

.recommendations__item-title {
	font-size: 18px;
	letter-spacing: 0.9px;
}

.recommendations__item-title--01 {
	text-align: center;
}

.recommendations__item-text {
	font-size: 14px;
	letter-spacing: 0.7px;
}

.price {
	padding-block: 40px;
}

.price__title {
	font-size: 25px;
	letter-spacing: 1.25px;
}

.price__container {
	border-radius: 11.591px;
	margin-block: 24px 31px;
	padding: 20px 24px 20px;
}

.price__fukidashi-wrapper {
	height: 91.523px;
	width: 94.667px;
}

.price__fukidashi-wrapper svg {
	height: 91.523px;
	width: 94.667px;
}

.price__fukidashi-text {
	font-size: 15.5px;
	left: 11px;
}

.price__content-num {
	font-size: 78.391px;
	letter-spacing: 3.92px;
	line-height: 41.808px;
	margin-inline: 5px 10px;
	padding-block-end: 3px;
}

.price__content-yen {
	font-size: 34.84px;
	letter-spacing: -1.742px;
	line-height: 43.55px; /* 125% */
	margin-inline-end: -3px;
}

.price__content-discription {
	font-size: 14.762px;
	letter-spacing: 0.738px;
	padding-block-end: 5px;
}

.price__annotations {
	margin-block-start: 16px;
}

.price__annotation {
	font-size: 12px;
	letter-spacing: 0.6px;
	text-align: left;
}

.price__btn {
	width: 250px;
}

.comparison {
	padding-block: 49px 60px;
}

.comparison__title {
	font-size: 25px;
	letter-spacing: 1.25px;
	margin-block-end: 13px;
}

.comparison__table {
	min-width: 860px;
}

.comparison__col--row-header {
	width: 138px;
}

.comparison__col--main {
	width: 180px;
}

.comparison__main-title {
	height: auto;
	margin-block-start: 15px;
	width: 129px;
}

.comparison__main-cap {
	height: 10px;
	left: 139px;
	top: 11px;
	width: 180px;
}

.comparison__table thead th {
	height: 60px;
}

.comparison__table th,
.comparison__table td {
	height: 60px;
	padding: 0 5px;
}

.comparison__table th {
	font-size: 18px;
	letter-spacing: 0.9px;
}

.comparison__table td {
	font-size: 16px;
	letter-spacing: 0.8px;
	line-height: 150%;
}

.comparison__table th:first-child,
.comparison__table td:first-child {
	font-size: 16px;
	letter-spacing: 0.8px;
}

.comparison__table td.comparison__cell-main {
	font-size: 16px;
	letter-spacing: 0.8px;
	padding-inline: 0;
}

.comparison__note + .comparison__note {
	margin-block-start: 7px;
}

.faq {
	padding-block: 54px 55px;
}

.faq__title {
	font-size: 25px;
	letter-spacing: 1.25px;
}

.faq__list {
	margin-block-start: 16px;
}

.faq__item {
	padding-block-end: 15px;
}

.faq__item + .faq__item {
	margin-block-start: 17px;
}

.faq__question,
.faq__answer {
	align-items: flex-start;
}

.faq__badge {
	flex: 0 0 25px;
	font-size: 14px;
	height: 25px;
	letter-spacing: 0.7px;
	margin-block-start: 5px;
	padding-block: 4px 3px;
	width: 25px;
}

.faq__question-text {
	font-size: 18px;
	letter-spacing: 0.9px;
}

.faq__answer {
	margin-block-start: 9px;
}

.faq__answer-text {
	font-size: 14px;
	letter-spacing: 0.7px;
}

.contact {
	padding-block: 50px;
}

.contact__title {
	font-size: 24px;
}

.contact__privacy-box p {
	font-size: 14px;
}

.contact__submit-btn-wrapper {
	height: 50px;
	max-width: 300px;
	width: 100%;
}

input[type=submit].contact__submit-btn {
	font-size: 18px;
}

.page__inner {
	padding-block-start: 40px;
}

.page__title {
	font-size: 20px;
}

.page__contents p {
	font-size: 15px;
}

.button {
	max-width: 400px;
	width: 100%;
}

.button span {
	font-size: 16px;
}

.show__sp {
	display: block;
}

.show__tab-pc--inline {
	display: none;
}

.show__tab-pc {
	display: none;
}

.show__medium-pc {
	display: none;
}

}

@media screen and (max-width: 767px) and (max-width: 767px) {

.about__flow-item + .about__flow-item {
	margin-block-start: 35px;
}

}

