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

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

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

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

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

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

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

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

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

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

/*! 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.
 */

/**
 * 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: 0;
}

body {
	color: #0D0E0E;
	font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	line-height: 160%;
}

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: #fff;
	display: flex;
	height: 80px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
}

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

.l-header__logo {
	width: clamp(10rem, 9.0539858729rem + 4.0363269425vw, 12.5rem);
}

.l-header__button {
	display: flex;
	gap: 12px;
}

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

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

.l-main {
	margin-top: 80px;
}

/* inner1000px */

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

/* inner900px */

.l-main__inner-small {
	margin: 0 auto;
	max-width: 940px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

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

.l-footer {
	background: linear-gradient(98deg, #04A095 0%, #00484A 100.09%);
}

.l-footer__inner {
	padding: 16px;
}

.l-footer__inner small {
	color: #fff;
	display: block;
	font-size: 12px;
	text-align: center;
}

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

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

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

.c-button {
	align-items: center;
	display: flex;
	font-weight: 700;
	font-weight: 700;
	gap: 8px;
	justify-content: center;
	line-height: 180%;
	text-align: center;
	transition: opacity 0.3s 0s ease-in-out;
	width: -moz-fit-content;
	width: fit-content;
}

.c-button span {
	display: inline-block;
	line-height: 100%;
}

.c-button img {
	height: clamp(1.5rem, 1.2871468214rem + 0.9081735621vw, 2.0625rem);
	width: clamp(1.5rem, 1.2871468214rem + 0.9081735621vw, 2.0625rem);
}

.c-button:hover {
	opacity: 0.7;
}

.c-button.--mail {
	background-color: #fff;
	border: 2px solid #F5730F;
	color: #F5730F;
}

.c-button.--mail img {
	filter: invert(64%) sepia(46%) saturate(6075%) hue-rotate(354deg) brightness(97%) contrast(97%);
}

.c-button.--tel {
	background-color: #F5730F;
	border: 2px solid #F5730F;
	color: #fff;
}

.c-button.--tel img {
	filter: invert(84%) sepia(100%) saturate(14%) hue-rotate(193deg) brightness(107%) contrast(105%);
}

.c-button.--line {
	background-color: #06C755;
	border: 2px solid #06C755;
	color: #fff;
}

/* headerボタン */

.c-button.--header {
	padding: 8px 32px;
}

.c-button.--header img {
	height: 24px;
	width: 24px;
}

/* fvボタン */

.c-button.--fv {
	font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
	padding: clamp(0.6875rem, 0.5692482341rem + 0.5045408678vw, 1rem) clamp(1rem, -1.2541876047rem + 4.6901172529vw, 2.75rem);
}

/* ctaボタン */

.c-button.--tel.--cta {
	background-color: #fff;
	border: none;
	color: #F5730F;
	font-size: clamp(1.625rem, 0.9154894046rem + 3.0272452069vw, 3.5rem);
	margin-bottom: 16px;
	width: 100%;
}

.c-button.--tel.--cta .--cta-tel-price {
	align-items: center;
	background: #EAEAEA;
	display: flex;
	padding: 0 clamp(1.3125rem, -1.102701005rem + 5.0251256281vw, 3.1875rem) 8px clamp(1.875rem, 1.1654894046rem + 3.0272452069vw, 3.75rem);
}

.c-button.--tel.--cta .--cta-tel-price .--micro {
	color: #0D0E0E;
	font-size: clamp(0.75rem, 0.3715943491rem + 1.614530777vw, 1.75rem);
	letter-spacing: 2.24px;
	line-height: 116%;
	padding-top: 8px;
}

.c-button.--tel.--cta .--cta-tel-price .--price {
	color: #F5730F;
	font-size: clamp(0.9375rem, 0.7246468214rem + 0.9081735621vw, 1.5rem);
	line-height: 100%;
}

.c-button.--tel.--cta .--cta-tel-price .--price .--big {
	font-size: clamp(2.6875rem, 1.623234107rem + 4.5408678103vw, 5.5rem);
	line-height: 100%;
}

.c-button.--tel.--cta .--cta-tel-content {
	align-items: flex-end;
	display: flex;
	margin: 0 auto;
}

.c-button.--tel.--cta .--cta-tel-content .--cta-tel-number {
	align-items: center;
	display: flex;
	display: inline-block;
	line-height: 1;
}

.c-button.--tel.--cta .--cta-tel-content .--cta-tel-text {
	color: #0D0E0E;
	font-size: clamp(0.875rem, 0.7330978809rem + 0.6054490414vw, 1.25rem);
	line-height: 1;
	margin-left: 12px;
}

.c-button.--tel.--cta img {
	filter: invert(64%) sepia(46%) saturate(6075%) hue-rotate(354deg) brightness(97%) contrast(97%);
	height: clamp(1.75rem, 1.087790111rem + 2.8254288597vw, 3.5rem);
	width: clamp(1.75rem, 1.087790111rem + 2.8254288597vw, 3.5rem);
}

.c-button.--mail.--cta,
.c-button.--line.--cta {
	flex: 1;
	font-size: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
	padding: clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem) 16px;
}

.c-button.--mail.--cta .--arrow,
.c-button.--line.--cta .--arrow {
	border: 2px solid currentColor;
	border-bottom: 0;
	border-left: 0;
	box-sizing: border-box;
	display: block;
	height: 12px;
	line-height: 1;
	margin: 3px 0 0 7px;
	transform: rotate(45deg);
	width: 12px;
}

.c-button.--mail.--cta img,
.c-button.--line.--cta img {
	height: clamp(1.75rem, 1.4661957619rem + 1.2108980827vw, 2.5rem);
	width: clamp(1.75rem, 1.4661957619rem + 1.2108980827vw, 2.5rem);
}

.c-button.--mail.--cta {
	background-color: #F5730F;
	border: 3px solid #F5730F;
	color: #fff;
}

.c-button.--mail.--cta img {
	filter: invert(84%) sepia(100%) saturate(14%) hue-rotate(193deg) brightness(107%) contrast(105%);
}

.c-button.--line.--cta {
	background-color: #fff;
	border: 3px solid #06C755;
	color: #06C755;
}

/* アクセスボタン */

.c-button.--access {
	background-color: #fff;
	border: 3px solid #2DA86D;
	border-radius: 50px;
	color: #2DA86D;
	font-size: clamp(1.125rem, 0.9830978809rem + 0.6054490414vw, 1.5rem);
	justify-content: center;
	margin: 0 auto;
	max-width: 340px;
	padding: 8px 16px;
	position: relative;
	width: 100%;
}

.c-button.--access .--arrow {
	border-color: transparent transparent transparent #2DA86D;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	display: block;
	height: 0;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
}

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

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

.c-border-round,
.c-border-round--green {
	border-radius: 24px 0px;
	overflow: hidden;
}

.c-border-round--green {
	background: #FFF;
	border: 3px solid #ABCD03;
}

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

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

.c-heading {
	font-size: clamp(1.75rem, 1.3715943491rem + 1.614530777vw, 2.75rem);
	font-weight: 700;
	margin-bottom: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
	text-align: center;
}

/*上下線*/

.c-heading-line {
	border-bottom: 2px solid;
	border-top: 2px solid;
	font-size: clamp(1.75rem, 1.4661957619rem + 1.2108980827vw, 2.5rem);
	font-weight: 700;
	line-height: 1;
	margin: 0 auto;
	padding: clamp(0.5rem, 0.3817482341rem + 0.5045408678vw, 0.8125rem) clamp(0.78125rem, 0.6984737639rem + 0.3531786075vw, 1rem) clamp(0.625rem, 0.5067482341rem + 0.5045408678vw, 0.9375rem);
	width: -moz-fit-content;
	width: fit-content;
}

.c-heading-line.--orange {
	border-color: #F5730F;
}

.c-heading-line.--green {
	border-color: #008D92;
}

/* 文字下丸 */

.c-heading__circle {
	font-size: clamp(1.375rem, 0.9492936428rem + 1.8163471241vw, 2.5rem);
	font-weight: 700;
	line-height: 180%;
	text-align: center;
}

.c-heading__circle span {
	color: #fff;
	font-size: clamp(1.625rem, 1.1046922301rem + 2.2199798184vw, 3rem);
	position: relative;
	z-index: 1;
}

.c-heading__circle span::after {
	border-radius: 50%;
	content: "";
	height: clamp(2.5rem, 1.7431886983rem + 3.229061554vw, 4.5rem);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: clamp(2.5rem, 1.7431886983rem + 3.229061554vw, 4.5rem);
	z-index: -1;
}

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

/* ============================
cta
 ========================= */

.c-cta {
	background: url(../img/bg/cta-bg_pc.webp) no-repeat center center/cover;
	padding-bottom: clamp(2rem, 1.6215943491rem + 1.614530777vw, 3rem);
	padding-top: clamp(2rem, 1.6215943491rem + 1.614530777vw, 3rem);
}

.c-cta__inner {
	margin: 0 auto;
	max-width: 1120px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.c-cta__heading {
	color: #fff;
	font-size: clamp(1.75rem, 0.783919598rem + 2.0100502513vw, 2.5rem);
	line-height: 160%;
	margin-bottom: 20px;
	text-align: center;
}

.c-cta__heading br {
	display: none;
}

.c-cta__heading-pic {
	display: block;
	margin: 0 auto;
	max-width: 551px;
	width: 100%;
}

.c-cta__content {
	margin-bottom: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
}

.c-cta__content-flex {
	display: flex;
	gap: 16px;
}

.c-cta__text {
	color: #fff;
	font-size: clamp(0.9375rem, 0.9138496468rem + 0.1009081736vw, 1rem);
	text-align: center;
}

.c-cta__text a {
	display: inline;
	text-decoration: underline;
}

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

/* ============================
c-section__description
 ========================= */

.c-section__description {
	background-color: #fff;
	border: 3px solid #F5730F;
	padding: clamp(0.75rem, 0.4661957619rem + 1.2108980827vw, 1.5rem) 16px clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem);
	text-align: center;
}

.c-section__description-heading {
	color: #F5730F;
	font-size: clamp(1.25rem, 0.9661957619rem + 1.2108980827vw, 2rem);
	font-weight: 700;
	line-height: 100%;
	margin-bottom: clamp(0.5rem, 0.3107971746rem + 0.8072653885vw, 1rem);
}

.c-section__description-heading br {
	display: none;
}

.c-section__description-text {
	font-size: 14px;
	line-height: 100%;
}

.c-section__description-text br {
	display: none;
}

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

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

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

.p-fv__inner {
	margin: 0 auto;
	max-width: 1240px;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	width: 100%;
}

.p-fv__bg {
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}

.p-fv__contents {
	-moz-column-gap: clamp(1.25rem, 0.6823915237rem + 2.4217961655vw, 2.75rem);
	column-gap: clamp(1.25rem, 0.6823915237rem + 2.4217961655vw, 2.75rem);
	display: flex;
	left: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transform-origin: left center;
}

.p-fv__contents-text {
	padding-left: clamp(0.3125rem, 0.2415489405rem + 0.3027245207vw, 0.5rem);
}

.p-fv__contents-micro {
	background-color: #fff;
	border-radius: 1000px;
	font-size: clamp(1.125rem, 0.8884964682rem + 1.0090817356vw, 1.75rem);
	letter-spacing: 0.96px;
	line-height: 1;
	margin-bottom: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
	padding: clamp(0.375rem, 0.3276992936rem + 0.2018163471vw, 0.5rem) clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem);
	text-align: center;
}

