@charset "UTF-8";
/* CSS Document */

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;	
}

body {
font-size: 15px;
line-height: 1.75;
letter-spacing: 0.1em;
font-family: 'Noto Sans JP', sans-serif; 
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;        
color: #2a2a2a;   
font-weight: 500;
}
section{
padding: 100px 0;    
}
.tyuki{
color:#ff0000;  
display: inline-block;
}
.sp_l{
text-align: center;
display: block;    
}
.recruit_f{
position:absolute;   
width: 400px;
bottom: 150px;
right: 30px;  
z-index: 999;    
}
.recruit_f img{  
width: 100%;
border: 2px solid #fff;        
}
.center_box{
  width: -moz-fit-content;
width: fit-content;  
margin: 0 auto;
display: block;   
}
.sp{
display: none!important;
}
.headline {
  position: relative;
padding-bottom: 3px;    
 font-size: 1.5em;
color: #2a2a2a;
text-align: center;
}

.headline:after {
position: absolute;
content: '';
left: 50%;
bottom: 0;
width: 30px;
-webkit-transform : translatex(-50%);
transform : translatex(-50%);    
border-bottom: solid 2px #00B333;
}
.fullscreenmenu{
display: none;
}
/*===スライダー==============================*/
.top_slider{
width: 100%;
height:calc(100vh - 150px);  
display: block; 
min-height: 500px;    
position: relative;
}
.slider1{
width: 100%;
height: 300px;  
overflow: hidden;
position: relative;
}
.slider1 p{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
  font-size: 2.5em;
  color: #fff;  
}
.img1{
 background: url("../img/top4.jpg");
 background-size: cover;
 background-position: center;    
width: 100%;    
}
.top_slider{
	overflow: hidden;
    width: 100%;
}


.top_slider .slider li{
	width: 100%;
	height: auto;
	position: relative;
    overflow: hidden;
}

.top_slider .slider li .slide_img{
	display: block;
	width: 100%;
	height: 100vh;
	object-fit: cover;
transition: all 0.5s;		
}
.top_slider .slick-active .slide_img{
	position: relative;
	animation: zoom 8s ease-in-out 0s forwards;
}
@keyframes zoom {
  0% {
		transform: scale(1.05);
	}
    

  100% {
		transform: scale(1);
	}    
 
}
.img_up img {
    transition: 2s;
    transition-delay: 0.7s;
    transform: translateX(-10%) scale(1.2);
}
.img_up.inview img {
    transform: translateX(0) scale(1);
}

/*キャッチ*/

.top_slider li .catch {
  position: absolute;
 top: 45%!important;
  left: 50%;
  max-width: 600px;
width: 80%;    
     -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);        
  text-align: center; 
}

.top_slider li .catch img{
	display: block;
	width: 100%;
    margin: 0 auto;
}

