@charset "UTF-8";
* {
  box-sizing: border-box;
  color: #444444;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

_:-ms-input-placeholder, :root {
  font-family: Meiryo, sans-serif; }

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  min-width: 100%;
  max-width: 100%;
  width: 100%; }

.container {
  margin: 0 auto;
  max-width: 1080px;
  padding: 0 20px; }
  @media only screen and (min-width: 740px) {
    .container {
      padding: 0 20px; } }

.big-container {
  margin: 0 auto;
  max-width: 1280px;
  padding: 0 10px; }
  @media only screen and (min-width: 740px) {
    .big-container {
      padding: 0 20px; } }

img {
  display: block;
  height: auto;
  width: 100%; }

a {
  text-decoration: none; }
  a:hover {
    opacity: 0.6;
    transition: 0.5s; }

.heading {
  border-bottom: 1px solid rgba(136, 136, 136, 0.7); }
  @media only screen and (min-width: 740px) {
    .heading {
      display: flex;
      align-items: center;
      justify-content: flex-start; } }
  .heading h2 {
    font-family: "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-weight: bold;
    font-size: 26px;
    letter-spacing: 2px; }
    @media only screen and (min-width: 740px) {
      .heading h2 {
        font-size: 30px;
        letter-spacing: 2px; } }
  .heading span {
    color: #888888;
    display: block;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 2px; }
    @media only screen and (min-width: 740px) {
      .heading span {
        margin-left: 20px;
        font-size: 18px; } }

#campaign, #facilities, #flow {
  padding-top: 80px;
  margin-top: -80px; }
  @media only screen and (min-width: 740px) {
    #campaign, #facilities, #flow {
      padding-top: 100px;
      margin-top: -100px; } }

header {
  background-color: white;
  position: fixed;
  top: 0;
  z-index: 99999;
  width: 100%; }

main {
  display: block;
  height: auto;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  margin-top: 80px; }
  @media only screen and (min-width: 740px) {
    main {
      margin-top: 100px; } }

.pc-header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 80px; }
  @media only screen and (min-width: 740px) {
    .pc-header-container {
      height: 100px; } }

.header-right-side {
  display: flex;
  align-items: center;
  justify-content: flex-end; }

#header-menus {
  display: none; }
  #header-menus a {
    display: block; }
  @media only screen and (min-width: 740px) {
    #header-menus {
      display: flex;
      align-items: center;
      justify-content: flex-end; } }

.header-logo {
  display: block;
  max-width: 140px;
  margin-right: 10px; }
  @media only screen and (min-width: 740px) {
    .header-logo {
      margin-right: 10px;
      width: 160px; } }

#sp-header-menus {
  display: none;
  padding: 40px 0 80px 0; }
  #sp-header-menus .header-menu {
    display: block;
    margin: 0 auto 20px auto !important; }
    #sp-header-menus .header-menu h4 {
      text-align: center; }
    #sp-header-menus .header-menu p {
      color: #888888;
      text-align: center; }
  #sp-header-menus .header-calling {
    border: 1px solid #888888;
    border-radius: 50px;
    display: block;
    margin: 30px auto 0 !important;
    padding: 5px;
    width: 200px; }
    #sp-header-menus .header-calling .tel-upper {
      display: flex;
      align-items: center;
      justify-content: center; }
      #sp-header-menus .header-calling .tel-upper .tel-img {
        height: auto;
        width: 12px;
        min-width: 12px;
        max-width: 12px;
        margin-right: 5px; }
    #sp-header-menus .header-calling h4 {
      letter-spacing: 1px;
      text-align: center;
      font-family: "Open Sans", sans-serif; }
    #sp-header-menus .header-calling p {
      color: #888888;
      font-size: 12px;
      text-align: center;
      letter-spacing: 1px; }

