@charset "UTF-8";
/*!
 *  Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.5.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.5.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.5.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.5.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.5.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

/*===================================================================
  COMMON
===================================================================*/
.main-contents {
  line-height: 1.8;
}

.pc-show {
  display: block;
}

@media screen and (max-width: 768px) {
  .pc-show {
    display: none;
  }
}

.sp-show {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp-show {
    display: block;
  }
}

img.pc-show {
  display: inline;
}

@media screen and (max-width: 768px) {
  img.pc-show {
    display: none;
  }
}

img.sp-show {
  display: none;
}

@media screen and (max-width: 768px) {
  img.sp-show {
    display: inline;
  }
}

/*===================================================================
	TOP
===================================================================*/
.main-contents .contents-main {
  padding: 13.5vw 0 4vw;
  position: relative;
  background-image: url(../../images/main-pc.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main {
    padding: 10vw 6vw;
  }
}

.main-contents .contents-main .contents-main-cnt {
  background-color: rgba(255, 255, 255, 0.85);
  width: 50%;
  min-width: 620px;
  padding: 2.5vw 2vw;
  border-radius: 0 10px 10px 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main .contents-main-cnt {
    min-width: auto;
    width: 100%;
    border-radius: 10px;
    padding: 2.5vw 6vw;
  }
}

.main-contents .contents-main .contents-main-cnt .txt .sub1 {
  font-size: 2.6rem;
  color: #70AC42;
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  padding: 0 0 .75em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main .contents-main-cnt .txt .sub1 {
    font-size: 1.8rem;
    padding: .5em 0 .75em;
  }
}

.main-contents .contents-main .contents-main-cnt .txt h2 {
  color: #5B5857;
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 9.5rem;
  line-height: 1.1;
  padding: 0 0 .25em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main .contents-main-cnt .txt h2 {
    font-size: 5.0rem;
  }
}

.main-contents .contents-main .contents-main-cnt .txt h2 span {
  font-size: 3.6rem;
  display: block;
  letter-spacing: 0.2em;
}

.main-contents .contents-main .contents-main-cnt .txt .sub2 {
  font-size: 2.0rem;
  color: #529071;
  font-weight: bold;
  padding: .75em 0;
}

.main-contents .contents-main .contents-main-cnt .cnt {
  max-width: 426px;
  margin: 0 auto;
}

.main-contents .contents-main .contents-main-cnt .cnt .btn {
  padding: .5em 0 0;
}

.main-contents .contents-main .contents-main-cnt .cnt .btn a {
  display: block;
  background-color: #529071;
  border-radius: 50px;
  -webkit-box-shadow: #284c25 0 5px 0;
          box-shadow: #284c25 0 5px 0;
  color: #fff;
  font-size: 2.9rem;
  font-weight: bold;
  padding: .3em 1.0em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main .contents-main-cnt .cnt .btn a {
    font-size: 2.0rem;
  }
}

.main-contents .contents-main .contents-main-cnt .cnt .tel {
  padding: 1em 0;
}

.main-contents .contents-main .contents-main-cnt .cnt .tel a {
  display: block;
  background-color: #fff;
  border-radius: 50px;
  border: #529071 2px solid;
  -webkit-box-shadow: #284c25 0 5px 0;
          box-shadow: #284c25 0 5px 0;
  color: #529071;
  font-weight: bold;
  padding: .05em 1.0em;
  text-align: center;
  font-size: 3.7rem;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-main .contents-main-cnt .cnt .tel a {
    font-size: 2.4rem;
    pointer-events: auto;
  }
}

.main-contents .contents-main .contents-main-cnt .cnt p {
  font-size: 1.6rem;
}

.main-contents .contents-contact {
  background-image: url(../../images/cv-bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.main-contents .contents-contact .contents-contact-body {
  padding: 3.0em 4vw 3.0em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body {
    padding: 3.0em 6vw 3.0em;
  }
}

.main-contents .contents-contact .contents-contact-body .tit {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 3.6rem;
  text-align: center;
  padding: 0 0 .5em;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .tit {
    font-size: 2.4rem;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 960px;
  margin: 0 auto;
}

.main-contents .contents-contact .contents-contact-body .cnt .tel {
  width: 48.5%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .tel {
    width: 100%;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .tel p {
  color: #ffff00;
  font-size: 2.2rem;
  padding: 0 0 1.25em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .tel p {
    font-size: 1.8rem;
    padding: 1em 0 .5em;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .tel a {
  display: block;
  background-color: #fff;
  border-radius: 50px;
  -webkit-box-shadow: #284c25 0 5px 0;
          box-shadow: #284c25 0 5px 0;
  color: #529071;
  font-weight: bold;
  padding: .4em 2.0em;
  text-align: center;
  min-height: 91px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .tel a {
    font-size: 2.0rem;
    pointer-events: auto;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .tel a .number {
  font-size: 4.0rem;
  display: block;
  line-height: 1.1;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .tel a .number {
    font-size: 3.0rem;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .tel a .txt {
  font-size: 1.6rem;
  color: #000;
  display: block;
  font-weight: normal;
}

.main-contents .contents-contact .contents-contact-body .cnt .btn {
  width: 48.5%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .btn {
    width: 100%;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .btn p {
  color: #ffff00;
  font-size: 2.2rem;
  padding: 0 0 1.25em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .btn p {
    font-size: 1.8rem;
    padding: 1em 0 .5em;
  }
}

.main-contents .contents-contact .contents-contact-body .cnt .btn a {
  display: block;
  background-color: #529071;
  border-radius: 50px;
  -webkit-box-shadow: #284c25 0 5px 0;
          box-shadow: #284c25 0 5px 0;
  color: #fff;
  font-size: 3.0rem;
  font-weight: bold;
  padding: .4em 2.0em;
  text-align: center;
  min-height: 91px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-contact .contents-contact-body .cnt .btn a {
    font-size: 2.0rem;
  }
}

.main-contents .contents-info {
  background-color: #529071;
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-info {
    padding: 0 6vw;
  }
}

.main-contents .contents-info .contents-info-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 3.5em 0 3.5em;
  color: #fff;
}

.main-contents .contents-info .contents-info-body p {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 3.0rem;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-info .contents-info-body p {
    font-size: 2.0rem;
  }
}

@media screen and (max-width: 768px) {
  .main-contents .contents-info .contents-info-body {
    padding: 2.0em 0 2.0em;
  }
}

.main-contents .contents-about {
  background-color: #F0EFDF;
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about {
    padding: 0 6vw;
  }
}

.main-contents .contents-about .contents-about-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 0em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body {
    padding: 4em 0 0em;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-tit {
  padding: 0 0 1.75em;
}

.main-contents .contents-about .contents-about-body .contents-about-tit h2 {
  text-align: center;
}

.main-contents .contents-about .contents-about-body .contents-about-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 3.5rem;
  color: #000;
  display: block;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja {
    font-size: 2.2rem;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja::before {
  content: "＼";
  padding: 0 .5em 0 0;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja::before {
    display: none;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja::after {
  content: "／";
  padding: 0 0 0 .5em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-tit h2 .ja::after {
    display: none;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-list ul {
  background-color: #fff;
  border-radius: 10px;
  padding: 2.5em 2.5em 0.5em 2.5em;
  max-width: 1000px;
  margin: 0 auto;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px;
          box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-list ul {
    padding: 2.5em 4vw 1.0em 4vw;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-list ul li {
  font-size: 2.9rem;
  font-weight: bold;
  margin: 0 0 1.5em;
  padding: 0 0 0 2.5em;
  background-image: url(../../images/ico-check.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 56px 46px;
  line-height: 1.6;
  color: #70AC42;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-list ul li {
    font-size: 2.1rem;
    background-position: left top .25em;
    background-size: 28px 23px;
    padding: 0 0 0 1.75em;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-cnt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto;
}

.main-contents .contents-about .contents-about-body .contents-about-cnt .txt {
  width: 60%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-cnt .txt {
    width: 100%;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-cnt .txt p {
  font-size: 2.3rem;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-cnt .txt p {
    font-size: 1.8rem;
    padding: 1em 0 0;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-cnt .txt p strong {
  color: #529071;
}

.main-contents .contents-about .contents-about-body .contents-about-cnt .img {
  width: 35%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-cnt .img {
    width: 100%;
    text-align: center;
  }
}

.main-contents .contents-about .contents-about-body .contents-about-cnt .img img {
  width: 100%;
  margin: -2em 0 0;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-about .contents-about-body .contents-about-cnt .img img {
    max-width: 260px;
    margin: 0;
  }
}

.main-contents .contents-future {
  padding: 0 2vw;
}

.main-contents .contents-future .contents-future-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body {
    padding: 4em 0 4em;
  }
}

.main-contents .contents-future .contents-future-body .contents-future-tit {
  padding: 0 0 2.5em;
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 {
  text-align: center;
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 .sub {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
  color: #529071;
  display: block;
  letter-spacing: .1em;
  padding: 0 0 .25em;
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 .sub::before {
  content: "＼";
  padding: 0 0 0 .75em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-tit h2 .sub::before {
    display: none;
  }
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 .sub::after {
  content: "／";
  padding: 0 .75em 0 0;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-tit h2 .sub::after {
    display: none;
  }
}

.main-contents .contents-future .contents-future-body .contents-future-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #5B5857;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-tit h2 .ja {
    font-size: 3.2rem;
  }
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-list {
    padding: 0 4vw;
  }
}

.main-contents .contents-future .contents-future-body .contents-future-list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 0 1.0em;
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li {
  width: 31.0%;
  background-color: #fff;
  -webkit-box-shadow: rgba(0, 0, 0, 0.15) 0 0 4px;
          box-shadow: rgba(0, 0, 0, 0.15) 0 0 4px;
  border-radius: 5px;
  margin: 0 0 2.25em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-list ul li {
    width: 100%;
    margin: 0 0 1.0em;
  }
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li .img {
  padding: 0 0 .5em;
  position: relative;
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li .img img {
  width: 100%;
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li .img .point {
  position: absolute;
  top: -.5em;
  right: -.5em;
  width: auto;
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li h3 {
  color: #529071;
  font-weight: bold;
  text-align: center;
  padding: .25em 2vw .5em;
}

.main-contents .contents-future .contents-future-body .contents-future-list ul li p {
  padding: 0 1.5vw 1.25em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-future .contents-future-body .contents-future-list ul li p {
    padding: 0 3.5vw 1.25em;
  }
}

.main-contents .contents-price {
  background-image: url(../../images/price-bg01.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  padding: 0 2vw;
  position: relative;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price {
    padding: 0 6vw;
  }
}

.main-contents .contents-price .contents-price-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body {
    padding: 4em 0 4em;
  }
}

.main-contents .contents-price .contents-price-body .illust {
  position: absolute;
  top: -2em;
  right: 2vw;
  text-align: right;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .illust {
    top: -1em;
  }
}

.main-contents .contents-price .contents-price-body .illust img {
  width: 75%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .illust img {
    width: 120px;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-tit {
  padding: 0 0 2.5em;
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 {
  text-align: center;
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 .sub {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
  color: #ffff00;
  display: block;
  letter-spacing: .1em;
  padding: 0 0 .25em;
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 .sub::before {
  content: "＼";
  padding: 0 0 0 .75em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-tit h2 .sub::before {
    display: none;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 .sub::after {
  content: "／";
  padding: 0 .75em 0 0;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-tit h2 .sub::after {
    display: none;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #fff;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-tit h2 .ja {
    font-size: 3.2rem;
  }
}

.main-contents .contents-price .contents-price-body .txt01 {
  text-align: center;
  color: #fff;
  padding: 0 0 1.75em;
}

.main-contents .contents-price .contents-price-body .contents-price-list01 {
  padding: 0 0 1em;
}

.main-contents .contents-price .contents-price-body .contents-price-list01 ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-list01 ul {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-list01 ul li {
  margin: 0 0 1.25em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-list01 ul li {
    width: 33.3333%;
  }
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-list01 ul li:first-child {
    width: 100%;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-list01 p {
  color: #fff;
  text-align: center;
  padding: 0 0 1em;
}

.main-contents .contents-price .contents-price-body .contents-price-list02 h3 {
  font-size: 2.7rem;
  text-align: center;
  color: #ffff00;
  padding: 0 0 1em;
}

.main-contents .contents-price .contents-price-body .contents-price-list02 h3 span {
  font-size: 2.2rem;
  color: #fff;
  padding: 0 0 0 .5em;
}

.main-contents .contents-price .contents-price-body .contents-price-list02 ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.main-contents .contents-price .contents-price-body .contents-price-list02 ul li {
  width: 32.0%;
  border-radius: 5px;
  background-color: #fff;
  color: #529071;
  text-align: center;
  font-weight: bold;
  padding: .75em;
  margin: 0 0 1.25em;
  line-height: 1.5;
  font-size: 2.0rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-price .contents-price-body .contents-price-list02 ul li {
    width: 100%;
    margin: 0 0 .75em;
  }
}

.main-contents .contents-price .contents-price-body .contents-price-list02 p {
  color: #fff;
  text-align: center;
  padding: 0 0 1em;
}

.main-contents .contents-support {
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support {
    padding: 0 6vw;
  }
}

.main-contents .contents-support .contents-support-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 20px 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body {
    padding: 20px 0 4em;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-tit {
  padding: 0 0 2.0em;
}

.main-contents .contents-support .contents-support-body .contents-support-tit h2 {
  text-align: center;
}

.main-contents .contents-support .contents-support-body .contents-support-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-support .contents-support-body .contents-support-tit h2 .sub {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
  color: #529071;
  display: block;
  letter-spacing: .1em;
  padding: 0 0 .25em;
}

.main-contents .contents-support .contents-support-body .contents-support-tit h2 .sub::before {
  content: "＼";
  padding: 0 0 0 .75em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-tit h2 .sub::before {
    display: none;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-tit h2 .sub::after {
  content: "／";
  padding: 0 .75em 0 0;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-tit h2 .sub::after {
    display: none;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-list {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background-color: #529071;
  padding: 2em 4vw 0;
  margin-bottom: 2em;
  position: relative;
}

.main-contents .contents-support .contents-support-body .contents-support-list::before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid #529071;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.main-contents .contents-support .contents-support-body .contents-support-list .stit {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.1rem;
  color: #ff0;
  display: block;
  letter-spacing: .1em;
  padding: 0 0 .125em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-list .stit {
    font-size: 1.6rem;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-list .btit {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 3.4rem;
  color: #fff;
  display: block;
  letter-spacing: .1em;
  padding: 0 0 .25em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-list .btit {
    font-size: 2.4rem;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 0 1.0em;
  max-width: 1100px;
  margin: 0 auto;
}

.main-contents .contents-support .contents-support-body .contents-support-list ul li {
  width: 31.0%;
  margin: 0 0 1em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-list ul li {
    width: 100%;
    text-align: center;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-list ul li .img {
  padding: 0 0 .5em;
  position: relative;
}

.main-contents .contents-support .contents-support-body .contents-support-list ul li .img img {
  width: 100%;
}

.main-contents .contents-support .contents-support-body .contents-support-cnt {
  text-align: center;
}

.main-contents .contents-support .contents-support-body .contents-support-cnt h3 {
  color: #5B5857;
  text-align: center;
  font-size: 5.0rem;
  font-family: ten-mincho, serif;
  line-height: 1.4;
  padding: 0 0 .5em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-cnt h3 {
    font-size: 2.5rem;
  }
}

.main-contents .contents-support .contents-support-body .contents-support-cnt p {
  padding: 0 0 3.0em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-cnt p {
    text-align: left;
  }
}

@media screen and (max-width: 768px) {
  .main-contents .contents-support .contents-support-body .contents-support-cnt p br {
    display: none;
  }
}

.main-contents .contents-flow {
  background-color: #F0EFDF;
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow {
    padding: 0 6vw;
  }
}

.main-contents .contents-flow .contents-flow-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body {
    padding: 4em 0 4em;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-tit {
  padding: 0 0 2.5em;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-tit h2 {
  text-align: center;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #5B5857;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-tit h2 .ja {
    font-size: 3.2rem;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list {
  padding: 0 0 1em;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #fff;
  border-radius: 5px;
  margin: 0 0 1.5em;
  padding: 1.5em;
  position: relative;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li::before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 16px solid #529071;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li:last-child::before {
  display: none;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .img {
  width: 25%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .img {
    width: 100%;
    padding: 0 0 1em;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .img img {
  width: 100%;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt {
  width: 71%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt {
    width: 100%;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt h3 {
  color: #529071;
  font-size: 2.4rem;
  padding: 0 0 .5em;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt i {
  color: #529071;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .mg-b1 {
  margin-bottom: 1em;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .check {
  padding: 0 0 0 1.65em;
  text-indent: -.65em;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding: 1em 0 0;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .btn {
  width: 40%;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .btn {
    width: 100%;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .btn a {
  background-color: #529071;
  color: #fff;
  text-align: center;
  border-radius: 50px;
  font-size: 1.8rem;
  padding: .75em .5em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .tel {
  width: 40%;
  padding: 0 0 0 1em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .tel {
    width: 100%;
    padding: 0;
  }
}

.main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .tel a {
  font-size: 3.6rem;
  color: #529071;
  display: block;
  margin: -.1em 0 0 0;
  font-weight: bold;
  text-align: center;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-flow .contents-flow-body .contents-flow-list ul li .txt .cnt .tel a {
    pointer-events: auto;
  }
}

.main-contents .contents-voice {
  background-color: #529071;
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-voice {
    padding: 0 6vw;
  }
}

.main-contents .contents-voice .contents-voice-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-voice .contents-voice-body {
    padding: 4em 0 4em;
  }
}

.main-contents .contents-voice .contents-voice-body .contents-voice-tit {
  padding: 0 0 2.5em;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-tit h2 {
  text-align: center;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #fff;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-voice .contents-voice-body .contents-voice-tit h2 .ja {
    font-size: 3.2rem;
  }
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li {
  width: 48.5%;
  background-color: #fff;
  border-radius: 5px;
  margin: 0 0 1.75em;
  padding: 2em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-voice .contents-voice-body .contents-voice-list ul li {
    width: 100%;
    padding: 1.5em 4vw;
  }
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li::before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid #fff;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li .img {
  width: 20%;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li .img img {
  -webkit-box-align: bottom;
  -webkit-align-items: bottom;
      -ms-flex-align: bottom;
          align-items: bottom;
  text-align: center;
  margin: 0 auto;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li .txt {
  width: 75%;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li .txt h3 {
  color: #529071;
  font-size: 1.8rem;
}

.main-contents .contents-voice .contents-voice-body .contents-voice-list ul li .txt p {
  font-size: 1.6rem;
}

.main-contents .contents-faq .contents-faq-body {
  max-width: 850px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-faq .contents-faq-body {
    padding: 2em 6vw 2em;
  }
}

.main-contents .contents-faq .contents-faq-body .contents-faq-tit {
  padding: 0 0 1.5em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-faq .contents-faq-body .contents-faq-tit {
    padding: 0 0 0;
  }
}

.main-contents .contents-faq .contents-faq-body .contents-faq-tit h2 {
  text-align: center;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #5B5857;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-faq .contents-faq-body .contents-faq-tit h2 .ja {
    font-size: 3.2rem;
  }
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list ul {
  list-style: none;
  padding: 0 0 1em;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list .faq-q::before {
  content: 'Q';
  font-weight: bold;
  display: inline-block;
  width: 34px;
  height: 34px;
  text-align: center;
  line-height: 28px;
  margin-right: 10px;
  border-radius: 50%;
  font-size: 1.8rem;
  border: #529071 1px solid;
  color: #529071;
  padding: 0.25em 0.125em 0;
  text-indent: 0;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list .faq-a::before {
  content: 'A';
  font-weight: bold;
  display: inline-block;
  width: 34px;
  height: 34px;
  text-align: center;
  line-height: 28px;
  margin-right: 10px;
  border-radius: 50%;
  font-size: 1.8rem;
  background-color: #529071;
  color: #fff;
  padding: 0.25em 0.125em 0;
  text-indent: 0;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list li:first-child .faq-q {
  border-top: none;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list .faq-a {
  padding: 1em 0 0 2.75em;
  text-indent: -2.75em;
}

.main-contents .contents-faq .contents-faq-body .contents-faq-list .faq-q {
  position: relative;
  border-top: #ccc 1px solid;
  margin: 1em 0 10px;
  padding: 1em 40px 0 0;
  font-size: 2.2rem;
  color: #529071;
  font-weight: bold;
  padding: 1em 0 0 2.25em;
  text-indent: -2.25em;
}

.main-contents .contents-access {
  background-color: #F0EFDF;
  padding: 0 2vw;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-access {
    padding: 0 6vw;
  }
}

.main-contents .contents-access .contents-access-body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4em 0 4em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-access .contents-access-body {
    padding: 4em 0 4em;
  }
}

.main-contents .contents-access .contents-access-body .contents-access-tit {
  padding: 0 0 2.5em;
}

.main-contents .contents-access .contents-access-body .contents-access-tit h2 {
  text-align: center;
}

.main-contents .contents-access .contents-access-body .contents-access-tit h2 .img {
  padding: 0 0 .75em;
  display: block;
}

.main-contents .contents-access .contents-access-body .contents-access-tit h2 .ja {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #5B5857;
  display: block;
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-access .contents-access-body .contents-access-tit h2 .ja {
    font-size: 3.2rem;
  }
}

.main-contents .contents-access .contents-access-body .contents-access-list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li {
  width: 48.5%;
  margin: 0 0 1.5em;
}

@media screen and (max-width: 768px) {
  .main-contents .contents-access .contents-access-body .contents-access-list ul li {
    width: 100%;
  }
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li h3 {
  color: #529071;
  font-size: 2.4rem;
  line-height: 1.3;
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li h3 span {
  font-size: 1.8rem;
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li .txt {
  padding: .75em 0;
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li .map {
  padding: 0 0 1em;
}

.main-contents .contents-access .contents-access-body .contents-access-list ul li .map iframe {
  width: 100%;
  height: 350px;
}
/*# sourceMappingURL=page.css.map */