.p-fv__contents-micro span {
	font-size: clamp(1.5625rem, 1.2550454087rem + 1.3118062563vw, 2.375rem);
}

.p-fv__contents-copy {
	color: #fff;
	font-size: clamp(1.5rem, 0.9087411705rem + 2.5227043391vw, 3.0625rem);
	letter-spacing: 0.96px;
	line-height: 1.3;
	margin-bottom: clamp(0.5rem, -0.466080402rem + 2.0100502513vw, 1.25rem);
	white-space: nowrap;
}

.p-fv__contents-copy .--big {
	font-size: clamp(2.5rem, 1.6012865792rem + 3.8345105954vw, 4.875rem);
	margin-left: clamp(0.125rem, 0.0303985873rem + 0.4036326942vw, 0.375rem);
}

.p-fv__contents-copy .--medium {
	font-size: clamp(2rem, 1.3850908174rem + 2.6236125126vw, 3.625rem);
}

.p-fv__contents-copy .--square {
	border: 2px solid #fff;
	display: inline-block;
	font-size: clamp(4.1875rem, 2.7448284561rem + 6.1553985873vw, 8rem);
	line-height: 1;
	outline: 1px solid #fff;
	padding: clamp(0.3125rem, 0.1942482341rem + 0.5045408678vw, 0.625rem) clamp(0.5625rem, 0.4442482341rem + 0.5045408678vw, 0.875rem) clamp(0.75rem, 0.5607971746rem + 0.8072653885vw, 1.25rem);
}

