/*----------------------------------------
**
** home
**
----------------------------------------*/
body {
  background-color: #fff;
  min-width: 1200px;
}
@media screen and (max-width: 768px) {
  body {
    background-color: #fff;
    min-width: 100%;
  }
}

#wrapper {
  position: relative;
}
/*----------------------------------------
** _main
----------------------------------------*/
._main {
  position: relative;
}
._main-vis {
}
._main-vis img {
  width: 100%;
  max-width: inherit;
  height: auto;
}

._main-ttl {
  width: 25.92%;
  position: absolute;
  right: 2.27%;
  top: 30.28%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
	._main{
		background: #fff;
	}
  ._main-ttl {
    width: 62.13%;
    right: 2.27%;
    top: 0;
    padding-top: 66%;
  }
}

._main-catch-academy {
  /*width: 46.27%;*/
  width: 65%;
  position: absolute;
  right: 1.32%;
  top: 1.55%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-catch-academy {
    width: 97%;
    top: 0;
    left: 0;
    padding-top: 2%;
  }
}

._main-catch-awards {
  width: 46.27%;
  position: absolute;
  right: 1.32%;
  top: 13.8%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-catch-awards {
    width: 90.93%;
    right: 4.53%;
    top: 0;
    padding-top: 38%;
  }
}

._main-copy {
  width: 1.76%;
  position: absolute;
  left: 2.71%;
  top: 4.93%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-copy {
    width: 3.2%;
    left: inherit;
    top: 0;
    right: 4%;
    padding-top: 102%;
  }
}

._main-date-roadshow {
  width: 10.54%;
  position: absolute;
  right: 2.2%;
  bottom: 32%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-date-roadshow {
    width: 18.4%;
    right: 3.2%;
    bottom: auto;
    padding-top: 158%;
    top: 0;
  }
}

._main-dir-cast {
  width: 22.99%;
  position: absolute;
  right: 2.12%;
  bottom: 22%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-dir-cast {
    display: none;
  }
}

._main-tomato {
  width: 4.39%;
  position: absolute;
  right: 48.61%;
  top: 1.97%;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  ._main-tomato {
    width: 9.87%;
    right: 4.8%;
    top: 0;
	  padding-top: 20%;
  }
}

._bn-comment{
  width: 12%;
  position: absolute;
  right: 27%;
  bottom: 20%;
  opacity: 0;
  transition: all .5s;
}
._bn-comment:hover{
transform: rotate(-5deg);
}

._bn-bddvd{
  width: 36%;
  position: absolute;
  right: 3%;
  bottom: 5%;
  opacity: 0;
  transition: all .5s;
}
._bn-bddvd:hover{
transform: scale(1.05);
}
@media screen and (max-width: 768px) {
	._bn-comment{
	  width: 100%;
	  position: relative;
	  right: 0;
	  bottom: 0;
	  opacity: 0;
	  background: transparent;
	  padding: 5% 30%;
	}
	._bn-comment img{
	  box-shadow: 3px 6px 15px 0px rgba(0,0,0,0.5);
		border-radius: 50%;
	}
  ._bn-bddvd{
	  width: 100%;
	  position: relative;
	  right: 0;
	  bottom: 0;
	  opacity: 0;
	  background: #fff;
	  padding: 5% 7.5%;
	}
  ._bn-bddvd:hover{
  transform: scale(1);
  }
}
/*----------------------------------------
** _navi
----------------------------------------*/
._navi {
  background-color: #fff;
}
._navi-inner {
  width: 1040px;
  margin: 0 auto;
  padding: 30px 0 30px 0;
}
@media screen and (max-width: 768px) {
  ._navi-inner {
    width: 85.07%;
    padding: 30px 0 50px 0;
  }
}

._navi-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 45px 0;
}
@media screen and (max-width: 768px) {
  ._navi-list {
    justify-content: left;
    margin: 0 -6px 20px -6px;
  }
}

._navi-item {
  width: 160px;
  padding: 0 8px;
}
@media screen and (max-width: 768px) {
  ._navi-item {
    width: 50%;
    padding: 0 6px;
    margin: 0 0 12px 0;
  }
}

