html,body{
  margin:0;
  padding:0;
  overflow-x:hidden;
  font-family:'Noto Sans JP',"Kiwi Maru",sans-serif;
  background:#2b3e2f;
  color:#f1f1f1;
}

*,*::before,*::after{box-sizing:border-box;}

body{line-height:1.6;}

h1,h2,h3,h4,h5,h6{
  margin:0 0 20px;
  font-weight:bold;
  line-height:1.3;
  color:#a1c349;
}

h1{font-size:2.8rem;}
h2{font-size:2.2rem;}
h3{font-size:1.7rem;}
h4{font-size:1.4rem;}
h5{font-size:1.2rem;}
h6{font-size:1rem;}

p{
  margin:0 0 16px;
  font-size:1rem;
  line-height:1.7;
  color:#f1f1f1;
}

a{
  color:#a1c349;
  text-decoration:none;
  transition:.3s ease;
}

a:hover{
  color:#fff;
  text-decoration:underline;
}

ul,ol{
  margin:0 0 20px 24px;
  padding:0;
  line-height:1.8;
}

li{margin:0 0 8px;}

img,video{
  max-width:100%;
  height:auto;
  display:block;
  border-radius:10px;
}

section,article{
  margin:0;
  padding:0;
  background:none;
  border-radius:0;
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"]{
  display:inline-block;
  padding:10px 16px;
  border:none;
  border-radius:6px;
  background:#4b7a41;
  color:#fff;
  font-size:15px;
  font-weight:bold;
  cursor:pointer;
  transition:.3s ease;
  box-shadow:0 4px 10px rgba(0,0,0,.2);
}

button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover{
  background:#3a5a36;
  transform:translateY(-1px);
}

input,textarea,select{
  width:100%;
  max-width:100%;
  padding:12px 14px;
  border:none;
  border-radius:10px;
  background:#fff;
  color:#333;
  font-size:16px;
}

label{
  display:block;
  margin:0 0 8px;
  font-weight:bold;
  color:#f1f1f1;
}

table{
  width:100%;
  border-collapse:collapse;
  margin:20px 0;
  background:#fff;
  color:#333;
  border-radius:10px;
  overflow:hidden;
}

th{
  padding:12px;
  text-align:left;
  background:#f1f1f1;
  color:#4b7a41;
  font-weight:bold;
}

td{
  padding:12px;
  border-top:1px solid #ddd;
}

header,nav,footer{
  width:100%;
}

nav{
  background:rgba(0,0,0,.8);
  color:#fff;
}

nav a{
  color:#fff;
  font-weight:bold;
}

nav a:hover{
  background:#4b7a41;
  color:#fff;
  text-decoration:none;
}

footer{
  padding:20px;
  text-align:center;
  background:#1b2a1f;
  color:#fff;
}

footer a{color:#a1c349;}

hr{
  border:none;
  height:1px;
  background:rgba(255,255,255,.15);
  margin:30px 0;
}
.headerzone{
  margin-top: 78px;
}
.totop{
  width: 70px;
  z-index: 9999;
}
.hero-pc{
  margin-top:70px;
  border-radius:0px;
}
blockquote{
  margin:20px 0;
  padding:20px;
  background:#3e5c47;
  border-left:4px solid #a1c349;
  border-radius:10px;
  color:#f1f1f1;
}

strong,b{color:#fff;}
small{color:#ccc;}

.card,.box,.panel{
  background:#fff;
  color:#333;
  padding:20px;
  border-radius:10px;
  box-shadow:0 4px 8px rgba(0,0,0,.2);
}

.card h1,.card h2,.card h3,
.box h1,.box h2,.box h3,
.panel h1,.panel h2,.panel h3{
  color:#4b7a41;
}

.card p,.box p,.panel p,
.card li,.box li,.panel li{
  color:#333;
}
.hero-sp{display:none;}

@media (max-width:768px){
  .hero-pc{display:none;}
  .hero-sp{display:block; margin-top:70px; border-radius: 0px;}
}
@media (max-width:768px){
  h1{font-size:2rem;}
  h2{font-size:1.6rem;}
  h3{font-size:1.3rem;}
  h4{font-size:1.15rem;}

  p,li{
    font-size:14px;
    line-height:1.6;
  }

  button,
  input[type="submit"],
  input[type="button"],
  input[type="reset"]{
    width:100%;
  }

  table,thead,tbody,tr,th,td{
    display:block;
    width:100%;
  }

  th,td{box-sizing:border-box;}
}
