@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
body.home .transparent-background-wrapper {
  background-image: url(https://asagi-tax.jp/wp-content/uploads/2025/07/trimmed_top_bg_16_9.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 60px 8% 20px;
  width: 100vw !important;
  margin: -60px 0 0 calc(-50vw + 50%) !important;
  position: relative;
}

body.home .transparent-background-content img {
  max-height: 680px;
  width: auto;
  height: auto;
  object-fit: contain;
}


/* ▼ トップ画像内のコンテンツブロック */
body.home .transparent-background-content {
  background: transparent !important;
  padding: 48px 56px;
  border-radius: 16px;
  max-width: 600px;
  margin-left: 8%;     /* ← これで左寄り */
  margin-right: auto;
  font-family: "Zen Old Mincho", serif;
  text-align: left;
  color: #333;
  text-shadow: none;
}



body.home .transparent-background-content h1 {
  font-size: 48px;
  line-height: 1.2;
  margin-bottom: 20px;
  color: #333;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* ▼ CTAボタン */
body.home .transparent-background-content .button {
  background-color: #ffffff;
  color: #000;
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: bold;
  display: inline-block;
  transition: all 0.3s ease;
}

body.home .transparent-background-content .button:hover {
  background-color: #eaeaea;
}

/* ▼ サブコピー */
body.home .sub-copy {
  margin-top: 40px;
  font-family: 'Noto Sans JP', sans-serif;
}

body.home .sub-copy h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 12px;
  color: #333;
  font-family: 'Noto Sans JP', sans-serif;
  text-shadow: none;
  background: none;
}

body.home .sub-copy p {
  font-size: 16px;
  line-height: 2;
}

/* ▼ ヘッダー固定＋ロゴ＋ナビ */
body.home .custom-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  padding: 12px 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "Zen Old Mincho", serif;
}

body.home .site-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #333;
  margin: 0;
}

body.home .site-title a {
  display: inline-flex;
  align-items: center;
}

body.home .custom-header-left {
  display: flex;
  align-items: center;
  font-family: 'Zen Old Mincho', serif;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #333;
}

body.home .custom-header-left::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url('http://asagi-tax.jp.testrs.jp/002/wp-content/uploads/2025/06/cropped-Asagi_zeirishi_logoDesign-A.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 8px;
}

/* ▼ 共通のカスタムヘッダー右エリア（修正済） */
.custom-header-right {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  padding-right: 80px;  /* ← ★ これがなかったのがズレの原因や！ */
}

body.home .custom-header-right a {
  margin-left: 20px;
  text-decoration: none;
  color: #555;
  font-size: 0.95rem;
  font-weight: 400;
  transition: all 0.2s ease;
}

body.home .sns-wrapper {
    display: flex;
    flex-wrap: nowrap;        /* ← 折返し禁止 */
    gap: 8px;
    align-items: center;
    margin-left: auto;        /* ← 右寄せ */
  }

@media screen and (min-width: 769px) {
  body.home div.custom-header-right {
    gap: 8px 20px !important;
	  
  }
}


body.home .custom-header-right a:first-child {
  margin-left: 0;
}

body.home .custom-header-right a:hover {
  color: #333;
  text-decoration: underline;
}

/* ▼ ナビゲーションの設定 */
body.home #navi, body.home #navi ul {
  display: flex;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}

body.home #navi li a {
  text-decoration: none;
  font-size: 1rem;
  color: #333;
  transition: color 0.2s ease;
}

body.home #navi li a:hover {
  color: #5c4e4e;
}


body.home .custom-header-left::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url('http://asagi-tax.jp.testrs.jp/002/wp-content/uploads/2025/06/cropped-Asagi_zeirishi_logoDesign-A.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 8px;
}

body.home .custom-header-right {
  padding-right: 80px;
}


body.home .custom-header-right a {
  margin-left: 20px;
  text-decoration: none;
  color: #555;
  font-size: 0.95rem;
  font-weight: 400; /* ← 明示的にノーマル指定！ */
  transition: all 0.2s ease;
}

body.home .custom-header-right a:first-child {
  margin-left: 0;
}

body.home .custom-header-right a:hover {
  color: #333;
  text-decoration: underline;
}

body.home #navi, body.home #navi ul {
  display: flex;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}

body.home #navi li a {
  text-decoration: none;
  font-size: 1rem;
  color: #333;
  transition: color 0.2s ease;
}

body.home #navi li a:hover {
  color: #5c4e4e;
}



