/*
Theme Name: Lightning Child - aund
Template: lightning
Description: aundサイト用のLightning子テーマ。カスタムブロックパターンとスタイルを含みます。
Author: aund
Version: 1.0.0
Text Domain: lightning-child-aund
*/

/* ==========================================================================
   aund カスタムスタイル
   ========================================================================== */

/* --------------------------------------------------------------------------
   CSS変数（カラースキーム）
   -------------------------------------------------------------------------- */
:root {
    /* プライマリカラー（紫〜青グラデーション） */
    --aund-primary: #6B5B95;
    --aund-primary-dark: #4A4070;
    --aund-primary-light: #8B7BB5;
    
    /* セカンダリカラー（青） */
    --aund-secondary: #4A90D9;
    --aund-secondary-dark: #3A70B9;
    
    /* アクセントカラー（オレンジ/コーラル） */
    --aund-accent: #F26522;
    --aund-accent-hover: #E05512;
    --aund-accent-light: #FF8A5B;
    
    /* グラデーション */
    --aund-gradient-primary: linear-gradient(135deg, #6B5B95 0%, #4A90D9 100%);
    --aund-gradient-dark: linear-gradient(135deg, #2C2C54 0%, #474787 100%);
    
    /* 背景色 */
    --aund-bg-white: #FFFFFF;
    --aund-bg-light: #F8F9FA;
    --aund-bg-gray: #F0F0F0;
    --aund-bg-dark: #2C2C54;
    
    /* テキスト色 */
    --aund-text-primary: #333333;
    --aund-text-secondary: #666666;
    --aund-text-light: #999999;
    --aund-text-white: #FFFFFF;
    
    /* ボーダー */
    --aund-border: #E0E0E0;
    --aund-border-light: #F0F0F0;
    
    /* シャドウ */
    --aund-shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.08);
    --aund-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
    --aund-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
    
    /* 角丸 */
    --aund-radius-sm: 4px;
    --aund-radius-md: 8px;
    --aund-radius-lg: 16px;
    --aund-radius-xl: 24px;
    
    /* スペーシング */
    --aund-section-padding: 80px;
    --aund-section-padding-mobile: 48px;
}

/* --------------------------------------------------------------------------
   セクション共通スタイル
   -------------------------------------------------------------------------- */
.aund-section {
    padding: var(--aund-section-padding) 0;
}

@media (max-width: 768px) {
    .aund-section {
        padding: var(--aund-section-padding-mobile) 0;
    }
}

.aund-section--white {
    background-color: var(--aund-bg-white);
}

.aund-section--light {
    background-color: var(--aund-bg-light);
}

.aund-section--dark {
    background: var(--aund-gradient-dark);
    color: var(--aund-text-white);
}

.aund-section__title {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 16px;
    color: var(--aund-text-primary);
}

.aund-section--dark .aund-section__title {
    color: var(--aund-text-white);
}

.aund-section__subtitle {
    font-size: 1rem;
    text-align: center;
    color: var(--aund-text-secondary);
    margin-bottom: 48px;
}

.aund-section--dark .aund-section__subtitle {
    color: rgba(255, 255, 255, 0.8);
}

/* --------------------------------------------------------------------------
   Heroセクション（カバーブロック対応）
   -------------------------------------------------------------------------- */

/* カバーブロックのオーバーレイ色 - 視認性を高めた設定 */
.aund-hero-cover .wp-block-cover__background {
    background-color: rgba(20, 30, 40, 0.75) !important;  /* ダークブルーグレー 75% */
}

/* Heroセクション内のテキスト - 視認性向上 */
.aund-hero-cover h1,
.aund-hero-cover .wp-block-heading {
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.aund-hero-cover p {
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}

/* Heroセクション内のボタン - オレンジ色（プライマリ） */
.aund-hero-cover .wp-block-button__link.has-vivid-red-background-color,
.aund-hero-cover .wp-block-button .has-vivid-red-background-color {
    background-color: #FF6D00 !important;
    border: 2px solid #FF6D00 !important;
    color: #ffffff !important;
    font-weight: 700;
    padding: 16px 32px;
    box-shadow: 0 4px 12px rgba(255, 109, 0, 0.4);
    transition: all 0.3s ease;
}

.aund-hero-cover .wp-block-button__link.has-vivid-red-background-color:hover {
    background-color: #E65100 !important;
    border-color: #E65100 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(255, 109, 0, 0.5);
}

/* Heroセクション内のセカンダリボタン - 白背景 */
.aund-hero-cover .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: #ffffff !important;
    border: 2px solid #ffffff !important;
    color: #263238 !important;
    font-weight: 700;
    padding: 16px 32px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.aund-hero-cover .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #f5f5f5 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}

/* Heroセクション内のタグ */
.aund-hero-cover .has-black-background-color {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* カバーブロック全体 */
.aund-hero-cover {
    position: relative;
}

.aund-hero-cover .wp-block-cover__inner-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Heroタイトル */
.aund-hero__title {
    color: var(--aund-text-white) !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.aund-hero__title span {
    color: #FF6D00 !important;
}

/* Hero説明文 */
.aund-hero__description {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.aund-hero__description strong {
    color: var(--aund-text-white);
}

/* Heroタグ */
.aund-hero__tag {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--aund-text-white);
    transition: all 0.3s ease;
}

.aund-hero__tag:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .aund-hero-cover {
        min-height: 500px !important;
    }
    
    .aund-hero__title {
        font-size: 1.75rem !important;
    }
    
    .aund-hero__description {
        font-size: 1rem !important;
    }
    
    .aund-hero__tag {
        font-size: 0.8rem !important;
        padding: 8px 14px !important;
    }
}

/* 旧スタイル（互換性のため残す） */
.aund-hero {
    background: var(--aund-gradient-dark);
    color: var(--aund-text-white);
    padding: 100px 0 80px;
    position: relative;
    overflow: hidden;
}

/* --------------------------------------------------------------------------
   CTAボタン
   -------------------------------------------------------------------------- */
.aund-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.aund-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 32px;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: var(--aund-radius-md);
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
}

.aund-btn--primary {
    background: var(--aund-accent);
    color: var(--aund-text-white);
    box-shadow: 0 4px 12px rgba(242, 101, 34, 0.3);
}

.aund-btn--primary:hover {
    background: var(--aund-accent-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(242, 101, 34, 0.4);
    color: var(--aund-text-white);
}

.aund-btn--secondary {
    background: transparent;
    color: var(--aund-text-white);
    border: 2px solid rgba(255, 255, 255, 0.5);
}

.aund-btn--secondary:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: var(--aund-text-white);
    color: var(--aund-text-white);
}

.aund-btn--outline {
    background: transparent;
    color: var(--aund-accent);
    border: 2px solid var(--aund-accent);
}

.aund-btn--outline:hover {
    background: var(--aund-accent);
    color: var(--aund-text-white);
}

/* --------------------------------------------------------------------------
   課題提起セクション（Problems）
   -------------------------------------------------------------------------- */
.aund-problems {
    background-color: #FFF3E0;  /* ワイヤーに合わせた暖色系背景 */
}

.aund-pain__lead {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.aund-pain__desc {
    color: var(--aund-text-secondary);
    margin-bottom: 2rem;
}

.aund-problems__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.aund-problem-card {
    background: var(--aund-bg-white);
    padding: 32px;
    border-radius: var(--aund-radius-lg);
    box-shadow: var(--aund-shadow-sm);
    transition: all 0.3s ease;
}

.aund-problem-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-md);
}

.aund-problem-card__icon {
    width: 56px;
    height: 56px;
    background: var(--aund-bg-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    font-size: 1.5rem;
}

.aund-problem-card__title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--aund-text-primary);
}

.aund-problem-card__text {
    font-size: 0.9375rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
    margin-bottom: 12px;
}

.aund-problem-card__link {
    margin-top: auto;
}

.aund-problem-card__link a {
    color: var(--aund-primary);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.aund-problem-card__link a:hover {
    color: var(--aund-primary-dark);
    text-decoration: underline;
}

/* --------------------------------------------------------------------------
   ソリューションセクション
   -------------------------------------------------------------------------- */
.aund-solution {
    background: var(--aund-bg-white);
}

.aund-solution__content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: start;
}

@media (max-width: 768px) {
    .aund-solution__content {
        grid-template-columns: 1fr;
    }
}

.aund-solution__item {
    display: flex;
    gap: 16px;
    margin-bottom: 24px;
}

.aund-solution__check {
    width: 24px;
    height: 24px;
    background: var(--aund-accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
    margin-top: 2px;
}

.aund-solution__item-title {
    font-weight: 600;
    margin-bottom: 4px;
    color: var(--aund-text-primary);
}

.aund-solution__item-text {
    font-size: 0.9375rem;
    color: var(--aund-text-secondary);
    line-height: 1.6;
}

/* --------------------------------------------------------------------------
   ソリューションセクション追加スタイル
   -------------------------------------------------------------------------- */
.aund-solution__pillar {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 32px;
    box-shadow: var(--aund-shadow-md);
    border-top: 4px solid var(--aund-secondary);
}

.aund-solution__pillar--green {
    border-top-color: #2E7D32;
}

.aund-solution__pillar-icon {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.aund-solution__pillar-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.aund-solution__pillar-title small {
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--aund-text-secondary);
    display: block;
    margin-top: 4px;
}

.aund-solution__pillar-desc {
    color: var(--aund-text-secondary);
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.aund-solution__step {
    display: flex;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--aund-border);
}

.aund-solution__step:last-child {
    border-bottom: none;
}

.aund-solution__step-num {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    background: var(--aund-secondary);
    color: var(--aund-text-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
}

.aund-solution__pillar--green .aund-solution__step-num {
    background: #2E7D32;
}

.aund-text-muted {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
}

/* --------------------------------------------------------------------------
   サービス内容セクション
   -------------------------------------------------------------------------- */
.aund-services {
    background: var(--aund-bg-white);
}

.aund-services__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 24px;
    margin-bottom: 24px;
}

.aund-service-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    overflow: hidden;
    box-shadow: var(--aund-shadow-md);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.aund-service-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-lg);
}

/* サービスカードヘッダー */
.aund-service-card__header {
    background: var(--aund-secondary);
    color: var(--aund-text-white);
    padding: 20px;
    text-align: center;
}

.aund-service-card__header--green {
    background: #2E7D32;
}

.aund-service-card__header .aund-service-card__icon {
    font-size: 2rem;
    margin-bottom: 8px;
}

.aund-service-card__header .aund-service-card__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0;
    color: var(--aund-text-white);
}

