@charset "UTF-8";
html {
	font-size: 62.5%;
}

body {
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
	line-height: 1.5;
	color: #222;
}
body.open {
	height: 100%;
	overflow: hidden;
}

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

.sp {
	display: block;
}

.pc {
	display: none;
}

#wrap {
	width: 100%;
	overflow: hidden;
}

.section {
	padding: 21.3333333333vw 0;
}

.inner_section {
	width: 87.4666666667vw;
	margin: 0 auto;
}

.c_orange {
	color: #FF8002;
}

/* header
------------------------------------------------------------------------- */
#header {
	position: absolute;
	top: 6.4vw;
	left: 6.1333333333vw;
	width: 50.9333333333vw;
}

/* FV
------------------------------------------------------------------------- */
.fv {
	padding: 32.8vw 0 47.4666666667vw;
	background: url(../images/bg_fv_sp.jpg) no-repeat;
	background-size: cover;
}

.wrap_fv_img {
	width: 87.4666666667vw;
	margin: 0 auto;
}

.fv_img {
	width: 100%;
}

.fv_txt {
	font-size: 3.7333333333vw;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 4.2666666667vw;
}

/* PROBLEMS
------------------------------------------------------------------------- */
/* ========== 見出し ========== */
.ttl_h2 {
	text-align: center;
	margin-bottom: 12.8vw;
}
.ttl_h2 .en {
	display: block;
	color: #FF8002;
	margin-bottom: 2.1333333333vw;
}
.ttl_h2 .ja {
	font-weight: bold;
	font-size: 6.4vw;
}

.problems .ttl_h2 {
	margin-bottom: 23.4666666667vw;
}

