@charset "utf-8";

@media screen and (max-width: 768px) {

/* =============================================================

　　Mobile - Base Setting

============================================================= */


/*  Overall Setting
--------------------------------------------- */

/*  Switch Display
-------------------------- */

.media-pc {
  display: none;
}

.media-sp,
img.media-sp {
  display: inline;
}

p.media-sp,
div.media-sp,
ul.media-sp,
ol.media-sp,
li.media-sp,
table.media-sp,
form.media-sp,
dl.media-sp,
h1.media-sp,
h2.media-sp,
h3.media-sp,
h4.media-sp,
h5.media-sp,
h6.media-sp {
  display: block;
}


/*  Container Setting
--------------------------------------------- */

#container {
  min-width: 0 !important;
  background: none;
}

.inner {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}


/*  Header Setting
--------------------------------------------- */

#header {
  width: 100%;
  height: auto; 
  padding: 0;
}

#header .media-pc {
  display: none !important;
}

/* ------ Site Logo ------ */

#header #logo {
  padding: 0;
}

#header #logo h1 img {
  max-width: 85px;
}

#header #logo p {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
}

#header #logo p img {
  width: 48%;
}

/* -- Header Background -- */

#header:before {
  background-image: url(/share/imgs/header-bg-all-sp.jpg);
}

/*  Content Settings
--------------------------------------------- */

#content {
  display: block;
  padding-top: 47%;
  padding-right: 0 !important;
  padding-left: 0 !important;
  padding-bottom: 0;
  font-size: 1em !important;
}


/*  Content Top
-----------------------------------*/

#content-top {
}

/*  Content Main
-----------------------------------*/

#content-main {
  padding-bottom: 30px;
}


/*  2 Column Setting
-----------------------------------*/

#main,
#side {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}


/*  Footer Setting
--------------------------------------------- */

#footer {
  position: inherit;
  left: auto;
  bottom: auto;
  height: auto;
  font-size: 1em !important;
}

#footer .inner {
  padding: 30px 15px;
}

/* ---- Address / Logo ---- */

.footer-address,
.footer-logo {
  display: block;
  width: 100%;
}

/* ---- Address ---- */

.footer-address {
  margin: 0 auto;
  font-size: .8em;
  text-align: center;
  line-height: 1.8;
}

.footer-address dt {
  padding-bottom: 5px;
  font-size: 1.2em;
}

.ttl-address {
  display: block;
}

/* ---- Logo ---- */

.footer-logo {
  display: block;
  padding: 20px 0 0;
  text-align: center;
}

.footer-logo img {
  width: 60%;
  max-width: 200px;
}

/* ------ Page Top ------ */

#pagetop {
  display: block;
  top: -22px !important;
  right: 10px;
  margin-left: 0;
}

#pagetop.fxd {
  position: fixed;
  top: auto !important;
  bottom: 10px;
}

#pagetop a {
  width: 46px;
  height: 46px;
  background-size: 100%;
}

}