@charset "UTF-8";
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/noto_serief_r.otf") format("opentype");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/noto_serief_b.otf") format("opentype");
}
.clearfix {
  *zoom: 1;
}
.clearfix:before, .clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}
.clearfix:after {
  clear: both;
}

.container-full {
  margin-right: auto;
  margin-left: auto;
  max-width: 1020px;
  *zoom: 1;
}
.container-full:before, .container-full:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-full:after {
  clear: both;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
  *zoom: 1;
  width: 100%;
}
.container-fluid:before, .container-fluid:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-fluid:after {
  clear: both;
}
@media only screen and (min-width: 768px) {
  .container-fluid {
    width: 1020px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1019px) {
  .container-fluid {
    width: auto !important;
  }
}
@media only screen and (max-width: 767px) {
  .container-fluid {
    width: auto;
  }
}

.row-margin-top {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .row-margin-top {
    margin-top: 25px;
  }
}

.row-padding {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .row-padding {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

a:hover img.hover,
span:hover img.hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}

img.b,
.b {
  display: block;
}

img.auto {
  margin: 0 auto;
  display: block;
}

img.full {
  width: 100%;
  height: auto;
}

img.max {
  max-width: 100%;
  height: auto;
}

.fR {
  float: right;
  _display: inline;
}

.fL {
  float: left;
  _display: inline;
}

.iL {
  float: left;
  display: inline;
  margin: 0 10px 5px 0;
}

.iR {
  float: right;
  display: inline;
  margin: 0 0 5px 10px;
}

.clear {
  clear: both;
  font: 1px/1px monospace;
}

.aR {
  text-align: right !important;
}

.aC {
  text-align: center !important;
}

.aL {
  text-align: left !important;
}

.vT {
  vertical-align: top !important;
}

.vM {
  vertical-align: middle !important;
}

.vB {
  vertical-align: bottom !important;
}

.hidden {
  display: none;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.mgl0 {
  margin-left: 0px !important;
}

.mgl5 {
  margin-left: 5px !important;
}

.mgl10 {
  margin-left: 10px !important;
}

.mgl15 {
  margin-left: 15px !important;
}

.mgl20 {
  margin-left: 20px !important;
}

.mgl25 {
  margin-left: 25px !important;
}

.mgl30 {
  margin-left: 30px !important;
}

.mgl35 {
  margin-left: 35px !important;
}

.mgl40 {
  margin-left: 40px !important;
}

.mgl45 {
  margin-left: 45px !important;
}

.mgl50 {
  margin-left: 50px !important;
}

.mgl75 {
  margin-left: 75px !important;
}

.mgl100 {
  margin-left: 100px !important;
}

.mgr0 {
  margin-right: 0px !important;
}

.mgr5 {
  margin-right: 5px !important;
}

.mgr10 {
  margin-right: 10px !important;
}

.mgr15 {
  margin-right: 15px !important;
}

.mgr20 {
  margin-right: 20px !important;
}

.mgr25 {
  margin-right: 25px !important;
}

.mgr30 {
  margin-right: 30px !important;
}

.mgr35 {
  margin-right: 35px !important;
}

.mgr40 {
  margin-right: 40px !important;
}

.mgr45 {
  margin-right: 45px !important;
}

.mgr50 {
  margin-right: 50px !important;
}

.mgr75 {
  margin-right: 75px !important;
}

.mgr100 {
  margin-right: 100px !important;
}

.mgt0 {
  margin-top: 0px !important;
}

.mgt5 {
  margin-top: 5px !important;
}

.mgt10 {
  margin-top: 10px !important;
}

.mgt15 {
  margin-top: 15px !important;
}

.mgt20 {
  margin-top: 20px !important;
}

.mgt25 {
  margin-top: 25px !important;
}

.mgt30 {
  margin-top: 30px !important;
}

.mgt35 {
  margin-top: 35px !important;
}

.mgt40 {
  margin-top: 40px !important;
}

.mgt45 {
  margin-top: 45px !important;
}

.mgt50 {
  margin-top: 50px !important;
}

.mgt75 {
  margin-top: 75px !important;
}

.mgt100 {
  margin-top: 100px !important;
}

.mgb0 {
  margin-bottom: 0px !important;
}

.mgb5 {
  margin-bottom: 5px !important;
}

.mgb10 {
  margin-bottom: 10px !important;
}

.mgb15 {
  margin-bottom: 15px !important;
}

.mgb20 {
  margin-bottom: 20px !important;
}

.mgb25 {
  margin-bottom: 25px !important;
}

.mgb30 {
  margin-bottom: 30px !important;
}

.mgb35 {
  margin-bottom: 35px !important;
}

.mgb40 {
  margin-bottom: 40px !important;
}

.mgb45 {
  margin-bottom: 45px !important;
}

.mgb50 {
  margin-bottom: 50px !important;
}

.mgb75 {
  margin-bottom: 75px !important;
}

.mgb100 {
  margin-bottom: 100px !important;
}

.pd0 {
  padding: 0 !important;
}

.pdlr0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

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

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, font, 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,
figure, figcaption,
article, section, nav, header, footer {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-style: normal;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
}

html {
  overflow-y: scroll;
  font-size: 62.5%;
}

img {
  border: none;
  -ms-interpolation-mode: bicubic;
}

p {
  margin: 0 0 1em 0;
}
p:last-child {
  margin-bottom: 0;
}

ul, ol {
  list-style: none;
  list-style-position: inside;
}

ul li, ol li {
  margin-bottom: 0.5em;
}
ul li:last-child, ol li:last-child {
  margin-bottom: 0;
}

dl {
  margin: 0;
}
dl dt {
  margin: 0;
  font-weight: bold;
}
dl dt a {
  font-weight: bold;
}
dl dd {
  margin-bottom: 0.5em;
}
dl dd:last-child {
  margin-bottom: 0;
}

hr {
  border-color: #ddd;
  border-style: solid;
  border-width: 1px 0 0 0;
  height: 1px;
  margin-top: 50px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  hr {
    margin-top: 25px;
    margin-bottom: 25px;
  }
}
hr.solid {
  border-style: solid;
  border-color: #ccc;
}
hr.dotted {
  border-style: dotted;
  border-color: #ccc;
}
hr.dashed {
  border-style: dashed;
  border-color: #bbb;
}
hr.trans {
  border-color: transparent;
  margin: 25px 0;
}

.vT {
  vertical-align: top;
}

.vM {
  vertical-align: middle;
}

.vB {
  vertical-align: bottom;
}

.oH {
  overflow: hidden !important;
}

.oV {
  overflow: visible !important;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  font-size: inherit;
}

.fs10 {
  font-size: 10px;
  font-size: 1rem;
}

.fs12, .supp {
  font-size: 12px;
  font-size: 1.2rem;
}

.fs14, blockquote p,
pre p,
dl p,
ol p,
ul p,
th p,
td p,
dd p,
dt p, p, blockquote,
dl,
ol,
ul,
th,
td, pre,
code,
kbd,
samp,
tt, select,
input,
button,
textarea {
  font-size: 14px;
  font-size: 1.4rem;
}

.fs16 {
  font-size: 16px;
  font-size: 1.6rem;
}

.fs18 {
  font-size: 18px;
  font-size: 1.8rem;
}

.fs24 {
  font-size: 24px;
  font-size: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .fs24 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.fs26 {
  font-size: 26px;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .fs26 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs28 {
  font-size: 28px;
  font-size: 2.8rem;
}
@media only screen and (max-width: 767px) {
  .fs28 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs30 {
  font-size: 30px;
  font-size: 3rem;
}
@media only screen and (max-width: 767px) {
  .fs30 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs34 {
  font-size: 34px;
  font-size: 3.4rem;
}
@media only screen and (max-width: 767px) {
  .fs34 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs38 {
  font-size: 38px;
  font-size: 3.8rem;
}
@media only screen and (max-width: 767px) {
  .fs38 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs40 {
  font-size: 40px;
  font-size: 4rem;
}
@media only screen and (max-width: 767px) {
  .fs40 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs42 {
  font-size: 42px;
  font-size: 4.2rem;
}
@media only screen and (max-width: 767px) {
  .fs42 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

body {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}

select,
input,
button,
textarea {
  font-family: arial, helvetica, clean, sans-serif;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
  line-height: 100%;
}

blockquote,
pre,
dl,
ol,
ul,
th,
td {
  line-height: 1.5;
}

p {
  line-height: 1.7;
}

ul,
ol,
dl {
  list-style-position: outside;
}

.lh1 {
  line-height: 1;
}

.bold {
  font-weight: bold;
}

em {
  font-weight: bold;
}

.notes {
  text-indent: -1em;
  margin-left: 1em;
}

.creep {
  color: #999;
}

a {
  color: #000;
  text-decoration: underline;
  -webkit-tap-highlight-color: #000;
}
a:hover {
  color: #000;
  text-decoration: none;
}
a:active, a:focus {
  outline: none;
}
a.uNone {
  text-decoration: none !important;
}
a.uLine {
  text-decoration: underline !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 900;
  margin: 0;
  padding: 0;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: bold;
}
h1.skin-B,
h2.skin-B,
h3.skin-B,
h4.skin-B,
h5.skin-B,
h6.skin-B {
  color: #000;
  font-size: 18px;
  font-size: 1.8rem;
}

ul.notes li {
  text-indent: -1em;
  margin-left: 1em;
}

ul.disc,
ol.disc {
  padding-left: 35px;
}
ul.disc li,
ol.disc li {
  list-style-type: disc;
}

ul.circle,
ol.circle {
  padding-left: 35px;
}
ul.circle li,
ol.circle li {
  list-style-type: circle;
}

ul.decimal,
ol.decimal {
  padding-left: 35px;
}
ul.decimal li,
ol.decimal li {
  list-style-type: decimal;
}

/**
 * WordpressのネイティブCSS
 * http://codex.wordpress.org/CSS
 */
@media only screen and (min-width: 768px) {
  .alignnone {
    margin: 5px 20px 20px 0;
  }

  .aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto;
  }

  .alignright {
    float: right;
    margin: 5px 0 20px 20px;
  }

  .alignleft {
    float: left;
    margin: 5px 20px 20px 0;
  }

  .aligncenter {
    display: block;
    margin: 5px auto;
  }

  a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
  }

  a img.alignnone {
    margin: 5px 20px 20px 0;
  }

  a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
  }

  a img.aligncenter {
    display: block;
    margin-right: auto;
    margin-left: auto;
  }

  .wp-caption {
    max-width: 96%;
    /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
    border: 1px solid #f0f0f0;
    background: #fff;
  }

  .wp-caption.alignnone {
    margin: 5px 20px 20px 0;
  }

  .wp-caption.alignleft {
    margin: 5px 20px 20px 0;
  }

  .wp-caption.alignright {
    margin: 5px 0 20px 20px;
  }

  .wp-caption img {
    width: auto;
    max-width: 98.5%;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0 none;
  }

  .wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
  }
}
@media only screen and (max-width: 767px) {
  .alignnone {
    margin: 5px 20px 20px 0;
  }

  .aligncenter,
.alignright,
.alignleft,
a img.alignright,
a img.alignleft,
div.aligncenter {
    display: block;
    margin: 5px auto;
  }

  .aligncenter {
    display: block;
    margin: 5px auto;
  }

  a img.aligncenter {
    display: block;
    margin-right: auto;
    margin-left: auto;
  }

  .wp-caption {
    max-width: 96%;
    /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
    border: 1px solid #f0f0f0;
    background: #fff;
  }

  .wp-caption.alignnone {
    margin: 5px 20px 20px 0;
  }

  .wp-caption.alignleft {
    margin: 5px 20px 20px 0;
  }

  .wp-caption.alignright {
    margin: 5px 0 20px 20px;
  }

  .wp-caption img {
    width: auto;
    max-width: 98.5%;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0 none;
  }

  .wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
  }
}
.wp-pagenavi {
  margin-top: 40px;
}
.wp-pagenavi a, .wp-pagenavi span {
  display: inline-block;
  font-size: 1.6rem;
  padding: 0 5px;
}
.wp-pagenavi span.current {
  font-weight: bold;
}

/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*!
 * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=0b340dec89a5e49e2de9)
 * Config saved to config.json and https://gist.github.com/0b340dec89a5e49e2de9
 */
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

svg:not(:root) {
  overflow: hidden;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  vertical-align: middle;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-11 {
  width: 91.66666667%;
}

.col-xs-10 {
  width: 83.33333333%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-8 {
  width: 66.66666667%;
}

.col-xs-7 {
  width: 58.33333333%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-5 {
  width: 41.66666667%;
}

.col-xs-4 {
  width: 33.33333333%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-2 {
  width: 16.66666667%;
}

.col-xs-1 {
  width: 8.33333333%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-pull-11 {
  right: 91.66666667%;
}

.col-xs-pull-10 {
  right: 83.33333333%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-8 {
  right: 66.66666667%;
}

.col-xs-pull-7 {
  right: 58.33333333%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-5 {
  right: 41.66666667%;
}

.col-xs-pull-4 {
  right: 33.33333333%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-2 {
  right: 16.66666667%;
}

.col-xs-pull-1 {
  right: 8.33333333%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-push-11 {
  left: 91.66666667%;
}

.col-xs-push-10 {
  left: 83.33333333%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-8 {
  left: 66.66666667%;
}

.col-xs-push-7 {
  left: 58.33333333%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-5 {
  left: 41.66666667%;
}

.col-xs-push-4 {
  left: 33.33333333%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-2 {
  left: 16.66666667%;
}

.col-xs-push-1 {
  left: 8.33333333%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-2 {
    width: 16.66666667%;
  }

  .col-sm-1 {
    width: 8.33333333%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-pull-11 {
    right: 91.66666667%;
  }

  .col-sm-pull-10 {
    right: 83.33333333%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-pull-8 {
    right: 66.66666667%;
  }

  .col-sm-pull-7 {
    right: 58.33333333%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-pull-5 {
    right: 41.66666667%;
  }

  .col-sm-pull-4 {
    right: 33.33333333%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-pull-2 {
    right: 16.66666667%;
  }

  .col-sm-pull-1 {
    right: 8.33333333%;
  }

  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-push-12 {
    left: 100%;
  }

  .col-sm-push-11 {
    left: 91.66666667%;
  }

  .col-sm-push-10 {
    left: 83.33333333%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-push-8 {
    left: 66.66666667%;
  }

  .col-sm-push-7 {
    left: 58.33333333%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-push-5 {
    left: 41.66666667%;
  }

  .col-sm-push-4 {
    left: 33.33333333%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-push-2 {
    left: 16.66666667%;
  }

  .col-sm-push-1 {
    left: 8.33333333%;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-2 {
    width: 16.66666667%;
  }

  .col-md-1 {
    width: 8.33333333%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-pull-11 {
    right: 91.66666667%;
  }

  .col-md-pull-10 {
    right: 83.33333333%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-pull-8 {
    right: 66.66666667%;
  }

  .col-md-pull-7 {
    right: 58.33333333%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-pull-5 {
    right: 41.66666667%;
  }

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }

  .col-md-pull-1 {
    right: 8.33333333%;
  }

  .col-md-pull-0 {
    right: auto;
  }

  .col-md-push-12 {
    left: 100%;
  }

  .col-md-push-11 {
    left: 91.66666667%;
  }

  .col-md-push-10 {
    left: 83.33333333%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-push-8 {
    left: 66.66666667%;
  }

  .col-md-push-7 {
    left: 58.33333333%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-push-5 {
    left: 41.66666667%;
  }

  .col-md-push-4 {
    left: 33.33333333%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-push-2 {
    left: 16.66666667%;
  }

  .col-md-push-1 {
    left: 8.33333333%;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-1 {
    width: 8.33333333%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-pull-11 {
    right: 91.66666667%;
  }

  .col-lg-pull-10 {
    right: 83.33333333%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-pull-8 {
    right: 66.66666667%;
  }

  .col-lg-pull-7 {
    right: 58.33333333%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-pull-5 {
    right: 41.66666667%;
  }

  .col-lg-pull-4 {
    right: 33.33333333%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-pull-2 {
    right: 16.66666667%;
  }

  .col-lg-pull-1 {
    right: 8.33333333%;
  }

  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-push-12 {
    left: 100%;
  }

  .col-lg-push-11 {
    left: 91.66666667%;
  }

  .col-lg-push-10 {
    left: 83.33333333%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-push-8 {
    left: 66.66666667%;
  }

  .col-lg-push-7 {
    left: 58.33333333%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-push-5 {
    left: 41.66666667%;
  }

  .col-lg-push-4 {
    left: 33.33333333%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-push-2 {
    left: 16.66666667%;
  }

  .col-lg-push-1 {
    left: 8.33333333%;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }

  table.visible-xs {
    display: table !important;
  }

  tr.visible-xs {
    display: table-row !important;
  }

  th.visible-xs,
td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }

  table.visible-sm {
    display: table !important;
  }

  tr.visible-sm {
    display: table-row !important;
  }

  th.visible-sm,
td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }

  table.visible-md {
    display: table !important;
  }

  tr.visible-md {
    display: table-row !important;
  }

  th.visible-md,
td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }

  table.visible-lg {
    display: table !important;
  }

  tr.visible-lg {
    display: table-row !important;
  }

  th.visible-lg,
td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }

  table.visible-print {
    display: table !important;
  }

  tr.visible-print {
    display: table-row !important;
  }

  th.visible-print,
td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/* button, table, font */
img {
  max-width: 100%;
  height: auto;
}

a img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
a img:hover {
  opacity: 0.8;
}

@media only screen and (max-width: 767px) {
  .spaL {
    text-align: left !important;
  }
}

@media only screen and (max-width: 767px) {
  .aC.spaL {
    text-align: left !important;
  }
}

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

.red {
  color: #d00000;
}

table.basic {
  width: 100%;
}
table.basic th,
table.basic td {
  text-align: left;
  padding: 5px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  border: none !important;
}
table.basic tbody tr th {
  font-weight: bold;
  white-space: nowrap;
}

table.standard {
  width: 100%;
  border-top: 1px solid #ccc;
}
table.standard th,
table.standard td {
  padding: 10px 15px;
  font-size: 14px;
  font-size: 1.4rem;
}
table.standard tbody tr th,
table.standard tbody tr td {
  border-bottom: 1px solid #ccc;
}
table.standard tbody tr th {
  text-align: right;
  vertical-align: top;
  font-weight: bold;
  border-right-width: 3px;
  border-right-style: solid;
}
@media only screen and (max-width: 767px) {
  table.standard tbody tr th,
table.standard tbody tr td {
    display: block;
  }
  table.standard tbody tr th {
    text-align: left;
    border: none;
    padding-bottom: 0;
  }
}

.table-striped tr:nth-of-type(2n + 1) {
  background-color: rgba(0, 0, 0, 0.05);
}
.table-striped th,
.table-striped td {
  padding: 15px 20px;
}
.table-striped td {
  border: none !important;
}

body {
  background-color: #fff;
}

.global-wrapper {
  padding-top: 100px;
}
@media only screen and (max-width: 767px) {
  .global-wrapper {
    padding-top: 80px;
  }
}

header {
  background-color: #fff;
  position: fixed;
  z-index: 1000;
  width: 100%;
  top: 0;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  header {
    height: 80px;
  }
}
header .logo {
  width: 22%;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 45px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  header .logo {
    width: 55%;
    height: 80px;
    padding-left: 35px;
  }
}
header .logo img {
  width: 268px;
  height: auto;
}
header nav.gNavi {
  background-color: #fff;
  position: absolute;
  right: 30px;
  bottom: 10px;
}
header nav.gNavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header nav.gNavi ul li {
  margin: 0 40px 0 0;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1019px) {
  header nav.gNavi ul li {
    margin-right: 30px;
  }
}
header nav.gNavi ul li:last-child {
  margin-right: 0;
}
header nav.gNavi ul li a {
  display: block;
  font-weight: 400;
  text-decoration: none;
  font-size: 1.6rem;
  padding: 5px 0;
}
@media only screen and (min-width: 768px) and (max-width: 1019px) {
  header nav.gNavi ul li a {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  header nav.gNavi ul li a::before, header nav.gNavi ul li a::after {
    position: absolute;
    left: 50%;
    content: "";
    width: 0;
    height: 1px;
    background-color: #c6b497;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  header nav.gNavi ul li a::before {
    top: 0;
  }
  header nav.gNavi ul li a::after {
    bottom: 0;
  }
  header nav.gNavi ul li a:hover {
    color: #2e2e84;
  }
  header nav.gNavi ul li a:hover::before, header nav.gNavi ul li a:hover::after {
    width: 100%;
  }
}
header.global {
  -webkit-box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.1);
  /*　sp only menu　*/
}
@media only screen and (max-width: 767px) {
  header.global nav.gNavi {
    position: fixed;
    top: 80px;
    left: 0;
    background: rgba(255, 255, 255, 0.95);
    text-align: center;
    width: 100%;
    opacity: 0;
    z-index: -1;
    -webkit-transition: opacity 0.6s ease, visibility 0.6s ease;
    transition: opacity 0.6s ease, visibility 0.6s ease;
  }
  header.global nav.gNavi ul {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    display: block;
  }
  header.global nav.gNavi ul li {
    list-style-type: none;
    padding: 0;
    width: 100%;
    -webkit-transition: 0.4s all;
    transition: 0.4s all;
    position: relative;
  }
  header.global nav.gNavi ul li:last-child {
    padding-bottom: 0;
  }
  header.global nav.gNavi ul li a {
    display: block;
    text-decoration: none;
    padding: 15px 0;
  }
  header.global nav.gNavi ul li a::after {
    content: none;
  }
  header.global nav.gNavi ul li::before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 10px;
    background-color: #16697a;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 0;
  }
  header.global nav.gNavi ul li:last-child::before {
    content: none;
  }
  header.global nav.gNavi.active {
    opacity: 100;
    z-index: 999;
    /*　他のアイテムに対して最上位のレイヤーになるように */
  }
}
header.global .hamburger {
  display: none;
  position: absolute;
  z-index: 3;
  right: 13px;
  top: 32px;
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  header.global .hamburger {
    display: block;
  }
}
header.global .hamburger span {
  display: block;
  position: absolute;
  width: 26px;
  height: 2px;
  left: 6px;
  background: #555;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
header.global .hamburger span:nth-child(1) {
  top: 10px;
}
header.global .hamburger span:nth-child(2) {
  top: 18px;
}
header.global .hamburger span:nth-child(3) {
  top: 26px;
}
header.global .hamburger.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: #555;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
header.global .hamburger.active span:nth-child(2), header.global .hamburger.active span:nth-child(3) {
  top: 16px;
  background: #555;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
header.top {
  position: relative;
  text-align: center;
  height: auto;
  padding: 40px 0 30px;
  display: block;
  z-index: 1001;
}
header.top .logo {
  width: 70%;
  margin: auto;
  height: auto;
  display: block;
  padding-left: 0;
}
@media only screen and (min-width: 768px) {
  header.top .logo {
    width: 321px;
    margin: 0 auto 10px;
    position: relative;
    left: -20px;
  }
}
header.top .logo img.hikawa_logo {
  width: 321px;
  height: auto;
}
header.top .logo img.kisho_logo {
  width: 190px;
  height: auto;
  display: block;
  position: absolute;
  right: -240px;
  bottom: -10px;
}
@media only screen and (max-width: 767px) {
  header.top .logo img.kisho_logo {
    display: none;
  }
}
header.top nav.gNavi {
  width: 100%;
  padding: 50px 0 0 0;
  position: relative;
  right: auto;
  bottom: auto;
  /* 気象神社バナーがない場合
  &::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background-color: #2f8a9c;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 35px;
  }
  */
}
@media only screen and (max-width: 767px) {
  header.top nav.gNavi {
    display: none;
  }
}
header .change_lan {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #fff;
  z-index: 1000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
header .change_lan a,
header .change_lan span {
  display: block;
  color: #999;
  width: 100px;
  border: 1px solid #333;
  border-right: none;
  border-top: none;
  padding: 3px 0;
  text-align: center;
  font-size: 1.4rem;
  text-decoration: none;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 767px) {
  header .change_lan a,
header .change_lan span {
    font-size: 1.2rem;
    width: 70px;
  }
}
header .change_lan a.on,
header .change_lan span.on {
  background-color: #333;
  color: #fff;
}
header .change_lan a:hover {
  background-color: #eee;
  color: #7b711c;
}

section.breadcrumbs {
  width: 100%;
  padding: 10px;
  text-align: right;
}
@media only screen and (min-width: 768px) {
  section.breadcrumbs {
    width: 1020px;
    margin: auto;
  }
}

.page .page__title {
  height: 200px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  background: url(../images/about/bg.jpg) center center no-repeat;
  background-size: 100% auto;
}
@media only screen and (max-width: 767px) {
  .page .page__title {
    background-size: cover;
  }
}
.page .page__title::before {
  background-color: rgba(0, 0, 0, 0.6);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: " ";
  z-index: 1;
}
.page .page__title h1 {
  color: #fff;
  font-size: 3rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  position: relative;
  z-index: 2;
  text-shadow: black 1px 0 10px;
}
@media only screen and (max-width: 767px) {
  .page .page__title h1 {
    font-size: 2.4rem;
  }
}

a#pagetop {
  font-size: 1.4rem;
  position: fixed;
  bottom: 40px;
  right: 40px;
  z-index: 99;
  background: #eee;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50px;
  opacity: 0.9;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 80px;
  height: 80px;
}
@media only screen and (max-width: 767px) {
  a#pagetop {
    width: 60px;
    height: 60px;
    bottom: 20px;
    right: 20px;
    opacity: 1;
  }
}
a#pagetop:hover {
  text-decoration: none;
  opacity: 0.5;
}
a#pagetop span {
  display: block;
  text-align: center;
}
a#pagetop span .svg-inline--fa,
a#pagetop span i {
  display: block;
  margin: 0 auto 5px;
}

footer {
  width: 100%;
}
footer .footer__top {
  background-color: #2e2e84;
}
footer .footer__top .footer__links ul {
  text-align: center;
  padding: 30px 15px;
}
footer .footer__top .footer__links ul li {
  display: inline;
  margin: 0 10px;
}
@media only screen and (max-width: 767px) {
  footer .footer__top .footer__links ul li {
    display: block;
    margin-bottom: 15px;
  }
}
footer .footer__top .footer__links ul li a {
  text-decoration: none;
  color: #fff;
}
footer .footer__top .footer__links ul li a:hover {
  text-decoration: underline;
}
footer .footer__bottom {
  padding: 30px 15px;
  background-color: #333;
  color: #fff;
}
footer .footer__bottom .footer__bottom-left li.widget,
footer .footer__bottom .footer__bottom-right li.widget {
  list-style: none;
  font-size: 12px;
  font-size: 1.2rem;
}
footer .footer__bottom .footer__bottom-left li.widget .widgettitle,
footer .footer__bottom .footer__bottom-right li.widget .widgettitle {
  font-size: 14px;
  font-size: 1.4rem;
}
footer .footer__bottom .footer__bottom-left li.widget .textwidget,
footer .footer__bottom .footer__bottom-right li.widget .textwidget {
  font-size: 12px;
  font-size: 1.2rem;
}
footer .footer__bottom .footer__bottom-right .texts ul li.widget {
  list-style: none;
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem;
}
footer .footer__bottom .footer__bottom-right .texts ul li.widget .widgettitle {
  font-size: 14px;
  font-size: 1.4rem;
}
footer .footer__bottom .footer__bottom-right ul.links {
  text-align: right;
}
footer .footer__bottom .footer__bottom-right ul.links li {
  display: inline;
  margin-left: 10px;
}
footer .footer__bottom .footer__bottom-right ul.links li a {
  text-decoration: none;
}
footer .footer__bottom .footer__bottom-right ul.links li a:hover {
  text-decoration: underline;
}
footer .footer__bottom .footer__bottom-right ul.images {
  padding: 10px;
  *zoom: 1;
}
footer .footer__bottom .footer__bottom-right ul.images:before, footer .footer__bottom .footer__bottom-right ul.images:after {
  display: table;
  content: "";
  line-height: 0;
}
footer .footer__bottom .footer__bottom-right ul.images:after {
  clear: both;
}
footer .footer__bottom .footer__bottom-right ul.images li {
  float: right;
  margin-left: 10px;
}
footer .footer__bottom .footer__bottom-right ul.images li a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=0.8);
  -ms-filter: "alpha( opacity=$alpha )";
}
footer .footer__bottom .footer__bottom-right ul.images li img {
  display: block;
}
footer .footer__bottom .footer__bottom-left .logo {
  margin-bottom: 10px;
}
footer .footer__bottom .footer__bottom-left .texts ul li.widget {
  list-style: none;
}
footer .footer__bottom .copyright {
  text-align: center;
  display: block;
  font-size: 10px;
  font-size: 1rem;
  padding: 10px;
}

/* banner sigle-content ggmap table */
.clearfix {
  *zoom: 1;
}
.clearfix:before, .clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}
.clearfix:after {
  clear: both;
}

.container-full {
  margin-right: auto;
  margin-left: auto;
  max-width: 1020px;
  *zoom: 1;
}
.container-full:before, .container-full:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-full:after {
  clear: both;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
  *zoom: 1;
  width: 100%;
}
.container-fluid:before, .container-fluid:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-fluid:after {
  clear: both;
}
@media only screen and (min-width: 768px) {
  .container-fluid {
    width: 1020px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1019px) {
  .container-fluid {
    width: auto !important;
  }
}
@media only screen and (max-width: 767px) {
  .container-fluid {
    width: auto;
  }
}

.row-margin-top {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .row-margin-top {
    margin-top: 25px;
  }
}

.row-padding {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .row-padding {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

a:hover img.hover,
span:hover img.hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}

img.b,
.b {
  display: block;
}

img.auto {
  margin: 0 auto;
  display: block;
}

img.full {
  width: 100%;
  height: auto;
}

img.max {
  max-width: 100%;
  height: auto;
}

.fR {
  float: right;
  _display: inline;
}

.fL {
  float: left;
  _display: inline;
}

.iL {
  float: left;
  display: inline;
  margin: 0 10px 5px 0;
}

.iR {
  float: right;
  display: inline;
  margin: 0 0 5px 10px;
}

.clear {
  clear: both;
  font: 1px/1px monospace;
}

.aR {
  text-align: right !important;
}

.aC {
  text-align: center !important;
}

.aL {
  text-align: left !important;
}

.vT {
  vertical-align: top !important;
}

.vM {
  vertical-align: middle !important;
}

.vB {
  vertical-align: bottom !important;
}

.hidden {
  display: none;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.mgl0 {
  margin-left: 0px !important;
}

.mgl5 {
  margin-left: 5px !important;
}

.mgl10 {
  margin-left: 10px !important;
}

.mgl15 {
  margin-left: 15px !important;
}

.mgl20 {
  margin-left: 20px !important;
}

.mgl25 {
  margin-left: 25px !important;
}

.mgl30 {
  margin-left: 30px !important;
}

.mgl35 {
  margin-left: 35px !important;
}

.mgl40 {
  margin-left: 40px !important;
}

.mgl45 {
  margin-left: 45px !important;
}

.mgl50 {
  margin-left: 50px !important;
}

.mgl75 {
  margin-left: 75px !important;
}

.mgl100 {
  margin-left: 100px !important;
}

.mgr0 {
  margin-right: 0px !important;
}

.mgr5 {
  margin-right: 5px !important;
}

.mgr10 {
  margin-right: 10px !important;
}

.mgr15 {
  margin-right: 15px !important;
}

.mgr20 {
  margin-right: 20px !important;
}

.mgr25 {
  margin-right: 25px !important;
}

.mgr30 {
  margin-right: 30px !important;
}

.mgr35 {
  margin-right: 35px !important;
}

.mgr40 {
  margin-right: 40px !important;
}

.mgr45 {
  margin-right: 45px !important;
}

.mgr50 {
  margin-right: 50px !important;
}

.mgr75 {
  margin-right: 75px !important;
}

.mgr100 {
  margin-right: 100px !important;
}

.mgt0 {
  margin-top: 0px !important;
}

.mgt5 {
  margin-top: 5px !important;
}

.mgt10 {
  margin-top: 10px !important;
}

.mgt15 {
  margin-top: 15px !important;
}

.mgt20 {
  margin-top: 20px !important;
}

.mgt25 {
  margin-top: 25px !important;
}

.mgt30 {
  margin-top: 30px !important;
}

.mgt35 {
  margin-top: 35px !important;
}

.mgt40 {
  margin-top: 40px !important;
}

.mgt45 {
  margin-top: 45px !important;
}

.mgt50 {
  margin-top: 50px !important;
}

.mgt75 {
  margin-top: 75px !important;
}

.mgt100 {
  margin-top: 100px !important;
}

.mgb0 {
  margin-bottom: 0px !important;
}

.mgb5 {
  margin-bottom: 5px !important;
}

.mgb10 {
  margin-bottom: 10px !important;
}

.mgb15 {
  margin-bottom: 15px !important;
}

.mgb20 {
  margin-bottom: 20px !important;
}

.mgb25 {
  margin-bottom: 25px !important;
}

.mgb30 {
  margin-bottom: 30px !important;
}

.mgb35 {
  margin-bottom: 35px !important;
}

.mgb40 {
  margin-bottom: 40px !important;
}

.mgb45 {
  margin-bottom: 45px !important;
}

.mgb50 {
  margin-bottom: 50px !important;
}

.mgb75 {
  margin-bottom: 75px !important;
}

.mgb100 {
  margin-bottom: 100px !important;
}

.pd0 {
  padding: 0 !important;
}

.pdlr0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.banners {
  background-color: #2e2e84;
  padding: 45px 0;
}
@media only screen and (max-width: 767px) {
  .banners {
    padding: 20px 0;
  }
}
@media only screen and (min-width: 768px) {
  .banners ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 1000px;
    margin: auto;
  }
}
.banners ul li.item {
  width: 250px;
  margin: 0 auto 20px;
}
@media only screen and (min-width: 768px) {
  .banners ul li.item {
    margin: 0 30px 0 0;
  }
  .banners ul li.item:last-child {
    margin-right: 0;
  }
}
.banners ul li.item a {
  display: block;
  text-decoration: none;
}
.banners ul li.item a img {
  max-width: 100%;
  height: auto;
  border: 1px solid #fff;
}
.banners ul li.item:last-child {
  margin-bottom: 0;
}

.content {
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .content {
    width: 90%;
  }
}
@media only screen and (min-width: 768px) {
  .content .inner {
    width: 800px;
    margin: 0 auto;
  }
}
.content .content__title {
  margin: 0 0 50px;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  padding-bottom: 30px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .content .content__title {
    margin: 0 0 30px;
    font-size: 2rem;
    padding-bottom: 20px;
  }
}
.content .content__title::after {
  background-color: #5f6768;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 32px;
  height: 2px;
}
.content .content__time {
  display: block;
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 10px;
}
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
  margin-bottom: 20px;
}
.content h1 {
  font-size: 3rem;
  font-weight: 400;
}
.content h2 {
  font-size: 2.4rem;
  font-weight: 400;
}
.content h3 {
  font-size: 1.8rem;
  font-weight: 400;
}
.content h4 {
  font-size: 1.6rem;
}
.content h5 {
  margin-bottom: 10px;
  padding: 5px 0 5px 10px;
  border-bottom: solid 1px #000;
  border-left: solid 5px #000;
  font-size: 18px;
  font-size: 1.8rem;
}
.content h6 {
  margin-bottom: 5px;
  color: #666;
  font-size: 18px;
  font-size: 1.8rem;
}
.content ul {
  padding: 0.5em 2em;
  list-style: disc;
}
.content ul li:last-child {
  margin-bottom: 0;
}
.content ol {
  padding: 0.5em 2em;
  list-style: decimal;
}
.content ol li:last-child {
  margin-bottom: 0;
}
.content p {
  margin-bottom: 30px;
}
.content .content__blocks {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  .content .content__blocks {
    margin-bottom: 50px;
  }
}
.content .content__blocks .block_textarea,
.content .content__blocks .block_table,
.content .content__blocks .block_map {
  *zoom: 1;
}
.content .content__blocks .block_textarea:before, .content .content__blocks .block_textarea:after,
.content .content__blocks .block_table:before,
.content .content__blocks .block_table:after,
.content .content__blocks .block_map:before,
.content .content__blocks .block_map:after {
  display: table;
  content: "";
  line-height: 0;
}
.content .content__blocks .block_textarea:after,
.content .content__blocks .block_table:after,
.content .content__blocks .block_map:after {
  clear: both;
}
.content .content__blocks .block_textarea img,
.content .content__blocks .block_table img {
  display: block;
  max-width: 100%;
  height: auto;
}
.content .content__blocks .block_textarea img {
  max-width: 100%;
  height: auto;
  display: block;
}
.content .content__blocks .block_textarea dl {
  margin-top: 15px;
  margin-bottom: 30px;
}
.content .content__blocks .block_textarea dl dl {
  margin-left: 15px;
}
.content .content__blocks .block_textarea table {
  width: 100%;
}
.content .content__blocks .block_textarea table th,
.content .content__blocks .block_textarea table td {
  padding: 10px 15px;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #ccc;
  text-align: left;
}
.content .content__blocks .block_textarea table tbody tr th {
  vertical-align: top;
  font-weight: bold;
  background-color: #fafafa;
}
.content .content__body table {
  width: 100%;
}
.content .content__body table th,
.content .content__body table td {
  padding: 10px 15px;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #ccc;
  text-align: left;
}
.content .content__body table tbody tr th {
  vertical-align: top;
  font-weight: bold;
  background-color: #fafafa;
}
.content .content__body img {
  max-width: 100%;
  height: auto;
}
div.search,
section.search {
  border: 1px dotted #ddd;
  padding: 15px;
}
div.search .search__text,
section.search .search__text {
  width: 90%;
  padding: 5px;
}

.ggmap iframe {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .ggmap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
  }

  .ggmap iframe,
.ggmap object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.button {
  display: inline-block;
  padding: 5px 15px;
  font-size: 1.3rem;
  text-align: center;
  border: 1px solid #333;
  color: #333;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.button .svg-inline--fa,
.button i {
  margin-right: 5px;
}
.button:hover {
  background-color: #333;
  color: #fff;
}

.button__kitou {
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 15px 30px;
  color: #fff;
  background-color: #2e2e84;
  font-size: 2rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .button__kitou {
    font-size: 1.8rem;
  }
}
.button__kitou:hover {
  background-color: #21215e;
  color: #fff;
}
.button__kitou svg,
.button__kitou i {
  margin-right: 10px;
}
.button__juyohin {
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 15px 30px;
  color: #fff;
  background-color: #2e2e84;
  font-size: 2rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .button__juyohin {
    font-size: 1.8rem;
  }
}
.button__juyohin:hover {
  background-color: #21215e;
  color: #fff;
}
.button__juyohin svg,
.button__juyohin i {
  margin-right: 10px;
}
.button__contact {
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 15px 30px;
  color: #2e2e84;
  border: 2px solid #2e2e84;
  background: #eaeafc;
  background: -webkit-gradient(linear, left top, right top, from(#eaeafc), color-stop(50%, white), to(#eaeafc));
  background: linear-gradient(90deg, #eaeafc 0%, white 50%, #eaeafc 100%);
  font-size: 2rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .button__contact {
    font-size: 1.8rem;
  }
}
.button__contact:hover {
  background: #2e2e84;
  color: #fff;
}
.button__submit {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: none;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  color: #fff;
  background-color: #000;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.button__submit:hover {
  background-color: #2e2e84;
}
.button__submit svg {
  margin-right: 10px;
}
.button__cancel {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
.button__cancel:hover {
  background-color: #ccc;
}

.wp-pagenavi a {
  font-size: 1.2rem;
  display: inline-block;
  border: 1px solid #333;
  border-radius: 3px;
  text-decoration: none;
  padding: 5px 12px;
  margin: 0 8px 0 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #fff;
}
.wp-pagenavi a:hover {
  background-color: #c5c5eb;
}
.wp-pagenavi span.current {
  font-size: 1.2rem;
  background-color: #2e2e84;
  border: 1px solid #2e2e84;
  color: #fff;
  display: inline-block;
  border-radius: 3px;
  text-decoration: none;
  padding: 5px 12px;
  margin: 0 8px 0 0;
}

.pagenation {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .pagenation {
    width: 1000px;
    margin: 30px auto 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .pagenation {
    margin: 20px auto 30px;
    width: 95%;
  }
}
.pagenation a {
  display: block;
  border: 1px solid #333;
  border-radius: 3px;
  text-decoration: none;
  padding: 5px 12px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 1.3rem;
  background-color: #fff;
}
.pagenation a:hover {
  background-color: #c5c5eb;
}
.pagenation a.prev-link {
  position: absolute;
  left: 0;
  top: 0;
}
.pagenation a.next-link {
  position: absolute;
  right: 0;
  top: 0;
}
.pagenation a.list_link {
  position: absolute;
  right: 50%;
  top: 0;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}

/* form */
.contact_form {
  padding: 30px 40px;
}
@media only screen and (max-width: 767px) {
  .contact_form {
    padding: 0;
  }
}
.contact_form .info-text {
  text-align: left;
  width: 100%;
}
.contact_form .controls {
  text-align: left;
  position: relative;
  padding-left: 30px;
  margin-bottom: 15px;
}
.contact_form .controls input[type=text],
.contact_form .controls input[type=email],
.contact_form .controls input[type=number],
.contact_form .controls input[type=date],
.contact_form .controls input[type=tel],
.contact_form .controls textarea,
.contact_form .controls button,
.contact_form .controls select {
  padding: 12px;
  font-size: 14px;
  border: 1px solid #c6c6c6;
  width: 100%;
  margin-bottom: 18px;
  color: #666;
  font-size: 16px;
  font-weight: 300;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .contact_form .controls input[type=text],
.contact_form .controls input[type=email],
.contact_form .controls input[type=number],
.contact_form .controls input[type=date],
.contact_form .controls input[type=tel],
.contact_form .controls textarea,
.contact_form .controls button,
.contact_form .controls select {
    font-size: 1.2rem;
  }
}
.contact_form .controls input[type=text]:focus, .contact_form .controls input[type=text]:hover,
.contact_form .controls input[type=email]:focus,
.contact_form .controls input[type=email]:hover,
.contact_form .controls input[type=number]:focus,
.contact_form .controls input[type=number]:hover,
.contact_form .controls input[type=date]:focus,
.contact_form .controls input[type=date]:hover,
.contact_form .controls input[type=tel]:focus,
.contact_form .controls input[type=tel]:hover,
.contact_form .controls textarea:focus,
.contact_form .controls textarea:hover,
.contact_form .controls button:focus,
.contact_form .controls button:hover,
.contact_form .controls select:focus,
.contact_form .controls select:hover {
  outline: none;
  border-color: #7474ba;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.contact_form .controls input[type=text]:focus + label, .contact_form .controls input[type=text]:hover + label,
.contact_form .controls input[type=email]:focus + label,
.contact_form .controls input[type=email]:hover + label,
.contact_form .controls input[type=number]:focus + label,
.contact_form .controls input[type=number]:hover + label,
.contact_form .controls input[type=date]:focus + label,
.contact_form .controls input[type=date]:hover + label,
.contact_form .controls input[type=tel]:focus + label,
.contact_form .controls input[type=tel]:hover + label,
.contact_form .controls textarea:focus + label,
.contact_form .controls textarea:hover + label,
.contact_form .controls button:focus + label,
.contact_form .controls button:hover + label,
.contact_form .controls select:focus + label,
.contact_form .controls select:hover + label {
  color: #7474ba;
  cursor: text;
}
.contact_form .controls select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  /* デフォルトのスタイルを無効 */
}
.contact_form .controls select::-ms-expand {
  display: none;
  /* デフォルトのスタイルを無効(IE用) */
}
.contact_form .controls.required::before {
  content: "※";
  color: #d00000;
  display: block;
  position: absolute;
  font-size: 1.6rem;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-84%);
          transform: translateY(-84%);
  z-index: 99;
}
.contact_form .controls .fa-sort {
  position: absolute;
  right: 10px;
  top: 17px;
  color: #999;
}
@media only screen and (max-width: 767px) {
  .contact_form .controls .fa-sort {
    top: 15px;
  }
}
.contact_form .controls select {
  cursor: pointer;
}
.contact_form .controls label {
  position: absolute;
  left: 35px;
  top: 9px;
  width: 40%;
  color: #999;
  font-size: 1.4rem;
  display: inline-block;
  padding: 4px 10px;
  font-weight: 400;
  background-color: rgba(255, 255, 255, 0);
  background-color: white;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .contact_form .controls label {
    font-size: 1.2rem;
    top: 7px;
  }
}
.contact_form .controls label.active {
  top: -18px;
  color: #555;
  background-color: #fff;
  width: auto;
}
.contact_form .controls textarea {
  resize: none;
  height: 200px;
}
.contact_form .datetime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.contact_form .datetime .controls {
  width: 50%;
}

.ui-datepicker table th,
.ui-datepicker table td {
  font-size: 0.9em !important;
}

.mw_wp_form .error {
  color: #d00000;
  position: absolute;
  right: 10px;
  top: 12px;
  font-size: 1.4rem !important;
}
@media only screen and (max-width: 767px) {
  .mw_wp_form .error {
    font-size: 1rem !important;
  }
}

.mw_wp_form_preview .contact_form p.aC {
  margin-top: 60px;
}
.mw_wp_form_preview .contact_form .controls {
  font-size: 1.6rem;
  padding: 10px 0 10px 170px;
}
@media only screen and (max-width: 767px) {
  .mw_wp_form_preview .contact_form .controls {
    padding-left: 130px;
  }
}
.mw_wp_form_preview .contact_form .controls.required::before {
  content: none;
}
.mw_wp_form_preview .contact_form .controls label {
  position: absolute;
  left: 0;
  top: 9px;
  width: 150px;
  color: #333;
  font-size: 1.4rem;
  display: inline-block;
  padding: 4px 10px;
  font-weight: 400;
  background-color: rgba(255, 255, 255, 0);
  background-color: white;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-right: 1px solid #000;
}
@media only screen and (max-width: 767px) {
  .mw_wp_form_preview .contact_form .controls label {
    font-size: 1.2rem;
    width: 120px;
  }
}
.mw_wp_form_preview .contact_form .controls svg,
.mw_wp_form_preview .contact_form .controls i {
  display: none;
}
.mw_wp_form_preview .contact_form .controls i {
  display: none;
}
@media only screen and (max-width: 767px) {
  .mw_wp_form_preview .contact_form .datetime {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .mw_wp_form_preview .contact_form .datetime .controls {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .mw_wp_form_preview .contact_form .datetime .controls:last-child {
    padding-left: 10px;
  }
  .mw_wp_form_preview .contact_form .datetime .controls:last-child label {
    display: none;
  }
}

/* mainvisual */
.hero {
  width: 100%;
  overflow: hidden;
  /**
     * bxslider
     */
}
.hero ul.bxslider li a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=0.8);
  -ms-filter: "alpha( opacity=$alpha )";
}
.hero ul.bxslider li img {
  width: 100%;
  height: auto;
}
.hero .bx-wrapper .bx-viewport {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  background-color: transparent;
  left: 0;
}
.hero .bx-wrapper .bx-pager {
  bottom: 26px;
}
@media only screen and (max-width: 767px) {
  .hero .bx-wrapper .bx-pager {
    bottom: 10px;
  }
}
.hero .bx-wrapper .bx-pager.bx-default-pager a {
  background: rgba(255, 255, 255, 0.8);
  width: 40px;
  height: 8px;
  border-radius: 0;
}
@media only screen and (max-width: 767px) {
  .hero .bx-wrapper .bx-pager.bx-default-pager a {
    width: 30px;
    height: 5px;
  }
}
.hero .bx-wrapper .bx-pager.bx-default-pager a:hover {
  background-color: #fff;
}
.hero .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #173e97 !important;
}
.hero .bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999;
}

.home .global-wrapper {
  padding-top: 0;
}
.home section.topics .container-fluid {
  margin-bottom: 60px;
}

/* about 神社要覧 */
body.about .page .page__title {
  background: url(../images/about/bg.jpg) center center no-repeat;
  background-size: 100% auto;
}
body.about .page .sub_menu {
  background-color: #2e2e84;
}
body.about .page .sub_menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
}
@media only screen and (max-width: 767px) {
  body.about .page .sub_menu ul {
    padding: 0;
  }
}
body.about .page .sub_menu ul li {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  body.about .page .sub_menu ul li {
    border-right: 1px solid #6767a9;
  }
}
@media only screen and (max-width: 767px) {
  body.about .page .sub_menu ul li {
    width: 50%;
    border-bottom: 1px solid #6767a9;
  }
  body.about .page .sub_menu ul li:nth-child(2n) {
    border-left: 1px solid #6767a9;
  }
}
@media only screen and (min-width: 768px) {
  body.about .page .sub_menu ul li:last-child {
    border-right: none;
  }
}
body.about .page .sub_menu ul li a {
  display: block;
  padding: 5px 35px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  body.about .page .sub_menu ul li a {
    padding: 10px 15px;
    text-align: center;
  }
}
body.about .page .sub_menu ul li a:hover {
  color: #a09f91;
}
body.about .page section {
  padding: 100px 0 60px;
}
@media only screen and (max-width: 767px) {
  body.about .page section {
    padding: 50px 0 30px;
  }
}
body.about .page .content__title::after {
  background-color: #6767a9;
}
body.about .page .susanowo {
  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;
}
body.about .page .susanowo .image {
  width: 294px;
}
@media only screen and (max-width: 767px) {
  body.about .page .susanowo .image {
    width: 250px;
    margin: auto;
  }
}
body.about .page .susanowo .image img {
  margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
  body.about .page .susanowo .text {
    width: 650px;
  }
}
@media only screen and (max-width: 767px) {
  body.about .page .susanowo {
    display: block;
  }
}
body.about .page .photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 60px auto 40px;
}
@media only screen and (max-width: 767px) {
  body.about .page .photo {
    display: block;
  }
}
body.about .page #goyuisyo {
  background-color: #f5f5f5;
}
body.about .page #goyuisyo .photo .box01 {
  width: 300px;
  margin-right: 60px;
}
@media only screen and (max-width: 767px) {
  body.about .page #goyuisyo .photo .box01 {
    width: 100%;
    margin: auto;
  }
}
body.about .page #goyuisyo .photo .box02 {
  width: 271px;
}
@media only screen and (max-width: 767px) {
  body.about .page #goyuisyo .photo .box02 {
    width: 100%;
    margin: auto;
  }
}
body.about .page #goyuisyo .photo img {
  width: auto;
  height: 400px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.about .page #goyuisyo .photo img {
    height: auto;
    width: 100%;
  }
}
body.about .page #shinden .photo .box:first-child {
  margin-right: 40px;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .photo .box:first-child {
    margin-right: auto;
  }
}
body.about .page #shinden .photo .box:first-child img:first-child {
  margin-right: 15px;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .photo .box:first-child img:first-child {
    margin-right: auto;
  }
}
body.about .page #shinden .photo img {
  height: 274px;
  width: auto;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .photo img {
    height: auto;
    display: block;
    margin: 0 auto 10px auto;
  }
}
body.about .page #shinden .photo.justify {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .photo.justify {
    display: block;
    width: 100%;
  }
}
body.about .page #shinden .photo.justify .box {
  width: 480px;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .photo.justify .box {
    width: 100%;
  }
}
body.about .page #shinden .photo.justify img {
  height: auto;
}
body.about .page #shinden .table-striped {
  width: 620px;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  body.about .page #shinden .table-striped {
    width: 90%;
  }
}
body.about .page #shinden .table-striped tr {
  background: #fff !important;
}
body.about .page #reitaisai {
  background-color: #f5f5f5;
}
@media only screen and (min-width: 768px) {
  body.about .page #reitaisai .content {
    width: 800px;
  }
}
body.about .page #reitaisai .box {
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  body.about .page #reitaisai .box img {
    display: block;
    margin: 0 auto 15px;
  }
}
body.about .page #reitaisai .box img:first-child {
  margin-right: 25px;
}
@media only screen and (max-width: 767px) {
  body.about .page #reitaisai .box img:first-child {
    margin-right: auto;
  }
}
body.about .page #event dl {
  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;
  margin: 60px auto;
}
@media only screen and (min-width: 768px) {
  body.about .page #event dl {
    width: 600px;
  }
}
body.about .page #event dl dt {
  text-align: right;
  width: 180px;
  padding: 0 30px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.about .page #event dl dt {
    width: 120px;
    padding: 0 20px;
  }
}
body.about .page #event dl dt::after {
  content: "";
  position: absolute;
  right: -11px;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #7474ba;
}
body.about .page #event dl dd {
  width: calc(100% - 180px);
  padding: 0 30px;
  border-left: 2px solid #ccc;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  body.about .page #event dl dd {
    width: calc(100% - 120px);
    padding: 0 20px;
  }
}
body.about .page #event dl dd .title {
  font-size: 1.8rem;
  line-height: 1;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.about .page #event dl dd .title {
    font-size: 1.6rem;
    line-height: 1.2;
  }
}
body.about .page #event dl dd:last-child .title {
  margin-bottom: 0;
}
body.about .page #event .photo {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  body.about .page #event .photo {
    width: 800px;
  }
  body.about .page #event .photo .box {
    width: 385px;
  }
}
body.about .page #event .photo .box img {
  margin-bottom: 10px;
}
body.about .page #access {
  background-color: #f5f5f5;
}
body.about .page #access .content {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  body.about .page #access .content {
    width: 800px;
    margin: auto;
  }
}
body.about .page #access .content h3 {
  margin: 60px auto 15px;
}