/* サービスカードボディ */
.aund-service-card__body {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.aund-service-card__tag {
    display: inline-block;
    background: #E3F2FD;
    color: var(--aund-secondary);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 4px;
    margin-bottom: 12px;
    width: fit-content;
}

.aund-service-card__tag--green {
    background: #E8F5E9;
    color: #2E7D32;
}

.aund-service-card__desc {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    margin-bottom: 16px;
    flex-grow: 1;
    line-height: 1.7;
}

.aund-service-card__link {
    margin: 0;
}

.aund-service-card__link a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--aund-secondary);
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
}

.aund-service-card__link a:hover {
    text-decoration: underline;
}

.aund-service-card__badge {
    display: inline-block;
    background: var(--aund-accent);
    color: white;
    padding: 4px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 0 0 var(--aund-radius-sm) 0;
}

.aund-service-card__content {
    padding: 24px;
}

.aund-service-card__icon {
    width: 48px;
    height: 48px;
    background: var(--aund-gradient-primary);
    border-radius: var(--aund-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
    margin-bottom: 16px;
}

.aund-service-card__title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--aund-text-primary);
}

.aund-service-card__text {
    font-size: 0.9375rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
    margin-bottom: 16px;
}

.aund-service-card__link {
    color: var(--aund-accent);
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.aund-service-card__link:hover {
    text-decoration: underline;
}

/* --------------------------------------------------------------------------
   CTAバンド（中間CTA）
   -------------------------------------------------------------------------- */
.aund-mid-cta {
    padding: 40px 0;
    background: var(--aund-bg-light);
}

.aund-mid-cta__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.aund-mid-cta__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.aund-mid-cta__desc {
    color: var(--aund-text-secondary);
    margin: 0;
}

.aund-mid-cta__buttons {
    display: flex;
    gap: 12px;
}

@media (max-width: 767px) {
    .aund-mid-cta__inner {
        flex-direction: column;
        text-align: center;
    }
    
    .aund-mid-cta__buttons {
        flex-direction: column;
        width: 100%;
    }
}

.aund-cta-band {
    background: var(--aund-gradient-primary);
    padding: 60px 0;
    text-align: center;
    color: var(--aund-text-white);
}

.aund-cta-band__title {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 16px;
}

.aund-cta-band__text {
    font-size: 1rem;
    opacity: 0.9;
    margin-bottom: 32px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* --------------------------------------------------------------------------
   導入事例セクション
   -------------------------------------------------------------------------- */
.aund-cases {
    background: var(--aund-bg-light);
}

.aund-cases__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 24px;
}

.aund-case-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    overflow: hidden;
    box-shadow: var(--aund-shadow-md);
    transition: all 0.3s ease;
}

.aund-case-card:hover {
    box-shadow: var(--aund-shadow-lg);
}

.aund-case-card__header {
    background: var(--aund-secondary);
    color: var(--aund-text-white);
    padding: 16px 20px;
}

.aund-case-card__category {
    font-size: 0.75rem;
    opacity: 0.8;
    margin-bottom: 4px;
}

.aund-case-card__header .aund-case-card__title {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: var(--aund-text-white);
}

.aund-case-card__body {
    padding: 20px;
}

.aund-case-card__section {
    margin-bottom: 16px;
}

.aund-case-card__section:last-child {
    margin-bottom: 0;
}

.aund-case-card__label {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--aund-text-secondary);
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.aund-case-card__label::before {
    content: '';
    width: 4px;
    height: 4px;
    background: var(--aund-secondary);
    border-radius: 50%;
}

.aund-case-card__text {
    font-size: 0.9rem;
    line-height: 1.7;
    color: var(--aund-text-primary);
    margin: 0;
}

.aund-case-card__section--result .aund-case-card__label::before {
    background: #2E7D32;
}

.aund-case-card__section--result .aund-case-card__text {
    color: #2E7D32;
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   信頼の実績セクション
   -------------------------------------------------------------------------- */
.aund-trust {
    background: var(--aund-bg-white);
}

.aund-trust__stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 48px;
}

.aund-trust__item {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
}

.aund-trust__icon {
    font-size: 2rem;
    margin-bottom: 12px;
}

.aund-trust__title {
    font-size: 0.9rem;
    font-weight: 700;
    margin-bottom: 4px;
}

.aund-trust__desc {
    font-size: 0.8rem;
    color: var(--aund-text-secondary);
    margin: 0;
}

/* プロフィールセクション */
.aund-profile {
    display: flex;
    gap: 32px;
    align-items: flex-start;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--aund-border);
}

@media (max-width: 768px) {
    .aund-profile {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }
    
    .aund-profile__image {
        margin: 0 auto 1.5rem auto;
    }
    
    .aund-profile figure.aund-profile__image,
    .aund-profile .wp-block-image.aund-profile__image {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1.5rem;
    }
}

.aund-profile__image {
    width: 200px;
    height: 200px;
    border-radius: var(--aund-radius-lg);
    object-fit: cover;
    flex-shrink: 0;
    background: var(--aund-bg-light);
}

.aund-profile__name {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.aund-profile__role {
    color: var(--aund-text-secondary);
    margin-bottom: 1rem;
}

/* --------------------------------------------------------------------------
   FAQセクション
   -------------------------------------------------------------------------- */
.aund-faq {
    background: var(--aund-bg-white);
}

.aund-final-cta__note {
    margin-top: 1.5rem;
    font-size: 0.875rem;
    opacity: 0.7;
}

.aund-faq__list {
    max-width: 800px;
    margin: 0 auto;
}

.aund-faq-item {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    margin-bottom: 16px;
    overflow: hidden;
    box-shadow: var(--aund-shadow-sm);
}

.aund-faq-item__question {
    padding: 20px 24px;
    font-weight: 600;
    color: var(--aund-text-primary);
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.aund-faq-item__question::before {
    content: 'Q';
    background: var(--aund-accent);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    margin-right: 12px;
    flex-shrink: 0;
}

.aund-faq-item__answer {
    padding: 0 24px 20px 64px;
    color: var(--aund-text-secondary);
    line-height: 1.7;
    position: relative;
}

.aund-faq-item__answer::before {
    content: 'A';
    background: var(--aund-secondary);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    font-weight: 700;
    flex-shrink: 0;
    position: absolute;
    left: 24px;
    top: 0;
}

/* --------------------------------------------------------------------------
   最終CTAセクション
   -------------------------------------------------------------------------- */
.aund-final-cta {
    background: var(--aund-gradient-dark);
    padding: 80px 0;
    text-align: center;
    color: var(--aund-text-white);
}

.aund-final-cta__title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 16px;
}

.aund-final-cta__text {
    font-size: 1rem;
    opacity: 0.9;
    margin-bottom: 40px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.aund-final-cta__buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
}

/* --------------------------------------------------------------------------
   VK Blocksのスタイル上書き
   -------------------------------------------------------------------------- */
/* フルワイドブロック */
.vk_outer.aund-fullwidth {
    padding: var(--aund-section-padding) 0;
}

/* VKボタン */
.vk_button .vk_button_link.aund-primary {
    background: var(--aund-accent) !important;
    border-color: var(--aund-accent) !important;
}

.vk_button .vk_button_link.aund-primary:hover {
    background: var(--aund-accent-hover) !important;
    border-color: var(--aund-accent-hover) !important;
}

/* VK FAQブロック */
.vk_faq .vk_faq_title::before {
    background: var(--aund-accent);
}

/* --------------------------------------------------------------------------
   WordPressボタンのスタイル上書き（青色問題の修正）
   -------------------------------------------------------------------------- */
/* プライマリボタン（オレンジ背景） */
.wp-block-button.aund-btn-primary .wp-block-button__link,
.wp-block-button.is-style-fill.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 28px;
    font-weight: 700;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.wp-block-button.aund-btn-primary .wp-block-button__link:hover,
.wp-block-button.is-style-fill.aund-btn-primary .wp-block-button__link:hover {
    background-color: var(--aund-accent-hover) !important;
    border: 2px solid var(--aund-accent-hover) !important;
    transform: translateY(-2px);
}

/* アウトラインボタン（透明背景・白枠） - ダーク背景用 */
.wp-block-button.aund-btn-outline .wp-block-button__link,
.wp-block-button.is-style-outline.aund-btn-outline .wp-block-button__link,
.wp-block-button.aund-btn-outline-white .wp-block-button__link,
.wp-block-button.is-style-outline.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 28px;
    font-weight: 700;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.wp-block-button.aund-btn-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline.aund-btn-outline .wp-block-button__link:hover,
.wp-block-button.aund-btn-outline-white .wp-block-button__link:hover,
.wp-block-button.is-style-outline.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: var(--aund-text-white) !important;
}

/* セカンダリボタン（透明背景・青枠） - ライト背景用 */
.wp-block-button.aund-btn-secondary .wp-block-button__link,
.wp-block-button.is-style-outline.aund-btn-secondary .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid var(--aund-secondary) !important;
    color: var(--aund-secondary) !important;
    padding: 14px 28px;
    font-weight: 700;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.wp-block-button.aund-btn-secondary .wp-block-button__link:hover,
.wp-block-button.is-style-outline.aund-btn-secondary .wp-block-button__link:hover {
    background-color: var(--aund-secondary) !important;
    color: var(--aund-text-white) !important;
}

/* Heroセクションのアウトラインボタン特別対応 */
.aund-hero .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.5) !important;
    color: var(--aund-text-white) !important;
}

.aund-hero .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: var(--aund-text-white) !important;
}

/* 最終CTAのアウトラインボタン特別対応 */
/* 2番目のボタン（30秒で課題診断）- 青背景 */
.aund-final-cta .wp-block-buttons .wp-block-button.is-style-outline:nth-child(2) .wp-block-button__link {
    background-color: var(--aund-secondary) !important;
    border: 2px solid var(--aund-secondary) !important;
    color: var(--aund-text-white) !important;
    font-weight: 700;
    padding: 14px 28px;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.aund-final-cta .wp-block-buttons .wp-block-button.is-style-outline:nth-child(2) .wp-block-button__link:hover {
    background-color: var(--aund-secondary-dark) !important;
    border-color: var(--aund-secondary-dark) !important;
    transform: translateY(-2px);
}

/* 3番目のボタン（資料をダウンロード）- 白背景 */
.aund-final-cta .wp-block-buttons .wp-block-button.is-style-outline:nth-child(3) .wp-block-button__link {
    background-color: var(--aund-bg-white) !important;
    border: 2px solid var(--aund-bg-white) !important;
    color: var(--aund-text-primary) !important;
    font-weight: 700;
    padding: 14px 28px;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.aund-final-cta .wp-block-buttons .wp-block-button.is-style-outline:nth-child(3) .wp-block-button__link:hover {
    background-color: var(--aund-bg-light) !important;
    border-color: var(--aund-bg-light) !important;
    transform: translateY(-2px);
}

/* 中間CTAのボタン */
.aund-mid-cta .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: var(--aund-bg-white) !important;
    border: 2px solid var(--aund-secondary) !important;
    color: var(--aund-secondary) !important;
}

.aund-mid-cta .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: var(--aund-secondary) !important;
    color: var(--aund-text-white) !important;
}

