/*
 Theme Name: ABCAP様オリジナルデザインテーマ
 Theme URI: https://www.abcap-shizuoka.jp/
 Description: Wordpressテーマ
 Version: 1.1
 Author: ABCAP（アベカッピ）様
 Author URI: https://www.abcap-shizuoka.jp/
*/

/*------------------------------------------------------------------------------
　Basic
-------------------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p,
blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, img, ins, kbd, q, s,
samp, small, strike, strong, sub, sup, tt, var, b, u, i,
center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption,
footer, header, hgroup, main, aside, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
 margin: 0;
 padding: 0;
 font-size: 100%;
 vertical-align: top;
 border: 0;
}

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

html,
body {
 height: 100%;
 margin: 0!important;
 padding: 0!important;
}

html {
 padding: 0;
 overflow-y: scroll;
 font-size: 100%;
 -webkit-text-size-adjust: 100%;
 -ms-text-size-adjust: 100%;
}

body {
 color: #000;
 font: 16px/1.8 'Noto Sans JP', sans-serif;
 background: #FFF;
}

@media screen and (max-width:768px) {
body {
 font-size: 14px;
}
}

/* Link
----------------------------------------------- */
a:link {
 color: #000;
 text-decoration: none;
 overflow: hidden;
 outline: none;
 -webkit-transition: all .3s;
 transition: all .3s;
 -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:visited, a:active, a:focus {
 color: #000;
}

a:hover {
 color: #009B3A;
 text-decoration: underline;
}

a:hover img {
 opacity: 0.7;
}

@media screen and (min-width:768px) {
a[href^="tel:"] {
 pointer-events: none;
}
}

/* Title
----------------------------------------------- */
h2 {
 clear: both;
 margin: 0;
 padding: 0;
 font-weight: normal;
 line-height: 1.4;
}

.titleBlock {
 clear: both;
 width: 100%;
 margin: 0 0 30px;
 padding: 0 0 25px;
 overflow: hidden;
 text-align: center;
 background: url(assets/images/dot_blue.png) no-repeat center bottom;
}

.titleBlock h2 {
 color: #009B3A;
 font-size: 30px;
 font-weight: bold;
}

.home .titleBlock {
 background: url(assets/images/dot_green.png) no-repeat center bottom;
}

.home .titleBlock h2 {
 color: #002776;
}

h3 {
 clear: both;
 margin: 0 0 30px;
 padding: 5px 10px 7px;
 text-align: center;
 color: #FFF;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.4;
 background: #002776;
}

#policy #pageBox .innerBlock .innerBox .policyTitle {
 margin: 0 0 15px;
 padding: 0 0 3px 10px;
 text-align: left;
 font-size: 22px;
 font-weight: normal;
 line-height: 1.4;
 border-left: 5px solid #002776;
}

@media screen and (max-width:768px) {
.titleBlock {
 margin-bottom: 20px;
 padding-bottom: 20px;
}

.titleBlock h2 {
 font-size: 26px;
}

h3 {
 margin-bottom: 20px;
 font-size: 18px;
}

#policy #pageBox .innerBlock .innerBox .policyTitle {
 margin: 0 0 15px;
 padding: 0 0 3px 10px;
 font-size: 20px;
}
}

/* Text
----------------------------------------------- */
p {
 margin: 0;
 padding: 0;
}

/* Image
----------------------------------------------- */
img {
 max-width: 100%;
 height: auto;
 border: none;
 vertical-align: top;
}

.attachment-post-thumbnail,
.attachment-large {
 margin: 0;
 padding: 0;
}

.alignnone {
 clear: both;
 margin: 0 auto 30px auto;
 padding: 0;
 display: block;
}

.alignright {
 float: right;
 height: auto;
 margin: 0 0 20px 15px;
 padding: 0;
}

.alignleft {
 float: left;
 height: auto;
 margin: 0 15px 20px 0;
 padding: 0;
}

.aligncenter {
 clear: both;
 margin: 0 auto 30px auto;
 padding: 0;
 display: block;
}

p .alignnone,
p .aligncenter {
 margin-bottom: 0;
}

@media screen and (max-width:768px) {
.alignleft,
.alignright {
 clear: both;
 float: none;
}

.alignright {
 margin-bottom: 25px;
 margin-left: 0;
}

.alignleft {
 margin-right: 0;
 margin-bottom: 25px;
}

.alignnone,
.aligncenter {
 margin-bottom: 25px;
}
}

/* List
----------------------------------------------- */
ul, ol, li, dl, dt, dd {
 margin: 0;
 padding: 0;
 list-style: none;
}

/* Table
----------------------------------------------- */
table {
 clear: both;
 width: 100%;
 margin: 0 0 20px 0;
 padding: 0;
 border-collapse: collapse;
 border-spacing: 0;
 border: 1px solid #BDBDBD;
}

table caption {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 border-collapse: collapse;
 border-spacing: 0;
}

table tr th,
table tr td {
 margin: 0;
 padding: 10px 15px 12px;
 vertical-align: middle;
 border-collapse: collapse;
 border-spacing: 0;
 border-bottom: 1px solid #BDBDBD;
}

table tr th {
 text-align: center;
 color: #FFF;
 font-weight: normal;
 background: #FF9600;
}

table tbody tr th {
 width: 30%;
}

table tr td {
 text-align: left;
 background: #FFF;
}

@media screen and (max-width:768px) {
table tr th,
table tr td {
 width: 100%;
 padding: 7px 10px;
 display: block;
}

table tbody tr th,
table tbody tr td {
 border-bottom: none;
}

table tbody tr th {
 width: 100%;
 text-align: left;
}
}

/* Form
----------------------------------------------- */
input,
textarea {
 font-size: 100%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea {
 margin: 0;
 padding: 5px;
 color: #000;
 font-size: 16px;
 font-family: 'Noto Sans JP', sans-serif;
 border: 1px solid #9F9F9F;
 background: #FFF;
 box-sizing: border-box;
 border-radius: 0;
 -webkit-appearance: none;
 -webkit-tap-highlight-color: rgba(0,0,0,0);
}

input[type="text"],
input[type="email"],
input[type="tel"] {
 width: 100%;
}

input[type="date"] {
 vertical-align: top;
}

input[type="checkbox"] {
 margin: 4px 1px 0 0;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="date"]:focus,
input[type="number"]:focus,
textarea:focus {
 font-size: 16px;
 border: 1px solid #009B3A;
 outline: 0;
}

input[type="submit"],
input[type="button"],
button {
 cursor: pointer;
 font-family: 'Noto Sans JP', sans-serif;
 border-radius: 0;
 border: none;
 -webkit-appearance: none;
}

input:-webkit-autofill {
 -webkit-box-shadow: 0 0 0px 1000px rgba(255, 255, 255, 1) inset;
 background: transparent!important;
}

select {
 max-width: 100%;
 padding: 5px;
 vertical-align: top;
 color: #000;
 font-size: 16px;
 font-family: 'Noto Sans JP', sans-serif;
 border: none;
 border: 1px solid #9F9F9F;
 background: #FFF;
 box-sizing: border-box;
}

select:focus {
 border: 1px solid #009B3A;
 outline: 0;
}

textarea {
 width: 100%;
 padding: 5px;
 box-sizing: border-box;
}

@media screen and (max-width:768px) {
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea {
 font-size: 16px;
}
}

/* Font
----------------------------------------------- */
em {
 color: #F00;
 font-weight: normal;
 font-style: normal;
}

.required {
 color: #F00;
}

/* Other
----------------------------------------------- */
.alignL {
 text-align: left;
}

.alignR {
 text-align: right;
}

.alignC {
 text-align: center;
}

/*------------------------------------------------------------------------------
　Layout
-------------------------------------------------------------------------------*/

/* Header
----------------------------------------------- */
#header {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
}

#header:after {
 clear: both;
 display: block;
 content: "";
}

#header .headerInner {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 text-align: left;
}

#header .headerInner:after {
 clear: both;
 display: block;
 content: "";
}

