@charset "UTF-8";
@keyframes modal-video {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes modal-video-inner {
  from {
    transform: translate(0, 100px); }
  to {
    transform: translate(0, 0); } }

.modal-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000000;
  cursor: pointer;
  opacity: 1;
  animation-timing-function: ease-out;
  animation-duration: 0.3s;
  animation-name: modal-video;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out; }

.modal-video-effect-exit {
  opacity: 0; }
  .modal-video-effect-exit .modal-video-movie-wrap {
    -webkit-transform: translate(0, 100px);
    -moz-transform: translate(0, 100px);
    -ms-transform: translate(0, 100px);
    -o-transform: translate(0, 100px);
    transform: translate(0, 100px); }

.modal-video-body {
  max-width: 940px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  display: table; }

.modal-video-inner {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%; }

.modal-video-movie-wrap {
  width: 100%;
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  background-color: #333;
  animation-timing-function: ease-out;
  animation-duration: 0.3s;
  animation-name: modal-video-inner;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -ms-transition: -ms-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out; }
  .modal-video-movie-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.modal-video-close-btn {
  position: absolute;
  z-index: 2;
  top: -35px;
  right: -35px;
  display: inline-block;
  width: 35px;
  height: 35px;
  overflow: hidden;
  border: none;
  background: transparent; }
  .modal-video-close-btn:before {
    transform: rotate(45deg); }
  .modal-video-close-btn:after {
    transform: rotate(-45deg); }
  .modal-video-close-btn:before, .modal-video-close-btn:after {
    content: '';
    position: absolute;
    height: 2px;
    width: 100%;
    top: 50%;
    left: 0;
    margin-top: -1px;
    background: #fff;
    border-radius: 5px;
    margin-top: -6px; }

* {
  box-sizing: border-box; }

html {
  font-size: 0.83333333vw; }
  @media screen and (max-width: 768px) {
    html {
      font-size: 14px; } }

body, html {
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  letter-spacing: .2em;
  height: 100%; }

