@charset "UTF-8";
@import url("reset.css");
@import url("m_menu.css");
@import url("../slider/flexslider.css");
/*共通設定-------------------------------------------------------------------------------------------------------------------------------------*/
/*基本設定*/
html {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif,"游明朝体", "Yu Mincho", YuMincho;
  line-height: 1.5;
  position: relative; }

main {
  display: block;
  position: relative; }

header a img, main a img, footer a img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease; }

header a:hover img, main a:hover img, footer a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7; }

/*ヘッダー*/
header {
  width: 100%; }
  header #header_inner {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }
    header #header_inner h1 {
      width: calc(100% - 330px);
      margin: 10px 0; }
      header #header_inner h1 img {
        width: 400px; }
    header #header_inner ul {
      width: 330px;
      margin: 10px 0;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between; }
      header #header_inner ul li:nth-child(1) {
        width: 60px; }
      header #header_inner ul li:nth-child(2) {
        width: 260px;
        margin: 0 0 0 10px; }

/*メイン*/
#message {
  width: 40%;
  position: absolute;
  bottom: 10%;
  left: -2%;
  transform: translate(-2%, -8%);
  -webkit-transform: translate(-2%, -8%);
  -ms-transform: translate(-2%, -8%);
  z-index: 1;
  background-color: #39c7d8;
  padding: 1em 2% 1em 10%;
  transform: skewX(-15deg);
  /*transformで曲げる*/ }
  #message p {
    transform: skewX(15deg); }

.back_g {
  background-color: #edf5dd;
  padding: 2em 0; }

#info {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  #info li {
    width: 48%;
    background-color: #fff; }
    #info li h3 {
      font-size: 112%;
      background-color: #87ba18;
      color: #fff;
      padding: 0.5em 2%; }
    #info li ul {
      width: 96%;
      padding: 1em 2%; }
      #info li ul li {
        width: 100%; }
        #info li ul li:nth-child(n+2) {
          margin: 0.5em 0 0; }
        #info li ul li a {
          color: #000;
          text-decoration: none; }
          #info li ul li a:hover, #info li ul li a:active {
            color: #000;
            text-decoration: underline; }
    #info li p a {
      display: block;
      color: #87ba18;
      font-weight: bold;
      text-decoration: none;
      text-align: center;
      border: 1px solid #87ba18;
      width: 150px;
      padding: 0.5em 0;
      margin: 0 auto 1.5em;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all  0.3s ease; }
      #info li p a:hover, #info li p a:active {
        background-color: #edf5dd; }

h2 {
  font-size: 187%;
  color: #87ba18;
  text-align: center;
  position: relative; }
  h2:before {
    content: '';
    position: absolute;
    bottom: -15px;
    display: inline-block;
    width: 10%;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #87ba18;
    border-radius: 2px; }

#about {
  margin: 3em auto 0; }
  #about div {
    width: 100%;
    margin: 3em 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #about div figure {
      width: 45%; }
    #about div p {
      width: 51%; }
      #about div p a {
        background-color: #39c7d8;
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        display: block;
        width: 250px;
        padding: 1em 0;
        text-align: center;
        margin: 2em 0 0;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all  0.3s ease; }
        #about div p a:hover, #about div p a:active {
          background-color: #6FD6E2;
          text-decoration: none; }

#members {
  width: 100%;
  margin: 3em 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  color: #fff;
  text-align: center; }
  #members li {
    width: 46%;
    padding: 4em 2%; }
    #members li:nth-child(1) {
      background-image: url(../img/top/back01.png);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
    #members li:nth-child(2) {
      background-image: url(../img/top/back02.png);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
  #members h3 {
    font-size: 187%; }
  #members p {
    margin: 1em 0 0;
    font-weight: bold; }
    #members p a {
      width: 48%;
      color: #fff;
      margin: 0 auto;
      display: block;
      text-decoration: none;
      border: 1px solid #fff;
      padding: 0.5em 0;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all  0.3s ease; }
      #members p a:hover, #members p a:active {
        color: #fff;
        text-decoration: none;
        background-color: rgba(255, 255, 255, 0.3); }
    #members p span {
      width: 50%;
      margin: 2em auto 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }

#merit {
  margin: 5em auto; }

