@charset "utf-8";



/**外部フォント取り込み**/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('http://fonts.cdnfonts.com/css/roboto');
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@100;200;300;400;500;600;700&display=swap');



/**基本の設定**/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
margin: 0;
padding: 0;
}
html{
font-family:'Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
color: #1A1A1A;
font-size: 16px;
line-height: 1.75;
scroll-behavior: smooth;
}
* {
box-sizing: border-box;
}
a {
display: inline-block;
transition: .3s;
}
img {
vertical-align: top;
max-width: 100%;
}
a:hover {
text-decoration: none;
}
ol,ul {
list-style:none;
}
.fs21 {
font-size: 21px;
}
.fb {
font-weight: 700;
}
.nodis {
display: none;
}
.mb40 {
margin-bottom: 40px;
}
.mt60 {
margin-top: 60px;
}
.t_small {
font-size: small;
}
.yakuhan {
font-family: YakuHanJP,'Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
}
.roboto {
font-family:'Roboto','Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
}
.about_text_ul {
border-bottom: 3px solid rgb(253,165,0);
}

/**CTAの管理**/
.cvbtn {
width: 100%;
text-align: center;
}
.cvbtn a {
background: rgb(253,165,0);
border-radius: 4px;
box-shadow: 0px 5px 10px 0 rgba(0, 0, 0, 0.4);
color: #fff;
text-decoration: none;
font-size: 18px;
font-weight: bold;
text-align: center;
padding: 10px 20px;
}
@media screen and (min-width: 768px) {
.cvbtn a:hover {
opacity: 0.7;
}
}


/**for PC**/
@media screen and (min-width:768px) {
.sp {
display: none;
}
}


/**for SP**/
@media screen and (max-width:767px) {
html {
font-size: 14px;
}
.pc {
display: none;
}
}


/**ヘッダー**/
header {
padding: 0 32px;
width: 100%;
background: #fff;
position: fixed;
left: 0;
top: 0;
z-index: 999;
}
.header_inner {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
justify-content: space-between;
align-items: center;
width: 100%;
max-width: 1200px;
height: 80px;
margin: 0 auto;
}
.header_inner_right_btn a {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
justify-content: center;
align-items: center;
width: 280px;
height: 48px;
background: rgb(253,165,0);
border-radius: 4px;
box-shadow: 0px 5px 10px 0 rgba(0, 0, 0, 0.4);
color: #fff;
text-decoration: none;
font-weight: bold;
}

@media screen and (min-width: 768px) {
.header_inner_right_btn a:hover {
opacity: 0.7;
}
}
@media screen and (max-width:767px) {
header {
padding: 0 12px;
}
.header_inner {
height: 48px;
}
.header_inner_left_logo {
width: 84px;
}
.header_inner_right_btn a {
width: auto;
height: 28px;
padding-inline: 10px;
border-radius: 2px;
}
}


/**mv**/
section#mv {
padding: 128px 20px 78px;
}
.mv_inner {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
justify-content: space-between;
align-items: center;
width: 1000px;
margin: 0 auto;
}
.mv_inner_text {
text-align: center;
font-weight: 700;
margin: 40px 0 0;
font-size: 24px;
}
.mv_inner_left  {
width: 550px;
}
.mv_inner_right  {
width: 450px;
}
.mv_h1 {
font-size: 42px;
font-weight: 700;
text-align: center;
color: #EE6D01;
margin: 0 auto 20px;
line-height: normal;
}
.mv_inner_left_box {
display: flex;
margin-bottom: 20px;
align-items: center;
}
.mv_inner_left_logo img {
width: 300px;
}
.mv_inner_left_text {
font-size: 28px;
font-weight: 700;
margin-bottom: 10px;
}
.mv_inner_left_catch {
font-size: 52px;
font-weight: 800;
margin: -10px 0 0 10px;
}
.mv_inner_left_box_text {
background: rgb(161,206,96);
padding: 10px 15px;
width: 500px;
text-align: center;
font-weight: 700;
color: #FFF;
}
.mv_inner_right_img {
margin: 0 -20px 0 0;
}
.mv_inner_left_btn a {
margin: 0;
text-align: center;
}


/**トップ画の装飾用**/
.mv_inner_right_img img {
border-radius: 20px;
box-shadow: 0 5px 10px 0 rgba(0,0,0, 0.4);
}

