/* 全体のフォント設定 */
.local-wrapper {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
  overflow-x: hidden;
}



/* セクション1：ヘッダー */
.local-header {
  padding: 10px 20px;
  background-color: #fff;
}

.local-header__inner {
  max-width: 750px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.local-header__icon {
  width: 125px;
}

.local-header__icon img {
  width: 100%;
  height: auto;
}

.local-header__content {
  text-align: center;
}

.local-header__badge {
  display: inline-block;
  background-color: #ff9f38;
  color: #fff;
  font-size: 46px;
  letter-spacing: 0.25em;
  font-weight: bold;
  padding: 0px 28px;
  border-radius: 4px;
}

.local-header__sub {
  font-size: 24px;
  color: #333;
  margin-top: 10px;
  margin-bottom: 10px;
}

.local-header__title-text {
  font-size: 23px;
  font-weight: normal;
  color: #333;
  margin-left: 2px;
  white-space: nowrap;
}

.local-header__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  white-space: nowrap;
  flex-wrap: nowrap;
}

.local-header__circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background-color: #263971;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  border-radius: 50%;
}

/* SP対応 */
@media (max-width: 768px) {
  .local-header__inner {
    flex-wrap: wrap;
    gap: 10px;
    position: relative;
  }

  .local-header__content {
    order: -1;
    width: 100%;
  }

  .local-header__badge {
    font-size: 34px;
    padding: 0 16px;
  }

  .local-header__sub {
    font-size: 16px;
  }

  .local-header__circle {
    width: 36px;
    height: 36px;
    font-size: 20px;
  }

  .local-header__title-text {
    font-size: 20px;
  }

  .local-header__icon {
    position: absolute;
    width: 55px;
    top: 15px;
  }

  .local-header__icon--left {
    left: 50%;
    transform: translateX(-165px);
  }

  .local-header__icon--right {
    left: 50%;
    transform: translateX(110px);
    top: 6px;
  }
}

/* セクション1：吹き出し部分 */
.local-intro {
  padding: 0 20px 0;
  margin-top: -20px;  /* 上に引き上げる */
  background: linear-gradient(to bottom, #fff 50%, #e7e6e8 50%);
}

.local-intro__inner {
  max-width: 750px;  /* 同じ幅に */
  margin: 0 auto;  /* margin-left: 18% を削除 */
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0px;
  padding-left: 20px;  /* 左の余白で調整 */
}

.local-intro__man {
  width: 140px;
  flex-shrink: 0;
  margin-right: 10px; 
}

.local-intro__man img {
  width: 100%;
  height: auto;
}

.local-intro__bubble {
  position: relative;
  width: 450px;
  flex-shrink: 0;
}

.local-intro__bubble-bg {
  width: 100%;
  height: auto;
}

.local-intro__bubble-text {
  position: absolute;
  top: 47%;  /* 50% → 55% で少し下に */
  left: 55%;  /* 50% → 55% で少し右に（吹き出しの尻尾分） */
  transform: translate(-50%, -50%);
  font-size: 26px;
  font-weight:600;
  color: #333;
  text-align: center;
  line-height: 1.5;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .local-intro__inner {
    justify-content: center;
    padding-left: 0;
    gap: 0;
  }
  .local-intro__bubble-bg {
    transform: scaleY(-1); /* 垂直反転 */
  }
  
  .local-intro__man {
    width: 70px; 
    align-self: flex-end;
    margin-right: -10px; /* 吹き出しに少し被せる */
    z-index: 1;
    margin-bottom: -32px;
    margin-left: -90px; 
  }
  
  .local-intro__bubble {
    width: 280px; /* 450px → 280px */
    margin-top: 22px;
    margin-left: 0;
  }
  
  .local-intro__bubble-text {
    font-size: 18px; /* 26px → 14px */
    top: 47%;
    left: 56%;
  }
}

/* セクション1：2カラム部分 */
.local-columns {
  padding: 40px 20px;
  background-color: #e7e6e8;
}

.local-columns__inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: stretch;  /* 追加：高さを揃える */
}

.local-columns__item {
  position: relative;
  padding-top: 50px;
  display: flex;
  flex-direction: column;
}

.local-columns__image {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 65%;
  aspect-ratio: 145 / 100;  /* 145:100の比率 */
  overflow: hidden;
  z-index: 2;
}

.local-columns__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.local-columns__card {
  background-color: #fff;
  padding: 60px 30px 20px;
  margin-top: 150px;
  position: relative;
  z-index: 1;
  flex: 1;  /* 追加：高さを揃える */
}

.local-columns__title {
  color: #850300;
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 15px;
  text-align: center;
}

.local-columns__text {
  font-size: 17px;
  line-height: 1.8;
  color: #333;
  margin: 0 0 15px;
}

.local-columns__text:last-child {
  margin-bottom: 0;
}

.local-columns__text strong {
  font-weight: bold;
}

.local-columns__highlight {
  background-color: #f5ffa7;
  font-weight: bold;
}

.local-columns__red {
  color: #850300;
  font-weight: bold;
}

@media (max-width: 768px) {
  .local-columns__inner {
    grid-template-columns: 1fr; 
    gap: 30px;
  }

  .local-columns__item {
    padding-top: 0;
  }

  .local-columns__image {
    width: 80%;
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    margin: 0 auto;
  }

  .local-columns__card {
    margin-top: -30px;
    padding: 50px 20px 20px;
  }

  .local-columns__title {
    font-size: 18px;
  }

  .local-columns__text {
    font-size: 14px;
  }
}
.sp-only {
  display: none;
}

@media (max-width: 768px) {
  .sp-only {
    display: inline;
  }
}

/* セクション1：波線の区切り */
.local-wave-divider {
  position: relative;
  background-color: #f5f0e6;
  overflow: hidden; 
  height: 50px;
  overflow: hidden;
  margin-bottom: 30px;
}

.local-wave-divider__wave {
  position: absolute;
  top: 0;
  left: 0;
  width: 100
  width: 1600px;
  height: 40px;
  
}
.local-wave-divider__arrow {
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  border-top: 26px solid #e7e6e8;
  filter: drop-shadow(0 4px 2px rgba(0,0,0,0.15));
}

/* セクション1：まとめ部分 */
.local-summary {
  background-color: #e7e6e8;
  padding: 5px 20px 30px;
}

