@charset "utf-8";
/* CSS Document */
/*
===================================================
--Table of contents--
0.base format
1-1.header area
1-2.footer area
1-3.Go to page top
1-4.Go to English page
===================================================
*/
/*
===================================================
0.base format
===================================================
*/
html {
  font-size: 62.5%; /*62.5%=10px*/
}
body {
  font-size: 1.6rem; /*16px*/
  color: #333;
  background: #fff;
  font-family: "Meiryo", sans-serif;
}
header, footer, h1, h2, h3, ol, ul, li, form, input, p, div {
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
  vertical-align: bottom;
}
ul, ol {
  list-style: none;
}
/*
------------------------------------
1-1.header area
------------------------------------
*/
.headA {
  width: 100%;
}
.headA h1 {
  width: 200px;
  float: left;
}
.search {
  width: 445px;
  float: right;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.search li {
  display: inline-block;
  font-size: 2.8rem;
  padding-right: 15px;
}
.search li a {
  color: #333;
  transition: all 300ms 0s ease;
}
.search li a:hover {
  opacity: 0.7;
}
.srch-b {
  background: #fff;
  border: solid 1px #333;
  color: #333;
  padding: 8px;
  border-radius: 5px;
  width: 200px;
  margin-right: 5px;
}
.s-btn {
  padding: 8px 12px;
  background: #009245;
  border-radius: 3px;
  border: none;
  color: #fff;
  cursor: pointer;
  transition: all 300ms 0s ease;
}
.s-btn:hover {
  opacity: 0.7;
}
.submenu {
  float: left;
  width: 100%;
  box-sizing: border-box;
  font-family: 'Noto Sans JP', sans-serif;
}
.submenu ul {
  float: right;
}
.submenu li {
  display: inline-block;
  padding: 0 10px;
  border-right: solid 1px #333;
  font-size: 1.2rem;
}
.submenu li:last-child {
  border-right: none;
}
.submenu li a {
  color: #333;
  text-decoration: none;
  transition: all 300ms 0s ease;
}
.submenu li a:hover {
  opacity: 0.7;
}
li.large {
  font-size: 2.0rem;
  font-weight: bold;
}
.mainmenu1 {
  float: left;
  width: 100%;
  margin-top: 8px;
  font-family: 'Noto Sans JP', sans-serif;
}
.mainmenu1 ul {
  float: left;
  width: inherit;
}
.mainmenu1 li {
  width: calc(100% / 4);
  float: left;
  box-sizing: border-box;
  text-align: center;
  border-right: solid 1px #fff;
  background: #009245;
  transition: all 300ms 0s ease;
}
.mainmenu1 li:last-child {
  border-right: none;
}
.mainmenu1 li:hover {
  opacity: 0.7;
}
.mainmenu1 a {
  text-decoration: none;
  color: #fff;
  display: block;
  padding: 10px 0;
}
.mainmenu2 {
  float: left;
  width: 100%;
  font-family: 'Noto Sans JP', sans-serif;
}
.mainmenu2 ul {
  float: left;
  width: inherit;
  padding: 10px 0;
}
.mainmenu2 li {
  width: calc(100% / 5);
  float: left;
  box-sizing: border-box;
  text-align: center;
  border-right: solid 1px #333;
  font-size: 1.4rem;
}
.mainmenu2 li:last-child {
  border-right: none;
}
.mainmenu2 a {
  color: #333;
  text-decoration: none;
  position: relative;
}
.mainmenu2 a::after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 1px;
  background: #333;
  bottom: 0;
  left: 0;
  transition: all 300ms 0s ease;
}
.mainmenu2 a:hover::after {
  width: 100%;
}
/*
------------------------------------
1-2.footer area
------------------------------------
*/
.footer {
  float: left;
  width: 100%;
  margin-top: 30px;
  font-family: 'Noto Sans JP', sans-serif;
}
.footer ul {
  display: flex;
  justify-content: space-around;
  padding: 10px 0;
  background: #009245;
}
.footer li {
  font-size: 1.3rem;
}
.footer li a {
  color: #fff;
  text-decoration: none;
  transition: all 300ms 0s ease;
}
.footer li a:hover {
  opacity: 0.7;
}
.footer p {
  text-align: center;
  margin: 10px 0;
  font-size: 1.3rem;
  color: #A3A3A3;
}
/*
------------------------------------
1-3.Go to page top
------------------------------------
*/
main {
  position: relative;
  float: left;
}
.pagetop {
  display: none;
  position: fixed;
  bottom: 100px;
  right: 10px;
  border-radius: 50% 50%;
  height: 75px;
  width: 75px;
  background-color: #009245;
}
.pagetop::after {
  content: "";
  position: absolute;
  top: 40%;
  left: 28%;
  width: 25px;
  height: 25px;
  border: solid 4px;
  border-color: #fff #fff transparent transparent;
  transform: rotate(-45deg);
}
.pagetop:hover {
  opacity: .8;
}
/*
------------------------------------
1-4.Go to English page
------------------------------------
*/
p.trans {
  float: left;
  width: 50%;
  margin-top: 5px;
  font-weight: bold;
  font-size: 1.8rem;
}
p.trans a {
  color: #009245;
}
p.trans::before {
  content: "\f0a4";
  font-family: FontAwesome;
  display: inline-block;
  margin-right: 10px;
}