/* fvボタン */

.p-fv__contents-button {
	align-items: flex-end;
	display: flex;
	gap: clamp(0.5rem, 0.3107971746rem + 0.8072653885vw, 1rem);
}

.p-fv__contents-button-item {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.p-fv__contents-button-item-pic {
	width: clamp(7.5rem, 7.0269929364rem + 2.0181634712vw, 8.75rem);
}

.p-fv__contents-button-item-flex .--line {
	display: none;
}

.p-fv__contents-point-wrap {
	margin-top: auto;
}

/* ポイント3つ */

.p-fv__contents-point-list {
	-moz-column-gap: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
	column-gap: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
	display: flex;
	justify-content: space-between;
}

.p-fv__contents-point-item {
	width: clamp(6.5625rem, 5.2617305752rem + 5.5499495459vw, 10rem);
}

.p-fv__contents-point-text {
	color: #FFF;
	font-size: clamp(0.6875rem, 0.6165489405rem + 0.3027245207vw, 0.875rem);
}

/* ============================
p-about
 ========================= */

.p-about {
	padding-bottom: clamp(3rem, 2.4323915237rem + 2.4217961655vw, 4.5rem);
	padding-top: clamp(2.5rem, 1.9323915237rem + 2.4217961655vw, 4rem);
}

.p-about__heading {
	font-size: clamp(2rem, 1.5269929364rem + 2.0181634712vw, 3.25rem);
	line-height: 1;
	margin-bottom: 24px;
	text-align: center;
}

.p-about__heading span {
	display: block;
	font-size: clamp(1.125rem, 0.7938950555rem + 1.4127144299vw, 2rem);
	line-height: 1;
	margin-bottom: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
}

.p-about__text {
	margin-bottom: clamp(3rem, 2.2431886983rem + 3.229061554vw, 5rem);
	text-align: center;
}

.p-about__heading-sub {
	font-size: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem);
	margin-bottom: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem);
	text-align: center;
}

.p-about__merit-list {
	-moz-column-gap: 32px;
	column-gap: 32px;
	display: flex;
	justify-content: space-between;
}

.p-about__merit-item {
	border: 3px solid #008D92;
	flex: 1;
	font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
	line-height: 120%;
	padding: 16px 24px;
	text-align: center;
}

.p-about__merit-item .--big {
	font-size: clamp(1.75rem, 1.4661957619rem + 1.2108980827vw, 2.5rem);
	line-height: 120%;
}

/* 11,000円〜 */

.p-about__merit-item:first-of-type {
	font-size: clamp(1.125rem, 0.9830978809rem + 0.6054490414vw, 1.5rem);
}

.p-about__merit-item:first-of-type .--middle {
	font-size: 20px;
}

.p-about__merit-item:first-of-type .--big {
	font-size: clamp(1.875rem, 1.7330978809rem + 0.6054490414vw, 2.25rem);
}

/* 問題発生から〜 */

.p-about__merit-item:last-of-type .--middle {
	font-size: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem);
}

/* ============================
p-worry
 ========================= */

.p-worry {
	background: url(../img/bg/section-bg_pc.webp) no-repeat center center/cover;
}

.p-worry__heading {
	font-size: clamp(1.25rem, 0.9661957619rem + 1.2108980827vw, 2rem);
	line-height: 140%;
	margin-bottom: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
	text-align: center;
}

.p-worry__heading br.--sp {
	display: none;
}

.p-worry__list {
	-moz-column-gap: 32px;
	column-gap: 32px;
	display: flex;
	justify-content: space-between;
}

.p-worry__item {
	align-items: center;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.p-worry__item:nth-of-type(2) {
	margin-top: 40px;
}

.p-worry__item-text {
	background: #FFF;
	border: 3px solid #999;
	border-radius: 8px;
	font-size: clamp(1rem, 0.3559463987rem + 1.3400335008vw, 1.5rem);
	line-height: 140%;
	margin-bottom: 24px;
	padding: clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem) clamp(0.625rem, -0.341080402rem + 2.0100502513vw, 1.375rem);
	position: relative;
	text-align: center;
	width: 100%;
}

.p-worry__item-pic {
	max-width: clamp(8.1875rem, 7.6435418769rem + 2.3208879919vw, 9.625rem);
	position: relative;
	width: 100%;
}

/* ふきだし丸 */

.p-worry__item-pic .--bubble {
	display: block;
	height: 40px;
	position: absolute;
	right: -20px;
	top: 0;
	transform: translateY(-38%);
	width: 43px;
}

.p-worry__item-pic .--bubble::before,
.p-worry__item-pic .--bubble::after {
	background-color: #fff;
	border: 3px solid #999;
	border-radius: 50%;
	content: "";
	display: block;
	position: absolute;
}

.p-worry__item-pic .--bubble::before {
	height: 24px;
	right: 0;
	top: 0;
	width: 26px;
}

.p-worry__item-pic .--bubble::after {
	bottom: 0;
	height: 16px;
	left: 0;
	width: 17px;
}

.p-worry__item:nth-of-type(1) .p-worry__item-pic .--bubble {
	left: -20px;
	right: auto;
	transform: translateY(-38%) scale(-1, 1);
}

/* ============================
p-reason
 ========================= */

.p-reason__heading {
	font-size: clamp(1.125rem, 0.9830978809rem + 0.6054490414vw, 1.5rem);
	margin-bottom: clamp(2rem, 1.8107971746rem + 0.8072653885vw, 2.5rem);
}

