@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');


html{
font-family:'Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
color: #1A1A1A;
font-size: 16px;
line-height: 1.75;
}
* {
	box-sizing: border-box;
}
a {
	display: inline-block;
	transition: .3s;
}
img {
	vertical-align: top;
	max-width: 100%;
}
a:hover {
	text-decoration: none;
}
.sp {
	display: none;
}
.yakuhan {
				font-family: YakuHanJP,'Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
}
.roboto {
				font-family:'Roboto','Noto Sans JP','メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
}
.cvbtn {
				width: 100%;
}
.cvbtn 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) {
	.cvbtn a:hover {
		opacity: .7;
	}
	}
@media screen and (max-width:767px) {
	html{
		font-size: 14px;
	}
	.pc {
				display: none;
	}
.sp {
				display: inline-block;
}
	img {
				width: 100%;
	}
				}




/**ヘッダー**/
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: 200px;
				height: 48px;
				background: #FDA500;
				border-radius: 4px;
				box-shadow: 2px 2px 5px #0000001A;
				color: #fff;
				text-decoration: none;
				font-weight: bold;
}
@media screen and (min-width: 768px) {
	.header_inner_right_btn a:hover {
		opacity: .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: 128px;
					height: 28px;
					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_left_logo {
				margin: 0 0 8px;
}
.mv_inner_left_catch {
				font-size: 22px;
				font-weight: bold;
				line-height: 1.5;
				margin: 0 0 40px;
}
.mv_inner_left_btn a {
				margin: 0;
}
.mv_inner_right_img {
				margin: 0 -20px 0 0;
}
@media screen and (min-width: 768px) {

	}
@media screen and (max-width:767px) {
	section#mv {
					padding: 88px 20px 64px;
	}
	.mv_inner {
					width: 100%;
	}
	.mv_inner_left_logo {
					width: 100%;
					max-width: 336px;
					margin: 0 auto;
	}
	.mv_inner_left_catch {
					text-align: center;
					font-size: 18px;
					margin: 0 0 32px;
	}
	.mv_inner_right_img {
					margin: 0 auto 40px;
	}
}



/**section01**/
section#section01 {
				background: #A1CE60;
				padding: 0 20px;
}
.section01_inner {
				width:794px;
				background-image: url(../img/img01.png);
				background-repeat: no-repeat;
				background-size: 230px auto;
				background-position: right bottom;
				margin: 0 auto;
				padding: 64px 0 56px;
}
.section01_inner_title {
				color: #fff;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 32px;
}
.section01_inner_fukidashi {
				display: flex;
				flex-direction: column;
				flex-wrap: wrap;
				align-content: flex-start;
				justify-content: center;
				align-items: flex-start;
}
.section01_inner_fukidashi li {
				background: #fff;
				border-radius: 4px;
				margin: 0 0 8px;
				padding: 10px 12px;
				font-weight: bold;
				position: relative;
}
.section01_inner_fukidashi li:after {
				content: "";
				display: inline-block;
				border: 6px solid transparent;
				border-top: 6px solid #fff;
				border-left: 6px solid #fff;
				position: absolute;
				right: -12px;
				top: calc(50% - 6px);
}
@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 264px;
	}
	.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 {
				padding: 96px 20px;
}
.section02_inner {
				width: 1000px;
				margin: 0 auto;
}
.section02_inner_title {
				text-align: center;
				margin: 0 0 40px;
}
.section02_inner_title_catch {
				font-size: 20px;
				font-weight: bold;
}
.section02_inner_text {
				text-align: center;
				line-height: 2;
				margin: 0 0 64px;
}
.section02_inner_img {
				text-align: center;
				margin: 0 0 48px;
}
.section02_inner_btn {
				margin: 0 0 64px;
}
.section02_inner_link {
				text-align: center;
				margin: 0 0 64px;
}
.section02_inner_link_text {
				font-size: 14px;
				font-weight: bold;
}
.section02_inner_link a {
				font-size: 14px;
				color: #A1CE60;
}
.section02_inner_box {
				background: #A1CE60;
				border-radius: 10px;
				padding: 40px 48px;
}
.section02_inner_box_title {
				text-align: center;
				color: #fff;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 20px;
}
.section02_inner_box_text {
				text-align: center;
				color: #fff;
				margin: 0 0 40px;
}
.section02_inner_box_contents {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: space-between;
				align-items: stretch;
}
.section02_inner_box_contents_content {
				width: 32%;
				background: #fff;
				border-radius: 10px;
				padding: 32px 20px;
}
.section02_inner_box_contents_content_img {
				text-align: center;
}
.section02_inner_box_contents_content_catch {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: center;
				align-items: center;
				height: 120px;
				text-align: center;
				font-size: 18px;
				font-weight: bold;
				line-height: 1.33;
}
.section02_inner_box_contents_content_text {
				font-size: 14px;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	section#section02 {
					padding: 64px 20px 80px;
	}	
	.section02_inner {
					width: 100%;
	}
	.section02_inner_title {
					margin: 0 0 20px;
	}
	.section02_inner_title_catch {
					font-size: 14px;
	}	
	.section02_inner_title_logo {
					width: 100%;
					max-width: 288px;
					margin: 0 auto;
	}
	.section02_inner_text {
					text-align: left;
					line-height: 1.75;
					margin: 0 0 40px;
	}
	.section02_inner_img {
					width: 100%;
					max-width: 302px;
					margin: 0 auto 64px;
	}
	.section02_inner_box {
					padding: 40px 20px 12px;
	}
	.section02_inner_box_title {
					font-size: 28px;
	}
	.section02_inner_box_contents_content {
					width: 100%;
					margin: 0 0 20px;
					padding: 64px 20px 32px;
	}
	.section02_inner_box_contents_content_img {
					width: 96px;
					margin: 0 auto 24px;
	}
	.section02_inner_box_contents_content_catch {
					height: auto;
					margin: 0 0 20px;
	}
}



