/* ============================ */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/* ========================================== */

/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*,
::before,
::after {
	border-style: solid;
	border-width: 0;
	box-sizing: border-box;
}

/* Document */

/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
	-webkit-text-size-adjust: 100%; /* 2 */
	-webkit-tap-highlight-color: transparent; /* 3*/
	line-height: 1.15; /* 1 */
}

/* Sections */

/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
	display: block;
}

/* Vertical rhythm */

/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings */

/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

/* Lists (enumeration) */

/* ============================================ */

ul,
ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Lists (definition) */

/* ============================================ */

dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content */

/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	border-top-width: 1px;
	box-sizing: content-box; /* 1 */
	clear: both;
	color: inherit;
	height: 0; /* 1 */
	margin: 0;
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics */

/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Replaced content */

/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

/* Forms */

/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none; /* 1 */
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border-radius: 0;
	color: inherit;
	font: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
	text-transform: inherit; /* 2 */
	vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type=button],
[type=reset],
[type=submit] {
	cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
	cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

/**
 * Remove padding
 */

option {
	padding: 0;
}

/**
 * Reset to invisible
 */

fieldset {
	margin: 0;
	min-width: 0;
	padding: 0;
}

legend {
	padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
	overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Correct the outline style in Safari.
 */

[type=search] {
	outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */

[type=number] {
	-moz-appearance: textfield;
}

/**
 * Clickable labels
 */

label[for] {
	cursor: default;
}

/* Interactive */

/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
	outline: auto;
}

/* Tables */

/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
	border-collapse: collapse;
	border-color: inherit; /* 1 */
}

caption {
	text-align: left;
}

td,
th {
	padding: 0;
	vertical-align: top;
}

th {
	font-weight: bold;
	text-align: left;
}

/* ============================ */

html {
	scroll-behavior: smooth;
	scroll-padding-top: 100px;
}

body {
	color: #333;
	font-family: "M PLUS 1", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	line-height: 175%;
}

img {
	height: auto;
	width: 100%;
}

a {
	display: block;
	transition: all 0.3s 0s ease-in-out;
}

a:hover {
	opacity: 0.7;
}

/* ============================ */

/* ============================ */

/* ============================
header
 ========================= */

.l-header {
	background-color: #EEF8FF;
	border-radius: 0 0 3.75rem 3.125rem;
	height: 5.125rem;
	left: 50%;
	max-width: 74.5rem;
	position: fixed;
	top: 0;
	transform: translateX(-50%);
	width: 100%;
	z-index: 100;
}

.l-header__inner {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1440px;
	padding-left: 30px;
	padding-right: 30px;
	width: 100%;
}

.l-header__logo {
	width: clamp(9.3125rem, 7.3978873239rem + 8.1690140845vw, 14.75rem);
}

.l-header__drawer {
	display: none;
	height: 19px;
	position: relative;
	width: 23px;
}

.l-header__drawer-bar {
	background-color: #367daa;
	height: 3px;
	left: 0;
	position: absolute;
	transition: transform 0.5s ease 0s;
	width: 100%;
}

.l-header__drawer-bar.--top {
	top: 0;
}

.l-header__drawer-bar.--middle {
	display: block;
	top: 50%;
	transform: translateY(-50%);
}

.l-header__drawer-bar.--bottom {
	bottom: 0;
}

.l-header__drawer-bar.is-active.--top {
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
}

.l-header__drawer-bar.is-active.--middle {
	display: none;
}

.l-header__drawer-bar.is-active.--bottom {
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}

.l-header__content {
	align-items: center;
	display: flex;
	gap: 55px clamp(1.563rem, -1.225rem + 5.8vw, 3.125rem);
}

.l-header__content.is-visible {
	transform: translateX(0);
}

.l-header__nav {
	flex-shrink: 0;
}

.l-header__nav-list {
	align-items: center;
	display: flex;
	gap: 21px 20px;
	justify-content: space-between;
}

.l-header__nav-item.--home {
	display: none;
}

.l-header__nav-link {
	color: #333;
	font-size: clamp(1rem, 0.777rem + 0.46vw, 1.125rem);
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.04em;
	transition: opacity 0.3s 0s ease-in-out;
}

.l-header__nav-link:hover {
	opacity: 0.7;
}

/* ============================ */

/* ============================
main
 ========================= */

/* inner1200px */

.l-main__inner {
	margin: 0 auto;
	max-width: 1226px;
	padding-left: 13px;
	padding-right: 13px;
	width: 100%;
}

/* ============================ */

/* ============================
l-footer
 ========================= */

.l-footer {
	background-color: #FBFDFE;
	border-top: 0.0625rem solid rgba(73, 95, 110, 0.2);
	padding-bottom: 1.5rem;
	padding-top: 1.5rem;
}

.l-footer small {
	display: block;
	font-size: 0.875rem;
	text-align: center;
}

.l-footer__inner {
	margin: 0 auto;
	max-width: 1102px;
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.l-footer__content {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 1.5rem;
}

.l-footer__sns {
	-moz-column-gap: 0.75rem;
	align-items: center;
	column-gap: 0.75rem;
	display: flex;
}

.l-footer__sns-link {
	width: 1.5rem;
}

.l-footer__nav-list {
	-moz-column-gap: clamp(1.5rem, 1.1478873239rem + 1.5023474178vw, 2.5rem);
	align-items: center;
	column-gap: clamp(1.5rem, 1.1478873239rem + 1.5023474178vw, 2.5rem);
	display: flex;
}

.l-footer__nav-item {
	font-size: clamp(0.875rem, 0.8529929577rem + 0.0938967136vw, 0.9375rem);
	font-weight: 500;
}

/*/* ============================ */

/* ============================ */

/* ============================
ボタン
 ========================= */

.c-button {
	-moz-column-gap: 0.5rem;
	align-items: center;
	border-radius: 60px;
	column-gap: 0.5rem;
	display: flex;
	font-size: 1rem;
	font-weight: 500;
	justify-content: center;
	padding: 0.5rem;
}

.c-button img {
	height: 1.5rem;
	width: 1.5rem;
}

.c-button.--sm {
	height: 3.125rem;
	width: 12.8125rem;
}

.c-button.--lg {
	height: 4rem;
	width: 20.1875rem;
}

.c-button.--header {
	background-color: #fff;
	border: 1px solid #F66D05;
	color: #F66D05;
}

.c-button.--download {
	background-color: #F66D05;
	color: #fff;
	margin: 0 auto;
}

/* ============================ */

/* ============================
c-heading_セクションタイトル
 ========================= */

.c-heading {
	-moz-column-gap: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
	align-items: center;
	column-gap: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
	display: flex;
	font-size: clamp(1.5rem, 1.1478873239rem + 1.5023474178vw, 2.5rem);
	font-weight: 700;
	justify-content: center;
	text-align: center;
}

.c-heading.--mb50 {
	margin-bottom: clamp(2.5rem, 2.2799295775rem + 0.9389671362vw, 3.125rem);
}

.c-heading.--mb80 {
	margin-bottom: clamp(2.5rem, 1.6197183099rem + 3.7558685446vw, 5rem);
}

.c-heading.--mb100 {
	margin-bottom: clamp(2.5rem, 1.1795774648rem + 5.6338028169vw, 6.25rem);
}

.c-heading.--mb128 {
	margin-bottom: clamp(2.5rem, 0.5633802817rem + 8.2629107981vw, 8rem);
}

.c-heading__icon {
	flex-shrink: 0;
	height: clamp(2.375rem, 2.0669014085rem + 1.3145539906vw, 3.25rem);
	width: clamp(1.5rem, 1.2799295775rem + 0.9389671362vw, 2.125rem);
}

.c-heading__text br {
	display: none;
}

/* ============================ */

/* ============================ */

/* =========================================
top
========================================= */

/* ============================
fv
 ========================= */

.p-top-fv {
	background: url(../img/bg/fv_pc.webp) no-repeat center center/cover;
}

.p-top-fv__inner {
	margin: 0 auto;
	max-width: 832px;
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.p-top-fv__content {
	padding-bottom: 4.5rem;
	padding-top: 8.625rem;
}

.p-top-fv__content-micro {
	-moz-column-gap: 0.1875rem;
	align-items: center;
	background-color: #28189F;
	column-gap: 0.1875rem;
	display: flex;
	margin: 0 auto clamp(1.4rem, 1.3207746479rem + 0.338028169vw, 1.625rem);
	padding: clamp(0.5rem, 0.4559859155rem + 0.1877934272vw, 0.625rem) 1.3125rem clamp(0.78125rem, 0.7702464789rem + 0.0469483568vw, 0.8125rem);
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.p-top-fv__content-micro::after {
	border-color: #28189F transparent transparent transparent;
	border-style: solid;
	border-width: clamp(0.5rem, 0.4559859155rem + 0.1877934272vw, 0.625rem) clamp(0.53125rem, 0.4762323944rem + 0.234741784vw, 0.6875rem) 0 clamp(0.53125rem, 0.4762323944rem + 0.234741784vw, 0.6875rem);
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	top: 100%;
	transform: translateX(-50%);
	width: 0;
}

/* 吹き出し部分 */

.p-top-fv__content-micro .--before,
.p-top-fv__content-micro .--after {
	display: grid;
	height: clamp(1.625rem, 1.4269366197rem + 0.8450704225vw, 2.1875rem);
	justify-items: center;
	place-content: center;
	width: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
}

.p-top-fv__content-micro .--before::before,
.p-top-fv__content-micro .--after::before {
	background-color: #fff;
	content: "";
	display: block;
	height: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
	width: 0.1875rem;
}

.p-top-fv__content-micro .--before::before {
	transform: rotate(-35deg);
}

.p-top-fv__content-micro .--after::before {
	transform: rotate(35deg);
}

/* /吹き出し部分 */

.p-top-fv__content-micro-text {
	color: #fff;
	font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
	font-weight: 700;
}

.p-top-fv__content-heading {
	color: #fff;
	font-size: clamp(3rem, 2.823943662rem + 0.7511737089vw, 3.5rem);
	font-weight: 700;
	line-height: 135%;
	margin-bottom: 0.8125rem;
	text-align: center;
}

.p-top-fv__content-heading .--small {
	font-size: clamp(2.25rem, 2.073943662rem + 0.7511737089vw, 2.75rem);
}

.p-top-fv__content-heading br {
	display: none;
}

.p-top-fv__content-text {
	background: rgba(55, 138, 207, 0.47);
	color: #FFF;
	font-size: 1.5625rem;
	font-weight: 500;
	line-height: 140%;
	margin: 0 auto;
	margin-bottom: 2.75rem;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-top-fv__content-text br {
	display: none;
}

/* ============================
about
 ========================= */

.p-top-about__description {
	font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
	line-height: 145.249%;
	margin-bottom: clamp(2.5rem, 2.2799295775rem + 0.9389671362vw, 3.125rem);
	text-align: center;
}

.p-top-about__list {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin: 0 auto;
	max-width: 978px;
	padding-left: 15px;
	padding-right: 15px;
	width: 100%;
}

.p-top-about__item {
	background-color: #fff;
	border-radius: clamp(3.125rem, 2.0246478873rem + 4.6948356808vw, 6.25rem);
	padding: clamp(2rem, 1.3838028169rem + 2.6291079812vw, 3.75rem) clamp(0.625rem, 0.5149647887rem + 0.4694835681vw, 0.9375rem);
	width: calc(33.3% - 1rem);
}

.p-top-about__item-icon {
	margin: 0 auto 1rem;
	width: clamp(3.75rem, 2.9577464789rem + 3.3802816901vw, 6rem);
}

.p-top-about__item-content {
	text-align: center;
}

.p-top-about__item-heading {
	font-size: clamp(1.125rem, 1.0809859155rem + 0.1877934272vw, 1.25rem);
	font-weight: 500;
	margin-bottom: 0.5rem;
}

/* ============================
worry
 ========================= */

.p-top-worry {
	position: relative;
}

.p-top-worry::before {
	background: url(../img/svg/section-arrow.svg) no-repeat center center/cover;
	bottom: -5.625rem;
	content: "";
	height: 3.0625rem;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 9.9375rem;
	z-index: 2;
}

.p-top-worry::after {
	background: url(../img/svg/section-bottom.svg) no-repeat center center/cover;
	bottom: -3.75rem;
	content: "";
	height: 3.75rem;
	left: 0;
	position: absolute;
	right: 0;
	width: 100%;
}

.p-top-worry__list {
	-moz-column-gap: 2rem;
	column-gap: 2rem;
	display: flex;
	margin: 0 auto;
	max-width: 732px;
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.p-top-worry__item {
	width: calc(50% - 1rem);
}

.p-top-worry__heading {
	background-color: #3CA6E4;
	color: #fff;
	font-size: clamp(1.25rem, 1.161971831rem + 0.3755868545vw, 1.5rem);
	font-weight: 500;
	margin: 0 auto 1.375rem;
	padding: 0.25rem 1rem;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-top-worry__item-pic {
	margin: 0 auto 1.4375rem;
	width: 12.5rem;
}

.p-top-worry__item-content {
	display: flex;
}

.p-top-worry__item-content:not(:last-of-type) {
	margin-bottom: 0.75rem;
}

.p-top-worry__item-content-icon {
	flex-shrink: 0;
	width: clamp(2.375rem, 2.1329225352rem + 1.0328638498vw, 3.0625rem);
}

.p-top-worry__item-content-text {
	font-size: clamp(1rem, 0.9339788732rem + 0.2816901408vw, 1.1875rem);
	font-weight: 400;
}

/* ============================
solution
 ========================= */

.p-top-solution {
	padding-bottom: clamp(3.75rem, 3.1338028169rem + 2.6291079812vw, 5.5rem);
	padding-top: clamp(3.75rem, 2.4295774648rem + 5.6338028169vw, 7.5rem);
}

.p-top-solution__list {
	-moz-column-gap: 2rem;
	column-gap: 2rem;
	display: flex;
}

.p-top-solution__item {
	background-color: #fff;
	border-radius: 0.625rem;
	padding: 1.5rem 1.1875rem;
	width: calc(33.3% - 1.3333333333rem);
}

.p-top-solution__item-heading {
	font-size: 1.25rem;
	font-weight: 500;
	margin-bottom: 1rem;
	text-align: center;
}

.p-top-solution__item-pic {
	margin: 0 auto 1rem;
	width: 13.125rem;
}

.p-top-solution__item-content {
	display: flex;
}

.p-top-solution__item-content:not(:last-of-type) {
	margin-bottom: 0.75rem;
}

.p-top-solution__item-content-icon {
	flex-shrink: 0;
	width: clamp(2.375rem, 2.1329225352rem + 1.0328638498vw, 3.0625rem);
}

.p-top-solution__item-content-text {
	font-size: clamp(1rem, 0.9339788732rem + 0.2816901408vw, 1.1875rem);
	font-weight: 400;
}

/* ============================
plan
 ========================= */

.p-plan__list {
	-moz-column-gap: 1.625rem;
	column-gap: 1.625rem;
	display: flex;
	margin: 0 auto;
	max-width: 980px;
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.p-plan__item {
	background-color: #fff;
	border-radius: 0.625rem;
	padding: 3.25rem 2rem 2.625rem;
	position: relative;
	text-align: center;
	width: calc(33.3% - 1.0833333333rem);
}

.p-plan__item::before {
	content: "";
	height: 0.625rem;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 11.5625rem;
}

.p-plan__item:nth-of-type(1)::before {
	background-color: #29D6C2;
}

.p-plan__item:nth-of-type(1) .p-plan__item-heading,
.p-plan__item:nth-of-type(1) .p-plan__item-price {
	color: #29D6C2;
}

.p-plan__item:nth-of-type(1) .p-plan__item-works-text .--dot {
	background-color: #29D6C2;
}

.p-plan__item:nth-of-type(2) {
	border: 0.1875rem solid #3CA6E4;
	position: relative;
}

.p-plan__item:nth-of-type(2)::before {
	background-color: #3CA6E4;
}

.p-plan__item:nth-of-type(2)::after {
	background: url(../img/svg/plan-label.svg) no-repeat center center/cover;
	content: "";
	height: 2.9375rem;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translate(-50%, -101%);
	width: 9.6875rem;
}

.p-plan__item:nth-of-type(2) .p-plan__item-heading,
.p-plan__item:nth-of-type(2) .p-plan__item-price {
	color: #3CA6E4;
}

.p-plan__item:nth-of-type(2) .p-plan__item-works-text .--dot {
	background-color: #3CA6E4;
}

.p-plan__item:nth-of-type(3)::before {
	background-color: #EB547D;
}

.p-plan__item:nth-of-type(3) .p-plan__item-heading,
.p-plan__item:nth-of-type(3) .p-plan__item-price {
	color: #EB547D;
}

.p-plan__item:nth-of-type(3) .p-plan__item-works-text .--dot {
	background-color: #EB547D;
}

.p-plan__item-heading {
	font-size: 1.375rem;
	font-weight: 700;
	margin-bottom: 1rem;
}

.p-plan__item-time {
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 1rem;
}

.p-plan__item-price {
	font-size: 1.875rem;
	font-weight: 700;
	margin-bottom: 1rem;
}

.p-plan__item-price .--small {
	font-size: 1.5rem;
}

.p-plan__item-description {
	font-size: 1.125rem;
	font-weight: 500;
	margin-bottom: 1rem;
}

.p-plan__item-small-heading {
	margin-bottom: 0.3125rem;
	text-align: left;
}

.p-plan__item-works {
	text-align: left;
}

.p-plan__item-works-text {
	-moz-column-gap: 0.5rem;
	align-items: center;
	column-gap: 0.5rem;
	display: flex;
}

.p-plan__item-works-text .--dot {
	border-radius: 50%;
	display: block;
	height: 0.625rem;
	width: 0.625rem;
}

/* ============================
p-top-cta
 ========================= */

.p-top-cta {
	background: url(../img/bg/cta-bg.webp) no-repeat center center/cover;
	padding: 3.625rem 1rem;
}

.p-top-cta__inner {
	background: rgba(245, 245, 245, 0.8);
	border-radius: 1.25rem;
	margin: 0 auto;
	max-width: 1232px;
	padding-bottom: clamp(2.5rem, 1.7737676056rem + 3.0985915493vw, 4.5625rem);
	padding-left: 16px;
	padding-right: 16px;
	padding-top: clamp(2rem, 1.4718309859rem + 2.2535211268vw, 3.5rem);
	text-align: center;
	width: 100%;
}

.p-top-cta__heading {
	font-size: clamp(1.75rem, 1.661971831rem + 0.3755868545vw, 2rem);
	font-weight: 700;
	margin-bottom: 1rem;
}

.p-top-cta__description {
	margin-bottom: 1rem;
}

.p-top-cta__description br {
	display: none;
}

/* ============================
p-top-faq
 ========================= */

.p-top-faq__inner {
	margin: 0 auto;
	max-width: 864px;
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.p-top-faq__accordion {
	margin: 0 auto;
	max-width: 50rem;
	width: 100%;
}

.p-top-faq__accordion__title {
	background-color: #EEF8FF;
	border-radius: 0.625rem 0.625rem 0 0;
	cursor: pointer;
	padding: 1.75rem 1.625rem 1.75rem 4.75rem;
	position: relative;
}

.p-top-faq__accordion__title::before {
	background-color: #3CA6E4;
	border-radius: 50%;
	color: #fff;
	content: "Q";
	display: grid;
	font-size: clamp(1.75rem, 1.661971831rem + 0.3755868545vw, 2rem);
	font-size: clamp(1.25rem, 1.1179577465rem + 0.5633802817vw, 1.625rem);
	font-weight: 500;
	height: clamp(2rem, 1.823943662rem + 0.7511737089vw, 2.5rem);
	left: 1.625rem;
	place-content: center;
	position: absolute;
	top: 1.375rem;
	width: clamp(2rem, 1.823943662rem + 0.7511737089vw, 2.5rem);
}

.p-top-faq__accordion__title::after {
	border: 0.1125rem solid currentColor;
	border-bottom: 0;
	border-left: 0;
	box-sizing: border-box;
	content: "";
	display: inline-block;
	height: 0.625rem;
	line-height: 1;
	position: absolute;
	right: 1.25rem;
	top: 1.875rem;
	transform: rotate(135deg);
	transition: transform 0.3s 0s ease-in-out;
	vertical-align: middle;
	width: 0.625rem;
}

.p-top-faq__accordion__title.open:after {
	transform: rotate(315deg);
}

.p-top-faq__accordion__text {
	background-color: #fff;
	border-radius: 0 0 0.625rem 0.625rem;
	display: none;
	padding: 1.75rem 1.625rem 1.75rem 4.75rem;
	position: relative;
}

.p-top-faq__accordion__text::before {
	content: "A";
	display: grid;
	font-size: clamp(1.75rem, 1.661971831rem + 0.3755868545vw, 2rem);
	font-size: clamp(1.25rem, 1.1179577465rem + 0.5633802817vw, 1.625rem);
	font-weight: 500;
	height: clamp(2rem, 1.823943662rem + 0.7511737089vw, 2.5rem);
	left: 1.625rem;
	place-content: center;
	position: absolute;
	top: 1.375rem;
	width: clamp(2rem, 1.823943662rem + 0.7511737089vw, 2.5rem);
}

/* ============================ */

/* ============================ */

.u-font { /* カラー */
}

.u-font--bold {
	font-weight: 700;
}

.u-font--black {
	font-weight: 900;
}

.u-font--marker {
	background: rgba(255, 144, 49, 0.12);
	font-weight: 900;
}

/* ============================ */

.u-bg--blue {
	background-color: #E7F2FF;
}

.u-bg--gray {
	background-color: #F5F5F5;
}

/* ============================ */

/* ============================
u-space
 ========================= */

.u-space__section {
	padding-bottom: clamp(2.5rem, 1.3996478873rem + 4.6948356808vw, 5.625rem);
	padding-top: 2.5rem;
}

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

html {
	font-size: max(1.3333333333vw, 14px);
}

}

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

html {
	font-size: max(4.2666666667vw, 14px);
	scroll-padding-top: 60px;
}

.l-header {
	border-radius: 0 0 0 3.125rem;
	height: 3.75rem;
	max-width: 100%;
}

.l-header__drawer {
	display: block;
}

.l-header__content {
	background: url(../img/bg/drawer-bg.webp) no-repeat center center/cover;
	flex-direction: column;
	height: 100svh;
	left: 0;
	padding-top: 109px;
	position: fixed;
	top: 0;
	transform: translateX(105%);
	transition: transform 0.5s ease 0s;
	width: 100%;
	z-index: -1;
}

.l-header__nav-list {
	flex-direction: column;
}

.l-header__nav-item.--home {
	display: block;
}

.l-footer__content {
	flex-direction: column;
	justify-content: center;
	row-gap: 1.25rem;
}

.l-footer__sns {
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
}

.c-heading__text br {
	display: block;
}

.p-top-fv {
	background-image: url(../img/bg/fv_sp.webp);
}

.p-top-fv__content {
	padding-bottom: 6.6875rem;
}

.p-top-fv__content-heading {
	line-height: 100%;
	margin-bottom: 1.5rem;
}

.p-top-fv__content-heading br {
	display: block;
}

.p-top-fv__content-text {
	margin-bottom: 4.5rem;
}

.p-top-fv__content-text br {
	display: block;
}

.p-top-about__list {
	padding: 0;
}

.p-top-about__item {
	-moz-column-gap: 0.75rem;
	align-items: center;
	column-gap: 0.75rem;
	display: flex;
	width: 100%;
}

.p-top-about__item-icon {
	flex-shrink: 0;
	margin: 0;
}

.p-top-about__item-content {
	text-align: left;
}

.p-top-about__item-heading {
	line-height: 140%;
	margin-bottom: 0.775rem;
}

.p-top-about__item-text {
	line-height: 145%;
}

.p-top-about__item-text br {
	display: none;
}

.p-top-worry::before {
	bottom: -2.75rem;
	height: 1.8125rem;
	width: 5.625rem;
}

.p-top-worry::after {
	bottom: -1.875rem;
	height: 1.875rem;
}

.p-top-worry__list {
	flex-direction: column;
	row-gap: 2.5rem;
}

.p-top-worry__item {
	width: 100%;
}

.p-top-worry__item-content {
	-moz-column-gap: 0.6875rem;
	column-gap: 0.6875rem;
}

.p-top-worry__item-content:not(:last-of-type) {
	margin-bottom: 1.375rem;
}

.p-top-solution__list {
	flex-direction: column;
	row-gap: 1.5rem;
}

.p-top-solution__item {
	width: 100%;
}

.p-top-solution__item-content {
	-moz-column-gap: 0.6875rem;
	column-gap: 0.6875rem;
}

.p-top-solution__item-content:not(:last-of-type) {
	margin-bottom: 1.375rem;
}

.p-plan__list {
	flex-direction: column;
	row-gap: 1.5rem;
}

.p-plan__item {
	margin: 0 auto;
	width: 90%;
}

.p-plan__item:nth-of-type(1) {
	margin-bottom: 2.9375rem;
}

.p-top-cta__description br {
	display: block;
}

.p-top-faq__accordion__title {
	padding: 1.75rem 1.75rem 1.75rem 3.125rem;
}

.p-top-faq__accordion__title::before {
	left: 0.75rem;
	top: 1.875rem;
}

.p-top-faq__accordion__title::after {
	right: 0.625rem;
	top: 2.5rem;
}

.p-top-faq__accordion__text {
	padding: 1.75rem 1.75rem 1.75rem 3.125rem;
}

.p-top-faq__accordion__text::before {
	left: 0.9375rem;
	top: 1.6875rem;
}

}

