@charset "UTF-8";
*{
	margin:0;
	padding:0;
}
.grecaptcha-badge { visibility: hidden; }
body{
	line-height:150%;
    font-size:1.10vw;
	font-weight:normal;
	font-family:"Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/*ChromeとOperaのみだけに適用されるCSSハック*/
_::content, _:future, body { 
	font-size:1.14vw;
}
/*Firefoxだけに適用されるCSSハック*/
@-moz-document url-prefix() {
  body {
    font-size:1.10vw;
  }
}
h1,h2,h2,h3,h5,h6{
	font-size: 100%;
	font-weight:300;
	line-height: 150%;
}
header,footer,article,section,nav,small,aside,div,ul,li,h1,h2,h3,h4,h5{
	display:block;
	box-sizing:border-box;
	position:relative;
}
li{
	list-style:none;
}
img{
	display:block;
	outline:none;
	border:none;
	width:100%;
	height:auto;
}
a{
	text-decoration:none;
	color: #084800;
}
a:hover{
	color:green;
}
iframe{
	border:none;
}
table{
	border-collapse:separate;
}
th,td{
	font-weight:normal;
}
th{
	text-align:left;
}
td{
	text-align:left;
}
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset !important;
}
strong{
	font-weight: bold;
}
/*------------------------------------*/
#wrap{
	min-width:760px;
	width:100%;
}
#wrap>div{
	width:75%;
	margin-left:25%;
}
.shareheader{
	position:fixed;
	left:0;
	top:0;
	height:100%;
	width:25%;
	padding-bottom:3em;
	overflow-y:scroll;
	border-left:.5em solid #3e6d00;
	border-right: .15em solid black;
}
.shareheader h1{
	padding:10% 20%;
}
.shareheader>p{
	padding:0 34% 2em;
}
.shareheader nav{
	text-align: center;
	padding:0 3em;
}
.shareheader li{
	margin: 1.5em 0;
}
.navslideoff{
	transform: translate(-10%,0);
	opacity:0;
}
.navslide{
	opacity: 1.0 !important;
	transform: translate(0,0) !important; 
}
.globalnav a{
    display: block;
    padding: .4em 1em;
    box-shadow: 0 1em 2em -1em #56420a;
	-webkit-transition:0.2s;-moz-transition:0.2s;-o-transition:0.2s;-ms-transition:0.2s;transition:0.2s;
}
#sheader .globalnav a{
	padding:.4em 1.5em;
}
.globalnav a:hover{
	box-shadow:none;
	box-shadow:0 1px 3px #56420a;
}
/*------------------------------------*/
#breadcrumb{
    text-align: center;
    margin: 2em 0;
}
/*------------------------------------*/
#topimage,
.himg{
	overflow: hidden;
}

