@charset "UTF-8";
html {
  font-size: 1px;
}

body {
  font-size: 16px;
  line-height: 1.3em;
}

.container {
  width: 1028px;
  width: 1028rem;
  margin: 0 auto;
}

img {
  width: 100%;
}

body {
  font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

header {
  background: #009E33;
  height: 74px;
  height: 74rem;
}

header .pc-left {
  float: left;
}

header .pc-left img {
  width: 280px;
  width: 280rem;
  display: inline-block;
  margin-top: 11px;
  margin-top: 11rem;
  margin-bottom: 8px;
  margin-bottom: 8rem;
}

header .pc-right {
  float: right;
}

header .pc-right img.tel {
  width: 188px;
  width: 188rem;
  display: inline-block;
  margin-top: 7px;
  margin-top: 7rem;
  margin-bottom: 13px;
  margin-bottom: 13rem;
}

header .pc-right img.line-top {
  width: 180px;
  width: 180rem;
  display: inline-block;
  margin-top: 4px;
  margin-top: 4rem;
  margin-bottom: 7px;
  margin-bottom: 7rem;
  margin-left: 38px;
  margin-left: 38rem;
}

#hero {
  background: url(../img/hero-bg.jpg) center no-repeat;
  background-size: cover;
  text-align: center;
}

#hero img {
  margin-top: 36px;
  margin-top: 36rem;
  margin-bottom: 21px;
  margin-bottom: 21rem;
}

.green {
  width: 100%;
  height: 100%;
  background-color: #009E33;
}

.greenline {
  width: 100%;
  height: 100%;
  background: url(../img/green-line-bg.png) repeat;
  text-align: center;
}

.greenline img.quo {
  display: none;
}

.greenline img.iryou {
  display: inline-block;
  width: 540px;
  padding-top: 16px;
  padding-top: 16rem;
  padding-bottom: 18px;
  padding-bottom: 18rem;
  margin-right: 12px;
}

.greenline img.remote {
  display: inline-block;
  width: 540px;
  padding-top: 16px;
  padding-top: 16rem;
  padding-bottom: 18px;
  padding-bottom: 18rem;
}

#tv {
  text-align: center;
  background: url(../img/media_bg.jpg) center no-repeat;
  background-size: cover;
}

#tv img.h2 {
  max-width: 776px;
  max-width: 776rem;
  margin-top: 101px;
  margin-top: 101rem;
}

#tv img.tv {
  max-width: 1064px;
  max-width: 1064rem;
  margin-top: 38px;
  margin-top: 38rem;
}

#tv img.book {
  max-width: 1180px;
  max-width: 1180rem;
  margin-top: 101px;
  margin-top: 101rem;
}

#nayami {
  text-align: center;
}

#nayami .nayami-img {
  background: url(../img/purple-bg.png) center no-repeat;
  background-size: cover;
  padding-top: 46px;
  padding-top: 46rem;
  padding-bottom: 68px;
  padding-bottom: 68rem;
}

#nayami img.nayami-tri {
  width: 520px;
  width: 520rem;
  position: relative;
  top: -2px;
  top: -2rem;
}

#nayami img.kaiketu1 {
  max-width: 872px;
  max-width: 872rem;
  margin-top: 36px;
  margin-top: 36rem;
}

#nayami img.kaiketu2 {
  max-width: 1208px;
  max-width: 1208rem;
  margin-top: 46px;
  margin-top: 46rem;
}

#reason {
  text-align: center;
  background-color: #009E33;
  padding-bottom: 174px;
  padding-bottom: 174rem;
}

#reason h2 {
  font-size: 87px;
  font-size: 87rem;
  font-weight: 700;
  color: white;
  padding-top: 96px;
  padding-top: 96rem;
}

#reason .reasons {
  margin-top: 78px;
  margin-top: 78rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#reason .reasons .buf {
  width: 48%;
  margin-top: 64px;
  margin-top: 64rem;
}

#reason .reasons .buf:nth-child(even) {
  margin-left: 16px;
}

#plan {
  text-align: center;
  background-color: #EAEAEA;
  padding-bottom: 217px;
  padding-bottom: 217rem;
}

