@charset "UTF-8";


@layer reset {
  html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, dialog, figure, figcaption, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: inherit;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    vertical-align: baseline;
    max-height: 999999px;
  }

  *, *:before, *:after {
    box-sizing: border-box;
    min-inline-size: 0px;
  }

  [id] {
    scroll-margin-top: var(--scroll-adjust);
  }

  body {
    min-width: var(--min-device-width);
    color: var(--color-base);
    font-family: var(--fontFamily-base);
    font-weight: var(--fontWeight-base);
    font-size: var(--fontSize-base);
    line-height: var(--liheHeight-base);
    background: var(--color-bg-base);
    word-break: break-all;
    word-wrap: break-word;
    /*202009 100%はiPadでサイズが変わってしまうのでnoneを使う*/
    -webkit-text-size-adjust: none;
  }

  a {
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    vertical-align: baseline;
    color: inherit;
    text-decoration: none;
    max-height: 999999px;
  }

  a, button {
    outline: 5px solid transparent;
    outline-offset: var(--outline-offset-start, 10px);
    transition: outline-offset var(--sec);
  }
  a::-moz-focus-inner, button::-moz-focus-inner {
    border: 0;
  }

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

  a img {
    border: 0;
    transition: opacity var(--sec);
  }

  a:focus,
button:focus {
    outline: 2px solid var(--color-outline);
    outline-offset: var(--outline-offset-end, 0px);
  }

  :focus {
    scroll-margin-bottom: 100px;
  }

  :focus:not(:focus-visible) {
    outline: 0;
  }

  :where(a):focus-visible {
    text-decoration: underline;
  }
  @media (any-hover: hover) {
    :where(a):hover {
      text-decoration: underline;
    }
  }

  article, aside, dialog, figure, footer, header,
hgroup, nav, section {
    display: block;
  }

  li {
    list-style-type: none;
  }

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

  table, caption, tbody, tfoot, thead, tr, th, td {
    font-size: inherit;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    outline: 0;
    vertical-align: baseline;
    max-height: 999999px;
  }

  caption, th, td {
    text-align: inherit;
  }

  blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
    content: none;
  }

  blockquote, q {
    quotes: none;
  }

  del {
    text-decoration: line-through;
  }

  abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
  }

  ins {
    text-decoration: none;
  }

  mark {
    /*	font-style:italic;*/
    /*	font-weight:bold;*/
  }

  hr {
    clear: both;
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #666;
    margin: 1em 0;
    padding-bottom: 30px;
  }

  iframe:is([src^="https://www.youtube.com"],
 [src^="https://youtu.be"]) {
    max-width: 100%;
    height: auto;
    aspect-ratio: 16/9;
  }
}