.p-reason__heading .--big {
	display: inline-block;
	font-size: clamp(2.25rem, 1.8715943491rem + 1.614530777vw, 3.25rem);
	line-height: 100%;
	margin-top: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
}

.p-reason__heading .--middle {
	font-size: clamp(1.5rem, 1.2161957619rem + 1.2108980827vw, 2.25rem);
}

.p-reason__list {
	display: flex;
	flex-direction: column;
	row-gap: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem);
}

.p-reason__item {
	-moz-column-gap: 40px;
	align-items: center;
	background-color: #F2FDFD;
	border: 3px solid #008D92;
	column-gap: 40px;
	display: flex;
	padding: 32px 32px 32px clamp(2rem, 1.2431886983rem + 3.229061554vw, 4rem);
	position: relative;
	z-index: 1;
}

.p-reason__item::before,
.p-reason__item::after {
	content: "";
	display: block;
	position: absolute;
}

.p-reason__item::before {
	color: #FFF;
	content: attr(data-number);
	font-size: clamp(2rem, 1.8107971746rem + 0.8072653885vw, 2.5rem);
	font-weight: 700;
	left: 8px;
	top: 10px;
	z-index: 3;
}

.p-reason__item::after {
	background-color: #008D92;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	height: clamp(4.375rem, 3.9492936428rem + 1.8163471241vw, 5.5rem);
	left: 0;
	top: 0;
	width: clamp(4.375rem, 3.9492936428rem + 1.8163471241vw, 5.5rem);
	z-index: 2;
}

.p-reason__item-heading {
	font-size: clamp(1.5rem, 1.4053985873rem + 0.4036326942vw, 1.75rem);
	line-height: 140%;
	margin-bottom: 16px;
}

.p-reason__item-heading .--big {
	font-size: clamp(1.5rem, 0.9323915237rem + 2.4217961655vw, 3rem);
}

.p-reason__item:first-of-type .p-reason__item-heading {
	font-size: clamp(1.5rem, 1.4526992936rem + 0.2018163471vw, 1.625rem);
}

.p-reason__item:first-of-type .p-reason__item-heading .--big {
	font-size: clamp(2.5rem, 2.3107971746rem + 0.8072653885vw, 3rem);
}

.p-reason__item-heading br.--sp {
	display: none;
}

.p-reason__item-text {
	line-height: 180%;
}

.p-reason__item-pic {
	max-width: 340px;
	width: 100%;
}

/* ============================
p-case
 ========================= */

.p-case__heading {
	font-size: clamp(1.5rem, 0.9323915237rem + 2.4217961655vw, 3rem);
	margin-bottom: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
	text-align: center;
}

.p-case__list {
	display: flex;
	flex-direction: column;
	row-gap: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem);
}

.p-case__item {
	border: 6px solid #96CED0;
	font-size: clamp(1.25rem, 1.0607971746rem + 0.8072653885vw, 1.75rem);
	line-height: 180%;
	padding: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem) clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
}

.p-case__item-heading {
	font-size: clamp(1.25rem, 1.0607971746rem + 0.8072653885vw, 1.75rem);
	line-height: 180%;
	margin-bottom: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
}

.p-case__item-heading br {
	display: none;
}