/* ▼ NEWSセクション */
body.home .news-section {
  padding: 100px 5%;
  background-color: #ffffff;
  font-family: "Zen Old Mincho", serif;
}

body.home .news-container {
  display: flex;
  align-items: center;
  gap: 48px;
  max-width: 1080px;
  margin: 0 auto;
  flex-wrap: wrap;
}

body.home .news-label {
  flex: 0 0 300px;
  padding-right: 12px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

body.home .news-label h2 {
  margin: 0;
  padding: 0;
  background: transparent;
  color: #000;
  font-weight: bold;
  font-size: 24px;
}

body.home .news-content {
  flex: 1;
  margin-left: 200px;
}

body.home .news-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

body.home .news-content li {
  font-size: 1rem;
  color: #555;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
}

/* ▼ カードメニュー（gridに変更） */
body.home .card-menu {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* ← 3列固定 */
  gap: 32px;
  justify-content: center;
  padding: 60px 0 120px;
  max-width: 800px; /* ← 真ん中で幅制限 */
  margin: 0 auto;
}

body.home .card {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 140px;
  text-decoration: none;
  transition: all 0.3s ease;
  padding: 16px;
}

body.home .card:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
}

body.home .card-title {
  font-size: 1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 8px;
}

body.home .card-desc {
  font-size: 0.9rem;
  color: #666;
}

/* ▼ スマホ対応（1列に落とす） */
@media screen and (max-width: 768px) {
  body.home .card-menu {
    grid-template-columns: 1fr;
    max-width: 90%;
  }
}


/* ▼ レスポンシブ（スマホでは縦並び） */
@media screen and (max-width: 768px) {
  body.home .card {
    width: 80%;
    max-width: none;
  }
}


/* ▼ Aboutセクション */
body.home .about-section {
  padding: 100px 5%;
  background-color: #ffffff;
  font-family: "Zen Old Mincho", serif;
}

body.home .about-container {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1080px;
  margin: 0 auto;
  gap: 48px;
  flex-wrap: wrap;
}

body.home .about-image {
  flex: 0 0 360px;
}

body.home .about-image img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

body.home .about-text {
  flex: 1;
  max-width: 600px;
  margin-left: auto;
}

body.home .about-text h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
  color: #333;
  background: none !important;
  padding: 0 !important;
  margin-top: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

body.home .about-text p {
  font-size: 1.1rem;
  color: #555;
  line-height: 2;
}

/* ▼ サービス案内セクション */
body.home .service-section {
  padding: 100px 5%;
  background-color: #ffffff;
  font-family: "Zen Old Mincho", serif;
}

body.home .service-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 64px;
  max-width: 1080px;
  margin: 0 auto;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}

body.home .service-image {
  flex: 0 0 400px;
}

body.home .service-image img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

body.home .service-text {
  flex: 1;
  text-align: left;
}

body.home .service-text h2 {
  background-color: transparent;
  padding: 0;
  display: block;
  font-size: 2rem;
  color: #333;
}

body.home .service-text p {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 1rem;
  line-height: 1.9;
}

body.home .service-list {
  list-style: disc;
  padding-left: 1.5rem;
  display: inline-block;
  text-align: left;
  color: #444;
  font-size: 1rem;
}

/* ▼ Priceセクション */
body.home .price-section {
  padding: 100px 5%;
  background-color: #ffffff;
  font-family: "Zen Old Mincho", serif;
  text-align: center;
}

body.home .price-section h2 {
  font-size: 2rem;
  color: #333;
  margin-bottom: 24px;
}

body.home .price-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1rem;
  color: #444;
}

.price-table th,
body.home .price-table td {
  border: 1px solid #ddd;
  padding: 12px;
  text-align: left;
}

body.home .price-table th {
  background-color: #f8f8f8;
  font-weight: bold;
}

/* ▼ 関与先の声セクション */
.voice-section {
  padding: 100px 5%;
  background-color: transparent; /* ← 白背景削除 */
  font-family: "Zen Old Mincho", serif;
}

.voice-container {
  display: flex; 
  align-items: center; 
  justify-content: center; 
  gap: 64px; 
  max-width: 1080px; 
  margin: 0 auto; 
  flex-wrap: wrap; 
  flex-direction: row-reverse; 
}

body.home .voice-image {
  flex: 0 0 400px;
}

.voice-text {
  flex: 1;
  font-size: 1.05rem;
  color: #444;
  line-height: 1.9;
}

