@import url("ie.css");
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

/*-------------------
** reset
-------------------*/
/* YUI 3.5.0 reset.css (http://developer.yahoo.com/yui/3/cssreset/) - http://cssreset.com */
html {
  color: #000;
  background: white;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset,
img {
  border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,
q:after {
  content: "";
}

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input,
textarea,
select {
  *font-size: 100%;
}

legend {
  color: black;
}

#yui3-css-stamp.cssreset {
  display: none;
}

/*-------------------------------------------------------
** 基本設定
-------------------------------------------------------*/
/* body {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 0.9em;
  color: #333;
  line-height: 1.8em;
} */

table {
  font-size: inherit;
  font: 100%;
}

.inner {
  width: 980px;
  margin: 0 auto;
}

/* a {
  color: #2e6ec9;
} */

/* 基本レイアウト
------------------------------------*/
#navigation_wrap {
  /*position: fixed;*/
  padding-top: 55px;
  width: 100%;
}

#navigation {
  width: 980px;
  /*  height:50px; */
  margin: 15px auto 4px;
  padding-bottom: 13px;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#body_wrap {
  width: 980px;
  margin: 0 auto;
}

#foot_area {
  background: #383A3C;
}

#footer {
  width: 980px;
  margin: 0 auto;
  padding: 20px 0;
  color: #fff;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* ヘッダー
------------------------------------*/
#header {
  padding-bottom: 4px;
  background: white url(../images/head_bg.png) repeat-x 0 bottom;
  position: fixed;
  width: 100%;
  z-index: 9999;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#header p#logo {
  width: 205px;
  /*margin: 12px 0 8px 0;*/
  margin: 12px 0 3px 0;
  float: left;
}
#header .inner {
  width: 980px;
  margin: 0 auto;
}

#header * {
  line-height: 1.3;
  /*position: fixed;*/
}

#navigation * {
  line-height: 1.3;
}

#h_nav {
  width: 575px;
  margin-top: 7px;
  float: right;
  text-align: right;
  float: right;
}
#h_nav div.h_nav__box {
  width: auto;
  height: auto;
  text-align: right;
}
#h_nav a {
  display: inline-block;
  margin: 0 0.8em;
  padding: 2px 5px 2px 20px;
  vertical-align: middle;
  text-decoration: none;
  background: url(../images/link_arrow.png) no-repeat 5px 38%;
  color: #3e3e3e;
}

#h_nav a:hover,
#h_nav a:focus {
  background: #195ebd url(../images/link_arrow_rev.png) no-repeat 5px 38%;
  color: #fff;
}

.h__translation {
  width: auto;
  height: auto;
  margin-top: 10px;
  float: left;
}

.h__tel {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 19px;
  margin-top: 2px;
  border-left: 1px dotted #CECECE;
  width: 210px;
  height: 39px;
  float: left;
}

.h__tel__txt01 {
  font-size: 11px;
  text-align: left;
  margin-top: 4px;
}

.h__tel__txt02 {
  font-size: 18px;
  font-weight: bold;
  text-align: left;
}

.h__tel__txt02 > span {
  display: block;
  width: 26px;
  height: 15px;
  background-image: url(../images/h__tel-icon.png);
  float: left;
  margin-top: 3px;
  margin-right: 5px;
  font-size: 0.0000001px;
  color: rgba(255, 255, 255, 0);
}

.h__contact {
  width: auto;
  height: 39px;
  float: right;
}

#h_nav a.contact {
  margin-right: 0;
  padding: 0.6em 1.8em;
  border-style: solid;
  border-width: 2px;
  border-color: #ffbc65 #bc6c00 #bc6c00 #ffbc65;
  border-radius: 4px;
  text-align: center;
  color: #fff;
  background-color: #ff9000;
  background-image: none;
}

#h_nav a.contact span {
  display: inline-block;
  padding-left: 14px;
  background: url(../images/link_arrow_h_rev04.png) no-repeat 0 48%;
  background-size: 12px 12px;
}

#h_nav a.contact:hover,
#h_nav a.contact:focus {
  border-color: #ff9000;
  color: #ff9000;
  background-color: #fff;
}

#h_nav a.contact:hover span,
#h_nav a.contact:focus span {
  background-image: url(../images/link_arrow_4.png);
}

.lang {
  margin-right: 18px;
}

ul#gnav {
  width: 732px;
  float: left;
  background: url(../images/gnav_delimiter.gif) repeat-y 0 0;
}

ul#gnav li {
  float: left;
  width: 126px;
  padding: 0 10px;
  position: relative;
  text-align: center;
  background: url(../images/gnav_delimiter.gif) repeat-y right 0;
}

ul#gnav li.home {
  width: 127px;
}

