body, html, h1, h2, h3, h4, h5, ul, li, div, p, img, section, a, header, footer, figure, dl, dt, dd {
  margin: 0;
  padding: 0;
  color: #333;
  box-sizing: border-box;
}

section, header, footer {
  display: block;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

ul {
  list-style: none;
}

body {
 background-image: url(img/img_bg.jpg);
 background-repeat: no-repeat;
 background-size: cover;
 width: 100%;
 height: 100vh;
 background-position: center;
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}
.wrapper {
 width: 100%;
 text-align: center;
}
.container {
 background: rgba(255,255,255,0.8);
 width: 70%;
 height: auto;
 text-align: center;
 margin: 6rem auto 30px;
 padding: 50px 0;
}
h1.logo {
 width: 150px;
 margin: 0 auto 25px;
}
h1.logo img {
 width: 100%;
}
p {
 font-size: 18px;
 line-height: 1.8;
 margin-bottom: 30px;
}
.large {
 font-size: 25px;
 font-weight: 600;
}
/*.bnr-container {
 width: 70%;
 display: flex;
 flex-wrap: wrap;
 gap: 20px;
 margin: 0 auto;
 text-align: center;
 }
*/
.bnr-container {
 text-align:center;
}
.bnr-container > figure {
display:inline-block;
}
.bnr-item {
 width: 270px;
 margin-bottom: 10px;
}
.bnr-item img a {    display: block;
    transition: all .5s ease-in-out;
    transform: translateY(0);
    box-shadow: 0 10px 10px rgba(0,0,0,.1);
}
.bnr-item img {
    width: 100%;
    height: auto; /* アスペクト比を維持 */
    }
.bnr-item a:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 8px rgba(0,0,0,.3);
}
footer {
 color: #fff;
 font-size: 14px;
}
.pc-no {
 display: none;
 }
@media screen and (max-width: 768px) {
.container {
  width: 90%;
}
 .pc-no {
     display: block;
 }
}