/* --------------------------------------------------------------------------
   レスポンシブ調整
   -------------------------------------------------------------------------- */
@media (max-width: 576px) {
    .aund-cta-buttons {
        flex-direction: column;
    }
    
    .aund-btn {
        width: 100%;
        text-align: center;
    }
    
    .aund-section__title {
        font-size: 1.5rem;
    }
    
    /* ボタンコンテナを縦並びに */
    .wp-block-buttons {
        flex-direction: column;
        width: 100%;
    }
    
    /* 各ボタンを100%幅に統一 */
    .wp-block-buttons .wp-block-button {
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    .wp-block-button .wp-block-button__link {
        width: 100%;
        text-align: center;
        box-sizing: border-box;
    }
}

/* --------------------------------------------------------------------------
   固定フッターCTA・検索バーの非表示
   -------------------------------------------------------------------------- */
/* 
 * この設定はCSSで非表示にする方法です。
 * WordPress管理画面からの設定が推奨されます：
 * ExUnit > メイン設定 > 各機能のON/OFF設定
 */
.veu_searchform_fixed,
.veu_cta_footer,
.veu_fixed_footer,
.veu_contact_section,
.veu-cta-block {
    display: none !important;
}

/* 検索ブロック・検索フォームを完全非表示 */
/* サイト全体から検索を非表示（ヘッダー以外） */
.site-footer .wp-block-search,
.site-footer-content .wp-block-search,
footer .wp-block-search,
.widget_search,
.widget_block:has(.wp-block-search),
form.wp-block-search,
body:not(header) .wp-block-search {
    display: none !important;
}

/* フッター内のすべての検索関連要素 */
.site-footer form[role="search"],
footer form[role="search"],
.site-footer input[type="search"],
footer input[type="search"] {
    display: none !important;
}

/* フッターコンテンツエリア全体の検索 */
.site-footer-content form,
.site-footer-content .wp-block-search {
    display: none !important;
}

/* --------------------------------------------------------------------------
   ソリューションステップのレイアウト修正
   -------------------------------------------------------------------------- */
.aund-solution__step {
    justify-content: flex-start !important;
    text-align: left !important;
}

.aund-solution__step > * {
    margin-left: 0 !important;
    text-align: left !important;
}

/* ==========================================================================
   サービスページ用追加スタイル
   ========================================================================== */

/* --------------------------------------------------------------------------
   サービスページヒーロー
   -------------------------------------------------------------------------- */
.aund-page-hero {
    background: var(--aund-gradient-primary);
    color: var(--aund-text-white);
    padding: clamp(60px, 10vw, 100px) 20px;
    text-align: center;
}

.aund-page-hero__title {
    font-size: clamp(1.75rem, 5vw, 2.5rem);
    font-weight: 900;
    margin-bottom: 1rem;
    color: var(--aund-text-white) !important;
}

.aund-page-hero__tagline {
    font-size: 1.125rem;
    opacity: 0.9;
    color: var(--aund-text-white) !important;
}

/* --------------------------------------------------------------------------
   お客様の声セクション
   -------------------------------------------------------------------------- */
.aund-customer-voices {
    background: var(--aund-bg-light);
}

.aund-customer-voices__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.aund-voice-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 32px;
    box-shadow: var(--aund-shadow-sm);
    border-left: 4px solid var(--aund-accent);
}

.aund-voice-card__quote {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--aund-text-primary);
    margin-bottom: 16px;
    font-style: italic;
}

.aund-voice-card__author {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    text-align: right;
}

/* --------------------------------------------------------------------------
   選ばれる理由セクション
   -------------------------------------------------------------------------- */
.aund-why-aund {
    background: var(--aund-bg-white);
}

.aund-why-aund__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 32px;
}

.aund-why-card {
    text-align: center;
    padding: 24px;
}

.aund-why-card__number {
    font-size: 2.5rem;
    font-weight: 900;
    color: var(--aund-accent);
    margin-bottom: 16px;
    line-height: 1;
}

.aund-why-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--aund-text-primary);
}

.aund-why-card__desc {
    font-size: 0.95rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   導入までの流れセクション
   -------------------------------------------------------------------------- */
.aund-flow {
    background: var(--aund-bg-light);
}

.aund-flow__steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 24px;
    position: relative;
}

.aund-flow-step {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 32px 24px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
    position: relative;
}

.aund-flow-step__number {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--aund-text-white);
    background: var(--aund-secondary);
    padding: 4px 12px;
    border-radius: 20px;
    display: inline-block;
    margin-bottom: 16px;
}

.aund-flow-step__icon {
    font-size: 2.5rem;
    margin-bottom: 16px;
}

.aund-flow-step__title {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-flow-step__desc {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    margin-bottom: 12px;
    line-height: 1.6;
}

.aund-flow-step__duration {
    font-size: 0.8rem;
    color: var(--aund-accent);
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   よくある相談内容セクション
   -------------------------------------------------------------------------- */
.aund-consultation-examples {
    background: var(--aund-bg-white);
}

.aund-consultation__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.aund-consultation-card {
    background: var(--aund-bg-light);
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    text-align: center;
    transition: all 0.3s ease;
}

.aund-consultation-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-md);
}

.aund-consultation-card__icon {
    font-size: 2rem;
    margin-bottom: 12px;
}

.aund-consultation-card__text {
    font-size: 0.95rem;
    color: var(--aund-text-primary);
    font-weight: 500;
    line-height: 1.6;
}

/* --------------------------------------------------------------------------
   関連リソースセクション
   -------------------------------------------------------------------------- */
.aund-related-resources {
    background: var(--aund-bg-light);
}

.aund-resources__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.aund-resource-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 32px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
    transition: all 0.3s ease;
}

.aund-resource-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-md);
}

.aund-resource-card__icon {
    font-size: 2.5rem;
    margin-bottom: 16px;
}

.aund-resource-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--aund-text-primary);
}

.aund-resource-card__desc {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    margin-bottom: 16px;
    line-height: 1.6;
}

.aund-resource-card__link a {
    color: var(--aund-secondary);
    font-weight: 600;
    text-decoration: none;
}

.aund-resource-card__link a:hover {
    text-decoration: underline;
}

/* --------------------------------------------------------------------------
   その他のプログラム（守・破・離アコーディオン）
   -------------------------------------------------------------------------- */
.aund-other-programs {
    background: var(--aund-bg-white);
}

.aund-accordion-wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.aund-accordion.wp-block-details {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    margin-bottom: 12px;
    box-shadow: var(--aund-shadow-sm);
    overflow: hidden;
    border-left: 4px solid var(--aund-secondary);
}

.aund-accordion--green.wp-block-details {
    border-left-color: #2E7D32;
}

.aund-accordion--blue.wp-block-details {
    border-left-color: var(--aund-secondary);
}

.aund-accordion--purple.wp-block-details {
    border-left-color: var(--aund-primary);
}

.aund-accordion.wp-block-details summary {
    padding: 20px 24px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--aund-text-primary);
    transition: background 0.2s ease;
}

.aund-accordion.wp-block-details summary:hover {
    background: var(--aund-bg-light);
}

.aund-accordion.wp-block-details summary::after {
    content: '+';
    font-size: 1.5rem;
    color: var(--aund-secondary);
    transition: transform 0.3s ease;
}

.aund-accordion.wp-block-details[open] summary::after {
    transform: rotate(45deg);
}

.aund-accordion.wp-block-details summary::-webkit-details-marker {
    display: none;
}

.aund-accordion__content {
    padding: 0 24px 20px;
}

.aund-accordion__content p {
    color: var(--aund-text-secondary);
    margin-bottom: 16px;
    font-size: 0.95rem;
}

.aund-accordion__content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.aund-accordion__content li {
    padding: 12px 0;
    border-bottom: 1px solid var(--aund-border);
}

.aund-accordion__content li:last-child {
    border-bottom: none;
}

.aund-accordion__content li a {
    color: var(--aund-secondary);
    font-weight: 600;
    text-decoration: none;
}

.aund-accordion__content li a:hover {
    text-decoration: underline;
}

.aund-accordion__content li small {
    display: block;
    color: var(--aund-text-secondary);
    font-size: 0.85rem;
    margin-top: 4px;
}

/* --------------------------------------------------------------------------
   サービスページ用レスポンシブ調整
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .aund-page-hero {
        padding: 48px 16px;
    }
    
    .aund-page-hero__title {
        font-size: 1.5rem;
    }
    
    .aund-why-aund__grid,
    .aund-flow__steps,
    .aund-consultation__grid,
    .aund-resources__grid,
    .aund-customer-voices__grid {
        grid-template-columns: 1fr;
    }
    
    .aund-flow-step,
    .aund-why-card {
        padding: 24px 16px;
    }
}

/* --------------------------------------------------------------------------
   サービスページ用パンくずリスト
   -------------------------------------------------------------------------- */
/* サービスページでデフォルトのパンくずリストを非表示 */
.page-slug-service .breadcrumb,
.page-slug-service .vk-breadcrumb,
.page-id-service .breadcrumb,
.page-id-service .vk-breadcrumb,
body.page-template-default.page .breadcrumb:not(.aund-breadcrumb),
body.page-template-default.page .vk-breadcrumb:not(.aund-breadcrumb) {
    /* display: none !important; */
}

/* service-hero内のカスタムパンくずリスト */
.aund-breadcrumb-wrapper {
    background: var(--aund-bg-light);
    padding: 12px 0;
}

.aund-breadcrumb-wrapper > .wp-block-group__inner-container {
    max-width: var(--aund-container-width, 1200px);
    margin: 0 auto;
    padding: 0 20px;
}

.aund-breadcrumb {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    margin: 0 !important;
}

.aund-breadcrumb a {
    color: var(--aund-text-secondary);
    text-decoration: none;
}

.aund-breadcrumb a:hover {
    text-decoration: underline;
    color: var(--aund-primary);
}

/* ==========================================================================
   サービス詳細ページ用スタイル
   ========================================================================== */

/* --------------------------------------------------------------------------
   サービス詳細ヒーロー（緑グラデーション版）
   -------------------------------------------------------------------------- */