/* kitou 御祈祷 */
body.kitou .page .page__title {
  background: url(../images/kitou/bg.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.kitou .page .page__title {
    margin-bottom: 50px;
  }
}
body.kitou .page .content {
  padding-bottom: 100px;
}
body.kitou .page .kitou_list {
  margin-bottom: 100px;
}
@media only screen and (min-width: 768px) {
  body.kitou .page .kitou_list {
    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;
  }
}
@media only screen and (max-width: 767px) {
  body.kitou .page .kitou_list {
    margin-bottom: 80px;
  }
}
body.kitou .page .kitou_list .box {
  text-align: center;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
          box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  body.kitou .page .kitou_list .box {
    width: 32%;
    padding: 30px 25px;
  }
}
@media only screen and (max-width: 767px) {
  body.kitou .page .kitou_list .box {
    padding: 20px 20px;
    margin-bottom: 30px;
  }
}
body.kitou .page .kitou_list .box::before {
  content: "";
  display: block;
  width: 100%;
  height: 95%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
body.kitou .page .kitou_list .box::after {
  content: "";
  display: block;
  width: 95%;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-left: 2px solid #fff;
  border-right: 2px solid #fff;
}
body.kitou .page .kitou_list .box p {
  font-size: 1.2rem;
}
body.kitou .page .kitou_list .box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body.kitou .page .kitou_list .box ul li {
  list-style-type: none;
  width: calc(50% - 2em);
}
body.kitou .page .kitou_list .box ul li:nth-child(2n) {
  margin-left: 2em;
}
body.kitou .page .kitou_list .box.personal {
  background-color: #e1f2fb;
}
body.kitou .page .kitou_list .box.business {
  background-color: #f1f9f9;
}
body.kitou .page .kitou_list .box.outcall {
  background-color: #f6e6e9;
}
body.kitou .page .yoyaku_txt {
  text-align: center;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  body.kitou .page .yoyaku_txt {
    text-align: left;
    font-size: 1.4rem;
  }
}
body.kitou .page .yoyaku_txt span {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 5px 0 10px;
}

/* juyohin 氷川神社授与品 */
body.juyohin .page .page__title {
  background: url(../images/juyohin/bg.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page .page__title {
    margin-bottom: 50px;
  }
}
body.juyohin .page section.item {
  margin-bottom: 100px;
}
body.juyohin .page section.item .itemlist {
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  body.juyohin .page section.item .itemlist {
    width: 1000px;
    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;
  }
  body.juyohin .page section.item .itemlist::after {
    content: "";
    display: block;
    width: 30%;
  }
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist {
    width: 90%;
    margin-top: 50px;
  }
}
body.juyohin .page section.item .itemlist .box {
  width: 30%;
  text-align: center;
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist .box {
    width: 100%;
    margin: 0 auto 50px auto;
  }
}
body.juyohin .page section.item .itemlist img {
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist img {
    width: 80%;
    height: auto;
    display: block;
    margin: 0 auto 15px auto;
  }
}
body.juyohin .page section.item .itemlist .name {
  font-size: 1.6rem;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist .name {
    margin-bottom: 10px;
  }
}
body.juyohin .page section.item .itemlist .price {
  font-size: 1.3rem;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist .price {
    margin-bottom: 5px;
  }
}
body.juyohin .page section.item .itemlist .text {
  font-size: 1.2rem;
  width: 80%;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  body.juyohin .page section.item .itemlist .text {
    width: 100%;
  }
}

body.honjamikoshi .page .page__title {
  background: url(../images/honjamikoshi/title.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 0;
  height: 300px;
}
@media only screen and (max-width: 767px) {
  body.honjamikoshi .page .page__title {
    margin-bottom: 50px;
    height: 200px;
    background-size: cover;
  }
}
body.honjamikoshi .page .page__title::before {
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: " ";
  z-index: 1;
}
body.honjamikoshi .page .content {
  padding-bottom: 100px;
}
@media only screen and (min-width: 768px) {
  body.honjamikoshi .page .content {
    width: 1000px;
  }
}
body.honjamikoshi .page h2 {
  font-size: 3rem;
  margin-bottom: 60px;
  font-weight: 600;
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.honjamikoshi .page h2 {
    font-size: 2rem;
    margin-bottom: 30px;
    margin-top: 30px;
  }
}
body.honjamikoshi .page h3 {
  font-size: 2rem;
  margin-top: 50px;
  margin-bottom: 20px;
  font-weight: 600;
  background-image: linear-gradient(135deg, #040430 0%, #4c4ca9 40%, #7070b4 60%, #2e2e84 100%);
  padding: 0 15px;
  height: 40px;
  line-height: 40px;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  body.honjamikoshi .page h3 {
    height: auto;
    padding: 10px 15px;
    line-height: 1.6;
    margin-top: 30px;
    font-size: 1.6rem;
  }
}
body.honjamikoshi .page img {
  max-width: 100%;
  height: auto;
}
body.honjamikoshi .page p {
  padding: 0 15px;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  body.honjamikoshi .page p {
    padding: 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  body.honjamikoshi .page .gallery {
    width: 1200px;
    margin: 0 auto 60px auto;
  }
  body.honjamikoshi .page .gallery .gal_top {
    display: block;
    width: 1160px;
    height: auto;
    margin: auto;
  }
  body.honjamikoshi .page .gallery ul.row3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 0 10px;
  }
  body.honjamikoshi .page .gallery ul.row3 li {
    width: 33.33333%;
    padding: 20px 10px;
    padding-bottom: 0;
  }
  body.honjamikoshi .page .gallery ul.row2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 0 10px;
  }
  body.honjamikoshi .page .gallery ul.row2 li {
    padding: 20px 10px;
    padding-bottom: 0;
  }
  body.honjamikoshi .page .gallery ul.row2 li:first-child {
    width: 66.66666%;
  }
  body.honjamikoshi .page .gallery ul.row2 li:last-child {
    width: 33.33333%;
  }
  body.honjamikoshi .page .gallery ul.row2 li img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  body.honjamikoshi .page .gallery img {
    margin-bottom: 20px;
  }
}

body.faq .page .page__title {
  background: url(../images/faq/bg.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.faq .page .page__title {
    margin-bottom: 50px;
  }
}
body.faq .page .content {
  padding-bottom: 100px;
}
@media only screen and (min-width: 768px) {
  body.faq .page .content {
    width: 800px;
  }
}
body.faq .page .faq_box {
  margin-bottom: 20px;
}
body.faq .page .faq_box h3.q {
  padding: 20px 30px;
  background-color: #2e2e84;
  font-size: 2rem;
  margin-bottom: 0;
  border-radius: 5px;
  position: relative;
  color: #fff;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  body.faq .page .faq_box h3.q {
    font-size: 1.6rem;
    padding: 15px 20px;
  }
}
body.faq .page .faq_box h3.q::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: solid 2px #6767a9;
  border-right: solid 2px #6767a9;
  position: absolute;
  right: 30px;
  top: calc(50% - 6px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.faq .page .faq_box .a {
  display: none;
  background-color: #f6f9f9;
  padding: 30px;
  border-radius: 0 0 5px 5px;
}
@media only screen and (max-width: 767px) {
  body.faq .page .faq_box .a {
    padding: 20px;
  }
  body.faq .page .faq_box .a img {
    margin-bottom: 15px;
  }
}
body.faq .page .faq_box.active h3.q {
  border-radius: 5px 5px 0 0;
}
body.faq .page .faq_box.active h3.q::after {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

section.information {
  padding: 50px 0 60px 0;
  /*　お知らせ一覧ページ */
  /*　トピックス記事内 */
}
@media only screen and (max-width: 767px) {
  section.information {
    padding: 0 0 25px 0;
  }
}
section.information .info__inner {
  width: 720px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  section.information .info__inner {
    width: 90%;
  }
}
section.information .information__title {
  font-size: 2.4rem;
  color: #2e2e84;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  section.information .information__title {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
section.information .information__list {
  margin-bottom: 50px;
}
section.information .information__list li {
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  section.information .information__list li {
    display: block;
  }
}
section.information .information__list li time span {
  font-size: 1.4rem;
  color: #666;
  display: block;
  width: 184px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  section.information .information__list li time span {
    font-size: 1.3rem;
    padding-left: 15px;
  }
}
section.information .information__list li time span::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 6px;
  position: absolute;
  top: 50%;
  right: 32px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #2e2e84;
}
@media only screen and (max-width: 767px) {
  section.information .information__list li time span::after {
    width: 10px;
    height: 10px;
    top: 3px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    right: auto;
    left: 0;
  }
}
section.information .information__list li a {
  font-size: 1.6rem;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
}
section.information .information__list li a:hover {
  color: #ac8959;
}
section.information p.aC {
  margin-bottom: 50px;
}
@media only screen and (min-width: 768px) {
  section.information .information_archive {
    width: 800px;
  }
}
@media only screen and (max-width: 767px) {
  section.information .information_archive ul.information__list {
    padding: 0.5em 0;
  }
}
section.information .information_archive ul.information__list li .image {
  width: 70px;
  height: 70px;
  margin-left: auto;
}
section.information .information_archive ul.information__list li .image img {
  width: 100%;
  height: auto;
}
section.information article.content {
  background-color: #fff;
  padding: 30px 40px;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width: 767px) {
  section.information article.content {
    padding: 15px 20px;
  }
}
section.information article.content .topics__labels {
  margin-bottom: 20px;
}
section.information article.content .topics__labels ul {
  padding: 0;
}
section.information .topics_title--single {
  position: relative;
  padding: 1.5rem 1rem;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  section.information .topics_title--single {
    font-size: 2rem;
  }
}
section.information .topics_title--single:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: "";
  background-image: -webkit-repeating-linear-gradient(135deg, #c5c5eb, #c5c5eb 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #c5c5eb, #c5c5eb 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.single section.information {
  background-color: #e5e5f9;
}
@media only screen and (max-width: 767px) {
  .single section.information {
    padding: 25px 0 50px;
  }
}

section.topics {
  padding: 60px 0;
  background: url(../images/bg_topics.jpg) center top no-repeat;
  background-size: cover;
  background-attachment: fixed;
  /*　トピックス記事内 */
}
@media only screen and (max-width: 767px) {
  section.topics {
    padding: 40px 0;
  }
}
section.topics .topics__title {
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  section.topics .topics__title {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
section.topics .topics_title--single {
  position: relative;
  padding: 1.5rem 1rem;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  section.topics .topics_title--single {
    font-size: 2rem;
  }
}
section.topics .topics_title--single:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: "";
  background-image: -webkit-repeating-linear-gradient(135deg, #c5c5eb, #c5c5eb 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #c5c5eb, #c5c5eb 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
section.topics .topics__labels {
  margin-bottom: 40px;
  padding-top: 15px;
}
section.topics .topics__labels.--links, section.topics .topics__labels.-links {
  text-align: center;
}
section.topics .topics__labels .topics__label {
  display: inline;
}
@media only screen and (max-width: 767px) {
  section.topics .topics__labels .topics__label {
    display: inline-block;
    margin-bottom: 10px;
  }
}
section.topics .topics__labels .topics__label a {
  margin: 0 3px;
  padding: 5px 15px;
  border-radius: 5px 5px 5px 5px !important;
  -webkit-border-radius: 5px 5px 5px 5px !important;
  -moz-border-radius: 5px 5px 5px 5px !important;
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  text-decoration: none;
}
section.topics .topics__labels .topics__label a:hover {
  opacity: 0.8;
  filter: alpha(opacity=0.8);
  -ms-filter: "alpha( opacity=$alpha )";
}
section.topics .topics_list {
  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;
}
section.topics .topics__media {
  margin-bottom: 20px;
  width: 480px;
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-box-shadow: 0 0 8px gray;
          box-shadow: 0 0 8px gray;
  position: relative;
  padding: 10px 15px 30px 15px;
}
@media only screen and (max-width: 767px) {
  section.topics .topics__media {
    padding-bottom: 40px;
  }
  section.topics .topics__media:last-child {
    border-bottom: none;
    margin-bottom: 0;
  }
}
section.topics .topics__media.--pickup .inner {
  border-width: 1px;
  border-style: solid;
}
section.topics .topics__media.--pickup .inner p.pickup {
  position: absolute;
  z-index: 10;
  display: inline-block;
  color: #fff;
  font-size: 10px;
  font-size: 1rem;
  right: -30px;
  text-align: center;
  text-transform: uppercase;
  top: 10px;
  width: 100px;
  padding: 3px 10px;
}
section.topics .topics__media.--pickup .inner p.pickup span {
  font-weight: bold;
}
section.topics .topics__media .inner {
  *zoom: 1;
  margin: 5px;
  position: relative;
  display: block;
  overflow: hidden;
}
section.topics .topics__media .inner:before, section.topics .topics__media .inner:after {
  display: table;
  content: "";
  line-height: 0;
}
section.topics .topics__media .inner:after {
  clear: both;
}
section.topics .topics__media .inner .topics__labels {
  margin: 0 15px 10px 15px;
}
section.topics .topics__media .inner .texts .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3;
  margin-bottom: 5px;
}
section.topics .topics__media .inner .texts .title a {
  display: inline-block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: scale(1);
  transform: scale(1);
  text-decoration: none;
}
section.topics .topics__media .inner .texts .title a:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  text-decoration: none;
  color: #e9330b;
}
section.topics .topics__media .inner .texts .discription p {
  margin-bottom: 0;
}
section.topics .topics__media .inner .image {
  margin: 5px 0 0 0;
}
section.topics .topics__media .inner .image a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=0.8);
  -ms-filter: "alpha( opacity=$alpha )";
}
section.topics .topics__media .inner .image img {
  width: 100%;
  height: auto;
}
section.topics .topics__media .continue {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
section.topics .topics__media .continue a {
  border: 1px solid #000;
  padding: 5px 10px;
  font-size: 1.2rem;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
section.topics .topics__media .continue a:hover {
  background-color: #000;
  color: #fff;
}
section.topics .topics__media .continue .svg-inline--fa,
section.topics .topics__media .continue i {
  margin-right: 5px;
}
section.topics .cat_title {
  text-align: center;
  margin-top: 80px;
}
section.topics .cat_title h3 {
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
  font-size: 2rem;
  margin-bottom: 40px;
}
section.topics .cat_title h3:before, section.topics .cat_title h3:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: "";
  border-top: solid 2px #7474ba;
  border-bottom: solid 2px #7474ba;
}
section.topics .cat_title h3:before {
  left: 0;
}
section.topics .cat_title h3:after {
  right: 0;
}
section.topics article.content {
  background-color: #fff;
  padding: 30px 40px;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width: 767px) {
  section.topics article.content {
    padding: 15px 20px;
  }
}
section.topics article.content .topics__labels {
  margin-bottom: 20px;
}
section.topics article.content .topics__labels ul {
  padding: 0;
}

.cate_discription {
  text-align: center;
  margin-top: 20px;
}

.topics_design.content .content__title.--single {
  background-color: #f8cbad;
  font-weight: 600;
}
@media only screen and (min-width: 768px) {
  .topics_design.content .content__title.--single {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}
.topics_design.content .content__title.--single span {
  background-color: #f8cbad;
}
@media only screen and (min-width: 768px) {
  .topics_design.content .content__body .goshuin_image {
    width: 600px;
    display: block;
    margin: 30px auto;
  }
}
.topics_design.content .content__body h3 {
  background-color: #ffe699;
  display: inline-block;
  padding-left: 30px;
  padding-right: 30px;
  font-weight: 600;
}
.topics_design.content .content__body p.month {
  padding-left: 10px;
  margin-bottom: 5px;
}
.topics_design.content .content__body p.month span {
  color: #5d7941;
}
.topics_design.content .content__body span.snow {
  color: #619ada;
}
.topics_design.content .content__body ul {
  margin-bottom: 40px;
}
.topics_design.content .content__body ul li {
  list-style: none;
  position: relative;
  padding-left: 18px;
}
.topics_design.content .content__body ul li:before {
  content: "●";
  color: #c00000;
  position: absolute;
  top: 0;
  left: 0;
}
.topics_design.content .content__body .goshuin_info {
  background-color: #cfe5c1;
  padding: 15px 20px 20px 20px;
  border-radius: 10px;
}
.topics_design.content .content__body .goshuin_info span.brown {
  color: #ad6722;
}
.topics_design.content .content__body .goshuin_info a.red {
  color: #d81914;
}

body.guuji_int .page .page__title {
  background: url(../images/guuji_int/title.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 0;
  height: 300px;
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page .page__title {
    margin-bottom: 50px;
    height: 200px;
    background-size: cover;
  }
}
body.guuji_int .page .page__title::before {
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: " ";
  z-index: 1;
}
body.guuji_int .page .content {
  padding-bottom: 100px;
}
@media only screen and (min-width: 768px) {
  body.guuji_int .page .content {
    width: 800px;
  }
}
body.guuji_int .page h2 {
  font-size: 3rem;
  margin-bottom: 60px;
  font-weight: 600;
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page h2 {
    font-size: 2rem;
    margin-bottom: 30px;
    margin-top: 30px;
  }
}
body.guuji_int .page h3 {
  font-size: 2rem;
  margin-top: 50px;
  margin-bottom: 20px;
  font-weight: 600;
  background-image: linear-gradient(135deg, #040430 0%, #4c4ca9 40%, #7070b4 60%, #2e2e84 100%);
  padding: 0 15px;
  height: 40px;
  line-height: 40px;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page h3 {
    height: auto;
    padding: 10px 15px;
    line-height: 1.6;
    margin-top: 30px;
    font-size: 1.6rem;
  }
}
body.guuji_int .page img {
  max-width: 100%;
  height: auto;
}
body.guuji_int .page p {
  padding: 0 15px;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page p {
    padding: 0 10px;
  }
}
body.guuji_int .page .photo {
  margin-top: 50px;
}
@media only screen and (min-width: 768px) {
  body.guuji_int .page .photo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page .photo {
    margin-top: 30px;
  }
}
body.guuji_int .page .photo img {
  display: block;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  body.guuji_int .page .photo img {
    width: 100%;
    margin: 0 auto 20px;
  }
}

body.contactus .page .page__title {
  background: url(../images/faq/bg.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.contactus .page .page__title {
    margin-bottom: 50px;
  }
}
body.contactus .page .content {
  padding-bottom: 100px;
}
@media only screen and (min-width: 768px) {
  body.contactus .page .content {
    width: 800px;
  }
}
@media only screen and (min-width: 768px) {
  body.contactus .page .contact_list {
    width: 420px;
    margin: auto;
  }
}
@media only screen and (max-width: 767px) {
  body.contactus .page .contact_list {
    padding: 0;
  }
}
body.contactus .page .contact_list li {
  display: block;
  margin-bottom: 20px;
}
body.contactus .page .contact_list li a {
  display: block;
  text-align: center;
  position: relative;
  padding-left: 40px;
  /*
  &::before {
    font-family: "Font Awesome 5 Solid";
    content: "\f0da";
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-weight: 900;
  }
  */
}

body.inquiry .page .page__title {
  background: url(../images/faq/bg.jpg) center center no-repeat;
  background-size: 100% auto;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.inquiry .page .page__title {
    margin-bottom: 50px;
  }
}
body.inquiry .page .content {
  padding: 80px 0 100px 0;
}
@media only screen and (min-width: 768px) {
  body.inquiry .page .content {
    width: 800px;
  }
}
@media only screen and (max-width: 767px) {
  body.inquiry .page .content {
    padding: 50px 0 30px;
  }
}
@media only screen and (min-width: 768px) {
  body.inquiry .page .content .attension {
    padding-left: 70px;
  }
}

body.shop .page .content {
  padding: 80px 0 0 0;
}
body.shop .page ul {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  body.shop .page ul {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
body.shop .page ul li.cat-item {
  display: inline-block;
  margin-right: 30px;
}
body.shop .page ul li.cat-item:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  body.shop .page ul li.cat-item {
    width: 30%;
    margin: 0;
  }
}
body.shop .page ul li.cat-item a {
  display: block;
  padding: 10px 0;
  width: 150px;
  text-align: center;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.shop .page ul li.cat-item a {
    width: 100%;
  }
}
body.shop .page ul li.cat-item a:hover, body.shop .page ul li.cat-item a.active {
  background-color: #2e2e84;
  color: #fff;
}
body.shop .page ul li.cat-item a:hover::before, body.shop .page ul li.cat-item a.active::before {
  content: "";
  display: block;
  width: 98%;
  height: 96%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border: 1px solid #fff;
}
body.shop .page ul li.cat-item.current-cat a {
  background-color: #2e2e84;
  color: #fff;
}
body.shop .page ul li.cat-item.current-cat a::before {
  content: "";
  display: block;
  width: 98%;
  height: 96%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border: 1px solid #fff;
}
body.shop .page .juyohin_product {
  padding: 30px 0 100px;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_product {
    padding: 0 15px 50px;
  }
}
body.shop .page .juyohin_list {
  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;
}
@media only screen and (min-width: 768px) {
  body.shop .page .juyohin_list {
    width: 1000px;
    margin: auto;
  }
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list {
    margin: 20px 0;
  }
}
body.shop .page .juyohin_list::before {
  content: "";
  display: block;
  width: 22%;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list::before {
    content: none;
  }
}
body.shop .page .juyohin_list::after {
  content: "";
  display: block;
  width: 22%;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list::after {
    content: none;
  }
}
body.shop .page .juyohin_list .item {
  width: 22%;
  text-align: center;
  background-color: #fff;
  border-radius: 5px;
  -webkit-box-shadow: 0 2px 5px #ccc;
          box-shadow: 0 2px 5px #ccc;
  padding-bottom: 5px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list .item {
    width: 48%;
  }
}
body.shop .page .juyohin_list .item .image {
  margin-bottom: 15px;
}
body.shop .page .juyohin_list .item .image img {
  border-radius: 5px 5px 0 0;
}
body.shop .page .juyohin_list .item .title {
  font-size: 1.5rem;
  margin-bottom: 15px;
}
body.shop .page .juyohin_list .item .price {
  font-size: 1.3rem;
  margin-bottom: 10px;
}
body.shop .page .juyohin_list .item .skubutton {
  border: none;
  background-color: #000;
  color: #fff;
  border-radius: 5px;
  padding: 5px 30px;
  display: inline-block;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-bottom: 15px;
}
body.shop .page .juyohin_list .item .skubutton:hover {
  background-color: #2e2e84;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list .item .skubutton {
    padding: 5px 15px;
  }
}
body.shop .page .juyohin_list .item div.loopimg {
  display: none;
}
body.shop .page .juyohin_list .item div.loopexp {
  padding: 0 15px 15px;
}
body.shop .page .juyohin_list .item div.loopexp p {
  text-align: left;
}
body.shop .page .juyohin_list .item div.loopexp p .notice {
  font-size: 1.2rem;
}
body.shop .page .juyohin_list .item.goshuin .skubutton {
  padding: 5px 15px;
}
@media only screen and (max-width: 767px) {
  body.shop .page .juyohin_list .item.goshuin .skubutton {
    padding: 5px 12px;
    font-size: 1.2rem;
  }
}
body.shop .page .goshuin_notice {
  text-align: center;
  margin: 30px 0 50px;
}
@media only screen and (max-width: 767px) {
  body.shop .page .goshuin_notice {
    margin: 25px auto;
    text-align: left;
  }
}

.cart-totalquantity-wrap {
  position: fixed;
  right: 40px;
  bottom: 140px;
}
@media only screen and (max-width: 767px) {
  .cart-totalquantity-wrap {
    right: 20px;
    bottom: 100px;
  }
}
.cart-totalquantity-wrap a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 80px;
  height: 80px;
  background-color: #2e2e84;
  color: #fff;
  font-size: 2.8rem;
  border-radius: 40px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .cart-totalquantity-wrap a {
    width: 60px;
    height: 60px;
    font-size: 2.4rem;
  }
}
.cart-totalquantity-wrap a:hover {
  background-color: #3b3baa;
  color: #fff;
}
.cart-totalquantity-wrap a span.cart-totalquantity-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  background-color: #f00;
  top: 0;
  right: 0;
  width: 30px;
  border-radius: 50%;
  height: 30px;
  font-size: 1.6rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  .cart-totalquantity-wrap a span.cart-totalquantity-inner {
    top: -5px;
    width: 24px;
    height: 24px;
    font-size: 1.4rem;
  }
}

body.usces-cart .page .content {
  padding: 80px 0 0 0;
}
@media only screen and (min-width: 768px) {
  body.usces-cart .page .content {
    width: 800px;
    margin: 0 auto 20px auto;
  }
}
body.usces-cart .page .content__title {
  margin-bottom: 20px;
}
body.usces-cart .page #cart .upbutton {
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 0;
  margin-bottom: 20px;
  background-color: #dbf2ed;
  padding: 15px;
}
body.usces-cart .page #cart .upbutton .upButton {
  border: none;
  background-color: #000;
  color: #fff;
  padding: 5px 15px;
  font-size: 1.6rem;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.usces-cart .page #cart .upbutton .upButton:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #2e2e84;
}
body.usces-cart .page #cart .cart_table {
  /*
  @media only screen and (max-width: 767px) {
    table {
      width: 80%;
      thead {
        display: none;
      }
      tr {
        width: 100%;
      }
      td {
        display: block;
        text-align: right;
        width: 100%;
        &:first-child {
          background: #e9727e;
          color: #fff;
          font-weight: bold;
          text-align: center;
        }
        &::before {
          content: attr(data-label);
          float: left;
          font-weight: bold;
          margin-right: 10px;
        }
      }
    }
  }
  */
}
body.usces-cart .page #cart .cart_table table {
  width: 100%;
  margin-bottom: 20px !important;
  border: none;
}
body.usces-cart .page #cart .cart_table table thead th {
  background-color: #333;
  color: #fff;
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #cart .cart_table table thead th {
    font-size: 1.2rem;
  }
  body.usces-cart .page #cart .cart_table table thead th.thumbnail {
    width: 20%;
  }
  body.usces-cart .page #cart .cart_table table thead th.quantity {
    width: 10%;
  }
  body.usces-cart .page #cart .cart_table table thead th.price {
    width: 10%;
  }
  body.usces-cart .page #cart .cart_table table thead th.subtotal {
    width: 10%;
  }
  body.usces-cart .page #cart .cart_table table thead th.action {
    width: 10%;
  }
}
body.usces-cart .page #cart .cart_table table tbody th,
body.usces-cart .page #cart .cart_table table tbody td {
  border: none;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
