@charset "UTF-8";
/**
 * style.css
 *
 * 1.0 - Class/Elements
 * 2.0 - Header
 * 3.0 - Footer
 * 4.0 - Top
 * ----------------------------------------------------------------------------
 */
/**
 * 2.0 Elements/Class
 * ----------------------------------------------------------------------------
 */
/* Class
----------------------------------*/
.clear {
  clear: both;
}

.attention {
  font-size: 12px;
  line-height: 1.5;
  text-indent: -1.5em;
}

.clearfix {
  zoom: 1;
  _height: 1%;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.reTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}

a img.btn {
  filter: alpha(opacity=100);
  opacity: 1.0;
  -ms-filter: "alpha(opacity=100)";
  -khtml-opacity: 1.0;
  -moz-opacity: 1.0;
}
a:hover img.btn {
  filter: alpha(opacity=70);
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
  -khtml-opacity: 0.7;
  -moz-opacity: 0.7;
}

.page {
  width: 100%;
  height: 90px;
  position: absolute;
  top: 35px;
  z-index: 9998;
}
.page .snsWrap, .page .snsBg {
  top: 0;
}
.page #nav {
  top: 40px;
}
.page #snsWrap {
  top: 0;
}

.hatena-bookmark-bookmark-panel {
  z-index: 9999;
}

.page-fixed {
  width: 100%;
  position: fixed !important;
  top: 0 !important;
}

/* Elements
----------------------------------*/
body {
  width: 100%;
  min-width: 1000px;
  font-size: 16px;
  line-height: 30px;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/**
 * 2.0 Header
 * ----------------------------------------------------------------------------
 */
body #gungho {
  width: 100%;
  height: 31px;
  background: #fff;
  border-bottom: 4px solid #ccc;
}
body #gungho .inner {
  width: 1000px;
  height: 31px;
  margin: 0 auto;
  position: relative;
  background: url(../img/common/gungho.jpg) center right no-repeat;
}
body #gungho .inner #ragnarok {
  position: absolute;
  top: 0;
  left: 0;
}
body #snsWrap {
  width: 100%;
  height: 40px;
  position: absolute;
  top: 35px;
  z-index: 9998;
}
body #snsWrap #sns {
  overflow: hidden;
  width: 960px;
  height: 40px;
  margin: 0 auto;
}
body #snsWrap #sns .snsInner {
  padding: 10px 0;
  float: right;
}
body #snsWrap #sns .snsInner li {
  float: left;
  width: 110px;
}
body .snsBg {
  width: 100%;
  height: 40px;
  background: url(../img/common/sns_Bg.png) repeat;
  position: absolute;
  top: 35px;
  z-index: 9997;
}
body .snsBg div {
  width: 960px;
  height: 40px;
  margin: 0 auto;
}

/**
 * 3.0 Footer
 * ----------------------------------------------------------------------------
 */
body #footer {
  padding-top: 30px;
  background: url(../img/footer/bg.jpg) 0 0 no-repeat;
  background-size: cover;
}
body #footer h2 {
  text-align: center;
  padding: 15px 0 0;
}
body #footer ul {
  width: 910px;
  margin: 30px auto 0;
  font-size: 0;
}
body #footer ul li {
  width: 280px;
  margin-left: 35px;
  display: inline-block;
  vertical-align: top;
  color: #624b3d;
}
body #footer ul li:first-child {
  margin-left: 0;
}
body #footer ul li:first-child .thumb img {
  width: auto;
  height: auto;
}
body #footer ul li p {
  font-size: 14px;
  line-height: 22px;
}
body #footer .startRO {
  text-align: center;
  padding: 40px 0 20px;
}
body #footer .startRO p {
  padding-top: 10px;
  font-size: 14px;
}
body #footer .startRO p a {
  text-decoration: underline;
  color: #624b3d;
}
body #footer .startRO p a:hover {
  filter: alpha(opacity=70);
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
  -khtml-opacity: 0.7;
  -moz-opacity: 0.7;
}
body #footer .f-sns {
  margin: 0 auto;
  padding: 0 0 40px;
  width: 655px;
  font-size: 0;
}
body #footer .f-sns li {
  display: inline-block;
  margin-left: 55px;
  width: 300px;
}
body #footer .f-sns li:first-child {
  margin-left: 0;
}
body #footer .credit {
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  color: #5a5a5a;
  padding: 20px 0;
  background: #fc7e9b;
}

/**
 * 4.0 Top
 * ----------------------------------------------------------------------------
 */
 /* 4.1 main
----------------------------------*/
body {
  color: #420e1c;
  background: #fccdd6 url(../img/bg.jpg) center top no-repeat;
}
body #mainVisual {
  height: 478px;
  background: url(../img/main.png) center top no-repeat;
  text-indent: -9999px;
}
body #contentWrap {
  width: 984px;
  margin: 0 auto 50px;
  padding: 25px 0;
  background: url(../img/content_top.png) center top no-repeat, url(../img/content_bottom.png) center bottom no-repeat;
  behavior: url(PIE.htc);
}
body #contentWrap #contents {
  padding: 0 19px 30px;
  background: url(../img/content_repeat.png) center repeat-y;
}
body #contentWrap #contents h2 {
  text-align: center;
  background: url(../img/h2_bg.jpg) center top no-repeat;
}

#start {
  position: relative;
  height: 366px;
  background: url(../img/start.jpg) center 48px no-repeat;
  margin-bottom: 40px;
}
#start ol {
  text-indent: -9999px;
}
#start p {
  position: absolute;
  bottom: 10px;
  right: 65px;
  width: 400px;
}

#about {
  position: relative;
  height: 288px;
  background: url(../img/about.jpg) left 48px no-repeat;
}
#about p {
  position: absolute;
  left: 384px;
  top: 75px;
  text-align: left;
  width: 530px;
}

#buy {
  text-align: center;
  margin-bottom: 40px;
}
#buy ol {
  height: 284px;
  margin-bottom: 20px;
  background: url(../img/buy.jpg) center top no-repeat;
  text-indent: -9999px;
}
#buy a:hover {
  filter: alpha(opacity=70);
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
  -khtml-opacity: 0.7;
  -moz-opacity: 0.7;
}

#regulation {
  text-align: left;
}
#regulation .inner {
  width: 860px;
  margin: 0 auto;
}
#regulation .inner h3 {
  font-size: 16px;
  font-weight: bold;
  padding-top: 20px;
}
#regulation .inner h4 {
  width: 118px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  background: url(../img/h4_bg.jpg) left center no-repeat;
}
#regulation .inner p {
  font-size: 14px;
  line-height: 1.8;
}
#regulation .inner table {
  font-size: 14px;
  text-align: center;
  width: 100%;
  border: 1px solid #ff7398;
  margin-bottom: 10px;
}
#regulation .inner table th, #regulation .inner table td {
  border-bottom: 1px solid #ff7398;
  border-left: 1px solid #ff7398;
}
#regulation .inner table th {
  background: #ff7398;
  color: #fff;
  font-weight: bold;
}
#regulation .inner ul li {
  text-indent: -1.5em;
  margin-left: 20px;
  line-height: 1.8;
}
#regulation .inner .attention {
  width: 843px;
  margin-left: 20px;
  font-size: 12px;
}
#regulation .inner table + .attention {
  margin-left: 0;
  margin-bottom: 10px;
}
