@charset "UTF-8";
/*

	viewport settings

**************************************************/
/*

	font setting

**************************************************/
/*

	clearfix settings

**************************************************/
/*

	boxsizing settings

**************************************************/
/*

	opacity settings

**************************************************/
/*

	border-radius settings

**************************************************/
/*

	drop shadow settings

**************************************************/
/*

	vertical align setting

**************************************************/
/*

	flexbox layout setting

**************************************************/
/*

	hover transition

**************************************************/
/* http://meyerweb.com/eric/tools/css/reset/ 
	v2.0 | 20110126
	License: none (public domain)
*/
html * {
	box-sizing: border-box;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after {
	content: '';
	content: none;
}

q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input, button, textarea, select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
}

html {
	font-size: 62.5%;
}

body {
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	padding-bottom: 16vw;
	color: #333;
}

body.gapless {
	padding-bottom: 0;
}

a * {
	pointer-events: none;
}

img {
	max-width: 100%;
}

@media screen and (min-width: 750px) {
	body {
		padding-bottom: 120px;
	}
}

.spnone {
	display: none;
}

@media screen and (min-width: 750px) {
	.spnone {
		display: block;
	}
}

.pcnone {
	display: block;
}

@media screen and (min-width: 750px) {
	.pcnone {
		display: none;
	}
}

.section_head {
	text-align: center;
	margin-bottom: 6vw;
}

.section_ttle {
	font-size: 6.4vw;
	font-weight: 700;
}

@media screen and (min-width: 750px) {
	.section_head {
		margin-bottom: 45px;
	}
	.section_ttle {
		font-size: 48px;
	}
}

.header_inner {
	padding: 4.26666667vw 5.33333vw;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: center;
}

.header_logo {
	width: 40vw;
}

.header_logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.header_utility {
	margin-left: auto;
}

.header_utility p {
	font-size: 2.666666667vw;
	text-align: right;
	line-height: 1.2;
}

.header_utility._flex-start {
	margin-left: 3.2vw;
}

@media (min-width: 750px) {
	.header_inner {
		max-width: 940px;
		margin: 0 auto;
		padding: 20px 0;
	}
	.header_logo {
		width: 148px;
	}
	.header_utility {
		margin-left: auto;
	}
	.header_utility p {
		font-size: 10px;
	}
	.header_utility span {
		margin-left: 1em;
	}
	.header_utility._flex-start {
		margin-left: 24px;
	}
}

.mv {
	margin-bottom: 6.66667vw;
}

.mv img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.mv_note {
	padding: 2.66667vw 5.33333vw 0;
}

.mv_note p {
	font-size: 2.93333vw;
	line-height: 1.2;
}

@media (min-width: 750px) {
	.mv {
		max-width: 940px;
		margin: 0 auto 34px;
	}
	.mv_note {
		padding: 10px 0 0;
		text-align: right;
	}
	.mv_note p {
		font-size: 12px;
	}
}

.point {
	margin: calc(50 / 375 * 100vw) 0 0;
}

.point_head {
	text-align: center;
	margin-bottom: 5.86667vw;
}

.point_logo {
	width: 39.73333vw;
	margin: 0 auto 4vw;
}

.point_logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.point_ttle {
	letter-spacing: -0.26667vw;
	font-size: 6.4vw;
	font-weight: 700;
}

.point_body {
	padding: 9.33333vw 5.33333vw 11.33333vw;
	background: #333;
}

.point_row {
	text-align: center;
}

.point_row + .point_row {
	margin-top: 14vw;
}

