/* ==============================================
/* :root
============================================== */
:root {
  --color-base: #444444;
  --color-white: #ffffff;
  --color-gray: #efefef;
  --color-dark-gray: #bbbbbb;
  --color-navy: #003a57;
  --color-red: #d63638;
  --color-light-red: #ffeaf1;
  --color-green: #16b192;
  --color-orange: #f6a822;
  --color-blue: #007aff;
  --color-light-blue: #eff7ff;
  --color-theme: #00a9c9;
  --color-khaki: #d3c27c;
}

/* ==============================================
/* Base Setting
============================================== */
body {
  color: #444444;
  font: 400 16px/1.5 "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  position: relative;
  word-break: break-all;
  text-align: justify;
  letter-spacing: 0.1em;
}

@media screen and (width <=768px) {
  body {
    font-size: 14px;
  }
}

/* ==============================================
/* br
============================================== */
.br-pc {
  display: block;
}

.br-sp {
  display: none;
}

@media screen and (width <=768px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: block;
  }
}

/* ==============================================
/* Image
============================================== */
img {
  vertical-align: bottom;
}

/* ==============================================
/* ul, ol
============================================== */
ul,
ol {
  list-style: none;
}

/* ==============================================
/* elementCenter
============================================== */
.elementCenter {
  display: grid;
  place-items: center;
}

/* ==============================================
/* frame Setting
============================================== */
#frame {
  max-inline-size: 800px;
  margin: 0 auto;
}

@media screen and (width <=768px) {
  #frame {
    inline-size: 100%;
  }
}

/* ==============================================
/* Inner Setting
============================================== */
.inner {
  max-inline-size: 730px;
  margin: 0 auto;
}

@media screen and (width <=768px) {
  .inner {
    inline-size: 100%;
    padding-inline: 10px;
  }
}

/* ==============================================
/* Footer
============================================== */
footer {
  display: grid;
  place-items: center;
  color: var(--color-base);
  background: var(--color-gray);
  padding: 30px 0;
}
