.elementor-5727 .elementor-element.elementor-element-b26487d{--display:flex;}/* Start custom CSS for html, class: .elementor-element-6084214 */body {
    font-family: 'Inter', sans-serif;
    background-color: #f0f2f5;
    color: #333;
}
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}
.btn-primary {
    background-color: #4CAF50;
    color: white;
    padding: 15px 30px;
    border-radius: 10px;
    font-weight: 700;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 10px rgba(76, 175, 80, 0.3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.btn-primary:hover {
    background-color: #45a049;
    transform: translateY(-2px);
}
.btn-secondary {
    background-color: #007BFF;
    color: white;
    padding: 15px 30px;
    border-radius: 10px;
    font-weight: 700;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 10px rgba(0, 123, 255, 0.3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.btn-secondary:hover {
    background-color: #0069d9;
    transform: translateY(-2px);
}
.section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 40px;
    text-align: center;
}
/* Hero Section Specific Styles */
.hero-section {
    background-image: url('https://gt.stoccar.com/wp-content/uploads/2025/07/lpgt20250719-1.png'); /* ヒーローセクションの背景画像 */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    z-index: 0;
}
.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5); /* 半透明のオーバーレイ */
    z-index: -1;
    border-radius: inherit; /* 親要素の角丸を継承 */
}

/* Contact Section Specific Styles */
.contact-section {
    background-image: url('https://gt.stoccar.com/wp-content/uploads/2025/06/main-scaled.jpg'); /* お問い合わせセクションの背景画像 */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    z-index: 0;
}
.contact-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6); /* コントラストを高めるための濃いオーバーレイ */
    z-index: -1;
    border-radius: inherit;
}

/* Styles for replaced images to mimic icon size/centering */
.icon-img {
    width: 90px; /* アイコン画像の幅 */
    height: 90px; /* アイコン画像の高さ */
    object-fit: contain; /* 画像が歪まないように調整 */
    margin: 0 auto 1rem; /* 中央寄せと下マージン */
    display: block;
    border-radius: 8px; /* アイコン画像の角丸 */
}

/* Staff image specific styles */
.staff-img {
    width: 400px; /* スタッフ画像の幅をより横長に調整 */
    height: 150px; /* スタッフ画像の高さ */
    object-fit: cover; /* 画像がコンテナを埋めるように調整 */
    border-radius: 8px; /* 円形ではなく角丸にする */
    margin: 0 auto 1rem; /* 中央寄せと下マージン */
    display: block;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* 影を追加 */
}

/* Store logo specific styles */
.store-logo-img {
    width: 120px; /* 店舗ロゴの幅を少し大きく調整 */
    height: 60px; /* 店舗ロゴの高さを少し大きく調整 */
    object-fit: contain; /* 画像が歪まないように調整 */
    margin: 0 auto 1rem; /* 中央寄せと下マージン */
    display: block;
}


@media (max-width: 768px) {
    .section-title {
        font-size: 2rem;
    }
    .hero-title {
        font-size: 2.5rem;
    }
    .hero-subtitle {
        font-size: 1.1rem;
    }
    .btn-primary, .btn-secondary {
        padding: 12px 20px;
        font-size: 1rem;
    }
    .icon-img {
        width: 70px; /* モバイルでのアイコン画像の幅 */
        height: 70px; /* モバイルでのアイコン画像の高さ */
    }
    .staff-img {
        width: 100%; /* モバイルでは幅いっぱいに */
        height: 150px; /* 高さは維持 */
    }
    .store-logo-img {
        width: 100px; /* モバイルでの店舗ロゴの幅 */
        height: 50px; /* モバイルでの店舗ロゴの高さ */
    }
}/* End custom CSS */