.local-summary__inner {
  max-width: 600px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.local-summary__icon {
  width: 65px;
  height: auto;
  
}

.local-summary__text {
  font-size: 26px;
  font-weight: bold;
  color: #333;
  line-height: 1.6;
  letter-spacing:0.1em;
  margin: 0;
}

@media (max-width: 768px) {
  .local-summary__inner {
    margin-top: -30px; /* 数値を大きくするとさらに上へ */
  }
}

/* セクション2：案内セクション */
.local-guide {
  background-color: #f5f0e6;
  padding: 0px 20px 60px;
}

.local-guide__header {
  display: flex;
  justify-content: center;
  margin-left: 190px;
  align-items: flex-end;
  gap: 30px;
  margin-bottom: -60px;
  margin-top: -50px;
  position: relative;
  z-index: 2;
}

.local-guide__bubble {
  position: relative;
  width: 450px;

}

.local-guide__bubble-bg {
  display: block;
  width: 100%;
  height: auto;
}

.local-guide__bubble-text {
  position: absolute;  /* ← 追加 */
  top: 50%;  /* ← 追加 */
  left: 48%;  /* ← 追加 */
  transform: translate(-50%, -50%);  /* ← 追加 */
  font-size: 18px;
  line-height: 1.6;
  margin: 0;
  text-align: center;
  color: #fff;  /* ← 追加 */
  white-space: nowrap;  /* ← 追加 */
}


.local-guide__bubble-text strong {
  font-size: 24px;
  font-weight: bold;
  display: block;
  margin-top: 5px;
  letter-spacing:0.1em;
}

.local-guide__man {
  margin-bottom:-40px;
  width: 140px;
}

.local-guide__man img {
  width: 100%;
  height: auto;
}

.local-guide__box {
  max-width: 900px;
  margin: 0 auto;
  background-color: #fff;
  border: 3px dotted #1456a6;
  border-radius: 20px;
  padding: 80px 30px 0;
  padding-bottom: 80px;
  position: relative;
  z-index: 1;
}

/* ↓↓↓ 追加：セクション2の中身 ↓↓↓ */

.local-guide__section {
  border: 2px solid #005a92;
  border-radius: 8px;
  overflow: hidden;
    max-width: 600px;  /* ← 追加：幅を調整。400px、450pxなど好みで */
  margin: 0 auto;  /* ← 追加：中央揃え */
}

.local-guide__section-header {
  background-color: #efefef;
  border-top: 6px solid #005a92;  /* 上部分だけ太い帯 */
  padding: 20px;
  text-align: center;
}

.local-guide__section-title {
  font-size: 24px;
  font-weight: bold;
  color: #005a92;
  margin: 0 0 8px;
}

.local-guide__section-subtitle {
  font-size: 18px;
  color: #005a92;
  margin: 0;
}

.local-guide__section-body {
  padding: 20px;
}

.local-guide__highlight {
  background-color: #f5ffa7;
  display: inline;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
}

.local-guide__info-box {
  background-color: #efefef;
  padding: 15px 20px;
  margin: 15px 0;
  border-radius: 4px;
}

.local-guide__info-text {
  font-size: 15px;
  line-height: 1.8;
  margin: 0;
}

.local-guide__info-text strong {
  font-weight: bold;
}

.local-guide__text {
  font-size: 15px;
  line-height: 1.8;
  margin: 15px 0;
}

.local-guide__required {
  margin: 20px 0;
}

.local-guide__required-label {
  display: inline-block;
  background-color: #005a92;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  padding: 4px 12px;
  margin-bottom: 10px;
}

.local-guide__required-list {
  margin: 0;
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.8;
}

.local-guide__required-list li {
  margin-bottom: 5px;
}

.local-guide__note {
  font-size: 14px;
  line-height: 1.8;
  color: #666;
  margin: 15px 0 0;
}

/* ↓↓↓ 追加：必要書類の取得セクション ↓↓↓ */

.local-guide__arrow {
  text-align: center;
  padding: 30px 0 15px;
}

.local-guide__arrow-down {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 30px solid #005a92;
}

.local-guide__documents-header {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding: 0 20px;
  position: relative; 
}

.local-guide__documents-text {
  text-align: center;

}

.local-guide__documents-title {
  font-size: 20px;
  color: #333;
  margin: 0 0 5px;
}

.local-guide__documents-desc {
  font-size: 22px;
  color: #333;
  margin: 0;
  font-weight: bold;
}

.local-guide__documents-desc strong {
  font-weight: bold;
}

.local-guide__documents-accent {
  color: #005a92;
}

.local-guide__documents-icon {
  width: 80px;
  position: absolute;  /* ← 追加 */
  right: 5%;
}

.local-guide__documents-icon img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 860px) {
  .local-guide__documents-header {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  .local-guide__documents-icon {
    position: static;
    margin-top: 15px;
  }
}

/* ↓↓↓ 追加：6枚のカード ↓↓↓ */

.local-guide__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);  /* PC：3列 */
  gap: 20px;
  margin-top: 30px;
}

.local-guide__card {
  background-color: #fff;
  border: 2px solid #005a92; 
  border-radius: 3px;
  overflow: hidden;
}

.local-guide__card-header {
  background-color: #005a92; 
  padding: 15px 15px 12px;
  border-bottom: 2px solid #fff;  /* 白い横線 */
  text-align: center; 
}

.local-guide__card-title {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  margin: 0 0 8px;
}

.local-guide__card-subtitle {
  font-size: 14px;
  color: #fff;
  margin: 0;
}

.local-guide__card-body {
  padding: 15px;
  background-color: #fff;
}

.local-guide__card-body p {
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  margin: 0;
}

/* レスポンシブ：タブレット以下で2列 */
@media screen and (max-width: 860px) {
  .local-guide__cards {
    grid-template-columns: repeat(2, 1fr);  /* 2列 */
  }
}

/* レスポンシブ：スマホで1列 */
@media screen and (max-width: 480px) {
  .local-guide__cards {
    grid-template-columns: 1fr;  /* 1列 */
  }
}

/* ↓↓↓ 追加：7枚カード用（最後の1枚を中央に） ↓↓↓ */

.local-guide__cards--seven {
  /* 既存の .local-guide__cards のスタイルを継承 */
}

.local-guide__cards--seven .local-guide__card:last-child {
  grid-column: 2;  /* 7枚目を中央（2列目）に配置 */
}

/* レスポンシブ：タブレット以下で2列 */
@media screen and (max-width: 860px) {
  .local-guide__cards--seven .local-guide__card:last-child {
    grid-column: auto;  /* 2列時は通常配置 */
  }
}

/* ↓↓↓ 追加：一人で全部やるのは大変ですセクション ↓↓↓ */

.local-guide__difficult {
  margin-top: 40px;
  position: relative;
  padding: 0 20px;
}

.local-guide__difficult-text {
  text-align: center;
}

.local-guide__difficult-line1 {
  font-size: 22px;
  font-weight: bold;
  color: #333;
  margin: 0 0 10px;
}

