/* SP版へのスタイル指定 */
body {
  font-size: 14px;
  line-height: 1.6;
}
/* 幅100％設定 */
section {
  width: 100%
}
/* 共通メイン画像設定 */
.br-pc {
  display: none;
}

/* padding */
.section-inner,.worries-inner-all,.top-reason,.top-price,.top-faq {
  padding: 64px 0;
}

  /* アクセス */
.map_all {
	width: 100%;
	height: 250px;
}
/* SP追従ボタン */
.button-container {
    display: flex;
    width: 100%;
  }
.footer-bar {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center; /* 中央揃え */
    z-index: 9999;
}
.follow-button {
    width: 50%;  /* 横幅 */
    height: 60px;  /* 縦幅 */
    font-size: 16px;
    border: none;
    cursor: pointer;
    color: white;
    text-align: center;
    transition: 0.3s;
    display: flex;
    justify-content: center; /* 水平方向に中央揃え */
    align-items: center;     /* 垂直方向に中央揃え */
}
.cta_left {
    background: #F15E2C;
    width: 50%;
    height: 64px;

}

.cta_right {
    width: 50%;
    height: 64px;
    background: #45B035;
}
/* ヘッダーへのスタイル */
.l-header {
  padding: 0;
}
.header-btn {
  text-align: center;
	margin-left: 0!important;
  margin-top: 20px;
  }
header {
  height: 60px;
}
.sp_header {
  padding: 0;
}
main {
padding-top: 60px;
}
/* ハンバーガーメニューの位置 */
.hamburger span {
  top: 7px;
}

.md-flex,.footer__navi li {
  display: block;
}
.footer__navi li {
  margin-bottom: 12px;
}
/* メインビジュアル */
.catch_txt_pc {
  max-width: 95%;
}
.main-visual {
	width: 100%;
  background: url(../images/catch_hero_sp.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 70vh;
  padding-bottom: 24px;
  display: flex;
  justify-content: center; /* 横中央 */
  align-items: center;
}

/* 共通 */
.heading-01 {
  font-size: 28px;
  margin-bottom: 0px;
}
.heading-01-center {
  font-size: 28px;
  padding-bottom: 32px;
}
.heading-01-en {
  font-size: 14px;
}

.flow05-text {
  text-align: left;
}
/* イントロ */
.intro-inner__sub {
  font-size: clamp(10px, 4vw, 14px);
  white-space: nowrap;
  padding: 4px 8px;
}
.intro-inner__h1 {
  font-size: 24px;
  margin-top: 16px;
  margin-bottom: 24px;
}
.intro-inner p {
  text-align: left;
}
/* お悩み */
.worries-inner__h1,.top-solution__h1 {
  font-size: clamp(20px, 5vw, 24px);
}
.top-solution {
  margin-bottom: 64px;
}
.worries-inner-box img {
  width: 80%;
}
.assignment_heading {
  font-size: 14px;
  text-align: left;
}
/* 選ばれる理由 */
.top-reason-inner__display-flex {
  display: block;
}
.reason-inner_box {
  max-width: 100%;
  margin-bottom: 20px;
  padding: 0px 20px 30px;
}
.reason-inner_box p {
  text-align: left;
}

/* サービス */
.service-inner__display-flex {
  display: block;
}
.service-inner__box {
  width: 100%;
  margin-bottom: 30px;
}
.service-inner__p {
  margin-bottom: 16px;
}
.service-inner__h2 {
  margin: 16px 0;
}
/* CTA */
.cta-box_heading {
  font-size: 18px;
}
.cta-area {
  display: block;  
}
.cta-box {
  width: 100%;
}
.cta-box-left {
  border-right:none;
  border-bottom: #fff solid 2px;
  padding-bottom: 32px;
  padding-right: 0px !important;
}
.cta-box-right {
  padding-left: 0;
}
.cta-inner h2 {
  font-size: clamp(20px, 5vw, 24px);
}
.top-cta-inner {
  display: block;
}
.cta-button {
  margin-bottom: 20px;

}
.br-sp {
	display: block;
}

/* 料金 */
.table_design13 tbody th {
  padding: 0;
}
.payment-method p {
  text-align: left;
}
.payment-method-note {
  font-size: 12px;
  line-height: 1.4;
}
/* フロー */
.flow05 > li dl dt {
  font-size: 20px;
}
.flow05 dl {
  padding-left: 16px;
}
.flow05 > li .icon05 {
  width: 100px;
}
.flow05 > li { 
  padding-left: 20%;
}
.flow05 > li .icon05 {
  width: 20%;
  height: auto;
}
.flow05 > li:not(:last-child)::before {
  left: 10%;
}

/* FAQ */
.top-faq-inner {
  padding: 0 20px;
}
.header_logo {
    width: 32vw;
}
.qa-7 {
  margin-bottom: 10px;
}
/* フッター */
.flex {
  display: block;
}
.footer__navi {
  margin-top: 30px;
}


/* SNSバナー追加 */
.sec_sns {
  flex-direction: column;
  gap: 20px;
}
.sec_sns > div {
    max-width: 100%;  /* 横幅いっぱい */
  }

  .top-sns {
	margin-bottom: 64px;
}