@charset "UTF-8";
/* セッティング用 */
/* ===================================================================

setting

=================================================================== */
html {
  font-size: 62.5%;
  background-color: #000; }

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%; }

img {
  max-width: 100%;
  vertical-align: middle; }

* {
  box-sizing: border-box; }

/*=============================================

	File name		:	main.css
	
=============================================*/
body {
  background: #000000;
  font-size: 1.6rem; }

/*========================================
Wrapper
========================================*/
#wrapper {
  text-align: center;
  max-width: 960px;
  width: 100%;
  margin: auto;
  background-color: #231815; }

#wrapperForm {
  width: 100%; }

#wrapperSecond {
  width: 100%; }

/*========================================
Header
========================================*/
#wrapper header {
  margin: 0 auto 8%;
  background-color: #231815;
  max-width: 960px;
  width: 100%;
  height: 0;
  padding-top: 100%;
  background: url(../img/main_bg.jpg) no-repeat center center;
  background-size: cover;
  position: relative;
  text-align: left;
  box-sizing: border-box; }
  #wrapper header #hdCatchcopy {
    margin: 0 auto;
    padding: 0;
    width: 70%;
    max-width: 690px;
    position: absolute;
    top: 2%;
    left: 0;
    right: 0;
    z-index: 20; }
  #wrapper header #hdTitle {
    width: 70%;
    max-width: 703px;
    position: absolute;
    bottom: 2%;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 20;
    text-align: center; }
  #wrapper header #hdMascot {
    width: 60%;
    max-width: 564px;
    position: absolute;
    margin: auto;
    bottom: 14%;
    left: 0;
    right: 0;
    z-index: 10; }
  #wrapper header #hdStamp {
    width: 25%;
    max-width: 249px;
    position: absolute;
    bottom: 25%;
    right: 4%;
    z-index: 30; }

#wrapperForm header, #wrapperSecond header {
  margin: 0 auto 2%;
  padding: 0.5em;
  background-color: #231815;
  max-width: 960px;
  width: 100%;
  font-size: 1.4rem;
  text-align: center;
  color: #FFF;
  box-sizing: border-box; }

/*========================================
Container
========================================*/
#container {
  margin: 0 auto;
  max-width: 960px;
  color: #DCE9D9; }

* html div#wrapper {
  height: 100%;
  overflow: auto; }

/*========================================
section
========================================*/
section {
  margin: 0 auto 12%;
  text-align: left;
  box-sizing: border-box; }
  section.content {
    padding: 0 2%;
    text-align: left; }
  section.subcontent {
    text-align: left; }
    section.subcontent h1 {
      position: relative;
      padding: 1em 1em;
      font-size: 3.2rem;
      font-weight: bold;
      line-height: 1.25;
      color: #DCE9D9;
      background: #5b3334;
      border: #DCE9D9 solid 3px;
      margin-bottom: 4%;
      border-radius: 0.5em; }
      section.subcontent h1:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 28px;
        width: 0;
        height: 0;
        border-width: 8px;
        border-top-width: 12px;
        border-style: solid;
        border-color: transparent;
        border-top-color: #DCE9D9; }
      section.subcontent h1:after {
        content: "";
        position: absolute;
        top: 100%;
        left: 32px;
        width: 0;
        height: 0;
        border-width: 4px;
        border-top-width: 8px;
        border-style: solid;
        border-color: transparent;
        border-top-color: #5b3334;
        z-index: 1; }

