@charset "UTF-8";
/* スライドするButton Hover Effects 左から */
/* スライドするButton Hover Effects 左下から */
/* 画像を丸くトリミング */
/* 縦横中央・GRID */
/* テスト用ボーダー 20210116 */
/* テスト用背景色 */
/* ------------------------
 index common
------------------------- */
/* ------------------------
 #cover
------------------------- */
#cover .inner {
  position: relative; }

#cover .slider .slide {
  height: 800px;
  background-color: #000;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover; }
  #cover .slider .slide#slide1 {
    background-image: url(../image/top/slide01.jpg); }
  #cover .slider .slide#slide2 {
    background-image: url(../image/top/slide02.jpg); }
  #cover .slider .slide#slide3 {
    background-image: url(../image/top/slide03.jpg); }
  @media only screen and (max-width: 1140px) {
    #cover .slider .slide {
      height: 40vw; } }

#cover .cover-txt {
  position: absolute;
  width: 690px;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 90; }
  #cover .cover-txt h1 a {
    display: block; }
    #cover .cover-txt h1 a img {
      width: 100%;
      height: auto; }
  @media only screen and (max-width: 1140px) {
    #cover .cover-txt {
      width: 62.7%;
      height: auto;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%); } }
@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) and (max-width: 375px) {
  #cover .cover-txt {
    height: 90%; } }

/* ------------------------
 #about
------------------------- */
#about {
  position: static;
  padding-top: 156px;
  margin-top: -78px; }
  @media only screen and (max-width: 1140px) {
    #about {
      padding-top: 8vw;
      margin-top: -6vw; } }
  @media only screen and (max-width: 1140px) and (max-width: 1024px) {
    #about {
      margin-top: 50px; } }

  @media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) {
    #about {
      padding: 0;
      margin-top: 20px; } }

#about .inner {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

#about .wrap.img {
  width: 38%; }
  #about .wrap.img img {
    width: 100%;
    height: auto; }
@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) {
  #about .wrap.img {
    width: 100%; } }

#about .wrap.desc {
  width: 55%;
  text-align: left; }
@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) {
  #about .wrap.desc {
    width: 100%; } }

#about .wrap.desc .txt {
  padding: 0 1em 1em; }
@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) {
  #about .wrap.desc .txt {
    padding: 0; } }

@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) and (max-width: 375px) {
  #about-desc-txt2 {
    text-align: left; }
    #about-desc-txt2 br {
      display: none; } }

/* ------------------------
 #guide
------------------------- */
#guide .wrap {
  width: 50%;
  text-align: left; }
@media only screen and (max-width: 1140px) and (max-width: 1024px) and (max-width: 767px) {
  #guide .wrap {
    width: 100%; } }

#guide .wrap .list-root {
  list-style-position: outside;
  padding-left: 1em;
  margin-left: 1em; }

#guide .wrap .list-item {
  list-style-type: disc; }

#guide .wrap:last-of-type .ttl2 {
  margin-top: 1em; }

#guide .wrap:last-of-type .ttl2:first-of-type {
  margin-top: 0 !important; }

/* ------------------------
 #map
------------------------- */
#map {
  height: auto;
  margin-bottom: 97px; }
  @media only screen and (max-width: 1140px) {
    #map {
      margin-bottom: 5.052vw; } }

#map .inner {
  position: relative;
  height: 450px;
  padding: 0 !important; }
  @media only screen and (max-width: 1140px) {
    #map .inner {
      height: auto; } }

#map .inner .map {
  width: 100%; }
