@charset "utf-8";

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

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

　　スマホ画面 共通設定

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


/*  全体 共通設定
---------------------------------------------*/

html,
body {
	min-width: inherit;
}

/*  画像 共通設定
-------------------------- */

/* スマホ用画像 */

.mediaSP,
img.mediaSP {
  display: inline;
}

p.mediaSP,
div.mediaSP {
  display: block;
}

.mediaPC {
  display: none;
}


/*  アイコン　設定
-------------------------- */

/* -- 矢印白文字 -- */

.btnArwWhite::before {
  position: absolute;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  background: none;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  content: "";
}



/* 　コンテナー　設定
---------------------------------------------*/

#container {
}

.boxInner {
  width: 100%;
}


/*  ヘッダー 設定
---------------------------------------------*/

#boxHeader {
  background: #fff;
  width: 100%;
	max-width: 100%;
	min-width: 100%;
}

/* -------- ヘッダー上部 -------- */

#boxHeader #headerTop {
  min-width: 100%;
  height: 70px;
  border-bottom: 8px solid #149650;
}

#boxHeader #headerTop .boxInner {
  padding: 15px 20px 15px 15px; 
}

/* ---- サイトロゴ ----- */

#boxHeader .boxSiteLogo {
  margin-left: 10px;
}

/* ------ グローバルナビ（SP） ------ */

.boxGlobalNav.mediaSP .btnOpen {
  position: absolute;
  top: 0;
  right: 0;
  padding: 14px 20px;
  cursor: pointer;
}

.boxGlobalNav.mediaSP .btnOpen img {
  width: 28px;
}

.boxGlobalNav.mediaSP dd {
  opacity: 1;
  position: absolute;
  top: 68px;
  left: 0;
  z-index: 100;
  width: 100%;
  border: 2px solid #333;
  border-top-width: 1px;
  background: #f8f6f6;
}

.boxGlobalNav.mediaSP ul {
  background: #f8f6f6;
  font-weight: bold;
  font-size: 0.92em;
  text-shadow: none;
  letter-spacing: 0;
}

.boxGlobalNav.mediaSP li {
  float: none;
  border-top: 1px solid #999;
  background: none;
  width: auto;
  height: auto;
  padding: 0;
}

.boxGlobalNav.mediaSP li,
.boxGlobalNav.mediaSP li a {
  color: #333 !important;
}

.boxGlobalNav.mediaSP li a {
  position: relative;
  transition: none !important;
  display: block;
  background: #f8f6f6;
  padding: 10px 40px 10px 15px;
  text-align: left;
  line-height: 1.7em;
  text-decoration: none;
  font-size: 16px;
}

.boxGlobalNav.mediaSP li a.gray {
  background: #ccc;
  font-size: 14px;
}

.boxGlobalNav.mediaSP li a.icnArw::after {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
  border-top: 4px solid #333;
  border-right: 4px solid #333;
  border-radius: 3px;
  width: 8px;
  height: 8px;
  margin-top: -7px;
}

/*
.boxGlobalNav.mediaSP li a:hover {
  opacity: 1;
  color: #9fce2f !important;
}

.boxGlobalNav.mediaSP li a:hover::after {
  border-top-color: #9fce2f;
  border-right-color: #9fce2f;
}
*/

.boxGlobalNav.mediaSP .boxSNS {
  padding: 14px 0;
  text-align: center;
}

.boxGlobalNav.mediaSP .boxSNS a {
  display: inline;
  padding: 0 2px !important;
  background: none;
}

.boxGlobalNav.mediaSP .boxSNS a::after {
  display: none;
}

.boxGlobalNav.mediaSP .boxSNS img {
  width: 24px;
}

.boxGlobalNav.mediaSP .boxMenu,
.boxGlobalNav.mediaSP .boxMenu li,
.boxGlobalNav.mediaSP .boxMenu li a {
  height: 0;
  opacity: 0;
  z-index: -200;
}


/*  コンテンツ 設定
---------------------------------------------*/

#content {
  display: block;
  padding-bottom: 0;
  font-size: 0.9em;
}

#content img {
  max-width: 100%;
}

.boxSection .boxInner {
  padding: 20px;
}

#content .boxInner {
	width: 100%;
}

/* -- 1164pxコンテンツ -- */

#contentWide {
	min-width: 100%;
  padding-bottom: 194px; /* フッターの高さ分 */
}

#contentWide .boxInner {
	width: 92%;
	margin: 0 auto;
}

.bgContent {
	background-color: #fff;
}

#content section.boxSection {
	max-width: 100%;
	min-width: 100%;
}


/* -- 2カラムコンテンツ（サイド折りたたみ） -- */

#main {
	float: none;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 40px;
	padding-bottom: 0;
	background: none;
}

#side {
	float: none;
	width: 100%;
	background: none;
}