.point_sttle {
	text-align: center;
	color: #fff;
	font-size: 6.4vw;
	font-weight: 700;
	letter-spacing: -0.53333vw;
	display: inline-block;
	padding: 0 0.66667vw;
	margin-bottom: 7.6vw;
	background: linear-gradient(transparent 60%, #ea5405 60%);
}

.point_card {
	text-align: left;
	position: relative;
	background: #fff;
	border-radius: 1.6vw;
	padding: 7.33333vw 8vw 4vw;
}

.point_card_head {
	margin-bottom: 5.33333vw;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding-top: 30.66667vw;
}

.point_card_ttle {
	letter-spacing: -0.53333vw;
	font-weight: 700;
	font-style: italic;
	line-height: 1;
	color: #ea5405;
	position: absolute;
}

.point_card_ttle .sm {
	font-size: 6.4vw;
	line-height: 1.5;
}

.point_card_ttle .md {
	font-size: calc( 6.4vw * 1.4);
	line-height: 1;
}

.point_card_ttle .lg {
	font-size: calc( 6.4vw * 1.6);
}

.point_card_ttle .xlg {
	font-size: calc( 6.4vw * 1.8);
}

.point_card_ttle._floated {
	padding-left: 32vw;
}

.point_card_ttle._01 {
	top: 6.66667vw;
	left: 7.33333vw;
}

.point_card_ttle._02 {
	top: 6.66667vw;
	right: 7.33333vw;
}

.point_card_ttle._04 {
	color: #333;
	top: 4vw;
	right: 7.33333vw;
}

.point_card_ttle._05 {
	color: #333;
	top: 6.66667vw;
	left: 7.33333vw;
	z-index: 10;
}

.point_card_ttle._05 span {
	text-shadow: 0.53333vw 0.53333vw 0 #fff, -0.53333vw 0.53333vw 0 #fff, 0.53333vw -0.53333vw 0 #fff, -0.53333vw -0.53333vw 0 #fff;
}

.point_card_ttle .astarisk {
	vertical-align: top;
	font-size: 2.66667vw;
	color: #333;
	position: relative;
	top: 1.33333vw;
	left: 1.33333vw;
	font-style: normal;
}

.point_card_img {
	width: 35.73333vw;
	position: absolute;
	z-index: 9;
}

.point_card_img img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.point_card_img._01 {
	top: -1.33333vw;
	right: 2.66667vw;
}

.point_card_img._02 {
	top: -1.33333vw;
	left: 2.66667vw;
}

.point_card_img._03 {
	top: -1.33333vw;
	right: 2.66667vw;
}

.point_card_img._04 {
	top: -1.33333vw;
	left: 2.66667vw;
}

.point_card_img._05 {
	top: -1.33333vw;
	right: 2.66667vw;
}

.point_card_body {
	margin-top: 5.33333vw;
}

.point_card_body p {
	font-size: 3.73333vw;
	line-height: 1.4;
}

.point_card_body p.note {
	margin-top: 4vw;
	font-size: 2.93333vw;
	color: #333;
	font-weight: 400;
}

.point_card_column {
	margin-top: 8vw;
}

.point_card_sttle {
	font-size: 4vw;
	margin-bottom: 3.06667vw;
}

.point_card_ig img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.point_card_ig figcaption {
	letter-spacing: -0.26667vw;
	font-weight: 400;
	line-height: 1.2;
	margin-top: 2.66667vw;
	font-size: 3.73333vw;
}

.point_card_foot {
	margin-top: 2.66667vw;
	text-align: right;
}

.point_card_foot a {
	color: #333;
	font-size: 2.66667vw;
}

.point_card_lines {
	border-top: 0.4vw dotted #ea5405;
	border-bottom: 0.4vw dotted #ea5405;
	padding: 4vw 0 1.33333vw;
}

.point_card_lines p {
	letter-spacing: -0.26667vw;
	font-size: 3.46667vw;
}

.point_card_lines p.text-01 {
	color: #ea5405;
	font-size: 7.2vw;
	font-weight: 700;
	font-style: italic;
}

.point_card_lines p.text-01 .en {
	font-family: "Helvetica";
}

.point_card_lines p.text-01 .em {
	font-size: calc( 7.2vw * 1.5);
}

.point_card_list {
	margin-top: 3.73333vw;
}

.point_card_list li {
	font-size: 2.93333vw;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -0.26667vw;
}

.point_card_note {
	margin-top: 3.73333vw;
	font-size: 2.93333vw;
}

.point_add {
	font-weight: 400;
	text-align: center;
	font-size: 26.66667vw;
	line-height: 1;
	color: #ea5405;
}

@media screen and (min-width: 750px) {
	.point {
		margin: 80px 0 0;
	}
	.point_head {
		text-align: center;
		margin-bottom: 44px;
	}
	.point_logo {
		width: 298px;
		margin: 0 auto 30px;
	}
	.point_ttle {
		letter-spacing: normal;
		font-size: 48px;
	}
	.point_body {
		padding: 70px 0 85px;
	}
	.point_row {
		max-width: 940px;
		margin: 0 auto;
	}
	.point_row + .point_row {
		margin-top: 100px;
	}
	.point_sttle {
		font-size: 48px;
		letter-spacing: normal;
		padding: 0 5px;
		margin-bottom: 57px;
	}
	.point_card {
		border-radius: 12px;
		padding: 55px 60px 30px;
	}
	.point_card_head {
		margin-bottom: 40px;
		padding-top: 180px;
	}
	.point_card_ttle {
		letter-spacing: normal;
	}
	.point_card_ttle .sm {
		font-size: 48px;
	}
	.point_card_ttle .md {
		font-size: calc( 48px * 1.4);
	}
	.point_card_ttle .lg {
		font-size: calc( 48px * 1.6);
	}
	.point_card_ttle .xlg {
		font-size: calc( 48px * 1.8);
	}
	.point_card_ttle._floated {
		padding-left: 240px;
	}
	.point_card_ttle._01 {
		top: 50px;
		left: 55px;
	}
	.point_card_ttle._02 {
		top: 50px;
		right: auto;
		left: 300px;
	}
	.point_card_ttle._04 {
		color: #333;
		top: 50px;
		right: auto;
		left: 260px;
		z-index: 10;
	}
	.point_card_ttle._04 span {
		text-shadow: 4px 4px 0 #fff, -4px 4px 0 #fff, 4px -4px 0 #fff, -4px -4px 0 #fff;
	}
	.point_card_ttle._05 {
		color: #333;
		top: 30px;
		left: 55px;
	}
	.point_card_ttle._05 span {
		text-shadow: 4px 4px 0 #fff, -4px 4px 0 #fff, 4px -4px 0 #fff, -4px -4px 0 #fff;
	}
	.point_card_img {
		width: 268px;
	}
	.point_card_img._01 {
		top: -10px;
		right: 20px;
	}
	.point_card_img._02 {
		top: -10px;
		left: 20px;
	}
	.point_card_img._03 {
		top: -10px;
		right: 20px;
	}
	.point_card_img._04 {
		top: -10px;
		left: 20px;
	}
	.point_card_img._05 {
		top: -10px;
		right: 20px;
	}
	.point_card_body {
		margin-top: 40px;
	}
	.point_card_body p {
		font-size: 28px;
		line-height: 1.4;
	}
	.point_card_body p.note {
		margin-top: 30px;
		font-size: 22px;
	}
	.point_card_column {
		margin-top: 60px;
	}
	.point_card_sttle {
		font-size: 30px;
		margin-bottom: 23px;
	}
	.point_card_ig figcaption {
		letter-spacing: normal;
		margin-top: 20px;
		font-size: 28px;
	}
	.point_card_foot {
		margin-top: 20px;
		text-align: right;
	}
	.point_card_foot a {
		color: #333;
		font-size: 20px;
	}
	.point_card_lines {
		border-top: 3px dotted #ea5405;
		border-bottom: 3px dotted #ea5405;
		padding: 30px 0 10px;
		text-align: center;
	}
	.point_card_lines p {
		letter-spacing: normal;
		font-size: 26px;
	}
	.point_card_lines p.text-01 {
		font-size: 54px;
	}
	.point_card_lines p.text-01 .em {
		font-size: calc( 54px * 1.5);
	}
	.point_card_list {
		margin-top: 28px;
	}
	.point_card_list li {
		font-size: 22px;
		letter-spacing: normal;
	}
	.point_card_note {
		margin-top: 28px;
		font-size: 22px;
	}
	.point_add {
		font-size: 200px;
	}
}

.set {
	margin-bottom: 10.6666667vw;
	padding: 9.33333vw 5.33333vw 8vw;
	background: #333;
}

.set_head {
	margin-bottom: 30.66667vw;
	text-align: center;
}

.set_ttle {
	color: #fff;
	font-size: 6.4vw;
	font-weight: 700;
	line-height: 1.5;
}

.set_ttle .marker {
	background: linear-gradient(transparent 70%, #ea5405 70%);
	display: inline-block;
}

.set_card {
	background: #fff;
	border-radius: 1.6vw;
	padding: 35.06667vw 6.13333vw 7.73333vw;
	position: relative;
}

.set_card_img {
	position: absolute;
	left: 50%;
	top: -26.8vw;
	width: 53.6vw;
	margin-left: -26.8vw;
}

.set_card_img img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.set_card_label {
	font-size: 4.26667vw;
	font-weight: 700;
	margin-bottom: 3.2vw;
	letter-spacing: -0.26667vw;
	text-align: center;
}

.set_card_lists {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 2.93333vw;
}

.set_card_lists li {
	flex: 1 1;
	background: #eee;
	border-radius: 1.6vw;
	padding: 1.33333vw 0;
}

.set_card_lists li figure > div {
	height: 16.13333vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
}

.set_card_lists li figure img {
	margin: 0 auto;
}

.set_card_lists li figure img.img_01 {
	height: 12.8vw;
	width: auto;
}

.set_card_lists li figure img.img_02 {
	height: 10.26667vw;
	width: auto;
}

.set_card_lists li figure img.img_03 {
	height: 16.13333vw;
	width: auto;
}

.set_card_lists li figure figcaption {
	text-align: center;
	font-size: 2.4vw;
	margin-top: 2.66667vw;
}

.set_card_note {
	font-weight: 400;
	font-size: 3.73333vw;
	line-height: 1.2;
}

.set_sttle {
	text-align: center;
	font-size: 7.2vw;
	font-weight: 700;
	font-style: italic;
	margin-bottom: 6vw;
	letter-spacing: -0.26667vw;
}

.set_ssttle {
	margin-bottom: 10vw;
	text-align: center;
	letter-spacing: -0.53333vw;
	color: #ea5405;
	font-size: calc( 8vw * .8);
	font-weight: 700;
	font-style: italic;
	line-height: 1.3;
}

.set_ssttle span {
	font-size: 8vw;
}

.set_text {
	margin-top: 5.06667vw;
	text-align: center;
	font-size: 4.26667vw;
	font-weight: 700;
	margin-bottom: 4.8vw;
	line-height: 1.5;
}

.set_text span {
	display: inline-block;
	color: #ea5405;
	font-weight: 800;
	font-size: 12vw;
	font-style: italic;
	background: linear-gradient(transparent 70%, rgba(234, 84, 5, 0.3) 70%);
}

@media (min-width: 750px) {
	.set {
		margin-bottom: 64px;
		padding: 70px 40px 60px;
	}
	.set_head {
		margin-bottom: 230px;
	}
	.set_ttle {
		font-size: 48px;
	}
	.set_card {
		max-width: 940px;
		margin: 0 auto;
		border-radius: 12px;
		padding: 263px 46px 58px;
	}
	.set_card_img {
		top: -201px;
		width: 402px;
		margin-left: -201px;
	}
	.set_card_label {
		font-size: 32px;
		margin-bottom: 24px;
		letter-spacing: normal;
	}
	.set_card_lists {
		gap: 22px;
	}
	.set_card_lists li {
		border-radius: 12px;
		padding: 10px 0;
	}
	.set_card_lists li figure > div {
		height: 121px;
	}
	.set_card_lists li figure img.img_01 {
		height: 96px;
	}
	.set_card_lists li figure img.img_02 {
		height: 77px;
	}
	.set_card_lists li figure img.img_03 {
		height: 121px;
	}
	.set_card_lists li figure figcaption {
		text-align: center;
		font-size: 18px;
		margin-top: 20px;
	}
	.set_card_note {
		font-size: 28px;
	}
	.set_sttle {
		font-size: 54px;
		margin-bottom: 45px;
		letter-spacing: normal;
	}
	.set_ssttle {
		margin-bottom: 75px;
		letter-spacing: normal;
		font-size: calc( 60px * .8);
	}
	.set_ssttle span {
		font-size: 60px;
	}
	.set_text {
		margin-top: 38px;
		font-size: 32px;
		margin-bottom: 36px;
	}
	.set_text span {
		font-size: 73px;
	}
}

.service {
	margin: calc(50 / 375 * 100vw) 0;
}

.service_head {
	text-align: center;
	margin-bottom: 5.2vw;
}

.service_ttle {
	font-size: 7.2vw;
	font-weight: 700;
	letter-spacing: -0.26667vw;
}

.service_ttle span {
	font-size: calc( 7.2vw * .8);
}

.service_ttle span.em {
	font-size: 7.2vw;
	color: #ea5405;
}

.service_container {
	padding: 0 3.33333vw;
}

.service_img img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.service_copy {
	position: relative;
	margin-top: -5.33333vw;
	margin-bottom: 5.33333vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: flex-start;
}

.service_copy_baloon {
	margin-right: 2.66667vw;
	width: 25.06667vw;
	height: 25.06667vw;
	border-radius: 12.53333vw;
	background: #ea5405;
	color: #fff;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	font-size: 3.73333vw;
	line-height: 1.2;
}

.service_copy_price {
	font-size: 7.46667vw;
	font-weight: 700;
	line-height: 1;
	width: calc( 100% - 25.06667vw);
	padding-top: 8vw;
}

.service_copy_price .vertical {
	writing-mode: vertical-rl;
	font-size: 3.73333vw;
	font-weight: 700;
	line-height: 1;
}

.service_copy_price .em {
	font-family: "Helvetica";
	color: #ea5405;
	font-size: calc( 7.46667vw * 1.6);
	font-weight: 700;
	line-height: 1;
}

.service_copy_price .note {
	position: relative;
	top: -2.66667vw;
	font-size: 3.2vw;
	line-height: 1;
}

.service_list {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: stretch;
	margin-bottom: 3.46667vw;
}

.service_list_item {
	flex: 1 1;
	padding: 0 0;
}

.service_list_item .label {
	background: #333;
	border-radius: 0.8vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	height: 5.33333vw;
	width: 21.33333vw;
	margin: 0 auto 1.6vw;
	color: #fff;
	font-size: 2.93333vw;
}

.service_list_item .price {
	font-weight: 700;
	text-align: center;
}

.service_list_item .price span {
	font-size: 3.2vw;
}

.service_list_item .price span.number {
	color: #ea5405;
	font-size: calc( 4.26667vw * 1.6);
	font-weight: 700;
	font-family: "Helvetica";
}

.service_list_item .price span.text {
	font-size: 4.26667vw;
}

.service_list_item .price span.note {
	display: inline-block;
	margin-top: 1.73333vw;
	font-size: 2.93333vw;
}

.service_list_item + .service_list_item {
	border-left: 0.26667vw dotted #999;
}

.service_note li {
	font-size: 2.93333vw;
	line-height: 1.2;
	font-weight: 400;
}

.service_lead {
	margin: 6.66667vw 0;
	text-align: center;
}

.service_lead_ttle {
	letter-spacing: -0.26667vw;
	font-size: 7.2vw;
	font-weight: 700;
}

.service_lead_ttle span {
	font-size: calc( 7.2vw * .8);
}

.service_lead_ttle span.em {
	color: #ea5405;
	font-size: 7.2vw;
}

.service_lead_text {
	margin-top: 4.8vw;
	font-size: 4.26667vw;
	line-height: 1.4;
	font-weight: 700;
	letter-spacing: -0.26667vw;
}

.service_lead_text span {
	color: #ea5405;
}

.service_lead_note {
	margin: 4vw auto 0;
	padding-left: 1em;
	width: fit-content;
	text-indent: -1em;
	font-size: 2.93333vw;
	text-align: left;
	line-height: 1.2;
}

.service_trigger {
	background: #333;
	height: 12vw;
	padding: 0 4.66667vw;
	border-radius: 1.6vw;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: center;
	color: #fff;
	font-size: 3.2vw;
	position: relative;
}

.service_trigger:after {
	display: block;
	position: absolute;
	top: 0;
	right: 5.33333vw;
	bottom: 0;
	margin: auto;
	width: 1.86667vw;
	height: 1.86667vw;
	border-top: solid 0.8vw #fff;
	border-right: solid 0.8vw #fff;
	transform: rotate(135deg);
	content: "";
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
}

.service_trigger.is-active:after {
	transform: rotate(-45deg);
	content: "";
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
}

.service_pannel {
	display: none;
	margin-top: 4vw;
}

.service_pannel_lead {
	margin-bottom: 4.26667vw;
	font-size: 3.2vw;
	line-height: 1.2;
}

.service_table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	border: 0.26667vw solid #888;
	margin-bottom: 2.66667vw;
}

.service_table thead tr td {
	color: #fff;
	background: #888;
	padding: 2.66667vw 0;
	text-align: center;
	font-size: 3.2vw;
}

.service_table tbody tr td {
	box-sizing: border-box;
	vertical-align: middle;
	border: 0.26667vw solid #888;
	padding: 2.66667vw;
	font-size: 3.2vw;
}

.service_table tbody tr td.is-center {
	text-align: center;
}

.service_table tbody tr td:first-child {
	width: 54.8vw;
}

.service_table tbody tr td p {
	line-height: 1.5;
	text-indent: -1em;
	padding-left: 1em;
}

.service_table tbody tr td p span {
	color: #ea5405;
}

.service_table tbody tr td p strong {
	font-weight: 700;
}

.service_table tbody tr td p + p {
	margin-top: 1.33333vw;
}

.service_table tbody tr td .sm {
	font-weight: 700;
	line-height: 1.5;
	font-size: 4.8vw;
}

.service_table tbody tr td .unit, .service_table tbody tr td .md {
	font-weight: 700;
	line-height: 1.5;
	font-size: 5.6vw;
}

.service_table tbody tr td .number {
	font-family: "Helvetica";
	color: #ea5405;
	font-weight: 700;
	font-size: calc( 5.6vw * 1.5);
}

.service_table + .service_note {
	margin-bottom: 4.66667vw;
}

@media (min-width: 750px) {
	.service {
		margin: 80px 0;
	}
	.service_head {
		margin-bottom: 40px;
	}
	.service_ttle {
		font-size: 54px;
		letter-spacing: normal;
	}
	.service_ttle span {
		font-size: calc( 54px * .8);
	}
	.service_ttle span.em {
		font-size: 54px;
	}
	.service_container {
		padding: 0;
		max-width: 940px;
		margin: 0 auto;
	}
	.service_copy {
		margin-top: -40px;
		margin-bottom: 40px;
	}
	.service_copy_baloon {
		margin-right: 20px;
		width: 188px;
		height: 188px;
		border-radius: 94px;
		font-size: 28px;
	}
	.service_copy_price {
		font-size: 56px;
		width: calc( 100% - 188px);
		padding-top: 60px;
	}
	.service_copy_price .vertical {
		writing-mode: vertical-rl;
		font-size: 28px;
	}
	.service_copy_price .em {
		font-size: calc( 56px * 1.6);
	}
	.service_copy_price .note {
		top: 0px;
		font-size: 24px;
	}
	.service_list {
		margin-bottom: 26px;
	}
	.service_list_item .label {
		border-radius: 6px;
		height: 40px;
		width: 160px;
		margin: 0 auto 12px;
		font-size: 22px;
	}
	.service_list_item .price span {
		font-size: 24px;
	}
	.service_list_item .price span.number {
		font-size: calc( 32px * 1.6);
	}
	.service_list_item .price span.text {
		font-size: 32px;
	}
	.service_list_item .price span.note {
		margin-top: 20px;
		font-size: 22px;
	}
	.service_list_item + .service_list_item {
		border-left: 2px dotted #999;
	}
	.service_note li {
		font-size: 22px;
	}
	.service_lead {
		margin: 50px 0;
	}
	.service_lead_ttle {
		letter-spacing: normal;
		font-size: 54px;
	}
	.service_lead_ttle span {
		font-size: calc( 54px * .8);
	}
	.service_lead_ttle span.em {
		font-size: 54px;
	}
	.service_lead_text {
		margin-top: 36px;
		font-size: 32px;
		letter-spacing: normal;
	}
	.service_lead_note {
		margin-top: 16px;
		font-size: 22px;
		text-align: center;
	}
	.service_lead_note br {
		display: none;
	}
	.service_trigger {
		height: 90px;
		padding: 0 35px;
		border-radius: 12px;
		font-size: 24px;
		justify-content: center;
	}
	.service_trigger:after {
		right: 40px;
		width: 14px;
		height: 14px;
		border-top: solid 6px #fff;
		border-right: solid 6px #fff;
	}
	.service_pannel {
		margin-top: 30px;
	}
	.service_pannel_lead {
		margin-bottom: 32px;
		font-size: 24px;
		line-height: 1.2;
	}
	.service_table {
		border: 2px solid #888;
		margin-bottom: 20px;
	}
	.service_table thead tr td {
		padding: 20px 0;
		font-size: 24px;
	}
	.service_table tbody tr td {
		border: 2px solid #888;
		padding: 20px;
		font-size: 24px;
	}
	.service_table tbody tr td:first-child {
		width: 411px;
	}
	.service_table tbody tr td p + p {
		margin-top: 10px;
	}
	.service_table tbody tr td .sm {
		font-size: 36px;
	}
	.service_table tbody tr td .unit, .service_table tbody tr td .md {
		font-size: 42px;
	}
	.service_table tbody tr td .number {
		font-size: calc( 42px * 1.5);
	}
	.service_table + .service_note {
		margin-bottom: 35px;
	}
}

/* discount */
.discount {
	margin-top: 12.66667vw;
	margin-bottom: calc(48 / 375* 100vw);
	padding: calc(36 / 375 * 100vw) calc(22 / 375 * 100vw) calc(21 / 375 * 100vw);
	background-image: linear-gradient(0deg, rgba(234, 84, 5, 1), rgba(252, 136, 1, 1) 50%, rgba(239, 98, 4, 1));
	border-radius: calc(8 / 375 * 100vw);
	-webkit-border-radius: calc(8 / 375 * 100vw);	
	-moz-border-radius: calc(8 / 375 * 100vw);
	-ms-border-radius: calc(8 / 375 * 100vw);
	-o-border-radius: calc(8 / 375 * 100vw);
	box-sizing: content-box;
}
.discount_head {
	margin-bottom: calc(14 / 375 * 100vw);
}
.discount_head h2 {
	margin-bottom: calc(14 / 375 * 100vw);
	color: #fff;
}
.discount_head h2 > span {
	position: relative;
	display: block;
	margin: auto;
	width: fit-content;
	text-align: center;
	font-size: calc(16 / 375 * 100vw);
	font-weight: bold;
}
.discount_head h2 > span::before,
.discount_head h2 > span::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 1px;
	height: 1.25em;
	background-color: #fff;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
}
.discount_head h2 > span::before {
	left: -.75em;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
}
.discount_head h2 > span::after {
	right: -.75em;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
}
.discount_head_wrap {
	display: flex;
	align-items: baseline;
	justify-content: center;
	margin-top: calc(12 / 375 * 100vw);
	font-size: calc(44 / 375 * 100vw);
	font-weight: 900;
}
.discount_head_wrap strong {
	color: #fff200;
}
.discount_head_wrap small {
	font-size: .84em;
}
.discount_head_lead > span {
	display: block;
	margin: 0 auto calc(4 / 375 * 100vw);
	width: fit-content;
	font-size: calc(14 / 375 * 100vw);
	font-weight: 500;
	color: #fff;
}
.discount_head_lead_wrap {
	display: flex;
	gap: calc(2 / 375 * 100vw);
	align-items: baseline;
	justify-content: center;
	font-size: calc(49 / 375 * 100vw);
	font-weight: bold;
	color: #fff200;
	letter-spacing: -1px;
	line-height: 1;
}
.discount_head_lead_wrap strong {
	transform: translateY(calc(4 / 375 * 100vw));
	font-family: Helvetica;
	-webkit-transform: translateY(calc(4 / 375 * 100vw));
	-moz-transform: translateY(calc(4 / 375 * 100vw));
	-ms-transform: translateY(calc(4 / 375 * 100vw));
	-o-transform: translateY(calc(4 / 375 * 100vw));
}
.discount_head_lead_wrap small {
	font-size: .408em;
}
.discount_head_lead_wrap em {
	margin: 0 -.5em;
	font-size: .408em;
	letter-spacing: normal;
}
.discount_head_lead_wrap i {
	font-size: .408em;
	color: #fff;
}
.discount_head_lead_wrap span {
	font-size: .5714em;
	color: #fff;
}
.discount_content {
	padding: calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
	background-color: #fff;
	border-radius: calc(8 / 375 * 100vw);
	-webkit-border-radius: calc(8 / 375 * 100vw);
	-moz-border-radius: calc(8 / 375 * 100vw);
	-ms-border-radius: calc(8 / 375 * 100vw);
	-o-border-radius: calc(8 / 375 * 100vw);
}
.discount_content_lead {
	margin-bottom: calc(16 / 375 * 100vw);
	padding-left: 4em;
	text-indent: -4em;
	font-size: calc(12 / 375 * 100vw);
	line-height: normal;
}
.discount_slide dt {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: calc(45 / 375 * 100vw);
	font-size: calc(12 / 375 * 100vw);
	color: #fff;
	font-weight: 500;
	border-radius: calc(6 / 375 * 100vw);
	background-color: #333;
	-webkit-border-radius: calc(6 / 375 * 100vw);
	-moz-border-radius: calc(6 / 375 * 100vw);
	-ms-border-radius: calc(6 / 375 * 100vw);
	-o-border-radius: calc(6 / 375 * 100vw);
}
.discount_slide dt::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 5.33333vw;
	width: 1.86667vw;
	height: 1.86667vw;
	margin-top: -1.86667vw;
	border-top: solid 0.8vw #fff;
	border-right: solid 0.8vw #fff;
	transform: rotate(135deg);
}
.discount_slide dt.is-active::after {
	margin-top: -1.86667vw;
	transform: rotate(315deg);
	content: "";
}
.discount_slide dd {
	display: none;
	padding-top: calc(47 / 375 * 100vw);
}
.discount_item {
	position: relative;
	padding: calc(40 / 375 * 100vw) calc(20 / 375 * 100vw) calc(27 / 375 * 100vw);
	background-color: #fdeee6;
}
.discount_item + .discount_item {
	margin-top: calc(45 / 375 * 100vw);
}
.discount_img {
	position: absolute;
	top: calc(-29 / 375 * 100vw);
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto;
	width: calc(54 / 375 * 100vw);
	height: calc(54 / 375 * 100vw);
	background-color: #fff;
	border: solid calc(2 / 375 * 100vw) #333;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
}
.discount_item:nth-child(1) .discount_img img {
	width: calc(32 / 375 * 100vw);
}
.discount_item:nth-child(2) .discount_img img {
	width: calc(24 / 375 * 100vw);
}
.discount_item h3 {
	margin-bottom: calc(14 / 375 * 100vw);
	font-size: calc(16 / 375 * 100vw);
	color: #ea5405;
	font-weight: bold;
	text-align: center;
}
.discount_before_price {
	position: relative;
	margin-bottom: calc(52 / 375 * 100vw);
	padding: calc(8 / 375 * 100vw) 0;
	font-size: calc(14 / 375 * 100vw);
	background-color: #ccc;
}
.discount_before_price::after {
	content: "";
	position: absolute;
	top: calc(100% + 3.2vw);
	left: 0;
	right: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: calc(24 / 375 * 100vw) solid transparent;
	border-left: calc(24 / 375 * 100vw) solid transparent;
	border-top: calc(28 / 375 * 100vw) solid #ea5405;
	border-bottom: 0;
}
.discount_before_price span {
	display: block;
	text-align: center;
	line-height: normal;
	color: #fff;
	font-weight: bold;
	letter-spacing: 1.4px;
}
.discount_after_price {
	padding: calc(14 / 375 * 100vw) calc(16 / 375 * 100vw);
	background-color: #ea5405;
}
.discount_after_price > span {
	display: block;
	text-align: center;
	font-size: calc(14 / 375 * 100vw);
	color: #fff;
	font-weight: bold;
	line-height: normal;
}
.discount_after_price_wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: calc(8 / 375 * 100vw);
	padding-top: calc(12 / 375 * 100vw);
	border-top: 1px solid #fff;
}
.discount_after_price_wrap i {
	font-size: calc(14 / 375 * 100vw);
	font-weight: bold;
	color: #fff;
}
.discount_after_price_flex {
	display: flex;
	align-items: baseline;
	color: #fff200;
	font-weight: bold;
	font-size: calc(24 / 375 * 100vw);
}
.discount_after_price_flex strong {
	transform: translateY(calc(1 / 376 * 100vw));
	font-family: Helvetica;
	-webkit-transform: translateY(calc(1 / 376 * 100vw));
	-moz-transform: translateY(calc(1 / 376 * 100vw));
	-ms-transform: translateY(calc(1 / 376 * 100vw));
	-o-transform: translateY(calc(1 / 376 * 100vw));
}
.discount_after_price_flex small {
	font-size: .666666em;
}
.discount_after_price_flex span {
	margin: 0 -.5em;
	font-size: .666666em;
}
.discount_note {
	margin-top: calc(12 / 375 * 100vw);
	font-size: calc(10 / 375 * 100vw);
	line-height: normal;
}