#header .headerInner h1 {
 clear: both;
 width: 100%;
 margin: 0 0 15px;
 padding: 0;
 font-size: 12px;
 font-weight: normal;
}

#header .headerInner .headerBlock {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 10px 15px 30px;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -webkit-justify-content: space-between;
 -ms-flex-pack: justify;
 justify-content: space-between;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
 align-items: center;
}

#header .headerInner .headerBlock .headerFlag {
 width: 32.33%;
 margin: 0;
 padding: 0;
 text-align: left;
}

#header .headerInner .headerBlock .headerLogo {
 width: 32.33%;
 max-width: 300px;
 margin: 0 1.5%;
 padding: 0 15px;
 text-align: center;
}

#header .headerInner .headerBlock .headerLogo a:hover img {
 opacity: 1;
}

#header .headerInner .headerBlock .headerTel {
 width: 32.33%;
 margin: 0;
 padding: 0;
}

#header .headerInner .headerBlock .headerTel a {
 float: right;
 width: 250px;
 height: 60px;
 margin: 0;
 padding: 17px 10px 0;
 display: block;
 text-align: center;
 color: #FFF;
 font-size: 25px;
 line-height: 1;
 border-radius: 7px;
 background: #009B3A;
}

#header .headerInner .headerBlock .headerTel a:hover {
 background: #4CB975;
}

#header .headerInner .headerBlock .headerTel a i {
 margin: 0 10px 0 0;
 padding: 0;
 vertical-align: 1px;
 font-size: 22px;
}

@media screen and (max-width:868px) {
#header {
 border-bottom: 5px solid #FEDF00;
}

#header .headerInner {
 position: relative;
}

#header .headerInner h1 {
 margin-bottom: 10px;
}

#header .headerInner .headerBlock {
 padding: 5px 10px 15px;
}

#header .headerInner .headerBlock .headerFlag {
 width: 27%;
}

#header .headerInner .headerBlock .headerLogo {
 width: 45%;
}

#header .headerInner .headerBlock .headerTel {
 width: 25%;
}

#header .headerInner .headerBlock .headerTel a {
 width: 54px;
 height: 54px;
 margin-right: 60px;
 padding: 14px 10px 0;
 border-radius: 50%;
}

#header .headerInner .headerBlock .headerTel a span {
 display: none;
}

#header .headerInner .headerBlock .headerTel a i {
 margin-right: 0;
}
}

@media screen and (max-width:488px) {
#header .headerInner .headerBlock .headerTel a {
 width: 46px;
 height: 46px;
 margin-right: 51px;
 padding-top: 9px;
}
}

@media screen and (max-width:378px) {
#header .headerInner .headerBlock .headerTel a {
 width: 42px;
 height: 42px;
 margin-right: 44px;
 padding-top: 7px;
}
}

/* Navigation
----------------------------------------------- */
#navigation {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
}

#navigation nav {
 clear: both;
 margin: 0;
 padding: 0;
}

/* Container
----------------------------------------------- */
#container {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

/* Contents
----------------------------------------------- */
#contents {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

.archive #contents,
.date #contents,
.category #contents,
.tag #contents,
.single #contents,
.error404 #contents {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 0;
 overflow: hidden;
}

#contents .innerBlock {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 0 0 50px;
 overflow: hidden;
}

.home #contents .innerBlock {
 padding-top: 45px;
}

#contents .pageLink {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 text-align: center;
}

#contents .pageLink a {
 width: 100%;
 max-width: 300px;
 height: 60px;
 margin: 0 auto;
 padding: 13px 30px 0;
 display: block;
 color: #FFF;
 font-size: 16px;
 text-decoration: none;
 border-radius: 7px;
 border: 2px solid #002776;
 background: #002776;
 -webkit-transition: all .3s;
 transition: all .3s;
}

#contents .pageLink a:hover {
 cursor: pointer;
 color: #002776;
 border-radius: 7px;
 border: 2px solid #002776;
 background-color: #FFF;
}

#contents .pageLink i {
 float: right;
 margin: 6px 0 0 0;
 font-size: 18px;
 line-height: 1;
}

@media screen and (max-width:1200px) {
.error404 #contents,
.archive #contents,
.date #contents,
.category #contents,
.tag #contents,
.single #contents,
#contents .innerBlock {
 padding-right: 15px;
 padding-left: 15px;
}
}

@media screen and (max-width:768px) {
#contents .innerBlock {
 padding-bottom: 40px;
}

.home #contents .innerBlock {
 padding-top: 30px;
}

#contents .pageLink a {
 height: 50px;
 padding: 8px 15px 0;
}
}

/* Breadcrumbs
------------------------------------------------------------- */
.breadcrumbs {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 30px 0;
 overflow: hidden;
 font-size: 14px;
}

.breadcrumbs a {
 color: #009B3A;
 text-decoration: underline;
}

.breadcrumbs a:hover {
 text-decoration: none;
}

@media screen and (max-width:1200px) {
.breadcrumbs {
 padding-right: 15px;
 padding-left: 15px;
}

.error404 .breadcrumbs,
.archive .breadcrumbs,
.date .breadcrumbs,
.category .breadcrumbs,
.tag .breadcrumbs,
.single .breadcrumbs {
 padding-right: 0;
 padding-left: 0;
}
}

@media screen and (max-width:768px) {
.breadcrumbs {
 padding: 15px 15px 25px;
 font-size: 13px;
}
}

/* Bottom Info
----------------------------------------------- */
.bottomInfo {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0 0 40px;
 overflow: hidden;
}

.bottomInfo .infoInner {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 0;
 overflow: hidden;
}

.bottomInfo .infoInner .contactBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0 0 40px;
 overflow: hidden;
}

.bottomInfo .infoInner .contactBox ul,
#scheduleTop .contactBox ul {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -webkit-justify-content: space-between;
 -ms-flex-pack: justify;
 justify-content: space-between;
}

.bottomInfo .infoInner .contactBox ul li,
#scheduleTop .contactBox ul li {
 width: 48.5%;
 margin: 0;
 padding: 0;
 text-align: center;
 color: #FFF;
 font-weight: normal;
 line-height: 1;
}

.bottomInfo .infoInner .contactBox ul li a,
#scheduleTop .contactBox ul li a {
 width: 100%;
 height: 80px;
 padding: 27px 30px;
 display: block;
 color: #FFF;
 font-size: 24px;
 text-decoration: none;
 border-radius: 7px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact a,
#scheduleTop .contactBox ul li.bnrContact a {
 background: #009B3A;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact a:hover,
#scheduleTop .contactBox ul li.bnrContact a:hover {
 background: #4CB975;
}

.bottomInfo .infoInner .contactBox ul li.bnrTel a,
#scheduleTop .contactBox ul li.bnrTel a {
 background: #002776;
}

.bottomInfo .infoInner .contactBox ul li.bnrTel a:hover,
#scheduleTop .contactBox ul li.bnrTel a:hover {
 background: #4C679F;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact i.fa-envelope,
#scheduleTop .contactBox ul li.bnrContact i.fa-envelope {
 margin-right: 10px;
 font-size: 28px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact i.fa-chevron-right,
#scheduleTop .contactBox ul li.bnrContact i.fa-chevron-right {
 float: right;
 margin-top: 1px;
 vertical-align: 0;
 font-size: 24px;
}

.bottomInfo .infoInner .contactBox ul li.bnrTel i.fa-phone-alt,
#scheduleTop .contactBox ul li.bnrTel i.fa-phone-alt {
 margin-right: 10px;
 vertical-align: -1px;
}

.bottomInfo .infoInner .snsBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
}

