/*
それぞれ( )内にpxでの数値を入れるとrem, px, vw(pc版), vw(sp版) に変換
*/

html {
	scroll-behavior: auto;
	scroll-padding-top: 60px;
}

body {
	background-color: #3AA7C2;
	color: #3B4043;
	font-family: "Noto Sans JP", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	position: relative;
}

main {
	position: relative;
	top: -115px;
}

footer {
	position: relative;
}

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

a {
	color: inherit;
	opacity: 1;
	transition: opacity 0.4s;
}

a:focus-visible {
	opacity: 0.7;
}

.is-drawerActive body {
	overflow: hidden;
}

a[href^="tel:"] {
	pointer-events: none;
}

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

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
	border: 0;
	font-size: 100%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

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

ol,
ul,
li {
	list-style: none;
	list-style-type: none;
}

body {
	box-sizing: border-box;
}

body * {
	box-sizing: border-box;
}

img {
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}

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

button {
	background: transparent;
	border: none;
	box-shadow: none;
	cursor: pointer;
	font: inherit;
	margin: 0;
	padding: 0;
}

input,
select,
textarea {
	color: inherit;
	font: inherit;
	vertical-align: top;
}

address {
	display: inline;
	font-style: normal;
}

.l-header {
	background-color: transparent;
	height: 115px;
	position: relative;
	width: 100%;
	z-index: 20;
}

.l-header__inner {
	height: inherit;
	padding-left: 2.5rem;
	padding-right: 2.5rem;
	width: 100%;
}

.l-footer {
	background-color: #fff;
	margin-top: -5.9375rem;
	padding-bottom: 1.75rem;
	padding-top: 2rem;
}

.l-footer__inner {
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.l-fv {
	background-image: url("../img/fv-bg.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 600px;
	height: 40.5405405405vw;
	max-height: 600px;
	width: 100%;
}

.l-section {
	background-color: #FEEBBE;
	padding-top: 70px;
}

.l-section__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1000px;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
	text-align: center;
	width: 100%;
}

.l-page__head {
	background-color: #F6AC2D;
	overflow: hidden;
	position: relative;
}

.c-button {
	background-color: #ee782b;
	border: 2px solid #fff;
	border-radius: 34px;
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3019607843);
	max-width: 297px;
	position: relative;
	transition: border 0.3s;
	width: 100%;
}

.c-button::after {
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	content: "";
	height: 25px;
	position: absolute;
	right: 17px;
	top: 50%;
	transform: translateY(-50%);
	width: 17px;
}

.c-button button {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.c-button:active {
	box-shadow: 2px 5px 5px rgba(0, 0, 0, 0.3019607843);
	transform: scale(0.98);
}

.c-head {
	border-bottom: 4px dashed #f6ac2d;
	display: inline-block;
}

.c-head h2 {
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-bottom: 0.25rem;
}

.c-head span {
	color: #ee782b;
	font-size: 2.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.125;
}

.c-comment {
	background-color: #F6AC2D;
	padding-bottom: min(1.4189189189vw, 21px);
	padding-top: min(1.4189189189vw, 21px);
	text-align: center;
}

.c-comment p {
	align-items: flex-end;
	color: #fff;
	display: flex;
	font-size: 1.25rem;
	font-size: min(1.3513513514vw, 20px);
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	width: 100%;
}

.c-comment span {
	display: inline-block;
	width: min(8.7837837838vw, 130px);
}

.c-comment__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 770px;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	width: 100%;
}

.c-panel.blue .c-panel__box {
	border: 3px solid #3AA7C2;
}

.c-panel.blue .c-panel__title {
	background-color: #3AA7C2;
}

.c-panel.green .c-panel__box {
	border: 3px solid #80BE84;
}

.c-panel.green .c-panel__title {
	background-color: #80BE84;
}

.c-panel__number {
	align-items: center;
	background-color: #ee782b;
	border: 3px solid #FEEBBE;
	border-radius: 90px;
	color: #fff;
	display: flex;
	font-size: 1.5rem;
	font-weight: 600;
	height: 50px;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: -1.5625rem;
	margin-left: -1.5625rem;
	position: relative;
	width: 50px;
	z-index: 2;
}

.c-panel__box {
	background-color: #fff;
	border: 3px solid #ee782b;
	border-radius: 20px;
	overflow: hidden;
}

.c-panel__title {
	background-color: #ee782b;
	color: #fff;
	display: flex;
	font-size: 1.5rem;
	font-weight: 600;
	gap: 15px;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-bottom: 0.8125rem;
	padding-bottom: 0.75rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	padding-top: 0.8125rem;
	padding-top: 0.75rem;
	text-align: center;
}

.c-panel__head {
	display: flex;
	gap: 30px;
	margin-bottom: 0.625rem;
	margin-top: 2.1875rem;
	padding-left: 2.1875rem;
	padding-right: 2.1875rem;
}

.c-panel__img {
	max-width: 300px;
	width: 100%;
}

