@charset "utf-8";

/*-----------------------------------------------------
大見出し
-------------------------------------------------------*/
h2{
  font-weight: bold;
  color: #424242;
  font-size: 48px;
}
/* 1400px以下 */
@media only screen and (max-width: 1399px) {
  h2{
  font-size: 36px;
}
}
/* スマホ */
@media only screen and (max-width: 767px) {
  h2{
  font-size: 26px;
}
}
/* 中見出し
------------------------------------------------*/
h3{
  font-weight: bold;
  color: #424242;
  font-size: 36px;
  padding-bottom: 10px;
}
/* タブレット以下 */
@media only screen and (max-width: 1440px) {
  h3{
  font-size: 32px;
}
}
/* タブレット以下 */
@media only screen and (max-width: 1227px) {
  h3{
  font-size: 28px;
}
}
/* タブレット以下 */
@media only screen and (max-width: 991px) {
  h3{
  font-size: 24px;
}
}
/* スマホ */
@media only screen and (max-width: 767px) {
  h3{
  font-size: 20px;
}
}
/* 小見出し/コメント */
p{
  color: #424242; 
  font-size: 18px;
  line-height: 2;
}
/* スマホ */
@media only screen and (max-width: 1199px) {
  p{
  font-size: 16px;
  line-height: 1.5;
  }
}
/* タブレット以下 */
@media only screen and (max-width: 991px) {
  p{
  font-size: 14px;
  line-height: 1.5;
  }
}
/* スマホ */
@media only screen and (max-width: 767px) {
  p{
  font-size: 12px;
  line-height: 1.5;
  }
}
.text_02{
  font-size: 24px;
  line-height: 2;
  font-weight: normal;
}
 /* 1200px以下 */
@media only screen and (max-width: 1199px) {
  .text_02{
  font-size: 18px;
  line-height: 2;
  }
}
 /* 991px以下 */
@media only screen and (max-width: 991px) {
  .text_02{
  font-size: 16px;
  line-height: 1.5;
  }
}
  /* 767px以下 */
@media only screen and (max-width: 767px) {
  .text_02{
  font-size: 14px;
  }
}
.ttl_blue{
  color: #61cdc9;
} 
.ttl_o{
  font-size: 42px;
  } 
/* スマホ */
@media only screen and (max-width: 767px) {
  .ttl_o{
  font-size: 30px;
  }
}

/* 1400px以下 */
@media only screen and (max-width: 1399px) {
}

/* 1200px以下 */
@media only screen and (max-width: 1199px) {
}

/* タブレット以下 */
@media only screen and (max-width: 991px) {
}

/* スマホ */
@media only screen and (max-width: 767px) {
}

.header{
  border-bottom: 2px solid #75d6d8;
  height: auto;
  background: #fff;
  position: static;
  box-shadow: 0;
}
/*-----------------------------------------------------
ファーストビュー
-------------------------------------------------------*/