#plan img.h2 {
  max-width: 650px;
  max-width: 650rem;
  padding-top: 112px;
  padding-top: 112rem;
  padding-bottom: 68px;
  padding-bottom: 68rem;
}

#plan img.main-plan {
  margin-top: 72px;
  margin-top: 72rem;
  max-width: 1208px;
  max-width: 1208rem;
}

#add {
  position: relative;
  text-align: center;
}

#add img.yen {
  position: absolute;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  width: 194px;
  width: 194rem;
}

#add img.kaitori {
  padding-top: 48px;
  padding-top: 48rem;
}

#step {
  text-align: center;
  padding-bottom: 286px;
  padding-bottom: 286rem;
}

#step img.h2 {
  margin-top: 158px;
  margin-top: 158rem;
}

#voice {
  background-color: #E1F2E4;
  text-align: center;
  padding-bottom: 148px;
  padding-bottom: 148rem;
}

#voice h2.voice-h2 {
  font-size: 68px;
  font-size: 68rem;
  color: #009E33;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 500;
  padding-top: 90px;
  padding-top: 90rem;
  padding-bottom: 24px;
  padding-bottom: 24rem;
}

#voice .voices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#voice .bufv {
  width: 44%;
  margin-top: 42px;
  margin-top: 42rem;
}

#voice .bufv:nth-child(even) {
  margin-left: 56px;
  margin-left: 56rem;
}

#faq {
  background-color: #F4EDDB;
  text-align: center;
  padding-bottom: 148px;
  padding-bottom: 148rem;
}

#faq h2.faq-h2 {
  font-size: 68px;
  font-size: 68rem;
  color: #508933;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 500;
  padding-top: 90px;
  padding-top: 90rem;
  padding-bottom: 64px;
  padding-bottom: 64rem;
}

#faq .white-box {
  background-color: white;
  width: 100%;
  text-align: left;
  margin-top: 16px;
  margin-top: 16rem;
  margin-bottom: 16px;
  margin-bottom: 16rem;
}

#faq .white-box .q-box {
  padding-left: 100px;
  padding-left: 100rem;
  padding-right: 100px;
  padding-right: 100rem;
  padding-top: 24px;
  padding-top: 24rem;
  padding-bottom: 36px;
  padding-bottom: 36rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#faq .white-box .q-box .q-left {
  width: 10%;
  text-align: right;
}

#faq .white-box .q-box .q-right {
  width: 90%;
}

#faq .white-box .q-box .q-radius {
  background-color: #508933;
  border-radius: 50%;
  width: 56px;
  width: 56rem;
  height: 56px;
  height: 56rem;
  display: inline-block;
}

#faq .white-box .q-box .q-radius p {
  color: white;
  font-size: 32px;
  font-size: 32rem;
  line-height: 56px;
  line-height: 56rem;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 700;
  text-align: center;
}

#faq .white-box .q-box dt {
  font-size: 24px;
  font-size: 24rem;
  line-height: 1.3em;
  color: #508933;
  padding-left: 38px;
  padding-left: 38rem;
  padding-top: 8px;
  padding-top: 8rem;
  padding-right: 56px;
  padding-right: 56rem;
  display: inline-block;
}

#faq .white-box .q-box dd {
  color: black;
  font-size: 28px;
  font-size: 28rem;
  padding-top: 18px;
  padding-top: 18rem;
  padding-left: 40px;
  padding-left: 40rem;
  padding-right: 56px;
  padding-right: 56rem;
  line-height: 36px;
  line-height: 36rem;
}

#contactBtn2 .container {
  width: 100%;
}

#contactBtn2 .linediv a {
  width: 100%;
}

#contactBtn2 img.linebnr {
  max-width: 100%;
  margin-top: 0;
}

#contact {
  margin-top: 172px;
  margin-top: 172rem;
  background-color: #009E33;
  text-align: center;
}

#contact h2 img {
  width: 705px;
  width: 705rem;
  margin-top: 71px;
  margin-top: 71rem;
  margin-bottom: 74px;
  margin-bottom: 74rem;
}