.c-panel__detail {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.c-panel__detail dl {
	align-items: center;
	display: flex;
	gap: 15px;
}

.c-panel__detail dt {
	align-items: center;
	background-color: #F6AC2D;
	border-radius: 10px;
	color: #fff;
	display: flex;
	font-size: 1.125rem;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-bottom: 0.3125rem;
	padding-top: 0.3125rem;
	width: 150px;
}

.c-panel__detail dd {
	flex: 1;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
	text-align: left;
}

.c-panel__text {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
	padding-bottom: 1rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1rem;
	text-align: left;
}

.c-panel__text.left {
	text-align: left;
}

.c-card {
	border-radius: 20px;
	height: 100%;
	overflow: hidden;
}

.c-card__body {
	background-color: #ee782b;
	height: 100%;
	padding-bottom: 1.4375rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1.5625rem;
	text-align: center;
}

.c-card__title {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1.25rem;
}

.c-card__text {
	color: #fff;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
}

.c-label {
	align-items: center;
	background-color: #F6AC2D;
	border: 2px solid #fff;
	border-radius: 15px;
	color: #fff;
	display: flex;
	font-size: 1.25rem;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1.5rem;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 140px;
}

.c-panelRow {
	border-radius: 20px;
	display: flex;
	overflow: hidden;
}

.c-panelRow__img {
	max-width: 300px;
	width: 100%;
}

.c-panelRow__body {
	background-color: #ee782b;
	color: #fff;
	flex: 1;
	padding-bottom: 1.875rem;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
	padding-top: 1.875rem;
	text-align: left;
}

.c-panelRow__title {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1rem;
}

.c-panelRow__description {
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
}

.c-toTop {
	height: 65px;
	opacity: 0;
	position: absolute;
	right: 60px;
	top: 10px;
	transition: opacity 0.3s, visibility 0.3s;
	transition: transform 0.3s;
	visibility: hidden;
	width: 65px;
	z-index: 30;
}

.c-toTop.is-show {
	opacity: 1;
	visibility: visible;
}

.p-header__logo {
	width: min(18.9189189189vw, 280px);
}

.p-header__logo-link {
	display: inline-block;
	height: 100%;
	width: 100%;
}

.p-header__logo-link img {
	height: 100%;
	width: 100%;
}

.p-fv {
	display: flex;
	gap: 30px;
	justify-content: center;
	margin-right: 4.375rem;
	padding-top: min(6.7567567568vw, 100px);
}

.p-fv__img {
	display: flex;
	width: min(27.027027027vw, 400px);
}

.p-fv__img--sp {
	display: none;
}

.p-fv__img--sp img {
	height: 100%;
	width: 100%;
}

.p-fv__contents {
	align-items: center;
	display: flex;
	flex-direction: column;
	max-width: min(49.3243243243vw, 730px);
	width: 100%;
}

.p-fv__lead {
	margin-bottom: min(1.0135135135vw, 15px);
	max-width: min(49.3243243243vw, 730px);
	width: 100%;
}

.p-fv__copy {
	margin-bottom: -0.1875rem;
	width: min(40.5405405405vw, 600px);
}

.p-fv__button {
	margin-bottom: min(2.7027027027vw, 40px);
	width: min(25.5405405405vw, 378px);
}

.p-fv__button a {
	display: inline-block;
}

.p-fv__button--sp {
	display: none;
}

.p-fv__box {
	display: flex;
	margin-left: auto;
}

.p-fv__lists {
	background-color: #fff;
	border: 3px solid #ee782b;
	border-radius: 20px;
	height: min(8.7837837838vw, 130px);
	margin-right: auto;
	padding-bottom: min(1.6891891892vw, 25px);
	padding-left: min(2.027027027vw, 30px);
	padding-right: min(2.027027027vw, 30px);
	padding-top: min(1.6216216216vw, 24px);
	width: min(37.8378378378vw, 560px);
}

.p-fv__lists ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	row-gap: min(1.3513513514vw, 20px);
}

