@charset "utf-8";
/* CSS Document */
p {
   font-size: 1.3rem;
}
body {
   font-size: 1.3rem;
   margin-top: 47.2px;
}
.clear{
   clear: both;
}
.center{
   text-align: center;
}
.navbar {
   width: 100%;
   padding: 0 1rem;
}
.jumbotron {
   /*margin-top: 2rem;*/
   background-color: #f2f2f2;
   /*height: 60vh;*/
   line-height: 0;
   padding: 0;
}
.jumbotron-sub {
   /*margin-top: 1rem;*/
   margin-bottom: 2rem;
   background-color: #f2f2f2;
   /*height: 600px;*/
   padding: 0;
}
.footer {
    background-color: #f2f2f2;
}
.mt-2 {
   margin-top: 1.8rem;
}
.container-fluid {
   padding: 0 10rem;
}
video-container {
   /*height: 60vh;*/
   width: 100VW;
   position: relative;
   overflow: hidden;
}
@media (min-width: 2800px) {
   .video-container {
      height: 100vh;
      width: 100VW;
   }
}
video {
   -o-object-fit: cover;
   object-fit: cover;
   /*position: absolute;*/
   height: auto;
   width: 100%;
   top: 0;
   left: 0;
}
/*--固定背景の設定--*/
.cd-fixed-bg {
   position: relative;
   min-height: 100%;
   background-size: cover;
   background-attachment: fixed;
   background-repeat: no-repeat;
   background-position: center center;
   z-index: 2;
   text-align: center;
   color: white;
}
/*--コンテンツ設定--*/
.area {
   background-color: #ffffff;
   overflow: hidden;
   width: 100%;
   padding: 2rem 10rem;
}
/*--固定背景01--*/
.cd-fixed-bg.cd-bg-1 {
   background-image: url("../images/yudo-img02.jpg");
   height: 100vh;
   padding-top: 20vh;
}
/*--固定背景02--*/
.cd-fixed-bg.cd-bg-2 {
   background-image: url("../images/keibi-photo01.jpg");
   height: 100vh;
   padding-top: 20vh;
}
/*--固定背景03--*/
.cd-fixed-bg.cd-bg-3 {
   background-image: url("../images/yudo-photo06.jpg");
   width: 100%;
   height: 100vh;
   padding-top: 20vh;
}
.cd-fixed-bg.cd-bg-4 {
   background-image: url("../images/kusabi-img01.jpg");
   width: 100%;
   height: 50vh;
   padding-top: 20vh;
}

.bigtitle {
   height: auto;
   overflow: hidden;
   padding: 0.2rem 0;
   margin: 0 auto;
   width: 100%;
   font-size: 2rem;
   color: darkred;
   border-top:5px double darkred;
   border-bottom:5px double darkred;
   text-align: center;
}
.bigtitle-hp {
   height: auto;
   overflow: hidden;
   padding: 0.2rem;
   margin: 0 auto;
   width: 100%;
   font-size: 1.5rem;
   color: white;
   background: linear-gradient(180deg, red, darkred);
}
.jidori {
   width: 100%;
   table-layout: auto;
}
.jidori th {
   width: 20%;
   color: white;
   -moz-text-align-last: justify;
   text-align-last: justify;
   text-justify: inter-ideograph;
   border: solid 2px #FFFFFF;
   padding: 2px 1rem;
   background-color: darkgreen;
}
.jidori td {
   padding: 2px 1rem;
   text-align: left;
}
.enkaku {
   width: 100%;
   table-layout: auto;
}
.enkaku th {
   width: 20%;
   color: white;
   border: solid 2px #FFFFFF;
   padding: 2px 1rem;
   background-color: darkgreen;
}
.enkaku td {
   padding: 2px 1rem;
   text-align: left;
}
.const-box1 {
   background-image: repeating-linear-gradient(#F6FFEE 0%, #E3F9CF 100%);
   height: auto;
   width: 100%;
   text-align: left;
   padding: 0.8rem 1rem;
   color: darkgreen;
   border-radius: 15px;
}
.const-box1 h3{
   font-weight: bold;
}
.const-box1 p{
   color:black;
}
.const-box2 {
   background-image: repeating-linear-gradient(#F2F2F2 0%, #F2F2F2 100%);
   height: auto;
   width: 100%;
   text-align: left;
   padding: 0.8rem 1rem;
   color: darkgreen;
}
.construction {
   text-align: left;
}
.title-center {
   text-align: center;
}
.title2 {
   border-bottom: #00270B;
}
.oa-infra1{
   width: 100%;
   height: auto;
}
.oa-infra2{
   width: 100%;
   height: auto;
}

.oa-infra1 .oa-infra-l{
   float: left;
   width: 70%;
   height: auto;
}
.oa-infra1 .oa-infra-r{
   float: right;
   width: 30%;
   height: auto;
}
.oa-infra2 .oa-infra-l{
   float: left;
   width: 80%;
   height: auto;
}
.oa-infra2 .oa-infra-r{
   float: right;
   width: 20%;
   height: auto;
}
.case1 td{
    width: 50%;
}
.case2 td{
    width: 33.33%;
}
.d-md-none{
   margin: 0 0.5rem;
   font-size: 0.8rem;
}
.d-md-none p{
   font-size: 0.8rem;
}
.d-md-none h2{
   font-size: 1.5rem;
}
.d-md-none h3{
   font-size: 1.4rem;
}
.d-md-none h4{
   font-size: 1.2rem;
}
.d-md-none .bigtitle{
   font-size: 1.5rem;
   padding: 0 0 0.3rem 0;
}
/*fede*/
.fade{
  opacity : 0;
  transition: opacity 3s;
}
 
.fade.view{
  opacity: 1;
}
/*fade end*/
/*in-fade*/
.in-fade{
  animation-name: in-fade;
  animation-duration: 5s;
  animation-iteration-count: 1;
}

@keyframes in-fade{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
/*in-fade end*/
.indent-1rem{
   margin-left: 1.5rem;
   text-indent: -1.5rem;
   margin-bottom: 0;
}
.greeting-pic{
    width: 20%;
    float: left;
}

.greeting-text{
    width: 80%;
    padding-left: 1%;
    text-align: left;
    float: left;
}
.profile{
    clear: both;
}
.profile td {
    text-align: left;
    padding-left: 1rem;
}
.profile th {
    font-size: 1.3rem;
    width: 20%;
}
.profile-mob{
    clear: both;
}
.profile-mob td {
    text-align: left;
    padding-left: 1rem;
}
.profile-mob th {
    font-size: 1rem;
    width: 25%;
}

.title-b{
   height: 2.5rem;
   width: 100%;
   background-size: cover;
   background-image: url("../images/title1-backimg.jpg");
   background-repeat: no-repeat;
   padding-top: 0.3rem;
   margin-bottom: 1rem;
   text-align: center;
   color: darkblue;
}
.title-b h4{
   font-weight: bold;
   color: darkred;
}
.al-right{
   width: 100%;
   text-align: right;
}
.box-a{
   
}
.box-b{
   
}
.box-left{
   float: left;
   width: 50%;
}
.box-right{
   float: right;
   width: 50%;
   padding-left: 1rem;
}
.box-3l{
   float: left;
   width: 33%;
   padding: 15px;
   text-align: center;
}
.box-clear{
   clear: both;
}