@charset "EUC-JP";
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● style_other.css                                     */
/*    その他ページ専用CSS                                 */
/*    ・ページ固有の処理を記述                            */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    各種import                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    カラー設定                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* カラー定義
 ------------------------------------ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    プロパティ                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    mixin 定義                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 疑似要素

       ::before, ::after で親要素にフィットさせる処理 （ボタンの背景など）
 ------------------------------------ */
/* サイトロゴ

  想定しているHTML構造 ※見出しレベル h1〜h6 は任意
  <h1 class="SiteLogo">
    <a href="">
      <img src="<?php $this->BcBaser->themeUrl(); ?>img/common/logo/site_logo.svg" alt="" />
    </a>
  </h1>

  適用例 ）
    .SiteLogo{
        @include config.site-logo();
    }
------------------------------------------------------------------------ */
/* 基本リンク

  適用例 ）
    .hogehoge{
      @include config.hvr-txt-underline();
    }
------------------------------------------------------------------------ */
/* 基本ページ幅

  適用例 ）
    .hogehoge{
        @include config.page-width-default();
    }
------------------------------------------------------------------------ */
/* スクロールバーをカスタマイズ

  適用例 ）
    .hogehoge{
        @include config.customScrollBar();
    }
------------------------------------------------------------------------ */
/* flex 関連のプロパティをまとめて定義

  適用例 ）
    .hogehoge{
        @include config.flex();
    }
    .hogehoge{
        @include config.flex(center, flex-end);
    }
------------------------------------------------------------------------ */
/* テキストを任意の行数で切る （引数で行数を指定）

   適用例 ）
    .hogehoge{
        @include config.custom_txt_overflow(2);
    }
 ------------------------------------------------------------------------ */
/* clearfix

  適用例 ）
    .hogehoge{
        @include config.clearfix();
    }
------------------------------------------------------------------------ */
/* dotline

  適用例 ）
    .hogehoge{
        @include config.dotline();
    }
------------------------------------------------------------------------ */
/* lattice パターン

  適用例 ）
    .hogehoge{
        @include config.lattice();
    }
------------------------------------------------------------------------ */
/* エリアのデザインパターン

  適用例 ）
    .hogehoge{
        @include config.decorated_area();
    }
------------------------------------------------------------------------ */
/* レスポンシブ 対応用 ブレイクポイントによる条件分岐
   適用例 ）
   @include config.media-query(under-bp-m) {
      $breakpoint-m よりも小さいウィンドウ幅の処理をここに書く
   }
 ------------------------------------------------------------------------ */
/* 単位を除去して数値のみ返す関数
 ------------------------------------------------------------------------ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    World                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    初めてご利用の方へ                            */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
body.Beginners .ContentsDivision .AboutBlock .Heading.Type2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
body.Beginners .ContentsDivision .AboutBlock .Heading.Type2 .Main img {
  width: auto;
  height: 3.5em;
}
body.Beginners .ContentsDivision .AboutBlock .Heading.Type2 .Sub {
  margin: 0.5em 0;
  font-weight: 500;
  letter-spacing: 0.05em;
  font-size: 2.2rem;
}
@media screen and (max-width: 767px) {
  body.Beginners .ContentsDivision .AboutBlock .Heading.Type2 .Sub {
    font-size: 1.9rem;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    運営団体情報                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
body.AboutUs .ContentsDivision .DefaultBlock .DecoratedBoxGroup {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
body.AboutUs .ContentsDivision .DefaultBlock .FacilityList {
  margin-top: 2.5rem;
  border-top: 1px dashed rgb(29, 195, 104);
  padding-top: 2.5rem;
}
@media screen and (min-width: 768px), print {
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList {
    gap: 1rem;
  }
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList li {
    width: calc((100% - 1rem) / 2);
  }
}
@media screen and (max-width: 767px) {
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList {
    gap: 1rem;
  }
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList li {
    width: 100%;
  }
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  body.AboutUs .ContentsDivision .DefaultBlock .FacilityList li a .ImageItem {
    width: 100%;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    サイトマップ                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
body.SiteMap .ContentsDivision {
  /* - - AuthorBlock - - */
  /* - - CopyrightBlock - - */
}
body.SiteMap .ContentsDivision .AuthorBlock,
body.SiteMap .ContentsDivision .CopyrightBlock {
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  position: relative;
}
@media screen and (min-width: 768px), print {
  body.SiteMap .ContentsDivision .AuthorBlock,
  body.SiteMap .ContentsDivision .CopyrightBlock {
    width: 100%;
    max-width: 1200px;
  }
}
@media screen and (max-width: 1219px), print {
  body.SiteMap .ContentsDivision .AuthorBlock,
  body.SiteMap .ContentsDivision .CopyrightBlock {
    max-width: calc(100% - 4rem);
  }
}
@media screen and (max-width: 767px) {
  body.SiteMap .ContentsDivision .AuthorBlock,
  body.SiteMap .ContentsDivision .CopyrightBlock {
    max-width: calc(100% - 4rem);
    min-width: 320px;
  }
}
body.SiteMap .ContentsDivision .AuthorBlock {
  margin-top: 5rem;
}
body.SiteMap .ContentsDivision .AuthorBlock .BlockHeader {
  display: none;
}
body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a {
  padding: 0.25em 0;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  font-size: 1.6rem;
}
body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a .Icon {
  color: currentColor;
}
body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a::after {
  content: "";
  display: block;
  background: currentColor;
  height: 1px;
  position: absolute;
  bottom: calc(0% - 0.25em);
  width: 100%;
  left: 0%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
html.PcView body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a:hover, html.PcView body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a:focus {
  color: inherit;
  text-decoration: none;
}
html.PcView body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a:hover::after, html.PcView body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList li a:focus::after {
  -webkit-animation: animated_underline 0.4s forwards;
          animation: animated_underline 0.4s forwards;
}
@media screen and (min-width: 768px), print {
  body.SiteMap .ContentsDivision .AuthorBlock .BlockContents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2.5rem;
  }
  body.SiteMap .ContentsDivision .AuthorBlock .BlockContents .MenuList {
    width: calc((100% - 5rem) / 2);
  }
}
@media screen and (max-width: 767px) {
  body.SiteMap .ContentsDivision .AuthorBlock .BlockContents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
body.SiteMap .ContentsDivision .CopyrightBlock {
  font-size: 1.4rem;
}
body.SiteMap .ContentsDivision .CopyrightBlock .BlockContents {
  padding-bottom: 2.5rem;
  border-bottom: 1px dashed;
  margin-bottom: 2.5rem;
}
body.SiteMap .ContentsDivision .CopyrightBlock .BlockContents .SnsList {
  display: none;
}
body.SiteMap .ContentsDivision .CopyrightBlock .BlockFooter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 767px) {
  body.SiteMap .ContentsDivision .CopyrightBlock .BlockFooter {
    gap: 2.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 87.5%;
  }
}
body.SiteMap .ContentsDivision .CopyrightBlock .BlockFooter .MenuList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5em;
}
body.SiteMap .ContentsDivision .CopyrightBlock .BlockFooter .Copyright {
  display: none;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    お問い合わせフォーム                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
body.Contact #SiteHeaderArea .MainMenuList a[href*="contact.php"] {
  background-image: linear-gradient(to bottom, transparent calc(100% - 5px), rgb(29, 195, 104) calc(100% - 5px));
}