@media screen and (min-width: 750px) {
	.discount {
		margin: 0 auto 64px;
		padding: 36px 56px 42px;
		max-width: 820px;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		-ms-border-radius: 8px;
		-o-border-radius: 8px;
	}
	.discount_head {
		margin-bottom: 20px;
	}
	.discount_head h2 {
		margin-bottom: 24px;
	}
	.discount_head h2 > span {
		font-size: 16px;
	}
	.discount_head_wrap {
		margin-top: 12px;
		font-size: 44px;
	}
	.discount_head_lead {
		display: flex;
		gap: 8px;
		align-items: center;
		justify-content: center;
	}
	.discount_head_lead > span {
		margin: 0;
		font-size: 14px;
	}
	.discount_head_lead_wrap {
		gap: 2px;
		font-size: 49px;
	}
	.discount_head_lead_wrap strong {
		transform: unset;
		-webkit-transform: unset;
		-moz-transform: unset;
		-ms-transform: unset;
		-o-transform: unset;
}
	.discount_content {
		padding: 20px 48px;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		-ms-border-radius: 8px;
		-o-border-radius: 8px;
	}
	.discount_content_lead {
		margin-bottom: 32px;
		padding-left: 0;
		text-indent: 0;
		font-size: 12px;
		text-align: center;
	}
	.discount_slide dt {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 70px;
		font-size: 18px;
		color: #fff;
		font-weight: bold;
		border-radius: 6px;
		background-color: #333;
	}
	.discount_slide dt::after {
		right: 40px;
		width: 14px;
		height: 14px;
		margin-top: -14px;
		border-top: solid 6px #fff;
		border-right: solid 6px #fff;
	}
	.discount_slide dt.is-active::after {
		top: 44px;
		margin-top: -14px;
	}
	.discount_slide dd {
		margin-top: 32px;
		padding-top: 32px;
	}
	.discount_item_wrap {
		display: flex;
		justify-content: center;
		gap: 24px;
	}
	.discount_item {
		padding: 40px 20px 27px;
		max-width: 300px;
		width: 100%;
	}
	.discount_item + .discount_item {
		margin-top: 0;
	}
	.discount_img {
		top: -29px;
		width: 54px;
		height: 54px;
		border: solid 2px #333;
	}
	.discount_item:nth-child(1) .discount_img img {
		width: 32px;
	}
	.discount_item:nth-child(2) .discount_img img {
		width: 24px;
	}
	.discount_item h3 {
		margin-bottom: 14px;
		font-size: 16px;
	}
	.discount_before_price {
		margin-bottom: 52px;
		padding: 8px 0;
		font-size: 14px;
	}
	.discount_before_price::after {
		top: calc(100% + 12px);
		border-right: 24px solid transparent;
		border-left: 24px solid transparent;
		border-top: 28px solid #ea5405;
	}
	.discount_after_price {
		padding: 14px 16px;
	}
	.discount_after_price > span {
		font-size: 14px;
	}
	.discount_after_price_wrap {
		margin-top: 8px;
		padding-top: 12px;
	}
	.discount_after_price_wrap i {
		font-size: 14px;
	}
	.discount_after_price_flex {
		font-size: 24px;
	}
	.discount_after_price_flex strong {
		transform: translateY(0);
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
	}
	.discount_note {
		margin-top: 12px;
		font-size: 10px;
	}
}

section.prices {
	margin: calc(50 / 375 * 100vw) 0;
}

.prices_head {
	margin-bottom: 5.33333vw;
	text-align: center;
}

.prices_logo {
	margin: 0 auto 4vw;
	width: 39.73333vw;
}

.prices_logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.prices_ttle {
	font-size: 6.4vw;
	font-weight: 700;
}

.prices_sec_head {
	position: relative;
}

.prices_sec_head img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.prices_sec_box {
	width: calc( 100% - 26.66667vw);
	height: 21.33333vw;
	background: #fff;
	position: absolute;
	bottom: -10.66667vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
}

.prices_sec_sttle {
	font-size: 4.26667vw;
	font-weight: 700;
	margin-bottom: 4vw;
}

.prices_sec_ammount {
	letter-spacing: 0.26667vw;
	font-size: 4.53333vw;
	font-weight: 500;
}

.prices_sec_ammount .number {
	color: #ea5405;
	font-weight: 700;
	font-family: "Helvetica";
	font-size: calc( 7.25333vw);
}

.prices_sec_body {
	padding: 16.66667vw 1.33333vw 0;
}

.prices_sec_types {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: stretch;
	margin-bottom: 4.66667vw;
}

.prices_sec_types > div {
	flex: 1 1;
	padding: 0 2.66667vw;
}

.prices_sec_types > div .label {
	letter-spacing: -0.26667vw;
	background: #333;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	border-radius: 0.8vw;
	color: #fff;
	padding: 2.66667vw 0;
	font-size: 2.93333vw;
	line-height: 1.2;
	text-align: center;
	margin-bottom: 2vw;
}

.prices_sec_types > div .prices {
	padding: 0;
	text-align: center;
	letter-spacing: -0.26667vw;
}

.prices_sec_types > div .prices span {
	font-size: 3.2vw;
	display: inline-block;
	margin-bottom: 1.73333vw;
}

.prices_sec_types > div .prices span.number {
	font-weight: 700;
	margin-bottom: 0.93333vw;
	font-family: "Helvetica";
	color: #ea5405;
	font-size: calc( 4.26667vw * 1.6);
}

.prices_sec_types > div .prices span .text {
	font-size: 2.93333vw;
}

.prices_sec_types > div .prices span .number_sm {
	font-weight: 700;
	font-family: "Helvetica";
	color: #ea5405;
	font-size: calc( 2.93333vw * 1.6);
}

.prices_sec_types > div + div {
	border-left: 0.26667vw dotted #999;
}

.prices_note {
	font-size: 2.93333vw;
	margin: 0 2.66667vw;
}

@media (min-width: 750px) {
	section.prices {
		margin: 80px 0;
	}
	.prices_head {
		margin-bottom: 40px;
	}
	.prices_logo {
		margin: 0 auto 30px;
		width: 298px;
	}
	.prices_ttle {
		font-size: 48px;
	}
	.prices_body {
		max-width: 940px;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.prices_sec {
		width: 48.5%;
	}
	.prices_sec:nth-child(even) {
		margin-left: auto;
	}
	.prices_sec_head {
		position: relative;
	}
	.prices_sec_box {
		width: calc( 100% - 100px);
		height: 160px;
		bottom: -80px;
	}
	.prices_sec_sttle {
		font-size: 20px;
		margin-bottom: 15px;
	}
	.prices_sec_ammount {
		letter-spacing: normal;
		font-size: 24px;
	}
	.prices_sec_ammount .number {
		font-size: calc( 30px * 1.6);
	}
	.prices_sec_body {
		padding: 105px 0 0;
	}
	.prices_sec_types {
		margin-bottom: 30px;
	}
	.prices_sec_types > div {
		padding: 0 10px;
	}
	.prices_sec_types > div .label {
		letter-spacing: -1px;
		background: #333;
		padding: 0 0;
		height: 80px;
		border-radius: 6px;
		font-size: 15px;
		margin-bottom: 15px;
	}
	.prices_sec_types > div .prices {
		padding: 0;
		text-align: center;
		letter-spacing: -2px;
	}
	.prices_sec_types > div .prices span {
		font-size: 20px;
		margin-bottom: 13px;
	}
	.prices_sec_types > div .prices span.number {
		margin-bottom: 7px;
		font-size: calc( 20px * 1.6);
	}
	.prices_sec_types > div .prices span .text {
		font-size: 14px;
	}
	.prices_sec_types > div .prices span .number_sm {
		font-size: calc( 14px * 1.6);
	}
	.prices_sec_types > div + div {
		border-left: 2px dotted #999;
	}
	.prices_note {
		flex-basis: 100%;
		font-size: 12px;
		margin: 0 0;
	}
}

.flow {
	padding: 13.33333vw 0 0;
	margin-bottom: 16vw;
}

.flow_body {
	background: #333;
	padding: 7.33333vw 5.33333vw 8vw;
	position: relative;
}

.flow_thumb {
	width: 34.53333vw;
	position: absolute;
	right: 8.53333vw;
	bottom: 36vw;
}

.flow_thumb img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.flow_row {
	background: #fff;
	padding: 8.66667vw 8vw;
	border-radius: 1.6vw;
	counter-increment: "flow_num";
}

.flow_row dt {
	font-size: 5.06667vw;
	font-weight: 700;
	margin-bottom: 5.33333vw;
	color: #ea5405;
}

.flow_row dd {
	padding-left: 1.5em;
	font-size: 4vw;
	line-height: 1.4;
}

.flow_row dd .cta_button {
	height: 18vw;
}

.flow_row:first-child dd {
	padding: 0;
}

.flow_row + .flow_row {
	margin-top: 10vw;
	position: relative;
}

.flow_row + .flow_row:before {
	display: block;
	position: absolute;
	top: -6.66667vw;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.66667vw 4vw 0 4vw;
	border-color: #ea5405 transparent transparent transparent;
	content: "";
}

.flow_note {
	padding: 2.66667vw 5.33333vw 0;
	font-size: 2.93333vw;
	font-weight: 400;
	letter-spacing: -0.26667vw;
}

@media screen and (min-width: 750px) {
	.flow {
		padding: 100px 0 0;
		margin-bottom: 120px;
	}
	.flow_body {
		padding: 55px 0 60px;
	}
	.flow_container {
		max-width: 780px;
		margin: 0 auto;
		position: relative;
	}
	.flow_thumb {
		width: 259px;
		position: absolute;
		right: 60px;
		bottom: 220px;
	}
	.flow_row {
		box-sizing: border-box;
		max-width: 780px;
		margin: 0 auto;
		padding: 65px 60px;
		border-radius: 12px;
	}
	.flow_row dt {
		font-size: 38px;
		margin-bottom: 40px;
	}
	.flow_row dd {
		font-size: 30px;
	}
		.flow_row dd .cta_button {
			margin: auto;
			max-width: 300px;
			height: 90px;
		}
	.flow_row + .flow_row {
		margin-top: 75px;
	}
	.flow_row + .flow_row:before {
		top: -55px;
		border-width: 35px 30px 0 30px;
	}
	.flow_note {
		padding: 20px 0;
		max-width: 780px;
		margin: 0 auto;
		font-size: 22px;
		letter-spacing: normal;
	}
}

.faq {
	margin-bottom: 18vw;
}

.faq_body {
	padding: 0 5.33333vw;
}

.faq_row {
	padding-bottom: 4.66667vw;
	border-bottom: 0.4vw dotted #ea5405;
}

.faq_row + .faq_row {
	margin-top: 4.66667vw;
}

.faq_trigger {
	background: #333;
	padding: 5.33333vw 13.33333vw 5.33333vw 12.66667vw;
	border-radius: 1.6vw;
	color: #fff;
	font-size: 4.26667vw;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
}

.faq_trigger:before {
	display: block;
	position: absolute;
	top: 4.53333vw;
	left: 4.26667vw;
	font-size: 6.4vw;
	color: #ea5405;
	font-family: "Helvetica";
	font-weight: 700;
	content: "Q.";
}

.faq_trigger:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 5.33333vw;
	width: 1.86667vw;
	height: 1.86667vw;
	margin-top: -1.86667vw;
	border-top: solid 0.8vw #fff;
	border-right: solid 0.8vw #fff;
	transform: rotate(135deg);
	content: "";
}

