@charset "utf-8";
/*
theme Name: オリジナルテーマ
Author: I's Creation
Description: original theme
version： 1.0.0
*/
/*サイト全体の基準となるCSSを記述*/

/*============================================================================
  ヘッダー
============================================================================*/
.header-inner {
  width: 100%;
  max-width: 2048px;
  min-width: 1000px;
  padding: 15px 0;
  z-index: 10;
  display: table;
  position: fixed;
  background-color: transparent;
  transition: 1.0s ;
}
.header-inner.transform {
  background-color: #fff;
  padding: 5px 0;
}
.header-inner h1 {
  font-size: 5px;
}
.header-inner .logo-img2 {
  display: none;
}
.header-inner.transform .logo-img1 {
  display: none;
}
.header-inner.transform .logo-img2 {
  display: block;
}
.site-title a img {
  width: auto;
  display: table-cell;
  text-align: left;
  width: 197px;
  height: 44px;
}
.site-title-wrap {
  margin-left: 98px;
}
.header-nav-wrap {
  display: table-cell;
  vertical-align: middle;
  padding-right: 30px;
}
.header-nav-wrap ul {
  float: right;
}
.header-nav li {
  display: inline;
  list-style: none;
  float: left;
  padding-left: 30px;
  text-align: right;
}
.header-nav li a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  position: relative;
}
.header-inner.transform li a {
  color: #000;
}
.header-nav li a::after {
  position: absolute;
  bottom: -8px;
  left: 25%;
  content: '';
  width: 50%;
  height: 2px;
  border-radius: 20px;
  background: #fff;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}
.header-inner.transform .header-nav li a::after {
  background: #000;
}
.header-nav li a:hover::after {
  transform: scale(1, 1);
}

/*============================================================================
  メインビジュアル
============================================================================*/
 #mv-slide-wrap {
    height: 1080px;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 1;
    margin-bottom: 100px;
  }
#mv-slide-wrap h2 {
  z-index:15;
  position: absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-60%);
  width:50%;
  height:auto;
  text-align: center;
  font-size: 100px;
  color: #fff;
  font-weight: bold;
}
#mv-slide-wrap h2 span {
  display: block;
  font-size: 40px;
}
  .mv-slide {
    z-index:10;
    opacity: 0;
    width: 100%;
    height: 1080px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 18s 0s infinite;
    animation: anime 18s 0s infinite;
  }
    .mv-slide:nth-of-type(2) {
      -webkit-animation-delay: 6s;
      animation-delay: 6s;
    }
    .mv-slide:nth-of-type(3) {
      -webkit-animation-delay: 12s;
      animation-delay: 12s;
    }
.mv-slide::before{
  background-color: rgba(0,0,0,0.2);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
}
@keyframes anime {
    0% {
        opacity: 0;
        transform: scale(1.1);
    }
    16% {
        opacity: 1;
    }
    34% {
        opacity: 1;
    }
    50% {
        opacity: 0;
         transform: scale(1.0);
                    z-index:5;
    }
    100% { opacity: 0 }
}
.mv-slide-01 {
  background-image: url("../images/mv/mv01.jpg");
}
.mv-slide-02 {
  background-image: url("../images/mv/mv02.jpg");
}
.mv-slide-03 {
  background-image: url("../images/mv/mv03.jpg");
}

/*============================================================================
  パーツ１
============================================================================*/
.cont-parts-01-wrap {
  position: relative;
  height: 1100px;
  opacity : 0;
  transform : translate(500px, 0);
  transition : all 1s;
}
.cont-parts-01-wrap.active {
  opacity : 1;
  transform : translate(0, 0);
}
.cont-parts-01-wrap .bg-gray {
  position: absolute;
  background-color: #fafafa;
  position: absolute;
  top: 377px;
  left: 0;
  content: ' ';
  width: 50%;
  height: 600px;
}
.cont-parts-01-wrap .cont-parts-01-title {
  font-size: 100px;
  color: #000;
  font-weight: bold;
  position: absolute;
  top: 0;
  right: 100px;
  z-index: 5;
  }