.top_slider li .catch3 img{
	display: block;
	width: 35%;
    margin: 0 auto;
}
@keyframes apper {
	0% {
		opacity: 0;
	}
	50%{
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@media (max-width: 1150px){

}
@media (max-width: 950px){
.top_slider{
    width: 100%;
    height: 900px;
}
.top_slider .slider li .slide_img{
height: 900px;		
}    
.top_slider li .catch {
top: 80%;
}
   
}
@media (max-width: 690px){
.top_slider{
    width: 100%;
    height: 300px;
    min-height: 100px;
}
.top_slider .slider li .slide_img{
height: 300px;		
}    
.top_slider li .catch{
width: 300px;
}
   
}
.space{
text-indent: -0.5em;
padding-left:0.5em; 
display: block;
}
.w1{
width: 50%; 
display: block;
margin: 0 auto
}
.w2{
width: 30%; 
  
}
.w3{
width: 10%; 
display: block;
margin: 0 auto;    
}
.w4{
width: 95%; 
display: block;
margin: 0 auto;
}
	.h100{
height: 100px;	
        
	}
	.h50{
height: 50px;		
	}
	.h30{
height: 30px;		
	}	
	.h20{
height: 20px;		
	}
	.h10{
height: 10px;		
	}
a{
	text-decoration: none;	
}
li{
	list-style-type: none;
}


.text1{
font-size: 1em;  
line-height: 200%;    
}
.text1 strong{
font-size: 1.5em;  
display: block;  
text-align: center;
color: #1E4735;    
}
.text2{
font-size: 1em;  
line-height: 200%;    
}
.text2 strong{
font-size: 1.2em;
display: block;    
}


.background1{
width: 100%;
height: auto;
display: block;    
background-color: #49ad82;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23ffffff' fill-opacity='0.85' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
padding: 1%;    
}
.background2{
    background-color: #f0fdf0;
    background-image: url(data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%2386a986' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E);
}
.background3{
background-color: rgba(255,255,255,0.8); 
}
.background4{
background: url("../img/background5.jpg");	
background-size: contain;    
}

.container {
max-width: 1170px;
width: 95%;
margin: 0 auto;
text-align: center;		
}
.slider-pro1{
width: 100%;
height: auto;	
display: block;	
position: relative;	  
background:url("../img/top4.jpg");
background-size: cover;
background-position: center;
height:300px;
overflow: hidden;    
}
.slider-pro1 img{
width: 100%;
height: auto;		
}

.slider-pro1 p{
font-size: 1.8em;
color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
  width: 100%;
  text-shadow :2px 2px 5px #000;
    text-align: center;
}

.slider-pro1 .midashi{   
margin:0 auto ;	
top: 50%;  
position: absolute;    
}
#vegas {
    width: 100%;
    height: auto;
	display: block;
	margin: 0 auto;
	
}
.slider {
  position   : relative;
  max-width  : 100%;
  height     : calc(100vh - 250px);
  margin     : auto;

}
.slider .parallaxString{
  position   : absolute;
  padding    : 15px;
  color      : #fff;
  top        : 50%; /* absoluteにおける上下集中央寄せ */
  left       : 50%;
  transform  : translate(-50%,-50%);
  z-index    : 1;
		display: block;
	width: 100%;
	text-align: center;
}
.parallax {
/* パララックスをつくる部分 */
  background-attachment:inherit;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.slider p{
  font-weight: 200;
  margin: 0.4em 0;
 font-size: 3em; 
  text-shadow    : 
       1px  1px 0px #000000,
      -1px  1px 0px #000000,
       1px -1px 0px #000000,
      -1px -1px 0px #000000,
       1px  0px 0px #000000,
       0px  1px 0px #000000,
      -1px  0px 0px #000000,
       0px -1px 0px #000000;
color: #fff;    
    font-family: 'Noto Serif JP', serif;
font-weight: 600;           
}
.txt-rotate{
width: 100%;	
display: block;	
}

.flex-box1{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-between;  
align-items:center;     
}
.flex-box2{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:center;  
align-items:center;     
}
.flex-box3{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-start;  
align-items:center;  
padding: 1em;
background: rgba(255,255,255,0.5);    
}
/*パンクズ */
.breadcrumb {
position: absolute;
bottom: 10px;
left: 10px;    
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
font-size: 0.8em;
color: #fff!important;    
}

.breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #fff;
}

.breadcrumb li:last-child:after {
  content: '';
}
.breadcrumb .item_text{
color: #fff;    
}
.breadcrumb li a {
  text-decoration: none;
  color: #fff;
}
.main_wrapper{
margin: -150px auto 0;
 max-width: 1170px;
width: 100%;
background: #fff;    
padding: 2%; 
z-index: 100;      
}

/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:3%;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:10px;
	bottom:5%;
    /*テキストの形状*/
	color: #fff;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;

}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#fff;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#fff;
}
.breadcrumb li a:hover {
  text-decoration: underline;
}
.breadcrumb .fa-home{
color:#BF0404; 	
}