.faq_trigger.is-active:after {
	margin-top: -1.86667vw;
	transform: rotate(315deg);
	content: "";
}

.faq_pannel {
	display: none;
	padding: 4vw 0 0 11.46667vw;
	position: relative;
	font-size: 3.73333vw;
	line-height: 1.5;
}

.faq_pannel:before {
	display: block;
	position: absolute;
	top: 4vw;
	left: 4.8vw;
	font-size: 5.06667vw;
	color: #ea5405;
	font-family: "Helvetica";
	font-weight: 700;
	content: "A.";
}

@media screen and (min-width: 750px) {
	.faq {
		margin-bottom: 135px;
	}
	.faq_body {
		max-width: 780px;
		margin: 0 auto;
		padding: 0;
	}
	.faq_row {
		padding-bottom: 35px;
		border-bottom: 3px dotted #ea5405;
	}
	.faq_row + .faq_row {
		margin-top: 35px;
	}
	.faq_trigger {
		padding: 20px 100px 20px 75px;
		border-radius: 12px;
		font-size: 20px;
	}
	.faq_trigger:before {
		top: 14px;
		left: 32px;
		font-size: 32px;
	}
	.faq_trigger:after {
		right: 40px;
		width: 14px;
		height: 14px;
		margin-top: -14px;
		border-top: solid 6px #fff;
		border-right: solid 6px #fff;
	}
	.faq_trigger.is-active:after {
		margin-top: -14px;
	}
	.faq_pannel {
		padding: 30px 0 0 86px;
		font-size: 20px;
	}
	.faq_pannel:before {
		top: 25px;
		left: 36px;
		font-size: 28px;
	}
}

.cta_inner {
	padding: 0 6.66667vw;
}

.cta_inner > * + * {
	margin-top: 4vw;
}

.cta_ttle {
	font-size: 4.26667vw;
	font-weight: 700;
	margin-bottom: 4vw;
	text-align: center;
	line-height: 1.5;
}

