@charset "UTF-8";
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: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

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

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

body {
  color: #fff;
  background-color: #fff;
  font-size: 16px;
  line-height: 1.625;
  font-family: Helvetica,Arial,'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','メイリオ','Meiryo','ＭＳ Ｐゴシック',sans-serif;
}

a {
  text-decoration: none;
}

@-webkit-keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
body {
  color: #0050a3;
  min-width: 1020px;
}
body.theme_B {
  color: #0050a3;
}
body.theme_B article #top .sectionInner {
  background-color: #0050a3;
}
body.theme_B article #top .sectionInner .intro:before {
  background-image: url("../images/tex_B.jpg");
}
body.theme_B article #lead .sectionInner {
  background-color: #0050a3;
}
body.theme_B article #product .sectionInner h2 {
  border-color: #0050a3;
  background-color: #0050a3;
}
body.theme_B article #product .sectionInner .item h3 {
  border-bottom-color: #0050a3;
}
body.theme_B article #product .sectionInner .item .detail .data a.shop {
  background-color: #0050a3;
}
body.theme_B article #product .sectionInner .item .detail .data a.shop:hover {
  background-color: rgba(0, 80, 163, 0.6);
}
body.theme_B footer {
  border-top-color: #0050a3;
}
body.theme_R {
  color: #db005c;
}
body.theme_R article #top .sectionInner {
  background-color: #db005c;
}
body.theme_R article #top .sectionInner .intro:before {
  background-image: url("../images/tex_R.jpg");
}
body.theme_R article #lead .sectionInner {
  background-color: #db005c;
}
body.theme_R article #product .sectionInner h2 {
  border-color: #db005c;
  background-color: #db005c;
}
body.theme_R article #product .sectionInner .item h3 {
  border-bottom-color: #db005c;
}
body.theme_R article #product .sectionInner .item .detail .data a.shop {
  background-color: #db005c;
}
body.theme_R article #product .sectionInner .item .detail .data a.shop:hover {
  background-color: rgba(219, 0, 92, 0.6);
}
body.theme_R footer {
  border-top-color: #db005c;
}
body.theme_G {
  color: #8bbf1f;
}
body.theme_G article #top .sectionInner {
  background-color: #8bbf1f;
}
body.theme_G article #top .sectionInner .intro:before {
  background-image: url("../images/tex_G.jpg");
}
body.theme_G article #lead .sectionInner {
  background-color: #8bbf1f;
}
body.theme_G article #product .sectionInner h2 {
  border-color: #8bbf1f;
  background-color: #8bbf1f;
}
body.theme_G article #product .sectionInner .item h3 {
  border-bottom-color: #8bbf1f;
}
body.theme_G article #product .sectionInner .item .detail .data a.shop {
  background-color: #8bbf1f;
}
body.theme_G article #product .sectionInner .item .detail .data a.shop:hover {
  background-color: rgba(139, 191, 31, 0.6);
}
body.theme_G footer {
  border-top-color: #8bbf1f;
}