@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
section#mv {
padding: 88px 20px 64px;
margin: 0 auto;
}
.mv_inner {
width: 100%;
padding: 5px;
display: block;
}
.mv_inner_left_box {
display: block;
margin: 0 auto 20px;
text-align: center;
line-height: 1;
}
.mv_h1 {
font-size: 24px;
}
.mv_inner_left, .mv_inner_left_logo img {
width: 100%;
}
.mv_inner_left_logo {
width: 100%;
max-width: 300px;
margin: 0 auto;
}
.mv_inner_left_text {
font-size: 18px;
width: 100%;
margin: 0 0 20px;
}
.mv_inner_left_catch {

}
.mv_inner_right {
width: 100%;
}
.mv_inner_right_img {
margin: 0 auto 40px;
text-align: center;
}
.mv_inner_left_box_text {
width: 100%;
margin: 0 auto 20px;
}
.mv_inner_btn {
text-align: center;
}
}


/**section01**/
section#section01 {
background: #A1CE60;
padding: 0 20px;
margin: 60px 0 0;
}
.section01_inner {
width: 1000px;
margin: 0 auto;
padding: 64px 0 56px;
}
.section01_inner_title {
color: #fff;
font-size: 32px;
font-weight: bold;
margin: 0 auto 20px;
text-align: center;
}
.section01_inner_box {
max-width: 900px;
background: #FFFFFF;
border-radius: 10px;
padding: 20px;
margin: 0 auto 40px;
}
.section01_inner_box_catch {
color: rgb(161,206,96);
font-size: 21px;
font-weight: 700;
}
.section01_inner_box_text {
font-size: 18px;
border-radius: 10px;
padding: 20px;
background: rgb(243,248,234);
margin: 15px 0 0;
}
.markerYellow {
background: linear-gradient(transparent 70%,rgb(161,206,96,0.4) 60%);
}

@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
.section01_inner {
width: 100%;
background-size: 152px auto;
background-position: center bottom;
padding: 40px 0 64px;
}
.section01_inner_title {
text-align: center;
font-size: 28px;
}
.section01_inner_fukidashi li {
width: 100%;
margin: 0 0 16px;
padding: 8px;
text-align: center;
font-size: 14px;
line-height: 1.45;
}
}


/**section02**/
section#section02 {
background: #FFFFFF;
padding: 0 20px 0;
}
.section02_inner {
margin: 0 auto 60px;
padding: 64px 0 0;
width: 100%;
max-width: 898px;
}
.section02_inner_title {
font-size: 32px;
line-height: 1.45;
font-weight: bold;
margin: 0 auto 32px;
text-align: center;
}
.section02_inner_text {
text-align: center;
line-height: 2;
margin: 0 0 20px;
}
.section02_inner_reason {
position: relative;
color: #FFFFFF;
text-align: center;
background: #EE6D01;
padding: 10px 20px;
border-radius: 30px;
width: 200px;
margin: 0 auto 30px;
}
.section02_inner_reason:after {
content: "";
display: inline-block;
border: 12px solid transparent;
border-top: 23px solid #EE6D01;
position: absolute;
left: 90px;
top: 52px;
}
.section02_inner_reson_list {
width: fit-content;
margin: 0 auto 20px;
padding: 20px 20px 20px 40px;
background: #FFDB00;
border-radius: 10px;
}
.section02_inner_reson_list li {
list-style: disc;
}

@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
.section02_inner_text {
text-align: left;
line-height: 1.75;
margin: 0 0 40px;
}
.attention {
font-size: 1.5em;
}
}


/**section03**/
section#section03 {
background: #F7F7F7;
padding: 0 20px 40px;
}
.section03_inner {
margin: 60px auto 0;
padding: 64px 0 56px;
}
.section03_inner_title {
font-size: 32px;
line-height: 1.45;
font-weight: bold;
margin: 0 auto 32px;
text-align: center;
}
.three_reason {
width: 100%;
height: 220px;
border: 2px solid #000000;
margin: 0 auto 30px;
border-radius: 10px;
background: #FFFFFF;
}
.three_reason_inner {
display: flex;
justify-content: space-between;
border-radius: 10px;
}
.left_img {

}
.reason_no_img {

}
.p_fil {
/*filter: hue-rotate(135deg);*/
}
.reason_no_img img {
margin-left: 15px;
margin-top: 15px;
width: 93%;
}
.right_img {
padding: 15px 15px 15px 30px;
}
.right_img_title {
font-size: 24px;
font-weight: 700;
margin: 5px 0 15px;
color: #444;
}
.right_img_text {
line-height: 1.8;
width: 550px;
}