.bottomInfo .infoInner .snsBox ul {
 clear: both;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

.bottomInfo .infoInner .snsBox ul li {
 clear: both;
 margin: 0 30px 0 0;
 padding: 0;
 display: inline-block;
}

.bottomInfo .infoInner .snsBox ul li:last-child {
 margin: 0;
}

.bottomInfo .infoInner .snsBox ul li a {
 width: 60px;
 height: 60px;
 margin: 0;
 padding: 0;
 display: block;
 color: #FFF;
 font-size: 26px;
 border-radius: 7px;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: center;
 -webkit-justify-content: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
 align-items: center;
}

.bottomInfo .infoInner .snsBox ul li a:hover {
 text-decoration: none;
}

.bottomInfo .infoInner .snsBox ul li.btFacebook a {
 background: #3B5998;
}

.bottomInfo .infoInner .snsBox ul li.btFacebook a:hover {
 background: #758AB7;
}

.bottomInfo .infoInner .snsBox ul li.btInstagram a {
 background: #CF2E92;
}

.bottomInfo .infoInner .snsBox ul li.btInstagram a:hover {
 background: #DD6CB2;
}

.bottomInfo .infoInner .snsBox ul li.btYoutube a {
 background: #DA1725;
}

.bottomInfo .infoInner .snsBox ul li.btYoutube a:hover {
 background: #E55C66;
}

@media screen and (max-width:1200px) {
.bottomInfo .infoInner,
.bottomInfo .infoInner .contactBox ul li a,
#scheduleTop .contactBox ul li a {
 padding-right: 15px;
 padding-left: 15px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact a,
#scheduleTop .contactBox ul li.bnrContact a {
 padding-right: 25px;
}
}

@media screen and (max-width:768px) {
.bottomInfo,
.bottomInfo .infoInner .contactBox {
 padding-bottom: 30px;
}

.bottomInfo .infoInner .contactBox ul li a,
#scheduleTop .contactBox ul li a {
 height: 70px;
 padding-top: 24px;
 padding-bottom: 24px;
 font-size: 20px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact a,
#scheduleTop .contactBox ul li.bnrContact a {
 padding-right: 20px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact i.fa-envelope,
#scheduleTop .contactBox ul li.bnrContact i.fa-envelope {
 font-size: 24px;
}

.bottomInfo .infoInner .contactBox ul li.bnrContact i.fa-chevron-right,
#scheduleTop .contactBox ul li.bnrContact i.fa-chevron-right {
 margin-top: 1px;
 font-size: 20px;
}

.bottomInfo .infoInner .contactBox ul li.bnrTel i.fa-phone-alt,
#scheduleTop .contactBox ul li.bnrTel i.fa-phone-alt {
 vertical-align: -1px;
}

.bottomInfo .infoInner .snsBox ul li {
 margin-right: 20px;
}
}

@media screen and (max-width:668px) {
.bottomInfo .infoInner .contactBox ul li,
#scheduleTop .contactBox ul li {
 width: 90%;
 margin: 0 auto;
}

.bottomInfo .infoInner .contactBox ul li.bnrTel a,
#scheduleTop .contactBox ul li.bnrTel a {
 margin-top: 20px;
}
}

@media screen and (max-width:568px) {
.bottomInfo .infoInner .contactBox ul li,
#scheduleTop .contactBox ul li {
 width: 100%;
}
}

/* PageTop
----------------------------------------------- */
#pagetop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 15px 0;
 overflow: hidden;
 text-align: center;
 background: #009B3A;
}

#pagetop a {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 display: block;
}

#pagetop i {
 color: #FFF;
 font-size: 36px;
}

@media screen and (max-width:768px) {
#pagetop {
 padding: 10px 0;
}
}

/* Footer
----------------------------------------------- */
#footer {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 color: #000;
 overflow: hidden;
 background: #FEDF00;
}

#footer a,
#footer a:visited,
#footer a:active,
#footer a:focus {
 color: #000;
 text-decoration: none;
}

#footer a:hover {
 color: #000;
 text-decoration: underline;
}

#footer a[href^="tel:"] {
 color: #000;
 text-decoration: none;
}

#footer .footerInner {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
}

#footer .footerInfo {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 30px 0;
 overflow: hidden;
}

#footer .footerInfo p {
 clear: both;
 margin: 0 0 5px;
 padding: 0;
}

#footer .footerInfo p:last-child {
 margin-bottom: 0;
}

#footer .footerInfo .footerLogo {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#footer .footerInfo .footerLogo p {
 margin: 0;
 padding: 0;
 line-height: 1.4;
}

#footer .footerInfo .footerLogo p.name {
 margin: 3px 0 10px;
 font-size: 24px;
 font-weight: bold;
}

#footer .footerNavi {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 30px 0 25px;
 border-top: 1px solid #000;
}

#footer .footerNavi ul {
 clear: both;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#footer .footerNavi ul li {
 clear: both;
 margin: 0 0 5px;
 padding: 0 15px 0 0;
 display: inline-block;
 position: relative;
}

#footer .footerNavi ul li:last-child {
 padding-right: 0;
}

#footer .footerNavi ul li:after {
 display: inline-block;
 position: absolute;
 top: 0;
 right: -2px;
 content: "・";
}

#footer .footerNavi ul li:last-child:after {
 display: inline-block;
 position: absolute;
 top: 0;
 right: 0;
 content: "";
}

#footer .copyright {
 clear: both;
 width: 100%;
 padding: 15px 0;
 text-align: center;
 color: #FFF;
 font-size: 14px;
 background: #002776;
}

#footer .copyright address {
 clear: both;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 padding: 0;
 font-style: normal;
}

#footer .copyright address a,
#footer .copyright address a:hover,
#footer .copyright address a:visited,
#footer .copyright address a:active,
#footer .copyright address a:focus {
 color: #FFF;
}

@media screen and (max-width:1200px) {
#footer .footerInfo,
#footer .footerNavi,
#footer .copyright address {
 padding-right: 15px;
 padding-left: 15px;
}
}

@media screen and (max-width:768px) {
#footer a[href^="tel:"] {
 text-decoration: underline;
}

#footer a:hover[href^="tel:"] {
 text-decoration: none;
}

#footer .footerInfo {
 padding-top: 25px;
 padding-bottom: 25px;
}

#footer .footerInfo .footerLogo p.name {
 margin: 2px 0 7px;
 font-size: 20px;
}

#footer .footerNavi {
 padding: 25px 15px 20px;
}

#footer .copyright {
 padding-top: 10px;
 padding-bottom: 12px;
 font-size: 12px;
}
}

/*------------------------------------------------------------------------------
　PostList
-------------------------------------------------------------------------------*/

.postList {
 clear: both;
 width: 100%;
 margin: 0 0 20px;
 padding: 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -webkit-justify-content: space-between;
 -ms-flex-pack: justify;
 justify-content: space-between;
}

body.home .postList {
 margin-bottom: 0;
}

body.home .postList .postBox .postPhoto {
 border: 10px solid #FFF;
}

.postList .postBox .postMeta {
 clear: both;
 width: 100%;
 margin: 0 0 5px;
 padding: 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
}

.postDate {
 margin: 5px 0 0;
 padding: 0;
 font-size: 16px;
 font-family: 'Kameron', serif;
 font-weight: bold;
}

.postCategory {
 width: 100px;
 height: 35px;
 margin: 0 15px 0 0;
 padding: 8px 5px 0;
 text-align: center;
 color: #FFF;
 font-size: 15px;
 line-height: 1.2;
 border-radius: 25px;
 background: #333;
}

.postCategory.news {
 background: #FF7800;
}

.postCategory.event {
 background: #B62828;
}

.postCategory.movie {
 background: #58476B;
}

.postCategory.others {
 background: #1CA079;
}

.postTitle {
 clear: both;
 margin: 0;
 padding: 0;
}

.postList .postBox {
 width: 22.5%;
 margin: 0;
 padding: 0 0 40px;
}

.postList .postBox.empty {
 padding-bottom: 0;
}

.postList .postBox .postPhoto {
 width: 100%;
 margin: 0 0 12px 0;
 padding: 0;
}

@media screen and (max-width:968px) {
.postList .postBox {
 width: 31.11%;
}

body.home .postList .postBox {
 width: 48%;
}
}

@media screen and (max-width:768px) {
.postList {
 margin-bottom: 15px;
}

.postCategory {
 margin-right: 10px;
 padding-top: 9px;
 font-size: 14px;
}

.postList .postBox {
 padding-bottom: 25px;
}
}