.voice-text h2 {
  font-size: 2rem;
  margin-bottom: 24px;
  color: #333;
  font-weight: 700;
}

.voice-label {
  flex: 0 0 160px; /* ← 表示領域幅を少し広げてもええ */
  font-size: 2rem;
  font-weight: bold;
  font-family: 'Noto Sans JP', serif !important; /* ← Priceと同じに固定 */
  color: #333;
  text-align: left; /* ← 中央寄せ解除 */
  margin-right: 80px; /* ← containerにcenter入ってる場合に左寄せ調整 */
}

/* ▼ Voiceセクションの More…リンク */
.more-link-wrapper {
  margin-top: 24px;
  text-align: left;
}

.more-link {
  font-size: 18px;
  font-weight: 500;
  color: #333;
  text-decoration: none;
  position: relative;
  padding-right: 6px;
  transition: all 0.3s ease;
  letter-spacing: 0.5px;
}

.more-link::after {
  content: '→';
  margin-left: 4px;
  font-size: 16px;
  opacity: 0.6;
  transition: opacity 0.3s ease;
}

.more-link:hover {
  opacity: 0.7;
}

.more-link:hover::after {
  opacity: 1;
}


@media (max-width: 768px) {
  .voice-container {
    flex-direction: column;
    align-items: flex-start;
  }

  .voice-label {
    text-align: left;
    margin-top: 20px;
    font-size: 1.8rem;
  }
}




/* ▼ よくある質問セクション */
body.home .faq-section {
  padding: 100px 5%;
  background-color: transparent !important;
  font-family: "Zen Old Mincho", serif;
}

body.home .faq-inner {
  max-width: 960px;
  margin: 0 auto;
}

