@charset "utf-8";




/* --------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */
@font-face {
    font-family: 'design_plus';
    src: url('../fonts/design_plus.eot?v=1.1');
    src: url('../fonts/design_plus.eot?v=1.0#iefix') format('embedded-opentype'),
         url('../fonts/design_plus.woff?v=1.1') format('woff'),
         url('../fonts/design_plus.ttf?v=1.1') format('truetype'),
         url('../fonts/design_plus.svg?v=1.1#design_plus') format('svg');
    font-weight: normal;
    font-style: normal;
}


/* アイコンフォント */
.icon-arrow-right:before {
  content: "\e910";
}

.icon-file-text:before {
  content: "\f15c";
}

.icon-share-alt:before {
  content: "\f1e0";
}

.icon-phone:before {
  content: "\f095";
}

.icon-envelope:before {
  content: "\f0e0";
}

.icon-tag:before {
  content: "\f02b";
}

.icon-pencil:before {
  content: "\f040";
}

.icon-close:before {
  content: "\e91a";
}




/*
.open_left #container { right:85%; }
.open_right #container { right:-85%; }
*/

/* 右のウィジェットエリア */
/*#side_col {
  display: none;
  position:fixed; top:0px; right:0px; width:85%; height:100%; z-index:9; padding:55px 15px; overflow:auto;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.open_left #side_col { display:block; }
.open_right #side_col { display:none; }
*/

/* 左のメニューエリア */
/*#navi {
  display: none;
  position:fixed; top:0px; left:0px; width:85%; height:100%; z-index:9; padding-top:55px; overflow:auto;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.open_left #navi { display:none; }
.open_right #navi { display:block; }
#navi > ul { margin-bottom:100px; }
#navi a { display:block; border-bottom:1px solid #ccc; padding:15px; text-decoration:none; color:#333; }
#navi li li a { padding-left:30px; }
#navi li li li a { padding-left:60px; }
#navi li li li li a { padding-left:90px; }
#navi a:hover { color:#fff; background:#ff9c00; }
#navi .side_headline { margin:0; padding:15px; border-bottom:1px solid #ccc; }
*/

/* 固定ボタン */
/*#footer_menu_button {
  position:fixed; right:0px; bottom:0px; z-index:10; width:100%; background:rgba(255,255,255,0.9); border-top:1px solid #ccc; height:50px; box-shadow:0 0 5px 0 rgba(0,0,0,0.2);
  -webkit-transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000); -moz-transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000); -o-transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000); transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.open_left #footer_menu_button { right:85%; }
.open_right #footer_menu_button { right:-85%; }
#footer_menu_button li { float:left; width:25%; font-size:10px; }
.open_left #footer_menu_button li#footer_menu_button2 { float:right; width:15%; }
.open_right #footer_menu_button li { width:15%; }
#footer_menu_button li a { display:block; text-align:center; padding-top:14px; height:36px; line-height:50px; color:#333; text-decoration:none; }
#footer_menu_button li#footer_menu_button1 a { background:url(../img/footer/mobile_menu1.png) no-repeat center 9px; }
#footer_menu_button li#footer_menu_button2 a { background:url(../img/footer/mobile_menu2.png) no-repeat center 9px; }
#footer_menu_button li#footer_menu_button3 a { background:url(../img/footer/mobile_menu3.png) no-repeat center 9px; }
#footer_menu_button li#footer_menu_button4 a { background:url(../img/footer/mobile_menu4.png) no-repeat center 8px; }
#footer_menu_button li a:hover { background-color:#ddd !important; }
.open_left #footer_menu_button li#footer_menu_button2 a { background:url(../img/footer/mobile_menu5.png) no-repeat center 9px; }
.open_right #footer_menu_button li#footer_menu_button1 a { background:url(../img/footer/mobile_menu5.png) no-repeat center 9px; }
*/