.fv{
  background-image: url(../images/fvbg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
/*-----------------------------------------------------
悩み
-------------------------------------------------------*/
.nayami{
  background: linear-gradient(to bottom, transparent 30%, #effafa 30%);
}

/* スマホ */
@media only screen and (max-width: 575px) {
  .hoho_ttl {
    text-align: center;
  } 
}

/*-----------------------------------------------------
ChatGENEの特長
-------------------------------------------------------*/
.features_ttl{
  margin: 0 0 0;
  }
/* スマホ */
@media only screen and (max-width: 1199px) {
  .features_ttl{
  width:80%;
  margin: auto;
  }
}

.Features {
  background-image: url(../images/Features-bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
} 
.text_sapo{
  font-weight: bold;
  }
/*-----------------------------------------------------
導入事例
-------------------------------------------------------*/
.case{
  background-image: url(../images/case-bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.case_ttl{
  display: inline-block;
  position: relative;
  font-weight: bold;
}
.case_ttl::after {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -15px;
  margin: auto;
  content: "";
  max-width: 60px;
  height: 5px;
  background-color: #fba000;
  border-radius: 10px;
}

/* dnaFlow */

.dnaFlow {
  padding: 70px 0 100px 0;
}
@media (max-width: 767px) {
  .dnaFlow { 
    padding: 20px 0 10px 0; 
  }
}

.dnaFlow__box {
  background-color: #FFF;
  margin: 0 70px;
  position: relative;
  padding: 70px 10px;
}

@media (max-width: 991px) {
  .dnaFlow__box { margin: 0 40px; }
}

@media (max-width: 767px) {
  .dnaFlow__box { 
    margin: 0 20px; padding: 50px 30px 70px 30px; 
  }
}

@media (max-width: 575px) {
  .dnaFlow__box { 
    padding: 40px 20px 65px 20px; 
  }
}

.dnaFlow__iconStep {
  position: absolute;
  top: -60px;
}
@media (max-width: 991px) {
  .dnaFlow__iconStep { 
    width: 55px; top: -60px;
  }
}

@media (max-width: 767px) {
  .dnaFlow__iconStep { 
    width: 50px; top: -55px; 
  }
}

@media (max-width: 575px) {
  .dnaFlow__iconStep { 
   width: 40px; top: -45px;
   }
}

.dnaFlow__list {
  margin-top: 50px;
}

.dnaFlow__list-item {
  border-top: 3px solid #70cece;
  position: relative;
}

.dnaFlow__list-item::before {
  content: '';
  width: 30px; height: 30px;
  border-radius: 50%;
  background-color: #70cece;
  position: absolute;
  top: -15px;
  z-index: 100;
}

.dnaFlow__list-item::after {
  content: '';
  width: 1px; height: calc(100% + 160px);
  border-radius: 50%;
  background-color: #70cece;
  position: absolute;
  top: -80px;
  z-index: 100;
}

@media (max-width: 576px) {
  .dnaFlow__list-item::after { 
    height: calc(95% + 80px); top: -40px; 
  }
}

.dnaFlow__list-item:nth-child(odd)::before {
  left: 55px;
}

@media (max-width: 991px) {
  .dnaFlow__list-item:nth-child(odd)::before { left: 25px; }
}

@media (max-width: 767px) {
  .dnaFlow__list-item:nth-child(odd)::before { left: 5px; }
}

.dnaFlow__list-item:nth-child(odd)::after {
  left: 70px;
}

@media (max-width: 991px) {
  .dnaFlow__list-item:nth-child(odd)::after { left: 40px; }
}

@media (max-width: 767px) {
  .dnaFlow__list-item:nth-child(odd)::after { left: 20px; }
}

.dnaFlow__list-item:nth-child(odd) .dnaFlow__iconStep {
  left: 40px;

}


.dnaFlow__list-item:nth-child(even)::before {
  right: 55px;
}

@media (max-width: 991px) {
  .dnaFlow__list-item:nth-child(even)::before { 
    right: 25px; 
  }
}

@media (max-width: 767px) {
  .dnaFlow__list-item:nth-child(even)::before { 
    right: 5px; 
  }
}

.dnaFlow__list-item:nth-child(even)::after {
  right: 70px;
}

@media (max-width: 991px) {
  .dnaFlow__list-item:nth-child(even)::after { 
    right: 40px; 
  }
}

@media (max-width: 767px) {
  .dnaFlow__list-item:nth-child(even)::after { 
    right: 20px; 
  }
}

.dnaFlow__list-item:nth-child(even) .dnaFlow__iconStep {
  right: 40px;
}

@media (max-width: 767px) {
  .dnaFlow__box-ttl {
    margin-top: 15px;
  } 
}

.dnaFlow__box-text {
  font-size: 16px;
  line-height: 1.5;
}

@media (max-width: 991px) {
  .dnaFlow__box-text { 
    font-size: 14px; 
  }
}


.plan{
  background-image: url(../images/plan-bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}


.btn-lg{
  padding-right: 5rem;
  padding-left: 5rem;
 }
.btn-primary{
  background-color: #70cece;
  border-color: #70cece;
}
.btn.disabled, .btn:disabled {
  background-color: #70cece;
  border-color: #70cece;
}
.btn:hover {
  background-color: #70cece; /* 具体的な値に変換 */
}

.p-privacy__ttl{
  font-size: 1.3rem;
}
.fa-regular{
  font-family: "Font Awesome 6 Free";
  
  }
.fa-window-restore:before{
  content: "\f2d2";
  }

/* 追従 */
.fix-navi{
  position: fixed;
  z-index: 9999;
  bottom: 0;
  width: 100%;
  text-align: center;
  background-color: #70cece4f;
  padding: 8px 0;
}
.scroll-up{
    margin-bottom: 180px;
  }

.scroll-up a{
  opacity: 0.8;
  background-color: #70cece;
  color: #fff;
 }

/* footer*/
#Footer{
    padding-bottom: 160px;
  }
/* スマホ */
@media only screen and (max-width: 767px) {
  #Footer{
    padding-bottom: 160px;
  }
}

/* 575px以下 */
@media only screen and (max-width: 575px) {
  #Footer{
    padding-bottom: 195px;
  }
}
/* 425px以下 */
@media only screen and (max-width: 425px) {
  #Footer{
    padding-bottom: 165px;
  }
}

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

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