body.usces-cart .page #cart .cart_table table tbody td {
  padding: 10px;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #cart .cart_table table tbody td {
    font-size: 1rem;
  }
}
body.usces-cart .page #cart .cart_table table tr.noborder th,
body.usces-cart .page #cart .cart_table table tr.noborder td {
  border: none;
  padding: 15px 10px;
}
body.usces-cart .page #cart .cart_table .total {
  text-align: right;
  font-size: 1.4rem;
  padding: 10px;
}
body.usces-cart .page #cart .cart_table .total span.price {
  color: #333;
  margin-right: 10px;
}
body.usces-cart .page #cart .cart_table .total_all {
  text-align: right;
  font-size: 1.5rem;
  background-color: #dbf2ed;
  padding: 10px;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #cart .cart_table .total_all {
    font-size: 1.2rem;
  }
}
body.usces-cart .page #cart .cart_table .total_all span.price {
  color: #2e2e84;
  margin-right: 10px;
}
body.usces-cart .page #inside-cart .send,
body.usces-cart .page #customer-info .send,
body.usces-cart .page #delivery-info .send,
body.usces-cart .page #info-confirm .send,
body.usces-cart .page #cart_completion .send {
  margin-top: 15px;
  padding-top: 50px;
  border-top: 1px solid #ccc;
}
body.usces-cart .page #inside-cart .send .back_cart_button,
body.usces-cart .page #customer-info .send .back_cart_button,
body.usces-cart .page #delivery-info .send .back_cart_button,
body.usces-cart .page #info-confirm .send .back_cart_button,
body.usces-cart .page #cart_completion .send .back_cart_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
body.usces-cart .page #inside-cart .send .back_cart_button:hover,
body.usces-cart .page #customer-info .send .back_cart_button:hover,
body.usces-cart .page #delivery-info .send .back_cart_button:hover,
body.usces-cart .page #info-confirm .send .back_cart_button:hover,
body.usces-cart .page #cart_completion .send .back_cart_button:hover {
  background-color: #ccc;
}
body.usces-cart .page #inside-cart .send .continue_shopping_button,
body.usces-cart .page #customer-info .send .continue_shopping_button,
body.usces-cart .page #delivery-info .send .continue_shopping_button,
body.usces-cart .page #info-confirm .send .continue_shopping_button,
body.usces-cart .page #cart_completion .send .continue_shopping_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
body.usces-cart .page #inside-cart .send .continue_shopping_button:hover,
body.usces-cart .page #customer-info .send .continue_shopping_button:hover,
body.usces-cart .page #delivery-info .send .continue_shopping_button:hover,
body.usces-cart .page #info-confirm .send .continue_shopping_button:hover,
body.usces-cart .page #cart_completion .send .continue_shopping_button:hover {
  background-color: #ccc;
}
body.usces-cart .page #inside-cart .send .to_customerinfo_button,
body.usces-cart .page #customer-info .send .to_customerinfo_button,
body.usces-cart .page #delivery-info .send .to_customerinfo_button,
body.usces-cart .page #info-confirm .send .to_customerinfo_button,
body.usces-cart .page #cart_completion .send .to_customerinfo_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: none;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  color: #fff;
  background-color: #000;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.usces-cart .page #inside-cart .send .to_customerinfo_button:hover,
