@charset "utf-8";
/* CSS Document */
@media screen and (min-width: 768px) {
}
body {
	font-size: 16px;
	overflow: hidden;
}
body.fixed {
	position: fixed;
	width: 100%;
}
button {
	cursor: pointer;
}
img {
	width: 100%;
	height: auto;
}
p,a,li,dt,dd,th,td,.f-go {
  font-family: "Kiwi Maru", serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
	color: #555;
	font-size: 16px;
	letter-spacing: 0.05em;
}
h1,h2,h3,h4 {
  font-family: "Kiwi Maru", serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
	color: #555;
	letter-spacing: 0.1em;
}
a {
  font-family: "Noto Sans JP", sans-serif;
}
.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
.f-kiwi,
.kiwi-maru-regular {
  font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
}
.noto-sans-mono {
  font-family: "Noto Sans Mono", monospace;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
p {
	line-height: 1.875;
}
.block {
	display: block;
}
.inlineBlock {
	display: inline-block;
}
.align-C {
	text-align: center;
}
.fs-16 {
	font-size: 16px;
}
.fs-20 {
	font-size: 20px;
}
.fs-24 {
	font-size: 24px;
}
.fs-32 {
	font-size: 32px;
}
.fs-40 {
	font-size: 40px;
}
.fc-gold {
	color: #ad913a;
}
.fc-white {
	color: #FFF;
}
.box700 {
	width: 92%;
	max-width: 700px;
	margin: 0 auto;
}
.box1080 {
	width: 92%;
	max-width: 1080px;
	margin: 0 auto;
}
.box1200 {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}
.box1400 {
	width: 92%;
	max-width: 1400px;
	margin: 0 auto;
}
@media screen and (min-width:1100px) {
	.only_sp1100 {
		display: none;
	}
}
@media screen and (min-width:768px) {
	.only_sp767 {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.only_pc768 {
		display: none;
	}
	p,a,li,dt,dd,th,td,.f-go {
		font-size: 4.26vw;
		line-height: 1.5;
	}
	
	.fs-16 {
		font-size: 4.26vw;
	}
	.fs-20 {
		font-size: 3.8vw;
	}
	.fs-24 {
		font-size: 5.0vw;
	}
	.fs-32 {
		font-size: 5.0vw;
	}
	.fs-40 {
		font-size: 5.3vw;
	}
	
}

.wrap {
	background-color: #fdfddf;
}
.wrap header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	transition: 0.3s all ease;
}
.scrolled .wrap header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	background-color: #FFF;
}
.wrap header .headerIn {
	height: 90px;
	position: relative;
}
.wrap header .headerIn .logo {
	position: absolute;
	left: 40px;
	top: 50%;
	transform: translateY(-50%);
}
.wrap header .headerIn .logo h1 a {
	display: block;
}
.wrap header .headerIn .logo h1 a img {
	width: auto;
	height: 60px;
}
.wrap header .headerIn .headerNav {
	position: absolute;
	right: 0;
	top: 0;
	padding-right: 230px;
}
.wrap header .headerIn .headerNav > ul  {
	font-size: 0;
	display: table;
}
.wrap header .headerIn .headerNav > ul > li {
	display: table-cell;
	padding-right: 30px;
	height: 90px;
	vertical-align: middle;
}
.wrap header .headerIn .headerNav > ul > li.only_sp1100 {
	display: none;
}
@media screen and (max-width: 1100px) {
	.wrap header .headerIn .headerNav > ul > li.only_sp1100 {
		display: block;
	}
}
.wrap header .headerIn .headerNav > ul > li:nth-child(4) {
	padding-right: 0;
}
.wrap header .headerIn .headerNav > ul > li.entry {
	position: absolute;
	right: 0;
	top: 0;
	width: 170px;
	height: 100px;
	display: table-cell;
	background-color: #2da76f;
	border-left: 10px solid #FFF;
	border-bottom: 10px solid #FFF;
	border-bottom-left-radius: 25px;
	padding: 0;
}
.wrap header .headerIn .headerNav > ul > li a {
	font-size: 15px;
	color: #099025;
}

.wrap header .headerIn .headerNav > ul > li.entry a {
	position: absolute;
	right: 0;
	top: 0;
	display: table-cell;
	width: 160px;
	height: 90px;
	text-align: center;
	vertical-align: middle;
	line-height: 90px;
	border-bottom-left-radius: 15px;
	border-left: 1px solid #ad913a;
	border-bottom: 1px solid #ad913a;
	color: #FFF;
	font-size: 16px;
}
.wrap header .headerIn .headerNav > ul > li a::after {
	content: "▼";
}
.wrap header .headerIn .headerNav > ul > li.entry a::after {
	display: none;
}
@media screen and (max-width: 1200px) {
	.wrap header .headerIn .headerNav {
	  padding-right: 200px;
	}	
	.wrap header .headerIn .headerNav > ul > li {
	  padding-right: 25px;
	}	
}
@media screen and (max-width: 1100px) {
	.wrap header .headerIn .logo h1 a {
	  font-size: 23px;
		font-weight: bold;
		line-height: 1.5;
	}	
	.wrap header .headerIn .logo h1 a span {
		line-height: 1.2;
	}
	.scrolled .wrap header::before {
		content: "";
		display: block;
		width: 100%;
		height: 90px;
		background-color: #FFF;
		position: absolute;
		top: 0;
		left: 0;
	}	
	
	.wrap header,
	.scrolled .wrap header {
		position: fixed;
	}
	
	.open .wrap header
	{
		position: fixed;
		top: 0;
		left: 0;
		height: 100vh;
		background-color: #fdfddf;
	}	
	.wrap header .headerIn .logo {
	  top: 45px;
		left: 20px;
	  transform: translateY(-50%);
	}	
	.wrap header .headerIn {
		width: 100%;
	  height: 0;
	  position: relative;
	}
	.wrap header .headerIn .headerNav > ul {
	  display: block;
		width: 80%;
		max-width: 680px;
		margin: 0 auto;
	}
	.wrap header .headerIn .headerNav > ul > li {
	  display: block;
		padding: 0;
	  height: auto;
	  vertical-align: middle;
		border-bottom: 1px solid #FFF;
	}	
	.wrap header .headerIn .headerNav > ul > li.only_sp1100 {
		border-bottom: none;
	}	
	.wrap header .headerIn .headerNav > ul > li .spList01 {
		padding-top: 30px;
	  display: block;
	  height: auto;
	}	
	.wrap header .headerIn .headerNav > ul > li .spList01 li {
	  display: block;
		padding: 0;
	  height: auto;
	  vertical-align: middle;
	}	
	.wrap header .headerIn .headerNav > ul > li > a {
	  font-size: 22px;
		line-height: 3.0;
		height: 3em;
	  color: #FFF;
	}	
	.wrap header .headerIn .headerNav > ul > li .spList01 li a {
	  font-size: 18px;
		line-height: 3.0;
		height: 3em;
	  color: #FFF;
	}	
	.wrap header .headerIn .headerNav > ul > li .spList01 li a::after {
		display: none;
	}
	.wrap header .headerIn .headerNav {
	  padding: 60px 0;
		width: 100%;
		background-color: #98d2ac;
		position: absolute;
		right: -100%;
		top: 90px;
		transition: 0.3s all ease;
	}	
	.open .wrap header .headerIn .headerNav {
		right: 0;
	}	
	.wrap header .headerIn .headerNav > ul > li.entry {
		position: fixed;
	  right: 108px;
		width: 180px;
	  border-right: 10px solid #FFF;
	  border-left: 10px solid #FFF;
	  border-bottom: 10px solid #FFF;
	  border-bottom-left-radius: 25px;
	  border-bottom-right-radius: 25px;
	}
	.wrap header .headerIn .headerNav > ul > li.entry a {
	  width: 160px;
	  border-bottom-left-radius: 15px;
	  border-bottom-right-radius: 15px;
	  border-left: 1px solid #ad913a;
	  border-right: 1px solid #ad913a;
	  border-bottom: 1px solid #ad913a;
		font-size: 20px;
	}
	.wrap header .headerIn .headerNav > ul > li .spList02 {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		text-align: center;
		padding-bottom: 30px;
	}
	
	header .spList02 li {
		display: inline-block;
		margin-right: 10px;
	}
	header .spList02 li a::after {
		display: none;
	}
	header .spList02 li:nth-last-child(1) {
		margin-right: 0;
	}
	header .spList02 li a {
		display: block;
		width: 80px;
		height: 80px;
		border: 1px solid #ad913a;
		background-color: #FFF;
		border-top-left-radius: 30px;
		border-top-right-radius: 30px;
		border-bottom-left-radius: 30px;
		position: relative;
	}
	header .spList02 li.snsX a::before {
		content: "";
		display: table-cell;
		width: 80px;
		height: 80px;
		background: center / 41px auto url("../img/sns_x.png") no-repeat;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translateX(-50%) translateY(-50%);

	}
	header .spList02 li.snsInsta a::before {
		content: "";
		display: table-cell;
		width: 80px;
		height: 80px;
		background: center / 40px auto url("../img/sns_insta.png") no-repeat;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translateX(-50%) translateY(-50%);

	}
	header .spList02 li.snsNote a::before {
		content: "";
		display: table-cell;
		width: 80px;
		height: 80px;
		background: center / 55px auto url("../img/sns_sukoyaka.png") no-repeat;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translateX(-50%) translateY(-50%);
	}
	
	
	.spBtn {
		position: absolute;
		right: 26px;
		top: 12.5px;
	}
	.spBtn .btn {
		display: table-cell;
		width: 65px;
		height: 65px;
		position: relative;
	}
	.spBtn .btn .btnIn {
		display: table-cell;
		width: 58px;
		height: 24px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
	}
	.spBtn .btn .btnIn .border {
		width: 100%;
		height: 2px;
		background-color: #2da76f;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%) rotate(0);
		transform-origin: 50%;
		transition: 0.3s all ease;
	}
	.spBtn .btn .btnIn .border:nth-child(1) {
		top: 0;
		transform: translateX(-50%) translateY(0) rotate(0);
	}
	.spBtn .btn .btnIn .border:nth-child(2) {
		transform: translateX(-50%) translateY(-50%) rotate(0);
	}
	.spBtn .btn .btnIn .border:nth-child(3) {
		top: 100%;
		transform: translateX(-50%) translateY(-100%) rotate(0);
	}
	.open .spBtn .btn .btnIn .border:nth-child(1) {
		top: 50%;
		transform: translateX(-50%) translateY(-50%) rotate(210deg);
	}
	.open .spBtn .btn .btnIn .border:nth-child(2) {
		top: 50%;
		width: 0;
		transform: translateX(-50%) translateY(-50%) rotate(0);
	}
	.open .spBtn .btn .btnIn .border:nth-child(3) {
		top: 50%;
		transform: translateX(-50%) translateY(-50%) rotate(-210deg);
	}
}
@media screen and (max-width: 767px) {
	.scrolled .wrap header::before {
		content: "";
		display: block;
		width: 100%;
		height: 12vw;
		background-color: #FFF;
		position: absolute;
		top: 0;
		left: 0;
	}	
	
	
	.wrap header .headerIn .logo h1 a img {
		height: 9vw;
	}
	
  .wrap header .headerIn .logo {
    top: 6vw;
    left: 2vw;
    transform: translateY(-50%);
  }	
 .wrap header .headerIn .logo h1 a {
    font-size: 3.3vw;
  }
  .spBtn {
    position: absolute;
    right: 3.4vw;
    top: 6vw;
	  transform: translateY(-50%);
  }	
  .spBtn .btn {
    width: 8.6vw;
    height: 8.6vw;
  }	
  .spBtn .btn .btnIn {
    width: 7.7vw;
    height: 3.2vw;
  }
   .wrap header .headerIn .headerNav > ul > li.entry {
    position: fixed;
    right: 14.4vw;
    width: 24vw;
    border-right: 1.3vw solid #FFF;
    border-left: 1.3vw solid #FFF;
    border-bottom: 1.3vw solid #FFF;
    border-bottom-left-radius: 3.3vw;
    border-bottom-right-radius: 3.3vw;
	   height: 13.3vw;
  }
  .wrap header .headerIn .headerNav > ul > li.entry a {
    width: 21.4vw;
    border-bottom-left-radius: 2vw;
    border-bottom-right-radius: 2vw;
	  height: 12vw;
	  line-height: 12vw;
	  font-size: 3.6vw;
  }	
  .wrap header .headerIn .headerNav {
    padding: 8vw 0;
    top: 12vw;
    transition: 0.3s all ease;
  }
  .wrap header .headerIn .headerNav > ul > li > a {
    font-size: 4.3vw;
  }	
  .wrap header .headerIn .headerNav > ul > li .spList01 {
    padding-top: 4.3vw;
  }
  .wrap header .headerIn .headerNav > ul > li .spList01 li a {
    font-size: 3.8vw;
  }
  .wrap header .headerIn .headerNav > ul > li .spList02 {
    padding-bottom: 3vw;
  }
  header .spList02 li a {
    display: block;
    width: 13.8vw;
    height: 13.8vw;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    border-bottom-left-radius: 4vw;
  }
	header .spList02 li.snsX a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 6vw auto url("../img/sns_x.png") no-repeat;

	}
	header .spList02 li.snsInsta a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 6vw auto url("../img/sns_insta.png") no-repeat;

	}
	header .spList02 li.snsNote a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 11vw auto url("../img/sns_sukoyaka.png") no-repeat;
	}
}
.sec_fv {
	padding-top: 90px;
	background-color: #fdfddf;
	position: relative;
}
.sec_fv .btn {
	position: absolute;
	left: 50%;
	bottom: 1.0vw;
	transform: translateX(-50%);
}
@media screen and (max-width: 900px) {
	.sec_fv .btn {
		bottom: 0;
		transform: translateX(-50%);
	}
}
.sec_fv .btn a {
	display: block;
	width: 90vw;
	max-width: 750px;
	height: 92px;
	border: 1px solid #ad913a;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	border-bottom-left-radius: 30px;
	color: #FFF;
	background-color: #2da76f;
}
.sec_fv .btn a .textBox {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}
.sec_fv .btn a .textBox .text01 {
	display: block;
	font-size: 28px;
	text-align: center;
	line-height: 1.0;
	margin-bottom: 0.3em;
}
.sec_fv .btn a .textBox .text02 {
	display: block;
	font-size: 16px;
	text-align: center;
}
@media screen and (max-width: 1200px) {
	.sec_fv .fvimg h2 {
		position: relative;
	}
	.sec_fv .fvimg h2::before {
		content: "";
		display: block;
		padding-top: 53%;
	}
	.sec_fv .fvimg h2 img {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: auto;
		height: 100%;
	}
}
@media screen and (max-width: 767px) {
	.sec_fv .fvimg h2 {
		background: center top / auto 100% url("../img/fv_sp.jpg") no-repeat;
	}
	.sec_fv .fvimg h2::before {
		content: "";
		display: block;
		padding-top: 227.5%;
	}
	.sec_fv .fvimg h2 img {
		display: none;
	}
	.sec_fv {
	  padding-top: 0;
	}
	.sec_fv .btn {
	  bottom: 19.3vw;
	}	
	.sec_fv .btn a {
	  width: 92vw;
	  max-width: 92vw;
	  height: 13.3vw;
	  border-top-left-radius: 6.7vw;
	  border-top-right-radius: 6.7vw;
	  border-bottom-left-radius: 6.7vw;
	}	
	.sec_fv .btn a .textBox .text01 {
	  font-size: 4.3vw;
	}	
	.sec_fv .btn a .textBox .text02 {
	  font-size: 3vw;
		padding-bottom: 0.3em;
	}	
	
}

