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;
}

.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; }


#outtotaltax , .telbig{
	font-size:1.5rem;
	font-weight:bold;
	color:#007bff;
}

.swal-text{
    color: #333333;
    font-weight: bold;
}

.swal-button{
    background-color:#007bff;
}


@media screen and (min-width:992px) {
	.modal-dialog {
	    max-width: 800px;

	}
}

.bottomborder{
	border-bottom:4px solid #007bff;
}

a {
    color: #058346;
}

.sono3 { 
    background-color: #fff;
    box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.3);
}
.sono3 .navbar-nav .nav-link { 
    color: rgba(85,85,85,1.00); 
}
.sono3 .navbar-nav .nav-link:hover {
    color: #058346;
}
.sono3 .navbar-nav .active > .nav-link { 
    color: #058346;
}
.sono3 .navbar-toggler {
    border-color: #058346;
    background-color: transparent;
    width: 110px
}
.navbar-toggler-icon{
    width: auto;
}

.sono3 button>.navbar-toggler-icon {
    color: #058346;
    border-color: #058346;
    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; } }
    



#main{
    color: rgba(85,85,85,1.00);
}

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

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

.carousel-caption{
    bottom:40%;
    color:  rgba(85,85,85,1.00);

}

.stitle{
    color: #095B2E;
    font-weight: bold;
    font-size: 1.8em;
    background-color:rgba(255,255,255,0.75);
    padding: 10px;
}
.sword{
    display: block;
    font-weight: bold;
    font-size: 2.0em;
    font-size: 2.6em;
    margin-top: 20px;

}



.line_green{
    border: none; 
    height: 1px; 
    background: linear-gradient(90deg, rgba(5,131,70,0.1) 0%,  rgba(5,131,70,1) 50%, rgba(5,131,70,0.1) 100%);
    margin-top: 30px;
    margin-bottom: 30px;
}

.ftbg{
    background-color:#058346;
    color: #ffffff;
    font-weight: bold;
}
@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: #058346;
}

.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: 40px;
    font-weight: bolder;
    letter-spacing: 3px;
}

.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(85,85,85,1.00);
    background-color: rgba(255,255,255,0.89);
    padding: 25px 35px 25px 15px;
    border-bottom: #095B2E 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: #095B2E 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;
}

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

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

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

.underbg03{
    position: relative;
    height: 200px;
     background-image: url("../image/recstbg02.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
    font-size: 28px;
    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%);
}

.bgrec{
    
    background-color:rgba(5,131,70,0.71);
}

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

@media screen and (min-width:992px) {
    .blockheight{
        height: 80px;
    }
    .rborder{
        border-right: 2px solid #058346;
    }
    .lborder{
        border-left: 2px solid #058346;
    }
    
    .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{

    
}
h2.h2title {
    font-weight: bold;
    font-size: 40px;
    position: relative;
    padding: 1.5rem;
    text-align: center;

}

h2.h2title:before {
  position: absolute;
  bottom: -5px;
  left: calc(50% - 40px);
  width: 80px;
  height: 4px;
  content: '';
  border-radius: 3px;
  background: #058346;
}
.contxt{
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px;
    line-height: 2.8;
}

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

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

.h2smallhosoku2{
    font-size: 28px;
    line-height: 1.2;
    padding-left: 0px;
    padding-top: 0px;
}

.lheight2{
    line-height: 1.6 !important;
}


.tb tr , .tb td {
    border: 1px solid #ddd;
    padding: 17px 25px;
    line-height: 2.2;
    background: #fff;
}

.td1{
    text-align: center; 
    height: 45px; 
    vertical-align: middle; 
    width: 218px; 
    background-color: #f7f7f7 !important;
}

.sttd1{
    width: 160px; 
}


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


.btn-success {
    background-color: #058346;
    border-color: #095B2E;
}

.btn-success:hover {
    background-color:rgba(5,131,70,0.80);;
    border-color:#095B2E;
}




.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 #FFC778;
}

/*no5*/
.midashi05{
  background: linear-gradient(transparent 70%, #FFC778 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;
}

@media screen and (max-width:767px) {
    .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: 22px;
        font-weight: bolder;
        letter-spacing: 3px;
    }
    h2.h2title {
        font-size: 20px;
    }
    .h2smallhosoku{
        font-size: 20px;    
    }
    .contxt{
        line-height: 1.6;
    }
    .mvrtxt01{

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

    }
}

.pttop46{
    padding-top: 46px;
}


.pl-rectxt{
    padding-left: 2rem!important;
}

.imtitle {
  position: relative;
}

.imtitle p {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0; 
  color: white;
  background: #058346;/*背景色*/
  font-size: 18px;
  line-height: 1;/*行高は1に*/
  padding: 15px 10px;/*文字周りの余白*/
}

#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: #058346;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 20px;
  color: #fff;
  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: #fff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  color: #fff;
}

#telfaxarea , #kojin{
    display: none;
}


.p-form-error span {
    color: red;
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 0.7;
}

.bgtop{
    background-image: url("../image/339007_m.jpg");
    background-position: left center;
    font-weight: bolder;
}

@media screen and (min-width:767px) {

    .bgtopheight{
        height: 500px;
    }
    .subh1{
        font-weight: bolder !important;
        font-size: 1.25rem;
    }
}