@charset "utf-8";
/*---------------------------------------
1. 基本設定
---------------------------------------*/

/*
リセットcss↓↓↓↓
*/
* {
	box-sizing: border-box;
}

/*body {
  font-style: normal;
  font-weight: normal;
  line-height: 1.5em;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN","Hiragino Sans", "Yu Gothic", "Meiryo", "Noto Sans JP", "Noto Sans CJK JP", sans-serif;
  font-size: 16px;
}*/
html {
  font-style: normal;
  font-weight: normal;
  line-height: 1.5em;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", "Meiryo", "Noto Sans JP", "Roboto", sans-serif;
  font-size: 18px;
}
body {
	font-size:1rem;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
label,
fieldset,
legend,
input,
textarea,
p,
blockquote,
table,
caption,
tr,
th,
td,
span,
object,
iframe,
a,
address,
em,
strong,
img {
  margin: 0;
  padding: 0;
  border: 0;
}

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

img {
  width: 100%;
  height: auto;
  border: 0;
  display: block;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  user-select: none;
}

ul,
ol,
li {
  list-style: none;
}

object,
embed {
  vertical-align: top;
}

label {
  cursor: pointer;
}

legend {
  padding: 0;
}

button,
input,
select,
textarea {
  font-size: 1rem;
  margin: 0;
  vertical-align: baseline;
  border: 1px solid #aaa;
}

td,
textarea {
  vertical-align: top;
}

button,
input {
  line-height: normal;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
}

input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}


/*↓HTML5新要素をブロック化する↓*/
header,
section,
footer,
aside,
nav,
article,
hgroup,
figcaption,
figure,
canvas,
audio,
video,
main,
picture {
  margin: 0;
  padding: 0;
  display: block;
}

/*↓float解除用「clearfix」↓*/
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  zoom: 1;
  /*for IE 5.5-7*/
}

/*
リセットcss↑↑↑↑↑↑↑↑
*/


/*↓リンクに対する共通設定↓*/
a {
	/*
  text-decoration: none;
  color: white;*/
  /*background-color:#aaa;*/
}

a:hover {
  /*opacity: 0.6;*/
}

a:hover img {
/*  opacity: 0.6;
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;*/
}

a:focus {
  outline: none;
}

a:visited {
  /*color:#FFB900;*/
}

.border1sC {
  border: 1px solid #ccc;
}

.borderBox {
  box-sizing: border-box;
}

/*↓共通クラス名↓*/
.fL{
  float: left;
}
.fR{
  float: right;
}

.textAL{
    text-align:left;
}
.textAC{
	text-align:center;
}
.textAR{
    text-align:right;
}

.mb30{
    margin-bottom: 30px;
}
.mb50{
    margin-bottom: 50px;
}
.mb1em{
    margin-bottom: 1em;
}
.mb2em{
    margin-bottom: 2em;
}
.mb3em{
    margin-bottom: 3em;
}
.mt30{
    margin-top: 30px;
}
.mt50{
    margin-top: 50px;
}
.mt1em{
    margin-top: 1em;
}
.mt2em{
    margin-top: 2em;
}
.mt3em{
    margin-top: 3em;
}

.fS1-1rem{
	font-size:1.1rem;
}
.fS1-2rem{
	font-size:1.2rem;
}
.fS1-3rem{
	font-size:1.4rem;
}
.fS1-4rem{
	font-size:1.4rem;
}
.fS1-5rem{
	font-size:1.5rem;
}
.fS1-8rem{
	font-size:1.8rem;
}
.fS2rem{
	font-size:2rem;
}

.lineH1{
	line-height:1em;
}
.lineH1-2{
	line-height:1.2em;
}
.lineH2{
	line-height:2em;
}
.lineH2-5{
	line-height:2.5em;
}
.lineH3{
	line-height:3em;
}