/* LINE Seed JP — Thin (300相当) */
@font-face {
    font-family: 'LINE Seed JP';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/LINESeedJP_OTF_Th.woff2') format('woff2');
  }
  
  /* LINE Seed JP — Regular (400) */
  @font-face {
    font-family: 'LINE Seed JP';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/LINESeedJP_OTF_Rg.woff2') format('woff2');
  }
  
  /* LINE Seed JP — Bold (700) */
  @font-face {
    font-family: 'LINE Seed JP';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/LINESeedJP_OTF_Bd.woff2') format('woff2');
  }
  
  /* LINE Seed JP — ExtraBold (800) */
  @font-face {
    font-family: 'LINE Seed JP';
    font-style: normal;
    font-weight: 800;
    src: url('../fonts/LINESeedJP_OTF_Eb.woff2') format('woff2');
  }
  
/* Base Styles and Variables */
:root {
    --bg-color: #fffbf0;
    --accent-color: #377d11;
    --emphasis-color: #ff0000;
    --text-color: #333333;
    --light-gray: #f5f5f5;
    --medium-gray: #dddddd;
    --dark-gray: #666666;
    --main-width: 600px;
    --sidebar-width: 200px;
    --sidebar-margin: 40px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
    scroll-padding-top: 0;
    height: 100%;
    overflow-y: scroll;
}

body {
    min-height: 100%;
    overflow-anchor: none;
    font-family: 'LINE Seed JP', 'Noto Sans JP', sans-serif;
    line-height: 1.6;
    color: var(--text-color);
    background-color: white; /* 全体の背景色を白に */
}

img {
    max-width: 100%;
    height: auto;
}

a {
    text-decoration: none;
    color: var(--accent-color);
    transition: all 0.3s ease;
}

a:hover {
    opacity: 0.8;
}

ul {
    list-style: none;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    line-height: 1.3;
}

/* Focus styles for better accessibility */
a:focus, button:focus {
    outline-offset: 2px;
}

/* High contrast mode support */
@media (forced-colors: active) {
    .download-btn, .more-btn {
        border: 1px solid;
    }
}