.header-menu {
  display: block;
  margin-bottom: 20px; }
  @media only screen and (min-width: 740px) {
    .header-menu {
      margin-bottom: 0px;
      margin-right: 20px; } }
  @media only screen and (min-width: 1080px) {
    .header-menu {
      margin-bottom: 0px;
      margin-right: 40px; } }
  .header-menu h4 {
    text-align: center; }
    @media only screen and (min-width: 740px) {
      .header-menu h4 {
        font-size: 14px;
        line-height: 18px; } }
    @media only screen and (min-width: 1080px) {
      .header-menu h4 {
        font-size: 18px;
        line-height: 20px; } }
  .header-menu p {
    color: #888888;
    text-align: center; }
    @media only screen and (min-width: 740px) {
      .header-menu p {
        font-size: 12px;
        line-height: 14px; } }
    @media only screen and (min-width: 1080px) {
      .header-menu p {
        font-size: 16px;
        line-height: 18px; } }

.header-calling {
  border: 1px solid #888888;
  border-radius: 50px;
  display: block;
  margin: 0 auto;
  padding: 5px;
  width: 200px; }
  @media only screen and (min-width: 740px) {
    .header-calling {
      margin-right: 20px; } }
  .header-calling .tel-upper {
    display: flex;
    align-items: center;
    justify-content: center; }
    .header-calling .tel-upper div {
      height: auto;
      width: 13px;
      margin-right: 5px; }
  .header-calling h4 {
    font-size: 18px;
    letter-spacing: 1px;
    text-align: center;
    font-family: "Open Sans", sans-serif; }
  .header-calling p {
    letter-spacing: 1px;
    color: #888888;
    font-size: 12px;
    text-align: center; }

.header-btns {
  display: flex;
  align-items: center;
  justify-content: flex-end; }

.reserve-btn {
  background-color: #2cc7bb;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: auto;
  padding: 10px;
  width: 170px; }
  @media only screen and (min-width: 740px) {
    .reserve-btn {
      width: auto;
      height: auto; } }
  @media only screen and (min-width: 1080px) {
    .reserve-btn {
      width: 200px;
      height: 60px; } }
  .reserve-btn p {
    color: white;
    font-weight: bold;
    font-size: 14px;
    line-height: 18px; }
    @media only screen and (min-width: 1080px) {
      .reserve-btn p {
        font-size: 16px;
        margin-right: 10px;
        line-height: 18px; } }
  .reserve-btn div {
    display: none; }
    @media only screen and (min-width: 1080px) {
      .reserve-btn div {
        display: flex;
        align-items: center;
        justify-content: center; } }
    .reserve-btn div i {
      color: white;
      font-weight: bold; }

#menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
  width: 30px; }
  @media only screen and (min-width: 740px) {
    #menu-btn {
      display: none; } }
  #menu-btn i {
    font-size: 30px; }

.pc-top {
  display: none;
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .pc-top {
      display: block; } 
    }

  .pc-top .big-container {
    padding: 0;
    position: relative;
    max-width: 1680px; }
  .pc-top .pc-top-cover {
    width: 100%; }
    @media only screen and (min-width: 740px) {
      .pc-top .pc-top-cover {
        height: 55vw;
        background-image: url("img/cover.jpg");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover; } }
  @media only screen and (min-width: 740px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 740px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 740px) and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-width: 740px) and (min-device-pixel-ratio: 2), only screen and (min-width: 740px) and (min-resolution: 192dpi), only screen and (min-width: 740px) and (min-resolution: 2dppx) {
    .pc-top .pc-top-cover {
      background-image: url("img/cover_200.jpg"); } }

    @media only screen and (min-width: 1080px) {
      .pc-top .pc-top-cover {
        height: 600px; } }
    .pc-top .pc-top-cover img {
      display: none; }
  .pc-top .top-title {
    position: absolute; }
    @media only screen and (min-width: 740px) {
      .pc-top .top-title {
        top: 3%;
        left: 50%;
        transform: translateX(-50%);
        width: 86%; } }
    @media only screen and (min-width: 1080px) {
      .pc-top .top-title {
        height: auto;
        top: 3%;
        left: 50%;
        transform: translateX(-50%);
        width: 900px; } }
  .pc-top .top-circle {
    position: absolute; }
    @media only screen and (min-width: 740px) {
      .pc-top .top-circle {
        bottom: 2%;
        right: 1%;
        transform: translate(-50% -50%);
        width: 27%; } }
    @media only screen and (min-width: 1080px) {
      .pc-top .top-circle {
        bottom: 20px;
        left: 50%;
        transform: translateX(76%);
        height: auto;
        width: 300px; } }

