@charset "UTF-8";
/* CSS Document */
/* CSS Document */
/*---------------------
カラム幅設定
----------------------*/
/*---------------------
カラー設定
----------------------*/
/*---------------------
ベンダープレフィックス初期設定
----------------------*/
/*---------------------
透明度　初期設定
----------------------*/
/*---------------------
フォントサイズ初期設定
----------------------*/
/*---------------------
フォントファミリー初期設定
----------------------*/
/*----------------
Retina,高解像度 対策
-----------------*/
/*---------------------
角丸　初期設定
----------------------*/
/*
.box {
     @include circle(100px);
     background: #fc0;
}
*/
/*---------------------
ボックスシャドウ　mixin
----------------------*/
/*
 div { @include box-shadow(8px, 8px);}
 */
/*---------------------
グラデーション　mixin
----------------------*/
/* 使用例
 div { @include gradient(#ff00ff, #ff00cc, vertical);}
*/
/*---------------------
デュレーション　mixin
----------------------*/
/*
.move{
    @include transition(0.5s);
}
*/
/*---------------------
キーフレーム　mixin
----------------------*/

@keyframes $animation-name {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes $animation-name {
  0% {
    color: #fff;
  }
  100% {
    color: #0094d5;
  }
}

/*---------------------
カラムグリッド mixin
----------------------*/
/*---------------------
カラムグリッド mixin
----------------------*/
/*　使用例 
div { @include ghost-button(“Trebuchet”, 12px, #ffffff, 5px, #34dec6, 4px, 300ms, #000000 );}
*/
/*---------------------
リンクカラー初期設定
----------------------*/
/*---------------------
汎用BOX用　マージンMIXIN リセット
----------------------*/
.m_0 {
  margin: 0 !important;
}

.p_0 {
  padding: 0 !important;
}

/*---------------------
汎用ボタンリンク用　
----------------------*/
.btn {
  -moz-user-select: none;
  background-image: none;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.42857;
  margin-bottom: 0;
  padding: 6px 12px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}

.btn-info {
  background-color: #5bc0de;
  border-color: #46b8da;
  color: #fff;
}

#slider {
  background: #000;
}

.demo-2 .sl-slider-wrapper {
  height: 100vh;
  transition: all 0.3s ease;
}

@media screen and (max-width: 767px) {
  .demo-2 .sl-slider-wrapper {
    height: 80vh;
    transition: all 0.3s ease;
  }
}

.grid-bg {
  position: relative;
  background: url(../img/grid_dots.png);
  width: 100%;
  height: 100vh;
  z-index: 100;
}

.grid-bg2 {
  position: relative;
  background: url(../img/grid_dots.png);
  width: 100%;
  height: 40vh;
  z-index: 100;
}

@media screen and (max-width: 767px) {
  .grid-bg {
    position: relative;
    background: url(../img/grid_dots.png);
    width: 100%;
    height: 80vh;
    z-index: 100;
  }
}

@media screen and (min-width: 1440px) {
  .grid-bg2 {
    position: relative;
    background: url(../img/grid_dots.png);
    width: 100%;
    height: 45vh;
    z-index: 100;
  }
}

.main-copy {
  max-width: 1024px;
  margin: 0 auto;
  text-align: left;
  padding-top: 50%;
}

.main-copy div {
  width: 45%;
  padding: 0 20px;
}

.main-copy div img {
  width: 100%;
}

sl-slide-inner {
  position: relative;
}

.demo-2 .sl-slider h2, .demo-2 .sl-slider blockquote {
  width: 100%;
  max-width: 1440px;
  text-align: center;
  margin: 0 auto;
}

.demo-2 .sl-slider h2,
.demo-2 .sl-slider blockquote {
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}

.demo-2 .sl-slider h2 {
  padding-top: 0;
  margin-top: 0;
}

.catch-hight {
  position: relative;
  padding-top: 49vh;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .catch-hight {
    padding-top: 39vh;
  }
}

.catch-hight2 {
  position: relative;
  padding-top: 49vh;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .catch-hight2 {
    padding-top: 37vh;
  }
}

/*---------------------
汎用ボタン 
----------------------*/
.button-fade {
  display: inline-block;
  width: 100%;
  max-width: 280px;
  background-color: #000;
  margin: 0 auto;
  margin-top: 20px;
  padding: 15px 10px;
  font-size: 1.8rem;
  transform: rotate(0.001deg);
  transition: all .5s ease;
  text-align: center;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
}

.button-fade:hover {
  color: #fff;
  background: #154888;
  text-shadow: none;
}

.button-fade::before,
.button-fade::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.button-fade,
.button-fade::before,
.button-fade::after {
  box-sizing: border-box;
  transition: all .3s;
}

.button-fade2 {
  display: block;
  margin: 0 auto;
  background-color: #1b4274;
  border: 2px solid #1b4274;
  color: #fff;
  width: 100%;
  max-width: 300px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 48px;
  outline: none;
}

.button-fade2:hover {
  background-color: #fff;
  border-color: #1b4274;
  color: #1b4274;
  font-weight: normal;
}

.button-fade2::before,
.button-fade2::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.button-fade2,
.button-fade2::before,
.button-fade2::after {
  box-sizing: border-box;
  transition: all .3s;
}

@media screen and (max-width: 640px) {
  .button-fade2 {
    font-size: 14px;
    width: 100%;
    height: auto;
    padding: 5px;
    line-height: 1.6;
  }
}

.button-fade3 {
  display: block;
  margin: 0 auto;
  background-color: none;
  border: 3px solid #333;
  color: #333;
  width: 100%;
  max-width: 300px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 48px;
  outline: none;
}

.button-fade3:hover {
  background-color: #333;
  border-color: #333;
  color: #fff;
  font-weight: normal;
}

.button-fade3::before,
.button-fade3::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.button-fade3,
.button-fade3::before,
.button-fade3::after {
  box-sizing: border-box;
  transition: all .3s;
}

.font-notosansSC {
  font-family: 'Noto Sans SC', sans-serif;
  color: #333;
  transform: rotate(0.001deg);
}

.roboto {
  font-family: 'Roboto', sans-serif;
  color: #333;
  transform: rotate(0.001deg);
}