.p-fv__lists li {
	font-size: 1.125rem;
	font-size: min(1.2162162162vw, 18px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	max-width: min(16.2162162162vw, 240px);
	padding-left: min(1.8243243243vw, 27px);
	position: relative;
	width: 100%;
	z-index: 2;
}

.p-fv__lists li::before {
	background-image: url("../img/fv-check-icon.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: min(1.3513513514vw, 20px);
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(1.6891891892vw, 25px);
}

.p-fv__lists li span {
	font-weight: 600;
}

.p-fv__deco {
	height: min(13.5135135135vw, 200px);
	margin-left: -1.25rem;
	margin-top: -10px;
	width: min(22.0945945946vw, 327px);
}

.p-fv__comment {
	padding-bottom: min(2.2297297297vw, 33px);
	padding-top: min(2.2297297297vw, 33px);
}

.p-fv__comment .c-comment__inner {
	max-width: 1000px;
}

.p-fv__comment .c-comment__inner p {
	justify-content: flex-end;
	margin-left: auto;
}

.p-reason {
	background-color: #FEEBBE;
	padding-bottom: 8.125rem;
	text-align: center;
}

.p-reason .c-head {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-reason__inner {
	padding-right: 25px;
}

.p-reason__contents {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-top: 3.125rem;
	row-gap: 25px;
	-moz-column-gap: min(3.3783783784vw, 50px);
	column-gap: min(3.3783783784vw, 50px);
}

.p-reason__item {
	width: 47%;
}

.p-reason__item:nth-child(3) {
	position: relative;
}

.p-reason__item:nth-child(3) .c-panel__title {
	font-size: min(4.8vw, 24px);
}

.p-reason__item:nth-child(5) {
	margin-top: -115px;
}

.p-reason__img {
	left: 0;
	margin-left: -9.6875rem;
	margin-top: -1.5625rem;
	max-width: 310px;
	position: absolute;
	top: 100%;
	width: 100%;
}

.p-reason__img--sp {
	display: none;
}

.p-cta {
	background-color: #3AA7C2;
	overflow: hidden;
	padding-bottom: 3.5625rem;
	padding-top: 6.25rem;
}

.p-cta__inner {
	position: relative;
	text-align: unset;
}

.p-cta__title {
	border-bottom: 4px dashed #f6ac2d;
	color: #fff;
	display: inline-block;
	left: 5%;
	position: absolute;
	top: min(6.7567567568vw, 100px);
}

.p-cta__title h2 {
	font-size: 2.5rem;
	font-size: clamp(30px, 2.7027027027vw, 40px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-cta__contents {
	background-image: url("../img/cta_pc.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: min(30.4054054054vw, 450px);
	margin-bottom: 1.125rem;
	margin-top: -5.9375rem;
	text-align: center;
}

.p-cta__box {
	display: flex;
	flex-direction: column;
	padding-top: min(17.5675675676vw, 260px);
}

.p-cta__box span {
	display: inline-block;
	font-size: 1rem;
	font-size: clamp(10px, 1.0810810811vw, 16px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
	margin-bottom: min(1.6891891892vw, 25px);
}

.p-cta__box a p {
	color: #ee782b;
	display: inline-block;
	font-size: clamp(10px, 5.4054054054vw, 80px);
	font-weight: 900;
	letter-spacing: 0.1em;
	line-height: 0.6;
	padding-left: 5.1875rem;
	padding-left: min(5.6081081081vw, 83px);
	position: relative;
}

.p-cta__box a p::before {
	background-image: url("../img/icon_tel.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: min(4.1891891892vw, 62px);
	left: 0;
	position: absolute;
	top: 0;
	width: min(4.0540540541vw, 60px);
}

.p-cta__text {
	font-size: 1.875rem;
	font-size: clamp(18px, 2.027027027vw, 30px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-cta__note {
	color: #fff;
	font-size: 1.125rem;
	font-size: clamp(12px, 1.2162162162vw, 18px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1rem;
	text-align: center;
}

.p-cta__button {
	cursor: pointer;
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 378px;
	transition: transform 0.3s;
	width: 100%;
}

.p-feature {
	background-color: #FEEBBE;
	padding-bottom: 4.0625rem;
}

.p-feature__container {
	margin-top: 4.6875rem;
	position: relative;
}

.p-feature__items {
	display: flex;
	gap: 25px;
}

.p-feature__item {
	min-height: 640px;
	width: calc((100% - 50px) / 3);
}

.p-feature__deco {
	left: calc(50% + 407px);
	margin-right: -9.0625rem;
	margin-top: -4.375rem;
	max-width: 160px;
	position: absolute;
	top: 100%;
	width: 100%;
}

.p-example {
	padding-bottom: 5.9375rem;
}

.p-example .c-panel__title {
	font-size: 1.25rem;
	font-weight: 600;
	justify-content: flex-start;
	letter-spacing: 0em;
	line-height: 1.5;
	text-align: left;
}

.p-example .c-label {
	margin: 0;
	width: 100px;
}

.p-example__container {
	position: relative;
}

.p-example__items {
	display: flex;
	flex-direction: column;
	gap: 50px;
	margin-top: 4.6875rem;
}

.p-example__item {
	min-height: 550px;
}

.p-example__deco {
	left: 0;
	margin-left: -10rem;
	margin-top: -7.5rem;
	max-width: 274px;
	position: absolute;
	top: 100%;
	width: 100%;
}

.p-service {
	overflow: hidden;
	padding-bottom: 6.5625rem;
	position: relative;
}

.p-service__video {
	margin-top: 4.6875rem;
}

.p-service__video iframe {
	height: min(30.4054054054vw, 450px);
	width: min(54.0540540541vw, 800px);
}

.p-service__deco {
	bottom: 0;
	left: calc(50% + 22.972972973vw);
	position: absolute;
	width: min(29.7297297297vw, 440px);
}

.p-point {
	overflow: hidden;
	padding-bottom: 5.625rem;
	padding-top: 5.125rem;
	position: relative;
}

.p-point__text {
	color: #ee782b;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 3.625rem;
}

.p-point__button {
	margin-left: auto;
	margin-right: auto;
	max-width: min(47.2972972973vw, 700px);
	width: 100%;
}

.p-point__button .u-hidden--pc {
	display: none;
}

.p-point__button a {
	align-items: center;
	background-color: #80BE84;
	border: 3px solid #fff;
	border-radius: 30px;
	color: #fff;
	display: flex;
	font-size: 1.5rem;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-bottom: 1.75rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 2rem;
	position: relative;
}

.p-point__button a::after {
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	content: "";
	height: 30px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

.p-point__deco {
	bottom: 0;
	left: calc(50% + 327px);
	max-width: min(25.2702702703vw, 374px);
	position: absolute;
	right: 35px;
	width: 100%;
}

.p-point__deco__sp {
	display: none;
}

.p-footer__inner {
	text-align: center;
}

.p-footer__link {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	margin-bottom: 0.5rem;
}

.p-footer__nav {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-bottom: 2.5rem;
}

.p-footer__nav a {
	color: #ee782b;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-left: 0.8125rem;
	padding-right: 0.8125rem;
	position: relative;
	text-decoration: underline;
}

.p-footer__nav a::before {
	background-color: #ee782b;
	content: "";
	height: 15px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.p-footer__nav a:last-child::after {
	background-color: #ee782b;
	content: "";
	height: 15px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.p-footer__logo {
	margin-bottom: 1.875rem;
	margin-left: auto;
	margin-right: auto;
	width: 182px;
}

.p-footer__sns {
	align-items: center;
	display: flex;
	gap: 25px;
	justify-content: center;
}

.p-footer__sns a {
	display: inline-block;
	height: 20px;
	width: 20px;
}

.p-footer__copy {
	align-items: center;
	background-color: #F6AC2D;
	color: #fff;
	display: flex;
	font-size: 0.625rem;
	font-weight: 400;
	height: 50px;
	justify-content: space-between;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-left: 2.5rem;
	padding-right: 2.5rem;
	text-decoration: underline;
}

.p-contact {
	position: relative;
}

.p-contact__head {
	padding-bottom: 6.4375rem;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
	padding-top: 6.4375rem;
}

.p-contact__head h1 {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 1.875rem;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-contact__head-img {
	bottom: 0;
	left: calc(50% + 300px);
	max-width: 278px;
	position: absolute;
	width: 100%;
}

.p-contact__intro {
	background-color: #fff;
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
	text-align: center;
}

.p-contact__copy {
	font-size: 1.5rem;
	font-size: clamp(20px, 1.6216216216vw, 24px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 3.4375rem;
}

.p-contact__box {
	display: flex;
	justify-content: center;
}

.p-contact__img {
	max-width: clamp(250px, 21.9594594595vw, 325px);
	width: 100%;
}

.p-contact__texts p {
	font-size: 1rem;
	font-size: clamp(13px, 1.0810810811vw, 16px);
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	margin-bottom: 1.875rem;
	text-align: left;
}

.p-contact__texts dl {
	display: flex;
	gap: 3px;
}

.p-contact__texts dl dt {
	font-size: 1.125rem;
	font-size: clamp(12px, 1.2162162162vw, 18px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-left: 1.75rem;
	position: relative;
	text-align: left;
	width: 172px;
	z-index: 2;
}

.p-contact__texts dl dt::before {
	background-image: url("../img/fv-check-icon.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: min(1.3513513514vw, 20px);
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(1.6891891892vw, 25px);
}

.p-contact__texts dl dd {
	flex: 1;
	font-size: 1rem;
	font-size: clamp(11px, 1.0810810811vw, 16px);
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	text-align: left;
}

.p-contact__texts dl:not(:last-child) {
	margin-bottom: 16px;
}

.p-contact__contents {
	background-color: #FEEBBE;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 6.5625rem;
	padding-top: 3.5625rem;
	text-align: center;
}

.p-contact__container {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-contact__lead {
	color: #ee782b;
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 2.0625rem;
}

.p-contact__flow {
	align-items: center;
	display: flex;
	gap: 200px;
	justify-content: center;
	margin-bottom: 1.875rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 520px;
	width: 100%;
}

.p-contact__item {
	position: relative;
}

.p-contact__item:not(:last-child)::after {
	background-color: #ee782b;
	content: "";
	height: 2px;
	left: calc(100% + 24px);
	position: absolute;
	top: 20px;
	width: 150px;
}

.p-contact__number {
	align-items: center;
	background-color: #fff;
	border-radius: 90px;
	color: #ee782b;
	display: flex;
	font-size: 1.5rem;
	font-weight: 600;
	height: 40px;
	justify-content: center;
	letter-spacing: 0em;
	line-height: 1.5;
	width: 40px;
}

.p-contact__number.current {
	background-color: #ee782b;
	color: #fff;
}

.p-contact__deco {
	bottom: 0;
	left: calc(50% + 300px);
	max-width: 306px;
	position: absolute;
	width: 100%;
}

.p-form {
	background-color: #fff;
	border: 3px solid #ee782b;
	border-radius: 30px;
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
	padding-bottom: 3.75rem;
	padding-left: 6.25rem;
	padding-right: 6.25rem;
	padding-top: 3.75rem;
}

.p-form.first {
	margin-bottom: 3.125rem;
}

.p-form__fields {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.p-form__field {
	display: flex;
	gap: 56px;
}

.p-form__field.radio-1 {
	padding-bottom: 0.5rem;
	padding-top: 0.625rem;
}

.p-form__field.radio-1.confirm {
	padding-bottom: 0;
	padding-top: 0;
}

.form-field__head {
	align-items: flex-start;
	display: flex;
	flex-direction: row;
	gap: 12px;
	width: 143px;
}

.form-field__label {
	font-family: "Noto Sans JP";
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: 25.6px;
	padding-top: 0.5rem;
}

.age-wrap {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
}

.form-field__item {
	align-items: flex-start;
	display: flex;
	flex: 1;
	flex-direction: column;
	text-align: left;
}

.form-field__item.age {
	align-items: center;
	flex-direction: row;
}

.form-field__item.your-address {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.form-field__item.your-address .form-control-wrap.post,
.form-field__item.your-address .form-control-wrap.prefectures {
	max-width: 150px;
}

.p-form__row {
	align-items: center;
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 6px;
	width: 100%;
}

.p-form__row label {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
}

.p-form__row dt {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
}

.form-control-wrap {
	flex: 1;
	width: 100%;
}

.form-field__button {
	background-color: #ee782b;
	border-radius: 10px;
	color: #fff;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	padding-bottom: 0.8125rem;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-top: 0.8125rem;
}

/*===========================
# フォーム 各アイテム
============================= */

/* 共通
----------------------------- */

.form-text,
.form-textarea {
	background: #fff;
	border: 1px solid #ee782b;
	display: block;
	height: 50px;
	padding-bottom: 0.8125rem;
	padding-left: 0.8125rem;
	padding-right: 0.8125rem;
	padding-top: 0.8125rem;
	transition: all 0.3s;
}

.form-text:focus,
.form-textarea:focus {
	background: #fff6db;
	border: 2px solid #3AA7C2;
	outline: none;
}

.form-text::-moz-placeholder,
.form-textarea::-moz-placeholder {
	color: #DDDDDD;
}

.form-text::placeholder,
.form-textarea::placeholder {
	color: #DDDDDD;
}

.form-checkbox__input {
	height: 1px;
	position: absolute;
	width: 1px;
	clip: rect(0, 0, 0, 0);
	overflow: hidden;
}

.form-checkbox__input:checked + .form-checkbox__text::after {
	opacity: 1;
}

.form-checkbox__input:checked + .form-radio__text::after {
	opacity: 1;
}

.form-checkbox__input:focus + .form-radio__text::before {
	background: #fff6db;
	border: 2px solid #3AA7C2;
}

form#confirm-form .form-text,
form#confirm-form .form-select,
form#confirm-form .form-textarea,
form#confirm-form .form-radio__text,
form#confirm-form .form-checkbox__text {
	pointer-events: none;
}

/* -----------------------------(共通ここまで) */

/* text
------------------------------------------------------ */

.form-text {
	width: 100%;
}

.number-wrap {
	align-items: center;
	display: flex;
	gap: 10px;
	width: 100%;
}

.number-wrap input:nth-child(1) {
	width: 100px;
}

.number-wrap input:nth-child(2),
.number-wrap input:nth-child(2) {
	width: 160px;
}

.form-text.age {
	width: 90px;
}

.form-text.age + span {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-left: 0.625rem;
	padding-right: 1.875rem;
}

.age-note {
	color: #ee782b;
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.post-wrap {
	display: flex;
	gap: 20px;
	width: 100%;
}

.prefecture-wrap {
	display: flex;
	gap: 20px;
	width: 100%;
}

.prefecture-wrap .p-form__row:nth-child(1) {
	width: 150px;
}

.prefecture-wrap .p-form__row:nth-child(2) {
	flex: 1;
}

/* select
------------------------------------------------------ */

.form-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff;
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
	border: 1px solid #ee782b;
	display: block;
	height: 50px;
	padding-bottom: 0.8125rem;
	padding-left: 0.8125rem;
	padding-right: 0.8125rem;
	padding-top: 0.625rem;
	transition: all 0.3s;
	width: 200px;
}

.form-select:focus {
	background: #fff6db;
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
	border: 2px solid #3AA7C2;
	outline: none;
}

.form-select::-moz-placeholder {
	color: #DDDDDD;
}

.form-select::placeholder {
	color: #DDDDDD;
}

.form-select.confirm {
	background-image: unset;
	background-position: unset;
	background-repeat: unset;
	background-size: unset;
	padding-bottom: 0.8125rem;
	padding-left: 0.8125rem;
	padding-right: 0.8125rem;
	padding-top: 0.8125rem;
}

.page-contact-form__bottom {
	display: flex;
	flex-direction: column;
	gap: 37px;
	margin-top: 16px;
}

/* radio
------------------------------------------------------ */

.form-field__radios {
	display: flex;
	gap: 50px;
	width: 100%;
}

.form-field__radio {
	line-height: 23px;
}

.form-field__radios .form-radio__text {
	cursor: pointer;
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-left: 40px;
	position: relative; /* 外丸 */ /* 内丸 */
}

.form-field__radios .form-radio__text::before,
.form-field__radios .form-radio__text::after {
	border-radius: 50%;
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.form-field__radios .form-radio__text::before {
	background-color: #fff;
	border: 1px solid #ee782b;
	height: 30px;
	left: 0;
	transition: border-color 0.3s;
	width: 30px;
}

.form-field__radios .form-radio__text::after {
	background: #ee782b;
	border-radius: 10px;
	height: 18px;
	left: 6px;
	opacity: 0;
	width: 18px;
}

/* textarea
------------------------------------------------------ */

.form-textarea {
	height: 180px;
	resize: none;
	width: 100%;
}

.form-textarea.confirm {
	height: unset;
}

/* check-box
------------------------------------------------------ */

.p-contact__privacy {
	margin-top: 70px;
	text-align: center;
}

.form-checkbox {
	box-sizing: border-box;
	height: 30px;
	width: 30px;
}

.form-checkbox__text {
	cursor: pointer;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	padding-left: 40px;
	position: relative;
}

.form-checkbox__text a {
	font-weight: inherit;
	text-decoration-line: underline;
}

.form-checkbox__text a:hover {
	color: #3AA7C2;
}

.form-checkbox__text::before,
.form-checkbox__text::after {
	content: "";
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.form-checkbox__text::before {
	background-color: #fff;
	border: 1px solid #ee782b;
	border-radius: 4px;
	height: 30px;
	width: 30px;
}

.form-checkbox__text::after {
	color: #ee782b;
	content: "\f00c";
	font: var(--fa-font-solid);
	font-size: 16px;
	font-weight: 900;
	height: 9px;
	left: 8px;
	margin-top: -1.2px;
	opacity: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 14px;
}

/* contact-button
------------------------------------------------------ */

.p-form__button {
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.125rem;
	text-align: center;
}

.p-form__button.confirm {
	margin-top: 4.8125rem;
}

.p-form__button button {
	background-color: unset;
	border: none;
	display: inline-block;
	padding-bottom: 0.9375rem;
	padding-top: 0.9375rem;
	width: 100%;
}

/* バリデーションエラー
----------------------------- */

.input-invalid {
	background-color: rgb(241, 221, 221);
	border: 2px solid #FF0000;
}

select.input-invalid {
	background-color: rgb(241, 221, 221);
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
	border: 2px solid #FF0000;
}

select.input-invalid:focus {
	background-color: rgb(241, 221, 221);
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
	border: 2px solid #FF0000;
}

.input-invalid-text {
	color: #FF0000;
	display: none;
}

.form-checkbox__input.input-invalid + .form-checkbox__text::before {
	background-color: rgb(241, 221, 221);
	border: 2px solid #FF0000;
}

/* 送信中のスピナーマーク
------------------------------------------------------ */

.wpcf7-spinner {
	display: none;
}

.p-line__inner {
	text-align: center;
}

.p-line__head {
	padding-bottom: 2.875rem;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
	padding-top: min(10.1351351351vw, 150px);
	position: relative;
}

.p-line__head h1 {
	background-color: #80BE84;
	border: 3px solid #FBFBFB;
	border-radius: 20px;
	color: #fff;
	font-size: 1.5rem;
	font-size: clamp(20px, 1.6216216216vw, 24px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 0.75rem;
	margin-left: auto;
	margin-right: auto;
	max-width: clamp(460px, 40.5405405405vw, 600px);
	padding-bottom: 0.4375rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	padding-top: 0.4375rem;
	text-align: center;
	width: 100%;
}

.p-line__copy {
	margin-left: auto;
	margin-right: auto;
	max-width: min(40.5405405405vw, 600px);
	width: 100%;
}

.p-line__deco {
	bottom: 0;
	left: calc(50% + 335px);
	max-width: min(17.5675675676vw, 260px);
	position: absolute;
	width: 100%;
}

.p-start {
	background-color: #FEEBBE;
	padding-bottom: 5.625rem;
	padding-top: 4.375rem;
}

.p-start__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 920px;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-start__lead {
	color: #ee782b;
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1.625rem;
}

.p-start__intro {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	margin-bottom: 3rem;
}

.p-start__account {
	align-items: center;
	background-color: #fff;
	border: 3px solid #80BE84;
	border-radius: 30px;
	display: flex;
	gap: 60px;
	justify-content: center;
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-start__account .texts h3 {
	color: #80BE84;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 0.9375rem;
}

.p-start__account .texts span {
	color: #80BE84;
	display: inline-block;
	font-size: 2.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 1.375rem;
}

.p-start__account .texts p {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-start__account .cord {
	max-width: 300px;
	width: 100%;
}

.p-start__account .button {
	display: none;
}

.p-howto {
	background-color: #FEEBBE;
	padding-bottom: 5.625rem;
	position: relative;
}

.p-howto__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 920px;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-howto__container {
	background-color: #fff;
	border: 3px solid #ee782b;
	border-radius: 30px;
	display: flex;
	flex-direction: column;
	gap: 30px;
	max-width: 680px;
	padding-bottom: 2.0625rem;
	padding-left: 1.25rem;
	padding-right: 2.5rem;
	padding-top: 2.1875rem;
	width: 100%;
}

.p-howto__pickup {
	align-items: center;
	display: flex;
	font-weight: bold;
	position: relative;
}

.p-howto__round {
	background-color: #ee782b;
	border-radius: 50%;
	color: #fff;
	display: grid;
	height: 160px;
	margin-inline: auto;
	max-width: 300px;
	place-items: center;
	width: 100%;
}

.p-howto__round p {
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__round p .point {
	font-size: 2.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__round p .fuyo {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__text {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
}

.p-howto__text span {
	color: #ee782b;
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__title {
	color: #3AA7C2;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__figure {
	margin: 0;
	margin-bottom: 1.1875rem;
	width: 100%;
}

.p-howto__explain {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
	margin-bottom: 0.75rem;
}

.p-howto__explain span {
	color: #ee782b;
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__note {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__deco {
	bottom: 0;
	left: calc(50% + 160px);
	position: absolute;
	width: min(28.2432432432vw, 418px);
}

.p-about {
	background-color: #fff;
	overflow: hidden;
	padding-bottom: 6.25rem;
	padding-top: 3.75rem;
}

.p-about__inner {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	text-align: center;
}

.p-about__lead {
	color: #ee782b;
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 2.875rem;
}

.p-about__contents {
	display: flex;
	flex-direction: column;
	gap: 50px;
	position: relative;
}

.p-about__item {
	margin-left: auto;
	margin-right: auto;
	max-width: 970px;
	width: 100%;
}

.p-about__topic {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 2.9375rem;
}

.p-about__deco {
	bottom: -85px;
	left: calc(50% + 390px);
	max-width: min(16.3513513514vw, 242px);
	position: absolute;
	width: 100%;
}

.p-confirm__head {
	margin-bottom: 2.125rem;
}

.p-thanks {
	background-color: #fff;
	padding-top: 5.625rem;
}

.p-thanks__container {
	display: flex;
	padding-bottom: 4.125rem;
	position: relative;
}

.p-thanks__deco {
	bottom: 0;
	left: 0;
	margin-left: -6.6875rem;
	position: absolute;
	width: min(29.7297297297vw, 440px);
}

.p-thanks__texts {
	flex: 1;
	margin-left: auto;
	max-width: 630px;
	text-align: left;
	width: 100%;
}

.p-thanks__texts ul {
	margin-bottom: 0.6875rem;
}

.p-thanks__texts ul li {
	color: #3AA7C2;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
}

.p-thanks__sp {
	display: contents;
}

.p-thanks__deco--sp {
	display: none;
}

.p-thanks__head {
	color: #ee782b;
	font-size: 1.875rem;
	font-size: clamp(24px, 2.027027027vw, 30px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 2.875rem;
}

.p-thanks__message {
	margin-bottom: 0.6875rem;
}

.p-thanks__note {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.5;
}

.u-hidden--sp {
	display: block;
}

.u-hidden--pc {
	display: none;
}

.fadeIn {
	animation-duration: 2s;
	animation-fill-mode: forwards;
	animation-name: fadeIn;
	opacity: 0;
	transition: opacity 0.3s;
}

.fadeIn.up {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeUpAnime;
	opacity: 0;
	transition: opacity 0.3s;
}

.fadeIn.left {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInAnimeLeft;
	opacity: 0;
	transition: opacity 0.3s;
}

.fadeIn.right {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInAnimeRight;
	opacity: 0;
	transition: opacity 0.3s;
}

.u-fadeInTrigger {
	opacity: 0;
	transition: opacity 0.3s;
}

.u-marker {
	background: linear-gradient(transparent 60%, #F6AC2D 60%);
}

@media (any-hover: hover) {

a:hover {
	opacity: 0.7;
}

.c-button:hover {
	border: 2px solid #3AA7C2;
}

.c-toTop:hover {
	transform: scale(1.05);
}

.p-cta__button:hover {
	opacity: 1;
	transform: scale(1.05);
}

.form-text:hover {
	background: #fff6db;
	outline: none;
	transition: all 0.3s;
}

.form-select:hover {
	background: #fff6db;
	outline: none;
	transition: all 0.3s;
}

.form-textarea:hover {
	background: #fff6db;
	outline: none;
	transition: all 0.3s;
}

.form-radio__text:hover:before {
	background: #fff6db;
	transition: all 0.3s;
}

.form-checkbox__text:hover::before {
	border: 2px solid #3AA7C2;
}

.form-select:hover {
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
}

.p-form__button button:hover {
	cursor: pointer;
}

select.input-invalid:hover {
	background-color: rgb(241, 221, 221);
	background-image: url("../img/contact-select-arrow.webp");
	background-position: center right 21px, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: 9px 6px, cover;
	border: 2px solid #FF0000;
}

}

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

.p-reason__img {
	margin-left: 0;
}

.p-feature__deco {
	left: calc(50% + 27.5vw);
}

.p-example {
	padding-bottom: 8.125rem;
}

.p-example__deco {
	margin-left: -3.125rem;
	margin-top: -2.5rem;
}

.p-service__deco {
	left: calc(50% + 22.972972973vw);
}

.p-point__deco {
	left: calc(50% + 22.0945945946vw);
}

.p-contact__head-img {
	left: calc(50% + 20.2702702703vw);
	max-width: min(23.1666666667vw, 278px);
}

.p-contact__texts dl dt {
	width: clamp(130px, 14.3333333333vw, 172px);
}

.p-contact__deco {
	left: calc(50% + 20.2702702703vw);
	max-width: min(25.5vw, 306px);
}

.p-line__deco {
	left: calc(50% + 26.6666666667vw);
}

.p-about {
	padding-bottom: 9.375rem;
}

.p-about__deco {
	bottom: -120px;
	left: unset;
	min-width: 175px;
	right: 0;
}

.p-thanks__deco {
	margin-left: 0;
}

}

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

.p-feature {
	padding-bottom: 14.375rem;
}

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

.p-feature__item {
	margin-left: auto;
	margin-right: auto;
	width: 65%;
}

.p-feature__deco {
	left: 50%;
	margin-top: 1.25rem;
	transform: translateX(-50%);
}

.p-point__button .u-hidden--pc {
	display: block;
}

.p-footer__nav {
	flex-direction: column;
	gap: 12px;
}

.p-footer__nav a::before {
	display: none;
}

.p-footer__nav a:last-child::after {
	display: none;
}

.p-thanks__texts {
	max-width: 70%;
}

}

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

html {
	scroll-padding-top: 50px;
}

main {
	top: -80px;
}

a[href^="tel:"] {
	pointer-events: all;
}

.l-header {
	height: 80px;
}

.l-footer {
	margin-top: -3.75rem;
}

.l-footer__inner {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.l-fv {
	background-image: url("../img/fv-bg_sp.webp");
	height: 162.6666666667vw;
	max-height: unset;
}

.l-section {
	padding-top: 2.6875rem;
}

.l-section__inner {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.l-page__head {
	height: 200px;
}

.c-head h2 {
	font-size: 1.25rem;
	font-size: 5.3333333333vw;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	padding-bottom: 0.4375rem;
}

.c-head span {
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.1333333333;
}

.c-comment {
	padding-bottom: 4vw;
	padding-top: 4vw;
	text-align: center;
}

.c-comment p {
	display: block;
	font-size: 1.125rem;
	font-size: min(4.8vw, 20px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-left: unset;
}

.c-comment span {
	width: min(31.2vw, 125px);
}

.c-panel__title {
	align-items: center;
	flex-direction: column;
	font-size: min(5.3333333333vw, 24px);
	gap: 12px;
	justify-content: center;
	padding-bottom: 0.6875rem;
	padding-top: 0.75rem;
}

.c-panel__head {
	flex-direction: column;
	gap: 35px;
	margin-bottom: 1.25rem;
	margin-top: 1.25rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.c-panel__img {
	max-width: 100%;
}

.c-panel__detail {
	align-items: center;
	flex-direction: column;
	gap: 13px;
}

.c-panel__detail dl {
	align-items: center;
	flex-direction: column;
	gap: 5px;
}

.c-panel__detail dt {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
	padding-bottom: 0;
	padding-top: 0;
	width: 100px;
}

.c-panel__detail dd {
	font-weight: 400;
}

.c-panel__text {
	font-weight: 400;
	padding-top: 0.625rem;
}

.c-card__text {
	text-align: left;
}

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

.c-panelRow__img {
	max-width: 100%;
}

.c-panelRow__body {
	padding-bottom: 1.625rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1.25rem;
	text-align: center;
}

.c-toTop {
	right: 0;
}

.p-header__logo {
	height: inherit;
	margin-left: auto;
	margin-right: auto;
	width: 215px;
}

.p-fv {
	margin-right: 0;
	padding-top: 26.6666666667vw;
}

.p-fv__img {
	display: none;
}

.p-fv__img--sp {
	display: block;
	width: 46.1333333333vw;
}

.p-fv__contents {
	max-width: 100%;
	padding-left: 0;
}

.p-fv__lead {
	margin-bottom: 0rem;
	max-width: 80vw;
}

.p-fv__copy {
	width: 82.1333333333vw;
}

.p-fv__button {
	display: none;
}

.p-fv__button--sp {
	display: flex;
	justify-content: flex-end;
	margin-top: -0.3125rem;
	width: 100%;
}

.p-fv__button--sp .image {
	margin-right: -1.5625rem;
	width: 46.1333333333vw;
}

.p-fv__button--sp .button {
	margin-top: 5.8666666667vw;
	width: 58.1333333333vw;
}

.p-fv__button--sp .button a {
	display: inline-block;
}

.p-fv__box {
	margin-left: unset;
	margin-top: -16vw;
}

.p-fv__lists {
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1.0625rem;
	padding-left: min(8vw, 80px);
	padding-right: min(8vw, 80px);
	padding-top: 0.9375rem;
	width: 80vw;
}

.p-fv__lists ul {
	row-gap: 10px;
}

.p-fv__lists li {
	font-size: min(4.8vw, 27px);
	max-width: 100%;
	padding-left: min(8vw, 30px);
	white-space:nowrap;
}

.p-fv__lists li::before {
	height: min(5.3333333333vw, 20px);
	width: min(6.6666666667vw, 25px);
}

.p-fv__deco {
	display: none;
}

.p-fv__comment {
	padding-bottom: 3.2vw;
	padding-right: unset;
	padding-top: 3.2vw;
}

.p-reason {
	padding-bottom: 1.625rem;
}

.p-reason__inner {
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.p-reason__contents {
	justify-content: center;
	margin-top: 1.5rem;
	row-gap: 10px;
}

.p-reason__item {
	width: 100%;
}

.p-reason__item:nth-child(5) {
	margin-top: 0;
}

.p-reason__img {
	display: none;
}

.p-reason__img--sp {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.5rem;
	max-width: 73.3333333333vw;
	width: 100%;
}

.p-cta {
	padding-bottom: 1.875rem;
	padding-top: 2.0625rem;
}

.p-cta__inner {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	text-align: center;
}

.p-cta__title {
	left: 50%;
	margin-left: 0;
	top: 0;
	transform: translateX(-50%);
}

.p-cta__title h2 {
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-cta__contents {
	background-image: url("../img/cta_sp.webp");
	height: min(106.1333333333vw, 398px);
	margin-bottom: -1.875rem;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	width: min(94.6666666667vw, 355px);
}

.p-cta__box {
	padding-top: min(53.3333333333vw, 200px);
}

.p-cta__box span {
	font-size: min(4.2666666667vw, 16px);
	margin-bottom: min(5.8666666667vw, 22px);
}

.p-cta__box a p {
	font-size: clamp(20px, 9.0666666667vw, 34px);
	font-weight: 900;
	letter-spacing: 0.1em;
	line-height: 0.5882352941;
	padding-left: 2.25rem;
}

.p-cta__box a p::before {
	height: 27px;
	width: 26px;
}

.p-cta__text {
	font-size: 1.5rem;
	font-size: min(6.4vw, 24px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 0.5rem;
}

.p-cta__note {
	font-size: 16px;
}

.p-cta__button {
	padding-right: 1.25rem;
}

.p-feature__inner {
	padding-left: 2.3125rem;
	padding-right: 2.3125rem;
}

.p-feature__container {
	margin-top: 3.125rem;
}

.p-feature__item {
	min-height: unset;
	width: 100%;
}

.p-example {
	padding-bottom: 14.375rem;
	padding-top: 3.1875rem;
}

.p-example .c-panel__title {
	font-size: 17px;
}

.p-example__inner {
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.p-example__items {
	gap: 30px;
	margin-top: 3.125rem;
}

.p-example__deco {
	left: 50%;
	margin-left: -3.125rem;
	margin-top: -0.875rem;
	transform: translateX(-50%);
}

.p-service {
	padding-bottom: 3.0625rem;
	padding-top: 3.1875rem;
}

.p-service__inner {
	padding: 0;
}

.p-service__video {
	margin-top: 3.0625rem;
}

.p-service__video iframe {
	height: 56.2666666667vw;
	width: 100%;
}

.p-service__deco {
	display: none;
}

.p-point {
	padding-bottom: 2.5rem;
}

.p-point__text {
	font-size: 1.25rem;
	font-size: min(5.4495912807vw, 20px);
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 0;
}

.p-point__button {
	margin-top: -4.375rem;
	max-width: 94.6666666667vw;
}

.p-point__button a {
	font-size: min(6.4vw, 24px);
	padding-bottom: 0.9375rem;
	padding-top: 1.0625rem;
}

.p-point__button a::after {
	right: 20px;
}

.p-point__deco {
	display: none;
}

.p-point__deco__sp {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 229px;
	width: 100%;
}

.p-footer__logo {
	width: 152px;
}

.p-footer__copy {
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-contact__head-img {
	display: none;
}

.p-contact__intro {
	padding-top: 2.5rem;
}

.p-contact__copy {
	margin-bottom: 1.25rem;
}

.p-contact__box {
	align-items: center;
	flex-direction: column;
	gap: 20px;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.p-contact__img {
	max-width: 100%;
}

.p-contact__texts p {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
}

.p-contact__texts dl {
	flex-direction: column;
}

.p-contact__texts dl dt {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	width: 100%;
}

.p-contact__texts dl dt::before {
	height: 20px;
	width: 25px;
}

.p-contact__texts dl dd {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
}

.p-contact__texts dl:not(:last-child) {
	margin-bottom: 0.9375rem;
}

.p-contact__contents {
	padding-bottom: 3.4375rem;
	padding-top: 1.875rem;
}

.p-contact__flow {
	gap: min(24vw, 150px);
	margin-bottom: 1.5625rem;
}

.p-contact__item:not(:last-child)::after {
	left: calc(100% + 15px);
	width: clamp(0px, 16vw, 150px);
}

.p-contact__deco {
	display: none;
}

.p-form {
	border-radius: 20px;
	margin-left: auto;
	margin-right: auto;
	max-width: 612px;
	padding-bottom: 2.5rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1.5625rem;
}

.p-form.first {
	margin-bottom: 2.1875rem;
}

.p-form__fields {
	gap: 20px;
}

.p-form__field {
	flex-direction: column;
	gap: 10px;
}

.p-form__field.address {
	gap: 4px;
}

.form-field__label {
	font-size: 14px;
	font-weight: 400;
	padding-top: 0;
}

.form-field__item {
	width: 100%;
}

.form-field__item.your-address .form-control-wrap.post {
	max-width: 180px;
	width: 100%;
}

.form-field__item.your-address .form-control-wrap.prefectures {
	max-width: 100%;
}

.p-form__row label {
	font-size: 14px;
}

.form-field__button {
	padding-bottom: 0.5rem;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-top: 0.5rem;
}

.form-text,
.form-textarea {
	height: 40px;
	padding-bottom: 0.5rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	padding-top: 0.5rem;
}

.number-wrap {
	gap: 4px;
}

.number-wrap input:nth-child(1) {
	width: 70px;
}

.number-wrap input:nth-child(2),
.number-wrap input:nth-child(2) {
	width: 100px;
}

.form-text.age {
	width: 100px;
}

.form-text.age + span {
	font-size: 16px;
	font-weight: 400;
}

.age-note {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.75;
}

.post-wrap {
	gap: 10px;
}

.prefecture-wrap {
	flex-direction: column;
	gap: 9px;
	width: 100%;
}

.prefecture-wrap .p-form__row:nth-child(1) {
	width: 100%;
}

.form-select {
	height: 40px;
	padding-bottom: 0.4375rem;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.4375rem;
	width: 100%;
}

.form-select:focus {
	height: 40px;
	padding-bottom: 0.4375rem;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.4375rem;
	width: 100%;
}

.form-select.confirm {
	padding-bottom: 0.5rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	padding-top: 0.5rem;
}

.form-field__radios {
	flex-direction: column;
	gap: 9px;
}

.form-field__radios .form-radio__text {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.75;
}

.form-textarea {
	height: 200px;
	line-height: 22px;
	padding: 16px;
}

.p-contact__privacy {
	margin-top: 45px;
}

.form-checkbox__text {
	font-size: 14px;
}

.p-form__button.confirm {
	margin-top: 2.8125rem;
}

.p-line__head {
	height: unset;
	padding-bottom: 1.1875rem;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
	padding-top: 6.875rem;
}

.p-line__head h1 {
	margin-bottom: 0.5rem;
	max-width: 100%;
}

.p-line__copy {
	margin-left: unset;
	max-width: 66.6666666667vw;
}

.p-line__deco {
	left: unset;
	max-width: 26.6666666667vw;
	right: 0;
}

.p-start {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-start__lead {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-start__intro {
	margin-bottom: 2.625rem;
}

.p-start__account {
	flex-direction: column;
	gap: 0;
	padding-bottom: 1.5625rem;
	padding-top: 1.5625rem;
}

.p-start__account .texts h3 {
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
	margin-bottom: 0;
}

.p-start__account .texts span {
	margin-bottom: 0.75rem;
}

.p-start__account .texts p {
	display: none;
}

.p-start__account .cord {
	display: none;
}

.p-start__account .button {
	border-radius: 10px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 232px;
	overflow: hidden;
	width: 100%;
}

.p-howto {
	padding-bottom: 3.75rem;
}

.p-howto__container {
	gap: 41px;
	padding-left: 0.625rem;
	padding-right: 1.25rem;
}

.p-howto__pickup {
	flex-direction: column;
	gap: 25px;
	margin-left: 10px;
}

.p-howto__explain {
	margin-bottom: 1.875rem;
}

.p-howto__explain span {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-howto__note {
	margin-left: 1.125rem;
	text-align: left;
}

.p-howto__deco {
	display: none;
}

.p-about {
	padding-bottom: 5.625rem;
	padding-top: 3.125rem;
}

.p-about__lead {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.5;
}

.p-about__item {
	max-width: 300px;
}

.p-about__topic {
	margin-bottom: 2.3125rem;
}

.p-about__deco {
	display: none;
}

.p-thanks {
	padding-top: 1.875rem;
}

.p-thanks__container {
	padding-bottom: 2.4375rem;
}

.p-thanks__deco {
	display: none;
}

.p-thanks__texts {
	margin-right: auto;
	max-width: 90%;
	text-align: center;
}

.p-thanks__texts ul {
	text-align: left;
}

.p-thanks__sp {
	align-items: center;
	display: flex;
	margin-bottom: 1.75rem;
	margin-left: auto;
	margin-right: auto;
}

.p-thanks__deco--sp {
	display: block;
	width: min(38.6666666667vw, 145px);
}

.p-thanks__head {
	margin-bottom: 1.25rem;
}

.p-thanks__message {
	flex: 1;
	text-align: left;
}

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

.u-hidden--pc {
	display: block;
}

.u-marker {
	background: linear-gradient(transparent 70%, #F6AC2D 70%);
}

}

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

.p-fv__button--sp .image {
	margin-right: -1.875rem;
	margin-top: -0.75rem;
}

}

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

.p-contact__head h1 {
	font-size: 8vw;
}

.p-contact__copy {
	font-size: 5.3333333333vw;
}

.p-contact__lead {
	font-size: clamp(16px, 4.8vw, 18px);
}

.form-field__item.your-address .form-control-wrap.post {
	width: 48vw;
}

.number-wrap input:nth-child(1) {
	width: 18.6666666667vw;
}

.number-wrap input:nth-child(2),
.number-wrap input:nth-child(2) {
	width: 26.6666666667vw;
}

.page-contact-form__bottom {
	gap: 24px;
	margin-top: 0;
}

.form-field__radio {
	gap: 22px;
	margin-top: -4px;
}

.p-form__button {
	margin-top: 25px;
}

.input-invalid-text {
	font-size: 0.85rem;
}

.p-line__head h1 {
	font-size: 6.4vw;
	max-width: 100%;
}

.p-thanks__texts {
	max-width: 100%;
}

.p-thanks__head {
	font-size: 6.4vw;
}

.u-hidden--sp {
	display: none;
}

}

@keyframes fadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@keyframes fadeUpAnime {

from {
	opacity: 0;
	transform: translateY(60px);
}

to {
	opacity: 1;
	transform: translateY(0);
}

}

@keyframes fadeInAnimeLeft {

from {
	opacity: 0;
	transform: translateX(-60px);
}

to {
	opacity: 1;
	transform: translateX(0);
}

}

@keyframes fadeInAnimeRight {

from {
	opacity: 0;
	transform: translateX(60px);
}

to {
	opacity: 1;
	transform: translateX(0);
}

}