@media screen and (max-width:568px) {
.postList .postBox {
 width: 48%;
}
}

/* Pagenation
----------------------------------------------- */
.wp-pagenavi {
 clear: both;
 margin: 0 -6px 0 0;
 padding: 10px 0 70px 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: center;
 -webkit-justify-content: center;
 -ms-flex-pack: center;
 justify-content: center;
}

.wp-pagenavi span.current,
.wp-pagenavi a {
 width: 40px;
 height: 40px;
 margin: 0 6px;
 padding: 8px 0 0 0;
 display: inline-block;
 text-align: center;
 color: #000;
 font-weight: normal;
 line-height: 1.2;
 text-decoration: none;
 border-radius: 50%;
 border: 2px solid #FEDF00;
 background: #FFF;
}

.wp-pagenavi span.current,
.wp-pagenavi a:hover {
 color: #000;
 background: #FEDF00;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
 padding-top: 10px;
}

@media screen and (max-width:768px) {
.wp-pagenavi {
 margin-right: -5px;
 padding: 0 0 40px 0;
}

.wp-pagenavi span.current,
.wp-pagenavi a {
 margin: 0 5px;
 padding-top: 10px;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
 padding-top: 12px;
}
}

/*------------------------------------------------------------------------------
　PostDetail
-------------------------------------------------------------------------------*/

.post {
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

.post .postMeta {
 width: 100%;
 margin: 0;
 padding: 0 0 20px;
 overflow: hidden;
}

.post .postMeta ul {
 clear: both;
 float: right;
 margin: 0;
 padding: 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
}

.post .postMeta .postCategory a,
.post .postMeta .postCategory a:hover {
 color: #FFF;
 text-decoration: none;
}

.post .postTitle {
 margin: 0 0 35px;
 padding: 0;
}

.post .postTitle h3 {
 margin: 0;
 padding: 10px 15px 12px;
 text-align: left;
 color: #000;
 font-size: 24px;
 line-height: 1.4;
 border-top: 5px solid #FF9600;
 border-bottom: 5px solid #FF9600;
 background: none;
}

.post .postContent {
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

.post .postContent h1 {
 clear: both;
 margin: 0 0 25px;
 padding: 0;
 text-align: left;
 color: #000;
 font-size: 28px;
 font-weight: bold;
 line-height: 1.4;
}

.post .postContent h2 {
 clear: both;
 margin: 0 0 35px;
 padding: 15px 20px 16px;
 text-align: left;
 color: #FFF;
 font-size: 24px;
 font-weight: bold;
 line-height: 1.4;
 border-radius: 7px;
 background: #009B3A;
}

.post .postContent h3 {
 clear: both;
 margin: 0 0 30px;
 padding: 12px 15px 12px;
 text-align: left;
 color: #000;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.4;
 border-bottom: 2px solid #002776;
 border-left: 10px solid #002776;
 background: none;
}

.post .postContent h4 {
 clear: both;
 margin: 0 0 25px;
 padding: 0 10px 10px;
 text-align: left;
 font-size: 18px;
 font-weight: bold;
 line-height: 1.4;
 border-bottom: 2px dotted #FF9600;
 border-left: none;
}

.post .postContent h5 {
 clear: both;
 margin: 0 0 20px;
 padding: 0 10px 12px;
 text-align: left;
 font-size: 18px;
 font-weight: bold;
 line-height: 1.4;
 border-bottom: 2px solid #FEDF00;
}

.post .postContent h6 {
 clear: both;
 margin: 0 0 20px;
 padding: 0 10px;
 text-align: left;
 font-size: 16px;
 font-weight: bold;
 line-height: 1.4;
}

.post .postContent p {
 margin: 0 0 20px 0;
 padding: 0;
}

.post .postContent p:last-child {
 margin-bottom: 0;
}

.post .postContent a {
 color: #009B3A;
 text-decoration: underline;
}

.post .postContent a:hover {
 text-decoration: none;
}

.post .postContent table {
 margin-bottom: 35px;
}

.post .postContent ul {
 clear: both;
 margin: 0 0 20px;
 padding: 0;
 overflow: hidden;
}

.post .postContent ul li {
 clear: both;
 margin: 0 0 5px;
 padding: 0 0 0 22px;
 position: relative;
 font-size: 18px;
}

.post .postContent ul li:last-child {
 margin-bottom: 0;
}

.post .postContent ul li:before {
 width: 17px;
 height: 17px;
 display: inline-block;
 position: absolute;
 top: 9px;
 left: 0;
 content: "";
 border-radius: 50%;
 background-color: #FF9600;
}

.post .postContent ol {
 clear: both;
 margin: 0 0 25px;
 padding: 0 0 0 42px;
 overflow: hidden;
}

.post .postContent ol li {
 clear: both;
 margin: 0 0 5px;
 padding: 0;
 font-size: 18px;
 text-indent: -38px;
 list-style-position: outside;
 counter-increment: cnt;
}

.post .postContent ol li:before {
 display: marker;
 content: counter(cnt) "．";
 color: #1B225A;
 font-weight: bold;
}

.post .postContent ol li:last-child {
 margin-bottom: 0;
}

.post .postContent .bnrFile {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0 0 5px;
 text-align: center;
}

.post .postContent .bnrFile a {
 width: 100%;
 max-width: 600px;
 height: 60px;
 margin: 0 auto;
 padding: 13px 20px 0;
 display: block;
 color: #FFF;
 font-size: 16px;
 text-decoration: none;
 border-radius: 7px;
 border: 2px solid #E60012;
 background: #E60012;
 -webkit-transition: all .3s;
 transition: all .3s;
}

.post .postContent .bnrFile a:hover {
 cursor: pointer;
 color: #E60012;
 border-radius: 30px;
 border: 2px solid #E60012;
 background-color: #FFF;
}

.post .postContent .bnrFile i {
 margin: 3px 10px 0 0;
 font-size: 24px;
 line-height: 1;
}

.post .postContent .movie {
 width: 70%;
 margin: 0 auto 50px;
 padding: 0;
 aspect-ratio: 16 / 9;
}

.post .postContent .movie iframe {
 width: 100%;
 height: 100%;
 margin: 0;
 padding: 0;
}

.post .postContent .gallery {
 width: 100%;
 margin-bottom: 30px;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
}

.post .postContent .gallery br {
 display: none;
}

.post .postContent .gallery-item {
 margin: 0 1.5% 15px 0;
}

.post .postContent .gallery-icon {
 text-align: center;
}

.post .postContent .gallery-icon img {
 width: 100%;
 height: auto;
 margin-bottom: 5px;
 border: 1px solid #C0C0C0;
}

.post .postContent .gallery-caption {
 margin: 0;
 text-align: center;
}

.post .postContent .gallery-columns-1 .gallery-item {
 width: 100%;
 margin: 0;
}

.post .postContent .gallery-columns-2 .gallery-item {
 width: 48.5%!important;
 margin-right: 3%;
}

.post .postContent .gallery-columns-2 .gallery-item:nth-of-type(2n) {
 margin-right: 0;
}

.post .postContent .gallery-columns-3 .gallery-item {
 width: 32.33333%!important;
}

.post .postContent .gallery-columns-3 .gallery-item:nth-of-type(3n) {
 margin-right: 0;
}

.post .postContent .gallery-columns-4 .gallery-item {
 width: 23.875%!important;
}

.post .postContent .gallery-columns-4 .gallery-item:nth-of-type(4n) {
 margin-right: 0;
}

.post .postContent .gallery-columns-5 .gallery-item {
 width: 18.8%!important;
}

.post .postContent .gallery-columns-5 .gallery-item:nth-of-type(5n) {
 margin-right: 0;
}

@media screen and (max-width:768px) {
.post .postMeta {
 padding-bottom: 15px;
}

.post .postTitle {
 margin-bottom: 20px;
}

.post .postTitle h3 {
 padding: 10px;
 font-size: 20px;
}

.post .postContent h1 {
 margin-bottom: 20px;
 font-size: 22px;
}

.post .postContent h2 {
 margin-bottom: 20px;
 padding: 7px 10px;
 font-size: 20px;
}

.post .postContent h3 {
 margin-bottom: 20px;
 padding: 7px 10px;
 font-size: 18px;
}

.post .postContent h4 {
 margin-bottom: 20px;
 padding: 0 5px 7px;
 font-size: 16px;
}

.post .postContent h5 {
 margin-bottom: 20px;
 padding: 0 5px 7px;
 font-size: 16px;
}

.post .postContent h6 {
 margin-bottom: 15px;
 padding: 0 5px;
 font-size: 14px;
}

.post .postContent p {
 margin-bottom: 15px;
}

.post .postContent table {
 margin-bottom: 25px;
}

.post .postContent table tbody tr th,
.post .postContent table tbody tr td {
 width: 100%!important;
}

.post .postContent ul {
 margin-bottom: 15px;
}

.post .postContent ul li {
 padding-left: 18px;
 font-size: 14px;
}

.post .postContent ul li:before {
 width: 14px;
 height: 14px;
 top: 5px;
}

.post .postContent ol {
 margin-bottom: 20px;
}

.post .postContent ol li {
 font-size: 14px;
}

.post .postContent .bnrFile a {
 height: 50px;
 padding: 11px 15px 0;
 font-size: 14px;
}

.post .postContent .bnrFile i {
 margin-top: 0;
}

.post .postContent .movie {
 width: 100%;
 margin-bottom: 30px;
}

.post .postContent .gallery {
 margin-bottom: 15px;
}

.post .postContent .gallery-columns-3 .gallery-item,
.post .postContent .gallery-columns-4 .gallery-item {
 width: 48.5%!important;
 margin-right: 3%;
}

.post .postContent .gallery-columns-3 .gallery-item:nth-of-type(3n),
.post .postContent .gallery-columns-4 .gallery-item:nth-of-type(4n) {
 margin-right: 3%;
}

.post .postContent .gallery-columns-3 .gallery-item:nth-of-type(2n),
.post .postContent .gallery-columns-4 .gallery-item:nth-of-type(2n) {
 margin-right: 0;
}

.post .postContent .gallery-columns-5 .gallery-item {
 width: 32.33333%!important;
 margin-right: 1.5%;
}

.post .postContent .gallery-columns-5 .gallery-item:nth-of-type(5n) {
 margin-right: 1.5%;
}

.post .postContent .gallery-columns-5 .gallery-item:nth-of-type(3n) {
 margin-right: 0;
}
}

/* Pagenation
----------------------------------------------- */
.postNavi {
 clear: both;
 margin: 50px -10px 0 0;
 padding: 35px 0 60px;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: center;
 -webkit-justify-content: center;
 -ms-flex-pack: center;
 justify-content: center;
 border-top: 1px solid #009B3A;
}

.postNavi .navPrev,
.postNavi .navList,
.postNavi .navNext {
 margin: 0 10px;
 padding: 0;
}

.postNavi a {
 margin: 0;
 padding: 9px 20px 10px;
 display: block;
 text-align: center;
 color: #000;
 font-weight: normal;
 line-height: 1.2;
 text-decoration: none;
 border-radius: 30px;
 border: 2px solid #FEDF00;
 background: #FFF;
}

.postNavi .navList a {
 padding-right: 30px;
 padding-left: 30px;
}

.postNavi a:hover {
 color: #000;
 background: #FEDF00;
}

.postNavi .navPrev i {
 margin-right: 10px;
 vertical-align: 0;
}

.postNavi .navNext i {
 margin-left: 10px;
 vertical-align: 0;
}

@media screen and (max-width:768px) {
.postNavi {
 margin-top: 30px;
 margin-right: -5px;
 padding: 25px 0 40px;
}

.postNavi .navPrev,
.postNavi .navList,
.postNavi .navNext {
 margin: 0 5px;
}

.postNavi a {
 padding: 10px 15px;
}

.postNavi .navList a {
 padding-right: 20px;
 padding-left: 20px;
}
}

/*------------------------------------------------------------------------------
　Page
-------------------------------------------------------------------------------*/

#pageBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
} 

#pageBox .innerBlock a {
 color: #009B3A;
 text-decoration: underline;
}