.local-guide__difficult-line2 {
  font-size: 22px;
  font-weight: bold;
  color: #333;
  margin: 0 0 10px;
}

.local-guide__difficult-line3 {
  font-size: 28px;
  letter-spacing:0.1em;
  font-weight: bold;
  color: #d32f2f;
  margin: 0;
  position: relative; 
  display: inline-block;
  
}

.local-guide__difficult-line3::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.15em;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 14' preserveAspectRatio='none'%3E%3Cpath d='M0,10 L10,4 L20,10 L30,4 L40,10 L50,4 L60,10 L70,4 L80,10 L90,4 L100,10 L110,4 L120,10 L130,4 L140,10 L150,4 L160,10 L170,4 L180,10 L190,4 L200,10 L210,4 L220,10 L230,4 L240,10 L250,4 L260,10 L270,4 L280,10' stroke='%23ffd663' stroke-width='5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  z-index: -1;
}

.local-guide__difficult-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3%;
  width: 100px;
}

.local-guide__difficult-icon img {
  width: 100%;
  height: auto;
}

/* レスポンシブ：タブレット以下でアイコン非表示または下に移動 */
@media screen and (max-width: 860px) {
  .local-guide__difficult-icon {
    position: static;
    transform: none;
    margin: 20px auto 0;
  }
}
/* 届け出レスポンシブ */
@media (max-width: 768px) {
  .local-guide__box {
    margin-top: 50px; /* 数値を増やすとさらに下へ */
    padding-left: 0px; 
    padding-right: 0px; 
  }
  .local-guide__bubble {
    width: 275px; /* 450px → 小さく。大きくしたいなら350px、400pxなど */
    margin-left: -160px; /* 左に移動したいならマイナス値 */
    margin-top: 30px; /* 下に移動。上に移動したいならマイナス値 */
  } 
  .local-guide__bubble-bg {
    width: 275px; /* ← SVG自体の幅を指定 */
    height: auto;
  }
  .local-guide__bubble-text {
    font-size: 13px; /* 18px → 小さく */
    top: 50%; /* 数値を増やすと下へ、減らすと上へ */
    left: 49%; /* 数値を増やすと右へ、減らすと左へ */
    padding-left: 0;
  }

  .local-guide__bubble-text strong {
    font-size: 18px; /* 24px → 小さく */
  }
  .local-guide__man {
    width: 90px !important;
    margin-bottom: -50px; /* 数値を増やすと下へ、マイナスで上へ */
    margin-left: -30px; /* 右に移動。左に移動したいならマイナス値 */
    flex-shrink: 0; 
  }
    .local-guide__section {
    margin-top: -60px; /* 数値を減らすと上へ */
    max-width: 95%;
      
  }
   .local-guide__info-box {
    max-width: 100%;
  }
    .local-guide__section-body {
    padding: 15px 8px;
  }
   .local-guide__section-header {
    padding: 20px 8px; /* 左右を20px → 10pxに */
  }
  .local-guide__info-text{
    padding:10px 3px;
  }
   .local-guide__documents-icon {
    width: 80px; 
    margin-top: 5px; 
    margin-bottom: 5px;
  }
    .local-guide__cards {
    margin-top: 15px; /* 30px → 15pxに */
  }
  
  .local-guide__card{
    width:90%;
    margin: 0 auto;
  }

  .local-guide__documents-text {
    margin-bottom: -10px; /* 下の余白を詰める */
  }
   .local-guide__difficult {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0;
    max-width: 100%;
    width: 100%; 
  }

  .local-guide__difficult-text {
    display: block;
    flex-direction: column;
    align-items: center;
    padding: 0;
    max-width: 100%; /* ★追加★ */
    width: 100%; /* ★追加★ */
  }

  .local-guide__difficult-icon {
    position: static;
    transform: none;
    order: -1; /* line2の後に来るように */
    margin: 10px auto;
    width: 80px;
    margin-top: -10px;
  }

  .local-guide__difficult-line3 {
    order: 1; /* アイコンの後に */
  }
    .local-guide__difficult-line3 {
    display: inline;
    font-weight:bold;
    font-size: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14' preserveAspectRatio='none'%3E%3Cpath d='M0,10 L10,4 L20,10' stroke='%23ffd663' stroke-width='5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: bottom;
    background-repeat: repeat-x;
    background-size: 20px 14px;
    padding-bottom: 10px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
  }

  .local-guide__difficult-line3::after {
    display: none; /* 既存のギザギザを非表示 */
  }
  
}

/* ★追加★ 「やっぱり大変そう…と感じたら」セクション */
.local-guide__feeling-section {
  position: relative;
  margin-top: -90px;
  padding-bottom: 20px;
  z-index: 2;
}

.local-guide__feeling-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  position: relative;
}

/* 女性：青点線枠の下辺をまたぐ配置 */
.local-guide__feeling-woman {
  width: 150px;
  margin-right: 60px; 
  height: auto;
  position: relative;
  top: -30px;
  z-index: 2;
}

/* 吹き出しコンテナ */
.local-guide__feeling-balloon {
  position: relative;
  width: 400px;  
  height: 180px; 
  margin-left: -55px;
}

.local-guide__feeling-balloon-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.local-guide__feeling-balloon span {
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  white-space: nowrap;
  z-index: 1;
}

.local-guide__feeling-text {
  font-size: 32px;
  font-weight: bold;
  color: #333;
  margin: 0;
  margin-top: 30px;
}

/* SP「やっぱり大変そう…と感じたら」 */

@media (max-width: 768px) {
  .local-guide__feeling-woman {
    width: 100px;
    top: -30px;
    margin-top: 30px; 
  }
    .local-guide__feeling-balloon {
    width: 285px; /* ふきだし横幅 */
    height: 100px; /* ふきだし縦 */
    margin-left: -80px;
  }
    .local-guide__feeling-text {
     /*「と感じたら」を吹き出しの右下に配置：*/
    position: absolute;
    right: 5px; /* 右からの位置 */
    bottom: 0; /* 下からの位置 */
    margin: 0;
    font-size: 20px; 
    font-weight:400;
    color:white;
  }

  .local-guide__feeling-content {
    position: relative; /* 子要素の絶対配置用 */
  }
   .local-guide__feeling-balloon span {
    font-size: 23px; /* 30px → 小さく */
  }
}


/*  CTAセクション */
.local-guide__cta-section {
  background-color: #001c65;
  padding: 40px 20px 50px;
  margin-top: -140px;
  z-index: 1;
  position: relative;
}

.local-guide__cta-inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
  padding-top: 30px;
}

.local-guide__cta-company {
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  margin: 0 0 10px;
}

.local-guide__cta-text {
  font-size: 26px;
  font-weight: bold;
  color: #ffc059;
  margin: 0 0 30px;
}