.cta_button,
.hover_button,
.modal-list div a {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 24vw;
	color: #fff;
	font-size: 5.6vw;
	box-shadow: 0.66667vw 1.16vw 1.33333vw 0 rgba(7, 4, 4, 0.5);
	border-radius: 2.66667vw;
	background-image: linear-gradient(to top, #111, #666);
	text-decoration: none;
	font-weight: 700;
	border: 1.6vw outset #111;
}

.cta_button {
	justify-content: space-between;
	flex-direction: row;
	padding: 2.6666667vw;
	box-sizing: border-box;
}

.cta_button_qa {
	margin: 3.2vw auto 0;
	max-width: 350px;
}

.cta_button i {
	display: block;
	width: 8.53333333vw;
	font-size: 8.53333333vw;
	text-align: center;
}

.cta_button span {
	margin: auto;
	flex-shrink: 0;
}

.cta_button_tel_num {
	gap: calc(6 / 375 * 100vw);
	flex-direction: column;
	height: fit-content;
}

.cta_button_tel_num span {
	font-size: calc(14 / 375 * 100vw);
}

.cta_button_tel_num_wrap {
	position: relative;
	width: 100%;
	text-align: center;
}

.cta_button_tel_num_wrap i {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	height: fit-content;
	font-size: calc(28 / 375 * 100vw);
	;
}

.cta_button_tel_num b {
	font-size: calc(36 / 375 * 100vw);
	letter-spacing: unset;
	font-weight: 500;
	font-family: Oswald;
}

.cta_button_tel_num small {
	font-size: calc(12 / 375 * 100vw);
}

.cta_button._tel,
.hover_button._tel,
.modal-list div a._tel,
.modal-list div a._default {
	background-image: linear-gradient(to top,#ba4000, #ff6818);
	border: 1.6vw outset #ff6818;
}

.cta_button._area,
.hover_button._area,
.modal-list div a._area {
  background-image: linear-gradient(to top, #005a7b, #18a3d7);
  border: 1.6vw outset #18a3d7;
}

.modal-list div a span {
	font-size: 4.26667vw;
	background: linear-gradient(transparent 70%, #da5e29 70%);
	display: inline-block;
	margin-bottom: 3.33333vw;
}

.modal-list div a span {
	margin: 1.6vw 0 0;
	background: unset;
	font-weight: normal;
	font-size: 3.2vw;
}

@media screen and (min-width: 750px) {
	.cta_inner {
		padding: 0;
		max-width: 940px;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-items: center;
		gap: 20px;
	}
	.cta_inner > * {
		flex: 1 1;
	}
	.cta_inner > * + * {
		margin-top: 0;
	}
	.cta_ttle {
		font-size: 32px;
		margin-bottom: 30px;
	}
	.cta_button,
	.hover_button,
	.modal-list div a {
		height: 90px;
		color: #fff;
		font-size: 20px;
		box-shadow: 3.5px 6.1px 7px 0 rgba(7, 4, 4, 0.4);
		border-radius: 10px;
		border: 6px outset #111;
		letter-spacing: -.05em;
	}
	.cta_button {
		padding: unset;
		gap: 10px;
		justify-content: center;
	}
	.cta_button_qa {
		margin-top: 24px;
	}
	.cta_button._tel,
	.hover_button._tel,
	.modal-list div a._tel,
	.modal-list div a._default {
		border: 6px outset #ff6818;
	}
	.cta_button._area,
	.hover_button._area,
	.modal-list div a._area {
		border: 6px outset #18a3d7;
	}
	.cta_button span {
		margin: unset;
	}
	.cta_button i {
		font-size: 32px;
		width: unset;
	}
	.modal-list div a span {
		font-size: 15px;
		display: inline-block;
		margin-bottom: 12px;
	}
	.cta_button_tel_num {
		padding: 8px;
		gap: 6px;
		height: fit-content;
		letter-spacing: unset;
	}
	.cta_button_tel_num span {
		transform: translateX(24px);
		font-size: 14px;
	}
	.cta_button_first span {
		transform: unset;
	}
	.cta_button_tel_num_wrap {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	}
	.cta_button_tel_num_wrap i {
		position: static;
		margin: unset;
		font-size: 28px;
	}
	.cta_button_first .cta_button_tel_num_wrap i {
		position: absolute;
		margin: auto;
		font-size: 28px;
		left: calc((100% - 10em) / 2);
	}
	.cta_button_tel_num b {
		font-size: 36px;
	}
	.cta_button_tel_num small {
		transform: translateX(25px);
		font-size: 12px;
	}
	.cta_button_first small {
		transform: unset;
	}
}

.latest-plan {
	margin: 10vw 0 10.66667vw;
}

.latest-plan_head {
	text-align: center;
	margin-bottom: 4vw;
}

.latest-plan_logo {
	width: 39.73333vw;
	margin: 0 auto 4vw;
}

.latest-plan_logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.latest-plan_ttle {
	font-size: 6.4vw;
}

.latest-plan_wrapper {
	background-image: linear-gradient(to top, #ffa646, #ff973b);
}

.latest-plan_container {
	padding: 4vw 0 0;
}

.latest-plan_sttle {
	letter-spacing: -0.4vw;
	font-weight: 700;
	text-align: center;
	font-size: 4vw;
	color: #fff;
	margin-bottom: 4.26667vw;
}

.latest-plan_box {
	padding: 8vw 5.33333vw 10.66667vw;
	box-sizing: border-box;
	background: #fff;
	width: calc( 100% - 6.66667vw);
	margin: 0 auto;
}

.latest-plan_box._sm {
	padding: 1.33333vw 5.33333vw 0vw;
	position: relative;
}

.latest-plan_box._sm:after {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8vw calc( 50vw - 2.66667vw) 0 calc( 50vw - 2.66667vw);
	border-color: #fff transparent transparent transparent;
	content: "";
}

.latest-plan_box_logo {
	margin-bottom: 4.66667vw;
}

.latest-plan_box_logo._01 {
	width: 49.86667vw;
}

.latest-plan_box_logo._02 {
	width: 47.06667vw;
}

.latest-plan_box_logo img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.latest-plan_row {
	padding: 0 4vw;
}

.latest-plan_row + .latest-plan_row {
	margin-top: 10.66667vw;
}

.latest-plan_price p {
	font-size: 8vw;
	font-weight: 700;
	font-style: italic;
	letter-spacing: -0.53333vw;
	background: linear-gradient(transparent 70%, rgba(234, 84, 5, 0.3) 70%);
}

.latest-plan_price p .labels {
	position: relative;
}

.latest-plan_price p .labels:before {
	content: attr(data-label);
	font-size: 2.66667vw;
	font-style: normal;
	font-weight: 400;
	letter-spacing: normal;
	position: absolute;
	top: 0;
	left: 0;
}

.latest-plan_price p .add {
	font-size: 6.66667vw;
}

.latest-plan_price p .sm {
	font-size: 6.66667vw;
}

.latest-plan_price p .price {
	font-family: "Helvetica";
	font-size: calc(6.66667vw * 1.6);
}

.latest-plan_price p .number {
	display: inline-block;
	font-family: "Helvetica";
	font-size: calc(6.66667vw * 1.6);
	color: #ea5405;
}

.latest-plan_price_note {
	margin-top: 16px;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 2.93333vw;
	line-height: normal;
}

.latest-plan_text {
	color: #888;
	font-size: 4vw;
	font-weight: 700;
	text-align: center;
	margin: 2.13333vw calc(-4vw + -.5em);

}

.latest-plan_note {
	margin-top: 4.26667vw;
}

.latest-plan_note p {
	font-weight: 400;
	font-size: 2.93333vw;
	line-height: 1.2;
}

.latest-plan_ssttle {
	letter-spacing: -0.26667vw;
	background: #ff9c40;
	padding: 2.66667vw 0 2.66667vw;
	border-radius: 1.6vw;
	text-align: center;
	font-size: 3.46667vw;
	font-weight: 700;
	color: #fff;
	margin-bottom: 6.66667vw;
}

.latest-plan_chart {
	position: relative;
	margin-top: 10vw;
}

.latest-plan_chart_row {
	padding: 0 0 4.66667vw 0;
}

.latest-plan_chart_row + .latest-plan_chart_row {
	border-top: 0.26667vw dotted #999;
	padding-top: 4.66667vw;
}

.latest-plan_chart_label {
	font-size: 3.73333vw;
	font-weight: 400;
	margin-bottom: 2vw;
}

.latest-plan_chart_label span {
	font-size: calc( 3.73333vw * 1.6);
}

.latest-plan_chart_infograph {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: center;
	font-size: calc( 6.4vw);
	font-family: "Helvetica";
	font-style: italic;
	font-weight: 700;
	line-height: 1;
}

.latest-plan_chart_infograph span {
	margin: 1.73333vw 0 0 0.66667vw;
	display: inline-block;
	vertical-align: bottom;
	font-size: 4vw;
}

.latest-plan_chart_infograph > div {
	margin-right: 1.6vw;
	height: 9.33333vw;
}

.latest-plan_chart_infograph._primary {
	color: #ea5405;
}

.latest-plan_chart_infograph._primary > div {
	width: 11.29%;
	background: #ea5405;
}

.latest-plan_chart_infograph._secondary {
	color: #333;
}

.latest-plan_chart_infograph._secondary > div {
	width: 22.4%;
	background: #333;
}

.latest-plan_chart_infograph._tertiary {
	color: #999;
}

.latest-plan_chart_infograph._tertiary > div {
	width: 60.87%;
	background: #999;
}

.latest-plan_chart_comment {
	position: absolute;
	top: 16vw;
	right: 0;
	width: 38.66667vw;
	height: 24vw;
	background: #ea5405;
	border-radius: 100%;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 3.86667vw;
	font-style: italic;
	text-align: center;
	letter-spacing: -0.26667vw;
	line-height: 1.2;
	font-weight: 700;
}

.latest-plan_discount_note {
	text-align: right;
	font-size: 2.93333vw;
	font-weight: 400;
	margin-bottom: 5.33333vw;
}

.latest-plan_flex {
	display: block;
	gap: 4.53333vw;
	margin-bottom: 8vw;
}

.latest-plan_item {
	width: auto;
	flex: 1 1;
}

.latest-plan_item:last-child {
	margin-top: 4rem;
}

.latest-plan_item_head {
	background: #eee;
	border-radius: 1.6vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	height: 23.6vw;
	margin-bottom: 4.66667vw;
}

.latest-plan_item_head p {
	font-size: 3.73333vw;
	font-weight: 700;
}

.latest-plan_item_head p span {
	font-size: calc( 3.73333vw * 1.5);
}

.latest-plan_item_head p.em {
	margin-bottom: 2.66667vw;
	color: #ea5405;
	font-style: italic;
}

.latest-plan_item_head_small {
	display: flex;
	flex-direction: column;
	margin-bottom: 1rem;
	font-size: 4.26666667vw;
	font-weight: bold;
	text-align: center;
	line-height: normal;
}

.latest-plan_item_body {
	text-align: center;
}

.latest-plan_item_body p {
	font-size: 6vw;
	font-weight: 700;
}

.latest-plan_item_body p span {
	font-size: calc( 9vw);
}

.latest-plan_item_body p.marker {
	line-height: 1;
	margin-top: 2.66667vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	background: linear-gradient(transparent 70%, rgba(234, 84, 5, 0.3) 70%);
}

.latest-plan_item_body p.marker .period {
	font-size: 3.73333vw;
	margin-right: 0.66667vw;
	text-align: center;
	margin-top: 2vw;
}

.latest-plan_item_body p.marker .free {
	font-size: 13.33333vw;
	letter-spacing: 0.26667vw;
	font-weight: 700;
	color: #ea5405;
}

.latest-plan_item_body p.marker .price {
	font-family: "Helvetica";
	font-size: 13.33333vw;
	font-weight: bold;
	color: #ea5405;
}

.latest-plan_item_body p.marker .unit {
	margin-top: 2vw;
	font-size: 6.66667vw;
	font-weight: 700;
	position: relative;
}

.latest-plan_item_body p.marker .unit:before {
	display: block;
	font-size: 2vw;
	font-weight: 400;
	content: "（税込）";
}

.latest-plan_item_body p.marker .small {
	position: absolute;
	top: 0vw;
	right: 0vw;
	font-size: 2.4vw;
}

.latest-plan_add {
	padding: 0;
}

.latest-plan_add p {
	text-align: center;
	font-size: 5.06667vw;
	font-weight: 700;
}

.latest-plan_badge {
	background: #ea5405;
	padding: 4.66667vw 0 4vw;
	text-align: center;
	position: relative;
}

.latest-plan_badge:before {
	position: absolute;
	top: 100%;
	left: 0;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 3.33333vw 2.66667vw 0;
	border-color: transparent #8c3000 transparent transparent;
	content: "";
}

.latest-plan_badge:after {
	position: absolute;
	top: 100%;
	right: 0;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 2.66667vw 3.33333vw 0 0;
	border-color: #8c3000 transparent transparent transparent;
	content: "";
}

.latest-plan_badge_label {
	font-size: 4.8vw;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.26667vw;
}

.latest-plan_badge_label span {
	position: absolute;
	top: 2vw;
	right: 5.6vw;
	font-size: 2.4vw;
	font-weight: 400;
}

.latest-plan_foot {
	background: url(../img/bg-plan-bottom.webp) no-repeat 0 0;
	background-size: cover;
	padding: 13.33333vw 5.33333vw 10.66667vw;
	background-position: right bottom;
}

.latest-plan_option {
	width: 65.33333vw;
}

.latest-plan_option .copy {
	font-size: 3.46667vw;
	line-height: 1.5;
	font-weight: 700;
	margin-bottom: 3.33333vw;
}

.latest-plan_option .copy span {
	display: inline-block;
	text-indent: -.5em;
	color: #ea5405;
}

.latest-plan_option .price {
	font-size: 6.66667vw;
	font-weight: 700;
	line-height: 1;
	vertical-align: bottom;
	margin-bottom: 9.33333vw;
	position: relative;
}

.latest-plan_option .price:after {
	width: 40vw;
	height: 0.4vw;
	background: #333;
	transform: rotate(-10deg);
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
}

.latest-plan_option .price span {
	font-family: "Helvetica";
}

.latest-plan_option .price span.sm {
	font-size: 6.66667vw;
}

.latest-plan_option .price span.md {
	font-size: calc( 6.66667vw * 1.2);
}

.latest-plan_option .price span.lg {
	font-size: calc( 6.66667vw * 1.5);
}

.latest-plan_option .price span.unit {
	position: relative;
}

.latest-plan_option .price span.unit:before {
	position: absolute;
	top: -2vw;
	left: -1.33333vw;
	width: 100%;
	white-space: nowrap;
	display: block;
	content: "（税込）";
	font-size: 1.86667vw;
	font-weight: 400;
}

.latest-plan_option .catch {
	display: flex;
	flex-direction: column;
	color: #ea5405;
	font-size: 12.66667vw;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 6.4vw;
	position: relative;
}

.latest-plan_option .catch:before {
	display: block;
	position: absolute;
	top: -6.26667vw;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.8vw 4vw 0 4vw;
	border-color: #333 transparent transparent transparent;
	content: "";
}

.latest-plan_option .catch span {
	font-size: .75em;
}

.latest-plan_option .note {
	padding-left: 1em;
	text-indent: -1em;
	max-width: 18em;
	font-size: 2.93333vw;
	line-height: normal;
	text-align: justify;
}

.latest-plan_option-plan {
	margin-bottom: 1.06666667vw;
	font-size: 3.73333333vw;
	font-weight: bold;
}

@media (min-width: 750px) {
	.latest-plan {
		margin: 64px 0 80px;
	}
	.latest-plan_head {
		margin-bottom: 30px;
	}
	.latest-plan_logo {
		width: 298px;
		margin: 0 auto 30px;
	}
	.latest-plan_ttle {
		font-size: 48px;
	}
	.latest-plan_container {
		padding: 30px 0 0;
	}
	.latest-plan_sttle {
		letter-spacing: normal;
		font-size: 30px;
		margin-bottom: 32px;
	}
	.latest-plan_box {
		max-width: 940px;
		padding: 60px 40px 80px;
		width: 100%;
		margin: 0 auto;
	}
	.latest-plan_box._sm {
		padding: 10px 40px 0;
	}
	.latest-plan_box._sm:after {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: calc(60 / 940 * 100vw) calc(470 / 940 * 100vw) 0 calc(470 / 940 * 100vw);
	}
	.latest-plan_box_logo {
		margin-bottom: 15px;
	}
	.latest-plan_box_logo._01 {
		width: 374px;
	}
	.latest-plan_box_logo._02 {
		width: 353px;
	}
	.latest-plan_row {
		padding: 0 30px;
	}
	.latest-plan_row + .latest-plan_row {
		margin-top: 80px;
	}
	.latest-plan_price p {
		display: inline;
		font-size: 60px;
		letter-spacing: normal;
	}
	.latest-plan_price p .labels:before {
		font-size: 20px;
	}
	.latest-plan_price p .add {
		font-size: 50px;
	}
	.latest-plan_price p .sm {
		font-size: 50px;
	}
	.latest-plan_price p .price {
		font-size: calc( 50px * 1.6);
	}
	.latest-plan_price p .number {
		font-size: calc( 50px * 1.6);
	}
	.latest-plan_price_note {
		font-size: 18px;
	}
	.latest-plan_text {
		text-align: left;
		font-size: 30px;
		margin: 16px 0 0 -.5em;
	}
	.latest-plan_note {
		margin-top: 32px;
	}
	.latest-plan_note p {
		font-size: 22px;
	}
	.latest-plan_ssttle {
		letter-spacing: normal;
		padding: 20px 0;
		border-radius: 12px;
		font-size: 26px;
		margin-bottom: 50px;
	}
	.latest-plan_chart {
		position: relative;
		margin-top: 75px;
	}
	.latest-plan_chart_row {
		padding: 0 0 35px 0;
	}
	.latest-plan_chart_row + .latest-plan_chart_row {
		border-top: 2px dotted #999;
		padding-top: 35px;
	}
	.latest-plan_chart_label {
		font-size: 28px;
		margin-bottom: 15px;
	}
	.latest-plan_chart_label span {
		font-size: calc( 28px * 1.6);
	}
	.latest-plan_chart_infograph {
		font-size: calc( 30px * 1.6);
	}
	.latest-plan_chart_infograph span {
		margin: 13px 0 0 5px;
		font-size: 30px;
	}
	.latest-plan_chart_infograph > div {
		margin-right: 12px;
		height: 70px;
	}
	.latest-plan_chart_comment {
		position: absolute;
		top: 120px;
		right: 0;
		width: 290px;
		height: 180px;
		font-size: 29px;
		letter-spacing: normal;
	}
	.latest-plan_discount_note {
		text-align: right;
		font-size: 22px;
		margin-bottom: 40px;
	}
	.latest-plan_flex {
		display: flex;
		align-items: flex-start;
		gap: 34px;
		margin-bottom: 60px;
	}
	.latest-plan_item:last-child {
		margin-top: 0;
	}
	.latest-plan_item_head {
		border-radius: 12px;
		height: 177px;
		margin-bottom: 35px;
	}
	.latest-plan_item_head p {
		font-size: 28px;
	}
	.latest-plan_item_head p span {
		font-size: calc( 28px * 1.5);
	}
	.latest-plan_item_head p.em {
		margin-bottom: 20px;
	}
	.latest-plan_item_head_small {
		font-size: 20px;
	}
	.latest-plan_item_body p {
		font-size: 45px;
	}
	.latest-plan_item_body p span {
		font-size: calc( 45px * 1.5);
	}
	.latest-plan_item_body p.marker {
		margin-top: 20px;
	}
	.latest-plan_item_body p.marker .period {
		font-size: 28px;
		margin-right: 5px;
		margin-top: 15px;
	}
	.latest-plan_item_body p.marker .free {
		font-size: 100px;
		letter-spacing: normal;
	}
	.latest-plan_item_body p.marker .price {
		font-size: 100px;
	}
	.latest-plan_item_body p.marker .unit {
		margin-top: 15px;
		font-size: 50px;
	}
	.latest-plan_item_body p.marker .unit:before {
		font-size: 15px;
	}
	.latest-plan_item_body p.marker .small {
		top: 0;
		right: 60px;
		font-size: 18px;
	}
	.latest-plan_add {
		padding: 0;
	}
	.latest-plan_add p {
		font-size: 38px;
	}
	.latest-plan_badge {
		padding: 35px 0 30px;
		margin: 0 auto;
		max-width: 980px;
	}
	.latest-plan_badge:before {
		border-width: 0 25px 20px 0;
	}
	.latest-plan_badge:after {
		border-width: 20px 25px 0 0;
	}
	.latest-plan_badge_label {
		font-size: 36px;
		letter-spacing: normal;
	}
	.latest-plan_badge_label span {
		position: absolute;
		top: 15px;
		right: 42px;
		font-size: 18px;
		font-weight: 400;
	}
	.latest-plan_foot {
		max-width: 940px;
		box-sizing: border-box;
		margin: 0 auto;
		background: url(../img/bg-plan-bottom-pc.webp) no-repeat right 40px;
		background-size: 350px auto;
		padding: 100px 40px 80px;
	}
	.latest-plan_option {
		width: 480px;
	}
	.latest-plan_option .copy {
		font-size: 26px;
		margin-bottom: 25px;
	}
	.latest-plan_option .price {
		font-size: 50px;
		margin-bottom: 70px;
	}
	.latest-plan_option .price:after {
		width: 300px;
		height: 3px;
	}
	.latest-plan_option .price span.sm {
		font-size: 50px;
	}
	.latest-plan_option .price span.md {
		font-size: calc( 50px * 1.2);
	}
	.latest-plan_option .price span.lg {
		font-size: calc( 50px * 1.5);
	}
	.latest-plan_option .price span.unit {
		position: relative;
	}
	.latest-plan_option .price span.unit:before {
		position: absolute;
		top: -10px;
		left: -8px;
		font-size: 16px;
	}
	.latest-plan_option .catch {
		font-size: 95px;
		margin-bottom: 48px;
	}
	.latest-plan_option .catch:before {
		top: -47px;
		border-width: 36px 30px 0 30px;
	}
	.latest-plan_option .note {
		max-width: unset;
		font-size: 22px;
	}
	.latest-plan_option-plan {
		margin-bottom: 4px;
		font-size: 30px;
	}
}

@media (min-width: 940px) {
	.latest-plan_box._sm:after {
		border-width: 60px 470px 0 470px;
	}
}

.footer {
	margin-top: 18.66667vw;
}

.footer.is-form {
	margin-top: 9.33333vw;
}

.footer_nav {
	text-align: center;
	margin-bottom: 2.66667vw;
}

.footer_elem {
	font-size: 3.2vw;
	color: #333;
	position: relative;
	display: inline-block;
	padding-right: 1.33333vw;
	text-decoration: none;
}

.footer_elem:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 0.8vw;
	height: 0.8vw;
	margin-top: -0.4vw;
	border-top: solid 0.26667vw #999;
	border-right: solid 0.26667vw #999;
	transform: rotate(45deg);
	content: "";
}

.footer_elem + .footer_elem {
	margin-left: 2.66667vw;
}

.footer .copyright {
	background: #000;
	padding: 3.06667vw 0 2.53333vw;
	text-align: center;
	font-size: 3.2vw;
	color: #fff;
}

@media (min-width: 750px) {
	.footer {
		margin-top: 70px;
	}
	.footer.is-form {
		margin-top: 35px;
	}
	.footer_nav {
		text-align: center;
		margin-bottom: 20px;
	}
	.footer_elem {
		font-size: 16px;
		padding-right: 10px;
	}
	.footer_elem:after {
		width: 6px;
		height: 6px;
		margin-top: -3px;
		border-top: solid 1px #999;
		border-right: solid 1px #999;
	}
	.footer .copyright {
		padding: 20px 0;
		font-size: 12px;
	}
}

.hover {
	position: fixed;
	width: 100%;
	bottom: -16vw;
	left: 0;
	z-index: 10000;
	background: #fff;
	transition: all 0.3s linear;
}

.hover.show {
	bottom: 0;
}

.hover_in {
	height: 16vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	padding: 0 2.66667vw;
	gap: 1.33333vw;
}

.hover_elem {
	flex: 1 1;
}

.hover_button {
	height: 9.33333vw;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	font-size: 2.66667vw;
	letter-spacing: -0.26667vw;
	color: #fff;
	text-decoration: none;
	border-radius: 1.6vw;
}

.hover_button i {
	font-size: 6.4vw;
}

@media screen and (min-width: 750px) {
	.hover {
		bottom: -120px;
	}
	.hover_in {
		height: 120px;
		padding: 0;
		max-width: 940px;
		margin: 0 auto;
		gap: 20px;
	}
	.hover_button {
		height: 70px;
		font-size: 18px;
		letter-spacing: normal;
		border-radius: 12px;
	}
	.hover_button span {
		font-weight: 700;
		font-size: 1.25em;
		transform: translateY(-.1875rem);
	}
}

#modal-overlay {
	z-index: 100000;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

.modal-logo {
	width: 39.73333vw;
	margin: 0 auto calc(48 / 375 * 100vw);
}

.modal-logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.modal-lead {
position: relative;
	margin-bottom: 5.06667vw;
	padding: calc(18 / 375 * 100vw) calc(6 / 375 * 100vw);
	background-color: #FFF306;
}

.modal-lead::after {
	content: '';
	position: absolute;
	top: calc(-20 / 375 * 100vw);
	left: 0;
	right: 0;
	margin: auto;
	width: calc(36 / 375 * 100vw);
	height: calc(32 / 375 * 100vw);
	background-image: url(../img/icon_note.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.modal-lead p {
	text-align: center;
	font-size: calc(15 / 375 * 100vw);
	line-height: normal;
	font-weight: normal;
	letter-spacing: -.025em;
}

.modal-lead p span {
	padding: 0 calc(2 / 375 * 100vw);
	font-weight: bold;
	color: #FFF206;
	background-color: #EA0505;
	border-radius: calc(2 / 375 * 100vw);
}

.modal-list div a {
	box-sizing: border-box;
	font-size: 5.06667vw;
	letter-spacing: -0.26667vw;
	height: 24vw;
}

.modal-list div a._default {
	height: calc(60 / 375 * 100vw);
}
.modal-list div a._default.btn-4 {
	border: 1.6vw outset #111;
	background-image: linear-gradient(to top, #111, #666);
}

.modal-list div + div {
	margin-top: 4.26667vw;
}

.modal-content {
	display: none;
	width: 89.33333vw;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 8vw 2.66667vw 6.66667vw;
	background: #fff;
	position: fixed;
	box-sizing: border-box;
	border-radius: 2.13333vw;
	z-index: 11000000;
}

.modal-button-tel {
	position: relative;
}

.modal-button-tel i {
	position: absolute;
	top: 0;
	left: 4.266667vw;
	bottom: 0;
	margin: auto;
	height: fit-content;
}

.modal-link-wrap {
	margin-top: calc(24 / 375 * 100vw);
	font-size: calc(12 / 375 * 100vw);
	text-align: center;
	font-weight: normal;
	line-height: 1.2;
}

.modal-link {
	color: #333;
}

@media (min-width: 750px) {
	.modal-logo {
		width: calc( 298px / 2);
		margin: 0 auto 25px;
	}
	.modal-lead {
		margin-bottom: 19px;
	}
	.modal-lead p {
		font-size: 13px;
		letter-spacing: normal;
	}
	.modal-lead p.label {
		font-size: 16px;
		margin-bottom: 15px;
	}
	.modal-list div a {
		font-size: 19px;
		letter-spacing: normal;
		height: 90px;
	}
	.modal-list div a._default {
		height: 70px;
	}
	.modal-list div + div {
		margin-top: 15px;
	}
	.modal-content {
		width: 630px;
		box-sizing: border-box;
		padding: 60px 20px 50px;
		border-radius: 16px;
	}
}

#contact-modal {
	background: #fff;
	border: 0.66667vw solid #000;
}

@media screen and (min-width: 750px) {
	#contact-modal {
		border: 5px solid #000;
	}
}

.notel {
	pointer-events: none;
	color: inherit;
	text-decoration: none;
}

.ERR {
	margin: 0.5rem 0 0 0.5rem;
	color: #f00;
}

/* area form */
.area_form {
	line-height: normal;
	margin: calc(56 / 375 * 100vw) 0;
}
.area_form * {
	box-sizing: border-box;
}
.area_form img {
	display: block;
	max-width: 100%;
}
.area_inner {
	margin: auto;
	padding: 0 calc(20 / 375 * 100vw);
	max-width: 940px;
	box-sizing: content-box;
}
.area_note {
	margin-bottom: calc(28 / 375 * 100vw);
	text-align: center;
	line-height: normal;
	font-size: calc(13.5 / 375 * 100vw);
}
.area_note span {
	display: block;
	color: #de5f1d;
}
.area_note b {
	display: block;
	font-size: .88888889em;
}
.area_img {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin: calc(86.49 / 375 * 100vw) 0 calc(32 / 375 * 100vw);
}
.area_img span {
	width: calc(50% - 3.2vw);
}
.area_img i {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: calc(60 / 375 * 100vw);
}
.area_head {
	display: flex;
	align-items: baseline;
	justify-content: center;
	margin-bottom: calc(24 / 375 * 100vw);
	color: #eb5405;
	font-size: calc(21 / 375 * 100vw);
	font-weight: 700;
}
.area_head span {
	font-size: .85714286em;
}
.area_wrap {
	padding: calc(32 / 375 * 100vw) calc(16 / 375 * 100vw);
	line-height: normal;
	background-color: #fdeee6;
	border-radius: calc(16 / 375 * 100vw);
	-webkit-border-radius: calc(16 / 375 * 100vw);
	-moz-border-radius: calc(16 / 375 * 100vw);
	-ms-border-radius: calc(16 / 375 * 100vw);
	-o-border-radius: calc(16 / 375 * 100vw);
}
.area_flow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: calc(20 / 375 * 100vw);
}
.area_flow p {
	display: flex;
	align-items: baseline;
	font-size: calc(21 / 375 * 100vw);
	color: #eb5405;
	font-weight: 700;
}
.area_flow p span {
	font-size: .72727273em;
}
.area_flow ul {
	display: flex;
	margin-right: calc(8 / 375 * 100vw);
	color: #fff;
	font-size: calc(13 / 375 * 100vw);
	font-weight: 700;
	line-height: normal;
}
.area_flow ul li {
	position: relative;
	padding: calc(9 / 375 * 100vw) calc(6 / 375 * 100vw) calc(9 / 375 * 100vw) calc(16 / 375 * 100vw);
}
.area_flow ul li::after {
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	bottom: 0;
	border-top: calc(15 / 375 * 100vw) solid transparent;
	border-bottom: calc(15 / 375 * 100vw) solid transparent;
	border-right: 0;
	z-index: 1;
}
.area_flow ul .input {
	padding-left: calc(12 / 375 * 100vw);
	background-color: #eb5405;
}
.area_flow ul .input::after {
	border-left: calc(8 / 375 * 100vw) solid #eb5405;
}
.area_flow ul .confirm {
	background-color: #888;
}
.area_flow ul .confirm::after {
	border-left: calc(8 / 375 * 100vw) solid #888;
}
.area_flow ul .complete {
	background-color: #ccc;
}
.area_flow ul .complete::after {
	border-left: calc(8 / 375 * 100vw) solid #ccc;
}
.area_form_table,
.area_form_table tbody,
.area_form_table tr,
.area_form_table th,
.area_form_table td {
	display: block;
}
.area_form_table {
	margin-bottom: calc(24 / 375 * 100vw);
}
.area_form_table tr:first-child th {
	margin-bottom: calc(12 / 375 * 100vw);
}
.area_form_table tr:not(:last-child) {
	margin-bottom: calc(24 / 375 * 100vw);
}
.area_form_table th {
	margin-bottom: calc(6 / 375 * 100vw);
	text-align: left;
	font-weight: bold;
}
.area_form_table th i {
	display: inline-block;
	margin-left: calc(3 / 375 * 100vw);
	font-size: calc(14 / 375 * 100vw);
}
.area_form_table input[type="radio"] {
	display: none;
	font-size: calc(16 / 375 * 100vw);
}
.radio_wrap {
	display: flex;
	gap: calc(8 / 375 * 100vw);
	flex-direction: column;
	font-size: calc(16 / 375 * 100vw);
}
.radio_wrap label {
	position: relative;
	padding-left: calc(26 / 375 * 100vw);
	font-size: calc(15 / 375 * 100vw);
}
.radio_wrap label::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	display: block;
	width: calc(22 / 375 * 100vw);
	height: calc(22 / 375 * 100vw);
	border: solid calc(1 / 375 * 100vw) #707070;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	box-sizing: border-box;
}
.radio_wrap label::after {
	content: '';
	position: absolute;
	top: 0;
	left: calc(4 / 375 * 100vw);
	bottom: 0;
	display: block;
	margin: auto;
	width: calc(14 / 375 * 100vw);
	height: calc(14 / 375 * 100vw);
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	background-color: #eb5405;
	opacity: 0;
}
.area_form_table input[type="radio"]:checked + label::after {
	opacity: 1;
}
.area_form_table select,
.area_form_table input[type="tel"],
.area_form_table input[type="text"],
.area_form_table input[type="email"] {
	display: block;
	padding: calc(8 / 375 * 100vw);
	width: 100%;
	max-width: 100%;
	font-size: calc(16 / 375 * 100vw);
	background-color: #fff;
	border: solid calc(1 / 375 * 100vw) #707070;
	border-radius: calc(5 / 375 * 100vw);
	-webkit-border-radius: calc(5 / 375 * 100vw);
	-moz-border-radius: calc(5 / 375 * 100vw);
	-ms-border-radius: calc(5 / 375 * 100vw);
	-o-border-radius: calc(5 / 375 * 100vw);
}
.input_select_wrap {
	position: relative;
}
.input_select_wrap::after {
	content: '';
	position: absolute;
	top: 1.25rem;
	right: 1rem;
	width: .5rem;
	height: .5rem;
	border: 3px solid #333;
	border-width: 0 0 3px 3px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
}
.area_required {
	display: inline-block;
	width: calc(35 / 375 * 100vw);
	height: calc(20 / 375 * 100vw);
	font-size: calc(12 / 375 * 100vw);
	border-radius: calc(3 / 375 * 100vw);
	color: #fff;
	font-weight: 500;
	line-height: calc(20 / 375 * 100vw);
	text-align: center;
	background-color: #de5f1d;
	-webkit-border-radius: calc(3 / 375 * 100vw);
	-moz-border-radius: calc(3 / 375 * 100vw);
	-ms-border-radius: calc(3 / 375 * 100vw);
	-o-border-radius: calc(3 / 375 * 100vw);
}
.area_submit {
	-webkit-appearance: none;
	display: block;
	margin: auto;
	width: 100%;
	height: calc(64 / 375 * 100vw);
	border-radius: calc(10 / 375 * 100vw);
	box-shadow: 0 calc(3 / 375 * 100vw) calc(6 / 375 * 100vw) 0 rgba(0, 0, 0, 0.16);
	color: #fff;
	text-align: center;
	font-size: calc(16 / 375 * 100vw);
	font-weight: bold;
	border: calc(6 / 375 * 100vw) outset #ff6818;
	background-image: linear-gradient(to top, #ba4000, #ff6818);
	cursor: pointer;
	-webkit-border-radius: calc(10 / 375 * 100vw);
	-moz-border-radius: calc(10 / 375 * 100vw);
	-ms-border-radius: calc(10 / 375 * 100vw);
	-o-border-radius: calc(10 / 375 * 100vw);
}
.area_submit[disabled] {
	border: calc(6 / 375 * 100vw) outset #ccc;
	background-image: linear-gradient(to top, #888, #ccc);
}

@media (min-width: 750px) {
	.area_form {
		margin: 7rem 0;
	}
	.area_inner {
		padding: 0 3.2rem;
	}
	.area_note {
		display: flex;
		gap: 1.6rem;
		justify-content: center;
		margin: 0 auto 3.2rem;
		width: fit-content;
		font-size: 1.8rem;
		border-bottom: .2rem solid #de5f1d;
	}
	.area_img {
		justify-content: center;
		margin: 0 auto 3.2rem;
	}
	.area_img span {
		max-width: 32rem;
	}
	.area_img span img {
		max-width: unset;
		width: 100%;
	}
	.area_img i {
		position: relative;
		margin: unset;
		width: 8rem;
	}
	.area_head {
		margin-bottom: 2.4rem;
		font-size: 2.8rem;
	}
	.area_wrap {
		padding: 4.8rem 3.2rem;
		border-radius: 1.6rem;
	}
	.area_flow {
		gap: 3.2rem;
		justify-content: center;
		margin-bottom: 4.8rem;
	}
	.area_flow p {
		font-size: 3.2rem;
	}
	.area_flow ul {
		margin-right: 2rem;
		font-size: 1.4rem;
	}
	.area_flow ul li {
		padding: 1.2rem 1.6rem 1.2rem 3.6rem;
	}
	.area_flow ul .input::after {
	border-left: 2rem solid #eb5405;
	}
	.area_flow ul li::after {
		border-top: 2.2rem solid transparent;
		border-bottom: 2.2rem solid transparent;
	}
	.area_flow ul .input {
		width: 8rem;
		padding-left: 1.6rem;
	}
	.area_flow ul .confirm {
		width: 10rem;
	}
	.area_flow ul .complete {
		width: 10rem;
	}
	.area_flow ul .input::after {
		border-left: 2rem solid #eb5405;
	}
	.area_flow ul .confirm::after {
		border-left: 2rem solid #888;
	}
	.area_flow ul .complete::after {
		border-left: 2rem solid #ccc;
	}
	.area_form_table {
		display: table;
		margin: 0 auto 3rem;
		width: fit-content;
	}
	.area_form_table tbody {
		display: table-row-group;
	}
	.area_form_table tr {
		display: table-row;
	}
	.area_form_table th,
	.area_form_table td {
		display: table-cell;
	}
	.area_form_table tr:not(:last-child) {
		margin: 0;
	}
	.area_form_table th,
	.area_form_table tr:first-child th {
		margin: 0;
		padding-right: 1.6rem;
		text-align: left;
	}
	.area_form_table tr:not(:last-child) th,
	.area_form_table tr:not(:last-child) td {
		padding-bottom: 3rem;
	}
	.radio_wrap {
		gap: .8rem;
	}
	.radio_wrap label {
		padding-left: 3.2rem;
		font-size: 1.6rem;
	}
	.radio_wrap label::before {
		width: 2.2rem;
		height: 2.2rem;
		border-width: .1rem;
	}
	.radio_wrap label::after {
		left: .4rem;
		width: 1.4rem;
		height: 1.4rem;
		transform: translateY(-.05rem);
		-webkit-transform: translateY(-.05rem);
		-moz-transform: translateY(-.05rem);
		-ms-transform: translateY(-.05rem);
		-o-transform: translateY(-.05rem);
}
	.area_form_table select,
	.area_form_table input[type="tel"],
	.area_form_table input[type="text"],
	.area_form_table input[type="email"] {
		padding: 1.6rem 1.2rem;
		width: 30em;
		font-size: 1.6rem;
		border-width: .1rem;
		border-radius: .5rem;
	}
	.input_select_wrap::after {
		top: 2rem;
		right: 1.5rem;
		width: .625rem;
		height: .625rem;
	}
	.area_required {
		width: 3.5rem;
		height: 2rem;
		font-size: 1.2rem;
		border-radius: .3rem;
		line-height: 2rem;
	}
	.area_form_table th i {
		margin-left: .6rem;
		font-size: 1.6rem;
	}
	.area_submit {
		max-width: 36rem;
		height: 9rem;
		font-size: 2rem;
		border-radius: 1rem;
		border-width: .6rem;
	}
	.area_submit[disabled] {
		border-width: .6rem;
	}
}

/* area comfirm */
.form_head {
	margin-bottom: calc(40 / 375 * 100vw);
	padding: calc(24 / 375 * 100vw) calc(16 / 375 * 100vw);
	background-color: #f2f2f2;
	line-height: normal;
}
.form_head h2 {
	margin: 0 0 calc(20 / 375 * 100vw);
	color: #333;
	text-align: left;
	font-size: calc(20 / 375 * 100vw);
	font-weight: 700;
}
.form_head_text_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
}
.form_head_text_wrap b {
	margin-right: calc(12 / 375 * 100vw);
	font-size: calc(12 / 375 * 100vw);
	font-weight: 700;
}
.form_head_text_wrap ul {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 0;
	color: #333;
	font-size: calc(12 / 375 * 100vw);
	font-weight: 500;
}
.form_head_text_wrap ul li {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(70 / 375 * 100vw);
	height: calc(30 / 375 * 100vw);
	background-color: #ccc;
}
.form_head_text_wrap ul li.active {
	color: #fff;
	background-color: #ea5405;
}
.form_head_text_wrap ul li:not(:last-child) {
	margin-right: calc(15 / 375 * 100vw);
}
.form_head_text_wrap ul li:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	bottom: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw) calc(8 / 375 * 100vw);
	border-color: transparent transparent transparent #ccc;
}
.form_head_text_wrap ul li.active:not(:last-child)::after {
	border-color: transparent transparent transparent #ea5405;
}
.form_head_text_wrap i {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: calc(4 / 375 * 100vw);
	width: calc(16 / 375 * 100vw);
	height: calc(16 / 375 * 100vw);
	text-align: center;
	font-style: normal;
	border-radius: calc(3 / 375 * 100vw);
	background-color: #fff;
	-webkit-border-radius: calc(3 / 375 * 100vw);
	-moz-border-radius: calc(3 / 375 * 100vw);
	-ms-border-radius: calc(3 / 375 * 100vw);
	-o-border-radius: calc(3 / 375 * 100vw);
}
.form_head_text_wrap .active i {
	color: #ea5405;
}
.form_head_h3 {
	margin: 0 0 calc(15 / 375 * 100vw);
	padding: 0;
	font-size: calc(16 / 375 * 100vw);
	color: #333;
	border: none;
	font-weight: 700;
}
#confirm {
	line-height: normal;
}
#confirm .inner {
	margin: auto;
	padding: 0 calc(16 / 375 * 100vw);
	max-width: 980px;
	box-sizing: content-box;
}
#confirm .area_form_table {
	margin-bottom: 7.5rem;
}
#confirm .area_form_table th {
	margin-bottom: calc(6 / 375 * 100vw);
	padding-bottom: calc(6 / 375 * 100vw);
	font-size: calc(14 / 375 * 100vw);
	font-weight: 500;
	border-bottom: calc(1 / 375 * 100vw) solid #333;
}
#confirm .area_form_table th i {
	transform: translateY(.26666667vw);
	-webkit-transform: translateY(.26666667vw);
	-moz-transform: translateY(.26666667vw);
	-ms-transform: translateY(.26666667vw);
	-o-transform: translateY(.26666667vw);
}
#confirm .area_form_table td {
	font-size: calc(14 / 375 * 100vw);
}
#confirm .button_wrap {
	display: flex;
	gap: calc(16 / 375 * 100vw);
	align-items: center;
	flex-direction: column;
}
.area_confirm_submit {
	-webkit-appearance: none;
	width: 100%;
	height: calc(64 / 375 * 100vw);
	font-size: calc(16 / 375 * 100vw);
	cursor: pointer;
	border: calc(6 / 375 * 100vw) outset #ff6818;
	background-image: linear-gradient(to top, #ba4000, #ff6818);
	color: #fff;
	font-weight: bold;
	border-radius: calc(10 / 375 * 100vw);
	-webkit-border-radius: calc(10 / 375 * 100vw);
	-moz-border-radius: calc(10 / 375 * 100vw);
	-ms-border-radius: calc(10 / 375 * 100vw);
	-o-border-radius: calc(10 / 375 * 100vw);
}
.area_confirm_back {
	padding: 0 0 calc(3 / 375 * 100vw);
	width: auto;
	height: auto;
	color: #666;
	font-weight: bold;
	font-size: calc(15 / 375 * 100vw);
	border-radius: unset;
	background-color: unset;
	border-bottom: calc(1 / 375 * 100vw) solid;
	border-width: 0 0 calc(1 / 375 * 100vw);
	cursor: pointer;
	line-height: 1;
}

@media (min-width: 750px) {
	.form_head {
		margin-bottom: 6.4rem;
		padding: 4rem 0;
	}
	.form_head h2 {
		margin-bottom: 3.2rem;
		font-size: 3.8rem;
		text-align: center;
	}
	.form_head_text_wrap b {
		margin-right: 1.6rem;
		font-size: 2rem;
	}
	.form_head_text_wrap ul {
		font-size: 1.6rem;
	}
	.form_head_text_wrap ul li:not(:last-child) {
		margin-right: 3.2rem;
	}
	.form_head_text_wrap ul li {
		width: 14rem;
		height: 6rem;
	}
	.form_head_text_wrap ul li:not(:last-child)::after {
		border-width: 3rem 0 3rem 1.6rem;
	}
	.form_head_text_wrap i {
		margin-right: .6rem;
		width: 3.2rem;
		height: 3.2rem;
		border-radius: .6rem;
		-webkit-border-radius: .6rem;
		-moz-border-radius: .6rem;
		-ms-border-radius: .6rem;
		-o-border-radius: .6rem;
	}
	.form_head_h3 {
		margin-bottom: 3rem;
		font-size: 2rem;
	}
	#confirm .inner {
		padding: 0 3.2rem;
	}
	#confirm .area_form_table {
		display: block;
		width: 100%;
	}
	#confirm .area_form_table tbody,
	#confirm .area_form_table tr,
	#confirm .area_form_table th,
	#confirm .area_form_table td {
			display: block;
	}
	#confirm .area_form_table th {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		margin-bottom: 1.2rem;
		padding-bottom: 1.2rem;
		border-width: .1rem;
	}
	#confirm .area_form_table th i {
		transform: unset;
		-webkit-transform: unset;
		-moz-transform: unset;
		-ms-transform: unset;
		-o-transform: unset;
}
	#confirm .area_form_table td {
		font-size: 1.6rem;
	}
		#confirm .button_wrap {
			gap: 1.6rem;
		}
	.area_confirm_submit {
		max-width: 36rem;
		height: 9rem;
		font-size: 2rem;
		border-width: .6rem;
		border-radius: 1rem;
		-webkit-border-radius: 1rem;
		-moz-border-radius: 1rem;
		-ms-border-radius: 1rem;
		-o-border-radius: 1rem;
	}
	.area_confirm_back {
		padding-bottom: .3rem;
		font-size: 2rem;
		border-width: .1rem;
	}
}