/**section03**/
section#section03 {
				background: #F7F7F7;
				padding: 64px 20px 94px;
}
.section03_inner {
				width: 1000px;
				margin: 0 auto;
}
.section03_inner_title {
				text-align: center;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 48px;
}
.section03_inner_contents {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: space-between;
				align-items: flex-start;
}
.section03_inner_contents_content {
				width: 29%;
				margin: 0 0 64px;
}
.section03_inner_contents_content_num.roboto {
				text-align: center;
				color: #89C631;
				font-size: 40px;
				margin: 0 0 32px;
}
.section03_inner_contents_content_catch {
				text-align: center;
				font-size: 20px;
				font-weight: bold;
				line-height: 1.5;
				margin: 0 0 32px;
}
.section03_inner_contents_content_text {
				font-size: 14px;
}
.section03_inner_contents_text {
				text-align: center;
				font-size: 18px;
				font-weight: bold;
				width: 100%;
				border: 2px solid #89c631;
				border-radius: 10px;
				margin: 0 auto 60px;
				padding: 20px;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	section#section03 {
					padding: 64px 20px 80px;
	}
	.section03_inner {
					width: 100%;
	}
	.section03_inner_title {
					font-size: 28px;
					margin: 0 0 32px;
	}
	.section03_inner_contents {
					margin: 0 0 14px;
	}
	.section03_inner_contents_content {
					display: flex;
					flex-direction: row;
					flex-wrap: wrap;
					align-content: center;
					justify-content: space-between;
					align-items: center;
					width: 100%;
					margin: 0 0 34px;
	}
	.section03_inner_contents_content_num.roboto {
					width: 50px;
					margin: 0 0 12px;
	}
	.section03_inner_contents_content_catch {
					width: calc(100% - 66px);
					text-align: left;
					font-size: 18px;
					margin: 0 0 12px;
	}
	.section03_inner_contents_text {
					text-align: left;
					font-size: 16px;
					padding: 16px;
	}
}