.p-case__item-wrap {
	-moz-column-gap: 64px;
	column-gap: 64px;
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.p-case__item-wrap-box {
	border: 2px solid;
	flex: 1;
	font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
	line-height: 140%;
	padding: clamp(1.5rem, 1.3107971746rem + 0.8072653885vw, 2rem) clamp(1.375rem, 1.3276992936rem + 0.2018163471vw, 1.5rem) 16px clamp(1.375rem, 1.1384964682rem + 1.0090817356vw, 2rem);
	position: relative;
}

.p-case__item-wrap-box .--tag {
	color: #fff;
	display: block;
	font-size: 14px;
	left: 0;
	line-height: 180%;
	padding: 0 8px;
	position: absolute;
	top: 0;
}

.p-case__item-wrap-box.--before {
	background-color: #F3F3F3;
	border-color: #888;
	position: relative;
}

.p-case__item-wrap-box.--before::after {
	border-color: transparent transparent transparent #008D92;
	border-style: solid;
	border-width: 17px 0 17px 16px;
	content: "";
	height: 0;
	left: calc(100% + 30px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
}

.p-case__item-wrap-box.--before .--tag {
	background-color: #888;
}

.p-case__item-wrap-box.--before p br {
	display: none;
}

.p-case__item-wrap-box.--after {
	background-color: #fff;
	border-color: #F5730F;
}

.p-case__item-wrap-box.--after .--tag {
	background-color: #F5730F;
}

.p-case__item-wrap-box.--after .--big {
	font-size: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
	line-height: 160%;
}

.p-case__item-text {
	font-size: 16px;
	line-height: 160%;
}

/* ============================
p-happen
 ========================= */

.p-happen {
	background: url(../img/bg/section-bg_pc.webp) no-repeat center center/cover;
}

.p-happen__heading {
	font-size: clamp(1.75rem, 1.4661957619rem + 1.2108980827vw, 2.5rem);
	margin-bottom: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
	text-align: center;
}

.p-happen__description {
	font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
	margin-bottom: clamp(2.5rem, 2.1215943491rem + 1.614530777vw, 3.5rem);
	text-align: center;
}

.p-happen__list {
	-moz-column-gap: clamp(0.5rem, -1.432160804rem + 4.0201005025vw, 2rem);
	column-gap: clamp(0.5rem, -1.432160804rem + 4.0201005025vw, 2rem);
	display: flex;
	justify-content: space-between;
}

.p-happen__item {
	background-color: #fff;
	flex: 1;
	padding: 24px;
	position: relative;
}

.p-happen__item-number {
	background-color: #fff;
	border-radius: 50%;
	display: grid;
	height: 54px;
	left: 0;
	place-content: center;
	position: absolute;
	top: 0;
	transform: translateY(-50%);
	width: 54px;
}

.p-happen__item-pic {
	margin-bottom: 16px;
	position: relative;
	z-index: 1;
}

.p-happen__item-heading {
	font-size: 20px;
	line-height: 140%;
	margin-bottom: 8px;
	text-align: center;
}

/* ============================
p-contract
 ========================= */

.p-contract {
	padding-bottom: clamp(3rem, 1.8647830474rem + 4.843592331vw, 6rem);
	padding-top: clamp(2.5rem, 1.7431886983rem + 3.229061554vw, 4.5rem);
}

.p-contract__heading {
	font-size: clamp(2.25rem, 1.8715943491rem + 1.614530777vw, 3.25rem);
	line-height: 100%;
	margin-bottom: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
	text-align: center;
}

.p-contract__heading span {
	display: block;
	font-size: clamp(1.125rem, 0.9830978809rem + 0.6054490414vw, 1.5rem);
	margin-bottom: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
}

.p-contract__list {
	display: flex;
	flex-direction: column;
	row-gap: clamp(1.5rem, 0.5421606963rem + 4.0867810293vw, 4.03125rem);
}

.p-contract__item {
	background-color: #fff;
	box-shadow: 16px 16px 0px 0px #96CED0;
	max-width: 920px;
	padding: 16px 40px;
	width: 100%;
}

.p-contract__item:nth-of-type(2) {
	margin-left: 8%;
}

.p-contract__item:nth-of-type(3) {
	margin-left: auto;
}

.p-contract__item-heading {
	-moz-column-gap: clamp(1rem, 0.9645244702rem + 0.1513622603vw, 1.09375rem);
	align-items: center;
	column-gap: clamp(1rem, 0.9645244702rem + 0.1513622603vw, 1.09375rem);
	display: flex;
	margin-bottom: 16px;
}

.p-contract__item-heading-number {
	flex-shrink: 0;
	width: clamp(2.75rem, 1.8039858729rem + 4.0363269425vw, 5.25rem);
}

.p-contract__item-heading-text {
	font-size: clamp(1.25rem, 1.0607971746rem + 0.8072653885vw, 1.75rem);
	line-height: 160%;
}

.p-contract__item-content {
	-moz-column-gap: clamp(1rem, -0.932160804rem + 4.0201005025vw, 2.5rem);
	align-items: center;
	column-gap: clamp(1rem, -0.932160804rem + 4.0201005025vw, 2.5rem);
	display: flex;
}

.p-contract__item-text {
	flex: 1;
	line-height: 180%;
}

.p-contract__item-pic {
	max-width: 300px;
}

/* ============================
p-price
 ========================= */

.p-price {
	background-color: #F2FDFD;
}

.p-price__heading {
	font-size: clamp(1.75rem, 1.3715943491rem + 1.614530777vw, 2.75rem);
	line-height: 140%;
	margin-bottom: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
	text-align: center;
}

.p-price-table-wrap {
	-webkit-overflow-scrolling: touch;
	overflow-x: auto;
	padding-bottom: 24px;
}

/* テーブル */

.p-price-table {
	border-collapse: collapse;
	text-align: center;
	white-space: nowrap;
	width: 100%;
}

/* テーブルヘッダー */

.p-price-table thead th {
	border: 1px solid #fff;
	color: #fff;
	font-size: clamp(0.875rem, 0.7803985873rem + 0.4036326942vw, 1.125rem);
	line-height: 160%;
	padding: 12px 8px;
	text-align: center;
}

.p-price-table thead th:first-of-type {
	border: 1px solid #96CED0;
}

.p-price-table thead .--light {
	background-color: #008D92;
}

.p-price-table thead .--standard,
.p-price-table thead .--premium {
	background-color: #7ABDBF;
}

/* テーブルボディ */

.p-price-table tbody th {
	background-color: #F6F6F6;
	border: 1px solid #96CED0;
	font-size: clamp(0.875rem, 0.7803985873rem + 0.4036326942vw, 1.125rem);
	line-height: 160%;
	padding: 12px 8px;
	text-align: center;
	vertical-align: middle;
	width: clamp(5rem, 3.5809788093rem + 6.0544904137vw, 8.75rem);
}

.p-price-table tbody th.--small {
	font-size: 14px;
}

.p-price-table tbody td {
	background-color: #F6F6F6;
	border: 1px solid #96CED0;
	line-height: 160%;
	padding: 12px 8px;
	vertical-align: middle;
}

.p-price-table tbody td:first-of-type {
	background-color: #fff;
}

.p-price-table tbody td.--big {
	font-size: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
}

.p-price-table tbody td.--big span {
	font-size: clamp(0.875rem, 0.7330978809rem + 0.6054490414vw, 1.25rem);
}

.p-price-table tbody td span.--small {
	font-size: 12px;
}

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

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

/* バーの背景スタイル */

.simplebar-track {
	background: #E1E1E1;
	border-radius: 8px;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible::before {
	opacity: 1;
}

/* バーの色 */

.simplebar-track .simplebar-scrollbar::before {
	background: #008D92;
}

/* バー下テキスト */

.p-price-table__scrollbar-text {
	display: none;
	font-size: 12px;
	margin-bottom: 16px;
	text-align: right;
}

.p-price-table__scrollbar-text.active {
	display: block;
}

/* ============================
p-message
 ========================= */

.p-message__wrap {
	display: flex;
	gap: 32px;
}

.p-message__wrap-text {
	flex: 1;
	line-height: 180%;
	min-width: 360px;
}

.p-message__wrap-pic {
	max-width: 524px;
	width: 100%;
}

/* ============================
p-flow
 ========================= */

.p-flow {
	background-color: #f2fdfd;
}

.p-flow__list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
}

.p-flow__item {
	background-color: #fff;
	border: 2px solid #008D92;
	flex: 1;
	padding: 32px 23px 24px;
	position: relative;
}

.p-flow__item::before {
	background-color: #008D92;
	color: #FFF;
	content: attr(data-number);
	font-size: 32px;
	font-weight: 700;
	left: -2px;
	line-height: 100%;
	padding: 1px 7px 4px;
	position: absolute;
	top: 0;
	transform: translateY(-50%);
	z-index: 1;
}

.p-flow__item-heading {
	font-size: 20px;
	margin-bottom: 12px;
}

.p-flow__item-text {
	line-height: 160%;
}

.p-flow__list-arrow {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0 8px;
	row-gap: 8px;
}

.p-flow__list-arrow p {
	line-height: 100%;
}

.p-flow__list-arrow span {
	display: block;
	height: 26px;
	position: relative;
	width: 14px;
}

.p-flow__list-arrow span::after {
	border-color: transparent transparent transparent #008D92;
	border-style: solid;
	border-width: 14px 0 14px 13px;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 0;
}

/* ============================
faq
 ========================= */

.p-faq {
	background-color: #f6f6f6;
}

.p-faq__inner {
	margin: 0 auto;
	max-width: 840px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.p-faq__list-item {
	background-color: #fff;
	padding: clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem);
}

.p-faq__list-item:not(last-of-type) {
	margin-bottom: clamp(1rem, 0.4323915237rem + 2.4217961655vw, 2.5rem);
}

.p-faq__item-question,
.p-faq__item-answer {
	-moz-column-gap: 16px;
	column-gap: 16px;
	display: flex;
	line-height: 160%;
	position: relative;
}

.p-faq__item-question::before,
.p-faq__item-answer::before {
	border-radius: 50%;
	content: "";
	display: block;
	display: grid;
	flex-shrink: 0;
	font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
	font-weight: 700;
	height: 30px;
	justify-content: center;
	line-height: 100%;
	line-height: 1;
	place-content: center;
	width: 30px;
}

.p-faq__item-question {
	font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
	line-height: 140%;
	margin-bottom: 12px;
}

.p-faq__item-question::before {
	background: #008D92;
	color: #fff;
	content: "Q";
	padding-bottom: 3px;
}

.p-faq__item-answer {
	font-size: 16px;
	line-height: 180%;
}

.p-faq__item-answer::before {
	background-color: #fff;
	content: "A";
}

/* ============================
access
 ========================= */

.p-access__tabs {
	border-bottom: 8px solid #2DA86D;
	margin-bottom: clamp(1.5rem, 1.2634964682rem + 1.0090817356vw, 2.125rem);
}

.p-access__tabs-inner {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 85%;
}

.p-access__tabs-item {
	-moz-column-gap: 16px;
	align-items: center;
	background-color: #CFCFCF;
	color: #fff;
	column-gap: 16px;
	cursor: pointer;
	display: flex;
	font-size: clamp(0.875rem, 0.7094475277rem + 0.7063572149vw, 1.3125rem);
	font-weight: 700;
	justify-content: center;
	padding: clamp(0.5rem, 0.3107971746rem + 0.8072653885vw, 1rem);
	text-align: center;
	width: 25%;
}

.p-access__tabs-item[aria-selected=true] {
	background-color: #2DA86D;
	color: #fff;
}

.p-access__tabs-item[aria-selected=true] .--arrow::after {
	border-color: #2DA86D;
}

.p-access__tabs-item .--arrow {
	background-color: #fff;
	border-radius: 50%;
	display: block;
	height: 16px;
	position: relative;
	width: 16px;
}

.p-access__tabs-item .--arrow::after {
	border: 1.5px solid #CFCFCF;
	border-bottom: 0;
	border-left: 0;
	box-sizing: border-box;
	content: "";
	display: inline-block;
	height: 8px;
	left: 50%;
	line-height: 1;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(135deg);
	vertical-align: middle;
	width: 8px;
}

.p-access__tabs-item:first-of-type {
	border-radius: 20px 0 0 0;
}

.p-access__tabs-item:last-of-type {
	border-radius: 0 20px 0 0;
}

.p-access__panel {
	display: none;
	margin: 0 auto clamp(2.5rem, 1.7431886983rem + 3.229061554vw, 4.5rem);
	width: 80%;
}

.p-access__panel[aria-hidden=false] {
	display: block;
}

.p-access__panel-map {
	aspect-ratio: 4/2;
	margin-bottom: 32px;
}

.p-access__panel-map iframe {
	height: 100%;
	width: 100%;
}

.p-access__panel-address {
	border-bottom: 1px solid #d9d9d9;
	margin-bottom: clamp(1.25rem, 0.9661957619rem + 1.2108980827vw, 2rem);
	padding-bottom: 24px;
	padding-top: clamp(1rem, 0.6215943491rem + 1.614530777vw, 2rem);
}

.p-access__panel-address-contents {
	-moz-column-gap: 24px;
	column-gap: 24px;
	display: flex;
	font-size: clamp(0.9375rem, 0.9138496468rem + 0.1009081736vw, 1rem);
	margin-bottom: 24px;
}

.p-access__panel-address-contents dt:first-of-type {
	flex-shrink: 0;
}

.p-access__panel-access-button {
	margin: 0 auto;
	max-width: 300px;
	padding: clamp(0.5rem, 0.3580978809rem + 0.6054490414vw, 0.875rem) clamp(1rem, 0.6215943491rem + 1.614530777vw, 2rem);
	width: 100%;
}

.p-access__panel-way {
	list-style: disc;
	margin: 24px 0 16px;
	padding-left: 20px;
}

.p-access__panel-way-item {
	font-size: clamp(0.9375rem, 0.9138496468rem + 0.1009081736vw, 1rem);
}

.p-access__panel-office {
	margin: 0 auto;
	width: 80%;
}

.p-access__panel-office-table {
	width: 100%;
}

.p-access__panel-office-table.--mb {
	margin-bottom: clamp(1rem, 0.6215943491rem + 1.614530777vw, 2rem);
}

.p-access__panel-office-table tr {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 16px;
	padding-bottom: 16px;
}

.p-access__panel-office-table tr:not(:last-of-type) {
	border-bottom: 2px solid #b2b2b2;
}

.p-access__panel-office-table th,
.p-access__panel-office-table td {
	font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
}

.p-access__panel-office-table th {
	width: 15%;
}

.p-access__panel-office-table td {
	width: 85%;
}

.p-access__panel-office-table td .--add {
	line-height: 160%;
}

.p-access__panel-office-table td .--add .--office {
	margin-right: 16px;
}

.p-access__panel-office-table td .--add .--small {
	font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
}

.p-access__panel-office-table td .--add br {
	display: none;
}

/* ============================
contact
 ========================= */

.p-contact {
	background-color: #F2FDFD;
}

.p-contact a {
	display: inline;
}

.p-contact__inner {
	margin: 0 auto;
	max-width: 940px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.p-contact__heading {
	margin-bottom: clamp(0.5rem, 0.1215943491rem + 1.614530777vw, 1.5rem);
}

.p-payment__explanation {
	text-align: center;
  margin: 0 0 32px;
}

.p-contact__contents {
	padding: clamp(1.5rem, 1.1215943491rem + 1.614530777vw, 2.5rem);
}

.p-contact__contents-heading {
	font-size: 18px;
	margin-bottom: 16px;
}

.p-contact__contents-text {
	margin-bottom: 40px;
}

.p-contact__contents-text-link {
	color: #3867B5;
	display: inline;
}

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

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

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

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

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

.u-font--marker {
	background: linear-gradient(transparent 60%, #FFCDA7 60%);
	font-weight: 700;
}

.u-font-color--orange {
	color: #F5730F;
}

.u-font-color--green {
	color: #008D92;
}

.u-font-color--green02 {
	color: #2DA86D;
}

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

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

/* セクション余白 */

/* ============================
u-spacing
 ========================= */

/* 各セクション共通余白 */

.u-spacing__section {
	padding-bottom: clamp(3rem, 2.4323915237rem + 2.4217961655vw, 4.5rem);
	padding-top: clamp(2.5rem, 1.7431886983rem + 3.229061554vw, 4.5rem);
}

@media (min-width: 450px) and (max-width: 539px) {

div.p-fv__contents {
	top: 13px;
	transform: translate(-50%, 0) scale(1.1);
}

}

@media (min-width: 540px) and (max-width: 578px) {

div.p-fv__contents {
	top: 34px;
	transform: translate(-50%, 0) scale(1.2);
}

}

@media (min-width: 579px) and (max-width: 700px) {

div.p-fv__contents {
	top: 34px;
	transform: translate(-50%, 0) scale(1.28);
}

}

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

.p-fv__contents {
	transform: translateY(-50%) scale(0.85);
}

.p-contract__item {
	margin: 0 auto;
}

.p-contract__item:nth-of-type(2),
.p-contract__item:nth-of-type(3) {
	margin: 0 auto;
}

}

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

.p-fv__contents {
	transform: translateY(-50%) scale(0.7);
}

}

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

html {
	scroll-padding-top: 0;
}

.l-header {
	height: 60px;
}

.l-header__button {
	display: none;
}

.l-main {
	margin-top: 60px;
}

.c-button.--mail {
	width: 100%;
}

.c-button.--tel .--pc-text {
	display: none;
}

.c-button.--fv {
	flex: 1;
}

.c-button.--tel.--cta {
	-moz-column-gap: 10px;
	column-gap: 10px;
	padding: 8px 16px;
}

.c-button.--tel.--cta .--cta-tel-price {
	border-radius: 50%;
	flex-direction: column;
	padding: 10px 14px;
}

.c-button.--tel.--cta .--cta-tel-price .--micro {
	color: #F5730F;
	line-height: 100%;
	text-align: center;
}

.c-button.--tel.--cta .--cta-tel-price .--micro br {
	display: none;
}

.c-button.--tel.--cta .--cta-tel-content {
	flex-direction: column;
	justify-content: center;
	margin: 0;
	row-gap: 10px;
}

.c-button.--tel.--cta .--cta-tel-content .--cta-tel-text {
	margin: 0;
}

.c-button.--mail.--cta,
.c-button.--line.--cta {
	width: 100%;
}

.c-cta {
	background-image: url(../img/bg/cta-bg_sp.webp);
}

.c-cta__heading {
	font-size: 24px;
	line-height: 140%;
}

.c-cta__heading br {
	display: block;
}

.c-cta__heading-pic {
	display: none;
}

.c-cta__content-flex {
	flex-direction: column;
}

.c-section__description-heading {
	line-height: 120%;
}

.c-section__description-heading br {
	display: block;
}

.c-section__description-text {
	line-height: 140%;
}

.c-section__description-text br {
	display: block;
}

.p-fv__contents {
	flex-direction: column;
	left: 50%;
	top: 75px;
	transform: translateX(-50%) scale(1.4);
	transform-origin: top;
}

.p-fv__contents-main {
	display: contents;
}

.p-fv__contents-micro {
	order: 1;
}

.p-fv__contents-copy {
	letter-spacing: 1.032px;
	margin-bottom: 18px;
	order: 2;
}

.p-fv__contents-button {
	align-items: center;
	flex-direction: column;
	order: 4;
}

.p-fv__contents-button-item {
	width: 100%;
}

.p-fv__contents-button-item-flex {
	-moz-column-gap: 8px;
	column-gap: 8px;
	display: flex;
	width: 100%;
}

.p-fv__contents-button-item-flex .--line {
	display: flex;
}

.p-fv__contents-point-wrap {
	display: flex;
	flex-direction: column-reverse;
	margin-bottom: 16px;
	margin-top: 129px;
	order: 3;
}

.p-fv__contents-point-item {
	flex: 1;
}

.p-about__text {
	text-align: left;
}

.p-about__merit-list {
	flex-direction: column;
	row-gap: 16px;
}

.p-about__merit-item {
	border-width: 2px;
	line-height: 140%;
}

.p-worry {
	background-image: url(../img/bg/section-bg_sp.webp);
}

.p-worry__heading br.--pc {
	display: none;
}

.p-worry__heading br.--sp {
	display: block;
}

.p-worry__list {
	align-items: center;
	flex-direction: column;
	row-gap: 8px;
}

.p-worry__item:nth-of-type(1) .p-worry__item-text,
.p-worry__item:nth-of-type(2) .p-worry__item-text {
	margin-bottom: 0;
}

.p-worry__item:nth-of-type(1) .p-worry__item-pic {
	display: none;
}

.p-worry__item:nth-of-type(2) {
	display: contents;
}

.p-worry__item:nth-of-type(2) .p-worry__item-pic {
	order: 3;
}

.p-worry__item:nth-of-type(3) .p-worry__item-pic {
	display: none;
}

.p-worry__item-text {
	font-size: 20px;
	margin-bottom: 64px;
	padding-left: 24px;
	padding-right: 24px;
}

.p-worry__item-pic {
	margin-left: 4%;
}

.p-worry__item-pic .--bubble {
	height: 44px;
	left: 50%;
	top: -10px;
	transform: translate(-50%, -100%);
	width: 26px;
}

.p-worry__item-pic .--bubble::before,
.p-worry__item-pic .--bubble::after {
	left: 50%;
	right: auto;
	transform: translateX(-50%);
}

.p-reason__item {
	flex-direction: column;
	row-gap: 16px;
}

.p-reason__item::before {
	left: 12px;
	top: 6px;
}

.p-reason__item:nth-child(2) {
	flex-direction: column-reverse;
	row-gap: 16px;
}

.p-reason__item-heading {
	text-align: center;
}

.p-reason__item-heading br.--pc {
	display: none;
}

.p-reason__item-heading br.--sp {
	display: block;
}

.p-case__item {
	line-height: 140%;
}

.p-case__item-heading {
	line-height: 140%;
	text-align: center;
}

.p-case__item-heading br {
	display: block;
}

.p-case__item-wrap {
	flex-direction: column;
	margin-bottom: 20px;
	row-gap: 32px;
}

.p-case__item-wrap-box p {
	text-align: center;
}

.p-case__item-wrap-box.--before::after {
	border-color: #008D92 transparent transparent transparent;
	border-width: 10px 10px 0 10px;
	left: 50%;
	top: calc(100% + 14px);
	transform: translateX(-50%);
}

.p-case__item-wrap-box.--before p br {
	display: block;
}

.p-case__item-text {
	line-height: 180%;
}

.p-happen {
	background-image: url(../img/bg/section-bg_sp.webp);
}

.p-happen__heading {
	line-height: 140%;
}

.p-happen__description {
	line-height: 160%;
}

.p-happen__list {
	flex-direction: column;
	row-gap: 48px;
}

.p-happen__item {
	width: 100%;
}

.p-happen__item-heading br.--pc {
	display: none;
}

.p-contract__item {
	border: 3px solid #96CED0;
	box-shadow: none;
	padding: 24px;
}

.p-contract__item-heading-text {
	line-height: 140%;
}

.p-contract__item-pic {
	display: none;
}

.p-price-table thead th {
	line-height: 140%;
}

.p-price-table tbody th {
	line-height: 140%;
}

.p-price-table tbody td {
	line-height: 140%;
}

.p-price-table tbody td span.--small {
	font-size: 13px;
}

.p-message__wrap {
	flex-direction: column;
}

.p-message__wrap-text {
	min-width: auto;
}

.p-message__wrap-pic {
	max-width: 100%;
}

.p-flow__list {
	flex-direction: column;
	margin-bottom: 40px;
}

.p-flow__list-arrow {
	padding: 8px 16px;
	row-gap: 10px;
}

.p-flow__list-arrow span {
	height: 14px;
	width: 26px;
}

.p-flow__list-arrow span::after {
	border-color: #008D92 transparent transparent transparent;
	border-width: 10px 10px 0 10px;
}

.p-faq__item-question {
	line-height: 160%;
}

.p-access__tabs-inner {
	width: 100%;
}

.p-access__tabs-item {
	border-radius: 8px 8px 0 0;
}

.p-access__tabs-item .--arrow {
	display: none;
}

.p-access__tabs-item:first-of-type {
	border-radius: 8px 8px 0 0;
}

.p-access__tabs-item:last-of-type {
	border-radius: 8px 8px 0 0;
}

.p-access__panel {
	width: 100%;
}

.p-access__panel-map {
	aspect-ratio: 3/4;
}

.p-access__panel-access-button {
	max-width: 100%;
}

.p-access__panel-office {
	width: 100%;
}

.p-access__panel-office-table th,
.p-access__panel-office-table td {
	width: 100%;
}

.p-access__panel-office-table td .--add br {
	display: block;
}

}

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

.p-fv__contents {
	top: 13px;
	transform: translate(-50%, 0) scale(0.9);
}

}

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

