.subpage-caption {
  width: 100%;
  padding-top: 0;
  margin-bottom: 10vw;
}

.subpage-caption img {
  width: 100%;
}

.common-window-section:nth-of-type(n+2) {
  margin-top: 10%;
}

.common-window-caption {
  background-size: 10% auto;
  margin-bottom: 0.7em;
  font-size: 2em;
}

.common-window-content {
  background-size: 100% auto, 85% auto, auto;
  padding: 0 2% 4%;
}

.common-window-block-C {
  width: 100%;
}

.common-window-block-C:not(:first-child) {
  margin: 7% auto;
}

.common-window-list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 90%;
  margin: 0 auto;
}

.common-window-list__item {
  width: 100%;
}

.common-window-list__item:not(:first-child) {
  margin-top: 5%;
}

.sub-navi-menu__item {
  width: 49%;
}

.common-window-text p.center-A {
  text-align: left;
}

.common-window-image {
  max-width: 800px;
  margin: 0 auto;
}

.common-window-image:not(:first-child) {
  margin-top: 3%;
}

.common-window-novel {
  max-width: 20em;
}

/* STORY --------------------------------*/
.story-navi-menu {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.story-navi-menu__item {
  display: inline-block;
  width: 49.5%;
  position: relative;
}

.story-text__para:nth-of-type(n+2) {
  margin-top: 10%;
}

.story-text__para:last-child {
  margin: 15% 0;
}

.keyword-card-content {
  display: block;
}

.keyword-card-image {
  max-width: 90%;
  margin-right: auto;
  margin: 0 auto 6%;
}

.keyword-card-text__lines:nth-of-type(n + 2) {
  text-indent: 0em;
}

/* CHARACTER --------------------------------*/
.character-list__item:nth-of-type(1), .character-list__item:nth-of-type(2) {
  width: 49.5%;
}

.character-list__item:nth-of-type(n+3) {
  width: 32.66667%;
}

.character-list__item:not(:nth-of-type(7n + 1)) {
  margin-left: auto;
}

.character-list__item:nth-of-type(2n) {
  margin-top: auto;
}

.start .character-list__item:nth-of-type(1) {
  -webkit-animation: character-icon-open 1s ease forwards 0.1s;
          animation: character-icon-open 1s ease forwards 0.1s;
}

.start .character-list__item:nth-of-type(2) {
  -webkit-animation: character-icon-open 1s ease forwards 0.1s;
          animation: character-icon-open 1s ease forwards 0.1s;
}

.start .character-list__item:nth-of-type(3) {
  -webkit-animation: character-icon-open 1s ease forwards 0.3s;
          animation: character-icon-open 1s ease forwards 0.3s;
}

.start .character-list__item:nth-of-type(4) {
  -webkit-animation: character-icon-open 1s ease forwards 0.3s;
          animation: character-icon-open 1s ease forwards 0.3s;
}

.start .character-list__item:nth-of-type(5) {
  -webkit-animation: character-icon-open 1s ease forwards 0.3s;
          animation: character-icon-open 1s ease forwards 0.3s;
}

.start .character-list__item:nth-of-type(6) {
  -webkit-animation: character-icon-open 1s ease forwards 0.5s;
          animation: character-icon-open 1s ease forwards 0.5s;
}

.start .character-list__item:nth-of-type(7) {
  -webkit-animation: character-icon-open 1s ease forwards 0.5s;
          animation: character-icon-open 1s ease forwards 0.5s;
}

.start .character-list__item:nth-of-type(8) {
  -webkit-animation: character-icon-open 1s ease forwards 0.5s;
          animation: character-icon-open 1s ease forwards 0.5s;
}

.start .character-list__item:nth-of-type(9) {
  -webkit-animation: character-icon-open 1s ease forwards 0.8s;
          animation: character-icon-open 1s ease forwards 0.8s;
}

.start .character-list__item:nth-of-type(10) {
  -webkit-animation: character-icon-open 1s ease forwards 0.8s;
          animation: character-icon-open 1s ease forwards 0.8s;
}

.start .character-list__item:nth-of-type(11) {
  -webkit-animation: character-icon-open 1s ease forwards 0.8s;
          animation: character-icon-open 1s ease forwards 0.8s;
}

.start .character-list__item:nth-of-type(12) {
  -webkit-animation: character-icon-open 1s ease forwards 1s;
          animation: character-icon-open 1s ease forwards 1s;
}

.start .character-list__item:nth-of-type(13) {
  -webkit-animation: character-icon-open 1s ease forwards 1s;
          animation: character-icon-open 1s ease forwards 1s;
}

.start .character-list__item:nth-of-type(14) {
  -webkit-animation: character-icon-open 1s ease forwards 1s;
          animation: character-icon-open 1s ease forwards 1s;
}

.profile-bg {
  width: 100%;
  height: 100%;
  border-radius: 0;
  position: fixed;
  top: 0;
  left: 0;
}

.profile-bg-deco {
  background: url(../img/character/mark_tantei.png) 0 50% no-repeat;
  background-size: auto 95%;
}

.profile-bg-deco-unopened {
  background: url(../img/character/blood_character_unopened.png) 14% 50% no-repeat;
  background-size: auto 120%;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

.profile-content {
  display: block;
  -webkit-box-align: none;
      -ms-flex-align: none;
          align-items: none;
  padding: 5% 5%;
  height: 100vh;
  overflow-y: scroll;
}

.profile-info {
  width: 100%;
}

.profile-image {
  position: relative;
  width: auto;
  height: 60%;
  margin: 0 auto;
  z-index: 0;
  top: 0;
  -webkit-transform: translate(0);
          transform: translate(0);
}

.profile-image-unopened {
  margin: 0 auto;
  height: 60%;
}

.profile-name-space {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.profile-name {
  display: block;
  margin: auto auto auto 0;
  width: 75%;
}

.profile-career {
  width: 100%;
}

.profile-hr {
  width: 100%;
}

.profile-cv {
  display: block;
  margin: auto -3% auto auto;
  width: 50%;
}

.profile-lines {
  width: 100%;
  max-width: 100%;
  margin: 5% auto;
}

.profile-text {
  font-size: 1em;
  color: white;
  text-shadow: black 1px 1px 7px, black -1px 1px 7px, black 1px -1px 7px, black -1px -1px 7px;
}

.profile-voice {
  width: 60%;
  margin: 5% 0 auto auto;
}

.profile-voice__item {
  width: 24.25%;
}

.profile-name-unopened {
  width: 60%;
  margin: 12% auto 0;
}

.profile-icon-unopened {
  width: 25%;
}

/* SYSTEM --------------------------------*/
.caption-system-section {
  margin: 10% auto 10%;
  padding: 4.5% 0;
}

.caption-system-section-adventure {
  margin: 7% auto 14%;
  padding: 5% 0;
}

.caption-system-section-simulation {
  margin: 7% auto 14%;
  padding: 5% 0;
}

.caption-system-section-text img {
  width: 100%;
  vertical-align: bottom;
}

.caption-system-section__frame-top {
  top: -57%;
}

.caption-system-section__frame-bottom {
  bottom: -57%;
}

.ss-arrow {
  width: 16%;
  height: auto;
  top: auto;
  bottom: -35%;
  right: auto;
  left: calc(50% - 8%);
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.system-blockA:not(:first-of-type) {
  margin-top: 15%;
}

.system-subcaption {
  width: 100%;
}

.system-point {
  width: 100%;
}

.system-point:not(:first-child) {
  margin-top: 10%;
}

.system-image {
  width: 85%;
}

.system-ss-list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 85%;
  margin: 0 auto;
}

.system-ss-list__item {
  width: 100%;
}

.system-ss-list__item:nth-of-type(n+2) {
  margin-top: 5%;
}

.system-ss-list:not(:first-child) {
  margin-top: 7%;
}

.system-map-point {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 12%;
}

.system-map-point__item {
  width: 100%;
}

.system-map-point__item:nth-of-type(n+2) {
  margin-top: 8%;
}

.system-action {
  margin-top: 12%;
}

.system-action__item:nth-of-type(n+2) {
  margin-top: 8%;
}

.action-name {
  width: 85%;
  padding: 0.2em 0.5em;
  font-size: 1.2em;
}

.system-ss-comment {
  font-size: 1em;
}

.system-ss-simulation03 {
  width: 65%;
  margin-top: 8%;
}

.system-ss-simulation03:after {
  font-size: 1em;
}

.system-ss-simulation-point02 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}

.system-ss-simulation-point02__arrow {
  width: 14%;
  margin: -3% auto;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.system-ss-simulation03 {
  width: 70%;
  position: relative;
}

.system-ss-simulation03 img {
  vertical-align: bottom;
  width: 100%;
  border-radius: 20px;
}

.system-ss-list-simulation-point02 {
  width: 90%;
}

.system-ss-list-simulation-point02__item:nth-of-type(2) {
  margin-top: 5%;
}

.system-ss-simulation-point01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 8% auto 0;
}

.system-ss-simulation-point01__item {
  width: 80%;
  margin: 0 auto;
}

.system-ss-simulation-point01__item:nth-of-type(2) {
  width: 14%;
  margin: -3% auto;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.button-investigation {
  width: 90%;
}

.system-investigation03-catch01 {
  margin-top: 8%;
}

.image-system-mplock {
  right: -9%;
}

.image-system-mplock .system-ss-comment {
  font-size: 0.8em;
}

/* GALLERY --------------------------------*/
.gallery-image-text {
  font-size: 0.5em;
}

/* PRODUCT --------------------------------*/
.product-spec-table {
  position: relative;
  top: auto;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.product-info {
  display: block;
}

.product-info__left {
  width: 100%;
}

.product-info__right {
  width: 100%;
  margin-top: 5%;
}

.benefits-list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  margin: 0 auto;
}

.benefits-list__item {
  width: 100%;
  position: relative;
}

.benefits-list__item:not(:first-child) {
  margin-top: 6%;
}

/* NOVEL --------------------------------*/
.novel-button {
  width: 100%;
  padding: 1.2em 0 1.2em 0.5em;
}

.novel-button:not(:first-child) {
  margin-top: 0.5em;
}

.novel-button__title {
  font-size: 1em;
}

.novel-button__image-sibuya {
  top: -59%;
}

.novel-button__image-kazoku {
  top: -65%;
}

.novel-button__image-gedou {
  top: -43%;
}

.novel-button__image-busou {
  top: -30%;
}

.novel-button__image-makai {
  top: -36%;
}

.novel-button__image-bishoku {
  top: -36%;
}

.novel-button__image-yamato {
  top: -106%;
}

.novel-button__image-bungaku {
  top: -75%;
}

.novel-button__image-higyaku {
  top: -25%;
}

.novel-button__image-madogiwa {
  width: 26%;
  right: 0%;
  top: -16%;
}

.novel-button__image-rousi {
  width: 30%;
  top: -10%;
}

.novel-button__image-kagaku {
  width: 44%;
  top: -10%;
  right: -10%;
}

.novel-button__image-shatiku {
  top: -44%;
  width: 40%;
  right: -13%;
}

.novel-button__image-munou {
  top: -49%;
  width: 38%;
  right: -10%;
}

.novel-button__image-risou {
  top: -30%;
  width: 38%;
  right: -8%;
}

.novel-image-wrapper {
  width: 100%;
}

.madogiwa-image-wrapper {
  width: 100%;
}

.madogiwa-image-wrapper.vertical {
  height: auto;
  width: 100%;
}

.madogiwa-image-wrapper.vertical img {
  width: 100%;
  height: auto;
}
