/*
Theme Name: AKINDO Original
Theme URI: https://akindo.co.jp
Author: AKINDO Inc.
Author URI: https://akindo.co.jp
Description: AKINDO株式会社の公式テーマ。賃貸LP、売買仲介LP、会社概要の3ページ構成。
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: akindo-original
*/

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

/* カスタムアニメーション */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.animate-fade-in {
    animation: fadeIn 0.5s ease-out forwards;
}

@keyframes slideDown {
    from {
        transform: translateY(-10px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.animate-slide-down {
    animation: slideDown 0.3s ease-out forwards;
}

@keyframes blob {
    0% {
        transform: translate(0px, 0px) scale(1);
    }

    33% {
        transform: translate(30px, -50px) scale(1.1);
    }

    66% {
        transform: translate(-20px, 20px) scale(0.9);
    }

    100% {
        transform: translate(0px, 0px) scale(1);
    }
}

.animate-blob {
    animation: blob 7s infinite;
}

.animation-delay-2000 {
    animation-delay: 2s;
}

/* ユーティリティ */
.hidden-page {
    display: none;
}

/* ヒーローセクション - 動画背景 */
.hero-section {
    min-height: 100vh;
    min-height: 100dvh;
    /* Dynamic viewport height for mobile */
}

.hero-section video {
    filter: brightness(0.7);
}

.hero-label {
    animation: fadeIn 1s ease-out forwards;
    animation-delay: 0.3s;
    opacity: 0;
}

.hero-section h1 {
    animation: fadeIn 1s ease-out forwards;
    animation-delay: 0.5s;
    opacity: 0;
}

.hero-section p {
    animation: fadeIn 1s ease-out forwards;
    animation-delay: 0.7s;
    opacity: 0;
}

.hero-section button {
    animation: fadeIn 1s ease-out forwards;
    animation-delay: 0.9s;
    opacity: 0;
}

/* スクロールインジケーター */
.scroll-indicator {
    animation: fadeIn 1s ease-out forwards;
    animation-delay: 1.2s;
    opacity: 0;
}

@keyframes scrollPulse {

    0%,
    100% {
        transform: translateY(0);
        opacity: 1;
    }

    50% {
        transform: translateY(8px);
        opacity: 0.5;
    }
}

.scroll-indicator .animate-bounce {
    animation: scrollPulse 2s ease-in-out infinite;
}

/* モバイル対応 */
@media (max-width: 768px) {
    .hero-section {
        min-height: 550px;
        /* Fixed height for mobile optimization */
    }
}