@charset "UTF-8";

.container {
  position: relative;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box; }
.column,
.columns {
  width: 100%;
  float: left;
  box-sizing: border-box; }

@media (min-width: 400px) {
  .container {
    width: 85%;
    padding: 0; }
}

@media (min-width: 550px) {
  .container {
    width: 80%; }
  .column,
  .columns {
    margin-left: 4%; }
  .column:first-child,
  .columns:first-child {
    margin-left: 0; }

  .one.column,
  .one.columns                    { width: 4.66666666667%; }
  .two.columns                    { width: 13.3333333333%; }
  .three.columns                  { width: 22%;            }
  .four.columns                   { width: 30.6666666667%; }
  .five.columns                   { width: 39.3333333333%; }
  .six.columns                    { width: 48%;            }
  .seven.columns                  { width: 56.6666666667%; }
  .eight.columns                  { width: 65.3333333333%; }
  .nine.columns                   { width: 74.0%;          }
  .ten.columns                    { width: 82.6666666667%; }
  .eleven.columns                 { width: 91.3333333333%; }
  .twelve.columns                 { width: 100%; margin-left: 0; }

  .one-third.column               { width: 30.6666666667%; }
  .two-thirds.column              { width: 65.3333333333%; }

  .one-half.column                { width: 48%; }

  /* Offsets */
  .offset-by-one.column,
  .offset-by-one.columns          { margin-left: 8.66666666667%; }
  .offset-by-two.column,
  .offset-by-two.columns          { margin-left: 17.3333333333%; }
  .offset-by-three.column,
  .offset-by-three.columns        { margin-left: 26%;            }
  .offset-by-four.column,
  .offset-by-four.columns         { margin-left: 34.6666666667%; }
  .offset-by-five.column,
  .offset-by-five.columns         { margin-left: 43.3333333333%; }
  .offset-by-six.column,
  .offset-by-six.columns          { margin-left: 52%;            }
  .offset-by-seven.column,
  .offset-by-seven.columns        { margin-left: 60.6666666667%; }
  .offset-by-eight.column,
  .offset-by-eight.columns        { margin-left: 69.3333333333%; }
  .offset-by-nine.column,
  .offset-by-nine.columns         { margin-left: 78.0%;          }
  .offset-by-ten.column,
  .offset-by-ten.columns          { margin-left: 86.6666666667%; }
  .offset-by-eleven.column,
  .offset-by-eleven.columns       { margin-left: 95.3333333333%; }

  .offset-by-one-third.column,
  .offset-by-one-third.columns    { margin-left: 34.6666666667%; }
  .offset-by-two-thirds.column,
  .offset-by-two-thirds.columns   { margin-left: 69.3333333333%; }

  .offset-by-one-half.column,
  .offset-by-one-half.columns     { margin-left: 52%; }

}

html {
  font-size: 62.5%; }
body {
  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  color: #000;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5em; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300; }
h1 { font-size: 4.0rem; line-height: 1.2;}
h2 { font-size: 3.6rem; line-height: 1.25; }
h3 { font-size: 3.0rem; line-height: 1.3; }
h4 { font-size: 2.4rem; line-height: 1.35; }
h5 { font-size: 1.8rem; line-height: 1.5; }
h6 { font-size: 1.5rem; line-height: 1.6; }

@media (min-width: 550px) {
  h1 { font-size: 5.0rem; }
  h2 { font-size: 4.2rem; }
  h3 { font-size: 3.6rem; }
  h4 { font-size: 3.0rem; }
  h5 { font-size: 2.4rem; }
  h6 { font-size: 1.5rem; }
}

p {
  margin-top: 0; }

a {
  color: #CE1326; }
a:hover {
  color: #B41525; }

.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  display: inline-block;
  padding: 0.6em 1em;
  text-align: center;
  font-weight: bold;
  line-height: 140%;
  letter-spacing: .1rem;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  border-radius: 5px;
  cursor: pointer;
  box-sizing: border-box;
  background: #ce1326;
  border: 2px solid #ce1326;
  color: #fff; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  color: #ce1326;
  background: #fff;
  outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
  color: #FFF;
  background-color: #CE1326;
  border-color: #CE1326; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
  color: #FFF;
  background-color: #B41525;
  border-color: #B41525; }

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  height: 38px;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 65px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #CE1326;
  outline: 0; }
label,
legend {
  display: block;
  margin-bottom: .5rem;
  font-weight: 600; }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal; }

ul {
  list-style: circle inside; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  font-size: 90%; }
li {
  margin-bottom: 1rem; }

code {
  padding: .2rem .5rem;
  margin: 0 .2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #F1F1F1;
  border: 1px solid #E1E1E1;
  border-radius: 4px; }
pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }

th,
td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1; }

button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }


.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-right {
  float: right; }
.u-pull-left {
  float: left; }

hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }

.container:after,
.row:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }

body {
  line-height: 180%;
}
.header {
  padding: 1em 0;
}
.site-logo {
  padding: 0;
}
.header .columns img {
    max-width:100%;
    height:auto;
}
.header h1 {
  font-size: 1.2em;
  font-weight: bold;
  line-height: 120%;
  padding: 0;
  margin: 0;
  color: #222;
}
.header h1 img {
    padding-right: 10px;
}
.header h1 a{
  color: #222;
  text-decoration: none;
}
.header-logo {
    display: table-cell;
    width: 30%;
}
.header .row {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.header-nav {
    display: table-cell;
    width: 70%;
}
.header-nav ul {
    margin: 0;
    list-style: none;
}
.header-nav li {
    display: inline-block;
    padding: 0;
    margin: 0;
}
.header-nav li a {
    color: #333;
    text-decoration: none;
    font-weight: bold;
    padding: 0 0.5em 0 0.5em;
    border-right: 1px solid #999;
}
.header-nav li:last-child a {
    padding-right: 0;
    border-right: none;
}
.mainimage-wrap {
    width: 100%;
    padding: 0;
    margin: 0;
}
.mainimage-wrap img {
    width: 100%;
    height: auto;
}
.bg2 {
  background: #F9F9F9;
}
.tac {
  text-align: center;
}
.btn a {
  background: #CE1326;
  padding: 1.1em 2.5em;
  border-radius: 3px;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  border: 1px solid #CE1326;
}
.btn a:hover {
  background: #fff;
  color: #CE1326;
}
.content-section h2 {
    text-align: center;
    padding: 100px 0 40px 0;
    margin: 0;
    font-weight: bold;
    font-size: 1.8em;
    color: #333;
}
.content-section h2:after {
    width: 100px;
    margin: auto;
    border-bottom: 3px solid #CE1326;
    content: "";
    display: block;
    margin-top: 10px;
}
.content-section h3 {
    font-size: 1.4em;
}
.content-section h4 {
    font-size: 1.15em;
}
.content-section ul {
    list-style: none;
}
.content-section ul li {
    border-bottom: 1px solid #F1F1F1;
    padding-bottom: 10px;
}
.content-section ul li:last-child {
    border-bottom: none;
}
.content-section ul li p {
    margin: 0;
}
.bnrbox {
    padding: 50px 0 30px;
}
.bnrbox ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
}
.bnrbox ul li {
    display: inline-block;
    width: 30%;
    text-align: center;
    padding: 0 5px;
}
.bnrbox ul li img {
    width: 100%;
    height: auto;
}
.footer {
  background: #666;
  padding: 1em;
  color: #fff;
}
.footer-nav {
    padding: 50px 0 20px;
}
.footer-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
.footer-nav ul li {
    display: inline-block;
    margin: 0;
}
.footer-nav ul li a {
    color: #666;
    text-decoration: none;
    padding: 0 0.5em 0 0.5em;
    border-right: 1px solid #999;
}
.footer-nav li:last-child a {
    padding-right: 0;
    border-right: none;
}
.footer-ttl {
    font-weight: bold;
    font-size: 1.2em;
    padding-top: 30px;
}
.footer p {
    margin-bottom: 0.5em;
}
@media only screen and (max-width: 780px) {
.header .row {
    display: block;
}
.header .row .header-logo {
    display: block;
    width: 100%;
    text-align: center;
    padding: 2em 0;
}
.header .row .header-nav {
    display: block;
    width: 100%;
}
.bnrbox ul li {
    display: block;
    width: 100%;
}
}
figure.wp-block-table {
    margin: 0;
}
figure.wp-block-table td:first-child {
    width: 18%;
}
/* ドロップダウン */