.sec01 {
	padding-top: 7.8vw;
	background-color: #FFF;
	position: relative;
	padding-bottom: 96px;
}
.sec01::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 7.8vw;
	background: center top / 100% auto url("../img/fv_bottom_wave.jpg") no-repeat;
}
.sec .secHead {
	padding-top: 85px;
	margin-bottom: 50px;
}
.sec02.sec .secHead {
	padding-top: 85px;
	margin-bottom: 100px;
}
.sec .secHead h2 span {
	line-height: 1.8;
	font-weight: normal;
}
.sec .secHead h2 span.text01 {
	margin-bottom: 0.5em;
}
.sec01 .grayBox {
	background-color: #f1fafb;
	border-radius: 30px;
	padding: 60px 0 50px;
	margin-bottom: 90px;
}
.sec01 .grayBox h3 {
	text-align: center;
}
.sec01 .grayBox h3 .text {
	background: left bottom / auto 2px url("../img/dots.png") repeat-x;
	padding: 0 15px 10px;
}
.sec01 .grayBox ul {
	width: 90%;
	max-width: 960px;
	margin: 0 auto;
	font-size: 0;
	padding-top: 50px;
}
.sec01 .grayBox ul li {
	display: inline-block;
	width: 50%;
	padding-left: 60px;
	vertical-align: top;
	margin-bottom: 50px;
	position: relative;
}
.sec01 .grayBox ul li:nth-child(7),
.sec01 .grayBox ul li:nth-child(8)
{
	margin-bottom: 0;
}
.sec01 .grayBox ul li::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/check.png") no-repeat;
	width: 36px;
	height: 35px;
	position: absolute;
	left: 5px;
	top: 12px;
}
.sec01 .grayBox ul li .text {
	font-size: 18px;
	line-height: 1.8;
	display: block;
}
.sec01 .bottomText {
	width: 92%;
	max-width: 700px;
	margin: 0 auto;
	text-align: center;
}
.sec01 .bottomText p {
	display: inline-block;
}
.sec01 .bottomText p .text{
	font-size: 16px;
	line-height: 2.0;
	display: block;
}
@media screen and (max-width:767px) {
	.sec01::before {
		display: none;
	}
	.sec01 {
	  padding-top: 0;
	  padding-bottom: 15vw;
	}
	.sec01 .grayBox {
	  border-radius: 4vw;
	  padding: 8vw 0 7vw;
	  margin-bottom: 12vw;
	}
	.sec01 .grayBox h3 .text .textIn {
		display: block;
	  padding: 0 15px 10px;
		line-height: 1.5;
	}
	.sec01 .grayBox h3 .text {
	  background: left bottom / auto 2px url("../img/dots.png") repeat-x;
	  padding: 0;
		display: inline-block;
	}
	.sec01 .grayBox ul {
	  padding-top: 9vw;
	}	
	.sec01 .grayBox ul li {
	  display: block;
	  width: 100%;
	  padding-left: 11.4vw;
	  vertical-align: top;
	  margin-bottom: 6vw;
	  position: relative;
	}
	.sec01 .grayBox ul li:nth-child(7) {
	  margin-bottom: 6vw;
	}	
	.sec01 .grayBox ul li:nth-last-child(1) {
		margin-bottom: 0;
	}
	.sec01 .grayBox ul li::before {
	  content: "";
	  display: table-cell;
	  background: center / 100% auto url("../img/check.png") no-repeat;
	  width: 8.4vw;
	  height: 8.4vw;
	  position: absolute;
	  left: 0;
	  top: 50%;
		transform: translateY(-50%);
	}
	.sec01 .grayBox ul li .text {
	  font-size: 3.8vw;
	  line-height: 1.5;
	  display: block;
	}
	.sec01 .bottomText p .text{
		font-size: 3.8vw;
	}
}
.sec02 {
	background-color: #fdfddf;
	padding-top: 7.7vw;
	position: relative;
	padding-bottom: 0;
}
.sec02::before {
	content: "";
	display: block;
	width: 100%;
	height: 7.7vw;
	background: center top / 100% auto url("../img/wave_sec02.jpg") no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.sec02 .textBox {
	margin-bottom: 90px;
}
.textBox p,
.sec03 .secCont .checkBox p,
.workBox .workItem .textBox p,
.sec07 .voiceCont p
{
	margin-bottom: 1em;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.0;
	font-family: "Noto Sans JP", sans-serif;
}
.sec02 .textBox p.fs-24,.textBox p.fs-24
{
	font-size: 24px;
}
.sec02 .textBox p:nth-last-child(1) {
	margin-bottom: 0;
}
.sec02 .textBox p .yellow {
	font-size: 18px;
	background:linear-gradient(transparent 60%, #ff6 60%);	
}
.sec02 .textBox.textBoxBottom p:nth-child(1) {
  font-family: "Kiwi Maru", serif;
	margin-bottom: 1.5em;
}
.sec02 .textBox.textBoxBottom {
	margin-bottom: 0;
}
.sec02 .pointList {
	font-size: 0;
	margin-bottom: 100px;
}
.sec02 .pointList .pointItem {
	display: inline-block;
	width: 32%;
	margin-right: 2%;
	position: relative;
	padding: 60px 0 40px;
	vertical-align: top;
	background-color: #FFF;
	border-radius: 30px;
}
.sec02 .pointList .pointItem:nth-last-child(1) {
	margin-right: 0;
}
.sec02 .pointList .pointItem .pointIn {
	display: block;
}
.sec02 .pointList .pointItem .pointIn .pointNum {
	position: absolute;
	font-size: 20px;
	color: #FFF;
	display: block;
	line-height: 50px;
	height: 50px;
	width: 160px;
	text-align: center;
	background-color: #099025;
	border-radius: 25px;
	left: 50%;
	top: 0;
	transform: translateX(-50%) translateY(-50%);
}
.sec02 .pointList .pointItem .pointIn .pointText01 {
	text-align: center;
	line-height: 1.6;
	font-weight: bold;
	display: block;
	margin-bottom: 1em;
}
.sec02 .pointList .pointItem .pointIn .pointItemList {
	width: 80%;
	display: block;
	margin: 0 auto;
}
.sec02 .pointList .pointItem .pointIn .pointItemList .text {
	display: block;
	line-height: 2.0;
}
.sec02 .pointList .pointItem .pointIn .pointItemList ul {
	width: 85%;
	margin: 0 auto;
}
.sec02 .pointList .pointItem .pointIn .pointItemList ul li {
	font-size: 16px;
	line-height: 2.0;
	position: relative;
	padding-left: 1em;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0;
	
}
.pointList .pointItem .pointIn .pointItemList ul li::before {
	content: "・";
	line-height: 2.0;
	position: absolute;
	left: 0;
	top: 0;
}
.checkBox > h3 {
	line-height: 1.6;
}
.checkBox .checkList {
	font-size: 0;
	padding-top: 48px;
	margin-bottom: 55px;
	text-align: center;
}
.sec01 .checkBox .checkList {
	margin-bottom: 100px;
}
.checkBox.gray {
	margin-bottom: 100px;
}
.checkBox.gray .checkList {
	margin-bottom: 60px;
}
.checkBox .checkList li {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 3%;
	background-color: #FFF;
	border-radius: 30px;
	height: 130px;
	vertical-align: top;
	position: relative;
}
.checkBox.gray .checkList li {
	background-color: #f1f1f1;
	margin-bottom: 0;
}
.checkBox .checkList li span {
	font-size: 24px;
	line-height: 1.3;
	padding-left: 60px;
	position: absolute;
	left: 40px;
	top: 50%;
	transform: translateY(-50%);
	width: 80%;
}
.checkBox .checkList li:nth-child(2n) {
	margin-right: 0;
}
.checkBox .checkList li span::before {
	content: "";
	display: table-cell;
	width: 30px;
	height: 27px;
	background: center / 100% auto url("../img/check02.png") no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.headDeco {
	position: relative;
}
.headDeco::before {
	content: "";
	display: table-cell;
	width: 34px;
	height: 32px;
	background: center / 100% auto url("../img/partsLeft.png") no-repeat;
	position: absolute;
	left: 0;
	bottom: 0;
	transform: translateX(-120%);
}
.headDeco::after {
	content: "";
	display: table-cell;
	width: 34px;
	height: 32px;
	background: center / 100% auto url("../img/partsRight.png") no-repeat;
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateX(120%);
}
@media screen and (max-width: 1100px) {
	.sec02 .pointList .pointItem {
		display: block;
		width: 100%;
		max-width: 530px;
		margin: 0 auto 6%;
		padding: 60px 0 40px;
		border-radius: 30px;
	}
	.sec02 .pointList .pointItem:nth-last-child(1) {
		margin-right: auto;
	}
	.sec02 .pointList .pointItem .pointIn .pointNum {
		position: absolute;
		font-size: 20px;
		color: #FFF;
		display: block;
		line-height: 50px;
		height: 50px;
		width: 160px;
		text-align: center;
		background-color: #ffae00;
		border-radius: 25px;
		left: 50%;
		top: 0;
		transform: translateX(-50%) translateY(-50%);
	}
	.sec02 .pointList .pointItem .pointIn .pointText01 {
		text-align: center;
		line-height: 1.6;
		font-weight: bold;
		display: block;
		margin-bottom: 1em;
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList {
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList ul {
		width: 85%;
		margin: 0 auto;
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList ul li {
		font-size: 16px;
		line-height: 2.0;
		position: relative;
		padding-left: 1em;
		font-family: "Noto Sans JP", sans-serif;
		letter-spacing: 0;

	}
	.pointList .pointItem .pointIn .pointItemList ul li::before {
		content: "・";
		line-height: 2.0;
		position: absolute;
		left: 0;
		top: 0;
	}
	
}
@media screen and (max-width: 1200px) {
	.checkBox.gray .checkList li span br {
		display: none;
	}	
}
@media screen and (max-width:767px) {
	.headDeco::before {
		width: 4.5vw;
		height: 4.26vw;
		transform: translateX(-120%);
	}
	.headDeco::after {
		width: 4.5vw;
		height: 4.26vw;
		transform: translateX(120%);
	}
	.textBox p, .sec03 .secCont .checkBox p, .workBox .workItem .textBox p, .sec07 .voiceCont p {
	  margin-bottom: 1em;
	  font-size: 4.3vw;
	  font-weight: 500;
	  line-height: 1.5;
	}	
	.sec02 .textBox p .yellow {
	  font-size: 4.3vw;
	}	
	.sec02 .textBox {
	  margin-bottom: 15vw;
	}
	.sec02 > div > .secCont > .textBox:nth-last-child(1) {
	  margin-bottom: 0;
	}
	.sec02 .pointList {
	  font-size: 0;
	  margin-bottom: 9vw;
	}	
	.sec02 .pointList .pointItem {
		display: block;
		width: 100%;
		max-width: 100%;
		margin: 0 auto 11vw;
		padding: 9vw 0 7vw;
		border-radius: 4vw;
	}
	.sec02 .pointList .pointItem:nth-last-child(1) {
		margin-right: auto;
		margin-bottom: 0;
	}
	.sec02 .pointList .pointItem .pointIn .pointNum {
		position: absolute;
		font-size: 4.3vw;
		line-height: 10vw;
		height: 10vw;
		width: 27vw;
		text-align: center;
		background-color: #099025;
		border-radius: 5vw;
		left: 50%;
		top: 0;
		transform: translateX(-50%) translateY(-50%);
	}
	.sec02 .pointList .pointItem .pointIn .pointText01 {
		text-align: center;
		line-height: 1.6;
		font-weight: bold;
		display: block;
		margin-bottom: 1em;
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList {
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList ul {
		width: 85%;
		margin: 0 auto;
	}
	.sec02 .pointList .pointItem .pointIn .pointItemList ul li {
		font-size: 4.0vw;
	}
	.checkBox .checkList {
	  padding-top: 6.4vw;
	  margin-bottom: 11vw;
	  text-align: center;
	}	
	.checkBox .checkList li {
	  display: block;
	  width: 100%;
	  margin-right: 0;
	  margin-bottom: 3%;
	  border-radius: 4vw;
	  height: auto;
		padding: 4vw;
	}
	.checkBox .checkList li span {
	  font-size: 4.3vw;
	  padding-left: 8vw;
	  transform: translateY(0);
	  width: 100%;
		position: static;
	}	
	.checkBox .checkList li span::before {
	  width: 4vw;
	  height: 3.6vw;
	}
	.sec02 .textBox p.fs-24, .textBox p.fs-24 {
	  font-size: 5vw;
	}	
	.sec02 {
	  padding-top: 7.7vw;
	  padding-bottom: 85px;
	}
	.checkBox.gray .checkList li {
	  margin-bottom: 4vw;
	}
	.checkBox.gray {
	  margin-bottom: 15vw;
	}	
	.sec03 .checkBox .box700 {
		width: 100%;
	}
	.sec03 .textBox02 h3 {
		line-height: 1.5;
	}	
	
}

.sec03 .secHead {
	position: relative;
	width: 92%;
	max-width: 1400px;
	margin: 0 auto 75px;
	padding-top: 100px;
}
.sec03 .secHead h2 {
	margin-bottom: 2em;
}
.sec03 .secHead::before {
	content: "";
	display: table-cell;
	background: center/ 100% auto url("../img/sec05_workimg.png") no-repeat;
	width: 418px;
	height: 105px;
	position: absolute;
	right: 0;
	top: 5px;;
}
.sec03 {
	padding-top: 15.32vw;
	position: relative;
	background-color: #FFF;
	padding-bottom: 110px;
}
.sec03::before {
	content: "";
	display: block;
	width: 100%;
	height: 15.32vw;
	background: center top / 100% auto url("../img/wave_sec03.jpg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.sec03 .textBox02 h3 {
	letter-spacing: 0;
	margin-bottom: 2em;
}
.sec03 .textBox02 p.mb-2em {
	margin-bottom: 2em;
}
.sec03 .textBox02 p.fs-24 {
	font-size: 24px;
}
.sec04 {
	padding-top: 8.2vw;
	position: relative;
	padding-bottom: 48px;
	background-color: #e4f6f8;
}
.sec04::before {
	content: "";
	display: block;
	height: 8.2vw;
	background: center top / 100% auto url("../img/wave_sec04.jpg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.sec04 .secHead {
	position: relative;
	margin-bottom: 90px;
	padding-top: 100px;
}
.sec04 .secHead::before {
	content: "";
	display: table-cell;
	width: 318px;
	height: 103px;
	background: center/ 100% auto url("../img/sec04_pointimg.png") no-repeat;
	position: absolute;
	right: 0;
	top: 0;
}
.featureList {
	font-size: 0;
	padding-top: 50px;
	margin-bottom: 80px;
}
.featureList li {
	display: inline-block;
	width: 32%;
	margin-right: 2%;
	vertical-align: top;
}
.featureList li:nth-last-child(1) {
	margin-right: auto;
}
.featureList li > span {
	display: block;
}
.featureList li > span.img {
	position: relative;
	margin-bottom: 0;
}
.featureList li > span.img::before {
	content: "";
	display: block;
	padding-top: 48.3%;
}
@media screen and (max-width:1200px) {
	.sec04 .secHead::before {
		display: none;
	}	
}
@media screen and (max-width:1100px) {
	.featureList li {
	  display: block;
	  width: 100%;
		max-width: 500px;
	  margin-right: 0;
	  vertical-align: top;
		margin: 0 auto 4vw;
	}	
	.sec03 .secHead::before {
		display: none;
	}	
}
@media screen and (max-width:767px) {
	.sec03 {
	  padding-top: 26.3vw;
	  position: relative;
	  background-color: #FFF;
	  padding-bottom: 9vw;
	}
	.sec03::before {
	  content: "";
	  display: block;
	  width: 100%;
	  height: 26.3vw;
	  background: center top / 100% auto url("../img/wave_sec03_sp.jpg") no-repeat;
	  position: absolute;
	  top: 0;
	  left: 0;
	}	
	.sec03 .textBox02 p.fs-24 {
	  font-size: 5vw;
	}
}

.sec05 .featureList li:nth-child(1) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec04_point01.png") no-repeat;
}
.sec05 .featureList li:nth-child(2) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec04_point02.png") no-repeat;
}
.sec05 .featureList li:nth-child(3) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec04_point03.png") no-repeat;
}
.sec06 .featureList li:nth-child(1) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec06_treat01.jpg") no-repeat;
}
.sec06 .featureList li:nth-child(2) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec06_treat02.jpg") no-repeat;
}
.sec06 .featureList li:nth-child(3) > span.img::after {
	content: "";
	display: table-cell;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	background: center / auto 70% url("../img/sec06_treat03.jpg") no-repeat;
}
.featureList li > span.title {
	text-align: center;
	font-size: 24px;
	line-height: 1.6;
	margin-bottom: 1em;
}
.featureList li > span.text {
	font-size: 16px;
	line-height: 1.8;
}
.featureList li > span.dots {
	height: 2px;
	background: left top / auto 100% url("../img/dots.png") repeat-x;
	margin-bottom: 24px;
	position: relative;
}
.featureList li > span.dots::before {
	content: "";
	display: table-cell;
	width: 15px;
	height: 12px;
	border-top: 12px solid #ad913a;
	border-left: 7.5px solid transparent;
	border-right: 7.5px solid transparent;
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.youtube {
	text-align: center;
}
.youtube .inlineBlock {
	display: inline-block;
}
.youtube .inlineBlock .mov {
	display: block;
	position: relative;
	width: 560px;
}
.youtube .inlineBlock .mov::before {
	content: "";
	display: block;
	padding-top: 56%;
}
.youtube .mov iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.btnArea {
	text-align: center;
}
.btnArea .btn {
	display: inline-block;
}
.btnArea .btn a {
	font-size: 28px;
	color: #2da76f;
	line-height: 90px;
	height: 92px;
	border: 1px solid #ad913a;
	text-align: center;
	display: block;
	width: 750px;
	background-color: #FFF;
	border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  border-bottom-left-radius: 30px;	
}
@media screen and (max-width:767px) {
	.featureList {
	  padding-top: 0;
	  margin-bottom: 15vw;
	}	
  .featureList li {
    width: 100%;
    max-width: 100%;
  }	
	.featureList li > span.img {
	  border-radius: 3vw;
	  margin-bottom: 3vw;
	}	
	.featureList li > span.title {
	  font-size: 4.3vw;
	}	
	.featureList li > span.text {
	  font-size: 3.8vw;
	}	
	.featureList li > span.dots {
	  margin-bottom: 4vw;
	}
	.featureList li > span.dots::before {
	  content: "";
	  display: table-cell;
	  width: 3vw;
	  height: 2.4vw;
	  border-top: 2.4vw solid #ad913a;
	  border-left: 1.5vw solid transparent;
	  border-right: 1.5vw solid transparent;
	}
	.youtube {
		width: 92vw;
		margin: 0 auto 11vw;
	}	
	.youtube .inlineBlock .mov {
	  width: 100%;
	}
	.youtube .inlineBlock {
	  display: block;
	}
	.btnArea {
		width: 92%;
		margin: 0 auto;
		display: block;
	  text-align: center;
	}	
	#cta01.btnArea {
		width: 100%;
	}	
	.btnArea .btn {
	  display: block;
	}	
	.btnArea .btn a {
	  font-size: 4.0vw;
	  line-height: 1.0;
	  height: auto;
	  display: block;
	  width: 100%;
	  background-color: #FFF;
	  border-top-left-radius: 10vw;
	  border-top-right-radius: 10vw;
	  border-bottom-left-radius: 10vw;
		padding: 1em 0.3em;
	}	
}
.sec05 {
	background-color: #FFF;
	padding-top: 12.8vw;
	padding-bottom: 115px;
	position: relative;
}
.sec05::before {
	content: "";
	display: block;
	width: 100%;
	height: 12.8vw;
	background: center top / 100% auto url("../img/wave_sec05.jpg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.sec05 .secHead {
	position: relative;
	margin-bottom: 0;
	padding-top: 110px;
}
.sec05 .secHead::before {
	content: "";
	display: table-cell;
	width: 393px;
	height: 105px;
	background: center / 100% auto url("../img/word_about.png")no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.workBox {
	margin-bottom: 60px;
}
.workBox .workItem {
	border:1px solid #ad913a;
	padding: 50px 60px;
	background-color: #FFF;
	border-radius: 30px;
	margin-bottom: 40px;
}
.workBox .workItem:nth-last-child(1) {
	margin-bottom: 0;
}
.workBox .workItem .workIn {
	position: relative;
	display: table;
	width: 100%;
}
.workBox .workItem .workIn p a {
	line-height: inherit;
	font-size: inherit;
	color: #099025;
	font-weight: 600;
	padding: 0 0.3em;
	
}
.workBox .workItem .workIn .textBox {
	display: table-cell;
	vertical-align: top;
	padding-right: 70px;
}
.workBox .workItem .workIn .imgBox {
	display: table-cell;
	vertical-align: top;
	width: 370px;
	height: auto;
	min-width: 230px;
}
.workBox .workItem .workIn .imgBox .img {
	border-radius: 20px;
	overflow: hidden;
	width: 370px;
	height: 230px;
}
.workBox .workItem .workIn .imgBox .img img {
	width: 100%;
	height: auto;
}
.workBox .workItem .textBox h3 {
	font-size: 24px;
	font-weight: normal;
	padding-left: 50px;
	position: relative;
	margin-bottom: 1em;
}
.workBox .workItem .textBox p {
	
}
.workBox .workItem .textBox h3::before {
	content: "";
	display: table-cell;
	width: 40px;
	height: 2px;
	background: left center / auto 100% url("../img/dot_green.png") repeat-x;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.timeTable {
	background-color: #effabf;
	padding: 60px;
	border-radius: 30px;
}
.timeTable h3 {
	line-height: 1.5;
	margin-bottom: 2em;
}
.timeTable .timeTableItem {
	display: table;
	width: 100%;
}
.timeTable .timeTableItem > span {
	display: table-cell;
	vertical-align: top;
	min-height: 346px;
}
.timeTable .timeTableItem .timeText {
}
.timeTable .timeTableItem .timeText .timeTextIn {
	display: block;
	font-size: 20px;
	color: #FFF;
	line-height: 2.0em;
	height: 2.0em;
	border-radius: 1.0em;
	background-color: #099025;
	text-align: center;
	width: 5em;
}
.timeTable .timeTableItem > span.timeCel {
	position: relative;
	width: 5em;
}
.timeTable .timeTableItem > span.timeCel::before {
	content: "";
	display: table-cell;
	width: 2px;
	height: 100%;
	background: top left / 100% auto url("../img/dot_vc_green.png") repeat-y;
	position: absolute;
	left: 50%;
	top: 0;
}
.timeTable .timeTableItem.end > span.timeCel::before {
	display: none;
}
.timeTable .timeTableItem > span.textCel {
	padding: 0 20px 20px;
}
.timeTable .timeTableItem > span.textCel .label {
	line-height: 1.5;
	margin-bottom: 1em;
	font-size: 24px;
}
.timeTable .timeTableItem > span.textCel .text {
	font-size: 16px;
	line-height: 2.0;
}
.timeTable .timeTableItem > span.imgCel {
	text-align: right;
	padding-bottom: 40px;
}
.timeTable .timeTableItem > span.imgCel .img {
	display: inline-block;
	text-align: right;
}
.timeTable .timeTableItem > span.imgCel .img .imgIn {
	display: block;
	width: 370px;
	border: 1px solid #ad913a;
	border-radius: 116px;
	overflow: hidden;
	
}
.timeTable .timeTableItem > span.imgCel .img img {
	width: 100%;
	height: auto;
}

@media screen and (max-width:1000px) {
	.timeTable .timeTableItem {
		display:block;
		width: 100%;
		position: relative;
		padding-top: 320px;
	}
	.timeTable .timeTableList {
		width: 400px;
		margin: 0 auto;
	}	
	.timeTable .timeTableItem > span {
		display: block;
		min-height: 0;
	}
	.timeTable .timeTableItem .timeText {
		position: relative;
	}
	.timeTable .timeTableItem .timeText .timeTextIn {
		display: block;
		font-size: 20px;
		color: #FFF;
		line-height: 2.0em;
		height: 2.0em;
		border-radius: 1.0em;
		background-color: #099025;
		text-align: center;
		width: 5em;
	}
	.timeTable .timeTableItem > span.timeCel {
		position: absolute;
		left: 0;
		top: 0;
		width: auto;
		height: 100%;
	}
	.timeTable .timeTableItem > span.timeCel::before {
		content: "";
		display: table-cell;
		width: 2px;
		height: 100%;
		background: top left / 100% auto url("../img/dot_vc_green.png") repeat-y;
		position: absolute;
		left: 50%;
		top: 0;
	}
	.timeTable .timeTableItem.end > span.timeCel::before {
		display: none;
	}
	.timeTable .timeTableItem > span.textCel {
		padding: 0 0 30px 80px;
	}
	.timeTable .timeTableItem > span.imgCel {
		text-align: right;
		padding-bottom: 0;
		position: absolute;
		top: 60px;
		left: 50%;
		transform: translateX(-50%);
	}
	
}
@media screen and (max-width: 767px) {
	.timeTable {
	  padding: 8vw 4vw;
	  border-radius: 4vw;
		background-color: #f7fcdf;
	}
	.timeTable h3 {
	  margin-bottom: 1em;
		font-size: 4.6vw;
	}
  .timeTable .timeTableList {
    width: 100%;
    margin: 0 auto;
  }	
  .timeTable .timeTableItem {
    padding-top: 69vw;
  }	
  .timeTable .timeTableItem .timeText .timeTextIn {
    font-size: 4.3vw;
  }
  .timeTable .timeTableItem > span.imgCel {
    text-align: right;
    padding-bottom: 0;
    position: absolute;
    top: 11vw;
    left: 50%;
    transform: translateX(-50%);
  }
	.timeTable .timeTableItem > span.imgCel .img .imgIn {
	  display: block;
	  width: 84vw; /* h 52vw*/
	  border: 1px solid #ad913a;
	  border-radius: 26vw;
	  overflow: hidden;
	}	
	.timeTable .timeTableItem > span.textCel {
		padding: 0 0 6vw 15vw;
	}	
	.timeTable .timeTableItem > span.textCel .label {
	  font-size: 4.3vw;
	}
	.timeTable .timeTableItem > span.textCel .text {
	  font-size: 3.8vw;
	}	
	
}


.btnArea.cta .btnArea {
	text-align: center;
}
.btnArea.cta .btn {
	display: inline-block;
}
.btnArea.cta .btn a {
	display: block;
	width: 750px;
	height: 92px;
	border: 1px solid #ad913a;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	border-bottom-left-radius: 30px;
	color: #FFF;
	background-color: #2da76f;
	position: relative;
}
.btnArea.cta .btn a .textBox {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}
.btnArea.cta .btn a .textBox .text01 {
	display: block;
	font-size: 28px;
	text-align: center;
	line-height: 1.0;
	margin-bottom: 0.3em;
}
.btnArea.cta .btn a .textBox .text02 {
	display: block;
	font-size: 16px;
	text-align: center;
}
.btnArea.cta .secCont > .textBox {
	margin-bottom: 50px;
}
@media screen and (max-width:1200px) {
	.sec05 .secHead::before {
		display: none;
	}
}
@media screen and (max-width:1100px) {
	.workBox .workItem {
	  padding: 30px 30px;
	  background-color: #FFF;
	  border-radius: 30px;
	  margin-bottom: 30px;
	}
	.workBox .workItem .workIn .textBox {
	  display: table-cell;
	  vertical-align: top;
	  padding-right: 30px;
	}
	.workBox .workItem .workIn .imgBox {
	  width: 280px;
	}	
	.workBox .workItem .workIn .imgBox .img {
	  border-radius: 20px;
	  overflow: hidden;
	  width: 280px;
	  height: 174px;
	}	
}
@media screen and (max-width:767px) {
  .sec05.sec .secHead h2 > span.block {
	  display: inline-block;
  }
  .sec05.sec .secHead h2 > span.block .headDeco {
	  display: block;
  }
	.sec05 {
	  padding-top: 22vw;
	  padding-bottom: 11vw;
	}	
	.sec05::before {
	  height: 22vw;
	  background: center top / 100% auto url("../img/wave_sec05_sp.jpg") no-repeat;
	}
	.workBox {
	  margin-bottom: 11vw;
	}	
  .workBox .workItem {
    padding: 4vw;
    background-color: #FFF;
    border-radius: 4vw;
    margin-bottom: 4vw;
  }
	.workBox .workItem .workIn {
	  display: block;
	  width: 100%;
		padding-top: 60vw;
	}	
  .workBox .workItem .workIn .textBox {
    display: block;
    padding-right: 0;
  }
	.workBox .workItem .workIn .imgBox {
	  display: block;
	  vertical-align: top;
	  width: 100%;
	  height: auto;
	  min-width: 0;
		position: absolute;
		top: 0;
		left: 0;
	}	
	.workBox .workItem .workIn .imgBox .img {
	border-radius: 2vw;
	overflow: hidden;
	width: 100%;
	height: auto;
	}
	.workBox .workItem .textBox h3 {
	  font-size: 4.3vw;
	  padding-left: 5vw;
	  position: relative;
	  margin-bottom: 1em;
	}
	.workBox .workItem .textBox h3::before {
	  width: 4vw;
	}
	.workBox .workItem .textBox p br {
		display: none;
	}
	.btnArea.cta .btn {
	  display: block;
	}	
	.btnArea.cta .btn a {
	  display: block;
	  width: 100%;
	  height: auto;
	  border-top-left-radius: 10vw;
	  border-top-right-radius: 10vw;
	  border-bottom-left-radius: 10vw;
		padding: 3vw 0;
	}
	.btnArea.cta .btn a .textBox {
	  position: static;
	  transform: translateX(0) translateY(0);
	  width: 100%;
	}	
	.btnArea.cta .btn a .textBox .text01 {
	  font-size: 4.3vw;
	}	
	.btnArea.cta .btn a .textBox .text02 {
	  font-size: 3vw;
	}	
	
}
.sec06 {
	background-color: #effabe;
	padding-top: 8.2vw;
	position: relative;
	padding-bottom: 60px;
}
.sec06::before {
	content: "";
	display: block;
	width: 100%;
	height: 8.2vw;
	background: center top / 100% auto url("../img/wave_sec06.jpg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.sec06 .secHead {
	position: relative;
}
.sec06 .secHead::before {
	content: "";
	display: table-cell;
	width: 318px;
	height: 103px;
	background: center / 100% auto url("../img/sec04_pointimg.png") no-repeat;
	left: 0;
	top: 0;
	transform: translateY(-60%);
	position: absolute;
}
.sec07 {
	padding-top: 12vw;
	position: relative;
	background-color: #FFF;
	padding-bottom: 90px;
}
.sec07::before {
	content: "";
	display:block;
	width: 100%;
	height: 12.0vw;
	background: center top / 100% auto url("../img/wave_sec07.jpg") no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.sec07 > box1200 >.secHead {
	position: relative;
	margin-bottom: 90px;
}
.sec07 > box1200 >.secHead::before {
	content: "";
	display: table-cell;
	width: 342px;
	height: 103px;
	background: center / 100% auto url("../img/sec07_voice.png") no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.stableList {
	margin-bottom: 112px;
}
.stableList ul {
	font-size: 0;
}
.stableList ul li {
	display: inline-block;
	width: 32%;
	margin-right: 2%;
	padding: 30px 25px 90px;
	background-color: #FFF;
	border-radius: 60px;
	vertical-align: top;
}
.stableList ul li .itemIn {
	display: block;
}
.stableList ul li:nth-last-child(1) {
	margin-right: 0;
}
.stableList ul li .itemIn > span {
	display: block;
	position: relative;
}
.stableList ul li .itemIn > span.itemRow01 {
	padding-left: 100px;
	min-height: 90px;
}
.stableList ul li .itemIn > span.itemRow01 .text {
	display: block;
	font-size: 24px;
	line-height: 1.56;
	padding-top: 0.2em;
}
.stableList ul li .itemIn > span.itemRow01 .num {
	position: absolute;
	left: 0;
	top: 0;
	display: table-cell;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background-color: #099025;
}
.stableList ul li .itemIn > span.itemRow01 .num .numIn {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.stableList ul li .itemIn > span.itemRow01 .num .numIn .text01 {
	text-align: center;
	font-size: 20px;
	color: #FFF;
}
.stableList ul li .itemIn > span.itemRow01 .num .numIn .text02 {
	text-align: center;
	font-size: 32px;
	color: #FFF;
}
.stableList ul li .itemIn > span.itemRow02 .text {
	display: block;
	font-size: 16px;
	line-height: 1.75;
	padding-top: 1.5em;
}
.stableList ul li.stableItem {
	position: relative;
}
.stableList ul li.stableItem:nth-child(1)::before {
	content: "";
	display: table-cell;
	width: 75px;
	height: 86px;
	background: center / 100% auto url("../img/stable01.png") no-repeat;
	position: absolute;
	right: 44px;
	bottom: 2px;
}
.stableList ul li.stableItem:nth-child(2)::before {
	content: "";
	display: table-cell;
	width: 79px;
	height: 78px;
	background: center / 100% auto url("../img/stable02.png") no-repeat;
	position: absolute;
	right: 40px;
	bottom: 0px;
}
.stableList ul li.stableItem:nth-child(3)::before {
	content: "";
	display: table-cell;
	width: 77px;
	height: 102px;
	background: center / 100% auto url("../img/stable03.png") no-repeat;
	position: absolute;
	right: 52px;
	bottom: 3px;
}
@media screen and (max-width:1100px) {
	.stableList {
		width: 92%;
		max-width: 500px;
		margin: 0 auto 110px;
	}
	.stableList ul li {
	  display: block;
	  width: 100%;
	  margin-right:0;
		margin-bottom: 30px;
	  padding: 30px 25px 50px;
	  background-color: #FFF;
	  border-radius: 60px;
	  vertical-align: top;
	}
	.sec06 .secHead::before {
		display: none;
	}
}
@media screen and (max-width: 767px) {
  .stableList ul li {
    margin-bottom: 6vw;
    padding: 6vw 4vw 20vw;
    border-radius: 4vw;
  }	
  .stableList ul li:nth-child(3) {
	  padding-bottom: 23vw;
	}
	.stableList ul li .itemIn > span.itemRow01 {
	  padding-left: 28vw;
	  min-height: 24vw;
	}
	.stableList ul li .itemIn > span.itemRow01 .num {
	  width: 24vw;
	  height: 24vw;
	}
	.stableList ul li .itemIn > span.itemRow01 .num .numIn .text01 {
	  font-size: 4.3vw;
	}
	.stableList ul li .itemIn > span.itemRow01 .num .numIn .text02 {
	  font-size: 9.3vw;
	}
	.stableList ul li .itemIn > span.itemRow01 .text {
		display: table-cell;
		height: 24vw;
		font-size: 4.3vw;
		vertical-align: middle;
		padding-top: 0;
	}	
	.stableList ul li .itemIn > span.itemRow02 .text {
	  font-size: 3.8vw;
	}
	.stableList ul li.stableItem:nth-child(1)::before {
		width: 17.6vw;
		height: 20vw;
		right: 8.5vw;
		bottom: 0.6vw;
	}
	.stableList ul li.stableItem:nth-child(2)::before {
		width: 20vw;
		height: 19.6vw;
		right: 6.3vw;
		bottom: 0px;
	}
	.stableList ul li.stableItem:nth-child(3)::before {
		width: 15.4vw;
		height: 20.3vw;
		right: 10vw;
		bottom: 3.2vw;
	}


}
.voiceBox {
	text-align: center;
	font-size: 0;
}
.voiceBox .voiceItem {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
	vertical-align: top;
	margin-bottom: 80px;
}
.voiceBox .voiceItem:nth-child(2),
.voiceBox .voiceItem:nth-child(3)
{
	margin-right: 0;
}
.voiceBox .voiceItem {
	background-color: #d9f0f6;
	border-radius: 30px;
	padding: 30px;
}
.voiceBox .voiceItem .voiceIn {
	display: block;
}
.voiceBox .voiceItem .voiceIn .voiceHead {
	position: relative;
	padding-left: 170px;
}
.voiceBox .voiceItem .voiceIn .voiceHead .textBox {
}
.voiceBox .voiceItem .voiceIn .voiceHead .textBox h3 {
	font-size: 24px;
	line-height: 1.6;
	margin-bottom: 0.5em;
}
.voiceBox .voiceItem .voiceIn .voiceHead .imgBox {
	position: absolute;
	left: 0;
	top: 0;
	display: table-cell;
	width: 180px;
	height: 180px;
	background-color: #d9f0f6;
	border-radius: 50%;
	transform:translateX(-10px) translateY(-70px);
}
.voiceBox .voiceItem .voiceIn .voiceHead .imgBox .img {
	width: 150px;
	height: 150px;
	display: table-cell;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 50%;
	overflow: hidden;
}
.voiceBox .voiceCont {
	background-color: #FFF;
	border-radius: 20px;
	padding: 20px;
}
@media screen and (max-width: 1200px) {

	.sec07 > box1200 >.secHead::before {
		display: none;
	}	
	.voiceBox .voiceItem {
	  display: block;
	  width: 100%;
	  margin-right: 0;
	  vertical-align: top;
	  margin-bottom: 60px;
	}	
}
@media screen and (max-width: 767px) {
	.sec06 {
		padding-bottom: 11vw;
	}
	
	.sec07 {
	  padding-top: 22vw;
	  padding-bottom: 11vw;
	}
	.sec07::before {
	  height: 22vw;
	  background: center top / 100% auto url("../img/wave_sec07_sp.jpg") no-repeat;
	}
  .sec06 .featureList {
    padding-top: 6vw;
    margin-bottom: 0;
  }	
	.voiceBox .voiceItem {
	  border-radius: 4vw;
	  padding: 4vw;
	}
	.voiceBox .voiceItem .voiceIn .voiceHead .imgBox {
		width: 30vw;
		height: 30vw;
		background-color: #d9f0f6;
		border-radius: 50%;
		transform:translateX(-1vw) translateY(-8vw);
	}
	.voiceBox .voiceItem .voiceIn .voiceHead .imgBox .img {
		width: 24vw;
		height: 24vw;
	}
	.voiceBox .voiceItem .voiceIn .voiceHead .textBox h3 {
	  font-size: 4.3vw;
		letter-spacing: 0.0;
	}	
	.voiceBox .voiceItem .voiceIn .voiceHead .textBox p {
	  font-size: 3.8vw;
		line-height: 1.5;
		letter-spacing: 0.0;
	}
	.voiceBox .voiceCont {
	  border-radius: 2vw;
	  padding: 4vw;
	}
	.sec07 .voiceCont p {
		margin-bottom: 1em;
		font-size: 3.8vw;
	}
	.voiceBox .voiceItem .voiceIn .voiceHead {
	  padding-left: 30vw;
	}	
  .voiceBox .voiceItem {
    margin-bottom: 10vw;
  }	
	.sec07 > box1200 >.secHead {
		margin-bottom: 9vw;
	}
	
}

.sec08 {
	padding-top: 7.7vw;
	position: relative;
	background-color: #fdfddf;
}
.sec08::before {
	content: "";
	display: block;
	width: 100%;
	height: 7.7vw;
	background: center top / 100% auto url("../img/wave_sec08.jpg") no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.sec08 .textBox {
	margin-bottom: 70px; 
}
.sec08 .placeBox {
	margin-bottom: 133px;
}
.sec08 .placeBox .placeItem {
	border-radius: 30px;
	overflow: hidden;
	background-color: #FFF;
	margin-bottom: 55px;
}
.sec08 .placeBox .placeItem:nth-last-child(1) {
	margin-bottom: 0;
}
.sec08 .placeBox .placeHead {
	padding: 15px 60px;
	background-color: #CCC;
}
.sec08 .placeBox .placeItem.place01 .placeHead {
	background-color: #c1e6ee;
}
.sec08 .placeBox .placeItem.place02 .placeHead {
	background-color: #f9d8c1;
}
.sec08 .placeBox .placeItem.place03 .placeHead {
	background-color: #fefb9b;
}
.sec08 .placeBox .placeItem.place04 .placeHead {
	background-color: #e4d2ee;
}
.sec08 .placeBox .placeHead h3 {
	font-size: 24px;
	line-height: 1.3;
}
.sec08 .placeBox .placeCont {
	padding: 45px 60px;
}
.sec08 .placeBox .placeCont .img {
	margin-bottom: 40px;
}
.sec08 .placeBox .placeCont table {
	border-top: 1px solid #b6e0e3;
}
.sec08 .placeBox .placeCont table th {
	padding: 20px;
	width: 225px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 600;
	border-bottom: 1px solid #b6e0e3;
}
.sec08 .placeBox .placeCont table td {
	padding: 20px 0;
	width: calc(100% - 225px);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	border-bottom: 1px solid #b6e0e3;
}
.hintBox > h3 {
	margin-bottom: 2em;
}
.hintBox .hintList {
	font-size: 0;
}
.hintBox .hintList .hintItem {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 3%;
	vertical-align:top;
}
.hintBox .hintList .hintItem:nth-child(2n) {
	margin-right: 0;
}
.hintBox .hintList .hintItem .num {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.hintBox .hintList .hintItem .num .numText {
	display: block;
	font-size: 20px;
	line-height: 2.0;
	height: 2em;
	text-align: center;
	width: 6em;
	background-color: #099025;
	border-radius: 1.0em;
	color: #FFF;
		
}
.hintBox .hintList .hintItem > span {
	display: block;
	position: relative;
}
.hintBox .hintList .hintItem > span .text {
	font-size: 24px;
	line-height: 1.6;
	text-align: center;
	display: block;
	width: 100%;
}
.hintBox .hintList .hintItem > span.row02 .text {
	font-size: 16px;
}
.hintBox .hintList .hintItem > span.row01 {
	background-color: #FFF;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
.hintBox .hintList .hintItem > span.row02 {
	height: auto;
	position: relative;
	background-color: #b6e0e3;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
}
.hintBox .hintList .hintItem > span.row02::before {
	content: "";
	display: table-cell;
	width: 44px;
	height: 22px;
	border-top: 22px solid #FFF;
	border-left: 22px solid transparent;
	border-right: 22px solid transparent;
	position: absolute;
	top: -1px;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: border-box;
}
.hintBox .hintList .hintItem > span.row01 .text,
.hintBox .hintList .hintItem > span.row02 .text {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}

.hintBox .hintList .hintItem > span.row02 .text {
	font-size: 16px;
	text-align: left;
	padding: 0.5em 1.5em 0;
}
.matchBox {
	position: relative;
	background-color: rgba(255,255,255,0.50);
	border-radius: 30px;
}
.matchBox .matchHead {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
	text-align: center;
}
.matchBox .matchHead h3 {
	display: inline-block;
}
.matchBox .matchHead h3 span {
	display: block;
	font-size: 28px;
	color: #FFF;
	font-weight: bold;
	line-height: 2.2;
	height: 2.2em;
	padding: 0 1.0em;
	word-break: keep-all;
	background-color: #ad913a;
	border-radius: 1.1em;
}
.matchBox .matchCont {
	padding-top: 80px;
	padding-bottom: 40px;
}
.sec08 .btnArea.cta {
	margin-bottom: 190px;
}
.matchBox .matchCont > p .text {
  background: left bottom / auto 2px url("../img/dots.png") repeat-x;
  padding: 0 15px 10px;
}
.matchBox .matchCont > p {
	margin-bottom: 60px;
}
.matchBox .matchCont .matchList {
	font-size: 0;
	margin-bottom: 30px;
}
.matchBox .matchCont .matchList .matchItem {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 4%;
	vertical-align: top;
	padding-left: 60px;
	position: relative;
}
.matchBox .matchCont .matchList .matchItem::before {
	content: "";
	display: table-cell;
	width: 36px;
	height: 35px;
	background: center / 100% url("../img/check03.png") no-repeat;
	position: absolute;
	left: 0;
	top: 0.8em;;
}
.matchBox .matchCont .matchList .matchItem:nth-child(2n) {
	margin-right: 0;
}
.matchBox .matchCont .matchList .matchItem .text {
	display: block;
	font-size: 18px;
	line-height: 1.8;
	font-family: "Noto Sans JP", sans-serif;
}
.matchTable {
}
.matchTable table {
	width: auto;
	margin: 0 auto;
}
.matchTable td {
	font-size: 16px;
	line-height: 1.3;
	font-family: "Noto Sans JP", sans-serif;
}
.matchTable td.cel01 {
	padding: 0.3em 1em 0.3em 0;
}
.matchTable td.cel02 span {
	font-weight: bold;
	color: #099025;
	padding: 0 0.5em;
	line-height: 2.0;
	height: 2.0em;
	background-color: #FFF;
}
.matchTable td.cel03 {
	padding-left: 0.5em;
}
.notmatchBox {
	padding-top: 85px;
	padding-bottom: 30px;
}
.notmatchBox .notmatchHead {
	text-align: center;
	margin-bottom: 60px;
}
.notmatchBox .notmatchHead h3 {
	display: inline-block;
}
.notmatchBox .notmatchHead h3 .text01 {
	margin-bottom: 1em;
}
.notmatchBox .notmatchHead .text {
	font-size: 24px;
	background: left bottom / auto 2px url("../img/dots.png") repeat-x;
 	 padding: 0 15px 10px;	
}
.notmatchBox .notmatchCont .notmatchList {
	font-size: 0;
}
.notmatchBox .notmatchCont .notmatchList .notmatchItem {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 4%;
	vertical-align: top;
	padding-left: 60px;
	position: relative;
}
.notmatchBox .notmatchCont .notmatchList .notmatchItem:nth-child(2n) {
	margin-right: 0;
}
.notmatchBox .notmatchCont .notmatchList .notmatchItem .text {
	display: block;
	font-size: 18px;
	line-height: 1.8;
	font-family: "Noto Sans JP", sans-serif;	
}
.notmatchBox .notmatchCont .notmatchList .notmatchItem::before {
	content: "";
	display: table-cell;
	width: 36px;
	height: 35px;
	background: center / 100% auto url("../img/check.png") no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
table.recruitTable {
	border-top: 1px solid #b6e0e3;
}
table.recruitTable th {
	padding: 20px;
	width: 225px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 600;
	border-bottom: 1px solid #b6e0e3;
}
table.recruitTable td {
	padding: 20px 0;
	width: calc(100% - 225px);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	border-bottom: 1px solid #b6e0e3;
}
table.recruitTable td ul{
	margin-top: 24px;
}
table.recruitTable td li{
	margin-top: 16px;
	line-height: 1.6;
}
@media screen and (max-width: 1100px) {
	.sec08 .placeBox .placeHead {
	  padding: 15px 30px;
	}	
	.sec08 .placeBox .placeCont {
	  padding: 30px;
	}
	.sec08 .placeBox .placeItem {
	  margin-bottom: 30px;
	}
	.sec08 .placeBox .placeHead {
		padding: 2vw 4vw;
	}
	.sec08 .placeBox .placeHead h3 {
	  font-size: 4.8vw;
		letter-spacing: 0;
	}	
	.sec08 .placeBox .placeCont {
		padding: 4vw;
	}	
	.sec08 .placeBox .placeCont .img {
	  margin-bottom: 4vw;
	}
	.hintBox .hintList .hintItem {
	  display: block;
	  width: 100%;
		max-width: 500px;
		margin: 0 auto 50px;
	}	
	.hintBox .hintList .hintItem:nth-child(2n) {
	  margin-right: auto;
	}	
}
@media screen and (max-width: 767px) {
	.sec04 .secHead {
	  position: relative;
	  margin-bottom: 11vw;
	  padding-top: 9vw;
	}	
	.sec08 .placeBox {
		margin-bottom: 15vw;
	}

	.sec08 .placeBox .placeCont table,
	.sec08 .placeBox .placeCont table tbody,
	.sec08 .placeBox .placeCont table tbody tr,
	.sec08 .placeBox .placeCont table tbody th,
	.sec08 .placeBox .placeCont table tbody td
	{
		font-family: "Noto Sans JP", sans-serif;
		display: block;
		width: 100%;
	}	
	.sec08 .placeBox .placeCont table th {
	  padding: 4vw 0 0;
	  font-size: 4.3vw;
	  border-bottom: none;
	}	
	.sec08 .placeBox .placeCont table td {
	  padding: 3vw 0 4vw;
	  font-size: 3.8vw;
	  line-height: 1.5;
	}
	.hintBox .hintList .hintItem {
	  display: block;
	  width: 100%;
		max-width: 100%;
		margin: 0 auto 11vw;
	}
	.hintBox .hintList .hintItem > span.row01 .text, .hintBox .hintList .hintItem > span.row02 .text {
	  position: static;
	  transform: translateX(0) translateY(0);
	  width: 100%;
	}	
	.hintBox .hintList .hintItem > span.row01 {
	  height: auto;
		padding: 8vw 4vw 6vw;
	}	
	.hintBox .hintList .hintItem > span .text {
	  position: static;
	  transform: translateX(0) translateY(0);
	  font-size: 4.3vw;
		line-height: 1.5;
	}
	.hintBox .hintList .hintItem > span.row02 {
	  height: auto;
		padding: 6vw 0;
	}	
	.hintBox .hintList .hintItem > span.row02 .text {
	  font-size: 3.8vw;
		font-weight: 600;
		font-family: "Noto Sans JP", sans-serif;
	}
	.sec08 .textBox {
	  margin-bottom: 9vw;
	}
	.sec08 .btnArea.cta {
	  margin-bottom: 19vw;
	}
	.matchBox .matchHead h3 span {
	  font-size: 4.3vw;
	}	
	.matchBox .matchCont {
	  padding-top: 9vw;
	  padding-bottom: 4vw;
	}
	.matchBox .matchCont > p {
		font-size: 4.3vw;
	  margin-bottom: 6vw;
	}	
	.matchBox .matchCont .matchList .matchItem {
	  display: block;
	  width: 100%;
	  margin-right: auto;
	  padding-left: 13vw;
	}
	.matchBox .matchCont .matchList .matchItem::before {
	  width: 8vw;
	  height: 7.76vw;
	  top: 50%;
		transform: translateY(-55%);
	}	
	.matchBox .matchCont .matchList .matchItem .text {
	  display: block;
	  font-size: 3.8vw;
	}
	.matchBox .matchCont .matchList .matchItem .text br {
		display: none;
	}
	.matchTable td.cel01 {
	  padding: 0.3em 0.2em 0.3em 0;
		width: 23%;
	}	
	.matchTable td.cel02 {
		width: 18%;
	}
	.matchTable td.cel03 {
	  padding: 0.3em 0;
	}
	
	.matchTable td {
	  font-size: 3.3vw;
	}	
	.notmatchBox {
	  padding-top: 15vw;
	  padding-bottom: 9vw;
	}	
	.notmatchBox .notmatchHead {
	  text-align: center;
	  margin-bottom: 11vw;
	}
	.notmatchBox .notmatchHead .text01 {
	  font-size: 3.8vw;
	}	
	.notmatchBox .notmatchHead .text02 .text {
	  font-size: 5vw;
	  padding: 0 0.5em 0.5em;
	}
	.notmatchBox .notmatchCont .notmatchList .notmatchItem {
	  display: block;
	  width: 100%;
		margin: 0 auto 4vw;
	  padding-left: 13vw;
	}
	.notmatchBox .notmatchCont .notmatchList .notmatchItem::before {
		width: 8vw;
		height: 7.76vw;
		top: 50%;
		transform: translateY(-55%);
	}
	.notmatchBox .notmatchCont .notmatchList .notmatchItem:nth-child(2n) {
	  margin-right: auto;
	}
	.notmatchBox .notmatchCont .notmatchList .notmatchItem .text {
	  font-size: 3.8vw;
	  line-height: 1.6;
	  font-family: "Noto Sans JP", sans-serif;
	}	
}
.secRecruit {
	position: relative;
	background-color: #FFF;
}
.secRecruit .recruitBox {
	background-color: #f4fafc;
	border-radius: 30px;
	padding: 50px 0;
}
.secRecruit .recruitBox td .block {
	display: block;
	line-height: 1.8;
	font-family: "Noto Sans JP", sans-serif;
	margin-bottom: 1em;
}
.sec_flow {
	padding-bottom: 0;
}
.sec_flow .flowItem {
	border: 1px solid #ad913a;
	border-radius: 30px;
	padding: 65px 40px 40px 60px;
	background-color: #FFF;
	position: relative;
	margin-bottom: 85px;
	z-index: 2
}
.sec_flow .flowItem:nth-last-child(1) {
	margin-bottom: 0;
}
.sec_flow .flowBox {
	position: relative;
}
.sec_flow .flowBox::after {
	content: "";
	display: table-cell;
	width: 2px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background: top left / 2px auto url("../img/dot_vertical.png") repeat-y;
	z-index: 1;
}
.sec_flow .flowItem::after {
	content: "";
	display: table-cell;
	width: 15px;
	height: 12px;
	border-top: 12px solid #ad913a;
	border-left: 7.5px solid transparent;
	border-right: 7.5px solid transparent;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%) translateY(50px);
	box-sizing: border-box;
}
.sec_flow .flowItem:nth-last-child(1)::after {
	display: none;
}
.sec_flow .flowItem h3 {
	padding-left: 45px;
	font-size: 24px;
	position: relative;
	margin-bottom: 1em;
}
.sec_flow .flowItem h3::before {
	content: "";
	width: 40px;
	height: 2px;
	background: left top / auto 2px url("../img/dot_green.png") repeat-x;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.sec_flow .flowItem .flowNum {
	position: absolute;
	left: 21px;
	top: 0;
	width: 90px;
	height: 90px;
	background-color: #ffae00;
	transform: translateY(-50%);
	display: table-cell;
	border-radius: 50%;
}
.sec_flow .flowItem .flowNum p {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}
.sec_flow .flowItem .flowNum p .text01 {
	font-size: 20px;
	color: #FFF;
	text-align: center;
	line-height: 1.2;
}
.sec_flow .flowItem .flowNum p .text02 {
	font-size: 32px;
	color: #FFF;
	text-align: center;
	line-height: 1.0;
}
.sec_flow .flowItem .flowIn {
	display: table;
	width: 100%;
}
.sec_flow .flowItem .flowIn > div {
	display: table-cell;
	vertical-align: top;
}
.sec_flow .flowItem .flowIn > div.infoBox {
	width: calc(100% - 375px);
	padding-right: 50px;
}
.sec_flow .flowItem .flowIn > div.imgBox {
	width: 375px;
}
.sec_flow .flowItem .flowIn > div.infoBox th,
.sec_flow .flowItem .flowIn > div.infoBox td,
.sec_flow .flowItem .flowIn > div.infoBox p,
.sec_flow .flowItem .flowIn > div.infoBox li
{
	font-size: 16px;
	line-height: 2.0;
  font-family: "Noto Sans JP", sans-serif;
}
.sec_flow .flowItem .flowIn > div.infoBox p {
	margin-bottom: 1em;
}
.sec_flow .flowItem .flowIn > div.infoBox p a {
	line-height: inherit;
	font-size: inherit;
	font-weight: 600;
	color: #12B06E;
	padding: 0 0.2em;
}
.sec_flow .flowItem .flowIn > div.infoBox ul {
	margin-bottom: 30px;
}
.sec_flow .flowItem .flowIn > div.infoBox ul.dotList li {
	padding-left: 1em;
	position: relative;
}
.sec_flow .flowItem .flowIn > div.infoBox ul.dotList li::before {
	content: "・";
	line-height: 2.0;
	position: absolute;
	left: 0;
	top: 0;
}
.sec_flow .flowItem .flowIn > div.infoBox table {
	width: 100%;
}
.sec_flow .flowItem .flowIn > div.infoBox table td,
.sec_flow .flowItem .flowIn > div.infoBox table th {
	
}
.flowItem .infoBox table {
	margin-bottom: 30px;
	border-top: 1px solid #b6e0e3;
}
.flowItem .infoBox table th {
	padding: 20px;
	width: 225px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 600;
	border-bottom: 1px solid #b6e0e3;
}
.flowItem .infoBox table td {
	padding: 20px 0;
	width: calc(100% - 225px);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	border-bottom: 1px solid #b6e0e3;
}
.flowItem .imgBox .img {
	border-radius: 20px;
	overflow: hidden;
} 
@media screen and (max-width: 1100px) {
	.sec_flow .flowItem .flowIn > div.infoBox {
	  width: calc(100% - 300px);
	  padding-right: 30px;
	}	
	.sec_flow .flowItem .flowIn > div.imgBox {
	  width: 300px;
	}	
}
@media screen and (max-width: 767px) {
	.secRecruit {
	 padding-top: 0;
	}	
	.secRecruit::before {
	  height: 17.8vw;
	  background: center top / 100% auto url("../img/wave_sec09_sp.jpg") no-repeat;
	}
	.secRecruit .recruitBox {
	  border-radius: 4vw;
	  padding: 4vw;
	}
  .secRecruit.sec .secHead {
    padding-top: 14.6vw;
    margin-bottom: 6vw;
  }	
	.secRecruit .recruitBox table,
	.secRecruit .recruitBox table tbody,
	.secRecruit .recruitBox table tbody tr,
	.secRecruit .recruitBox table tbody th,
	.secRecruit .recruitBox table tbody td
	{
		font-family: "Noto Sans JP", sans-serif;
		display: block;
		width: 100%;
	}
	.secRecruit .recruitBox table th {
	  padding: 4vw 0 0;
	  font-size: 4.3vw;
	  border-bottom: none;
	}	
	.secRecruit .recruitBox table td {
	  padding: 3vw 0 4vw;
	  font-size: 3.8vw;
	  line-height: 1.5;
	}
	.sec_flow .flowItem {
	  border-radius: 4vw;
	  padding: 4vw;
	  margin-bottom: 15vw;
	  z-index: 2;
	}	
	.sec_flow .flowItem .flowNum {
	  left: 3vw;
	  top: 0;
	  width: 18vw;
	  height: 18vw;
		z-index: 3;
	}	
	.sec_flow .flowItem .flowNum p .text01 {
	  font-size: 4vw;
	}	
	.sec_flow .flowItem .flowNum p .text02 {
	  font-size: 5vw;
	}
	.sec_flow .flowItem .flowIn,
	.sec_flow .flowItem .flowIn > div.infoBox,
	.sec_flow .flowItem .flowIn > div.imgBox
	{
	  display: block;
	  width: 100%;
		padding: 0;
	}
	.sec_flow .flowItem .flowIn > div.imgBox {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
	}
	.sec_flow .flowItem .flowIn {
		position: relative;
		padding-top: 56vw;
	}
	.sec_flow .flowItem::after {
	  width: 4vw;
	  height: 3.2vw;
	  border-top: 3.2vw solid #ad913a;
	  border-left: 2vw solid transparent;
	  border-right: 2vw solid transparent;
		transform: translateX(-50%) translateY(9.5vw);
		bottom: 0;
	}	
	.sec_flow .flowItem h3 {
	  padding-left: 5vw;
	  font-size: 4.3vw;
	}
	.sec_flow .flowItem h3::before {
	  width: 4vw;
	}
	.sec_flow .flowItem .flowIn > div.infoBox table,
	.sec_flow .flowItem .flowIn > div.infoBox table tbody,
	.sec_flow .flowItem .flowIn > div.infoBox table tr,
	.sec_flow .flowItem .flowIn > div.infoBox table th,
	.sec_flow .flowItem .flowIn > div.infoBox table td
	{
			font-size: 3.8vw;
			line-height: 1.5;
			display: block;
			  width: 100%;
	}
	.flowItem .infoBox table th {
	  padding: 4vw 0 0;
	  border-bottom: none;
	}
	.sec_flow .flowItem .flowIn > div.infoBox table td {
		padding: 2vw 0 4vw;
	}
	.sec_flow .flowItem .flowIn > div.infoBox th, .sec_flow .flowItem .flowIn > div.infoBox td, .sec_flow .flowItem .flowIn > div.infoBox p, .sec_flow .flowItem .flowIn > div.infoBox li {
	  font-size: 3.8vw;
	  line-height: 1.5;
	  font-family: "Noto Sans JP", sans-serif;
	}	
	.sec_flow {
	  padding-bottom: 11vw;
	}	
}
.sec10 {
	position: relative;
	background-color: #fdfddf;
	padding-top: 7.7vw;
	padding-bottom: 150px;
}
.sec10::before {
	content: "";
	display: block;
	width: 100%;
	height: 7.7vw;
	background: center top /100% auto url("../img/wave_sec08.jpg") no-repeat;
	position: absolute;
	left: 0;
	top: 0;
}
.sec10::after {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/sec10_intern.png") no-repeat;
	width: 631px;
	height: 133px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-700px) translateY(86px);
	z-index: 3;
}
.internBox {
	display: table;
	margin-bottom: 60px;
}
.internBox > div {
	display: table-cell;
	vertical-align: top;
}
.internBox .imgBox {
	width:530px;
}
.internBox .imgBox .img {
	width:530px;
	height: 330px;
	border-radius: 165px;
	overflow: hidden;
}
.internBox .textBox {
	width:calc(100% - 530px);
	padding-left: 30px;
}
.internBox .textBox p.fs-24 {
	font-size: 22px;
}
.internTable {
	background-color: #FFF;
	border-radius: 30px;
	padding: 40px 60px;
	margin-bottom: 75px;
}
.internTable table,
.outlineTable table{
	border-top: 1px solid #b6e0e3;
}
.internTable table th,.outlineTable table th {
	padding: 20px;
	width: 400px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 600;
	border-bottom: 1px solid #b6e0e3;
  font-family: "Noto Sans JP", sans-serif;
}
.internTable table td,.outlineTable table td {
	padding: 20px 0;
	width: calc(100% - 400px);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	border-bottom: 1px solid #b6e0e3;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width:1100px) {
	.internBox {
		width: 92%;
		max-width: 680px;
		margin: 0 auto;
	}
	.internBox,
	.internBox > div
	{
	  display: block;
		width: 100%;
	  margin-bottom: 30px;
	}	
	.internBox .textBox {
	  width: 100%;
	  padding-left: 0;
	}
	.internBox .imgBox {
		margin: 0 auto 30px;
	}
	.internTable table th, .outlineTable table th {
	  width: 30%;
	}	
}
@media screen and (max-width:767px) {
	.sec10 .secCont {
		width: 92%;
		margin: 0 auto;
	}
	.internBox .imgBox {
		width: 100%;
		margin: 0 auto 4vw;
	}
	.internBox .imgBox .img {
	  width: 100%;
	  height: auto;
	  border-radius: 58vw;
	}	
	.internBox .textBox p.fs-24 {
	  font-size: 5vw;
	}	
	.internBox .textBox p.fs-24 br:nth-child(2) {
		display: none;
	}
	.internTable {
	  border-radius: 4vw;
	  padding: 4vw;
	}
	.internTable table,
	.internTable table tbody,
	.internTable table tr,
	.internTable table th,
	.internTable table td
	{
			font-size: 3.8vw;
			line-height: 1.5;
			display: block;
			  width: 100%;
	}
	.internTable table th {
	  padding: 4vw 0 0;
	  border-bottom: none;
	}
	.sec10 .box1080 {
	  width: 100%;
	}
	.sec10 {
		padding-bottom: 11vw;
	}
}
.sec11 {
	background-color: #FFF;
	padding-top: 7.7vw;
	position: relative;
	padding-bottom: 90px;
}
.sec11::before {
	content: "";
	display: block;
	width: 100%;
	height: 7.7vw;
	background: center top / 100% auto url("../img/wave_sec09.jpg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.faqBox {
	background-color: #fef1db;
	padding: 60px;
	border-radius: 30px;
	margin-bottom: 50px;
}
.faqBox:nth-last-child(1) {
	margin-bottom: 0;
}
.faqBox .faqHead {
	margin-bottom: 60px;
}
.faqBox .faqHead h3 {
	font-size: 24px;
	text-align: center;
	color: #ad913a;
}
.faqList {
	
}
.faqList li {
	background-color: #FFF;
	padding: 0 40px;
	border-radius: 30px;
	margin-bottom: 30px;
	font-family: "Noto Sans JP", sans-serif;
	cursor: pointer;
}
.faqList li:nth-last-child(1) {
	margin-bottom: 0;
}
.faqList li > span {
	display: block;
}
.faqList li > span.faq_q {
	padding: 30px 65px 30px 75px;
	position: relative;
}
.faqList li > span.faq_q::after {
	content: "";
	display: table-cell;
	width: 15px;
	height: 12px;
	border-bottom: 12px solid #ad913a;
	border-left: 7.5px solid transparent;
	border-right: 7.5px solid transparent;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%) rotate(180deg);
	transform-origin: 50%;
	transition: 0.3s all ease;
}
.faqList li.open > span.faq_q::after {
	transform: translateY(-50%) rotate(0deg);
}
.faqList li > span.faq_q::before {
	content: "Q";
	font-size: 24px;
	display: table-cell;
	width: 50px;
	height: 50px;
	line-height: 43px;
	color: #555;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-color: #d5e688;
	border-radius: 25px;
	text-align: center;
	vertical-align: top;
}
.faqList li > span.faq_q .text {
	font-size: 22px;
	line-height: 1.3;
}
.faqList li > span.faq_a {
	padding: 30px 10px 45px 75px;
	background: left top / auto 2px url("../img/dots.png") repeat-x;
	position: relative;
}
.faqList li > span.faq_a::before {
	content: "A";
	font-size: 24px;
	display: table-cell;
	width: 50px;
	height: 50px;
	line-height: 43px;
	color: #555;
	position: absolute;
	left: 0;
	top: 30px;
	background-color: #fdfcaf;
	border-radius: 25px;
	text-align: center;
	vertical-align: top;
}
.faqList li > span.faq_a .text {
	font-size: 16px;
	line-height: 1.8;
}
@media screen and (max-width: 1100px) {
	.sec10::after {
		display: none;
	}	
}
@media screen and (max-width: 767px) {
	.sec11 {
	  padding-bottom: 4vw;
	}
	.faqBox {
	  padding: 4vw;
	  border-radius: 4vw;
	  margin-bottom: 4vw;
	}
	.faqBox .faqHead {
	  margin-bottom: 4vw;
	}
	.faqBox .faqHead h3 {
	  font-size: 5vw;
	}
	.faqList li {
	  padding: 0 4vw;
	  border-radius: 4vw;
	  margin-bottom: 4vw;
	}	
	.faqList li > span.faq_q {
	  padding: 4vw 13vw 4vw 12vw;
	  position: relative;
	}	
	.faqList li > span.faq_q::before {
	  font-size: 4.3vw;
	  width: 8.6vw;
	  height: 8.6vw;
	  line-height: 8vw;
	  border-radius: 4.3vw;
		top: 4vw;
		transform: translateY(0);
	}
	.faqList li > span.faq_q .text {
	  font-size: 4.3vw;
		font-weight: 600;
	  line-height: 1.3;
	}
	.faqList li > span.faq_a {
	  padding: 4vw 4vw 4vw 12vw;
	  background: left top / auto 2px url("../img/dots.png") repeat-x;
	}	
	.faqList li > span.faq_a::before {
		  font-size: 4.3vw;
		  width: 8.6vw;
		  height: 8.6vw;
		  line-height: 8vw;
		  border-radius: 4.3vw;
			top: 4vw;
			transform: translateY(0);
	}	
	.faqList li > span.faq_a .text {
	  font-size: 4.3vw;
	  line-height: 1.5;
	}	
}
.sec12 {
	background-color: #FFF;
}
.sec12 .outlineTable {
	background-color: #f4fafc;
	border-radius: 30px;
	padding: 65px 120px;
}
.sec12 .outlineTable table {
	width: 100%;
}
table td a {
	line-height: 1.8;
}

.dotList li {
	font-size: 16px;
	line-height: 1.8;
	padding-left: 1em;
	position: relative;
}
.dotList li::before {
	content: "・";
	display: table-cell;
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1.8;
}

@media screen and (max-width:1100px) {
	.sec12 .outlineTable {
	  padding: 65px 30px;
	}	
}
@media screen and (max-width: 767px) {
  .sec12.sec .secHead {
    padding-top: 14.6vw;
    margin-bottom: 4vw;
  }	
  .sec12 .outlineTable {
    padding: 4vw;
  }	
	.outlineTable table,
	.outlineTable table tbody,
	.outlineTable table tr,
	.outlineTable table th,
	.outlineTable table td
	{
			font-size: 3.8vw;
			line-height: 1.5;
			display: block;
			  width: 100%;
	}
	.outlineTable table td a {
		display: block;
	}
	.outlineTable table th {
	  padding: 4vw 0 0;
	  border-bottom: none;
	}
	.dotList li {
	  font-size: 4.3vw;
	  line-height: 1.5;
	}
	.internTable table td,.outlineTable table td {
		padding: 2vw 0 4vw;
	}
	
}
.bottomBnrArea {
	background-color: #FFF;
	padding: 50px 0 100px;
}
.bottomBnrArea .btnArea {
	margin-bottom: 40px;
}
.bottomBnrArea .btnArea:nth-last-child(1) {
	margin-bottom: 0;
}
.snsArea {
	background-color: #fdfddf;
	padding: 40px 0;
}
.snsArea .secHead {
	margin-bottom: 23px;
}
.snsArea h3 {
	text-align: center;
	color: #2da76f;
	font-size: 28px;
}
.snsArea .snsList ul {
	font-size: 0;
	text-align: center;
}
.snsArea .snsList li {
	display: inline-block;
	margin-right: 10px;
}
.snsArea .snsList li:nth-last-child(1) {
	margin-right: 0;
}
.snsArea .snsList li a {
	display: block;
	width: 80px;
	height: 80px;
	border: 1px solid #ad913a;
	background-color: #FFF;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	border-bottom-left-radius: 30px;
	position: relative;
}
.snsArea .snsList li.snsX a::before {
	content: "";
	display: table-cell;
	width: 80px;
	height: 80px;
	background: center / 41px auto url("../img/sns_x.png") no-repeat;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);

}
.snsArea .snsList li.snsInsta a::before {
	content: "";
	display: table-cell;
	width: 80px;
	height: 80px;
	background: center / 40px auto url("../img/sns_insta.png") no-repeat;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);

}
.snsArea .snsList li.snsNote a::before {
	content: "";
	display: table-cell;
	width: 80px;
	height: 80px;
	background: center / 55px auto url("../img/sns_sukoyaka.png") no-repeat;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
footer {
	background-color: #2da76f;
	padding: 42px 0;
}
footer .footerIn {
	display: table;
}
footer ul {
	display: table-cell;
	font-size: 0;
}
footer ul li {
	display: inline-block;
	color: #FFF;
}
footer ul li::after {
	content: "｜";
	padding: 0 0.5em;
}
footer ul li:nth-last-child(1)::after {
	display: none;
}
footer ul li a {
	font-size: 16px;
	color: #FFF;
}
footer .copy {
	display: table-cell;
	text-align: right;
}
footer .copy p {
	text-align: right;
	font-size: 12px;
	color: #FFF;
}
.gotop {
	position: fixed;
	right: -130px;
	bottom: 30px;
	display: table-cell;
	width: 60px;
	height: 60px;
	background: center / 56px auto url("../img/backtotop.png") no-repeat;
	z-index: 999;
	transition: 0.3s all ease;
}
.scrolled .gotop {
	right: 30px;
}
.gotop:hover {
	background-color: rgba(255,255,255,1.00);
}

@media screen and (max-width: 1100px) {
	footer ul {
	  display: none;
	}	
	footer .footerIn,
	footer .footerIn .copy
	{
	  display: block;
	}
}
@media screen and (max-width: 767px) {
	.bottomBnrArea {
	  padding: 6vw 0 15vw;
	}	
	.bottomBnrArea .btnArea {
	  margin-bottom: 4vw;
	}
	.snsArea {
	  padding: 6vw 0;
	}
	.snsArea .secHead {
	  margin-bottom: 4vw;
	}
	.snsArea h3 {
	  font-size: 5vw;
	}
  footer .snsArea li .spList02 {
    padding-bottom: 3vw;
  }
  footer .snsArea li a {
    display: block;
    width: 13.8vw;
    height: 13.8vw;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    border-bottom-left-radius: 4vw;
  }
	footer .snsArea li.snsX a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 6vw auto url("../img/sns_x.png") no-repeat;

	}
	footer .snsArea li.snsInsta a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 6vw auto url("../img/sns_insta.png") no-repeat;

	}
	footer .snsArea li.snsNote a::before {
    width: 13.8vw;
    height: 13.8vw;
		background: center / 11vw auto url("../img/sns_sukoyaka.png") no-repeat;
	}
	footer .copy p {
		text-align: center;
	  font-size: 3.8vw;
	}	
	footer {
	  padding: 4vw 0;
	}
	.gotop {
	  position: fixed;
	  right: -15vw;
	  bottom: 4vw;
	  display: table-cell;
	  width: 8vw;
	  height: 8vw;
	  background: center / 7vw auto url("../img/backtotop.png") no-repeat;
		background-color: rgba(0, 0, 0, 0);
	  z-index: 999;
	  transition: 0.3s all ease;
	}	
	.scrolled .gotop {
		right: 4vw;
	}
	.sec .secHead {
	  padding-top: 14.6vw;
	  margin-bottom: 10vw;
	}
	.sec .secHead h2 span {
		line-height: 1.5;
		font-weight: normal;
	}
	
	
	
}