#pageBox .innerBlock a:hover {
 text-decoration: none;
}

#pageBox .innerBlock p {
 margin-bottom: 15px;
}

#pageBox .innerBlock p.copy {
 clear: both;
 width: 100%;
 margin: 0 0 30px;
 padding: 0;
 text-align: center;
 font-size: 24px;
 font-weight: bold;
 background: url(assets/images/line.png) no-repeat center bottom;
}

#pageBox .innerBlock p:last-child {
 margin-bottom: 0;
}

#pageBox .innerBlock .innerBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0 0 45px 0;
 overflow: hidden;
}

#pageBox .innerBlock .innerBox:last-of-type {
 padding-bottom: 0;
}

#pageBox .innerBlock .photoBox {
 width: 48.5%;
 margin: 0 0 25px;
 padding: 0;
}

#pageBox .innerBlock .photoBox.wide {
 clear: both;
 width: 100%;
 margin: 0 0 25px;
 text-align: center;
}

#pageBox .innerBlock .photoBox.wide img {
 margin: 0 auto;
 display: block;
}

@media screen and (max-width:1200px) {
#pageBox .innerBlock {
 padding-right: 15px;
 padding-left: 15px;
}
}

@media screen and (min-width:768px) {
#pageBox .innerBlock a[href^="tel:"] {
 color: #000;
 text-decoration: none;
}

#pageBox .innerBlock a[href^="tel:"]:hover {
 text-decoration: none;
}
}

@media screen and (max-width:768px) {
#pageBox .innerBlock p {
 margin-bottom: 10px;
}

#pageBox .innerBlock p.copy {
 margin-bottom: 20px;
 font-size: 19px;
}

#pageBox .innerBlock .innerBox {
 padding-bottom: 25px;
}

#pageBox .innerBlock .photoBox {
 width: 100%;
 margin-bottom: 20px;
}

#pageBox .innerBlock .photoBox:nth-of-type(odd) {
 clear: both;
 margin-bottom: 20px;
}

#pageBox .innerBlock .photoBox:nth-of-type(even) {
 clear: both;
}

#pageBox .innerBlock .photoBox img {
 margin: 0 auto;
 display: block;
}

#pageBox .innerBlock .photoBox.wide {
 margin-bottom: 15px;
}
}

/*------------------------------------------------------------------------------
　TopPage
-------------------------------------------------------------------------------*/

/* Visual Image
----------------------------------------------- */
#visual {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 position: relative;
}

#visual .visualBlock {
 clear: both;
 width: 100%;
 margin: 0 auto;
 padding: 0;
 position: absolute;
 top: 50%;
 left: 50%;
 overflow: hidden;
 text-align: center;
 transform: translate(-50%, -50%);
 z-index: 100;
}

/*#visual .visualBlock img {
 width: 37.30%;
 height: auto;
}*/

#visual .visualBlock h2 {
 margin: 0;
 text-align: center;
 color: #FF5400;
 font-size: 30px;
 font-weight: bold;
 line-height: 1.4;
 text-shadow: 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF, 0 0 5px #FFF;
}

#visual .visualBlock h2 br {
 display: none;
}

.swiper-container {
 width: 100%;
 height: auto;
}

.swiper-slide {
 text-align: center;
}

.swiper-slide a:hover img {
 opacity: 1;
}

@media screen and (max-width:1220px) {
#visual .visualBlock h2 {
 font-size: 26px;
}
}

@media screen and (max-width:960px) {
#visual .visualBlock h2 {
 font-size: 22px;
}
}

@media screen and (max-width:768px) {
/*#visual .visualBlock img {
 width: 32.30%;
}*/

#visual .visualBlock h2 {
 font-size: 20px;
 text-shadow: 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF;
}

#visual .visualBlock h2 br {
 display: block;
}
}

@media screen and (max-width:568px) {
#visual .visualBlock h2 {
 font-size: 16px;
}
}

/* Capoeira
----------------------------------------------- */
#capoeiraTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
}

