@charset "UTF-8";
/* CSS Document */
/*---------------------------------

  mainContainer（共通スタイル）

---------------------------------*/
#mainContainer section {
  margin: 70px 0;
}
#mainContainer section .wrapper {
  max-width: 1024px;
  width: 90%;
  margin: 0 auto;
}
/*  
  common
---------------------------------*/
#mainContainer .wrapper ul {
  list-style: none;
}
/*  
  h1
---------------------------------*/
#mainContainer h1.ttl {
  margin: 40px 0;
  text-align: center;
  font-size: 30px;
  font-size: 1.875em;
  font-weight: 500;
  font-family: 'Noto Serif JP', serif;
}
/*  
  h2
---------------------------------*/
#mainContainer section h2.ttl {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 20px;
}
/*---------------------------------

  9.faq-Block

---------------------------------*/
#page-menu {
  display: flex;
  justify-content: space-between;
  list-style: none;
  flex-wrap: wrap;
  margin: auto;
  max-width: 1024px;
  width: 90%;
}
#page-menu li {
  flex-basis: calc(100% / 4 - 10px);
  text-align: center;
}
#page-menu li a {
  border: 1px solid;
  color: #5f5046;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 20px;
  position: relative;
}
#page-menu li a::after {
  transform: translateY(-25%) rotate(45deg);
  width: 7px;
  height: 7px;
  margin-left: 10px;
  border-bottom: 3px solid #333333b3;
  border-right: 3px solid #333333b3;
  content: '';
  transition: transform .5s;
}
@media screen and (max-width: 768px) {
  #page-menu li {
    flex-basis: calc(100% / 2 - 10px);
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 580px) {
  #page-menu li {
    flex-basis: calc(100% / 2 - 5px);
    margin-bottom: 10px;
    text-align: left;
  }
  #page-menu li a {
    height: 100%;
    padding: 15px 10px;
  }
}
/*---------------------------------

  faq-Block

---------------------------------*/
.faqSection {}
.faqSection .faqList {
  display: flex;
  /*justify-content: space-between;*/
  gap: 13px;
  flex-wrap: wrap;
}
.faqSection .faqList .linkbox {
  flex-basis: calc(100% / 4 - 10px);
  /*margin-bottom: 20px;*/
  text-align: center;
}
.faqSection .faqList .linkbox a {
  background: #f6f6f6;
  border: 1px solid #ccc;
  color: #5f5046;
  display: block;
  padding: 20px;
  height: 100%;
}
.faqSection .faqList .linkbox a .icon {
  background: #fff;
  border-radius: 50%;
  display: grid;
  align-items: center;
  justify-content: center;
  margin: auto;
  margin-bottom: 10px;
  width: 70px;
  height: 70px;
}
.faqSection .faqList .linkbox a .icon img {
  width: 45px;
  height: 45px;
  vertical-align: bottom;
}
.faqSection .faqList .linkbox a {}
@media screen and (max-width: 768px) {
  .faqSection .faqList .linkbox {
    flex-basis: calc(100% / 2 - 10px);
  }
}
@media screen and (max-width: 580px) {
  .faqSection .faqList .linkbox {
    flex-basis: calc(100% / 1 - 5px);
    /*margin-bottom: 10px;*/
  }
  .faqSection .faqList .linkbox a {
    display: flex;
    align-items: center;
    padding: 20px;
    text-align: left;
  }
  .faqSection .faqList .linkbox a .icon {
    margin: 0;
    margin-right: 20px;
    width: 50px;
    height: 50px;
  }
}
/*---------------------------------
  faq-Block（アコーディオン）
---------------------------------*/
.faqSection .faqList .acbox {
  flex-basis: calc(100% / 3 - 10px);
  margin-bottom: 20px;
}
.faqSection .faqList .acbox summary {
  border: 1px solid #ccc;
  cursor: pointer;
  padding: 20px;
  text-align: center;
}
.faqSection .faqList .acbox .inner {}
.faqSection .faqList .acbox ul {
  background: #f3f3f3;
  padding: 10px 20px;
}
.faqSection .faqList .acbox ul li {
  margin: 10px 0;
  position: relative;
}
.faqSection .faqList .acbox ul li a {
  color: #006d4b;
  display:flex;
  align-items: center;
  
  line-height: 1.4;
}
.faqSection .faqList .acbox ul li a img {
  background: #fff;
  margin-right: 10px;
  width: 60px;
}
@media screen and (max-width: 768px) {
  .faqSection .faqList .acbox {
    flex-basis: calc(100% / 2 - 10px);
  }
}
@media screen and (max-width: 580px) {
  .faqSection .faqList .acbox {
    flex-basis: calc(100% / 1 - 5px);
    margin-bottom: 10px;
  }
  .faqSection .faqList .acbox summary {
    text-align: left;
  }
}
/*---------------------------------

  contactSection

---------------------------------*/
.contactSection {}
.contactSection > p {
  margin-bottom: 20px;
  text-align: center;
}
.contactSection .wrapper {
  display: flex;
  justify-content: space-between;
}
.contactSection .wrapper .conBox {
  background: #f3f3f3;
  flex-basis: 49%;
  padding: 30px 50px;
  text-align: center;
}
.contactSection .wrapper .conBox h2 {
  text-align: center;
}
.contactSection .wrapper .conBox .inner {}
.contactSection .wrapper .conBox .inner dl {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  margin: 10px 0;
}
.contactSection .wrapper .conBox .inner dl dt {
  margin-right: 10px;
}
.contactSection .wrapper .conBox .inner dl dt img {
  width: 80px;
  vertical-align: bottom;
}
.contactSection .wrapper .conBox .inner dl dd {
  font-size: 35px;
  font-weight: 600;
}
.contactSection .wrapper .conBox .inner dl dd a {
  color: #006d4b;
}
.contactSection .wrapper .conBox .btn {}
.contactSection .wrapper .conBox .btn a {
  color: #fff;
  background: #006d4b;
  display: block;
  padding: 20px 10px;
}
@media screen and (max-width: 768px) {
  .contactSection .wrapper {
    display: block;
  }
  .contactSection .wrapper .conBox {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 580px) {
  .contactSection .wrapper .conBox {
    padding: 20px;
  }
  .contactSection .wrapper .conBox .inner dl dt img {
    width: 60px;
  }
  .contactSection .wrapper .conBox .inner dl dd {
    font-size: 30px;
  }
}