.top_wrapper{
	width: 100%;
    height: auto;
    display: block;

}

.midashi h2{
font-size: 3em;		
letter-spacing: 5px;
font-family: 'Josefin Sans', sans-serif;
}
.border_b_r{
border-bottom:3px dotted #ff0000;   
color: #006400;    
}
.border_b_w{
border-bottom:3px dotted #fff;   
color: #fff;    
}
.midashi .small1{
font-size: 0.4em;
display:block;	
padding-top:0.5%; 
letter-spacing: 1px;   
 font-weight: 600; 
color: #2A2A2A;
font-family: 'Noto Sans JP', sans-serif;     
}
.midashi .small2{
font-size: 0.4em;
display:block;	
padding-top:0.5%; 
letter-spacing: 1px;   
font-weight: 600;     
color: #fff;
font-family: 'Noto Sans JP', sans-serif;     
}

.midashi-left{
padding-left: 1%;    
}
.midashi p{
font-size: 3em;	
letter-spacing: 5px;	
font-family: 'Josefin Sans', sans-serif;
}

.midashi .border-bottom{
border-bottom: 3px solid #E6B887;  
padding: 0.5% 0;    
}
.midashi img{
width: 40%;
position: absolute;
top: -20%;
left: 2%;    
}

.top{
width: 100%;
height: auto;	
z-index: 998;
position:sticky;      
}


.globalMenuSp, .navToggle{
	display: none;
}
header{
width: 100%;
height: auto;  
position:sticky;
background: #fff;  
top:0;
left: 0;    
z-index: 90;    
}

.top_menu{
width: 100%;  
height: auto;    
display: block;
}

.top_menu .menu_t{
width: 100%;
display: flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;  
}

.top_menu .menu_t .logo{
width:350px;	
}
.top_menu .menu_t .logo img{
width:100%;	
display: block;
margin: 0 auto;
}
.top_menu .m1 li{
  height: 40px;  
position: relative;
}
    
.top_menu .m1 a{
display: block;	
transition: color .3s, text-decoration .3s;		
color: #000;    
 position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
   width: 100%; 
  text-align: center;    
 font-size: 1em;  
transition: all 0.5s;    
}

.m1{
width: 100%;	
margin:0 auto;   
display: block;  
background: rgba(255,255,255,0.6);      
}
.top_menu .m1 ul{
width: 100%;		
display: flex;
align-items:center;
justify-content:center;      
padding: 1% ;   
margin: 0 auto; 
}
.m1 ul li .color{
display: block;
color: #ff0000;   
font-family: 'Josefin Sans', sans-serif; 
letter-spacing: 1px;  
transition: all 0.5s;     
}

.b1 {
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
  width: 100%;  
 line-height: 1.5;    
}
.b1 + .b1 {
  border-left: 0;
  border-right: 1px solid #eee;
}



.top_menu .m1 a:hover .color{
opacity: 0.5;
text-decoration: transparent;    
}

.m1{
width: 100%;
height: auto;    
position:-webkit-sticky; 
    position:sticky; 
    top:0;    
    z-index: 999;   
    background: #fff;    
}
.top_contact{
width:630px;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-end;
align-items:center;      
}

.t-tel{
width: 230px;   
}
.t-tel a{
width: 100%;	    
font-size: 1.5em;	
color: #006400;   
transition: all 0.5s;	
display: block;   
border-radius: 50px;    
margin: 0 auto;
text-align:left;  
font-family: 'Josefin Sans', sans-serif;
}

.t-tel a:hover{ 
opacity: 0.7;    
text-decoration: transparent;   
}

.t-mail{
width: 150px;	
}
.t-mail a{
width: 100%;	     
font-size: 1em;	
color: #006400; 
border: solid 2px #006400;
padding:3% 1%;   
transition: all 0.5s;	
display: block;       
margin: 0 auto;   
text-align: center; 
line-height: 1.5;  
border-radius: 50px;    
font-weight: 600;
}