#contact .whitebox {
  background-color: white;
  border-radius: 3rem;
  width: 1028px;
  width: 1028rem;
  margin: 0 auto;
  padding: 24px;
  padding: 24rem;
}

#contact form {
  padding-top: 40px;
  padding-top: 40rem;
  padding-bottom: 63px;
  padding-bottom: 63rem;
}

#contact form .form-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #F2F2F2;
  border-top: #C6C6C6 1px solid;
  border-bottom: #C6C6C6 1px solid;
}

#contact form .form-input .form-left {
  width: 30%;
  text-align: left;
}

#contact form .form-input .form-left p {
  font-weight: 500;
  line-height: 80px;
  line-height: 80rem;
  padding-left: 30px;
  padding-left: 30rem;
}

#contact form .form-input .need {
  width: 10%;
  position: relative;
}

#contact form .form-input .need p {
  font-size: 12px;
  line-height: 12px;
  padding: 6px 14px;
  padding: 6rem 14rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  color: white;
  background-color: #FB4F51;
  border-radius: 20rem;
}

#contact form .form-input .any {
  width: 10%;
  position: relative;
}

#contact form .form-input .any p {
  font-size: 12px;
  line-height: 12px;
  padding: 6px 14px;
  padding: 6rem 14rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  color: black;
  background-color: #CCC;
  border-radius: 20rem;
}

#contact form .form-input .form-right {
  width: 60%;
  height: 100%;
  background-color: white;
}

#contact form .form-input input {
  text-align: left;
  padding: 8px;
  font-size: 14px;
  border: #B7B7B7 1px solid;
  border-radius: 3px;
  width: 90%;
  margin: 24px 0;
  margin: 24rem 0;
}

#contact form .form-input select {
  text-align: left;
  padding: 8px;
  font-size: 14px;
  border: #B7B7B7 1px solid;
  border-radius: 3px;
  width: 90%;
  margin: 24px 0;
  margin: 24rem 0;
}

#contact form .form-input textarea {
  text-align: left;
  font-size: 20px;
  font-size: 20rem;
  padding: 8px;
  padding: 8rem;
  border: #B7B7B7 1px solid;
  border-radius: 3px;
  width: 90%;
  height: 230px;
  height: 230rem;
  margin: 12px 0;
  margin: 12rem 0;
}

#contact .bottom {
  font-size: 24px;
  font-size: 24rem;
  color: white;
  padding-top: 240px;
  padding-top: 240rem;
  padding-bottom: 84px;
  padding-bottom: 84rem;
}

#contact .bottom a {
  display: inline-block;
}

#contact .bottom p {
  display: inline-block;
}

#contact .bottom .b3 {
  padding-left: 6px;
}

#contact .form-btn {
  display: inline-block;
  margin-top: 64px;
  margin-top: 64rem;
  font-size: 36px;
  font-size: 36rem;
  color: white;
  padding: 22px 64px;
  padding: 22rem 64rem;
  background-color: #FF0219;
  border-radius: 3rem;
}

footer {
  background-color: #6A6A6A;
  text-align: center;
  height: 105px;
  height: 105rem;
}

footer p {
  font-size: 17px;
  font-size: 17rem;
  line-height: 105px;
  line-height: 105rem;
  color: white;
}

.contactBtn {
  text-align: center;
}

img.twimg {
  width: 100%;
  margin-top: 76px;
  margin-top: 76rem;
  display: inline-block;
}

img.linebnr {
  max-width: 951px;
  max-width: 951rem;
  margin-top: 54px;
  margin-top: 54rem;
}

img.linebtn {
  width: 456px;
  width: 456rem;
  margin: 74px 0;
  margin: 74rem 0;
}

.linep1 {
  font-family: 'ヒラギノ角ゴ ProN';
  font-size: 34px;
  font-weight: 800;
  color: #00C425;
  line-height: 1.3em;
  padding-top: 68px;
  padding-top: 68rem;
}

h2 {
  font-weight: 700;
  font-size: 20px;
}

.p1 p {
  font-weight: 400;
  padding-top: 24px;
  padding-top: 24rem;
}

.p1 span.greenspan {
  color: #009E33;
}

