@charset "UTF-8";
/* CSS Document */
/* CSS Document */
@import url("//fonts.googleapis.com/css?family=M+PLUS+1p:400,800&display=swap&subset=japanese");
@import url("//fonts.googleapis.com/css?family=Sawarabi+Mincho&display=swap&subset=japanese");
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display: inline-table;
  min-height: 1%;
  overflow: hidden;
}

/* IE8ハック */
html > body .clearfix {
  display: block\9 ;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
a {
  color: #e30419;
  text-decoration: none;
}
a:active, a:hover {
  outline: 0;
  color: #F00;
}

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

@-webkit-viewport {
  width: device-width;
}
@-moz-viewport {
  width: device-width;
}
@-ms-viewport {
  width: device-width;
}
@-o-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
/* CSS Document */
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, from(#222), to(#111));
  background: linear-gradient(top, #222 0%, #111 100%);
  background-color: #111;
}
footer nav ul li:nth-of-type(1) a:before {
  content: "\f157";
}
footer nav ul li:nth-of-type(2) a:before {
  content: "\f0cb";
}
footer nav ul li:nth-of-type(3) a:before {
  content: "\f0e3";
}
footer nav ul li:nth-of-type(4) a:before {
  content: "\f0f6";
}
footer nav ul li:nth-of-type(5) a:before {
  content: "\f0f7";
}
footer nav ul li:nth-of-type(6) a:before {
  content: "\f015";
}
footer nav ul li a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: 1px solid #333;
  padding: 1em 8% 1em 5%;
  display: block;
  color: #FFF;
}
footer nav ul li a:before {
  font-family: FontAwesome;
  margin-right: 5px;
  color: #e30419;
  display: inline-block;
  width: 1.5em;
  text-align: center;
}
footer nav ul li a:hover {
  background-color: #333;
  color: #FFF;
}
footer p#copy {
  background-color: #000;
  padding: 0.25em 0;
}
footer p#copy small {
  font-size: 0.5em;
  color: #ccc;
}