/**section04**/
section#section04 {
				padding: 64px 20px 96px;
}
.section04_inner {
				width: 1000px;
				margin: 0 auto;
}
.section04_inner_title {
				text-align: center;
				font-size: 32px;
				line-height: 1.45;
				font-weight: bold;
				margin: 0 0 48px;
}
.section04_inner_contents {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: space-between;
				align-items: stretch;
}
.section04_inner_contents_content {
				width: 31%;
				background: #F3F8EA;
				margin: 32px 0 0;
				padding: 0 20px 40px;
}
.section04_inner_contents_content_pic {
				text-align: center;
				margin: -32px 0 20px;
}
.section04_inner_contents_content_name {
				text-align: center;
				font-size: 20px;
				font-weight: bold;
				margin: 0 0 24px;
}
.section04_inner_contents_content_name .small {
				font-size: 16px;
}
.section04_inner_contents_content_name .caption {
				display: block;
				font-size: 14px;
}
.section04_inner_contents_content_text {
				font-size: 14px;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	section#section04 {
					padding: 64px 20px 32px;
	}
	.section04_inner {
					width: 100%;
	}	
	.section04_inner_title {
					font-size: 28px;
					margin: 0 0 32px;
	}
	.section04_inner_contents_content {
					width: 100%;
					margin: 32px 0;
					padding: 0 24px 32px;
	}
	.section04_inner_contents_content_pic {
					width: 144px;
					margin: -32px auto 20px;
	}
}



/**section05**/
section#section05 {
				background: #A1CE60;
				padding: 48px 20px 40px;
}
.section05_inner {
				width: 1000px;
				margin: 0 auto;
}
.section05_inner_head {
				text-align: center;
				margin: 0 0 20px;
}
.section05_inner_head p {
				display: inline-block;
				background: #fff;
				border-radius: 300px;
				padding: 8px 20px;
				font-size: 16px;
				font-weight: bold;
}
.section05_inner_text {
				text-align: center;
				color: #fff;
				font-size: 20px;
				font-weight: bold;
				line-height: 1.5;
				margin: 0 0 32px;
}
.section05_inner_btn {
				margin: 0 0 48px;
}
.section05_inner_caption {
				border-top: 1px solid #87AD50;
				padding: 24px 0 0;
				color: #fff;
				font-size: 14px;
				line-height: 1.5;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	section#section05 {
					padding: 40px 20px 48px;
	}
	.section05_inner {
					width: 100%;
	}
	.section05_inner_btn {
					margin: 0 0 40px;
	}
}



/**section06**/
section#section06 {
				padding: 96px 20px 64px;
}
.section06_inner_title {
				text-align: center;
				font-size: 32px;
				font-weight: bold;
				line-height: 1.45;
				margin: 0 0 32px;
}
.section06_inner_img {
				text-align: center;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	section#section06 {
					padding: 48px 20px 64px;
	}
	.section06_inner_title {
					font-size: 28px;
					margin: 0 0 16px;
	}
}



/**section07**/
section#section07 {
				background: #F7F7F7;
}
.section07_inner {
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				align-content: center;
				justify-content: space-between;
				align-items: flex-end;
				width: 1000px;
				margin: 0 auto;
}
.section07_inner_left {
				margin: 0 0 64px;
}
.section07_inner_left_title {
				font-size: 32px;
				font-weight: bold;
				line-height: 1.45;
				margin: 0 0 24px;
}
.section07_inner_left_text p {
				font-size: 14px;
				line-height: 1.5;
}
.section07_inner_left_text p + p {
				margin: 12px 0 0;
}
.section07_inner_center {
				margin: 0 0 64px;
}
.section07_inner_center_position {
				font-size: 14px;
				font-weight: bold;
}
.section07_inner_center_name {
				font-size: 20px;
				font-weight: bold;
}
.section07_inner_right {
				margin: 0 -100px 0 0;
}
@media screen and (min-width: 768px) {
	
	}
@media screen and (max-width:767px) {
	.section07_inner {
					width: 100%;
	}
	.section07_inner_left {
					margin: 0;
					padding: 46px 20px 0;
	}
	.section07_inner_left_title {
					font-size: 28px;
	}
	.section07_inner_center {
					margin: 0;
					padding: 20px 20px 32px;
	}
	.section07_inner_center_name {
					line-height: 1.45;
	}
	.section07_inner_right {
					margin: 0;
	}
}



/**form**/
section#form {
				padding: 96px 20px 120px;
}
.form_inner {
				width: min(100%, 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;
}
.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;
		}
		
	}