@charset "UTF-8";
/* reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  font-size:100%;
  font:inherit;
  vertical-align:baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display:block;
}

body {
  line-height:1;
}

ol, ul {
  list-style:none;
}

blockquote, q {
  quotes:none;
}

blockquote:before, blockquote:after {
  content:"";
  content:none;
}

q:before, q:after {
  content:"";
  content:none;
}

table {
  border-collapse:collapse;
}

/* setting */
@font-face {
  font-family:"Brandon Grotesque Medium";
  src:url("../fonts/Brandon_med.otf") format("truetype");
}

@font-face {
  font-family:"Brandon Grotesque Bold";
  src:url("../fonts/Brandon_bld.otf") format("truetype");
}

* {
  -webkit-box-sizing:border-box;
          box-sizing:border-box;
  background-repeat:no-repeat;
  list-style-type:none;
}

body {
  font-size:14px;
  font-family:"ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, sans-serif;
  color:#000;
  min-width:1200px;
}

img {
  width:100%;
  vertical-align:bottom;
}

a {
  color:#000;
  text-decoration:none;
  cursor:pointer;
}
a:hover img {
  opacity:.7;
  -webkit-transition:.3s;
          transition:.3s;
}

p {
  font-size:13px;
  line-height:2;
}

/* header */
.header {
  position:relative;
  z-index:1000;
  background-color:#fff;
}
.header .header__inner {
  width:1200px;
  min-width:1200px;
  margin:0 auto;
  padding:24px 30px 15px 30px;
  *zoom:1;
}
.header .header__inner:before, .header .header__inner:after {
  content:" ";
  display:table;
}
.header .header__inner:after {
  clear:both;
}
.header .logo {
  width:198px;
  float:left;
}
.header .nav {
  float:right;
  width:670px;
  padding-top:8px;
}
.header .nav ul {
  display:table;
  table-layout:fixed;
  width:100%;
}
.header .nav ul li {
  display:table-cell;
  text-align:center;
  border-left:1px solid #d5d5d5;
  vertical-align:middle;
}
.header .nav ul li:last-child {
  border-right:1px solid #d5d5d5;
}
.header .nav ul li a {
  display:block;
  position:relative;
  padding:3px 0;
  font-size:13px;
}
.header .nav ul li a:after {
  content:"";
  width:100%;
  height:3px;
  background-color:#147fe3;
  position:absolute;
  bottom:-25px;
  left:0;
  -webkit-transform:scaleX(0);
      -ms-transform:scaleX(0);
          transform:scaleX(0);
  -webkit-transition:all .4s cubic-bezier(.215, .61, .355, 1);
          transition:all .4s cubic-bezier(.215, .61, .355, 1);
}
.header .nav ul li a:hover {
  color:#147fe3;
  -webkit-transition:.3s;
          transition:.3s;
}
.header .nav ul li a:hover:after {
  -webkit-transform:scaleX(1);
      -ms-transform:scaleX(1);
          transform:scaleX(1);
}
.header .nav ul li.current a {
  color:#147fe3;
}
.header .nav ul li.current a:after {
  content:"";
  width:100%;
  height:3px;
  background-color:#147fe3;
  position:absolute;
  bottom:-25px;
  left:0;
  -webkit-transform:scaleX(1);
      -ms-transform:scaleX(1);
          transform:scaleX(1);
}

.tac {
  text-align:center;
}

.pagetop {
  width:100%;
  text-align:center;
  background-color:#a6a6a6;
}
.pagetop a {
  display:block;
  height:62px;
  background-image:url(../img/common/page_top.png);
  background-position:center center;
}

.message {
  text-align:center;
  color:#fff;
  background-color:#313131;
  color:#fff;
  padding:85px 0 95px 0;
}
.message p {
  font-size:21px;
  line-height:2.5;
}

.footer {
  padding:50px 0 45px 0;
  background-color:#202020;
}
.footer .footer__inner {
  width:900px;
  margin:0 auto;
  letter-spacing:-.4em;
}
.footer .footer__inner > * {
  letter-spacing:normal;
  display:inline-block;
  vertical-align:top;
}
.footer .footer__inner .logo {
  width:182px;
  vertical-align:middle;
}
.footer .footer__inner .logo a {
  display:block;
}
.footer .footer__inner .logo a:hover {
  opacity:.7;
  -webkit-transition:.4s;
          transition:.4s;
}
.footer .footer__inner .footer__nav {
  vertical-align:middle;
  width:640px;
  margin-left:78px;
}
.footer .footer__inner .footer__nav ul {
  display:table;
  width:100%;
  table-layout:fixed;
}
.footer .footer__inner .footer__nav ul li {
  display:table-cell;
  text-align:center;
}
.footer .footer__inner .footer__nav ul li a {
  color:#fff;
}
.footer .footer__inner .footer__nav ul li a:hover {
  opacity:.7;
  -webkit-transition:.4s;
          transition:.4s;
}
.footer .copy {
  width:100%;
  text-align:center;
  color:#5f5f5f;
  padding-top:60px;
}
