/*# sourceMappingURL=add.css.map */

@charset "UTF-8";






.text-shadow_black {
  text-shadow: 
    0 2px 6px rgba(0, 0, 0, 0.6),
    0 0 12px rgba(0, 0, 0, 0.4);
}

.red{
  color: #901521 !important;
}
.green{
  color: #007E43 !important;
}
.background-red{
  background-color: #901521 !important;
}
.background-yellow{
  background-color: #FADF38;
}
.background-cream{
  background-color: #FCF9F0;
}
.background-green{
  background-color: #007E43;
}
.background-light-gray{
  background-color: #e9e9e9 !important;
}

.faq-accordion-btn:not(.collapsed)::after {
    content: "−";
    color: #007E43;
}
.faq-accordion-btn::after {
    content: "+";
    font-size: 1.8rem;
    font-weight: bold;
    color: #007E43;
    margin-left: auto;
    background-image: none !important;
    transform: none !important;
    transition: color 0.3s ease;
    position: relative;
    top: -7px;
}

/* ボタンデザイン */
.btn-more-toggle {
  background-color: #fff;
  color: #007E43;
  border: 2px solid #007E43;
  border-radius: 5px;
}

/* ＋アイコン（デフォルト） */
.btn-more-toggle .icon::before {
  content: "+";
  font-size: 20px;
  font-weight: bold;
  color: #007E43;
}

/* 開いたとき（－に変わる） */
.btn-more-toggle:not(.collapsed) .icon::before {
  content: "−";
}

/* ホバー */
.btn-more-toggle:hover {
  background-color: #007E43;
  color: #fff;
}
.btn-more-toggle {
  background-color: #fff;
  color: #007E43;
  border: 1px solid #007E43 !important;
  border-radius: 5px;
}

.btn-more-toggle:hover .icon::before {
  color: #fff;
}

.btn-green-outline {
  background-color: #fff;
  color: #28a745; /* 好きな緑に調整OK */
  border: 2px solid #28a745;
  border-radius: 5px;
}

.btn-green-outline:hover {
  background-color: #28a745;
  color: #fff;
}

.border-green-3px {
  border: 3px solid #28a745;
}

.green {
  color: #28a745;
}

.btn-hover-green:hover {
  background-color: #28a745;
  color: #fff;
}


#section00 .menu-item {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 14px 0px;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
}



#section01 {
    background: #ECE7DE;
}

#section01 .company-name{
  font-size: 2.5rem;
  color: #444444;
}


#section02 {
    background: #FCF9F0;
}
.section02-box {
    background: #FCF9F0;
    padding: 0px;
    border-radius: 0px;
    text-align: center;
}
#section03 {
    background: #E5EEE7;
}
.section03-box {
    background: #fff;
    padding: 20px;
}
@media (min-width:992px){
  .section03-box {
      padding: 40px;
  }
}

.section02-red-label {
  position: relative;
  color: #901521;
}

.section02-red-label::before {
  content: "●";
  position: absolute;
  top: -0.6em; /* ←ここで距離を細かく調整 */
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.3em; /* ←点の大きさ */
  color: #901521;
}

.section03-title {
    font-weight: 500;
}

#section04 .company-name {
    font-size: 3.8rem;
    color: #000;
}

@media screen and (max-width: 991px) {
  #section04 .company-name {
    font-size: 2.5rem;
  }
}

.section04-subtitle {
    font-size: 28px;
    font-weight: 500;
    margin-bottom: 5px;
}

.section04-subtitle {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 5px;
}
@media (min-width:992px){
  .section04-subtitle {
      font-size: 28px;
  }
  .section01-title {
    font-size: 40px;
  }
}

.section04 {
    background: #fff;
    padding: 0px 0;
}
.section04-title {
    margin-bottom: 0px;
}

.section04-box {
    background: #fff;
    padding: 0px;
    border-radius: 0px;
}

.section04-box {
  background: linear-gradient(
    180deg,
    #ffffff 0%,
    #ffffff 15%,
    #e6efe9 15%,
    #e6efe9 60%,
    #ffffff 60%,
    #ffffff 100%
  );
  padding: 40px 0;
}

@media screen and (max-width: 991px) {
  .section04-box {
    background: linear-gradient(
      180deg,
      #ffffff 0%,
      #ffffff 8%,
      #e6efe9 8%,
      #e6efe9 60%,
      #ffffff 60%,
      #ffffff 100%
    );
  
  }
}

.point-card {
  background: #E5EEE7;
  padding: 30px 15px 25px; 
  border-radius: 6px;
  height: 100%;
  position: relative; 
}

.point-label {
  position: absolute;
  top: -20px;   /* 上からの位置 */
  left: 15px;  /* 左からの位置 */
  margin: 0;
  font-weight: 200;
}

.link-btn {
  display: flex;
  justify-content: center; /* 横中央 */
  align-items: center;     /* 縦中央 */
  text-align: center;      /* テキスト中央 */
  padding: 15px 30px;
}
.link-btn {
  position: relative;
}

.link-arrow {
  position: absolute;
  right: 15px;
}
.section05 {
    background: #fff;
}
.section06 {
    background: #fff;
}
.section09 {
    background: #fff;
}


@media (max-width: 768px) {
    .section09-contact-btn {
        font-size: 16px;
        padding: 16px 12px;
    }
}

.border-green{
  border: 1px solid #007E43;
}

.section08 {
    background: #fff;
}


/* ===== 赤ボタン ===== */
.link-btn-red {
  background-color: #9e0f1a;
  color: #fff;
  transition: background-color 0.3s ease;
}

.link-btn-red:hover {
  background-color: #058d00; /* 少し暗く */
}

/* ===== 黄ボタン ===== */
.link-btn-yellow {
  background-color: #f0d437;
  color: #333;
  transition: background-color 0.3s ease;
}

.link-btn-yellow:hover {
  background-color: #058d00;
  color: #fff;
}


/* ===== 赤ボタン（Bootstrap対応） ===== */
.background-red:hover {
  background-color: #058d00 !important;
  border-color: #058d00 !important;
  color: #fff !important;
}

/* ===== 黄ボタン（Bootstrap対応） ===== */
.background-yellow:hover {
  background-color: #058d00 !important;
  border-color: #058d00 !important;
  color: #fff !important;
}

/* section09 ボタン */
.section09-contact-btn {
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* ホバー時 */
.section09-contact-btn:hover {
  background-color: #058d00;
  color: #fff;
}

/* 矢印も色合わせる */
.section09-contact-btn:hover .link-arrow {
  color: #fff;
}


@media screen and (max-width: 576px) {
  .bg-fv {
    background-position: bottom center;
    height: 450px;
    background-color: #E5EEE7;
    background-image: url(../../assets/img/t-fv_sp.png);
    background-size: 100% auto;
  }
  
  @supports (background-image: url(../../assets/img/t-fv_sp.webp)) {
    .bg-fv {
      background-image: url(../../assets/img/t-fv_sp.webp);
    }
  }
}



@media screen and (min-width: 768px) {
    .bg-fv {
        background-position: bottom left;
        height: 400px;
    }
}
@media screen and (min-width: 992px) {
    .bg-fv {
        background-position: bottom center;
        height: 500px;
    }
}
.company-source {
    margin-top: 0px;
    font-size: 13px;
    color: #777;
}

.btn-hamburger {
    z-index: 1100;
    background-color: #01ad5d;
}