body.usces-cart .page #customer-info .send .to_customerinfo_button:hover,
body.usces-cart .page #delivery-info .send .to_customerinfo_button:hover,
body.usces-cart .page #info-confirm .send .to_customerinfo_button:hover,
body.usces-cart .page #cart_completion .send .to_customerinfo_button:hover {
  background-color: #2e2e84;
}
body.usces-cart .page #inside-cart .send .to_customerinfo_button svg,
body.usces-cart .page #customer-info .send .to_customerinfo_button svg,
body.usces-cart .page #delivery-info .send .to_customerinfo_button svg,
body.usces-cart .page #info-confirm .send .to_customerinfo_button svg,
body.usces-cart .page #cart_completion .send .to_customerinfo_button svg {
  margin-right: 10px;
}
body.usces-cart .page #inside-cart .send .to_deliveryinfo_button,
body.usces-cart .page #customer-info .send .to_deliveryinfo_button,
body.usces-cart .page #delivery-info .send .to_deliveryinfo_button,
body.usces-cart .page #info-confirm .send .to_deliveryinfo_button,
body.usces-cart .page #cart_completion .send .to_deliveryinfo_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: none;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  color: #fff;
  background-color: #000;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.usces-cart .page #inside-cart .send .to_deliveryinfo_button:hover,