.local-guide__cta-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  flex-wrap: wrap;
}

/* メールボタン */
.local-guide__cta-email-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #ff4749;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 18px 30px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.3s;
}

.local-guide__cta-email-btn:hover {
  opacity: 0.8;
  transform: scale(1.05);
  transition: opacity 0.3s, transform 0.3s;
}

.local-guide__cta-email-icon {
  width: 28px;
  height: auto;
}

/* 電話 */
.local-guide__cta-phone {
  text-align: center;
}

.local-guide__cta-phone-label {
  font-size: 16px;
  letter-spacing: 0.1em;
  color: #fff;
  margin: 0 0 0 50px;
}

.local-guide__cta-phone-number {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

.local-guide__cta-phone-icon {
  width: 50px;
  height: auto;
}

/* ★追加★ */
.local-guide__cta-phone-link {
  font-size: 36px;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
}

.local-guide__cta-phone-time {
  font-size: 14px;
  color: #fff;
  margin: 0 0 0 50px;
}

.local-guide__cta-phone-tap {
  display: none; /* PC時は非表示 */
}

/* ★追加★ PC時は電話リンク無効 */
@media (min-width: 769px) {
  .local-guide__cta-phone-link {
    pointer-events: none;
    cursor: default;
  }
}

/*  SP- CTAセクション */
@media (max-width: 768px) {
  .local-guide__cta-phone-tap {
    display: block;
    font-size: 12px;
    color: #ffc059; /* オレンジで目立たせる */
    margin: 5px 0 0;
  }
  .local-guide__cta-phone-link {
    font-size: 32px; /* 28px → 大きく */
    font-weight:bold;
    letter-spacing:0.05em;
    color: #ffc059;
  }
   .local-guide__cta-phone-icon {
   position: absolute;
   left: -35px; /* 左端からの位置。調整可 */
   width: 25px; /* 30px → 小さく */
  }
    .local-guide__cta-phone-number {
    position: relative;
    justify-content: center;
  }
    .local-guide__cta-phone-time {
    margin: 0; /* 0 0 0 50px → 0 */
  }
    .local-guide__cta-phone-label {
    margin: 0; /* 0 0 0 50px → 0 */
  }
    .local-guide__cta-phone {
    text-align: center;
  }
  
}

/* 土岐市の地価・税金情報セクション */
.local-guide__land-price-section {
  position: relative;
  width: 100%;
    
  overflow: hidden;
}

.local-guide__land-price-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 80px);
  z-index: 1;
}

.local-guide__land-price-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 80%;
  opacity: 0.7;
}

/* 下から上へ白グラデーション（下が透明度高=白、上が透明度低=画像見える） */
.local-guide__land-price-bg::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(255,255,255,0.8) 0%, rgba(255,255,255,0.2) 100%);
  z-index: 2;
}

.local-guide__land-price-content {
  position: relative;
  z-index: 3;
  max-width: 900px;
  margin: 0 auto;
  padding: 30px 20px 50px;
  text-align: center;
}

.local-guide__land-price-title {
  font-size: 24px;
  font-weight: bold;
  color: #333;
  text-align: center;
  margin: 50px 0 0 10px;

  display: inline-block;
  width: 100%;
}

.local-guide__land-price-title::after {
  content: '';
  display: block;
  width: 120px;
  height: 3px;
  background-color: #333;
  margin: 10px auto 0;
}

.local-guide__land-price-subtitle {
  font-size: 24px;
  letter-spacing:0.1em;
  font-weight: bold;
  color: #333;
  text-align: center;
  margin: 10px 0 10px 15px;
}

.local-guide__land-price-subtitle span {
  color: #0043ff;
}

.local-guide__land-price-text {
  font-size: 16px;
  color: #333;
  line-height: 1.8;
  font-weight:400;
  max-width: 700px; 
  margin: 0 auto; 
}

.local-guide__land-price-text p {
  margin: 0 0 10px;
}

.local-guide__land-price-ranking {
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  margin: 20px auto 0;
  letter-spacing: 0.1em;
  background-color: #c3831e;
  padding: 15px 40px;
  display: inline-block;
}
.pc-only {
  display: inline;
}

/* SP-土岐市の地価・税金情報セクション */

@media (max-width: 768px) {
  .local-guide__land-price-title {
    margin-top: 20px; /* 50px → 小さく。数値を減らすと上へ */
    margin-bottom: 20px;
  }
   .pc-only {
    display: none;
  }
    .local-guide__land-price-ranking {
    text-align: center;
    padding: 15px 20px; /* 左右のpaddingを調整 */
  }
}

/* 地価ランキング表セクション */
.local-guide__ranking-section {
  background-color: #f3f3f3;
  padding: 0px 20px 20px;
  margin-top: -80px; 
  position: relative;
  z-index: 0;  
}

.local-guide__ranking-inner {
  max-width: 530px;  /* ← ここで横幅調整 */
  margin: 0 auto;
   padding-top: 80px;
}

.local-guide__ranking-table {
  width: 100%;
  border-collapse: separate;  /* ← ★修正★ separateに変更 */
  border-spacing: 5px;        /* ← ★追加★ セル間の隙間 */

}

.local-guide__ranking-table thead tr {
  background-color: transparent;  /* ← ★修正★ */
}

.local-guide__ranking-table th {
  background-color: #001c65;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 15px 10px;
  text-align: center;
}

.local-guide__ranking-th-rank {
  width: 16%;
}

.local-guide__ranking-th-address {
  width: 53%;
  text-align: left !important;  /* ← ★追加★ 住所だけ左寄せ */
  padding-left: 20px;
}

.local-guide__ranking-th-price {
  text-align: right !important;
  padding-right: 110px !important;
  width: 31%;
}

.local-guide__ranking-table tbody tr:nth-child(odd) td {
  background-color: #fff;
}

.local-guide__ranking-table tbody tr:nth-child(even) td {
  background-color: #dedede;
}

.local-guide__ranking-table td {
  font-size: 16px;
  padding: 15px 10px;
  text-align: center;
  /* border-bottom削除 */
}

.local-guide__ranking-table td:nth-child(1) {
  font-weight: bold;
}

.local-guide__ranking-table td:nth-child(2) {
  text-align: left;
}

.local-guide__ranking-table td:nth-child(3) {
  text-align: right;
  padding-right: 20px;
}

.local-guide__ranking-note {
  font-size: 13px;
  color: #666;
  text-align: right;
  margin: 20px 0 5px;
}

.local-guide__ranking-source {
  font-size: 14px;
  color: #666;
  text-align: right;
  margin: 0;
}

/*  地価比較セクション */
.local-guide__price-comparison {
  background-color: #f3f3f3;
  padding: 20px 20px 20px;
}