@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
.section03_inner_text {
text-align: left;
line-height: 1.75;
margin: 0 0 40px;
}
.three_reason {
width: 100%;
height: auto;
}
.three_reason_inner {
display: block;
}
.reason_no_img {
width: 100%;
text-align: center;
}
.reason_no_img img {
width: 90%;
margin: 10px auto 0;
}
.right_img_title {
font-size: 18px;
}
.right_img {
padding: 15px;
}
.right_img_text {
width: 100%;
}
}


/**使い方**/
section#use {
background: #FFF;
padding: 40px 0 0;
margin: 40px auto;
}
.use_inner {
max-width: 900px;
background: #FFF;
margin: 0 auto;
padding: 40px 0;
}
.use_inner_box {
position: relative;
background: rgb(243,248,234);
border-radius: 10px;
padding: 12px;
margin: 0 0 20px;
}
.triangle {
margin: 20px auto;
width: 100%;
max-width: 100px;
border-top: 25px solid rgb(243,248,234);
border-right: 50px solid transparent;
border-left: 50px solid transparent;
}
.triangle2 {
border-top: 25px solid rgb(149,155,201,0.3);
}
.triangle3 {
border-top: 25px solid rgb(149,155,201,0.5);
}
.triangle4 {
border-top: 25px solid rgb(149,155,201,0.7);
}
.use_inner_box_title {
font-weight: 600;
margin-bottom: 10px;
font-size: 14px;
}
.use_inner_box_text {
padding: 12px;
background: #FFF;
border-radius: 10px;
font-size: 14px;
}

@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
section#use {
padding: 32px 16px 0;
}
.use_inner {
padding: 10px;
}
}


/**よくある質問**/
section#faq {
background: #F7F7F7;
padding: 80px 20px;
}
.faq_inner {
width: 100%;
max-width: 680px;
margin: 0 auto;
}
.faq_inner_content dl + dl {
margin: 52px 0 0;
}
.faq_inner_content dt {
color: rgb(137,198,49);
font-size: 20px;
font-weight: 700;
margin: 0 0 24px;
position: relative;
}
.faq_inner_content dt:before {
content: "Q.";
font-family: 'Arial',sans-serif;
font-size: 32px;
position: absolute;
left: -42px;
top: -12px;
}
.faq_inner_content dd {
position: relative;
}
.faq_inner_content dd:before {
content: "A.";
font-family: 'Arial',sans-serif;
color: rgb(248,135,47);
font-size: 24px;
font-weight: 700;
position: absolute;
left: -32px;
top: -6px;
}
@media screen and (max-width:767px) {
section#faq {
padding: 64px 16px;
}
.faq_inner_content dl {
padding: 0 0 0 36px;
}
.faq_inner_content dl + dl {
margin: 40px 0 0;
}
.faq_inner_content dt {
font-size: 18px;
margin: 0 0 18px;
}
.faq_inner_content dt:before {
font-size: 24px;
left: -32px;
top: -4px;
}
.faq_inner_content dd {
font-size: 14px;
}
}


/**フォーム**/
section#form {
padding: 84px 20px 120px;
}
.form_inner {
width: 100%;
max-width: 1000px;
margin: 0 auto;
}
.form_inner_content {
				border: 2px solid #ddd;
				padding: 30px;
				border-radius: 10px;
}
.form_title {
				text-align: center;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 24px;
}
.form_text {
				margin-bottom: 42px;
}
.form_text p {
				font-size: 14px;
}
.form_text p + p {
				margin-top: 1em;
}
.form_inner_content form {
				display: flex;
				flex-flow: row wrap;
				gap: 32px;
}
.form_item {
				display: flex;
				flex-flow: row wrap;
				align-content: center;
				align-items: stretch;
				gap: 20px;
				width: 100%;
}
.form_item.name {
				width: calc(50% - 16px);
}
.form_label {
				width: 100%;
				font-weight: bold;
				display: flex;
				flex-flow: row wrap;
				align-content: center;
				justify-content: flex-start;
				align-items: center;
				padding: 10px;
				font-size: 18px;
				border-bottom: 2px solid #ddd;
}
.form_note {
				display: inline-block;
				width: 100%;
				font-size: 14px;
				font-weight: 500;
}
.form_input {
				width: 100%;
}
.form_input > input, .form_input select+div {
				width: 100% !important;
				height: 48px;
				border: none;
				background: #f7f7f7;
				outline: none;
}
.form_input input {
				padding: 10px;
}
.form_input select+div button {
				height: 100%;
				background: no-repeat;
				border: none;
}
.form_input select+div button span {
				top: 50%;
				left: 10px;
				font-size: 16px;
				translate: 0 -50%;
}
.form_input select+div button .icon-caret {
				border-top: 10px solid #8bc632;
				border-inline: 6px solid transparent;
				translate: 0 -2px;
				right: 20px;
}
.form_input select+div button .icon-caret.open {
				border-bottom: 10px solid #8bc632;
				border-inline: 6px solid transparent;
				translate: 0 -2px;
				right: 20px;
}
.form_submit {
				width: 100%;
}
.form_submit input {
				display: flex;
				flex-flow: row wrap;
				align-content: center;
				justify-content: center;
				align-items: center;
				width: min(90%, 320px);
				background: #8bc632;
				border-radius: 10px;
				border: none;
				padding-block: 12px;
				margin-inline: auto;
				margin-top: 56px;
				color: #fff;
				font-size: 20px;
				font-weight: bold;
				cursor: pointer;
				transition: .3s;
}
@media screen and (min-width: 768px) {
	.form_submit input:hover {
		opacity: .7;
	}
	}