.cont-parts-01-wrap .cont-parts-01-img {
  background-image: url("../images/top/cont_img_01.jpg");
  position: absolute;
  top: 77px;
  right: 0;
  height: 600px;
  width: 90%;
  background-position: right;
}
.cont-parts-01-wrap .cont-parts-01-img .cont-parts-01-text {
  width: 100%;
  max-width: 1600px;
  margin: 650px 0 0 auto;
}
.cont-parts-01-wrap .cont-parts-01-img .cont-parts-01-text h2 {
  color: #000;
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 30px;
}

/*============================================================================
  パーツ２
============================================================================*/
.cont-parts-02-wrap {
  position: relative;
  height: 1100px;
  opacity : 0;
  transform : translate(-500px, 0);
  transition : all 1s;
}
.cont-parts-02-wrap.active {
  opacity : 1;
  transform : translate(0, 0);
}
.cont-parts-02-wrap .bg-gray {
  background-color: #fafafa;
  position: absolute;
  top: 377px;
  right: 0;
  content: ' ';
  width: 50%;
  height: 600px;
}
.cont-parts-02-title {
  font-size: 100px;
  color: #000;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 100px;
  z-index: 5;
  }
.cont-parts-02-img {
  background-image: url("../images/top/cont_img_02.jpg");
  position: absolute;
  top: 77px;
  left: 0;
  height: 600px;
  width: 90%;
  max-width: 1600px;
  background-position: right;
}
.cont-parts-02-text {
  width: 100%;
  max-width: 1600px;
  position: absolute;
  top: 650px;
  left: 0;
  text-align: right;
}
.cont-parts-02-text h2 {
  color: #000;
  text-align: right;
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 30px;
}


/*============================================================================
  パーツ３
============================================================================*/
.cont-parts-03-wrap {
  position: relative;
  height: 1100px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto 100px auto;
  opacity : 0;
  transform : translate(500px, 0);
  transition : all 1s;
}
.cont-parts-03-wrap.active {
  opacity : 1;
  transform : translate(0, 0);
}
.cont-parts-03-wrap .bg-gray {
  background-color: #fafafa;
  position: absolute;
  top: 400px;
  left: 0;
  content: '';
  width: 75%;
  height: 600px;
}
.cont-parts-03-wrap .cont-parts-03-title {
  font-size: 100px;
  color: #000;
  font-weight: bold;
  position: absolute;
  top: 100px;
  left: 100px;
  z-index: 5;
  }
.cont-parts-03-wrap .cont-parts-03-img {
  background-image: url("../images/top/cont_img_03.jpg");
  position: absolute;
  top: 0px;
  right: 0;
  height: 800px;
  width: 50%;
  background-position: right;
}
.cont-parts-03-wrap .cont-parts-03-text {
  width: 38%;
  position: absolute;
  top: 300px;
  left: 100px;
}
.cont-parts-03-wrap .cont-parts-03-text h2 {
  color: #000;
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 30px;
}


/*============================================================================
  パーツ４
============================================================================*/
.cont-parts-04-wrap {
  position: relative;
  height: 1100px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto 100px auto;
  opacity : 0;
  transform : translate(-500px, 0);
  transition : all 1s;
}
.cont-parts-04-wrap.active {
  opacity : 1;
  transform : translate(0, 0);
}
.cont-parts-04-wrap .bg-gray {
  background-color: #fafafa;
  position: absolute;
  top: 400px;
  right: 0;
  content: ' ';
  width: 75%;
  height: 600px;
}
.cont-parts-04-wrap .cont-parts-04-title {
  font-size: 100px;
  color: #000;
  font-weight: bold;
  position: absolute;
  top: 100px;
  right: 100px;
  z-index: 5;
  }
.cont-parts-04-wrap .cont-parts-04-img {
  background-image: url("../images/top/cont_img_04.jpg");
  position: absolute;
  top: 0px;
  left: 0;
  height: 800px;
  width: 50%;
  background-position: right;
}
.cont-parts-04-wrap .cont-parts-04-text {
  width: 35%;
  position: absolute;
  top: 300px;
  right: 100px;
}
.cont-parts-04-wrap .cont-parts-04-text h2 {
  color: #000;
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 30px;
}


/*============================================================================
  パーツ５
============================================================================*/
.cont-parts-05-wrap {
  position: relative;
  width: 100%;
  margin: 0 auto 100px auto;
}