/*========================================
 Introduction
========================================*/
#Introduction {
  width: 100%;
  text-align: center; }
  #Introduction h1 {
    width: 100%;
    max-width: 940px;
    margin: auto; }
  #Introduction .contentBlock {
    background: #FFF;
    padding: 8% 0 0;
    margin-top: -6%; }
    #Introduction .contentBlock h2.lead {
      width: 80%;
      max-width: 700px;
      margin: 0 auto 2%; }
    #Introduction .contentBlock p {
      margin-bottom: 2%; }
    #Introduction .contentBlock .resultTable {
      background-color: #5b3334;
      padding: 2% 5%; }
      #Introduction .contentBlock .resultTable h3 {
        font-size: 2.8rem;
        font-weight: bold;
        color: #DCE9D9;
        margin: 0 auto 2%; }
      #Introduction .contentBlock .resultTable table {
        width: 100%;
        background: #FFF;
        border-collapse: collapse;
        color: #142846;
        margin-bottom: 1.6rem; }
        #Introduction .contentBlock .resultTable table thead th {
          text-align: center;
          font-size: 1.6rem;
          font-weight: bold;
          padding: 0.75em;
          background: #295170;
          color: #FFF; }
        #Introduction .contentBlock .resultTable table th, #Introduction .contentBlock .resultTable table td {
          border: 1px solid #142846; }
        #Introduction .contentBlock .resultTable table tbody th {
          background: #DCE9D9;
          font-size: 1.6rem;
          color: #142846; }
        #Introduction .contentBlock .resultTable table tr td {
          text-align: center;
          font-size: 1.6rem;
          padding: 0.75em; }
          #Introduction .contentBlock .resultTable table tr td.hit span {
            display: block;
            font-size: 2rem;
            color: #5b3334;
            font-weight: bold;
            -webkit-transform: rotate(-3deg) skew(-3deg);
            -moz-transform: rotate(-3deg) skew(-3deg);
            -o-transform: rotate(-3deg) skew(-3deg);
            -ms-transform: rotate(-3deg) skew(-3deg);
            transform: rotate(-3deg) skew(-3deg); }
      #Introduction .contentBlock .resultTable .important {
        text-align: center;
        font-weight: bold;
        font-size: 2.4rem;
        line-height: 2;
        color: #DCE9D9;
        text-shadow: #5b3334 2px 0px, #5b3334 -2px 0px, #5b3334 0px -2px, #5b3334 0px 2px, #5b3334 2px 2px, #5b3334 -2px 2px, #5b3334 2px -2px, #5b3334 -2px -2px, #5b3334 1px 2px, #5b3334 -1px 2px, #5b3334 1px -2px, #5b3334 -1px -2px, #5b3334 2px 1px, #5b3334 -2px 1px, #5b3334 2px -1px, #5b3334 -2px -1px; }
        #Introduction .contentBlock .resultTable .important .under {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(0.8, #fff720), color-stop(0.79, #5b3334));
          background: -webkit-linear-gradient(top, #5b3334 79%, #fff720 80%);
          background: -moz-linear-gradient(top, #5b3334 79%, #fff720 80%);
          background: -o-linear-gradient(top, #5b3334 79%, #fff720 80%);
          background: -ms-linear-gradient(top, #5b3334 79%, #fff720 80%);
          background: linear-gradient(to bottom, #5b3334 79%, #fff720 80%); }
          #Introduction .contentBlock .resultTable .important .under .under_large {
            color: #DCE9D9;
            font-size: 1.75em; }
      #Introduction .contentBlock .resultTable .under_mini {
        font-size: 1.2rem;
        text-align: center; }

/*========================================
 Prologue
========================================*/
#Prologue {
  text-align: left; }
  #Prologue h1 {
    max-width: 912px;
    margin: 0 auto 2%; }
  #Prologue p img {
    width: 25%;
    padding-left: 4%;
    float: right; }
  #Prologue p.motto {
    text-align: right;
    padding: 2em 0 0;
    color: #FFF;
    font-weight: bold; }
  #Prologue p.name {
    text-align: right;
    color: #FFF; }

/*========================================
 About
========================================*/
#About h1 {
  position: relative;
  line-height: 1.25;
  margin: 0 -1px;
  margin-bottom: 1em;
  padding: 1em 0;
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  color: #142846;
  background: #DCE9D9;
  -webkit-transform: rotate(-3deg) skew(-3deg);
  -moz-transform: rotate(-3deg) skew(-3deg);
  -o-transform: rotate(-3deg) skew(-3deg);
  -ms-transform: rotate(-3deg) skew(-3deg);
  transform: rotate(-3deg) skew(-3deg);
  text-shadow: 1px 1px 0 #DCE9D9;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2), 30px 0 0 0 #295170, -30px 0 0 0 #295170; }
#About .contentBlock ul {
  margin: 0 auto 4%; }
  #About .contentBlock ul li {
    position: relative;
    margin: 0 auto 4%;
    text-align: center; }
    #About .contentBlock ul li span {
      display: block;
      color: #FFF;
      font-size: 2.4rem;
      font-weight: bold; }
#About .contentBlock p {
  font-size: 2.4rem;
  color: #FFF; }

