body{
/*font-family: "Noto Sans JP", sans-serif;*/
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; font-weight:500;
    background-color: #ffffff;
    color:rgba(35,35,35,1.00);
        overflow-x: hidden;
}

.fm01 { font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; }
.fm02 { font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; font-weight:500; }
.fmc03 { font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; font-weight:500; 
}

a {
/*    color: #ffffff;*/
        letter-spacing: 1px;
}
a:hover{
    color: #cccccc;
    text-decoration: none;
}

.container,.container-fluid{
/*    background-color: transparent !important;*/
}

.breadp{
    font-size: 1rem;
}


.navbar-brand{
    font-size: 1.5rem;
}


.bbommd{
    border-bottom:1px solid rgba(221,221,221,1.00);
}

.footerimg{
    height: 130px;
    background-image: url("../images/footer_img.png");
    background-position: bottom;
    background-repeat: repeat-x;
}

.ullink li a{
    font-size: 1.4rem;
}

.full {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background: url("../images/topmainv.jpg") center bottom / cover;
}

.fulltxt {
  margin: 0;
  position: absolute;
  top: calc(50% - 5em);
  width: 100%;
  text-align: center;
  line-height: 1;

}

.fullwaku{
    background-color:rgba(255,255,255,0.50);
    max-width: 500px;
    margin: 0 auto;
    padding: 20px 10px;
    letter-spacing: 3px;
    line-height: 1.2;
  border-top-right-radius: 20px;

  border-bottom-left-radius: 20px;
}

.toph1{
    font-size: 1.8rem;
    line-height: 1.7;
}

.infoh2{
    color: #2043a0;
    font-weight: 700;
    font-size: 1.4rem;
}

.imgfv {
  position: relative;
  }

.imgfv .boalt {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0;
  color: white;
  background:rgba(32,67,160,0.70);
  font-size: 16px;
  line-height: 1;
  padding: 15px 10px;
  width: 100%;
  text-align: center;
    z-index: 2;
}

.imgfv img {
  width: 100%;
}


.imgfv {
  position: relative;

  overflow: hidden;
}
.imgfv .hover-img {
  margin: 0;
  padding: 0;
}
.hover-img img {
  width: 100%;
  height: 100%;
}
.imgfv .hover-text {
  position:	absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #fff;
  background-color:	rgba(0,0,0,0.65);
  opacity: 0;
  transition: .3s ease-in-out;
}
.imgfv .hover-text .text1 {
  font-size: 22px;
  padding: 0 20px 10px;
}
.imgfv .hover-text .text2 {
  font-size: 16px;
  padding: 0 20px;
}
/*ホバーエフェクト*/
.imgfv:hover .hover-text {
  opacity: 1;
  padding-top: 10px;
}


@media screen and (max-width:750px) {
    .fullwaku{
        font-size: 1.3rem;
    }
    .hover-img img{

    }

}


@media screen and (max-width:1200px) {
    .ullink li a{
        font-size: 16px;
    }
}

@media screen and (max-width:991px) {
    .ullink li a{
        font-size: 1.4rem;
    }

}
@media screen and (min-width:992px) {
    .heddertel{
        font-size: 1.6rem;
        letter-spacing: 1px;
    }
    
    .footerimg{
        height: 200px;
    }
    .bbommd{
        border-bottom:none;
    }

    .nablibg{
/*        background-color: rgba(0,147,255,1.00);
*/        background-color:rgba(1,129,223,1.00);
        margin: 0px 8px;
    }
    .nablibg a{
        color: #ffffff !important;
        height: 100px;
          line-height:80px;
    }
    .fs25{
        font-size: 2.5rem;
        letter-spacing: 2.5px;
    }
    .pcrlign{
        border-right: 3px solid rgba(225,225,225,1.00);
    }
    .bgjigyou01{
        background-image: url("../images/bg.png");
        
    }
    .bgjigyou02{
        background-image: url("../images/bg2.png");
    }
    .bgjigyou03{
        background-image: url("../images/bg3.png");
    }
    .bgjigyou04{
        background-image: url("../images/bg4.png");
    }
    .bgjigyou05{
        background-image: url("../images/bg5.png");
    }
    .mh400{
        min-height: 280px;
    }
}


.toplpg{
    font-weight: bold;
}

.lpg{
    background-color: rgba(243,137,55,1.00);
    padding: 3px 5px;
    font-weight: 700;
    margin-right: 5px;
}


.underheline{
    border-bottom: 1px solid rgba(221,221,221,1.00);
    border-top: 1px solid rgba(221,221,221,1.00);
}