._navi-item-link {
  display: block;
  width: 100%;
  transition: 0.2s;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  background-color: #cf944b;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 10px 7px 12px 7px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}
@media screen and (max-width: 768px) {
  ._navi-item-link {
    font-size: 16px;
  }
}

@media screen and (min-width: 769px) {
  ._navi-item-link:hover {
    background-color: #b9aa3a;
    filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
    -webkit-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
    opacity: 0.85;
  }
}

@media screen and (max-width: 768px) {
  ._navi-item-link:active {
    background-color: #b9aa3a;
    filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
    -webkit-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
    opacity: 0.85;
  }
}

._navi-lead-tx {
  width: 721px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  ._navi-lead-tx {
    width: 84.33%;
    margin: 0 0 22px auto;
  }
}

._nav-dir-cast {
  display: none;
}
@media screen and (max-width: 768px) {
  ._nav-dir-cast {
    display: block;
    width: 70.22%;
    margin: 0 0 0 auto;
  }
}

/*----------------------------------------
** _intro
----------------------------------------*/
._intro {
  background-color: #fff;
  background-image: url(../img/intro-bg.png);
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: 82.8% auto;
  padding-bottom: 103px;
}
@media screen and (max-width: 768px) {
}

._intro-ttl {
  font-size: 52px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #1a1311;
  margin: 0 0 36px 11.71%;
}
@media screen and (max-width: 768px) {
  ._intro-ttl {
    font-size: 26px;
    margin: 0 0 28px 6.93%;
  }
}

._intro-pic {
  /* width: 65.67%; */
  width: 894px;
  margin: 0 auto 66px 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  ._intro-pic {
    width: 80.8%;
    margin: 0 auto 48px 0;
    position: relative;
  }
}
._intro-catch {
  width: 240px;
  position: absolute;
  top: 0;
  right: -280px;
}
@media screen and (max-width: 768px) {
  ._intro-catch {
    width: 12.53%;
    position: absolute;
    top: 0;
    right: -18%;
  }
}

._intro-text {
  /* width: 71.01%; */
  width: 970px;
  color: #1a1311;
  margin: 0 auto 0 11.93%;
}
@media screen and (max-width: 768px) {
  ._intro-text {
    width: 71.47%;
    margin: 0 auto 0 6.93%;
  }
}

._intro-lead-sm {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.77;
  color: #cf944b;
}
@media screen and (max-width: 768px) {
  ._intro-lead-sm {
    font-size: 14px;
    margin-bottom: 10px;
  }
}

._intro-lead-lg {
  font-size: 45px;
  font-weight: 700;
  line-height: 1.35;
  color: #cf944b;
  margin: 0 0 43px 0;
}
@media screen and (max-width: 768px) {
  ._intro-lead-lg {
    font-size: 22px;
    margin: 0 0 43px 0;
  }
}

._intro-tx-item {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.68;
  text-indent: 1em;
}
@media screen and (max-width: 768px) {
  ._intro-tx-item {
    font-size: 12px;
  }
}

/*----------------------------------------
** _story
----------------------------------------*/
._story {
  /* padding-top: 384px; */
  padding: 384px 0 0 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  ._story {
    padding: 226px 0 0 0;
  }
}
._story::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../img/story-bg_pc.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  ._story::before {
    background-position: 37% center;
  }
}

._story-ttl {
  font-size: 52px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #fff;
  margin: 0 0 86px 11.71%;
}
@media screen and (max-width: 768px) {
  ._story-ttl {
    font-size: 26px;
    margin: 0 0 28px 6.93%;
  }
}

._story-text {
  background-color: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  padding: 100px 11.71%;
}
@media screen and (max-width: 768px) {
  ._story-text {
    padding: 50px 6.93%;
  }
}

._story-tx-item {
  font-size: 16px;
  font-weight: 700;
  line-height: 2.56;
  color: #1a1311;
}
@media screen and (max-width: 768px) {
  ._story-tx-item {
    font-size: 13px;
  }
}

._story-pic-list {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
}

._story-pic-item {
  width: calc((100% / 3) - 0.01px);
}
@media screen and (max-width: 768px) {
  ._story-pic-item {
    width: calc(100% / 2);
  }
  ._story-pic-item:first-of-type {
    width: 100%;
  }
}

/*----------------------------------------
** _outro
----------------------------------------*/
._outro {
  padding-top: 248px;
  background-color: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  ._outro {
  padding-top: 144px;
}
}

._outro-bg {
}
@media screen and (max-width: 768px) {
}

._outro-catch {
  width: 772px;
  position: absolute;
  right: 162px;
  top: 125px;
}
@media screen and (max-width: 768px) {
  ._outro-catch {
    width: 78.67%;
    position: absolute;
    right: 6.67%;
    top: 77px;
  }
}

._outro-ttl {
  width: 32.94%;
  position: absolute;
  left: 1.98%;
  bottom: 5%;
}
@media screen and (max-width: 768px) {
  ._outro-ttl {
    width: 68%;
    left: 16%;
    bottom: 53%;
  }
}

/*-----------------------------------------
** page top
-----------------------------------------*/
._page-top {
  width: 14px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 200;
  cursor: pointer;
  transition: 0.3s;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.7));
  -webkit-filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.7));
}
/* ._page-top:hover {
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.7));
  -webkit-filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.7));
} */
@media screen and (max-width: 768px) {
  ._page-top {
    width: 14px;
    position: fixed;
    right: 10px;
    bottom: 10px;
  }
}