/*========================================
Order
========================================*/
.Order {
  margin: 0 auto 12%;
  text-align: center;
  padding: 1%;
  background: url(../img/main_bg.jpg) center;
  background-attachment: fixed;
  max-width: 960px; }
  .Order h1 {
    margin: 0 auto 1%;
    max-width: 960px; }
  .Order .inner {
    padding: 4%; }
    .Order .inner .catalogpriceWrap {
      padding: 1em;
      border: 3px solid #295170;
      color: #295170;
      width: 80%;
      max-width: 640px;
      background: #FFF;
      margin: 0 auto 4%; }
      .Order .inner .catalogpriceWrap .catalogpriceLabel {
        margin: 0 auto 2%;
        font-size: 2.4rem;
        font-weight: bold; }
      .Order .inner .catalogpriceWrap .catalogpricePrice {
        color: #5b3334;
        font-size: 4.8rem;
        font-weight: bold;
        text-decoration: line-through; }
        .Order .inner .catalogpriceWrap .catalogpricePrice span {
          color: #295170; }
      .Order .inner .catalogpriceWrap .catalogpriceText {
        margin: 0 auto 1em;
        font-size: 2.4rem;
        font-weight: bold; }
      .Order .inner .catalogpriceWrap .discountrateText {
        background: #5b3334;
        padding: 1em; }
        .Order .inner .catalogpriceWrap .discountrateText .discountrateNum {
          color: #FFF;
          font-size: 4rem;
          font-weight: bold;
          line-height: 0.8;
          line-height: 1; }
          .Order .inner .catalogpriceWrap .discountrateText .discountrateNum span {
            font-size: 1.8rem;
            font-weight: bold; }
    .Order .inner .priceWrap {
      width: 100%;
      margin: 0 auto 4%; }
      .Order .inner .priceWrap .salespriceWrap .salespriceNum {
        font-family: 'Roboto', sans-serif;
        font-size: 9.6rem;
        font-weight: bold;
        font-weight: 900;
        color: #FF7C00;
        margin: auto;
        -webkit-text-stroke-width: 2px;
        -webkit-text-stroke-color: #FFF;
        text-shadow: 1px 1px 10px black, 0 0 5em black, 0 0 0.2em black; }
        .Order .inner .priceWrap .salespriceWrap .salespriceNum span {
          font-weight: bold;
          font-size: 50%; }
    .Order .inner .entryWrap {
      margin: 0 auto 2em; }
      .Order .inner .entryWrap a {
        display: block;
        padding: 0.5em 1em;
        background: -moz-linear-gradient(top, #ff9900 0%, #FFCC00 50%, #FF9900 50%, #ff9900 100%);
        background: -webkit-linear-gradient(top, #ff9900 0%, #FFCC00 50%, #FF9900 50%, #ff9900 100%);
        background: linear-gradient(to bottom, #ff9900 0%, #FFCC00 50%, #FF9900 50%, #ff9900 100%);
        text-shadow: 0px 2px 4px #996600;
        margin: 0 auto;
        border: 3px solid #FC0;
        border-radius: 0.5em;
        color: #FFFFFF;
        font-weight: bold;
        box-sizing: border-box;
        font-size: 2rem;
        line-height: 1.2;
        text-decoration: none;
        width: 90%; }
      .Order .inner .entryWrap a:hover {
        opacity: 0.7; }
      .Order .inner .entryWrap a i {
        font-size: 200%;
        vertical-align: middle;
        position: relative;
        top: -0.1em;
        padding-right: 0.1em; }
    .Order .inner .paymentWrap p {
      text-align: center; }
      .Order .inner .paymentWrap p img {
        width: inherit !important;
        max-width: 100%; }

#Form .formInfo {
  padding: 20px 10px;
  text-align: left;
  margin: 0 0 4em;
  line-height: 1.5; }

#Form .formInfo h1 {
  font-size: 2.8rem;
  padding: 0 0 0.25em;
  border-bottom: 1px dotted #DCE9D9;
  margin: 0 0 0.5em;
  color: #DCE9D9;
  font-weight: bold; }

#Form .formInfo h2 {
  font-size: 2.4rem;
  padding: 0 0 0.25em;
  border-bottom: 1px dotted #DCE9D9;
  margin: 0 0 0.5em;
  color: #DCE9D9; }

#Form .formInfo h3 {
  font-size: 1.8rem;
  margin: 0 0 0.5em;
  color: #DCE9D9; }

#Form .formInfo h4 {
  font-size: 1.6rem;
  margin: 0.5em 0 0.5em;
  color: #DCE9D9; }

#Form .formInfo p {
  line-height: 1.5; }

#Second .secondBody {
  padding: 20px 10px;
  text-align: left;
  margin: 0 0 4em;
  line-height: 1.5;
  color: #FFF; }

#Second .secondBody h1 {
  font-size: 2.8rem;
  padding: 0 0 0.25em;
  border-bottom: 1px dotted #DCE9D9;
  margin: 0 0 0.5em;
  color: #DCE9D9;
  font-weight: bold; }

