@charset "UTF-8";

/* ----------------------------------------
  reset
---------------------------------------- */

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
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 {
	border: 0;
	font: inherit;
	font-size: 100%;
	margin: 0;
	padding: 0;
	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, q:before, q:after {
	content: none;
	content: "";
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* for googlemap */
html,
body {
	height: 100%;
}

/* 全要素に border-box */
* {
	box-sizing: border-box;
}

@media screen and (max-width: 768px) {
	.container {
		padding: 0 10px;
	}
}


/* ----------------------------------------
  normalize
---------------------------------------- */

html {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}
@media all and (-ms-high-contrast: none)  {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}
@media all and (-ms-high-contrast: active) {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

body {
	background-color: #fff;
	color: #242424;
	font-size: 14px;
	line-height: 2.4;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #242424;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
@media screen and (max-width: 768px) {
	body {
		font-size: 12px;
	}
}


/* contents
---------------------------------------- */
.container {
	text-align: center;
}
.fixed_btn {
	text-align: center;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 200;
}
/* SP */
@media screen and (max-width: 768px) {
	.fixed_btn {
		padding: 10px;
	}
}

.bg_grey {
	background-color: #f7f7f7;
	padding-top: 1px;
}
.bg_white {
	background-color: #fff;
	padding-top: 1px;
}
.bg_orange {
	background-color: #eb5505;
	padding-top: 1px;
}

/* ボタン関連 */
.btn_text {
	font-size: 16px;
	letter-spacing: 0.1em;
}
.btn_text span {
	font-size: 24px;
	font-weight: bold;
}
/* SP */
@media screen and (max-width: 768px) {
	.btn_text {
		font-size: 14px;
	}
	.btn_text span {
		font-size: 18px;
	}
}

/* ボタンアニメーション */
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
.btn_anime {
	animation: poyopoyo 1.5s infinite;
}

/* ファーストビュー */
.firstview {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 815px;
	background: #eb5505 url(../images/firstview_bg.png) no-repeat center top;
	background-size: 1920px 570px;
	position: relative;
}
.firstview_img {
	width: 865px;
	height: 169px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 6%;
	margin: auto;
}
/* SP */
@media screen and (max-width: 768px) {
	.firstview {
		padding-top: 80%;
		background-size: auto 68%;
	}
	.firstview_img {
		width: 100%;
		height: auto;
		padding: 0 10px;
	}
}

/* リード */
.lead .bg_grey {
	padding-bottom: 10%;
}
.lead_img1 {
	margin-top: 6%;
}
.lead .bg_white {
	padding-bottom: 10%;
}
.lead_img2 {
	margin-top: -8%;
}
.lead_img3 {
	margin-top: 4%;
}
.lead_img4 {
	margin-top: 4%;
}
@media screen and (max-width: 768px) {
	.lead .bg_white {
		padding-bottom: 15%;
	}
}

/* CTAエリア */
.cta_img1 {
	margin-top: -4%;
}
.cta_img2 {
	margin: 4% 0;
}
.cta_btn {
	margin-bottom: -5%;
}
.cta_blank {
	padding-bottom: 10%;
}
/* SP */
@media screen and (max-width: 768px) {
	.cta {
		padding: 1px 20px 0;
	}
	.cta_img1 {
		width: 40px;
		margin: -10% auto 0;
	}
	.cta_img2 {
		margin: 8% 0;
	}
	.cta_btn {
		margin-bottom: -10%;
	}
	.cta_blank {
		padding-bottom: 20%;
	}
}

/*不安 */
.doubt {
	padding-bottom: 6%;
}
.doubt_img1 {
	margin-top: 8%;
}
/* SP */
@media screen and (max-width: 768px) {
	.doubt {
		padding-bottom: 12%;
	}
	.doubt_img1 {
		margin-top: 16%;
	}
}

/* 見出し */
.heading {
	padding-top: 3%;
	padding-bottom: 3%;
}
/* SP */
@media screen and (max-width: 768px) {
	.heading img {
		max-height: 18px;
	}
	.heading.two img {
		max-height: 40px;
	}
}

/* 選ばれる理由 */
.reason {
	padding: 3% 0 8%;
}
.reason_item {
	width: 610px;
	margin: 120px auto 0;
	text-align: left;
	position: relative;
	z-index: 1;
}
.reason_item:after {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
}
.reason_item1:after {
	background: url(../images/reason1_img.png) no-repeat center center;
	width: 299px;
	height: 316px;
	left: -42%;
	top: -16%;
}
.reason_item2:after {
	background: url(../images/reason2_img.png) no-repeat center center;
	width: 299px;
	height: 312px;
	right: -40%;
	top: -78%;
}
.reason_item3:after {
	background: url(../images/reason3_img.png) no-repeat center center;
	width: 299px;
	height: 318px;
	left: -40%;
	top: -42%;
}
.reason_head {
	border-radius: 30px;
	border: solid 2px #eb5505;
	background-color: #fff;
	height: 64px;
	color: #eb5505;
	font-size: 24px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	position: relative;
}
.reason_head:before {
	content: "";
	display: block;
	width: 120px;
	height: 66px;
	background-repeat: no-repeat;
	background-position: center bottom;
	position: absolute;
	top: -125px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.reason_item1 .reason_head:before {
	background-image: url(../images/reason1_mark.png);
}
.reason_item2 .reason_head:before {
	background-image: url(../images/reason2_mark.png);
}
.reason_item3 .reason_head:before {
	background-image: url(../images/reason3_mark.png);
}
.reason_item3 .reason_head:after {
	content: "※一部離島等地域除く";
	display: block;
	color: #242424;
	font-size: 12px;
	line-height: 1;
	position: absolute;
	right: 0;
	bottom: -20px;
}
.reason_body {
	margin-top: 30px;
	font-size: 16px;
}
/* SP */
@media screen and (max-width: 768px) {
	.reason {
		padding: 0 0 15%;
	}
	.reason_item {
		width: 100%;
		margin-top: 60px;
		padding: 0 10px;
	}
	.reason_head:before {
		background-size: contain;
		width: 60px;
		height: 33px;
		top: -80px;
	}
	.reason_item:after {
		display: none;
	}
	.reason_head {
		height: 48px;
		font-size: 18px;
		line-height: 44px;
	}
	.reason_body {
		margin-top: 20px;
		font-size: 14px;
	}
	.reason_item3 .reason_head:after {
		bottom: -16px;
	}
}

/* 相談の流れ */
.flow {
	padding: 0 0 8%;
}
.flow_lead {
	margin-top: 40px;
	font-size: 24px;
}
.flow_item {
	width: 730px;
	margin: 60px auto 0;
	text-align: left;
	position: relative;
}
.flow_item:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 12px solid transparent;
	border-left: 12px solid transparent;
	border-top: 20px solid #eb5505;
	border-bottom: 0;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
}
.flow_item4:after {
	display: none;
}
.flow_head {
	padding-left: 200px;
	height: 49px;
	color: #eb5505;
	font-size: 24px;
	font-weight: bold;
	line-height: 49px;
	position: relative;
}
.flow_head:before {
	content: "";
	display: block;
	width: 183px;
	height: 49px;
	background-repeat: no-repeat;
	background-position: left center;
	position: absolute;
	left: 0;
	top: 0;
}
.flow_item1 .flow_head:before {
	background-image: url(../images/flow_step1.png);
}
.flow_item2 .flow_head:before {
	background-image: url(../images/flow_step2.png);
}
.flow_item3 .flow_head:before {
	background-image: url(../images/flow_step3.png);
}
.flow_item4 .flow_head:before {
	background-image: url(../images/flow_step4.png);
}
.flow_body {
	border: solid 2px #eb5505;
	padding: 20px 60px;
	position: relative;
}
.flow_body:after {
	content: "";
	display: block;
	position: absolute;
}
.flow_item1 .flow_body:after {
	background-image: url(../images/flow_step1_img.png);
	width: 183px;
	height: 151px;
	right: -120px;
	bottom: -58px;
}
.flow_item2 .flow_body:after {
	background-image: url(../images/flow_step2_img.png);
	width: 142px;
	height: 166px;
	left: -100px;
	bottom: -40px;
}
.flow_item3 .flow_body:after {
	background-image: url(../images/flow_step3_img2.png);
	width: 136px;
	height: 339px;
	right: -10px;
	bottom: 0;
}
.flow_item4 .flow_body:after {
	background-image: url(../images/flow_step4_img2.png);
	width: 127px;
	height: 345px;
	left: -24px;
	bottom: 0;
}
.flow_text {
	font-size: 16px;
}
.flow_img {
	margin-top: 20px;
	text-align: center;
}
.flow_item3 .flow_img {
	text-align: left;
}
.flow_item4 .flow_img {
	margin-bottom: 20px;
	text-align: right;
}
/* SP */
@media screen and (max-width: 768px) {
	.flow {
		padding-bottom: 15%;
	}
	.flow_lead {
		margin-top: 30px;
		font-size: 16px;
	}
	.flow_item {
		margin-top: 40px;
		width: 100%;
	}
	.flow_head {
		padding-left: 115px;
		height: 30px;
		font-size: 16px;
		line-height: 30px;
	}
	.flow_item3 .flow_head {
		font-size: 13px;
	}
	.flow_head:before {
		background-size: contain;
		width: 110px;
		height: 30px;
	}
	.flow_body {
		padding: 20px;
	}
	.flow_body:after {
		display: none;
	}
	.flow_text {
		font-size: 14px;
	}
}

/* 利用した方の感想 */
.voice_item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 820px;
	margin: 0 auto;
	padding: 40px 0;
}
.voice_item.left_img {
	flex-direction: row;
}
.voice_item.right_img {
	flex-direction: row-reverse;
}
.voice_img {
	width: 180px;
}
.voice_text {
	width: 600px;
	border-radius: 12px;
	border: solid 3px #eb5505;
	background-color: #fff;
	padding: 10px 20px;
	letter-spacing: .1em;
	position: relative;
	z-index: 1;
}
.voice_text:before {
	content: "";
	display: block;
	width: 0;
  height: 0;
	z-index: 3;
}
.voice_text:after {
	content: "";
	display: block;
	width: 0;
  height: 0;
	z-index: 2;
}
.voice_item.left_img .voice_text:before {
	border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 20px solid #fff;
  border-left: 0;
	position: absolute;
	left: -20px;
	top: 20px;
}
.voice_item.left_img .voice_text:after {
	border-style: solid;
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
  border-right: 25px solid #eb5505;
  border-left: 0;
  position: absolute;
	left: -25px;
	top: 17px;
}
.voice_item.right_img .voice_text:before {
	border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 20px solid #fff;
  border-right: 0;
	position: absolute;
	right: -20px;
	top: 20px;
}
.voice_item.right_img .voice_text:after {
	border-style: solid;
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
  border-left: 25px solid #eb5505;
  border-right: 0;
  position: absolute;
	right: -25px;
	top: 17px;
}
.voice_head {
	border-bottom: dotted 3px #eb5505;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.voice_body {
	padding: 10px 20px;
	font-size: 16px;
}
/* SP */
@media screen and (max-width: 768px) {
	.voice_item {
		width: 100%;
		padding: 20px 10px;
		align-items: flex-start;
	}
	.voice_img {
		width: 26%;
	}
	.voice_text {
		width: 68%;
		border-radius: 10px;
		padding: 10px;
		line-height: 1.75;
		letter-spacing: 0;
	}
	.voice_head {
		padding-bottom: 10px;
		font-size: 18px;
	}
	.voice_body {
		padding: 10px;
		font-size: 14px;
	}
}

/* 申し込みの流れ */
.step_pc {
	display: block;
	padding: 5% 0 10%;
}
.step_sp {
	display: none;
	padding-bottom: 60px;
}
.step_lead {
	width: 70%;
	margin: 30px auto 0;
}
.step_item {
	display: flex;
	margin: 30px auto 0;
}
.step_left {
	width: 40%;
	background-color: #eb5505;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80% auto;
	position: relative;
}
.step_left:after {
	content: "";
	display: block;
	width: 0;
  height: 0;
  border-style: solid;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  border-top: 12px solid #eb5505;
  border-bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -12px;
  margin: auto;
}
.step_item1 .step_left {
	background-image: url(../images/step1_img.png);
}
.step_item2 .step_left {
	background-image: url(../images/step2_img.png);
}
.step_item3 .step_left {
	background-image: url(../images/step3_img.png);
}
.step_item3 .step_left:after {
	display: none;
}
.step_right {
	width: 60%;
	background-color: #f7f7f7;
	padding: 20px;
	text-align: left;
}
.step_notice {
	margin-top: 20px;
	font-size: 12px;
	text-align: left;
}
/* SP */
@media screen and (max-width: 768px) {
	.step_pc {
		display: none;
	}
	.step_sp {
		display: block;
	}
}

/* よくあるご質問 */
.faq {
	padding: 3% 0 8%;
}
.faq_item {
	width: 692px;
	margin: 40px auto 0;
	border: solid 2px #007b94;
	background: url(../images/faq_icon.png) no-repeat left top;
	padding: 20px;
	text-align: left;
}
.faq_question {
	background: url(../images/faq_border.png) no-repeat right bottom;
	padding: 0 0 20px 100px;
	font-size: 22px;
	font-weight: bold;
	line-height: 2;
}
.faq_answer {
	padding: 20px 0 0;
	font-size: 16px;
}
/* SP */
@media screen and (max-width: 768px) {
	.faq {
		padding-bottom: 15%;
	}
	.faq_item {
		width: 100%;
		background-size: 70px auto;
	}
	.faq_question {
		padding: 0 20px 20px 60px;
		font-size: 18px;
	}
	.faq_answer {
		font-size: 14px;
	}
}

/* ご注意事項 */
.notice {
	width: 855px;
	margin: 10% auto 8%;
	background-color: #f7f7f7;
	padding: 60px 80px 80px;
	text-align: left;
}
.notice_head {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 2.5;
	letter-spacing: .2em;
}
.notice_list {
	margin-top: 20px;
}
.notice_list li {
	list-style-type: disc;
}
.notice_list li.indent {
	margin-left: 1em;
}
.notice_list li.interval {
	margin-top: 2.4em;
}
/* SP */
@media screen and (max-width: 768px) {
	.notice {
		width: 100%;
		padding: 20px 20px 40px;
	}
}

/* フッター */
.btns {
	display: flex;
	width: 960px;
	margin: 0 auto;
	justify-content: space-between;
	padding-top: 2%;
	padding-bottom: 2%;
	align-items: flex-end;
}
.blank {
	width: 142px;
}
.footer_nav {
	padding-bottom: 3%;
}
.copyright {
	padding-top: 1%;
	padding-bottom: 1%;
	font-size: 12px;
}
/* SP */
@media screen and (max-width: 768px) {
	.btns {
		width: 100%;
		padding-top: 6%;
		padding-bottom: 6%;
	}
	.footer_nav {
		padding-bottom: 6%;
	}
}


