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

@import url("reset.css");
body.loading {
overflow: hidden;
}
#loader {
position: fixed;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
background: #00583b;
z-index: 9999;
}
#loader img{
width: 24%;
height: auto;
}

a:link {
color:#00583b;
}
a:visited {
color:#00583b;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
.grecaptcha-badge { visibility: hidden; }
body {
-webkit-text-size-adjust: 100%;
font-family: "Zen Kaku Gothic New",
"Helvetica Neue",
Arial,
"Hiragino Kaku Gothic ProN",
"Hiragino Sans",
"Noto Sans JP",
sans-serif;
color:#005a3a;
}
body.noscroll {
overflow: hidden;
height: 100vh; 
}
header {
width:100%;
height:100vh;
position:absolute;
z-index:9998;
}
header h1 {
position:fixed;
top:40px;
left:30px;
-webkit-transition: all .4s;
transition: all .4s;
}
header h1 img {
width:90px;
height:auto;
-webkit-transition: all .4s;
transition: all .4s;
}
header.fixed h1 {
top:30px;
left:20px;
}
header.fixed h1 img {
width:50px;
}



.toggleBtn {
display: block;
width: 30px;
height: 28px;
position: fixed;
right: 25px;
top: 40px;
z-index: 9998;
cursor: pointer;
}
header.fixed .toggleBtn {
top: 40px;
right:25px;
}
.toggleBtn span {
display: inline-block;
background-color: #005a3a;
height: 2px;
width: 100%;
position: absolute;
left: 0;
}
.top .toggleBtn span {
background-color: #005a3a;
}
.toggleBtn,
.toggleBtn span {
-webkit-transition: all .4s;
transition: all .4s;
box-sizing: border-box;
}
.toggleBtn span:nth-of-type(1) {top: 0;}
.toggleBtn span:nth-of-type(2) {top: 13px;}
.toggleBtn span:nth-of-type(3) {bottom: 0;}
.gNav.active + .toggleBtn {
z-index: 9999;
top: 35px;
}
nav.active + .toggleBtn span:nth-of-type(1) {
background-color: #000;
-webkit-transform: translateY(13px) rotate(-45deg);
transform: translateY(13px) rotate(-45deg);
}
nav.active + .toggleBtn span:nth-of-type(2) {
display:none;
}
nav.active + .toggleBtn span:nth-of-type(3) {
background-color: #000;
-webkit-transform: translateY(-12px) rotate(45deg);
transform: translateY(-12px) rotate(45deg);
}

nav {
display: none;
position: fixed;
text-align: center;
background: rgba(255, 255, 255, 0.9);
height: 100%;
width: 100%;
top: 0;
left:0;
transition:.3s;
}

nav.active,
.fixed nav.active{
display: block;
overflow-y: scroll;
-webkit-overflow-scrolling:touch;
}
nav.active ul {
position: absolute;
top:30px;
left:20px;
}
nav.active li:nth-of-type(1) img {
width:50px;
height:auto;
}
nav.active p {
display:block;
position:fixed;
top:35px;
left:35px;
width:55.8px;
height:142.2px;
}
nav.active p img {
width:100%;
}
nav.active ul {
grid-column:2;
display: block;
text-align:left;
}
nav.active li {
line-height:43px;
}
nav.active li::before {
content:"";
}
nav.active li:nth-child(4)::after {
content:"";
}
nav.active li a {
padding:0;
}
nav.active li:last-child {
padding-top:20px;
width:25px;
}
nav.active li:last-child img {
width:25px;
}



@media (min-width: 600px) {
#loader img{
width: 18%;
}
}




@media (min-width: 768px) {
#loader img{
width: 12%;
}
}




@media (min-width: 1024px) {
#loader img{
width: 7%;
}
}