.p-worry__heading {
	white-space: nowrap;
}

.p-faq__list-item {
	padding: 12px;
}

.p-faq__item-question,
.p-faq__item-answer {
	-moz-column-gap: 6px;
	column-gap: 6px;
}

}

@media (max-width: 349px) {

div.p-fv__contents {
	transform: translate(-50%, 0) scale(0.85);
}

}

/* TSL-2756 【法人顧問LP】LINEボタン撤去 */

.c-button.--tel.--cta {
  margin-bottom: 0;
}

@media screen and (min-width: 769px) {
  .c-button.--tel.--cta{
    /* margin-bottom: 0; */
    flex: 1;
    gap:0;
  }

  .c-button.--tel.--cta img{
    height: 2.5rem;
    width: 2.5rem;
    margin-top: 6px;
  }

  .c-button.--tel.--cta .--cta-tel-price{
    padding:.5rem 1rem 1rem 1rem;
    align-items: center;
    gap: 4px;
  }

  .c-button.--tel.--cta .--cta-tel-content{
    flex-direction: column;
    align-items: center;
  }

  .c-button.--tel.--cta .--cta-tel-content .--cta-tel-number{
    font-size: 2.75rem;
    display: flex;
  }

  .c-button.--tel.--cta .--cta-tel-price .--micro{
    padding-top:6px;
    font-size: 1.5rem;
  }

  .c-button.--tel.--cta .--cta-tel-content .--cta-tel-text{
    font-size: 1rem;
    margin-left: 0;
    margin-top: 10px;
  }

  .c-button.--tel.--cta .--cta-tel-price .--price{
    padding-bottom: 5px;
  }
  
  .c-button.--tel.--cta .--cta-tel-price .--price .--big{
    font-size: 4rem;
  }

  .c-button.--mail.--cta{
    border: 0;
    padding: 0;
  }
}

@media screen and (max-width: 768px){
  .p-contact a {
      padding-bottom: 14px;
      display: block;
    }
  
  .p-contact a img {
    vertical-align: middle;
  }
}