.local-guide__price-comparison-inner {
  max-width: 600px;
  margin: 0 auto;
}

.local-guide__ranking-table td:nth-child(3) {
  font-weight: bold;
}
.local-guide__ranking-th-price {
  white-space: nowrap;
}

.local-guide__ranking-table,
.local-guide__ranking-table th,
.local-guide__ranking-table td {
  border: none !important;
}

/*  SP- 地価比較セクション */

@media (max-width: 768px) {
  .local-guide__ranking-th-address,
  .local-guide__ranking-table td:nth-child(2) {
    width: 55% !important;
    min-width: 55% !important;
  }

  .local-guide__ranking-th-rank,
  .local-guide__ranking-table td:nth-child(1) {
    width: 15% !important;
  }

  .local-guide__ranking-th-price,
  .local-guide__ranking-table td:nth-child(3) {
    width: 30% !important;
  }
    .local-guide__ranking-table {
    table-layout: fixed; /* 幅を強制的に固定 */
    width: 100%;
  }
    .local-guide__assessment-text {
    font-size: 5vw !important;
    font-weight: bold;
    text-align: left; 
  }
    .local-guide__assessment-woman {
    width: 80px; /* サイズ調整 */
    margin-top: -70px; /* 上に移動（マイナス値で上、プラス値で下） */
    margin-left: -20px; /* 右に移動（プラス値で右、マイナス値で左） */
  }

}

/* 親要素にノート風スタイルを適用 */
.local-guide__price-comparison-block {
  background-color: #f3f3f3;
  background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #f3f3f3 50%, #f3f3f3 100%),
                    linear-gradient(180deg, #999 1px, transparent 1px);
  background-size: 8px 100%,
                   100% 2.5em;
  line-height: 2.5em;
  padding-bottom: 1px;
  margin-bottom: 2.5em;
}

.local-guide__price-comparison-block:last-child {
  margin-bottom: 0;
}

.local-guide__price-comparison-block p {
  margin: 0;
  font-size: 16px;
  color: #333;
}

/*  無料査定セクション */
.local-guide__assessment-section {
  background-color: #f3f3f3;
  padding: 20px 20px 0;
}

.local-guide__assessment-inner {
  max-width: 800px;
  margin: 0 auto;
  padding-bottom: 50px;
  position: relative;
}

.local-guide__assessment-woman {
  width: 140px;
  height: auto;
  position: absolute;
  left: 10px;
  bottom: 0;
  margin-bottom: -30px;
}

.local-guide__assessment-content {
  text-align: center;
  width: 100%;
}

.local-guide__assessment-text {
  font-size: 30px;
  letter-spacing:0.1em;
  font-weight: bold;
  color: #009dff;
  line-height: 1.6;
  margin: -10px 0 20px;
}

.local-guide__assessment-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background-color: #001c65;
  color: #fff;
  font-size: 20px;
  letter-spacing:0.1em;
  font-weight: bold;
  padding: 18px 40px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.3s, transform 0.3s;
}

.local-guide__assessment-btn:hover {
  opacity: 0.8;
  transform: scale(1.05);
}

.local-guide__assessment-btn-icon {
  width: 28px;
  height: auto;
}
/* SP- 無料査定セクション */

@media (max-width: 768px) {
  .local-guide__assessment-woman {
    width: 80px; /* 140px → 小さく。数値を変更でサイズ調整 */
    left: -10px; /* 左右位置。数値を増やすと右へ */
    bottom: 40px; /* 上下位置。数値を増やすと上へ */
  }
   .local-guide__assessment-text {
    font-size: 5vw !important;
    font-weight: bold;
    text-align: center;
    margin-top: 5px; /* 数値を増やすと下へ、減らす/マイナスで上へ */

  }
    .local-guide__assessment-section {
    padding: 5px 5px 0; /* 左右20px → 5pxに */
  }
   .local-guide__assessment-inner {
    padding-bottom: 40px; /* 50px → 小さく */
  }
  
   .local-guide__assessment-woman {
    bottom: 15px; /* 背景からはみ出させる */
  }
}

/*  固定資産税セクション */
.local-guide__tax-section {
  background-color: transparent;
  padding: 50px 20px 15px 20px;
  position: relative;
  z-index: 2;
}

.local-guide__tax-inner {
  max-width: 1000px;
  margin: 0 auto;
}

/* ホームベース型の背景 */
.local-guide__tax-pentagon {
  position: relative;
  padding: 0 30px 80px;
  max-width: 920px;
  margin: 0 auto;
}

.local-guide__tax-pentagon::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #e0e0e0;
  clip-path: polygon(0 0, 100% 0, 100% 85%, 50% 100%, 0 85%);
  z-index: 1;
}

/* タイトル */
.local-guide__tax-title {
  background-color: #5a82a3;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 12px 40px;
  margin: 50px auto 30px;
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  top: -10px;
  z-index: 1;
}

/* コンテンツエリア */
.local-guide__tax-content {
  display: flex;
  gap: 30px;
  position: relative;
  z-index: 1;
}

/* 左カラム */
.local-guide__tax-left {
  flex: 0 0 45%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-left: 50px;
}

.local-guide__tax-label {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin: 0 0 10px;
  align-self: flex-start;
  margin-left: 40px;
  margin-bottom: -15px;
}

.local-guide__tax-house-normal {
  width: 100%;
  max-width: 280px;
  height: auto;
}

/* （ホームベースを縦につぶした形） */
.local-guide__tax-arrow {
  background-color: #535a6b;
  clip-path: polygon(0 0, 100% 0, 100% 60%, 50% 100%, 0 60%);
  padding: 5px 25px 18px;
  text-align: center;
  margin-top: 20px;
  width: 230px;
}

.local-guide__tax-arrow span {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
}

/* 右カラム */
.local-guide__tax-right {
  flex: 1;
  position: relative;
  overflow: visible;
}

/* 情報ボックス */
.local-guide__tax-info-box {
  background-color: #fff;
  border: 5px solid #ededed;
  border-radius: 10px;
  padding: 20px 30px;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  right: -10px;
  width: calc(100% + 10px);
  margin-top: 30px;
}

.local-guide__tax-info-box p {
  font-size: 14px;
  color: #333;
  line-height: 1.8;
  margin: 0 0 15px;
}

.local-guide__tax-info-box p:last-of-type {
  margin-bottom: 15px;
}

.local-guide__tax-red {
  color: #d32f2f;
  font-weight: bold;
}

/* 注釈ボックス */
.local-guide__tax-note {
  background-color: #ffe9a1;
  padding: 15px 15px 10px;
  border-radius: 5px;
}