#capoeiraTop .innerBlock .innerBox {
 clear: both;
 width: 100%;
 margin: 0 0 40px;
 padding: 0;
 overflow: hidden;
}

@media screen and (max-width:768px) {
#capoeiraTop .innerBlock .innerBox {
 margin-bottom: 25px;
}
}

@media screen and (max-width:568px) {
#capoeiraTop {
 text-align: left;
}
}

/* News
----------------------------------------------- */
#newsTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 background: #FDF49C;
}

#newsTop .pageLink a {
 border: 2px solid #009B3A;
 background: #009B3A;
}

#newsTop .pageLink a:hover {
 color: #009B3A;
 border: 2px solid #009B3A;
 background: #FFF;
}

/* Banner
----------------------------------------------- */
#bannerTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 15px 0 0;
 overflow: hidden;
}

#bannerTop .innerBlock {
 padding-bottom: 20px;
}

#bannerTop .bannerList {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 text-align: center;
}

#bannerTop .bannerList ul {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#bannerTop .bannerList ul li {
 width: 100%;
 margin: 0 0 20px;
 padding: 0;
}

#bannerTop .bannerList ul li:last-child {
 margin-bottom: 0;
}

#bannerTop .bannerList ul li a {
 width: 100%;
 min-height: 80px;
 margin: 0;
 padding: 11px 20px 0;
 display: block;
 color: #FFF;
 font-size: 30px;
 text-decoration: none;
 border-radius: 7px;
 border: 2px solid #FF7800;
 background: #FF7800;
 -webkit-transition: all .3s;
 transition: all .3s;
}

#bannerTop .bannerList ul li a:hover {
 color: #FF7800;
 border: 2px solid #FF7800;
 background-color: #FFF;
}

@media screen and (max-width:768px) {
#bannerTop {
 padding-top: 5px;
}

#bannerTop .innerBlock {
 padding-bottom: 10px;
}

#bannerTop .bannerList ul li {
 margin-bottom: 15px;
}

#bannerTop .bannerList ul li a {
 min-height: 60px;
 padding: 6px 10px 0;
 font-size: 24px;
}
}

/* Lesson
----------------------------------------------- */
#lessonTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
}

#lessonTop .innerBlock .innerBox {
 clear: both;
 width: 100%;
 margin: 0 0 40px;
 padding: 0;
 overflow: hidden;
}

#lessonTop .boxL,
#lessonTop .boxR {
 width: 48%;
 margin: 0;
 padding: 0;
}

#lessonTop .boxL {
 float: left;
}

#lessonTop .boxR {
 float: right;
}

#lessonTop .movie {
 width: 100%;
 margin: 0;
 padding: 0;
 aspect-ratio: 16 / 9;
}

#lessonTop .movie iframe {
 width: 100%;
 height: 100%;
 margin: 0;
 padding: 0;
}

@media screen and (max-width:768px) {
#lessonTop .innerBlock .innerBox {
 margin-bottom: 25px;
}

#lessonTop .boxL,
#lessonTop .boxR {
 float: none;
 width: 100%;
}

#lessonTop .boxL {
 margin-bottom: 20px;
}
}

/* Schedule
----------------------------------------------- */
#scheduleTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
 background: #FDF49C;
}

#scheduleTop .innerBlock .innerBox {
 clear: both;
 width: 100%;
 margin: 0 0 40px;
 padding: 0;
 overflow: hidden;
}

#scheduleTop .innerBlock .calendarBox {
 height: 0;
 margin: 0 0 40px;
 padding: 30px 0 56.25%;
 position: relative;
 overflow: hidden;
}
   
#scheduleTop .innerBlock .calendarBox iframe,
#scheduleTop .innerBlock .calendarBox object,
#scheduleTop .innerBlock .calendarBox embed {
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
}

#scheduleTop .innerBlock .bnrLesson {
 clear: both;
 width: 100%;
 margin: 0 0 40px;
 padding: 0;
 overflow: hidden;
}

@media screen and (max-width:768px) {
#scheduleTop .innerBlock .innerBox,
#scheduleTop .innerBlock .calendarBox,
#scheduleTop .innerBlock .bnrLesson	{
 margin-bottom: 25px;
}
}

/* Instagram
----------------------------------------------- */
#instagramTop {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 text-align: center;
}

#instagramTop .innerBlock .innerBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

/*------------------------------------------------------------------------------
　Capoeira
-------------------------------------------------------------------------------*/

#capoeira #pageBox .innerBlock {
 text-align: center;
}

#capoeira #pageBox .innerBlock .innerBox:first-of-type p strong {
 font-size: 18px;
}

#capoeira #pageBox .innerBlock .innerBox dl {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#capoeira #pageBox .innerBlock .innerBox dl dt {
 clear: both;
 width: 270px;
 margin: 0 auto 15px;
 padding: 5px 10px 7px;
 text-align: center;
 display: block;
 color: #000;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.4;
 border-radius: 25px;
 background: #FFD600;
}

#capoeira #pageBox .innerBlock .innerBox dl dd {
 clear: both;
 width: 100%;
 margin: 0 0 30px;
 padding: 0;
 overflow: hidden;
}

#capoeira #pageBox .innerBlock .innerBox dl>dd:last-of-type {
 margin-bottom: 0;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 40px 0 0;
 overflow: hidden;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock ul {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -webkit-justify-content: space-between;
 -ms-flex-pack: justify;
 justify-content: space-between;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock ul li {
 width: 48%;
 margin: 0;
 padding: 0;
 text-align: left;
 font-size: 20px;
 font-weight: bold;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock ul li:before{
 margin: 0 7px 0 0;
 content: '\f058';
 vertical-align: -2px;
 color: #FF9600;
 font-size: 26px;
 font-weight: 900;
 font-family: "Font Awesome 5 Free";
}

@media screen and (max-width:768px) {
#capoeira #pageBox .innerBlock .innerBox:first-of-type p strong {
 font-size: 16px;
}

#capoeira #pageBox .innerBlock .innerBox dl dt {
 margin-bottom: 10px;
 font-size: 18px;
}

#capoeira #pageBox .innerBlock .innerBox dl dd {
 margin-bottom: 20px;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock {
 padding-top: 20px;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock ul li {
 width: 100%;
 font-size: 18px;
}

#capoeira #pageBox .innerBlock .innerBox .meritBlock ul li:before{
 vertical-align: -3px;
 font-size: 24px;
}
}

@media screen and (max-width:568px) {
#capoeira #pageBox .innerBlock {
 text-align: left;
}
}

/*------------------------------------------------------------------------------
　Dojo
-------------------------------------------------------------------------------*/

#dojo #pageBox .innerBlock .pageLink a {
 color: #FFF;
 text-decoration: none;
 border: 2px solid #009B3A;
 background: #009B3A;
}

#dojo #pageBox .innerBlock .pageLink a:hover {
 color: #009B3A;
 text-decoration: none;
 border: 2px solid #009B3A;
 background: #FFF;
}

#dojo #pageBox .innerBlock .innerBox p.name {
 text-align: right;
 font-size: 18px;
 font-weight: bold;
}

#dojo #pageBox .innerBlock .innerBox:nth-of-type(3) p strong {
 font-size: 18px;
}

#dojo #pageBox .innerBlock .innerBox:nth-of-type(3) p em {
 font-weight: bold;
}

#dojo #pageBox .innerBlock .innerBox .profileBox {
 clear: both;
 width: 100%;
 margin: 40px 0 0;
 padding: 30px 0;
 overflow: hidden;
 background: #FFF8EF;
}

#dojo #pageBox .innerBlock .innerBox .profileBox h4 {
 clear: both;
 margin: 0;
 padding: 0 0 15px;
 text-align: center;
 font-size: 18px;
 font-weight: bold;
}

