@charset "UTF-8";
/* 
  css設定 
*/
/*==================================================================================
 top
==================================================================================*/
.top-mv {
  margin-bottom: 55px;
  position: relative;
}

.top-mv .top-mv-inner {
  background: url("../../assets/images/top/slide01.jpg") no-repeat scroll center center;
  background-size: cover;
  width: 100%;
  max-width: 1920px;
  height: 460px;
  margin: 0 auto;
  /*opacity: 0;*/
  -webkit-animation: 2s ease-out 0s 1 normal forwards fade-in1;
  animation: 2s ease-out 0s 1 normal forwards fade-in1;
}

@-webkit-keyframes fade-in1 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in1 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.top-mv .top-mv-logo {
  z-index: 999;
  position: absolute;
  width: 386px;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.top-mv .top-mv-logo img {
  opacity: 0;
  -webkit-animation: 4s ease-out 2s 1 normal forwards fade-in2;
  animation: 4s ease-out 2s 1 normal forwards fade-in2;
}

@-webkit-keyframes fade-in2 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in2 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* IE11 にのみ適用される */
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .top-mv .top-mv-inner img {
    opacity: 1;
    animation: none;
  }
}

.top-service {
  margin-bottom: 60px;
  padding: 0 70px;
  /*.uk-first-column {
    padding-left: 0;
  }*/
}

.top-service h2 {
  color: #005595;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.4;
}

.top-service h3 {
  color: #005595;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 30px 0 20px;
}

.top-service ul li {
  max-width: 380px;
  /* min-width: 0;IE 11 */
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.top-service ul li a {
  display: inline-block;
}

.top-service ul li a:hover {
  text-decoration: none;
}

.top-service ul li p {
  color: #3E3A39;
  line-height: 1.8;
}

.top-news {
  background-color: #F2F2F2;
  padding: 60px 70px;
  margin-bottom: 60px;
}

.top-news .uk-container {
  border: 10px solid #005595;
  background-color: #fff;
  padding: 30px 30px 40px;
}

.top-news h2 {
  color: #005595;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 20px;
  padding-bottom: 15px;
  position: relative;
}

.top-news h2::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  /*線の上下位置*/
  display: inline-block;
  width: 100px;
  /*線の長さ*/
  height: 3px;
  /*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  /*位置調整*/
  background-color: #005595;
  /*線の色*/
  border-radius: 1px;
  /*線の丸み*/
}

.top-news dl {
  border-bottom: 1px solid #3E3A39;
  padding-bottom: 16px;
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.top-news dt {
  font-weight: normal;
  max-width: 180px;
  line-height: 1.6;
}

.top-news dd {
  padding-left: 20px;
  line-height: 1.6;
}

.top-news dd .uk-label {
  background-color: #005595;
  font-size: 12px;
  margin-right: 16px;
  font-weight: bold;
  vertical-align: top;
  padding: 3px 15px;
  border-radius: 5px;
}

.top-news .top-news_inner {
  height: 120px;
  overflow: auto;
}

.bnr-links h3 {
  text-align: center;
  font-weight: bold;
  margin-bottom: 30px;
}

.bnr-links .bnr-links_inner {
  margin-left: -18px;
}

.bnr-links ul {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 1018px;
}

.bnr-links ul li {
  margin-left: 18px;
  margin-bottom: 18px;
  max-width: 185px;
}

@media screen and (max-width: 1000px) {
  .bnr-links ul li {
    margin-left: 12px;
    margin-bottom: 12px;
    max-width: 170px;
  }
}

.bnr-links ul li a {
  display: block;
  border: 1px solid #B0B0B0;
}

/*==================================================================================
SP top
==================================================================================*/
@media screen and (max-width: 638px) {
  .top-mv .top-mv-inner {
    background: url("../../assets/images/top/slide01_sp.jpg") no-repeat scroll center center;
    min-width: 100vw;
    height: calc(100vh - 50px);
  }
  .top-mv .top-mv-logo {
    width: 85%;
  }
  .top-service .uk-container, .top-news .uk-container {
    margin: 0 3.25%;
  }
  .top-service {
    margin-bottom: 40px;
    padding: 0;
  }
  .top-service h3 {
    text-align: center;
  }
  .top-service .uk-grid {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .top-news {
    margin-bottom: 40px;
    padding: 40px 0;
  }
  .top-news h2 {
    margin-bottom: 10px;
  }
  .top-news .top-news_inner {
    height: 250px;
  }
  .top-news dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
  }
  .top-news dl:first-of-type {
    margin-top: 30px;
  }
  .top-news dt {
    max-width: 100%;
  }
  .top-news dd {
    padding-left: 0;
  }
  .top-news dd .uk-label {
    position: absolute;
    top: -30px;
  }
  .bnr-links .bnr-links_inner {
    margin-left: -9px;
  }
  .bnr-links ul {
    max-width: 100%;
  }
  .bnr-links ul li {
    margin-left: 9px;
    margin-bottom: 9px;
    max-width: 170px;
  }
}

@media screen and (max-width: 638px) and (max-width: 360px) {
  .bnr-links ul li {
    max-width: 140px;
  }
}

/*動画*/
div.vid_contents {
	width: 100%;/*背景色を横幅いっぱいに広げる*/
	text-align: center;
	margin: 0 auto;
	padding: 0 4% 4% 4%;/*ここで動画の周りの余白を調整*/
}
video.vid_main {
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
}