/* header */
#logo_image_mobile { display: table-cell; text-align: left; vertical-align: middle; float:none; margin:0; font-size:0; font-weight:normal; padding-left: 15px; }
#logo_image_mobile a { display:inline-block; height:20px; margin:0; }
#logo_image_mobile img { width:auto; max-height: 100%; }

#logo_text { margin:19px 0 0 15px; z-index:10; float:left; text-align:left; width:-webkit-calc(100% - 90px); width:-moz-calc(100% - 90px); width:calc(100% - 90px); overflow:hidden; }
#logo_text h1 { font-size:18px; font-weight:normal; }
#logo_text a, #logo_image h1 a { color:#333; text-decoration:none; display:block; -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none; }
#logo_text a:hover, #logo_image h1 a:hover { text-decoration:underline; }

/* menu button */
a.menu_button {
   position:absolute; right:0px; top:0px; z-index:9;
   display:inline-block; font-size:11px; color:#333; width:60px; height:60px; line-height:56px; text-decoration:none;
}
a.menu_button span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
a.menu_button:before {
  font-family:'design_plus'; color:#888; display:block; position:absolute; top:18px; left:18px;
  font-size:18px; width:24px; height:24px; line-height:24px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
a.menu_button:before { content:'\f0c9'; text-align: center; }
a.menu_button:hover, a.menu_button.active { background:#333; }
a.menu_button:hover:before, a.menu_button.active:before { color:#fff; }

/* グローバルメニュー */
#global_menu { display:none; clear:both; width:100%; margin:0; top:60px; left:0; position:absolute; z-index:9; box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -moz-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); }
#global_menu ul { margin:0; }
#global_menu ul ul { display:none; }
#global_menu a {
  position:relative; display:block;  margin:0; padding:0px 15px; height:50px; line-height:50px; overflow:hidden; text-decoration:none;
  color:#fff; background:#333; font-size:13px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#global_menu a:hover { color:#fff; }
#global_menu ul ul a { padding-left:28px; background:#222; }
#global_menu ul ul ul a { padding-left:42px; background:#111; }
#global_menu ul ul ul ul a { padding-left:55px; background:#000; }
#global_menu li.menu-item-has-children { position:relative; }
#global_menu .child_menu_button { display:block; position:absolute; text-align:center; width:60px; height:49px; right:0px; top:1px; z-index:9; cursor:pointer;  }
#global_menu .child_menu_button .icon:before {
  content:'+'; font-size:13px; color:#aaa; text-align:center;
  display:block; width:20px; height:20px; line-height:20px; border:1px solid #555; border-radius:100%;
  position:absolute; left:20px; top:15px;
}
#global_menu .child_menu_button.active .icon:before, #global_menu .child_menu_button:hover .icon:before { color:#fff; border-color:#fff; }
#global_menu li.menu-item-has-children.open > .child_menu_button .icon:before { content:'-'; }
#global_menu li.menu-item-has-children.open > ul { display:block; }





/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header { position:relative; margin:0 auto; text-align:center; z-index:9; padding:0; height: 60px; width: 100%; display: table; text-align: left; }

/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
#side_col2{ padding: 0 15px; }

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
/* menu list */
#footer_menu_list { text-align:left; border-top:1px dotted #ccc; }
#footer_menu_list li { margin:0; }
#footer_menu_list li a { display:block; border-bottom:1px dotted #ccc; padding:15px; color:#333; text-decoration:none; }
#footer_menu_list li a:hover { background:#ff9c00; color:#fff; }


/* フッター下部 */
#footer_bottom { }


/* ページ上部へ戻るボタン */
#return_top2 {
  position:fixed; right:0px; bottom:0px; z-index:999;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
#return_top2 a { display:block; height:60px; width:60px; text-decoration:none; background:#ccc; z-index:100; }
#return_top2 span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top2 a:before {
  font-family:'design_plus'; content:'\e911'; top:23px; left:21px;
  color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top2.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }


/* コピーライト */
#copyright { height:60px; line-height:60px; text-align:center; margin:0; }