#dojo #pageBox .innerBlock .innerBox .profileBox p {
 clear: both;
 margin: 0 10px 25px;
 padding: 0;
 text-align: center;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
 border-bottom: 1px dotted #FF9600;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl dt {
 clear: left;
 float: left;
 width: 180px;
 margin: 0;
 padding: 7px 60px 9px;
 display: block;
 font-weight: bold;
 border-top: 1px dotted #FF9600;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl dd {
 margin: 0 0 0 180px;
 padding: 7px 50px 9px 0;
 border-top: 1px dotted #FF9600;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl>dd:last-of-type {
 margin-bottom: 0;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock {
 clear: both;
 width: 100%;
 margin: 40px 0 30px;
 padding: 0;
 overflow: hidden;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock h4 {
 clear: both;
 width: 270px;
 margin: 0 auto 20px;
 padding: 5px 10px 7px;
 text-align: center;
 display: block;
 color: #000;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.4;
 border-radius: 25px;
 background: #FFD600;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 25px 0 0;
 overflow: hidden;
 counter-reset: my-counter;
 background: #FFF8EF;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol li {
 clear: both;
 width: 100%;
 margin: 0 0 20px;
 padding: 0 20px 10px 47px;
 position: relative;
 text-align: left;
 border-bottom: 1px dashed #009B3A;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol li:before {
 width: 22px;
 height: 22px;
 margin: 0;
 padding: 0;
 position: absolute;
 top: 4px;
 left: 20px;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: center;
 -webkit-justify-content: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
 align-items: center;
 line-height: 1;
 border-radius: 50%;
 border: 1px solid;
 content: counter(my-counter);
 counter-increment: my-counter;
}

#dojo #pageBox .innerBlock .faqList {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#dojo #pageBox .innerBlock .faqList .faqBox {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion {
 width: 100%;
 margin: 0;
 padding: 0;
 position: relative;
 z-index: +1;
 cursor: pointer;
 transition: .2s;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead {
 min-height: 60px;
 margin: 0 0 15px;
 padding: 0 50px 0 75px;
 display: block;
 position: relative;
 line-height: 1.4;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead::before {
 width: 60px;
 height: 60px;
 margin: 0;
 padding: 8px 0 0;
 position: absolute;
 left: 0;
 content: "Q";
 text-align: center;
 color: #FFF;
 font-size: 26px;
 font-weight: bold;
 border-radius: 50%;
 background: #009B3A;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead p {
 color: #009B3A;
 font-size: 24px;
 font-weight: bold;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox {
 width: 36px;
 height: 36px;
 margin: -23px 0 0;
 position: absolute;
 top: 50%;
 right: 0;
 border-radius: 7px;
 background: #FEDF00;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion.open .iconBox {
 background: #999;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:before,
#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:after {
 margin: auto;
 position: absolute;
 content: "";
 vertical-align: middle;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:before {
 width: 25px;
 height: 0;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 border-top: 5px solid #FFF;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:after {
 width: 0;
 height: 25px;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 border-left: 5px solid #FFF;
 transition: .3s;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion.open .iconBox:after {
 height: 0;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer {
 width: 100%;
 margin: 0;
 padding: 0;
 display: none;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer .faqBody {
 min-height: 80px;
 margin: 0 0 20px;
 padding: 0 50px 20px 75px;
 display: block;
 position: relative;
 line-height: 1.6;
 border-bottom: 1px dotted #000;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer .faqBody::before {
 width: 60px;
 height: 60px;
 margin: 0;
 padding: 6px 0 0;
 position: absolute;
 left: 0;
 content: "A";
 text-align: center;
 color: #FFF;
 font-size: 26px;
 font-weight: bold;
 border-radius: 50%;
 background: #FF9600;
 -ms-flex-item-align: start;
 -webkit-align-self: flex-start;
 align-self: flex-start;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer .faqBody p {
 -ms-flex-item-align: center;
 -webkit-align-self: center;
 align-self: center;
}

#dojo #pageBox .innerBlock .innerBox .calendarBox {
 height: 0;
 margin: 0 0 10px;
 padding: 30px 0 56.25%;
 position: relative;
 overflow: hidden;
}
   
#dojo #pageBox .innerBlock .innerBox .calendarBox iframe,
#dojo #pageBox .innerBlock .innerBox .calendarBox object,
#dojo #pageBox .innerBlock .innerBox .calendarBox embed {
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
}

@media screen and (max-width:768px) {
#dojo #pageBox .innerBlock .innerBox p.name {
 font-size: 16px;
}

#dojo #pageBox .innerBlock .innerBox:nth-of-type(3) p strong {
 font-size: 16px;
}

#dojo #pageBox .innerBlock .innerBox .profileBox {
 margin-top: 25px;
 padding: 20px 0;
}

#dojo #pageBox .innerBlock .innerBox .profileBox h4 {
 padding-bottom: 10px;
 font-size: 16px;
}

#dojo #pageBox .innerBlock .innerBox .profileBox p {
 margin-bottom: 15px;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl dt {
 width: 90px;
 padding: 7px 20px 8px;
}

#dojo #pageBox .innerBlock .innerBox .profileBox dl dd {
 margin-left: 90px;
 padding: 7px 20px 8px 0;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock {
 margin: 30px 0 20px;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock h4 {
 margin-bottom: 15px;
 font-size: 18px;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol {
 padding-top: 15px;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol li {
 margin-bottom: 15px;
 padding: 0 10px 10px 37px;
}

#dojo #pageBox .innerBlock .innerBox .flowBlock ol li:before {
 top: 2px;
 left: 10px;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead {
 min-height: 45px;
 padding: 0 45px 0 55px;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: start;
 -webkit-justify-content: flex-start;
 -ms-flex-pack: start;
 justify-content: flex-start;
 -webkit-box-align: center;
 -moz-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead::before {
 width: 45px;
 height: 45px;
 padding-top: 5px;
 font-size: 22px;
 -ms-flex-item-align: start;
 -webkit-align-self: flex-start;
 align-self: flex-start;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead p {
 font-size: 20px;
 -ms-flex-item-align: center;
 -webkit-align-self: center;
 align-self: center;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox {
 width: 30px;
 height: 30px;
 margin-top: -14px;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:before {
 width: 19px;
 border-top: 4px solid #FFF;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .iconBox:after {
 height: 19px;
 border-left: 4px solid #FFF;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer .faqBody {
 min-height: 66px;
 margin-bottom: 15px;
 padding: 0 45px 15px 55px;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqAnswer .faqBody::before {
 width: 45px;
 height: 45px;
 padding-top: 4px;
 font-size: 22px;
}

#dojo #pageBox .innerBlock .innerBox .calendarBox {
 margin-bottom: 0;
}
}

@media screen and (max-width:568px) {
#dojo #pageBox .innerBlock .innerBox .profileBox p {
 text-align: left;
}

#dojo #pageBox .innerBlock .faqList .faqBox .faqQuestion .faqHead p {
 font-size: 18px;
}
}

/*------------------------------------------------------------------------------
　Price
-------------------------------------------------------------------------------*/

#price #pageBox .innerBlock p {
 margin-bottom: 40px;
 text-align: center;
}

#price #pageBox .innerBlock .innerBox h3 {
 width: 270px;
 margin: 0 auto 20px;
 display: block;
 color: #000;
 border-radius: 25px;
 background: #FFD600;
}

#price #pageBox .innerBlock .innerBox p {
 margin-bottom: 20px;
}

#price #pageBox .innerBlock .innerBox p.discountText {
 margin-bottom: 0;
 color: #F00;
 font-size: 20px;
}

#price #pageBox .innerBlock .innerBox table {
 margin-bottom: 0;
}

#price #pageBox .innerBlock .innerBox table tbody tr th {
 width: 50%;
}

@media screen and (max-width:768px) {
#price #pageBox .innerBlock p {
 margin-bottom: 25px;
}

#price #pageBox .innerBlock .innerBox h3,
#price #pageBox .innerBlock .innerBox p {
 margin-bottom: 15px;
}

#price #pageBox .innerBlock .innerBox p.discountText {
 font-size: 18px;
}

#price #pageBox .innerBlock .innerBox table tbody tr th,
#price #pageBox .innerBlock .innerBox table tbody tr td {
 width: 100%;
 text-align: center;
}
}

