/*-----余白系-----*/
.mt10 {margin-top:10px;}
.mt15 {margin-top:15px;}
.mt20 {margin-top:20px;}
.mt25 {margin-top:25px;}
.mt30 {margin-top:30px;}
.mt35 {margin-top:35px;}
.mt40 {margin-top:40px;}
.mt45 {margin-top:45px;}
.mt50 {margin-top:50px;}
.mt55 {margin-top:55px;}
.mt65 {margin-top:65px;}
.mt70 {margin-top:70px;}
.mt80 {margin-top:80px;}
.mb15 {margin-bottom:15px;}
.mb20 {margin-bottom:20px;}
.mb25 {margin-bottom:25px;}
.mb30 {margin-bottom:30px;}
.mb35 {margin-bottom:35px;}
.mb40 {margin-bottom:40px;}
.mb45 {margin-bottom:45px;}
.mb50 {margin-bottom:50px;}
.mb55 {margin-bottom:55px;}
.mb60 {margin-bottom:60px;}
.mb65 {margin-bottom:65px;}
.mb77 {margin-bottom:77px;}
.mb80 {margin-bottom:80px;}
.mb85 {margin-bottom:85px;}
.mb90 {margin-bottom:90px;}
.mb110 {margin-bottom:110px;}
.mb120 {margin-bottom:120px;}
.mb130 {margin-bottom:130px;}
.mb140 {margin-bottom:140px;}
.mb157 {margin-bottom:157px;}
.mb170 {margin-bottom:170px;}
.mb250 {margin-bottom:250px;}
.ml20 {margin-left:20px;}
.ml30 {margin-left:30px;}
.ml60 {margin-left:60px;}
.mr10 {margin-right:10px;}
.mr20 {margin-right:20px;}
.mr30 {margin-right:30px;}
.mr40 {margin-right:40px;}
.mr50 {margin-right:50px;}

