.main {
  position: relative; }
  .main .main-inner.map1-show .main__section {
    transform: translateY(-200%); }
  .main .main-inner.map2-show .main__section {
    transform: translateY(-300%); }
  .main .main-inner.map3-show .main__section {
    transform: translateY(-400%); }
  .main .main__map:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 90;
    width: calc(207 / 1176 * 100%);
    background-image: url("/assets/img/ajinoajito/map/map1/parts_map1_left.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: calc(-42 / 1176 * 100%) 0 0 calc(-123 / 1176 * 100%);
    aspect-ratio: 414 / 1400; }
  .main .main__map:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 90;
    width: calc(207 / 1176 * 100%);
    background-image: url("/assets/img/ajinoajito/map/map1/parts_map1_right.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: calc(-42 / 1176 * 100%) calc(-122 / 1176 * 100%) 0 0;
    aspect-ratio: 414 / 1400; }
  .main .main__map img {
    width: 100%;
    height: auto; }
  .main .main__map .main__map-title {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    width: calc(256 / 1176 * 100%);
    max-width: 256px;
    margin: calc(32 / 1176 * 100%) 0 0 calc(111 / 1176 * 100%); }
  .main .main__map .main__map-nav {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 100;
    width: calc(55.5 / 1176 * 100%);
    max-width: 55.5px;
    margin: calc(54 / 1176 * 100%) calc(57 / 1176 * 100%) 0 0; }
    .main .main__map .main__map-nav .main__map-nav-list {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 3.1vh; }
      .main .main__map .main__map-nav .main__map-nav-list .main__map-nav-item .main__map-nav-btn {
        transition: all 0.2s ease-out; }
        .main .main__map .main__map-nav .main__map-nav-list .main__map-nav-item .main__map-nav-btn:hover {
          transform: scale(calc(87 / 55.5)); }
  .main .main__map .main__map-wrap {
    position: relative;
    height: 100%;
    margin: auto; }
    .main .main__map .main__map-wrap .main__map-canvas {
      overflow: hidden;
      width: 100%;
      height: 100%; }
      .main .main__map .main__map-wrap .main__map-canvas canvas {
        display: block;
        width: 100%;
        height: 100%;
        touch-action: none; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .main .main__map:before {
    right: 0;
    width: calc(468 / 375 * 100%);
    background-image: url("/assets/img/ajinoajito/map/map1/parts_map1_top.png");
    margin: calc(-24 / 375 * 100%) 0 0 calc(-43 / 375 * 100%);
    aspect-ratio: 936 / 163; }
  .main .main__map:after {
    top: auto;
    bottom: 0;
    left: 0;
    width: calc(468 / 375 * 100%);
    background-image: url("/assets/img/ajinoajito/map/map1/parts_map1_bottom.png");
    margin: 0 0 calc(-18 / 375 * 100%) calc(-48 / 375 * 100%);
    aspect-ratio: 936 / 163; }
  .main .main__map .main__map-title {
    width: calc(166 / 375 * 100%);
    margin: calc(18 / 375 * 100%) 0 0 calc(16 / 375 * 100%); }
  .main .main__map .main__map-nav {
    top: auto;
    bottom: 0;
    width: calc(200 / 375 * 100%);
    max-width: 100%;
    margin: 0 calc(21 / 375 * 100%) calc(19 / 375 * 100%) 0; }
    .main .main__map .main__map-nav .main__map-nav-list {
      align-items: center;
      justify-content: space-between;
      flex-wrap: nowrap;
      gap: normal; }
      .main .main__map .main__map-nav .main__map-nav-list .main__map-nav-item {
        flex-basis: calc(35.8 / 200 * 100%); }
  .main .main__map .main__map-wrap {
    aspect-ratio: auto; }
    .main .main__map .main__map-wrap .main__map-canvas {
      -webkit-overflow-scrolling: touch; }
      .main .main__map .main__map-wrap .main__map-canvas canvas {
        position: static;
        width: auto;
        height: 100%;
        margin: 0; } }