/* area complete */
.conplete_wrap {
	line-height: normal;
}
.p-form__complete-inner {
	margin: auto;
	padding: 0 calc(16 / 375 * 100vw);
	max-width: 70rem;
}
.p-form__complete-lead {
	display: flex;
	gap: .25rem;
	flex-direction: column;
	margin-bottom: 4.8rem;
	padding: 1.6rem 2rem;
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	background-color: #ea5405;
}
.p-form__complete-lead span {
	font-size: .75em;
}
.p-form__complete-lead b {
	margin: auto;
	width: fit-content;
	font-weight: bold;
	border-bottom: 1px solid #fff;
}
.p-form__complete-info {
	margin: 4.8rem 0;
	font-size: 1.6rem;
}
.p-form__complete-info p {
	margin-bottom: .8rem;
	font-weight: bold;
}
.p-form__complete-info ul {
	font-size: .75em;
}
.p-form__complete-info li {
	padding-left: 1em;
	text-indent: -1em;
}
.p-form__details {
	margin-bottom: calc(64 / 375 * 100vw);
}
.p-form__details h3 {
	margin: 0 0 calc(20 / 375 * 100vw);
	padding-left: calc(10 / 375 * 100vw);
	font-size: calc(16 / 375 * 100vw);
	font-weight: bold;
}
.p-form__details-table {
	width: 100%;
	font-size: calc(14 / 375 * 100vw);
	text-align: left;
	border: calc(1 / 375 * 100vw) solid #ccc;
	border-width: calc(1 / 375 * 100vw) 0;
	border-collapse: collapse;
}
.p-form__details-table th {
	padding-bottom: calc(18 / 375 * 100vw);
	padding-left: calc(12 / 375 * 100vw);
	width: calc(8em + 2.666666666666667vw);
	font-weight: 500;
	vertical-align: baseline;
}
.p-form__details-table td {
	padding-bottom: calc(18 / 375 * 100vw);
	padding-left: calc(36 / 375 * 100vw);
	font-weight: 300;
}
.p-form__details-table tr:first-child th,
.p-form__details-table tr:first-child td {
	padding-top: calc(18 / 375 * 100vw);
}
.p-form__complete-text h3 {
	margin: 0 0 calc(18 / 375 * 100vw);
	font-size: calc(15 / 375 * 100vw);
	color: #db5e29;
	font-weight: bold;
	text-align: center;
}
.p-form__complete-tel-wrap {
	margin-bottom: calc(32 / 375 * 100vw);
	text-align: center;
}
.p-form__complete-tel-wrap span {
	display: block;
	margin-bottom: calc(6 / 375 * 100vw);
	font-size: calc(12 / 375 * 100vw);
}
.p-form__complete-tel-wrap p {
	margin: 0;
	font-size: calc(12 / 375 * 100vw);
}
.p-form__complete-tel {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: calc(6 / 375 * 100vw);
	margin-bottom: calc(6 / 375 * 100vw);
}
.p-form__complete-tel i {
	width: calc(24 / 375 * 100vw);
	transform: translateY(.8vw);
	-webkit-transform: translateY(.8vw);
	-moz-transform: translateY(.8vw);
	-ms-transform: translateY(.8vw);
	-o-transform: translateY(.8vw);
}
.p-form__complete-tel i img {
	display: block;
	max-width: 100%;
}
.p-form__complete-tel strong {
	font-size: calc(39 / 375 * 100vw);
	color: #DB5E28;
	letter-spacing: -.39vw;
	line-height: 1;
	font-weight: 500;
	font-family: Oswald;
}