#facility {
  margin: 3em auto 0; }
  #facility ul {
    margin: 3em 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #facility ul li {
      width: 31.333%; }
      #facility ul li dl dt {
        color: #87ba18;
        font-size: 125%;
        font-weight: bold;
        text-align: center;
        margin: 0 0 0.5em; }
        #facility ul li dl dt img {
          margin: 0 0 0.5em; }
  #facility p a {
    color: #fff;
    display: block;
    margin: 2em auto 0;
    padding: 1em 0;
    width: 250px;
    text-align: center;
    background-color: #39c7d8;
    text-decoration: none;
    font-weight: bold;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease; }
    #facility p a:hover, #facility p a:active {
      background-color: #6FD6E2;
      text-decoration: none;
      color: #fff; }

.back_i {
  background-image: url(../img/top/back03.png);
  background-color: rgba(255, 255, 255, 0.8);
  background-blend-mode: lighten;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 4em 0;
  margin: 3em 0 0; }

#join {
  margin: 0 auto; }
  #join div {
    margin: 3em 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #join div figure {
      width: 45%; }
    #join div dl {
      width: 51%; }
      #join div dl dt {
        font-size: 135%;
        font-weight: bold;
        margin: 0 0 0.5em; }
      #join div dl dd p {
        display: flex;
        flex-wrap: wrap; }
        #join div dl dd p a {
          color: #fff;
          display: block;
          margin: 2em 4% 0 0;
          padding: 1em 0;
          width: 250px;
          text-align: center;
          background-color: #39c7d8;
          text-decoration: none;
          font-weight: bold;
          -webkit-transition: all 0.3s ease;
          -moz-transition: all 0.3s ease;
          -o-transition: all 0.3s ease;
          transition: all  0.3s ease; }
          #join div dl dd p a:hover, #join div dl dd p a:active {
            background-color: #6FD6E2;
            text-decoration: none;
            color: #fff; }

/*フッター*/
footer {
  width: 100%; }
  footer #footer_inner {
    margin: 3em auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    footer #footer_inner #f_left {
      width: 58%;
      display: flex;
      flex-wrap: wrap; }
      footer #footer_inner #f_left li {
        margin: 0 6% 0 0; }
        footer #footer_inner #f_left li a {
          color: #87ba18;
          text-decoration: none;
          display: block; }
          footer #footer_inner #f_left li a:hover, footer #footer_inner #f_left li a:active {
            color: #39c7d8;
            text-decoration: none; }
          footer #footer_inner #f_left li a:nth-child(n+2) {
            margin: 0.5em 0 0; }
    footer #footer_inner #f_right {
      width: 38%; }
      footer #footer_inner #f_right #sns {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        footer #footer_inner #f_right #sns li {
          width: 31.333%; }
      footer #footer_inner #f_right dl {
        margin: 2em 0 0; }
        footer #footer_inner #f_right dl dt {
          width: 200px;
          margin: 0 0 0.5em; }
        footer #footer_inner #f_right dl dd {
          color: #87ba18; }
          footer #footer_inner #f_right dl dd span {
            display: block;
            border: 1px solid #87ba18;
            padding: 0.25em 2%;
            margin: 0.25em 0 0.75em; }
  footer address {
    margin: 4em 0 0;
    width: 96%;
    text-align: center;
    font-size: 87.5%;
    font-style: normal;
    padding: 1em 2% 1em;
    color: #fff;
    background-color: #87ba18; }

/*TOPへ戻るボタン設定*/
#page-top {
  position: fixed;
  bottom: 10px;
  right: 20px;
  font-size: 90%;
  z-index: 999; }
  #page-top img {
    width: 50px;
    display: block;
    margin: 0 auto 0.5em; }
  #page-top a {
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-weight: bold;
    width: 100px;
    background-color: #39c7d8;
    padding: 0.5em 0;
    border-radius: 6px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease; }
  #page-top a:hover, #page-top a:active {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7; }

/*共通設定ここまで-------------------------------------------------------------------------------------------------------------------------------------*/
/* pc */
@media screen and (min-width: 1300px) {
  /*ヘッダー*/
  #header_inner {
    width: 1280px; }

  /*メイン*/
  .sp {
    display: none; }

  #info, #about, #facility, #join {
    width: 1280px; }

  #merit {
    width: 1000px; }

  /*フッター*/
  #footer_inner {
    width: 1280px; } }
/* tablet以下共通 ------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 1299px) {
  /*ヘッダー*/
  #header_inner {
    width: 96%; }

  /*メイン*/
  #info, #about, #facility, #join {
    width: 96%; }

  /*フッター*/
  #footer_inner {
    width: 96%; } }
