/* シンプルなグラデーション背景のみ */

/* 全てのswell-block-fullWideにグラデーションを適用するオプション */
.gradient-section {
    background: linear-gradient(135deg, #ffd700 0%, #ff8c00 50%, #ff6b35 100%) !important;
    position: relative;
    overflow: hidden;
}

.gradient-section-light {
    background: linear-gradient(135deg, #ffe4b5 0%, #ffb347 50%, #ff8c00 100%) !important;
    position: relative;
    overflow: hidden;
}

.gradient-section-dark {
    background: linear-gradient(135deg, #ff8c00 0%, #ff6b35 50%, #ff4500 100%) !important;
    position: relative;
    overflow: hidden;
}

/* 会社情報セクションのグラデーション背景 */
.info-section-gradient {
    background: linear-gradient(135deg, #ffd700 0%, #ff8c00 50%, #ff6b35 100%) !important;
    position: relative;
    overflow: hidden;
}

/* 背景のアニメーション要素 */
.info-section-gradient::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle at 30% 50%, rgba(255, 255, 255, 0.1) 0%, transparent 50%),
                radial-gradient(circle at 70% 80%, rgba(255, 255, 255, 0.08) 0%, transparent 50%);
    animation: backgroundFloat 20s ease-in-out infinite;
}

.info-section-gradient::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
    animation: shimmer 3s ease-in-out infinite;
}

/* 内容は元のまま */
.info-section-gradient .swell-block-fullWide__inner {
    position: relative;
    z-index: 1;
}

/* 対応エリアセクションのグラデーション */
.area-section-gradient {
    background: linear-gradient(135deg, #ffb347 0%, #ff8c00 50%, #ff6b35 100%) !important;
    position: relative;
    overflow: hidden;
}

.area-section-gradient::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 200%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    animation: slideShine 8s linear infinite;
}

/* アニメーション定義 */
@keyframes backgroundFloat {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg);
    }
    33% {
        transform: translate(30px, -30px) rotate(120deg);
    }
    66% {
        transform: translate(-20px, 20px) rotate(240deg);
    }
}

@keyframes shimmer {
    0%, 100% {
        opacity: 0.5;
    }
    50% {
        opacity: 1;
    }
}

@keyframes slideShine {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}

/* ヘッダーのカスタムボタンもグラデーションに */
.l-header__customBtn .c-iconBtn {
    background: linear-gradient(135deg, #ffd700 0%, #ff8c00 100%) !important;
    transition: all 0.3s ease;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(255, 140, 0, 0.2);
}

.l-header__customBtn .c-iconBtn:hover {
    background: linear-gradient(135deg, #ff8c00 0%, #ff6b35 100%) !important;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(255, 140, 0, 0.3);
}

.l-header__customBtn .c-iconBtn__icon {
    color: white !important;
}

.l-header__customBtn .c-iconBtn__label {
    color: white !important;
    font-weight: 600;
}

/* メニューボタンもオレンジ系に */
.l-header__menuBtn .c-iconBtn {
    background: linear-gradient(135deg, #ffd700 0%, #ff8c00 100%) !important;
    transition: all 0.3s ease;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(255, 140, 0, 0.2);
}

.l-header__menuBtn .c-iconBtn:hover {
    background: linear-gradient(135deg, #ff8c00 0%, #ff6b35 100%) !important;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(255, 140, 0, 0.3);
}

.l-header__menuBtn .c-iconBtn__icon {
    color: white !important;
}

/* SPメニュー内のボタンもグラデーション */
.p-spMenu .c-iconBtn {
    background: linear-gradient(135deg, #ffd700 0%, #ff8c00 100%) !important;
    color: white !important;
    transition: all 0.3s ease;
}

.p-spMenu .c-iconBtn:hover {
    background: linear-gradient(135deg, #ff8c00 0%, #ff6b35 100%) !important;
    transform: scale(1.05);
}

/* フッターのボタンもグラデーション */
.l-footer .c-widget__title {
    border-left: 4px solid #ff8c00;
    padding-left: 12px;
}

/* リンクホバー時のカラー */
a:hover {
    color: #ff6b35;
    transition: color 0.3s ease;
}

/* オレンジボタンもグラデーションに */
.swell-block-button.orange_ .swell-block-button__link {
    background: linear-gradient(135deg, #ff8c00 0%, #ff6b35 100%) !important;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 140, 0, 0.3);
}

.swell-block-button.orange_ .swell-block-button__link:hover {
    background: linear-gradient(135deg, #ff6b35 0%, #ff4500 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 140, 0, 0.4);
}

/* 背景画像があるセクションにもオーバーレイグラデーション */
.swell-block-fullWide.has-bg-img.gradient-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.7) 0%, rgba(255, 140, 0, 0.7) 50%, rgba(255, 107, 53, 0.7) 100%);
    z-index: 1;
}

.swell-block-fullWide.has-bg-img.gradient-overlay .swell-block-fullWide__inner {
    position: relative;
    z-index: 2;
}