.con_pnav, .con_intro .box_int, .con_intro .box_txt, .con_overview, .con_facilities {
  width: 90%;
  max-width: 1200px;
  margin: auto
}
.con_pnav {
  margin-top: 10.41667%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_pnav {
    margin-top: 16.66667%
  }
}
@media only screen and (max-width: 767px) {
  .con_pnav {
    margin-top: 4em
  }
}
@media only screen and (min-width: 1200px) {
  .con_pnav li {
    margin: 0 2.5em
  }
}
@media print {
  .con_pnav li {
    margin: 0 2.5em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_pnav li {
    margin: 0 1em
  }
}
.con_intro {
  padding-top: 5.20833%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro {
    padding-top: 8.33333%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro {
    padding-top: 3em
  }
}
.con_intro .box_int {
  overflow: hidden
}
.con_intro .box_int h3 {
  margin: 0 9.58333% 0 0;
  font-size: 158%;
  letter-spacing: .3em;
  line-height: 2.27
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int h3 {
    margin: 0 0 1em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int h3 {
    font-size: 143%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int h3 {
    font-size: 129%
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int h3 {
    letter-spacing: .2em
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int h3 {
    letter-spacing: .1em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int h3 {
    line-height: 2
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int h3 {
    line-height: 1.75
  }
}
@media only screen and (min-width: 768px) {
  .con_intro .box_int h3 {
    float: right;
    writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    -moz-text-orientation: upright;
    -ms-text-orientation: upright;
    text-orientation: upright;
    text-align: left;
    display: inline-block;
    font-feature-settings: normal
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1560px) {
  .con_intro .box_int h3 {
    margin-right: 5.83333%
  }
}
.con_intro .box_int .txt {
  width: 830px;
  font-size: 108%;
  letter-spacing: .1em;
  line-height: 2.4
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int .txt {
    width: 69.16667%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int .txt {
    width: 100%
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int .txt {
    font-size: 100%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int .txt {
    font-size: 100%
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_int .txt {
    line-height: 2.16
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_int .txt {
    line-height: 1.72
  }
}
@media only screen and (min-width: 768px) {
  .con_intro .box_int .txt {
    float: left;
    margin-top: 7.5%
  }
}
.con_intro .box_img {
  width: 73.59375%;
  margin-top: 7.29167%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_img {
    width: 83.11765%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_img {
    width: 88.3125%
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_img {
    margin-top: 11.66667%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_img {
    margin-top: 3em
  }
}
.con_intro .box_img ul {
  display: flex
}
.con_intro .box_img ul li {
  width: 33.33333%
}
@media only screen and (max-width: 767px) {
  .con_intro .box_img ul li {
    overflow: hidden
  }
  .con_intro .box_img ul li img {
    position: relative;
    width: 120%;
    max-width: none;
    margin-left: -10%
  }
}
.con_intro .box_img ul li + li {
  margin-left: 1px
}
.con_intro .box_txt {
  margin-top: 90px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_txt {
    margin-top: 65px
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_txt {
    margin-top: 2.5em
  }
}
.con_intro .box_txt .txt {
  font-size: 108%;
  letter-spacing: .15em;
  line-height: 2.4
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_txt .txt {
    font-size: 100%
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_txt .txt {
    font-size: 100%
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_intro .box_txt .txt {
    line-height: 2.16
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_txt .txt {
    line-height: 1.72
  }
}
@media only screen and (min-width: 768px) {
  .con_intro .box_txt .txt {
    max-width: 620px;
    margin: 0 0 0 auto
  }
}
.con_intro .box_txt .txt em {
  font-size: 147%
}
.con_overview {
  padding-top: 9.375%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview {
    padding-top: 15%
  }
}
@media only screen and (max-width: 767px) {
  .con_overview {
    padding-top: 4em
  }
}
.con_overview .box_ove {
  overflow: hidden;
  padding-top: 30px
}
@media only screen and (min-width: 768px) {
  .con_overview .box_ove > * {
    float: left
  }
}
@media only screen and (min-width: 768px) and (max-width: 983px) {
  .con_overview .box_ove > * {
    float: none;
    width: 100% !important
  }
}
.con_overview .box_ove h4 {
  display: flex;
  align-items: flex-end;
  color: #002c51;
  font-size: 143%;
  letter-spacing: .15em;
  line-height: 1
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_ove h4 {
    font-size: 136%
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove h4 {
    font-size: 122%
  }
}
@media only screen and (min-width: 768px) {
  .con_overview .box_ove h4 {
    width: 28.33333%
  }
}
@media only screen and (min-width: 768px) and (max-width: 983px) {
  .con_overview .box_ove h4 {
    margin-bottom: 50px
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove h4 {
    margin-bottom: 1.5em
  }
}
.con_overview .box_ove h4:before {
  content: '';
  width: 2.5em;
  height: 1px;
  margin-right: 1em;
  background: #002c51
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove h4:before {
    width: 2em
  }
}
@media only screen and (min-width: 768px) {
  .con_overview .box_ove table {
    width: 71.66667%
  }
}
.con_overview .box_ove table tr + tr th, .con_overview .box_ove table tr + tr td {
  padding-top: 40px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_ove table tr + tr th, .con_overview .box_ove table tr + tr td {
    padding-top: 30px
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove table tr + tr th, .con_overview .box_ove table tr + tr td {
    padding-top: 1em
  }
}
.con_overview .box_ove table tr th, .con_overview .box_ove table tr td {
  vertical-align: top;
  font-size: 108%;
  letter-spacing: .1em;
  font-weight: normal;
  box-sizing: border-box
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_ove table tr th, .con_overview .box_ove table tr td {
    font-size: 100%
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove table tr th, .con_overview .box_ove table tr td {
    font-size: 100%
  }
}
.con_overview .box_ove table tr th {
  width: 140px;
  white-space: nowrap
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove table tr th {
    width: auto
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_ove table tr th {
    padding-right: 1em
  }
}
.con_overview .box_cha {
  margin-top: 6.25%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_cha {
    margin-top: 10%
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_cha {
    margin-top: 3em
  }
}
.con_overview .box_cha .st {
  max-width: 1120px;
  position: relative;
  padding: 23px 0.5em;
  margin: auto;
  background: #ecf1f5;
  text-align: center;
  font-size: 115%;
  letter-spacing: .2em
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_cha .st {
    padding: 20px 0.5em
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_cha .st {
    padding: 1em 0.5em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_cha .st {
    font-size: 108%
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_cha .st {
    font-size: 100%
  }
}
.con_overview .box_cha .st:after {
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  display: inline-block;
  margin-left: .5em;
  position: absolute;
  left: 50%;
  bottom: -.5em;
  margin: 0;
  width: 1em;
  height: 1em;
  margin-left: -.5em;
  transform: rotate(90deg);
  font-size: 150%;
  transition: bottom 400ms ease, transform 400ms ease
}
.con_overview .box_cha .img {
  margin-top: 65px;
  text-align: center
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_overview .box_cha .img {
    margin-top: 40px
  }
}
@media only screen and (max-width: 767px) {
  .con_overview .box_cha .img {
    margin-top: 1.5em
  }
}
.con_facilities {
  overflow: hidden;
  padding-top: 10.9375%
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities {
    padding-top: 17.5%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities {
    padding-top: 4em
  }
}
.con_facilities h4 {
  margin-bottom: 70px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities h4 {
    margin-bottom: 45px
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities h4 {
    margin-bottom: 2.5em
  }
}
.con_facilities .box_fac .inner + .inner {
  margin-top: 80px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner + .inner {
    margin-top: 55px
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner + .inner {
    margin-top: 3em
  }
}
.con_facilities .box_fac .inner .st {
  margin-bottom: 45px;
  margin-left: -20px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner .st {
    margin-bottom: 30px
    }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st {
    margin-bottom: 1.5em
  }
}
.con_facilities .box_fac .inner .st span {
  /*display: flex;
  align-items: flex-start;文字左横の線*/
  color: #ce6b03;
  font-size: 143%;
  letter-spacing: .15em;
  line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner .st span {
    font-size: 129%;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st span {
    font-size: 115%;
     }
}
@media only screen and (min-width: 1200px) and (max-width: 1560px) {
  .con_facilities .box_fac .inner .st span {
    font-size: 136%;
  }
}
.con_facilities .box_fac .inner .st span:before {
  content: '';
  width: 2.5em;
  height: 1px;
  margin-right: 1em;
  background: #002c51
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st span:before {
    width: 2em
  }
}
.con_facilities .box_fac .inner .st em {
  display: block;
  margin: 1em 0 0 2em;
  color: #002c51;
  font-size: 108%;
  letter-spacing: .15em
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st em {
    margin: 0.5em 0 0 3.8em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner .st em {
    font-size: 100%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st em {
    font-size: 93%
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1560px) {
  .con_facilities .box_fac .inner .st em {
    font-size: 104%
  }
}
.con_facilities .box_fac .inner .st em .des {
  display: block;
  margin: 0.5em 0 0 0;
  color: #002c51;
  font-size: 86%;
  text-indent: -1em;
  line-height: 150%
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st em .des {}
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner .st em .des {
    font-size: 75%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner .st em .des {
    font-size: 75%
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1560px) {
  .con_facilities .box_fac .inner .st em .des {
    font-size: 86%
  }
}
@media only screen and (min-width: 768px) {
  .con_facilities .box_fac .inner ul {
    display: flex;
    flex-wrap: wrap
  }
}
.con_facilities .box_fac .inner ul li {
  box-sizing: border-box;
  margin-top: 80px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li {
    margin-top: 55px;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li {
    margin-top: 2em
  }
}
@media only screen and (min-width: 1200px) {
  .con_facilities .box_fac .inner ul li {
    min-height: 400px
  }
}
@media print {
  .con_facilities .box_fac .inner ul li {
    min-height: 400px
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li {
    width: 33.33333%;
    padding-right: 5.41667%
  }
  .con_facilities .box_fac .inner ul li:nth-child(-n+3) {
    margin-top: 0
  }
}
@media only screen and (min-width: 768px) and (max-width: 983px) {
  .con_facilities .box_fac .inner ul li {
    padding-right: 3.33333%
  }
}
@media only screen and (max-width: 767px) {
  /** .con_facilities .box_fac .inner ul li:first-child {
    margin-top: 0
  }**/
  .con_facilities .box_fac .inner ul li {
    padding: 0.5em;
    margin-top: 2em;
    display: block;
    border: dashed #C2C2C2 1px;
    font-size: 90%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_img {
    width: 30%;
    margin: auto
  }
  .con_facilities .box_fac .inner ul li .wrp_img img {
    width: 100%
  }
}
.con_facilities .box_fac .inner ul li .wrp_txt {
  margin-top: 25px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li .wrp_txt {
    margin-top: 20px
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt {
    margin-top: 1em
  }
}
.con_facilities .box_fac .inner ul li .wrp_txt .sst {
  font-size: 115%;
  letter-spacing: .1em
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li .wrp_txt .sst {
    font-size: 115%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt .sst {
    font-size: 108%
  }
}
.con_facilities .box_fac .inner ul li .wrp_txt .sst:after {
  content: '';
  display: block;
  width: 1.875em;
  height: 2px;
  background: #333;
  margin: 1em 0 1.5em
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt .sst:after {
    margin: 1em 0
  }
}
.con_facilities .box_fac .inner ul li .wrp_txt address, .con_facilities .box_fac .inner ul li .wrp_txt .txt {
  font-size: 100%;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Ｐゴシック", "MS PGothic", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif;
  letter-spacing: .1em;
  line-height: 1.86
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li .wrp_txt address, .con_facilities .box_fac .inner ul li .wrp_txt .txt {
    font-size: 100%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt address, .con_facilities .box_fac .inner ul li .wrp_txt .txt {
    font-size: 93%
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt address, .con_facilities .box_fac .inner ul li .wrp_txt .txt {
    line-height: 1.7
  }
}
.con_facilities .box_fac .inner ul li .wrp_txt .lnk {
  margin-top: 20px
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac .inner ul li .wrp_txt .lnk {
    margin-top: 15px
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac .inner ul li .wrp_txt .lnk {
    margin-top: .8em
  }
}
@media only screen and (min-width: 1200px) {
  .con_facilities .box_fac.fac1 {
    float: left;
    width: 66.66667%
  }
}
@media print {
  .con_facilities .box_fac.fac1 {
    float: left;
    width: 66.66667%
  }
}
@media only screen and (min-width: 1200px) {
  .con_facilities .box_fac.fac1 .inner ul li {
    width: 50%;
    padding-right: 8.125%
  }
  .con_facilities .box_fac.fac1 .inner ul li:nth-child(-n+2) {
    margin-top: 0
  }
}
@media print {
  .con_facilities .box_fac.fac1 .inner ul li {
    width: 50%;
    padding-right: 8.125%
  }
  .con_facilities .box_fac.fac1 .inner ul li:nth-child(-n+2) {
    margin-top: 0
  }
}
.con_facilities .box_fac.fac2 {
  margin-top: 0
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac.fac2 {
    margin-top: 65px
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac.fac2 {
    margin-top: 3em
  }
}
@media only screen and (max-width: 1199px) {
  .con_facilities .box_fac.fac2 {
    padding-top: 11.66667%;
    border-top: 1px solid #c9c9c9
  }
}
@media only screen and (max-width: 1199px) and (max-width: 767px) {
  .con_facilities .box_fac.fac2 {
    padding-top: 2.5em
  }
}
@media only screen and (min-width: 1200px) {
  .con_facilities .box_fac.fac2 {
    float: right;
    width: 33.33333%;
    padding-left: 5.41667%;
    border-left: 1px solid #e4e4e4
  }
  .con_facilities .box_fac.fac2 .inner ul li:first-child {
    margin-top: 0
  }
}
@media print {
  .con_facilities .box_fac.fac2 {
    float: right;
    width: 33.33333%;
    padding-left: 5.41667%;
    border-left: 1px solid #e4e4e4
  }
  .con_facilities .box_fac.fac2 .inner ul li:first-child {
    margin-top: 0
  }
}
.con_facilities .box_fac.other {
  padding-top: 11.66667%;
  border-top: 1px solid #c9c9c9;
  /*  margin-top: 90px*/
  margin-top: 15px
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac.other {
    padding-top: 2.5em
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_facilities .box_fac.other {
    /*  margin-top: 65px */
    margin-top: 20px;
    padding-top: 2.5em
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_fac.other {
    margin-top: 3em
  }
}
@media only screen and (min-width: 1200px) {
  .con_facilities .box_fac.other {
    float: left;
    width: 100%;
    padding-top: 3em
  }
  .con_facilities .box_fac.other .inner ul li {
    width: 33.33333%;
    padding-right: 5.41667%
  }
  .con_facilities .box_fac.other .inner ul li:nth-child(-n+3) {
    margin-top: 0
  }
  .con_facilities .box_fac.other .inner ul.est li {
    width: 24%;
    padding-right: 5.41667%
  }
  .con_facilities .box_fac.other .inner ul.est li:nth-child(-n+4) {
    margin-top: 0
  }
  .con_facilities .box_fac.other .inner ul.so li {
    width: 100%;
    padding-right: 5.41667%
  }
}
@media print {
  .con_facilities .box_fac.other {
    float: left;
    width: 100%
  }
  .con_facilities .box_fac.other .inner ul li {
    width: 33.33333%;
    padding-right: 5.41667%
  }
  .con_facilities .box_fac.other .inner ul li:nth-child(-n+3) {
    margin-top: 0
  }
}