@charset "utf-8";
/*                下層共通
======================================================= */
/*                下層共通
======================================================= */
.lower .hdShadow {
  background: url(../media/images/common/hd_shadow.png) repeat-x left bottom;
  overflow: hidden;
  height: 10px;
  width: 100%;
  position: fixed;
  top: 60px;
  z-index: 13;
  padding-bottom: 10px;
}

@media only screen and (max-height: 600px) {
  .lower .hdShadow {
    top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .lower .hdShadow {
    top: 50px;
  }
}
.lower .bgGray {
  background-color: #f5f5f5;
}

.lower #mainArea {
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding-top: 60px;
  padding-bottom: 6em;
}

@media only screen and (max-width: 767px) {
  .lower #mainArea {
    padding-top: 50px;
  }
}
@media only screen and (max-height: 600px) {
  .lower #mainArea {
    padding-top: 50px;
  }
}
.lower #mainArea .content .col1Cont {
  padding-top: 1.5em;
}

.lower #mainArea .content .col2Cont {
  overflow: hidden;
}

.lower #mainArea .content .col2Cont .mainCont {
  float: left;
  width: 100%;
  position: relative;
  z-index: 1;
  padding-top: 1.5em;
  padding-right: 302px;
  margin-right: -244px;
}

@media only screen and (max-width: 1024px) {
  .lower #mainArea .content .col2Cont .mainCont {
    padding-right: 222px;
    margin-right: -294px;
  }
}
@media only screen and (max-width: 768px) {
  .lower #mainArea .content .col2Cont .mainCont {
    float: none;
    padding-right: 0;
    margin-right: 0;
    margin-bottom: 3em;
  }
}
.lower .mainWidth {
  max-width: 1054px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 1200px) {
  .lower .mainWidth {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .mainWidth {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .lower .mainWidth {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media only screen and (max-height: 600px) {
  .lower .mainWidth {
    padding-left: 20px;
    padding-right: 15px;
  }
}
.lower .mainTitle {
  border-bottom: 1px#ebebeb solid;
  overflow: hidden;
}

.lower .mainTitle h1, .lower .mainTitle p {
  float: left;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight: bold;
  font-size: 200%;
  line-height: 84px;
}

@media only screen and (max-width: 640px) {
  .lower .mainTitle h1, .lower .mainTitle p {
    line-height: 1.5;
    padding: 1.2em 0 1.1em 0;
  }
}
@media only screen and (max-width: 640px) {
  .lower .mainTitle.navi {
    overflow: visible;
    position: relative;
    z-index: 1;
  }
}
@media only screen and (max-width: 640px) {
  .lower .mainTitle.navi h1, .lower .mainTitle.navi p {
    float: none;
    font-family: "ＭＳ Ｐ明朝", "MS PMincho",FontAwesome;
    /* font-size: inherit; */
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .lower .mainTitle.navi h1:after, .lower .mainTitle.navi p:after {
    content: "\f13a";
    float: right;
    margin-right: 9px;
  }
}
@media only screen and (max-width: 640px) {
  .lower .mainTitle.open h1:after, .lower .mainTitle.open p:after {
    content: "\f139";
  }
}
.lower .mainTitle .branchNavi {
  float: right;
  margin-right: -1em;
}

@media only screen and (min-width: 641px) {
  .lower .mainTitle .branchNavi {
    display: block !important;
    height: auto!important;
  }
}
@media only screen and (max-width: 640px) {
  .lower .mainTitle .branchNavi {
    background-color: #ffffff;
    display: none;
    position: relative;
    float: none;
    width: 100%;
    margin-top: -2em;
    margin-right: 0;
    z-index: 10;
  }
}
.lower .mainTitle .branchNavi ul {
  display: table;
}

.lower .mainTitle .branchNavi ul li {
  display: table-cell;
  vertical-align: middle;
  width: 5.1em;
  text-align: center;
}

.lower .mainTitle .branchNavi ul li a {
  border-bottom: 2px #ffffff solid;
  display: inline-block;
  line-height: 66px;
  padding: 16px 0.8em 0 0.8em;
}

@media only screen and (max-width: 640px) {
  .lower .mainTitle .branchNavi ul {
    width: 100%;
  }

  .lower .mainTitle .branchNavi ul li {
    width: 14.2857143%;
  }

  .lower .mainTitle .branchNavi ul li a {
    line-height: 3em;
    padding: 0;
  }
}
.lower#news.all .branchNavi li.branchNavi01 a {
  border-bottom: 2px #e72c2e solid !important;
}

.lower#news.osaka .branchNavi li.branchNavi02 a {
  border-bottom: 2px #e72c2e solid !important;
}

.lower#about .mainTitle .branchNavi ul li {
  width: 8em;
}

.lower#membership .mainTitle .branchNavi ul li {
  width: 11em;
}

.lower .sidebar {
  float: right;
  width: 244px;
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 1024px) {
  .lower .sidebar {
    width: 194px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .sidebar {
    float: none;
    width: 100%;
  }
}
.lower .sidebar .sideVoice {
  padding-top: 1.5em;
}

.lower .sidebar .sideVoice ul li img {
  width: 100%;
}

.lower .sidebar .sideVoice ul li + li {
  margin-top: 0.8em;
}

.lower .sidebar .sideBnr {
  margin-top: 2.3em;
}

.lower .sidebar .sideBnr ul li img {
  width: 100%;
}

.lower .sidebar .sideBnr ul li + li {
  margin-top: 0.8em;
}

@media only screen and (max-width: 767px) {
  .lower .sidebar .sideNavi {
    display: none;
  }
}
.lower .sidebar .sideNavi ul li {
  border-bottom: 1px #ebebeb solid;
}

.lower .sidebar .sideNavi ul li a {
  display: block;
  padding: 1.8em 1em 1.7em 1em;
}

@media only screen and (max-width: 768px) {
  .lower .sidebar .sideVoice, .lower .sidebar .sideBnr {
    overflow: hidden;
    margin-right: -5px;
    margin-left: -5px;
    margin-bottom: -10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .sidebar .sideVoice ul li, .lower .sidebar .sideBnr ul li {
    width: 25%;
    float: left;
    padding: 0 5px;
    margin-bottom: 10px;
  }

  .lower .sidebar .sideVoice ul li + li, .lower .sidebar .sideBnr ul li + li {
    margin-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  .lower .sidebar .sideVoice ul li, .lower .sidebar .sideBnr ul li {
    width: 50%;
  }
}
.lower #footer #ftNavi {
  overflow: hidden;
  padding-top: 2em;
  padding-bottom: 2.5em;
}

@media only screen and (max-width: 1024px) {
  .lower #footer #ftNavi {
    padding-right: 0;
  }
}
.lower #footer #ftNavi .ftNaviCol {
  float: left;
  width: 16.6666667%;
  padding-right: 1em;
}

@media only screen and (max-width: 640px) {
  .lower #footer #ftNavi .ftNaviCol {
    width: 50%;
  }
}
.lower #footer #ftNavi .ftNaviCol ul li + li {
  margin-top: 0.6em;
}