body.usces-cart .page #customer-info .send .to_deliveryinfo_button:hover,
body.usces-cart .page #delivery-info .send .to_deliveryinfo_button:hover,
body.usces-cart .page #info-confirm .send .to_deliveryinfo_button:hover,
body.usces-cart .page #cart_completion .send .to_deliveryinfo_button:hover {
  background-color: #2e2e84;
}
body.usces-cart .page #inside-cart .send .to_deliveryinfo_button svg,
body.usces-cart .page #customer-info .send .to_deliveryinfo_button svg,
body.usces-cart .page #delivery-info .send .to_deliveryinfo_button svg,
body.usces-cart .page #info-confirm .send .to_deliveryinfo_button svg,
body.usces-cart .page #cart_completion .send .to_deliveryinfo_button svg {
  margin-right: 10px;
}
body.usces-cart .page #inside-cart .send .to_confirm_button,
body.usces-cart .page #customer-info .send .to_confirm_button,
body.usces-cart .page #delivery-info .send .to_confirm_button,
body.usces-cart .page #info-confirm .send .to_confirm_button,
body.usces-cart .page #cart_completion .send .to_confirm_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: none;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  color: #fff;
  background-color: #000;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.usces-cart .page #inside-cart .send .to_confirm_button:hover,
body.usces-cart .page #customer-info .send .to_confirm_button:hover,
body.usces-cart .page #delivery-info .send .to_confirm_button:hover,
body.usces-cart .page #info-confirm .send .to_confirm_button:hover,
body.usces-cart .page #cart_completion .send .to_confirm_button:hover {
  background-color: #2e2e84;
}
body.usces-cart .page #inside-cart .send .to_confirm_button svg,
body.usces-cart .page #customer-info .send .to_confirm_button svg,
body.usces-cart .page #delivery-info .send .to_confirm_button svg,
body.usces-cart .page #info-confirm .send .to_confirm_button svg,
body.usces-cart .page #cart_completion .send .to_confirm_button svg {
  margin-right: 10px;
}
body.usces-cart .page #inside-cart .send .back_to_customer_button,
body.usces-cart .page #customer-info .send .back_to_customer_button,
body.usces-cart .page #delivery-info .send .back_to_customer_button,
body.usces-cart .page #info-confirm .send .back_to_customer_button,
body.usces-cart .page #cart_completion .send .back_to_customer_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
body.usces-cart .page #inside-cart .send .back_to_customer_button:hover,
body.usces-cart .page #customer-info .send .back_to_customer_button:hover,
body.usces-cart .page #delivery-info .send .back_to_customer_button:hover,
body.usces-cart .page #info-confirm .send .back_to_customer_button:hover,
body.usces-cart .page #cart_completion .send .back_to_customer_button:hover {
  background-color: #ccc;
}
body.usces-cart .page #inside-cart .send .back_to_delivery_button,
body.usces-cart .page #customer-info .send .back_to_delivery_button,
body.usces-cart .page #delivery-info .send .back_to_delivery_button,
body.usces-cart .page #info-confirm .send .back_to_delivery_button,
body.usces-cart .page #cart_completion .send .back_to_delivery_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
body.usces-cart .page #inside-cart .send .back_to_delivery_button:hover,
body.usces-cart .page #customer-info .send .back_to_delivery_button:hover,
body.usces-cart .page #delivery-info .send .back_to_delivery_button:hover,
body.usces-cart .page #info-confirm .send .back_to_delivery_button:hover,
body.usces-cart .page #cart_completion .send .back_to_delivery_button:hover {
  background-color: #ccc;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #inside-cart .send .back_to_delivery_button,
