@charset "UTF-8";
/* ----------------------------------------------------------------------

// reset.css
// 要素のデフォルトスタイル、フォントサイズのリセット

------------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
  Global selectors
------------------------------------------------------------------------- */

html {
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  scrollbar-gutter: stable;
}

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


/* ----------------------------------------------------------------------
  General selectors
------------------------------------------------------------------------- */

ul[role='list'],
ol[role='list'],
li {
  list-style: none;
}


h1, h2,
h3, h4 {
  text-wrap: balance;
}

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

table {
  border-collapse: collapse;
}


/* ----------------------------------------------------------------------
  Forms
------------------------------------------------------------------------- */

input, button, textarea, select {
  background-color: transparent;
  background-image: none;
  border: none;
  border-radius: 0;
  outline: none;
  appearance: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
}

textarea {
  overflow: auto;
  resize: vertical;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}


/* ----------------------------------------------------------------------
    Specify media element style
------------------------------------------------------------------------- */

audio,
canvas,
progress,
video,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}


/* ----------------------------------------------------------------------

// util.css
// 案件に依存せず汎用的に使うClassを定義

------------------------------------------------------------------------- */
/* br
------------------------------------------------- */
.sp_only {
	display: none;
}
.tablet_only {
	display: none;
}
.xs_only {
	display: none;
}
@media screen and (max-width: 960px) {
  .pc_only {
    display: none;
  }
  .tablet_only {
    display: inline-block;
  }
  .tablet_none {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .sp_only {
    display: inline-block;
  }
  .sp_none {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .xs_only {
    display: inline-block;
  }
  .xs_none {
    display: none;
  }
}



/* align
------------------------------------------------- */
.align_l {
	text-align: left !important;
}
.align_r {
	text-align: right !important;
}
.align_c {
	text-align: center !important;
}
