@charset "utf-8";

*, *:before, *:after {
   	 box-sizing: border-box;
}
html, body, div, span, iframe,
h1, h2, h3, h4, h5, h6, p,
abbr, address,
del, dfn, em, img,
small, strong, button,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, summary, figure, footer, header, nav, section,
time, audio, video {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-weight: normal;
}
ul, ol {
	list-style:none;
}
img,
svg {
	max-width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: bottom;
	background: transparent;
}

a,
area,
button,
[role="button"],
input:not([type=range]),
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    color: #1a1a1a;
    text-decoration: none;
    vertical-align:baseline;
    background:transparent;
}
em,
address {
	font-style: normal;
}

/* tab移動時にoutline出現（clickでは出現しない） */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) {
	outline: none;
}


/* for accessibility */

/*コンテンツを視覚的に隠すが、スクリーンリーダーにはアクセス可能*/
.visually-hidden {
  position: fixed !important;
  top: 0px !important;
  left: 0px !important;
  width: 4px !important;
  height: 4px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  visibility: visible !important;
}

/* ユーザーがアニメーションや操作を最小化する設定を検知した場合 */
@media(prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}
