
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400&display=swap');

:root {
 --main-bg-color:#070200;
 --assort-color:#8f8f8f;
 --main-txt-color:#fff;
 --main-txt-reverse:#000;
 --font-family-serif: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
 --font-family-hj:'Noto Serif JP','游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
 --font-family-he:Garamond , 'Times New Roman' , '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
 --font-family-sans-serif: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

html{
  font-size: 62.5%; 
  height: 100%;
}

body {
  font-family: var(--font-family-serif);
  background: var(--main-bg-color);
  font-size: 1.6em;
  height: 100%;
  text-align: center;
  color: var(--main-txt-color);
}

a{
  color: var(--main-txt-color);
  text-decoration: none;
}
body > footer {
  position: sticky;
  top: 100vh;
  font-size: 1.2rem;
  padding-bottom: 1rem;
}

/*header*/

header{
  display: flex;
  justify-content :center;
  align-items:center;
  min-width: 980px;
  max-width: 1920px;
  height: 920px;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
 background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
}
header::before{
  background-color: rgba(0,0,0,0.4);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}
header::after{
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), var(--main-bg-color) 100%);
}
header #header-box{
  display: flex;
  flex-direction: column;
  justify-content:center;
  align-items:center;
  align-content:space-between;
  z-index: 1;
  height:920px;
}
header.lower-box{
  align-items: flex-end;
}

header h1{
  display: block;
  width:430px;
  text-align: center;
}

header img{
  display: inline-block;
}
header .logo-img{
  filter:drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.5));
  }
header h1 span{
    display: block;
    margin-top: 35%;
    font-weight: 400;
}
header .lower-box{
margin-top:160px;
  display: block;

}

header p.enter{
  margin-top: 35px;
}

header p.enter_heaven{
  margin-top: 5px;
}

header p.enter_foregners{
  margin-top: 10px;
  margin-bottom:45px;
}
header p.enter img{
  transition-duration: .5s;
}
header p.enter img:hover{
  opacity: 0.6;
  transition-duration: .2s;
}
header p.kin18{
  margin: 15px auto;
  width:50px;
}
header p.text{
  font-size: 1.4rem;
  line-height: 1.4;
      z-index: 2;
}

header p.copyright{
  margin-top:40px;
  font-size: 1.2rem;
    text-align: center;
    z-index: 2;
}



section br{
display: block;
content: "";
margin: 4px 0;
}
section p{
  font-size: 1.4rem;
}

section#bnr1{
  margin: 100px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 970px;
}

section#bnr1 .bnr{
  width: 465px;
  padding: 0;
  padding-bottom:30px;
}

section#bnr1 .bnr img{
  margin: 0;
  padding: 0;
}


section#bnr2{
  margin: 80px auto ;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 860px;
}

section#bnr2 .bnr{
  width: 400px;
  padding: 0;
  line-height: 1;
  margin-bottom: 2rem;
}

section#bnr3{
  margin: 80px  auto;
  padding-bottom: 80px ;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 800px;
}


section#bnr3 .bnr{
  width: 48%;
  padding: 0;
  line-height: 1;
  margin-bottom: 2rem;
}
.bnr{
  color:#8f8f8f;
}
.bnr a{
  color:#dddddd;
}
section#bnr_ad{
  margin: 80px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 946px;
}
section#bnr_ad .ads{
  margin-bottom: 0.5rem;
}
