.entry-title {
  display: none;
}

/* 初期状態：モバイル用は隠す */
.hero-mobile {
  display: none;
}

/* スマホではPC用を隠してモバイル用を表示 */
@media (max-width: 768px) {
  .hero-pc {
    display: none !important;
  }

  .hero-mobile {
    display: flex !important;
    min-height: 600px;
    align-items: center;
    justify-content: center;
  }

  .hero-mobile h1 {
    margin-top: 20px;
    font-size: 28px;
    line-height: 1.35;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
  }

  .hero-mobile p {
    font-size: 14px;
    line-height: 1.7;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
  }
}
.wpcf7 {
  max-width: 500px;
  margin: 0 auto;
}
.wpcf7 textarea {
  height: 140px;
}

.wpcf7 input {
  height: 40px;
}
.wpcf7 textarea {
  height: 100px !important;
}

.wpcf7 input {
  height: 40px;
}
.wpcf7-submit {
  background-color: #1e73be;
  color: #fff;
  font-size: 16px;
  padding: 12px 24px;
  border-radius: 6px;
  border: none;
}
.wp-block-button__link {
  padding: 12px 24px;
  font-size: 16px;
  border-radius: 6px;
}

@media (max-width: 768px) {
  .wp-block-button__link {
    width: 85%;
    margin: 0 auto;
    display: block;
    text-align: center;
  }
}
@media (max-width: 768px) {
  .wp-block-button__link {
    font-size: 14px !important;
    padding: 10px 16px !important;
    border-radius: 6px !important;
    width: auto !important;
    display: inline-block !important;
  }
}
/* CTAボタン 微調整 */

/* ① 余白 */
.wp-block-button {
  margin-top: 20px;
  margin-bottom: 20px;
}

/* ② 高級感（影） */
.wp-block-button__link {
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* ③ ホバー（PC用） */
.wp-block-button__link:hover {
  transform: translateY(-2px);
}
/* コンテンツ幅を中央に寄せる */
.entry-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
}
.wp-block-columns {
  margin-top: 20px;
  margin-bottom: 40px;
}
.wp-block-button {
  margin-top: 30px;
}
/* カラム内の見出し間の余白を詰める */
.wp-block-columns h3 {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* リストとの間も少し詰める */
.wp-block-columns ul {
  margin-top: 5px;
}
/* 「台湾と北海道、それぞれの魅力」セクションの余白調整 */
.wp-block-columns {
  gap: 30px;
  margin-top: 10px !important;
  margin-bottom: 20px !important;
}

.wp-block-columns .wp-block-column > *:first-child {
  margin-top: 0 !important;
}

.wp-block-columns .wp-block-column p {
  margin-top: 6px !important;
  margin-bottom: 6px !important;
  line-height: 1.6;
}

.wp-block-columns .wp-block-column ul {
  margin-top: 6px !important;
  margin-bottom: 10px !important;
  padding-left: 1.2em;
}

.wp-block-columns .wp-block-column li {
  margin-bottom: 4px !important;
}
/* H2の下の余白を詰める（Columnsの上余白を調整） */
.wp-block-heading + .wp-block-columns {
  margin-top: 10px !important;
}
.wp-block-heading + .wp-block-columns {
  margin-top: 0px !important;
}
.wp-block-heading + .wp-block-columns,
.entry-content h2 + .wp-block-columns {
  margin-top: 10px !important;
}
.wp-block-column > * {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* 2カラム内の縦位置を強制的に上に寄せる */
.entry-content .wp-block-columns {
  align-items: flex-start !important;
}

.entry-content .wp-block-column {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-self: flex-start !important;
}

.entry-content .wp-block-column > *:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* カラムの縦位置を強制的に上揃え */
.wp-block-columns {
  align-items: flex-start !important;
}

.wp-block-column {
  justify-content: flex-start !important;
}
.wp-block-column {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* 会社概要ページの表のデザイン修正 */
.zs-profile-table {
    width: 100% !important;
    margin-bottom: 2em;
}

.zs-profile-table table {
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse;
}

/* 1列目（項目）の幅を30%に固定 */
.zs-profile-table table tr td:first-child,
.zs-profile-table table tr th:first-child {
    width: 30% !important;
    background-color: #f8f8f8; /* 項目側を少しグレーにして見やすくします */
    font-weight: bold;
}

/* 2列目（内容）の幅を70%に固定 */
.zs-profile-table table tr td:last-child {
    width: 70% !important;
}
/* 記事カードを指マークにし、ホバーで浮かせ、タイトルに色をつける */
.zs-blog-card {
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}
.zs-blog-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
}
.zs-blog-card h3 {
    color: #1a3c5e !important;
    pointer-events: none; /* カード全体のクリックを優先させるため */
}
/* 非表示になっている記事タイトルを強制的に表示し、デザインを整える */
.single-post .entry-header {
    display: block !important;
    margin-bottom: 30px !important;
    padding-bottom: 20px !important;
    border-bottom: 2px solid #1a3c5e !important;
    text-align: left !important;
}

.single-post .entry-title {
    font-size: 2.2rem !important;
    font-weight: 800 !important;
    color: #333 !important;
    line-height: 1.4 !important;
    display: block !important;
}

/* 投稿者名や日付（メタ情報）の見た目調整 */
.single-post .entry-meta {
    margin-top: 10px !important;
    font-size: 0.9rem !important;
    color: #666 !important;
}
/* 1. ヘッダー全体の上下余白を削る */
.site-header {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

/* 2. ロゴ・会社名エリアの高さを抑える */
.site-branding {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

/* 3. メニュー（ナビゲーション）の各項目の高さを調整 */
.main-navigation a {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    line-height: 1.2 !important;
}

/* 4. 言語切り替えスイッチの配置を少し上に調整（ヘッダーが狭まるため） */
#zs-custom-switcher {
    top: 65px !important; /* ヘッダーが狭くなる分、少し上に移動 */
}

/* 5. ページ本文の開始位置を調整（ヘッダーが狭くなる分、上に詰める） */
.zs-container, 
.zs-blog-container {
    padding-top: 85px !important; /* 100pxから85pxに短縮 */
}

/* モバイル時の微調整 */
@media (max-width: 991px) {
    .zs-container, 
    .zs-blog-container {
        padding-top: 70px !important;
    }
}
/* --- 全ページ共通：ヘッダー固定とスリム化 --- */
.site-header {
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background-color: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

/* ロゴエリアのスリム化 */
.site-branding {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

/* コンテンツがヘッダーに被らないように調整 */
body.single-post .site-content,
body.page .site-content {
    margin-top: 75px !important;
}

/* 言語スイッチの共通デザイン */
#zs-custom-switcher {
    position: fixed !important;
    z-index: 999999 !important;
    background: #fff !important;
    padding: 4px 6px !important;
    border-radius: 50px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
    border: 1px solid #e0e0e0 !important;
    display: flex !important;
    align-items: center !important;
    top: 65px !important;
    right: 20px !important;
}

.zs-ls-btn {
    padding: 6px 14px !important;
    font-size: 12px !important;
    font-weight: bold !important;
    color: #666 !important;
    text-decoration: none !important;
    border-radius: 50px !important;
    white-space: nowrap !important;
}

.zs-ls-active { background: #1a3c5e !important; color: #fff !important; }
.zs-ls-separator { color: #ddd !important; margin: 0 2px !important; }

/* モバイル対応 */
@media (max-width: 991px) {
    #zs-custom-switcher { top: 15px !important; right: 70px !important; }
}