.setElm {
  -moz-transition: all 0.8s ease-in-out 0.4s;
  -o-transition: all 0.8s ease-in-out 0.4s;
  -webkit-transition: all 0.8s ease-in-out;
  -webkit-transition-delay: 0.4s;
  transition: all 0.8s ease-in-out 0.4s;
  opacity: 0;
  -moz-transform: translate(0, 30px);
  -ms-transform: translate(0, 30px);
  -webkit-transform: translate(0, 30px);
  transform: translate(0, 30px);
}
.setElm.move {
  opacity: 1;
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

article section .table {
  display: table;
}
article section .table .cell {
  display: table-cell;
  vertical-align: middle;
}
article section#top {
  padding-bottom: 60px;
}
article section#top.move .sectionInner {
  opacity: 1;
}
article section#top.move .sectionInner .intro:before {
  opacity: 1;
}
article section#top.move .sectionInner .intro h1 {
  opacity: 1;
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
article section#top.move .sectionInner .intro a.more {
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  opacity: 1;
}
article section#top.move .sectionInner .intro a.more.blink {
  -moz-transition: all 0;
  -o-transition: all 0;
  -webkit-transition: all 0;
  transition: all 0;
  -webkit-animation: blink 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite 1.2s;
  -moz-animation: blink 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite 1.2s;
  -o-animation: blink 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite 1.2s;
  animation: blink 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite 1.2s;
}
article section#top .sectionInner {
  -moz-transition: opacity 0.6s ease-in-out;
  -o-transition: opacity 0.6s ease-in-out;
  -webkit-transition: opacity 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out;
  background-color: #0050a3;
  width: 100%;
  height: 790px;
  opacity: 0;
  position: relative;
}
article section#top .sectionInner .intro {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
article section#top .sectionInner .intro:before {
  content: "";
  -moz-transition: opacity 2s ease-in-out 2s;
  -o-transition: opacity 2s ease-in-out 2s;
  -webkit-transition: opacity 2s ease-in-out;
  -webkit-transition-delay: 2s;
  transition: opacity 2s ease-in-out 2s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-position: 50%;
  opacity: 0;
}
article section#top .sectionInner .intro h1 {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -79px;
  opacity: 0;
  -moz-transition: all 1s ease-in-out 0.6s;
  -o-transition: all 1s ease-in-out 0.6s;
  -webkit-transition: all 1s ease-in-out;
  -webkit-transition-delay: 0.6s;
  transition: all 1s ease-in-out 0.6s;
  -moz-transform: translate(0, 20px);
  -ms-transform: translate(0, 20px);
  -webkit-transform: translate(0, 20px);
  transform: translate(0, 20px);
  position: relative;
  z-index: 2;
}
article section#top .sectionInner .intro h1 img {
  display: block;
  margin: 0 auto;
}
article section#top .sectionInner .intro a.more {
  opacity: 0;
  -moz-transition: all 1s ease-in-out 2.5s;
  -o-transition: all 1s ease-in-out 2.5s;
  -webkit-transition: all 1s ease-in-out;
  -webkit-transition-delay: 2.5s;
  transition: all 1s ease-in-out 2.5s;
  -moz-transform: translate(0, -40px);
  -ms-transform: translate(0, -40px);
  -webkit-transform: translate(0, -40px);
  transform: translate(0, -40px);
  position: absolute;
  z-index: 2;
  display: inline-block;
  width: 33px;
  bottom: 30px;
  left: 50%;
  margin-left: -16.5px;
}
article section#movie .sectionInner {
  padding: 60px 0 120px;
  width: 900px;
  margin: 0 auto;
}
article section#movie .sectionInner #video img, article section#movie .sectionInner #video iframe {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}
article section#lead .sectionInner {
  padding: 40px 0;
  background-color: #0050a3;
}
article section#lead .sectionInner p {
  width: 900px;
  margin: 0 auto;
  color: #fff;
  font-size: 1.25em;
  line-height: 2;
}
article section#product {
  padding: 120px 0;
}
article section#product .sectionInner {
  width: 900px;
  margin: 0 auto;
}
article section#product .sectionInner h2 {
  font-weight: bold;
  font-size: 1.875em;
  text-align: center;
  line-height: 1;
  background-color: #0050a3;
  border-width: 3px;
  border-style: solid;
  border-color: #0050a3;
  margin-bottom: 70px;
}
article section#product .sectionInner h2 img {
  display: block;
  margin: 0 auto;
}
article section#product .sectionInner .item {
  margin-top: 85px;
}
article section#product .sectionInner .item:first-child {
  margin-top: 0;
}
article section#product .sectionInner .item .img img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}
article section#product .sectionInner .item .twoColumn {
  margin: 35px -10px 20px;
}
article section#product .sectionInner .item .twoColumn:after {
  content: "";
  display: block;
  clear: both;
}
article section#product .sectionInner .item .twoColumn .img {
  width: 450px;
  float: right;
}
article section#product .sectionInner .item .twoColumn .img:first-child {
  float: left;
}
article section#product .sectionInner .item h3 {
  display: table;
  width: 100%;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  border-bottom-color: #0050a3;
  margin-bottom: 30px;
}
article section#product .sectionInner .item h3 span {
  display: table-cell;
  vertical-align: middle;
}
article section#product .sectionInner .item h3 .name {
  font-size: 1.25em;
  font-weight: bold;
  padding: 1em 0;
  line-height: 1;
}
article section#product .sectionInner .item h3 .id {
  font-size: 0.875em;
  font-weight: bold;
  text-align: right;
}
article section#product .sectionInner .item .detail:after {
  content: "";
  display: block;
  clear: both;
}
article section#product .sectionInner .item .detail .txt {
  width: 48%;
  float: left;
}
article section#product .sectionInner .item .detail .data {
  width: 48%;
  float: right;
}
article section#product .sectionInner .item .detail .data:after {
  content: "";
  display: block;
  clear: both;
}
article section#product .sectionInner .item .detail .data a.shop {
  font-size: 0.875em;
  line-height: 1;
  display: inline-block;
  padding: 0.8em 1em;
  background-color: #0050a3;
  color: #fff;
  font-weight: bold;
  float: right;
  -moz-transition: background-color 0.2s ease-in-out;
  -o-transition: background-color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
}
article section#product .sectionInner .item .detail .data a.shop:hover {
  background-color: rgba(0, 80, 163, 0.6);
}

footer {
  width: 900px;
  margin: 0 auto;
  text-align: center;
  line-height: 1.8;
  font-size: 0.75em;
  padding: 30px 0;
  border-top-style: solid;
  border-top-width: 2px;
  border-top-color: #0050a3;
}