.aund-service-detail-hero {
    background: linear-gradient(135deg, #2E7D32 0%, #1B5E20 100%);
    color: var(--aund-text-white);
    padding: clamp(60px, 10vw, 100px) 20px;
    text-align: center;
}

.aund-service-detail-hero__title {
    font-size: clamp(1.75rem, 5vw, 2.5rem);
    font-weight: 900;
    margin-bottom: 1rem;
    color: var(--aund-text-white) !important;
}

.aund-service-detail-hero__tagline {
    font-size: 1.125rem;
    opacity: 0.9;
    margin-bottom: 2rem;
    color: var(--aund-text-white) !important;
}

.aund-service-detail-hero .wp-block-buttons {
    justify-content: center;
}

.aund-service-detail-hero .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
}

.aund-service-detail-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

.aund-service-detail-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: var(--aund-text-white) !important;
}

/* --------------------------------------------------------------------------
   ターゲットセクション（こんな方におすすめ）
   -------------------------------------------------------------------------- */
.aund-target {
    background: var(--aund-bg-white);
}

.aund-target__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.aund-target-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 32px 24px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
    border: 1px solid var(--aund-border);
    transition: all 0.3s ease;
}

.aund-target-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-md);
}

.aund-target-card__icon {
    font-size: 2.5rem;
    margin-bottom: 16px;
}

.aund-target-card__text {
    font-size: 1rem;
    color: var(--aund-text-primary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   課題セクション（よくある課題・導入前）
   -------------------------------------------------------------------------- */
.aund-challenges {
    background: var(--aund-bg-light);
}

.aund-challenges__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.aund-challenge-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
}

.aund-challenge-card__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-challenge-card__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.6;
}

/* --------------------------------------------------------------------------
   提供内容テーブル
   -------------------------------------------------------------------------- */
.aund-content-table {
    background: var(--aund-bg-white);
}

.aund-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    overflow: hidden;
    box-shadow: var(--aund-shadow-sm);
}

.aund-table th,
.aund-table td {
    padding: 16px 20px;
    text-align: left;
    border-bottom: 1px solid var(--aund-border);
}

.aund-table th {
    background: var(--aund-bg-light);
    font-weight: 600;
    width: 30%;
    color: var(--aund-text-primary);
}

.aund-table td {
    color: var(--aund-text-secondary);
}

.aund-table tr:last-child th,
.aund-table tr:last-child td {
    border-bottom: none;
}

/* テーブルのレスポンシブ対応 */
@media (max-width: 576px) {
    .aund-table th,
    .aund-table td {
        display: block;
        width: 100%;
    }
    
    .aund-table th {
        border-bottom: none;
        padding-bottom: 4px;
    }
    
    .aund-table td {
        padding-top: 4px;
        padding-bottom: 16px;
    }
    
    .aund-table tr {
        border-bottom: 1px solid var(--aund-border);
    }
    
    .aund-table tr:last-child {
        border-bottom: none;
    }
}

/* --------------------------------------------------------------------------
   ベネフィットセクション（導入後の変化）
   -------------------------------------------------------------------------- */
.aund-benefits {
    background: var(--aund-bg-light);
}

.aund-benefits__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.aund-benefit-card {
    background: #E8F5E9;
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    border-left: 4px solid #2E7D32;
}

.aund-benefit-card__title {
    font-weight: 700;
    margin-bottom: 8px;
    color: #2E7D32;
    font-size: 1rem;
}

.aund-benefit-card__text {
    color: var(--aund-text-secondary);
    font-size: 0.95rem;
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   進め方ステップ（縦型）
   -------------------------------------------------------------------------- */
.aund-steps-vertical {
    background: var(--aund-bg-white);
}

.aund-steps-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 700px;
    margin: 0 auto;
}

.aund-step-item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.aund-step-item__num {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    background: #2E7D32;
    color: var(--aund-text-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.25rem;
}

.aund-step-item__content {
    flex-grow: 1;
    padding-top: 8px;
}

.aund-step-item__title {
    font-weight: 700;
    margin-bottom: 4px;
    font-size: 1.1rem;
    color: var(--aund-text-primary);
}

.aund-step-item__desc {
    color: var(--aund-text-secondary);
    font-size: 0.95rem;
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   関連事例セクション
   -------------------------------------------------------------------------- */
.aund-related-case {
    background: var(--aund-bg-light);
}

.aund-related-case__card {
    max-width: 500px;
    margin: 0 auto;
}

/* --------------------------------------------------------------------------
   サービス詳細FAQ（アコーディオン対応）
   -------------------------------------------------------------------------- */
.aund-service-faq {
    background: var(--aund-bg-white);
}

.aund-service-faq .aund-faq__list {
    max-width: 800px;
    margin: 0 auto;
}

/* WordPressのdetailsブロック用スタイル */
.aund-service-faq .wp-block-details {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    margin-bottom: 12px;
    box-shadow: var(--aund-shadow-sm);
    overflow: hidden;
}

.aund-service-faq .wp-block-details summary {
    padding: 20px 24px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--aund-text-primary);
    transition: background 0.2s ease;
}

.aund-service-faq .wp-block-details summary:hover {
    background: var(--aund-bg-light);
}

.aund-service-faq .wp-block-details summary::after {
    content: '+';
    font-size: 1.5rem;
    color: var(--aund-secondary);
    transition: transform 0.3s ease;
}

.aund-service-faq .wp-block-details[open] summary::after {
    transform: rotate(45deg);
}

.aund-service-faq .wp-block-details summary::-webkit-details-marker {
    display: none;
}

.aund-service-faq .wp-block-details > *:not(summary) {
    padding: 0 24px 20px;
    color: var(--aund-text-secondary);
    line-height: 1.8;
}

/* --------------------------------------------------------------------------
   サービス詳細CTA
   -------------------------------------------------------------------------- */
.aund-service-detail-cta {
    background: linear-gradient(135deg, #37474F 0%, #263238 100%);
    color: var(--aund-text-white);
    text-align: center;
    padding: var(--aund-section-padding) 20px;
}

.aund-service-detail-cta__title {
    font-size: clamp(1.5rem, 4vw, 2rem);
    margin-bottom: 1rem;
    color: var(--aund-text-white) !important;
}

.aund-service-detail-cta__desc {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.aund-service-detail-cta__note {
    margin-top: 1.5rem;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.6);
}

.aund-service-detail-cta .wp-block-buttons {
    justify-content: center;
}

.aund-service-detail-cta .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
}

.aund-service-detail-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

.aund-service-detail-cta .wp-block-button.aund-btn-secondary-white .wp-block-button__link {
    background-color: var(--aund-bg-white) !important;
    border: 2px solid var(--aund-bg-white) !important;
    color: var(--aund-text-primary) !important;
}

.aund-service-detail-cta .wp-block-button.aund-btn-secondary-white .wp-block-button__link:hover {
    background-color: var(--aund-bg-light) !important;
}

/* --------------------------------------------------------------------------
   サービス詳細ページ用レスポンシブ
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .aund-service-detail-hero {
        padding: 48px 16px;
    }
    
    .aund-service-detail-hero__title {
        font-size: 1.5rem;
    }
    
    .aund-target__cards,
    .aund-challenges__cards,
    .aund-benefits__grid {
        grid-template-columns: 1fr;
    }
    
    .aund-step-item {
        gap: 16px;
    }
    
    .aund-step-item__num {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

/* ==========================================================================
   研修ページ用スタイル（定額制ビジネススキル研修）
   ========================================================================== */

/* --------------------------------------------------------------------------
   研修ヒーロー（青グラデーション）
   -------------------------------------------------------------------------- */
.aund-training-hero {
    background: linear-gradient(135deg, #1565C0 0%, #0D47A1 100%);
    color: var(--aund-text-white);
    padding: clamp(60px, 12vw, 120px) 20px;
    text-align: center;
}

.aund-training-hero__badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    padding: 8px 20px;
    border-radius: 30px;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.aund-training-hero__title {
    font-size: clamp(1.75rem, 5vw, 2.75rem);
    font-weight: 900;
    margin-bottom: 1rem;
    line-height: 1.3;
    color: var(--aund-text-white) !important;
}

.aund-training-hero__title small {
    font-size: 0.6em;
    font-weight: 400;
    display: block;
    margin-top: 0.5rem;
}

.aund-training-hero__tagline {
    font-size: 1.125rem;
    opacity: 0.95;
    margin-bottom: 1.5rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    color: var(--aund-text-white) !important;
}

.aund-training-hero__points {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-bottom: 2rem;
}

.aund-training-hero__point {
    background: rgba(255, 255, 255, 0.15);
    padding: 8px 16px;
    border-radius: 6px;
    font-size: 0.9rem;
}

.aund-training-hero .wp-block-buttons {
    justify-content: center;
}

.aund-training-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

/* プライマリボタン（無料相談） - 枠線分を追加してサイズ統一 */
.aund-training-hero .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-training-hero .wp-block-button.aund-btn-primary .wp-block-button__link:hover {
    background-color: var(--aund-accent-hover) !important;
    border: 2px solid var(--aund-accent-hover) !important;
}

/* 資料ダウンロードボタン（白背景・青文字） - 同じ枠線で統一 */
.aund-training-hero .wp-block-button.aund-btn-secondary .wp-block-button__link {
    background-color: var(--aund-bg-white) !important;
    border: 2px solid var(--aund-bg-white) !important;
    color: #1565C0 !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-training-hero .wp-block-button.aund-btn-secondary .wp-block-button__link:hover {
    background-color: #E3F2FD !important;
    border-color: #E3F2FD !important;
}

/* --------------------------------------------------------------------------
   課題提起セクション（Pain Points）
   -------------------------------------------------------------------------- */
.aund-training-pain {
    background: #FFF3E0;
}

.aund-training-pain__lead {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 700;
    text-align: center;
    margin-bottom: 1rem;
    color: var(--aund-text-primary);
}

.aund-training-pain__desc {
    text-align: center;
    color: var(--aund-text-secondary);
    margin-bottom: 2rem;
}

.aund-training-pain__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.aund-pain-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-pain-card__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--aund-accent);
    color: var(--aund-text-white);
    border-radius: 50%;
    font-weight: 700;
    font-size: 0.9rem;
    margin-bottom: 12px;
}

.aund-pain-card__title {
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
    font-size: 1rem;
}

.aund-pain-card__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   ソリューションセクション
   -------------------------------------------------------------------------- */
.aund-training-solution {
    background: var(--aund-bg-white);
}

.aund-solution-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}

.aund-solution-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 28px;
    box-shadow: var(--aund-shadow-md);
    border-left: 4px solid #1565C0;
}

.aund-solution-card__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: #E3F2FD;
    color: #1565C0;
    border-radius: 50%;
    font-weight: 700;
    margin-bottom: 12px;
}

