body section,body aside{
    line-height: 1em;
    letter-spacing: .1em;
    font-family: 'Noto Sans JP', noto-sans-cjk-jp, sans-serif;
}
body section img,body aside img{
    margin: 0;
}
.l-header{
    position: relative;
    /* display: none; */
}

.fv ul{
  max-width: 71.6vw;
  width: 100%;
  margin: 40px 0 0;
  display: flex;
  justify-content: space-between;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.fv ul button{
  cursor: pointer;
}
.fv ul img{
  height: 2.7vw;
}

.rainydays{
  width: 1200px;
  margin: 0 auto 100px;
  text-align: center;
  position: relative;
}
.rainydays::before,.rainydays::after{
  content: '';
  width: calc(50% - 90px);
  height: 1px;
  background: #9e9e9e;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.rainydays::before{
  left: 0;
}
.rainydays::after{
  right: 0;
}
.rainydays img{
  width: 132px;
}

.about{
  width: 1200px;
  margin: 100px auto;
  text-align: center;
}
.about iframe{
  width: 100%;
  height: 675px;
}
.about > img{
  width: 132px;
  margin: 0 auto 50px;
  display: block;
}
.about h2{
  margin: 0 0 30px;
  font-size: 20px;
  letter-spacing: .1em;
  font-family: 'Noto serif JP', noto-serif-cjk-jp, serif;
}
.about p{
  width: 1000px;
  margin: 0 auto 100px;
  font-size: 16px;
  line-height: 1.75em;
  letter-spacing: .1em;
  font-family: 'Noto serif JP', noto-serif-cjk-jp, serif;
}
.about strong{
  margin: 0 0 50px;
  font-size: 18px;
  display: block;
}

.item{
  padding: 100px 0;
  background: #eae8e1;
}
.item h3{
  margin: 0 0 50px;
  font-size: 18px;
  line-height: 2em;
  text-align: center;
}
.item picture img{
  width: 800px;
  margin: 0 auto 50px;
  display: block;
}
.item > section{
  margin: 0 0 100px;
}
.item h4{
  margin: 0 0 50px;
  font-size: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.item h4 span{
  margin: 0 0 0 10px;
  font-size: 26px;
}
.item section > ul{
  width: 1200px;
  margin: 0 auto 100px;
  display: flex;
  justify-content: space-between;
}
.item section > ul > li{
  width: 48%;
}
.item section > ul img{
  width: 100%;
  display: block;
}
.item section > ul > li:last-child img{
  margin: 0 0 150px;
}
.item section > ul > li p{
  font-size: 16px;
  line-height: 1.75em;
}

.detail{
  width: 1200px;
  margin: auto;
}
.detail h5{
  font-size: 18px;
  margin: 0 0 50px;
  text-align: center;
}
.detail > img{
  width: 800px;
  margin: 0 auto 50px;
  display: block;
}
.item .detail > ul{
  align-items: center;
}
.item .detail > ul > li p{
  margin: 0 0 100px;
  font-size: 16px;
  line-height: 1.75em;
}
.item .detail > ul > li ul{
  display: flex;
  justify-content: space-between;
}
.item .detail > ul > li ul strong{
  font-size: 16px;
  display: flex;
  align-items: center;
}
.item .detail > ul > li ul strong small{
  font-size: 10px;
}
.item .detail > ul > li ul a{
  width: 170px;
  height: 30px;
  font-size: 12px;
  font-weight: bold;
  background: #000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.item .detail div{
  padding: 100px 0 0;
  border-top: 1px solid #666;
}
.item .detail div strong{
  margin: 0 0 50px;
  font-size: 20px;
  line-height: 1.8em;
  display: flex;
  justify-content: center;
}
.item .detail div ul{
  width: 1200px;
  margin: 0 auto 100px;
  display: flex;
  justify-content: space-between;
}
.item .detail div ul li{
  width: 48%;
}
.item .detail div ul li img{
  margin: 0 0 30px;
}
.item .detail div ul p,.item .detail > p{
  margin: 0 0 12px;
  font-size: 16px;
}
.item .detail > p{
  text-align: center;
}
.item .detail div > p{
  margin: 0 0 12px;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.item .detail div p span,.item .detail > p span{
  font-size: 12px;
}
.item .detail div a,.item .detail > a{
  width: 300px;
  height: 40px;
  margin: auto;
  color: #fff;
  background: #000;
  display: flex;
  justify-content: center;
  align-items: center;
}
.item .detail_shirt li{
  width: 100%;
}
.item .detail .detail_shirt li p{
  text-align: center;
  margin: 5px 0 0 0;
  font-size: 14px;
}

.item > section:nth-child(6) > ul{
  margin: 0 auto 20px;
}
.item > section:nth-child(6) > ul > li:last-child{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.item > section:nth-child(6) > ul > li:last-child img{
  margin: 0;
}
.item > section:nth-child(6) > p{
  width: 1200px;
  margin: 0 auto 100px;
  font-size: 16px;
  line-height: 1.75em;
}
body .item > section:nth-child(6) > ul > li img{
  margin: 0 0 30px;
}
body .item > section:nth-child(6) > ul > li:last-child img{
  margin: 0 0 30px;
}

.item > section:nth-child(6) .detail > ul{
  align-items: flex-start;
  margin: 0;
}
.item > section:nth-child(6) .detail > ul > li img{
  margin: 0 0 30px;
}

aside ul{
  width: 1200px;
  margin: auto;
}
aside ul li{
  padding: 100px 0;
  display: flex;
  flex-direction: column;
  position: relative;
}
aside ul li h4{
  margin: 0 0 40px;
  font-size: 20px;
  text-align: center;
}
aside ul li img{
  width: 800px;
  margin: 0 auto 40px;
  display: block;
}
aside ul li + li::before{
  content: '';
  width: 100%;
  height: 1px;
  background: #d1d1cf;
  position: absolute;
  top: 0;
  left: 0;
}
aside ul li a{
  width: 560px;
  height: 50px;
  margin: auto;
  border: 1px solid #808080;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width:1200px) {
  .fv ul{
    margin: 3vw 0 0;
  }
  .rainydays{
    width: 92vw;
    margin: 0 auto 7.6vw;
  }
  .rainydays::before,.rainydays::after{
    width: calc(50% - 6.9vw);
  }
  .rainydays img{
    width: 10vw;
  }
  .about{
    width: 92vw;
    margin: 7.6vw auto;
  }
  .about iframe{
    height: 51.9vw;
  }
  .about > img{
    width: 10vw;
    margin: 0 auto 3.8vw;
  }
  .about h2{
    margin: 0 0 2.3vw;
    font-size: 1.5vw;
  }
  .about p{
    width: 76.9vw;
    margin: 0 auto 7.6vw;
    font-size: 1.2vw;
  }
  .about strong{
    margin: 0 0 3.8vw;
    font-size: 1.3vw;
  }
  
  .item{
    padding: 7.6vw 0;
  }
  .item h3{
    margin: 0 0 3.8vw;
    font-size: 1.3vw;
  }
  .item picture img{
    width: 61.5vw;
    margin: 0 auto 3.8vw;
  }
  .item > section{
    margin: 0 0 7.6vw;
  }
  .item h4{
    margin: 0 0 3.8vw;
    font-size: 1.6vw;
  }
  .item h4 span{
    margin: 0 0 0 1.3vw;
    font-size: 2vw;
  }
  .item section > ul{
    width: 92vw;
    margin: 0 auto 7.6vw;
  }
  .item section > ul > li:last-child img{
    margin: 0 0 11.5vw;
  }
  .item section > ul > li p{
    font-size: 1.2vw;
  }
  
  .detail{
    width: 92vw;
  }
  .detail h5{
    font-size: 1.3vw;
    margin: 0 0 3.8vw;
  }
  .detail > img{
    width: 61.5vw;
    margin: 0 auto 3.8vw;
  }
  .item .detail > ul > li p{
    margin: 0 0 7.6vw;
    font-size: 1.2vw;
  }
  .item .detail > ul > li ul strong{
    font-size: 1.2vw;
  }
  .item .detail > ul > li ul strong small{
    font-size: 1.3vw;
  }
  .item .detail > ul > li ul a{
    width: 13vw;
    height: 2.3vw;
    font-size: .9vw;
  }
  .item .detail div{
    padding: 7.6vw 0 0;
  }
  .item .detail div strong{
    margin: 0 0 3.8vw;
    font-size: 1.5vw;
  }
  .item .detail div ul{
    width: 92vw;
    margin: 0 auto 7.6vw;
  }
  .item .detail div ul li img{
    margin: 0 0 2.3vw;
  }
  .item .detail div ul p,.item .detail > p{
    margin: 0 0 .9vw;
    font-size: 1.2vw;
  }
  .item .detail div > p{
    margin: 0 0 .9vw;
    font-size: 1.2vw;
  }
  .item .detail div p span,.item .detail > p span{
    font-size: .9vw;
  }
  .item .detail div a,.item .detail > a{
    width: 23vw;
    height: 3vw;
  }
  .item .detail .detail_shirt li p{
    margin: 1vw 0 0;
    font-size: 1vw;
  }
  
  .item section:nth-child(6) > ul{
    margin: 0 auto 1.5vw;
  }
  .item section:nth-child(6) > p{
    width: 92vw;
    margin: 0 auto 7.6vw;
    font-size: 1.2vw;
  }
  body .item section:nth-child(6) > ul > li img{
    margin: 0 0 2.3vw;
  }
  body .item section:nth-child(6) > ul > li:last-child img{
    margin: 0 0 2.3vw;
  }
  
  .item section:nth-child(6) .detail > ul{
    margin: 0;
  }
  .item section:nth-child(6) .detail > ul > li img{
    margin: 0 0 2.3vw;
  }
  
  aside ul{
    width: 92vw;
  }
  aside ul li{
    padding: 7.6vw 0;
  }
  aside ul li h4{
    margin: 0 0 3vw;
    font-size: 1.5vw;
  }
  aside ul li img{
    width: 61.5vw;
    margin: 0 auto 3vw;
  }
  aside ul li a{
    width: 43vw;
    height: 3.8vw;
    border: 1px solid #808080;
  }
}

@media screen and (max-width:1000px) {
  .fv ul{
    margin: 4vw 0 0;
  }
  .fv ul img{
    height: 3.2vw;
  }

  .rainydays{
    width: 92vw;
    margin: 0 auto 10vw;
  }
  .rainydays::before,.rainydays::after{
    width: calc(50% - 9vw);
  }
  .rainydays img{
    width: 13.2vw;
  }

  .about{
    width: 92vw;
    margin: 10vw auto;
  }
  .about iframe{
    height: 67.5vw;
  }
  .about > img{
    width: 13.2vw;
    margin: 0 auto 5vw;
  }
  .about h2{
    margin: 0 0 3vw;
    font-size: 2vw;
  }
  .about p{
    width: 84vw;
    margin: 0 auto 10vw;
    font-size: 1.6vw;
  }
  .about strong{
    margin: 0 0 5vw;
    font-size: 1.8vw;
  }

  .item{
    padding: 10vw 0;
  }
  .item h3{
    margin: 0 0 5vw;
    font-size: 1.8vw;
  }
  .item picture img{
    width: 78vw;
    margin: 0 auto 5vw;
  }
  .item > section{
    margin: 0 0 10vw;
  }
  .item h4{
    margin: 0 0 5vw;
    font-size: 2.2vw;
  }
  .item h4 span{
    margin: 0 0 0 1vw;
    font-size: 2.6vw;
  }
  .item section > ul{
    width: 92vw;
    margin: 0 auto 10vw;
  }
  .item section > ul > li:last-child img{
    margin: 0 0 10vw;
  }
  .item section > ul > li p{
    font-size: 1.6vw;
  }

  .detail{
    width: 92vw;
  }
  .detail h5{
    font-size: 1.8vw;
    margin: 0 0 5vw;
  }
  .detail > img{
    width: 78vw;
    margin: 0 auto 5vw;
  }
  .item .detail > ul > li p{
    margin: 0 0 10vw;
    font-size: 1.6vw;
  }
  .item .detail > ul > li ul strong{
    font-size: 1.6vw;
  }
  .item .detail > ul > li ul strong small{
    font-size: 1vw;
  }
  .item .detail > ul > li ul a{
    width: 17vw;
    height: 3vw;
    font-size: 1.2vw;
  }
  .item .detail div{
    padding: 10vw 0 0;
  }
  .item .detail div strong{
    margin: 0 0 5vw;
    font-size: 2vw;
  }
  .item .detail div ul{
    width: 92vw;
    margin: 0 auto 10vw;
  }
  .item .detail div ul li img{
    margin: 0 0 3vw;
  }
  .item .detail div ul p,.item .detail > p{
    margin: 0 0 1.2vw;
    font-size: 1.6vw;
    line-height: 1.75em;
  }
  .item .detail div > p{
    margin: 0 0 1.2vw;
    font-size: 1.6vw;
  }
  .item .detail div p span,.item .detail > p span{
    font-size: 1.2vw;
  }
  .item .detail div a,.item .detail > a{
    width: 30vw;
    height: 4vw;
  }
  .item .detail .detail_shirt li p{
    margin: 1vw 0 0;
    font-size: 1.4vw;
  }

  .item section:nth-child(6) > ul{
    margin: 0 auto 2vw;
  }
  .item section:nth-child(6) > p{
    width: 92vw;
    margin: 0 auto 10vw;
    font-size: 1.6vw;
  }
    body .item section:nth-child(6) > ul > li img{
    margin: 0 0 3vw;
  }
    body .item section:nth-child(6) > ul > li:last-child img{
    margin: 0 0 3vw;
  }

  .item section:nth-child(6) .detail > ul > li img{
    margin: 0 0 3vw;
  }

  aside ul{
    width: 92vw;
  }
  aside ul li{
    padding: 10vw 0;
  }
  aside ul li h4{
    margin: 0 0 4vw;
    font-size: 2vw;
  }
  aside ul li img{
    width: 78vw;
    margin: 0 auto 4vw;
  }
  aside ul li a{
    width: 50vw;
    height: 5vw;
  }
}



@media screen and (max-width:767px) {
  .fv ul{
    max-width: 100%;
    width: 90vw;
    margin: 2.6vw 0 0;
  }
  .fv ul img{
    height: 8vw;
  }
  .fv .award{
    display: none;
  }

  .rainydays{
    width: 90vw;
    margin: 0 auto 21.3vw;
  }
  .rainydays::before,.rainydays::after{
    width: calc(50% - 10.2vw);
  }
  .rainydays img{
    width: 14.1vw;
  }

  .about{
    width: 90vw;
    margin: 21.3vw auto;
  }
  .about iframe{
    height: 50.7vw;
  }
  .about > img{
    width: 35.2vw;
    margin: 0 auto 10.6vw;
  }
  .about h2{
    margin: 0 0 9.6vw;
    font-size: 4.2vw;
    text-align: left;
  }
  .about p{
    width: 90vw;
    margin: 0 auto 21.3vw;
    font-size: 3.8vw;
    text-align: justify;
  }
  .about strong{
    margin: 0 0 6.4vw;
    font-size: 4.2vw;
    display: block;
    font-family: 'Noto Sans JP', noto-sans-cjk-jp, sans-serif;
  }

  .item{
    padding: 21.3vw 0 0;
    overflow: hidden;
  }
  .item h3{
    margin: 0 0 21.3vw;
    font-size: 4.2vw;
    line-height: 2em;
    text-align: center;
  }
  .item picture img{
    width: 90vw;
    margin: 0 auto 21.3vw;
  }
  .item > section{
    margin: 0 0 21.3vw;
  }
  .item h4{
    width: 90vw;
    margin: 0 auto 10.3vw;
    font-size: 5.3vw;
    justify-content: flex-start;
  }
  .item h4 span{
    margin: 0 0 0 8vw;
    font-size: 6.4vw;
  }
  .item section > ul{
    width: 100%;
    margin: 0 auto 21.3vw;
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .item section > ul img{
    width: 90vw;
    margin: 0 auto 5.3vw;
  }
  .item section > ul > li{
    width: 100%;
  }
  .item section > ul > li:first-child{
    margin: 64vw 0 0;
  }
  .item section > ul > li:last-child img{
    width: 100%;
    margin: 0;
    position: absolute;
    top: 0;
  }
  .item section > ul > li p{
    width: 90vw;
    margin: auto;
    font-size: 3.7vw;
  }
  .item section:nth-child(5) .detail > ul{
    margin: 0 auto;
  }

  .detail{
    width: 90vw;
  }
  .detail h5{
    font-size: 4.2vw;
    margin: 0 0 8vw;
    text-align: left;
  }
  .detail > img{
    width: 100%;
    margin: 0 auto 8vw;
    display: block;
  }
  .item .detail > ul{
    align-items: center;
  }
  .item .detail > ul > li p{
    margin: 0 0 21.3vw;
    font-size: 3.7vw;
  }
  .item .detail > ul > li ul{
    flex-direction: column;
    align-items: center;
  }
  .item .detail > ul > li ul strong{
    font-size: 3.6vw;
  }
  .item .detail > ul > li ul strong small{
    font-size: 3vw;
  }
  .item section .detail > ul > li:first-child{
    margin: 0;
  }
  .item .detail > ul > li ul a{
    width: 42.6vw;
    height: 8vw;
    margin: 4vw 0 0;
    font-size: 3.2vw;
  }
  .item .detail div{
    padding: 21.3vw 0 0;
  }
  .item .detail div strong{
    margin: 0 0 8vw;
    font-size: 4.8vw;
  }
  .item .detail div ul{
    width: 100%;
    margin: 0 auto 9vw;
    flex-direction: column;
  }
  .item .detail div ul li{
    width: 100%;
  }
  .item .detail div ul li img{
    margin: 0 0 4vw;
  }
  .item section:nth-child(6) > ul > li:last-child img:last-child{
    position: relative;
  }
  .item .detail div ul p,.item .detail > p{
    margin: 0 0 8vw;
    font-size: 3.7vw;
  }
  .item .detail div > p{
    margin: 0 0 4vw;
    font-size: 4.2vw;
  }
  .item .detail div p span,.item .detail > p span{
    font-size: 4vw;
  }
  .item .detail div a,.item .detail > a{
    width: 42.6vw;
    height: 8.5vw;
  }
  .item section > ul .detail_shirt img{
    width: 100%;
    margin: 0 0 2vw;
  }
  .item .detail > ul > li .detail_shirt{
    width: 100%;
    flex-direction: row;
  }
  .item .detail .detail_shirt li p{
    width: 100%;
    margin: 0 0 6vw;
    font-size: 3vw;
  }
  
  .item section:nth-child(6) > ul{
    margin: 0 auto;
  }
  .item section:nth-child(6) > ul > li:last-child{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .item section:nth-child(6) > ul > li:last-child img{
    margin: 0;
  }
  .item section:nth-child(6) > p{
    width: 90vw;
    margin: 0 auto 21.3vw;
    font-size: 3.7vw;
    text-align: justify;
  }
  body .item section:nth-child(6) > ul > li img{
    width: 90vw;
    margin: 0 auto 9vw;
  }
  body .item section:nth-child(6) > ul > li:last-child img{
    margin: 0 auto 9vw;
  }
  body .item section:nth-child(6) > ul > li:last-child img:first-child{
    width: 100%;
  }
  
  .item section:nth-child(6) .detail > ul{
    align-items: flex-start;
    margin: 0;
  }
  .item section:nth-child(6) .detail > ul > li img{
    margin: 0 0 8vw;
  }

  .item section:nth-child(6) .detail > ul > li p{
    margin: 0 0 12vw;
  }
  .item section:nth-child(6) .detail ul > li:last-child img{
    position: relative;
  }
  .item section:nth-child(6) .detail > p{
    margin: 0 0 4vw;
    font-size: 4.2vw;
    text-align: center;
    line-height: 1em;
  }

  aside ul{
    width: 90vw;
  }
  aside ul li{
    padding: 13.3vw 0;
  }
  aside ul li h4{
    margin: 0 0 6.6vw;
    font-size: 3.7vw;
    text-align: left;
  }
  aside ul li img{
    width: 100%;
    margin: 0 auto 6.6vw;
  }
  aside ul li a{
    width: 53.3vw;
    height: 10.6vw;
  }

}