@media screen and (min-width: 640px) {
  footer nav {
    color: #fff;
    text-align: left;
    font-size: 0.75em;
    background: -webkit-gradient(linear, left top, left bottom, from(#222), to(#111));
    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;
  }
}
/* CSS Document */
.tokuten, .henkin {
  max-width: 640px;
  margin: 20px auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.henkin {
  color: #663300;
  border: #663300 4px solid;
  padding: 4%;
  background: url("/hall_common/inc/images/henkin_line.png") repeat;
  background-color: #f4e5c5;
}
.henkin .henkinInner {
  background-color: #fff;
  width: 100%;
  padding: 1.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.henkin .henkinInner p {
  text-align: left !important;
  line-height: 1.5;
  font-size: 1em;
}
.henkin .henkinInner .henkin_seal {
  display: block;
  max-width: 104px;
  width: 24%;
  float: right;
  margin: 0 0 1em 1em;
  -webkit-transform: rotate(5deg);
          transform: rotate(5deg);
}
.henkin .henkinInner .henkinTitle {
  font-size: 1.75em;
  margin: 0;
  padding-bottom: 0 !important;
}
.henkin .henkinInner .henkinSub {
  font-size: 1.25em;
  margin: 0;
  padding: 0;
  background: none;
  text-decoration: none;
}
.henkin .henkinInner .henkinSub:nth-of-type(2) {
  padding-top: 0;
}
.henkin .henkinInner .henkinTitle, .henkin .henkinInner .henkinSub {
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  color: #663300;
  padding-top: 0;
}
.henkin li {
  font-size: 0.75em;
  text-align: left;
}
.henkin li:before {
  content: "※";
}
.henkin .henkinInnerText p, .henkin ul {
  margin-top: 1em !important;
  padding-bottom: 0 !important;
}

.tokuten p {
  margin: 0;
  text-align: left !important;
}
.tokuten ul {
  width: 100%;
  border: #cc0000 2px solid;
  background-color: #000;
}
.tokuten ul li {
  color: #fff;
  border-bottom: #cc0000 1px solid;
  padding: 1em;
  text-indent: 0;
  margin-left: 0;
}
.tokuten ul li:before {
  content: "";
  margin: 0;
}
.tokuten ul li p, .tokuten ul li ul {
  font-size: 1em;
  text-align: left;
  line-height: 1.5;
}
.tokuten ul li p {
  padding: 1em 0 0;
}
.tokuten ul li p.saving {
  background-color: #cc0000;
  padding: 0 1em 1em 1em;
  color: #fff;
  margin-top: 1em;
  font-weight: bold;
}
.tokuten ul li .tokutenTitle {
  font-size: 1.25em;
  color: #fff;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  border-bottom: #900 1px solid;
  line-height: 1.25;
  text-align: left;
  padding: 0 0 0.5em;
}
.tokuten ul li .tokutenTitle .gold {
  font-size: 1.25em;
  display: block;
  color: #DA8E00;
  background: -webkit-linear-gradient(#F7DE05, #DA8E00, #EDAC06, #F7DE05, #ECB802, #DAAF08, #B67B03, #DA8E00, #EDAC06, #F7DE05, #ECB802, #EDAC06);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.tokuten ul li .tokutenTitle .tokutenCatch {
  font-size: 0.75em;
}
.tokuten .tokutenChara {
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1em;
}
.tokuten .tokutenChara li {
  display: inline-block;
  border: none;
  padding: 0;
  margin-right: 1em;
  font-weight: bold;
}
.tokuten .tokutenChara li:before {
  color: #cc0000;
  font-family: FontAwesome;
  content: "\f111" !important;
  font-weight: 400;
  margin-right: 0.25em;
}

.order {
  text-align: left;
}
.order h2 {
  color: #F60;
  border-bottom: 1px solid #F60;
  margin-bottom: 1em;
}
.order h3 {
  color: #096;
}
.order h2,
.order h3 {
  font-size: 1.75em;
}
.order h4 {
  color: #F90;
  font-size: 1.25em;
}
.order h2, .order h3, .order h4 {
  padding: 1em 0 0.25em 0;
}
.order .boxInner .guest {
  display: block;
  margin-bottom: 0.5em;
  color: #39C;
}
.order .boxInner .staff {
  display: block;
  margin-bottom: 0.5em;
  color: #396;
}
.order ol {
  list-style: decimal inside;
}
.order li dl {
  margin-left: 2em;
}
.order strong {
  color: #F90;
}

.media {
  padding-bottom: 3em !important;
}

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 1em;
  text-align: center;
  color: #FFF;
  background-color: #000;
}

#loader-bg {
  background: #000000;
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 11;
}
#loader-bg .loader-bg-inner {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 11;
}

.loader {
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 11em;
  height: 11em;
  border-radius: 50%;
  background: #e30419;
  background: -webkit-gradient(linear, left top, right top, color-stop(10%, #e30419), color-stop(42%, rgba(255, 0, 0, 0)));
  background: linear-gradient(to right, #e30419 10%, rgba(255, 0, 0, 0) 42%);
  position: relative;
  -webkit-animation: load3 1.4s infinite linear;
  animation: load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.loader:before {
  width: 50%;
  height: 50%;
  background: #e30419;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.loader:after {
  background: #000000;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
header {
  background-color: #000;
  position: relative;
}
header .mv {
  display: block;
  background: url("../images/header.jpg") no-repeat top center;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
header .mv:before {
  content: "";
  display: block;
  padding-top: 100%;
}
header .mv:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
header .mv h1, header .mv p, header .mv div {
  position: absolute;
}
header .mv .h01 {
  max-width: 481px;
  width: 50.1041666667%;
  top: 2%;
  left: 5%;
  z-index: 1;
}
header .mv .h02 {
  max-width: 557px;
  width: 58.0208333333%;
  top: 5%;
  left: 4.5%;
  z-index: 2;
}
header .mv .h03 {
  max-width: 444px;
  width: 46.25%;
  top: 13.5%;
  left: 5%;
  z-index: 3;
}
header .mv .h04 {
  max-width: 472px;
  width: 49.1666666667%;
  top: 17.5%;
  left: 5.5%;
  z-index: 4;
}
header .mv .h05 {
  max-width: 463px;
  width: 48.2291666667%;
  top: 23.5%;
  left: 5.5%;
  z-index: 5;
}
header .mv .logo {
  max-width: 353px;
  width: 36.7708333333%;
  top: 36%;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
header .mv .title01 {
  max-width: 902px;
  width: 93.9583333333%;
  bottom: 2%;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 3;
}
header h1#hidden {
  display: none;
}
header .mb {
  max-width: 751px;
  width: 90%;
  margin: auto;
}

div#wrap {
  background-color: #000;
}
div#wrap section {
  width: 90%;
  margin: 0 auto;
  margin: 0 auto;
}
div#wrap section.first {
  padding-top: 0em;
}
div#wrap section.capture ul {
  padding: 2em 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
div#wrap section.capture ul li {
  width: 32%;
  margin-bottom: 2%;
}
@media screen and (min-width: 960px) {
  div#wrap section.capture ul li {
    width: 24%;
    margin-bottom: 1.33%;
  }
  div#wrap section.capture ul li:last-of-type {
    display: none;
  }
}
div#wrap section .l_border {
  border-left: #e30419 5px solid;
  padding: 0.25em 0 0.25em 0.65em !important;
  color: #fc0;
  margin: 1.5em 0 1em 0;
}
div#wrap section .l_border h1 {
  color: #f90;
  border-bottom: 1px solid #999;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
div#wrap section h1 {
  text-align: left;
  font-size: 2em;
  color: #FFF;
  font-weight: bold;
  padding: 0;
}
div#wrap section h2 {
  text-align: left;
  font-size: 1.25em;
  color: #fff;
}
div#wrap section h1, div#wrap section h2 {
  line-height: 1em;
  font-weight: bold;
}
div#wrap section p {
  padding-bottom: 1em;
  text-align: left;
  line-height: 1.5em;
}
div#wrap section p span.txt_red {
  color: #e30419;
  font-size: 1.25em;
}
div#wrap section p span.txt_m {
  font-size: 0.75em;
}
div#wrap section p.img, div#wrap section p#price, div#wrap section p#flow_check {
  text-align: center;
  font-size: 0.75em;
}
div#wrap section p.img a:hover, div#wrap section p#price a:hover, div#wrap section p#flow_check a:hover {
  -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;
}
div#wrap section p#price_txt {
  padding-top: 0em;
  text-align: center;
}
div#wrap section p#price {
  padding-top: 0em;
}
div#wrap section p#btn {
  text-align: center;
  padding: 0;
  line-height: 1em;
}
div#wrap section p#btn a {
  text-align: center;
  width: 12em;
  background: -webkit-gradient(linear, left top, left bottom, from(#fc0), to(#CAA200));
  background: linear-gradient(top, #fc0 0%, #CAA200 100%);
  background-color: #FC0;
  border: 2px solid #7D6400;
  padding: 1em 0;
  display: block;
  margin: 0 auto;
  color: #403300;
  font-weight: bold;
  font-size: 1.25em;
  border-radius: 50px;
}
div#wrap section p#btn a:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#fffe32), to(#fcd432));
  background: linear-gradient(top, #fffe32 0%, #fcd432 100%);
  background-color: #FF0;
}
div#wrap section p#btn a:before {
  font-family: FontAwesome;
  content: "\f0a9";
  margin-right: 5px;
}
div#wrap section p span.emp {
  font-weight: bold;
  color: #FFF;
}
div#wrap section p#btn img {
  margin-bottom: 1em;
  max-width: 50%;
}
div#wrap section#price_area {
  padding: 2em 0;
  background: url("../images/price_bg.jpg") no-repeat center top;
  background-size: 100%;
}
div#wrap section#price_area p {
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
div#wrap section#price_area p img {
  display: block;
  margin: 0 auto;
}
div#wrap section#price_area .price_area_inner p:first-of-type {
  max-width: 859px;
  margin: 0 auto;
}
div#wrap section#price_area .price_area_inner p:first-of-type, div#wrap section#price_area .price_area_inner p:nth-of-type(2) {
  padding-bottom: 0;
}
div#wrap section#price_area .price_area_inner p:nth-of-type(3) {
  margin-top: -1em;
}
div#wrap section#price_area .price_area_inner p:nth-of-type(3) img {
  width: 80%;
}
div#wrap section.txt_big h1, div#wrap section.txt_big h2, div#wrap section.txt_big p {
  text-align: center;
}
div#wrap section.txt_big p {
  font-size: 1.25em;
  line-height: 1.5em;
}
div#wrap section.txt_big span {
  color: #FC0;
  font-size: 1.25em;
}
div#wrap section div#detail {
  margin: 0 auto;
  background-color: #1A1A1A;
  color: #CCC;
  padding: 1em;
  font-size: 0.75em;
  text-align: left;
}
div#wrap section div#detail .cap_detail {
  padding-left: 1em;
}
div#wrap section div#detail .cap_detail dt {
  float: left;
  clear: both;
  text-indent: -1em;
}
div#wrap section div#detail .cap_detail dt:before {
  font-family: FontAwesome;
  content: "\f0c8";
  margin-right: 2px;
}
div#wrap section div#detail .cap_detail dt:after {
  content: "：";
}
div#wrap section div#detail .cap_detail dt:last-of-type {
  float: none !important;
}
div#wrap section div#detail .cap_detail dd li:before {
  font-family: FontAwesome;
  content: "\f10c" !important;
  margin-right: 2px;
}
div#wrap section div#detail p {
  text-align: left;
  width: 100%;
}
div#wrap section div#table {
  padding-bottom: 2em;
}
div#wrap section div#table .privacy,
div#wrap section div#table .page_law,
div#wrap section div#table .flow,
div#wrap section div#table .order {
  text-align: left;
}
div#wrap section div#table .privacy p.caption,
div#wrap section div#table .page_law p.caption,
div#wrap section div#table .flow p.caption,
div#wrap section div#table .order p.caption {
  font-weight: bold;
}
div#wrap section div#table .flow h2 {
  color: #F60;
  border-bottom: 1px solid #F60;
  margin-bottom: 1em;
}
div#wrap section div#table .flow h3 {
  color: #096;
  border-bottom: 1px dotted #096;
}
div#wrap section div#table .flow h2,
div#wrap section div#table .flow h3 {
  font-size: 1.75em;
}
div#wrap section div#table .flow h4 {
  color: #F90;
  font-size: 1.25em;
}
div#wrap section div#table .flow h2,
div#wrap section div#table .flow h3,
div#wrap section div#table .flow h4 {
  padding: 1em 0 0.25em 0;
}
div#wrap section div#table .page_law dt {
  font-weight: bold;
  padding-bottom: 0.25em;
}
div#wrap section div#table .page_law dd {
  margin-bottom: 2em;
  border-bottom: 1px dotted #999;
  padding-bottom: 0.5em;
  padding-left: 1em;
}
div#wrap section div#table .privacy section {
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
  color: #FFF;
}
div#wrap section div#table .privacy section h1 {
  font-weight: bold;
  padding-bottom: 0.25em;
  font-size: 1.25em;
  border-bottom: 1px solid #e30419;
  margin-bottom: 0.5em;
  background: none;
}
div#wrap section#form {
  background-color: #FFF;
  width: 100% !important;
}
div#wrap section#form h1, div#wrap section#other h1 {
  color: #e30419;
  border-bottom: 1px solid #e30419;
  font-size: 1.75em;
  font-weight: bold;
  padding-bottom: 0.25em;
  margin-bottom: 0.5em;
  padding-top: 1em;
  margin-top: 0em;
  text-align: center;
}
div#wrap section#form iframe, div#wrap section#form h1 {
  width: 90%;
  margin: 0 auto;
}

