body {
  width: 100%;
  font-family: 'Noto Serif JP', serif;
  font-size: 100%;
  line-height: 1.4;
  -webkit-text-size-adjust: 100%;
  color: #000;
  -webkit-print-color-adjust: exact;
}

#wrap {
  position : relative;
  overflow :  hidden;
}

img {
  width : 100%;
  height : auto;
  display : block;
  min-height : 1px;
}



.sp {
  display: none!important;
}

@media screen and (max-width: 767px) {
  .pc {
    display: none!important;
  }
  .sp {
    display: block!important;

  }
}

.image-box {
  position : relative;
}

.image-cap {
  position : absolute;
  right: 5px;
  bottom: 5px;
  font-size: 10px;
}

/* ------------------------
fadein effect
---------------------------*/
.fadein {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 800ms;
}

.fadein.effecton {
    opacity: 1;
    transform: translate(0, 0);
}

.imgeffect {
  position: relative;
  overflow: hidden;
}
.imgeffect::before{
  content: '';
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #BBDBDB;
  opacity: 1;
  transform: scaleX(1);
  transform-origin: top right;
  transition: opacity 2s,transform 1.4s,filter 2s;
}
.imgeffect.effecton::before{
  opacity: 0;
  transform: scaleX(0);
}

/* ------------------------
h_over-scroll
---------------------------*/
.h_over-scroll {
  position : relative;
}

.h_over-scroll__text {
  display :  none;
}

@media screen and (max-width: 767px) {
  .h_over-scroll {
    overflow-x :  scroll;
    overflow-y :  none;
    border :  1px solid #eee;
    padding : 10px;
  }
  .h_over-scroll img {
    height :  300px;
    width :  auto;
  }
  .h_over-scroll__text {
    display :  block;
    font-size :  12px;
    margin-top :  20px;
    text-align :  center;
  }
  .h_over-scroll__text:after {
    content : "";
    display : inline-block;
    width: 0;
    height: 0;
    margin-bottom : -3px;
    margin-left : 10px;
    border-left: 8px solid #000;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
  }
}

/*----------------------------------------
  btnPagetop
----------------------------------------*/
#btnPagetop {
  position: fixed;
  width: 50px;
  right: 0px;
  bottom: 60px;
  z-index: 999;
}

@media screen and (min-width: 1200px) {
  #btnPagetop {
    position: fixed;
    width: 72px;
    right: 0px;
    bottom: 50px;
  }
}

#btnPagetop a {
  background-color: #000;
}
#btnPagetop a::before {
  background-color: #000;
}

a {
  opacity : 1;
  transition : .5s;
}