.aund-solution-card__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-solution-card__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
    margin-bottom: 12px;
}

.aund-solution-card__highlight {
    background: #E3F2FD;
    padding: 12px 16px;
    border-radius: var(--aund-radius-md);
    font-size: 0.875rem;
    color: #1565C0;
    font-weight: 500;
}

/* --------------------------------------------------------------------------
   学べるテーマセクション
   -------------------------------------------------------------------------- */
.aund-training-themes {
    background: var(--aund-bg-light);
}

.aund-themes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.aund-theme-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 20px;
    text-align: center;
    box-shadow: var(--aund-shadow-sm);
}

.aund-theme-card__icon {
    font-size: 2.5rem;
    margin-bottom: 12px;
}

.aund-theme-card__name {
    font-weight: 700;
    margin-bottom: 4px;
    color: var(--aund-text-primary);
    font-size: 0.9rem;
    white-space: nowrap;
}

.aund-theme-card__desc {
    font-size: 0.8rem;
    color: var(--aund-text-secondary);
    margin-bottom: 8px;
}

.aund-theme-card__tag {
    display: inline-block;
    background: #E3F2FD;
    color: #1565C0;
    font-size: 0.7rem;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   開催スケジュールセクション
   -------------------------------------------------------------------------- */
.aund-training-schedule {
    background: var(--aund-bg-white);
}

.aund-schedule-box {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-xl);
    padding: 32px;
    box-shadow: var(--aund-shadow-md);
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}

.aund-schedule-box__icon {
    font-size: 3rem;
    margin-bottom: 16px;
}

.aund-schedule-box__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-schedule-box__time {
    font-size: 1.5rem;
    font-weight: 900;
    color: #1565C0;
    margin-bottom: 8px;
}

.aund-schedule-box__note {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    margin-bottom: 16px;
}

.aund-schedule-box__features {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.aund-schedule-box__feature {
    background: var(--aund-bg-light);
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.875rem;
}

/* --------------------------------------------------------------------------
   料金プランセクション
   -------------------------------------------------------------------------- */
.aund-training-price {
    background: var(--aund-bg-light);
}

.aund-price-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    max-width: 700px;
    margin: 0 auto;
}

.aund-price-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-xl);
    padding: 32px;
    box-shadow: var(--aund-shadow-md);
    border: 2px solid var(--aund-border);
    position: relative;
    text-align: center;
}

.aund-price-card--recommended {
    border-color: var(--aund-accent);
}

.aund-price-card__badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--aund-accent);
    color: var(--aund-text-white);
    padding: 4px 16px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 700;
}

.aund-price-card__label {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    margin-bottom: 8px;
}

.aund-price-card__amount {
    font-size: 2.5rem;
    font-weight: 900;
    color: var(--aund-text-primary);
}

.aund-price-card__amount small {
    font-size: 1rem;
    font-weight: 400;
}

.aund-price-card__note {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    margin-top: 8px;
}

.aund-price-card__bonus {
    background: #E8F5E9;
    color: #2E7D32;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 600;
    margin-top: 12px;
    display: inline-block;
}

.aund-price-card__features {
    list-style: none;
    text-align: left;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--aund-border);
}

.aund-price-card__features li {
    padding: 8px 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--aund-text-primary);
}

.aund-price-card__features li::before {
    content: '✓';
    color: #2E7D32;
    font-weight: bold;
    flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   比較表セクション
   -------------------------------------------------------------------------- */
.aund-training-comparison {
    background: var(--aund-bg-white);
}

.aund-comparison-wrapper {
    overflow-x: auto;
}

.aund-comparison-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 600px;
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    overflow: hidden;
    box-shadow: var(--aund-shadow-sm);
}

.aund-comparison-table th,
.aund-comparison-table td {
    padding: 16px 20px;
    text-align: left;
    border-bottom: 1px solid var(--aund-border);
}

.aund-comparison-table th {
    background: var(--aund-bg-light);
    font-weight: 600;
    color: var(--aund-text-primary);
}

.aund-comparison-table th:first-child {
    width: 30%;
}

.aund-comparison-table .highlight {
    background: #E3F2FD;
}

.aund-comparison-table .highlight-header {
    background: #1565C0;
    color: var(--aund-text-white);
}

.aund-comparison-table .good {
    color: #2E7D32;
    font-weight: 600;
}

.aund-comparison-table .bad {
    color: #E53935;
}

.aund-comparison-table tr:last-child th,
.aund-comparison-table tr:last-child td {
    border-bottom: none;
}

/* --------------------------------------------------------------------------
   ご利用の流れセクション（研修用）
   -------------------------------------------------------------------------- */
.aund-training-flow {
    background: var(--aund-bg-light);
}

.aund-training-flow__steps {
    max-width: 800px;
    margin: 0 auto;
}

/* WordPressブロックグループの上書き */
.aund-training-flow .wp-block-group.aund-training-flow__step {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start;
}

.aund-training-flow .wp-block-group.aund-training-flow__step > .wp-block-group__inner-container {
    display: contents;
}

.aund-training-flow__step {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 20px;
    margin-bottom: 24px;
    position: relative;
}

.aund-training-flow__step:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 23px;
    top: 48px;
    bottom: -24px;
    width: 2px;
    background: var(--aund-border);
}

.aund-training-flow__num {
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    background: #1565C0;
    color: var(--aund-text-white);
    border-radius: 50%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.25rem;
    z-index: 1;
}

.aund-training-flow__content {
    flex-grow: 1 !important;
    flex-shrink: 1 !important;
    min-width: 0;
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 20px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-training-flow__title {
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-training-flow__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   研修FAQ（アコーディオン）
   -------------------------------------------------------------------------- */
.aund-training-faq {
    background: var(--aund-bg-white);
}

.aund-training-faq .aund-faq__list {
    max-width: 800px;
    margin: 0 auto;
}

.aund-training-faq .wp-block-details {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    margin-bottom: 12px;
    box-shadow: var(--aund-shadow-sm);
    overflow: hidden;
}

.aund-training-faq .wp-block-details summary {
    padding: 20px 24px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--aund-text-primary);
    transition: background 0.2s ease;
}

.aund-training-faq .wp-block-details summary:hover {
    background: var(--aund-bg-light);
}

.aund-training-faq .wp-block-details summary::after {
    content: '+';
    font-size: 1.5rem;
    color: #1565C0;
    transition: transform 0.3s ease;
}

.aund-training-faq .wp-block-details[open] summary::after {
    transform: rotate(45deg);
}

.aund-training-faq .wp-block-details summary::-webkit-details-marker {
    display: none;
}

.aund-training-faq .wp-block-details > *:not(summary) {
    padding: 0 24px 20px;
    color: var(--aund-text-secondary);
    line-height: 1.8;
}

/* --------------------------------------------------------------------------
   研修CTA
   -------------------------------------------------------------------------- */
.aund-training-cta {
    background: linear-gradient(135deg, #37474F 0%, #263238 100%);
    color: var(--aund-text-white);
    text-align: center;
    padding: var(--aund-section-padding) 20px;
}

.aund-training-cta__title {
    font-size: clamp(1.5rem, 4vw, 2rem);
    margin-bottom: 1rem;
    color: var(--aund-text-white) !important;
}

.aund-training-cta__desc {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.aund-training-cta__note {
    margin-top: 1.5rem;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.6);
}

.aund-training-cta .wp-block-buttons {
    justify-content: center;
}

.aund-training-cta .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
}

.aund-training-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

/* プライマリボタン（無料相談） - 枠線分を追加してサイズ統一 */
.aund-training-cta .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-training-cta .wp-block-button.aund-btn-primary .wp-block-button__link:hover {
    background-color: var(--aund-accent-hover) !important;
    border-color: var(--aund-accent-hover) !important;
}

/* 資料ダウンロードボタン（白背景・青文字） - 同じ枠線で統一 */
.aund-training-cta .wp-block-button.aund-btn-secondary .wp-block-button__link {
    background-color: var(--aund-bg-white) !important;
    border: 2px solid var(--aund-bg-white) !important;
    color: #1565C0 !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-training-cta .wp-block-button.aund-btn-secondary .wp-block-button__link:hover {
    background-color: #E3F2FD !important;
    border-color: #E3F2FD !important;
}

/* --------------------------------------------------------------------------
   研修ページ用レスポンシブ
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .aund-training-hero {
        padding: 48px 16px;
    }
    
    .aund-training-hero__title {
        font-size: 1.5rem;
    }
    
    .aund-training-hero__points {
        gap: 8px;
    }
    
    .aund-training-hero__point {
        font-size: 0.8rem;
        padding: 6px 12px;
    }
    
    .aund-training-pain__cards,
    .aund-solution-cards,
    .aund-themes-grid,
    .aund-price-cards {
        grid-template-columns: 1fr;
    }
    
    .aund-training-flow__step {
        flex-direction: column !important;
        align-items: flex-start;
    }
    
    .aund-training-flow__step:not(:last-child)::after {
        display: none;
    }
    
    .aund-training-flow__num {
        margin-bottom: 12px;
    }
    
    .aund-comparison-table {
        font-size: 0.875rem;
    }
    
    .aund-comparison-table th,
    .aund-comparison-table td {
        padding: 12px;
    }
}

/* ==========================================================================
   会議改善90日プログラムページ用スタイル
   ========================================================================== */

/* --------------------------------------------------------------------------
   CSS変数（会議改善90日プログラム用カラー）
   -------------------------------------------------------------------------- */
:root {
    --aund-meeting-green: #2E7D32;
    --aund-meeting-green-dark: #1B5E20;
    --aund-meeting-green-light: #4CAF50;
    --aund-meeting-green-bg: #E8F5E9;
    --aund-meeting-orange-bg: #FFF3E0;
    --aund-meeting-info-bg: #E3F2FD;
}

/* --------------------------------------------------------------------------
   ヒーローセクション（緑グラデーション背景）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-hero {
    background: linear-gradient(135deg, var(--aund-meeting-green) 0%, var(--aund-meeting-green-dark) 100%);
    color: #ffffff;
    padding: clamp(60px, 12vw, 120px) 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.aund-meeting-sprint-hero::before {
    content: '90';
    position: absolute;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    font-size: clamp(150px, 30vw, 300px);
    font-weight: 900;
    opacity: 0.1;
    line-height: 1;
    pointer-events: none;
}

.aund-meeting-sprint-hero__badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    padding: 8px 20px;
    border-radius: 30px;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.aund-meeting-sprint-hero__title {
    font-size: clamp(1.75rem, 5vw, 2.75rem);
    margin-bottom: 1rem;
    line-height: 1.3;
    color: #ffffff !important;
}

.aund-meeting-sprint-hero__title small {
    font-size: 0.5em;
    font-weight: 400;
    display: block;
    margin-top: 0.5rem;
}

.aund-meeting-sprint-hero__tagline {
    font-size: 1.125rem;
    opacity: 0.95;
    margin-bottom: 1.5rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.aund-meeting-sprint-hero__metrics {
    gap: 24px;
    margin-bottom: 2rem;
}

.aund-meeting-sprint-hero__metric {
    background: rgba(255, 255, 255, 0.15);
    padding: 16px 24px;
    border-radius: 12px;
    text-align: center;
    backdrop-filter: blur(4px);
}

.aund-meeting-sprint-hero__metric-value {
    font-size: 2rem;
    font-weight: 900;
    display: block;
    margin-bottom: 4px;
}

.aund-meeting-sprint-hero__metric-label {
    font-size: 0.875rem;
    opacity: 0.9;
}

/* プライマリボタン（無料相談） - 枠線分を追加してサイズ統一 */
.aund-meeting-sprint-hero .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 30px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-meeting-sprint-hero .wp-block-button.aund-btn-primary .wp-block-button__link:hover {
    background-color: var(--aund-accent-hover) !important;
    border-color: var(--aund-accent-hover) !important;
}

/* アウトラインボタン（会議診断） - 同じ枠線で統一 */
.aund-meeting-sprint-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid var(--aund-text-white) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 30px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-meeting-sprint-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: var(--aund-text-white) !important;
    border-color: var(--aund-text-white) !important;
    color: var(--aund-meeting-green) !important;
}