/* ========== お悩み集 ========== */
.ul_problems {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 8.5333333333vw 6.4vw;
	margin-bottom: 27.7333333333vw;
	position: relative;
	z-index: 1;
}
.ul_problems::before {
	content: "";
	display: block;
	width: 95.7333333333vw;
	height: calc(100% + 21.3333333333vw);
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: #F2F2F2;
	border-radius: 2.1333333333vw;
}
.ul_problems::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #f2f2f2 transparent transparent transparent;
	border-width: 10.6666666667vw 21.3333333333vw 0px 21.3333333333vw;
	position: absolute;
	bottom: -10.6666666667vw;
	left: 50%;
	-webkit-transform: translate(-50%, 100%);
	transform: translate(-50%, 100%);
}
.ul_problems li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 40.5333333333vw;
	position: relative;
	z-index: 1;
}
.ul_problems li::before {
	content: "";
	display: block;
	width: 40.5333333333vw;
	height: 4.2666666667vw;
	background: url(../images/problems_icon_line.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 35.2vw;
	left: 50%;
	-webkit-transform: translate(-50%, 100%);
	transform: translate(-50%, 100%);
}
.ul_problems li::after {
	content: "";
	display: block;
	width: 29.8666666667vw;
	height: 29.8666666667vw;
	margin: 0 auto;
	background-size: contain;
	background-repeat: no-repeat;
}
.ul_problems li:nth-child(1)::after {
	background-image: url(../images/problems_icon01.svg);
}
.ul_problems li:nth-child(2)::after {
	background-image: url(../images/problems_icon02.svg);
}
.ul_problems li:nth-child(3)::after {
	background-image: url(../images/problems_icon03.svg);
}
.ul_problems li:nth-child(4)::after {
	background-image: url(../images/problems_icon04.svg);
}
.ul_problems li:nth-child(5)::after {
	background-image: url(../images/problems_icon05.svg);
}
.ul_problems li:nth-child(6)::after {
	background-image: url(../images/problems_icon06.svg);
}
.ul_problems li:nth-child(7)::after {
	background-image: url(../images/problems_icon07.svg);
}
.ul_problems li:nth-child(8)::after {
	background-image: url(../images/problems_icon08.svg);
}
.ul_problems li > span {
	display: block;
	width: 38.4vw;
	margin: 0 auto 7.4666666667vw;
}
.ul_problems li .bg_orange {
	background: #FFCC99;
}

/* ABOUT
------------------------------------------------------------------------- */
.about {
	background: #FFE888;
	position: relative;
	z-index: 1;
}
.about::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 50.1333333333vw 50.1333333333vw 0 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.about .ttl_h2 {
	margin-bottom: 28.8vw;
}

.ul_about li {
	padding: 18.1333333333vw 0 4.2666666667vw;
	border: 3px solid #FF8002;
	border-radius: 4.2666666667vw;
	text-align: center;
	text-align: center;
	font-weight: bold;
	font-size: 5.3333333333vw;
	margin-bottom: 24.8vw;
	position: relative;
}
.ul_about li::before {
	content: "";
	display: block;
	width: 40.5333333333vw;
	height: 32vw;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.ul_about li:nth-child(1)::before {
	background-image: url(../images/about_icon01_sp.svg);
}
.ul_about li:nth-child(2)::before {
	background-image: url(../images/about_icon02_sp.svg);
}
.ul_about li:nth-child(3)::before {
	background-image: url(../images/about_icon03_sp.svg);
}
.ul_about li:last-child {
	margin-bottom: 0;
}
.ul_about li .c_orange {
	font-weight: 900;
}

/* ========== メインテキスト ========== */
.wrap_about_contents {
	border: 3px solid #FF8002;
	border-radius: 5.3333333333vw;
	padding: 8.5333333333vw 0 17.0666666667vw;
	margin-top: 12.8vw;
}

.about_contents {
	width: 78.9333333333vw;
	margin: 0 auto;
}

.ttl_h3_about {
	text-align: center;
	font-weight: bold;
	font-size: 4.8vw;
	line-height: 2;
}
.ttl_h3_about span {
	background: #FFEBD6;
}

.about_lead_txt {
	font-weight: bold;
	line-height: 2;
	margin: 6.4vw 0 4.2666666667vw;
}

.about_txt {
	line-height: 2;
	font-weight: 400;
}

.about_last_txt {
	text-align: center;
	margin-top: 6.4vw;
	font-weight: bold;
}
.about_last_txt p:first-child {
	font-size: 4.8vw;
	margin-bottom: 6.4vw;
	line-height: 1.6666666667;
}
.about_last_txt p:last-child {
	position: relative;
	z-index: 1;
}
.about_last_txt p:last-child::before, .about_last_txt p:last-child::after {
	content: "";
	display: block;
	width: 20.2666666667vw;
	height: 24.5333333333vw;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
}
.about_last_txt p:last-child::before {
	background-image: url(../images/about_icon04.svg);
	left: 0;
	-webkit-transform: translate(-50%, 100%);
	transform: translate(-50%, 100%);
}
.about_last_txt p:last-child::after {
	background-image: url(../images/about_icon05.svg);
	right: 0;
	-webkit-transform: translate(50%, 100%);
	transform: translate(50%, 100%);
}
.about_last_txt p:last-child span {
	background: #FF8002;
	color: #fff;
	font-size: 6.4vw;
	line-height: 2;
	padding: 0 2.1333333333vw;
}

/* CTA
------------------------------------------------------------------------- */
.cta {
	background: url(../images/cta_bg_sp.jpg) no-repeat center;
	background-size: cover;
	padding: 34.1333333333vw 0 17.0666666667vw;
}

.btn_cta {
	width: 78.9333333333vw;
	margin: 0 auto;
}
.btn_cta a {
	display: block;
	padding: 9.3333333333vw 0 4.2666666667vw 8.5333333333vw;
	border-radius: 4.2666666667vw;
	background: linear-gradient(135deg, #1964F5 0%, #64CCDB 100%);
	-webkit-box-shadow: 8px 8px 0 #1964F5;
	box-shadow: 8px 8px 0 #1964F5;
	position: relative;
	z-index: 1;
}
.btn_cta a::after {
	content: "";
	display: block;
	width: 24vw;
	height: 24.5333333333vw;
	background: url(../images/cta_icon.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transform: translate(-40%, 45%);
	transform: translate(-40%, 45%);
}
.btn_cta .sub_copy {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 59.7333333333vw;
	height: 9.6vw;
	border: 2px solid #1964F5;
	background: #fff;
	border-radius: 3.2vw;
	position: absolute;
	top: 0;
	left: 6.4vw;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.btn_cta .sub_copy::before, .btn_cta .sub_copy::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.8vw 4.8vw 0px 0px;
	position: absolute;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}
.btn_cta .sub_copy::before {
	border-color: #1964f5 transparent transparent transparent;
	left: 4.2666666667vw;
	bottom: 0;
}
.btn_cta .sub_copy::after {
	border-color: #fff transparent transparent transparent;
	left: 4.8vw;
	bottom: 1.3333333333vw;
}
.btn_cta .main_txt {
	color: #fff;
	font-weight: bold;
	position: relative;
	z-index: 1;
}
.btn_cta .main_txt::after {
	content: "";
	display: block;
	width: 8.5333333333vw;
	height: 8.5333333333vw;
	background: url(../images/arrow_white.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: -2.9333333333vw;
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}
.btn_cta .main_txt span {
	display: block;
	font-size: 5.3333333333vw;
	margin-bottom: 1.0666666667vw;
}

/* CASE STUDEIS
------------------------------------------------------------------------- */
.case {
	position: relative;
	z-index: 1;
}
.case::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #FFF9F2;
	border-radius: 50.1333333333vw 50.1333333333vw 0 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.wrap_case_contents {
	margin-top: 14.9333333333vw;
}

.case_contents {
	margin-bottom: 14.9333333333vw;
	position: relative;
	z-index: 1;
}
.case_contents:last-child {
	margin-bottom: 0;
}

.ttl_case_h3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 45.6vw;
	height: 11.4666666667vw;
	font-weight: bold;
	font-size: 6.4vw;
	color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
}
.ttl_case_h3::before, .ttl_case_h3::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
}
.ttl_case_h3::before {
	border: 1px solid #222;
	border-radius: 6.4vw;
}
.ttl_case_h3::after {
	background: #FF8002;
	top: 1.3333333333vw;
	left: 1.3333333333vw;
	border-radius: 6.4vw;
	z-index: -1;
}

.case_contents_before {
	padding: 8.5333333333vw 0;
	background: #F2F2F2;
	border-radius: 4.2666666667vw 4.2666666667vw 0 0;
	position: relative;
	z-index: 1;
}
.case_contents_before::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #f2f2f2 transparent transparent transparent;
	border-width: 8.5333333333vw 43.7333333333vw 0px 43.7333333333vw;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.ttl_case {
	text-align: center;
	font-weight: bold;
	font-size: 5.6vw;
	line-height: 1.2380952381;
	padding-bottom: 2.1333333333vw;
	margin-bottom: 4.2666666667vw;
}
.ttl_case::before {
	content: "";
	display: block;
	width: 57.6vw;
	height: 34.1333333333vw;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto 2.1333333333vw;
}

.case_contents:nth-child(1) .ttl_case_before::before {
	background-image: url(../images/case_icon01.svg);
}
.case_contents:nth-child(1) .ttl_case_after::before {
	background-image: url(../images/case_icon02.svg);
}
.case_contents:nth-child(2) .ttl_case_before::before {
	background-image: url(../images/case_icon03.svg);
}
.case_contents:nth-child(2) .ttl_case_after::before {
	background-image: url(../images/case_icon04.svg);
}
.case_contents:nth-child(3) .ttl_case_before::before {
	background-image: url(../images/case_icon05.svg);
}
.case_contents:nth-child(3) .ttl_case_after::before {
	background-image: url(../images/case_icon06.svg);
}

.ttl_case_before {
	border-bottom: 2px dashed #2397F0;
	color: #2397F0;
}

.case_txt {
	width: 78.9333333333vw;
	margin: 0 auto;
}

/* ========== after ========== */
.case_contents_after {
	padding: 10.6666666667vw 0 8.5333333333vw;
	background: #FAE89F;
	border-radius: 0 0 4.2666666667vw 4.2666666667vw;
}
.case_contents_after .case_txt {
	font-weight: bold;
}

.ttl_case_after {
	border-bottom: 2px dashed #FF8002;
	color: #FF8002;
}

/* POINT
------------------------------------------------------------------------- */
.point .ttl_h2 {
	margin-bottom: 24.5333333333vw;
}

.point_contents {
	margin-bottom: 18.1333333333vw;
	padding: 16vw 0 8.5333333333vw;
	border: 3px solid #FF8002;
	border-radius: 4.2666666667vw;
	font-weight: 900;
	position: relative;
	z-index: 1;
}
.point_contents:last-child {
	margin-bottom: 0;
}
.point_contents .num {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 23.4666666667vw;
	height: 23.4666666667vw;
	border-radius: 50%;
	background: #FF8002;
	color: #fff;
	font-size: 8.5333333333vw;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.ttl_h3_point {
	text-align: center;
	font-size: 6.4vw;
	font-weight: 900;
	margin-bottom: 4.2666666667vw;
	color: #FF8002;
}
.ttl_h3_point::before {
	content: "";
	display: block;
	width: 25.6vw;
	height: 25.6vw;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto 2.1333333333vw;
}

.point_contents:nth-child(1) .ttl_h3_point::before {
	background-image: url(../images/point_icon01.svg);
}
.point_contents:nth-child(2) .ttl_h3_point::before {
	background-image: url(../images/point_icon02.svg);
}
.point_contents:nth-child(3) .ttl_h3_point::before {
	background-image: url(../images/point_icon03.svg);
}

.point_txt {
	width: 78.9333333333vw;
	margin: 0 auto;
}

/* PLAN&PRICE
------------------------------------------------------------------------- */
.plan {
	position: relative;
	z-index: 1;
}
.plan::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #FFF9F2;
	border-radius: 50.1333333333vw 50.1333333333vw 0 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.plan .lead_txt {
	width: 87.4666666667vw;
	margin: 0 auto;
}

.plan_catch_copy {
	margin-top: 10.6666666667vw;
	text-align: center;
	font-weight: bold;
	font-size: 3.7333333333vw;
	position: relative;
	z-index: 1;
}
.plan_catch_copy::before, .plan_catch_copy::after {
	content: "";
	display: block;
	width: 19.2vw;
	height: 0.8vw;
	border-radius: 10.6666666667vw;
	background: #FF8002;
	position: absolute;
	bottom: 30px;
}
.plan_catch_copy::before {
	left: -10px;
	-webkit-transform: rotate(75deg);
	transform: rotate(75deg);
}
.plan_catch_copy::after {
	right: -10px;
	-webkit-transform: rotate(-75deg);
	transform: rotate(-75deg);
}

.plan_catch_img {
	width: 70.4vw;
	margin: 2.1333333333vw auto 0;
}

/* ========== プラン内容 ========== */
.wrap_plan_contents {
	margin-top: 6.4vw;
}

.plan_contents {
	border: 2px solid #FFCC99;
	border-radius: 4.2666666667vw;
}

.ttl_h3_plan {
	font-size: 6.4vw;
	font-weight: 900;
	text-align: center;
	color: #FF8002;
	padding: 4.2666666667vw 0;
	border-bottom: 1px solid #FFCC99;
}

.plan_txt {
	width: 59.7333333333vw;
	margin: 0 auto;
	padding: 6.4vw 0;
}

.dl_plan {
	width: 59.7333333333vw;
	margin: 0 auto;
	padding: 6.4vw 0;
	border-top: 1px solid #D0D0D0;
}

.dl_plan dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	margin-bottom: 2.1333333333vw;
}
.dl_plan dt::before {
	content: "";
	display: block;
	width: 6.4vw;
	height: 6.4vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.dl_plan dd ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
}
.dl_plan dd ul li::before {
	content: "";
	display: block;
	width: 1.0666666667vw;
	height: 1.0666666667vw;
	border-radius: 50%;
	background: #222;
	margin-top: 2.6666666667vw;
}
.dl_plan dd p {
	margin-bottom: 2.1333333333vw;
}

.dl_plan_price dt::before {
	background-image: url(../images/plan_icon_money.svg);
}

.dl_plan_service dt::before {
	background-image: url(../images/plan_icon_service.svg);
}

/* ライトプラン */
.plan_contents.pickup {
	background: #FFCC99;
	border: 3px solid #FF8002;
	overflow: hidden;
}
.plan_contents.pickup .ttl_h3_plan {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 2.1333333333vw;
	color: #fff;
	background: #FF8002;
}
.plan_contents.pickup .ttl_h3_plan::before {
	content: "";
	display: block;
	width: 8.5333333333vw;
	height: 7.4666666667vw;
	background: url(../images/plan_icon_crown.svg) no-repeat;
	background-size: contain;
}
.plan_contents.pickup .plan_txt,
.plan_contents.pickup .dl_plan {
	border-color: #fff;
}

/* スライダーページネーション */
.splide__pagination {
	bottom: -4.2666666667vw;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	gap: 4.2666666667vw;
}

.splide__pagination__page {
	width: 2.1333333333vw;
	height: 2.1333333333vw;
	opacity: 1;
	margin: 0;
}

.splide__pagination__page.is-active {
	background: #FF8002;
	-webkit-transform: scale(1);
	transform: scale(1);
}

/* 矢印のカスタマイズ */
.button {
	opacity: 1;
	width: 10.6666666667vw;
	height: 10.6666666667vw;
	background: url(../images/arrow_slider.svg) no-repeat;
	background-size: contain;
}
.button.next {
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}

/* スライダー※テキスト */
.plan_slider_txt {
	width: 93.8666666667vw;
	margin: 14.9333333333vw auto 0;
}

/* ========== オプション ========== */
.wrap_option_contents {
	width: 87.4666666667vw;
	margin: 10.6666666667vw auto 0;
	position: relative;
	z-index: 1;
}

.option_contents {
	width: 85.0666666667vw;
	margin-left: auto;
	background: #fff;
	border: 2px solid #FFCC99;
	padding: 18.4vw 0 8.5333333333vw;
}

.inner_option_contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 76.8vw;
	margin: 0 auto;
}

.option_contents_head {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
}

.ttl_option {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 68.2666666667vw;
	height: 12vw;
	border-radius: 0 10.6666666667vw 10.6666666667vw 0;
	background: #FF8002;
	color: #fff;
	font-weight: bold;
	font-size: 5.3333333333vw;
	position: absolute;
	top: 2.1333333333vw;
	left: 0;
}

.option_price {
	text-align: center;
	padding-bottom: 2.1333333333vw;
	border-bottom: 2px solid #FF8002;
	position: relative;
	z-index: 1;
}
.option_price::before, .option_price::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3.232vw 1.8666666667vw 0px 1.8666666667vw;
	position: absolute;
	left: 5.3333333333vw;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}
.option_price::before {
	border-color: #ff8002 transparent transparent transparent;
	bottom: 0;
}
.option_price::after {
	border-color: #fff transparent transparent transparent;
	bottom: 4px;
}

.ttl_h3_option {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5333333333vw;
	color: #FF8002;
	font-size: 6.4vw;
	line-height: 1.25;
	margin-bottom: 6.4vw;
}
.ttl_h3_option::before {
	content: "";
	display: block;
	min-width: 6.4vw;
	max-width: 6.4vw;
	height: 6.1333333333vw;
	background: url(../images/plan_icon_star.svg) no-repeat;
	background-size: contain;
	margin-top: 0.8vw;
}

.dl_option {
	-webkit-box-ordinal-group: 4;
	-ms-flex-order: 3;
	order: 3;
	margin-top: 6.4vw;
}
.dl_option dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	margin-bottom: 2.1333333333vw;
}
.dl_option dt::before {
	content: "";
	display: block;
	width: 6.4vw;
	height: 6.4vw;
	background: url(../images/plan_icon_service.svg) no-repeat;
	background-size: contain;
}
.dl_option dd ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	margin-bottom: 2.1333333333vw;
}
.dl_option dd ul li:last-child {
	margin-bottom: 0;
}
.dl_option dd ul li::before {
	content: "";
	display: block;
	width: 1.0666666667vw;
	height: 1.0666666667vw;
	border-radius: 50%;
	background: #222;
	margin-top: 2.6666666667vw;
}

