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

.overlay {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  opacity: 0.7;
  z-index: 2;
  display: inherit;
}

.centerInner {
position: absolute;
top:50%;
left:50%;
z-index: 3;
transform: translateX(-50%) translateY(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);}


nav {
background-color: #000;
position: fixed;
opacity: 0.8;
color: #fff;
width: 100%;
}

nav .navContent {
max-width: 500px;
text-align: center;
background-color: none;
margin: 0 auto;
font-family: garamond-premier-pro-display, serif;
font-weight: 300;
font-style: normal;
font-size: 48px;
letter-spacing: 0.1em;
padding: 20px 0;
}
nav .navContent div {
margin-bottom: 80px;
}
@media (max-width: 420px) {
nav .navContent {
font-size: 22px;
}
nav .navContent div {
margin-bottom: 20px;
}
}



.active {
opacity: 1 !important;
}

h1 {
font-size: 30px;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
margin-bottom: 80px !important;
font-weight: 300;
text-align: center;
}

h2 {
font-size: 16px;
margin-bottom: 20px !important;
font-weight: bold;
}
@media (max-width: 420px) {
h1 {
font-size: 22px;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
margin-bottom: 50px !important;
font-weight: 300;
text-align: center;
}
}

/* googlemap */
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
margin-bottom: 40px;
}
.gmap iframe {
overflow: hidden;
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;

}


.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 20;
}
.global-nav {
  position: fixed;
  display: flex;
  align-items: center;
  right: 0; /* これで隠れる */
  top: 0;
  width: 100vw; /* スマホに収まるくらい */
    height: 100vh;
   background-color: rgba(0,0,0,0.8);
  transition: all .2s;
  z-index: 20;
  opacity: 0;
  visibility: hidden;
}
.hamburger {
  position: absolute;
  background-image: url("../images/icon07.png");
  background-repeat: no-repeat;
    background-position: center center;
    background-size: 40%;
  left: 0;
  top: 0;
  width: 50px !important; /* クリックしやすいようにちゃんと幅を指定する */
  height: 50px !important; /* クリックしやすいようにちゃんと高さを指定する */
  background-color: #063356;
padding: 20px ;
  cursor: pointer;
  z-index: 300;
}
.nav-open .hamburger {
  position: absolute;
  background-image: url("../images/icon08.png");
  background-repeat: no-repeat;
  background-position: center center;
   background-color: rgba(0,0,0,1);
   background-size: 40%;
  left: 0;
  top: 0;
  width: 50px; /* クリックしやすいようにちゃんと幅を指定する */
  height: 50px; /* クリックしやすいようにちゃんと高さを指定する */
padding: 20px;
  cursor: pointer;
  z-index: 300;
}

@media (max-width: 420px) {
.hamburger {
  position: absolute;
  background-image: url("../images/icon07.png");
  background-repeat: no-repeat;
    background-position: center center;
      background-size: 40%;
  left: 0;
  top: 0;
  width: 20px !important; /* クリックしやすいようにちゃんと幅を指定する */
  height: 20px !important; /* クリックしやすいようにちゃんと高さを指定する */
  background-color: #063356;
padding: 20px ;
  cursor: pointer;
  z-index: 300;
}
.nav-open .hamburger {
  position: absolute;
  background-image: url("../images/icon08.png");
  background-repeat: no-repeat;
  background-size: 40%;
  background-position: center center;
   background-color: rgba(0,0,0,1);
  left: 0;
  top: 0;
  width: 20px; /* クリックしやすいようにちゃんと幅を指定する */
  height: 20px; /* クリックしやすいようにちゃんと高さを指定する */
padding: 20px;
  cursor: pointer;
  z-index: 300;
}

}



/* 表示された時用のCSS */
.nav-open .global-nav {
    opacity: 1;
  visibility: inherit;
}


.hrIcon {
max-width: 27px;
margin: 0 auto;
margin-bottom: 90px
}

.btMore  a, .btMore-acse  a {
background-image: url("../images/bt_icon01.png");
background-repeat: no-repeat;
background-position: right bottom;
background-color: #043459;
max-width: 100px;
padding: 15px 40px;
font-size: 12px;
text-align: center;
color: #fff !important;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
font-weight: normal;
font-style: normal;
}


footer {
text-align: center;
display: block !important;
padding-bottom: 50px;
}
 .footerLogo {
max-width: 180px;
margin: 0 auto;
margin-bottom: 40px;
}

footer .address {
margin-bottom: 20px;
} 

footer .tel {
font-size: 30px;
line-height: 48px;
margin-bottom: 50px;
}

@media (max-width: 420px) {
 .footerLogo {
max-width: 110px;
margin: 0 auto;
margin-bottom: 15px;
}
footer .address {
line-height: 150%;
margin-bottom: 20px;
} 
footer .tel {
font-size: 20px;
line-height: 30px;
margin-bottom: 50px;
}
}

.sp {display: none}
@media (max-width: 420px) {
.sp {display: block}
}