.adeco{
    color:rgba(64,34,15,1.00);
    text-decoration: none;
}

.adeco:hover{
    color:rgba(64,34,15,0.70);
}

/*.infopdf{
    display: none;
}*/

.opalink{
    color: rgba(0,0,0,0.70);
}


.opalink:hover{
    opacity: 0.7
}


.tmidashi {
    margin:  0;            
    position:  relative;    
    font-weight:  normal;   
    margin-bottom: 35px;    
    font-size: 40px;        
    text-align:  center;
    letter-spacing: 1.5px;
}

.tmidashi-point {
    display:  block;        
    font-size:  14px;       
    margin-top:  10px;      
    position:  relative;    
    width: 140px;           
    margin: 10px auto 0;    
    background-color:  #fff;
}
 
.tmidashi-point:before {
    content: '';            
    height:  1px;           
    background-color:  #000;
    position:  absolute;    
    top: 0;                 
    bottom:  0;             
    margin:  auto;          
    z-index: -1;            
    width: 200px;           
    left:  -30px;       
}





.toph3{
  padding: 1rem 1rem;
  border-left: 5px solid rgba(35,35,35,1.00);

}

.toptitle , .absotitle{
    font-size: 2.75rem;
}

.topkaiteki01{
    font-size: 2.0rem;
}
.topkaiteki02{
    font-size: 1.6rem;
}

.topservi{
    font-size: 1.8rem !important;
}

.topsubtitle{
    font-size: 1.5rem;
}


p , .divnum{
    line-height: 2.0rem;
    letter-spacing: 1px;
}

.ft20{
    font-size: 24px;
}
.mainbg{
/*    background-image: url("../images/mainbg.png");
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;*/
}

.rectborder{
    border: 2px solid #ffffff;
}

.h1cus{
    font-weight: bold;
    letter-spacing: 2px;
}

.h1small{
    font-size: 2.0rem;
}

.h2top{
    font-size: 1.5rem;
    font-weight: bold;
}
  .nav-link.active,
  .nav-item.show .nav-link {
    color: #ffffff !important;
    background-color: rgba(35,35,35,1.00) !important;
  }

.card{
    background-color: transparent;
}
.card-title{
    background-color: rgba(35,35,35,1.00);
    color: white;
    padding: 4px 10px;
}

.card-header{
    background-color: #EF9619;
    color: white;
}

.btn-link{
        color: white;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 1.2rem;
    text-align:left;
}
.card-text{
    padding: 4px 10px;
}

.container p{
    font-size: 18px;
}

.tablestyle{
    
}

.lignsub:first-letter , .pricolor{
  /*font-size: 130%;*/
  color: rgba(35,35,35,1.00);
}

.pricolor{
    color: rgba(35,35,35,1.00);
    font-weight: bold;
    font-style: italic;
    font-size: 1.4rem;
}

.yblock{
    background-color: rgba(35,35,35,1.00);
    color: #ffffff;
}

.yblockbig{
    font-size: 24px;
}

.ullitxt li{
    font-size: 1.2rem;
    letter-spacing: 1px;
}

.ulbig{
    font-size: 1.6rem;
}

.fa-li{
    margin-left: 2rem;
    left:-4rem;
}

.otoiblock{
    border: 3px double rgba(255,191,31,1.00);
    background-color:rgba(255,225,151,0.50);
}
.bg_skew_border{
    background-color: rgba(255,191,31,0.20);
    background-image:
   repeating-linear-gradient(-45deg,#fff, #fff 7px,transparent 0, transparent 14px);
}

.wagwep-container ul#portfolio-filter li.current a{
    background:  #eb6100 !important;
}

.minhdiv div{
    min-height: 200px;
}



@media screen and (max-width:767px) {
    .topblack767{
        padding-left: 0px;
        padding-right: 0px;
    }
    .containerblk{
        max-width: 100% !important;
    }
}

@media screen and (min-width:992px) {
    .pcheight{
        height: 100px;

    }
    .pcheightimg{
/*        background-image: url("../images/hedderbg_pc.png");*/
    }
    .topconmargin{
        margin-top: -100px;
    }
}

.bgblack50{
    background-color: rgba(0,0,0,0.50)
}

.btn-secondary{
    background-color: #EF9619;
    border-color: transparent;
}

.hmt-6{
    margin-top: 120px;
}

.hmt-con-top{
    margin-top: 90px;
}