/* --------------------------------------------------------------------------
   課題提起セクション（オレンジ背景）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-pain {
    background-color: var(--aund-meeting-orange-bg);
}

.aund-meeting-sprint-pain__lead {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-pain__desc {
    color: var(--aund-text-secondary);
    margin-bottom: 2rem;
}

.aund-meeting-sprint-pain__cards {
    gap: 20px;
}

.aund-meeting-sprint-pain__card {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-meeting-sprint-pain__card-icon {
    font-size: 2rem;
    margin-bottom: 12px;
}

.aund-meeting-sprint-pain__card-title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-pain__card-text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   バリューカードセクション
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-value__cards {
    gap: 24px;
}

.aund-meeting-sprint-value__card {
    background: #ffffff;
    border-radius: 16px;
    padding: 32px;
    box-shadow: var(--aund-shadow-md);
    text-align: center;
    border-top: 4px solid var(--aund-meeting-green);
}

.aund-meeting-sprint-value__card-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: var(--aund-meeting-green-bg);
    color: var(--aund-meeting-green);
    border-radius: 50%;
    font-weight: 900;
    font-size: 1.25rem;
    margin-bottom: 16px;
}

.aund-meeting-sprint-value__card-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-value__card-subtitle {
    font-size: 0.9rem;
    color: var(--aund-meeting-green);
    font-weight: 600;
    margin-bottom: 12px;
}

.aund-meeting-sprint-value__card-text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   タイムラインセクション（90日間プログラムの流れ）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-timeline__list {
    max-width: 800px;
    margin: 0 auto;
}

.aund-meeting-sprint-timeline__item {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
    margin-bottom: 16px;
    border-left: 4px solid var(--aund-meeting-green);
    position: relative;
}

.aund-meeting-sprint-timeline__item--active {
    border-left-color: var(--aund-accent);
    box-shadow: var(--aund-shadow-md);
}

.aund-meeting-sprint-timeline__week {
    display: inline-block;
    background: var(--aund-meeting-green-bg);
    color: var(--aund-meeting-green);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
}

.aund-meeting-sprint-timeline__item--active .aund-meeting-sprint-timeline__week {
    background: #FFF3E0;
    color: var(--aund-accent);
}

.aund-meeting-sprint-timeline__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-timeline__badge {
    display: inline-block;
    background: var(--aund-accent);
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    margin-left: 8px;
    vertical-align: middle;
}

.aund-meeting-sprint-timeline__desc {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    margin-bottom: 12px;
    line-height: 1.7;
}

.aund-meeting-sprint-timeline__tasks {
    list-style: none;
    padding: 0;
    margin: 0;
}

.aund-meeting-sprint-timeline__tasks li {
    font-size: 0.85rem;
    padding: 4px 0;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--aund-text-secondary);
}

.aund-meeting-sprint-timeline__tasks li::before {
    content: '✓';
    color: var(--aund-meeting-green);
    font-weight: bold;
}

.aund-meeting-sprint-timeline__note {
    margin-top: 2rem;
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
}

/* --------------------------------------------------------------------------
   ベネフィットセクション（6つの成果カード）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-benefits__cards {
    gap: 20px;
    margin-bottom: 20px;
}

.aund-meeting-sprint-benefits__card {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
    text-align: center;
}

.aund-meeting-sprint-benefits__card-icon {
    font-size: 2.5rem;
    margin-bottom: 12px;
}

.aund-meeting-sprint-benefits__card-title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-benefits__card-text {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   会議診断誘導CTAセクション
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-trial__box {
    background: var(--aund-meeting-info-bg);
    border-radius: 16px;
    padding: 40px;
    text-align: center;
    border: 2px solid var(--aund-secondary);
    max-width: 800px;
    margin: 0 auto;
}

.aund-meeting-sprint-trial__box-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 16px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-trial__box-text {
    color: var(--aund-text-secondary);
    margin-bottom: 24px;
    line-height: 1.8;
}

/* 緑ボタン（会議診断誘導CTA用） - 枠線とpaddingを統一 */
.aund-btn-green .wp-block-button__link,
.wp-block-button.aund-btn-green .wp-block-button__link {
    background-color: var(--aund-meeting-green) !important;
    border: 2px solid var(--aund-meeting-green) !important;
    color: #ffffff !important;
    padding: 14px 30px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-btn-green .wp-block-button__link:hover,
.wp-block-button.aund-btn-green .wp-block-button__link:hover {
    background-color: var(--aund-meeting-green-dark) !important;
    border-color: var(--aund-meeting-green-dark) !important;
}

/* --------------------------------------------------------------------------
   導入フローセクション（5ステップ縦型）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-flow__steps {
    max-width: 800px;
    margin: 0 auto;
}

.aund-meeting-sprint-flow__step {
    margin-bottom: 24px;
    position: relative;
    gap: 20px;
    align-items: flex-start !important;
}

.aund-meeting-sprint-flow__step:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 23px;
    top: 56px;
    bottom: -24px;
    width: 2px;
    background: var(--aund-border);
}

.aund-meeting-sprint-flow__num {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    background: var(--aund-meeting-green);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.25rem;
    z-index: 1;
    margin: 0;
}

.aund-meeting-sprint-flow__num--highlight {
    background: var(--aund-accent) !important;
}

.aund-meeting-sprint-flow__content {
    flex-grow: 1;
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-meeting-sprint-flow__title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-meeting-sprint-flow__badge {
    display: inline-block;
    background: var(--aund-meeting-green-bg);
    color: var(--aund-meeting-green);
    font-size: 0.7rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    margin-left: 8px;
}

.aund-meeting-sprint-flow__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   FAQセクション（アコーディオン）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-faq__list {
    max-width: 800px;
    margin: 0 auto;
}

.aund-meeting-sprint-faq__item {
    background: #ffffff;
    border-radius: 8px;
    margin-bottom: 12px;
    box-shadow: var(--aund-shadow-sm);
    overflow: hidden;
}

.aund-meeting-sprint-faq__item summary {
    padding: 20px 24px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--aund-text-primary);
    list-style: none;
}

.aund-meeting-sprint-faq__item summary::-webkit-details-marker {
    display: none;
}

.aund-meeting-sprint-faq__item summary::after {
    content: '+';
    font-size: 1.5rem;
    color: var(--aund-primary);
    transition: transform 0.3s;
    flex-shrink: 0;
    margin-left: 16px;
}

.aund-meeting-sprint-faq__item[open] summary::after {
    transform: rotate(45deg);
}

.aund-meeting-sprint-faq__answer {
    padding: 0 24px 20px;
    color: var(--aund-text-secondary);
    line-height: 1.8;
}

/* --------------------------------------------------------------------------
   最終CTAセクション（ダーク背景）
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-cta {
    background: linear-gradient(135deg, #37474F 0%, #263238 100%);
    color: #ffffff;
    text-align: center;
}

.aund-meeting-sprint-cta__title {
    font-size: clamp(1.5rem, 4vw, 2rem);
    margin-bottom: 1rem;
    color: #ffffff !important;
}

.aund-meeting-sprint-cta__desc {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.8;
}

.aund-meeting-sprint-cta__buttons {
    margin-bottom: 1.5rem;
}

.aund-meeting-sprint-cta__note {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.6);
}

/* プライマリボタン（無料相談） - 枠線分を追加してサイズ統一 */
.aund-meeting-sprint-cta .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 30px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-meeting-sprint-cta .wp-block-button.aund-btn-primary .wp-block-button__link:hover {
    background-color: var(--aund-accent-hover) !important;
    border-color: var(--aund-accent-hover) !important;
}

/* アウトラインボタン（会議診断） - 同じ枠線で統一 */
.aund-meeting-sprint-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid var(--aund-text-white) !important;
    color: var(--aund-text-white) !important;
    padding: 14px 30px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.aund-meeting-sprint-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: var(--aund-text-white) !important;
    border-color: var(--aund-text-white) !important;
    color: var(--aund-meeting-green) !important;
}

/* --------------------------------------------------------------------------
   お客様の声セクション
   -------------------------------------------------------------------------- */
.aund-meeting-sprint-voice__cards {
    gap: 24px;
    margin-bottom: 2rem;
}

.aund-meeting-sprint-voice__card {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
    border-left: 4px solid var(--aund-meeting-green);
}

.aund-meeting-sprint-voice__card-quote {
    font-size: 1rem;
    color: var(--aund-text-primary);
    line-height: 1.8;
    margin-bottom: 16px;
    font-style: italic;
}

.aund-meeting-sprint-voice__card-quote::before {
    content: '"';
    font-size: 2rem;
    color: var(--aund-meeting-green);
    line-height: 0;
    vertical-align: -0.4em;
    margin-right: 4px;
}

.aund-meeting-sprint-voice__card-author {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    margin-bottom: 8px;
}

.aund-meeting-sprint-voice__card-result {
    font-size: 0.8rem;
    color: var(--aund-meeting-green);
    font-weight: 600;
    background: var(--aund-meeting-green-bg);
    padding: 8px 12px;
    border-radius: 4px;
    display: inline-block;
}