.t-mail a:hover{
color: #fff;    
background:#006400; 
text-decoration: transparent;    
}

/*====instagramとLINE===*/
.btn-social-icon-instagram {
  text-decoration: none;
  display: inline-block;
  text-align: center;
  color: #2e6ca5;
  font-size: 25px;
  text-decoration: none;	
}

.btn-social-icon-instagram:hover {
  color:#668ad8;
  transition: .5s;
}

.btn-social-icon-instagram__square {
  border-radius: 13px;
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  font-size: 35px;
  line-height: 50px;
  overflow: hidden;
}

.btn-social-icon-instagram__square:before {
  content: '';
  position: absolute;
  top: 23px;
  left: -18px;
  width: 60px;
  height: 60px;
}

.btn-social-icon-instagram__square .fa-instagram {
    color: #f13f79!important;
  line-height: 50px;
  position: relative;
  z-index: 2}

.btn-social-icon-instagram__square .fa-line {
    color: #06c755!important;
  line-height: 50px;
  position: relative;
  z-index: 2}
/*====ボタン===*/

.button {
width: 300px;
margin: 0 auto;  
}

.button a{
   background: rgb(30,71,53);
background: #006400;
  position: relative;
  display: inline-block;
 color: #fff;
  text-align: center;
  text-decoration: none;
  transition: .5s;
    display: block;
    z-index:0;
    padding: 1em;
    font-size: 1em;
    margin-top: 3%;
    overflow: hidden;
    font-weight: 700;
    border-radius: 50px;
}
.button a:hover {
  color: #fff;
 border-radius: 50px;    
}
.button a::before {
  position: absolute;
   background: #2a2a2a;    
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .5s;
     border-radius: 50px;

}
.button a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
      z-index: -1;
}

/*====ご挨拶===*/
.news_w{
width: 100%;    
display: block;
height: auto;   
}
.g-contact{   
width: calc(95% / 3);    
}
.g-contact2{   
width: calc(95% / 2);    
}
.flex-greeting-photo{
width: 35%;    
}
.flex-greeting-photo img{
width: 100%; 
display: block;
margin: 1% auto ;
}
.flex-greeting-text{
width: 100%;
 padding: 0 1em;   
}

.g-contact a{
display: block;	
padding: 1em;	
font-size: 1em;	
transition: all 0.5s;	
margin: 0 auto;
cursor:pointer;
border-radius: 50px; 
}
.greeting-box{
padding: 50px 0!important;     
width: 100%; 
background:url("../img/background1.jpg");
background-position: bottom;
background-size: cover;    
padding: 2% 0  0;  
background-attachment: fixed;  
display: block;   
}
.greeting-box img{
width: 100%;    
}
.greeting-box_thank{
width: 100%;
height: auto;
display: inline-block;
padding: 10%;
}

.greeting{
width: 100%;
height: auto;
padding: 5%;   
background: rgba(0,0,0,0.7);  
margin: 3% auto;    
}


.greeting .greeting-text strong{
font-size: 1.5em;
padding: 1% 0 2%;      
display: block;    
}
.greeting .greeting-text{
font-size:1em;
line-height:200%;
font-weight:normal;
color: #fff;  
text-align: left;
}
.g-text{
text-align: left;
line-height:200%;
}


@keyframes bg_slide {
    100% {
        transform-origin: left top;
        transform: scaleX(1.0);
    }
    0% {
        transform-origin: left top;
        transform: scaleX(0.0);
    }
}

.banner-box{
width: 70%;    
display: block;
margin: 0 auto;
}
.banner-box img{
width: 100%; 
 display: block;
margin: 0% auto; 
box-shadow: 2px 2px 5px #eee;    
}
.item-box{
width: 100%;
position: relative;
}
.item-p{
width: calc(95% / 3);     
}
.item-p:nth-child(2){
margin-top: 50px;    
}
.item-p:nth-child(3){
margin-top: 100px;    
}
.item-p img{
width: 100%;    
}
.item-t{
width: 100%;  

  background: rgba(255,255,255,0.95);  
    padding: 1em 0;
}
.works-box {
    width: 100%;

}
/*====コンテンツ===*/

