/* ------------------------------
 common - width: all
------------------------------ */
/**
* YUI 3.5.0 - reset.css (http://developer.yahoo.com/yui/3/cssreset/)
* http://cssreset.com
* Copyright 2012 Yahoo! Inc. All rights reserved.
* http://yuilibrary.com/license/
*/
/*
TODO will need to remove settings on HTML since we can't namespace it.
TODO with the prefix, should I group by selector or property for weight savings?
*/
html {
  color: #000;
  background: #FFF;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-size: 100%;
}

/*
TODO remove settings on BODY since we can't namespace it.
*/
/*
TODO test putting a class on HEAD.
- Fails on FF.
*/
main,
article,
section {
  display: block;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

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;
}

/*
TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit...
*/
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;
}

/* to preserve line-height and selector appearance */
sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/*to enable resizing for IE*/
input,
textarea,
select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #000;
}

/* YUI CSS Detection Stamp */
#yui3-css-stamp.cssreset {
  display: none;
}

.cf:after {
  content: "";
  clear: both;
  display: block;
}

a:hover {
  opacity: 0.6;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}

.op {
  display: block !important;
}

.os {
  display: none !important;
}

/* ------------------------------
 common - width all
------------------------------ */
html,
body {
  min-width: 1000px;
  position: relative;
  overflow-x:hidden;
}

#loading {
  position: absolute;
  text-align: center;
  top: 50%;
  right: 0;
  left: 0;
}

#loading .loadimg {
  width: 40px;
  display: block;
  margin: 0 auto;
}

#loader-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  right: 0;
  bottom: 0;
  left: 0px;
  background-color: #000;
  z-index: 10000000000;
}

header {
  width: 1000px;
  position: absolute;
  z-index: 100000;
  top: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
}

header .logo {
  width: 124px;
  display: block;
  position: absolute;
  top: 10px;
  left: 220px;
}

header .logo img {
  width: 100%;
  display: block;
  margin-left:-190px;
}

header .top {
  width: 124px;
  height: 63px;
  display: block;
  position: absolute;
  top: 0px;
  right: 0;
  left: 0;
  margin: 0 auto;
}

header .top .on {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: block;
  opacity: 0;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

header .top .off {
  margin: 6px auto 0;
  display: block;
}

header .top:hover {
  opacity: 1;
}

header .top:hover .on {
  opacity: 1;
}

header .wrapper {
  width: 1340px;
  height: 156px;
  padding-top: 75px;
  margin: 0 auto;
  margin-left:-170px;
  background-image: url(../images/header.png);
}

header .wrapper .gnav {
  width: 100%;
  text-align: center;
  height: 55px;
  margin: 0 auto 0;
  font-size: 0;
}

header .wrapper .gnav .menu {
  height: 50px;
  display: inline-block;
  margin: 5px 15px;
  position: relative;
  font-size: 0;
  padding: 0 3px;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

header .wrapper .gnav .menu img {
  vertical-align: middle;
}

header .wrapper .gnav .menu .on {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: block;
  opacity: 0;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

header .wrapper .gnav .menu .off {
  margin-top: 3px;
}

header .wrapper .gnav .menu:hover {
  opacity: 1;
}

header .wrapper .gnav .menu:hover .on {
  opacity: 1;
}

main {
  min-width: 1000px;
  margin: 0 auto;
}

footer {
  padding: 10px 0;
  background-image: url(../images/bg_footer.png);
  background-size: auto 100%;
}

footer .wrapper {
  width: 650px;
  margin: 0 auto;
}

footer .wrapper .copy {
  width: 394px;
  display: block;
  float: left;
}

footer .wrapper .snslist {
  width: 200px;
  float: right;
  padding-top: 4px;
  position: relative;
}

footer .wrapper .snslist li {
  height: 20px;
  float: right;
  margin-left: 11px;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

footer .wrapper .snslist li:hover {
  opacity: 0.6;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}

footer .wrapper .fb_iframe_widget {
  margin: 0 !important;
  padding: 0 !important;
  height: 20px !important;
}

footer .wrapper .fb_iframe_widget > span {
  vertical-align: baseline !important;
}

footer .wrapper .bnrbox {
  width: 100%;
  float: left;
  padding-top: 4px;
}

footer .wrapper .bnrbox a {
  width: 320px;
  display: block;
  float: left;
}

footer .wrapper .bnrbox a img {
  width: 100%;
  display: block;
}

footer .wrapper .bnrbox a:nth-child(2n) {
  float: right;
}