.pcolor{
/*    color: #EF9619;*/
    color: #ffffff;
    font-weight: bold;
}

.hheight{
    height: 80px;
}

.ft24{
    font-size: 1.5rem;
}

.bg-white-100{
    background-color: #ffffff;
}
.lignunder{
/*    background:linear-gradient(transparent 60%, #DFDFDF 60%);*/
/*    text-shadow: 3px 3px 0 #cdcdcd;

    color: rgba(35,35,35,1.00);
    
    font-weight:bold;
    font-style: italic;*/
border-bottom: 5px solid #000;
}



@media screen and (min-width:991px) {
    .en-text {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        text-orientation: upright;
        writing-mode: vertical-rl;
    }
    .h1lheight{
        line-height: 1.5;
    }
    .b-radius {
        border-radius: 16px 16px 0px 0px;
    }
}

.tatesize{
    font-size: 2.6rem;
}

.tatecolor{
/*    color:rgba(64,35,15,1.00);*/
}


.topblockimg {
  position: relative;
  }

.ab_bole{
    position: absolute;
    left: 30px;
    bottom: 40px;
/*    height: 80px;
*/}

.ab_bole_right{
    position: absolute;
    right: 30px;
    bottom: 40px;
/*    height: 80px;
*/}


.topbg01{
    background-color: #fbddb9;
}

.topbg02{
    background-color: #fee6c0;
}

.topbg03{
    background-color: #fff9d5;
}

.topbg04{
    background-color: #fffff3;
}


.switch3 {
	visibility: hidden;
}

.blwblock{
    background-color: rgba(35,35,35,1.00);
    color: white;
}

.foot{
    background-image: url("../images/ftbg.jpg");
    background-position: center top;
    
}



/*
.topblockimg p {
  position: absolute;
  color: white;
  font-weight: bold;
  font-size: 1.2em;
  top: 10px;
  left: 0;
    padding: 10px;
    background-color: rgba(64,35,15,1.00);
  }

.topblockimg img {
  width: 100%;
  }*/


.topbgarea{
    height: 95vh;
    background-position: center bottom ;
    background-size: cover;
   height : -webkit-calc(100vh - 76px) ;
   height : calc(100vh - 76px);
    background-image:url("../images/topmv.png");
}

.topbgareasub{
    min-height: 100vh;
    background-color: rgba(0,0,0,0.50);
}

.undertopbgarea{
    height: 95vh;
    background-position: center bottom ;
    /*background-size: cover;*/
   height : -webkit-calc(100vh - 76px) ;
   height : calc(100vh - 76px);
    background-image:url("../images/mv_exxterior.jpg");
}

.undertopbgareasub{
    min-height: 100vh;
    background-color: rgba(0,0,0,0.50);
}






.greenbg{
    background-color: #1d3c01;
}



.lgicolor{
    background-color: transparent !important;
    color: white;
}


.arrow_wrap{
    padding-bottom: 50px; /* 高さに合わせて調節してください。*/ 
    overflow: hidden;
} 
.arrow{
    position: relative;
}
.arrow::after{
    content: '';
    position: absolute;
    top: 100%;
    left: calc(50vw - 50%);
    width: 0;
    height: 0;
    border-top: 50px solid #555; /* 好みで高さ色を変えてください */
    border-left: 100px solid transparent;
    border-right: 100px solid transparent;
}

			.contents {
				position: relative;
				overflow: hidden;
				margin: 10% 0;
				padding: 80px 0;
			}
			.contents:before {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 120%;
				height: 80%;
				margin: 3% -10% 0;
				background: #011931;
				-webkit-transform-origin: left center;
				-ms-transform-origin: left center;
				transform-origin: left center;
				-webkit-transform: rotate(3deg);
				-ms-transform: rotate(3deg);
				transform: rotate(3deg);
				z-index: -1;
			}
			.contents.reverse:before {
				margin: 2% -10% 0;
				-webkit-transform-origin: right center;
				-ms-transform-origin: right center;
				transform-origin: right center;
				-webkit-transform: rotate(-3deg);
				-ms-transform: rotate(-3deg);
				transform: rotate(-3deg);
			}

.daigoh2{
  padding: 1rem 3rem;
  -webkit-transform: skew(-15deg);
  transform: skew(-15deg);
  color: #fff;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(35,35,35,1.00)), to(rgba(64,35,15,1.00)));
  background-image: -webkit-linear-gradient(left, rgba(35,35,35,1.00) 0%, rgba(64,35,15,1.00) 100%);
  background-image: linear-gradient(to right, rgba(35,35,35,1.00) 0%, rgba(64,35,15,1.00) 100%);

}