body {
  background-image: url(../images/bg_pat.png);
  background-repeat: repeat;
  background-attachment: fixed;
  background-position: center;
  line-height: 2;
  color: #393939; }

.bg__block--character {
  background-image: url(../images/bg_character.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-attachment: fixed;
  background-size: 66vw auto;
  position: relative;
  min-height: 100%;
  z-index: 500; }
  @media screen and (max-width: 768px) {
    .bg__block--character {
      background-position: top center;
      background-size: contain;
      padding-top: 80px; } }

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-size: 1em;
  font-weight: inherit;
  position: relative;
  z-index: 2000; }

li, ul {
  margin: 0;
  padding: 0;
  list-style: none; }

img {
  display: block; }

.common__default-row {
  padding: 0 5vw; }

.common__default-row--centered {
  display: flex;
  justify-content: center; }

.spirits__text {
  text-align: center;
  font-size: 1.4em;
  margin: 0 0 10em;
  font-weight: bolder; }
  @media screen and (max-width: 768px) {
    .spirits__text {
      font-size: 1em; } }

.common__h2--page-head {
  margin: 0 0 2vw; }

.common__img--title-header {
  height: 6.2vw; }
  .common__img--title-header-spirits {
    height: 11vw; }
    @media screen and (max-width: 768px) {
      .common__img--title-header-spirits {
        height: 22vw;
        margin-bottom: 3rem; } }
  @media screen and (max-width: 768px) {
    .common__img--title-header {
      height: 12.4vw;
      margin-bottom: 3rem; } }

.common__content--default-padding {
  padding: 3vw 0 5em; }

.mv__block--centered-row {
  width: 75vw;
  display: flex;
  justify-content: space-between;
  margin: 0 0 8vw; }
  @media screen and (max-width: 768px) {
    .mv__block--centered-row {
      width: 100%;
      flex-wrap: wrap; } }

.mv__block--centered-row-cell, .mv__block--centered-row-cell-description {
  width: 36vw; }
  @media screen and (max-width: 768px) {
    .mv__block--centered-row-cell, .mv__block--centered-row-cell-description {
      width: 90vw; } }

.mv__block--centered-row-cell-description {
  display: flex;
  align-items: center; }
  @media screen and (max-width: 768px) {
    .mv__block--centered-row-cell-description {
      flex-wrap: wrap; } }

.mv__img--song-title, .mv__img--song-title-tall {
  height: 2.5vw;
  margin: 0 0 4vw; }
  @media screen and (max-width: 768px) {
    .mv__img--song-title, .mv__img--song-title-tall {
      height: 20px;
      margin: 0 auto 16px; } }

.mv__img--song-title-tall {
  height: 3.2vw; }
  @media screen and (max-width: 768px) {
    .mv__img--song-title-tall {
      height: 20px;
      margin: 0 auto 16px; } }

.mv__iframe {
  width: 36vw;
  height: 20.25vw; }
  @media screen and (max-width: 768px) {
    .mv__iframe {
      width: 90vw;
      height: 50.625vw; } }

.mv__block--centered-row-cell-description-title-composer {
  margin: 0 0 1rem;
  display: flex;
  align-items: center; }

.mv__block--odottemita-credit {
  line-height: 1.5;
  padding: 0 0 0 1rem;
  border-left: 2px solid #393939;
  margin-left: 1em; }

.mv__img-text--type {
  height: 2rem; }
  @media screen and (max-width: 768px) {
    .mv__img-text--type {
      height: 1rem; } }

.creator__img--voice {
  width: 54.84375vw;
  height: auto;
  margin-bottom: 10rem; }

.creator__img--music {
  width: calc((834 / 1920) * 100vw);
  margin-bottom: 10rem; }

.creator__img--creator {
  width: calc((1085 / 1920) * 100vw);
  margin-bottom: 10rem; }

.lyrics__block--seabreeze, .lyrics__block--sunnydays, .lyrics__block--marinemirage {
  width: 62.03125vw;
  height: 65.78125vw;
  background-image: url(/assets/images/pc_lyrics_1.png);
  background-size: contain;
  padding: 6vw 10vw;
  color: white;
  flex-wrap: wrap; }
  @media screen and (max-width: 768px) {
    .lyrics__block--seabreeze, .lyrics__block--sunnydays, .lyrics__block--marinemirage {
      width: 100%;
      height: auto;
      background-image: linear-gradient(rgba(253, 130, 184, 0.8), rgba(255, 168, 170, 0.8));
      margin-bottom: 10em; } }

.lyrics__block--sunnydays {
  background-image: url(/assets/images/pc_lyrics_2.png); }
  @media screen and (max-width: 768px) {
    .lyrics__block--sunnydays {
      width: 100%;
      height: auto;
      background-image: linear-gradient(rgba(254, 144, 254, 0.8), rgba(255, 193, 192, 0.8));
      margin-bottom: 10em;
      letter-spacing: 0; } }

.lyrics__block--marinemirage {
  background-image: url(/assets/images/pc_lyrics_3.png); }
  @media screen and (max-width: 768px) {
    .lyrics__block--marinemirage {
      width: 100%;
      height: auto;
      background-image: linear-gradient(rgba(110, 221, 255, 0.8), rgba(75, 135, 218, 0.8));
      margin-bottom: 10em;
      letter-spacing: 0; } }

.lyrics__block--title {
  font-size: 4rem;
  font-weight: bold;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .lyrics__block--title {
      font-size: 1.5em; } }

.lyrics__block--column {
  width: 46%; }
  @media screen and (max-width: 768px) {
    .lyrics__block--column {
      width: 100%; } }

.lyrics__block--two-columns {
  display: flex;
  width: 100%;
  justify-content: space-between;
  line-height: 1.5; }
  @media screen and (max-width: 768px) {
    .lyrics__block--two-columns {
      flex-wrap: wrap; } }

.history__img--thumbnail {
  width: 46.98vw; }
  @media screen and (max-width: 768px) {
    .history__img--thumbnail {
      width: 100% !important; } }

.history__block--thumbnail {
  margin: 0 0 10em; }
  @media screen and (max-width: 768px) {
    .history__block--thumbnail {
      width: 90%; } }

.history__h3 {
  text-align: center;
  font-weight: bold;
  font-size: 2em;
  margin-bottom: 1em; }
  @media screen and (max-width: 768px) {
    .history__h3 {
      font-size: 1.5em; } }

.history__text {
  text-align: center;
  width: 66vw;
  margin: 0 0 10em; }
  @media screen and (max-width: 768px) {
    .history__text {
      width: 96%; } }

.lyrics__block--credit {
  width: 100%;
  font-size: .8rem;
  line-height: 1.2;
  margin-bottom: 4em; }
  @media screen and (max-width: 768px) {
    .lyrics__block--credit {
      font-size: 0.8em; } }

.character__block--wrap-character {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.character__img--imarine {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 100vw;
  max-height: 100vh;
  transition: opacity .2s;
  width: 100%;
  height: 100%;
  object-fit: contain; }
  .character__img--imarine.hidden {
    opacity: 0; }

.character__block--change-dress {
  position: absolute;
  top: 4em;
  right: 1em;
  cursor: pointer; }
  @media screen and (max-width: 768px) {
    .character__block--change-dress {
      position: absolute;
      top: 122vw;
      z-index: 2000; } }

.character__img--change-dress {
  width: 6em; }

.character__block--introduction {
  position: absolute;
  z-index: 1000;
  width: 40vmin;
  height: 30vmin;
  top: 0;
  bottom: 0;
  left: 56vw;
  right: 0;
  margin: auto;
  font-weight: bold; }

.character__img--introduction {
  height: 8vmin;
  margin: 0 0 1em; }

.character__img--introduction-badge {
  height: 2vmin;
  margin-bottom: .5em;
  position: absolute;
  top: -3vmin; }

a, a:active, a:hover {
  color: inherit;
  text-decoration: none; }

.menu__block--item-wrap {
  font-weight: bold;
  color: #fff;
  min-width: 40vw; }
  .menu__block--item-wrap li {
    margin: 0 0 .5vw; }
  .menu__block--item-wrap a {
    transition: transform 0.2s cubic-bezier(0.23, 1, 0.32, 1), color 0.2s cubic-bezier(0.23, 1, 0.32, 1);
    display: inline-block; }
  .menu__block--item-wrap a:hover {
    transform: translateX(0.2vw);
    color: #ff5858; }
  @media screen and (max-width: 768px) {
    .menu__block--item-wrap {
      width: 100%; } }

.menu__bar {
  background-color: #393939;
  position: fixed;
  height: 100%;
  width: 2vw; }
  @media screen and (max-width: 768px) {
    .menu__bar {
      display: none; } }

.menu__icon {
  width: 4vw;
  cursor: pointer;
  transition: transform 0.2s cubic-bezier(0.23, 1, 0.32, 1); }
  .menu__icon:hover {
    transform: translateX(0.4vw); }

.menu__icon--wrap {
  position: fixed;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 5vmin;
  left: 4vw;
  display: flex;
  align-items: center;
  z-index: 2000; }
  @media screen and (max-width: 768px) {
    .menu__icon--wrap {
      display: none; } }

.menu__img--logo {
  width: 13vw; }
  @media screen and (max-width: 768px) {
    .menu__img--logo {
      display: none; } }

.menu {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: #393939;
  z-index: 3000;
  overflow: hidden; }
  .menu.can-transition {
    transition: width 0.3s cubic-bezier(0.23, 1, 0.32, 1); }
  .menu.hidden {
    width: 0; }
  @media screen and (max-width: 768px) {
    .menu {
      display: none; } }

.menu__block--wrap {
  position: relative;
  padding: 5vw;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: space-between;
  width: 100vw;
  height: 100%;
  background-image: url(../images/bg_menu2.png);
  background-size: contain;
  background-repeat: no-repeat; }
  @media screen and (max-width: 768px) {
    .menu__block--wrap {
      background-image: url();
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      text-align: center;
      background-color: rgba(0, 0, 0, 0.8);
      transition: all 0.2s cubic-bezier(0.23, 1, 0.32, 1); }
      .menu__block--wrap.hidden {
        transform: translateY(-120vh); } }

.top__background--wrap {
  position: absolute;
  background-image: url(), url(../images/bg_cross3.png);
  background-size: 30vw auto, cover;
  background-position: right bottom, center;
  background-repeat: no-repeat,no-repeat;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%; }
  @media screen and (max-width: 768px) {
    .top__background--wrap {
      background-image: url(../images/sp_top3.png);
      background-size: cover;
      min-height: 177.77778vw;
      background-position: center; } }

.top__characters {
  position: absolute;
  z-index: 1000;
  max-width: 100%;
  user-select: none; }

.top__playvideo {
  z-index: 1000;
  position: absolute;
  border-radius: 4.5% / 8%;
  transform: rotate(16deg);
  transition: transform 0.2s cubic-bezier(0.23, 1, 0.32, 1); }
  .top__playvideo:hover {
    transform: scale(0.98) rotate(16deg); }
  .top__playvideo:active {
    transform: scale(0.95) rotate(16deg); }

.top__playvideo--shadow {
  box-shadow: 0 20px 80px rgba(0, 0, 0, 0.6);
  z-index: 999;
  position: absolute;
  border-radius: 4.5% / 8%;
  width: 90%;
  height: 90%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto; }
  @media screen and (max-width: 768px) {
    .top__playvideo--shadow {
      box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3); } }

.top__playvideo--wrap {
  border-radius: 4.5% / 8%;
  overflow: hidden;
  user-select: none;
  cursor: pointer; }
  @media screen and (max-width: 768px) {
    .top__playvideo--wrap {
      border-radius: 8.4375% / 15%; } }
  .top__playvideo--wrap:hover:before {
    opacity: 1; }
  .top__playvideo--wrap:before {
    content: "";
    position: absolute;
    width: 21.6%;
    height: 38.4%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1001;
    background-image: url(../images/pc_playicon.png);
    background-size: cover;
    opacity: .5;
    transition: opacity .2s; }

.top__img--mv-caption {
  position: absolute;
  z-index: 1000;
  top: 110%;
  width: 50%;
  left: 5%; }

.top__img--itunes-caption {
  font-weight: bold;
  color: #ff5858;
  text-align: center;
  line-height: 1.5;
  letter-spacing: 0;
  font-size: 11px; }

.top__img--logos {
  position: absolute;
  z-index: 1000; }

/**
 * シェアボタン系
 */
.share-buttons {
  position: absolute;
  right: 36px;
  top: 26px;
  z-index: 2000;
  transition: opacity linear .3s;
  transition-delay: 1s; }
  @media screen and (max-width: 768px) {
    .share-buttons {
      display: none;
      right: 16px;
      top: 10px; } }

.sound-buttons {
  position: absolute;
  right: 36px;
  top: 110px;
  z-index: 2000;
  transition: opacity linear .3s;
  transition-delay: 1s; }
  @media screen and (max-width: 768px) {
    .sound-buttons {
      display: none; } }

.sound-buttons-wrap {
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  font-size: 14px; }

.share-buttons-wrap {
  display: flex;
  margin: 0px -10px 0px 0px; }

.share-button {
  height: 32px;
  width: 32px;
  margin: 10px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer; }

.share-button-img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 5000;
  transition: opacity ease-out .3s; }

.share-button-img.hidden {
  opacity: 0;
  z-index: 5001;
  transition: opacity ease-out .3s; }

.share-button:hover .hidden {
  opacity: 1; }

.share-button:hover .shown {
  opacity: 0; }

.share-button-img.facebook {
  width: 43%;
  position: absolute;
  left: auto;
  top: auto;
  bottom: 4px;
  right: 8px; }

.share-text {
  text-align: right;
  font-weight: bold;
  font-size: 16px;
  user-select: none; }

.lt-large {
  letter-spacing: 16px; }
  @media screen and (max-width: 768px) {
    .lt-large {
      letter-spacing: .5em; } }

.block {
  display: block; }

.flex {
  display: flex; }

.menu__img--character {
  width: 8vw;
  margin: 0 0 1.5rem; }
  @media screen and (max-width: 768px) {
    .menu__img--character {
      width: 45%;
      margin: 0 auto 1.5rem; } }

.menu__img--sp {
  width: 15vw; }

.diamond {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3.2vw;
  height: 6.4vw;
  margin: auto;
  z-index: 2000; }
  @media screen and (max-width: 768px) {
    .diamond {
      display: none; } }

.diamond__inner {
  width: 0;
  height: 0; }

.diamond__inner:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: auto 0;
  border-top: 3.2vw solid transparent;
  border-right: 0 solid transparent;
  border-bottom: 3.2vw solid transparent;
  border-left: 3.2vw solid #393939; }

.mfp-wrap {
  z-index: 5000; }

.highlighted {
  background-color: #ff5858;
  color: #fff;
  height: 2em;
  display: inline-block;
  line-height: 2em;
  padding: 0 1.5em;
  border-radius: 1em;
  margin-top: .5em;
  transition: all .2s; }

.top__img--imarine-logo {
  position: absolute;
  right: 220px;
  width: 300px;
  top: 38px; }

.character__imarine, .character__iwarine, .character__iurine {
  background-color: #fff;
  font-weight: bold;
  font-size: 0.9rem;
  color: #ffd71a;
  border: 0.15em solid #ffd71a;
  border-radius: .3em;
  height: 2em;
  line-height: 1.8em;
  display: inline-block;
  width: 30%;
  margin-right: 2%;
  text-align: center; }
  .character__imarine.active, .active.character__iwarine, .active.character__iurine {
    color: #fff;
    background-color: #ffd71a; }
  .character__imarine:hover, .character__iwarine:hover, .character__iurine:hover {
    color: #ffd71a; }
    .character__imarine:hover.active, .character__iwarine:hover.active, .character__iurine:hover.active {
      color: #ddd; }

.character__iwarine {
  color: #39baf4;
  border-color: #39baf4; }
  .character__iwarine.active {
    background-color: #39baf4; }
  .character__iwarine:hover {
    color: #39baf4; }
    .character__iwarine:hover.active {
      color: #ddd; }

.character__iurine {
  color: #ff329c;
  border-color: #ff329c; }
  .character__iurine.active {
    color: #fff;
    background-color: #ff329c; }
  .character__iurine:hover {
    color: #ff329c; }
    .character__iurine:hover.active {
      color: #ddd; }

.download__item {
  width: 18vw;
  margin: 0 3em;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .download__item {
      width: 75%; } }
  .download__item img {
    width: 80%;
    margin: 0 auto;
    display: block; }
  .download__item .title {
    font-size: 3em; }
    @media screen and (max-width: 768px) {
      .download__item .title {
        line-height: 1.2; } }
  .download__item:first-child {
    margin-left: 0; }
    @media screen and (max-width: 768px) {
      .download__item:first-child {
        margin: 0 auto 3em; } }
  .download__item:last-child {
    margin-right: 0; }
    @media screen and (max-width: 768px) {
      .download__item:last-child {
        margin: 0 auto 3em; } }

.download__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px; }
  .download__items:last-child {
    margin-bottom: 0; }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }

.sp-menu {
  position: fixed;
  height: 80px;
  z-index: 2000;
  padding: 5vw 5vw;
  width: 100%; }

@media screen and (max-width: 768px) {
  .pc {
    display: none; } }

.menu__img--close {
  width: 8vw;
  position: absolute; }

.menu__img--close-pc {
  width: 2vw;
  position: absolute;
  right: 5vw;
  cursor: pointer; }

.menu__wrapwrap {
  height: 0;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  overflow: hidden; }
  .menu__wrapwrap.show {
    height: 100%; }

.character-window {
  width: 100%;
  height: 100%;
  align-items: center; }

.sp__playvideo {
  position: absolute;
  width: 54.4vw;
  height: 30.6vw;
  top: 85vw;
  right: 5vw; }
  .sp__playvideo .top__img--itunes-caption {
    top: 110%;
    font-size: .8em;
    text-align: center;
    letter-spacing: 0; }

.play-hidden {
  display: none !important; }

#r {
  height: 100%; }
  #r > div {
    height: 100%; }

.credit {
  position: fixed;
  z-index: 3001;
  left: 3vw;
  bottom: 1vw;
  font-weight: bold; }

.main {
  height: 100%;
  position: relative;
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .main {
      overflow: auto; } }

.character__block--sp-imarine {
  position: relative;
  height: 100vh; }

.character__img--imarine-sp {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity .2s; }
  .character__img--imarine-sp.hidden {
    opacity: 0; }

.character__block--main {
  overflow: hidden;
  height: 100%; }
  @media screen and (max-width: 768px) {
    .character__block--main {
      height: auto;
      minHeight: 177.78vw; } }

.smaller {
  transform: scale(0.8);
  transform-origin: left top; }
  @media screen and (max-width: 768px) {
    .smaller {
      transform: none; } }

.character__block--comment {
  position: absolute;
  position: absolute;
  background-image: url(../images/bg_dress_introduction.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40vmin;
  height: 29vmin;
  z-index: 2000;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 45vw;
  padding: 2vmin 3vmin;
  color: #fff; }
  .character__block--comment p {
    line-height: 1.5;
    letter-spacing: .1em;
    font-size: .9em; }
  .character__block--comment h3 {
    font-size: 1.2em;
    font-weight: bold; }
  .character__block--comment .hidden {
    display: none; }
  .character__block--comment .character__img--logo-white {
    position: absolute;
    bottom: 7vmin;
    right: 4vmin;
    width: 16vmin; }

.about-dress-round {
  position: absolute;
  z-index: 2000;
  width: 15vw;
  height: 15vw;
  padding: 2vw;
  border-radius: 10vw;
  background-color: #595959;
  font-weight: bold;
  color: white;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 105vw;
  left: 12vw;
  line-height: 1.2;
  text-align: center;
  font-size: .8em;
  cursor: pointer; }

.detailed-dress {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(89, 89, 89, 0.9);
  z-index: 3010;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  color: #fff; }
  .detailed-dress img {
    height: 8vw; }
  .detailed-dress h3 {
    font-weight: bold;
    font-size: 1.2em; }
  .detailed-dress p {
    width: 80%;
    margin-bottom: 1em; }
  .detailed-dress.hidden {
    display: none; }
  .detailed-dress .menu__img--close {
    top: 3vw;
    right: 3vw; }

.character__p--introduce-dress {
  margin: .5em 0; }