#Second .secondBody h2 {
  font-size: 2.4rem;
  padding: 0 0 0.25em;
  border-bottom: 1px dotted #DCE9D9;
  margin: 0 0 0.5em;
  color: #DCE9D9; }

#Second .secondBody h3 {
  font-size: 1.8rem;
  margin: 0 0 0.5em;
  color: #DCE9D9; }

#Second .secondBody h4 {
  font-size: 1.6rem;
  margin: 0.5em 0 0.5em;
  color: #DCE9D9; }

#Second .secondBody div {
  margin-bottom: 1.6rem; }

#Second .secondBody .caption {
  margin: 0 0 24px; }

#Second dl {
  width: 100%;
  margin: 0;
  text-align: left; }

#Second dt {
  font-size: 2rem;
  font-weight: bold;
  padding: 6px 8px;
  border-bottom: 1px dotted #DCE9D9;
  color: #DCE9D9; }

#Second dd {
  font-size: 1.6rem;
  padding: 0.5em;
  color: #FFF; }

nav {
  background-color: #295170;
  text-align: left;
  font-size: 0.875em;
  border-top: 1px solid #333; }

nav ul li a {
  border-bottom: 1px solid #333;
  padding: 0.75em 0.75em 0.75em;
  display: block;
  color: #FFF;
  text-decoration: none; }

nav ul li a:hover {
  background-color: #5b3334;
  color: #295170; }

#copy {
  background-color: #000;
  padding: 0.25em 0;
  color: #5b3334;
  text-align: center;
  font-size: 1.6rem; }

#page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
  /* IE */
  filter: alpha(opacity=75);
  /* IE */
  -moz-opacity: 0.75;
  /* Firefox(old) */
  -khtml-opacity: 0.75;
  /* Safari(old) */
  opacity: 0.75; }

#page-top a {
  background: #666;
  text-decoration: none;
  color: #fff;
  font-size: 1.2rem;
  padding: 1.8rem 0.6rem;
  line-height: 1;
  text-align: center;
  display: block;
  border-radius: 2px; }

#page-top a:hover {
  text-decoration: none;
  background: #C60; }

@media screen and (max-width: 640px) {
  html {
    font-size: 50%; }

  /*========================================
   Introduction
  ========================================*/
  /*========================================
   About
  ========================================*/
  #About .contentBlock ul li span {
    position: relative;
    padding-left: 19.2%;
    display: block; } }
@media screen and (min-width: 640px) {
  #container footer nav {
    color: #fff;
    text-align: left;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #111), color-stop(0, #222));
    background: -webkit-linear-gradient(top, #222 0%, #111 100%);
    background: -moz-linear-gradient(top, #222 0%, #111 100%);
    background: -o-linear-gradient(top, #222 0%, #111 100%);
    background: -ms-linear-gradient(top, #222 0%, #111 100%);
    background: linear-gradient(top, #222 0%, #111 100%);
    background-color: #111;
    padding: 3em 1em; }

  #container footer nav ul {
    text-align: center;
    margin: 0;
    padding: 0; }

  #container footer nav ul li {
    display: inline;
    margin: 0 0.5em;
    font-size: 1.4rem; }

  #container footer nav ul li a {
    border-bottom: none;
    padding: 0;
    background: none;
    display: inline;
    color: #fff; }

  #container footer nav ul li a:hover {
    background-color: transparent;
    text-decoration: underline; }

  #copy {
    background-color: #000;
    padding: 1em 0;
    color: #5b3334;
    text-align: center;
    font-size: 1.6rem; } }
/* サブページ用 */
#other_page h1 {
  padding: 4% 4%;
  font-weight: bold;
  color: #C00;
  font-size: 3rem; }
#other_page h2 {
  font-weight: bold; }
