@charset "utf-8";
/* レイアウトのためのCSS */

body{
    background:#fff;
    font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	font-size:1rem;
	line-height:1.85;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%; 
	word-wrap: break-word;
}

body.appear{
    background:#fff;
}

*{box-sizing: border-box;}

ul{
	margin:0;
	padding: 0;
	list-style: none;
}

a{
	color: #333;
	text-decoration: none;
    outline: none;
}

img{
    width: 100%;
    height: auto;
}

.pc { display:block; }
.tb { display:none; } 
.sp { display:none; }

@media screen and (max-width: 900px){   
  .pc { display:block; }
  .tb { display:block; } 
  .sp { display:none; }
}

@media screen and (max-width: 480px){   
  .pc { display:none; }
  .tb { display:block; } 
  .sp { display:block; }
}


#container{
    overflow-x: hidden;
}

/* header */

#header{
    background:#fff;
}

#header h1{
    width: 320px;
    position: absolute;
    top: 15px;
    left:13%;
    transform: translateX(-50%);
    color:#009a3f;
}
#g-nav ul{
    position: absolute;
	display: flex;
    padding: 0 0 0 5%;
	top:40%;
	left:30%;
}

#g-nav ul li{
  letter-spacing: 0.1em;
    white-space: nowrap;
}


#g-nav ul li a{
    display: block;
    padding:6px 15px;
}

@media screen and (max-width:1300px) {
#header h1{
    width: 300px;
    position: absolute;
    top: 15px;
    left:50%;
    transform: translateX(-50%);
    color:#009a3f;
}
#g-nav ul{
    display: block;
    padding: 0;
	margin: 30px 20%;
}
   
#g-nav ul li a{
    padding:10px 15px;
}
}
#header ul#utility-navi{
    position: fixed;
    top:0;
    right:5%;
    z-index: 999;
    display: flex;
    font-size: 0.8rem;
}


#header ul#utility-navi li{
    text-align: center;
}

#header ul#utility-navi li span{
    display: block;
}

#header ul#utility-navi li a{
    color: #fff;
    padding: 15px 0;
    display: block;
    width:100px;
    transition: all .5s;
}

#header ul#utility-navi li img{
    width:35%;
}  

#header ul#utility-navi li:first-child a{
     background:#666;
}

#header ul#utility-navi li:first-child a:hover{
     background:#888;   
}

#header ul#utility-navi li:last-child a{
     background:#009a3f;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

#header ul#utility-navi li:last-child a:hover{
     background:#fbab00;
}

@media screen and (max-width:768px) {

#header h1{
    width: 250px;
    position: absolute;
    top: 10px;
    left:55%;
    transform: translateX(-70%);
}
 
#header ul#utility-navi li span{
    display:none;
}

#header ul#utility-navi li a{
    width: 70px;
    height: 70px;
    padding: 0;
}
    
#header ul#utility-navi li img {
    width: 45%;
    margin: 17px 0 0 0px;
}
 
}

@media screen and (max-width:530px) {

#header h1{
    top:6px;
    transform: translateX(-50%);
}
    
#g-nav ul li:last-child{
     display: block;   
}
    
#header ul#utility-navi li:first-child{
    display: none;    
}

#header ul#utility-navi li:last-child a{
     background:#666;
}

#header ul#utility-navi li:last-child a:hover{
     background:#888;   
}
	
	
	
}
/*-------------main-------------*/
.main{
	width: 100%;
	margin: 0 auto;
	max-width:1200px; 
}
/*-------------page_ttl-------------*/

#page_ttl{
	width: 100%;
	margin: 150px auto 30px;
	max-width:1200px; 
	text-align: left;
	padding-left: 1%;
}
#page_ttl img{
	width: 35%;
}
@media screen and (max-width:900px){
	#page_ttl{
	width: 90%;
	margin: 100px auto 00px;
	max-width:900px; 
	text-align: left;
	padding-left: 1%;
}
#page_ttl img{
	width: 35%;
}
}
@media screen and (max-width:480px){
	#page_ttl{
	width: 90%;
	margin: 100px auto 0;
	max-width:900px; 
	text-align: left;
	padding-left: 1%;
}
#page_ttl img{
	width: 60%;
}
}
/* footer */

#footer{
   position: relative;
	width:100%;
	background-image: url("../img/footer_bg.png");
	background-repeat: repeat-x;
	padding: 90px 0 0 0;
	margin-top: 90px;
}
.footer_space{
	width: 30%;
	margin: 0 auto 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	color:#fff;
	max-width: 400px;
}
.footer_logo{
	width: 70%;
	margin: 0 auto;
}

#footer #copyright{
    background: #06782D;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
	font-size: 0.7em;
}


.footer-contact{
	width: 50%;
	margin: 20px auto 0;
	max-width: 150px;
}
.footer-contact a:hover img{
	-webkit-transform: translateY(-2px);
	        transform: translateY(-2px);
	filter: drop-shadow(0px 5px 5px rgba(0,0,0,0.2));

}
.footer-link{
	width: 8em;
	color: #fff;
	text-align: center;
	margin: 10px auto;
}
.footer-link a{
	color: #fff;
	text-decoration: none;
}
.footer-link a:hover{
	color: #F3D43F;
	text-decoration: none;
}
#footer #page-top{
    position: absolute;
    bottom:0;
    right: 0;
    width:80px;
    height:80px;
    background:#fff;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

#footer #page-top span{
    display: inline-block;
  width: 13px;
  height: 13px;
  border-top:2px solid #182578;
  border-left: 2px solid #182578;
  transform: rotate(45deg);
}
@media screen and (max-width:768px) {

#footer #page-top{
        width:60px;
        height: 60px;
}
    
}
@media screen and (max-width:900px){
.footer_space{
	width: 50%;
	margin: 0 auto 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	color:#fff;
	max-width: 400px;
}  
}


@media screen and (max-width:560px) {
#g-nav a:hover{
    -webkit-transform: translateY(-2px);
	        transform: translateY(-2px);
}
.footer_space{
	width: 90%;
	margin: 0 auto 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	color:#fff;
	max-width: 400px;
}
#footer #copyright{
    background: #06782D;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 30px;
	font-size: 0.6em;
}
}
.entry-contact{
	width: 200px;
	margin: 10px auto 0;
}
.entry-contact img:hover{
	-webkit-transform: translateY(-2px);
	        transform: translateY(-2px);
}