ul#gnav li a {
  display: block;
  padding: 6px 0;
  border-style: solid;
  border-color: transparent;
  border-width: 2px 0;
  text-decoration: none;
  font-weight: bold;
  color: #3e3e3e;
  margin-bottom: 1px;
}

ul#gnav li.service a span,
ul#gnav li.profile a span,
ul#gnav li.csr a span {
  display: inline-block;
  padding-right: 14px;
  background: url(../images/gnav_downarrow.gif) no-repeat right 30%;
}

ul#gnav li:hover a,
ul#gnav li.focus a {
  border-bottom: solid 2px #3270c6;
  color: #3270c6;
}

ul#gnav ul {
  display: none;
  position: absolute;
  left: 0px;
  z-index: 30;
  width: 225px;
  padding: 4px 0;
  border: 1px solid #BAC3CC;
  background: #fff;
  text-align: left;
}

ul#gnav li:hover ul,
ul#gnav li.focus ul {
  display: block;
}

ul#gnav ul li {
  float: none;
  width: 100%;
  padding: 0;
  background: none;
  font-size: 0.9em;
}

ul#gnav li:hover ul li a,
ul#gnav li.focus ul li a {
  display: block;
  _width: 100%;
  border: 0;
  padding: 10px 10px 10px 23px;
  margin: 0 4px;
  color: #333;
  text-decoration: none;
  background: url(../images/link_arrow.png) no-repeat 3% 45%;
  font-weight: normal;
  text-align: left;
}

ul#gnav li:hover ul li a:hover,
ul#gnav ul li a:focus,
ul#gnav li.focus ul li a:focus {
  border: 0;
  color: #fff;
  background-color: #195ebd;
  background-image: url(../images/link_arrow_rev.png);
}

#site_search {
  width: 246px;
  margin-top: 6px;
  float: right;
  text-align: right;
}

#site_search label {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

#site_search .text_box {
  width: 160px;
  height: 15px;
  margin: 0 25px 0 5px;
  background: #F4F6F8;
  border: 1px solid #cecece;
  padding: 4px;
  color: #333;
  font-size: 0.9em;
  border-top-left-radius: 3px;
  /* CSS3草案 */
  -webkit-border-top-left-radius: 3px;
  /* Safari,Google Chrome用 */
  -moz-border-top-left-radius: 3px;
  /* Firefox用 */
  border-bottom-left-radius: 3px;
  /* CSS3草案 */
  -webkit-border-bottom-left-radius: 3px;
  /* Safari,Google Chrome用 */
  -moz-border-bottom-left-radius: 3px;
  /* Firefox用 */
}

#site_search .text_box:hover,
#site_search .text_box:focus {
  border-color: #3270c5;
  background: #fffde5;
}

#site_search .inputs {
  display: inline-block;
  position: relative;
}

#search_btn {
  display: block;
  position: absolute;
  top: 0;
  _top: 1px;
  right: 0;
  width: 25px;
  height: 25px;
  border: 0;
  background: url(../images/bt_search_off.png) no-repeat 0 0;
  text-indent: -999em;
  overflow: hidden;
  cursor: pointer;
}

#search_btn:hover,
#search_btn:focus {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}

/* フッター
------------------------------------*/
#footer ul li a {
  display: inline-block;
  padding: 0 2px;
  color: #eee;
  text-decoration: none;
}

#footer ul li a:hover,
#footer ul li a:focus {
  color: #383a3c;
  background-color: #fff;
}

#footer ul#foot_nav li {
  float: left;
  margin: 1em 1.6em 1em 0;
  padding: 0 2em 0 0;
  border-right: 1px solid #ccc;
  font-size: 0.8em;
  line-height: 1.3em;
}

#footer ul#foot_nav li.no_border {
  border-right: none;
}

#footer ul#foot_sub_nav li {
  float: left;
  margin: 1em 0.5em 1em 0;
  font-size: 0.8em;
  line-height: 1.3em;
}

#footer ul#foot_sub_nav li a {
  padding: 0 3px 0 18px;
  background: url(../images/link_arrow_tp.png) no-repeat 2px center;
}

#footer ul#foot_sub_nav li a:hover,
#footer ul#foot_sub_nav li a:focus {
  background-color: #fff;
  background-image: url(../images/link_arrow_footer.png);
  color: #383a3c;
}