.contents-box{
width: 100%;
height: auto; 
margin: 0 auto;
}
.contents-flex{
 width: 90%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:center;
align-items:center;   
margin: 0 auto;
}
.contents{
max-width:300px; 
width: 100%;    
position: relative;
background-color:#000;
transition: all 0.5s;	
height: 200px; 
overflow: hidden; 
margin: 0;
}

.cont-box{
width: 100%;   
   overflow: hidden; 
display: block;
color: #fff;  
position: relative;
overflow: hidden;
width: 100%;
margin: 0 auto 0;
height: 100%;
background-image: linear-gradient(to right, #434343 0%, black 100%);  
object-fit: cover;    
}
.cont-box img{
width: 100%;   
transform: scale(1.1);
transition: .3s ease-in-out; 
transition: all 0.5s;	
 opacity: 0.3;   
position: relative;
display: block;    
}

.cont-box:hover img {
  transform: scale(1.3);
    text-decoration: transparent;
    opacity: 0.9;
}
.contents:hover{
   opacity: 1;
     text-decoration: transparent;
}
.c-box{
position: absolute;
bottom:0;
left:0; 
 text-align: center; 
    z-index: 99;
font-size: 0.9em;   
  z-index: 1;    
}
.contents_text1{
font-size: 1.5em; 
position: absolute;
width: 100%;  
top: 50%;
left:50%;
-webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%);   
text-align: center; 
    line-height: 1.3;
    font-weight: 500;
    color: #fff;
    z-index: 3;
}
.contents_text1 .small{
font-size: 0.7em; 
display: block; 
font-family: 'Josefin Sans', sans-serif;      
}
.caption{
border: 1px solid #fff;
width: calc(100% - 20px);
height: calc(100% - 20px);    
top: 50%;
left:50%;
-webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%); 
display: block;   
position: absolute;  
z-index: 99;    
}


/*====全ページ共通フッターメニュー===*/
footer{
width: 100%;
height: auto;
display:block;
text-align: center;	  
}
footer .footer-box{
width: 100%;
height: auto;
display: block;   
margin: 0 auto; 
padding: 5% 0;   
background:url("../img/background4.jpg");
background-position:center;
background-size: cover; 
background-attachment: fixed;    
}

.f-contact{   
width: 400px;   
margin-top: 1em;    
}

.f-contact a{
background:#006400;
  position: relative;
  display: inline-block;
 color: #fff;
  text-align: center;
  text-decoration: none;
  transition: .5s;
    display: block;
    z-index:0;
    padding: 0.5em;
    font-size: 1.5em;
    margin-top: 3%;
    border-radius: 50px;
    overflow: hidden;   
    margin:0 1em;
    border:1px solid #fff;
}
.f-contact a:hover {
  color: #fff;
border-radius: 50px;
}
.f-contact a::before {
  position: absolute;
   background: #2a2a2a;    
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .5s;
border-radius: 50px;    

}
.f-contact a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
      z-index: -1;
border-radius: 50px;
}



footer img{
width: 300px;
display: block;
margin: 0 auto;
}

.f-text{
text-align: center;	
font-size: 1em;	
line-height: 1.75;	
}

footer .copyright{
width: 100%;
height: auto;    
background:#fff;    
}
footer .copyright small{
text-align: center;	
color: #fff;
padding:1em 0;
display: block;	
background: #006400;
font-weight: 600;    
}
/*========= 事業内容 ===============*/
.service_photo{
width: 50%;    
}
.service_photo img{
width: 100%;    
 object-fit: cover;
display: block;    
}
.service_text{
width: 50%; 
padding:0 3%;    
}
.flow-box{
width: calc(95% / 3);  
background: #fff;
position: relative;  
margin-top: 1.5em; 
margin-left: 1em;    
}
.flow-text{
width: 100%; 
padding-bottom: 1em;
}
.flow-photo{
width: 90%;  
padding-top: 1em;    
padding-bottom: 1em;   
margin: 0 auto;
display: block;
}
.flow-photo img{
width: 100%;   
height: 100%;   
   
}