.cont-parts-05-wrap .cont-parts-05-img {
  background-image: url("../images/top/cont_img_05.jpg");
  width: 100%;
  height: 600px;
  background-position: center;
}
.cont-parts-05-wrap .cont-parts-05-img::before{
  background-color: rgba(0,0,0,0.2);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
}
.cont-parts-05-wrap .cont-parts-05-text {
  position: absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  color: #fff;
  text-align: center;
}
.cont-parts-05-wrap .cont-parts-05-title {
  font-size: 100px;
  font-weight: bold;
  z-index: 5;
  color: #fff;
}
.cont-parts-05-wrap .cont-parts-05-text h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #fff;
  font-size: 30px;
}



/*============================================================================
  パーツ６
============================================================================*/
.cont-parts-06-wrap {
  width: 100%;
  overflow: hidden;
  margin-bottom: 100px;
}
.cont-parts-06-wrap .cont-parts-06-text {
  margin-left: 100px;
}
.cont-parts-06-wrap .cont-parts-06-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-06-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
#slide-parts-06 {
  width: 100%;
}
#slide-parts-06 .slick-list {
  padding: 0 40% 0 0;
}
#slide-parts-06 .slide-piece {
  margin: 0 10px;
}
#slide-parts-06 .slide-piece .img-wrap {
  overflow: hidden;
}
#slide-parts-06 .slide-piece .img-wrap img {
  transition-duration: 1s;
}
#slide-parts-06 .slide-piece .img-wrap img:hover {
  transform: scale(1.1);
  transition-duration: 1s;
}
#slide-parts-06 .slide-piece a {
  text-decoration: none;
}
#slide-parts-06 .slide-piece h3 {
  font-size: 22px;
  color: #000;
  margin-top: 20px;
}
#slide-parts-06 .slide-piece p {
  color: #000;
}



/*============================================================================
  パーツ７
============================================================================*/
.cont-parts-07-wrap {
  width: 100%;
  margin-bottom: 100px;
}
.cont-parts-07-wrap .cont-parts-07-text {
  text-align: center;
}
.cont-parts-07-wrap .cont-parts-07-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-07-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
#slide-parts-07 img {
  width: 100%;
}
.slide-07-item:hover {
  opacity: 0.6;
}


/*============================================================================
  パーツ８
============================================================================*/
.cont-parts-08-wrap {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto 100px auto;
}
.cont-parts-08-wrap .cont-parts-08-text {
  text-align: center;
}
.cont-parts-08-wrap .cont-parts-08-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-08-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
.cont-parts-08 {
  width: 25%;
  float: left;
  margin: 30px 0;
}
.cont-parts-08 h3 {
  font-size: 22px;
  color: #000;
  margin-top: 20px;
}
.cont-parts-08 img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto 10px auto;
  }
.cont-parts-08 p {
  display: block;
  width: 100%;
  height: 100px;
  padding: 10px 0;
}


/*============================================================================
  パーツ９
============================================================================*/
.cont-parts-09-wrap {
  width: 90%;
  height: 600px;
  background-color: #808080;
  position: relative;
  margin-bottom: 100px;
}
.cont-parts-09-wrap .cont-parts-09-text {
  width: 42%;
  max-width: 450px;
  position: absolute;
  top: 150px;
  left: 11%;
}
.cont-parts-09-wrap .cont-parts-09-title {
  font-size: 100px;
  font-weight: bold;
  color: #fff;
}
.cont-parts-09-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #fff;
  font-size: 30px;
}
.cont-parts-09-wrap p {
  color: #fff;
}
.cont-parts-09-btn {
  background-color: #fff;
  padding: 31px 20px 32px 35px;
  color: #6C6C6C;
  font-size: 36px;
  font-weight: bold;
  position: absolute;
  bottom: 120px;
  right: 0;
  width: 380px;
  height: 100px
}
.cont-parts-09-btn:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  padding-left:60px; 
  color: #6C6C6C;
  font-size: 36px;
  transition: 0.5s;
}
.cont-parts-09-btn:hover::after {
  padding-left: 75px;
}