/* -- サイドカラム -- */

.lt670 #side {
	padding: 1.5em 0 0.5em 0;
	background: none;
}


/*  メイン・サイド 設定
-----------------------------------*/

#division {
  margin: 0 0 20px;
  padding: 0 20px;
}

/*  メイン 設定
------------------------------------*/

#division #main {
  width: 100%;
  margin: 0;
  padding: 0;
}


/*  サイド 設定
------------------------------------*/

#division #side {
  display: none;
}


/*  フッター 設定
---------------------------------------------*/

#footer {
	max-width: 100%;
	min-width: 100%;
  position: inherit;
  left: inherit;
  bottom: inherit;
  height: auto;
  background: url(../img/footer/bg-dot.gif);
  font-size: 0.85em;
}

#footer .boxInner {
  padding: 20px;
}

/* -------- フッター上部 -------- */

#footer #footerTop {
  height: auto;
}


/* ------ グローバルナビ（SP） ------ */

#footer .boxGlobalNav.mediaSP {
  font-size: 1.1em;
}

#footer .boxGlobalNav.mediaSP li a {
  transition: none;
  padding-right: 20px;
  padding-left: 20px;
}

#footer .boxGlobalNav.mediaSP li a::after {
  display: none;
}


/* ------ ページトップボタン ------ */

#footer .boxPageTop {
  position: relative;
  height: 40px;
  background: #a7acb7;
}

#footer .boxPageTop p {
  margin-left: 0;
}

#footer .boxPageTop p.btm {
  position: absolute !important;
  top: 0 !important;
  bottom: auto !important;
}

#footer .boxPageTop p.fxd {
  bottom: 0 !important;
}

#footer .boxPageTop p,
#footer .boxPageTop a {
  width: 100%;
  height: 40px;
}

#footer .boxPageTop a {
  display: block;
  position: relative;
  background: #a7acb7;
  padding: 8px 0;
  text-indent: 25px;
}

#footer .boxPageTop a::before,
#footer .boxPageTop a::after {
  position: absolute;
  left: 50%;
  top: 50%;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
  border-top: 12px solid transparent;
  border-radius: 2px 2px 2px;
  width: 0;
  height: 0;
  margin-top: -18px;
  margin-left: -30px;
  content: "";
}

#footer .boxPageTop a::before {
  border-bottom: 12px solid #fff;
}

#footer .boxPageTop a::after {
  margin-top: -17px;
  border-bottom: 12px solid #a7acb7;
}

#footer .boxPageTop a:hover {
  opacity: 1;
}


/* -------- フッター中部 -------- */

#footer #footerMdl {
  background: none;
}

/* ---- お問い合わせ ----- */

#footer .boxAddress {
}

#footer .boxAddress .boxContactL {
  padding-top: 8px;
  margin-bottom:20px;
}

#footer .boxAddress .boxContactR {

  clear:both;
  float:none;
}


#footer .boxAddress .txtPost {
  display: block;
  margin: 0;
}

/* -------- フッター下部 -------- */

#footer #footerBtm {
  background: none;
}

#footer #footerBtm .boxInner {
  padding-top: 0;
  text-align: center;
}

/* ------ コピーライト ------ */

#footer .txtCopyright {
  float: none;
  font-size: 0.8em;
}

#footer .txtCopyright img {
  display: none;
}

/* ------------ ▼第2フェーズ ------------ */

/* ------ ページトップボタン ------ */

#boxFooter .boxPageTop {
  position: relative;
  height: 40px;
  background: #333;
}

#boxFooter .boxPageTop p {
  right: 0;
}

#boxFooter .boxPageTop p.btm {
  position: absolute !important;
  top: 0 !important;
  bottom: auto !important;
}

#boxFooter .boxPageTop p.fxd {
  bottom: 0 !important;
}

#boxFooter .boxPageTop p,
#boxFooter .boxPageTop a {
  width: 100%;
  height: 40px;
}

#boxFooter .boxPageTop a {
  display: block;
  position: relative;
  background: #333;
  padding: 8px 0;
  text-indent: 25px;
  border-bottom: 1px solid #585858;
}

#boxFooter .boxPageTop a::before,
#boxFooter .boxPageTop a::after {
  position: absolute;
  left: 50%;
  top: 50%;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
  border-top: 12px solid transparent;
  border-radius: 2px 2px 2px;
  width: 0;
  height: 0;
  margin-top: -18px;
  margin-left: -30px;
  content: "";
}

#boxFooter .boxPageTop a::before {
  border-bottom: 12px solid #fff;
}

#boxFooter .boxPageTop a::after {
  margin-top: -17px;
  border-bottom: 12px solid #333;
}

#boxFooter .boxPageTop a:hover {
  opacity: 1;
}

#boxFooter .boxPageTop a span {
  display: block;
}


}