@media screen and (max-width:767px) {
	section#form {
					padding: 64px 20px;
	}
	.form_inner {
					width: 100%;
	}
	.form_inner_content {
					padding: 20px;
	}
	.form_title {
					font-size: 28px;
					margin: 0 0 16px;
	}
	.form_text {
					margin-bottom: 28px;
	}
	.form_text p {
					font-size: 12px;
	}
	.form_inner_content form {
					gap: 20px;
	}
	.form_item {
					gap: 0;
	}
	.form_item.name {
					width: calc(50% - 10px);
	}
	.form_label {
					width: 100%;
					padding: 0 4px 2px;
					font-size: 16px;
	}
	.form_input {
					width: 100%;
	}
	.form_input input, .form_input select+div {
					height: 42px;
	}
	.form_submit input {
					margin-top: 36px;
	}
}

/**footer**/
footer {
background: #F7F7F7;
}
.footer_top {
padding: 64px 20px 136px;
}
.footer_top_inner {
width: 800px;
margin: 0 auto;
}
.footer_top_inner_title {
text-align: center;
font-size: 32px;
font-weight: bold;
line-height: 1.45;
margin: 0 0 24px;
}
.footer_top_inner_content dl {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
justify-content: flex-start;
align-items: center;
border-top: 1px solid #C4C4C4;
padding: 24px 0;
}
.footer_top_inner_content dl:nth-of-type(1) {
border: none;
}
.footer_top_inner_content dt {
width: 143px;
font-weight: bold;
}
.footer_top_inner_content dd {
width: calc(100% - 143px);
line-height: 1.45;
}
.footer_bottom {
padding: 0 20px 32px;
}
.footer_bottom_copy {
text-align: center;
font-size: 12px;
}
@media screen and (min-width: 768px) {

}
@media screen and (max-width:767px) {
.footer_top {
padding: 48px 20px 100px;
}
.footer_top_inner {
width: 100%;
}
.footer_top_inner_title {
font-size: 28px;
margin: 0 0 12px;
}
.footer_top_inner_content dl {
padding: 20px 0;
}
.footer_top_inner_content dt {
width: 100%;
margin: 0 0 16px;
font-size: 16px;
}
.footer_top_inner_content dd {
width: 100%;
font-size: 16px;
}
}





/** thanks **/
#thanks {
				padding-inline: 20px;
				background: #F3F8EA;
				border-bottom: 20px solid #F7F7F7;
				min-height: calc(100vh - 55px);
				display: flex	;
				flex-flow: row wrap;
				align-content: center;
				justify-content: center;
				align-items: center;
}
.thanks_inner {
				display: flex;
				flex-flow: column wrap;
				align-content: center;
				justify-content: center;
				align-items: center;
				width: min(1000px, 100%);
				height: max(100%, 1vh);
				margin-inline: auto;
}
.thanks_title {
				text-align: center;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 48px;
}
.thanks_text {
				text-align: center;
				font-size: 18px;
				font-weight: bold;
				margin-bottom: 32px;
}
.thanks_back a {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 64px;
				background: #FDA500;
				border-radius: 4px;
				box-shadow: 2px 2px 5px #0000001A;
				margin: 0 auto;
				color: #fff;
				text-decoration: none;
				font-size: 18px;
				font-weight: bold;
}
@media screen and (min-width: 768px) {
	.thanks_back a:hover {
		opacity: .7;
	}
	}
	@media screen and (max-width:767px) {
		.thanks_title {
						font-size: 28px;
						margin-bottom: 32px;
		}
		.thanks_text {
						font-size: 16px;
		}
		
	}