.number{
width: 100%;   
position: absolute;
top: 0;
left: 0;    
}
.back_r{
background-color:#FF0000;
width: 80px;
height: 80px;
border-radius: 50%; 
position: relative;
}
.number_text{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);  
 font-size: 1em;  
color: #398765;    
text-align:center;   
line-height: 1.2;  
color: #fff;    
}
.number_text .strong {
display: block;
font-size: 2em;    
}
/*========= よくある質問ある質問 ===============*/

.question{    
font-size: 1em; 
}
.question strong{
font-size: 1.5em;
background: #888;
color: #fff;
width: 50px;
height: 50px;    
border-radius: 50%;  
display: block; 
text-align: center;
line-height: 50px; 
margin-right: 1em;    
}
.answer{
font-size: 1em;     
}
.answer strong{
font-size: 1.5em;  
background: #FF0000;
color: #fff;
border-radius: 50%;  
width: 50px;
height: 50px; 
display: block;  
text-align: center;
line-height: 50px; 
margin-right: 1em;     
}
/*========= 事業所概要 ===============*/
.about{
width: 100%;  
background: rgba(255,255,255,0.5);  
padding: 1em;    
    }
.about table {   
width: 100%;  
border-bottom: 1px #eee solid;    
}
.about tr{
width: 100%; 
}

.about th{  
width: 40%; 
padding: 1% 1em;  
text-align: center; 
font-size: 1em; 
border-bottom: 1px #fff solid;    
background: #888; 
color: #fff;    
line-height: 1.75;  
}
.about td{    
padding: 1% 1em; 
width: 60%;    
text-align: left;
font-size: 1em;  
border-bottom: 1px #eee solid;  
background: #fff;  
line-height: 1.75;    
}
.about img{
max-width: 500px;
width: 70%;    
display: block;  
margin: 0 auto;    
}
.map{
width: 100%;
position: relative;
}
.map iframe{
height: 500px; 
}
/*========= お問い合わせ ===============*/

.contact-box{
width: 100%;
height: auto;
display: block; 
}

.c-con{
max-width:700px;
width: 98%;    
height: auto; 
margin: 0 auto;
display: block;      
}

.contact-img1{
width: 100px;
position: absolute;
top: 0;
left: 0; 
z-index: -1;    
}
.contact-img2{
width: 300px;
position: absolute;
bottom: -130px;
right: 5px; 
z-index: -1;    
}
.contact-text1 .green{
	background-color:#006400;
	font-size:0.9em;
	padding:0.5em;
    margin-right: 5px;
    line-height:1.8;  
    color: #fff;
}
.contact-text1 {
font-size: 1em;
text-align: left;
color: #333; 
line-height: 1.75;    
}
.c-tel{
max-width: 350px!important; 
width: 100%!important;    
margin: 1em auto;        
padding: 1em; 
background: rgba(255,255,255,0.9);        
}

.con-text1{
width: 100%;     
font-size: 2em; 	
transition: all 0.5s;	 
display: block;      
text-align: center;
line-height: 1.5;  
color:#FF0000;  
font-family: 'Josefin Sans', sans-serif;    
}
.c-tel:hover .con-text1{
text-decoration: transparent;	
opacity: 0.6;     
}

.c-fax{
width: 100%;    
margin: 1em 0; 
padding: 1em;
background: rgba(255,255,255,0.9);    
}
.c-fax p{
width: 100%;     
font-size: 2em; 	
transition: all 0.5s;	 
display: block;      
text-align: center;
line-height: 1.5;  
color:#006400; 
font-family: 'Josefin Sans', sans-serif;    
}
.c-fax .small{
font-size: 0.5em;   
display: block;    
color:#333;      
}
.m-brder{
border-right: 2px solid #eee;
}