.local-guide__tax-note p {
  font-size: 13px;
  font-weight: 600;
  color: #333;
  margin: 0 !important;
}

/* 下の家エリア */
.local-guide__tax-bottom-images {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 15px;
}

.local-guide__tax-elderly-man {
  width: 150px;
  height: auto;
  position: absolute;
  left: -50px;
  bottom: 30px;
   z-index:2;
}

.local-guide__tax-house-6x-wrapper {
  position: relative;
  max-width: 280px;
}

.local-guide__tax-house-6x {
  width: 100%;
  height: auto;
  margin-left: 20px;
}

/* ギザギザバッジ */
.local-guide__tax-6x-badge {
  position: absolute;
  top: 10px;
  right: -40px;
  width: 80px;
  height: 80px;
  background-color: #cf0000;
  display: flex;
  align-items: center;
  justify-content: center;
  clip-path: polygon(
    50% 0%, 61% 11%, 75% 5%, 79% 21%, 95% 25%, 89% 39%,
    100% 50%, 89% 61%, 95% 75%, 79% 79%, 75% 95%, 61% 89%,
    50% 100%, 39% 89%, 25% 95%, 21% 79%, 5% 75%, 11% 61%,
    0% 50%, 11% 39%, 5% 25%, 21% 21%, 25% 5%, 39% 11%
  );
  z-index: 2;
}

.local-guide__tax-6x-badge span {
  color: #fff;
  font-size: 26px;
  font-weight: bold;
}