/* FLOW
------------------------------------------------------------------------- */
.flow {
	position: relative;
	z-index: 1;
}
.flow::before, .flow::after {
	content: "";
	display: block;
	width: 65.6vw;
	height: 55.4666666667vw;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	z-index: -1;
}
.flow::before {
	background-image: url(../images/flow_bg_icon01.svg);
	top: -6.4vw;
	left: -21.3333333333vw;
}
.flow::after {
	background-image: url(../images/flow_bg_icon02.svg);
	bottom: 0;
	right: -17.0666666667vw;
}

.ttl_h3_flow {
	font-size: 6.4vw;
	line-height: 1.6666666667;
	font-weight: 500;
	margin-bottom: 14.9333333333vw;
}

.flow_flex_box {
	padding: 4.2666666667vw 0 10.1333333333vw;
	position: relative;
	z-index: 1;
}
.flow_flex_box::before {
	content: "";
	display: block;
	width: 95.7333333333vw;
	height: 100%;
	background: #fff;
	border: 0.5333333333vw solid #FF8002;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: -1;
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 93%, 83.5% 100%, 0 100%);
	clip-path: polygon(0 0, 100% 0, 100% 93%, 83.5% 100%, 0 100%);
}
.flow_flex_box::after {
	content: "";
	display: block;
	width: 23.2vw;
	height: 9.8666666667vw;
	background: url(../images/flow_icon_triangle.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 6.4vw;
	right: -5%;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.ul_schedule {
	margin-bottom: 4.2666666667vw;
}
.ul_schedule li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
}
.ul_schedule li:nth-child(1) {
	color: #FF8002;
}
.ul_schedule li:nth-child(1)::before {
	background: #FF8002;
}
.ul_schedule li:nth-child(2) {
	color: #5AD1E2;
}
.ul_schedule li:nth-child(2)::before {
	background: #5AD1E2;
}
.ul_schedule li::before {
	content: "";
	display: block;
	width: 2.1333333333vw;
	height: 2.1333333333vw;
	border-radius: 50%;
	margin-top: 2.4vw;
}

.flow_contents_txt {
	padding-bottom: 9.6vw;
	position: relative;
	z-index: 1;
}
.flow_contents_txt::before {
	content: "";
	display: block;
	width: 1.3333333333vw;
	height: 100%;
	background: #FFCC99;
	position: absolute;
	top: 0.5333333333vw;
	left: 5.8666666667vw;
	z-index: -1;
}

.ttl_h4_flow {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 4.2666666667vw;
	font-size: 6.4vw;
	font-weight: 500;
	color: #FF8002;
	margin-bottom: 2.1333333333vw;
	line-height: 1.3333333333;
}
.ttl_h4_flow span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-width: 12.8vw;
	max-width: 12.8vw;
	height: 8.5333333333vw;
	border: 2px solid #FF8002;
	background: #fff;
	border-radius: 10.6666666667vw;
	font-size: 5.3333333333vw;
	margin-top: 0.5333333333vw;
}

