/* ============================================================
   aimana 製品紹介ページ専用 CSS
   /jp/gbt/products/aimana/resources/css/aimana.css
   - 編集領域内でのみ作用させたい独自スタイル
   - Tailwind / 既存サイトCSS と併用想定
   ============================================================ */

/* preflight 無効化の補完: LP 内要素は border-box で統一（Tailwind レイアウトの前提） */
#aimana-lp *, #aimana-lp ::before, #aimana-lp ::after {
    box-sizing: border-box;
}

/* スコープ: 編集領域内の本コンテンツルート */
#aimana-lp {
    font-family: 'Noto Sans JP', sans-serif;
    color: #333;
    scroll-behavior: smooth;
}

#aimana-lp .text-brand { color: #008eb0; }
#aimana-lp .bg-brand { background-color: #008eb0; }
#aimana-lp .border-brand { border-color: #008eb0; }
#aimana-lp .bg-brand-light { background-color: #f0f9ff; }
#aimana-lp .hover-brand:hover { color: #008eb0; }

#aimana-lp .concept-circle {
    background: radial-gradient(circle, #ffffff 0%, #f0f9ff 100%);
    box-shadow: 0 10px 25px -5px rgba(0, 142, 176, 0.15);
}
#aimana-lp .cycle-box { position: relative; }
#aimana-lp .swiper { width: 100%; height: 100%; }

/* Swiper bundle が body 内で読み込まれ Tailwind の .absolute を打ち消すため、
   ヒーロー用 Swiper には強制的に絶対配置を当てる */
#aimana-lp .aimana-mySwiper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
}
#aimana-lp .aimana-mySwiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* テーブル横スクロールヒント（モバイル） */
#aimana-lp .table-scroll-wrapper { position: relative; }
#aimana-lp .table-scroll-wrapper::after {
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 32px;
    background: linear-gradient(to right, transparent, rgba(255,255,255,0.9));
    pointer-events: none;
    z-index: 2;
}
#aimana-lp .table-scroll-wrapper.scrolled-end::after { opacity: 0; }
@media (min-width: 768px) {
    #aimana-lp .table-scroll-wrapper::after { display: none; }
}

/* スクロール連動フェードイン */
#aimana-lp .reveal {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
#aimana-lp .reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Exit-intent オーバーレイ */
@keyframes aimanaExitFadeIn {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
}
#aimana-exit-overlay .aimana-exit-card {
    animation: aimanaExitFadeIn 0.3s ease;
}

/* キーボードフォーカスリング（アクセシビリティ） */
#aimana-lp a:focus-visible,
#aimana-lp button:focus-visible,
#aimana-lp input:focus-visible,
#aimana-lp select:focus-visible,
#aimana-lp summary:focus-visible {
    outline: 2px solid #008eb0;
    outline-offset: 2px;
}

/* セクションナビのアクティブ状態 */
#aimana-section-nav a.is-active {
    color: #008eb0;
    font-weight: 700;
}

/* アンカー遷移時のオフセット確保 */
#aimana-lp section[id] {
    scroll-margin-top: 120px;
}

/* ページ下部の共通CTA内アイコンを中央配置 */
#gbt-products-aimana .component-cta .component-cta-inner a .image {
    text-align: center;
}
#gbt-products-aimana .component-cta .component-cta-inner a .image img {
    display: inline-block;
}
