@charset "UTF-8";
/* * * * * * * * * * * * * * * *
  COMMON
* * * * * * * * * * * * * * * */
* {
  box-sizing: border-box; }

html {
  font-size: 10px; }

body {
  line-height: 1.71429;
  font-size: 1.4em;
  font-family: Arial, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  color: #000;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  background: url(../image/bg_body_01.png); }

@media (-ms-high-contrast: none) {
  body {
    font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; } }
img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto; }

a,
.hover {
  color: inherit;
  text-decoration: none;
  transition: opacity linear 0.1s; }
  a:hover,
  .hover:hover {
    text-decoration: underline;
    opacity: 0.8; }

input, textarea, select {
  font: inherit;
  vertical-align: top; }

.inner {
  padding: 0 10px;
  max-width: 1000px;
  margin: auto; }

.hidden_text {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  height: 0; }

.ta_c {
  text-align: center; }

.ta_r {
  text-align: right; }

.ta_l {
  text-align: left; }

.c_red {
  color: #f00; }

@media all and (max-width: 767px) {
  body {
    min-width: 0;
    font-size: 1.3em; } }
@media all and (max-width: 450px) {
  body {
    background-size: 20px auto; } }
/* clearfix */
.clf:before, .clf:after {
  content: ".";
  display: block;
  height: 0;
  overflow: hidden; }
.clf:after {
  clear: both; }

/* hide element */
@media all and (max-width: 767px) {
  .hide_sp {
    display: none; } }
@media all and (min-width: 768px) {
  .hide_pc {
    display: none; } }
/* * * * * * * * * * * * * * * *
  HEADER
* * * * * * * * * * * * * * * */
#header {
  background-color: #f0efeb; }

/* * * * * * * * * * * * * * * *
  FOOTER
* * * * * * * * * * * * * * * */
#footer {
  position: relative;
  margin-top: 167px;
  padding: 35px 0 50px;
  background-color: #f0efeb; }
  #footer #pagetop {
    right: 20px; }
  #footer .box_01 > * {
    margin-bottom: 1.7em; }
  #footer .box_02 {
    margin-top: 4.59184%;
    overflow: hidden;
    /*
    display: table;
    table-layout: fixed;
    width: 100%;
    */ }
    #footer .box_02 .copyright {
      padding-top: 20px;
      float: left;
      /*
      display: table-cell;
      vertical-align: middle;
      */ }
    #footer .box_02 .logo {
      float: right;
      /*
      display: table-cell;
      vertical-align: middle;
      text-align: right;
      */ }

@media all and (max-width: 767px) {
  #footer {
    margin-top: 31.25%;
    padding: 35px 0 10px; }
    #footer #pagetop {
      width: 40px; }
    #footer .box_01 > * {
      margin-bottom: 1.7em; }
    #footer .box_02 {
      margin-top: 9.375%;
      text-align: center; }
      #footer .box_02 .copyright {
        float: none;
        padding-top: 20px;
        line-height: 1.5;
        font-size: 83.33333%; }
      #footer .box_02 .logo {
        float: none;
        max-width: 32.8125%;
        margin-left: auto;
        margin-right: auto; } }
@media all and (max-width: 450px) {
  #footer {
    font-size: 92.30769%; } }