#topimage img{
	transform:scale(1.4);
	animation:name 10s forwards;
}
@-webkit-keyframes name{100%{transform:scale(1)}}
@keyframes name{100%{transform:scale(1)}}
.himg img {
    transition-duration: .8s;
    transform: scale(1.1);
}
.himg img:hover {
    transform: scale(1);
}
.btn{
	width: 80%;
	text-align: center;
	box-shadow: 0em 1em 1em -1em black;
	border: 1px solid #aaa;
    transition:0.4s;
    margin: .7em auto .5em;
}
.btn:hover{
	box-shadow:none;
	box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 1em rgba(128, 128, 128, 0.1) inset;
	border-top: 1px solid #aaa;
}
.btn a{
	display:block;
	background:white;
    line-height: 260%;
}
.shousai a {
    font-size: 1.3em;
    display: block;
    text-align: center;
    white-space: nowrap;
    padding: .5em;
    border: 1px solid #466608;
    box-shadow: 0 1em .5em -1em #555;
    font-weight: 400;
    line-height: 1.5em;
    transition-duration: .4s;
}
.shousai a:hover {
    box-shadow: 0 .5em .5em -1em #555;
    border-color: #aaa;
    color: #fff;
    background: #084800;
}
/*------------------------------------*/
/*front*/
#front>ul{
	border-top:6px solid #425d00;
	background:url(../images/front/front1.png);
}
#front>ul>li{
	width:31%;
	background:white;
	padding:1em;
	margin:1em 1%;
	box-shadow: 0 0.1em .5em #000102;
	transition-duration:0.4s;
}
#front>ul>li>p:nth-of-type(2){
    font-size: 1.5em;
    font-weight: 400;
    line-height: 2em;
    margin-top: .3em;
    color: #074007;
    text-align: center;
}
/*------------------------------------*/
/*news*/
#front4{
	padding: 3em 1em;
}
#news{
	width: 68%;
    margin-right: 4%;
	overflow-y:scroll;
}
#news li{
	padding:.2em .5em;
	background:white;
	border-bottom:1px solid #aaa;
	margin-bottom:.6em;
}
#news li:last-of-type{
	margin-bottom:0;
}
#news li time{
	width:20%;
}
#news li p{
	width:80%;
}
#news li p a{
	color:green;
}
#news li p a:hover{
	text-decoration: underline;
}
#fm{
    margin:1em;
}
#fm a{
    width:49%;
}
/*------------------------------------*/
/*footer*/
#footer-u{
	background: linear-gradient(to bottom right, #153100, #3d691b);
}
#footer-u li{
	width:16.66%;
	border-right:1px solid #446944;
}
#footer-u li:last-of-type{
	border-right:none;
}
#footer-u a{
	display:block;
	color:white;
}
#footer-u a:hover{
	text-decoration: underline;
}
#copyright{
	font-size:80%;
	padding:.4em 0;
}
/*------------------------------------*/
#fixbanner{
	width: 27%;
}
#fixbanner p,
#ichiritsu,
#fm a,
#taiyoubanner{
	border:1px solid #ddd;
	box-shadow:0 1em 1em -1em black;
	margin-bottom:1em;
    transition:0.4s;
}
#fixbanner p:hover,
#ichiritsu:hover,
#fm a:hover,
#taiyoubanner:hover{
	transform:scale(.98);
	box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 1em rgba(128, 128, 128, 0.1) inset;
}
#ichiritsu,
#taiyoubanner{
    margin:1em 1em 1.6em;
}
/*------------------------------------*/
/*mainpage 共通*/
.pagearticle header{
    padding:2em 0;
    margin: 0 auto;
    width: 100%;
    border-bottom: .1em solid #ddd;
    margin-bottom: 4em;
}
.pagearticle header h1{
	font-size: 140%;
    text-align: center;
}
.fadein{
	opacity:0;
}
#gaisoukodate1{
    padding:0 0 8em;
}
.pagearticle>section p {
    margin-bottom: 1em;
}
.title {
    margin: 0 0 1em;
    background: #f1f1f1;
    color: #333;
    padding: .5em 0 .5em 1.5em;
    font-weight: 300;
    font-size: 1.5em;
}
.pagearticle h3{
    font-size:1.5em;
    font-weight: 400;
    color:green;
    margin-bottom:.5em;
}
/*トップ*/
.pagea>section{
    padding:0 3em 8em;
}
.pagea section>div{
    margin-bottom: 3em;
}
.pagea section li{
    width: 48%;
}
/*詳細*/
/*------------------------------------*/
.pageb>section,
#taiyou>section{
    padding: 0 3em;
}
.pageb li img{
    height:100%;
    object-fit: cover;
}
.li2 li:nth-of-type(2){
    margin-right: auto;
    margin-left: 5%;
}
.li2 li,.li3 li, .li4 li {
    aspect-ratio:1/1;
    margin-bottom: 7em;
}
.li2 li{width:48%;}
.li3 li{width:30%;}
.li4 li{width:24%;}
.fill{object-fit:fill !important;}
/*------------------------------------*/
#company{
	margin-bottom:5em;
}
#company1{
	width:80%;
	margin:0 auto;
	padding-bottom:3em;
}
#company1 h2{
	width:100%;
}
#company1 div{
	padding:1em 0;
	line-height:180%;
}
#company2{
	background:#fafafa;
	padding:3em 0;
}
#company2 h2{
	width:80%;
	margin:0 auto 1em;
}
#company2>p,
#company2>div{
	width:80%;
	margin:0 auto;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}