.lower #footer .copy {
  padding-top: 2em;
  padding-bottom: 2.5em;
}

.lower #footer .copy p {
  font-size: 85.7%;
  text-align: center;
}

/* ページコントロール */
.entryControl {
  background-color: #f5f5f5;
  padding: 1em 1em 0.9em 1em;
  margin-top: 3em;
}

.entryControl ul {
  position: relative;
  text-align: center;
}

.entryControl ul li {
  display: inline-block;
}

.entryControl ul li.prev {
  position: absolute;
  left: 0;
  font-family: "メイリオ", Meiryo,FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.entryControl ul li.prev:before {
  content: "\f137";
  margin-right: 0.5em;
}

.entryControl ul li.entryInfo .date:after {
  content: "|";
  position: relative;
  top: -1px;
  margin: 0 0.5em;
}

.entryControl ul li.next {
  position: absolute;
  right: 0;
  font-family: "メイリオ", Meiryo,FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.entryControl ul li.next:after {
  content: "\f138";
  margin-left: 0.5em;
}

.youtube, .gmap {
  position: relative;
  height: 0;
  padding: 30px 0 56.25%;
  overflow: hidden;
}

.youtube iframe, .gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*                ページネーション
======================================================= */
.pagination {
  text-align: center;
}

.pagination ul {
  display: inline-block;
  padding-left: 0;
  margin-top: 3em;
}

.pagination ul li {
  display: inline-block;
  overflow: hidden;
}

.pagination ul li:first-child {
  border-left: none;
}

.pagination ul li:first-child a, .pagination ul li:first-child span {
  margin-left: 0;
}

.pagination ul li a, .pagination ul li span {
  display: block;
  position: relative;
  padding: 4px 12px;
  text-decoration: none;
  margin-left: 6px;
}

.pagination ul li.active a, .pagination ul li.active span {
  z-index: 2;
  cursor: default;
  background-color: #e6e6e6;
}

.pagination ul li.active a:focus, .pagination ul li.active span:focus {
  z-index: 2;
  cursor: default;
  background-color: #e6e6e6;
  border-color: #e6e6e6;
}

.pagination ul li a:hover {
  z-index: 2;
  background-color: #e6e6e6;
}

@media only screen and (max-width: 640px) {
  .pagination ul li {
    font-size: 77.8%;
  }
}
@media only screen and (max-width: 480px) {
  .pagination ul li {
    font-size: 61.1%;
  }
}
@media only screen and (max-width: 480px) {
  .pagination ul li a, .pagination ul li span {
    padding: 3px 6px;
    margin-left: 6px;
  }
}
/*                レイアウト
======================================================= */
/*                記事系
======================================================= */
.pagenation {
  text-align: center;
}
.pagenation ul {
  display: inline-block;
  padding-left: 0;
  margin-top: 4.375em;
}
.pagenation ul li {
  display: inline-block;
  overflow: hidden;
  font-size: 87.5%;
}
@media only screen and (max-width: 640px) {
  .pagenation ul li {
    font-size: 75%;
  }
}
@media only screen and (max-width: 480px) {
  .pagenation ul li {
    font-size: 68.8%;
  }
}
.pagenation ul li:first-child a, .pagenation ul li:first-child span {
  margin-left: 0;
}
.pagenation ul li.prev a, .pagenation ul li span, .pagenation ul li.next a, .pagenation ul li span {
  border: 1px #ffffff solid;
}
.pagenation ul li a, .pagenation ul li span {
  border: 1px #9ea7ad solid;
  display: block;
  position: relative;
  padding: 4px 12px;
  text-decoration: none;
  margin-left: 6px;
}
@media only screen and (max-width: 480px) {
  .pagenation ul li a, .pagenation ul li span {
    padding: 3px 6px;
    margin-left: 6px;
  }
}
.pagenation ul li.active a, .pagenation ul li.active span {
  color: #ffffff;
  cursor: default;
  background-color: #9ea7ad;
}
.pagenation ul li.active a:focus, .pagenation ul li.active span:focus {
  color: #ffffff;
  z-index: 2;
  cursor: default;
  background-color: #9ea7ad;
  border-color: #0ecbb3;
}
.pagenation ul li a:hover {
  color: #ffffff;
  z-index: 2;
  background-color: #9ea7ad;
}

#entryDetail {
  margin-bottom: 4em;
}
#entryDetail .borderTitle {
  margin-top: 2em;
}
#entryDetail .entryCont + .entryCont {
  margin-top: 2em;
}
#entryDetail a {
  display: inline-block;
}
#entryDetail a.entryCont {
  margin-top: 1.5em !important;
}
#entryDetail .entryImg {
  overflow: hidden;
}
#entryDetail .entryImg img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#entryDetail .entryImg.imgMulti {
  margin-left: -10px;
  margin-right: -10px;
  margin-bottom: -20px;
}
#entryDetail .entryImg.imgMulti .imgWrap {
  float: left;
  padding: 0 10px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryImg.imgMulti {
    margin-left: -5px;
    margin-right: -5px;
    margin-bottom: -10px;
  }
  #entryDetail .entryImg.imgMulti .imgWrap {
    padding: 0 5px;
    margin-bottom: 10px;
  }
}
#entryDetail .entryImg.img2 .imgWrap {
  width: 50%;
}
#entryDetail .entryImg.img3 .imgWrap {
  width: 33.3333333%;
}
#entryDetail .entryImgR {
  overflow: hidden;
}
#entryDetail .entryImgR .entryImgTxt {
  float: right;
  width: 100%;
  padding-left: 320px;
  margin-left: -300px;
}
#entryDetail .entryImgR .entryImgTxt h3 {
  font-size: 125%;
  font-weight: bold;
  margin-bottom: 0.1em;
}
@media only screen and (max-width: 1300px) {
  #entryDetail .entryImgR .entryImgTxt {
    padding-left: 270px;
    margin-left: -250px;
  }
}
@media only screen and (max-width: 768px) {
  #entryDetail .entryImgR .entryImgTxt {
    padding-left: 215px;
    margin-left: -200px;
  }
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryImgR .entryImgTxt {
    float: none;
    padding-left: 0;
    margin-left: 0;
  }
}
#entryDetail .entryImgR .entryImg {
  float: left;
  width: 300px;
}
@media only screen and (max-width: 1300px) {
  #entryDetail .entryImgR .entryImg {
    width: 250px;
  }
}
@media only screen and (max-width: 768px) {
  #entryDetail .entryImgR .entryImg {
    width: 200px;
  }
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryImgR .entryImg {
    float: none;
    width: 100%;
  }
  #entryDetail .entryImgR .entryImg img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.5em;
  }
}
#entryDetail .entryImgL {
  overflow: hidden;
}
#entryDetail .entryImgL .entryImgTxt {
  float: left;
  width: 100%;
  padding-right: 320px;
  margin-right: -300px;
}
#entryDetail .entryImgL .entryImgTxt h3 {
  font-size: 125%;
  font-weight: bold;
  margin-bottom: 0.1em;
}
@media only screen and (max-width: 1300px) {
  #entryDetail .entryImgL .entryImgTxt {
    padding-right: 270px;
    margin-right: -250px;
  }
}
@media only screen and (max-width: 768px) {
  #entryDetail .entryImgL .entryImgTxt {
    padding-right: 215px;
    margin-right: -200px;
  }
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryImgL .entryImgTxt {
    float: none;
    padding-right: 0;
    margin-right: 0;
  }
}
#entryDetail .entryImgL .entryImg {
  float: right;
  width: 300px;
}
@media only screen and (max-width: 1300px) {
  #entryDetail .entryImgL .entryImg {
    width: 250px;
  }
}
@media only screen and (max-width: 768px) {
  #entryDetail .entryImgL .entryImg {
    width: 200px;
  }
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryImgL .entryImg {
    float: none;
    width: 100%;
  }
  #entryDetail .entryImgL .entryImg img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.5em;
  }
}
#entryDetail .entryTable dl {
  overflow: hidden;
}
#entryDetail .entryTable dl dt, #entryDetail .entryTable dl dd {
  margin-bottom: 0.5em;
}
#entryDetail .entryTable dl dt {
  float: left;
  clear: left;
  width: 6em;
}
@media only screen and (max-width: 640px) {
  #entryDetail .entryTable dl dt {
    float: none;
    width: 100%;
    margin-bottom: 0;
  }
}
#entryDetail .entryTable dl dd {
  overflow: hidden;
}
#entryDetail .entryTable dl dd a {
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  text-decoration: underline;
}
#entryDetail .entryTable dl dd a:hover {
  text-decoration: none;
}
#entryDetail .entryTable dl dd a:before {
  content: "\f138";
  display: inline-block;
  font-size: 90%;
  margin-right: 0.3em;
}