body.usces-cart .page #customer-info .send .back_to_delivery_button,
body.usces-cart .page #delivery-info .send .back_to_delivery_button,
body.usces-cart .page #info-confirm .send .back_to_delivery_button,
body.usces-cart .page #cart_completion .send .back_to_delivery_button {
    margin-bottom: 20px;
  }
}
body.usces-cart .page #inside-cart .send .checkout_button,
body.usces-cart .page #customer-info .send .checkout_button,
body.usces-cart .page #delivery-info .send .checkout_button,
body.usces-cart .page #info-confirm .send .checkout_button,
body.usces-cart .page #cart_completion .send .checkout_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: none;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  color: #fff;
  background-color: #000;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.usces-cart .page #inside-cart .send .checkout_button:hover,
body.usces-cart .page #customer-info .send .checkout_button:hover,
body.usces-cart .page #delivery-info .send .checkout_button:hover,
body.usces-cart .page #info-confirm .send .checkout_button:hover,
body.usces-cart .page #cart_completion .send .checkout_button:hover {
  background-color: #2e2e84;
}
body.usces-cart .page #inside-cart .send .checkout_button svg,
body.usces-cart .page #customer-info .send .checkout_button svg,
body.usces-cart .page #delivery-info .send .checkout_button svg,
body.usces-cart .page #info-confirm .send .checkout_button svg,
body.usces-cart .page #cart_completion .send .checkout_button svg {
  margin-right: 10px;
}
body.usces-cart .page #inside-cart .send .back_to_top_button,
body.usces-cart .page #customer-info .send .back_to_top_button,
body.usces-cart .page #delivery-info .send .back_to_top_button,
body.usces-cart .page #info-confirm .send .back_to_top_button,
body.usces-cart .page #cart_completion .send .back_to_top_button {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  border: 1px solid #333;
  display: inline-block;
  text-decoration: none;
  font-weight: 400;
  padding: 10px 20px;
  background-color: #f2f2f2;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-right: 15px;
}
body.usces-cart .page #inside-cart .send .back_to_top_button:hover,
body.usces-cart .page #customer-info .send .back_to_top_button:hover,
body.usces-cart .page #delivery-info .send .back_to_top_button:hover,
body.usces-cart .page #info-confirm .send .back_to_top_button:hover,
body.usces-cart .page #cart_completion .send .back_to_top_button:hover {
  background-color: #ccc;
}
body.usces-cart .page #inside-cart .no_cart,
body.usces-cart .page #customer-info .no_cart,
body.usces-cart .page #delivery-info .no_cart,
body.usces-cart .page #info-confirm .no_cart,
body.usces-cart .page #cart_completion .no_cart {
  color: #2e2e84;
}
body.usces-cart .page #customer-info .send,
body.usces-cart .page #delivery-info .send,
body.usces-cart .page #info-confirm .send {
  border-top: none;
}
body.usces-cart .page #customer-info table.customer_form,
body.usces-cart .page #delivery-info table.customer_form,
body.usces-cart .page #info-confirm table.customer_form {
  width: 100%;
}
body.usces-cart .page #customer-info table.customer_form th,
body.usces-cart .page #customer-info table.customer_form td,
body.usces-cart .page #delivery-info table.customer_form th,
body.usces-cart .page #delivery-info table.customer_form td,
body.usces-cart .page #info-confirm table.customer_form th,
body.usces-cart .page #info-confirm table.customer_form td {
  border: none;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #customer-info table.customer_form th,