.p1 img {
  margin-top: 64px;
  margin-top: 64rem;
  margin-bottom: 84px;
  margin-bottom: 84rem;
  width: 456px;
  width: 456rem;
}

img.telmail {
  width: 456px;
  width: 456rem;
  margin-bottom: 116px;
  margin-bottom: 116rem;
}

.policy {
  width: 85%;
  margin: 0 auto;
  padding-top: 32px;
}

.policy p {
  padding-top: 12px;
}

.com {
  width: 85%;
  margin: 0 auto;
  padding-top: 32px;
  text-align: center;
}

.com p {
  padding-top: 12px;
}

.bottomp {
  text-align: center;
  font-size: 24px;
  font-size: 24rem;
  padding-top: 120px;
  padding-top: 120rem;
  padding-bottom: 84px;
  padding-bottom: 84rem;
}

.bottomp a {
  display: inline-block;
}

.bottomp p {
  display: inline-block;
}

.bottomp .b3 {
  padding-left: 6px;
}

.thanks {
  width: 85%;
  margin: 0 auto;
  padding-top: 32px;
  text-align: center;
  height: 70vh;
}

.thanks h2 {
  padding-top: 24px;
}

.thanks p {
  padding-top: 24px;
}

.thanks a {
  position: relative;
}

.thanks a p {
  padding-top: 24px;
  display: inline-block;
  border-bottom: black solid 1px;
}

/* 下追従ボタン */
.ft-fix {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  /* height: 70px; */
  background: rgba(245, 84, 26, .8);
  z-index: 5;
}

.ft-fix__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}

.ft-fix__btn {
  width: 20%;
}

.ft-fix__btn:first-child {
  width: 64%;
}

