.pagetopbtn { z-index: 9; display: flex; flex-direction:column; justify-content:center; align-items:center; width:40px; height:40px; padding:4px; border-radius:2px; background:#375f2e; transition:all .2s; cursor:pointer; box-sizing:initial; }
/* .pagetopbtn:before { line-height:1; content:'\f106'; font-family:FontAwesome; color:#AEAEAE; padding-bottom:4px; font-size: 2rem; } */
.pagetopbtn:before { line-height: 1; content: '\e801'; font-family: 'fontello'; color:#cae6c5; padding-bottom:4px; font-size: 2rem; }
.pagetopbtn:hover { opacity: .5; }

footer { background: #628e59; color: #fff; position:relative; }
footer h3{ font-weight:100; }
footer .wrap { max-width:1148px; }
footer a.more{ color:#c1e6c5; padding:30px 0 15px 0; display:inline-block; vertical-align:top; }
footer a.more::after{ font-family:FontAwesome; content:'\f061'; font-size:.6rem; margin-left:11px; }
footer a:hover { opacity:.5; }

footer .top .wrap{ display: flex; flex-direction: row; }
footer .top .wrap > div { width: calc(100%/3); }
footer .top .wrap > div:nth-of-type(1), footer .top .wrap > div:nth-of-type(2) { margin-right: 130px; }

footer .right {
    display: flex;
    align-items: center;
}
footer .right .contact-icon{ margin-top:30px;  }
footer .right .icon{ display:inline-block; margin-right:8px; vertical-align:top; background:url("../images/footer_contact_icon.png") no-repeat; width:35px; height:35px;  }
footer .right .googleplus{ background-position:0 0; }
footer .right .line{ background-position:-45px 0; }
footer .right .linkedin{ background-position:-90px 0; }

footer .bottom { background:#375f2e; font-size:.866rem; color:#cae6c5; padding:15px 0; }
footer .bottom .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .link { display: flex; flex-wrap: wrap; list-style-type: none; margin: 0; padding: 0; }
footer .link a { color:#cae6c5; padding: 0 12px; }
footer .link li:not(:last-child)::after { content:'‧'; color:#cae6c5; }
footer .right .contact-icon .footer_icon {display:inline-block;; width: 50px;height: 50px;border-radius: 50%;}
footer .right .contact-icon .footer_icon:hover{box-shadow: 0 2px 10px rgba(55, 95, 46, .8);}
footer .right .contact-icon .footer_icon:not(:last-child) {margin-right: 8px;}
.footer-information { font-size: 14px; }
.footer-information a { color: #fff; }

[class^="ft-information-"] { position: relative; padding: 8px 0 0 23px; }
[class^="ft-information-"]:before { font-family: FontAwesome; content: ''; position: absolute; left: 0px; opacity: .5; }
.ft-information-tel a { pointer-events: none; }
.ft-information-add:before { content: '\f3c5'; }
.ft-information-tel:before { content: '\f095'; }
.ft-information-fax:before { content: '\f1ac'; }
.ft-information-mail:before { content: '\f0e0'; }

@media only screen and (max-width: 1024px) { 
  footer .top .wrap { display: flex; flex-direction: row; flex-wrap: wrap; padding: 0 10px; }
  footer .top .wrap > div:nth-of-type(1) { margin-right: 130px; }
  footer .top .wrap > div:nth-of-type(2) { margin-right: 0; }
  footer .top .wrap > div { width: calc(100%/2 - 65px); }

}

@media only screen and (max-width: 768px) { 
  footer .top .wrap { padding: 0 5%; }
  footer .top .wrap > div { width: calc(100%/2 - 10px); }
  footer .top .wrap > div:nth-of-type(1) { margin-right: 10px; margin-bottom: 0; }
  footer .top .wrap > div:nth-of-type(2) { margin-right: 0; margin-bottom: 0; }
  footer .center ul { margin-right: -20px; }
}

@media only screen and (max-width: 480px) { 
  footer .top .wrap > div { width: 100%; }
  footer .center ul { margin-right: 0; }
}
