/* ============================================
   CSS Reset
   ============================================ */

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

html {
    font-size: 10px; /* 1rem = 10px */
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
}

/* Remove default styling from list elements */
ul,
ol {
    list-style: none;
}

/* Remove default styling from links */
a {
    text-decoration: none;
    display: inline-block;
}
a:has(img) {
    line-height: 0; /* 画像下の余白を防ぐ */
}

/* Remove default button styling */
button {
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    cursor: pointer;
}

/* Remove default input styling */
input,
textarea,
select {
    font: inherit;
    box-sizing: border-box;
}

/* Remove default image styling */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Remove default table styling */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* Remove default heading margins */
h1, h2, h3, h4, h5, h6 {
    margin: 0;
}

/* Normalize address element (some UA styles use italic) */
address, em {
    font-style: normal;
}
