@charset "utf-8";

/*-----------------------------------------------------
見出し
-------------------------------------------------------*/
h1,h2,h3,h4{
  font-weight: bold;
  line-height: 1.5;
}
h4,p{
  font-weight: normal;
}
@media only screen and (max-width: 991px) {
  h3{
    font-size: 1em;
  }
  p{
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  h3{
    font-size: 1.3em;
  }
  h4{
    font-size: 16px;
  }

}

.text_ttl{
  font-size: 1.4em;
  color: #009131;
  background: linear-gradient(transparent 70%, #ffc107 50%);
}
@media only screen and (max-width: 1199px) {
  .text_ttl{
    font-size: 1.2em;
  }
}
@media only screen and (max-width: 991px) {
  .text_ttl{
    font-size: 1.1em;
  }
}
@media only screen and (max-width: 767px) {
  .text_ttl{
    font-size: 1.25em;
  }
}
.text_marker{
   font-weight: bold;
  background: linear-gradient(transparent 75%, #ffc107 50%);
}
.text_or{
  color: #de00ff;
}
.text_green{
  color: #0ac45a;
}
.text_red{
  color: #ff0000;
}

.text_yellow{
  color: #ffcc00;
  font-size: 130%;
}
.ttl_green{
  color: #009131;
  font-size: 42px;
  padding-bottom: 1rem;
}
@media only screen and (max-width: 1199px) {
  .ttl_green{
    font-size: 32px;
    padding-bottom: 0;
}
  }
  @media only screen and (max-width: 767px) {
  .ttl_green{
    font-size: 30px;
    padding-bottom: 0;
}
  }
@media only screen and (max-width: 767px) {
  .ttl_green{
    font-size: 24px;
    padding-bottom: 0;
}
  }
/*-----------------------------------------------------
fv
-------------------------------------------------------*/
.header{
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .h_logo{
    width: 10%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .header_logo p{
    margin-bottom: 0;
  }
}

.fv{
  background: url(../images/fv_bg.png);
  background-position: 57% 50%;
  background-size: cover;
}
.fv h1 ,
.fv p{
  padding-left: 0rem;
}
@media only screen and (max-width: 1199px) {
  .fv h1 ,
  .fv p{
    padding-left: 1rem;
  }
}
@media only screen and (min-width: 1199px) {
  .fv_pc{
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .fv{
    display: none;
  }
}
.fv-sp{
  position: relative;
}
.fv_btn{
  position: absolute;
  top: 65vw;
  width: 80%;
  padding-left: 3vw
}
@media only screen and (max-width: 991px) {
.fv_container{
  margin-left: 10px;
  width: 80%;
  }
}
/*-----------------------------------------------------
悩み
-------------------------------------------------------*/
.nayami_img{
  margin-bottom: 0;
}
.kaiketsu{
  background-color: #fff1bb;
}
/*-----------------------------------------------------
benefit1
-------------------------------------------------------*/
.benefit1{
  background-color: #e2f4e4;
}
/*-----------------------------------------------------
benefit2
-------------------------------------------------------*/
.flow-triangle{
  position: relative;
  padding-top: 13rem !important;
}
.flow-triangle::after{
  content: '';
  position: absolute;
  top: 4vw;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 40vw;
  height: 8vw;
  background: #e2f4e4;
}
@media only screen and (max-width: 991px) {
  .flow-triangle{
    padding-top: 6rem !important;
  }
}

/*-----------------------------------------------------
benefit3
-------------------------------------------------------*/
.benefit3{
  background-color: #fff1bb;
}
/*-----------------------------------------------------
benefit4
-------------------------------------------------------*/
.benefit4_contents{
  position: relative;
  border: 2.5px solid #0ac45a;
  width: 80%;
  margin: 8rem auto 3rem auto;
  padding: 30px 30px 50px 30px;
}
@media only screen and (max-width: 1199px) {
  .benefit4_contents{
  border: 2.5px solid #0ac45a;
  width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .benefit4_contents{
  padding: 10px 10px 50px 10px;
  }
}
.benefit4_contents_img{
  position: absolute;
  top: -6rem;
  left: 2rem;
}
.benefit4_text{
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.9rem;
}
@media only screen and (max-width: 767px) {
.benefit4_cta{
  flex-direction: column-reverse;
}
}

/*-----------------------------------------------------
cta
-------------------------------------------------------*/
.cta_hover{
  display: inline-block;
  cursor: pointer;
  transition: all 0.3s ease 0s;
}
.cta_hover:hover {
  opacity: 0.6;
}

@media only screen and (max-width: 991px) {
  .cta{
    width: 70%;
    margin: auto;
  }
}
@media only screen and (max-width: 767px) {
  .cta{
    width: 100%;
    margin: auto;
  }
}
/*-----------------------------------------------------
成功事例
-------------------------------------------------------*/
.ex{
  background-color: #fff1bb;
}
.bullet-text{
  font-size: 0.6em;
}
.service_intro{
  background-color: #e2f4e4;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .service_intro_ttl{
    transform: scale(1.6);
  }
}

.ex_text {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 3rem;
}
.ex_text li {
    font-size: 1.5rem;
    white-space: nowrap;
}

@media only screen and (max-width: 1199px) {
  .ex_text {
    gap: 2rem;
  }
  .ex_text li {
      font-size: 1.2rem;
  }
}
@media only screen and (max-width: 991px) {
  .ex_text {
    gap: 0.5rem;
  }
  .ex_text li {
      font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .ex_text {
    flex-direction: column;
    gap: 0;
  }
  .ex_text li {
      font-size: 1rem;
      padding-top: 1rem;
  }
}
.service_intro_text{
  font-size: 1.3em;
}

@media only screen and (max-width: 1199px) {
.service_intro_text{
  font-size: 1.2em;
}
}
@media only screen and (max-width: 767px) {
.service_intro_text{
  font-size: 0.8em;
}
}
/*-----------------------------------------------------
benefit2
-------------------------------------------------------*/
.flow-triangle_white{
  position: relative;
  padding-top: 13rem !important;
}
.flow-triangle_white::after{
  content: '';
  position: absolute;
  top: 4vw;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 40vw;
  height: 8vw;
  background: #fff;
}
@media only screen and (max-width: 991px) {
  .flow-triangle_white{
    padding-top: 6rem !important;
  }
}

/*-----------------------------------------------------
料金
-------------------------------------------------------*/
.price{
  background-color: #e2f4e4;
}
/*-----------------------------------------------------
form
-------------------------------------------------------*/
.from_text{
  font-size: 24px;
}
@media only screen and (max-width: 767px) {
.from_text{
  font-size: 16px;
  }
}
.text-bg-danger{
  background-color: #f4d710 !important;
}
.btn-primary{
  background-color: #0ac45a !important;
  border: #0ac45a;
}
.btn-lg{
   padding-left: 5rem;
   padding-right: 5rem;
   border-radius: 15px;
}
.form-check-input{
  border: var(--bs-border-width) solid #444;
}

/*-----------------------------------------------------
Footer
-------------------------------------------------------*/

Footer{
  background-color: #0ac45a;
  padding-bottom: 7.5rem;
}
@media only screen and (max-width: 767px){
  Footer{
  padding-top: 1rem;
  padding-bottom: 8rem;
}
}
@media only screen and (max-width: 575px){
  Footer{
  padding-top: 1rem;
  padding-bottom: 5rem;
}
}

.op-window{
  text-decoration: none;
}
@media only screen and (max-width: 767px){
  .p-privacy__ttl{
    font-size: 1.2rem;
  }
}
.fix-navi{
  position: fixed;
  z-index: 9999;
  bottom: 0;
  width: 100%;
  text-align: center;
  background-color: #ed66027a;
  padding: 1em 0 1em;
  display: none;
}
.fix-navi p{
  margin-bottom: 0;
}
.navi_cta{
  width: 95%;
}
.navi{
  display: flex;
  align-items: normal;
}
.scroll-up{
  bottom: 10rem;
}
@media only screen and (max-width: 767px){
  .scroll-up{
    bottom: 15rem;
}}
@media only screen and (max-width: 575px){
  .scroll-up{
    bottom: 10rem;
}}
.scroll-up a{
  background-color: #000;
}
.fa-chevron-up:before{
  color: #fff;
}

/*-----------------------------------------------------
iframeリンク無効化
-------------------------------------------------------*/

.snapwidget-widget{
  pointer-events:none;
}