@charset "UTF-8";

@layer reset, base, layout, component, project, utility, print;
@import url("reset.css") layer(reset);
@import url("base.css") layer(base);
@import url("component.css") layer(component);
@import url("layout.css") layer(layout);
@import url("project.css") layer(project);
@import url("utility.css") layer(utility);


/* ===================================
   CSS Variables (Design Tokens)
   style.css - カラー、フォント、スペーシング変数のみ
   =================================== */
:root {
    /* Text Colors */
    --base-font-color: #252525;
    --text-color-gray: #444444;
    --text-color-dark-gray: #3E3A39;
    --text-color-blue: #22334D;
    --text-color-sub: #3c3c3c;
    --text-color-black: #000000;
    --text-color-white: #FFFFFF;

    /* Background Colors */
    --bg-color-white: #FFFFFF;
    --bg-color-light-blue: #ddf4fa;
    --bg-color-light-green: #f1ffce;
    --bg-color-gray: #ededed;
    --bg-color-btn: #F6F6F6;
    --bg-color-cyan: #77D4DA;
    --bg-color-cyan-80: rgba(119, 212, 218, 0.80);
    --bg-color-light-gray: #f5f5f5;
    --bg-color-footer: #1B1F83;
    --bg-color-accent-gray: #f1f1f1;

    --bg-about: var(--bg-color-light-blue);

    /* Primary Colors */
    --primary-color: #1b1f83;
    --secondary-color: #06071d;

    /* Border Colors */
    --border-color-black: #000000;
    --border-color-white: #FFFFFF;

    /* Gradients */
    --gradient-case-bg: linear-gradient(180deg, #f1ffce 0%, #ddf4fa 100%);
    --gradient-blue: linear-gradient(180deg, #06071d 0%, #1b1f83 100%);
    --gradient-blue-2: linear-gradient(180deg, #1B1F83 29.81%, #06071D 100%);
    --gradient-btn-hover: linear-gradient(to right, transparent 0%, transparent 50%, #000 50%, #666 100%);
    --gradient-gray: linear-gradient(0deg, #FFF 0%, #F0F0F0 100%);
    --gradient-emerald: linear-gradient(0deg, #7CF2FB 0%, #000 100%);

    /* Typography */
    --font-primary: 'Zen Old Mincho', serif;
    --font-secondary: 'Noto Sans JP', sans-serif;
    --font-english: 'Advent Pro', sans-serif;

    /* Spacing */
    --header-height: 75px;
    --container-width: 1024px;
    --container-padding: 40px;

    /* Border Radius */
    --radius-sm: 3px;
    --radius-md: 10px;

    /* Box Shadows */
    --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.05);
    --shadow-md: 0 10px 40px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.1);
    --shadow-card-hover: 0 20px 60px rgba(0, 0, 0, 0.12);
    --shadow-cyan: 0 10px 20px rgba(119, 212, 218, 0.4);

    /* Transitions */
    --transition-base: 0.3s ease;

    /* Font Size */
    --font-size-base: 16px;

}

@media screen and (min-width: 992px) {
    :root {
        --header-height: 75px;
    }
}