#other_page h3 {
  font-weight: bold; }
#other_page p {
  padding-bottom: 1em; }
  #other_page p:last-child {
    padding-bottom: 0; }
#other_page img {
  width: inherit; }
#other_page .form {
  padding: 4%;
  box-sizing: border-box; }
  #other_page .form iframe {
    width: 100%;
    height: 2000px; }
    @media screen and (max-width: 959px) {
      #other_page .form iframe {
        height: 2400px; } }
#other_page .flow, #other_page .privacy, #other_page .law, #other_page .company {
  text-align: left;
  padding: 0 4% 4%; }
  #other_page .flow h1, #other_page .privacy h1, #other_page .law h1, #other_page .company h1 {
    color: #C00;
    text-align: left;
    font-size: 1.8rem;
    padding: 0 0 2% 0;
    border-bottom: 1px dotted #C00;
    margin: 0 auto 2%; }
  #other_page .flow h2, #other_page .privacy h2, #other_page .law h2, #other_page .company h2 {
    color: #C00;
    text-align: left;
    font-size: 1.6rem;
    padding: 0 0 0 0;
    margin: 0 auto 2%; }
  #other_page .flow h4, #other_page .privacy h4, #other_page .law h4, #other_page .company h4 {
    color: #C00; }
#other_page .law dl dt, #other_page .company dl dt {
  color: #C00;
  text-align: left;
  font-size: 1.8rem;
  padding: 0 0 2% 0;
  border-bottom: 1px dotted #C00;
  margin: 0 auto 2%;
  font-weight: bold; }
#other_page .law dl dd, #other_page .company dl dd {
  padding-left: 0;
  padding-bottom: 1em;
  margin-bottom: 1.5em; }

/* フッター用 */
footer {
  margin-top: 0em; }

footer nav {
  box-shadow: 0px -1px 3px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0px -1px 3px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0px -1px 3px rgba(0, 0, 0, 0.5);
  background-color: #111;
  color: #fff;
  text-align: left;
  font-size: 0.75em;
  border-top: 1px solid #333; }

footer nav ul li {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #111), color-stop(0, #222));
  background: -webkit-linear-gradient(top, #222 0%, #111 100%);
  background: -moz-linear-gradient(top, #222 0%, #111 100%);
  background: -o-linear-gradient(top, #222 0%, #111 100%);
  background: -ms-linear-gradient(top, #222 0%, #111 100%);
  background: linear-gradient(top, #222 0%, #111 100%);
  background-color: #111; }

footer nav ul li i {
  color: #F03;
  width: 1.5em;
  text-align: center; }

footer nav ul li a {
  border-bottom: 1px solid #333;
  padding: 1em 8% 1em 2%;
  display: block;
  color: #FFF; }

footer nav ul li a:hover {
  background-color: #333;
  color: #FFF; }

footer p#copy {
  background-color: #000;
  padding: 0.25em 0;
  text-align: center; }

footer p#copy small {
  font-size: 1.2rem;
  color: #ccc; }

p#page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 0.75em;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
  filter: alpha(opacity=75);
  -moz-opacity: 0.75;
  -khtml-opacity: 0.75;
  opacity: 0.75;
  line-height: 1em; }

p#page-top a {
  background: #666;
  text-decoration: none;
  color: #fff;
  padding: 1em;
  text-align: center;
  display: block;
  border: 1px solid #FFF;
  border-radius: 50%; }

p#page-top a:hover {
  text-decoration: none;
  background: #999; }

@media screen and (min-width: 960px) {
  footer nav {
    color: #fff;
    text-align: left;
    font-size: 0.75em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #111), color-stop(0, #222));
    background: -webkit-linear-gradient(top, #222 0%, #111 100%);
    background: -moz-linear-gradient(top, #222 0%, #111 100%);
    background: -o-linear-gradient(top, #222 0%, #111 100%);
    background: -ms-linear-gradient(top, #222 0%, #111 100%);
    background: linear-gradient(top, #222 0%, #111 100%);
    background-color: #111;
    padding: 1em 0; }

  footer nav ul {
    text-align: center; }

  footer nav ul li {
    display: inline;
    margin: 0 0.5em; }

  footer nav ul li a {
    border-bottom: none;
    padding: 0;
    background: none;
    display: inline;
    color: #fff; }

  footer nav ul li a:hover {
    background-color: transparent;
    text-decoration: underline; } }