.topsparea{
    min-height: 100vh;
    background-image: url("../images/topsparea.jpg");
    background-position: center center;
    background-repeat: no-repeat;

}

@media screen and (max-width:990px) {
    .topsparea{
         height: auto;
        background-image: url("../images/topsparea_sm.jpg");
        background-position: center top;
    }
    .tatesize{
        font-size: 2.0rem;
    }
}



.sono3 { 
    background-color: #2043a0;
/*    background-color: #ffffff;*/
    box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.3);
}
.sono3 .navbar-nav .nav-link { 

    color: rgba(255,255,255,1.00);
/*    color: #EF9619;*/
    
    /*color: rgba(64,35,15,1.00);*/
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width:990px) {
    .sono3 .navbar-nav .nav-link {
        text-align: right;
        border-top: 1px solid #ffffff;
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .hmt-6{
        margin-top: 65px;
    }
}

.sono3 .navbar-nav .nav-link:hover {
    color: #cccccc;
}
.sono3 .navbar-nav .active > .nav-link { 
    color: rgba(35,35,35,1.00);
}
.sono3 .navbar-toggler {
    border-color: rgba(35,35,35,1.00);
/*    background-color: transparent;*/
    background-color: #ffffff;
    width: 110px
}
.navbar-toggler-icon{
    width: auto;
}

.sono3 button>.navbar-toggler-icon {
    color: rgba(35,35,35,1.00);
    border-color: rgba(35,35,35,1.00);
    padding-top:3px;
}

footer a.text-light:hover { color: #fed136!important; text-decoration: none; }
footer .cizgi { border-right: 1px solid #535e67; }
@media (max-width: 992px) { footer .cizgi { border-right: none; } }
    

.footerbg{
    min-height: 250px;
    background-image: url("../image/footer1.jpg");
    background-position: left center;
    background-size: cover;
}

.btn-info {
    color: #fff;
    background-color: rgba(35,35,35,1.00);
    border-color: rgba(35,35,35,1.00);
}

.topbtn-info{
    color: #fff;
    background-color: rgba(35,35,35,1.00);
    border-color: rgba(35,35,35,1.00);
}



#main{


    
/*    color: rgba((255,255,255,1.00));*/
}

.navbar-brand{
     color: rgba((255,255,255,1.00));   
}

.tophedder{
    position: relative;
    height: 100%;
}

.carousel-caption{
    /*top:45%;*/
    color:  rgba((255,255,255,1.00));

}

@media screen and (max-width:575px) {
    .carousel-caption {
        position: absolute;
        width: 85%;
        /* right: 15%; */
        left: 5%;
        z-index: 10;
    }
}


.stitlehosoku{

    font-size: 1.4em;

}
.stitle{
    color: #311300;
    font-weight: bold;
/*    font-size: 1.8em;*/
    background-color:rgba(255,255,255,0.75);
    padding: 10px;
}

.sgreen{
    color: #ffffff;
    font-weight: bold;
/*    font-size: 2.4em !important;*/
    background-color:rgba(25,87,41,0.75);
    padding: 10px;
}

@media screen and (max-width:600px) {
    .sgreen{
/*        font-size: 1.4em !important;*/
        padding: 10px;   
    }
    
}




.sword{
    display: block;
    font-weight: bold;
    font-size: 2.0em;
    margin-top: 20px;

}

.stitlesub{
    color: #ffffff;
    font-weight: bold;
    font-size: 2.0em;

}
.stitlesub2{
    color: #ffffff;
    font-weight: bold;
    font-size: 1.6em;

}
.subtopmenu li a{
    font-size: 1.2em;
}

.line_green{
    border: none; 
    height: 1px; 
background: rgb(49,19,0);
background: linear-gradient(90deg, rgba(49,19,0,1) 0%, rgba(255,255,255,1) 29%, rgba(255,255,255,1) 69%, rgba(49,19,0,1) 100%);
    margin-top: 30px;
    margin-bottom: 30px;
}

.ftbg{
    background-color:#2043a0;
/*    background-color: #EF9619;*/
    color: #ffffff;
    font-weight: bold;
}

.tplogo{
	max-height:50px;
}

@media screen and (max-width:575px) {
/*    .tplogo{
        width: 200px;
    }*/
}

@media screen and (max-width:450px) {
    .tplogo{
        /*width: 175px;*/
    }
}


.blockmidashi{
    font-weight: bold;
    font-size: 1.3em;
    color: #311300;
}

.blockheight{
    height: auto;
}

.mainvh100{
    height: 100vh;
}

.mvleft{
    position: relative;
    height:calc(100vh - 48px);

    /*background-color: rgba(123,0,135,1.00);*/
    background-image: url("../image/808671.jpg");
    background-position: center center;
}

.mvlefttitle{
    position: absolute;
    width: 75%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.ft01{
    font-size: 20px;
    color: white;
}

.ft02{
    font-size: 40px;
    color: white;
}

.ft03{
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 1px;
}

.ft03big{
    font-size: 30px;
    font-weight: bolder;
    letter-spacing: 5.5px;
}

.cred{
    color: red;
}

.bgglay{
    background-color: #231916;
}

.works_contents ul {
    overflow: hidden;
}

.works_contents ul li{
    list-style-type: none;
    width: 50%;
    margin: 0 0px 0px 0;
    font-size: 14px;
    float: left;
}
    .works_contents ul{
        padding-inline-start: 8px !important;
    }

@media screen and (max-width:767px) {
    .works_contents ul li{
        list-style-type: none;
        width: 90%;
        margin: 0 0px 0px 0;
        float: left;
    }
    .works_contents ul{
        padding-inline-start: 8px !important;
    }
}


.mvright{
    position: relative;
    height:calc(100vh - 48px);
    background-image: url("../image/67237945.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
 
}

.mvrtxt01{
    position: absolute;
    bottom: 20%;
    left: 10%;
    font-size: 28px;
    color: rgba((255,255,255,1.00));
    background-color: rgba(255,255,255,0.89);
    padding: 25px 35px 25px 15px;
    border-bottom: #311300 4px solid;
}

.top3line01{
    position: relative;
    background-image: url("../image/topblock01.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    height: 500px;
}

.top3conarea{
    position: absolute;
    width: 80%;
    height: 300px;
    top:10%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background-color: rgba(255,255,255,0.9);
   border-top: #311300 4px solid;
}

.slinetitle{

    font-size: 24px;
    font-weight: bold;
    letter-spacing: 3px;
    padding: 15px 25px;


}

.topbt{
    position: absolute;
    bottom:10%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.top3line02{
    background-image: url("../image/topblock02.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    height: 500px;
}


.top3line03{
    background-image: url("../image/topblock03.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    height: 500px;
}


.top3line04{
    background-image: url("../image/topblock04.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    height: 500px;
}


.p-page-header__inner { 
   height: 100px;
    position: absolute; 

    left: 50%;
    transform: translateX(-50%);

    bottom: 0; 

}


.p-page-header__titletop { 
/*    background:rgba(30,38,120,0.60);*/
    color: #fff; 
/*    color: rgba(61,61,61,1.00);*/
    display: -webkit-box;
    display: -webkit-flex; 
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-align: center; 
    -ms-flex-align: center; 
    -ms-grid-row-align: center; 
    align-items: center; 
    justify-content: center; 
    font-size: 48px; 
    line-height: 1.5; 
    height: 200px; 
    margin-bottom: 0; 
    font-weight: 700;
}



.p-page-header__title { 
    background:rgba(6,101,169,0.70);
   color: #fff; 

    display: -webkit-box;
    display: -webkit-flex; 
    display: -ms-flexbox; 
    display: flex; 

    -ms-grid-row-align: center; 
    align-items: center; 
    justify-content: center; 
    font-size: 28px; 
    line-height: 1.5; 
    width: 200px; 
    height: 100px; 
    margin-bottom: 0; 
    font-weight: 700;
}

.underh1{
    font-size: 2.2rem;
}


.topca{
/*  text-shadow:1px 0 0 #fff,0 1px 0 #fff,-1px 0 0 #fff,0 -1px 0 #fff,3px 3px 0 #fff;
*/  text-shadow:1px 0 0 rgba(64,35,15,1.00),0 1px 0 rgba(64,35,15,1.00),-1px 0 0 rgba(64,35,15,1.00),0 -1px 0 rgba(64,35,15,1.00),3px 3px 0 rgba(64,35,15,1.00);
  color:#ffffff;
}

.screen {
  width: 100vw;
  height: 700px;
  border: 1px solid red;
  overflow: hidden;
  position:relative;
}
.inner {
/*  width: 120vw;*/
  width: 120vw;
  margin-left: -10vw; /* screenからはみ出る20vwの半分、左にずらす */

}
.link-block {
  display: block;
  width: 60vw;
  height: 700px;
  position: relative;

  transform: skew(-20deg);
  float:left;
}








.nanamebg01{
    background-image:url("../image/li01_01.jpg");
    background-size: cover;
      transform: skew(0deg);
}

.nanamebg02{
    background-image:url("../image/mailform_main_pc.jpg");
    background-size: cover;
}

.link-block:hover {
  opacity: 0.7;
}
.contents {
  transform: skew(20deg); /* 文字が変形してしまうので戻す */
  width: 225px;
  height: 175px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}









.h2overborder{
  position: relative;
  width: 390px;
/*  margin: 20px auto;*/
  padding: 10px;
    text-align: left;
}

.h2overborder:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 330px;
  height: 3px;
  background: #007db9;
}

.h2overborder:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 110px;
  height: 3px;
  background: rgba(64,35,15,1.00);
}



.underbgtop{
    position: relative;
    height: 100vh;
     background-image: url("../image/banner_topbg.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}



.underbg01{
    position: relative;
    height: 600px;
     background-image: url("../images/topback01.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg01k{
    position: relative;
    height: 600px;
     background-image: url("../image/banner_jigyo01.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg01d{
    position: relative;
    height: 600px;
     background-image: url("../image/banner_jigyo02.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbgsub{
    position: relative;
    height: 250px;
     background-image: url("../images/submidashi.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg02{
    position: relative;
    height: 250px;
     background-image: url("../image/enkaku_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.topjigyotxtarea{
    height: 600px;
    background-color: rgba(64,35,15,1.00);
}

.topback01{
    height: 600px;
    background-image: url("../image/topback01.jpg");
    background-position: center center;
    background-repeat: no-repeat;
}

.topback02{
    height: 600px;
    background-image: url("../image/topback02.jpg");
    background-position: center center;
    background-repeat: no-repeat;
}

@media screen and (max-width:767px) {
    .topback01{
        height: 300px;
        background-image: url("../image/topback01.jpg");
        background-position: center center;
        background-repeat: no-repeat;
    }
    .topback02{
        height: 300px;
        background-image: url("../image/topback02.jpg");
        background-position: center center;
        background-repeat: no-repeat;
    }
}




.underbg03{
    position: relative;
    height: 250px;
     background-image: url("../image/tenpo_banner_003.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg04{
    position: relative;
    height: 250px;
     background-image: url("../image/zikkenshistu_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg05{
    position: relative;
    height: 250px;
     background-image: url("../image/setssubi_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg06{
    position: relative;
    height: 250px;
     background-image: url("../image/oem_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg07{
    position: relative;
    height: 250px;
     background-image: url("../image/pb_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg08{
    position: relative;
    height: 250px;
     background-image: url("../image/coffea_sample.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg09{
    position: relative;
    height: 250px;
     background-image: url("../image/recruit_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.underbg10{
    position: relative;
    height: 250px;
     background-image: url("../image/syouhin_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
/*    font-size: 18px;*/
    font-weight: bold;
    letter-spacing: 5px;
}

.storebg{
    position: relative;
    height: 100px;
     background-image: url("../image/brown_banner.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
    font-weight: bold;
    letter-spacing: 5px;
}


.storebg2{
    position: relative;
    height: 100px;
     background-image: url("../image/brown_banner2.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
    font-weight: bold;
    letter-spacing: 5px;
}









.undertitle{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}


.frame , .frame2{
    width: 100%;
}

@media screen and (min-width:992px) {
    .blockheight{
        height: 80px;
    }
    .rborder{
        border-right: 2px solid #311300;
    }
    .lborder{
        border-left: 2px solid #311300;
    }
    
    .frame {
        position: relative;
        display: inline-block;
        width: 100%;
        height: 450px;
        border: 5px solid #fff;
        box-shadow: 0 0 4px #999;
        transform: rotate(15deg); /* 全体を回転 */
        overflow: hidden; /* 不要部分は消す */
    }
    .frame img {
        margin-top: -50px;
        margin-left: -130px; /* ポジション調整 */
        transform-origin: 0 0;
        transform: rotate(-15deg); /* 写真は元に戻す */
    }

    .frame2 {
        position: relative;
        display: inline-block;
        width: 100%;
        height: 450px;
        border: 5px solid #fff;
        box-shadow: 0 0 4px #999;
        transform: rotate(-15deg); /* 全体を回転 */
        overflow: hidden; /* 不要部分は消す */
    }
    .frame2 img {
        margin-top: -140px;
        margin-left: -150px; /* ポジション調整 */
        transform-origin: 0 0;
        transform: rotate(15deg); /* 写真は元に戻す */
    }

}

@media screen and (max-width:991px) {
    .frame img, .frame2 img{
        width: 100%;
    }
}

.h2title{
    border-left: 8px solid #2043a0;
    padding-left: 15px;
    font-size: 1.5rem;
    margin-bottom: 20px;
    font-weight: bold;
    letter-spacing: 3px;
}
    

.h2title:first-letter {
  font-size: 150%;
  color: #2043a0;
}

.contxt{
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px;
    line-height: 2.8;
}

h2.h2small{
    color: #311300;
    font-size: 22px;
    padding-top: 46px;
}

.h2smallhosoku{
    font-size: 32px;
    line-height: 1.2 !important;
    padding-left: 0px;
    padding-top: 0px;
}



.tb tr , .tb td {
    border: 1px solid rgba(64,35,15,1.00);
    padding: 17px 25px;
    line-height: 2.2;

}

.td1{
    text-align: center; 
    height: 45px; 
    vertical-align: middle; 
    width: 218px; 
/*    background-color: #FDEDD9 !important;*/
        background-color:rgba(0,147,255,1.00);
        color: white;
    font-weight: bold;
}

.td2{
    text-align: left;
    height: 45px;
    vertical-align: middle;
    width: 693px;
}


.td3{
    border: none !important;
    padding: 17px 25px;
    line-height: 2.2;
    
    text-align: left; 
    height: 45px; 
    vertical-align: middle; 
    width: 360px; 
/*    color: #ffffff;*/
}

.td4{
    border: none;
    padding: 17px 25px;
    line-height: 2.2;
    
    text-align: left;
    height: 45px;
    vertical-align: middle;
    width: 360px;
}
.td5{
    border: none;
    padding: 17px 25px;
    line-height: 2.2;
    
    text-align: left;
    height: 45px;
    vertical-align: middle;
    width: 180px;
}

@media screen and (max-width: 600px) {
    .tablestyle{
        width: 100%;
    }
    .tb tr , .tb td {
         border: none ;
/*        padding: 17px 25px;
        line-height: 2.2;*/

    }
    .td1 , .td2{
        display: block;
        width: 100%;
        height: auto;

    }
    .td1{
        text-align: left;
        background-color:#2043a0;
        color: white;
    }
    .td2{
        padding-top: 0px;
    }
    .tb100{
        min-width: 100%;
    }
}


@media screen and (max-width: 767px) {
    .tb tr , .tb td {
         border: none ;
/*        padding: 17px 25px;
        line-height: 2.2;*/

    }
    .td3, .td4, .td5{
        display: block;
        width: 100%;
        height: auto;
        padding: 10px 12px !important;
    }
    .td3{
        text-align: left
    }
    .td4{
        padding-top: 0px;
    }
    .td5{
        border-bottom: 1px solid rgba(6,101,169,1.00) !important;
    }
    .tabtbl100{
        width: 90%;
    }
}

.tdbg{
    background-color: rgba(6,101,169,1.00);
    color: #ffffff;
}



.btn-success {
    background-color: #2043a0;
    border-color: #666666;
    font-weight: bold;
}

.btn-success:hover {
    background-color:rgba(0,147,255,1.00);
    border-color:#333333;
}




.titletext{
	font-size:40px;
}



.tblock{
	margin-top: 15px;
	margin-bottom: 15px;
	padding-top: 15px;
	padding-bottom: 15px;
}



/*no1*/
.txt--c {
    text-align: center;
	font-size: 18px;   
	color: #2b2b2b;
}

.section__title__field .section__title__text {
    font: 500 50px "Noto Sans JP", sans-serif;
}

.section__title__field .section__subtitle__text {
    font: 400 18px "Noto Sans JP", sans-serif;
}


/*no2*/
.midashi {
    font-weight: 600;
    padding: 0.25em 0.25em;
    /* margin-left: 10px; */
    color: #2b2b2b;
    background: transparent;
    border-left: solid 5px #FFC778;
    margin-top: 10px;
}

/*no3*/
.midashi03{
	font-family: "Sawarabi Mincho";
	color: #FFC778;
	text-align: center;
	font-weight: 500;
	font-size: 2.4em;
}

/*no4*/
.midashi04{
	border-bottom: double 5px #DFDFDF;
}

/*no5*/
.midashi05{
  background: linear-gradient(transparent 70%, #DFDFDF 70%);
}

/*no6*/
.midashi06{
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
  font-family: "Sawarabi Mincho";
font-weight: 500;
font-size: 2.4em;

}
.midashi06:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FFC778;
  border-radius: 2px;
}

.midashi07 {
  position: relative;
  padding: 0.25em 0;
}
.midashi07:after {
  content: "";
  display: block;
  height: 4px;
  background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
  background: linear-gradient(to right, #FFC778, transparent);
}


.midashi08 {
  position: relative;
  display: inline-block;
  padding: 0 50px;
  font-weight: 600;
}

.midashi08:before, .midashi08:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 25px;
  height: 2px;
  background-color: #2b2b2b;
}

.midashi08:before {
  left:0;
}
.midashi08:after {
  right: 0;
}

.midashi09{
    background-image:url("../image/titlebg01.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    height: 150px;
    color: white;


}

.midashi09txt{
	font-family: "Sawarabi Mincho";
	font-weight: bold;
}

.midashi09txt span{
	font-size: 16px;
}

/*.bigmt{
    margin-top: 200px;
}*/

.lignsub , .h1lheight{
/*    font-style: italic;
    font-weight: bold;*/
    padding: 40px 0px;
/*      padding: 1rem 1.5rem;
  border-left: 8px solid #DFDFDF;*/
/*background-image:url("../images/h2yoko.png");
background-repeat:no-repeat;
background-position:60% 60%;*/

text-align:center;
}

.lignsub span{
    padding-top: 20px;
}

.h1lheighttop{
    font-style: italic;
    font-weight: bold;
    padding: 40px 0px;
}

.sublink a{
    text-decoration: underline;
    color: #DFDFDF !important;
}

.pointnum {
  position: relative;
  overflow: hidden;
  padding: 1.5rem 2rem 1.5rem 130px;
  border-top: 3px solid #DFDFDF;
  font-size: 1.6rem;

}

.pointnum:before {
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #EF9619;
}

.pointnum span {
  font-size: 40px;
  font-size: 3rem;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 10px;
  padding-left: 16px;
  color: #fff;
}




@media screen and (max-width:767px) {
    .container p{
        font-size: 16px;
        line-height: 1.8rem;
        letter-spacing: 0.8px;
    }
    .navbar-toggler{
        font-size: 14px;
        padding-left: 6px;
        padding-right: 6px;
    }
    .sono3 .navbar-toggler{
        width: 80px;
    }
    .ft01{
        font-size: 14px;
        color: white;
    }

    .ft02{
        font-size: 18px;
        color: white;
    }
    .ft03 , h1{
        font-size: 24px;
        font-weight: bolder;
        letter-spacing: 3px;
    }
    
    h2.h2title , .lignsub {
        font-size: 20px;
        font-weight: bold;
    }
    .pointnum {

      padding: 1.5rem 2rem 1.5rem 96px;
      border-top: 3px solid #DFDFDF;
    }
    .pointnum:before {
        left: -120px;
    }
    .pointnum span{
        font-size: 2.5rem;
        padding-left: 9px;
    }
    .pointnum{
        font-size: 1.4rem;
    }
    
    .h2top {
        font-size: 1.2rem;
        font-weight: bold;
    }
    .h2smallhosoku{
        font-size: 20px;    
    }
    .contxt{
        line-height: 1.6;
    }
    .mvrtxt01{

        bottom: 90%;
        left: 0;
        width: 100%;
        font-size: 16px;
        height: auto;

    }
	.bigmt{
	    margin-top: 100px;
	}
}


#page_top{
  width: 50px;
  height: 80px;
  position: fixed;
  right: 0;
  bottom: 30px;
/*  opacity: 0.6;*/
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
/*    background-color: #ffffff;*/
    background-color:rgba(0,147,255,1.00);

}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 20px;
  color: #ffffff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -20px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'TOP';
  font-size: 12px;
  color: #ffffff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;

}

section {
  width: 100%;
  height: 100vh;
  position: relative;
 /*overflow: hidden;*/
}
 
video {
      min-width: 100%;
    margin-top: 80px;
/*  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;*/
/*  background: url('../images/bg.png') no-repeat;
  background-size: cover;*/
  
  z-index: -1;
}
 

.relatop{


}

.bg-white {
  background: rgba(255, 255, 255, .75) !important;
/*  position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  padding: 20px;*/
}


.topbgstatic{
	display:none;
}

@media screen and (max-width:991px) {
	.topbgmovie{
		display:none !important;
	}
	.topbgstatic{
		display:block;
	}
}