#company2>div{
	line-height:180%;
}
#company3{
	padding:3em 0;
}
#company3 h2{
	width:80%;
	margin:0 auto 1em;
}
#company3 table{
	width:80%;
	margin:0 auto;
}
#company3 th,
#company3 td{
	padding:1em;
}
#company3 th{
	background:#f1f1f1;
	vertical-align: top;
	width: 20%;
}
#company3 td{
	background:#f8f8f8;
}
#company3 td .m_enkaku{
    display: block;
    font-weight: bold;
    margin-top:1em;
}
/*------------------------------------*/
/*drone*/
#drone li{
    width:48%;
}
#drone li p:nth-of-type(1){
    margin-bottom:0;
}
#drone li p:nth-of-type(3) img{
    height:2em;
    width:auto;
    margin:0 auto;
}
#drone li p:nth-of-type(2){
    font-size: 80%;
    margin-bottom: 2em;
    background: linear-gradient(#866e0c, black, #866e0c);
    color: white;
}
/*------------------------------------*/
/*taiyou*/
#taiyou h2{
    font-size:3em;
}
#taiyou h2+p{
    margin-top:1em;
    color:#777;
}
#taiyou>section>div{
    margin-bottom:5em;
}
#taiyou h3{
    font-size:1.2em;
    background:#f1f1f1;
    padding:1em;
    color: #00599f;
    margin: 2em auto 1em;
}
/*------------------------------------*/
#csr>header h1 span{
	font-size:60%;
}
#csr>div>*{
	width:80%;
	margin:0 auto;
	line-height:180%;
}
#csr h2{
	margin-bottom:1em;
}
#csr>div{
	padding:5em 0;
}
#csr>div>div{
}
#csr>div:last-of-type{
	padding-bottom:10em;
}
#csr>div:nth-of-type(even){
	background:#fafafa;
}
/*------------------------------------*/
#inquiry1 h2{
	width:80%;
	margin:0 auto;
}
.wpcf7 table{
	width:80%;
	margin:2em auto;
	border-spacing:1px;
	border-spacing:1px;
}
.wpcf7 th,
.wpcf7 td{
	font-weight:normal;
	text-align: left;
	position:relative;
	padding:.5em;
}
.wpcf7 th{
	width:25%;
	vertical-align: top;
	background:#f1f1f1;
}
.wpcf7 td{
	width:75%;
	padding-left:.5em;
	color:#777;
	background:#fafafa;
}
.wpcf7 tr:last-child th{
	vertical-align: top;
}
.wpcf7 td input:not([type=radio]),
.wpcf7 td textarea{
	font-size:90%;
	border:none;
	color:black;
	padding:.5em;
	width: calc(100% - 1em);
}
.wpcf7 td textarea{
    border: .3em solid #788a78;
    box-sizing: border-box;
    box-shadow: 0 0 0.2em #778978;
}
#freedays{
	padding:.4em;
}
.wpcf7 td input[type=checkbox]{
	width:auto;
	margin-right:.4em;
}
.wpcf7 td label{
	display:block;
}
#freedays .hissu{
	position:absolute;
    right: 2.2em;
    top: 1em;
}
input[name="address1"],
input[name="address2"]{
	width: 73.4% !important;
	margin-bottom:.2em;
}
input[name="address3"]{
	width: 70.4% !important;
	margin-bottom:.2em;
}
input[name="your-postno"]{
	width:22% !important;
	margin-bottom:.2em;
}
.wpcf7 td .wpcf7-form-control-wrap{
	width:100%;
}
.wpcf7 td span.wpcf7-form-control>span:not(:first-child) input[type=radio]{
	margin:0 0 0 2em;
	font-size:90%;
}
.wpcf7-response-output{
	color:red;
	text-align: center;
}
.hissu,
.ninni{
	font-size:80%;
	padding:.2em;
	color:white;
	margin-left:.5em;
}
.hissu{
	background:red;
	margin-right:1em;
}
.ninni{
	background:#aaa;
	margin-right:1em;
}
.schoolwpcf7 form>p{
	text-align: center;
}
input[type=checkbox]{
	cursor:pointer;
	transform:scale(1.3);
}
input[type=radio]{
	margin-right:.3em !important;
}
input[type=submit]{
    font-size: 100%;
    padding: .2em 3em;
    cursor: pointer;
    margin: 3em 0 6em;
    border: 1px solid #aaa;
	background:white;
	-webkit-transition:0.4s;-moz-transition:0.4s;-o-transition:0.4s;-ms-transition:0.4s;transition:0.4s;
}
input[type=submit]:hover{
	background: #808200;
	color:white;
}
.screen-reader-response{
	color:red;
}
.screen-reader-response ul{
	display:none !important;
}
.wpcf7-not-valid-tip{
	display:inline-block;
	font-size:90%;
	color:red;
}
.wpcf7-validation-errors{
	text-align: center;
	color:red;
}
.wpcf7 label{
	cursor:pointer;
}
.wpcf7 label:hover{
	color:#a50000;
}
.privacy-policy a{
	color: #aec300;
	text-decoration: underline;
}
.screen-reader-response{
	text-align: center;
}
/*------------------------------------*/
#privacy{
	margin-bottom:5em;
}
#privacy>p{
	text-align: center;
}
#privacy1{
	padding:5em 0;
}
#privacy1 li{
	padding:5em 10%;
}
#privacy1 li:nth-of-type(odd){
	background:#fafafa;
}
#privacy1 li h2{
	margin-bottom:1em;
}
/*------------------------------------*/
.border{
	display:block;
	position:absolute;
	width:0;
	left:50%;
	bottom:0;
	border-bottom:1px solid black;
}
.fadein{
	opacity:0;
}
/*------------------------------------*/
.ddn{display:none !important;}
.red{color:red !important;font-weight: bold !important;}
.green{color:#4b9409 !important;}
.bold{font-weight: bold !important;}
.txc{text-align: center !important;}
.txr{text-align: right !important;}
.flex{display:-ms-flexbox;display:-webkit-flex;display:flex;}
.flexwrap{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}
.justifyspace{-webkit-justify-content:space-between;-ms-flex-pack: justify;justify-content:space-between;}
.justifycenter{-webkit-justify-content:center;-ms-flex-pack: center; justify-content:center;}
.justifyaverage{-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around;}
/*------------------------------------*/
.button_line004{
    text-align: right;
}
.button_line004 a {
    position: relative;
    padding: .5em 1.5em;
    color: #313131;
    transition: 0.3s ease-in-out;
    margin: 2em 0 0 auto;
    display: inline-block;
}
.button_line004 a:before,
.button_line004 a:after {
    content: '';
    width: 1em;
    height: 1em;
    border:1px solid #aaa;
    box-sizing: border-box;
    display: block;
    position: absolute;
    transition: all 0.3s ease-in-out;
}
.button_line004 a:before {
	top: -6px;
	left: -6px;
	border-width: 1px 0 0 1px;
	z-index: 5;
}
.button_line004 a:after {
	bottom: -6px;
	right: -6px;
	border-width: 0 1px 1px 0;
}
.button_line004 a:hover:before,
.button_line004 a:hover:after {
	width: calc(100% + 12px);
	height: calc(100% + 12px);
}
.button_line004 a:hover {
    color: black;
    opacity: .7;
}