.mainCont .news {
  margin-bottom: 2.5em;
}

.mainCont .news .newsTitle {
  border-bottom: 1px #dadada solid;
  overflow: hidden;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}

.mainCont .news .newsTitle h2 {
  font-size: 142.9%;
  float: left;
}

.mainCont .news .newsTitle .snsLink {
  float: right;
  padding-top: 0.5em;
}

.mainCont .news .newsTitle .snsLink ul {
  overflow: hidden;
}

.mainCont .news .newsTitle .snsLink ul li {
  float: left;
  margin-left: 1em;
}

.mainCont .news .newsTitle .snsLink ul li:first-child {
  margin-left: 0;
}

.mainCont .news dl {
  overflow: hidden;
}

.mainCont .news dl dt {
  float: left;
  clear: left;
}

@media only screen and (max-width: 640px) {
  .mainCont .news dl dt {
    float: none;
    margin-bottom: 0.5em;
  }
}
.mainCont .news dl dt span {
  display: inline-block;
  line-height: 1;
  margin-right: 1em;
  margin-left: 1em;
}

.mainCont .news dl dt span.cat {
  background-color: #ffffff;
  border: 1px #e30707 solid;
  color: #e30707;
  font-size: 85.7%;
  padding: 0.4em 2em 0.3em 2em;
}

.mainCont .news dl dd {
  overflow: hidden;
  padding-top: 0.1em;
  margin-bottom: 1em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.entry + .news {
  margin-top: 2em;
}

/*                お問い合わせ
======================================================= */