/* modal */
body.lock {
  overflow: hidden;
  width: 100vw;
  height: 100vh; }

.modal-link {
  cursor: pointer; }

.modal__section {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100000;
  font-family: "M PLUS U", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #7d00ff;
  font-size: 12px;
  line-height: 17px;
  font-weight: 700; }
  .modal__section img {
    width: 100%;
    max-width: 100%;
    height: auto; }
  .modal__section .modal-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url("/assets/img/ajinoajito/modal/modal_bg_texture.png");
    background-position: center center;
    background-repeat: repeat;
    background-size: 1280px auto; }
  .modal__section .modal-content {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 1048px;
    height: 100%;
    margin: auto; }
  .modal__section .modal-inner {
    position: relative;
    width: 100%;
    text-align: center;
    background-image: url("/assets/img/ajinoajito/modal/modal_inner_bg.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border: 4px solid #7d00ff;
    border-radius: 22px;
    aspect-ratio: 1048 / 530; }
    .modal__section .modal-inner:before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: calc(630 / 1048 * 100%);
      background-image: url("/assets/img/ajinoajito/modal/modal_bg01.png");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: contain;
      margin: auto;
      aspect-ratio: 1260 / 870; }
  .modal__section.char#char01 .modal__char-arrow1 {
    width: calc(313 / 480 * 100%);
    margin: calc(-23 / 480 * 100%) 0 0 calc(241 / 480 * 100%);
    aspect-ratio: 313 / 68; }
  .modal__section.char#char01 .modal__char-arrow2 {
    width: calc(265 / 480 * 100%);
    margin: calc(27 / 480 * 100%) 0 0 calc(289 / 480 * 100%);
    aspect-ratio: 265 / 50; }
  .modal__section.char#char01 .modal__char-arrow3 {
    width: calc(265 / 480 * 100%);
    margin: calc(-52 / 480 * 100%) 0 0 calc(288 / 480 * 100%);
    aspect-ratio: 265 / 138; }
  .modal__section.char#char01 .char1 .modal__profile-head {
    font-size: 36.5px;
    line-height: 42px; }
    .modal__section.char#char01 .char1 .modal__profile-head .small {
      display: block;
      font-size: 24px;
      line-height: 28px; }
  .modal__section.char#char01 .char2 .modal__profile-head {
    font-size: 36.5px;
    line-height: 42px; }
  .modal__section.char#char01 .char3 .modal__profile-head {
    font-size: 32.9px;
    line-height: 37.8px; }
  .modal__section.char#char02 {
    color: #ee1c26; }
    .modal__section.char#char02 .modal-inner {
      border-color: #ee1c26; }
      .modal__section.char#char02 .modal-inner:before {
        background-image: url("/assets/img/ajinoajito/modal/modal_bg02.png"); }
    .modal__section.char#char02 .modal__char-arrow1 {
      width: calc(311 / 480 * 100%);
      margin: calc(49 / 480 * 100%) 0 0 calc(247 / 480 * 100%);
      aspect-ratio: 311 / 121; }
    .modal__section.char#char02 .modal__char-arrow2 {
      width: calc(196 / 480 * 100%);
      margin: calc(82 / 480 * 100%) 0 0 calc(362 / 480 * 100%);
      aspect-ratio: 196 / 164; }
    .modal__section.char#char02 .modal__char-arrow3 {
      width: calc(122 / 480 * 100%);
      margin: calc(-14 / 480 * 100%) 0 0 calc(435 / 480 * 100%);
      aspect-ratio: 122 / 35; }
    .modal__section.char#char02 .modal__char-arrow svg .cls-1 {
      stroke: #ee1c26; }
    .modal__section.char#char02 .simplebar-scrollbar {
      background-color: #ee1c26; }
      .modal__section.char#char02 .simplebar-scrollbar:before {
        background-color: #ee1c26; }
    .modal__section.char#char02 .char1 .modal__profile-head {
      font-size: 27.5px;
      line-height: 32px; }
      .modal__section.char#char02 .char1 .modal__profile-head .small {
        display: block;
        font-size: 20.6px;
        line-height: 33.3px; }
    .modal__section.char#char02 .char2 .modal__profile-head {
      font-size: 27.5px;
      line-height: 32px; }
      .modal__section.char#char02 .char2 .modal__profile-head .small {
        display: block;
        font-size: 16.5px;
        line-height: 33.3px; }
    .modal__section.char#char02 .char3 .modal__profile-head {
      font-size: 27.5px;
      line-height: 32px; }
    .modal__section.char#char02 .modal-content-close {
      background-image: url("/assets/img/ajinoajito/modal/modal_btn_close02.png"); }
  .modal__section.char#char03 {
    color: #0037ff; }
    .modal__section.char#char03 .modal-inner {
      border-color: #0037ff; }
      .modal__section.char#char03 .modal-inner:before {
        background-image: url("/assets/img/ajinoajito/modal/modal_bg03.png"); }
    .modal__section.char#char03 .modal__char-arrow1 {
      width: calc(312 / 480 * 100%);
      margin: calc(-20 / 480 * 100%) 0 0 calc(247 / 480 * 100%);
      aspect-ratio: 312 / 61; }
    .modal__section.char#char03 .modal__char-arrow2 {
      width: calc(297 / 480 * 100%);
      margin: calc(-87 / 480 * 100%) 0 0 calc(261 / 480 * 100%);
      aspect-ratio: 297 / 193; }
    .modal__section.char#char03 .modal__char-arrow3 {
      width: calc(279 / 480 * 100%);
      margin: calc(-20 / 480 * 100%) 0 0 calc(278 / 480 * 100%);
      aspect-ratio: 279 / 61; }
    .modal__section.char#char03 .modal__char-arrow svg .cls-1 {
      stroke: #0037ff; }
    .modal__section.char#char03 .simplebar-scrollbar {
      background-color: #0037ff; }
      .modal__section.char#char03 .simplebar-scrollbar:before {
        background-color: #0037ff; }
    .modal__section.char#char03 .char1 .modal__profile-head {
      font-size: 27.5px;
      line-height: 32px; }
    .modal__section.char#char03 .char2 .modal__profile-head {
      font-size: 27.5px;
      line-height: 32px; }
    .modal__section.char#char03 .char3 .modal__profile-head {
      font-size: 31px;
      line-height: 35.6px; }
      .modal__section.char#char03 .char3 .modal__profile-head .small {
        display: block;
        font-size: 15.5px;
        line-height: 17.9px; }
    .modal__section.char#char03 .modal-content-close {
      background-image: url("/assets/img/ajinoajito/modal/modal_btn_close03.png"); }
  .modal__section.char .modal-title {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 50;
    width: calc(218.7 / 1040 * 100%);
    margin: calc(-15 / 1040 * 100%) 0 0 calc(124 / 1040 * 100%); }
  .modal__section.char .modal-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    height: 100%; }
    .modal__section.char .modal-wrap.position1 .modal__char-arrow1 svg polyline, .modal__section.char .modal-wrap.position2 .modal__char-arrow2 svg polyline, .modal__section.char .modal-wrap.position3 .modal__char-arrow3 svg polyline {
      stroke-dashoffset: 0; }
  .modal__section.char .modal__char {
    flex-basis: calc(480 / 1040 * 100%);
    position: relative;
    margin: calc(7 / 1040 * 100%) 0 0 calc(-10 / 1040 * 100%); }
  .modal__section.char .modal__char-image {
    display: inline-block;
    position: relative;
    z-index: 5;
    height: 100%; }
    .modal__section.char .modal__char-image.action1 img {
      transform: translateX(-50%); }
    .modal__section.char .modal__char-image .modal__char-image-wrap {
      overflow: hidden;
      height: 100%;
      margin: auto;
      aspect-ratio: 1 / 1; }
      .modal__section.char .modal__char-image .modal__char-image-wrap img {
        width: 200%;
        max-width: 200%;
        height: 100%;
        max-height: 100%;
        aspect-ratio: 960 / 480;
        object-fit: contain; }
    .modal__section.char .modal__char-image .modal__char-arrow {
      position: absolute;
      top: 50%;
      left: 0;
      z-index: 10;
      transform: translateY(-50%); }
      .modal__section.char .modal__char-image .modal__char-arrow svg .cls-1 {
        fill: none;
        stroke: #7d00ff;
        stroke-miterlimit: 10;
        stroke-width: 2.13px; }
      .modal__section.char .modal__char-image .modal__char-arrow svg polyline {
        stroke-dashoffset: 1000px;
        stroke-dasharray: 1000px; }
  .modal__section.char .modal__profile {
    flex-basis: calc(460 / 1040 * 100%);
    height: 100%;
    text-align: left;
    margin-right: calc(61 / 1040 * 100%);
    padding: calc(61 / 1040 * 100%) 0 calc(22 / 1040 * 100%) 0; }
  .modal__section.char .modal__profile-name {
    display: block;
    margin: 0 0 calc(20 / 460 * 100%) 0; }
  .modal__section.char .modal__profile-scroll-inner {
    overflow: auto;
    height: 100%;
    overscroll-behavior: contain; }
  .modal__section.char [data-simplebar]::-webkit-scrollbar {
    display: none; }
  .modal__section.char [data-simplebar] {
    scrollbar-width: none; }
  .modal__section.char .simplebar-track.simplebar-vertical {
    width: 8px;
    background-color: #e6e6e6;
    border-radius: 4px; }
  .modal__section.char .simplebar-scrollbar {
    width: 8px;
    background-color: #7d00ff;
    border-radius: 4px; }
    .modal__section.char .simplebar-scrollbar:before {
      width: 8px;
      background-color: #7d00ff;
      border-radius: 4px; }
  .modal__section.char .modal__profile-mission {
    display: block;
    margin: 0 0 calc(33 / 460 * 100%) 0; }
  .modal__section.char .modal__profile-copy {
    width: calc(430 / 460 * 100%);
    margin: 0 0 calc(30 / 460 * 100%) 0; }
  .modal__section.char .modal__profile-text {
    font-weight: 700;
    text-align: justify;
    font-feature-settings: "palt";
    margin: 0 0 calc(17 / 460 * 100%) 0;
    padding: 0 1em 0 0; }
  .modal__section.char .modal__profile-section {
    width: calc(406 / 450 * 100%);
    margin: calc(40 / 450 * 100%) 0 calc(40 / 450 * 100%) auto;
    padding: 0 1em 0 0; }
    .modal__section.char .modal__profile-section:last-child {
      margin-bottom: calc(120 / 450 * 100%); }
  .modal__section.char .modal__profile-head {
    font-size: 27.5px;
    line-height: 32px;
    font-weight: 700;
    margin: 0 0 2vh 0; }
  .modal__section.char .modal__profile-cont {
    font-size: 12px;
    line-height: 19px;
    font-weight: 700; }
  .modal__section.map.map1 {
    color: #ee1c26; }
    .modal__section.map.map1 .modal-inner:before {
      background-image: url("/assets/img/ajinoajito/modal/modal_bg02.png"); }
    .modal__section.map.map1 .modal-content-close {
      background-image: url("/assets/img/ajinoajito/modal/modal_btn_close02.png"); }
  .modal__section.map.map2 {
    color: #0037ff; }
    .modal__section.map.map2 .modal-inner:before {
      background-image: url("/assets/img/ajinoajito/modal/modal_bg03.png"); }
    .modal__section.map.map2 .modal-content-close {
      background-image: url("/assets/img/ajinoajito/modal/modal_btn_close03.png"); }
  .modal__section.map .modal-content {
    width: 773px; }
  .modal__section.map .modal-inner {
    position: relative;
    background-image: url("/assets/img/ajinoajito/map/map1/modal/bg_modal_map1.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    border: 0;
    border-radius: 0;
    aspect-ratio: 768 / 402; }
    .modal__section.map .modal-inner:before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: calc(630 / 1048 * 100%);
      background-image: url("/assets/img/ajinoajito/modal/modal_bg01.png");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: contain;
      margin: auto;
      aspect-ratio: 1260 / 870; }
  .modal__section.map .modal-wrap {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    padding: calc(22 / 760 * 100%) 0; }
  .modal__section.map .modal__image-wrap {
    display: flex;
    align-items: center;
    flex-basis: calc(355 / 760 * 100%);
    height: 100%;
    margin: 0 0 0 calc(30 / 760 * 100%); }
    .modal__section.map .modal__image-wrap .modal__image {
      opacity: 0;
      display: block;
      transform: scale(0.6); }
  .modal__section.map .modal__desc {
    flex-basis: calc(345 / 760 * 100%);
    text-align: left;
    margin: 0 0 0 calc(5 / 760 * 100%); }
    .modal__section.map .modal__desc .modal__desc-copy {
      opacity: 0;
      font-size: 16.5px;
      line-height: 20px;
      font-weight: 700;
      margin: 0 0 calc(20 / 315 * 100%) 0;
      clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
    .modal__section.map .modal__desc .modal__desc-title {
      opacity: 0;
      font-size: 28.3px;
      line-height: 33.3px;
      font-weight: 700;
      margin: 0 0 calc(18 / 315 * 100%) 0;
      clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
    .modal__section.map .modal__desc .modal__desc-text {
      opacity: 0;
      font-size: 9.7px;
      line-height: 17px;
      font-weight: 700;
      margin: 0 0 calc(24 / 315 * 100%) 0;
      clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
    .modal__section.map .modal__desc .modal__desc-link {
      opacity: 0;
      width: calc(77 / 315 * 100%);
      margin: 0 0 calc(5 / 315 * 100%) 0; }
  .modal__section.map .modal-content-close {
    margin: 0 calc(28 / 760 * 100%) calc(28 / 760 * 100%) 0; }
  .modal__section.map.open_complete .modal__image-wrap .modal__image {
    opacity: 1;
    transform: scale(1);
    transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1.6) 0.1s; }
  .modal__section.map.open_complete .modal__desc .modal__desc-copy,
  .modal__section.map.open_complete .modal__desc .modal__desc-title,
  .modal__section.map.open_complete .modal__desc .modal__desc-text,
  .modal__section.map.open_complete .modal__desc .modal__desc-link {
    opacity: 1;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    transition: all 0.4s ease-out 0.6s; }
  .modal__section.map.open_complete .modal__desc .modal__desc-title {
    transition-delay: 1.0s; }
  .modal__section.map.open_complete .modal__desc .modal__desc-text {
    transition-delay: 1.4s; }
  .modal__section.map.open_complete .modal__desc .modal__desc-link {
    transition-delay: 2.0s; }
  .modal__section .modal-content-close {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 100;
    width: calc(37 / 1040 * 100%);
    background-image: url("/assets/img/ajinoajito/modal/modal_btn_close01.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 calc(19 / 1040 * 100%) calc(25 / 1040 * 100%) 0;
    aspect-ratio: 1 / 1; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .modal__section .modal-bg {
    background-image: url("/assets/img/ajinoajito/modal/modal_bg_texture_sp.png"); }
  .modal__section .modal-content {
    width: calc(316 / 375 * 100%); }
  .modal__section .modal-inner {
    max-height: 90vh;
    background-image: url("/assets/img/ajinoajito/modal/modal_inner_bg_sp.png");
    border-width: 6px;
    border-radius: 1.18rem;
    aspect-ratio: auto; }
  .modal__section.char#char01 .modal__char-arrow1 {
    width: calc(94 / 258 * 100%);
    margin: calc(-72 / 258 * 100%) 0 0 calc(33 / 258 * 100%);
    aspect-ratio: 94 / 92; }
  .modal__section.char#char01 .modal__char-arrow2 {
    width: calc(61 / 258 * 100%);
    margin: calc(-61 / 258 * 100%) 0 0 calc(150 / 258 * 100%);
    aspect-ratio: 61 / 132; }
  .modal__section.char#char01 .modal__char-arrow3 {
    width: calc(94 / 258 * 100%);
    margin: calc(-89 / 258 * 100%) 0 0 calc(32 / 258 * 100%);
    aspect-ratio: 94 / 62; }
  .modal__section.char#char01 .char1 .modal__profile-head {
    font-size: 2.68rem;
    line-height: 1; }
    .modal__section.char#char01 .char1 .modal__profile-head .small {
      font-size: 1.78rem;
      line-height: 2.4rem; }
  .modal__section.char#char01 .char2 .modal__profile-head {
    font-size: 2.68rem;
    line-height: 2.99rem; }
  .modal__section.char#char01 .char3 .modal__profile-head {
    font-size: 2.05rem;
    line-height: 2.29rem; }
  .modal__section.char#char02 .modal__char:before {
    background-image: url("/assets/img/ajinoajito/modal/modal_bg02.png"); }
  .modal__section.char#char02 .modal__char-arrow1 {
    width: calc(77 / 258 * 100%);
    margin: calc(-33 / 258 * 100%) 0 0 calc(33 / 258 * 100%);
    aspect-ratio: 77 / 165; }
  .modal__section.char#char02 .modal__char-arrow2 {
    width: calc(35 / 258 * 100%);
    margin: calc(-22 / 258 * 100%) 0 0 calc(27 / 258 * 100%);
    aspect-ratio: 35 / 210; }
  .modal__section.char#char02 .modal__char-arrow3 {
    width: calc(75 / 258 * 100%);
    margin: calc(-76 / 258 * 100%) 0 0 calc(178 / 258 * 100%);
    aspect-ratio: 75 / 131; }
  .modal__section.char#char02 .modal__profile-head {
    background-color: #ee1c26; }
  .modal__section.char#char02 .char1 .modal__profile-head {
    font-size: 2.2rem;
    line-height: 2.5rem; }
    .modal__section.char#char02 .char1 .modal__profile-head .small {
      font-size: 1.67rem;
      line-height: 2.0rem; }
  .modal__section.char#char02 .char2 .modal__profile-head {
    font-size: 2.2rem;
    line-height: 2.5rem; }
    .modal__section.char#char02 .char2 .modal__profile-head .small {
      font-size: 1.3rem;
      line-height: 1.5rem; }
  .modal__section.char#char02 .char3 .modal__profile-head {
    font-size: 2.2rem;
    line-height: 2.5rem; }
  .modal__section.char#char03 .modal__char:before {
    background-image: url("/assets/img/ajinoajito/modal/modal_bg03.png"); }
  .modal__section.char#char03 .modal__char-arrow1 {
    width: calc(94 / 258 * 100%);
    margin: calc(-84 / 258 * 100%) 0 0 calc(30 / 258 * 100%);
    aspect-ratio: 94 / 98; }
  .modal__section.char#char03 .modal__char-arrow2 {
    width: calc(74 / 258 * 100%);
    margin: calc(-117 / 258 * 100%) 0 0 calc(138 / 258 * 100%);
    aspect-ratio: 74 / 38; }
  .modal__section.char#char03 .modal__char-arrow3 {
    width: calc(79 / 258 * 100%);
    margin: calc(-88 / 258 * 100%) 0 0 calc(30 / 258 * 100%);
    aspect-ratio: 79 / 82; }
  .modal__section.char#char03 .modal__profile-head {
    background-color: #0037ff; }
  .modal__section.char#char03 .char1 .modal__profile-head {
    font-size: 2.2rem;
    line-height: 2.5rem; }
  .modal__section.char#char03 .char2 .modal__profile-head {
    font-size: 1.9rem;
    line-height: 2.4rem; }
  .modal__section.char#char03 .char3 .modal__profile-head {
    font-size: 2.2rem;
    line-height: 2.5rem; }
    .modal__section.char#char03 .char3 .modal__profile-head .small {
      font-size: 1.1rem;
      line-height: 1.5rem; }
  .modal__section.char .modal-title {
    top: auto;
    bottom: 0;
    right: 0;
    width: calc(153.1 / 304 * 100%);
    margin: 0 auto calc(-12 / 304 * 100%) auto; }
  .modal__section.char .modal-inner:before {
    display: none; }
  .modal__section.char .modal-wrap {
    justify-content: center;
    flex-direction: column;
    width: calc(258 / 304 * 100%);
    margin: auto; }
  .modal__section.char .modal__char {
    flex-basis: 100%;
    flex-shrink: 0;
    order: 2;
         /*
max-height: 40.5vh;*/
    margin: calc(-8 / 258 * 100%) 0 0 0;
    padding: 0 0 calc(10 / 258 * 100%) 0; }
  .modal__section.char .modal__char:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -25vw;
    right: -25vw;
    width: calc(299 / 258 * 100%);
    background-image: url("/assets/img/ajinoajito/modal/modal_bg01.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: calc(-29 / 258 * 100%) auto 0 auto;
    aspect-ratio: 1 / 1; }
  .modal__section.char .modal__profile {
    display: grid;
    flex-basis: 100%;
    order: 1;
    max-height: 44.5vh;
    margin: 0;
    padding: calc(15 / 304 * 100%) 0 0 0; }
  .modal__section.char .modal__profile-name {
    margin: 0 0 calc(16 / 258 * 100%) 0; }
  .modal__section.char .modal__profile-scroll {
    width: calc(250 / 258 * 100%);
    max-height: 32.8vh;
    margin: auto;
             /*
aspect-ratio: 250 / 198;*/ }
  .modal__section.char .modal__profile-mission {
    display: block;
    width: calc(235.8 / 250 * 100%);
    margin: 0 0 calc(11 / 250 * 100%) 0; }
  .modal__section.char .modal__profile-copy {
    width: calc(225.6 / 250 * 100%);
    margin: 0 0 calc(8 / 250 * 100%) 0; }
  .modal__section.char .modal__profile-text {
    overflow: auto;
    max-height: calc(1.61rem * 6.5);
    font-size: 1.2rem;
    line-height: 1.61rem;
    margin: 0 0 calc(15 / 250 * 100%) 0;
    overscroll-behavior: contain; }
  .modal__section.char .modal__profile-section {
    width: 100%;
    margin: calc(15 / 250 * 100%) 0 0 auto; }
    .modal__section.char .modal__profile-section:last-child {
      margin-bottom: 0; }
  .modal__section.char .modal__profile-section-inner {
    padding: calc(40 / 250 * 100%) 0 0 0; }
  .modal__section.char .modal__profile-head {
    display: inline-block;
    color: #ffffff;
    font-size: 2.2rem;
    line-height: 1;
    background-color: #7d00ff;
    margin: 0 0 calc(7 / 250 * 100%) 0;
    padding: 2px 2px 3px 2px; }
  .modal__section.char .modal__profile-cont {
    font-size: 1.2rem;
    line-height: 1.72rem; }
  .modal__section.map.map1 .modal-frame .frame-inner:before {
    background-image: url("/assets/img/ajinoajito/modal/modal_bg02.png"); }
  .modal__section.map.map2 .modal-frame .frame-inner:before {
    background-image: url("/assets/img/ajinoajito/modal/modal_bg03.png"); }
  .modal__section.map .modal-content {
    width: calc(340 / 375 * 100%); }
  .modal__section.map .modal-inner {
    width: 100%;
    max-height: 95vh;
    background-image: none;
    aspect-ratio: auto; }
    .modal__section.map .modal-inner:before {
      content: "";
      position: absolute;
      top: -1px;
      left: -1px;
      z-index: 10;
      width: calc(48 / 340 * 100%);
      background-image: none !important;
      margin: 0;
      border-top: 6px solid #ee1c26;
      border-left: 6px solid #ee1c26;
      aspect-ratio: 1 / 1; }
    .modal__section.map .modal-inner:after {
      content: "";
      position: absolute;
      bottom: -1px;
      right: -1px;
      z-index: 10;
      width: calc(48 / 340 * 100%);
      background-image: none !important;
      margin: 0;
      border-bottom: 6px solid #ee1c26;
      border-right: 6px solid #ee1c26;
      aspect-ratio: 1 / 1; }
  .modal__section.map .modal-frame {
    background-color: #ee1c26;
    background-image: none;
    padding: 3px;
    aspect-ratio: auto;
    clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 25px, 100% 100%, 25px 100%, 0 calc(100% - 25px)); }
    .modal__section.map .modal-frame .modal-frame-inner {
      background-image: url("/assets/img/ajinoajito/map/map1/modal/bg_modal_map1_sp.png");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      clip-path: polygon(0 0, calc(100% - 23px) 0, 100% 23px, 100% 100%, 23px 100%, 0 calc(100% - 23px)); }
      .modal__section.map .modal-frame .modal-frame-inner:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: calc(304 / 340 * 100%);
        background-image: url("/assets/img/ajinoajito/modal/modal_bg02.png");
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        margin: auto;
        aspect-ratio: 1260 / 870; }
  .modal__section.map .modal-wrap {
    overflow: auto;
    display: block;
    padding: 0 0 calc(26 / 340 * 100%) 0;
    overscroll-behavior: contain; }
  .modal__section.map .modal__image-wrap {
    display: block;
    height: auto;
    margin: 0 0 calc(3 / 340 * 100%) 0; }
  .modal__section.map .modal__desc {
    margin: 0 calc(20 / 340 * 100%); }
    .modal__section.map .modal__desc .modal__desc-wrap {
      overflow-y: auto;
      overscroll-behavior: contain; }
    .modal__section.map .modal__desc .modal__desc-copy {
      font-size: 15px;
      line-height: 20px;
      font-weight: 700;
      margin: 0 0 calc(16 / 300 * 100%) 0;
      padding: 0; }
    .modal__section.map .modal__desc .modal__desc-title {
      font-size: 26.6px;
      line-height: 31.2px;
      font-weight: 700;
      margin: 0 0 calc(14 / 300 * 100%) 0; }
      .modal__section.map .modal__desc .modal__desc-title.middle {
        font-size: 25.2px;
        line-height: 27.7px; }
    .modal__section.map .modal__desc .modal__desc-text {
      font-size: 11px;
      line-height: 17px;
      font-weight: 700;
      margin: 0 0 calc(40 / 300 * 100%) 0; }
    .modal__section.map .modal__desc .modal__desc-link {
      position: absolute;
      bottom: 0;
      left: 0;
      width: calc(89 / 340 * 100%);
      margin: 0 0 calc(25 / 340 * 100%) calc(20 / 340 * 100%); }
  .modal__section.map .modal-content-close {
    width: calc(29 / 340 * 100%);
    margin: 0 calc(17 / 340 * 100%) calc(17 / 340 * 100%) 0; }
  .modal__section .modal-content-close {
    width: calc(36 / 304 * 100%);
    margin: 0 calc(14 / 304 * 100%) calc(11 / 304 * 100%) 0; } }