.contact-wrapper{
width: 100%;	
}


.contact-tel .small{
font-size: 0.7em;
display: block;  
border-bottom: solid 1px #fff;
padding: 1% 0;    
}

.tel-box{
width: 100%;  
}
form{
	width: 100%;
	text-align: center;
}
.checkbox_text{
line-height: 1.75;	
}
.mailform{
width: 98%;
}
.mailform table{
width: 100%;    
 
}

.mailform table .green{
	background-color:#006400;
	font-size:0.7em;
	padding:0.5em;
    margin-right: 5px;
    text-align: center;
    color: #fff;
    font-weight: 600;
}



.mailform table th{
	font-size: 1em;
	text-align: left;
	padding-left: 2%; 
    border-bottom: 1px dotted #b0b0b0;
    font-weight: 400;
}

.mailform table td p{
	font-size: 1em;
	padding-top: 1%;
	line-height: 1.7;
}
.mailform table td img{
width:100%;	
margin-top: 1%;	
border-radius: 50px;	
}
.mailform table td{
font-size: 1em;
padding: 2% 1%;
width: 70%; 
border-bottom: 1px dotted #b0b0b0;   
text-align: left;
}

.mailform table td iframe{
height: 400px;	
}

.text-y{
width: 50%;    
}
.text{
width: 100%!important;    
}
textarea{
width:100%!important; 
}
.mailform dd p{
	margin-top: 1%;
	font-size:1em;
	letter-spacing: 4px;
	line-height: 1.75;
}

.single p{
	text-align: center;
}


.form-button
{
margin: 5% 0;
text-align: center;
}

.form-button button {
    cursor: pointer;
    display: block;
    margin: 0 auto 5px;
    padding: 10px 0 10px;
    text-align: center;
    width: 250px;
	transition: all 0.5s;	
    background:#006400;  
    color: #fff;
    border:2px solid #006400;
    border-radius: 50px;
}
.form-button button:hover{
     background:#fff;  
    color:#006400;
	text-decoration: transparent;
}
.textarea, textarea, .dropdown {
    border-radius: 2px;
}

input[type=checkbox] + label {
cursor: pointer;
}

button[type="submit"]{
	font-size:1em;
	padding: 10px;
}

input[type="checkbox"]{
	font-size: 1em;
	margin-left: 2%;
	margin-bottom: 2%;
	border:1px solid #bababa;	
}
input[type="text"]{
	height: 40px;
	font-size: 1em;
	padding: 10px;
	background:#fff;
	border:1px solid #bababa;
}
input[type="email"]{
	height: 40px;
	font-size: 1em;
	padding: 10px;
	background:#fff;
	border:1px solid #bababa;
}

textarea[type="text"]{
padding: 10px;	
font-size: 1em;	
background:#fff;	
border:1px solid #bababa;	
}
.accordion {
background: #eee;
}
.accordion h4{
font-size: 1em;   
text-align: left;  
border-bottom: solid #006400 1px;
font-weight: 400; 
padding:1em 1em 0;
color: #006400;    
}
.accordion p{
font-size: 0.9em;   
text-align: left;
padding:1em 1em 0.5em;
}
.toggle {
	display: none;
}
.Label {
    font-size: 1.2em;
	padding:1% 1% ;
	display: block;
    color: #006400;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #006400;
	border-right: 2px solid #006400;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
    text-decoration: transparent;
    margin-bottom: 1em;
}
.Label,
.open {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.5s;
}
.open {		/*本文*/
	height: 0;
	margin-bottom:10px;
	overflow: hidden;
    background: #fff;
    border-radius: 5px;
}
.toggle:checked + .Label + .open {	/*開閉時*/
	height: auto;
	transition: all .5s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
    text-decoration: transparent;
}