/* 税金が最大6倍 */
.local-guide__tax-warning {
  text-align: center;
  margin-top: 20px;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.local-guide__tax-warning-main {
  font-size: 60px;
  font-weight: 900;
  color: #ff2600;
  margin: 0;
  letter-spacing: 0.1em;
  border-bottom: 5px solid #ff2600;
  padding-bottom: 3px;
  line-height: 1;
}

.local-guide__tax-warning-sub {
  font-size: 30px;
  font-weight: bold;
  margin: 0;
  display: inline-block;
  border-bottom: 5px solid #ff2600;
  padding-bottom: -25px;
}

/* SP-固定資産税セクション */
@media (max-width: 768px) {
  .local-guide__tax-content {
    flex-direction: column !important;
    gap: 20px;
  }

  .local-guide__tax-left {
    flex: none !important;
    width: 85%;
    margin: 0 auto;
    padding-left: 0;
  }

.local-guide__tax-right {
  flex: none !important;
  width: 100%;
  margin: 0;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
}

.local-guide__tax-info-box {
  width: 110% !important;
  margin-top: 10px !important;
  margin-left: -8% !important; 
  margin-right: -8% !important;
  position: static !important;
  box-sizing: border-box !important;
  padding: 20px 15px !important; 
}

  .local-guide__tax-pentagon {
    padding: 0 10px 80px;
  }

  .local-guide__tax-title {
    margin-top: -20px;
  }

  .local-guide__tax-label {
    margin-left: 10px;
    margin-top: 10px;
  }

  .local-guide__tax-pentagon::before {
    clip-path: polygon(0 0, 100% 0, 100% 93%, 50% 100%, 0 93%);
  }

  .local-guide__tax-elderly-man {
    width: 100px;
    z-index: 10;
  }

  .local-guide__tax-warning-main {
    font-size: 12vw;
  }
  .local-guide__tax-warning-main {
  font-size: clamp(28px, 9vw, 60px) !important; 
  white-space: nowrap; /* ★追加★ 改行禁止 */
 }
  .local-guide__tax-warning-sub {
  white-space: nowrap; /* ★追加★ 改行禁止 */
  font-size: clamp(16px, 5vw, 30px) !important; 
}
}

/*  相談セクション */
.local-guide__consult-section {
  background-color: #fdfaed;
  padding: 80px 20px 0px;
  margin-top: -80px;  /* ← 前のセクションに被せる */
  position: relative;
  z-index: 1;
  overflow: visible;
}

.local-guide__consult-inner {
  max-width: 800px;
  margin: 0 auto;
}

.local-guide__consult-intro {
  text-align: center;
}

.local-guide__consult-intro p {
  font-size: 20px;
  font-weight:550;
  color: #333;
  margin: 0;
  line-height: 1.5;
}

.local-guide__consult-highlight {
  display: inline;
  background: linear-gradient(transparent 60%, #f0c235 60%);  /* ← ハイライト */
}

/* 下向き二重矢印 */
.local-guide__consult-arrow {
  display: flex;
  justify-content: center;
  margin: 30px 0;
}

.local-guide__consult-arrow-svg {
  width: 80px;  /* ← サイズ調整 */
  height: auto;
}

/* ★追加★ 市役所情報 */
.local-guide__consult-city-info {
  font-size: 18px;
  color: #333;
  text-align: center;
  margin: 0 0 30px;
}

/* ★追加★ 表タイトル */
.local-guide__consult-table-title {
  font-size: 22px;
  font-weight: bold;
  color: #333;
  text-align: center;
  margin: 0 0 20px;
}

/* ★追加★ 表 */
.local-guide__consult-table {
  width: 100%;
  max-width: 700px;
  margin: 0 auto 20px;
  border-collapse: separate;
  border-spacing: 2px;
}

.local-guide__consult-table th {
  background-color: #d3d4d4;
  color: #333;
  font-size: 14px;
  font-weight: bold;
  padding: 12px 10px;
  text-align: center;
}

.local-guide__consult-table td {
  background-color: #fff;
  font-size: 14px;
  color: #333;
  padding: 12px 10px;
  text-align: center;
  border: 1px solid #ddd;
}

.local-guide__consult-table,
.local-guide__consult-table th,
.local-guide__consult-table td {
  border: none !important;
}

.local-guide__consult-table td[rowspan] {
  vertical-align: middle;
}

/* ★追加★ 注釈 */
.local-guide__consult-note {
  max-width: 700px;
  margin: 20px auto 0;
  text-align: center; 
}

.local-guide__consult-note p {
  font-size: 14px;
  color: #333;
  line-height: 1.8;
  margin: 0;
}

/*  困っている女性と吹き出し */
.local-guide__consult-woman-section {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 0;
  padding-bottom: -80px;
  position: relative;
  z-index: 10;
}

.local-guide__consult-woman {
  width: 150px;
  height: auto;
}

/* 吹き出し共通 */
.local-guide__consult-balloon-left {
  position: relative;
  width: 220px;
  height: 60px;
  align-self: flex-end;
  margin-bottom: 80px;
}

.local-guide__consult-balloon-right {
  position: relative;
  width: 220px;
  height: 60px;
  align-self: flex-start;
  margin-top: 20px;
}

.local-guide__consult-balloon-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.local-guide__consult-balloon-left span,
.local-guide__consult-balloon-right span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  white-space: nowrap;
  z-index: 1;
}

/* 左吹き出しの文字位置調整 */
.local-guide__consult-balloon-left span {
  left: 48%;
}

/* 右吹き出しの文字位置調整 */
.local-guide__consult-balloon-right span {
  left: 53%;
}

/*  SP- 相談セクション */
@media (max-width: 768px) {
  .local-guide__consult-intro p {
    font-size: clamp(12px, 3.8vw, 20px) !important;
    white-space: nowrap;
  }

  .local-guide__consult-highlight {
    font-size: clamp(15px, 4.5vw, 20px) !important;
    white-space: nowrap;
  }

  .local-guide__consult-table {
    width: 100%;
    max-width: none !important;
  }

  .local-guide__consult-section {
    padding: 80px 10px 0px;
  }

  .local-guide__consult-note {
    text-align: left;
  }

  .local-guide__consult-note p {
    text-align: left;
  }

  /* 女性と吹き出しエリア */
  .local-guide__consult-woman-section {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px; /* ★追加★ 要素間の間隔を統一 */
  }

  /* 女性画像 */
  .local-guide__consult-woman {
    width: 80px;
    flex-shrink: 0;
  }

  /* 吹き出し共通 */
  .local-guide__consult-balloon-left,
  .local-guide__consult-balloon-right {
    width: 140px; /* ★修正★ 左右同じ幅 */
    height: 80px; /* ★追加★ 高さも指定 */
    margin: 0; /* ★追加★ マージンをリセット */
    flex-shrink: 0; /* ★追加★ 縮小防止 */
    position: relative;
  }
  /* 左吹き出しの上下調整 */
.local-guide__consult-balloon-left {
  margin-top: -40px; /* マイナス値で上へ、プラス値で下へ */
}

/* 右吹き出しの上下調整 */
.local-guide__consult-balloon-right {
  margin-top: 10px; /* マイナス値で上へ、プラス値で下へ */
}

  /* 吹き出しSVG */
  .local-guide__consult-balloon-svg {
    width: 100%; /* ★修正★ 親要素に合わせる */
    height: 100%; /* ★追加★ */
    position: absolute;
    top: 0;
    left: 0;
  }

  /* 吹き出し内テキスト */
  .local-guide__consult-balloon-left span,
  .local-guide__consult-balloon-right span {
    font-size: 12px; /* ★修正★ 小さく */
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    white-space: nowrap; /* ★追加★ 改行禁止 */
  }
}


/*  林組にご相談くださいセクション */
.local-guide__hayashi-section {
  background-color: #001c65;
  padding: 20px 20px 50px;
  position: relative;
  margin-top: 0;
  z-index: 2; 
}

.local-guide__hayashi-inner {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}

.local-guide__hayashi-man {
  width: 150px;
  height: auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.local-guide__hayashi-content {
  text-align: center;
  width: 100%;
}

.local-guide__hayashi-lead {
  font-size: 20px;
  color: #fff;
  margin: 0 0 10px;
}

.local-guide__hayashi-title {
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  margin: 0 0 15px;
}

.local-guide__hayashi-text {
  font-size: 20px;
  color: #fff;
  line-height: 1.8;
  margin: 0;
}

.local-guide__hayashi-text span {
  color: #fff032;
  font-weight: bold;
}

/* 下向き矢印（ひし形） */
.local-guide__hayashi-arrow {
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  width: 90px;
  height: 30px; /* 縦を小さく */
  background-color: #001c65;
  clip-path: polygon(0 0, 100% 0, 50% 100%); /* 下向き三角形 */
  z-index: 1;
}

/* SP- 林組にご相談くださいセクション */
@media (max-width: 768px) {
  
.local-guide__hayashi-title {
  font-size: clamp(18px, 7vw, 32px) !important; /* ★修正★ 7vw → 6vw */
  white-space: nowrap;
}
  
  .local-guide__hayashi-section {
  padding: 20px 10px 50px; /* ★追加★ 左右20px → 10px */
}
  .local-guide__hayashi-man {
  width: 70px; /* 150px → 小さく。数値を変更でサイズ調整 */
  left: -3px; /* 左右位置。数値を増やすと右へ */
  top: 71%; /* 上下位置。数値を増やすと下へ */
}
  .local-guide__hayashi-text {
  font-size: clamp(12px, 4vw, 20px) !important; /* ★追加★ 自動サイズ調整 */
}
 .local-guide__hayashi-text span {
  font-size: clamp(14px, 5vw, 24px) !important; /* ★追加★ 自動サイズ調整 */
  white-space: nowrap; /* ★追加★ 改行禁止 */
  display: inline-block; /* ★追加★ white-spaceを効かせるため */
} 
  
}
/*  林組サービス紹介セクション */
.local-guide__service-section {
  background-color: #eef3f8;
  padding: 60px 20px 20px ;
}

.local-guide__service-inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: flex-start; /* 上揃え */
  justify-content: center;
  gap: 30px;
}


/* 縦書きテキスト 3列 */
.local-guide__service-vertical-text {
  position: absolute;
  left: 30px;
  top: -20px; /* 上からの位置調整 */
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start; 
}

.local-guide__service-vertical-col {
  background-color: #80ceff;
  padding: 10px 0px 5px 0px;
  writing-mode: vertical-rl;
  display: flex;
  align-items: center;
  justify-content: center;
}

.local-guide__service-vertical-col p {
  font-size: 38px;
  font-weight: bold;
  margin: 0;
  line-height: 1.4;
}



/* サービス図画像 */
.local-guide__service-diagram-img {
  max-width: 700px;
  height: auto;
}



/* 930px以下-林組サービス紹介セクション */
@media (max-width: 930px) {
  .local-guide__service-vertical-text {
    position: static; 
    flex-direction: column; 
    align-items: flex-start; 
    gap: 5px;
    margin-bottom: 0;
    background-color: transparent;
  }
   
  /* 順番を変更（flexのorderを使用） */
  .local-guide__service-vertical-col:nth-child(1) {
    order: 2;
  }

  .local-guide__service-vertical-col:nth-child(2) {
    order: 3;
  }

  .local-guide__service-vertical-col:nth-child(3) {
    order: 1;
  }

  /* 横書きに */
  .local-guide__service-vertical-col {
    writing-mode: horizontal-tb !important; 
    padding: 3px 3px;
    background-color: #80ceff;
    width: auto; 
    display: inline-block;
  }

  .local-guide__service-vertical-col p {
    font-size: clamp(16px, 6vw, 38px);
    white-space: nowrap;
  }

  /* レイアウトを縦並びに */
  .local-guide__service-inner {
    flex-direction: column;
    align-items: center;
  }
}

/* SP- 林組サービス紹介セクション */

@media (max-width: 768px){
  /* サービス図を画面幅いっぱいに */
.local-guide__service-diagram-img {
  width: 120%;
  max-width: 130%;
  height: auto;
}
  
  /* 縦書き → 横書きに変更 */
.local-guide__service-vertical-text {
  position: static; 
  flex-direction: column; 
  align-items: flex-start; 
  gap: 5px;
  margin-bottom: 0;
  background-color: transparent;
}
 
/* 順番を変更（flexのorderを使用） */
.local-guide__service-vertical-col:nth-child(1) {
  order: 2; /* 相続の相談から → 2番目 */
}

.local-guide__service-vertical-col:nth-child(2) {
  order: 3; /* まとめて対応 → 3番目 */
}

.local-guide__service-vertical-col:nth-child(3) {
  order: 1; /* 林組なら → 1番目 */
}

/* 横書きに */
.local-guide__service-vertical-col {
  writing-mode: horizontal-tb; 
  padding: 3px 3px;
  background-color: #80ceff;
  width: auto; 
  display: inline-block;
}

.local-guide__service-vertical-col p {
  font-size: clamp(16px, 6vw, 38px);
  white-space: nowrap;
}

/* レイアウトを縦並びに */
.local-guide__service-inner {
  flex-direction: column;
  align-items: center;
}
}


/* SEO補完用（非表示） */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}