.sp-top {
  display: block;
  width: 100%; }

  @media only screen and (min-width: 740px) {
    .sp-top {
      display: none; } }
  .sp-top .big-container {
    padding: 0;
    position: relative; }
  .sp-top .sp-top-cover {
    height: auto;
    width: 100%; }
  .sp-top .top-title {
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 90%; }
  .sp-top .top-circle {
    position: absolute;
    bottom: 1%;
    right: 1%;
    transform: translate(-50% -50%);
    width: 35%; }

.example-wrap {
  background-color: #f8f8f8;
  padding: 20px 0; }
  .example-wrap h3:after {
    content: "※詳細はお問い合わせください";
    color: #888888;
    font-size: 14px;
    font-weight: normal;
    display: block; }
    @media only screen and (min-width: 740px) {
      .example-wrap h3:after {
        display: inline-block;
        margin-left: 10px; } }

.subsidy_wrap {
    background-color: #f8f8f8;
    padding: 20px 0; }

.subsidy_wrap h3:after {
    content: "※シーズンカレンダーは各施設サイトをご確認ください";
    color: #888888;
    font-size: 14px;
    font-weight: normal;
    display: block; }

@media only screen and (min-width: 740px) {
      .subsidy_wrap h3:after {
          display: inline-block;
          margin-left: 10px; 
      }
}


.examples {
  margin-top: 20px; }
  @media only screen and (min-width: 740px) {
    .examples {
      display: flex;
      align-items: stretch;
      justify-content: space-between; } }

.example {
  background-color: white;
  border: 1px solid rgba(136, 136, 136, 0.3);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  padding: 15px; }
  .example:last-child {
    margin-top: 40px; }
    @media only screen and (min-width: 740px) {
      .example:last-child {
        margin-top: 0px; } }
  @media only screen and (min-width: 740px) {
    .example {
      min-width: 48%;
      max-width: 48%; } }
  .example h5 {
    background-color: #f9e93c;
    border-radius: 50px;
    display: inline-block;
    padding: 2px 10px; }

.example-top {
  width: 100%;
  min-height: 1px; }

.price-img {
  margin: 15px 0;
  padding: 0 20px;
  width: 100%; }

.example-details {
  width: 100%;
  flex-grow: 1;
  display: none; }
  @media only screen and (min-width: 740px) {
    .example-details {
      display: flex !important;
      flex-direction: column;
      justify-content: space-between; } }

.example-detail {
  border-top: 2px dashed rgba(136, 136, 136, 0.6);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 10px 20px;
  width: 100%; }
  @media only screen and (min-width: 1080px) {
    .example-detail {
      display: flex;
      flex-direction: row;
      justify-content: space-between; } }

table {
  border-spacing: 0;
  width: 100%; }
  @media only screen and (min-width: 1080px) {
    table {
      min-width: 46%;
      max-width: 46%; } }

th {
  vertical-align: text-top;
  font-weight: normal;
  font-size: 14px;
  text-align: left;
  padding-right: 10px;
  white-space: nowrap;
  width: 1px; }

td {
  font-size: 14px; }

.example-price {
  background-color: #fffccb;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  padding: 15px 20px;
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .example-price {
      min-height: 90px; } }
  @media only screen and (min-width: 1080px) {
    .example-price {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between; } }
  .example-price p:last-child {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (min-width: 740px) {
      .example-price p:last-child {
        margin-left: 0px; } }
    @media only screen and (min-width: 1080px) {
      .example-price p:last-child {
        margin-left: 20px; } }
  .example-price strong {
    font-size: 25px; }

.example-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-top: 10px;
  text-align: center;
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .example-btn {
      display: none; } }

.Campaign-wrap .container {
  margin: 40px auto 0 auto; }
  @media only screen and (min-width: 740px) {
    .Campaign-wrap .container {
      margin: 90px auto 0 auto; } }

