@charset "utf-8";
header { background: #e5f6ef;
}
header .catch {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','Noto Serif JP',sans-serif;
  font-size: 26px;
  line-height: 41px;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #64a473;
  font-weight: bold;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5);
  text-shadow: 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white;
}
header .catch .text-combine{
  text-combine-upright: all;
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
}
header .head-copy .text{
font-size: 16px;
}
@media (max-width: 810px) {
header .head-copy{
width:90%;
top: 56%;
margin-left: -45%;
}
header .head-copy h2{
font-size: 4.6vw;
}
header .head-copy .text{
font-size: 14px;
font-size: 2.5vw;
}
header .mv_slider{
width: 140%;
text-align: center;
}
.slick-track,
.slick-slide{
width: 100% !important;
}
header .mv{
width: 140%;
margin-top: 14.2vw;
}
header .catch {
  font-size: 4vw;
  line-height: 6.7vw;
  padding-top: 3.5em;
  height: 10.5em;
}
}
@media (min-width: 810px) {
header {
  height: 378px;
  background: #e5f6ef;
}
header nav ul li a{
color: #3c3c3c;
text-shadow: 1px 1px 3px #e5f6ef, -1px -1px 3px #e5f6ef, 1px -1px 3px #e5f6ef, -1px 1px 3px #e5f6ef;
}
header nav ul li.contact a{
text-shadow: 0 0 0;
}
header nav ul li a::before {
  background: #3c3c3c;
}
header nav ul li a::after {
  background: #3c3c3c;
}
header nav ul li.select a{
color: #64A473;
background:url("../img/on2.png") no-repeat center center;
}
header nav ul li.select a::before {
  background: #64A473;
}
header nav ul li.select a::after {
  background: #64A473;
}
header nav ul li.faq a {
  color: #64A473;
  border: 1px solid #64A473;
  line-height: 2;
  background-color: rgba(255, 255, 255, 0.6);
}
header nav ul li.contact a {
  background: rgba(100, 164, 115, 1.0);
  color: #fff;
  line-height: 2;
}
header nav ul li.tel .pc{
  background-color: rgba(255, 255, 255, 0.6);
  box-shadow: 0 0 10px 10px rgba(255 255 255 /80%);
}
header nav ul li.tel a::before,
header nav ul li.tel a::after {
display: none;
}
header .head-copy{
position: absolute;
width: 510px;
margin-left: -255px;
}
header .mv img.pc{
position: absolute;
max-width: 1920px;
left: 50%;
margin-left: -960px;
}
}
@media (min-width: 1921px) {
header .mv img{
width: 100%;
max-width: 100% !important;
left: 0 !important;
margin-left: 0 !important;
}

}
/* --------------------------------------
------------------------------------------*/
.clearfix::after {
    content: " ";
    display: block;
    clear: both;
}
img{
max-width: 100%;
}
.pc{
display: block;
}
.sp{
display: none;
}
@media screen and (max-width: 810px) {
.pc{
display: none;
}
.sp{
display: block;
}
.del{
display: none;
}
}


/* --------------------------------------
------------------------------------------*/
h2.title{
display: inline-block;
margin: 0 0 20px;
padding: 0 0 10px;
font-size: 18px;
font-family: 'Sawarabi Gothic', sans-serif;
font-weight: normal;
border-bottom: 1px solid #64A473;
}
h3.copy{
margin: 0 0 1.6em;
color: #64A473;
font-size: 25px;
font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','Noto Serif JP',sans-serif;
letter-spacing: .14em;
font-weight: bold;
}
@media screen and (max-width: 1100px) {
h2.title{
  font-size: 15px;
}
h3.copy{
  font-size: 18px;
}
}
@media screen and (max-width: 360px) {
h2.title{
  font-size: 14px;
}
h3.copy{
  font-size: 16px;
}
}
/* --------------------------------------
------------------------------------------*/

#text01{
clear: both;
overflow: hidden;
width: 90%;
max-width: 1100px;
margin: 0 auto 90px;
padding-top: 100px;
position: relative;
}

#text01 .img{
float: left;
width: 47%;
max-width: 514px;
}
#text01 .cont{
float: right;
width: 50%;
max-width: 550px;
}
#text01 .cont .text{
font-size: 14px;
line-height: 1.6;
text-align: left;
}
#text01 .cont .text .name{
width: 220px;
margin-top: 1.5em;
}


@media screen and (min-width: 1100px) {
#text01 .cont .text{
font-size: 16px;
}
}
@media screen and (max-width: 1100px) {
#text01{
margin-bottom: 40px;
padding-top: 40px;
}
#text01 .img{
float: none;
width: 100%;
max-width: 1100px;
text-align: center;
}
#text01 .img img{
margin: 0 auto;
}
#text01 .cont{
float: none;
width: 100%;
max-width: 1100px;
text-align: center;
}

}
/* --------------------------------------
------------------------------------------*/
.faq-area{
clear: both;
overflow: hidden;
width: 90%;
max-width: 1100px;
margin: 0 auto 90px;
padding-top: 40px;
text-align: center;
border-bottom: 1px solid #d8d8d8;

}
@media screen and (max-width: 1100px) {
.faq-area{
margin-bottom: 40px;
}
}

.faq_contents dt{
padding: 1.5em 60px 1.5em 110px;
background: url("img/iconQ.svg") no-repeat left center;
background-size:82px 43px;
}

.faq_contents {
	border-top: 1px solid #d8d8d8;
}
.faq_title {
	position: relative;
	cursor: pointer;
	font-size: 20px;
	line-height: 1.4;
  text-align: left;
}
.faq_btn {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: #64a473;
	display: block;
	width: 40px;
	height: 40px;
	font-size: 26px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 5px;
}
.faq_btn:before, .faq_btn:after {
	display: block;
	content: '';
	background-color: #fff;
	position: absolute;
	width: 10px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.faq_btn:before {
	width: 2px;
	height: 10px;
}
.faq_title.selected .faq_btn:before {
	content: normal;
}
.faq_contents dd {
display: none;
text-align: left;
min-height: 80px;
padding: 0.4em 60px 1.5em 110px;
/*padding: 0 60px 1.5em 110px;*/
background: url("img/iconA.svg") no-repeat left 5px;
background-size:82px 43px;
	font-size: 20px;
}

@media screen and (max-width: 1100px) {
.faq_contents dt{
padding: 1.5em 60px 1.5em 80px;
background-size:72px 38px;
}
.faq_title {
	font-size: 16px;
}
.faq_contents dd {
padding: 0.4em 60px 1.5em 80px;
/*padding: 0 60px 1.5em 80px;*/
background-size:72px 38px;
	font-size: 16px;
}
.faq_btn {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background: #64a473;
	display: block;
	width: 30px;
	height: 30px;
	font-size: 26px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 5px;
}

}