ul.menu{
  margin:0;
  padding:0;
}
ul.menu li {
  list-style: none;
  margin:0;
  padding:0;
  float: left;
  position: relative;
  width: 150px;/*親メニューの幅*/
  height: 40px;/*親メニューの高さ*/
  line-height: 40px;
  background:#CE1326;/*親メニューの背景色*/
  color: #fff;/*親メニューの文字色*/
  text-align:center;
  font-weight:bold;
}
ul.menu li a {
  color: #fff;
  display: block;
  text-decoration: none;
}

ul.menu li ul {
  position: absolute;
  top: 40px;/*親メニューの高さと同じにする*/
  width: 150px;
  z-index: 100;
}
ul.menu li ul li {
  visibility: hidden;
  overflow: hidden;
  width: 150px;/*サブメニューの幅*/
  height: 0;

}

ul.menu li:hover ul li, ul.menu li a:hover ul li{
  visibility: visible;
  overflow: visible;
  height:40px;/*サブメニューの高さ*/
  z-index: 10;
}
.menu * {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
.side-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.side-menu li {
    border-left: 6px solid #cd1327;
    padding-left: 0.7em;
}
.side-menu li li {
    border-left: none;
    list-style: none;
    padding: 0;
    margin: 0;
}
.side-menu ul {
    list-style: none;
    margin: 0;
    padding: 0 0 0 1em;
}
.side-menu a {
    text-decoration: none;
    font-weight: bold;
}
.side-menu a:hover {
    color: #333;
}
.side-menu ul li a {
    font-weight: normal;
}
em {
    font-weight: bold;
    color: #cc1328;
    font-style: normal;
}
.main-loop ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.caution {
    background: #cc1328;
    color: #fff;
    padding: 0.5em 1em;
}
.caution a {
    color: #fff;
}
p.widget-title {
    margin: 3em 0 0;
    padding: 0;
    font-weight: bold;
}
.textwidget ul {
    list-style: none;
    margin: 0;
}
label.screen-reader-text {
    display: none;
}
.searchform input[type="submit"] {
    width: 100%;
    padding: 0.5em;
    margin: 0.5em 0;
}
.searchform input[type="text"] {
    width: 100%;
    padding: 0.5em;
    margin: 0;
}
ul.caleder-day {
    list-style: none;
    margin: 0;
    padding: 0;
}
.caleder-day li {
    display: inline-block;
    padding-right: 1em;
}
.caleder-day li span {
    width: 10px;
    height: 10px;
    display: inline-block;
    margin-right: 0.5em;
}
.cslender-status-01 {
    background-color: #ad8d05;
}
.cslender-status-02 {
    background-color: #21543b;
}
.cslender-status-03 {
    background-color: #ad8d05;
}
.cslender-status-04 {
    background-color: #ad8d05;
}
.main-content img {
    max-width: 100%;
    height: auto;
}
@media only screen and (max-width: 680px) {
table{
width:100%;
}
.scroll{
overflow: auto;
white-space: nowrap;
}
}
.btn-set {
    list-style: none;
    width: 100%;
    text-align: center;
}

.btn-set li {
    display: inline-block;
    text-align: center;
    width: 30%;
    margin: 0 1%;
}
.btn-set li a {
    background: #cc1328;
    display: block;
    color: #fff;
    padding: 1em;
    text-decoration: none;
    font-weight: bold;
    border: 2px solid #cc1328;
}
.btn-set li a:hover {
    background: #fff;
    display: block;
    color: #cc1328;
    padding: 1em;
}
.calender iframe {
    width: 100%;
}
.wp-pagenavi {
    text-align: center;
    padding: 2em 0;
}
.wp-pagenavi span.pages {
    display: none;
}
.wp-pagenavi a.page {
    background: #CE1326;
    color: #fff;
    padding: 10px;
    text-decoration: none;
    margin: 0 10px;
}
.wp-pagenavi a.page:hover {
    background: #666;
}
span.current {
    margin: 0 10px;;
}
p.tex-contact-tel {
    padding: 10px 0 0;
    text-align: center;
}