.flow_txt {
	padding-left: 17.0666666667vw;
}

.flow_contents:nth-child(2) .flow_contents_txt::before {
	background: -webkit-gradient(linear, left top, left bottom, from(#FFCC99), color-stop(50%, #FFEEDD), to(#B8E3E9));
	background: linear-gradient(to bottom, #FFCC99 0%, #FFEEDD 50%, #B8E3E9 100%);
}
.flow_contents:nth-child(n+3) .ttl_h4_flow {
	color: #5AD1E2;
}
.flow_contents:nth-child(n+3) .ttl_h4_flow span {
	border-color: #5AD1E2;
}
.flow_contents:nth-child(n+3) .flow_contents_txt::before {
	background: #B8E3E9;
}
.flow_contents:last-child .flow_contents_txt {
	padding-bottom: 0;
}
.flow_contents:last-child .flow_contents_txt::before {
	content: none;
}

/* FAQ
------------------------------------------------------------------------- */
.dl_faq div {
	padding: 6.4vw 4.2666666667vw;
	background: #FFEBD6;
	border-radius: 2.6666666667vw;
	margin-bottom: 4.2666666667vw;
}
.dl_faq div:last-child {
	margin-bottom: 0;
}
.dl_faq div dt, .dl_faq div dd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 4.2666666667vw;
}
.dl_faq div dt::before, .dl_faq div dd::before {
	content: "";
	display: block;
	min-width: 12.8vw;
	max-width: 12.8vw;
	height: 12.8vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.dl_faq div dt {
	font-weight: bold;
	font-size: 5.3333333333vw;
	line-height: 1.6;
	margin-bottom: 6.4vw;
}
.dl_faq div dt::before {
	background-image: url(../images/faq_icon_question.svg);
}
.dl_faq div dd::before {
	background-image: url(../images/faq_icon_answer.svg);
}

/* CONTACT
------------------------------------------------------------------------- */
.contact {
	background: #E4F0FC;
}
.contact > .lead_txt {
	width: 87.4666666667vw;
	margin: 0 auto;
}

.wrap_contact_form {
	width: 91.4666666667vw;
	margin: 17.0666666667vw auto 0;
	position: relative;
	z-index: 1;
}
.wrap_contact_form::before {
	content: "";
	display: block;
	width: 12.8vw;
	height: 12.8vw;
	background: url(../images/icon_pin.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: -6.4vw;
	right: 2.1333333333vw;
	z-index: 1;
}
.wrap_contact_form::after {
	content: "";
	display: block;
	width: 87.4666666667vw;
	height: calc(100% + 10px);
	background: #80BCF0;
	position: absolute;
	top: -2.1333333333vw;
	right: 2.1333333333vw;
	-webkit-transform: rotate(1deg);
	transform: rotate(1deg);
	z-index: -1;
}

.inner_contact_form {
	padding: 10.6666666667vw 0;
	background: #fff;
}

.dl_contact {
	width: 87.4666666667vw;
	margin: 0 auto;
}
.dl_contact > dt, .dl_contact dd {
	font-size: 4.8vw;
}
.dl_contact > dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	font-size: 4.8vw;
	margin-bottom: 4.2666666667vw;
}
.dl_contact > dd {
	margin-bottom: 6.4vw;
}
.dl_contact > dd:last-of-type {
	margin-bottom: 0;
}

.required {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 10.6666666667vw;
	height: 6.9333333333vw;
	font-weight: 900;
	font-size: 3.7333333333vw;
	color: #fff;
	background: #FF7777;
}

input[type=text],
input[type=email],
input[type=tel],
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	background: #F4F4F4;
	border: 1px solid #222;
	border-radius: 1.3333333333vw;
	font-size: 4.2666666667vw;
	padding: 2.6666666667vw 2.1333333333vw;
}

::-webkit-input-placeholder {
	color: rgba(112, 112, 112, 0.4);
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
}

::-moz-placeholder {
	color: rgba(112, 112, 112, 0.4);
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
}

:-ms-input-placeholder {
	color: rgba(112, 112, 112, 0.4);
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
}

::-ms-input-placeholder {
	color: rgba(112, 112, 112, 0.4);
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
}

::placeholder {
	color: rgba(112, 112, 112, 0.4);
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 4.2666666667vw;
	font-weight: 500;
}

/* ラジオボタン */
.dd_radio .wpcf7-form-control {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.dd_radio .wpcf7-list-item {
	margin: 0 8.5333333333vw 6.4vw 0;
}

.dd_radio .wpcf7-list-item:last-child {
	margin-bottom: 0;
}

.dd_radio label,
.dd_radio input {
	cursor: pointer;
}

input[type=radio] {
	position: relative;
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	margin-right: 2.1333333333vw;
	margin-top: -0.8vw;
	margin-left: 0;
	border: solid 1px #222;
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #ffffff;
	outline: none;
	width: 6.4vw;
	height: 6.4vw;
	vertical-align: middle;
}

input[type=radio]::after {
	content: "";
	display: block;
	width: 4.2666666667vw;
	height: 4.2666666667vw;
	background-color: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: -2.1333333333vw;
	margin-left: -2.1333333333vw;
	border-radius: 100%;
}

input[type=radio]:checked {
	background-color: #fff;
	border: solid 1px #222;
}

input[type=radio]:checked::after {
	background-color: #222;
}

input[type=radio] {
	border-radius: 100%;
}

/* チェックボックス */
.dd_checkbox {
	position: relative;
	padding: 0 0 0 9.3333333333vw;
}

.dd_checkbox a {
	color: #222;
	font-weight: 500;
	text-decoration: underline;
	font-weight: bold;
}

.dd_checkbox .wpcf7-form-control-wrap {
	position: static;
}

.dd_checkbox .wpcf7-list-item {
	margin: 0;
}

input[type=checkbox] {
	display: none;
}

.dd_checkbox input + span {
	cursor: pointer;
	display: inline-block;
	width: auto;
}

.dd_checkbox input + span::before {
	background: #fff;
	border: 1px solid #9B9B9B;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 1.3333333333vw;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 5.3333333333vw;
	height: 5.3333333333vw;
}

.dd_checkbox input + span::after {
	content: "";
	display: block;
	background: url(../images/icon_contact_check.svg) no-repeat;
	background-size: contain;
	width: 4vw;
	height: 5.6vw;
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 2.1333333333vw;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

input[type=checkbox]:checked + span::before {
	background: #fff;
}

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

/* チェックボックスが複数の場合 */
.dd_checkbox.dd_checkbox2 {
	padding: 0;
}

.dd_checkbox2 .wpcf7-list-item {
	position: relative;
	padding-left: 9.3333333333vw;
	display: block;
	margin-bottom: 4.2666666667vw;
}

.dd_checkbox2 .wpcf7-list-item:last-child {
	margin-bottom: 0;
}

.dd_checkbox2 input + span::before {
	top: 1.3333333333vw;
	-webkit-transform: translate(0);
	transform: translate(0);
}

.dd_checkbox2 input + span::after {
	top: 4.2666666667vw;
}

/* プライバシーポリシー */
.wrap_policy {
	padding: 4.2666666667vw;
	border: 1px solid #222;
	border-radius: 0.8vw;
	height: 97.0666666667vw;
	overflow-y: scroll;
	margin-bottom: 4.2666666667vw;
}
.wrap_policy .lead_txt {
	font-weight: 400;
	line-height: 2;
	margin-bottom: 6.4vw;
	font-size: 4.2666666667vw;
}

.ttl_policy {
	font-weight: bold;
	font-size: 4.8vw;
	margin-bottom: 2.1333333333vw;
	text-align: center;
}

.dl_policy dt {
	font-weight: bold;
	margin-bottom: 2.1333333333vw;
	font-size: 4.2666666667vw;
}
.dl_policy dd {
	margin-bottom: 6.4vw;
	font-size: 4.2666666667vw;
}
.dl_policy dd:last-of-type {
	margin-bottom: 0;
}
.dl_policy dd a {
	color: #FF8002;
	text-decoration: underline;
}

/* 送信ボタン */
.btn_submit input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 87.4666666667vw;
	height: 19.2vw;
	margin: 10.6666666667vw auto 0;
	border-radius: 10.6666666667vw;
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight: bold;
	font-size: 5.3333333333vw;
	background: linear-gradient(135deg, #1964F5 0%, #64CCDB 100%);
	border: none;
	color: #fff;
}

/* COMPANY
------------------------------------------------------------------------- */
.dl_company dt {
	background: #FFEBD6;
	border-radius: 6.4vw;
	font-weight: bold;
	font-size: 4.8vw;
	padding: 2.1333333333vw 4.2666666667vw;
	margin-bottom: 2.1333333333vw;
}
.dl_company dd {
	padding: 2.1333333333vw 4.2666666667vw;
	margin-bottom: 6.4vw;
	font-size: 4.8vw;
	font-weight: 400;
}
.dl_company dd:last-of-type {
	margin-bottom: 0;
}

.dd_company_contact_address p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 4.2666666667vw;
	word-break: break-all;
	margin-bottom: 4.2666666667vw;
}
.dd_company_contact_address p:last-child {
	margin-bottom: 0;
}
.dd_company_contact_address .company_mail::before,
.dd_company_contact_address .company_tel::before {
	content: "";
	display: block;
	min-width: 8.5333333333vw;
	max-width: 8.5333333333vw;
	height: 8.5333333333vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.dd_company_contact_address .company_mail::before {
	background-image: url(../images/company_icon_mail.svg);
}
.dd_company_contact_address .company_tel::before {
	background-image: url(../images/company_icon_tel.svg);
}

.dl_company dd ul li {
	margin-bottom: 4.2666666667vw;
}
.dl_company dd ul li:last-child {
	margin-bottom: 0;
}

/* floating
------------------------------------------------------------------------- */
.floating {
	width: 100%;
	background: rgba(204, 226, 245, 0.8);
	padding: 3.2vw 0 1.0666666667vw;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 1000;
}

.floating_btn {
	width: 87.4666666667vw;
	margin: 0 auto;
}
.floating_btn a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 17.0666666667vw;
	border-radius: 2.1333333333vw;
	background: linear-gradient(135deg, #1964F5 0%, #64CCDB 100%);
	-webkit-box-shadow: 2px 2px 0 rgba(25, 100, 245, 0.4);
	box-shadow: 2px 2px 0 rgba(25, 100, 245, 0.4);
	color: #fff;
	font-weight: bold;
	font-size: 5.3333333333vw;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 1;
	padding-top: 6.6666666667vw;
}
.floating_btn a::after {
	content: "";
	display: block;
	width: 6.4vw;
	height: 6.4vw;
	background: url(../images/arrow_white.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 7.4666666667vw;
	right: 6.4vw;
}
.floating_btn a .floating_sub_copy {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 66.1333333333vw;
	height: 6.4vw;
	border-radius: 6.4vw;
	border: 2px solid #1964F5;
	font-size: 3.7333333333vw;
	color: #1964F5;
	background: #fff;
	position: absolute;
	top: 1.6vw;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/* footer
------------------------------------------------------------------------- */
#footer {
	background: #FFEBD6;
	padding: 21.3333333333vw 0;
	font-size: 4.8vw;
	word-break: break-all;
}

.wrap_footer_contents {
	width: 87.4666666667vw;
	margin: 0 auto;
}

.footer_logo {
	font-weight: bold;
	font-size: 8.5333333333vw;
	margin-bottom: 12.8vw;
}

#footer address span {
	display: block;
	margin-bottom: 2.1333333333vw;
}

.footer_mail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	margin-top: 2.1333333333vw;
}
.footer_mail span {
	white-space: nowrap;
}

.footer_nav {
	margin-top: 12.8vw;
}
.footer_nav li {
	margin-bottom: 6.4vw;
}
.footer_nav li:last-child {
	margin-bottom: 0;
}
.footer_nav li a {
	font-weight: bold;
	font-size: 4.2666666667vw;
}

.copyright {
	font-size: 3.7333333333vw;
	text-align: center;
	padding-top: 6.4vw;
	margin-top: 12.8vw;
	border-top: 1px solid #707070;
}

@media (min-width: 769px) {
	body {
		font-size: 16px;
		font-size: 1.6rem;
	}
	.sp {
		display: none;
	}
	.pc {
		display: block;
	}
	.section {
		padding: 88px 0;
	}
	.inner_section {
		width: min(95%, 1120px);
	}
	/* header
	------------------------------------------------------------------------- */
	#header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		width: 94.1176470588vw;
		top: 2.0588235294vw;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	.header_logo {
		width: 21.1029411765vw;
	}
	.header_contact_btn {
		width: 16.7647058824vw;
	}
	.header_contact_btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		height: 4.7058823529vw;
		border-radius: 0.7352941176vw;
		background: linear-gradient(135deg, #1964F5 0%, #64CCDB 100%);
		color: #fff;
		font-weight: bold;
		font-size: 1.4705882353vw;
		-webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
		box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
		border: 1px solid transparent;
	}
	.header_contact_btn a:hover {
		background: #fff;
		color: #1964F5;
		border-color: #1964F5;
	}
	/* FV
	------------------------------------------------------------------------- */
	.fv {
		padding: 11.6176470588vw 0 18.2352941176vw;
		background-image: url(../images/bg_fv_pc.jpg);
	}
	.wrap_fv_img {
		width: 68.2352941176vw;
	}
	.fv_txt {
		font-size: 1.4705882353vw;
		margin-top: 1.1764705882vw;
	}
	/* PROBLEMS
	------------------------------------------------------------------------- */
	/* ========== 見出し ========== */
	.ttl_h2 {
		margin-bottom: 56px;
	}
	.ttl_h2 .en {
		font-size: 20px;
		font-size: 2rem;
		margin-bottom: 8px;
	}
	.ttl_h2 .ja {
		font-size: 32px;
		font-size: 3.2rem;
	}
	.problems .inner_section {
		width: 100%;
	}
	.problems .ttl_h2 {
		margin-bottom: 56px;
	}
	/* ========== お悩み集 ========== */
	.wrap_ul_problems {
		width: min(95%, 1280px);
		margin: 0 auto 64px;
		background: #F2F2F2;
		border-radius: 8px;
		padding: 48px 0;
	}
	.ul_problems {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: min(95%, 1120px);
		gap: 32px;
		margin: 0 auto;
	}
	.ul_problems::before {
		content: none;
	}
	.ul_problems::after {
		border-width: 40px 80px 0px 80px;
		bottom: -48px;
	}
	.ul_problems li {
		width: 256px;
	}
	.ul_problems li::before {
		width: 100%;
		height: 27px;
		bottom: 148px;
	}
	.ul_problems li::after {
		width: 112px;
		height: 112px;
	}
	.ul_problems li > span {
		width: 100%;
		margin: 0 auto 48px;
	}
	.ul_problems li:nth-child(4) > span {
		letter-spacing: -0.015em;
	}
	.problems_txt {
		width: min(95%, 1120px);
		margin: 0 auto;
	}
	/* ABOUT
	------------------------------------------------------------------------- */
	.about::after {
		border-radius: 526px 526px 0 0;
	}
	.about .ttl_h2 {
		margin-bottom: 136px;
	}
	.ul_about {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(2.3529411765vw, 32px);
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.ul_about li {
		width: min(25.8823529412vw, 352px);
		padding: min(7.0588235294vw, 96px) min(0.5882352941vw, 8px) min(1.1764705882vw, 16px);
		border-radius: min(1.4705882353vw, 20px);
		font-size: min(1.7647058824vw, 24px);
		margin: 0;
	}
	.ul_about li::before {
		width: min(16.4705882353vw, 224px);
		height: min(11.7647058824vw, 160px);
	}
	/* ========== メインテキスト ========== */
	.wrap_about_contents {
		border-radius: 20px;
		padding: 48px 0;
		margin-top: 32px;
	}
	.about_contents {
		width: min(95%, 928px);
	}
	.ttl_h3_about {
		font-size: 24px;
		font-size: 2.4rem;
	}
	.about_lead_txt {
		margin: 24px 0;
		text-align: center;
	}
	.about_last_txt {
		margin-top: 40px;
	}
	.about_last_txt p:first-child {
		font-size: 18px;
		font-size: 1.8rem;
		margin-bottom: 12px;
	}
	.about_last_txt p:last-child::before, .about_last_txt p:last-child::after {
		width: 160px;
		height: 192px;
		bottom: -80px;
		z-index: -1;
	}
	.about_last_txt p:last-child::before {
		background-image: url(../images/about_icon04.svg);
		left: 96px;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	.about_last_txt p:last-child::after {
		background-image: url(../images/about_icon05.svg);
		right: 96px;
		-webkit-transform: translate(50%, 0);
		transform: translate(50%, 0);
	}
	.about_last_txt p:last-child span {
		font-size: 24px;
		font-size: 2.4rem;
		padding: 0 8px;
	}
	/* CTA
	------------------------------------------------------------------------- */
	.cta {
		background-image: url(../images/cta_bg_pc.jpg);
		padding: 72px 0 64px;
	}
	.btn_cta {
		width: 544px;
	}
	.btn_cta a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: 40px 0;
		border-radius: 24px;
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.btn_cta a:hover {
		-webkit-box-shadow: none;
		box-shadow: none;
		-webkit-transform: translate(8px, 8px);
		transform: translate(8px, 8px);
	}
	.btn_cta a::after {
		width: 128px;
		height: 144px;
		bottom: -16px;
		-webkit-transform: translate(-40%, 0);
		transform: translate(-40%, 0);
	}
	.btn_cta .sub_copy {
		width: 320px;
		height: 40px;
		border-radius: 12px;
		left: 32px;
	}
	.btn_cta .sub_copy::before, .btn_cta .sub_copy::after {
		border-width: 18px 18px 0px 0px;
	}
	.btn_cta .sub_copy::before {
		left: 16px;
	}
	.btn_cta .sub_copy::after {
		left: 18px;
		bottom: 5px;
	}
	.btn_cta .main_txt::after {
		width: 40px;
		height: 40px;
		right: -48px;
	}
	.btn_cta .main_txt span {
		font-size: 32px;
		font-size: 3.2rem;
		margin-bottom: 8px;
	}
	/* CASE STUDEIS
	------------------------------------------------------------------------- */
	.case::after {
		content: none;
	}
	.case .lead_txt {
		width: min(95%, 741px);
		margin: 0 auto;
	}
	.bg_beige::before {
		content: "";
		display: block;
		width: 100vw;
		height: 11.7647058824vw;
		background: url(../images/bg_beige_pc.svg) no-repeat;
		background-size: 100vw 11.7647058824vw;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
	.bg_beige::after {
		content: "";
		display: block;
		width: 100%;
		height: calc(100% - 11.7647058824vw);
		background: #FFF9F2;
		border-radius: 0;
		top: auto;
		bottom: 0;
	}
	.wrap_case_contents {
		margin-top: 72px;
	}
	.case_contents {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin-bottom: 72px;
	}
	.ttl_case_h3 {
		width: 227px;
		height: 43px;
		font-size: 24px;
		font-size: 2.4rem;
		left: 48px;
	}
	.ttl_case_h3::before {
		border-radius: 24px;
	}
	.ttl_case_h3::after {
		top: 5px;
		left: 5px;
		border-radius: 24px;
	}
	.case_contents_before {
		padding: 56px 0 32px;
		background: #F2F2F2;
		border-radius: 16px 0 0 16px;
	}
	.case_contents_before::after {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: auto;
		left: auto;
		width: 32px;
		height: 100%;
		background: #F2F2F2;
		-webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
		clip-path: polygon(0 0, 100% 50%, 0 100%);
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		border-width: 0;
	}
	.ttl_case {
		width: min(95%, 496px);
		font-size: 21px;
		font-size: 2.1rem;
		padding-bottom: 8px;
		margin: 0 auto 16px;
	}
	.ttl_case::before {
		width: 216px;
		height: 128px;
		margin: 0 auto 16px;
	}
	.case_contents_before {
		width: min(48.5714285714%, 544px);
	}
	.case_txt {
		width: min(95%, 496px);
	}
	/* ========== after ========== */
	.case_contents_after {
		width: min(51.4285714286%, 576px);
		padding: 56px 0 32px min(3.8970588235vw, 53px);
		border-radius: 0 16px 16px 0;
	}
	.case_contents_after .ttl_case {
		margin: 0 min(1.7647058824vw, 24px) 16px auto;
	}
	.case_contents_after .case_txt {
		margin: 0 min(1.7647058824vw, 24px) 0 auto;
	}
	/* POINT
	------------------------------------------------------------------------- */
	.point .ttl_h2 {
		margin-bottom: 101px;
	}
	.wrap_point_contents {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		border: 3px solid #FF8002;
		border-radius: 16px;
	}
	.point_contents {
		width: min(33.2142857143%, 372px);
		margin-bottom: 0;
		padding: 67px 0 56px;
		border-radius: 0;
		border: none;
		position: relative;
		z-index: 1;
	}
	.point_contents::after {
		content: "";
		display: block;
		width: 1px;
		height: calc(100% - 48px);
		border-right: 1px solid #FFCC99;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.point_contents:last-child::after {
		content: none;
	}
	.point_contents .num {
		width: 88px;
		height: 88px;
		font-size: 32px;
		font-size: 3.2rem;
	}
	.ttl_h3_point {
		font-size: 24px;
		font-size: 2.4rem;
		margin-bottom: 24px;
	}
	.ttl_h3_point::before {
		width: 96px;
		height: 96px;
		margin: 0 auto 16px;
	}
	.point_txt {
		width: min(95%, 320px);
		line-height: 1.875;
	}
	/* PLAN&PRICE
	------------------------------------------------------------------------- */
	.plan .lead_txt {
		width: min(95%, 750px);
	}
	.wrap_plan_catch_copy {
		width: min(95%, 1120px);
		margin: 40px auto 0;
		-webkit-transform: rotate(-5deg);
		transform: rotate(-5deg);
	}
	.plan_catch_copy {
		width: 500px;
		margin: 0;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.plan_catch_copy::before, .plan_catch_copy::after {
		width: 72px;
		height: 3px;
		border-radius: 40px;
	}
	.plan_catch_copy::before {
		left: -10px;
		-webkit-transform: rotate(75deg);
		transform: rotate(75deg);
	}
	.plan_catch_copy::after {
		right: -10px;
		-webkit-transform: rotate(-75deg);
		transform: rotate(-75deg);
	}
	.plan_catch_img {
		width: 264px;
		margin: 8px auto 0;
	}
	/* ========== プラン内容 ========== */
	.wrap_plan_contents {
		width: min(95%, 1120px);
		margin: 80px auto 0;
	}
	.splide.is-initialized:not(.is-active) .splide__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 32px;
	}
	.plan_contents {
		width: 256px;
		border-radius: 16px;
	}
	.ttl_h3_plan {
		font-size: 24px;
		font-size: 2.4rem;
		padding: 16px 0;
	}
	.plan_txt {
		width: 224px;
		padding: 24px 0;
	}
	.dl_plan {
		width: 224px;
		padding: 24px 0;
	}
	.dl_plan dt {
		gap: 8px;
		margin-bottom: 8px;
	}
	.dl_plan dt::before {
		width: 24px;
		height: 24px;
	}
	.dl_plan dd ul li {
		gap: 8px;
	}
	.dl_plan dd ul li::before {
		width: 4px;
		height: 4px;
		margin-top: 10px;
	}
	.dl_plan dd p {
		margin-bottom: 8px;
	}
	/* ライトプラン */
	.plan_contents.pickup .ttl_h3_plan {
		gap: 8px;
	}
	.plan_contents.pickup .ttl_h3_plan::before {
		width: 32px;
		height: 28px;
	}
	/* 矢印のカスタマイズ */
	.splide__arrows {
		display: none;
	}
	/* スライダー※テキスト */
	.plan_slider_txt {
		width: min(95%, 1120px);
		margin: 16px auto 0;
	}
	/* ========== オプション ========== */
	.wrap_option_contents {
		width: min(95%, 1120px);
		margin: 40px auto 0;
	}
	.option_contents {
		width: min(100%, 1112px);
		padding: 80px 25px 32px;
	}
	.inner_option_contents {
		display: block;
		width: 100%;
	}
	.option_contents_head {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 40px;
		position: absolute;
		top: 16px;
		left: 0;
	}
	.ttl_option {
		width: 256px;
		height: 45px;
		border-radius: 0 40px 40px 0;
		font-size: 24px;
		font-size: 2.4rem;
		position: static;
	}
	.option_price {
		padding-bottom: 8px;
	}
	.option_price::before, .option_price::after {
		border-width: 12.12px 7px 0px 7px;
		left: 50%;
		-webkit-transform: translate(-50%, 100%);
		transform: translate(-50%, 100%);
	}
	.option_price::before {
		border-color: #ff8002 transparent transparent transparent;
		bottom: 0;
	}
	.option_price::after {
		border-color: #fff transparent transparent transparent;
		bottom: 4px;
	}
	.ttl_h3_option {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 2px;
		font-size: 24px;
		font-size: 2.4rem;
		margin-bottom: 16px;
	}
	.ttl_h3_option::before {
		min-width: 24px;
		max-width: 24px;
		height: 23px;
		margin-top: 0;
	}
	.dl_option {
		margin-top: 0;
	}
	.dl_option dt {
		gap: 8px;
		margin-bottom: 8px;
	}
	.dl_option dt::before {
		width: 24px;
		height: 24px;
	}
	.dl_option dd ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 20px;
	}
	.dl_option dd ul li {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 8px;
		margin-bottom: 0;
	}
	.dl_option dd ul li::before {
		width: 4px;
		height: 4px;
		margin-top: 0;
	}
	/* FLOW
	------------------------------------------------------------------------- */
	.flow::before {
		width: 403px;
		height: 340px;
		top: -24px;
		left: -80px;
	}
	.flow::after {
		width: 339px;
		height: 254px;
		right: -27px;
	}
	.wrap_flow {
		width: min(73.0147058824vw, 993px);
		margin: 0 auto;
		padding: min(4.7794117647vw, 65px) min(2.3529411765vw, 32px) min(3.1617647059vw, 43px);
		position: relative;
		z-index: 1;
	}
	.wrap_flow::before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: #fff;
		border: min(0.1470588235vw, 2px) solid #FF8002;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 91%, 94% 100%, 0 100%);
		clip-path: polygon(0 0, 100% 0, 100% 91%, 94% 100%, 0 100%);
	}
	.ttl_h3_flow {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: min(49.4117647059vw, 672px);
		height: min(3.6029411765vw, 49px);
		border-radius: min(2.9411764706vw, 40px);
		border: min(0.1470588235vw, 2px) solid #FF8002;
		font-size: min(1.7647058824vw, 24px);
		margin-bottom: 0;
		position: absolute;
		top: 0;
		left: min(1.1764705882vw, 16px);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		background: #fff;
	}
	.flow_flex_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		padding: 0;
		position: relative;
		z-index: 1;
	}
	.flow_flex_box::before {
		content: none;
	}
	.flow_flex_box::after {
		width: min(6.3970588235vw, 87px);
		height: min(2.7205882353vw, 37px);
		right: max(-2.4264705882vw, -33px);
		bottom: max(-1.3235294118vw, -18px);
	}
	.schedule_img {
		width: min(4.7058823529vw, 64px);
	}
	.wrap_flow_contents {
		width: min(59.1911764706vw, 805px);
	}
	.flow_contents {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(2.3529411765vw, 32px);
		padding-bottom: min(3.5294117647vw, 48px);
		position: relative;
		z-index: 1;
	}
	.flow_contents::before {
		content: "";
		display: block;
		width: min(4.7058823529vw, 64px);
		height: min(4.7058823529vw, 64px);
		background-repeat: no-repeat;
		background-size: contain;
	}
	.flow_contents::after {
		content: "";
		display: block;
		width: min(0.3676470588vw, 5px);
		height: 100%;
		background: #FFCC99;
		position: absolute;
		top: 2px;
		left: min(2.2058823529vw, 30px);
		z-index: -1;
	}
	.flow_contents:nth-child(1)::before {
		background-image: url(../images/flow_icon01.svg);
	}
	.flow_contents:nth-child(2)::before {
		background-image: url(../images/flow_icon02.svg);
	}
	.flow_contents:nth-child(2)::after {
		background: -webkit-gradient(linear, left top, left bottom, from(#FFCC99), color-stop(50%, #FFEEDD), to(#B8E3E9));
		background: linear-gradient(to bottom, #FFCC99 0%, #FFEEDD 50%, #B8E3E9 100%);
	}
	.flow_contents:nth-child(3)::before {
		background-image: url(../images/flow_icon03.svg);
	}
	.flow_contents:nth-child(3)::after {
		background: #B8E3E9;
	}
	.flow_contents:nth-child(4)::before {
		background-image: url(../images/flow_icon04.svg);
	}
	.flow_contents:nth-child(4)::after {
		background: #B8E3E9;
	}
	.flow_contents:nth-child(5)::before {
		background-image: url(../images/flow_icon05.svg);
	}
	.flow_contents:nth-child(5)::after {
		content: none;
	}
	.flow_contents:last-child {
		padding-bottom: 0;
	}
	.flow_contents_txt {
		padding-bottom: 0;
	}
	.flow_contents_txt::before {
		content: none;
	}
	.ttl_h4_flow {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: min(1.1764705882vw, 16px);
		font-size: min(1.7647058824vw, 24px);
		margin-bottom: min(0.5882352941vw, 8px);
	}
	.ttl_h4_flow span {
		min-width: min(3.5294117647vw, 48px);
		max-width: min(3.5294117647vw, 48px);
		height: min(2.3529411765vw, 32px);
		border-radius: min(2.9411764706vw, 40px);
		font-size: min(1.4705882353vw, 20px);
		margin-top: 0;
	}
	.flow_txt {
		padding-left: 0;
		font-size: min(1.1764705882vw, 16px);
	}
	/* FAQ
	------------------------------------------------------------------------- */
	.dl_faq div {
		padding: 24px 32px;
		border-radius: 10px;
		margin-bottom: 24px;
	}
	.dl_faq div dt, .dl_faq div dd {
		gap: 48px;
	}
	.dl_faq div dt::before, .dl_faq div dd::before {
		min-width: 48px;
		max-width: 48px;
		height: 48px;
	}
	.dl_faq div dt {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		font-size: 20px;
		font-size: 2rem;
		margin-bottom: 24px;
	}
	/* CONTACT
	------------------------------------------------------------------------- */
	.contact > .lead_txt {
		width: min(95%, 450px);
	}
	.wrap_contact_form {
		width: min(95%, 928px);
		margin: 40px auto 0;
	}
	.wrap_contact_form::before {
		width: 64px;
		height: 64px;
		top: -24px;
		right: 96px;
	}
	.wrap_contact_form::after {
		width: 100%;
		height: calc(100% + 10px);
		top: 0px;
		right: 0;
		-webkit-transform: rotate(2deg);
		transform: rotate(2deg);
	}
	.inner_contact_form {
		padding: 56px 0;
	}
	.dl_contact {
		width: min(95%, 800px);
	}
	.dl_contact > dt, .dl_contact dd {
		font-size: 20px;
		font-size: 2rem;
	}
	.dl_contact > dt {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 24px;
		margin-bottom: 16px;
	}
	.dl_contact > dd {
		margin-bottom: 24px;
	}
	.required {
		width: 40px;
		height: 26px;
		font-size: 14px;
		font-size: 1.4rem;
	}
	input[type=text],
	input[type=email],
	input[type=tel],
	textarea {
		border-radius: 5px;
		font-size: 16px;
		font-size: 1.6rem;
		padding: 10px 8px;
	}
	::-webkit-input-placeholder {
		font-size: 16px;
		font-size: 1.6rem;
	}
	::-moz-placeholder {
		font-size: 16px;
		font-size: 1.6rem;
	}
	:-ms-input-placeholder {
		font-size: 16px;
		font-size: 1.6rem;
	}
	::-ms-input-placeholder {
		font-size: 16px;
		font-size: 1.6rem;
	}
	::placeholder {
		font-size: 16px;
		font-size: 1.6rem;
	}
	/* ラジオボタン */
	.dd_radio .wpcf7-list-item {
		margin: 0 32px 24px 0;
	}
	input[type=radio] {
		margin-right: 8px;
		margin-top: -3px;
		width: 24px;
		height: 24px;
	}
	input[type=radio]::after {
		width: 16px;
		height: 16px;
		margin-top: -8px;
		margin-left: -8px;
	}
	/* チェックボックス */
	.dd_checkbox {
		padding: 0 0 0 35px;
	}
	.dd_checkbox input + span::before {
		left: 5px;
		width: 20px;
		height: 20px;
	}
	.dd_checkbox input + span::after {
		width: 15px;
		height: 21px;
		left: 8px;
	}
	/* チェックボックスが複数の場合 */
	.dd_checkbox2 .wpcf7-checkbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 16px 40px;
	}
	.dd_checkbox2 .wpcf7-list-item {
		padding-left: 35px;
		margin-bottom: 0;
	}
	.dd_checkbox2 input + span::before {
		top: 5px;
	}
	.dd_checkbox2 input + span::after {
		top: 16px;
	}
	/* プライバシーポリシー */
	.wrap_policy {
		padding: 16px;
		border-radius: 3px;
		height: 219px;
		margin-bottom: 16px;
	}
	.wrap_policy .lead_txt {
		margin-bottom: 40px;
		font-size: 16px;
		font-size: 1.6rem;
	}
	.ttl_policy {
		font-size: 18px;
		font-size: 1.8rem;
		margin-bottom: 8px;
	}
	.dl_policy dt {
		margin-bottom: 8px;
		font-size: 16px;
		font-size: 1.6rem;
	}
	.dl_policy dd {
		margin-bottom: 24px;
		font-size: 16px;
		font-size: 1.6rem;
	}
	/* 送信ボタン */
	.btn_submit input {
		width: 544px;
		height: 72px;
		margin: 40px auto 0;
		border-radius: 40px;
		font-size: 20px;
		font-size: 2rem;
		cursor: pointer;
		-webkit-transition: 0.2s;
		transition: 0.2s;
		border: 1px solid transparent;
	}
	.btn_submit input:hover {
		color: #1964F5;
		background: transparent;
		border-color: #1964F5;
	}
	/* COMPANY
	------------------------------------------------------------------------- */
	.dl_company {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 24px 32px;
		width: min(95%, 928px);
		margin: 0 auto;
	}
	.dl_company dt {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 160px;
		height: 80px;
		border-radius: 40px;
		font-size: 18px;
		font-size: 1.8rem;
		padding: 0;
		margin-bottom: 0;
	}
	.dl_company dd {
		-ms-flex-item-align: center;
		align-self: center;
		width: calc(100% - 192px);
		padding: 0 32px;
		margin-bottom: 0;
		font-size: 18px;
		font-size: 1.8rem;
	}
	.dd_company_contact_address p {
		gap: 32px;
		margin-bottom: 16px;
	}
	.dd_company_contact_address .company_mail::before,
	.dd_company_contact_address .company_tel::before {
		min-width: 32px;
		max-width: 32px;
		height: 32px;
	}
	.dl_company dd {
		line-height: 2;
	}
	.dl_company dd ul li {
		margin-bottom: 0;
	}
	/* floating
	------------------------------------------------------------------------- */
	.floating {
		width: 320px;
		background: none;
		padding: 0;
		position: fixed;
		bottom: 24PX;
		left: auto;
		right: 40px;
		z-index: 1000;
	}
	.floating_btn {
		width: 100%;
		margin: 0;
	}
	.floating_btn a {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		height: 104px;
		border-radius: 16px;
		-webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
		box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
		font-size: 24px;
		font-size: 2.4rem;
		letter-spacing: 0;
		padding: 0 0 0 28px;
		font-weight: 400;
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.floating_btn a:hover {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
	.floating_btn a:hover::after {
		right: 20px;
	}
	.floating_btn a::after {
		width: 32px;
		height: 32px;
		top: 50%;
		right: 28px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.floating_btn a .floating_sub_copy {
		width: 248px;
		height: 32px;
		border-radius: 40px;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
		top: 0;
	}
	.floating_btn a .pc {
		font-size: 16px;
		font-size: 1.6rem;
	}
	/* footer
	------------------------------------------------------------------------- */
	#footer {
		padding: 80px 0 32px;
		font-size: 14px;
		font-size: 1.4rem;
	}
	.wrap_footer_contents {
		width: min(95%, 1120px);
	}
	.footer_logo {
		font-size: 32px;
		font-size: 3.2rem;
		margin-bottom: 8px;
	}
	#footer address {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 8px;
	}
	#footer address span {
		margin-bottom: 0;
	}
	.footer_mail {
		gap: 8px;
		letter-spacing: 0.1em;
		margin-top: 0;
	}
	.footer_nav {
		margin-top: 32px;
	}
	.footer_nav ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
	.footer_nav li {
		margin-bottom: 0;
		padding: 0 24px;
		position: relative;
		z-index: 1;
	}
	.footer_nav li::after {
		content: "|";
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.footer_nav li a {
		font-size: 14px;
		font-size: 1.4rem;
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.footer_nav li a:hover {
		color: #FF8002;
	}
	.footer_nav li:first-child {
		padding-left: 0;
	}
	.footer_nav li:last-child {
		padding-right: 0;
	}
	.footer_nav li:last-child::after {
		content: none;
	}
	.copyright {
		font-size: 14px;
		font-size: 1.4rem;
		padding-top: 32px;
		margin-top: 40px;
	}
	.copyright span {
		display: block;
		width: min(95%, 1120px);
		margin: 0 auto;
		text-align: right;
	}
	.thanks_txt {
		display: flex;
		justify-content: center;
	}
}