@charset "UTF-8";
/* ========
  text-color
================ */
.black { color: #151515;}
.white { color: white;}
.main-blue { color: #040FD9;}
.dark-blue { color: #1E4FA8;}
.gray { color :#707070;}
.light-gray { color: #ECEDEF;}


/* ========
  background-color
================ */
.bg-black { background-color: #151515;}
.bg-white { background-color: white;}
.bg-main-blue { background-color: #040FD9;}
.bg-dark-blue { background-color: #021E73;}
.bg-dark-blue2 { background-color: #1E4FA8;}
.bg-light-gray { background-color: #ECEDEF;}
.bg-gray { background-color :#707070;}
.bg-gray2 { background-color :#f5f5f5!important;}

/* ========
  smp-font-szie
================ */
.fs-12 {font-size: 12px!important;}
.fs-14 {font-size: 14px!important;}
.fs-16 {font-size: 16px!important;}
.fs-18 {font-size: 18px!important;}
.fs-20 {font-size: 20px!important;}
.fs-22 {font-size: 22px!important;}
.fs-24 {font-size: 24px!important;}
.fs-30 {font-size: 30px!important;}
.fs-35 {font-size: 35px!important;}
.fs-40 {font-size: 40px!important;}
.fs-50 {font-size: 50px!important;}


/* ========
  font
================ */
/* FOT-TsukuARdGothic Std R */
.tsukuR {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
}
/* FOT-TsukuARdGothic Std B */
.tsukuB {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

/* MinervaModern Bold */
.minervamodern {
  font-family: minerva-modern, sans-serif;
  font-weight: 700;
  font-style: normal;
}


/* noto-sans-jp-regular - latin_japanese */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display:swap;
  src: local(''),
       url('/assets/fonts/noto-sans-jp-v36-latin_japanese-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('/assets/fonts/noto-sans-jp-v36-latin_japanese-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* noto-sans-jp-700 - latin_japanese */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-display:swap;
  src: local(''),
       url('/assets/fonts/noto-sans-jp-v36-latin_japanese-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('/assets/fonts/noto-sans-jp-v36-latin_japanese-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
body {
  font-family: 'Noto Sans JP';
  line-height: 1.8rem;
  color: #383231;
}

a { 
  text-decoration: none;
  transition:.5s all;
}
li { list-style: none;}
.w-1280 { max-width: 98%;}
.w-1000 { max-width: 95%;}
.w-720 { max-width: 90%;}
.w-580 { max-width: 90%;}
.my-80 { margin: 80px 0;}
.py-80 { padding: 80px 0;}
.pt-80 { padding-top: 80px;}
.pb-80 { padding-bottom: 80px;}
.mt-80 { margin-top: 80px;}
.mb-80 { margin-bottom: 80px;}
.border-radius-30 { border-radius: 30px;}
.object-fit { object-fit: cover;}
.text-overflow {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ========
  link
================ */
.link {
  position:relative;
}  
.link a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
}
.white-cv-btn {
  border-radius: 30px;
  max-width: 280px;
  border: solid #ddd 1px;
}
.blue-cv-btn {
  border-radius: 30px;
  max-width: 100%;
  border: solid #040fd9 1px;
}
.blue-cv-btn:hover  {
  background: #040fd9;
  border: solid #040fd9 1px;
  color: #fff;
}

.white-cv-btn {
  position: relative;
  overflow: hidden;
  text-decoration: none;
  display: inline-block;
  outline: none;
  transition: ease .2s;
  border-radius: 30px;
}
.white-cv-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background: white;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  border-radius: 10px;
}
.white-cv-btn:hover {
  color: #040fd9;
  outline-width: 0;
}
.white-cv-btn span.text {
  position: relative;
  z-index: 3;
}
.white-cv-btn:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

/* ========
  breadcrumb
================ */
.breadcrumb {
  position: relative;
  z-index: 11;
  margin-bottom: 0;
  font-size: .8rem;
  width: 100%;
  margin-top: 1rem;
}
.breadcrumb li:after {
  content: '>';
  padding: 0 0.2;
}
.breadcrumb li:last-child:after {
  content: '';
}

/* ========
  header
================ */

.h-logo {
  max-width: 250px;
}
.h-cv-btn a {
  border-radius: 30px;
}

/* ========
  footer
================ */

#footer-cv {
  background-image: url(/assets/images/common/footer-cv-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
} 
#footer-cv .bg-white {
  border-radius: 15px;
}
.f-logo img {
  max-width: 130px; 
}
.cv-tel {
  border-radius: 30px;
  border: solid #0e10d9 1px;
  max-width: 280px;
}
.main-cv-btn {
  border-radius: 30px;
  max-width: 280px;
}
.main-cv-btn:hover {
  box-shadow: #89b 0px 0px 30px;
  color: #fff;
  transition:.5s all;
}
.top-btn {
  position: absolute;
  top: -30px;
  right: 15%;
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 65px;
  text-align: center;
}
.f-logo {
  order: 4;
}
.f-menu1 {
  order: 1;
}
.f-menu2 {
  order: 4;
}
.f-menu3 {
  order: 3;
}
.f-add {
  order: 5;
}
/* ========
  下層共通
================ */

#eyecatch {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left;
  height: 98vh;
 }
#eyecatch > div:nth-child(2) {
  position: absolute;
  top: 25%;
  bottom: 0;
  right: 0;
  left: 0;
 }

.column-title span {
  vertical-align: sub;
}

/* ========
  スクロールダウン
================ */
.scrolldown1 {
  position:absolute;
  left:0;
  right: 0;
  bottom: 10px;
  height: 50px;
  z-index: 100;
}
.scrolldown1 span {
  position: absolute;
  left: 0;
  right: 0;
  top: -30px;
}
.scrolldown1::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 30px;
  background: #eee;
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}

.top-btn .fa-arrow-up:before {
  border-top: solid #ddd 2px;
}


@media screen and (min-width: 768px) {
  /* ========
    font-szie
  ================ */

  .fs-md-12 {font-size: 12px!important;}
  .fs-md-14 {font-size: 14px!important;}
  .fs-md-16 {font-size: 16px!important;}
  .fs-md-18 {font-size: 18px!important;}
  .fs-md-20 {font-size: 20px!important;}
  .fs-md-22 {font-size: 22px!important;}
  .fs-md-24 {font-size: 24px!important;}
  .fs-md-30 {font-size: 30px!important;}
  .fs-md-35 {font-size: 35px!important;}
  .fs-md-40 {font-size: 40px!important;}
  .fs-md-45 {font-size: 45px!important;}
  .fs-md-50 {font-size: 50px!important;}
  .fs-md-55 {font-size: 55px!important;}
  .fs-md-100 {font-size: 100px!important;}

  .w-1280 { max-width: 1280px;}
  .w-1000 { max-width: 1000px;}
  .w-720 { max-width: 720px;}
  .w-590 { max-width: 590px}
  .my-md-85 { margin: 85px 0!important;}
  .py-md-85 { padding: 85px 0!important;}
  .pt-md-80 { padding-top: 80px!important;}
  .pb-md-80 { padding-bottom: 80px!important;}
  .mt-md-80 { margin-top: 80px!important;}
  .mb-md-80 { margin-bottom: 80px!important;}

  #h_top {
    min-width: 1000px;
  }
  .cv-tel {
    border: none;
  }
  .f-logo {
    order: 1;
  }
  .f-menu1 {
    order: 3;
  }
  .f-menu2 {
    order: 4;
  }
  .f-menu3 {
    order: 5;
  }
  .f-add {
    order: 2;
  }

/* ========
  下層共通
================ */
  #top-main {
    height: 98vh;
    background-position: center;
  }
  #main-message {
    background-position: right -50%;
    background-size: 36%;
  }
  #process .drone-link {
    top: -40px;
    right: -40px;
  }
  .breadcrumb {
    margin-top: 0;
  }
  .blue-cv-btn {
    max-width: 280px;
  }
}



