/*
Theme Name: Roadmax Theme
Description: 株式会社ロードマックス専用テーマ - 道路標識・交通安全施設工事のプロフェッショナル
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');

* {
    font-family: 'Noto Sans JP', sans-serif;
}

/* Reset and Base Styles */
body {
    margin: 0;
    padding: 0;
    background-color: #f9fafb;
}

/*
.hero-bg の定義は、PHPで画像のパスを正しく指定するため、
header.phpファイルに移動させました。
*/

.feature-card:hover, .project-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    transition: all 0.3s ease;
}

.nav-link { 
    position: relative; 
}

.nav-link::after {
    content: ''; 
    position: absolute; 
    width: 0; 
    height: 2px;
    bottom: 0; 
    left: 0; 
    background-color: #FFB400; 
    transition: width 0.3s ease;
}

.nav-link:hover::after { 
    width: 100%; 
}

.project-card img { 
    transition: transform 0.5s ease; 
}

.project-card:hover img { 
    transform: scale(1.1); 
}

@keyframes fadeIn {
    from { 
        opacity: 0; 
        transform: translateY(20px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

.animate-fade-in { 
    animation: fadeIn 0.6s ease forwards; 
}

.faq-answer, #message-full {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out, margin 0.5s ease-in-out;
}

.faq-answer.open, #message-full.open {
    max-height: 1000px;
}

.faq-icon, #read-more-btn-icon {
    transition: transform 0.3s ease;
}

.faq-icon.rotate-180, #read-more-btn-icon.rotate-180 {
    transform: rotate(180deg);
}

/* WordPress specific styles */
.wp-admin-bar {
    display: none !important;
}

html {
    margin-top: 0 !important;
}

/* Container adjustments for WordPress */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}

@media (min-width: 768px) {
    .container {
        padding: 0 2rem;
    }
}

/* Header adjustments */
header {
    z-index: 1000;
}

/* Content wrapper */
.content-wrapper {
    min-height: 100vh;
}

/* Utility classes for theme switching */
.recruitment-mode .recruitment-highlight {
    display: block !important;
}

.business-mode .business-highlight {
    display: block !important;
}

.recruitment-mode .business-highlight,
.business-mode .recruitment-highlight {
    display: none !important;
}

/* Form styles */
input[type="text"], 
input[type="email"], 
input[type="tel"], 
textarea {
    border: 1px solid #d1d5db;
}

input[type="text"]:focus, 
input[type="email"]:focus, 
input[type="tel"]:focus, 
textarea:focus {
    outline: none;
    border-color: #FFB400;
    box-shadow: 0 0 0 3px rgba(255, 180, 0, 0.1);
}