/* tablet以下共通ここまで ------------------------------------------------------------------------------------------*/
/* tablet1 */
@media only screen and (min-width: 1024px) and (max-width: 1299px) {
  /*基本設定*/
  html {
    font-size: 16px; }

  /*ヘッダー*/
  /*メイン*/
  .sp {
    display: none; }

  #message {
    padding: 1em 2% 1em 5%; }

  #members p span {
    width: 80%; }

  #merit {
    width: 900px; }

  #join div dl dd p a {
    width: 200px; }

  /*フッター*/ }
/* tablet2  */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  /*基本設定*/
  html {
    font-size: 85%; }

  /*ヘッダー*/
  header #header_inner h1 img {
    width: 350px; }

  /*メイン*/
  .sp {
    display: none; }

  #message {
    padding: 1em 2% 1em 5%; }

  #members p span {
    width: 80%; }

  #merit {
    width: 96%; }

  #join div dl dd p a {
    width: 160px; }

  /*フッター*/ }
/* tablet3  */
@media only screen and (max-width: 767px) {
  /*基本設定*/
  html {
    font-size: 85%; }

  /*ヘッダー*/
  .pc {
    display: none; }

  header {
    position: fixed;
    top: 0;
    z-index: 101;
    width: 100%;
    box-shadow: 0 2px 8px rgba(70, 70, 70, 0.3); }
    header #wrap {
      width: 100%;
      background-color: #fff; }
    header #header_inner {
      width: 98%;
      margin: 0 0 0 2%;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between; }
      header #header_inner h1 {
        width: calc(100% - 100px);
        margin: 0; }
        header #header_inner h1 img {
          width: 200px; }
      header #header_inner ul {
        width: 100px;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between; }
        header #header_inner ul li:nth-child(1) {
          display: none; }
        header #header_inner ul li:nth-child(2) {
          width: 50px;
          margin: 0; }

  /*メイン*/
  main {
    margin: 50px 0 0; }

  #message {
    width: 80%;
    padding: 1em 2% 1em 5%; }

  #info {
    flex-direction: column; }
    #info li {
      width: 100%;
      background-color: #fff; }
      #info li a {
        display: block; }
      #info li:nth-child(n+2) {
        margin: 2em 0 0; }
      #info li p a {
        width: 80%; }

  h2 {
    font-size: 160%; }
    h2 br {
      display: none; }

  #about {
    margin: 3em auto 0; }
    #about div {
      width: 100%;
      margin: 3em 0 0;
      flex-direction: column; }
      #about div figure {
        width: 100%; }
      #about div p {
        width: 100%;
        margin: 1em 0 0; }
        #about div p a {
          width: 100%;
          margin: 1em 0 0; }

  #members {
    flex-direction: column; }
    #members li {
      width: 96%;
      padding: 2em 2%; }
    #members h3 {
      font-size: 160%; }
    #members p {
      margin: 1em 0 0;
      font-weight: bold; }
      #members p a {
        width: 100%;
        margin: 1em auto 0; }
      #members p span {
        width: 80%; }

  #merit {
    width: 96%; }

  #facility {
    margin: 3em auto 0; }
    #facility ul {
      flex-direction: column; }
      #facility ul li {
        width: 100%; }
        #facility ul li:nth-child(n+2) {
          margin: 2em 0 0; }
    #facility p a {
      width: 100%; }

  .back_i {
    padding: 2em 0;
    margin: 3em 0 0; }

  #join {
    margin: 0 auto; }
    #join div {
      flex-direction: column; }
      #join div figure {
        width: 100%; }
      #join div dl {
        width: 100%;
        margin: 1em 0 0; }
        #join div dl dd p {
          display: flex;
          flex-wrap: wrap; }
          #join div dl dd p a {
            margin: 1em 0 0 0;
            padding: 1em 0;
            width: 100%; }

  /*フッター*/
  footer {
    width: 100%; }
    footer #footer_inner {
      margin: 2em auto 0;
      flex-direction: column; }
      footer #footer_inner #f_left {
        display: none; }
      footer #footer_inner #f_right {
        width: 100%; }
    footer address {
      margin: 2em 0 0; } }
/* smartPhone1 */
@media only screen and (max-width: 499px) {
  /*基本設定*/
  html {
    font-size: 80%; }

  /*ヘッダー*/
  header #header_inner h1 img {
    width: 180px; }

  /*メイン*/
  h2 {
    font-size: 145%; }

  #members h3 {
    font-size: 130%; }

  #contact {
    width: 80%; }
    #contact ul {
      flex-direction: column; }
      #contact ul li {
        width: 76%;
        height: 9em; }
        #contact ul li:nth-child(n+2) {
          margin: 1em 0 0; }

  /*フッター*/ }