@media screen and (min-width: 750px) {
	.p-form__complete-inner {
		padding: 0 3.2rem;
	}
	.p-form__details {
		margin-bottom: 6.4rem;
	}
	.p-form__details h3 {
		margin-bottom: 2rem;
		padding-left: 1rem;
		font-size: 2.25rem;
	}
	.p-form__details-table {
		border-width: .1rem 0;
		font-size: 2rem
	}
	.p-form__details-table th {
		padding: 0 0 2.4rem 1rem;
		width: 17rem;
	}
	.p-form__details-table td {
		padding: 0 0 2.4rem 5rem;
	}
	.p-form__details-table tr:first-child th,
	.p-form__details-table tr:first-child td {
			padding-top: 2.4rem;
		}
	.p-form__complete-text h3 {
		margin-bottom: 3.2rem;
		font-size: 2rem;
	}
	.p-form__complete-tel-wrap {
		margin-bottom: 3.2rem;
	}
	.p-form__complete-tel-wrap span {
		margin-bottom: .4rem;
		font-size: 1.4rem;
	}
	.p-form__complete-tel-wrap p {
		font-size: 1.6rem;
	}
	.p-form__complete-tel i {
		width: 1.5rem;
	}
	.p-form__complete-tel strong {
		font-size: 5.2rem;
		letter-spacing: -.15rem;
	}
	.p-form__complete-tel {
		gap: .8rem;
		margin-bottom: 1.6rem;
	}
	.p-form__complete-tel i {
		width: 3.2rem;
		transform: translateY(.2rem);
	}
	.p-form__complete-lead {
		padding: 3.2rem;
		font-size: 2.4rem;
	}
	.p-form__complete-info {
		margin: 6.4rem auto;
		width: fit-content;
	}
}