body.home .faq-inner h2 {
  font-size: 2rem;
  color: #333;
  margin-bottom: 32px;
  background: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body.home .faq-item {
  margin-bottom: 32px;
  display: block;  /* ← flexの影響を排除 */
}

body.home .faq-q {
  display: block;
  font-size: 1.1rem;
  font-weight: bold;
  color: #444;
  margin-bottom: 8px;
}

body.home .faq-a {
  display: block;
  font-size: 1rem;
  color: #666;
  line-height: 1.9;
}



/* ▼ 全体背景白＆h2背景打ち消し */
body,
.section-inner,
.about-section,
.service-section,
.price-section,
.news-section,
.faq-section,
body.home .contact-section {
  background-color: #ffffff !important;
}

.section-inner h2,
.about-text h2,
.service-text h2,
.price-section h2,
.faq-section h2,
body.home .contact-section h2 {
  background: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

@media screen and (max-width: 768px) {
  /* トップセクション */
  .transparent-background-wrapper {
    padding: 40px 5%;
  justify-content: center;
}

body.home .transparent-background-content {
  text-align: center;
  max-width: 90%;
  padding: 32px 24px;
}

body.home .transparent-background-content h1 {
  font-size: 32px;
}

body.home .transparent-background-content p {
  font-size: 16px;
}

/* NEWSセクション */
body.home .news-containerer {
  flex-direction: column;
}

body.home .news-label {
  flex: 0 0 auto;
  margin-bottom: 16px;
  justify-content: center;
}

body.home .news-label h2 {
  font-size: 1.6rem;
  text-align: center;
}

body.home .news-content {
  margin-left: 0;
}

body.home .news-content li {
  font-size: 0.95rem;
}

/* カードメニュー */
body.home .card-menunu {
  flex-direction: column;
  gap: 20px;
}

body.home .card {
  width: 80vw;
}

/* Aboutセクション */
body.home .about-containerer {
  flex-direction: column;
  text-align: center;
  gap: 32px;
}

body.home .about-text h2 {
  font-size: 1.6rem;
}

body.home .about-text p {
  font-size: 1rem;
}

/* サービス案内 */
body.home .service-containerer {
  flex-direction: column;
  text-align: center;
}

body.home .service-text {
  text-align: center;
}

body.home .service-text h2 {
  font-size: 1.6rem;
}

body.home .service-list {
  text-align: left;
  margin: 0 auto;
  display: inline-block;
}

/* Priceセクション */
body.home .price-section h2h2 {
  font-size: 1.6rem;
}

/* FAQセクション */
body.home .faq-inner h2h2 {
  font-size: 1.6rem;
  text-align: center;
}

body.home .faq-item h3 {
  font-size: 1rem;
}

body.home .faq-item p {
  font-size: 0.95rem;
 line-height: 1.9;}

}

.about-section,
.service-section,
.price-section,
body.home .faq-section {
  padding: 120px 5%;
  /* ← 各セクション全体をゆったりに */;
}

body.home .card-menu-wrapper {
  padding: 60px 0 120px;
  /* 上60px 下120pxでメリハリ */;
}

/* ▼ スムーススクロール設定 */
html {
  scroll-behavior: smooth;
}

body.home .more-link-wrapper {
  text-align: right;
  margin-top: 24px;
}

body.home .more-link {
  font-size: 18px;
  /* ← 大きめに！ */
  font-weight: 500;
  color: #333;
  text-decoration: none;
  position: relative;
  padding-right: 6px;
  transition: all 0.3s ease;
  letter-spacing: 0.5px;
}

body.home .more-link::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1.5px;
  background-color: #999;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}

body.home .more-link:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

body.home .more-link:hover {
  color: #000;
}

body {
  font-family: 'Noto Sans JP', sans-serif;
}

body {
  font-family: 'Noto Sans JP', sans-serif !important;
}

/* 特に上書きが必要そうなパーツ */
.news-section,
.news-label,
.news-content,
.news-section li,
h2, h3, h4, h5, h6,
p,
a,
body.home .more-link {
  font-family: 'Noto Sans JP', sans-serif !important;
}

/* サービス案内のフォントを統一する */
.service-section,
.service-section *,
.service-content,
.service-content *,
.service-text,
.service-text *,
body.home .service-section li {
  font-family: 'Noto Sans JP', sans-serif !important;
}

body.home .sub-copy {
  margin-top: 40px;
  font-family: 'Noto Sans JP', sans-serif;
}

body.home .sub-copy h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 12px;
}

body.home .sub-copy p {
  font-size: 16px;
  line-height: 2;
}

body.home .transparent-background-wrapper .transparent-background-content .sub-copy h2 {
  font-family: 'Noto Sans JP', sans-serif !important;
  color: #333 !important;
  text-shadow: none !important;
  background: none !important;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Zen Old Mincho", serif;
  background: url("http://asagi-tax.jp.testrs.jp/002/wp-content/uploads/2025/07/壁紙.png") no-repeat center center fixed;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

html,
main,
#main,
.site-main,
.wp-site-blocks,
body > div:first-child,
body > div.wp-block-template-part,
body > div[class*="wp-block"],
body > div[class*="template-part"],
body > header {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html {
  background: url("http://asagi-tax.jp.testrs.jp/002/wp-content/uploads/2025/07/壁紙.png") no-repeat center top fixed;
  background-size: cover;
}

body {
  background-color: transparent !important;
}

/* ▼ セクション本体の白背景を透明化 */
.news-section,
.price-section,
.service-section,
.faq-section,
body.home .contact-section {
  background-color: transparent !important;
  background: none !important;
}

/* ▼ 各セクション内の .wp-block-group などの構造系も透明に */
.news-section .wp-block-group,
.price-section .wp-block-group,
.service-section .wp-block-group,
.faq-section .wp-block-group,
.contact-section .wp-block-group,
.news-section .wp-block-cover,
.price-section .wp-block-cover,
.service-section .wp-block-cover,
.faq-section .wp-block-cover,
.contact-section .wp-block-cover,
.news-section .wp-block-columns,
.price-section .wp-block-columns,
.service-section .wp-block-columns,
.faq-section .wp-block-columns,
.contact-section .wp-block-columns,
.news-section > div,
.price-section > div,
.service-section > div,
.faq-section > div,
body.home .contact-section > div {
  background-color: transparent !important;
  background: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* ▼ About専用ヘッダー（TOPとは別名） */
.about-page .about-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 8%;
  background-color: rgba(255, 255, 255, 0.92);
  font-family: "Zen Old Mincho", serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  z-index: 100;
  position: relative;
}

.about-page .about-header-left {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 20px;
  font-weight: bold;
}

.about-page .about-header-left img {
  height: 36px;
}

.about-page .about-header-right a {
  margin-left: 24px;
  text-decoration: none;
  color: #444;
  font-size: 16px;
  transition: color 0.3s;
}

.about-page .about-header-right a:hover {
  color: #7c6e9e;
}

/* ▼ About本体 */
.about-page .about-wrapper {
  padding: 120px 8% 80px;
  max-width: 1080px;
  margin: 0 auto;
  font-family: "Zen Old Mincho", serif;
  color: #333;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 20px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/* ▼ 見出し */
.about-page .about-heading h2 {
  font-size: 28px;
  margin-bottom: 20px;
  text-align: center;
  color: #222;
}

.about-page .about-heading p {
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 40px;
}

/* ▼ プロフィール2列 */
.about-page .profile-row {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
}

.about-page .profile-box {
  width: 300px;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 16px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
  padding: 24px;
  text-align: center;
}

.about-page .profile-box img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  margin-bottom: 16px;
  object-fit: cover;
}

.about-page .profile-box h3 {
  font-size: 20px;
  color: #444;
  margin-bottom: 8px;
}

.about-page .profile-box p {
  font-size: 15px;
  line-height: 1.7;
  color: #555;
}

/* ▼ 住所 */
.about-page .office-info {
  margin-top: 60px;
  text-align: center;
  font-size: 14px;
  color: #666;
  line-height: 1.8;
}

body.home .contact-block {
  text-align: left;
}


/* ▼ レスポンシブ */
@media screen and (max-width: 768px) {
  .about-page .profile-row {
    flex-direction: column;
    align-items: center;
  }

  .about-page .profile-box {
    width: 90%;
  }

  .about-page .about-wrapper {
    padding: 100px 20px 60px;
  }
}

/* ▼ SNSアイコンだけ別指定で微調整 */
body.home-right a.sns-icon {
  margin-left: 12px;  /* ← 通常リンクより控えめに */
  padding: 0;
  display: inline-flex;
  align-items: center;
}

body.home .custom-header-right a.sns-icon img {
  height: 24px;
  width: 24px;
  display: block;
  object-fit: contain;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

@media screen and (max-width: 768px) {
  .custom-header {
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 12px 5%;
    gap: 12px;
  }

  .custom-header-left {
    flex: 1 1 auto;
    font-size: 1rem;
    white-space: nowrap;
  }

  .custom-header-right {
    flex: 2 1 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 8px 12px;
    padding-right: 0;
  }

  .custom-header-right a {
    font-size: 13px;
    padding: 4px 6px;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
  }

  .custom-header-right a.sns-icon img {
    height: 24px;
    width: 24px;
    margin: 0;
    vertical-align: middle;
  }

  /* TOPページ専用 */
  body.home .transparent-background-content {
    padding-top: 50vh;
    padding-bottom: 10vh;
    padding-left: 6%;
    padding-right: 6%;
  }

  body.home .transparent-background-content h1 {
    font-size: 2rem;
    line-height: 1.5;
  }

  body.home .news-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  body.home .price-section .news-container {
    flex-direction: column;
    align-items: center;
  }

  body.home .price-section .news-label {
    order: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 12px;
  }

  body.home .price-section .news-label h2 {
    font-size: 1.8rem;
  }

  body.home .price-section .news-content {
    order: 1;
    width: 100%;
    text-align: center;
  }

  body.home .price-section .price-table {
    margin: 0 auto;
    width: 90%;
    font-size: 0.95rem;
  }

  body.home .price-section .price-table th,
  body.home .price-section .price-table td {
    text-align: left;
    padding: 8px;
  }
	
  body.home .custom-header-right {
  padding-right: 0px;
	
 }

@media screen and (max-width: 768px) {
  body.home .sns-wrapper {
    display: flex;
    gap: 16px; /* ← ここでLINEとInstaの間を調整 */
    margin-left: 18px; /* ← Q&Aとのスキマ調整はここで */
  }

  body.home .sns-icon {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.home .sns-icon img {
    height: 22px;
    width: 22px;
    display: block;
    margin: 0;
  }
}

@media screen and (max-width: 768px) {
  body.home .transparent-background-content {
    padding-top: 30vh; /* ← 被らない位置まで下げる */
    padding-bottom: 10vh;
    padding-left: 6%;
    padding-right: 6%;
    text-align: center;
  }

  body.home .transparent-background-content h1 {
    font-size: 1.6rem;
    line-height: 1.4;
    letter-spacing: 0.02em;
    word-break: keep-all;
    white-space: normal;
  }

  body.home .transparent-background-content h2 {
    font-size: 1.2rem;
    line-height: 1.6;
    margin-top: 1.2rem;
  }

  body.home .transparent-background-content p {
    font-size: 0.95rem;
    line-height: 1.8;
    margin-top: 1.2rem;
    text-align: left;
  }
}

	