/* --------------------------------------------------------------------------
   スマホ固定CTA（全ページ対応）
   -------------------------------------------------------------------------- */
.aund-sp-fixed-cta {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
    padding: 12px 16px;
    z-index: 999;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

/* スマホ固定CTAのボタンスタイル */
.aund-sp-fixed-cta__btn {
    flex: 1;
    max-width: 180px;
    padding: 12px 16px;
    text-align: center;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.875rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.aund-sp-fixed-cta__btn--primary {
    background: var(--aund-accent, #F26522);
    color: #ffffff;
    border: 2px solid var(--aund-accent, #F26522);
}

.aund-sp-fixed-cta__btn--primary:hover {
    background: var(--aund-accent-hover, #E05512);
    border-color: var(--aund-accent-hover, #E05512);
    color: #ffffff;
}

.aund-sp-fixed-cta__btn--secondary {
    background: #ffffff;
    color: var(--aund-primary, #6B5B95);
    border: 2px solid var(--aund-primary, #6B5B95);
}

.aund-sp-fixed-cta__btn--secondary:hover {
    background: var(--aund-primary, #6B5B95);
    color: #ffffff;
}

/* --------------------------------------------------------------------------
   ラージボタン
   -------------------------------------------------------------------------- */
.aund-btn-large .wp-block-button__link {
    padding: 16px 34px !important;
    font-size: 1.125rem !important;
    border: 2px solid transparent !important;
    box-sizing: border-box !important;
}

/* --------------------------------------------------------------------------
   レスポンシブ対応（スマホ固定CTA）
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    /* 全ページでスマホ固定CTAを表示 */
    body.has-fixed-cta .aund-sp-fixed-cta,
    body.page-meeting-sprint-90 .aund-sp-fixed-cta,
    body.page-pbl .aund-sp-fixed-cta {
        display: flex;
    }
    
    .aund-sp-fixed-cta .wp-block-button,
    .aund-sp-fixed-cta .aund-btn {
        flex: 1;
    }
    
    .aund-sp-fixed-cta .wp-block-button__link {
        padding: 12px 8px !important;
        font-size: 0.875rem !important;
        width: 100%;
    }
    
    /* 固定CTAの高さ分だけbodyにpaddingを追加 */
    body.has-fixed-cta,
    body.page-meeting-sprint-90,
    body.page-pbl {
        padding-bottom: 80px;
    }
}

/* --------------------------------------------------------------------------
   レスポンシブ対応（会議改善90日プログラム）
   -------------------------------------------------------------------------- */

@media (max-width: 768px) {
    .aund-meeting-sprint-hero__metrics {
        flex-direction: column;
        align-items: center;
    }
    
    .aund-meeting-sprint-hero__metric {
        width: 100%;
        max-width: 280px;
    }
    
    .aund-meeting-sprint-flow__step {
        flex-direction: column !important;
    }
    
    .aund-meeting-sprint-flow__step:not(:last-child)::after {
        display: none;
    }
    
    .aund-meeting-sprint-flow__num {
        margin-bottom: 12px;
    }
    
    .aund-meeting-sprint-trial__box {
        padding: 24px;
    }
    
    .aund-meeting-sprint-pain__cards,
    .aund-meeting-sprint-value__cards,
    .aund-meeting-sprint-benefits__cards,
    .aund-meeting-sprint-voice__cards {
        flex-direction: column;
    }
}

/* ==========================================================================
   長期研修プログラム（PBL）ページ用スタイル
   ========================================================================== */

/* --------------------------------------------------------------------------
   CSS変数（PBL用カラー）
   -------------------------------------------------------------------------- */
:root {
    --aund-pbl-primary: #6A1B9A;
    --aund-pbl-primary-dark: #4A148C;
    --aund-pbl-primary-light: #9C27B0;
    --aund-pbl-primary-bg: #F3E5F5;
}

/* --------------------------------------------------------------------------
   長期研修ヒーロー（紫グラデーション）
   -------------------------------------------------------------------------- */
.aund-pbl-hero {
    background: linear-gradient(135deg, var(--aund-pbl-primary) 0%, var(--aund-pbl-primary-dark) 100%);
    color: var(--aund-text-white);
    padding: clamp(60px, 12vw, 120px) 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.aund-pbl-hero::before {
    content: 'PBL';
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
    font-size: clamp(120px, 25vw, 250px);
    font-weight: 900;
    opacity: 0.08;
    line-height: 1;
    color: var(--aund-text-white);
}

.aund-pbl-hero__badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    padding: 8px 20px;
    border-radius: 30px;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.aund-pbl-hero__title {
    font-size: clamp(1.75rem, 5vw, 2.75rem);
    font-weight: 900;
    margin-bottom: 1rem;
    line-height: 1.3;
    color: var(--aund-text-white) !important;
}

.aund-pbl-hero__title small {
    font-size: 0.5em;
    font-weight: 400;
    display: block;
    margin-top: 0.5rem;
}

.aund-pbl-hero__tagline {
    font-size: 1.125rem;
    opacity: 0.95;
    margin-bottom: 1.5rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    color: var(--aund-text-white) !important;
}

.aund-pbl-hero__specs {
    gap: 16px;
    margin-bottom: 2rem;
}

.aund-pbl-hero__spec {
    background: rgba(255, 255, 255, 0.15);
    padding: 12px 20px;
    border-radius: 8px;
    text-align: center;
}

.aund-pbl-hero__spec-label {
    font-size: 0.75rem;
    opacity: 0.8;
    margin-bottom: 4px;
}

.aund-pbl-hero__spec-value {
    font-size: 1.25rem;
    font-weight: 700;
}

.aund-pbl-hero .wp-block-buttons {
    justify-content: center;
}

.aund-pbl-hero .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
}

.aund-pbl-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

.aund-pbl-hero .wp-block-button.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: var(--aund-text-white) !important;
}

/* --------------------------------------------------------------------------
   課題提起セクション（Pain Points）
   -------------------------------------------------------------------------- */
.aund-pbl-pain {
    background: #FFF3E0;
}

.aund-pbl-pain__lead {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: var(--aund-text-primary);
}

.aund-pbl-pain__desc {
    color: var(--aund-text-secondary);
    margin-bottom: 2rem;
}

.aund-pbl-pain__cards {
    gap: 20px;
}

.aund-pbl-pain__card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 24px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-pbl-pain__card-icon {
    font-size: 2rem;
    margin-bottom: 12px;
}

.aund-pbl-pain__card-title {
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
    font-size: 1rem;
}

.aund-pbl-pain__card-text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   4つの変容セクション
   -------------------------------------------------------------------------- */
.aund-pbl-transform {
    background: var(--aund-bg-white);
}

.aund-pbl-transform__steps {
    position: relative;
    gap: 20px;
}

.aund-pbl-transform__step {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-xl);
    padding: 24px;
    text-align: center;
    box-shadow: var(--aund-shadow-md);
    position: relative;
}

.aund-pbl-transform__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: var(--aund-pbl-primary);
    color: var(--aund-text-white);
    border-radius: 50%;
    font-weight: 900;
    font-size: 1.25rem;
    margin-bottom: 16px;
}

.aund-pbl-transform__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-pbl-primary);
}

.aund-pbl-transform__text {
    font-size: 0.875rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   2つの育成プログラム
   -------------------------------------------------------------------------- */
.aund-pbl-programs {
    background: var(--aund-bg-light);
}

.aund-pbl-programs__cards {
    gap: 32px;
}

.aund-pbl-program-card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-xl);
    overflow: hidden;
    box-shadow: var(--aund-shadow-lg);
}

.aund-pbl-program-card__header {
    padding: 24px;
    color: var(--aund-text-white);
    text-align: center;
}

.aund-pbl-program-card__header--leader {
    background: linear-gradient(135deg, var(--aund-pbl-primary) 0%, var(--aund-pbl-primary-dark) 100%);
}

.aund-pbl-program-card__header--young {
    background: linear-gradient(135deg, var(--aund-secondary) 0%, var(--aund-secondary-dark) 100%);
}

.aund-pbl-program-card__icon {
    font-size: 2.5rem;
    margin-bottom: 12px;
}

.aund-pbl-program-card__title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 4px;
    color: var(--aund-text-white) !important;
}

.aund-pbl-program-card__subtitle {
    font-size: 0.9rem;
    opacity: 0.9;
}

.aund-pbl-program-card__body {
    padding: 24px;
}

.aund-pbl-program-card__desc {
    font-size: 0.95rem;
    color: var(--aund-text-secondary);
    margin-bottom: 20px;
    line-height: 1.8;
}

.aund-pbl-program-card__features {
    list-style: none;
    margin: 0;
    padding: 0;
}

.aund-pbl-program-card__features li {
    padding: 10px 0;
    border-bottom: 1px solid var(--aund-border);
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.9rem;
}

.aund-pbl-program-card__features li:last-child {
    border-bottom: none;
}

.aund-pbl-program-card__features li::before {
    content: '✓';
    color: var(--aund-pbl-primary);
    font-weight: bold;
    flex-shrink: 0;
}

.aund-pbl-program-card--young .aund-pbl-program-card__features li::before {
    color: var(--aund-secondary);
}

/* --------------------------------------------------------------------------
   選ばれる理由（4つの特徴）
   -------------------------------------------------------------------------- */
.aund-pbl-features {
    background: var(--aund-bg-white);
}

.aund-pbl-features__grid {
    gap: 24px;
    margin-bottom: 24px;
}

.aund-pbl-feature {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-xl);
    padding: 28px;
    box-shadow: var(--aund-shadow-md);
    border-left: 4px solid var(--aund-pbl-primary);
}

.aund-pbl-feature__icon {
    font-size: 2.5rem;
    margin-bottom: 16px;
}

.aund-pbl-feature__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-pbl-feature__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

.aund-pbl-feature__highlight {
    background: var(--aund-pbl-primary-bg);
    padding: 12px 16px;
    border-radius: var(--aund-radius-md);
    margin-top: 12px;
    font-size: 0.85rem;
    color: var(--aund-pbl-primary);
    font-weight: 500;
}

/* --------------------------------------------------------------------------
   PBLサイクル
   -------------------------------------------------------------------------- */
.aund-pbl-cycle {
    background: var(--aund-bg-light);
}

.aund-pbl-cycle__diagram {
    gap: 16px;
    margin-bottom: 24px;
}

.aund-pbl-cycle__item {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 20px 24px;
    box-shadow: var(--aund-shadow-md);
    text-align: center;
    min-width: 120px;
}

.aund-pbl-cycle__item-num {
    display: block;
    font-size: 0.75rem;
    color: var(--aund-text-light);
    margin-bottom: 4px;
}