#container 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;
}
#container p#page-top a {
  background: #666;
  text-decoration: none;
  color: #fff;
  padding: 1em;
  text-align: center;
  display: block;
  border-radius: 100%;
}
#container p#page-top a:hover {
  text-decoration: none;
  background: #999;
}

.order h2 {
  color: #F60;
  border-bottom: 1px solid #F60;
  margin-bottom: 1em;
}
.order h3 {
  color: #096;
}
.order h2,
.order h3 {
  font-size: 1.75em;
}
.order h4 {
  color: #F90;
  font-size: 1.25em;
}
.order h2,
.order h3,
.order h4 {
  padding: 1em 0 0.25em 0;
}
.order .boxInner .guest {
  display: block;
  margin-bottom: 0.5em;
  color: #39C;
}
.order .boxInner .staff {
  display: block;
  margin-bottom: 0.5em;
  color: #396;
}
.order ol {
  list-style: decimal inside;
}
.order li dl {
  margin-left: 2em;
}
.order strong {
  color: #F90;
}

@media screen and (min-width: 960px) {
  html, body {
    background: url(../images/background.jpg) no-repeat center top fixed #000;
    background-size: cover;
  }
  #container {
    width: 100%;
    margin: 0 auto;
  }
  #container header,
  #container div#wrap,
  #container footer {
    width: 960px;
    margin: 0 auto;
    position: relative;
  }
  #container header:before, #container header:after,
  #container div#wrap:before,
  #container div#wrap:after,
  #container footer:before,
  #container footer:after {
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 30px;
  }
  #container header:before,
  #container div#wrap:before,
  #container footer:before {
    -webkit-box-shadow: -30px 0 30px -30px inset rgb(0, 0, 0);
            box-shadow: -30px 0 30px -30px inset rgb(0, 0, 0);
    left: -30px;
  }
  #container header:after,
  #container div#wrap:after,
  #container footer:after {
    -webkit-box-shadow: 30px 0 30px -30px inset rgb(0, 0, 0);
            box-shadow: 30px 0 30px -30px inset rgb(0, 0, 0);
    right: -30px;
  }
  #container div#wrap {
    background-color: #000;
  }
  #container div#wrap h1 {
    font-size: 3em;
  }
  #container div#wrap h2 {
    font-size: 2em;
  }
  #container div#wrap section p#btn a {
    font-size: 1.75em;
    padding: 1em;
  }
  #container div#wrap section p#btn img {
    max-width: 100%;
  }
  #container div#wrap section p#price {
    padding-top: 1em;
  }
  #container div#wrap section div#form h1 {
    padding-top: 1.5em;
  }
  #container div#wrap section#other h1 {
    padding-top: 1em;
  }
  #container footer nav,
  #container footer p#copy {
    width: 960px;
    margin: 0 auto;
  }
}