/*  ワンストップ訴求セクション */
.local-guide__onestop-section {
  background-color: #eef3f8;
  padding: 10px 20px 60px;
}

.local-guide__onestop-inner {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}

/* テキストボックス（白背景） */
.local-guide__onestop-text-box {
  background-color: #fff;
  padding: 10px 30px;
  margin-bottom: 30px;
}

.local-guide__onestop-text {
  font-size: 18px;
  color: #333;
  line-height: 1.8;
  margin: 0 0 20px;
}

.local-guide__onestop-text:last-of-type {
  margin-bottom: 15px;
}

.local-guide__onestop-highlight {
  font-size: 28px;
  font-weight: bold;
  color: #009dff;
  margin: 0;
}

/* CTA導入テキスト */
.local-guide__onestop-cta-lead {
  font-size: 18px;
  color: #333;
  margin: 0 0 20px;
}

/* ボタン */
.local-guide__onestop-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  background-color: #ff4749;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 20px 50px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.3s, transform 0.3s;
}

.local-guide__onestop-btn:hover {
  opacity: 0.8;
  transform: scale(1.05);
}

.local-guide__onestop-btn-icon {
  width: 30px;
  height: auto;
}

/*  SP-ワンストップ訴求セクション~CTAまで */
@media (max-width: 768px){
 .local-guide__onestop-text {
  text-align: left; /* ★追加★ 左寄せ */
}
 .local-guide__onestop-btn {
  white-space: nowrap; /* ★追加★ 改行禁止 */
  padding: 15px 30px; /* ★追加★ 左右の余白を調整。数値を増やすと余白が増える */
  font-size: clamp(12px, 4vw, 18px); /* ★追加★ 自動サイズ調整 */
}

}

.local-guide__onestop-btn:hover,
.local-guide__onestop-btn:hover span,
.local-guide__onestop-btn:visited,
.local-guide__onestop-btn:visited span,
.local-guide__cta-email-btn:hover,
.local-guide__cta-email-btn:hover span,
.local-guide__cta-email-btn:visited,
.local-guide__cta-email-btn:visited span,
.local-guide__assessment-btn:hover,
.local-guide__assessment-btn:hover span,
.local-guide__assessment-btn:visited,
.local-guide__assessment-btn:visited span {
  color: #fff !important;
}

/* ================================
   広域版（美濃・名古屋近郊）用スタイル
   ================================ */

/* 対象エリア表示 */
.local-header__area-info {
  margin-top: 15px;
  text-align: center;
}

.local-header__area-main {
  font-size: 14px;
  color: #333;
  line-height: 1.6;
}

.local-header__area-note {
  font-size: 12px;
  color: #666;
  margin-top: 5px;
}

/* 広域版用の注釈 */
.local-guide__area-note {
  text-align: center;
  font-size: 13px;
  color: #666;
  margin-top: 20px;
  padding: 10px;
  background-color: #f9f9f9;
  border-radius: 5px;
}

/* 広域版：市名タイトル */
.local-guide__ranking-city-title {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin-bottom: 10px;
  padding-left: 10px;
  border-left: 4px solid #5a82a3;
}

/* 広域版：税務課連絡先リスト */
.local-guide__tax-contact-list {
  list-style: none;
  padding: 0;
  margin: 10px 0;
  font-size: 14px;
}

.local-guide__tax-contact-list li {
  padding: 5px 0;
  border-bottom: 1px dotted #ddd;
}

.local-guide__tax-contact-list li:last-child {
  border-bottom: none;
}

/* 補足リスト */
.local-guide__consult-note-list {
  list-style: none;
  padding: 0;
  margin: 10px 0 0 0;
  font-size: 13px;
}

.local-guide__consult-note-list li {
  padding: 5px 0 5px 1em;
  text-indent: -1em;
}

.local-guide__consult-note-list li::before {
  content: "※";
}

@media (max-width: 768px) {
  .local-header__area-main {
    font-size: 12px;
  }
  .local-header__area-note {
    font-size: 11px;
  }
  .local-guide__area-note {
    font-size: 12px;
  }
  .local-guide__ranking-city-title {
    font-size: 16px;
  }
  .local-guide__tax-contact-list {
    font-size: 12px;
  }
  .local-guide__consult-note-list {
    font-size: 12px;
  }
}

/* 1stView下 エリア選択ボタン */

.area-select {
    background: #f5f5f5;
    padding: 20px;
    text-align: center;
    margin-top: 20px;
}

.area-select__title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #333;
}

.area-select__buttons {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.area-select__btn {
    background: #1a3a5c;
    color: #fff;
    padding: 12px 24px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background 0.3s;
}

.area-select__btn:hover {
    background: #2a5a8c;
	color: #fff !important;
}

.area-select__note {
    font-size: 14px;
	font-weight:400;
    color: #666;
    margin-top: 30px;
}

@media screen and (max-width: 768px) {
    .area-select__buttons {
        margin-top: 25px;
        max-width: 280px;
        margin-left: auto;
        margin-right: auto;
    }
    
    .area-select__btn {
        width: calc(50% - 5px);
        text-align: center;
    }
    
    .is-area-wide .mv__illust {
        max-width: 89px;
        right: -30px;
    }
    
    .is-area-wide .intro {
        padding-top: 30px;
    }
}