@charset "utf-8";
body.fade {
  overflow: hidden;
}
body::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  /* background-color: transparent; */
  background-color: #000;
  z-index: 998;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
}
body.fade::after {
  opacity: 1;
}

/*===================
fv
===================*/
.fv {
  /*headerを全画面で見せる*/
  width: 100%;
  height: 100vh;
  position: relative;
}
.fv:before {
  content: "";
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: url(../imgs/fv.png) no-repeat center / cover;
  z-index: -1;
}
.fv__title-blk {
  width: 85%;
  max-width: 684px;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
  z-index: 999;
}

.fv__logo {
  max-width: 213px;
  margin: 0 auto 57px;
  transition: 0.2s;
}

.fv__blood {
  position: absolute;
}
.fv__blood.blood-img1 {
  width: 36.53vw;
  max-width: 274px;
  min-width: 205px;
  top: 20.2%;
  right: 50%;
  transform: translate(-392px, -50%);
}
.fv__blood.blood-img2 {
  width: 50vw;
  max-width: 375px;
  min-width: 281.3px;
  top: 21%;
  left: 50%;
  transform: translate(314px, -50%);
}
.fv__blood.blood-img1,
.fv__blood.blood-img2 {
  display: none;
}
body.fade .fv__title-blk {
  position: fixed;

  z-index: 999;
}
body.fade .fv__logo {
  opacity: 0;
}
body.fade .blood-img1 {
  z-index: 999;
}
body.fade .blood-img2 {
  z-index: 999;
}
/*===================
intro
===================*/
.intro {
  padding: 225px 0 270px;
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 3s ease, transform 3s ease;
}
body.loaded .intro {
  opacity: 1;
  transform: initial;
}
.intro.bg-red {
  background: #c3140a url(../imgs/intro_bg-red.png) no-repeat center / cover;
  position: relative;
  z-index: 2;
}
.intro.bg-red:before {
  content: "";
  width: max(1440px, 100vw);
  height: max(328px, 22.85vw);
  background: url(../imgs/intro_bg-red_top.png) no-repeat top center / cover;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.intro.bg-red:after {
  content: "";
  width: max(1440px, 100vw);
  height: max(100px, 6.88vw);
  background: url(../imgs/intro_bg-red_btm.png) no-repeat bottom center / cover;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.intro__wrap {
  margin-bottom: 182px;
}
.intro__content {
  max-width: 990px;
  margin: 0 auto 192px;
  position: relative;
}
.intro__content-imgbk {
  width: 990px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.intro__content-txtbk {
  width: 100%;
  position: relative;

  /* position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); */
}
.intro__content-catch {
  font-size: clamp(34px, 4.43vw, 43px);
  line-height: 1.98;
  margin-bottom: 17px;
}
.intro__content-text {
  font-size: clamp(20px, 2.6vw, 25px);
  line-height: 2.15;
}
.intro__bnrBtn .sp {
  display: none;
}
.intro__bnrBtn img {
  transition: filter 0.3s;
}
.intro__bnrBtn:hover img {
  filter: drop-shadow(1px 3px 10px rgba(0, 0, 0, 0.5));
}

.intro__blood {
  position: absolute;
}
.intro__blood.blood-img1 {
  width: 34.93vw;
  max-width: 262px;
  min-width: 196px;
  top: 4.8%;
  right: 50%;
  transform: translate(-336px, -50%);
}
.intro__blood.blood-img2 {
  width: 18.93vw;
  max-width: 142px;
  min-width: 106px;
  top: 3.9%;
  left: 50%;
  transform: translate(463px, -50%);
}
/* ----------------
prologue
------------------- */
.prologue__ttl {
  margin-bottom: 1.76em;
}
.prologue__text {
  font-size: clamp(16px, 2.08vw, 20px);
  line-height: 2.41;
  margin-bottom: 108px;
}
.prologue__strong-text {
  font-size: clamp(24px, 3.13vw, 30px);
  line-height: 2;
  letter-spacing: 0.1em;

  max-width: 481px;
  margin: 0 auto;
  padding: 10px 0.8em;
  position: relative;
  z-index: 3;
}
.prologue__strong-text:before {
  content: "";
  width: 1em;
  height: 1em;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.prologue__strong-text:after {
  content: "";
  width: 1em;
  height: 1em;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  right: 0;
  bottom: 0;
}
.prologue__blood {
  position: absolute;
}

.prologue__blood.blood-img1 {
  width: 62.27vw;
  max-width: 467px;
  min-width: 350px;
  top: -12%;
  left: 50%;
  transform: translate(354px, -50%);
}
.prologue__blood.blood-img2 {
  width: 36.53vw;
  max-width: 274px;
  min-width: 205px;
  top: 11.2%;
  right: 50%;
  transform: translate(-449px, -50%);
}
.prologue__blood.blood-img3 {
  width: 50.93vw;
  max-width: 382px;
  min-width: 286px;
  bottom: -12%;
  right: 50%;
  transform: translate(-360px, 50%);
  z-index: 2;
}
.prologue__blood.blood-img4 {
  width: 42.8vw;
  max-width: 321px;
  min-width: 240px;
  bottom: 8.3%;
  left: 50%;
  transform: translate(403px, 50%);
  z-index: 2;
}
/*===================
characters
===================*/
.chara {
  padding: clamp(200px, 54.67vw, 410px) 0 187px;
}
.chara__ttlWrap {
  margin-bottom: 155px;
}
.chara__ttlWrap .chara__ttl-blood {
  width: 65.2vw;
  max-width: 489px;
  min-width: 367px;
  position: absolute;
  top: 88%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
}
.chara__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 100px 0;
  z-index: 2;
}
.chara__item {
  width: 30%;
}

.chara__imgbk {
  width: 100%;
  max-width: 350px;
  margin: 0 auto clamp(20px, 8.53vw, 64px);
  border: 1px solid #fff;
}
.chara__txtbk .chara__name {
  font-size: clamp(24px, 3.13vw, 30px);
  line-height: 1.33;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.66em;
  margin-bottom: 34px;
}
.chara__txtbk p {
  font-size: clamp(16px, 2.08vw, 20px);
  max-width: 354px;
  font-feature-settings: "palt";
}
.chara__blood {
  position: absolute;
}
.chara__blood.blood-img1 {
  width: 18.93vw;
  max-width: 142px;
  min-width: 106px;
  top: 15.4%;
  right: 50%;
  transform: translate(-509px, -50%);
}
.chara__blood.blood-img2 {
  width: 34.13vw;
  max-width: 256px;
  min-width: 192px;
  top: 14%;
  left: 50%;
  transform: translate(461px, -50%);
}
.chara__blood.blood-img3 {
  width: 35.07vw;
  max-width: 263px;
  min-width: 197px;
  top: 52.4%;
  right: 50%;
  transform: translate(-567px, -50%);
}
.chara__blood.blood-img4 {
  width: 35.07vw;
  max-width: 263px;
  min-width: 197px;
  bottom: 16.4%;
  left: 50%;
  transform: translate(567px, 50%);
}
/*===================
story
===================*/
.story {
  padding: clamp(80px, 21.6vw, 162px) 0 clamp(160px, 28.67vw, 215px);
}
.story.bg-red {
  position: relative;
  background: #c3140a url(../imgs/story_bg-red.png) no-repeat center / cover;
}
.story.bg-red:before {
  content: "";
  width: max(1440px, 100vw);
  height: max(95px, 6.6vw);
  background: url(../imgs/story_bg-red_top.png) no-repeat top center / cover;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.story__ttl {
  margin-bottom: 60px;
}

.story__text {
  font-size: clamp(16px, 2.08vw, 20px);
  line-height: 2.41;
  position: relative;
  z-index: 2;
}
.story__txtbk p:not(:last-child) {
  margin-bottom: 2.41em;
}
.story__blood {
  position: absolute;
}
.story__blood.blood-img1 {
  width: 24.4vw;
  max-width: 183px;
  min-width: 137px;
  top: 13.8%;
  right: 50%;
  transform: translate(-486px, -50%);
}
.story__blood.blood-img2 {
  width: 27.87vw;
  max-width: 209px;
  min-width: 157px;
  top: 12.7%;
  left: 50%;
  transform: translate(424px, -50%);
}
.story__blood.blood-img3 {
  width: 62.27vw;
  max-width: 467px;
  min-width: 350px;
  top: 56.6%;
  right: 50%;
  transform: translate(-353px, -50%);
}

/*===================
overview
===================*/
.overview {
  background: rgb(51, 51, 51);
  background: linear-gradient(0deg, rgba(51, 51, 51, 1) 70.2276%, rgba(0, 0, 0, 1) 93.6122%);
}
.overview:before {
  content: "";
  width: max(1440px, 100vw);
  height: max(120px, 8.33vw);
  background: url(../imgs/overview_bg_top.png) no-repeat top center / cover;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.overview:after {
  content: "";
  width: max(1440px, 100vw);
  height: max(100px, 6.18vw);
  background: url(../imgs/overview_bg_btm.png) no-repeat bottom center / cover;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.bg-asphalt {
  padding: clamp(80px, 21.33vw, 160px) 0 30px;
  background: url("../imgs/asphalt_pattern1.png") repeat center top;
}

.overview__contentsTitle {
  margin-bottom: clamp(20px, 5.33vw, 40px);
}
.overview__contentsEn {
  color: rgba(255, 255, 255, 0.4);
  font-size: clamp(48px, 6.25vw, 60px);
  font-family: "Metal Mania", system-ui;
  text-align: center;
  display: block;
  line-height: 1;
  letter-spacing: 0.1em;
}
.overview__contentsJa {
  color: #fff;
  font-size: clamp(24px, 3.13vw, 30px);
  font-family: isego, sans-serif;
  font-weight: 700;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.overview__contentsText {
  color: #fff;
  font-size: clamp(16px, 2.08vw, 20px);
  font-family: "Zen Antique Soft", serif;
  text-align: center;
  margin-bottom: clamp(80px, 22.27vw, 167px);
  line-height: 1.84;
}
.overview__contentsText.mgb--none {
  margin-bottom: 0;
}

.overview__titleWrap {
  position: relative;
  padding: 80px 0;
  margin-bottom: 82px;
}
.overview__titleHeading {
  text-align: center;
  position: relative;
  z-index: 2;
}
.overview__titleDeco {
  width: 38vw;
  max-width: 285px;
  min-width: 213px;
  position: absolute;
  top: 54%;
  left: 51.7%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 1;
}
.overview__intro {
  margin-bottom: 145px;
}
.overview__intro-heading {
  color: #fff;
  font-size: clamp(24px, 3.13vw, 30px);
  font-family: "Zen Antique Soft", serif;
  text-align: center;
  margin-bottom: 31px;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.overview__intro-text {
  color: #fff;
  font-size: clamp(16px, 2.08vw, 20px);
  font-family: "Zen Antique Soft", serif;
  text-align: center;
  line-height: 1.84;
}
.overview__contents {
  padding-bottom: 137px;
}
.overview__list {
  width: 100%;
}
.overview__item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.overview__item:not(:last-child) {
  margin-bottom: clamp(80px, 20vw, 150px);
}
.overview__item.reverse {
  flex-direction: row-reverse;
}
.overview__itemImg {
  width: 50%;
  max-width: 570px;
  position: relative;
  z-index: 1;
}
.overview__itemBox {
  width: 47%;
  max-width: 550px;
  padding-top: 10px;
  position: relative;
  z-index: 1;
}
.overview__itemBox02 {
  padding-top: 40px;
  position: relative;
  z-index: 1;
}
.overview__itemHeading {
  color: #fff;
  font-size: clamp(24px, 3.13vw, 30px);
  font-family: isego, sans-serif;
  font-weight: 700;
  margin-bottom: 43px;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.overview__itemText {
  color: #fff;
  font-size: clamp(16px, 2.08vw, 20px);
  font-family: "Zen Antique Soft", serif;
  line-height: 1.84;
}

.overview__item .overview__contentsEn,
.overview__item .overview__contentsJa {
  text-align: left;
}

.overview__item .overview__contentsEn {
  margin-bottom: 5px;
}

.overview__blood {
  position: absolute;
}
.overview__blood.intro-blood-img1 {
  width: 34.67vw;
  max-width: 260px;
  min-width: 195px;
  top: -37%;
  right: 50%;
  transform: translate(-424px, -50%);
}
.overview__blood.intro-blood-img2 {
  width: 34.53vw;
  max-width: 274px;
  min-width: 205px;
  top: -50%;
  left: 50%;
  transform: translate(432px, -50%);
}
.overview__blood.intro-blood-img3 {
  width: 34.4vw;
  max-width: 301px;
  min-width: 225px;
  top: -16%;
  left: 50%;
  transform: translate(473px, -50%);
}
.overview__blood.intro-blood-img4 {
  width: 22.4vw;
  max-width: 168px;
  min-width: 126px;
  bottom: -8%;
  right: 50%;
  transform: translate(-440px, 50%);
}
.overview__blood.birth-blood-img1 {
  width: 18vw;
  max-width: 135px;
  min-width: 101px;
  top: -84%;
  right: 50%;
  transform: translate(-247px, -50%);
}
.overview__blood.birth-blood-img2 {
  width: 23.33vw;
  max-width: 175px;
  min-width: 131px;
  bottom: -6%;
  left: 50%;
  transform: translate(570px, 50%);
}
.overview__blood.play-blood-img1 {
  width: 24.27vw;
  max-width: 182px;
  min-width: 136px;
  bottom: -5%;
  right: 50%;
  transform: translate(-46px, 50%);
}
.overview__blood.play-blood-img2 {
  width: 27.87vw;
  max-width: 209px;
  min-width: 156px;
  bottom: -10%;
  left: 50%;
  transform: translate(484px, 50%);
}
.overview__blood.friends-blood-img1 {
  width: 34.13vw;
  max-width: 256px;
  min-width: 192px;
  top: -5%;
  right: 50%;
  transform: translate(-25px, -50%);
}
.overview__blood.friends-blood-img2 {
  width: 14.8vw;
  max-width: 111px;
  min-width: 83px;
  bottom: -17%;
  right: 50%;
  transform: translate(-610px, 50%);
}
.overview__blood.study-blood-img1 {
  width: 11.47vw;
  max-width: 86px;
  min-width: 64px;
  top: 1%;
  left: 50%;
  transform: translate(33px, -50%);
}
.overview__blood.study-blood-img2 {
  width: 20.93vw;
  max-width: 157px;
  min-width: 117px;
  top: -6%;
  left: 50%;
  transform: translate(630px, -50%);
}
.overview__blood.study-blood-img3 {
  width: 24.4vw;
  max-width: 183px;
  min-width: 137px;
  bottom: -6%;
  right: 50%;
  transform: translate(-301px, 50%);
}
.overview__blood.date-blood-img1 {
  width: 24.53vw;
  max-width: 184px;
  min-width: 138px;
  bottom: -1%;
  right: 50%;
  transform: translate(0, 50%);
}
.overview__blood.date-blood-img2 {
  width: 23.33vw;
  max-width: 175px;
  min-width: 131px;
  bottom: -27%;
  left: 50%;
  transform: translate(616px, 50%);
}
.overview__blood.bride-blood-img1 {
  width: 22.4vw;
  max-width: 168px;
  min-width: 126px;
  top: 2%;
  right: 50%;
  transform: translate(-345px, -50%);
}
.overview__blood.bride-blood-img2 {
  width: 53.6vw;
  max-width: 402px;
  min-width: 301px;
  bottom: -21%;
  right: 50%;
  transform: translate(-349px, 50%);
}
.overview__blood.bride-blood-img3 {
  width: 18vw;
  max-width: 135px;
  min-width: 101px;
  top: -28%;
  left: 50%;
  transform: translate(360px, -50%);
}
.overview__blood.bride-blood-img4 {
  width: 27.87vw;
  max-width: 209px;
  min-width: 156px;
  bottom: -166%;
  left: 50%;
  transform: translate(536px, 50%);
}
.overview__blood.cooking-blood-img1 {
  width: 24.4vw;
  max-width: 183px;
  min-width: 137px;
  bottom: 8%;
  right: 50%;
  transform: translate(-109px, 50%);
}
.overview__blood.cooking-blood-img2 {
  width: 23.33vw;
  max-width: 175px;
  min-width: 131px;
  bottom: 0%;
  left: 50%;
  transform: translate(530px, 50%);
}
.overview__blood.give-blood-img1 {
  width: 34.13vw;
  max-width: 256px;
  min-width: 192px;
  top: 95%;
  right: 50%;
  transform: translate(-416px, -50%);
}
.overview__blood.give-blood-img2 {
  width: 53.6vw;
  max-width: 402px;
  min-width: 301px;
  bottom: -136%;
  left: 50%;
  transform: translate(379px, 50%);
}
.overview__blood.love-blood-img1 {
  width: 24.4vw;
  max-width: 183px;
  min-width: 137px;
  bottom: -9%;
  right: 50%;
  transform: translate(-320px, 50%);
}
/*===================
friend
===================*/
.friend {
  background: #000 url("../imgs/friend_bg.png") center top / 1440px no-repeat;
  padding: 282px 0 300px;
}
.friend__wrap {
  position: relative;
  z-index: 2;
}

.friend__title {
  color: #c3140a;
  font-size: clamp(44px, 5.73vw, 55px);
  font-family: "Metal Mania", system-ui;
  text-align: center;
  margin-bottom: 70px;
  line-height: 1.1;
  letter-spacing: 0.05em;
}
.friend__text {
  color: #fff;
  font-size: clamp(16px, 2.08vw, 20px);
  font-family: isego, sans-serif;
  font-weight: 700;
  text-align: center;
  line-height: 1.84;
}
.friend__text:not(:last-child) {
  margin-bottom: 39px;
}
.friend__blood {
  position: absolute;
}
.friend__blood.blood-img1 {
  width: 42.8vw;
  max-width: 321px;
  min-width: 240px;
  top: 56.5%;
  right: 50%;
  transform: translate(-417px, -50%);
  z-index: 2;
}
.friend__blood.blood-img2 {
  width: 50.93vw;
  max-width: 382px;
  min-width: 286px;
  bottom: 27.3%;
  left: 50%;
  transform: translate(346px, 50%);
  z-index: 2;
}
/*===================
facility
===================*/
.facility.bg-red {
  padding: 124px 0 166px;
  background: #c3140a url(../imgs/facility_bg-red.png) no-repeat center / cover;
}
.facility.bg-red:before {
  content: "";
  width: max(1440px, 100vw);
  height: max(120px, 8.33vw);
  background: url(../imgs/facility_bg-red_top.png) no-repeat top center / cover;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.facility__item {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-direction: row-reverse;
}
.facility__itemImg {
  width: 50%;
  max-width: 570px;
}
.facility__itemBox {
  width: 47%;
  max-width: 550px;
}
.facility__itemBox-wrap {
  display: flex;
  align-items: flex-start;
  margin-bottom: 96px;
}
.facility__itemHeading {
  color: #fff;
  font-size: clamp(24px, 3.13vw, 30px);
  font-family: isego, sans-serif;
  font-weight: 700;
  padding-top: 15px;
  line-height: 1;
  letter-spacing: 0.1em;
}
.facility__itemText {
  font-size: clamp(16px, 2.08vw, 20px);
  line-height: 1.05;
  color: #fff;
  font-family: "Zen Antique Soft", serif;
  padding: 12px 0 18px 10%;
  margin-left: 12%;
  position: relative;
}
.facility__itemText::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.facility__itemText span:not(:last-child) {
  margin-bottom: 28px;
  display: block;
}
.facility__item .btn {
  background: #000;
}

@media screen and (max-width: 1240px) {
  /*===================
 blood
 ===================*/
  .bld-lt {
    right: auto !important;
    transform: translate(-50%, -50%) !important;
  }
  .bld-lb {
    right: auto !important;
    transform: translate(-50%, 50%) !important;
  }
  .bld-rt {
    left: auto !important;
    transform: translate(50%, -50%) !important;
  }
  .bld-rb {
    left: auto !important;
    transform: translate(50%, 50%) !important;
  }
  .fv__blood.blood-img1 {
    left: 7.5%;
  }
  .fv__blood.blood-img2 {
    right: 9.5%;
  }
  .intro__blood.blood-img1 {
    left: 12.3%;
  }
  .intro__blood.blood-img2 {
    right: 7%;
  }
  .prologue__blood.blood-img1 {
    right: 2.7%;
  }
  .prologue__blood.blood-img2 {
    left: 2.8%;
  }
  .prologue__blood.blood-img3 {
    left: 5.6%;
  }
  .prologue__blood.blood-img4 {
    right: 4.5%;
  }
  .chara__blood.blood-img1 {
    left: 3.3%;
  }
  .chara__blood.blood-img2 {
    right: 2.2%;
  }
  .chara__blood.blood-img3 {
    left: -6.2%;
  }
  .chara__blood.blood-img4 {
    right: -6.3%;
  }
  .story__blood.blood-img1 {
    left: 3.4%;
  }
  .story__blood.blood-img2 {
    right: 7.5%;
  }
  .story__blood.blood-img3 {
    left: 2.7%;
  }
  .overview__blood.intro-blood-img1 {
    left: 1.4%;
  }
  .overview__blood.intro-blood-img2 {
    right: 0.2%;
  }
  .overview__blood.intro-blood-img3 {
    right: -4.6%;
  }
  .overview__blood.intro-blood-img4 {
    left: 4%;
  }
  .overview__blood.birth-blood-img1 {
    left: 22.3%;
  }
  .overview__blood.birth-blood-img2 {
    right: -7.7%;
  }
  .overview__blood.play-blood-img2 {
    right: -1.4%;
  }
  .overview__blood.study-blood-img3 {
    left: 15.5%;
  }
  .overview__blood.bride-blood-img1 {
    left: 12.4%;
  }
  .overview__blood.bride-blood-img2 {
    left: 2%;
  }
  .overview__blood.bride-blood-img3 {
    right: 12.5%;
  }
  .overview__blood.bride-blood-img4 {
    right: -6%;
  }
  .overview__blood.cooking-blood-img2 {
    right: -4%;
  }
  .overview__blood.give-blood-img1 {
    left: 2.5%;
  }
  .overview__blood.give-blood-img2 {
    right: -1%;
  }
  .overview__blood.love-blood-img1 {
    left: 14%;
  }
  .friend__blood.blood-img1 {
    left: 3.4%;
  }
  .friend__blood.blood-img2 {
    right: 6.6%;
  }
}
@media screen and (max-width: 980px) {
  /*===================
	characters
	===================*/
  .chara__list .chara__item:first-child {
    width: 100%;
  }
  .chara__list .chara__item:not(:first-child) {
    width: 48%;
  }
  .chara__list .chara__item .chara__imgbk {
    max-width: 268px;
  }
  .chara__list .chara__item:first-child .chara__imgbk {
    width: 48%;
  }
  .chara__txtbk p {
    max-width: 735px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 920px) {
  /*===================
	facility
	===================*/
  .facility__item {
    align-items: center;
    padding-bottom: 130px;
    position: relative;
  }
  .facility__itemBox-wrap {
    margin-bottom: 0;
  }
  .facility__item .btn {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 750px) {
  /*===================
	intro
	===================*/
  .intro__content-catch {
    /* 480→33px */
    font-size: clamp(21px, 6.88vw, 33px);
  }
  .intro__content-text {
    font-size: clamp(16px, 4.17vw, 20px);
  }
  .intro__bnrBtn .pc {
    display: none;
  }
  .intro__bnrBtn {
    max-width: 600px;
    width: 90%;
  }
  .intro__bnrBtn .sp {
    display: block;
  }
  .prologue__strong-text {
    font-size: clamp(20px, 5.33vw, 24px);
    padding: 10px 0;
  }
  .prologue__blood.blood-img2 {
    top: -7.8%;
  }

  /*===================
	characters
	===================*/
  .chara__list {
    max-width: 450px;
    margin: 0 auto;
  }
  .chara__list .chara__item {
    width: 100% !important;
  }
  .chara__list .chara__item .chara__imgbk {
    width: 80% !important;
  }
  /*===================
	story
	===================*/
  .story__blood.blood-img3 {
    left: -8.3%;
  }
  /*===================
	overview
	===================*/
  .overview__item {
    flex-direction: column !important;
    align-items: center !important;
    gap: 30px 0;
  }
  .overview__itemImg,
  .overview__itemBox {
    width: 100%;
  }
  .overview__itemBox,
  .overview__itemBox02 {
    padding-top: 0;
  }
  .overview__blood.bride-blood-img2 {
    left: -11%;
  }
  .overview__blood.cooking-blood-img1 {
    bottom: -10%;
  }
  /*===================
	facility
	===================*/
  .facility__item {
    flex-direction: column;
    align-items: center;
    gap: 47px;
    position: static;
    padding-bottom: 0;
  }
  .facility__itemImg {
    width: 100%;
  }

  .facility__itemBox {
    width: 100%;
  }
  .facility__itemBox-wrap {
    justify-content: center;
    margin-bottom: 40px;
  }
  .facility__item .btn {
    position: static;
    transform: initial;
    margin: 0 auto;
  }

  /*===================
	characters
	===================*/
  .chara__list {
    max-width: 450px;
    margin: 0 auto;
  }
  .chara__list .chara__item {
    width: 100% !important;
  }
  .chara__list .chara__item .chara__imgbk {
    width: 80% !important;
  }
  /*===================
	overview
	===================*/
  .overview__item {
    flex-direction: column !important;
    align-items: center !important;
    gap: 30px 0;
  }
  .overview__itemImg,
  .overview__itemBox {
    width: 100%;
  }
  .overview__itemBox,
  .overview__itemBox02 {
    padding-top: 0;
  }
  .overview__blood.bride-blood-img2 {
    left: -11%;
  }
  /*===================
	facility
	===================*/
  .facility__item {
    flex-direction: column;
    align-items: center;
    gap: 47px;
    position: static;
    padding-bottom: 0;
  }
  .facility__itemImg {
    width: 100%;
  }

  .facility__itemBox {
    width: 100%;
  }
  .facility__itemBox-wrap {
    justify-content: center;
    margin-bottom: 40px;
  }
  .facility__item .btn {
    position: static;
    transform: initial;
    margin: 0 auto;
  }
}
