@charset "utf-8";

/* ==========================================================================
reset.css
ブラウザ標準スタイルの初期化（案件を通して原則編集しない）
========================================================================== */

*,
*::before,
*::after {
box-sizing: border-box;
}

html {
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
line-height: 1.15;
scroll-behavior: smooth;
}

body,
h1, h2, h3, h4, h5, h6,
p, figure, blockquote, dl, dd,
ul, ol, li {
margin: 0;
padding: 0;
}

ul, ol {
list-style: none;
}

h1, h2, h3, h4, h5, h6 {
font-size: inherit;
font-weight: inherit;
}

main {
display: block;
}

a {
color: inherit;
text-decoration: none;
background-color: transparent;
}

img,
picture,
video,
canvas,
svg,
iframe {
display: block;
max-width: 100%;
height: auto;
border-style: none;
vertical-align: bottom;
}

button,
input,
optgroup,
select,
textarea {
font: inherit;
color: inherit;
margin: 0;
background-color: transparent;
border-radius: 0;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: none;
appearance: none;
padding: 0;
border: none;
cursor: pointer;
}

textarea {
overflow: auto;
resize: vertical;
}

table {
border-collapse: collapse;
border-spacing: 0;
}

th,
td {
padding: 0;
text-align: left;
vertical-align: top;
}

address {
font-style: normal;
}

small {
font-size: inherit;
}

hr {
height: 0;
overflow: visible;
border: none;
border-top: 1px solid currentColor;
}

[hidden] {
display: none !important;
}

@media (prefers-reduced-motion: reduce) {

html {
scroll-behavior: auto;
}

*,
*::before,
*::after {
transition-duration: 0.01ms !important;
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
}

}