/*------フォント系------*/
.fwb {font-weight:bold;}
.tac {text-align:center;}
.tar {text-align:right;}
.fs180 {font-size:180%;}
.fs170 {font-size:170%;}
.fs150 {font-size:150%;}
.fs130 {font-size:130%;}
.fs120 {font-size:120%;}
.fs80 {font-size:80%;}
.fs70 {font-size:70%;}
.fcwhite {color:#fff;}
.fcgrey {color:#808080;}
.fcgreen {color:#3c9a46;}
.fcorange {color:#F15A24;}
.fcyellow {color:#ffff00}
.fcblack {color:#333333}
.fcred {color:#ff0000}

/*---------------------------- */

a, ins {
  text-decoration: none
}

article, aside, details, figcaption, figure, footer, header, hgroup, hr, main, menu, nav, section {
  display: block
}

a, body {
  color: #3C9A46
}

abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0
}

ins, mark {
  background-color: #ff9;
  color: #000
}

ol, ul {
  list-style: none
}

blockquote, q {
  quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none
}

a {
  margin: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0
}

mark {
  font-style: italic;
  font-weight: 700
}

del {
  text-decoration: line-through
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

.c-button {
  cursor: pointer
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

*, :after, :before {
  -webkit-box-sizing: inherit;
  box-sizing: inherit
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  background-color: #E1F2E3;
  -webkit-font-kerning: normal;
  font-kerning: normal;
  line-height: 1.6;
  word-break: normal;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%
}

:root body, _:-ms-input-placeholder {
  font-family: "メイリオ", Meiryo, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif
}

a:active, a:focus, a:hover {
  opacity: .8;
  text-decoration: none
}

img {
  height: auto
}

:root img[src$='.svg'], _:-ms-input-placeholder {
  max-width: 100%;
  height: auto
}

code, pre {
  font-family: Consolas, Menlo, Courier, monospace
}

.c-button, img, input, select {
  vertical-align: middle
}

.c-button, img {
  max-width: 100%
}

.c-button, a, hr {
  padding: 0
}

.c-button {
  position: relative;
  outline: 0;
  width: 100%
}

.p-container {
  overflow: hidden
}

.p-container {
  position: relative
}

@font-face {
  font-family: iconfont;
  src: url(../fonts/iconfont.eot);
  src: url(../fonts/iconfont.eot?#iefix) format("eot"), url(../fonts/iconfont.woff) format("woff"), url(../fonts/iconfont.ttf) format("truetype"), url(../fonts/iconfont.svg#iconfont) format("svg");
  font-weight: 400;
  font-style: normal
}

[class*=c-icon-], [class^=c-icon-] {
  display: inline-block;
  font-family: iconfont!important;
  speak: none;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.c-icon-cross::before {
  content: '\EA03'
}

.p-contact {
  font-weight: 700
}

.p-contact, .p-merit__heading {
  text-align: center
}

.p-contact__tel {
  color: #F15A24
}
.p-merit__copy{
  color: #F15A24;
  font-weight: 700
}

.p-merit__copy {
  position: relative;
  display: inline
}

/*---------------------------- */

.mainvisual img , .mainvisual-cp img {
  width: 100%;
  height: auto
}

.sec01, .sec03, .sec08 {
  background-color: #fff
}

.sec01 {
  padding-top: 50px;
  padding-bottom: 50px;
}

.sec01 img {
  width: 18%;
  height: auto;
  vertical-align: baseline
}

.sec01_text {
  vertical-align: bottom;
}

.sec02 {
  margin-bottom: 50px;
}


.sec03 {
  padding-bottom: 50px;
}

.sec03_button_area{
  padding-top: 50px;
  padding-bottom: 80px;
  background-image: url("../img/sec03/img_bg.png");
  background-size: cover;
}

.sec03_text {
  padding-top: 50px;
}

.sec05_inner {
  border: 1px solid #3c9a46;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 50px;
  background-image: url("../img/sec05/bg.png");
  background-size: cover;
  max-width: 1921px;
  height: auto;
}

.sec05 .c-button--unitprice img,.sec05 .c-button--simulation2 img{
  width: 50px;
  height: auto;
}
.sec05_text{
  margin-top: 55px;
}
.sec05_button_area{
  margin-top:60px;
  margin-bottom:50px;
}

.seccp {
  margin-right: auto;
  margin-left: auto;
  margin-top:-25px;
}

.seccp img{
  height: auto;
}

.sec07 {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1364px;
  text-align: center;
}

.sec07_inner {
  background-color: #fff;
  border: 3px solid #3C9A46;
  margin-top: 105px;
}

.sec07_header{
  margin: 30px 0 30px 0;
}
.sec07_header_title{
  font-size: 2.5rem;
  color: #333333;
  font-weight: 700;
}
.sec07_header_line{
  height: 30px;
  background-color: #3C9A46;
  border: none;
}
.sec07_content {
  display: flex;
  text-align: center;
  padding-bottom: 40px;
}
.sec07_content_right{
  color: #333333;
  align-self:center;
}
.sec07_content_right img{
  width: 40px;
  height: auto;
  vertical-align:middle;
  padding-bottom: 5px;
}
.sec08{
  padding-top: 50px;
  padding-bottom: 50px
}

.sec09 {
  text-align: center
}

.notice {
  max-width: 1364px;
  margin-left: auto;
  margin-right: auto;
  font-size: 20px;
  color: #333333;
  border: 5px solid #FFF;
  padding: 30px;
}

footer {
  background: #FFF;
}
.p-cta__button, .p-results__copy {
  margin-left: auto;
  margin-right: auto
}
.c-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  border-style: solid;
  background-color: transparent;
  -webkit-transition: .2s ease;
  transition: .2s ease
}
.c-button {
  border-width: .51282vw;
  font-size: 32px;
  font-size: 8.21vw
}
.c-button-green {
  color: #fff;
  background-color: #3C9A46
}
.c-button-green:hover {
  color: #3C9A46;
  background-color: #fff
}
.c-button-orange {
  color: #fff;
  background-color: #F15A24
}
.c-button-orange:hover {
  color: #F15A24;
  background-color: #fff
}
.c-button-sky {
  color: #fff;
  background-color: #38C3F4
}
.c-button-sky:hover {
  color: #38C3F4;
  background-color: #fff
}
.lead-text {
  font-weight: 700
}
.caution-text {
  font-weight: 500
}
.c-button--apply .c-button--simulation1 .c-button--simulation2 .c-button--unitprice{
  width: 100%;
  font-weight: 700;
  line-height: 1
}
.under-line-green {
  border-bottom: 7px solid #3C9A46;
}
.under-line-orange {
  border-bottom: 7px solid #F15A24;
}
.p-results {
  background-color: #fff
}
.p-results__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  font-weight: 700;
  text-align: center;
  line-height: 1
}

.p-results__copy i {
  color: #DBCA2A
}
.content_text_large {
  font-weight: 700;
  line-height: 2;
  font-size: 30px;
  font-size: 2.0rem;
  text-align: center;
}

.content_text {
  line-height: 2;
  font-size: 24px;
  font-size: 1.5rem;
  text-align: center;
}

.p-notes__item {
  position: relative;
  padding-left: 1em
}

.p-notes__item::before {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  content: '※'
}
.point_rate{
  margin-top: 20px;
  margin-bottom: 20px;
}
.point_rate th,td {
    border: solid 1px #333;
    padding: 10px; 
}
.point_rate th {
  background-color: #c0c0c0;
}
.point_rate td {
  background-color: #fff;
}

@media screen and (min-width:768px) {
  html {
    zoom: 73%
  }
  body {
    font-size: 16px;
    font-size: 1rem
  }
  .p-cta__button {
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .p-cta__button:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
  }
  .c-container {
    padding-right: 40px;
    padding-left: 40px
  }
  .c-button {
    border-width: 1px;
    font-size: 16px;
    font-size: 1rem
  }
  .c-button:hover {
    opacity: 1
  }
  .c-button--apply {
    max-width: 1012px;
    height: 150px;
    border-radius: 75px;
    border-width: 4px;
    font-size: 60px;
    font-size: 3.75rem
  }
  .c-button--simulation1 {
    max-width: 1012px;
    height: 100px;
    border-radius: 75px;
    border-width: 4px;
    font-size: 40px;
    font-size: 2.75rem
  }
  .c-button--simulation2 {
    max-width: 1400px;
    height: 100px;
    border-radius: 75px;
    border-width: 4px;
    font-size: 40px;
    font-size: 2.75rem
  }
  .c-button--unitprice {
    max-width: 1200px;
    height: 100px;
    border-radius: 75px;
    border-width: 4px;
    font-size: 30px;
    font-size: 2.0rem
  }
  .lead-text {
    margin-bottom: 25px;
    font-size: 34px;
    font-size: 2.125rem
  }
  .caution-text {
    font-size: 34px;
    font-size: 2.125rem
  }
  .p-merit__copy {
    font-size: 60px;
    font-size: 3.75rem;
    padding-bottom: 8px;
    line-height: 1.5;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0, #fff));
    background: linear-gradient(transparent 50%, #fff 0)
  }
  .p-notes {
    font-size: 20px;
    font-size: 1.25rem
  }
  .p-notes__item {
    margin-bottom: .75em;
    line-height: 1.75
  }
  
  .p-results__copy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    font-weight: 700;
    text-align: center;
    line-height: 1
  }
  
  .p-results__copy i {
    color: #DBCA2A
  }
  
  .p-results__text strong, .p-signup__text strong {
    color: #F15A24
  }
  
  .p-results__description {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }
  
  .p-results__text {
    text-align: center;
  }

  .p-results {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 10px solid #3C9A46;
    border-radius: 28px;
    padding: 90px 0;
    margin-top: 105px
  }
  .p-results__visual {
    width: 560px;
    margin: 0 70px
  }
  .p-results__content {
    padding: 50px 0;
    max-width: 570px;
    margin: 0 30px;
    width: 100%;
    text-align: center
  }
  .p-results__copy {
    margin-bottom: 70px;
    font-size: 60px;
    font-size: 3.75rem
  }
  .p-results__copy i {
    margin: 12px 0 8px;
    font-size: 52px;
    font-size: 3.25rem
  }
  .p-service__list, .p-signup {
    margin-left: auto;
    margin-right: auto;
    max-width: 1364px
  }
  .p-results__text {
    line-height: 2;
    font-size: 24px;
    font-size: 1.5rem
  }
  .p-merit__body{
    margin-right: auto;
    margin-left: auto
  }
  .p-merit__body {
    width: 100%;
    max-width: 1364px
  }
  .p-contact__title {
    margin-bottom: 20px;
    font-size: 30px;
    font-size: 1.875rem
  }
  .p-contact__tel {
    font-size: 60px;
    font-size: 3.75rem
  }
  .p-contact__text {
    margin-top: 25px;
    font-size: 24px;
    font-size: 1.5rem
  }
  .p-footer {
    padding-top: 80px;
    padding-bottom: 60px
  }
  .p-merit__block {
    margin-top: 120px
  }
  .p-merit__block--01 .p-merit__heading {
    margin-bottom: 30px
  }
  .sp {
    display: none!important
  }
}

@media screen and (min-width:1024px) {
  .c-button--apply {
    font-size: 70px;
    font-size: 4.375rem
  }
  .c-button--simulation1 {
    font-size: 50px;
    font-size: 3.375rem
  }
  .c-button--simulation2 {
    font-size: 50px;
    font-size: 3.375rem
  }
  .c-button--unitprice {
    font-size: 40px;
    font-size: 3.0rem
  }
  .lead-text {
    font-size: 40px;
    font-size: 2.5rem
  }
}

@media screen and (max-width:767px) {
  body {
    font-size: 14px;
    font-size: 3.59vw
  }
  .c-button {
    border-width: .51282vw;
    font-size: 32px;
    font-size: 8.21vw
  }
  .c-button-green {
    border: .51282vw solid #3C9A46
  }
  .c-button-orange {
    border: .51282vw solid #F15A24
  }
  .c-button-sky {
    border: .51282vw solid #38C3F4
  }
  .c-button--apply {
    width: 94.35897vw;
    height: 14.10256vw;
    font-size: 30px;
    font-size: 7.69vw;
    border-radius: 19.48718vw
  }
  .c-button--simulation1 {
    width: 94.35897vw;
    height: 14.10256vw;
    font-size: 30px;
    font-size: 5.69vw;
    border-radius: 19.48718vw
  }
  .c-button--simulation2 {
    width: 94.35897vw;
    height: 14.10256vw;
    font-size: 30px;
    font-size: 5.69vw;
    border-radius: 19.48718vw
  }
  .c-button--unitprice {
    width: 94.35897vw;
    height: 14.10256vw;
    font-size: 25px;
    font-size: 4.69vw;
    border-radius: 19.48718vw
  }
  .lead-text {
    font-size: 14px;
    font-size: 5.00vw;
    margin-bottom: 2.56vw
  }
  .sec01 img {
    width: 25%;
  }
  .sec02 {
    margin-bottom: 30px;
    margin-top: 15px;
  }
  .sec03 {
    padding-bottom: 20px;
  }
  .sec03_button_area{
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .sec03_text {
    padding-top: 30px;
  }
  .sec03 img {
    width: 15%;
  }
  .sec05_inner {
    padding-bottom: 0px;
  }
  .sec05_text{
    margin-top: 30px;
  }
  .sec05_button_area{
    margin-top:30px;
    margin-bottom:30px;
  }
  .sec07_inner {
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 94.35897vw;
    margin-top: 7.69vw
  }
  .sec07_header_title{
    font-size: 2.0rem;
  }
  .sec07_content {
    display:block;
  }
  .sec07_content_right img{
    width: 30px;
  }
  .sec09 {
    padding-right: 15px;
    padding-left: 20px
  }
  .seccp {
    margin-top:-10px;
  }
  .content_text_large {
    font-size: 20px;
    font-size: 4.00vw;
    line-height: 1.7
  }
  .content_text {
    font-size: 14px;
    font-size: 3.59vw;
    line-height: 1.7
  }
  .p-merit__copy {
    font-size: 24px;
    font-size: 6.15vw;
    line-height: 1.5;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0, #fff));
    background: linear-gradient(transparent 50%, #fff 0)
  }
  .p-notes {
    margin-right: auto;
    margin-left: auto
  }
  .p-notes {
    font-size: 14px;
    font-size: 3.59vw;
    width: 94.35897vw
  }
  .p-notes__item {
    line-height: 1.7;
    margin-bottom: 2em
  }
  .p-results, .p-results__visual {
    margin-left: auto;
    margin-right: auto
  }
  .p-results {
    border: 1.5641vw solid #3C9A46
  }
  .p-results {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 7.17949vw;
    padding: 10.26vw 3.33vw 5.13vw;
    width: 94.35897vw;
    margin-top: 7.69vw
  }
  .p-results__visual {
    width: 82.5641vw;
    margin-bottom: 8.97vw
  }
  .p-results__copy {
    font-size: 24px;
    font-size: 6.15vw;
    margin-bottom: 8.97vw
  }
  .p-results__copy i {
    margin-top: 2.31vw;
    margin-bottom: 1.03vw;
    font-size: 24px;
    font-size: 6.15vw
  }
  .p-results__text {
    font-size: 14px;
    font-size: 3.59vw;
    line-height: 1.7
  }
  .p-contact__text {
    margin-top: 5.13vw
  }
  .p-contact__title {
    margin-bottom: 5.13vw
  }
  .p-contact__tel {
    font-size: 30px;
    font-size: 7.69vw
  }
  .p-footer {
    padding-top: 11.54vw;
    padding-bottom: 18.21vw
  }
  .p-merit__block {
    margin-top: 15.38vw
  }
  .pc {
    display: none!important
  }
}