@media screen and (max-width:568px) {
#price #pageBox .innerBlock p {
 text-align: left;
}

#price #pageBox .innerBlock .innerBox p.discountText {
 text-align: center;
}
}

/*------------------------------------------------------------------------------
　Member
-------------------------------------------------------------------------------*/

#member #pageBox .innerBlock {
 padding-bottom: 30px;
 overflow: visible;
}

#member #pageBox .innerBlock .voiceList {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 0;
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-flex-wrap: wrap;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -webkit-justify-content: space-between;
 -ms-flex-pack: justify;
 justify-content: space-between;
}

#member #pageBox .innerBlock .voiceList .voiceBox {
 width: 48.5%;
 margin: 0 0 35px;
 padding: 30px;
 text-align: left;
 box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

#member #pageBox .innerBlock .voiceList .voiceBox .photoBox {
 clear: both;
 width: 100%;
 margin: 0 0 15px;
 padding: 0;
 text-align: center;
}

#member #pageBox .innerBlock .voiceList .voiceBox .photoBox img {
 clear: both;
 max-width: 150px;
 margin: 0 auto 5px;
 padding: 0;
 display: block;
}

#member #pageBox .innerBlock .voiceList .voiceBox .photoBox p.name {
 clear: both;
 margin: 0;
 padding: 0;
 color: #002776;
 font-weight: bold;
}

#member #pageBox .innerBlock .summaryBox {
 clear: both;
 margin: 0;
 padding: 0;
 overflow: hidden;
}

#member #pageBox .innerBlock .summaryBox p.question {
 clear: both;
 margin: 0 0 5px;
 padding: 0;
 text-align: center;
 color: #009B3A;
 font-size: 20px;
 font-weight: bold;
}

#member #pageBox .innerBlock .summaryBox p.answer {
 clear: both;
 margin: 0 0 15px;
 padding: 0;
}

#member #pageBox .innerBlock .summaryBox p.answer:last-child {
 margin-bottom: 0;
}

@media screen and (max-width:768px) {
#member #pageBox .innerBlock {
 padding-bottom: 15px;
}

#member #pageBox .innerBlock .voiceList .voiceBox {
 width: 100%;
 margin-bottom: 25px;
 padding: 15px;
}

#member #pageBox .innerBlock .voiceList .voiceBox .photoBox {
 margin-bottom: 5px;
}

#member #pageBox .innerBlock .voiceList .voiceBox .photoBox img {
 max-width: 100px;
}

#member #pageBox .innerBlock .summaryBox p.question {
 margin-bottom: 2px;
 font-size: 18px;
}

#member #pageBox .innerBlock .summaryBox p.answer {
 margin-bottom: 10px;
}
}

/*------------------------------------------------------------------------------
　Privacy Policy
-------------------------------------------------------------------------------*/

#policy #pageBox .innerBlock p.leadText {
 margin-bottom: 45px;
}

#policy #pageBox .innerBlock .innerBox p {
 clear: both;
 margin-bottom: 0;
}

@media screen and (max-width:768px) {
#policy #pageBox .innerBlock p.leadText {
 margin-bottom: 25px;
}
}

/*------------------------------------------------------------------------------
　Contact
-------------------------------------------------------------------------------*/

section#contactBlock:first-of-type .innerBlock {
 padding-bottom: 70px;
}

#contact .contactBox {
 clear: both;
 width: 100%;
 margin: 0 0 35px;
 padding: 0;
 overflow: hidden;
}

#contact .mw_wp_form_complete .contactBox {
 margin-bottom: 0;
}

#contact .contactBox p {
 text-align: center;
}

#contact table {
 margin-bottom: 40px;
}

#contact .mwform-zip-field,
#contact .mwform-tel-field {
 vertical-align: middle;
}

#contact .mwform-tel-field {
 width: 100%;
 display: block;
}

#contact .mw_wp_form .horizontal-item + .horizontal-item {
 margin-left: 10px!important;
}

#contact .mwform-checkbox-field input,
#contact .mwform-radio-field input {
 margin-top: 7px!important;
 margin-right: 1px!important;
}

.mw_wp_form .error {
 margin-top: 5px;
 display: block;
 color: #F00!important;
 font-size: 14px!important;
}

#contact .contactButton {
 clear: both;
 width: 100%;
 max-width: 615px;
 margin: 0 auto 10px;
 padding: 0;
 text-align: center;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}

#contact .contactButton .btnBack,
#contact .contactButton .btnNext {
 width: 48%;
 max-width: 300px;
 height: 60px;
 margin: 0 auto;
 padding: 0 30px 0;
 display: block;
 color: #FFF;
 font-weight: normal;
 border-radius: 7px;
 -webkit-transition: all .3s;
 transition: all .3s;
}

#contact .contactButton .btnBack {
 margin-right: 15px;
 border: 2px solid #999;
 background: #999;
}

#contact .contactButton .btnBack:hover {
 color: #999;
 border: 2px solid #999;
 background: #FFF;
}

#contact .contactButton .btnNext {
 border: 2px solid #009B3A;
 background: #009B3A;
}

#contact .contactButton .btnNext:hover {
 color: #009B3A;
 border: 2px solid #009B3A;
 background: #FFF;
}

#contact .contactBox .contactInfo {
 clear: both;
 width: 100%;
 margin: 0;
 padding: 30px 0 0 0;
 overflow: hidden;
}

#contact .contactBox .contactInfo p {
 margin-bottom: 0;
 text-align: right;
}

#contact .contactBox .contactInfo .name {
 margin-bottom: 5px;
 font-size: 18px;
 font-weight: bold;
}

@media screen and (max-width:1200px) {
section#contactBlock:first-of-type .innerBlock {
 padding-right: 15px;
 padding-left: 15px;
}

#contact input[type="text"].formLong,
#contact input[type="email"].formLong,
#contact textarea {
 width: 100%!important;
}
}

@media screen and (max-width:768px) {
section#contactBlock:first-of-type .innerBlock {
 padding-bottom: 40px;
}

#contact .contactBox {
 margin-bottom: 25px;
}

#contact .contactBox p {
 text-align: left;
}

#contact table {
 margin-bottom: 20px;
}

#contact .mwform-checkbox-field input,
#contact .mwform-radio-field input {
 margin-top: 6px!important;
}

#contact .contactButton {
 margin-bottom: 0;
}

#contact .contactButton .btnBack,
#contact .contactButton .btnNext {
 height: 50px;
 padding: 7px 15px;
}

#contact .contactBox .contactInfo {
 padding-top: 20px;
}

#contact .contactBox .contactInfo .name {
 font-size: 16px;
}
}

@media screen and (max-width:568px) {
#contact .mw_wp_form .horizontal-item + .horizontal-item:nth-of-type(1),
#contact .mw_wp_form .horizontal-item + .horizontal-item:nth-of-type(2),
#contact .mw_wp_form .horizontal-item + .horizontal-item:nth-of-type(3) {
 clear: both;
 width: 100%;
 margin-left: 0!important;
 display: block;
}
}

@media screen and (max-width:428px) {
.mwform-tel-field input[type="text"] {
 width: 30%!important;
}

#contact .contactButton .btnBack,
#contact .contactButton .btnNext {
 width: 80%;
}

#contact .contactButton .btnBack {
 margin-right: auto;
 margin-bottom: 15px;
}
}

/*------------------------------------------------------------------------------
　404
-------------------------------------------------------------------------------*/

.error404 #pageBox .innerBlock p {
 margin-bottom: 40px;
 text-align: center;
}

.error404 #pageBox .innerBlock .pageLink a {
 color: #FFF;
 text-decoration: none;
}

.error404 #pageBox .innerBlock .pageLink a:hover {
 color: #002776;
 text-decoration: none;
}

@media screen and (max-width:1200px) {
.error404 #contents .innerBlock {
 padding-right: 0;
 padding-left: 0;
}
}

@media screen and (max-width:768px) {
.error404 #pageBox .innerBlock p {
 margin-bottom: 30px;
 text-align: left;
}
}