body.usces-cart .page #customer-info table.customer_form td,
body.usces-cart .page #delivery-info table.customer_form th,
body.usces-cart .page #delivery-info table.customer_form td,
body.usces-cart .page #info-confirm table.customer_form th,
body.usces-cart .page #info-confirm table.customer_form td {
    display: block;
    border: none;
  }
}
body.usces-cart .page #customer-info table.customer_form th,
body.usces-cart .page #delivery-info table.customer_form th,
body.usces-cart .page #info-confirm table.customer_form th {
  background-color: #fff;
  width: 30%;
  position: relative;
  padding: 15px 0 15px 30px;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #customer-info table.customer_form th,
body.usces-cart .page #delivery-info table.customer_form th,
body.usces-cart .page #info-confirm table.customer_form th {
    width: 100%;
    padding-bottom: 0;
    text-align: left;
  }
}
body.usces-cart .page #customer-info table.customer_form th.required::before,
body.usces-cart .page #delivery-info table.customer_form th.required::before,
body.usces-cart .page #info-confirm table.customer_form th.required::before {
  content: "※";
  color: #d00000;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #customer-info table.customer_form th.required::before,
body.usces-cart .page #delivery-info table.customer_form th.required::before,
body.usces-cart .page #info-confirm table.customer_form th.required::before {
    top: auto;
    bottom: 0px;
    -webkit-transform: none;
            transform: none;
  }
}
body.usces-cart .page #customer-info table.customer_form td,
body.usces-cart .page #delivery-info table.customer_form td,
body.usces-cart .page #info-confirm table.customer_form td {
  padding: 10px 0;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text],
body.usces-cart .page #customer-info table.customer_form td textarea,
body.usces-cart .page #customer-info table.customer_form td select,
body.usces-cart .page #delivery-info table.customer_form td input[type=text],
body.usces-cart .page #delivery-info table.customer_form td textarea,
body.usces-cart .page #delivery-info table.customer_form td select,
body.usces-cart .page #info-confirm table.customer_form td input[type=text],
body.usces-cart .page #info-confirm table.customer_form td textarea,
body.usces-cart .page #info-confirm table.customer_form td select {
  padding: 10px;
  font-size: 14px;
  border: 1px solid #ccc;
  width: 100% !important;
  color: #666;
  font-size: 16px;
  font-weight: 300;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: block;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #customer-info table.customer_form td input[type=text],
body.usces-cart .page #customer-info table.customer_form td textarea,
body.usces-cart .page #customer-info table.customer_form td select,
body.usces-cart .page #delivery-info table.customer_form td input[type=text],
body.usces-cart .page #delivery-info table.customer_form td textarea,
body.usces-cart .page #delivery-info table.customer_form td select,
body.usces-cart .page #info-confirm table.customer_form td input[type=text],
body.usces-cart .page #info-confirm table.customer_form td textarea,
body.usces-cart .page #info-confirm table.customer_form td select {
    font-size: 1.2rem;
  }
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]:focus, body.usces-cart .page #customer-info table.customer_form td input[type=text]:hover,
body.usces-cart .page #customer-info table.customer_form td textarea:focus,
body.usces-cart .page #customer-info table.customer_form td textarea:hover,
body.usces-cart .page #customer-info table.customer_form td select:focus,
body.usces-cart .page #customer-info table.customer_form td select:hover,
body.usces-cart .page #delivery-info table.customer_form td input[type=text]:focus,
body.usces-cart .page #delivery-info table.customer_form td input[type=text]:hover,
body.usces-cart .page #delivery-info table.customer_form td textarea:focus,
body.usces-cart .page #delivery-info table.customer_form td textarea:hover,
body.usces-cart .page #delivery-info table.customer_form td select:focus,
body.usces-cart .page #delivery-info table.customer_form td select:hover,
body.usces-cart .page #info-confirm table.customer_form td input[type=text]:focus,
body.usces-cart .page #info-confirm table.customer_form td input[type=text]:hover,
body.usces-cart .page #info-confirm table.customer_form td textarea:focus,
body.usces-cart .page #info-confirm table.customer_form td textarea:hover,
body.usces-cart .page #info-confirm table.customer_form td select:focus,
body.usces-cart .page #info-confirm table.customer_form td select:hover {
  outline: none;
  border-color: #7474ba;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]::-webkit-input-placeholder, body.usces-cart .page #customer-info table.customer_form td textarea::-webkit-input-placeholder, body.usces-cart .page #customer-info table.customer_form td select::-webkit-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td input[type=text]::-webkit-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td textarea::-webkit-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td select::-webkit-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td input[type=text]::-webkit-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td textarea::-webkit-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td select::-webkit-input-placeholder {
  color: #aeaeae;
  font-size: 1.3rem;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]::-moz-placeholder, body.usces-cart .page #customer-info table.customer_form td textarea::-moz-placeholder, body.usces-cart .page #customer-info table.customer_form td select::-moz-placeholder, body.usces-cart .page #delivery-info table.customer_form td input[type=text]::-moz-placeholder, body.usces-cart .page #delivery-info table.customer_form td textarea::-moz-placeholder, body.usces-cart .page #delivery-info table.customer_form td select::-moz-placeholder, body.usces-cart .page #info-confirm table.customer_form td input[type=text]::-moz-placeholder, body.usces-cart .page #info-confirm table.customer_form td textarea::-moz-placeholder, body.usces-cart .page #info-confirm table.customer_form td select::-moz-placeholder {
  color: #aeaeae;
  font-size: 1.3rem;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]:-ms-input-placeholder, body.usces-cart .page #customer-info table.customer_form td textarea:-ms-input-placeholder, body.usces-cart .page #customer-info table.customer_form td select:-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td input[type=text]:-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td textarea:-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td select:-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td input[type=text]:-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td textarea:-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td select:-ms-input-placeholder {
  color: #aeaeae;
  font-size: 1.3rem;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]::-ms-input-placeholder, body.usces-cart .page #customer-info table.customer_form td textarea::-ms-input-placeholder, body.usces-cart .page #customer-info table.customer_form td select::-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td input[type=text]::-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td textarea::-ms-input-placeholder, body.usces-cart .page #delivery-info table.customer_form td select::-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td input[type=text]::-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td textarea::-ms-input-placeholder, body.usces-cart .page #info-confirm table.customer_form td select::-ms-input-placeholder {
  color: #aeaeae;
  font-size: 1.3rem;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text]::placeholder,
body.usces-cart .page #customer-info table.customer_form td textarea::placeholder,
body.usces-cart .page #customer-info table.customer_form td select::placeholder,
body.usces-cart .page #delivery-info table.customer_form td input[type=text]::placeholder,
body.usces-cart .page #delivery-info table.customer_form td textarea::placeholder,
body.usces-cart .page #delivery-info table.customer_form td select::placeholder,
body.usces-cart .page #info-confirm table.customer_form td input[type=text]::placeholder,
body.usces-cart .page #info-confirm table.customer_form td textarea::placeholder,
body.usces-cart .page #info-confirm table.customer_form td select::placeholder {
  color: #aeaeae;
  font-size: 1.3rem;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text].form_2col,
body.usces-cart .page #customer-info table.customer_form td textarea.form_2col,
body.usces-cart .page #customer-info table.customer_form td select.form_2col,
body.usces-cart .page #delivery-info table.customer_form td input[type=text].form_2col,
body.usces-cart .page #delivery-info table.customer_form td textarea.form_2col,
body.usces-cart .page #delivery-info table.customer_form td select.form_2col,
body.usces-cart .page #info-confirm table.customer_form td input[type=text].form_2col,
body.usces-cart .page #info-confirm table.customer_form td textarea.form_2col,
body.usces-cart .page #info-confirm table.customer_form td select.form_2col {
  width: 48% !important;
}
body.usces-cart .page #customer-info table.customer_form td input[type=text].form_ib,
body.usces-cart .page #customer-info table.customer_form td textarea.form_ib,
body.usces-cart .page #customer-info table.customer_form td select.form_ib,
body.usces-cart .page #delivery-info table.customer_form td input[type=text].form_ib,
body.usces-cart .page #delivery-info table.customer_form td textarea.form_ib,
body.usces-cart .page #delivery-info table.customer_form td select.form_ib,
body.usces-cart .page #info-confirm table.customer_form td input[type=text].form_ib,
body.usces-cart .page #info-confirm table.customer_form td textarea.form_ib,
body.usces-cart .page #info-confirm table.customer_form td select.form_ib {
  display: inline-block;
  width: 150px !important;
}
body.usces-cart .page #customer-info table.customer_form td select,
body.usces-cart .page #delivery-info table.customer_form td select,
body.usces-cart .page #info-confirm table.customer_form td select {
  cursor: pointer;
  width: 40% !important;
}
body.usces-cart .page #customer-info table.customer_form td .flex,
body.usces-cart .page #delivery-info table.customer_form td .flex,
body.usces-cart .page #info-confirm table.customer_form td .flex {
  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;
}
body.usces-cart .page #customer-info table.customer_form td .search-zipcode.button,
body.usces-cart .page #delivery-info table.customer_form td .search-zipcode.button,
body.usces-cart .page #info-confirm table.customer_form td .search-zipcode.button {
  border-radius: 3px;
  margin-left: 10px;
}
body.usces-cart .page #customer-info table.customer_form tr.ttl h3,
body.usces-cart .page #delivery-info table.customer_form tr.ttl h3,
body.usces-cart .page #info-confirm table.customer_form tr.ttl h3 {
  margin-top: 40px;
}
body.usces-cart .page #delivery-info table.customer_form {
  margin: 30px auto;
}
body.usces-cart .page #info-confirm .send {
  padding-top: 0;
}
@media only screen and (max-width: 767px) {
  body.usces-cart .page #info-confirm table.customer_form th {
    padding-left: 0px;
    font-weight: bold !important;
  }
}
body.usces-cart .page #cart_completion .send {
  padding-bottom: 40px;
}