.campaigns {
  margin: 40px 0; }
  @media only screen and (min-width: 740px) {
    .campaigns {
      display: flex;
      align-items: center;
      justify-content: space-around;
      margin: 60px 0; } }

.campaign {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .campaign:not(:first-child) {
    margin-top: 20px; }
    @media only screen and (min-width: 740px) {
      .campaign:not(:first-child) {
        margin-top: 0px; } }
  @media only screen and (min-width: 740px) {
    .campaign {
      display: block;
      min-width: 45%;
      max-width: 45%; } }
  .campaign .arrow {
    font-size: 20px; }
    @media only screen and (min-width: 740px) {
      .campaign .arrow {
        display: none; } }
  .campaign .img-txt {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-right: 10px;
    width: 100%; }
    @media only screen and (min-width: 740px) {
      .campaign .img-txt {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-right: 0px; } }
    .campaign .img-txt .img {
      min-width: 30%;
      height: auto;
      margin-right: 20px; }
      @media only screen and (min-width: 740px) {
        .campaign .img-txt .img {
          min-width: 150px; } }
    .campaign .img-txt .txt {
      letter-spacing: 1px; }
      .campaign .img-txt .txt p:first-child {
        font-size: .9rem;
        color: #888888;
        margin-bottom: 10px; }
      .campaign .img-txt .txt p:nth-child(2) {
        font-weight: bold; }

@media screen and (max-width: 739px) {
  .fac-lower {
    position: relative;
    height: 50vw;
    overflow: hidden; }

  .white-mask::before {
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0;
    z-index: 99;
    content: "";
    width: 100%;
    height: 10vw;
    /*グラデーションで隠す高さ*/
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #fff 100%);
    background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, #fff 100%); } }
.readmore-btn {
  display: block;
  cursor: pointer;
  background-color: white;
  border: 1px solid #888888;
  box-shadow: 0 0 5px 1px rgba(136, 136, 136, 0.1);
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 5%;
  width: 80%;
  margin: 0 auto;
  margin-top: 20px; }
  @media only screen and (min-width: 740px) {
    .readmore-btn {
      display: none; } }
  .readmore-btn:before {
    content: "";
    display: block;
    width: 2px; }
  .readmore-btn div {
    display: flex;
    align-items: center;
    justify-content: center; }
  .readmore-btn p {
    font-size: 16px;
    line-height: 20px; }
    @media only screen and (max-width: 360px) {
      .readmore-btn p {
        font-size: 12px;
        line-height: 14px; } }

.facilities-wrap {
  margin: 90px auto 0 auto; }
  @media only screen and (min-width: 740px) {
    .facilities-wrap {
      margin: 90px auto 0 auto; } }

.slider {
  position: relative;
  margin-top: 4px;
  min-width: 100%; }
  .slider li {
    margin: 0 2px; }
    .slider li:focus {
      outline: none; }
  .slider .slide-img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 30vw; }
    @media only screen and (min-width: 740px) {
      .slider .slide-img {
        height: 16vw; } }
    @media only screen and (min-width: 1080px) {
      .slider .slide-img {
        height: 170px; } }
    .slider .slide-img:focus {
      outline: none; }

.slick-prev {
  left: 25px !important;
  height: 50px !important;
  width: 30px !important;
  z-index: 999; }

.slick-next {
  right: 25px !important;
  height: 50px !important;
  width: 30px !important;
  z-index: 999; }

.slick-prev::before {
  font-size: 40px !important;
  line-height: 50px !important;
  z-index: 998; }

.slick-next::before {
  font-size: 40px !important;
  line-height: 50px !important;
  z-index: 998; }

.ChangeElem_Btns {
  display: flex;
  width: 100%; }

.ChangeElem_Btn {
  display: block;
  background-color: white;
  border: 2px solid #444444;
  font-size: 12px;
  padding: 10px 0;
  position: relative;
  width: 100%;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-box-shadow: none;
  box-shadow: none;
  margin-top: 40px;
  margin-bottom: 40px; }
  .ChangeElem_Btn:not(:first-child) {
    border-left: none; }
  @media only screen and (min-width: 740px) {
    .ChangeElem_Btn {
      margin-bottom: 60px;
      font-size: 20px; } }
  .ChangeElem_Btn:focus {
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-box-shadow: none;
    box-shadow: none; }

.ChangeElem_Panel {
  display: none; }

.is-active {
  background-color: #444444;
  color: white; }
  .is-active:before {
    content: "";
    position: absolute;
    bottom: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 30px solid #444444;
    z-index: 99; }

.facility {
  width: 100%;
  overflow: hidden; }
  .facility:not(:first-child) {
    margin-top: 80px; }
    @media only screen and (min-width: 740px) {
      .facility:not(:first-child) {
        margin-top: 90px; } }

@media only screen and (min-width: 740px) {
  .fac-upper-grid {
    display: -ms-grid;
    display: grid;
    gap: 0 4px;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: auto auto/ 1fr 1fr; } }

.upper-img {
  position: relative; }
  @media only screen and (min-width: 740px) {
    .upper-img {
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      height: 100%;
      min-height: 300px;
      width: 100%;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      grid-row: 1 / 2;
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / 2; } }
  @media only screen and (min-width: 740px) {
    .upper-img .sp-upper-img {
      display: none; } }
  .upper-img .upper-img-logo {
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 20px;
    left: 20px;
    height: 80px;
    width: 150px; }
  .upper-img .academy_house_tateyama-logo {
    top: 30px;
    height: 100px;
    width: 200px; }

.lower-img {
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .lower-img {
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      grid-row: 2 / 3;
      -ms-grid-column: 1;
      -ms-grid-column-span: 2;
      grid-column: 1 / 3; } }

.fac-detail {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 20px;
  letter-spacing: .5px; }
  @media only screen and (min-width: 740px) {
    .fac-detail {
      margin-top: 0px;
      padding: 0 0 15px 15px;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      grid-row: 1 / 2;
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / 3; } }

.detail-top h2 {
  line-height: 30px; }
.detail-top .detail-locate {
  font-size: 14px;
  line-height: 18px;
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .detail-top .detail-locate .locate-icon {
    height: auto;
    min-width: 12px;
    max-width: 12px;
    margin-left: 3px;
    margin-right: 3px; }

.detail-middle {
  margin: 20px 0;
  width: 100%;
  line-height: 1.6; }

.detail-bottom {
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .detail-bottom {
      display: flex;
      align-items: center;
      justify-content: space-between; } }

.moreinfo-links {
  margin-right: 10px; }
  .moreinfo-links .moreinfo-link {
    display: flex;
    align-items: center;
    justify-content: flex-start; }
    .moreinfo-links .moreinfo-link:not(:first-child) {
      margin-top: 10px; }
    .moreinfo-links .moreinfo-link .moreinfo-triangle {
      height: auto;
      width: auto;
      min-width: 8px;
      max-width: 8px;
      margin-right: 5px; }
    .moreinfo-links .moreinfo-link p {
      line-height: 18px; }
      @media screen and (max-width: 739px) {
        .moreinfo-links .moreinfo-link p {
          text-decoration: underline; } }

.reserve-btn-container {
  margin-top: 20px; }
  @media only screen and (min-width: 740px) {
    .reserve-btn-container {
      margin-top: 0px;
      width: 50%; } }

.fac-reserve-btn {
  background-color: #2cc7bb;
  border-radius: 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: auto;
  margin: 0 auto;
  padding: 10px;
  width: 85%; }
  .fac-reserve-btn:before {
    content: "";
    display: block;
    width: 16px; }
  @media only screen and (min-width: 740px) {
    .fac-reserve-btn {
      justify-content: center;
      height: auto;
      margin: 0 0 0 auto;
      width: 100%; }
      .fac-reserve-btn:before {
        content: "";
        display: none; } }
  @media only screen and (min-width: 1080px) {
    .fac-reserve-btn {
      height: 60px; } }
  .fac-reserve-btn p {
    color: white;
    font-weight: bold;
    margin-right: 10px;
    line-height: 24px; }
  .fac-reserve-btn div {
    display: flex;
    align-items: center;
    justify-content: center; }
    .fac-reserve-btn div i {
      color: white;
      font-weight: bold; }

.sports-title {
  margin-top: 30px; }
  @media only screen and (min-width: 740px) {
    .sports-title {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      margin-top: 20px; } }
  .sports-title h3 {
    font-size: 16px; }
  .sports-title .sports-color {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: flex-start; }
    @media only screen and (min-width: 740px) {
      .sports-title .sports-color {
        margin-top: 0; } }
    .sports-title .sports-color .sport-label {
      min-height: 5px;
      min-width: 20px;
      margin: 0 5px 0 10px; }

.light-blue-label {
  background-color: #66c9f9; }

.blue-label {
  background-color: #396db2; }

.sports {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin-top: 10px;
  width: 100%; }
  @media only screen and (min-width: 740px) {
    .sports {
      margin-top: 10px; } }

.sport {
  height: 20vw;
  width: calc(100% / 5); }
  @media only screen and (min-width: 740px) {
    .sport {
      height: 10vw;
      margin: calc(4% / 20);
      width: calc(96% / 10); } }
  @media only screen and (min-width: 1080px) {
    .sport {
      height: 100px;
      width: calc(96% / 10); } }
  @media screen and (max-width: 739px) {
    .sport {
      border: 2px solid #f8f8f8; }
      .sport:nth-child(1) {
        border-left: none; }
      .sport:nth-child(-n + 5) {
        border-top: none;
        border-left: none; }
      .sport:nth-child(5) {
        border-right: none; }
      .sport:nth-child(6) {
        border-left: none; }
      .sport:nth-child(n + 6) {
        border-top: none;
        border-bottom: none;
        border-left: none; }
      .sport:nth-child(10) {
        border-right: none; } }

.sport-container {
  padding: 1%;
  width: 100%;
  height: 100%; }
  .sport-container .sport-img {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    height: 60%;
    margin: 0 auto;
    margin-top: 10%;
    width: 90%; }
  .sport-container .sport-txt {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 25%; }
    .sport-container .sport-txt p {
      font-size: 8px;
      line-height: 10px;
      text-align: center; }
      @media only screen and (min-width: 1080px) {
        .sport-container .sport-txt p {
          font-size: 12px;
          line-height: 12px; } }

@media only screen and (min-width: 740px) {
  .lb {
    border: 2px solid #66c9f9; } }

@media only screen and (min-width: 740px) {
  .bl {
    border: 2px solid #396db2; } }

.fac-info {
  border: 2px dashed rgba(136, 136, 136, 0.6);
  margin-top: 20px;
  padding: 20px 10px; }
  @media only screen and (min-width: 740px) {
    .fac-info {
      display: flex;
      align-items: center;
      padding: 20px 30px;
      margin-top: 20px; } }
  .fac-info h3 {
    font-size: 16px;
    margin-bottom: 10px; }
    @media only screen and (min-width: 740px) {
      .fac-info h3 {
        margin-bottom: 0px;
        margin-right: 20px;
        white-space: nowrap; } }
  .fac-info .private-neighbor {
    display: flex;
    align-items: center; }
    .fac-info .private-neighbor:last-child {
      margin-top: 20px; }
    .fac-info .private-neighbor h4 {
      border-radius: 50px;
      color: white;
      display: inline-block;
      margin-right: 10px;
      padding: 0px 20px;
      white-space: nowrap; }
    .fac-info .private-neighbor p {
      line-height: 20px; }

.flow-wrap .container {
  margin: 100px auto; }

.flow_desc span {
	display: block;
	font-weight: bold;
}

.flow_desc {
	display: block;
}

.flow_desc p:first-child {
	width: 100%;
}

.flow_desc p:last-child {
	width: 100%;
}

.flow_desc p:nth-child(2) {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	width: 100%;
}

.desc_tag {
	align-items: center;
	display: -webkit-flex;
	display: flex;
}

.flow_desc .desc_tag::before {
	margin-right: 5px;
	border-top: 1px solid #ccc;
	content: "";
	flex-grow: 1;
}

.flow_desc .desc_tag::after {
	margin-left: 5px;
	border-top: 1px solid #ccc;
	content: "";
	flex-grow: 1;
}

@media only screen and (min-width: 740px) {

	/*.flow_desc {
		align-items: center;
		display: -webkit-flex;
		display: flex;
	}

	.flow_desc p:first-child {
		width: 45%;
	}

	.flow_desc p:last-child {
		width: 45%;
	}*/

	.flow_desc p:nth-child(2) {
		font-size: 20px;
		font-weight: bold;
		text-align: center;
		/*width: 10%;*/
	}

	/*.desc_tag {
		display: block;
	}*/

	/*.flow_desc .desc_tag::before {
		border-top: none;
	}

	.flow_desc .desc_tag::after {
		border-top: none;
	}*/
}

.flows {
  margin-top: 50px; }
  @media only screen and (min-width: 740px) {
    .flows {
      background-image: url("img/contact_pc.png");
      background-position: top right;
      background-repeat: no-repeat;
      background-size: 20%; } }
  @media only screen and (min-width: 740px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 740px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 740px) and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-width: 740px) and (min-device-pixel-ratio: 2), only screen and (min-width: 740px) and (min-resolution: 192dpi), only screen and (min-width: 740px) and (min-resolution: 2dppx) {
    .flows {
      background-image: url("img/contact_pc_200.png"); } }

@media only screen and (min-width: 740px) {
  .flow {
    display: flex; }
    .flow:not(:last-child) .flow-step-container {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start; }
      .flow:not(:last-child) .flow-step-container:after {
        background-color: #888888;
        content: '';
        display: block;
        flex-grow: 1;
        width: 1px; } }
@media only screen and (min-width: 740px) {
  .flow .flow-step-container {
    margin-right: 20px; } }
.flow .flow-step {
  background-color: #f6ea60;
  border-radius: 50px;
  padding: 2px 20px;
  white-space: nowrap;
  display: inline-block; }
.flow .flow-txt {
  margin: 10px; }
  @media only screen and (min-width: 740px) {
    .flow .flow-txt {
      margin-top: 0; } }
  .flow .flow-txt h4 {
    padding: 2px 0; }
  .flow .flow-txt p {
    margin: 5px 0 30px 0; }
    @media only screen and (min-width: 740px) {
      .flow .flow-txt p {
        margin: 10px 0 50px 0; } }

.contact-wrap .container .contact {
  background-color: #f8f8f8;
  padding: 30px 20px; }
  @media only screen and (min-width: 740px) {
    .contact-wrap .container .contact h4 {
      text-align: center; } }

.contact-btns {
  margin-top: 20px; }
  @media only screen and (min-width: 740px) {
    .contact-btns {
      display: flex;
      justify-content: space-between;
      margin-top: 20px; } }

.contact-btn {
  background-color: #2cc7bb;
  border-radius: 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;
  margin: 0 auto;
  padding: 10px 20px;
  width: 100%; }
  .contact-btn:last-child {
    margin-top: 20px; }
    @media only screen and (min-width: 740px) {
      .contact-btn:last-child {
        /*margin-top: 0px;*/
        margin: 0 auto;
         } 
       }
  @media only screen and (min-width: 740px) {
    .contact-btn {
      max-width: 45%;
      margin: 0; } }
  @media only screen and (min-width: 1080px) {
    .contact-btn {
      max-width: 45%;
      margin: 0; } }
  .contact-btn p {
    color: white;
    margin: 0 10px;
    line-height: 20px; }
    @media only screen and (min-width: 740px) {
      .contact-btn p {
        font-size: 20px;
        font-weight: bold;
        line-height: 24px; } }
  .contact-btn .arrow-icon {
    display: flex;
    align-items: center;
    justify-content: center; }
    .contact-btn .arrow-icon i {
      color: white;
      font-weight: bold; }
  .contact-btn .img {
    height: auto;
    width: 30px; }

.contact-btns .reserve-col {
  background-color: #2cc7bb; }
  .contact-btns .reserve-col:before {
    content: "";
    display: block;
    width: 16px; }
.contact-btns .line-col {
  background-color: #53b635; }

footer {
  margin-top: 60px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 740px) {
    footer {
      margin-top: 120px;
      margin-bottom: 80px; } }
  footer p {
    text-align: center;
    font-size: 12px;
    color: #888888; }

/*# sourceMappingURL=stylesheet.css.map */


.tus_note {
    background-color: #444;
    margin: 0 auto;
    max-width: 1600px;
    padding: 3px;
  }

.tus_note p {
    color: #fff;
    font-size: 12px;
    letter-spacing: 1.4px;
    text-align: center;
  }


@media only screen and (min-width: 740px) {

.tus_note {
  background-color: #444;
  margin: 0 auto;
  max-width: 1680px;
  padding: 7px;
  }

.tus_note p {
  color: #fff;
  font-size: 16px;
  letter-spacing: 1.4px;
  text-align: center;
  }
}


/*20190228 吹き出し追加*/
.header_sp {
  display: none;
}


.balloon_pc {
  display: none;
}

.linecv_note {
  margin: 10px 0;
}

.linecv_note p {
  color: #ef1040;
  font-size: 14px;
  font-weight: bold;
}

.step_in {
  border: solid 1px #0fbb03;
  margin: 2em 0;
  padding: 0.5em 1em;
  position: relative;
}

.step_in_title {
  background: #FFF;
  color: #0fbb03;
  display: inline-block;
  font-weight: bold;
  left: 10px;
  line-height: 1;
  padding: 0 10px;
  position: absolute;
  top: -13px;
}

.balloon_sp {
  margin: 0 auto;
  position: relative;
  top: -20px;
  width: 200px;
}

.balloon_sp:before {
  border: 8px solid transparent;
  border-bottom: 8px solid #faeb00;
  content: "";
  left: 10px;
  position: absolute;
  top: 15px;
  z-index: 0;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.balloon_pc :before {
  border: 8px solid transparent;
  border-bottom: 8px solid #faeb00;
  bottom: -7px;
  content: "";
  position: absolute;
  right: 110px;
  z-index: 0;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.balloon_in {
  background: #faeb00;
  border-radius: 4px;
  box-sizing: border-box;
  color: #444;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  height: 25px;
  line-height: 25px;
  position: absolute;
  text-align: center;
  vertical-align: middle;
  width: 150px;
}

.step_in .step_in_txt {
  margin: 10px 0 !important;
  padding: 0;
}

.annote {
  margin: 10px 0 0;
}

@media only screen and (min-width: 740px) {
  .balloon_pc {
    bottom: 20px;
    display: block;
    position: relative;
  }

  .linecv_note {
    margin: 10px 0 10px 55%;
  }

  .header_sp {
  display: block;
  } 



}


/*補助金額一覧tabale追加*/

.subsidy_table_note {
	color: #888888;
	font-size: 14px;
}

.table_scroll {
	margin: 20px 0 0;
}

.subsidy_table {
	border-collapse: collapse;
	max-width: 100%;
}

.subsidy_table th,
.subsidy_table td {
	border: 1px solid rgba(136, 136, 136, 0.3);
	text-align: center;
	padding: 10px 5px;
	vertical-align: middle;
	width: 33%;
}

.subsidy_table th {
	background-color: #daeefa;
}

.subsidy_table td {
	background-color: #fff;
	font-size: 18px;
	font-weight: bold;
}

.fist_column td {
	background-color: #daeefa;
	font-size: 14px;
	font-weight: normal;
	letter-spacing: -0.5px;
}


@media only screen and (min-width: 740px) {
	.subsidy_table_note {
		margin-left: 122px;
	}

	.sp_br {
		display: none;
	}

	.subsidy_table th {
		font-size: 16px;
	}

	.subsidy_table td {
		font-size: 22px;
	}

	.fist_column td {
		letter-spacing: 0;
		font-size: 16px;
	}
}


@media only screen and (min-width: 740px) {
  .temporary_table {
    width: 500px;
  }

  .fist_column td {
    background-color: #fffccb;
  }
}