.ft-fix__link {
  display: none;
  height: 100%;
  /* max-height: 100%; */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.is-contact {
  padding: 7px 5px 4px 5px;
}

.is-contact img {
  height: 100%;
}

.is-line {
  border-right: 1px solid #caa174;
  border-left: 1px solid #caa174;
  padding: 8px 8px 4px 8px;
}

.is-line img {
  height: 93%;
}

.is-tel {
  padding: 9px 3px 8px 6px;
  width: 98%;
}

.is-tel img {
  width: 100%;
  height: 100%;
  vertical-align: bottom;
}

@media (max-width: 1028px) {
  html {
    font-size: 0.9px;
  }
  .container {
    width: 100%;
    padding: 0 3px;
  }
  header .pc-left img {
    width: 250rem;
    margin: 11px 0 8px 20px;
  }
  header .pc-right img.tel {
    display: none;
  }
  header .pc-right img.line-top {
    display: none;
  }
  #hero img {
    width: 93%;
    height: 100%;
  }
  #tv img.tv {
    margin-top: 48rem;
  }
  #reason .reasons .buf {
    width: 48%;
  }
  #plan img.main-plan {
    width: 92%;
  }
  #step img.h2 {
    margin-top: 158rem;
  }
  #voice .bufv {
    width: 48%;
  }
  #voice .bufv:nth-child(even) {
    margin-left: 3%;
  }
  #faq .white-box {
    width: 90%;
    margin: 32rem auto 35rem auto;
  }
  #faq .white-box .q-box {
    padding-left: 16rem;
    padding-right: 16rem;
    padding-top: 15rem;
    padding-bottom: 24rem;
  }
  #contactBtn2 img.linebnr {
    width: 100%;
  }
  #contact .whitebox {
    width: 95%;
  }
  img.linebnr {
    width: 78%;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 0.8px;
  }
  body {
    font-size: 15px;
    line-height: 1.5em;
  }
  #hero {
    background: url(../img/sp_hero-bg.jpg) center no-repeat;
    background-size: cover;
  }
  .green {
    height: 100%;
  }
  .greenline {
    height: 100%;
  }
  .greenline img.quo {
    display: inline-block;
    padding-top: 16rem;
    padding-bottom: 24rem;
  }
  .greenline img.iryou {
    width: 100%;
    margin-right: 0px;
  }
  .greenline img.remote {
    width: 100%;
  }
  #tv img.h2 {
    width: 80%;
  }
  #nayami img.nayami-tri {
    width: 100%;
  }
  #reason {
    padding-bottom: 54rem;
  }
  #reason h2 {
    font-size: 38rem;
    padding-top: 38rem;
  }
  #reason .reasons {
    margin-top: 48rem;
  }
  #reason .reasons .buf {
    width: 92%;
    margin-top: 18rem;
    margin-bottom: 26rem;
  }
  #reason .reasons .buf:nth-child(even) {
    margin-left: 0px;
  }
  #plan img.h2 {
    width: 80%;
  }
  #add img.kaitori {
    padding-top: 64px;
  }
  #step {
    padding-bottom: 64px;
  }
  #voice {
    padding-bottom: 48rem;
  }
  #voice h2.voice-h2 {
    font-size: 38rem;
    padding-top: 38rem;
    padding-bottom: 24rem;
  }
  #voice .bufv {
    width: 92%;
    margin-top: 18rem;
    margin-bottom: 28rem;
  }
  #voice .bufv:nth-child(even) {
    margin-left: 0px;
  }
  #faq {
    padding-bottom: 48rem;
  }
  #faq h2.faq-h2 {
    font-size: 48rem;
    padding-top: 48rem;
    padding-bottom: 28rem;
  }
  #faq .white-box .q-box .q-radius {
    width: 24px;
    height: 24px;
    margin-top: 4px;
  }
  #faq .white-box .q-box .q-radius p {
    font-size: 16px;
    line-height: 23px;
  }
  #faq .white-box .q-box dt {
    font-size: 24rem;
    line-height: 1.5em;
    padding-left: 12px;
    padding-right: 6px;
  }
  #faq .white-box .q-box dd {
    font-size: 24rem;
    line-height: 1.5em;
    padding-left: 12px;
    padding-right: 6px;
  }
  #contact h2 img {
    width: 80%;
  }
  #contact form .form-input {
    background-color: white;
    border: none;
    margin-top: 12rem;
  }
  #contact form .form-input .form-left {
    width: 43%;
  }
  #contact form .form-input .form-left p {
    padding-left: 40rem;
  }
  #contact form .form-input .need {
    width: 57%;
  }
  #contact form .form-input .any {
    width: 57%;
  }
  #contact form .form-input .form-right {
    width: 100%;
  }
  #contact form .form-input input {
    margin: 6rem 0;
  }
  #contact form .form-input select {
    margin: 6rem 0;
  }
  img.linebtn {
    width: 80%;
  }
  h2 {
    font-size: 15px;
    line-height: 1.5em;
  }
  .p1 img {
    width: 80%;
  }
  img.telmail {
    width: 80%;
  }
  .ft-fix__link {
    display: block;
  }
}

@media (max-width: 420px) {
  html {
    font-size: 0.6px;
  }
  header {
    height: 48px;
  }
  #contact form .form-input .form-left {
    width: 53%;
  }
  #contact form .form-input .form-left p {
    padding-left: 12rem;
  }
  #contact form .form-input .need {
    width: 40%;
  }
  #contact form .form-input .any {
    width: 40%;
  }
  img.twimg {
    width: 90%;
    margin-top: 16px;
  }
  .linep1 {
    font-size: 18px;
    line-height: 1.5em;
  }
}

/*---style.css　を直接修正-------------------------------------*/
#companyPage{
  background: #1ea821;
}
#companyPage .bottomp{
  color: white;
}

#underform {
  padding: 90px 0;
  background: #1ea821;
}

#underform section {
  width: 100%;
  max-width: 1080px;
  text-align: center;
  margin: 20px auto;
}

#underform section p {
  text-align: center;
  color: #fff;
}

#underform section h2 {
  text-align: center;
  margin: 30px 0 40px 0;
}

.bunkatu{
  width: 100%;
  max-width: 1080px;
  padding: 12px 2px;
  margin: auto;
}
/*# sourceMappingURL=maps/style.css.map */

/* company */
.comp-img{
  width: 60%;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .comp-img{
      width: 94%;
      margin-top: 0;
  }
}

.cardBnr{
  width: 60%;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .cardBnr{
      width: 94%;
      margin-top: 14px;
  }

}