p#copyright {
  width: 980px;
  margin: 20px auto;
  font-family: sans-serif;
  font-size: 0.8em;
  height: 30px;
  display: block;
  /*font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
}

p#back_top {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 70px;
  height: 70px;
}
p#back_top a {
  display: block;
  width: 70px;
  height: 70px;
}

.btn_w a,
.btn_b a,
.btn_o a,
.btn_g a {
  display: block;
  text-align: center;
  font-weight: bold;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  text-decoration: none;
}
.btn_w a:hover,
.btn_b a:hover,
.btn_o a:hover,
.btn_g a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

.btn_w a {
  width: 316px;
  height: 60px;
  line-height: 60px;
  font-size: 16px;
  background: url(../images/link_arrow_h.png) no-repeat 11px center white;
  border: 1px solid #E2E6EC;
  box-sizing: border-box;
  color: #000000;
}

.btn_b a,
.btn_b input {
  width: 236px;
  height: 60px;
  line-height: 60px;
  font-size: 16px;
  background: #2E6EC9;
  border: 1px solid #E2E6EC;
  box-sizing: border-box;
  color: #fff;
}
.btn_b a span,
.btn_b input span {
  background: url(../images/link_arrow_h_rev03.png) no-repeat 11px center;
  padding-left: 37px;
  margin-left: -15px;
}
.btn_b input {
  border: none;
  text-align: center;
  font-weight: bold;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  text-decoration: none;
}
.btn_b input:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

.footer_btnArea {
  background-color: #F5F6F9;
  padding: 40px 0 58px;
  border-bottom: 4px solid #fff;
  text-align: center;
}
.footer_btnArea .inner {
  width: auto;
}
.footer_btnArea .inner h4 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5em;
}
.footer_btnArea .inner h4 span {
  font-size: 16px;
  display: block;
  font-weight: normal;
}
.footer_btnArea .inner .title_lead {
  margin: 5px 0 0;
}
.footer_btnArea .inner ul {
  margin-top: 40px;
  letter-spacing: -0.4em;
  text-align: center;
}
.footer_btnArea .inner ul li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 20px;
}
.footer_btnArea .inner ul li a {
  width: 470px;
  height: 86px;
  line-height: 86px;
  color: #fff;
  font-size: 20px;
  text-align: center;
  font-weight: normal;
}
.footer_btnArea .inner ul li a span {
  font-weight: bold;
  font-size: 24px;
}
.footer_btnArea .inner ul li.btn_o a {
  background: url(../../commons/images/link_arrow_h_rev04.png) no-repeat 18px center #ff9000;
}
.footer_btnArea .inner ul li.btn_g a {
  background: url(../../commons/images/link_arrow_h_rev05.png) no-repeat 18px center #aec516;
}

.footer_sitemap {
  background-color: #f2f2f0;
  padding: 35px 0;
  text-align: left;
}
.footer_sitemap .inner {
  overflow: hidden;
}
.footer_sitemap .inner p {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}
.footer_sitemap .inner p a {
  background: url(../../commons/images/link_arrow_h.png) no-repeat left center;
  padding-left: 21px;
}
.footer_sitemap .inner a {
  color: #000;
  text-decoration: none;
}
.footer_sitemap .inner a:hover {
  text-decoration: underline;
}
.footer_sitemap .inner div {
  float: left;
}
.footer_sitemap .inner div ul li {
  line-height: 2.0em;
  padding-left: 3px;
}
.footer_sitemap .inner div ul li a {
  background: url(../../commons/images/link_arrow_h_rev06.png) no-repeat left center;
  background-size: 12px 12px;
  padding-left: 20px;
}
.footer_sitemap .inner div.footer_sitemap_layout01 {
  width: 420px;
}
.footer_sitemap .inner div.footer_sitemap_layout01 ul {
  overflow: hidden;
}
.footer_sitemap .inner div.footer_sitemap_layout01 ul li {
  font-size: 14px;
  float: left;
  width: 195px;
}
.footer_sitemap .inner div.footer_sitemap_layout01 div {
  overflow: hidden;
  margin-top: 25px;
}
.footer_sitemap .inner div.footer_sitemap_layout01 div p {
  float: left;
}
.footer_sitemap .inner div.footer_sitemap_layout01 div p:first-child {
  margin-right: 82px;
}
.footer_sitemap .inner div.footer_sitemap_layout02 {
  width: 246px;
}
.footer_sitemap .inner div.footer_sitemap_layout02 ul {
  margin-bottom: 29px;
}
.footer_sitemap .inner div.footer_sitemap_layout03 {
  width: 206px;
}
.footer_sitemap .inner div.footer_sitemap_layout03 ul {
  margin-bottom: 29px;
}
.footer_sitemap .inner div.footer_sitemap_layout04 {
  width: 106px;
}

/*-------------------
** clearfix
-------------------*/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
  min-height: 1%;
  /* for IE 7*/
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

.script_hide {
  height: 1px;
  visibility: visible;
  position: absolute;
  top: -100px;
  left: -100px;
}