.catbox .post .entry {
  border-bottom: none !important;
}

/* about 神社要覧 */
body.english .page .page__title {
  background: url(../images/about/bg.jpg) center center no-repeat;
  background-size: 100% auto;
}
body.english .page .sub_menu {
  background-color: #2e2e84;
}
body.english .page .sub_menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
}
@media only screen and (max-width: 767px) {
  body.english .page .sub_menu ul {
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  body.english .page .sub_menu ul li {
    border-right: 1px solid #6767a9;
  }
}
@media only screen and (max-width: 767px) {
  body.english .page .sub_menu ul li {
    width: 50%;
    border-bottom: 1px solid #6767a9;
  }
  body.english .page .sub_menu ul li:nth-child(2n) {
    border-left: 1px solid #6767a9;
  }
  body.english .page .sub_menu ul li:last-child {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  body.english .page .sub_menu ul li:last-child {
    border-right: none;
  }
}
body.english .page .sub_menu ul li a {
  display: block;
  padding: 5px 35px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  body.english .page .sub_menu ul li a {
    padding: 10px 15px;
    text-align: center;
  }
}
body.english .page .sub_menu ul li a:hover {
  color: #a09f91;
}
body.english .page section {
  padding: 100px 0 60px;
}
@media only screen and (max-width: 767px) {
  body.english .page section {
    padding: 50px 0 30px;
  }
}
body.english .page .content__title::after {
  background-color: #6767a9;
}
body.english .page #festival {
  background-color: #f5f5f5;
}
body.english .page #etiquette {
  background-color: #f5f5f5;
}
@media only screen and (min-width: 768px) {
  body.english .page #etiquette .content {
    width: 800px;
  }
}
body.english .page #event dl {
  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;
  margin: 60px auto;
}
@media only screen and (min-width: 768px) {
  body.english .page #event dl {
    width: 600px;
  }
}
body.english .page #event dl dt {
  text-align: right;
  width: 180px;
  padding: 0 30px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.english .page #event dl dt {
    width: 120px;
    padding: 0 20px;
  }
}
body.english .page #event dl dt::after {
  content: "";
  position: absolute;
  right: -11px;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #7474ba;
}
body.english .page #event dl dd {
  width: calc(100% - 180px);
  padding: 0 30px;
  border-left: 2px solid #ccc;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  body.english .page #event dl dd {
    width: calc(100% - 120px);
    padding: 0 20px;
  }
}
body.english .page #event dl dd .title {
  font-size: 1.8rem;
  line-height: 1;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.english .page #event dl dd .title {
    font-size: 1.6rem;
    line-height: 1.2;
  }
}
body.english .page #event dl dd:last-child .title {
  margin-bottom: 0;
}
body.english .page #event .photo {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  body.english .page #event .photo {
    width: 800px;
  }
  body.english .page #event .photo .box {
    width: 385px;
  }
}
body.english .page #event .photo .box img {
  margin-bottom: 10px;
}
body.english .page #access .content {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  body.english .page #access .content {
    width: 800px;
    margin: auto;
  }
}
body.english .page #access .content h3 {
  margin: 60px auto 15px;
}
body.english .page #contact {
  background-color: #f5f5f5;
}

@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/noto_serief_r.otf") format("opentype");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/noto_serief_b.otf") format("opentype");
}
.clearfix {
  *zoom: 1;
}
.clearfix:before, .clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}
.clearfix:after {
  clear: both;
}

.container-full {
  margin-right: auto;
  margin-left: auto;
  max-width: 1020px;
  *zoom: 1;
}
.container-full:before, .container-full:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-full:after {
  clear: both;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
  *zoom: 1;
  width: 100%;
}
.container-fluid:before, .container-fluid:after {
  display: table;
  content: "";
  line-height: 0;
}
.container-fluid:after {
  clear: both;
}
@media only screen and (min-width: 768px) {
  .container-fluid {
    width: 1020px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1019px) {
  .container-fluid {
    width: auto !important;
  }
}
@media only screen and (max-width: 767px) {
  .container-fluid {
    width: auto;
  }
}

.row-margin-top {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .row-margin-top {
    margin-top: 25px;
  }
}

.row-padding {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .row-padding {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

a:hover img.hover,
span:hover img.hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}

img.b,
.b {
  display: block;
}

img.auto {
  margin: 0 auto;
  display: block;
}

img.full {
  width: 100%;
  height: auto;
}

img.max {
  max-width: 100%;
  height: auto;
}

.fR {
  float: right;
  _display: inline;
}

.fL {
  float: left;
  _display: inline;
}

.iL {
  float: left;
  display: inline;
  margin: 0 10px 5px 0;
}

.iR {
  float: right;
  display: inline;
  margin: 0 0 5px 10px;
}

.clear {
  clear: both;
  font: 1px/1px monospace;
}

.aR {
  text-align: right !important;
}

.aC {
  text-align: center !important;
}

.aL {
  text-align: left !important;
}

.vT {
  vertical-align: top !important;
}

.vM {
  vertical-align: middle !important;
}

.vB {
  vertical-align: bottom !important;
}

.hidden {
  display: none;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.mgl0 {
  margin-left: 0px !important;
}

.mgl5 {
  margin-left: 5px !important;
}

.mgl10 {
  margin-left: 10px !important;
}

.mgl15 {
  margin-left: 15px !important;
}

.mgl20 {
  margin-left: 20px !important;
}

.mgl25 {
  margin-left: 25px !important;
}

.mgl30 {
  margin-left: 30px !important;
}

.mgl35 {
  margin-left: 35px !important;
}

.mgl40 {
  margin-left: 40px !important;
}

.mgl45 {
  margin-left: 45px !important;
}

.mgl50 {
  margin-left: 50px !important;
}

.mgl75 {
  margin-left: 75px !important;
}

.mgl100 {
  margin-left: 100px !important;
}

.mgr0 {
  margin-right: 0px !important;
}

.mgr5 {
  margin-right: 5px !important;
}

.mgr10 {
  margin-right: 10px !important;
}

.mgr15 {
  margin-right: 15px !important;
}

.mgr20 {
  margin-right: 20px !important;
}

.mgr25 {
  margin-right: 25px !important;
}

.mgr30 {
  margin-right: 30px !important;
}

.mgr35 {
  margin-right: 35px !important;
}

.mgr40 {
  margin-right: 40px !important;
}

.mgr45 {
  margin-right: 45px !important;
}

.mgr50 {
  margin-right: 50px !important;
}

.mgr75 {
  margin-right: 75px !important;
}

.mgr100 {
  margin-right: 100px !important;
}

.mgt0 {
  margin-top: 0px !important;
}

.mgt5 {
  margin-top: 5px !important;
}

.mgt10 {
  margin-top: 10px !important;
}

.mgt15 {
  margin-top: 15px !important;
}

.mgt20 {
  margin-top: 20px !important;
}

.mgt25 {
  margin-top: 25px !important;
}

.mgt30 {
  margin-top: 30px !important;
}

.mgt35 {
  margin-top: 35px !important;
}

.mgt40 {
  margin-top: 40px !important;
}

.mgt45 {
  margin-top: 45px !important;
}

.mgt50 {
  margin-top: 50px !important;
}

.mgt75 {
  margin-top: 75px !important;
}

.mgt100 {
  margin-top: 100px !important;
}

.mgb0 {
  margin-bottom: 0px !important;
}

.mgb5 {
  margin-bottom: 5px !important;
}

.mgb10 {
  margin-bottom: 10px !important;
}

.mgb15 {
  margin-bottom: 15px !important;
}

.mgb20 {
  margin-bottom: 20px !important;
}

.mgb25 {
  margin-bottom: 25px !important;
}

.mgb30 {
  margin-bottom: 30px !important;
}

.mgb35 {
  margin-bottom: 35px !important;
}

.mgb40 {
  margin-bottom: 40px !important;
}

.mgb45 {
  margin-bottom: 45px !important;
}

.mgb50 {
  margin-bottom: 50px !important;
}

.mgb75 {
  margin-bottom: 75px !important;
}

.mgb100 {
  margin-bottom: 100px !important;
}

.pd0 {
  padding: 0 !important;
}

.pdlr0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.fs10 {
  font-size: 10px;
  font-size: 1rem;
}

.fs12, .supp {
  font-size: 12px;
  font-size: 1.2rem;
}

.fs14, select,
input,
button,
textarea, pre,
code,
kbd,
samp,
tt, blockquote,
dl,
ol,
ul,
th,
td, p, blockquote p,
pre p,
dl p,
ol p,
ul p,
th p,
td p,
dd p,
dt p {
  font-size: 14px;
  font-size: 1.4rem;
}

.fs16 {
  font-size: 16px;
  font-size: 1.6rem;
}

.fs18 {
  font-size: 18px;
  font-size: 1.8rem;
}

.fs24 {
  font-size: 24px;
  font-size: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .fs24 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.fs26 {
  font-size: 26px;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .fs26 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs28 {
  font-size: 28px;
  font-size: 2.8rem;
}
@media only screen and (max-width: 767px) {
  .fs28 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs30 {
  font-size: 30px;
  font-size: 3rem;
}
@media only screen and (max-width: 767px) {
  .fs30 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs34 {
  font-size: 34px;
  font-size: 3.4rem;
}
@media only screen and (max-width: 767px) {
  .fs34 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs38 {
  font-size: 38px;
  font-size: 3.8rem;
}
@media only screen and (max-width: 767px) {
  .fs38 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs40 {
  font-size: 40px;
  font-size: 4rem;
}
@media only screen and (max-width: 767px) {
  .fs40 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.fs42 {
  font-size: 42px;
  font-size: 4.2rem;
}
@media only screen and (max-width: 767px) {
  .fs42 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

body {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Noto Serif Japanese", "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}

select,
input,
button,
textarea {
  font-family: arial, helvetica, clean, sans-serif;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
  line-height: 100%;
}

blockquote,
pre,
dl,
ol,
ul,
th,
td {
  line-height: 1.5;
}

p {
  line-height: 1.7;
}

ul,
ol,
dl {
  list-style-position: outside;
}

.lh1 {
  line-height: 1;
}

.bold {
  font-weight: bold;
}

em {
  font-weight: bold;
}

.notes {
  text-indent: -1em;
  margin-left: 1em;
}

.creep {
  color: #999;
}

a {
  color: #000;
  text-decoration: underline;
  -webkit-tap-highlight-color: #000;
}
a:hover {
  color: #000;
  text-decoration: none;
}
a:active, a:focus {
  outline: none;
}
a.uNone {
  text-decoration: none !important;
}
a.uLine {
  text-decoration: underline !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 900;
  margin: 0;
  padding: 0;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: bold;
}
h1.skin-B,
h2.skin-B,
h3.skin-B,
h4.skin-B,
h5.skin-B,
h6.skin-B {
  color: #000;
  font-size: 18px;
  font-size: 1.8rem;
}

ul.notes li {
  text-indent: -1em;
  margin-left: 1em;
}

ul.disc,
ol.disc {
  padding-left: 35px;
}
ul.disc li,
ol.disc li {
  list-style-type: disc;
}

ul.circle,
ol.circle {
  padding-left: 35px;
}
ul.circle li,
ol.circle li {
  list-style-type: circle;
}

ul.decimal,
ol.decimal {
  padding-left: 35px;
}
ul.decimal li,
ol.decimal li {
  list-style-type: decimal;
}

.editor-area h1 {
  color: #000;
  position: relative;
  text-align: center;
}
.editor-area h1 span {
  background-color: #fff;
  z-index: 10;
  position: relative;
  padding: 0 15px;
  font-weight: bold;
}
.editor-area h1:before {
  z-index: 1;
  content: "";
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  border-top: 1px dotted #000;
}
.editor-area h1:after {
  z-index: 1;
  content: "";
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  border-top: 1px dotted #000;
}
@media only screen and (max-width: 767px) {
  .editor-area h1:before, .editor-area h1:after {
    border: none;
  }
}
.editor-area h2 {
  margin-bottom: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  font-size: 18px;
  font-size: 1.8rem;
}
.editor-area h3 {
  margin-bottom: 10px;
  padding: 5px 15px;
  background-color: #f5f5f5;
  border-radius: 5px 5px 5px 5px !important;
  -webkit-border-radius: 5px 5px 5px 5px !important;
  -moz-border-radius: 5px 5px 5px 5px !important;
  font-size: 14px;
  font-size: 1.4rem;
}
.editor-area h4 {
  margin-bottom: 10px;
  padding: 5px 15px;
  color: #fff;
  background-color: #000;
  font-size: 14px;
  font-size: 1.4rem;
}
.editor-area h5 {
  margin-bottom: 10px;
  padding: 5px 0 5px 10px;
  border-bottom: solid 1px #000;
  border-left: solid 5px #000;
  font-size: 14px;
  font-size: 1.4rem;
}
.editor-area h6 {
  margin-bottom: 5px;
  color: #666;
  font-size: 14px;
  font-size: 1.4rem;
}
.editor-area p {
  font-size: 14px;
  font-size: 1.4rem;
}
.editor-area ul {
  padding: 0.5em 2em;
  list-style: disc;
}
.editor-area ul li:last-child {
  margin-bottom: 0;
}
.editor-area ol {
  padding: 0.5em 2em;
  list-style: decimal;
}
.editor-area ol li:last-child {
  margin-bottom: 0;
}