.info-modal {
	padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
	font-size: calc(32 / 375 * 100vw);
}
.info-modal_logo {
	display: block;
	margin: 0 auto calc(14 / 375 * 100vw);
	width: calc(150 / 375 * 100vw);
}
.info-modal_logo img {
	display: block;
	width: 100%;
}
.info-modal_lead {
	margin-bottom: calc(20 / 375 * 100vw);
	line-height: 1.4;
	text-align: center;
	font-size: .5em;
}
.info-modal_lead h3 {
	margin-bottom: calc(8 / 375 * 100vw);
	font-weight: bold;
}
.info-modal_lead p {
	font-size: .75em;
}
.info-modal_tel_wrap {
	margin-bottom: calc(20 / 375 * 100vw);
	padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
	text-align: center;
	border-radius: calc(8 / 375 * 100vw);
	background-color: #FDEEE6;
	-webkit-border-radius: calc(8 / 375 * 100vw);
	-moz-border-radius: calc(8 / 375 * 100vw);
	-ms-border-radius: calc(8 / 375 * 100vw);
	-o-border-radius: calc(8 / 375 * 100vw);
}
.info-modal_tel_wrap h4 {
	margin-bottom: calc(12 / 375 * 100vw);
	font-size: .5em;
	font-weight: bold;
}
.info-modal_tel_flex {
	position: relative;
	margin: auto;
	width: fit-content;
}
.info-modal_tel_flex i {
	position: absolute;
	top: calc(3 / 375 * 100vw);
	right: calc(100% + 1.6vw);
	bottom: 0;
	margin: auto;
	width: fit-content;
	height: fit-content;
	font-size: .625em;
	color: #EA5304;
}
.info-modal_tel_flex a {
	margin: auto;
	width: fit-content;
	letter-spacing: -.0375128em;
	font-weight: 500;
	color: #EA5304;
	font-family: Oswald;
}
.info-modal_tel_hour {
	display: block;
	margin-top: calc(8 / 375 * 100vw);
	font-size: .375em;
}
.info-modal .cta_button p {
	display: flex;
	gap: .125em;
	align-items: flex-end;
	margin: auto;
	font-size: calc(22 / 375 * 100vw);
}
.info-modal .cta_button p small {
	font-size: .7em;
}
.modal-close {
	position: absolute;
	top: calc(10 / 375 * 100vw);
	right: calc(10 / 375 * 100vw);
	display: block;
	width: calc(20 / 375 * 100vw);
	height: calc(20 / 375 * 100vw);
	cursor: pointer;
}
.modal-close span {
	position: absolute;
	top: calc(10 / 375 * 100vw);
	right: 0;
	display: block;
	width: calc(20 / 375 * 100vw);
	height: calc(2 / 375 * 100vw);
	background-color: #333;
	pointer-events: none;
}
.modal-close span:nth-child(1) {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
}
.modal-close span:nth-child(2) {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
}

@media screen and (min-width: 750px) {
	.info-modal {
		padding: 3.2rem;
		font-size: 46px;
	}
	.info-modal_logo {
		max-width: 230px;
		margin-bottom: 14px;
	}
	.info-modal_lead {
		margin-bottom: 20px;
	}
	.info-modal_lead h3 {
		margin-bottom: 8px;
	}
	.info-modal_tel_wrap {
		margin-bottom: 20px;
		padding: 20px 10px;
		border-radius: 8px;
	}
	.info-modal_tel_wrap h4 {
		margin-bottom: 12px;
	}
	.info-modal_tel_flex i {
		top: 3px;
		right: calc(100% + 8px);
	}
	.info-modal_tel_hour {
		margin-top: 8px;
	}
	.info-modal .cta_button {
		margin: auto;
		max-width: 300px;
	}
	.modal-close {
		top: 20px;
		right: 16px;
		display: block;
		width: 32px;
		height: 23px;
		cursor: pointer;
	}
	.modal-close span {
		position: absolute;
		top: 10px;
		right: 0;
		display: block;
		width: 32px;
		height: 2px;
		background-color: #333;
		pointer-events: none;
	}
	.modal-close span:nth-child(1) {
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);	 
	}
	.modal-close span:nth-child(2) {
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
	}
}

/* campaign */
.campaign {
	margin: calc(50 / 375 * 100vw) 0;
	padding: calc(48 / 375 * 100vw) 0;
	background-color: #FFFAEC;
	font-family: 'Noto Sans JP', sans-serif;
}
.campaign .inner {
	padding: 0 calc(20 / 375 * 100vw);
}
.campaign_head {
	display: flex;
	gap: calc(8 / 375 * 100vw);
	align-items: center;
	flex-direction: column;
	margin-bottom: calc(32 / 375 * 100vw);
}
.campaign_head i {
	display: block;
	width: calc(150 / 375 * 100vw);
}
.campaign_head p {
	font-weight: 700;
	text-align: center;
	line-height: 1.3;
	font-size: calc(24 / 375 * 100vw);
}
.campaign_item_img {
	margin-bottom: calc(24 / 375 * 100vw);
}
.campaign_item_img img {
	display: block;
}
.campaign_item {
	line-height: 1.4;
	font-size: calc(20 / 375 * 100vw);
}
.campaign_item:not(:last-child) {
	margin-bottom: calc(40 / 375 * 100vw);
}
.campaign_item h3 {
	padding-left: calc(12 / 375 * 100vw);
	margin-bottom: calc(20 / 375 * 100vw);
	font-weight: bold;
	font-size: 1em;
	border-left: calc(5 / 375 * 100vw) solid #EA5405;
}
.campaign_item_text {
	margin-bottom: calc(18 / 375 * 100vw);
	font-size: .7em;
}
.campaign_item_text > p {
	font-size: 1em;
}
.campaign_item_text > p span {
	display: inline;
	padding-left: .5em;
	text-indent: inherit;
	font-size: .8em;
	font-weight: normal;
	color: #555;
	transform: translateY(-.1em);
}
.campaign_item_text span {
	display: block;
	text-indent: -.5em;
	font-weight: bold;
}
.campaign_note {
	margin-top: calc(18 / 375 * 100vw);
	text-align: justify;
	font-size: .857em;
	color: #555;
	font-weight: normal;
}
.campaign_note li {
	text-indent: -1em;
	padding-left: 1em;
}
.campaign_item a {
	display: flex;
	gap: calc(8 / 375 * 100vw);
	align-items: center;
	width: fit-content;
	margin-left: auto;
	color: #333;
	font-size: .7em;
	text-decoration: none;
}
.campaign_item a i {
	width: calc(8 / 375 * 100vw);
	transform: translateY(calc(1 / 375 * 100vw));
	-webkit-transform: translateY(calc(1 / 375 * 100vw));
	-moz-transform: translateY(calc(1 / 375 * 100vw));
	-ms-transform: translateY(calc(1 / 375 * 100vw));
	-o-transform: translateY(calc(1 / 375 * 100vw));
}
.campaign_list {
	display: flex;
	gap: calc(4 / 375 * 100vw);
	flex-direction: column;
	margin-top: calc(18 / 375 * 100vw);
}
.campaign_list li {
	text-indent: -1em;
	padding-left: 1em;
}
.campaign_list b {
	font-weight: bold;
}
.campaign_list p {
	text-indent: -.5em;
}

@media screen and (min-width: 750px) {
	.campaign {
		margin: 8rem 0;
		padding: 8rem 0;
	}
	.campaign .inner {
		max-width: 94rem;
		margin: auto;
		padding: 0 3.2rem;
		box-sizing: content-box;
	}
	.campaign_head {
		gap: 1.5rem;
		margin-bottom: 10rem;
	}
	.campaign_head i {
		width: 30rem;
	}
	.campaign_head p {
		font-size: 4.8rem;
	}
	.campaign_head br {
		display: none;
	}
	.campaign_item_img {
		margin: auto;
		max-width: 48rem;
		margin-bottom: 3rem;
	}
	.campaign_item {
		font-size: 3.2rem;
	}
	.campaign_item:not(:last-child) {
		margin-bottom: 4rem;
		padding-bottom: 4rem;
		border-bottom: .1rem solid #ccc;
	}
	.campaign_item h3 {
		padding-left: 1.2rem;
		margin-bottom: 2rem;
		border-left: .5rem solid #EA5405;
	}
	.campaign_item_wrap {
		margin: auto;
		max-width: 87rem;
	}
	.campaign_item_text {
		margin-bottom: 1.6rem;
		font-size: .6875em;
	}
	.campaign_note {
		margin-top: 1.6rem;
		font-size: .818181em;
	}
	.campaign_note li {
		text-indent: -1em;
		padding-left: 1em;
	}
	.campaign_item a {
		gap: .8rem;
		font-size: .6875em;
	}
	.campaign_item a i {
		width: 1.2rem;
		height: 2.2rem;
		transform: translateY(-.2rem);
	}
	.campaign_list {
		gap: 1.2rem;
		margin-top: 3.2rem;
	}
	.campaign_list li {
		text-indent: -1em;
		padding-left: 1em;
	}
	.campaign_list b {
		font-weight: bold;
	}
	.campaign_list p {
		text-indent: -.5em;
	}
}


/* intent modal */
.intent-modal {
	padding: calc(30 / 375 * 100vw) calc(16 / 375 * 100vw) calc(24 / 375 * 100vw);
}
.intent-modal-logo {
	margin-bottom: calc(24 / 375 * 100vw);
	width: calc(150 / 375 * 100vw);
}
.intent-modal-logo img {
	display: block;
	max-width: 100%;
}
.intent-modal_text {
	position: relative;
	margin-bottom: calc(16 / 375 * 100vw);
	line-height: 1.75;
	font-size: calc(16 / 375 * 100vw);
}
.intent-modal_text span {
	font-size: .8125em;
}
.intent-modal_text em {
	font-weight: 600;
	border-bottom: calc(2 / 375 * 100vw) solid #F9D22C;
}
.intent-modal_img {
	position: absolute;
	right: calc(21 / 375 * 100vw);
	bottom: calc(-16 / 375 * 100vw);
	width: calc(100 / 375 * 100vw);
}
.intent-modal_img img {
	display: block;
	width: 100%;
}
.intent-modal_list {
	display: flex;
	gap: calc(14 / 375 * 100vw);
	flex-direction: column;
}
.intent-modal-button {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: #fff;
	line-height: normal;
	font-size: calc(19 / 375 * 100vw);
	height: calc(100 / 375 * 100vw);
	border-radius: calc(10 / 375 * 100vw);
	box-shadow: calc(2.5 / 375 * 100vw) calc(4.35 / 375 * 100vw) calc(5 / 375 * 100vw) 0 rgba(7, 4, 4, 0.5);
	box-sizing: border-box;
}
.intent-modal-button::after {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(18 / 375 * 100vw);
	display: block;
	width: calc(6 / 375 * 100vw);
	height: calc(6 / 375 * 100vw);
	border-top: solid calc(3 / 375 * 100vw) #fff;
	border-right: solid calc(3 / 375 * 100vw) #fff;
	transform: rotate(45deg);
}
.intent-modal-button em {
	font-weight: 600;
}
.intent-modal-button em b {
	margin: 0 -.1em 0 -.25em;
}
.intent-modal-button span {
	font-size: .7em;
}
.intent-modal-button small {
	display: block;
	font-size: .6em;
}
.intent-modal-apply {
	background-image: linear-gradient(to top, #ba4000, #ff6818);
	border: calc(6 / 375 * 100vw) outset #ff6818;
}
.intent-modal-apply i {
	position: absolute;
	top: 0;
	left: calc(12 / 375 * 100vw);
	bottom: 0;
	margin: auto;
	width: calc(28 / 375 * 100vw);
	height: calc(25.88 / 375 * 100vw);
}
.intent-modal-apply i img {
	display: block;
	max-width: 100%;
}
.intent-modal-apply em {
	margin-right: -.125em;
}
.intent-modal-support {
	background-image: linear-gradient(to top, #555, #888);
	border: calc(6 / 375 * 100vw) outset #888;
	text-decoration: unset;
}
.intent-modal .modal-close span {
	width: calc(22 / 375 * 100vw);
}

@media screen and (min-width: 750px) {
	.intent-modal {
		max-width: 330px;
		padding: 30px 16px 24px;
	}
	.intent-modal-logo {
		margin-bottom: 24px;
		width: 150px;
	}
	.intent-modal_text {
		margin-bottom: 16px;
		font-size: 16px;
	}
	.intent-modal_text em {
		border-bottom: 2px solid #F9D22C;
	}
	.intent-modal_img {
		right: 21px;
		bottom: -16px;
		width: 100px;
	}
	.intent-modal_list {
		gap: 14px;
	}
	.intent-modal-button {
		font-size: 19px;
		height: 100px;
		border: 6px outset #ff6818;
		border-radius: 10px;
		box-shadow: 2.5px 4.35px 5px 0 rgba(7, 4, 4, 0.5);
	}
	.intent-modal-button::after {
		right: 18px;
		width: 6px;
		height: 6px;
		border-top: solid 3px #fff;
		border-right: solid 3px #fff;
	}
	.intent-modal-apply {
		border: 6px outset #ff6818;
	}
	.intent-modal-apply i {
		left: 12px;
		width: 28px;
		height: 25.88px;
	}
	.intent-modal-support {
		border: 6px outset #888;
	}
	.intent-modal .modal-close span {
		width: 22px	;
	}
}