.aund-pbl-cycle__item-title {
    font-weight: 700;
    color: var(--aund-pbl-primary);
    font-size: 1.1rem;
}

.aund-pbl-cycle__arrow {
    font-size: 1.5rem;
    color: var(--aund-pbl-primary);
    font-weight: bold;
    display: flex;
    align-items: center;
}

.aund-pbl-cycle__desc {
    color: var(--aund-text-secondary);
    font-size: 0.9rem;
    max-width: 700px;
    margin: 0 auto;
}

/* --------------------------------------------------------------------------
   比較表
   -------------------------------------------------------------------------- */
.aund-pbl-comparison {
    background: var(--aund-bg-white);
}

.aund-pbl-comparison__wrapper {
    overflow-x: auto;
}

.aund-pbl-comparison__table table {
    width: 100%;
    border-collapse: collapse;
    min-width: 600px;
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    overflow: hidden;
    box-shadow: var(--aund-shadow-sm);
}

.aund-pbl-comparison__table th,
.aund-pbl-comparison__table td {
    padding: 16px 20px;
    text-align: left;
    border-bottom: 1px solid var(--aund-border);
}

.aund-pbl-comparison__table th {
    background: var(--aund-bg-light);
    font-weight: 600;
    color: var(--aund-text-primary);
}

.aund-pbl-comparison__table th:first-child {
    width: 30%;
}

.aund-pbl-comparison__table .highlight {
    background: var(--aund-pbl-primary-bg);
}

.aund-pbl-comparison__table .highlight-header {
    background: var(--aund-pbl-primary);
    color: var(--aund-text-white);
}

.aund-pbl-comparison__table .good {
    color: var(--aund-pbl-primary);
    font-weight: 600;
}

.aund-pbl-comparison__table .bad {
    color: #E53935;
}

.aund-pbl-comparison__table tr:last-child th,
.aund-pbl-comparison__table tr:last-child td {
    border-bottom: none;
}

/* --------------------------------------------------------------------------
   コミュニティセクション
   -------------------------------------------------------------------------- */
.aund-pbl-community {
    background: var(--aund-bg-light);
}

.aund-pbl-community__box {
    background: linear-gradient(135deg, var(--aund-pbl-primary-bg) 0%, var(--aund-bg-white) 100%);
    border-radius: var(--aund-radius-xl);
    padding: 40px;
    text-align: center;
    border: 2px solid var(--aund-pbl-primary);
    max-width: 800px;
    margin: 0 auto;
}

.aund-pbl-community__icon {
    font-size: 3rem;
    margin-bottom: 16px;
}

.aund-pbl-community__title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--aund-pbl-primary) !important;
}

.aund-pbl-community__text {
    color: var(--aund-text-secondary);
    max-width: 600px;
    margin: 0 auto 20px;
    line-height: 1.8;
}

.aund-pbl-community__features {
    gap: 16px;
}

.aund-pbl-community__feature {
    background: var(--aund-bg-white);
    padding: 12px 20px;
    border-radius: 30px;
    font-size: 0.9rem;
    box-shadow: var(--aund-shadow-sm);
}

/* --------------------------------------------------------------------------
   導入の流れ
   -------------------------------------------------------------------------- */
.aund-pbl-flow {
    background: var(--aund-bg-white);
}

.aund-pbl-flow__steps {
    max-width: 800px;
    margin: 0 auto;
}

.aund-pbl-flow__step {
    display: flex !important;
    flex-direction: row !important;
    gap: 20px;
    margin-bottom: 24px;
    position: relative;
}

.aund-pbl-flow__step:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 23px;
    top: 48px;
    bottom: -24px;
    width: 2px;
    background: var(--aund-border);
}

.aund-pbl-flow__num {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    background: var(--aund-pbl-primary);
    color: var(--aund-text-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.25rem;
    z-index: 1;
}

.aund-pbl-flow__content {
    flex-grow: 1;
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    padding: 20px;
    box-shadow: var(--aund-shadow-sm);
}

.aund-pbl-flow__title {
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--aund-text-primary);
}

.aund-pbl-flow__text {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
}

/* --------------------------------------------------------------------------
   FAQ
   -------------------------------------------------------------------------- */
.aund-pbl-faq {
    background: var(--aund-bg-light);
}

.aund-pbl-faq__list {
    max-width: 800px;
    margin: 0 auto;
}

.aund-pbl-faq__item {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-md);
    margin-bottom: 12px;
    box-shadow: var(--aund-shadow-sm);
    overflow: hidden;
}

.aund-pbl-faq__item summary {
    padding: 20px 24px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--aund-text-primary);
    transition: background 0.2s ease;
}

.aund-pbl-faq__item summary:hover {
    background: var(--aund-bg-light);
}

.aund-pbl-faq__item summary::after {
    content: '+';
    font-size: 1.5rem;
    color: var(--aund-pbl-primary);
    transition: transform 0.3s ease;
}

.aund-pbl-faq__item[open] summary::after {
    transform: rotate(45deg);
}

.aund-pbl-faq__item summary::-webkit-details-marker {
    display: none;
}

.aund-pbl-faq__item > *:not(summary) {
    padding: 0 24px 20px;
    color: var(--aund-text-secondary);
    line-height: 1.8;
}

.aund-pbl-faq__note {
    margin-top: 2rem;
    color: var(--aund-text-secondary);
}

.aund-pbl-faq__note a {
    color: var(--aund-pbl-primary);
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   最終CTA
   -------------------------------------------------------------------------- */
.aund-pbl-cta {
    background: linear-gradient(135deg, #37474F 0%, #263238 100%);
    color: var(--aund-text-white);
    text-align: center;
    padding: var(--aund-section-padding) 20px;
}

.aund-pbl-cta__title {
    font-size: clamp(1.5rem, 4vw, 2rem);
    margin-bottom: 1rem;
    color: var(--aund-text-white) !important;
}

.aund-pbl-cta__desc {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.8;
}

.aund-pbl-cta__note {
    margin-top: 1.5rem;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.6);
}

.aund-pbl-cta .wp-block-buttons {
    justify-content: center;
}

.aund-pbl-cta .wp-block-button.aund-btn-primary .wp-block-button__link {
    background-color: var(--aund-accent) !important;
    border: 2px solid var(--aund-accent) !important;
}

.aund-pbl-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link {
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: var(--aund-text-white) !important;
}

.aund-pbl-cta .wp-block-button.aund-btn-outline-white .wp-block-button__link:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: var(--aund-text-white) !important;
}

/* --------------------------------------------------------------------------
   スマホ固定CTA（PBLページ用）
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    body.page-pbl {
        padding-bottom: 80px;
    }
}

/* --------------------------------------------------------------------------
   レスポンシブ対応（長期研修プログラム）
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .aund-pbl-hero {
        padding: 48px 16px;
    }
    
    .aund-pbl-hero__title {
        font-size: 1.5rem;
    }
    
    .aund-pbl-hero__specs {
        flex-direction: column;
        align-items: center;
    }
    
    .aund-pbl-hero__spec {
        width: 100%;
        max-width: 280px;
    }
    
    .aund-pbl-pain__cards,
    .aund-pbl-transform__steps,
    .aund-pbl-programs__cards,
    .aund-pbl-features__grid {
        flex-direction: column;
    }
    
    .aund-pbl-cycle__diagram {
        flex-direction: column;
        align-items: center;
    }
    
    .aund-pbl-cycle__arrow {
        transform: rotate(90deg);
    }
    
    .aund-pbl-flow__step {
        flex-direction: column !important;
    }
    
    .aund-pbl-flow__step:not(:last-child)::after {
        display: none;
    }
    
    .aund-pbl-flow__num {
        margin-bottom: 12px;
    }
    
    .aund-pbl-community__box {
        padding: 24px;
    }
    
    .aund-pbl-community__features {
        flex-direction: column;
        align-items: center;
    }
}

/* --------------------------------------------------------------------------
   ハンバーガーメニューの位置調整
   -------------------------------------------------------------------------- */
@media (max-width: 782px) {
    .admin-bar .vk-mobile-nav-menu-btn {
        top: calc(54px + 5px) !important;
    }
}

/* ==========================================================================
   お知らせセクション
   ========================================================================== */
.aund-news {
    padding: var(--aund-section-padding, 80px) 0;
    background-color: var(--aund-bg-light);
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.aund-news__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.aund-news .aund-section__title {
    color: var(--aund-text-primary);
    margin-bottom: 48px;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
}

/* お知らせカードグリッド */
.aund-news__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 40px;
}

/* お知らせカード */
.aund-news__card {
    background: var(--aund-bg-white);
    border-radius: var(--aund-radius-lg);
    box-shadow: var(--aund-shadow-md);
    border-top: 4px solid var(--aund-secondary);
    padding: 0;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.aund-news__card:hover {
    transform: translateY(-4px);
    box-shadow: var(--aund-shadow-lg);
}

.aund-news__link {
    display: block;
    padding: 24px;
    text-decoration: none;
    color: inherit;
    height: 100%;
}

.aund-news__link:hover {
    text-decoration: none;
}

/* 日付 */
.aund-news__date {
    font-size: 0.875rem;
    color: var(--aund-text-light);
    margin-bottom: 8px;
    font-weight: 500;
}

/* タイトル */
.aund-news__title {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--aund-text-primary);
    margin-bottom: 12px;
    line-height: 1.5;
}

.aund-news__card:hover .aund-news__title {
    color: var(--aund-primary);
}

/* 抜粋 */
.aund-news__excerpt {
    font-size: 0.9rem;
    color: var(--aund-text-secondary);
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}

/* もっと見るボタン */
.aund-news__more {
    margin-top: 0;
    text-align: center;
}

.aund-news__more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 32px;
    background-color: transparent;
    color: var(--aund-accent);
    border: 2px solid var(--aund-accent);
    border-radius: var(--aund-radius-md);
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.aund-news__more-btn:hover {
    background-color: var(--aund-accent);
    color: var(--aund-text-white);
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(242, 101, 34, 0.3);
}

/* レスポンシブ対応 */
@media (max-width: 992px) {
    .aund-news__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .aund-news {
        padding: 48px 0;
    }
    
    .aund-news__container {
        padding: 0 20px;
    }
    
    .aund-news .aund-section__title {
        margin-bottom: 32px;
    }
    
    .aund-news__grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-bottom: 32px;
    }
    
    .aund-news__link {
        padding: 20px;
    }
    
    .aund-news__title {
        font-size: 1rem;
    }
    
    .aund-news__excerpt {
        -webkit-line-clamp: 2;
    }
    
    .aund-news__more-btn {
        padding: 12px 24px;
        font-size: 0.9375rem;
    }
}