/*============================================================================
  パーツ１０
============================================================================*/
.cont-parts-10-wrap {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto 100px auto;
}
.cont-parts-10-wrap .cont-parts-10-text {
  text-align: center;
  margin-bottom: 50px;
}
.cont-parts-10-wrap .cont-parts-10-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-10-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
.top-new-wrap .article-list {
  margin-left: 1.6%;
  overflow: hidden;
  float: left;
  width: 23%;
  height:405px;
  box-shadow: 0px 0px 5px rgba(0,0,0,0.25);
  -webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.25);
  -moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.25);
}
@media screen and (max-width:1400px) {
  .top-new-wrap .article-list {
    height: 425px;
  }
}
.top-new-wrap .article-list:last-child {
  margin-right: 1.6%;
}
.top-new-wrap .article-list .img-wrap {
  width:100%;
  height:220px;
  overflow: hidden;
}
.top-new-wrap .article-list .img-wrap div {
  width:100%;
  height:220px;
  background-size: cover;
  background-position: center;
  transition-duration: 1s;
}
.top-new-wrap .article-list .img-wrap div:hover {
  transform: scale(1.1);
  transition-duration: 1s;
}
.top-new-wrap .article-list .article-date {
  margin: 0 10px;
}
.top-new-wrap .article-list .article-date time {
  font-size: 13px;
  color: #555;
  display: inline-block;
  padding: 16.5px 0;
}
.top-new-wrap .article-list .article-date time:after {
  content: '|';
  padding: 0 5px;
}
.top-new-wrap .article-list .article-date a {
  color: #555;
  font-size: 13px;
  text-decoration: none;
  transition-duration: 0.3s;
  min-width: 48px;
  display: inline-block;
  padding: 16.5px 0;
}
.top-new-wrap .article-list .article-date a:hover {
  color: #AF173F;
  transition-duration: 0.3s;
}
.top-new-wrap .article-list .text {
  margin: 0 10px;
}
.top-new-wrap .article-list a {
  text-decoration: none;
}
.top-new-wrap .article-list a .text:hover {
  opacity: 0.7;
}
.top-new-wrap .article-list a .text span {
  font-size: 16px;
  padding: 10px 5px 5px 0;
  color: #181d32;
  font-weight: bold;
}
.top-new-wrap .article-list .text p {
  font-size: 14px;
  text-decoration: none;
  color: #333;
}


/*============================================================================
  パーツ１１
============================================================================*/
.cont-parts-11-wrap {
  width: 90%;
  height: 600px;
  background-color: #F5F5F5;
  position: relative;
  margin: 0 0 100px auto;
}
.cont-parts-11-wrap .cont-parts-11-text {
  width: 42%;
  max-width: 450px;
  position: absolute;
  top: 150px;
  left: 11%;
}
.cont-parts-11-wrap .cont-parts-11-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-11-wrap h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
.news-wrap {
  width: 45%;
  position: absolute;
  top: 110px;
  right: 5%;
}
.news-cont {
  border-bottom: solid 1px #ddd;
  padding: 10px;
  position: relative;
}
.news-cont:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  color: #6C6C6C;
  font-size: 16px;
  transition: 0.5s;
  position: absolute;
  top: 50%;
  right: 30px;
}
.news-cont:hover::after {
  right: 20px;
  }
.news-cont time {
  display: block;
  margin: 10px 0 5px 0;
  color: #666;
  font-size: 14px;
}
.news-cont p {
}
.news-cont a {
  text-decoration: none;
  color: #000;
  transition-duration: 0.3s;
}
.news-cont:hover a {
  color: #AF173F;
  transition-duration: 0.3s;
}
.all-news {
  display: block;
  text-align: right;
  margin: 30px 30px 0 0;
  text-decoration: none;
  color: #6C6C6C;
  font-weight: bold;
  font-size: 18px;
  transition-duration: 0.3s;
}
.all-news:hover {
  color: #AF173F;
  transition-duration: 0.3s;
}
@media screen and (max-width:1280px) { 
  .cont-parts-11-wrap .cont-parts-11-title {
  font-size: 80px;
  }
}

/*============================================================================
  パーツ１２
============================================================================*/
.cont-parts-12-wrap {

}
.cont-parts-12-text {
  text-align: center;
  margin-bottom: 50px;
}
.cont-parts-12-title {
  font-size: 100px;
  font-weight: bold;
  color: #000;
}
.cont-parts-12-text h2 {
  margin-bottom: 20px;
  font-weight: normal;
  color: #000;
  font-size: 30px;
}
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 40%;
position: relative;
}
.map-title {
  text-align: center;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}


